@cogentic-co/ds 0.6.0 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/animations/animation-ai-analysis.js +4 -3
- package/dist/animations/animation-ai-analysis.js.map +1 -1
- package/dist/animations/animation-audit-trail.js +2 -1
- package/dist/animations/animation-audit-trail.js.map +1 -1
- package/dist/animations/animation-compliance-reports.js +4 -3
- package/dist/animations/animation-compliance-reports.js.map +1 -1
- package/dist/animations/animation-custom-rules.js +4 -3
- package/dist/animations/animation-custom-rules.js.map +1 -1
- package/dist/animations/animation-jira-ticket.js +3 -2
- package/dist/animations/animation-jira-ticket.js.map +1 -1
- package/dist/animations/animation-jurisdiction-detection.js +4 -3
- package/dist/animations/animation-jurisdiction-detection.js.map +1 -1
- package/dist/animations/animation-multi-protocol.js +2 -1
- package/dist/animations/animation-multi-protocol.js.map +1 -1
- package/dist/animations/animation-pricing-preview.js +4 -3
- package/dist/animations/animation-pricing-preview.js.map +1 -1
- package/dist/animations/animation-realtime-updates.js +5 -4
- package/dist/animations/animation-realtime-updates.js.map +1 -1
- package/dist/animations/animation-rest-api.js +2 -1
- package/dist/animations/animation-rest-api.js.map +1 -1
- package/dist/animations/animation-risk-scoring.js +5 -4
- package/dist/animations/animation-risk-scoring.js.map +1 -1
- package/dist/animations/animation-sandbox.js +2 -1
- package/dist/animations/animation-sandbox.js.map +1 -1
- package/dist/animations/animation-scheduled-reports.js +4 -3
- package/dist/animations/animation-scheduled-reports.js.map +1 -1
- package/dist/animations/animation-secure-messaging.js +3 -2
- package/dist/animations/animation-secure-messaging.js.map +1 -1
- package/dist/animations/animation-slack-notification.js +3 -2
- package/dist/animations/animation-slack-notification.js.map +1 -1
- package/dist/animations/animation-sop-mapping.js +2 -1
- package/dist/animations/animation-sop-mapping.js.map +1 -1
- package/dist/animations/animation-team-routing.js +4 -3
- package/dist/animations/animation-team-routing.js.map +1 -1
- package/dist/animations/animation-teams-notification.js +3 -2
- package/dist/animations/animation-teams-notification.js.map +1 -1
- package/dist/animations/animation-vasp-identification.js +4 -3
- package/dist/animations/animation-vasp-identification.js.map +1 -1
- package/dist/animations/animation-webhooks.js +3 -2
- package/dist/animations/animation-webhooks.js.map +1 -1
- package/dist/blocks/auth-form.d.ts +1 -1
- package/dist/blocks/auth-form.js +7 -4
- package/dist/blocks/feature-section.js +3 -2
- package/dist/blocks/hero-section.js +3 -2
- package/dist/blocks/pricing-table.js +6 -3
- package/dist/blocks/stat-card.d.ts +1 -1
- package/dist/blocks/stat-card.js +4 -3
- package/dist/charts.d.ts +1 -1
- package/dist/charts.js +3 -2
- package/dist/charts.js.map +1 -1
- package/dist/chatbot.js +2 -1
- package/dist/chatbot.js.map +1 -1
- package/dist/chunk-2BIKWTWM.js +53 -0
- package/dist/chunk-2BIKWTWM.js.map +1 -0
- package/dist/{chunk-GZNLQE3I.js → chunk-2NMEKWO5.js} +3 -22
- package/dist/chunk-2NMEKWO5.js.map +1 -0
- package/dist/chunk-2TRJUH3V.js +104 -0
- package/dist/chunk-2TRJUH3V.js.map +1 -0
- package/dist/chunk-2X37XLH2.js +143 -0
- package/dist/chunk-2X37XLH2.js.map +1 -0
- package/dist/chunk-37V55OP6.js +191 -0
- package/dist/chunk-37V55OP6.js.map +1 -0
- package/dist/{chunk-GJAWCIGE.js → chunk-3IXL43BU.js} +4 -3
- package/dist/chunk-3IXL43BU.js.map +1 -0
- package/dist/chunk-3T2NATO3.js +50 -0
- package/dist/chunk-3T2NATO3.js.map +1 -0
- package/dist/chunk-455KJGDL.js +185 -0
- package/dist/chunk-455KJGDL.js.map +1 -0
- package/dist/chunk-466GQKGZ.js +311 -0
- package/dist/chunk-466GQKGZ.js.map +1 -0
- package/dist/chunk-46UBZI4D.js +119 -0
- package/dist/chunk-46UBZI4D.js.map +1 -0
- package/dist/chunk-4BLD6BKF.js +53 -0
- package/dist/chunk-4BLD6BKF.js.map +1 -0
- package/dist/chunk-4FJIJXG4.js +45 -0
- package/dist/chunk-4FJIJXG4.js.map +1 -0
- package/dist/chunk-4FVHSHHI.js +89 -0
- package/dist/chunk-4FVHSHHI.js.map +1 -0
- package/dist/chunk-4J2PVZ33.js +43 -0
- package/dist/chunk-4J2PVZ33.js.map +1 -0
- package/dist/chunk-4VREYXB4.js +136 -0
- package/dist/chunk-4VREYXB4.js.map +1 -0
- package/dist/chunk-5KYZ5PI5.js +12 -0
- package/dist/chunk-5KYZ5PI5.js.map +1 -0
- package/dist/{chunk-VWSX75RB.js → chunk-5OVGEXTO.js} +9 -65
- package/dist/chunk-5OVGEXTO.js.map +1 -0
- package/dist/chunk-5OYIXT3N.js +141 -0
- package/dist/chunk-5OYIXT3N.js.map +1 -0
- package/dist/chunk-5Q4NJ7WO.js +119 -0
- package/dist/chunk-5Q4NJ7WO.js.map +1 -0
- package/dist/chunk-5U5NBPQE.js +33 -0
- package/dist/chunk-5U5NBPQE.js.map +1 -0
- package/dist/chunk-667PB7XR.js +200 -0
- package/dist/chunk-667PB7XR.js.map +1 -0
- package/dist/chunk-6G52CCDH.js +76 -0
- package/dist/chunk-6G52CCDH.js.map +1 -0
- package/dist/chunk-6HL4ZHBG.js +16 -0
- package/dist/chunk-6HL4ZHBG.js.map +1 -0
- package/dist/chunk-6NGFSBVR.js +19 -0
- package/dist/chunk-6NGFSBVR.js.map +1 -0
- package/dist/chunk-7HOGEYHD.js +99 -0
- package/dist/chunk-7HOGEYHD.js.map +1 -0
- package/dist/chunk-7IUV2ARF.js +29 -0
- package/dist/chunk-7IUV2ARF.js.map +1 -0
- package/dist/chunk-7KDR2RWZ.js +121 -0
- package/dist/chunk-7KDR2RWZ.js.map +1 -0
- package/dist/chunk-7Q7O5LKS.js +155 -0
- package/dist/chunk-7Q7O5LKS.js.map +1 -0
- package/dist/chunk-7U72AXXX.js +172 -0
- package/dist/chunk-7U72AXXX.js.map +1 -0
- package/dist/{chunk-LW6GAWZM.js → chunk-AX7QXZKM.js} +10 -35
- package/dist/chunk-AX7QXZKM.js.map +1 -0
- package/dist/{chunk-XQYFQ6PU.js → chunk-B62UTODY.js} +4 -3
- package/dist/chunk-B62UTODY.js.map +1 -0
- package/dist/chunk-BB7XG36P.js +98 -0
- package/dist/chunk-BB7XG36P.js.map +1 -0
- package/dist/chunk-BEU3AQZQ.js +78 -0
- package/dist/chunk-BEU3AQZQ.js.map +1 -0
- package/dist/chunk-BSKXC3ZQ.js +504 -0
- package/dist/chunk-BSKXC3ZQ.js.map +1 -0
- package/dist/chunk-BU3PTFMI.js +99 -0
- package/dist/chunk-BU3PTFMI.js.map +1 -0
- package/dist/chunk-BWCIJWG4.js +20 -0
- package/dist/chunk-BWCIJWG4.js.map +1 -0
- package/dist/chunk-BYBN4NTY.js +284 -0
- package/dist/chunk-BYBN4NTY.js.map +1 -0
- package/dist/chunk-CIGS6SLR.js +261 -0
- package/dist/chunk-CIGS6SLR.js.map +1 -0
- package/dist/{chunk-TAPJEVUA.js → chunk-D3KGHRRC.js} +2 -2
- package/dist/{chunk-TAPJEVUA.js.map → chunk-D3KGHRRC.js.map} +1 -1
- package/dist/chunk-D75EQCUR.js +81 -0
- package/dist/chunk-D75EQCUR.js.map +1 -0
- package/dist/chunk-DF7TNBDD.js +84 -0
- package/dist/chunk-DF7TNBDD.js.map +1 -0
- package/dist/chunk-DO5JNX44.js +123 -0
- package/dist/chunk-DO5JNX44.js.map +1 -0
- package/dist/chunk-EALF3HQS.js +64 -0
- package/dist/chunk-EALF3HQS.js.map +1 -0
- package/dist/chunk-EDESQ6HE.js +24 -0
- package/dist/chunk-EDESQ6HE.js.map +1 -0
- package/dist/{chunk-BNFSXNP2.js → chunk-EN6GS7O4.js} +4 -3
- package/dist/chunk-EN6GS7O4.js.map +1 -0
- package/dist/chunk-EUAZ42RE.js +32 -0
- package/dist/chunk-EUAZ42RE.js.map +1 -0
- package/dist/chunk-FDLCCVWI.js +56 -0
- package/dist/chunk-FDLCCVWI.js.map +1 -0
- package/dist/chunk-FGSFWKIJ.js +60 -0
- package/dist/chunk-FGSFWKIJ.js.map +1 -0
- package/dist/chunk-FOCJAO6Y.js +167 -0
- package/dist/chunk-FOCJAO6Y.js.map +1 -0
- package/dist/chunk-FRAFAAPK.js +3 -0
- package/dist/chunk-FRAFAAPK.js.map +1 -0
- package/dist/chunk-GF3A7RZS.js +118 -0
- package/dist/chunk-GF3A7RZS.js.map +1 -0
- package/dist/chunk-GHZL6VY5.js +216 -0
- package/dist/chunk-GHZL6VY5.js.map +1 -0
- package/dist/chunk-GQTDZUUX.js +38 -0
- package/dist/chunk-GQTDZUUX.js.map +1 -0
- package/dist/chunk-GR6J7HQK.js +24 -0
- package/dist/chunk-GR6J7HQK.js.map +1 -0
- package/dist/chunk-GV7JJHY5.js +21 -0
- package/dist/chunk-GV7JJHY5.js.map +1 -0
- package/dist/chunk-H4PJG7O3.js +193 -0
- package/dist/chunk-H4PJG7O3.js.map +1 -0
- package/dist/chunk-H4T5OTVO.js +83 -0
- package/dist/chunk-H4T5OTVO.js.map +1 -0
- package/dist/chunk-H5JU3APN.js +36 -0
- package/dist/chunk-H5JU3APN.js.map +1 -0
- package/dist/chunk-H6BQJNUX.js +39 -0
- package/dist/chunk-H6BQJNUX.js.map +1 -0
- package/dist/chunk-HK73AOFX.js +646 -0
- package/dist/chunk-HK73AOFX.js.map +1 -0
- package/dist/chunk-IKY6E2H6.js +38 -0
- package/dist/chunk-IKY6E2H6.js.map +1 -0
- package/dist/chunk-IVPZ37VC.js +95 -0
- package/dist/chunk-IVPZ37VC.js.map +1 -0
- package/dist/chunk-J7CT7LH6.js +22 -0
- package/dist/chunk-J7CT7LH6.js.map +1 -0
- package/dist/chunk-JCJCCQLD.js +182 -0
- package/dist/chunk-JCJCCQLD.js.map +1 -0
- package/dist/chunk-K4H74FZT.js +43 -0
- package/dist/chunk-K4H74FZT.js.map +1 -0
- package/dist/chunk-KB665WXG.js +62 -0
- package/dist/chunk-KB665WXG.js.map +1 -0
- package/dist/chunk-KCPMWAQJ.js +71 -0
- package/dist/chunk-KCPMWAQJ.js.map +1 -0
- package/dist/chunk-KI4SRSCR.js +83 -0
- package/dist/chunk-KI4SRSCR.js.map +1 -0
- package/dist/chunk-KKKVOC6T.js +68 -0
- package/dist/chunk-KKKVOC6T.js.map +1 -0
- package/dist/chunk-KLOBSEH3.js +32 -0
- package/dist/chunk-KLOBSEH3.js.map +1 -0
- package/dist/{chunk-4NEQV6H2.js → chunk-KX3W7BKP.js} +4 -3
- package/dist/chunk-KX3W7BKP.js.map +1 -0
- package/dist/chunk-L52PKRST.js +15 -0
- package/dist/chunk-L52PKRST.js.map +1 -0
- package/dist/chunk-LZ7QCH6T.js +151 -0
- package/dist/chunk-LZ7QCH6T.js.map +1 -0
- package/dist/chunk-MEQYYN4D.js +22 -0
- package/dist/chunk-MEQYYN4D.js.map +1 -0
- package/dist/chunk-MHRCB42B.js +24 -0
- package/dist/chunk-MHRCB42B.js.map +1 -0
- package/dist/chunk-N4YLACF7.js +95 -0
- package/dist/chunk-N4YLACF7.js.map +1 -0
- package/dist/chunk-NDC2EAYA.js +28 -0
- package/dist/chunk-NDC2EAYA.js.map +1 -0
- package/dist/chunk-NN2YBLVZ.js +38 -0
- package/dist/chunk-NN2YBLVZ.js.map +1 -0
- package/dist/chunk-NPIDODOZ.js +100 -0
- package/dist/chunk-NPIDODOZ.js.map +1 -0
- package/dist/chunk-NSRUYLBC.js +65 -0
- package/dist/chunk-NSRUYLBC.js.map +1 -0
- package/dist/chunk-NUZM7GDQ.js +49 -0
- package/dist/chunk-NUZM7GDQ.js.map +1 -0
- package/dist/chunk-O6QB2KVL.js +86 -0
- package/dist/chunk-O6QB2KVL.js.map +1 -0
- package/dist/chunk-OAVWHBUD.js +250 -0
- package/dist/chunk-OAVWHBUD.js.map +1 -0
- package/dist/chunk-OG7CCUKC.js +45 -0
- package/dist/chunk-OG7CCUKC.js.map +1 -0
- package/dist/chunk-PKGKB7JG.js +20 -0
- package/dist/chunk-PKGKB7JG.js.map +1 -0
- package/dist/chunk-QCY3TBJU.js +130 -0
- package/dist/chunk-QCY3TBJU.js.map +1 -0
- package/dist/chunk-QTHRRLHF.js +89 -0
- package/dist/chunk-QTHRRLHF.js.map +1 -0
- package/dist/chunk-REBDYEZX.js +67 -0
- package/dist/chunk-REBDYEZX.js.map +1 -0
- package/dist/chunk-RI7KG3TF.js +87 -0
- package/dist/chunk-RI7KG3TF.js.map +1 -0
- package/dist/{chunk-RXV2XUDZ.js → chunk-SLSJ6OOL.js} +2 -2
- package/dist/{chunk-RXV2XUDZ.js.map → chunk-SLSJ6OOL.js.map} +1 -1
- package/dist/chunk-ST22RZYN.js +122 -0
- package/dist/chunk-ST22RZYN.js.map +1 -0
- package/dist/chunk-SZFIXV43.js +3 -0
- package/dist/chunk-SZFIXV43.js.map +1 -0
- package/dist/chunk-TJVE6LDU.js +205 -0
- package/dist/chunk-TJVE6LDU.js.map +1 -0
- package/dist/chunk-TVGQEQOW.js +83 -0
- package/dist/chunk-TVGQEQOW.js.map +1 -0
- package/dist/chunk-U37L3S2U.js +22 -0
- package/dist/chunk-U37L3S2U.js.map +1 -0
- package/dist/chunk-UAFRUBYX.js +42 -0
- package/dist/chunk-UAFRUBYX.js.map +1 -0
- package/dist/chunk-UAXOFYFR.js +37 -0
- package/dist/chunk-UAXOFYFR.js.map +1 -0
- package/dist/{chunk-7HRPF2N2.js → chunk-UIDMLHT7.js} +5 -4
- package/dist/chunk-UIDMLHT7.js.map +1 -0
- package/dist/chunk-V43Q47PK.js +28 -0
- package/dist/chunk-V43Q47PK.js.map +1 -0
- package/dist/chunk-VUKVUFHU.js +237 -0
- package/dist/chunk-VUKVUFHU.js.map +1 -0
- package/dist/{chunk-CG5JA7FM.js → chunk-VWZTLFXK.js} +4 -3
- package/dist/chunk-VWZTLFXK.js.map +1 -0
- package/dist/chunk-VY2ZHEY2.js +170 -0
- package/dist/chunk-VY2ZHEY2.js.map +1 -0
- package/dist/chunk-WGFU2D4A.js +63 -0
- package/dist/chunk-WGFU2D4A.js.map +1 -0
- package/dist/chunk-WJRJBMFN.js +22 -0
- package/dist/chunk-WJRJBMFN.js.map +1 -0
- package/dist/chunk-X5R5H4TO.js +36 -0
- package/dist/chunk-X5R5H4TO.js.map +1 -0
- package/dist/{chunk-6RWCZUAD.js → chunk-XAIRLU4F.js} +3 -3
- package/dist/{chunk-6RWCZUAD.js.map → chunk-XAIRLU4F.js.map} +1 -1
- package/dist/chunk-XCZNB4NP.js +86 -0
- package/dist/chunk-XCZNB4NP.js.map +1 -0
- package/dist/chunk-XWCSV3E4.js +263 -0
- package/dist/chunk-XWCSV3E4.js.map +1 -0
- package/dist/chunk-XX6UWWUW.js +197 -0
- package/dist/chunk-XX6UWWUW.js.map +1 -0
- package/dist/chunk-YCBEMVM7.js +145 -0
- package/dist/chunk-YCBEMVM7.js.map +1 -0
- package/dist/chunk-YEV262XN.js +172 -0
- package/dist/chunk-YEV262XN.js.map +1 -0
- package/dist/chunk-YJHTT2YB.js +178 -0
- package/dist/chunk-YJHTT2YB.js.map +1 -0
- package/dist/chunk-YS7M4GKW.js +117 -0
- package/dist/chunk-YS7M4GKW.js.map +1 -0
- package/dist/chunk-Z2IWEIXF.js +43 -0
- package/dist/chunk-Z2IWEIXF.js.map +1 -0
- package/dist/chunk-Z3FYDYSM.js +32 -0
- package/dist/chunk-Z3FYDYSM.js.map +1 -0
- package/dist/chunk-Z3XX65K6.js +84 -0
- package/dist/chunk-Z3XX65K6.js.map +1 -0
- package/dist/chunk-Z5EHDRCT.js +39 -0
- package/dist/chunk-Z5EHDRCT.js.map +1 -0
- package/dist/chunk-ZJ7UBKLA.js +21 -0
- package/dist/chunk-ZJ7UBKLA.js.map +1 -0
- package/dist/components/accordion.d.ts +9 -0
- package/dist/components/accordion.js +5 -0
- package/dist/components/accordion.js.map +1 -0
- package/dist/components/alert-dialog.d.ts +24 -0
- package/dist/components/alert-dialog.js +6 -0
- package/dist/components/alert-dialog.js.map +1 -0
- package/dist/components/alert.d.ts +14 -0
- package/dist/components/alert.js +5 -0
- package/dist/components/alert.js.map +1 -0
- package/dist/components/animated-counter.d.ts +18 -0
- package/dist/components/animated-counter.js +4 -0
- package/dist/components/animated-counter.js.map +1 -0
- package/dist/components/approval-actions.d.ts +30 -0
- package/dist/components/approval-actions.js +8 -0
- package/dist/components/approval-actions.js.map +1 -0
- package/dist/components/ascii-shader.d.ts +8 -0
- package/dist/components/ascii-shader.js +5 -0
- package/dist/components/ascii-shader.js.map +1 -0
- package/dist/components/aspect-ratio.d.ts +7 -0
- package/dist/components/aspect-ratio.js +5 -0
- package/dist/components/aspect-ratio.js.map +1 -0
- package/dist/components/audit-log.d.ts +17 -0
- package/dist/components/audit-log.js +5 -0
- package/dist/components/audit-log.js.map +1 -0
- package/dist/components/avatar.d.ts +14 -0
- package/dist/components/avatar.js +5 -0
- package/dist/components/avatar.js.map +1 -0
- package/dist/components/badge.d.ts +13 -0
- package/dist/components/badge.js +5 -0
- package/dist/components/badge.js.map +1 -0
- package/dist/components/bg-shader.d.ts +18 -0
- package/dist/components/bg-shader.js +5 -0
- package/dist/components/bg-shader.js.map +1 -0
- package/dist/components/blocky-shader.d.ts +8 -0
- package/dist/components/blocky-shader.js +5 -0
- package/dist/components/blocky-shader.js.map +1 -0
- package/dist/components/breadcrumb.d.ts +13 -0
- package/dist/components/breadcrumb.js +5 -0
- package/dist/components/breadcrumb.js.map +1 -0
- package/dist/components/button-group.d.ts +16 -0
- package/dist/components/button-group.js +6 -0
- package/dist/components/button-group.js.map +1 -0
- package/dist/components/button.d.ts +13 -0
- package/dist/components/button.js +5 -0
- package/dist/components/button.js.map +1 -0
- package/dist/components/calendar.d.ts +16 -0
- package/dist/components/calendar.js +6 -0
- package/dist/components/calendar.js.map +1 -0
- package/dist/components/callout.d.ts +12 -0
- package/dist/components/callout.js +5 -0
- package/dist/components/callout.js.map +1 -0
- package/dist/{card-Cumdyf_G.d.ts → components/card.d.ts} +1 -1
- package/dist/components/card.js +5 -0
- package/dist/components/card.js.map +1 -0
- package/dist/components/carousel.d.ts +34 -0
- package/dist/components/carousel.js +6 -0
- package/dist/components/carousel.js.map +1 -0
- package/dist/components/case-card.d.ts +36 -0
- package/dist/components/case-card.js +10 -0
- package/dist/components/case-card.js.map +1 -0
- package/dist/{chart-DkwdRX-i.d.ts → components/chart.d.ts} +1 -1
- package/dist/components/chart.js +5 -0
- package/dist/components/chart.js.map +1 -0
- package/dist/components/checkbox.d.ts +6 -0
- package/dist/components/checkbox.js +5 -0
- package/dist/components/checkbox.js.map +1 -0
- package/dist/components/code-block.d.ts +16 -0
- package/dist/components/code-block.js +5 -0
- package/dist/components/code-block.js.map +1 -0
- package/dist/components/collapsible.d.ts +8 -0
- package/dist/components/collapsible.js +4 -0
- package/dist/components/collapsible.js.map +1 -0
- package/dist/components/combobox.d.ts +27 -0
- package/dist/components/combobox.js +9 -0
- package/dist/components/combobox.js.map +1 -0
- package/dist/components/command.d.ts +23 -0
- package/dist/components/command.js +10 -0
- package/dist/components/command.js.map +1 -0
- package/dist/components/comment-thread.d.ts +18 -0
- package/dist/components/comment-thread.js +5 -0
- package/dist/components/comment-thread.js.map +1 -0
- package/dist/components/compliance-score.d.ts +20 -0
- package/dist/components/compliance-score.js +5 -0
- package/dist/components/compliance-score.js.map +1 -0
- package/dist/components/context-menu.d.ts +32 -0
- package/dist/components/context-menu.js +5 -0
- package/dist/components/context-menu.js.map +1 -0
- package/dist/components/copy-button.d.ts +16 -0
- package/dist/components/copy-button.js +6 -0
- package/dist/components/copy-button.js.map +1 -0
- package/dist/components/data-table.d.ts +84 -0
- package/dist/components/data-table.js +18 -0
- package/dist/components/data-table.js.map +1 -0
- package/dist/components/date-picker.d.ts +58 -0
- package/dist/components/date-picker.js +9 -0
- package/dist/components/date-picker.js.map +1 -0
- package/dist/components/deadline-countdown.d.ts +26 -0
- package/dist/components/deadline-countdown.js +5 -0
- package/dist/components/deadline-countdown.js.map +1 -0
- package/dist/components/description-list.d.ts +9 -0
- package/dist/components/description-list.js +5 -0
- package/dist/components/description-list.js.map +1 -0
- package/dist/components/dialog.d.ts +20 -0
- package/dist/components/dialog.js +6 -0
- package/dist/components/dialog.js.map +1 -0
- package/dist/components/direction.d.ts +2 -0
- package/dist/components/direction.js +4 -0
- package/dist/components/direction.js.map +1 -0
- package/dist/components/drawer.d.ts +16 -0
- package/dist/components/drawer.js +5 -0
- package/dist/components/drawer.js.map +1 -0
- package/dist/components/dropdown-menu.d.ts +32 -0
- package/dist/components/dropdown-menu.js +5 -0
- package/dist/components/dropdown-menu.js.map +1 -0
- package/dist/components/empty.d.ts +15 -0
- package/dist/components/empty.js +5 -0
- package/dist/components/empty.js.map +1 -0
- package/dist/components/entity-header.d.ts +26 -0
- package/dist/components/entity-header.js +5 -0
- package/dist/components/entity-header.js.map +1 -0
- package/dist/components/fade-in.d.ts +11 -0
- package/dist/components/fade-in.js +5 -0
- package/dist/components/fade-in.js.map +1 -0
- package/dist/components/field.d.ts +30 -0
- package/dist/components/field.js +7 -0
- package/dist/components/field.js.map +1 -0
- package/dist/components/file-upload.d.ts +18 -0
- package/dist/components/file-upload.js +5 -0
- package/dist/components/file-upload.js.map +1 -0
- package/dist/components/filter-bar.d.ts +11 -0
- package/dist/components/filter-bar.js +5 -0
- package/dist/components/filter-bar.js.map +1 -0
- package/dist/components/form.d.ts +1 -0
- package/dist/components/form.js +4 -0
- package/dist/components/form.js.map +1 -0
- package/dist/components/grid.d.ts +58 -0
- package/dist/components/grid.js +5 -0
- package/dist/components/grid.js.map +1 -0
- package/dist/components/hover-card.d.ts +8 -0
- package/dist/components/hover-card.js +5 -0
- package/dist/components/hover-card.js.map +1 -0
- package/dist/components/inline-edit.d.ts +16 -0
- package/dist/components/inline-edit.js +5 -0
- package/dist/components/inline-edit.js.map +1 -0
- package/dist/components/input-group.d.ts +23 -0
- package/dist/components/input-group.js +8 -0
- package/dist/components/input-group.js.map +1 -0
- package/dist/components/input-otp.d.ts +14 -0
- package/dist/components/input-otp.js +5 -0
- package/dist/components/input-otp.js.map +1 -0
- package/dist/components/input.d.ts +6 -0
- package/dist/components/input.js +5 -0
- package/dist/components/input.js.map +1 -0
- package/dist/components/item.d.ts +27 -0
- package/dist/components/item.js +6 -0
- package/dist/components/item.js.map +1 -0
- package/dist/components/kbd.d.ts +6 -0
- package/dist/components/kbd.js +5 -0
- package/dist/components/kbd.js.map +1 -0
- package/dist/components/label.d.ts +6 -0
- package/dist/components/label.js +5 -0
- package/dist/components/label.js.map +1 -0
- package/dist/components/loading-overlay.d.ts +12 -0
- package/dist/components/loading-overlay.js +6 -0
- package/dist/components/loading-overlay.js.map +1 -0
- package/dist/components/logo-vasp.d.ts +11 -0
- package/dist/components/logo-vasp.js +5 -0
- package/dist/components/logo-vasp.js.map +1 -0
- package/dist/components/marquee.d.ts +17 -0
- package/dist/components/marquee.js +5 -0
- package/dist/components/marquee.js.map +1 -0
- package/dist/components/menubar.d.ts +32 -0
- package/dist/components/menubar.js +6 -0
- package/dist/components/menubar.js.map +1 -0
- package/dist/components/native-select.d.ts +11 -0
- package/dist/components/native-select.js +5 -0
- package/dist/components/native-select.js.map +1 -0
- package/dist/components/navigation-menu.d.ts +15 -0
- package/dist/components/navigation-menu.js +5 -0
- package/dist/components/navigation-menu.js.map +1 -0
- package/dist/components/number-input.d.ts +14 -0
- package/dist/components/number-input.js +7 -0
- package/dist/components/number-input.js.map +1 -0
- package/dist/components/pagination.d.ts +23 -0
- package/dist/components/pagination.js +6 -0
- package/dist/components/pagination.js.map +1 -0
- package/dist/components/policy-banner.d.ts +21 -0
- package/dist/components/policy-banner.js +5 -0
- package/dist/components/policy-banner.js.map +1 -0
- package/dist/components/popover.d.ts +12 -0
- package/dist/components/popover.js +5 -0
- package/dist/components/popover.js.map +1 -0
- package/dist/components/progress.d.ts +17 -0
- package/dist/components/progress.js +5 -0
- package/dist/components/progress.js.map +1 -0
- package/dist/components/radio-group.d.ts +8 -0
- package/dist/components/radio-group.js +5 -0
- package/dist/components/radio-group.js.map +1 -0
- package/dist/components/resizable.d.ts +10 -0
- package/dist/components/resizable.js +5 -0
- package/dist/components/resizable.js.map +1 -0
- package/dist/components/risk-gauge.d.ts +20 -0
- package/dist/components/risk-gauge.js +5 -0
- package/dist/components/risk-gauge.js.map +1 -0
- package/dist/components/scroll-area.d.ts +7 -0
- package/dist/components/scroll-area.js +5 -0
- package/dist/components/scroll-area.js.map +1 -0
- package/dist/components/search-input.d.ts +17 -0
- package/dist/components/search-input.js +7 -0
- package/dist/components/search-input.js.map +1 -0
- package/dist/components/segmented-control.d.ts +15 -0
- package/dist/components/segmented-control.js +5 -0
- package/dist/components/segmented-control.js.map +1 -0
- package/dist/components/select.d.ts +18 -0
- package/dist/components/select.js +5 -0
- package/dist/components/select.js.map +1 -0
- package/dist/components/separator.d.ts +6 -0
- package/dist/components/separator.js +5 -0
- package/dist/components/separator.js.map +1 -0
- package/dist/components/shadow-root-host.d.ts +16 -0
- package/dist/components/shadow-root-host.js +51 -0
- package/dist/components/shadow-root-host.js.map +1 -0
- package/dist/components/sheet.d.ts +17 -0
- package/dist/components/sheet.js +6 -0
- package/dist/components/sheet.js.map +1 -0
- package/dist/components/sidebar.d.ts +70 -0
- package/dist/components/sidebar.js +12 -0
- package/dist/components/sidebar.js.map +1 -0
- package/dist/components/skeleton.d.ts +5 -0
- package/dist/components/skeleton.js +5 -0
- package/dist/components/skeleton.js.map +1 -0
- package/dist/components/slider.d.ts +6 -0
- package/dist/components/slider.js +5 -0
- package/dist/components/slider.js.map +1 -0
- package/dist/components/sonner.d.ts +6 -0
- package/dist/components/sonner.js +4 -0
- package/dist/components/sonner.js.map +1 -0
- package/dist/components/spinner.d.ts +9 -0
- package/dist/components/spinner.js +5 -0
- package/dist/components/spinner.js.map +1 -0
- package/dist/components/split-pane.d.ts +21 -0
- package/dist/components/split-pane.js +6 -0
- package/dist/components/split-pane.js.map +1 -0
- package/dist/components/stat.d.ts +15 -0
- package/dist/components/stat.js +5 -0
- package/dist/components/stat.js.map +1 -0
- package/dist/components/status-indicator.d.ts +16 -0
- package/dist/components/status-indicator.js +5 -0
- package/dist/components/status-indicator.js.map +1 -0
- package/dist/components/step-progress.d.ts +26 -0
- package/dist/components/step-progress.js +5 -0
- package/dist/components/step-progress.js.map +1 -0
- package/dist/components/streaming-cards.d.ts +16 -0
- package/dist/components/streaming-cards.js +66 -0
- package/dist/components/streaming-cards.js.map +1 -0
- package/dist/components/striped-bar.d.ts +20 -0
- package/dist/components/striped-bar.js +6 -0
- package/dist/components/striped-bar.js.map +1 -0
- package/dist/components/subtle-shader.d.ts +10 -0
- package/dist/components/subtle-shader.js +5 -0
- package/dist/components/subtle-shader.js.map +1 -0
- package/dist/components/switch.d.ts +8 -0
- package/dist/components/switch.js +5 -0
- package/dist/components/switch.js.map +1 -0
- package/dist/components/table.d.ts +13 -0
- package/dist/components/table.js +5 -0
- package/dist/components/table.js.map +1 -0
- package/dist/components/tabs.d.ts +14 -0
- package/dist/components/tabs.js +5 -0
- package/dist/components/tabs.js.map +1 -0
- package/dist/components/tag.d.ts +15 -0
- package/dist/components/tag.js +5 -0
- package/dist/components/tag.js.map +1 -0
- package/dist/components/textarea.d.ts +6 -0
- package/dist/components/textarea.js +5 -0
- package/dist/components/textarea.js.map +1 -0
- package/dist/components/theme-script.d.ts +26 -0
- package/dist/components/theme-script.js +4 -0
- package/dist/components/theme-script.js.map +1 -0
- package/dist/components/timeline.d.ts +13 -0
- package/dist/components/timeline.js +5 -0
- package/dist/components/timeline.js.map +1 -0
- package/dist/components/toggle-group.d.ts +14 -0
- package/dist/components/toggle-group.js +6 -0
- package/dist/components/toggle-group.js.map +1 -0
- package/dist/components/toggle.d.ts +12 -0
- package/dist/components/toggle.js +5 -0
- package/dist/components/toggle.js.map +1 -0
- package/dist/components/tooltip.d.ts +9 -0
- package/dist/components/tooltip.js +5 -0
- package/dist/components/tooltip.js.map +1 -0
- package/dist/components/typewriter.d.ts +25 -0
- package/dist/components/typewriter.js +5 -0
- package/dist/components/typewriter.js.map +1 -0
- package/dist/components/typography.d.ts +26 -0
- package/dist/components/typography.js +5 -0
- package/dist/components/typography.js.map +1 -0
- package/dist/components/visually-hidden.d.ts +6 -0
- package/dist/components/visually-hidden.js +5 -0
- package/dist/components/visually-hidden.js.map +1 -0
- package/dist/components/waffle-chart.d.ts +46 -0
- package/dist/components/waffle-chart.js +5 -0
- package/dist/components/waffle-chart.js.map +1 -0
- package/dist/hooks/use-animation-timer.d.ts +11 -0
- package/dist/hooks/use-animation-timer.js +4 -0
- package/dist/hooks/use-animation-timer.js.map +1 -0
- package/dist/hooks/use-carousel.d.ts +22 -0
- package/dist/hooks/use-carousel.js +4 -0
- package/dist/hooks/use-carousel.js.map +1 -0
- package/dist/hooks/use-clipboard.d.ts +10 -0
- package/dist/hooks/use-clipboard.js +4 -0
- package/dist/hooks/use-clipboard.js.map +1 -0
- package/dist/hooks/use-cycle-index.d.ts +13 -0
- package/dist/hooks/use-cycle-index.js +5 -0
- package/dist/hooks/use-cycle-index.js.map +1 -0
- package/dist/hooks/use-debounce.d.ts +3 -0
- package/dist/hooks/use-debounce.js +4 -0
- package/dist/hooks/use-debounce.js.map +1 -0
- package/dist/hooks/use-disclosure.d.ts +9 -0
- package/dist/hooks/use-disclosure.js +4 -0
- package/dist/hooks/use-disclosure.js.map +1 -0
- package/dist/hooks/use-intersection-observer.d.ts +15 -0
- package/dist/hooks/use-intersection-observer.js +4 -0
- package/dist/hooks/use-intersection-observer.js.map +1 -0
- package/dist/hooks/use-local-storage.d.ts +3 -0
- package/dist/hooks/use-local-storage.js +4 -0
- package/dist/hooks/use-local-storage.js.map +1 -0
- package/dist/hooks/use-media-query.d.ts +3 -0
- package/dist/hooks/use-media-query.js +4 -0
- package/dist/hooks/use-media-query.js.map +1 -0
- package/dist/hooks/use-mobile.d.ts +3 -0
- package/dist/hooks/use-mobile.js +4 -0
- package/dist/hooks/use-mobile.js.map +1 -0
- package/dist/index.d.ts +150 -1499
- package/dist/index.js +125 -9475
- package/dist/index.js.map +1 -1
- package/dist/lib/animation.d.ts +63 -0
- package/dist/lib/animation.js +4 -0
- package/dist/lib/animation.js.map +1 -0
- package/dist/lib/utils.d.ts +6 -0
- package/dist/lib/utils.js +4 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/shells/app-shell.d.ts +60 -0
- package/dist/shells/app-shell.js +18 -0
- package/dist/shells/app-shell.js.map +1 -0
- package/dist/workflow.js +2 -1
- package/dist/workflow.js.map +1 -1
- package/package.json +685 -1
- package/dist/chunk-4NEQV6H2.js.map +0 -1
- package/dist/chunk-7HRPF2N2.js.map +0 -1
- package/dist/chunk-BNFSXNP2.js.map +0 -1
- package/dist/chunk-CG5JA7FM.js.map +0 -1
- package/dist/chunk-GJAWCIGE.js.map +0 -1
- package/dist/chunk-GZNLQE3I.js.map +0 -1
- package/dist/chunk-LW6GAWZM.js.map +0 -1
- package/dist/chunk-VWSX75RB.js.map +0 -1
- package/dist/chunk-XQYFQ6PU.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/theme-script.tsx"],"names":[],"mappings":";;;AAqBO,SAAS,WAAA,GAAc;AAC5B,EAAA,MAAM,MAAA,GAAS,CAAA,qNAAA,CAAA;AAGf,EAAA,2BAAQ,QAAA,EAAA,EAAO,uBAAA,EAAyB,EAAE,MAAA,EAAQ,QAAO,EAAG,CAAA;AAC9D","file":"chunk-5KYZ5PI5.js","sourcesContent":["/**\n * Inline script that syncs the `.dark` class on `<html>` with the OS\n * color-scheme preference. Drop this into `<head>` to avoid FOUC.\n *\n * Works with the DS's `@custom-variant dark (&:is(.dark *))` directive.\n *\n * @example\n * // app/layout.tsx\n * import { ThemeScript } from \"@cogentic/ds\"\n *\n * export default function RootLayout({ children }) {\n * return (\n * <html lang=\"en\" suppressHydrationWarning>\n * <head>\n * <ThemeScript />\n * </head>\n * <body>{children}</body>\n * </html>\n * )\n * }\n */\nexport function ThemeScript() {\n const script = `(function(){var d=document.documentElement;var m=window.matchMedia(\"(prefers-color-scheme:dark)\");function s(e){e.matches?d.classList.add(\"dark\"):d.classList.remove(\"dark\")}s(m);m.addEventListener(\"change\",s)})();`\n\n // biome-ignore lint/security/noDangerouslySetInnerHtml: inline script for theme flash prevention\n return <script dangerouslySetInnerHTML={{ __html: script }} />\n}\n"]}
|
|
@@ -1,70 +1,14 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { Switch } from './chunk-IKY6E2H6.js';
|
|
3
|
+
import { FadeIn } from './chunk-H6BQJNUX.js';
|
|
4
|
+
import { Button } from './chunk-EN6GS7O4.js';
|
|
5
|
+
import { cn } from './chunk-MHRCB42B.js';
|
|
6
|
+
import { __spreadProps, __spreadValues } from './chunk-2NMEKWO5.js';
|
|
4
7
|
import { CheckCircle2 } from 'lucide-react';
|
|
5
8
|
import Link from 'next/link';
|
|
6
|
-
import {
|
|
9
|
+
import { useState } from 'react';
|
|
7
10
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
8
|
-
import { Switch as Switch$1 } from '@base-ui/react/switch';
|
|
9
11
|
|
|
10
|
-
var prefersReducedMotion = typeof window !== "undefined" && typeof window.matchMedia === "function" ? window.matchMedia("(prefers-reduced-motion: reduce)").matches : false;
|
|
11
|
-
function FadeIn({ as: Tag = "div", delay = 0, className, children }) {
|
|
12
|
-
const ref = useRef(null);
|
|
13
|
-
const [visible, setVisible] = useState(prefersReducedMotion);
|
|
14
|
-
useEffect(() => {
|
|
15
|
-
const el = ref.current;
|
|
16
|
-
if (!el || visible) return;
|
|
17
|
-
const observer = new IntersectionObserver(
|
|
18
|
-
([entry]) => {
|
|
19
|
-
if (entry.isIntersecting) {
|
|
20
|
-
setVisible(true);
|
|
21
|
-
observer.disconnect();
|
|
22
|
-
}
|
|
23
|
-
},
|
|
24
|
-
{ rootMargin: "-80px" }
|
|
25
|
-
);
|
|
26
|
-
observer.observe(el);
|
|
27
|
-
return () => observer.disconnect();
|
|
28
|
-
}, [visible]);
|
|
29
|
-
return /* @__PURE__ */ jsx(
|
|
30
|
-
Tag,
|
|
31
|
-
{
|
|
32
|
-
ref,
|
|
33
|
-
"data-slot": "fade-in",
|
|
34
|
-
className: cn(className, visible ? "animate-[fade-up_0.5s_ease-out_both]" : "opacity-0"),
|
|
35
|
-
style: delay > 0 && visible ? { animationDelay: `${delay}ms` } : void 0,
|
|
36
|
-
children
|
|
37
|
-
}
|
|
38
|
-
);
|
|
39
|
-
}
|
|
40
|
-
function Switch(_a) {
|
|
41
|
-
var _b = _a, {
|
|
42
|
-
className,
|
|
43
|
-
size = "default"
|
|
44
|
-
} = _b, props = __objRest(_b, [
|
|
45
|
-
"className",
|
|
46
|
-
"size"
|
|
47
|
-
]);
|
|
48
|
-
return /* @__PURE__ */ jsx(
|
|
49
|
-
Switch$1.Root,
|
|
50
|
-
__spreadProps(__spreadValues({
|
|
51
|
-
"data-slot": "switch",
|
|
52
|
-
"data-size": size,
|
|
53
|
-
className: cn(
|
|
54
|
-
"peer group/switch relative inline-flex shrink-0 items-center rounded-full border border-transparent shadow-xs outline-none transition-all after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 data-[size=default]:h-[18.4px] data-[size=sm]:h-[14px] data-[size=default]:w-[32px] data-[size=sm]:w-[24px] data-disabled:cursor-not-allowed data-checked:bg-primary data-unchecked:bg-input data-disabled:opacity-50 dark:data-unchecked:bg-input/80 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40",
|
|
55
|
-
className
|
|
56
|
-
)
|
|
57
|
-
}, props), {
|
|
58
|
-
children: /* @__PURE__ */ jsx(
|
|
59
|
-
Switch$1.Thumb,
|
|
60
|
-
{
|
|
61
|
-
"data-slot": "switch-thumb",
|
|
62
|
-
className: "pointer-events-none block rounded-full bg-background ring-0 transition-transform group-data-[size=default]/switch:size-4 group-data-[size=sm]/switch:size-3 group-data-[size=default]/switch:data-checked:translate-x-[calc(100%-2px)] group-data-[size=default]/switch:data-unchecked:translate-x-0 group-data-[size=sm]/switch:data-checked:translate-x-[calc(100%-2px)] group-data-[size=sm]/switch:data-unchecked:translate-x-0 dark:data-checked:bg-primary-foreground dark:data-unchecked:bg-foreground"
|
|
63
|
-
}
|
|
64
|
-
)
|
|
65
|
-
})
|
|
66
|
-
);
|
|
67
|
-
}
|
|
68
12
|
var DEFAULT_PLANS = [
|
|
69
13
|
{
|
|
70
14
|
name: "Starter",
|
|
@@ -197,6 +141,6 @@ function PricingTable({ headline, subheadline, plans, className }) {
|
|
|
197
141
|
] }) }) });
|
|
198
142
|
}
|
|
199
143
|
|
|
200
|
-
export {
|
|
201
|
-
//# sourceMappingURL=chunk-
|
|
202
|
-
//# sourceMappingURL=chunk-
|
|
144
|
+
export { PricingTable };
|
|
145
|
+
//# sourceMappingURL=chunk-5OVGEXTO.js.map
|
|
146
|
+
//# sourceMappingURL=chunk-5OVGEXTO.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/blocks/pricing-table.tsx"],"names":[],"mappings":"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","file":"chunk-5OVGEXTO.js","sourcesContent":["\"use client\"\n\nimport { CheckCircle2 } from \"lucide-react\"\nimport Link from \"next/link\"\nimport { useState } from \"react\"\nimport { Button } from \"../components/button\"\nimport { FadeIn } from \"../components/fade-in\"\nimport { Switch } from \"../components/switch\"\nimport { cn } from \"../lib/utils\"\n\ntype Plan = {\n name: string\n monthlyPrice?: string\n annualPrice?: string\n perUnitMonthly?: string\n perUnitAnnual?: string\n features: string[]\n ctaLabel: string\n ctaHref?: string\n highlight?: boolean\n badge?: string\n blurb?: string\n}\n\ninterface PricingTableProps {\n headline?: string\n subheadline?: string\n plans?: Plan[]\n className?: string\n}\n\nconst DEFAULT_PLANS: Plan[] = [\n {\n name: \"Starter\",\n blurb: \"For early-stage VASPs getting started with Travel Rule compliance.\",\n features: [\n \"Up to 50 transfers/month\",\n \"5 jurisdictions\",\n \"Basic jurisdiction detection\",\n \"Email support\",\n \"Audit trail\",\n ],\n ctaLabel: \"Get started free\",\n ctaHref: \"/contact\",\n },\n {\n name: \"Growth\",\n monthlyPrice: \"$499\",\n annualPrice: \"$399\",\n perUnitMonthly: \"Per month\",\n perUnitAnnual: \"Per month / billed yearly\",\n blurb: \"For scaling VASPs with growing transfer volumes.\",\n features: [\n \"Up to 1,000 transfers/month\",\n \"25 jurisdictions\",\n \"AI-powered investigation\",\n \"SOP mapping\",\n \"Priority support\",\n \"API access\",\n \"Custom reports\",\n ],\n ctaLabel: \"Start free trial\",\n ctaHref: \"/contact\",\n highlight: true,\n },\n {\n name: \"Enterprise\",\n blurb: \"For high-volume VASPs with complex compliance requirements.\",\n features: [\n \"Unlimited transfers\",\n \"All 45+ jurisdictions\",\n \"Custom AI models\",\n \"Dedicated compliance adviser\",\n \"SLA guarantee\",\n \"SSO & advanced security\",\n \"Data residency options\",\n \"Custom integrations\",\n ],\n ctaLabel: \"Talk to sales\",\n ctaHref: \"/contact\",\n },\n]\n\nfunction PricingCard({\n plan,\n index,\n yearly,\n prevPlanName,\n}: {\n plan: Plan\n index: number\n yearly: boolean\n prevPlanName: string | null\n}) {\n const price = yearly ? plan.annualPrice : plan.monthlyPrice\n const perUnit = yearly ? plan.perUnitAnnual : plan.perUnitMonthly\n\n return (\n <FadeIn\n as=\"article\"\n delay={index * 100}\n className={cn(\"flex flex-col\", plan.highlight && \"bg-muted\")}\n >\n <div className=\"flex h-[300px] flex-col gap-y-4 p-6\">\n <div className=\"flex items-center gap-2\">\n <h3 className=\"font-semibold text-foreground text-lg\">{plan.name}</h3>\n {yearly && plan.badge && (\n <span className=\"rounded-md bg-accent px-2 py-0.5 text-foreground text-xs\">\n {plan.badge}\n </span>\n )}\n </div>\n\n {!!plan.blurb && <p className=\"mt-2 text-muted-foreground text-sm\">{plan.blurb}</p>}\n\n <div className=\"mt-auto\">\n {price ? (\n <>\n <div className=\"font-semibold text-[40px] text-foreground leading-none sm:text-[44px]\">\n {price}\n </div>\n {!!perUnit && <div className=\"mt-2 text-muted-foreground text-sm\">{perUnit}</div>}\n </>\n ) : (\n <>\n <div className=\"font-medium text-[40px] text-foreground leading-none sm:text-[44px]\">\n {index === 0 ? \"Free\" : \"Let\\u2019s talk\"}\n </div>\n <div className=\"mt-2 text-muted-foreground text-sm\">\n {index === 0 ? \"No credit card required\" : \"Contact us for details\"}\n </div>\n </>\n )}\n </div>\n\n <Button\n variant={plan.highlight ? \"default\" : \"outline\"}\n {...(plan.ctaHref ? { render: <Link href={plan.ctaHref} /> } : {})}\n >\n {plan.ctaLabel}\n </Button>\n </div>\n\n <div className=\"border-t p-6\">\n <p className=\"mb-4 font-medium text-foreground\">\n {prevPlanName ? `Everything in ${prevPlanName}, and:` : \"Features\"}\n </p>\n <ul className=\"flex flex-col gap-y-3\">\n {plan.features.map((f) => (\n <li key={f} className=\"flex items-center gap-2\">\n <CheckCircle2 className=\"mt-0.5 size-5 shrink-0 text-primary\" strokeWidth={2.5} />\n <span className=\"font-semibold text-muted-foreground text-sm\">{f}</span>\n </li>\n ))}\n </ul>\n </div>\n </FadeIn>\n )\n}\n\nfunction PricingTable({ headline, subheadline, plans, className }: PricingTableProps) {\n const items = plans?.length ? plans : DEFAULT_PLANS\n const [yearly, setYearly] = useState(true)\n\n return (\n <section data-slot=\"pricing-table\" className={cn(\"bg-background px-6 lg:px-0\", className)}>\n <div className=\"container px-0 md:px-6\">\n <div className=\"relative overflow-hidden\">\n {headline && (\n <div className=\"mx-auto max-w-4xl px-6 py-12 text-center sm:px-8 sm:py-16 md:py-20\">\n <h1 className=\"text-balance font-medium text-4xl text-foreground leading-tight tracking-tight sm:text-5xl md:text-[68px]\">\n {headline}\n </h1>\n {subheadline && (\n <p className=\"mx-auto mt-4 max-w-2xl text-base text-muted-foreground sm:text-lg\">\n {subheadline}\n </p>\n )}\n </div>\n )}\n\n <div className=\"flex items-center justify-center gap-3 pb-8\">\n <span className=\"font-semibold text-muted-foreground text-sm sm:text-base\">\n Monthly\n </span>\n <Switch\n checked={yearly}\n onCheckedChange={setYearly}\n aria-label=\"Toggle yearly billing\"\n />\n <span className={cn(\"font-semibold text-sm sm:text-base\", yearly && \"text-foreground\")}>\n Yearly\n </span>\n </div>\n\n <div className=\"mx-auto max-w-7xl px-6 pb-12 sm:px-8\">\n <div className=\"grid rounded-md border md:grid-cols-2 lg:grid-cols-3 lg:divide-x\">\n {items.map((plan, i) => (\n <PricingCard\n key={plan.name}\n plan={plan}\n index={i}\n yearly={yearly}\n prevPlanName={i > 0 ? items[i - 1].name : null}\n />\n ))}\n </div>\n </div>\n </div>\n </div>\n </section>\n )\n}\n\nexport { PricingTable }\nexport type { Plan, PricingTableProps }\n"]}
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { Input } from './chunk-GR6J7HQK.js';
|
|
3
|
+
import { Textarea } from './chunk-MEQYYN4D.js';
|
|
4
|
+
import { Button } from './chunk-EN6GS7O4.js';
|
|
5
|
+
import { cn } from './chunk-MHRCB42B.js';
|
|
6
|
+
import { __objRest, __spreadValues } from './chunk-2NMEKWO5.js';
|
|
7
|
+
import { cva } from 'class-variance-authority';
|
|
8
|
+
import { jsx } from 'react/jsx-runtime';
|
|
9
|
+
|
|
10
|
+
function InputGroup(_a) {
|
|
11
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
12
|
+
return /* @__PURE__ */ jsx(
|
|
13
|
+
"div",
|
|
14
|
+
__spreadValues({
|
|
15
|
+
"data-slot": "input-group",
|
|
16
|
+
role: "group",
|
|
17
|
+
className: cn(
|
|
18
|
+
"group/input-group relative flex h-9 w-full min-w-0 items-center rounded-md border border-input shadow-xs outline-none transition-[color,box-shadow] in-data-[slot=combobox-content]:focus-within:border-inherit in-data-[slot=combobox-content]:focus-within:ring-0 has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-start]]:h-auto has-[>textarea]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:flex-col has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot=input-group-control]:focus-visible]:ring-3 has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot][aria-invalid=true]]:ring-3 has-[[data-slot][aria-invalid=true]]:ring-destructive/20 dark:bg-input/30 dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 has-[>[data-align=block-end]]:[&>input]:pt-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-start]]:[&>input]:pl-1.5",
|
|
19
|
+
className
|
|
20
|
+
)
|
|
21
|
+
}, props)
|
|
22
|
+
);
|
|
23
|
+
}
|
|
24
|
+
var inputGroupAddonVariants = cva(
|
|
25
|
+
"text-muted-foreground h-auto gap-2 py-1.5 text-sm font-medium group-data-[disabled=true]/input-group:opacity-50 [&>kbd]:rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-4 flex cursor-text items-center justify-center select-none",
|
|
26
|
+
{
|
|
27
|
+
variants: {
|
|
28
|
+
align: {
|
|
29
|
+
"inline-start": "pl-2 has-[>button]:-ml-1 has-[>kbd]:ml-[-0.15rem] order-first",
|
|
30
|
+
"inline-end": "pr-2 has-[>button]:-mr-1 has-[>kbd]:mr-[-0.15rem] order-last",
|
|
31
|
+
"block-start": "px-2.5 pt-2 group-has-[>input]/input-group:pt-2 [.border-b]:pb-2 order-first w-full justify-start",
|
|
32
|
+
"block-end": "px-2.5 pb-2 group-has-[>input]/input-group:pb-2 [.border-t]:pt-2 order-last w-full justify-start"
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
defaultVariants: {
|
|
36
|
+
align: "inline-start"
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
);
|
|
40
|
+
function InputGroupAddon(_a) {
|
|
41
|
+
var _b = _a, {
|
|
42
|
+
className,
|
|
43
|
+
align = "inline-start"
|
|
44
|
+
} = _b, props = __objRest(_b, [
|
|
45
|
+
"className",
|
|
46
|
+
"align"
|
|
47
|
+
]);
|
|
48
|
+
return /* @__PURE__ */ jsx(
|
|
49
|
+
"div",
|
|
50
|
+
__spreadValues({
|
|
51
|
+
role: "group",
|
|
52
|
+
"data-slot": "input-group-addon",
|
|
53
|
+
"data-align": align,
|
|
54
|
+
className: cn(inputGroupAddonVariants({ align }), className),
|
|
55
|
+
onClick: (e) => {
|
|
56
|
+
var _a2, _b2;
|
|
57
|
+
if (e.target.closest("button")) {
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
(_b2 = (_a2 = e.currentTarget.parentElement) == null ? void 0 : _a2.querySelector("input")) == null ? void 0 : _b2.focus();
|
|
61
|
+
}
|
|
62
|
+
}, props)
|
|
63
|
+
);
|
|
64
|
+
}
|
|
65
|
+
var inputGroupButtonVariants = cva("gap-2 text-sm shadow-none flex items-center", {
|
|
66
|
+
variants: {
|
|
67
|
+
size: {
|
|
68
|
+
xs: "h-6 gap-1 rounded-[calc(var(--radius)-5px)] px-1.5 [&>svg:not([class*='size-'])]:size-3.5",
|
|
69
|
+
sm: "",
|
|
70
|
+
"icon-xs": "size-6 rounded-[calc(var(--radius)-5px)] p-0 has-[>svg]:p-0",
|
|
71
|
+
"icon-sm": "size-8 p-0 has-[>svg]:p-0"
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
defaultVariants: {
|
|
75
|
+
size: "xs"
|
|
76
|
+
}
|
|
77
|
+
});
|
|
78
|
+
function InputGroupButton(_a) {
|
|
79
|
+
var _b = _a, {
|
|
80
|
+
className,
|
|
81
|
+
type = "button",
|
|
82
|
+
variant = "ghost",
|
|
83
|
+
size = "xs"
|
|
84
|
+
} = _b, props = __objRest(_b, [
|
|
85
|
+
"className",
|
|
86
|
+
"type",
|
|
87
|
+
"variant",
|
|
88
|
+
"size"
|
|
89
|
+
]);
|
|
90
|
+
return /* @__PURE__ */ jsx(
|
|
91
|
+
Button,
|
|
92
|
+
__spreadValues({
|
|
93
|
+
type,
|
|
94
|
+
"data-size": size,
|
|
95
|
+
variant,
|
|
96
|
+
className: cn(inputGroupButtonVariants({ size }), className)
|
|
97
|
+
}, props)
|
|
98
|
+
);
|
|
99
|
+
}
|
|
100
|
+
function InputGroupText(_a) {
|
|
101
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
102
|
+
return /* @__PURE__ */ jsx(
|
|
103
|
+
"span",
|
|
104
|
+
__spreadValues({
|
|
105
|
+
className: cn(
|
|
106
|
+
"flex items-center gap-2 text-muted-foreground text-sm [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none",
|
|
107
|
+
className
|
|
108
|
+
)
|
|
109
|
+
}, props)
|
|
110
|
+
);
|
|
111
|
+
}
|
|
112
|
+
function InputGroupInput(_a) {
|
|
113
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
114
|
+
return /* @__PURE__ */ jsx(
|
|
115
|
+
Input,
|
|
116
|
+
__spreadValues({
|
|
117
|
+
"data-slot": "input-group-control",
|
|
118
|
+
className: cn(
|
|
119
|
+
"flex-1 rounded-none border-0 bg-transparent shadow-none ring-0 focus-visible:ring-0 aria-invalid:ring-0 dark:bg-transparent",
|
|
120
|
+
className
|
|
121
|
+
)
|
|
122
|
+
}, props)
|
|
123
|
+
);
|
|
124
|
+
}
|
|
125
|
+
function InputGroupTextarea(_a) {
|
|
126
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
127
|
+
return /* @__PURE__ */ jsx(
|
|
128
|
+
Textarea,
|
|
129
|
+
__spreadValues({
|
|
130
|
+
"data-slot": "input-group-control",
|
|
131
|
+
className: cn(
|
|
132
|
+
"flex-1 resize-none rounded-none border-0 bg-transparent py-2 shadow-none ring-0 focus-visible:ring-0 aria-invalid:ring-0 dark:bg-transparent",
|
|
133
|
+
className
|
|
134
|
+
)
|
|
135
|
+
}, props)
|
|
136
|
+
);
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
export { InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea };
|
|
140
|
+
//# sourceMappingURL=chunk-5OYIXT3N.js.map
|
|
141
|
+
//# sourceMappingURL=chunk-5OYIXT3N.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/input-group.tsx"],"names":["_a","_b"],"mappings":"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","file":"chunk-5OYIXT3N.js","sourcesContent":["\"use client\"\n\nimport { cva, type VariantProps } from \"class-variance-authority\"\nimport type * as React from \"react\"\n\nimport { cn } from \"../lib/utils\"\nimport { Button } from \"./button\"\nimport { Input } from \"./input\"\nimport { Textarea } from \"./textarea\"\n\nfunction InputGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"input-group\"\n role=\"group\"\n className={cn(\n \"group/input-group relative flex h-9 w-full min-w-0 items-center rounded-md border border-input shadow-xs outline-none transition-[color,box-shadow] in-data-[slot=combobox-content]:focus-within:border-inherit in-data-[slot=combobox-content]:focus-within:ring-0 has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-start]]:h-auto has-[>textarea]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:flex-col has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot=input-group-control]:focus-visible]:ring-3 has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot][aria-invalid=true]]:ring-3 has-[[data-slot][aria-invalid=true]]:ring-destructive/20 dark:bg-input/30 dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 has-[>[data-align=block-end]]:[&>input]:pt-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-start]]:[&>input]:pl-1.5\",\n className,\n )}\n {...props}\n />\n )\n}\n\nconst inputGroupAddonVariants = cva(\n \"text-muted-foreground h-auto gap-2 py-1.5 text-sm font-medium group-data-[disabled=true]/input-group:opacity-50 [&>kbd]:rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-4 flex cursor-text items-center justify-center select-none\",\n {\n variants: {\n align: {\n \"inline-start\": \"pl-2 has-[>button]:-ml-1 has-[>kbd]:ml-[-0.15rem] order-first\",\n \"inline-end\": \"pr-2 has-[>button]:-mr-1 has-[>kbd]:mr-[-0.15rem] order-last\",\n \"block-start\":\n \"px-2.5 pt-2 group-has-[>input]/input-group:pt-2 [.border-b]:pb-2 order-first w-full justify-start\",\n \"block-end\":\n \"px-2.5 pb-2 group-has-[>input]/input-group:pb-2 [.border-t]:pt-2 order-last w-full justify-start\",\n },\n },\n defaultVariants: {\n align: \"inline-start\",\n },\n },\n)\n\nfunction InputGroupAddon({\n className,\n align = \"inline-start\",\n ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof inputGroupAddonVariants>) {\n return (\n <div\n role=\"group\"\n data-slot=\"input-group-addon\"\n data-align={align}\n className={cn(inputGroupAddonVariants({ align }), className)}\n onClick={(e) => {\n if ((e.target as HTMLElement).closest(\"button\")) {\n return\n }\n e.currentTarget.parentElement?.querySelector(\"input\")?.focus()\n }}\n {...props}\n />\n )\n}\n\nconst inputGroupButtonVariants = cva(\"gap-2 text-sm shadow-none flex items-center\", {\n variants: {\n size: {\n xs: \"h-6 gap-1 rounded-[calc(var(--radius)-5px)] px-1.5 [&>svg:not([class*='size-'])]:size-3.5\",\n sm: \"\",\n \"icon-xs\": \"size-6 rounded-[calc(var(--radius)-5px)] p-0 has-[>svg]:p-0\",\n \"icon-sm\": \"size-8 p-0 has-[>svg]:p-0\",\n },\n },\n defaultVariants: {\n size: \"xs\",\n },\n})\n\nfunction InputGroupButton({\n className,\n type = \"button\",\n variant = \"ghost\",\n size = \"xs\",\n ...props\n}: Omit<React.ComponentProps<typeof Button>, \"size\" | \"type\"> &\n VariantProps<typeof inputGroupButtonVariants> & {\n type?: \"button\" | \"submit\" | \"reset\"\n }) {\n return (\n <Button\n type={type}\n data-size={size}\n variant={variant}\n className={cn(inputGroupButtonVariants({ size }), className)}\n {...props}\n />\n )\n}\n\nfunction InputGroupText({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n <span\n className={cn(\n \"flex items-center gap-2 text-muted-foreground text-sm [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none\",\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction InputGroupInput({ className, ...props }: React.ComponentProps<\"input\">) {\n return (\n <Input\n data-slot=\"input-group-control\"\n className={cn(\n \"flex-1 rounded-none border-0 bg-transparent shadow-none ring-0 focus-visible:ring-0 aria-invalid:ring-0 dark:bg-transparent\",\n className,\n )}\n {...props}\n />\n )\n}\n\nfunction InputGroupTextarea({ className, ...props }: React.ComponentProps<\"textarea\">) {\n return (\n <Textarea\n data-slot=\"input-group-control\"\n className={cn(\n \"flex-1 resize-none rounded-none border-0 bg-transparent py-2 shadow-none ring-0 focus-visible:ring-0 aria-invalid:ring-0 dark:bg-transparent\",\n className,\n )}\n {...props}\n />\n )\n}\n\nexport {\n InputGroup,\n InputGroupAddon,\n InputGroupButton,\n InputGroupText,\n InputGroupInput,\n InputGroupTextarea,\n}\n"]}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cn } from './chunk-MHRCB42B.js';
|
|
3
|
+
import { __objRest, __spreadValues } from './chunk-2NMEKWO5.js';
|
|
4
|
+
import { useRef, useEffect } from 'react';
|
|
5
|
+
import { jsx } from 'react/jsx-runtime';
|
|
6
|
+
|
|
7
|
+
var PALETTES = {
|
|
8
|
+
blue: {
|
|
9
|
+
light: ["100, 140, 200", "80, 160, 120", "140, 100, 180"],
|
|
10
|
+
dark: ["140, 180, 255", "160, 255, 180", "200, 160, 255"]
|
|
11
|
+
},
|
|
12
|
+
green: {
|
|
13
|
+
light: ["60, 140, 90", "100, 160, 60", "40, 120, 130"],
|
|
14
|
+
dark: ["120, 220, 150", "180, 255, 120", "100, 200, 180"]
|
|
15
|
+
},
|
|
16
|
+
amber: {
|
|
17
|
+
light: ["180, 130, 60", "160, 100, 80", "140, 140, 60"],
|
|
18
|
+
dark: ["255, 200, 120", "255, 160, 140", "220, 220, 120"]
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
function SubtleShader(_a) {
|
|
22
|
+
var _b = _a, {
|
|
23
|
+
paused = false,
|
|
24
|
+
palette = "blue",
|
|
25
|
+
className
|
|
26
|
+
} = _b, props = __objRest(_b, [
|
|
27
|
+
"paused",
|
|
28
|
+
"palette",
|
|
29
|
+
"className"
|
|
30
|
+
]);
|
|
31
|
+
const canvasRef = useRef(null);
|
|
32
|
+
const rafRef = useRef(0);
|
|
33
|
+
const pausedRef = useRef(paused);
|
|
34
|
+
useEffect(() => {
|
|
35
|
+
pausedRef.current = paused;
|
|
36
|
+
}, [paused]);
|
|
37
|
+
useEffect(() => {
|
|
38
|
+
const canvas = canvasRef.current;
|
|
39
|
+
if (!canvas) return;
|
|
40
|
+
const ctx = canvas.getContext("2d");
|
|
41
|
+
if (!ctx) return;
|
|
42
|
+
const mq = window.matchMedia("(prefers-reduced-motion: reduce)");
|
|
43
|
+
if (mq.matches) return;
|
|
44
|
+
const startTime = performance.now();
|
|
45
|
+
const resize = () => {
|
|
46
|
+
const dpr = Math.min(window.devicePixelRatio, 2);
|
|
47
|
+
const w = canvas.clientWidth;
|
|
48
|
+
const h = canvas.clientHeight;
|
|
49
|
+
canvas.width = w * dpr * 0.25;
|
|
50
|
+
canvas.height = h * dpr * 0.25;
|
|
51
|
+
};
|
|
52
|
+
resize();
|
|
53
|
+
window.addEventListener("resize", resize);
|
|
54
|
+
const render = (now) => {
|
|
55
|
+
if (pausedRef.current) {
|
|
56
|
+
rafRef.current = requestAnimationFrame(render);
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
const w = canvas.width;
|
|
60
|
+
const h = canvas.height;
|
|
61
|
+
if (w === 0 || h === 0) {
|
|
62
|
+
rafRef.current = requestAnimationFrame(render);
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
const t = (now - startTime) * 8e-5;
|
|
66
|
+
const isDark = document.documentElement.classList.contains("dark");
|
|
67
|
+
const baseAlpha = isDark ? 0.06 : 0.04;
|
|
68
|
+
const colors = isDark ? PALETTES[palette].dark : PALETTES[palette].light;
|
|
69
|
+
ctx.clearRect(0, 0, w, h);
|
|
70
|
+
const blobs = [
|
|
71
|
+
{
|
|
72
|
+
x: w * (0.3 + 0.2 * Math.sin(t * 1.1)),
|
|
73
|
+
y: h * (0.3 + 0.2 * Math.cos(t * 0.9)),
|
|
74
|
+
r: Math.max(w, h) * 0.6,
|
|
75
|
+
color: colors[0]
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
x: w * (0.7 + 0.15 * Math.cos(t * 0.7)),
|
|
79
|
+
y: h * (0.6 + 0.2 * Math.sin(t * 1.3)),
|
|
80
|
+
r: Math.max(w, h) * 0.5,
|
|
81
|
+
color: colors[1]
|
|
82
|
+
},
|
|
83
|
+
{
|
|
84
|
+
x: w * (0.5 + 0.25 * Math.sin(t * 0.5)),
|
|
85
|
+
y: h * (0.4 + 0.15 * Math.cos(t * 1.1)),
|
|
86
|
+
r: Math.max(w, h) * 0.55,
|
|
87
|
+
color: colors[2]
|
|
88
|
+
}
|
|
89
|
+
];
|
|
90
|
+
for (const blob of blobs) {
|
|
91
|
+
const gradient = ctx.createRadialGradient(blob.x, blob.y, 0, blob.x, blob.y, blob.r);
|
|
92
|
+
gradient.addColorStop(0, `rgba(${blob.color}, ${baseAlpha})`);
|
|
93
|
+
gradient.addColorStop(1, `rgba(${blob.color}, 0)`);
|
|
94
|
+
ctx.fillStyle = gradient;
|
|
95
|
+
ctx.fillRect(0, 0, w, h);
|
|
96
|
+
}
|
|
97
|
+
rafRef.current = requestAnimationFrame(render);
|
|
98
|
+
};
|
|
99
|
+
rafRef.current = requestAnimationFrame(render);
|
|
100
|
+
return () => {
|
|
101
|
+
cancelAnimationFrame(rafRef.current);
|
|
102
|
+
window.removeEventListener("resize", resize);
|
|
103
|
+
};
|
|
104
|
+
}, [palette]);
|
|
105
|
+
return /* @__PURE__ */ jsx(
|
|
106
|
+
"canvas",
|
|
107
|
+
__spreadValues({
|
|
108
|
+
ref: canvasRef,
|
|
109
|
+
"aria-hidden": "true",
|
|
110
|
+
"data-slot": "subtle-shader",
|
|
111
|
+
className: cn("absolute inset-0 h-full w-full", className),
|
|
112
|
+
style: { imageRendering: "auto", filter: "blur(40px)" }
|
|
113
|
+
}, props)
|
|
114
|
+
);
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
export { SubtleShader };
|
|
118
|
+
//# sourceMappingURL=chunk-5Q4NJ7WO.js.map
|
|
119
|
+
//# sourceMappingURL=chunk-5Q4NJ7WO.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/subtle-shader.tsx"],"names":[],"mappings":"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","file":"chunk-5Q4NJ7WO.js","sourcesContent":["\"use client\"\n\nimport { useEffect, useRef } from \"react\"\n\nimport { cn } from \"../lib/utils\"\n\ntype Palette = \"blue\" | \"green\" | \"amber\"\n\nconst PALETTES: Record<Palette, { light: string[]; dark: string[] }> = {\n blue: {\n light: [\"100, 140, 200\", \"80, 160, 120\", \"140, 100, 180\"],\n dark: [\"140, 180, 255\", \"160, 255, 180\", \"200, 160, 255\"],\n },\n green: {\n light: [\"60, 140, 90\", \"100, 160, 60\", \"40, 120, 130\"],\n dark: [\"120, 220, 150\", \"180, 255, 120\", \"100, 200, 180\"],\n },\n amber: {\n light: [\"180, 130, 60\", \"160, 100, 80\", \"140, 140, 60\"],\n dark: [\"255, 200, 120\", \"255, 160, 140\", \"220, 220, 120\"],\n },\n}\n\ntype SubtleShaderProps = React.ComponentProps<\"canvas\"> & {\n paused?: boolean\n palette?: Palette\n}\n\nfunction SubtleShader({\n paused = false,\n palette = \"blue\",\n className,\n ...props\n}: SubtleShaderProps) {\n const canvasRef = useRef<HTMLCanvasElement>(null)\n const rafRef = useRef(0)\n const pausedRef = useRef(paused)\n\n useEffect(() => {\n pausedRef.current = paused\n }, [paused])\n\n useEffect(() => {\n const canvas = canvasRef.current\n if (!canvas) return\n\n const ctx = canvas.getContext(\"2d\")\n if (!ctx) return\n\n const mq = window.matchMedia(\"(prefers-reduced-motion: reduce)\")\n if (mq.matches) return\n\n const startTime = performance.now()\n\n const resize = () => {\n const dpr = Math.min(window.devicePixelRatio, 2)\n const w = canvas.clientWidth\n const h = canvas.clientHeight\n canvas.width = w * dpr * 0.25\n canvas.height = h * dpr * 0.25\n }\n\n resize()\n window.addEventListener(\"resize\", resize)\n\n const render = (now: number) => {\n if (pausedRef.current) {\n rafRef.current = requestAnimationFrame(render)\n return\n }\n\n const w = canvas.width\n const h = canvas.height\n if (w === 0 || h === 0) {\n rafRef.current = requestAnimationFrame(render)\n return\n }\n\n const t = (now - startTime) * 0.00008\n\n const isDark = document.documentElement.classList.contains(\"dark\")\n const baseAlpha = isDark ? 0.06 : 0.04\n const colors = isDark ? PALETTES[palette].dark : PALETTES[palette].light\n\n ctx.clearRect(0, 0, w, h)\n\n const blobs = [\n {\n x: w * (0.3 + 0.2 * Math.sin(t * 1.1)),\n y: h * (0.3 + 0.2 * Math.cos(t * 0.9)),\n r: Math.max(w, h) * 0.6,\n color: colors[0],\n },\n {\n x: w * (0.7 + 0.15 * Math.cos(t * 0.7)),\n y: h * (0.6 + 0.2 * Math.sin(t * 1.3)),\n r: Math.max(w, h) * 0.5,\n color: colors[1],\n },\n {\n x: w * (0.5 + 0.25 * Math.sin(t * 0.5)),\n y: h * (0.4 + 0.15 * Math.cos(t * 1.1)),\n r: Math.max(w, h) * 0.55,\n color: colors[2],\n },\n ]\n\n for (const blob of blobs) {\n const gradient = ctx.createRadialGradient(blob.x, blob.y, 0, blob.x, blob.y, blob.r)\n gradient.addColorStop(0, `rgba(${blob.color}, ${baseAlpha})`)\n gradient.addColorStop(1, `rgba(${blob.color}, 0)`)\n ctx.fillStyle = gradient\n ctx.fillRect(0, 0, w, h)\n }\n\n rafRef.current = requestAnimationFrame(render)\n }\n\n rafRef.current = requestAnimationFrame(render)\n\n return () => {\n cancelAnimationFrame(rafRef.current)\n window.removeEventListener(\"resize\", resize)\n }\n }, [palette])\n\n return (\n <canvas\n ref={canvasRef}\n aria-hidden=\"true\"\n data-slot=\"subtle-shader\"\n className={cn(\"absolute inset-0 h-full w-full\", className)}\n style={{ imageRendering: \"auto\", filter: \"blur(40px)\" }}\n {...props}\n />\n )\n}\n\nexport { SubtleShader }\nexport type { Palette as SubtleShaderPalette, SubtleShaderProps }\n"]}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { cn } from './chunk-MHRCB42B.js';
|
|
3
|
+
import { __objRest, __spreadProps, __spreadValues } from './chunk-2NMEKWO5.js';
|
|
4
|
+
import { Checkbox as Checkbox$1 } from '@base-ui/react/checkbox';
|
|
5
|
+
import { CheckIcon } from 'lucide-react';
|
|
6
|
+
import { jsx } from 'react/jsx-runtime';
|
|
7
|
+
|
|
8
|
+
function Checkbox(_a) {
|
|
9
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
10
|
+
return /* @__PURE__ */ jsx(
|
|
11
|
+
Checkbox$1.Root,
|
|
12
|
+
__spreadProps(__spreadValues({
|
|
13
|
+
"data-slot": "checkbox",
|
|
14
|
+
className: cn(
|
|
15
|
+
"peer relative flex size-4 shrink-0 items-center justify-center rounded-[4px] border border-input shadow-xs outline-none transition-shadow after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 group-has-disabled/field:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground dark:bg-input/30 dark:data-checked:bg-primary dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40",
|
|
16
|
+
className
|
|
17
|
+
)
|
|
18
|
+
}, props), {
|
|
19
|
+
children: /* @__PURE__ */ jsx(
|
|
20
|
+
Checkbox$1.Indicator,
|
|
21
|
+
{
|
|
22
|
+
"data-slot": "checkbox-indicator",
|
|
23
|
+
className: "grid place-content-center text-current transition-none [&>svg]:size-3.5",
|
|
24
|
+
children: /* @__PURE__ */ jsx(CheckIcon, {})
|
|
25
|
+
}
|
|
26
|
+
)
|
|
27
|
+
})
|
|
28
|
+
);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export { Checkbox };
|
|
32
|
+
//# sourceMappingURL=chunk-5U5NBPQE.js.map
|
|
33
|
+
//# sourceMappingURL=chunk-5U5NBPQE.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/components/checkbox.tsx"],"names":["CheckboxPrimitive"],"mappings":";;;;;;AAQA,SAAS,SAAS,EAAA,EAAuD;AAAvD,EAAA,IAAA,EAAA,GAAA,EAAA,EAAE,EAAA,SAAA,EARpB,GAQkB,EAAA,EAAgB,KAAA,GAAA,SAAA,CAAhB,IAAgB,CAAd,WAAA,CAAA,CAAA;AAClB,EAAA,uBACE,GAAA;AAAA,IAACA,UAAA,CAAkB,IAAA;AAAA,IAAlB,aAAA,CAAA,cAAA,CAAA;AAAA,MACC,WAAA,EAAU,UAAA;AAAA,MACV,SAAA,EAAW,EAAA;AAAA,QACT,6qBAAA;AAAA,QACA;AAAA;AACF,KAAA,EACI,KAAA,CAAA,EANL;AAAA,MAQC,QAAA,kBAAA,GAAA;AAAA,QAACA,UAAA,CAAkB,SAAA;AAAA,QAAlB;AAAA,UACC,WAAA,EAAU,oBAAA;AAAA,UACV,SAAA,EAAU,yEAAA;AAAA,UAEV,8BAAC,SAAA,EAAA,EAAU;AAAA;AAAA;AACb,KAAA;AAAA,GACF;AAEJ","file":"chunk-5U5NBPQE.js","sourcesContent":["\"use client\"\n\nimport { Checkbox as CheckboxPrimitive } from \"@base-ui/react/checkbox\"\n\nimport { CheckIcon } from \"lucide-react\"\n\nimport { cn } from \"../lib/utils\"\n\nfunction Checkbox({ className, ...props }: CheckboxPrimitive.Root.Props) {\n return (\n <CheckboxPrimitive.Root\n data-slot=\"checkbox\"\n className={cn(\n \"peer relative flex size-4 shrink-0 items-center justify-center rounded-[4px] border border-input shadow-xs outline-none transition-shadow after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 group-has-disabled/field:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground dark:bg-input/30 dark:data-checked:bg-primary dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40\",\n className,\n )}\n {...props}\n >\n <CheckboxPrimitive.Indicator\n data-slot=\"checkbox-indicator\"\n className=\"grid place-content-center text-current transition-none [&>svg]:size-3.5\"\n >\n <CheckIcon />\n </CheckboxPrimitive.Indicator>\n </CheckboxPrimitive.Root>\n )\n}\n\nexport { Checkbox }\n"]}
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { Button } from './chunk-EN6GS7O4.js';
|
|
3
|
+
import { cn } from './chunk-MHRCB42B.js';
|
|
4
|
+
import { __objRest, __spreadProps, __spreadValues } from './chunk-2NMEKWO5.js';
|
|
5
|
+
import useEmblaCarousel from 'embla-carousel-react';
|
|
6
|
+
import { ChevronLeftIcon, ChevronRightIcon } from 'lucide-react';
|
|
7
|
+
import * as React from 'react';
|
|
8
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
9
|
+
|
|
10
|
+
var CarouselContext = React.createContext(null);
|
|
11
|
+
function useCarousel() {
|
|
12
|
+
const context = React.useContext(CarouselContext);
|
|
13
|
+
if (!context) {
|
|
14
|
+
throw new Error("useCarousel must be used within a <Carousel />");
|
|
15
|
+
}
|
|
16
|
+
return context;
|
|
17
|
+
}
|
|
18
|
+
function Carousel(_a) {
|
|
19
|
+
var _b = _a, {
|
|
20
|
+
orientation = "horizontal",
|
|
21
|
+
opts,
|
|
22
|
+
setApi,
|
|
23
|
+
plugins,
|
|
24
|
+
className,
|
|
25
|
+
children
|
|
26
|
+
} = _b, props = __objRest(_b, [
|
|
27
|
+
"orientation",
|
|
28
|
+
"opts",
|
|
29
|
+
"setApi",
|
|
30
|
+
"plugins",
|
|
31
|
+
"className",
|
|
32
|
+
"children"
|
|
33
|
+
]);
|
|
34
|
+
const [carouselRef, api] = useEmblaCarousel(
|
|
35
|
+
__spreadProps(__spreadValues({}, opts), {
|
|
36
|
+
axis: orientation === "horizontal" ? "x" : "y"
|
|
37
|
+
}),
|
|
38
|
+
plugins
|
|
39
|
+
);
|
|
40
|
+
const [canScrollPrev, setCanScrollPrev] = React.useState(false);
|
|
41
|
+
const [canScrollNext, setCanScrollNext] = React.useState(false);
|
|
42
|
+
const onSelect = React.useCallback((api2) => {
|
|
43
|
+
if (!api2) return;
|
|
44
|
+
setCanScrollPrev(api2.canScrollPrev());
|
|
45
|
+
setCanScrollNext(api2.canScrollNext());
|
|
46
|
+
}, []);
|
|
47
|
+
const scrollPrev = React.useCallback(() => {
|
|
48
|
+
api == null ? void 0 : api.scrollPrev();
|
|
49
|
+
}, [api]);
|
|
50
|
+
const scrollNext = React.useCallback(() => {
|
|
51
|
+
api == null ? void 0 : api.scrollNext();
|
|
52
|
+
}, [api]);
|
|
53
|
+
const handleKeyDown = React.useCallback(
|
|
54
|
+
(event) => {
|
|
55
|
+
if (event.key === "ArrowLeft") {
|
|
56
|
+
event.preventDefault();
|
|
57
|
+
scrollPrev();
|
|
58
|
+
} else if (event.key === "ArrowRight") {
|
|
59
|
+
event.preventDefault();
|
|
60
|
+
scrollNext();
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
[scrollPrev, scrollNext]
|
|
64
|
+
);
|
|
65
|
+
React.useEffect(() => {
|
|
66
|
+
if (!api || !setApi) return;
|
|
67
|
+
setApi(api);
|
|
68
|
+
}, [api, setApi]);
|
|
69
|
+
React.useEffect(() => {
|
|
70
|
+
if (!api) return;
|
|
71
|
+
onSelect(api);
|
|
72
|
+
api.on("reInit", onSelect);
|
|
73
|
+
api.on("select", onSelect);
|
|
74
|
+
return () => {
|
|
75
|
+
api == null ? void 0 : api.off("select", onSelect);
|
|
76
|
+
};
|
|
77
|
+
}, [api, onSelect]);
|
|
78
|
+
return /* @__PURE__ */ jsx(
|
|
79
|
+
CarouselContext.Provider,
|
|
80
|
+
{
|
|
81
|
+
value: {
|
|
82
|
+
carouselRef,
|
|
83
|
+
api,
|
|
84
|
+
opts,
|
|
85
|
+
orientation: orientation || ((opts == null ? void 0 : opts.axis) === "y" ? "vertical" : "horizontal"),
|
|
86
|
+
scrollPrev,
|
|
87
|
+
scrollNext,
|
|
88
|
+
canScrollPrev,
|
|
89
|
+
canScrollNext
|
|
90
|
+
},
|
|
91
|
+
children: /* @__PURE__ */ jsx(
|
|
92
|
+
"div",
|
|
93
|
+
__spreadProps(__spreadValues({
|
|
94
|
+
onKeyDownCapture: handleKeyDown,
|
|
95
|
+
className: cn("relative", className),
|
|
96
|
+
role: "region",
|
|
97
|
+
"aria-roledescription": "carousel",
|
|
98
|
+
"data-slot": "carousel"
|
|
99
|
+
}, props), {
|
|
100
|
+
children
|
|
101
|
+
})
|
|
102
|
+
)
|
|
103
|
+
}
|
|
104
|
+
);
|
|
105
|
+
}
|
|
106
|
+
function CarouselContent(_a) {
|
|
107
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
108
|
+
const { carouselRef, orientation } = useCarousel();
|
|
109
|
+
return /* @__PURE__ */ jsx("div", { ref: carouselRef, className: "overflow-hidden", "data-slot": "carousel-content", children: /* @__PURE__ */ jsx(
|
|
110
|
+
"div",
|
|
111
|
+
__spreadValues({
|
|
112
|
+
className: cn("flex", orientation === "horizontal" ? "-ml-4" : "-mt-4 flex-col", className)
|
|
113
|
+
}, props)
|
|
114
|
+
) });
|
|
115
|
+
}
|
|
116
|
+
function CarouselItem(_a) {
|
|
117
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
118
|
+
const { orientation } = useCarousel();
|
|
119
|
+
return /* @__PURE__ */ jsx(
|
|
120
|
+
"div",
|
|
121
|
+
__spreadValues({
|
|
122
|
+
role: "group",
|
|
123
|
+
"aria-roledescription": "slide",
|
|
124
|
+
"data-slot": "carousel-item",
|
|
125
|
+
className: cn(
|
|
126
|
+
"min-w-0 shrink-0 grow-0 basis-full",
|
|
127
|
+
orientation === "horizontal" ? "pl-4" : "pt-4",
|
|
128
|
+
className
|
|
129
|
+
)
|
|
130
|
+
}, props)
|
|
131
|
+
);
|
|
132
|
+
}
|
|
133
|
+
function CarouselPrevious(_a) {
|
|
134
|
+
var _b = _a, {
|
|
135
|
+
className,
|
|
136
|
+
variant = "outline",
|
|
137
|
+
size = "icon-sm"
|
|
138
|
+
} = _b, props = __objRest(_b, [
|
|
139
|
+
"className",
|
|
140
|
+
"variant",
|
|
141
|
+
"size"
|
|
142
|
+
]);
|
|
143
|
+
const { orientation, scrollPrev, canScrollPrev } = useCarousel();
|
|
144
|
+
return /* @__PURE__ */ jsxs(
|
|
145
|
+
Button,
|
|
146
|
+
__spreadProps(__spreadValues({
|
|
147
|
+
"data-slot": "carousel-previous",
|
|
148
|
+
variant,
|
|
149
|
+
size,
|
|
150
|
+
className: cn(
|
|
151
|
+
"absolute touch-manipulation rounded-full",
|
|
152
|
+
orientation === "horizontal" ? "top-1/2 -left-12 -translate-y-1/2" : "-top-12 left-1/2 -translate-x-1/2 rotate-90",
|
|
153
|
+
className
|
|
154
|
+
),
|
|
155
|
+
disabled: !canScrollPrev,
|
|
156
|
+
onClick: scrollPrev
|
|
157
|
+
}, props), {
|
|
158
|
+
children: [
|
|
159
|
+
/* @__PURE__ */ jsx(ChevronLeftIcon, { className: "cn-rtl-flip" }),
|
|
160
|
+
/* @__PURE__ */ jsx("span", { className: "sr-only", children: "Previous slide" })
|
|
161
|
+
]
|
|
162
|
+
})
|
|
163
|
+
);
|
|
164
|
+
}
|
|
165
|
+
function CarouselNext(_a) {
|
|
166
|
+
var _b = _a, {
|
|
167
|
+
className,
|
|
168
|
+
variant = "outline",
|
|
169
|
+
size = "icon-sm"
|
|
170
|
+
} = _b, props = __objRest(_b, [
|
|
171
|
+
"className",
|
|
172
|
+
"variant",
|
|
173
|
+
"size"
|
|
174
|
+
]);
|
|
175
|
+
const { orientation, scrollNext, canScrollNext } = useCarousel();
|
|
176
|
+
return /* @__PURE__ */ jsxs(
|
|
177
|
+
Button,
|
|
178
|
+
__spreadProps(__spreadValues({
|
|
179
|
+
"data-slot": "carousel-next",
|
|
180
|
+
variant,
|
|
181
|
+
size,
|
|
182
|
+
className: cn(
|
|
183
|
+
"absolute touch-manipulation rounded-full",
|
|
184
|
+
orientation === "horizontal" ? "top-1/2 -right-12 -translate-y-1/2" : "-bottom-12 left-1/2 -translate-x-1/2 rotate-90",
|
|
185
|
+
className
|
|
186
|
+
),
|
|
187
|
+
disabled: !canScrollNext,
|
|
188
|
+
onClick: scrollNext
|
|
189
|
+
}, props), {
|
|
190
|
+
children: [
|
|
191
|
+
/* @__PURE__ */ jsx(ChevronRightIcon, { className: "cn-rtl-flip" }),
|
|
192
|
+
/* @__PURE__ */ jsx("span", { className: "sr-only", children: "Next slide" })
|
|
193
|
+
]
|
|
194
|
+
})
|
|
195
|
+
);
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
export { Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, useCarousel };
|
|
199
|
+
//# sourceMappingURL=chunk-667PB7XR.js.map
|
|
200
|
+
//# sourceMappingURL=chunk-667PB7XR.js.map
|