react-component-kit-ui 0.0.0-stage → 0.1.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/CHANGELOG.md +25 -0
- package/LICENSE +21 -0
- package/README.md +225 -2
- package/dist/apexcharts.js +327 -0
- package/dist/app.js +21 -0
- package/dist/buttons.js +26 -0
- package/dist/cards.js +26 -0
- package/dist/charts.js +50 -0
- package/dist/chunks/ActivityHeatmapGrid-P3FP0D6z.js +416 -0
- package/dist/chunks/AnimatedCheckmark-CJEmTxC6.js +19 -0
- package/dist/chunks/AnimatedInput-Dt37HZSs.js +21 -0
- package/dist/chunks/AuthCard-BkWHMFho.js +1409 -0
- package/dist/chunks/Badge-CHkR__dT.js +11 -0
- package/dist/chunks/CartPageList-DvsbjjCi.js +331 -0
- package/dist/chunks/CartToast-UIJFD2CK.js +570 -0
- package/dist/chunks/ChangelogSection-eY4neMby.js +2409 -0
- package/dist/chunks/CountdownBanner-CcpsvvE8.js +1263 -0
- package/dist/chunks/CtaNewsletterSection-Cl3fLVpQ.js +75 -0
- package/dist/chunks/CustomRadioGroup-DAwliU9n.js +26 -0
- package/dist/chunks/DiagonalSectionDivider-CwOOEFbn.js +541 -0
- package/dist/chunks/FloatingFeedbackWidget-D_0EpalW.js +348 -0
- package/dist/chunks/FooterMegaSection-DG1qtKuZ.js +67 -0
- package/dist/chunks/HackerDecodeText-hutANQXI.js +289 -0
- package/dist/chunks/LogoWallGrid-BEpsn1Gt.js +433 -0
- package/dist/chunks/LogoWithGalaxy-q_3-9vGU.js +139 -0
- package/dist/chunks/ProductCardMinimal-lQi5vy3-.js +88 -0
- package/dist/chunks/QuickJumpDock-DZzwR0vg.js +294 -0
- package/dist/chunks/SegmentedBarChart-DEBZURnS.js +384 -0
- package/dist/chunks/ShopCategoryHero-BLlWZ-i3.js +695 -0
- package/dist/chunks/StackedAreaChart-DF1-3rDG.js +453 -0
- package/dist/chunks/StatsTrendCard--nij2Jv0.js +491 -0
- package/dist/chunks/StatusTimelineFeed-BRYwz08g.js +62 -0
- package/dist/chunks/StepBreadcrumbBar-BGXvx5NX.js +32 -0
- package/dist/chunks/StepperInput-Ck_9n2BL.js +30 -0
- package/dist/chunks/TagsAutocompleteInput-BdbVqPbF.js +467 -0
- package/dist/chunks/TiltGlowButton-BRHwq9Af.js +650 -0
- package/dist/chunks/TypingIndicator-DshBNXhx.js +373 -0
- package/dist/chunks/WaterfallChart-C6NFbfO0.js +1337 -0
- package/dist/chunks/cart-store-u-ScUvte.js +212 -0
- package/dist/chunks/chart-tooltip-C7pIc_Su.js +49 -0
- package/dist/chunks/galaxy-scene-C854qLoX.js +231 -0
- package/dist/data.js +28 -0
- package/dist/ecommerce.js +43 -0
- package/dist/favicon.svg +14 -0
- package/dist/feedback.js +28 -0
- package/dist/forms.js +31 -0
- package/dist/global.css +254 -0
- package/dist/index.js +397 -0
- package/dist/layout.js +26 -0
- package/dist/logo-animated.svg +46 -0
- package/dist/logo.svg +46 -0
- package/dist/navigation.js +28 -0
- package/dist/overlays.js +27 -0
- package/dist/robots.txt +4 -0
- package/dist/sections.js +68 -0
- package/dist/styles.css +1 -0
- package/dist/templates/ecommerce-editorial.js +481 -0
- package/dist/templates/ecommerce.js +556 -0
- package/dist/templates/saas-hotel.js +540 -0
- package/dist/three.js +17 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -0
- package/dist/types/components/apexcharts.d.ts +3 -0
- package/dist/types/components/index.d.ts +15 -0
- package/dist/types/components/lib/AnimatedGalaxy.d.ts +8 -0
- package/dist/types/components/lib/Galaxy3D.d.ts +15 -0
- package/dist/types/components/lib/LogoWithGalaxy.d.ts +8 -0
- package/dist/types/components/lib/app/AppSidebar.d.ts +53 -0
- package/dist/types/components/lib/app/AppTopbar.d.ts +52 -0
- package/dist/types/components/lib/app/ArrivalsBoard.d.ts +45 -0
- package/dist/types/components/lib/app/AuthCard.d.ts +45 -0
- package/dist/types/components/lib/app/DataTable.d.ts +54 -0
- package/dist/types/components/lib/app/GuestProfileCard.d.ts +48 -0
- package/dist/types/components/lib/app/HousekeepingBoard.d.ts +38 -0
- package/dist/types/components/lib/app/PageHeader.d.ts +45 -0
- package/dist/types/components/lib/app/PlanUsageCard.d.ts +44 -0
- package/dist/types/components/lib/app/RoomRack.d.ts +42 -0
- package/dist/types/components/lib/app/SettingsSection.d.ts +34 -0
- package/dist/types/components/lib/app/SwitchRow.d.ts +28 -0
- package/dist/types/components/lib/app/TeamMembers.d.ts +33 -0
- package/dist/types/components/lib/app/app-icons.d.ts +37 -0
- package/dist/types/components/lib/app/index.d.ts +15 -0
- package/dist/types/components/lib/buttons/AnimatedIconButton.d.ts +22 -0
- package/dist/types/components/lib/buttons/BorderDrawButton.d.ts +19 -0
- package/dist/types/components/lib/buttons/CyberpunkButton.d.ts +23 -0
- package/dist/types/components/lib/buttons/DoubleBorderButton.d.ts +17 -0
- package/dist/types/components/lib/buttons/GhostOutlineButton.d.ts +21 -0
- package/dist/types/components/lib/buttons/GlassButton.d.ts +23 -0
- package/dist/types/components/lib/buttons/GlowButton.d.ts +19 -0
- package/dist/types/components/lib/buttons/LiquidButton.d.ts +19 -0
- package/dist/types/components/lib/buttons/LoadingButton.d.ts +20 -0
- package/dist/types/components/lib/buttons/MagneticButton.d.ts +21 -0
- package/dist/types/components/lib/buttons/MinimalPillButton.d.ts +17 -0
- package/dist/types/components/lib/buttons/NeonBorderButton.d.ts +19 -0
- package/dist/types/components/lib/buttons/NeumorphicButton.d.ts +21 -0
- package/dist/types/components/lib/buttons/PulseButton.d.ts +20 -0
- package/dist/types/components/lib/buttons/RetroArcadeButton.d.ts +17 -0
- package/dist/types/components/lib/buttons/RetroShadowButton.d.ts +17 -0
- package/dist/types/components/lib/buttons/RippleButton.d.ts +17 -0
- package/dist/types/components/lib/buttons/ShimmerButton.d.ts +17 -0
- package/dist/types/components/lib/buttons/ShinyButton.d.ts +17 -0
- package/dist/types/components/lib/buttons/SlideRevealButton.d.ts +20 -0
- package/dist/types/components/lib/buttons/ThreeDPushButton.d.ts +19 -0
- package/dist/types/components/lib/buttons/TiltGlowButton.d.ts +21 -0
- package/dist/types/components/lib/buttons/index.d.ts +22 -0
- package/dist/types/components/lib/cards/BlogHorizontalCard.d.ts +17 -0
- package/dist/types/components/lib/cards/CyberFeatureCard.d.ts +15 -0
- package/dist/types/components/lib/cards/EcommerceProductCard.d.ts +21 -0
- package/dist/types/components/lib/cards/GithubRepoCard.d.ts +25 -0
- package/dist/types/components/lib/cards/GlassCard.d.ts +19 -0
- package/dist/types/components/lib/cards/GlassEventCard.d.ts +17 -0
- package/dist/types/components/lib/cards/GlowPortfolioCard.d.ts +17 -0
- package/dist/types/components/lib/cards/InteractiveTiltCard.d.ts +13 -0
- package/dist/types/components/lib/cards/KanbanItemCard.d.ts +15 -0
- package/dist/types/components/lib/cards/MinimalLinkCard.d.ts +13 -0
- package/dist/types/components/lib/cards/MusicPlayerMini.d.ts +17 -0
- package/dist/types/components/lib/cards/NeumorphicCard.d.ts +13 -0
- package/dist/types/components/lib/cards/NotificationCard.d.ts +15 -0
- package/dist/types/components/lib/cards/PricingCard.d.ts +17 -0
- package/dist/types/components/lib/cards/PricingCompareMiniCard.d.ts +25 -0
- package/dist/types/components/lib/cards/ProfileCard.d.ts +17 -0
- package/dist/types/components/lib/cards/RetroGameCard.d.ts +15 -0
- package/dist/types/components/lib/cards/StatCard.d.ts +15 -0
- package/dist/types/components/lib/cards/StatsTrendCard.d.ts +19 -0
- package/dist/types/components/lib/cards/TaskKanbanCard.d.ts +17 -0
- package/dist/types/components/lib/cards/TestimonialCardClean.d.ts +17 -0
- package/dist/types/components/lib/cards/WeatherWidgetCard.d.ts +17 -0
- package/dist/types/components/lib/cards/index.d.ts +22 -0
- package/dist/types/components/lib/charts/ActivityRings.d.ts +26 -0
- package/dist/types/components/lib/charts/AreaChart.d.ts +16 -0
- package/dist/types/components/lib/charts/BarChart.d.ts +17 -0
- package/dist/types/components/lib/charts/BoxPlotChart.d.ts +26 -0
- package/dist/types/components/lib/charts/BubbleChart.d.ts +35 -0
- package/dist/types/components/lib/charts/BulletChart.d.ts +29 -0
- package/dist/types/components/lib/charts/BumpChart.d.ts +25 -0
- package/dist/types/components/lib/charts/CandlestickChart.d.ts +30 -0
- package/dist/types/components/lib/charts/ChartFrame.d.ts +43 -0
- package/dist/types/components/lib/charts/DivergingBarChart.d.ts +31 -0
- package/dist/types/components/lib/charts/DonutChart.d.ts +16 -0
- package/dist/types/components/lib/charts/DumbbellChart.d.ts +31 -0
- package/dist/types/components/lib/charts/ForecastLineChart.d.ts +30 -0
- package/dist/types/components/lib/charts/FunnelChart.d.ts +24 -0
- package/dist/types/components/lib/charts/GaugeChart.d.ts +29 -0
- package/dist/types/components/lib/charts/GoalProgressChart.d.ts +29 -0
- package/dist/types/components/lib/charts/GroupedBarChart.d.ts +32 -0
- package/dist/types/components/lib/charts/HeatmapChart.d.ts +29 -0
- package/dist/types/components/lib/charts/HistogramChart.d.ts +27 -0
- package/dist/types/components/lib/charts/HorizontalBarChart.d.ts +32 -0
- package/dist/types/components/lib/charts/KpiStatTile.d.ts +28 -0
- package/dist/types/components/lib/charts/KpiTrendGrid.d.ts +27 -0
- package/dist/types/components/lib/charts/LineChart.d.ts +38 -0
- package/dist/types/components/lib/charts/LinearProgressGauge.d.ts +19 -0
- package/dist/types/components/lib/charts/LollipopChart.d.ts +32 -0
- package/dist/types/components/lib/charts/MeterGauge.d.ts +32 -0
- package/dist/types/components/lib/charts/MetricDeltaTable.d.ts +36 -0
- package/dist/types/components/lib/charts/PieChart.d.ts +32 -0
- package/dist/types/components/lib/charts/PolarAreaChart.d.ts +27 -0
- package/dist/types/components/lib/charts/PopulationPyramid.d.ts +31 -0
- package/dist/types/components/lib/charts/PunchCardChart.d.ts +26 -0
- package/dist/types/components/lib/charts/RadarChart.d.ts +28 -0
- package/dist/types/components/lib/charts/RadarMetricChart.d.ts +20 -0
- package/dist/types/components/lib/charts/RadialBarChart.d.ts +27 -0
- package/dist/types/components/lib/charts/RangeAreaChart.d.ts +34 -0
- package/dist/types/components/lib/charts/RetentionCohortTable.d.ts +27 -0
- package/dist/types/components/lib/charts/SankeyChart.d.ts +30 -0
- package/dist/types/components/lib/charts/ScatterPlot.d.ts +35 -0
- package/dist/types/components/lib/charts/SegmentedBarChart.d.ts +30 -0
- package/dist/types/components/lib/charts/SlopeChart.d.ts +33 -0
- package/dist/types/components/lib/charts/SparklineChart.d.ts +24 -0
- package/dist/types/components/lib/charts/StackedAreaChart.d.ts +34 -0
- package/dist/types/components/lib/charts/StackedBarChart.d.ts +33 -0
- package/dist/types/components/lib/charts/SunburstChart.d.ts +33 -0
- package/dist/types/components/lib/charts/TreemapChart.d.ts +31 -0
- package/dist/types/components/lib/charts/WaffleChart.d.ts +26 -0
- package/dist/types/components/lib/charts/WaterfallChart.d.ts +32 -0
- package/dist/types/components/lib/charts/chart-tooltip.d.ts +1 -0
- package/dist/types/components/lib/charts/chart-utils.d.ts +46 -0
- package/dist/types/components/lib/charts/index.d.ts +44 -0
- package/dist/types/components/lib/data/AccordionGroupGlass.d.ts +6 -0
- package/dist/types/components/lib/data/ActivityHeatmapGrid.d.ts +13 -0
- package/dist/types/components/lib/data/AvatarGroupStack.d.ts +6 -0
- package/dist/types/components/lib/data/CalendarGridView.d.ts +6 -0
- package/dist/types/components/lib/data/DataChipsGroup.d.ts +6 -0
- package/dist/types/components/lib/data/DescriptionListHoriz.d.ts +6 -0
- package/dist/types/components/lib/data/FileTreeView.d.ts +6 -0
- package/dist/types/components/lib/data/GanttChartMinimal.d.ts +6 -0
- package/dist/types/components/lib/data/GlassTable.d.ts +6 -0
- package/dist/types/components/lib/data/KeyValuePillGroup.d.ts +6 -0
- package/dist/types/components/lib/data/MetricComparisonRow.d.ts +19 -0
- package/dist/types/components/lib/data/PriceCompareTable.d.ts +6 -0
- package/dist/types/components/lib/data/ProgressListSmall.d.ts +6 -0
- package/dist/types/components/lib/data/RatingBreakdownBar.d.ts +6 -0
- package/dist/types/components/lib/data/SparklineStatCard.d.ts +6 -0
- package/dist/types/components/lib/data/StatsGridDashboard.d.ts +6 -0
- package/dist/types/components/lib/data/StatusTimelineFeed.d.ts +16 -0
- package/dist/types/components/lib/data/StepperDataVertical.d.ts +6 -0
- package/dist/types/components/lib/data/TagCloudData.d.ts +6 -0
- package/dist/types/components/lib/data/TimelineHorizSteps.d.ts +6 -0
- package/dist/types/components/lib/data/TreeItemInteractive.d.ts +6 -0
- package/dist/types/components/lib/data/UserDirectoryItem.d.ts +6 -0
- package/dist/types/components/lib/data/VerticalTimeline.d.ts +6 -0
- package/dist/types/components/lib/data/index.d.ts +23 -0
- package/dist/types/components/lib/ecommerce/CartDrawer.d.ts +43 -0
- package/dist/types/components/lib/ecommerce/CartPageList.d.ts +36 -0
- package/dist/types/components/lib/ecommerce/CartToast.d.ts +34 -0
- package/dist/types/components/lib/ecommerce/CategoryTiles.d.ts +32 -0
- package/dist/types/components/lib/ecommerce/CheckoutForm.d.ts +44 -0
- package/dist/types/components/lib/ecommerce/CountdownBanner.d.ts +38 -0
- package/dist/types/components/lib/ecommerce/FilterBar.d.ts +48 -0
- package/dist/types/components/lib/ecommerce/FilterSidebar.d.ts +42 -0
- package/dist/types/components/lib/ecommerce/LiveActivityToast.d.ts +43 -0
- package/dist/types/components/lib/ecommerce/OrderSummary.d.ts +39 -0
- package/dist/types/components/lib/ecommerce/ProductBuyBox.d.ts +39 -0
- package/dist/types/components/lib/ecommerce/ProductCardMinimal.d.ts +38 -0
- package/dist/types/components/lib/ecommerce/ProductGallery.d.ts +29 -0
- package/dist/types/components/lib/ecommerce/ProductGrid.d.ts +41 -0
- package/dist/types/components/lib/ecommerce/ProductMedia.d.ts +30 -0
- package/dist/types/components/lib/ecommerce/ProductRating.d.ts +23 -0
- package/dist/types/components/lib/ecommerce/ProductToolbar.d.ts +35 -0
- package/dist/types/components/lib/ecommerce/PromoBar.d.ts +29 -0
- package/dist/types/components/lib/ecommerce/StockIndicator.d.ts +29 -0
- package/dist/types/components/lib/ecommerce/StoreHeader.d.ts +54 -0
- package/dist/types/components/lib/ecommerce/StoreHero.d.ts +48 -0
- package/dist/types/components/lib/ecommerce/StoreProductCard.d.ts +40 -0
- package/dist/types/components/lib/ecommerce/TrustBadges.d.ts +24 -0
- package/dist/types/components/lib/ecommerce/VariantPicker.d.ts +37 -0
- package/dist/types/components/lib/ecommerce/cart-store.d.ts +31 -0
- package/dist/types/components/lib/ecommerce/catalog-filter.d.ts +12 -0
- package/dist/types/components/lib/ecommerce/index.d.ts +30 -0
- package/dist/types/components/lib/ecommerce/product-icons.d.ts +20 -0
- package/dist/types/components/lib/ecommerce/types.d.ts +61 -0
- package/dist/types/components/lib/feedback/AnimatedCheckmark.d.ts +14 -0
- package/dist/types/components/lib/feedback/Badge.d.ts +17 -0
- package/dist/types/components/lib/feedback/CircleProgress.d.ts +18 -0
- package/dist/types/components/lib/feedback/ConfettiFeedback.d.ts +18 -0
- package/dist/types/components/lib/feedback/CyberGlitchAlert.d.ts +14 -0
- package/dist/types/components/lib/feedback/EmptyStateCard.d.ts +20 -0
- package/dist/types/components/lib/feedback/GlassAlert.d.ts +15 -0
- package/dist/types/components/lib/feedback/GlassModal.d.ts +24 -0
- package/dist/types/components/lib/feedback/GlassProgress.d.ts +14 -0
- package/dist/types/components/lib/feedback/IndicatorBadgeMinimal.d.ts +17 -0
- package/dist/types/components/lib/feedback/NeonSpinner.d.ts +16 -0
- package/dist/types/components/lib/feedback/ProgressRingCounter.d.ts +22 -0
- package/dist/types/components/lib/feedback/PulseDot.d.ts +14 -0
- package/dist/types/components/lib/feedback/RatingPill.d.ts +15 -0
- package/dist/types/components/lib/feedback/ShakeErrorGroup.d.ts +17 -0
- package/dist/types/components/lib/feedback/SimpleTooltip.d.ts +15 -0
- package/dist/types/components/lib/feedback/SkeletonList.d.ts +12 -0
- package/dist/types/components/lib/feedback/Spotlight.d.ts +15 -0
- package/dist/types/components/lib/feedback/StepProgress.d.ts +16 -0
- package/dist/types/components/lib/feedback/ToastNotif.d.ts +18 -0
- package/dist/types/components/lib/feedback/ToastNotificationGroup.d.ts +22 -0
- package/dist/types/components/lib/feedback/TypingIndicator.d.ts +14 -0
- package/dist/types/components/lib/feedback/index.d.ts +22 -0
- package/dist/types/components/lib/forms/AnimatedInput.d.ts +23 -0
- package/dist/types/components/lib/forms/ChipInput.d.ts +17 -0
- package/dist/types/components/lib/forms/ColorPickerInput.d.ts +17 -0
- package/dist/types/components/lib/forms/CurrencyInput.d.ts +21 -0
- package/dist/types/components/lib/forms/CustomRadioGroup.d.ts +21 -0
- package/dist/types/components/lib/forms/CyberpunkCheckbox.d.ts +17 -0
- package/dist/types/components/lib/forms/DragDropUpload.d.ts +19 -0
- package/dist/types/components/lib/forms/ErrorInput.d.ts +19 -0
- package/dist/types/components/lib/forms/FloatingPassword.d.ts +17 -0
- package/dist/types/components/lib/forms/FormGroupVertical.d.ts +21 -0
- package/dist/types/components/lib/forms/GlassInlineToggleGroup.d.ts +21 -0
- package/dist/types/components/lib/forms/GlassSlider.d.ts +23 -0
- package/dist/types/components/lib/forms/GlassTextarea.d.ts +21 -0
- package/dist/types/components/lib/forms/ModernSelect.d.ts +23 -0
- package/dist/types/components/lib/forms/NeumorphicSwitch.d.ts +17 -0
- package/dist/types/components/lib/forms/OTPInput.d.ts +17 -0
- package/dist/types/components/lib/forms/PasswordStrengthInput.d.ts +19 -0
- package/dist/types/components/lib/forms/PhoneCountryInput.d.ts +19 -0
- package/dist/types/components/lib/forms/RatingStars.d.ts +17 -0
- package/dist/types/components/lib/forms/SearchReveal.d.ts +15 -0
- package/dist/types/components/lib/forms/SegmentedControl.d.ts +19 -0
- package/dist/types/components/lib/forms/SimpleFileInput.d.ts +17 -0
- package/dist/types/components/lib/forms/StepperInput.d.ts +23 -0
- package/dist/types/components/lib/forms/TagsAutocompleteInput.d.ts +19 -0
- package/dist/types/components/lib/forms/index.d.ts +24 -0
- package/dist/types/components/lib/galaxy-scene.d.ts +5 -0
- package/dist/types/components/lib/layout/BentoGrid3.d.ts +14 -0
- package/dist/types/components/lib/layout/CenterFixedBox.d.ts +11 -0
- package/dist/types/components/lib/layout/CenteredContainer.d.ts +27 -0
- package/dist/types/components/lib/layout/ClusterHorizontal.d.ts +13 -0
- package/dist/types/components/lib/layout/DiagonalSectionDivider.d.ts +17 -0
- package/dist/types/components/lib/layout/FeatureHero.d.ts +35 -0
- package/dist/types/components/lib/layout/FooterCenteredMinimal.d.ts +23 -0
- package/dist/types/components/lib/layout/FullBleedSection.d.ts +11 -0
- package/dist/types/components/lib/layout/GalleryGrid4.d.ts +11 -0
- package/dist/types/components/lib/layout/GlassCardGrid.d.ts +16 -0
- package/dist/types/components/lib/layout/GlassSectionHeader.d.ts +30 -0
- package/dist/types/components/lib/layout/HolyGrailGrid.d.ts +23 -0
- package/dist/types/components/lib/layout/LandingSectionSplit.d.ts +14 -0
- package/dist/types/components/lib/layout/MasonryGrid.d.ts +13 -0
- package/dist/types/components/lib/layout/MinimalFooterGrid.d.ts +10 -0
- package/dist/types/components/lib/layout/ScrollSnapSection.d.ts +12 -0
- package/dist/types/components/lib/layout/SectionDividerText.d.ts +23 -0
- package/dist/types/components/lib/layout/SidebarLayoutWrapper.d.ts +33 -0
- package/dist/types/components/lib/layout/SplitScreenLayout.d.ts +12 -0
- package/dist/types/components/lib/layout/StepLayoutVertical.d.ts +9 -0
- package/dist/types/components/lib/layout/StickySidebarWrapper.d.ts +35 -0
- package/dist/types/components/lib/layout/VerticalStack.d.ts +27 -0
- package/dist/types/components/lib/layout/index.d.ts +22 -0
- package/dist/types/components/lib/navigation/AnchorSideNav.d.ts +6 -0
- package/dist/types/components/lib/navigation/BottomNavMobile.d.ts +6 -0
- package/dist/types/components/lib/navigation/BreadcrumbsMinimal.d.ts +6 -0
- package/dist/types/components/lib/navigation/BurgerMorphIcon.d.ts +6 -0
- package/dist/types/components/lib/navigation/CommandPaletteUI.d.ts +6 -0
- package/dist/types/components/lib/navigation/DotNavigationSlider.d.ts +6 -0
- package/dist/types/components/lib/navigation/FloatingTabBar.d.ts +6 -0
- package/dist/types/components/lib/navigation/GlassNavbar.d.ts +12 -0
- package/dist/types/components/lib/navigation/LangSwitcherPill.d.ts +6 -0
- package/dist/types/components/lib/navigation/MegaMenuGlass.d.ts +6 -0
- package/dist/types/components/lib/navigation/MinimalSidebar.d.ts +6 -0
- package/dist/types/components/lib/navigation/PaginationGlass.d.ts +6 -0
- package/dist/types/components/lib/navigation/PaginationInfiniteUI.d.ts +6 -0
- package/dist/types/components/lib/navigation/QuickJumpDock.d.ts +15 -0
- package/dist/types/components/lib/navigation/RadialIconMenu.d.ts +6 -0
- package/dist/types/components/lib/navigation/RetroArcadeMenu.d.ts +6 -0
- package/dist/types/components/lib/navigation/ScrollProgressTop.d.ts +6 -0
- package/dist/types/components/lib/navigation/SimpleFooterGlass.d.ts +6 -0
- package/dist/types/components/lib/navigation/StepBreadcrumbBar.d.ts +16 -0
- package/dist/types/components/lib/navigation/SubNavbarPills.d.ts +18 -0
- package/dist/types/components/lib/navigation/TabUnderline.d.ts +6 -0
- package/dist/types/components/lib/navigation/UserProfileNav.d.ts +6 -0
- package/dist/types/components/lib/navigation/VerticalTabs.d.ts +6 -0
- package/dist/types/components/lib/navigation/index.d.ts +23 -0
- package/dist/types/components/lib/overlays/AgeVerificationOverlay.d.ts +6 -0
- package/dist/types/components/lib/overlays/BackdropBlurMask.d.ts +6 -0
- package/dist/types/components/lib/overlays/BottomSheetMobile.d.ts +6 -0
- package/dist/types/components/lib/overlays/CommandDialog.d.ts +6 -0
- package/dist/types/components/lib/overlays/ContextMenuOverlay.d.ts +6 -0
- package/dist/types/components/lib/overlays/CookieBannerGlass.d.ts +6 -0
- package/dist/types/components/lib/overlays/CookiePreferencesDrawer.d.ts +13 -0
- package/dist/types/components/lib/overlays/ExitIntentOverlay.d.ts +6 -0
- package/dist/types/components/lib/overlays/FloatingFeedbackWidget.d.ts +13 -0
- package/dist/types/components/lib/overlays/FloatingTrayActions.d.ts +6 -0
- package/dist/types/components/lib/overlays/HelpBubbleOverlay.d.ts +6 -0
- package/dist/types/components/lib/overlays/ImageCompareSlider.d.ts +19 -0
- package/dist/types/components/lib/overlays/LightboxOverlay.d.ts +6 -0
- package/dist/types/components/lib/overlays/LoadingOverlayFull.d.ts +6 -0
- package/dist/types/components/lib/overlays/MobileNavOverlay.d.ts +6 -0
- package/dist/types/components/lib/overlays/OverlayModal.d.ts +6 -0
- package/dist/types/components/lib/overlays/PopoverMenuGlass.d.ts +6 -0
- package/dist/types/components/lib/overlays/SearchOverlayFullscreen.d.ts +6 -0
- package/dist/types/components/lib/overlays/SideDrawerRight.d.ts +8 -0
- package/dist/types/components/lib/overlays/SplashIntroOverlay.d.ts +6 -0
- package/dist/types/components/lib/overlays/SpotlightIndicator.d.ts +6 -0
- package/dist/types/components/lib/overlays/ToastStackOverlay.d.ts +6 -0
- package/dist/types/components/lib/overlays/TooltipActionTray.d.ts +6 -0
- package/dist/types/components/lib/overlays/index.d.ts +23 -0
- package/dist/types/components/lib/sections/AgencyContactBrief.d.ts +44 -0
- package/dist/types/components/lib/sections/AgencyFooterCta.d.ts +46 -0
- package/dist/types/components/lib/sections/AgencyHeader.d.ts +37 -0
- package/dist/types/components/lib/sections/AgencyHeroKinetic.d.ts +45 -0
- package/dist/types/components/lib/sections/AgencyServicesList.d.ts +35 -0
- package/dist/types/components/lib/sections/AgencyTeamGrid.d.ts +45 -0
- package/dist/types/components/lib/sections/AgencyWorkGrid.d.ts +42 -0
- package/dist/types/components/lib/sections/BlogGridSection.d.ts +35 -0
- package/dist/types/components/lib/sections/ButtonsShowcase.d.ts +8 -0
- package/dist/types/components/lib/sections/CardsShowcase.d.ts +8 -0
- package/dist/types/components/lib/sections/CareersOpenings.d.ts +37 -0
- package/dist/types/components/lib/sections/ChangelogSection.d.ts +37 -0
- package/dist/types/components/lib/sections/ContactGlassForm.d.ts +16 -0
- package/dist/types/components/lib/sections/ContactSplitMap.d.ts +36 -0
- package/dist/types/components/lib/sections/CtaAppDownload.d.ts +16 -0
- package/dist/types/components/lib/sections/CtaGlowBanner.d.ts +20 -0
- package/dist/types/components/lib/sections/CtaNewsletterSection.d.ts +28 -0
- package/dist/types/components/lib/sections/CtaSplitImage.d.ts +39 -0
- package/dist/types/components/lib/sections/DataShowcase.d.ts +8 -0
- package/dist/types/components/lib/sections/FaqAccordionSection.d.ts +16 -0
- package/dist/types/components/lib/sections/FaqTwoColumn.d.ts +32 -0
- package/dist/types/components/lib/sections/FeatureAlternatingRows.d.ts +29 -0
- package/dist/types/components/lib/sections/FeatureBentoGrid.d.ts +16 -0
- package/dist/types/components/lib/sections/FeatureIconGrid.d.ts +33 -0
- package/dist/types/components/lib/sections/FeatureTabsShowcase.d.ts +30 -0
- package/dist/types/components/lib/sections/FeatureTimelineFlow.d.ts +16 -0
- package/dist/types/components/lib/sections/FeedbackShowcase.d.ts +8 -0
- package/dist/types/components/lib/sections/FooterMegaSection.d.ts +40 -0
- package/dist/types/components/lib/sections/FormsShowcase.d.ts +8 -0
- package/dist/types/components/lib/sections/HeroDashboardPreview.d.ts +32 -0
- package/dist/types/components/lib/sections/HeroGlass.d.ts +8 -0
- package/dist/types/components/lib/sections/HeroGradient.d.ts +8 -0
- package/dist/types/components/lib/sections/HeroMinimalCentered.d.ts +36 -0
- package/dist/types/components/lib/sections/HeroShowcaseSplit.d.ts +25 -0
- package/dist/types/components/lib/sections/HeroSplit.d.ts +8 -0
- package/dist/types/components/lib/sections/HeroTerminal.d.ts +35 -0
- package/dist/types/components/lib/sections/HeroWaitlist.d.ts +30 -0
- package/dist/types/components/lib/sections/HowItWorksSteps.d.ts +32 -0
- package/dist/types/components/lib/sections/IntegrationsGrid.d.ts +28 -0
- package/dist/types/components/lib/sections/LayoutShowcase.d.ts +8 -0
- package/dist/types/components/lib/sections/LogoCloudSection.d.ts +16 -0
- package/dist/types/components/lib/sections/LogoWallGrid.d.ts +28 -0
- package/dist/types/components/lib/sections/NavigationShowcase.d.ts +8 -0
- package/dist/types/components/lib/sections/OverlaysShowcase.d.ts +8 -0
- package/dist/types/components/lib/sections/PricingComparisonMatrix.d.ts +16 -0
- package/dist/types/components/lib/sections/PricingSinglePlan.d.ts +37 -0
- package/dist/types/components/lib/sections/PricingTierCards.d.ts +16 -0
- package/dist/types/components/lib/sections/PricingToggleCards.d.ts +36 -0
- package/dist/types/components/lib/sections/ShopCategoryHero.d.ts +41 -0
- package/dist/types/components/lib/sections/ShopCollectionMosaic.d.ts +37 -0
- package/dist/types/components/lib/sections/ShopFooterWordmark.d.ts +38 -0
- package/dist/types/components/lib/sections/ShopHeaderEditorial.d.ts +61 -0
- package/dist/types/components/lib/sections/ShopHeroEditorial.d.ts +45 -0
- package/dist/types/components/lib/sections/ShopLookbook.d.ts +47 -0
- package/dist/types/components/lib/sections/ShopNewsletterEditorial.d.ts +33 -0
- package/dist/types/components/lib/sections/ShopProductRail.d.ts +41 -0
- package/dist/types/components/lib/sections/ShopReviewsEditorial.d.ts +34 -0
- package/dist/types/components/lib/sections/ShopValuesMarquee.d.ts +28 -0
- package/dist/types/components/lib/sections/StatsCounterBand.d.ts +30 -0
- package/dist/types/components/lib/sections/StatsDashboardSection.d.ts +31 -0
- package/dist/types/components/lib/sections/StatsMetricShowcase.d.ts +16 -0
- package/dist/types/components/lib/sections/TeamGridSection.d.ts +16 -0
- package/dist/types/components/lib/sections/TestimonialCarousel.d.ts +26 -0
- package/dist/types/components/lib/sections/TestimonialFeatured.d.ts +34 -0
- package/dist/types/components/lib/sections/TestimonialGridSection.d.ts +15 -0
- package/dist/types/components/lib/sections/TestimonialWallGlass.d.ts +16 -0
- package/dist/types/components/lib/sections/TypographyShowcase.d.ts +8 -0
- package/dist/types/components/lib/sections/index.d.ts +60 -0
- package/dist/types/components/lib/templates/ecommerce/StoreCategoryPage.d.ts +28 -0
- package/dist/types/components/lib/templates/ecommerce/StoreCheckoutPage.d.ts +25 -0
- package/dist/types/components/lib/templates/ecommerce/StoreHomePage.d.ts +25 -0
- package/dist/types/components/lib/templates/ecommerce/StoreLayout.d.ts +41 -0
- package/dist/types/components/lib/templates/ecommerce/StoreProductPage.d.ts +28 -0
- package/dist/types/components/lib/templates/ecommerce/data.d.ts +49 -0
- package/dist/types/components/lib/templates/ecommerce/index.d.ts +7 -0
- package/dist/types/components/lib/templates/ecommerce-editorial/EditorialBagPage.d.ts +25 -0
- package/dist/types/components/lib/templates/ecommerce-editorial/EditorialCheckoutPage.d.ts +25 -0
- package/dist/types/components/lib/templates/ecommerce-editorial/EditorialHomePage.d.ts +25 -0
- package/dist/types/components/lib/templates/ecommerce-editorial/EditorialLayout.d.ts +36 -0
- package/dist/types/components/lib/templates/ecommerce-editorial/EditorialProductPage.d.ts +29 -0
- package/dist/types/components/lib/templates/ecommerce-editorial/EditorialShopPage.d.ts +28 -0
- package/dist/types/components/lib/templates/ecommerce-editorial/data.d.ts +50 -0
- package/dist/types/components/lib/templates/ecommerce-editorial/index.d.ts +8 -0
- package/dist/types/components/lib/templates/saas-hotel/AppLayout.d.ts +30 -0
- package/dist/types/components/lib/templates/saas-hotel/DashboardPage.d.ts +20 -0
- package/dist/types/components/lib/templates/saas-hotel/GuestsPage.d.ts +20 -0
- package/dist/types/components/lib/templates/saas-hotel/LandingPage.d.ts +24 -0
- package/dist/types/components/lib/templates/saas-hotel/ReportsPage.d.ts +20 -0
- package/dist/types/components/lib/templates/saas-hotel/ReservationsPage.d.ts +20 -0
- package/dist/types/components/lib/templates/saas-hotel/RoomsPage.d.ts +20 -0
- package/dist/types/components/lib/templates/saas-hotel/SettingsPage.d.ts +21 -0
- package/dist/types/components/lib/templates/saas-hotel/SignInPage.d.ts +23 -0
- package/dist/types/components/lib/templates/saas-hotel/data.d.ts +224 -0
- package/dist/types/components/lib/templates/saas-hotel/index.d.ts +11 -0
- package/dist/types/components/lib/typography/AnimatedCounterText.d.ts +19 -0
- package/dist/types/components/lib/typography/AnimatedUnderlineLink.d.ts +9 -0
- package/dist/types/components/lib/typography/BackgroundClipMask.d.ts +8 -0
- package/dist/types/components/lib/typography/CodeInlineGlass.d.ts +8 -0
- package/dist/types/components/lib/typography/CurvedPathHeading.d.ts +15 -0
- package/dist/types/components/lib/typography/CyberpunkGlitchText.d.ts +7 -0
- package/dist/types/components/lib/typography/DropCapParagraph.d.ts +8 -0
- package/dist/types/components/lib/typography/FadedVerticalText.d.ts +8 -0
- package/dist/types/components/lib/typography/FloatingTextLabel.d.ts +8 -0
- package/dist/types/components/lib/typography/GlassBlockQuote.d.ts +8 -0
- package/dist/types/components/lib/typography/GlassTextReveal.d.ts +8 -0
- package/dist/types/components/lib/typography/GradientHeading.d.ts +11 -0
- package/dist/types/components/lib/typography/GradientTextMarquee.d.ts +15 -0
- package/dist/types/components/lib/typography/GradientUnderlineLink.d.ts +8 -0
- package/dist/types/components/lib/typography/HackerDecodeText.d.ts +15 -0
- package/dist/types/components/lib/typography/KbdIndicator.d.ts +8 -0
- package/dist/types/components/lib/typography/LetterSpacingWide.d.ts +8 -0
- package/dist/types/components/lib/typography/MinimalListMarkers.d.ts +8 -0
- package/dist/types/components/lib/typography/MonospaceStatLine.d.ts +8 -0
- package/dist/types/components/lib/typography/NeonTextHighlight.d.ts +8 -0
- package/dist/types/components/lib/typography/ShadowRevealText.d.ts +8 -0
- package/dist/types/components/lib/typography/StrokeHeadingOutline.d.ts +8 -0
- package/dist/types/components/lib/typography/Text3DLayer.d.ts +8 -0
- package/dist/types/components/lib/typography/TypewriterText.d.ts +8 -0
- package/dist/types/components/lib/typography/index.d.ts +24 -0
- package/dist/types/components/three.d.ts +1 -0
- package/dist/typography.js +28 -0
- package/package.json +237 -4
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { Product } from './types';
|
|
2
|
+
import './ProductGrid.css';
|
|
3
|
+
/**
|
|
4
|
+
* ProductGrid — Responsive grid of StoreProductCard tiles with an empty state.
|
|
5
|
+
* Works on its own or as the target of FilterSidebar / ProductToolbar (same `id`).
|
|
6
|
+
*
|
|
7
|
+
* @param {Product[]} products - Products to render.
|
|
8
|
+
* @param {string} id - Grid id; FilterSidebar and ProductToolbar point at it. Default 'product-grid'.
|
|
9
|
+
* @param {string} productBase - Product URL prefix; links become `${productBase}${slug}/`. Default '#'.
|
|
10
|
+
* @param {Record<string, string>} categoryNames - Category id → label for the card eyebrow.
|
|
11
|
+
* @param {number} columns - Desktop columns (2–5). Default 4.
|
|
12
|
+
* @param {string} cardVariant - StoreProductCard variant (glass|minimal|bordered). Default 'glass'.
|
|
13
|
+
* @param {string} cardSize - StoreProductCard size (sm|md|lg). Default 'md'.
|
|
14
|
+
* @param {string} currency - ISO currency. Default 'USD'.
|
|
15
|
+
* @param {string} locale - Number format locale. Default 'en-US'.
|
|
16
|
+
* @param {string} cartKey - Cart storage key. Default 'ack-cart'.
|
|
17
|
+
* @param {boolean} openCart - Open the drawer after adding (false = toast). Default true.
|
|
18
|
+
* @param {string} emptyTitle - Empty state heading. Default 'No products match'.
|
|
19
|
+
* @param {string} emptyText - Empty state copy.
|
|
20
|
+
* @param {string} className - Extra class.
|
|
21
|
+
*
|
|
22
|
+
* Accessibility: cards keep their own headings; the empty state is a polite status message.
|
|
23
|
+
*/
|
|
24
|
+
export interface ProductGridProps {
|
|
25
|
+
products?: Product[];
|
|
26
|
+
id?: string;
|
|
27
|
+
productBase?: string;
|
|
28
|
+
categoryNames?: Record<string, string>;
|
|
29
|
+
columns?: number;
|
|
30
|
+
cardVariant?: 'glass' | 'minimal' | 'bordered';
|
|
31
|
+
cardSize?: 'sm' | 'md' | 'lg';
|
|
32
|
+
currency?: string;
|
|
33
|
+
locale?: string;
|
|
34
|
+
cartKey?: string;
|
|
35
|
+
openCart?: boolean;
|
|
36
|
+
emptyTitle?: string;
|
|
37
|
+
emptyText?: string;
|
|
38
|
+
className?: string;
|
|
39
|
+
}
|
|
40
|
+
export declare function ProductGrid({ products, id, productBase, categoryNames, columns, cardVariant, cardSize, currency, locale, cartKey, openCart, emptyTitle, emptyText, className, }: ProductGridProps): import("react").JSX.Element;
|
|
41
|
+
export default ProductGrid;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
import './ProductMedia.css';
|
|
3
|
+
/**
|
|
4
|
+
* ProductMedia — Product visual: a real photo, or a generated backdrop with a
|
|
5
|
+
* line-art illustration so demo catalogs look finished without external images.
|
|
6
|
+
*
|
|
7
|
+
* @param {string} image - Product photo URL. When set, replaces the illustration.
|
|
8
|
+
* @param {string} alt - Alternative text. Required for photos; illustrations are decorative.
|
|
9
|
+
* @param {string} icon - Built-in illustration (headphones|watch|sneaker|backpack|camera|lamp|keyboard|sunglasses|bottle|speaker|jacket|mug|plant|shirt|bag|phone).
|
|
10
|
+
* @param {number} hue - 0–360 hue of the generated backdrop. Default 40 (gold).
|
|
11
|
+
* @param {string} ratio - CSS aspect-ratio. Default '1 / 1'.
|
|
12
|
+
* @param {string} size - Illustration scale (sm|md|lg). Default 'md'.
|
|
13
|
+
* @param {string} variant - Backdrop style (glow|soft|flat). Default 'glow'.
|
|
14
|
+
* @param {string} className - Extra class.
|
|
15
|
+
*
|
|
16
|
+
* Accessibility: illustrations are aria-hidden; photos need `alt`.
|
|
17
|
+
*/
|
|
18
|
+
export interface ProductMediaProps {
|
|
19
|
+
image?: string;
|
|
20
|
+
alt?: string;
|
|
21
|
+
icon?: string;
|
|
22
|
+
hue?: number;
|
|
23
|
+
ratio?: string;
|
|
24
|
+
size?: 'sm' | 'md' | 'lg';
|
|
25
|
+
variant?: 'glow' | 'soft' | 'flat';
|
|
26
|
+
className?: string;
|
|
27
|
+
children?: ReactNode;
|
|
28
|
+
}
|
|
29
|
+
export declare function ProductMedia({ image, alt, icon, hue, ratio, size, variant, className, children }: ProductMediaProps): import("react").JSX.Element;
|
|
30
|
+
export default ProductMedia;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import './ProductRating.css';
|
|
2
|
+
/**
|
|
3
|
+
* ProductRating — Read-only star rating with value and review count.
|
|
4
|
+
*
|
|
5
|
+
* @param {number} value - Average rating, 0–5. Default 4.6.
|
|
6
|
+
* @param {number} count - Number of reviews (optional).
|
|
7
|
+
* @param {string} size - Visual size (sm|md|lg). Default 'sm'.
|
|
8
|
+
* @param {boolean} showValue - Print the numeric value. Default true.
|
|
9
|
+
* @param {string} label - Accessible label template; `{value}` and `{count}` are replaced.
|
|
10
|
+
* @param {string} className - Extra class.
|
|
11
|
+
*
|
|
12
|
+
* Accessibility: exposed as one `role="img"` with a full text label; stars are decorative.
|
|
13
|
+
*/
|
|
14
|
+
export interface ProductRatingProps {
|
|
15
|
+
value?: number;
|
|
16
|
+
count?: number;
|
|
17
|
+
size?: 'sm' | 'md' | 'lg';
|
|
18
|
+
showValue?: boolean;
|
|
19
|
+
label?: string;
|
|
20
|
+
className?: string;
|
|
21
|
+
}
|
|
22
|
+
export declare function ProductRating({ value, count, size, showValue, label, className, }: ProductRatingProps): import("react").JSX.Element;
|
|
23
|
+
export default ProductRating;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import './ProductToolbar.css';
|
|
2
|
+
/**
|
|
3
|
+
* ProductToolbar — Catalog heading bar: title, live result count and a sort select
|
|
4
|
+
* (built on ModernSelect) that drives FilterSidebar's sorting.
|
|
5
|
+
*
|
|
6
|
+
* @param {string} title - Page heading. Default 'All products'.
|
|
7
|
+
* @param {string} description - Optional supporting copy.
|
|
8
|
+
* @param {number} total - Initial product count. Default 0.
|
|
9
|
+
* @param {string} target - ProductGrid id. Default 'product-grid'.
|
|
10
|
+
* @param {string} filtersId - FilterSidebar form id (sort select becomes `${filtersId}-sort`). Default 'catalog-filters'.
|
|
11
|
+
* @param {Array<{label: string, value: string}>} sortOptions - Sort choices (values: featured|price-asc|price-desc|rating|name).
|
|
12
|
+
* @param {string} countLabel - Text after the count. Default 'products'.
|
|
13
|
+
* @param {string} headingLevel - Title element (h1|h2). Default 'h1'.
|
|
14
|
+
* @param {string} variant - Layout (split|stacked). Default 'split'.
|
|
15
|
+
* @param {string} className - Extra class.
|
|
16
|
+
*
|
|
17
|
+
* Accessibility: the count lives in a polite live region so filter changes are announced.
|
|
18
|
+
*/
|
|
19
|
+
export interface ProductToolbarProps {
|
|
20
|
+
title?: string;
|
|
21
|
+
description?: string;
|
|
22
|
+
total?: number;
|
|
23
|
+
target?: string;
|
|
24
|
+
filtersId?: string;
|
|
25
|
+
sortOptions?: Array<{
|
|
26
|
+
label: string;
|
|
27
|
+
value: string;
|
|
28
|
+
}>;
|
|
29
|
+
countLabel?: string;
|
|
30
|
+
headingLevel?: 'h1' | 'h2';
|
|
31
|
+
variant?: 'split' | 'stacked';
|
|
32
|
+
className?: string;
|
|
33
|
+
}
|
|
34
|
+
export declare function ProductToolbar({ title, description, total, target, filtersId, sortOptions, countLabel, headingLevel, variant, className, }: ProductToolbarProps): import("react").JSX.Element;
|
|
35
|
+
export default ProductToolbar;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import './PromoBar.css';
|
|
2
|
+
/**
|
|
3
|
+
* PromoBar — Slim announcement bar for shipping offers, sales or codes,
|
|
4
|
+
* with rotating messages and an optional dismiss button.
|
|
5
|
+
*
|
|
6
|
+
* @param {string[]} messages - One or more messages; several rotate every `interval` ms.
|
|
7
|
+
* @param {string} href - Optional link for the whole bar.
|
|
8
|
+
* @param {number} interval - Rotation interval in ms. Default 4500.
|
|
9
|
+
* @param {boolean} dismissible - Show a close button (remembered per session). Default true.
|
|
10
|
+
* @param {string} variant - Style (gold|glass|dark). Default 'gold'.
|
|
11
|
+
* @param {string} size - Height (sm|md). Default 'sm'.
|
|
12
|
+
* @param {string} storageKey - sessionStorage key for the dismissed state. Default 'ack-promo-closed'.
|
|
13
|
+
* @param {string} className - Extra class.
|
|
14
|
+
*
|
|
15
|
+
* Accessibility: rotation pauses on hover/focus and is disabled with reduced motion;
|
|
16
|
+
* messages live in a polite live region only after the user interacts, never on load.
|
|
17
|
+
*/
|
|
18
|
+
export interface PromoBarProps {
|
|
19
|
+
messages?: string[];
|
|
20
|
+
href?: string;
|
|
21
|
+
interval?: number;
|
|
22
|
+
dismissible?: boolean;
|
|
23
|
+
variant?: 'gold' | 'glass' | 'dark';
|
|
24
|
+
size?: 'sm' | 'md';
|
|
25
|
+
storageKey?: string;
|
|
26
|
+
className?: string;
|
|
27
|
+
}
|
|
28
|
+
export declare function PromoBar({ messages, href, interval, dismissible, variant, size, storageKey, className, }: PromoBarProps): import("react").JSX.Element;
|
|
29
|
+
export default PromoBar;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import './StockIndicator.css';
|
|
2
|
+
/**
|
|
3
|
+
* StockIndicator — Urgency notice for product pages: low-stock bar ("Only 3 left") and a
|
|
4
|
+
* live "N people are viewing this" counter that drifts gently.
|
|
5
|
+
*
|
|
6
|
+
* @param {number} stock - Units left. Default 3.
|
|
7
|
+
* @param {number} threshold - At or below this value the low-stock style is used. Default 5.
|
|
8
|
+
* @param {number} capacity - Value that fills the bar completely. Default 20.
|
|
9
|
+
* @param {number} viewers - Starting number of viewers (0 hides the line). Default 14.
|
|
10
|
+
* @param {boolean} live - Let the viewers count move every few seconds. Default true.
|
|
11
|
+
* @param {string} variant - Style (card|inline). Default 'card'.
|
|
12
|
+
* @param {string} size - Density (sm|md). Default 'md'.
|
|
13
|
+
* @param {string} className - Extra class.
|
|
14
|
+
*
|
|
15
|
+
* Accessibility: stock text is real text (not colour alone); the moving viewers number is not
|
|
16
|
+
* announced (aria-live off) to avoid noise; animation stops with prefers-reduced-motion.
|
|
17
|
+
*/
|
|
18
|
+
export interface StockIndicatorProps {
|
|
19
|
+
stock?: number;
|
|
20
|
+
threshold?: number;
|
|
21
|
+
capacity?: number;
|
|
22
|
+
viewers?: number;
|
|
23
|
+
live?: boolean;
|
|
24
|
+
variant?: 'card' | 'inline';
|
|
25
|
+
size?: 'sm' | 'md';
|
|
26
|
+
className?: string;
|
|
27
|
+
}
|
|
28
|
+
export declare function StockIndicator({ stock, threshold, capacity, viewers, live, variant, size, className, }: StockIndicatorProps): import("react").JSX.Element;
|
|
29
|
+
export default StockIndicator;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import './StoreHeader.css';
|
|
2
|
+
interface ChildLink {
|
|
3
|
+
label: string;
|
|
4
|
+
href: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
}
|
|
7
|
+
interface NavLink {
|
|
8
|
+
label: string;
|
|
9
|
+
href: string;
|
|
10
|
+
children?: ChildLink[];
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* StoreHeader — Shop navigation bar: brand, menu with category dropdowns, search,
|
|
14
|
+
* account link and a cart button whose badge follows the cart store live.
|
|
15
|
+
*
|
|
16
|
+
* @param {string} brand - Store name. Default 'Nova Store'.
|
|
17
|
+
* @param {string} brandHref - Brand link. Default '/'.
|
|
18
|
+
* @param {Array} links - Menu items `{ label, href, children?: { label, href, description? }[] }`.
|
|
19
|
+
* @param {string} searchAction - Search form action URL. Default '#'.
|
|
20
|
+
* @param {string} searchPlaceholder - Search placeholder. Default 'Search products'.
|
|
21
|
+
* @param {string} accountHref - Account link (hidden when empty). Default '#'.
|
|
22
|
+
* @param {string} cartKey - Cart storage key. Default 'ack-cart'.
|
|
23
|
+
* @param {string} cartLabel - Accessible label for the cart button. Default 'Cart'.
|
|
24
|
+
* @param {string} currentHref - Marks the matching menu link with aria-current.
|
|
25
|
+
* @param {boolean} sticky - Stick to the top on scroll. Default true.
|
|
26
|
+
* @param {string} variant - Style (glass|solid|transparent). Default 'glass'.
|
|
27
|
+
* @param {string} size - Height (sm|md|lg). Default 'md'.
|
|
28
|
+
* @param {boolean} themeToggle - Show a light/dark toggle (sets html[data-theme], remembered in localStorage). Default true.
|
|
29
|
+
* @param {string} id - Base id for inner elements (unique per page). Default 'store-header'.
|
|
30
|
+
* @param {string} className - Extra class.
|
|
31
|
+
*
|
|
32
|
+
* Accessibility: dropdowns are disclosure buttons (aria-expanded) closed with Escape or outside click;
|
|
33
|
+
* the mobile menu is a disclosure too; the cart badge count is part of the button label.
|
|
34
|
+
* Clicking the cart button dispatches `ack:cart-open`, which CartDrawer listens to.
|
|
35
|
+
*/
|
|
36
|
+
export interface StoreHeaderProps {
|
|
37
|
+
brand?: string;
|
|
38
|
+
brandHref?: string;
|
|
39
|
+
links?: NavLink[];
|
|
40
|
+
searchAction?: string;
|
|
41
|
+
searchPlaceholder?: string;
|
|
42
|
+
accountHref?: string;
|
|
43
|
+
cartKey?: string;
|
|
44
|
+
cartLabel?: string;
|
|
45
|
+
currentHref?: string;
|
|
46
|
+
sticky?: boolean;
|
|
47
|
+
variant?: 'glass' | 'solid' | 'transparent';
|
|
48
|
+
size?: 'sm' | 'md' | 'lg';
|
|
49
|
+
themeToggle?: boolean;
|
|
50
|
+
id?: string;
|
|
51
|
+
className?: string;
|
|
52
|
+
}
|
|
53
|
+
export declare function StoreHeader({ brand, brandHref, links, searchAction, searchPlaceholder, accountHref, cartKey, cartLabel, currentHref, sticky, variant, size, themeToggle, id, className, }: StoreHeaderProps): import("react").JSX.Element;
|
|
54
|
+
export default StoreHeader;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { Product } from './types';
|
|
2
|
+
import './StoreHero.css';
|
|
3
|
+
interface Cta {
|
|
4
|
+
label: string;
|
|
5
|
+
href: string;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* StoreHero — Shop landing hero: headline, CTAs, quick stats and a featured product
|
|
9
|
+
* stage with floating price and rating chips.
|
|
10
|
+
*
|
|
11
|
+
* @param {string} eyebrow - Small label above the title. Default 'New season · 2026'.
|
|
12
|
+
* @param {string} title - Headline. Default 'Gear that feels'.
|
|
13
|
+
* @param {string} highlight - Gradient part of the headline. Default 'made for you'.
|
|
14
|
+
* @param {string} subtitle - Supporting copy.
|
|
15
|
+
* @param {{label: string, href: string}} primary - Main CTA.
|
|
16
|
+
* @param {{label: string, href: string}} secondary - Secondary CTA (optional).
|
|
17
|
+
* @param {Array<{value: string, label: string}>} stats - Proof points below the CTAs.
|
|
18
|
+
* @param {Product} product - Featured product shown on the stage.
|
|
19
|
+
* @param {string} productHref - Featured product link.
|
|
20
|
+
* @param {string} currency - ISO currency. Default 'USD'.
|
|
21
|
+
* @param {string} locale - Number format locale. Default 'en-US'.
|
|
22
|
+
* @param {string} variant - Layout (split|centered). Default 'split'.
|
|
23
|
+
* @param {string} size - Vertical rhythm (sm|md|lg). Default 'md'.
|
|
24
|
+
* @param {string} className - Extra class.
|
|
25
|
+
*
|
|
26
|
+
* Accessibility: one h1; decorative stage art is aria-hidden; the featured product is a real link.
|
|
27
|
+
*/
|
|
28
|
+
export interface StoreHeroProps {
|
|
29
|
+
eyebrow?: string;
|
|
30
|
+
title?: string;
|
|
31
|
+
highlight?: string;
|
|
32
|
+
subtitle?: string;
|
|
33
|
+
primary?: Cta;
|
|
34
|
+
secondary?: Cta;
|
|
35
|
+
stats?: Array<{
|
|
36
|
+
value: string;
|
|
37
|
+
label: string;
|
|
38
|
+
}>;
|
|
39
|
+
product?: Product;
|
|
40
|
+
productHref?: string;
|
|
41
|
+
currency?: string;
|
|
42
|
+
locale?: string;
|
|
43
|
+
variant?: 'split' | 'centered';
|
|
44
|
+
size?: 'sm' | 'md' | 'lg';
|
|
45
|
+
className?: string;
|
|
46
|
+
}
|
|
47
|
+
export declare function StoreHero({ eyebrow, title, highlight, subtitle, primary, secondary, stats, product, productHref, currency, locale, variant, size, className, }: StoreHeroProps): import("react").JSX.Element;
|
|
48
|
+
export default StoreHero;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { Product } from './types';
|
|
2
|
+
import './StoreProductCard.css';
|
|
3
|
+
/**
|
|
4
|
+
* StoreProductCard — Shop product tile with media, badge, rating, colour swatches,
|
|
5
|
+
* price (with compare-at), wishlist toggle and an add-to-cart button wired to the cart store.
|
|
6
|
+
*
|
|
7
|
+
* @param {Product} product - Product data (see ecommerce/types.ts). A demo product is used by default.
|
|
8
|
+
* @param {string} href - Product page URL. Default '#'.
|
|
9
|
+
* @param {string} categoryLabel - Small label above the title (e.g. category name).
|
|
10
|
+
* @param {string} currency - ISO currency. Default 'USD'.
|
|
11
|
+
* @param {string} locale - Number format locale. Default 'en-US'.
|
|
12
|
+
* @param {string} ctaLabel - Add-to-cart label. Default 'Add to cart'.
|
|
13
|
+
* @param {string} addedLabel - Label shown briefly after adding. Default 'Added'.
|
|
14
|
+
* @param {string} cartKey - Cart storage key (several stores on one domain). Default 'ack-cart'.
|
|
15
|
+
* @param {boolean} openCart - Open the CartDrawer after adding; false fires a CartToast instead. Default true.
|
|
16
|
+
* @param {string} variant - Visual style (glass|minimal|bordered). Default 'glass'.
|
|
17
|
+
* @param {string} size - Card density (sm|md|lg). Default 'md'.
|
|
18
|
+
* @param {string} headingLevel - Title element (h2|h3|h4). Default 'h3'.
|
|
19
|
+
* @param {string} className - Extra class.
|
|
20
|
+
*
|
|
21
|
+
* Accessibility: the title link covers the whole card (stretched link) so there are no
|
|
22
|
+
* nested interactive elements; wishlist uses aria-pressed; out-of-stock disables the button.
|
|
23
|
+
*/
|
|
24
|
+
export interface StoreProductCardProps {
|
|
25
|
+
product?: Product;
|
|
26
|
+
href?: string;
|
|
27
|
+
categoryLabel?: string;
|
|
28
|
+
currency?: string;
|
|
29
|
+
locale?: string;
|
|
30
|
+
ctaLabel?: string;
|
|
31
|
+
addedLabel?: string;
|
|
32
|
+
cartKey?: string;
|
|
33
|
+
openCart?: boolean;
|
|
34
|
+
variant?: 'glass' | 'minimal' | 'bordered';
|
|
35
|
+
size?: 'sm' | 'md' | 'lg';
|
|
36
|
+
headingLevel?: 'h2' | 'h3' | 'h4';
|
|
37
|
+
className?: string;
|
|
38
|
+
}
|
|
39
|
+
export declare function StoreProductCard({ product, href, categoryLabel, currency, locale, ctaLabel, addedLabel, cartKey, openCart, variant, size, headingLevel, className, }: StoreProductCardProps): import("react").JSX.Element;
|
|
40
|
+
export default StoreProductCard;
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import './TrustBadges.css';
|
|
2
|
+
interface Item {
|
|
3
|
+
icon: 'truck' | 'return' | 'lock' | 'chat' | 'gift' | 'leaf';
|
|
4
|
+
title: string;
|
|
5
|
+
text?: string;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* TrustBadges — Row of store guarantees (shipping, returns, secure payment, support).
|
|
9
|
+
*
|
|
10
|
+
* @param {Array<{icon: string, title: string, text?: string}>} items - Badges. Icons: truck|return|lock|chat|gift|leaf.
|
|
11
|
+
* @param {string} variant - Style (cards|inline|divided). Default 'cards'.
|
|
12
|
+
* @param {string} size - Density (sm|md|lg). Default 'md'.
|
|
13
|
+
* @param {string} className - Extra class.
|
|
14
|
+
*
|
|
15
|
+
* Accessibility: plain list; icons are decorative.
|
|
16
|
+
*/
|
|
17
|
+
export interface TrustBadgesProps {
|
|
18
|
+
items?: Item[];
|
|
19
|
+
variant?: 'cards' | 'inline' | 'divided';
|
|
20
|
+
size?: 'sm' | 'md' | 'lg';
|
|
21
|
+
className?: string;
|
|
22
|
+
}
|
|
23
|
+
export declare function TrustBadges({ items, variant, size, className, }: TrustBadgesProps): import("react").JSX.Element;
|
|
24
|
+
export default TrustBadges;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import './VariantPicker.css';
|
|
2
|
+
interface Option {
|
|
3
|
+
label: string;
|
|
4
|
+
value?: string;
|
|
5
|
+
hex?: string;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* VariantPicker — Colour swatches or size pills as an accessible radio group.
|
|
10
|
+
* Can keep an add-to-cart button's `data-variant` in sync with the selection.
|
|
11
|
+
*
|
|
12
|
+
* @param {string} label - Group legend. Default 'Colour'.
|
|
13
|
+
* @param {string} name - Radio name. Default 'variant'.
|
|
14
|
+
* @param {string} type - Picker style (swatch|pill). Default 'swatch'.
|
|
15
|
+
* @param {Array<{label: string, value?: string, hex?: string, disabled?: boolean}>} options - Choices.
|
|
16
|
+
* @param {number} selected - Index of the pre-selected option. Default 0.
|
|
17
|
+
* @param {string} target - id of an add-to-cart button whose `data-variant` follows the choice.
|
|
18
|
+
* @param {string} size - Control size (sm|md|lg). Default 'md'.
|
|
19
|
+
* @param {string} className - Extra class.
|
|
20
|
+
*
|
|
21
|
+
* Theming: --vp-active-bg, --vp-active-color, --vp-active-border, --vp-ring, --vp-radius.
|
|
22
|
+
*
|
|
23
|
+
* Accessibility: native radios (arrow keys work), visible focus ring, the chosen value is
|
|
24
|
+
* printed next to the legend; disabled options are announced as unavailable.
|
|
25
|
+
*/
|
|
26
|
+
export interface VariantPickerProps {
|
|
27
|
+
label?: string;
|
|
28
|
+
name?: string;
|
|
29
|
+
type?: 'swatch' | 'pill';
|
|
30
|
+
options?: Option[];
|
|
31
|
+
selected?: number;
|
|
32
|
+
target?: string;
|
|
33
|
+
size?: 'sm' | 'md' | 'lg';
|
|
34
|
+
className?: string;
|
|
35
|
+
}
|
|
36
|
+
export declare function VariantPicker({ label, name, type, options, selected, target, size, className, }: VariantPickerProps): import("react").JSX.Element;
|
|
37
|
+
export default VariantPicker;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { CartItem, MoneyFormat } from './types';
|
|
2
|
+
export declare const CART_EVENT = "ack:cart";
|
|
3
|
+
/** Fired after an add-to-cart button adds an item: `{ key, item, openCart }`. */
|
|
4
|
+
export declare const ADDED_EVENT = "ack:cart-added";
|
|
5
|
+
/** Fire this to show any notice in CartToast: `{ title, text?, tone?: 'info'|'success'|'warning'|'danger' }`. */
|
|
6
|
+
export declare const NOTIFY_EVENT = "ack:notify";
|
|
7
|
+
export declare function formatMoney(value: number, { currency, locale }?: MoneyFormat): string;
|
|
8
|
+
/** Line id: product id + variant, so "Tee / M" and "Tee / L" are separate lines. */
|
|
9
|
+
export declare function lineId(id: string, variant?: string): string;
|
|
10
|
+
export declare function createCart(storageKey?: string): {
|
|
11
|
+
key: string;
|
|
12
|
+
items: () => CartItem[];
|
|
13
|
+
count: () => number;
|
|
14
|
+
subtotal: () => number;
|
|
15
|
+
add(item: Omit<CartItem, "qty"> & {
|
|
16
|
+
qty?: number;
|
|
17
|
+
}): void;
|
|
18
|
+
setQty(id: string, qty: number): void;
|
|
19
|
+
remove(id: string): void;
|
|
20
|
+
clear(): void;
|
|
21
|
+
/** Fills an empty cart once (demo stores). Never overwrites a real cart. */
|
|
22
|
+
seed(items: CartItem[]): void;
|
|
23
|
+
subscribe(fn: (items: CartItem[]) => void): () => void;
|
|
24
|
+
};
|
|
25
|
+
export type Cart = ReturnType<typeof createCart>;
|
|
26
|
+
/**
|
|
27
|
+
* Wires every `[data-add-to-cart]` button inside `root` to the cart.
|
|
28
|
+
* The attribute holds the item JSON; an optional `data-cart-key` picks the store.
|
|
29
|
+
* Variant pickers can update `data-variant` on the button before the click.
|
|
30
|
+
*/
|
|
31
|
+
export declare function bindAddToCart(root?: ParentNode): void;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export interface CatalogState {
|
|
2
|
+
categories: string[];
|
|
3
|
+
colors: string[];
|
|
4
|
+
maxPrice: number;
|
|
5
|
+
minRating: number;
|
|
6
|
+
inStockOnly: boolean;
|
|
7
|
+
sort: 'featured' | 'price-asc' | 'price-desc' | 'rating' | 'name' | string;
|
|
8
|
+
}
|
|
9
|
+
/** Filters and re-orders the cards inside `grid`. Returns the number of visible cards. */
|
|
10
|
+
export declare function applyCatalogFilter(grid: HTMLElement, state: CatalogState): number;
|
|
11
|
+
/** Reads/writes `?category=` and `?sort=` so filtered views can be shared. */
|
|
12
|
+
export declare function syncCatalogUrl(state: Pick<CatalogState, 'categories' | 'sort'>): void;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
export { default as ProductMedia } from './ProductMedia';
|
|
2
|
+
export { default as ProductRating } from './ProductRating';
|
|
3
|
+
export { default as StoreProductCard } from './StoreProductCard';
|
|
4
|
+
export { default as ProductGrid } from './ProductGrid';
|
|
5
|
+
export { default as PromoBar } from './PromoBar';
|
|
6
|
+
export { default as StoreHeader } from './StoreHeader';
|
|
7
|
+
export { default as CartDrawer } from './CartDrawer';
|
|
8
|
+
export { default as StoreHero } from './StoreHero';
|
|
9
|
+
export { default as CategoryTiles } from './CategoryTiles';
|
|
10
|
+
export { default as TrustBadges } from './TrustBadges';
|
|
11
|
+
export { default as FilterSidebar } from './FilterSidebar';
|
|
12
|
+
export { default as ProductToolbar } from './ProductToolbar';
|
|
13
|
+
export { default as ProductGallery } from './ProductGallery';
|
|
14
|
+
export { default as VariantPicker } from './VariantPicker';
|
|
15
|
+
export { default as ProductBuyBox } from './ProductBuyBox';
|
|
16
|
+
export { default as OrderSummary } from './OrderSummary';
|
|
17
|
+
export { default as CheckoutForm } from './CheckoutForm';
|
|
18
|
+
export { default as CartToast } from './CartToast';
|
|
19
|
+
export { default as LiveActivityToast } from './LiveActivityToast';
|
|
20
|
+
export { default as CountdownBanner } from './CountdownBanner';
|
|
21
|
+
export { default as StockIndicator } from './StockIndicator';
|
|
22
|
+
export { default as ProductCardMinimal } from './ProductCardMinimal';
|
|
23
|
+
export { default as FilterBar } from './FilterBar';
|
|
24
|
+
export { default as CartPageList } from './CartPageList';
|
|
25
|
+
export { createCart, bindAddToCart, formatMoney, lineId, CART_EVENT, ADDED_EVENT, NOTIFY_EVENT } from './cart-store';
|
|
26
|
+
export { applyCatalogFilter, syncCatalogUrl } from './catalog-filter';
|
|
27
|
+
export type { CatalogState } from './catalog-filter';
|
|
28
|
+
export { productIcons, productIcon } from './product-icons';
|
|
29
|
+
export type { ProductIcon } from './product-icons';
|
|
30
|
+
export type { Product, ProductColor, StoreCategory, CartItem, ShippingRate, MoneyFormat } from './types';
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export declare const productIcons: {
|
|
2
|
+
readonly headphones: "<path d=\"M12 38v-6a20 20 0 0 1 40 0v6\"/><rect x=\"8\" y=\"36\" width=\"10\" height=\"16\" rx=\"4\"/><rect x=\"46\" y=\"36\" width=\"10\" height=\"16\" rx=\"4\"/><path d=\"M18 44h-2M46 44h2\"/>";
|
|
3
|
+
readonly watch: "<rect x=\"18\" y=\"18\" width=\"28\" height=\"28\" rx=\"9\"/><path d=\"M24 18l2-10h12l2 10M24 46l2 10h12l2-10\"/><path d=\"M32 25v7l5 4\"/><path d=\"M46 30h3\"/>";
|
|
4
|
+
readonly sneaker: "<path d=\"M6 44c0-6 2-14 6-20l8 4c3 2 7 2 10 0l4-3c6 8 14 11 22 12 2 0 3 2 3 4v3H6z\"/><path d=\"M6 47v3h53v-3\"/><path d=\"M22 30l3 4M27 28l3 4M32 26l2 4\"/>";
|
|
5
|
+
readonly backpack: "<rect x=\"14\" y=\"16\" width=\"36\" height=\"42\" rx=\"10\"/><path d=\"M24 16v-4a8 8 0 0 1 16 0v4\"/><rect x=\"21\" y=\"36\" width=\"22\" height=\"13\" rx=\"4\"/><path d=\"M21 42h22\"/>";
|
|
6
|
+
readonly camera: "<rect x=\"6\" y=\"18\" width=\"52\" height=\"34\" rx=\"7\"/><path d=\"M22 18l4-7h12l4 7\"/><circle cx=\"32\" cy=\"35\" r=\"10\"/><circle cx=\"32\" cy=\"35\" r=\"4\"/><path d=\"M48 25h3\"/>";
|
|
7
|
+
readonly lamp: "<path d=\"M20 10h24l8 20H12z\"/><path d=\"M32 30v20\"/><path d=\"M20 56h24\"/><path d=\"M26 50h12\"/>";
|
|
8
|
+
readonly keyboard: "<rect x=\"4\" y=\"20\" width=\"56\" height=\"26\" rx=\"5\"/><path d=\"M11 28h3M19 28h3M27 28h3M35 28h3M43 28h3M51 28h2M13 35h3M21 35h3M29 35h3M37 35h3M45 35h4M18 41h28\"/>";
|
|
9
|
+
readonly sunglasses: "<path d=\"M4 26h56\"/><path d=\"M8 26c0 9 3 14 10 14s10-5 10-14\"/><path d=\"M36 26c0 9 3 14 10 14s10-5 10-14\"/><path d=\"M28 30c2-2 6-2 8 0\"/>";
|
|
10
|
+
readonly bottle: "<path d=\"M26 6h12v8l4 6v34a4 4 0 0 1-4 4H26a4 4 0 0 1-4-4V20l4-6z\"/><path d=\"M22 28h20M22 44h20\"/>";
|
|
11
|
+
readonly speaker: "<rect x=\"16\" y=\"6\" width=\"32\" height=\"52\" rx=\"8\"/><circle cx=\"32\" cy=\"38\" r=\"10\"/><circle cx=\"32\" cy=\"38\" r=\"3\"/><circle cx=\"32\" cy=\"17\" r=\"4\"/>";
|
|
12
|
+
readonly jacket: "<path d=\"M22 8l10 6 10-6 12 8 4 22-8 2v18H14V40l-8-2 4-22z\"/><path d=\"M32 14v42\"/><path d=\"M22 8l-2 12 6 6M42 8l2 12-6 6\"/><path d=\"M38 34h4M38 42h4\"/>";
|
|
13
|
+
readonly mug: "<path d=\"M12 18h32v28a8 8 0 0 1-8 8H20a8 8 0 0 1-8-8z\"/><path d=\"M44 24h4a6 6 0 0 1 0 12h-4\"/><path d=\"M22 8c-2 3 2 4 0 7M30 8c-2 3 2 4 0 7\"/>";
|
|
14
|
+
readonly plant: "<path d=\"M20 40h24l-3 18H23z\"/><path d=\"M32 40V22\"/><path d=\"M32 30c-8 0-12-6-12-14 8 0 12 6 12 14zM32 26c0-8 4-14 12-14 0 8-4 14-12 14z\"/>";
|
|
15
|
+
readonly shirt: "<path d=\"M22 8l-14 8 5 12 7-3v31h24V25l7 3 5-12-14-8c-1 4-5 6-10 6s-9-2-10-6z\"/>";
|
|
16
|
+
readonly bag: "<path d=\"M12 22h40l-4 34H16z\"/><path d=\"M24 22v-6a8 8 0 0 1 16 0v6\"/><path d=\"M24 30v2M40 30v2\"/>";
|
|
17
|
+
readonly phone: "<rect x=\"18\" y=\"4\" width=\"28\" height=\"56\" rx=\"7\"/><path d=\"M28 10h8\"/><circle cx=\"32\" cy=\"52\" r=\"2\"/>";
|
|
18
|
+
};
|
|
19
|
+
export type ProductIcon = keyof typeof productIcons;
|
|
20
|
+
export declare function productIcon(name?: string): string;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import type { ProductIcon } from './product-icons';
|
|
2
|
+
export interface ProductColor {
|
|
3
|
+
name: string;
|
|
4
|
+
hex: string;
|
|
5
|
+
}
|
|
6
|
+
export interface Product {
|
|
7
|
+
/** URL-safe id, also used as cart line id. */
|
|
8
|
+
slug: string;
|
|
9
|
+
name: string;
|
|
10
|
+
/** Price in major units (e.g. 129.9). */
|
|
11
|
+
price: number;
|
|
12
|
+
/** Optional "before" price, shown struck through. */
|
|
13
|
+
compareAt?: number;
|
|
14
|
+
/** Category id (matches `StoreCategory.id`). */
|
|
15
|
+
category: string;
|
|
16
|
+
/** 0–5 average rating. */
|
|
17
|
+
rating?: number;
|
|
18
|
+
reviews?: number;
|
|
19
|
+
/** Short highlight such as "New" or "-20%". */
|
|
20
|
+
badge?: string;
|
|
21
|
+
badgeVariant?: 'default' | 'success' | 'warning' | 'danger' | 'info';
|
|
22
|
+
colors?: ProductColor[];
|
|
23
|
+
sizes?: string[];
|
|
24
|
+
/** Built-in illustration used when no `image` is given. */
|
|
25
|
+
icon?: ProductIcon;
|
|
26
|
+
/** Hue (0–360) of the generated product backdrop. */
|
|
27
|
+
hue?: number;
|
|
28
|
+
/** Real product photo; replaces the illustration. */
|
|
29
|
+
image?: string;
|
|
30
|
+
description?: string;
|
|
31
|
+
inStock?: boolean;
|
|
32
|
+
/** Units left; StockIndicator shows urgency at or below its threshold. */
|
|
33
|
+
stock?: number;
|
|
34
|
+
}
|
|
35
|
+
export interface StoreCategory {
|
|
36
|
+
id: string;
|
|
37
|
+
name: string;
|
|
38
|
+
description?: string;
|
|
39
|
+
icon?: ProductIcon;
|
|
40
|
+
hue?: number;
|
|
41
|
+
}
|
|
42
|
+
export interface CartItem {
|
|
43
|
+
id: string;
|
|
44
|
+
name: string;
|
|
45
|
+
price: number;
|
|
46
|
+
qty: number;
|
|
47
|
+
variant?: string;
|
|
48
|
+
image?: string;
|
|
49
|
+
icon?: ProductIcon;
|
|
50
|
+
hue?: number;
|
|
51
|
+
}
|
|
52
|
+
export interface ShippingRate {
|
|
53
|
+
id: string;
|
|
54
|
+
label: string;
|
|
55
|
+
eta: string;
|
|
56
|
+
price: number;
|
|
57
|
+
}
|
|
58
|
+
export interface MoneyFormat {
|
|
59
|
+
currency?: string;
|
|
60
|
+
locale?: string;
|
|
61
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { HTMLAttributes } from 'react';
|
|
2
|
+
import './AnimatedCheckmark.css';
|
|
3
|
+
/**
|
|
4
|
+
* AnimatedCheckmark — A decorative SVG checkmark with a circular fill and draw animation.
|
|
5
|
+
*
|
|
6
|
+
* @param size - Optional. Size in px. Default 56.
|
|
7
|
+
* @param color - Optional. Fill/stroke color. Default '#7ac142'.
|
|
8
|
+
*/
|
|
9
|
+
export interface AnimatedCheckmarkProps extends HTMLAttributes<HTMLDivElement> {
|
|
10
|
+
size?: number;
|
|
11
|
+
color?: string;
|
|
12
|
+
}
|
|
13
|
+
export declare function AnimatedCheckmark({ size, color, className, style, ...rest }: AnimatedCheckmarkProps): import("react").JSX.Element;
|
|
14
|
+
export default AnimatedCheckmark;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { HTMLAttributes, ReactNode } from 'react';
|
|
2
|
+
import './Badge.css';
|
|
3
|
+
/**
|
|
4
|
+
* Badge — A compact visual indicator for labels, categories, or status tags.
|
|
5
|
+
*
|
|
6
|
+
* @param variant - Optional. 'default' | 'success' | 'warning' | 'danger' | 'info'. Default 'default'.
|
|
7
|
+
* @param dot - Optional. Show a leading status dot. Default false.
|
|
8
|
+
* @param pulse - Optional. Pulse the dot. Default false.
|
|
9
|
+
*/
|
|
10
|
+
export interface BadgeProps extends HTMLAttributes<HTMLSpanElement> {
|
|
11
|
+
variant?: 'default' | 'success' | 'warning' | 'danger' | 'info';
|
|
12
|
+
dot?: boolean;
|
|
13
|
+
pulse?: boolean;
|
|
14
|
+
children?: ReactNode;
|
|
15
|
+
}
|
|
16
|
+
export declare function Badge({ variant, dot, pulse, className, children, ...rest }: BadgeProps): import("react").JSX.Element;
|
|
17
|
+
export default Badge;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { HTMLAttributes } from 'react';
|
|
2
|
+
import './CircleProgress.css';
|
|
3
|
+
/**
|
|
4
|
+
* CircleProgress — A circular chart indicating a percentage of completion.
|
|
5
|
+
*
|
|
6
|
+
* @param percent - Required. 0–100.
|
|
7
|
+
* @param size - Optional. Diameter in px. Default 80.
|
|
8
|
+
* @param color - Optional. Default 'var(--c-primary, #6366f1)'.
|
|
9
|
+
* @param label - Optional. Accessible label. Default 'Progress'.
|
|
10
|
+
*/
|
|
11
|
+
export interface CircleProgressProps extends HTMLAttributes<HTMLDivElement> {
|
|
12
|
+
percent: number;
|
|
13
|
+
size?: number;
|
|
14
|
+
color?: string;
|
|
15
|
+
label?: string;
|
|
16
|
+
}
|
|
17
|
+
export declare function CircleProgress({ percent, size, color, label, className, style, ...rest }: CircleProgressProps): import("react").JSX.Element;
|
|
18
|
+
export default CircleProgress;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { HTMLAttributes } from 'react';
|
|
2
|
+
import './ConfettiFeedback.css';
|
|
3
|
+
/**
|
|
4
|
+
* ConfettiFeedback — A celebration component that triggers a falling confetti animation.
|
|
5
|
+
*
|
|
6
|
+
* @param label - Optional. Default 'Success!'.
|
|
7
|
+
* @param color - Optional. Confetti color. Default 'var(--c-primary, #6366f1)'.
|
|
8
|
+
* @param active - Optional. Whether confetti is falling. Default true.
|
|
9
|
+
* @param pieces - Optional. Number of confetti pieces. Default 12.
|
|
10
|
+
*/
|
|
11
|
+
export interface ConfettiFeedbackProps extends HTMLAttributes<HTMLDivElement> {
|
|
12
|
+
label?: string;
|
|
13
|
+
color?: string;
|
|
14
|
+
active?: boolean;
|
|
15
|
+
pieces?: number;
|
|
16
|
+
}
|
|
17
|
+
export declare function ConfettiFeedback({ label, color, active, pieces, className, ...rest }: ConfettiFeedbackProps): import("react").JSX.Element;
|
|
18
|
+
export default ConfettiFeedback;
|