@opensite/ui 3.4.8 → 3.5.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/components.cjs +13 -7
- package/dist/components.js +13 -7
- package/dist/footer-accordion-social.cjs +1 -1
- package/dist/footer-accordion-social.js +1 -1
- package/dist/footer-animated-social.cjs +1 -1
- package/dist/footer-animated-social.js +1 -1
- package/dist/footer-background-card.cjs +1 -1
- package/dist/footer-background-card.js +1 -1
- package/dist/footer-brand-description.cjs +1 -0
- package/dist/footer-brand-description.js +1 -0
- package/dist/footer-brand-links-contact.cjs +1 -1
- package/dist/footer-brand-links-contact.js +1 -1
- package/dist/footer-comprehensive-links.cjs +1 -1
- package/dist/footer-comprehensive-links.js +1 -1
- package/dist/footer-contact-card.cjs +1 -1
- package/dist/footer-contact-card.js +1 -1
- package/dist/footer-cta-banner.cjs +1 -1
- package/dist/footer-cta-banner.js +1 -1
- package/dist/footer-cta-social.cjs +1 -1
- package/dist/footer-cta-social.js +1 -1
- package/dist/footer-info-cards-accordion.cjs +1 -1
- package/dist/footer-info-cards-accordion.js +1 -1
- package/dist/footer-links-grid.cjs +1 -0
- package/dist/footer-links-grid.js +1 -0
- package/dist/footer-nav-social.cjs +1 -0
- package/dist/footer-nav-social.js +1 -0
- package/dist/footer-newsletter-contact.cjs +1 -1
- package/dist/footer-newsletter-contact.js +1 -1
- package/dist/footer-newsletter-grid.cjs +1 -0
- package/dist/footer-newsletter-grid.js +1 -0
- package/dist/footer-newsletter-minimal.cjs +1 -1
- package/dist/footer-newsletter-minimal.js +1 -1
- package/dist/footer-simple-centered.cjs +1 -1
- package/dist/footer-simple-centered.js +1 -1
- package/dist/footer-social-apps.cjs +1 -0
- package/dist/footer-social-apps.js +1 -0
- package/dist/footer-social-newsletter.cjs +1 -0
- package/dist/footer-social-newsletter.js +1 -0
- package/dist/footer-split-image-accordion.cjs +1 -1
- package/dist/footer-split-image-accordion.js +1 -1
- package/dist/hero-stats-social-proof.cjs +35 -5
- package/dist/hero-stats-social-proof.d.cts +1 -1
- package/dist/hero-stats-social-proof.d.ts +1 -1
- package/dist/hero-stats-social-proof.js +19 -4
- package/dist/index.cjs +13 -7
- package/dist/index.js +13 -7
- package/dist/navbar-animated-preview.cjs +1 -0
- package/dist/navbar-animated-preview.d.cts +15 -1
- package/dist/navbar-animated-preview.d.ts +15 -1
- package/dist/navbar-animated-preview.js +1 -0
- package/dist/navbar-centered-menu.cjs +3 -3
- package/dist/navbar-centered-menu.d.cts +15 -1
- package/dist/navbar-centered-menu.d.ts +15 -1
- package/dist/navbar-centered-menu.js +3 -3
- package/dist/navbar-dark-icons.cjs +4 -3
- package/dist/navbar-dark-icons.d.cts +15 -1
- package/dist/navbar-dark-icons.d.ts +15 -1
- package/dist/navbar-dark-icons.js +4 -3
- package/dist/navbar-dropdown-menu.cjs +3 -3
- package/dist/navbar-dropdown-menu.d.cts +15 -1
- package/dist/navbar-dropdown-menu.d.ts +15 -1
- package/dist/navbar-dropdown-menu.js +3 -3
- package/dist/navbar-education-platform.cjs +1 -0
- package/dist/navbar-education-platform.d.cts +15 -1
- package/dist/navbar-education-platform.d.ts +15 -1
- package/dist/navbar-education-platform.js +1 -0
- package/dist/navbar-enterprise-mega.cjs +99 -23
- package/dist/navbar-enterprise-mega.d.cts +15 -1
- package/dist/navbar-enterprise-mega.d.ts +15 -1
- package/dist/navbar-enterprise-mega.js +99 -23
- package/dist/navbar-feature-grid.cjs +1 -1
- package/dist/navbar-feature-grid.d.cts +19 -1
- package/dist/navbar-feature-grid.d.ts +19 -1
- package/dist/navbar-feature-grid.js +1 -1
- package/dist/navbar-floating-pill.cjs +1 -1
- package/dist/navbar-floating-pill.d.cts +15 -1
- package/dist/navbar-floating-pill.d.ts +15 -1
- package/dist/navbar-floating-pill.js +1 -1
- package/dist/navbar-fullscreen-menu.cjs +1 -0
- package/dist/navbar-fullscreen-menu.d.cts +15 -1
- package/dist/navbar-fullscreen-menu.d.ts +15 -1
- package/dist/navbar-fullscreen-menu.js +1 -0
- package/dist/navbar-icon-links.cjs +1 -1
- package/dist/navbar-icon-links.d.cts +15 -1
- package/dist/navbar-icon-links.d.ts +15 -1
- package/dist/navbar-icon-links.js +1 -1
- package/dist/navbar-image-preview.cjs +1 -1
- package/dist/navbar-image-preview.d.cts +15 -1
- package/dist/navbar-image-preview.d.ts +15 -1
- package/dist/navbar-image-preview.js +1 -1
- package/dist/navbar-mega-menu.cjs +1 -1
- package/dist/navbar-mega-menu.d.cts +15 -1
- package/dist/navbar-mega-menu.d.ts +15 -1
- package/dist/navbar-mega-menu.js +1 -1
- package/dist/navbar-multi-column-groups.cjs +1 -0
- package/dist/navbar-multi-column-groups.d.cts +15 -1
- package/dist/navbar-multi-column-groups.d.ts +15 -1
- package/dist/navbar-multi-column-groups.js +1 -0
- package/dist/navbar-platform-resources.cjs +77 -43
- package/dist/navbar-platform-resources.d.cts +16 -2
- package/dist/navbar-platform-resources.d.ts +16 -2
- package/dist/navbar-platform-resources.js +77 -43
- package/dist/navbar-search-focused.cjs +1 -0
- package/dist/navbar-search-focused.d.cts +19 -1
- package/dist/navbar-search-focused.d.ts +19 -1
- package/dist/navbar-search-focused.js +1 -0
- package/dist/navbar-sidebar-mobile.cjs +1 -0
- package/dist/navbar-sidebar-mobile.d.cts +15 -1
- package/dist/navbar-sidebar-mobile.d.ts +15 -1
- package/dist/navbar-sidebar-mobile.js +1 -0
- package/dist/navbar-simple-links.cjs +1 -0
- package/dist/navbar-simple-links.d.cts +19 -1
- package/dist/navbar-simple-links.d.ts +19 -1
- package/dist/navbar-simple-links.js +1 -0
- package/dist/navbar-split-cta.cjs +3 -4
- package/dist/navbar-split-cta.d.cts +15 -1
- package/dist/navbar-split-cta.d.ts +15 -1
- package/dist/navbar-split-cta.js +3 -4
- package/dist/navbar-sticky-compact.cjs +11 -4
- package/dist/navbar-sticky-compact.d.cts +15 -1
- package/dist/navbar-sticky-compact.d.ts +15 -1
- package/dist/navbar-sticky-compact.js +11 -4
- package/dist/navbar-tabbed-sections.cjs +3 -4
- package/dist/navbar-tabbed-sections.d.cts +15 -1
- package/dist/navbar-tabbed-sections.d.ts +15 -1
- package/dist/navbar-tabbed-sections.js +3 -4
- package/dist/navbar-transparent-overlay.cjs +1 -0
- package/dist/navbar-transparent-overlay.d.cts +15 -1
- package/dist/navbar-transparent-overlay.d.ts +15 -1
- package/dist/navbar-transparent-overlay.js +1 -0
- package/dist/registry.cjs +236 -106
- package/dist/registry.js +236 -106
- package/dist/social-link-icon.d.cts +1 -1
- package/dist/social-link-icon.d.ts +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import React__default, { useMemo } from 'react';
|
|
3
4
|
import { clsx } from 'clsx';
|
|
4
5
|
import { twMerge } from 'tailwind-merge';
|
|
5
6
|
import { Img } from '@page-speed/img';
|
|
@@ -7,6 +8,7 @@ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
|
7
8
|
import { Pressable, buttonVariants } from '@page-speed/pressable';
|
|
8
9
|
import { Slot } from '@radix-ui/react-slot';
|
|
9
10
|
import { cva } from 'class-variance-authority';
|
|
11
|
+
import { Icon } from '@page-speed/icon';
|
|
10
12
|
|
|
11
13
|
// components/blocks/hero/hero-stats-social-proof.tsx
|
|
12
14
|
function cn(...inputs) {
|
|
@@ -21,7 +23,7 @@ var maxWidthStyles = {
|
|
|
21
23
|
"4xl": "max-w-[1536px]",
|
|
22
24
|
full: "max-w-full"
|
|
23
25
|
};
|
|
24
|
-
var Container =
|
|
26
|
+
var Container = React__default.forwardRef(
|
|
25
27
|
({ children, maxWidth = "xl", className, as = "div", ...props }, ref) => {
|
|
26
28
|
const Component = as;
|
|
27
29
|
return /* @__PURE__ */ jsx(
|
|
@@ -327,7 +329,7 @@ var spacingStyles = {
|
|
|
327
329
|
};
|
|
328
330
|
var predefinedSpacings = ["none", "sm", "md", "lg", "xl", "hero"];
|
|
329
331
|
var isPredefinedSpacing = (spacing) => predefinedSpacings.includes(spacing);
|
|
330
|
-
var Section =
|
|
332
|
+
var Section = React__default.forwardRef(
|
|
331
333
|
({
|
|
332
334
|
id,
|
|
333
335
|
title,
|
|
@@ -420,6 +422,19 @@ function Badge({
|
|
|
420
422
|
}
|
|
421
423
|
);
|
|
422
424
|
}
|
|
425
|
+
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
426
|
+
var DynamicIcon = React.memo(function DynamicIcon2({
|
|
427
|
+
apiKey,
|
|
428
|
+
name,
|
|
429
|
+
...props
|
|
430
|
+
}) {
|
|
431
|
+
if (name == null) return null;
|
|
432
|
+
if (typeof name !== "string") {
|
|
433
|
+
return /* @__PURE__ */ jsx(Fragment, { children: name });
|
|
434
|
+
}
|
|
435
|
+
return /* @__PURE__ */ jsx(Icon, { ...props, name, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
|
|
436
|
+
});
|
|
437
|
+
DynamicIcon.displayName = "DynamicIcon";
|
|
423
438
|
var MOBILE_CLASSES = {
|
|
424
439
|
"fit-left": "items-start md:items-center",
|
|
425
440
|
"fit-center": "items-center",
|
|
@@ -547,7 +562,7 @@ function HeroStatsSocialProof({
|
|
|
547
562
|
"pr-4 md:pr-6 shadow-2xl bg-card text-card-foreground"
|
|
548
563
|
),
|
|
549
564
|
children: /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-3", children: [
|
|
550
|
-
statusCard.icon
|
|
565
|
+
statusCard.icon ? /* @__PURE__ */ jsx("div", { className: "flex shrink-0 h-12 w-12 items-center justify-center rounded-full bg-primary text-primary-foreground shadow-lg", children: /* @__PURE__ */ jsx(DynamicIcon, { name: statusCard.icon }) }) : null,
|
|
551
566
|
/* @__PURE__ */ jsxs("div", { className: "text-balance", children: [
|
|
552
567
|
statusCard.title && /* @__PURE__ */ jsx("div", { className: "font-semibold text-sm md:text-md leading-snug", children: statusCard.title }),
|
|
553
568
|
statusCard.subtitle && /* @__PURE__ */ jsx("div", { className: "text-sm leading-snug tracking-tight", children: statusCard.subtitle })
|
package/dist/index.cjs
CHANGED
|
@@ -4495,6 +4495,7 @@ function FooterLinksGrid({
|
|
|
4495
4495
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
4496
4496
|
Section,
|
|
4497
4497
|
{
|
|
4498
|
+
id: "footer-links-grid",
|
|
4498
4499
|
background,
|
|
4499
4500
|
spacing,
|
|
4500
4501
|
pattern,
|
|
@@ -4613,6 +4614,7 @@ function FooterSocialNewsletter({
|
|
|
4613
4614
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
4614
4615
|
Section,
|
|
4615
4616
|
{
|
|
4617
|
+
id: "footer-social-newsletter",
|
|
4616
4618
|
background,
|
|
4617
4619
|
spacing,
|
|
4618
4620
|
pattern,
|
|
@@ -4770,6 +4772,7 @@ function FooterSocialApps({
|
|
|
4770
4772
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
4771
4773
|
Section,
|
|
4772
4774
|
{
|
|
4775
|
+
id: "footer-social-apps",
|
|
4773
4776
|
background,
|
|
4774
4777
|
spacing,
|
|
4775
4778
|
pattern,
|
|
@@ -4885,7 +4888,7 @@ function FooterSimpleCentered({
|
|
|
4885
4888
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
4886
4889
|
Section,
|
|
4887
4890
|
{
|
|
4888
|
-
id:
|
|
4891
|
+
id: "footer-simple-centered",
|
|
4889
4892
|
background,
|
|
4890
4893
|
spacing,
|
|
4891
4894
|
pattern,
|
|
@@ -5015,6 +5018,7 @@ function FooterBrandDescription({
|
|
|
5015
5018
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5016
5019
|
Section,
|
|
5017
5020
|
{
|
|
5021
|
+
id: "footer-brand-description",
|
|
5018
5022
|
background,
|
|
5019
5023
|
spacing,
|
|
5020
5024
|
pattern,
|
|
@@ -5226,6 +5230,7 @@ function FooterNewsletterGrid({
|
|
|
5226
5230
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5227
5231
|
Section,
|
|
5228
5232
|
{
|
|
5233
|
+
id: "footer-newsletter-grid",
|
|
5229
5234
|
background,
|
|
5230
5235
|
spacing,
|
|
5231
5236
|
pattern,
|
|
@@ -5342,7 +5347,7 @@ function FooterCtaBanner({
|
|
|
5342
5347
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5343
5348
|
Section,
|
|
5344
5349
|
{
|
|
5345
|
-
id:
|
|
5350
|
+
id: "footer-cta-banner",
|
|
5346
5351
|
background,
|
|
5347
5352
|
spacing,
|
|
5348
5353
|
pattern,
|
|
@@ -5563,7 +5568,7 @@ function FooterContactCard({
|
|
|
5563
5568
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5564
5569
|
Section,
|
|
5565
5570
|
{
|
|
5566
|
-
id:
|
|
5571
|
+
id: "footer-contact-card",
|
|
5567
5572
|
background,
|
|
5568
5573
|
spacing,
|
|
5569
5574
|
pattern,
|
|
@@ -5748,7 +5753,7 @@ function FooterBackgroundCard({
|
|
|
5748
5753
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
5749
5754
|
Section,
|
|
5750
5755
|
{
|
|
5751
|
-
id:
|
|
5756
|
+
id: "footer-background-card",
|
|
5752
5757
|
background,
|
|
5753
5758
|
spacing,
|
|
5754
5759
|
pattern,
|
|
@@ -6048,7 +6053,7 @@ function FooterAnimatedSocial({
|
|
|
6048
6053
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
6049
6054
|
Section,
|
|
6050
6055
|
{
|
|
6051
|
-
id:
|
|
6056
|
+
id: "footer-animated-social",
|
|
6052
6057
|
background,
|
|
6053
6058
|
spacing,
|
|
6054
6059
|
pattern,
|
|
@@ -6316,7 +6321,7 @@ function FooterNewsletterMinimal({
|
|
|
6316
6321
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
6317
6322
|
Section,
|
|
6318
6323
|
{
|
|
6319
|
-
id:
|
|
6324
|
+
id: "footer-newsletter-minimal",
|
|
6320
6325
|
background,
|
|
6321
6326
|
spacing,
|
|
6322
6327
|
pattern,
|
|
@@ -6533,7 +6538,7 @@ function FooterCtaSocial({
|
|
|
6533
6538
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
6534
6539
|
Section,
|
|
6535
6540
|
{
|
|
6536
|
-
id:
|
|
6541
|
+
id: "footer-cta-social",
|
|
6537
6542
|
background,
|
|
6538
6543
|
spacing,
|
|
6539
6544
|
pattern,
|
|
@@ -6668,6 +6673,7 @@ function FooterNavSocial({
|
|
|
6668
6673
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
6669
6674
|
Section,
|
|
6670
6675
|
{
|
|
6676
|
+
id: "footer-nav-social",
|
|
6671
6677
|
background,
|
|
6672
6678
|
spacing,
|
|
6673
6679
|
pattern,
|
package/dist/index.js
CHANGED
|
@@ -4473,6 +4473,7 @@ function FooterLinksGrid({
|
|
|
4473
4473
|
return /* @__PURE__ */ jsx(
|
|
4474
4474
|
Section,
|
|
4475
4475
|
{
|
|
4476
|
+
id: "footer-links-grid",
|
|
4476
4477
|
background,
|
|
4477
4478
|
spacing,
|
|
4478
4479
|
pattern,
|
|
@@ -4591,6 +4592,7 @@ function FooterSocialNewsletter({
|
|
|
4591
4592
|
return /* @__PURE__ */ jsx(
|
|
4592
4593
|
Section,
|
|
4593
4594
|
{
|
|
4595
|
+
id: "footer-social-newsletter",
|
|
4594
4596
|
background,
|
|
4595
4597
|
spacing,
|
|
4596
4598
|
pattern,
|
|
@@ -4748,6 +4750,7 @@ function FooterSocialApps({
|
|
|
4748
4750
|
return /* @__PURE__ */ jsx(
|
|
4749
4751
|
Section,
|
|
4750
4752
|
{
|
|
4753
|
+
id: "footer-social-apps",
|
|
4751
4754
|
background,
|
|
4752
4755
|
spacing,
|
|
4753
4756
|
pattern,
|
|
@@ -4863,7 +4866,7 @@ function FooterSimpleCentered({
|
|
|
4863
4866
|
return /* @__PURE__ */ jsx(
|
|
4864
4867
|
Section,
|
|
4865
4868
|
{
|
|
4866
|
-
id:
|
|
4869
|
+
id: "footer-simple-centered",
|
|
4867
4870
|
background,
|
|
4868
4871
|
spacing,
|
|
4869
4872
|
pattern,
|
|
@@ -4993,6 +4996,7 @@ function FooterBrandDescription({
|
|
|
4993
4996
|
return /* @__PURE__ */ jsx(
|
|
4994
4997
|
Section,
|
|
4995
4998
|
{
|
|
4999
|
+
id: "footer-brand-description",
|
|
4996
5000
|
background,
|
|
4997
5001
|
spacing,
|
|
4998
5002
|
pattern,
|
|
@@ -5204,6 +5208,7 @@ function FooterNewsletterGrid({
|
|
|
5204
5208
|
return /* @__PURE__ */ jsx(
|
|
5205
5209
|
Section,
|
|
5206
5210
|
{
|
|
5211
|
+
id: "footer-newsletter-grid",
|
|
5207
5212
|
background,
|
|
5208
5213
|
spacing,
|
|
5209
5214
|
pattern,
|
|
@@ -5320,7 +5325,7 @@ function FooterCtaBanner({
|
|
|
5320
5325
|
return /* @__PURE__ */ jsx(
|
|
5321
5326
|
Section,
|
|
5322
5327
|
{
|
|
5323
|
-
id:
|
|
5328
|
+
id: "footer-cta-banner",
|
|
5324
5329
|
background,
|
|
5325
5330
|
spacing,
|
|
5326
5331
|
pattern,
|
|
@@ -5541,7 +5546,7 @@ function FooterContactCard({
|
|
|
5541
5546
|
return /* @__PURE__ */ jsx(
|
|
5542
5547
|
Section,
|
|
5543
5548
|
{
|
|
5544
|
-
id:
|
|
5549
|
+
id: "footer-contact-card",
|
|
5545
5550
|
background,
|
|
5546
5551
|
spacing,
|
|
5547
5552
|
pattern,
|
|
@@ -5726,7 +5731,7 @@ function FooterBackgroundCard({
|
|
|
5726
5731
|
return /* @__PURE__ */ jsx(
|
|
5727
5732
|
Section,
|
|
5728
5733
|
{
|
|
5729
|
-
id:
|
|
5734
|
+
id: "footer-background-card",
|
|
5730
5735
|
background,
|
|
5731
5736
|
spacing,
|
|
5732
5737
|
pattern,
|
|
@@ -6026,7 +6031,7 @@ function FooterAnimatedSocial({
|
|
|
6026
6031
|
return /* @__PURE__ */ jsx(
|
|
6027
6032
|
Section,
|
|
6028
6033
|
{
|
|
6029
|
-
id:
|
|
6034
|
+
id: "footer-animated-social",
|
|
6030
6035
|
background,
|
|
6031
6036
|
spacing,
|
|
6032
6037
|
pattern,
|
|
@@ -6294,7 +6299,7 @@ function FooterNewsletterMinimal({
|
|
|
6294
6299
|
return /* @__PURE__ */ jsx(
|
|
6295
6300
|
Section,
|
|
6296
6301
|
{
|
|
6297
|
-
id:
|
|
6302
|
+
id: "footer-newsletter-minimal",
|
|
6298
6303
|
background,
|
|
6299
6304
|
spacing,
|
|
6300
6305
|
pattern,
|
|
@@ -6511,7 +6516,7 @@ function FooterCtaSocial({
|
|
|
6511
6516
|
return /* @__PURE__ */ jsx(
|
|
6512
6517
|
Section,
|
|
6513
6518
|
{
|
|
6514
|
-
id:
|
|
6519
|
+
id: "footer-cta-social",
|
|
6515
6520
|
background,
|
|
6516
6521
|
spacing,
|
|
6517
6522
|
pattern,
|
|
@@ -6646,6 +6651,7 @@ function FooterNavSocial({
|
|
|
6646
6651
|
return /* @__PURE__ */ jsx(
|
|
6647
6652
|
Section,
|
|
6648
6653
|
{
|
|
6654
|
+
id: "footer-nav-social",
|
|
6649
6655
|
background,
|
|
6650
6656
|
spacing,
|
|
6651
6657
|
pattern,
|
|
@@ -38,6 +38,20 @@ interface IMenuLink {
|
|
|
38
38
|
* Props for the NavbarAnimatedPreview component
|
|
39
39
|
*/
|
|
40
40
|
interface NavbarAnimatedPreviewProps {
|
|
41
|
+
/**
|
|
42
|
+
* Logo configuration
|
|
43
|
+
*/
|
|
44
|
+
logo?: LogoConfig;
|
|
45
|
+
/**
|
|
46
|
+
* Navigation menu links with optional dropdown groups
|
|
47
|
+
*/
|
|
48
|
+
menuLinks?: IMenuLink[];
|
|
49
|
+
/**
|
|
50
|
+
* Action configurations (e.g., Sign In, Get Started buttons)
|
|
51
|
+
*/
|
|
52
|
+
actions?: ActionConfig[];
|
|
53
|
+
}
|
|
54
|
+
interface NavbarAnimatedPreviewRuntimeProps {
|
|
41
55
|
/**
|
|
42
56
|
* Additional CSS classes for the section
|
|
43
57
|
*/
|
|
@@ -120,6 +134,6 @@ interface NavbarAnimatedPreviewProps {
|
|
|
120
134
|
* menu spans full width with smooth fade-in animations. Mobile view uses a full-screen sheet with
|
|
121
135
|
* accordion navigation. Ideal for complex SaaS products and developer platforms.
|
|
122
136
|
*/
|
|
123
|
-
declare const NavbarAnimatedPreview: ({ className, containerClassName, navClassName, navigationMenuClassName, actionsClassName, logo, logoSlot, logoClassName, menuLinks, navigationSlot, actions, actionsSlot, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }:
|
|
137
|
+
declare const NavbarAnimatedPreview: ({ className, containerClassName, navClassName, navigationMenuClassName, actionsClassName, logo, logoSlot, logoClassName, menuLinks, navigationSlot, actions, actionsSlot, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }: NavbarAnimatedPreviewRuntimeProps) => react_jsx_runtime.JSX.Element;
|
|
124
138
|
|
|
125
139
|
export { type AnimatedPreviewLayout, type IFeaturedImageLink, ILinkItem, type IMenuLink, IMenuLinkGroup, LogoConfig, NavbarAnimatedPreview, type NavbarAnimatedPreviewProps };
|
|
@@ -38,6 +38,20 @@ interface IMenuLink {
|
|
|
38
38
|
* Props for the NavbarAnimatedPreview component
|
|
39
39
|
*/
|
|
40
40
|
interface NavbarAnimatedPreviewProps {
|
|
41
|
+
/**
|
|
42
|
+
* Logo configuration
|
|
43
|
+
*/
|
|
44
|
+
logo?: LogoConfig;
|
|
45
|
+
/**
|
|
46
|
+
* Navigation menu links with optional dropdown groups
|
|
47
|
+
*/
|
|
48
|
+
menuLinks?: IMenuLink[];
|
|
49
|
+
/**
|
|
50
|
+
* Action configurations (e.g., Sign In, Get Started buttons)
|
|
51
|
+
*/
|
|
52
|
+
actions?: ActionConfig[];
|
|
53
|
+
}
|
|
54
|
+
interface NavbarAnimatedPreviewRuntimeProps {
|
|
41
55
|
/**
|
|
42
56
|
* Additional CSS classes for the section
|
|
43
57
|
*/
|
|
@@ -120,6 +134,6 @@ interface NavbarAnimatedPreviewProps {
|
|
|
120
134
|
* menu spans full width with smooth fade-in animations. Mobile view uses a full-screen sheet with
|
|
121
135
|
* accordion navigation. Ideal for complex SaaS products and developer platforms.
|
|
122
136
|
*/
|
|
123
|
-
declare const NavbarAnimatedPreview: ({ className, containerClassName, navClassName, navigationMenuClassName, actionsClassName, logo, logoSlot, logoClassName, menuLinks, navigationSlot, actions, actionsSlot, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }:
|
|
137
|
+
declare const NavbarAnimatedPreview: ({ className, containerClassName, navClassName, navigationMenuClassName, actionsClassName, logo, logoSlot, logoClassName, menuLinks, navigationSlot, actions, actionsSlot, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }: NavbarAnimatedPreviewRuntimeProps) => react_jsx_runtime.JSX.Element;
|
|
124
138
|
|
|
125
139
|
export { type AnimatedPreviewLayout, type IFeaturedImageLink, ILinkItem, type IMenuLink, IMenuLinkGroup, LogoConfig, NavbarAnimatedPreview, type NavbarAnimatedPreviewProps };
|
|
@@ -738,10 +738,10 @@ var SubMenuLink = ({ item }) => {
|
|
|
738
738
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
739
739
|
pressable.Pressable,
|
|
740
740
|
{
|
|
741
|
-
className: "flex flex-row gap-4 rounded-md p-3 leading-none no-underline transition-colors outline-none select-none hover:bg-muted hover:text-foreground",
|
|
741
|
+
className: "flex flex-row items-center gap-4 rounded-md p-3 leading-none no-underline transition-colors outline-none select-none hover:bg-muted hover:text-foreground",
|
|
742
742
|
href: item.url,
|
|
743
743
|
children: [
|
|
744
|
-
item.icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-muted-foreground", children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: item.icon, size: 20, className: "shrink-0" }) }),
|
|
744
|
+
item.icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex size-5 shrink-0 items-center justify-center text-muted-foreground", children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: item.icon, size: 20, className: "shrink-0" }) }),
|
|
745
745
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
746
746
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm font-semibold", children: item.title }),
|
|
747
747
|
item.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm leading-snug text-muted-foreground", children: item.description })
|
|
@@ -860,7 +860,7 @@ var NavbarCenteredMenu = ({
|
|
|
860
860
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
861
861
|
Section,
|
|
862
862
|
{
|
|
863
|
-
id:
|
|
863
|
+
id: "navbar-centered-menu",
|
|
864
864
|
background,
|
|
865
865
|
spacing: spacingOverride ?? spacing,
|
|
866
866
|
className: sectionClasses,
|
|
@@ -24,6 +24,20 @@ interface MenuItem {
|
|
|
24
24
|
* Props for the NavbarCenteredMenu component
|
|
25
25
|
*/
|
|
26
26
|
interface NavbarCenteredMenuProps {
|
|
27
|
+
/**
|
|
28
|
+
* Logo configuration
|
|
29
|
+
*/
|
|
30
|
+
logo?: LogoConfig;
|
|
31
|
+
/**
|
|
32
|
+
* Navigation menu items
|
|
33
|
+
*/
|
|
34
|
+
menu?: MenuItem[];
|
|
35
|
+
/**
|
|
36
|
+
* Authentication action configurations
|
|
37
|
+
*/
|
|
38
|
+
authActions?: ActionConfig[];
|
|
39
|
+
}
|
|
40
|
+
interface NavbarCenteredMenuRuntimeProps {
|
|
27
41
|
/**
|
|
28
42
|
* Additional CSS classes for the section
|
|
29
43
|
*/
|
|
@@ -111,6 +125,6 @@ interface NavbarCenteredMenuProps {
|
|
|
111
125
|
* slide-out sheet with accordion navigation. The dropdowns are centered under their
|
|
112
126
|
* trigger elements for a balanced visual appearance.
|
|
113
127
|
*/
|
|
114
|
-
declare const NavbarCenteredMenu: ({ sectionId, logo, logoSlot, logoClassName, menu, menuSlot, authActions, authActionsSlot, className, containerClassName, desktopNavClassName, mobileNavClassName, navigationMenuClassName, actionsClassName, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }:
|
|
128
|
+
declare const NavbarCenteredMenu: ({ sectionId, logo, logoSlot, logoClassName, menu, menuSlot, authActions, authActionsSlot, className, containerClassName, desktopNavClassName, mobileNavClassName, navigationMenuClassName, actionsClassName, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }: NavbarCenteredMenuRuntimeProps) => react_jsx_runtime.JSX.Element;
|
|
115
129
|
|
|
116
130
|
export { NavbarCenteredMenu, type NavbarCenteredMenuProps };
|
|
@@ -24,6 +24,20 @@ interface MenuItem {
|
|
|
24
24
|
* Props for the NavbarCenteredMenu component
|
|
25
25
|
*/
|
|
26
26
|
interface NavbarCenteredMenuProps {
|
|
27
|
+
/**
|
|
28
|
+
* Logo configuration
|
|
29
|
+
*/
|
|
30
|
+
logo?: LogoConfig;
|
|
31
|
+
/**
|
|
32
|
+
* Navigation menu items
|
|
33
|
+
*/
|
|
34
|
+
menu?: MenuItem[];
|
|
35
|
+
/**
|
|
36
|
+
* Authentication action configurations
|
|
37
|
+
*/
|
|
38
|
+
authActions?: ActionConfig[];
|
|
39
|
+
}
|
|
40
|
+
interface NavbarCenteredMenuRuntimeProps {
|
|
27
41
|
/**
|
|
28
42
|
* Additional CSS classes for the section
|
|
29
43
|
*/
|
|
@@ -111,6 +125,6 @@ interface NavbarCenteredMenuProps {
|
|
|
111
125
|
* slide-out sheet with accordion navigation. The dropdowns are centered under their
|
|
112
126
|
* trigger elements for a balanced visual appearance.
|
|
113
127
|
*/
|
|
114
|
-
declare const NavbarCenteredMenu: ({ sectionId, logo, logoSlot, logoClassName, menu, menuSlot, authActions, authActionsSlot, className, containerClassName, desktopNavClassName, mobileNavClassName, navigationMenuClassName, actionsClassName, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }:
|
|
128
|
+
declare const NavbarCenteredMenu: ({ sectionId, logo, logoSlot, logoClassName, menu, menuSlot, authActions, authActionsSlot, className, containerClassName, desktopNavClassName, mobileNavClassName, navigationMenuClassName, actionsClassName, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }: NavbarCenteredMenuRuntimeProps) => react_jsx_runtime.JSX.Element;
|
|
115
129
|
|
|
116
130
|
export { NavbarCenteredMenu, type NavbarCenteredMenuProps };
|
|
@@ -715,10 +715,10 @@ var SubMenuLink = ({ item }) => {
|
|
|
715
715
|
return /* @__PURE__ */ jsxs(
|
|
716
716
|
Pressable,
|
|
717
717
|
{
|
|
718
|
-
className: "flex flex-row gap-4 rounded-md p-3 leading-none no-underline transition-colors outline-none select-none hover:bg-muted hover:text-foreground",
|
|
718
|
+
className: "flex flex-row items-center gap-4 rounded-md p-3 leading-none no-underline transition-colors outline-none select-none hover:bg-muted hover:text-foreground",
|
|
719
719
|
href: item.url,
|
|
720
720
|
children: [
|
|
721
|
-
item.icon && /* @__PURE__ */ jsx("div", { className: "text-muted-foreground", children: /* @__PURE__ */ jsx(DynamicIcon, { name: item.icon, size: 20, className: "shrink-0" }) }),
|
|
721
|
+
item.icon && /* @__PURE__ */ jsx("div", { className: "flex size-5 shrink-0 items-center justify-center text-muted-foreground", children: /* @__PURE__ */ jsx(DynamicIcon, { name: item.icon, size: 20, className: "shrink-0" }) }),
|
|
722
722
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
723
723
|
/* @__PURE__ */ jsx("div", { className: "text-sm font-semibold", children: item.title }),
|
|
724
724
|
item.description && /* @__PURE__ */ jsx("p", { className: "text-sm leading-snug text-muted-foreground", children: item.description })
|
|
@@ -837,7 +837,7 @@ var NavbarCenteredMenu = ({
|
|
|
837
837
|
return /* @__PURE__ */ jsx(
|
|
838
838
|
Section,
|
|
839
839
|
{
|
|
840
|
-
id:
|
|
840
|
+
id: "navbar-centered-menu",
|
|
841
841
|
background,
|
|
842
842
|
spacing: spacingOverride ?? spacing,
|
|
843
843
|
className: sectionClasses,
|
|
@@ -866,7 +866,7 @@ var NavbarDarkIcons = ({
|
|
|
866
866
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
867
867
|
Section,
|
|
868
868
|
{
|
|
869
|
-
id:
|
|
869
|
+
id: "navbar-dark-icons",
|
|
870
870
|
background,
|
|
871
871
|
spacing: spacingOverride ?? spacing,
|
|
872
872
|
className: cn("dark pointer-events-auto relative z-999", sectionClasses),
|
|
@@ -968,13 +968,14 @@ var MenuSubLink = ({ link }) => {
|
|
|
968
968
|
href: link.url,
|
|
969
969
|
className: "flex items-center gap-4 rounded-lg p-2 hover:bg-muted",
|
|
970
970
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex w-full items-center justify-between", children: [
|
|
971
|
-
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex gap-2.5", children: [
|
|
971
|
+
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2.5", children: [
|
|
972
972
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
973
973
|
DynamicIcon,
|
|
974
974
|
{
|
|
975
975
|
name: link.icon || link.iconName,
|
|
976
976
|
size: 20,
|
|
977
|
-
color: link.iconColor
|
|
977
|
+
color: link.iconColor,
|
|
978
|
+
className: "shrink-0"
|
|
978
979
|
}
|
|
979
980
|
),
|
|
980
981
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex flex-col gap-1.5", children: [
|
|
@@ -26,6 +26,20 @@ interface MenuItem {
|
|
|
26
26
|
* Props for the NavbarDarkIcons component
|
|
27
27
|
*/
|
|
28
28
|
interface NavbarDarkIconsProps {
|
|
29
|
+
/**
|
|
30
|
+
* Logo configuration
|
|
31
|
+
*/
|
|
32
|
+
logo?: LogoConfig;
|
|
33
|
+
/**
|
|
34
|
+
* Navigation menu items
|
|
35
|
+
*/
|
|
36
|
+
navigation?: MenuItem[];
|
|
37
|
+
/**
|
|
38
|
+
* Authentication action configurations
|
|
39
|
+
*/
|
|
40
|
+
authActions?: ActionConfig[];
|
|
41
|
+
}
|
|
42
|
+
interface NavbarDarkIconsRuntimeProps {
|
|
29
43
|
/**
|
|
30
44
|
* Additional CSS classes for the section
|
|
31
45
|
*/
|
|
@@ -117,6 +131,6 @@ interface NavbarDarkIconsProps {
|
|
|
117
131
|
* view uses a full-screen dark sheet with accordion navigation. Ideal for developer
|
|
118
132
|
* tools, open-source projects, and tech-focused applications.
|
|
119
133
|
*/
|
|
120
|
-
declare const NavbarDarkIcons: ({ sectionId, className, containerClassName, navClassName, navigationMenuClassName, actionsClassName, logo, logoSlot, logoClassName, navigation, navigationSlot, authActions, authActionsSlot, githubUrl, githubSlot, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }:
|
|
134
|
+
declare const NavbarDarkIcons: ({ sectionId, className, containerClassName, navClassName, navigationMenuClassName, actionsClassName, logo, logoSlot, logoClassName, navigation, navigationSlot, authActions, authActionsSlot, githubUrl, githubSlot, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }: NavbarDarkIconsRuntimeProps) => react_jsx_runtime.JSX.Element;
|
|
121
135
|
|
|
122
136
|
export { NavbarDarkIcons, type NavbarDarkIconsProps };
|
|
@@ -26,6 +26,20 @@ interface MenuItem {
|
|
|
26
26
|
* Props for the NavbarDarkIcons component
|
|
27
27
|
*/
|
|
28
28
|
interface NavbarDarkIconsProps {
|
|
29
|
+
/**
|
|
30
|
+
* Logo configuration
|
|
31
|
+
*/
|
|
32
|
+
logo?: LogoConfig;
|
|
33
|
+
/**
|
|
34
|
+
* Navigation menu items
|
|
35
|
+
*/
|
|
36
|
+
navigation?: MenuItem[];
|
|
37
|
+
/**
|
|
38
|
+
* Authentication action configurations
|
|
39
|
+
*/
|
|
40
|
+
authActions?: ActionConfig[];
|
|
41
|
+
}
|
|
42
|
+
interface NavbarDarkIconsRuntimeProps {
|
|
29
43
|
/**
|
|
30
44
|
* Additional CSS classes for the section
|
|
31
45
|
*/
|
|
@@ -117,6 +131,6 @@ interface NavbarDarkIconsProps {
|
|
|
117
131
|
* view uses a full-screen dark sheet with accordion navigation. Ideal for developer
|
|
118
132
|
* tools, open-source projects, and tech-focused applications.
|
|
119
133
|
*/
|
|
120
|
-
declare const NavbarDarkIcons: ({ sectionId, className, containerClassName, navClassName, navigationMenuClassName, actionsClassName, logo, logoSlot, logoClassName, navigation, navigationSlot, authActions, authActionsSlot, githubUrl, githubSlot, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }:
|
|
134
|
+
declare const NavbarDarkIcons: ({ sectionId, className, containerClassName, navClassName, navigationMenuClassName, actionsClassName, logo, logoSlot, logoClassName, navigation, navigationSlot, authActions, authActionsSlot, githubUrl, githubSlot, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }: NavbarDarkIconsRuntimeProps) => react_jsx_runtime.JSX.Element;
|
|
121
135
|
|
|
122
136
|
export { NavbarDarkIcons, type NavbarDarkIconsProps };
|
|
@@ -843,7 +843,7 @@ var NavbarDarkIcons = ({
|
|
|
843
843
|
return /* @__PURE__ */ jsxs(
|
|
844
844
|
Section,
|
|
845
845
|
{
|
|
846
|
-
id:
|
|
846
|
+
id: "navbar-dark-icons",
|
|
847
847
|
background,
|
|
848
848
|
spacing: spacingOverride ?? spacing,
|
|
849
849
|
className: cn("dark pointer-events-auto relative z-999", sectionClasses),
|
|
@@ -945,13 +945,14 @@ var MenuSubLink = ({ link }) => {
|
|
|
945
945
|
href: link.url,
|
|
946
946
|
className: "flex items-center gap-4 rounded-lg p-2 hover:bg-muted",
|
|
947
947
|
children: /* @__PURE__ */ jsxs("div", { className: "flex w-full items-center justify-between", children: [
|
|
948
|
-
/* @__PURE__ */ jsxs("div", { className: "flex gap-2.5", children: [
|
|
948
|
+
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2.5", children: [
|
|
949
949
|
/* @__PURE__ */ jsx(
|
|
950
950
|
DynamicIcon,
|
|
951
951
|
{
|
|
952
952
|
name: link.icon || link.iconName,
|
|
953
953
|
size: 20,
|
|
954
|
-
color: link.iconColor
|
|
954
|
+
color: link.iconColor,
|
|
955
|
+
className: "shrink-0"
|
|
955
956
|
}
|
|
956
957
|
),
|
|
957
958
|
/* @__PURE__ */ jsxs("div", { className: "flex flex-col gap-1.5", children: [
|
|
@@ -770,10 +770,10 @@ var SubMenuLink = ({
|
|
|
770
770
|
return /* @__PURE__ */ jsxRuntime.jsxs(
|
|
771
771
|
pressable.Pressable,
|
|
772
772
|
{
|
|
773
|
-
className: "flex min-w-80 flex-row gap-4 rounded-md p-3 leading-none no-underline transition-colors outline-none select-none hover:bg-muted",
|
|
773
|
+
className: "flex min-w-80 flex-row items-center gap-4 rounded-md p-3 leading-none no-underline transition-colors outline-none select-none hover:bg-muted",
|
|
774
774
|
href: item.url,
|
|
775
775
|
children: [
|
|
776
|
-
item.icon && /* @__PURE__ */ jsxRuntime.jsx("div", { children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: item.icon, size: 20, className: "shrink-0" }) }),
|
|
776
|
+
item.icon && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex size-5 shrink-0 items-center justify-center text-muted-foreground", children: /* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: item.icon, size: 20, className: "shrink-0" }) }),
|
|
777
777
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { children: [
|
|
778
778
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "text-sm font-semibold", children: item.title }),
|
|
779
779
|
item.description && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm leading-snug text-muted-foreground", children: item.description })
|
|
@@ -888,7 +888,7 @@ var NavbarDropdownMenu = ({
|
|
|
888
888
|
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
889
889
|
Section,
|
|
890
890
|
{
|
|
891
|
-
id:
|
|
891
|
+
id: "navbar-dropdown-menu",
|
|
892
892
|
background,
|
|
893
893
|
spacing: spacingOverride ?? spacing,
|
|
894
894
|
className: sectionClasses,
|
|
@@ -24,6 +24,20 @@ interface MenuItem {
|
|
|
24
24
|
* Props for the NavbarDropdownMenu component
|
|
25
25
|
*/
|
|
26
26
|
interface NavbarDropdownMenuProps {
|
|
27
|
+
/**
|
|
28
|
+
* Logo configuration
|
|
29
|
+
*/
|
|
30
|
+
logo?: LogoConfig;
|
|
31
|
+
/**
|
|
32
|
+
* Navigation menu items
|
|
33
|
+
*/
|
|
34
|
+
menu?: MenuItem[];
|
|
35
|
+
/**
|
|
36
|
+
* Authentication action configurations
|
|
37
|
+
*/
|
|
38
|
+
authActions?: ActionConfig[];
|
|
39
|
+
}
|
|
40
|
+
interface NavbarDropdownMenuRuntimeProps {
|
|
27
41
|
/**
|
|
28
42
|
* Additional CSS classes for the section
|
|
29
43
|
*/
|
|
@@ -110,6 +124,6 @@ interface NavbarDropdownMenuProps {
|
|
|
110
124
|
* menu with accordion navigation on mobile. Includes login and signup call-to-action buttons.
|
|
111
125
|
* The dropdown menus display icons and descriptions for each submenu item.
|
|
112
126
|
*/
|
|
113
|
-
declare const NavbarDropdownMenu: ({ sectionId, logo, logoSlot, logoClassName, menu, menuSlot, authActions, authActionsSlot, className, containerClassName, desktopNavClassName, mobileNavClassName, navigationMenuClassName, actionsClassName, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }:
|
|
127
|
+
declare const NavbarDropdownMenu: ({ sectionId, logo, logoSlot, logoClassName, menu, menuSlot, authActions, authActionsSlot, className, containerClassName, desktopNavClassName, mobileNavClassName, navigationMenuClassName, actionsClassName, layoutVariant, background, spacing, pattern, patternOpacity, optixFlowConfig, }: NavbarDropdownMenuRuntimeProps) => react_jsx_runtime.JSX.Element;
|
|
114
128
|
|
|
115
129
|
export { NavbarDropdownMenu, type NavbarDropdownMenuProps };
|