@nextworks/blocks-sections 0.1.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/README.md +44 -0
  2. package/dist/components/About.d.ts +93 -0
  3. package/dist/components/About.d.ts.map +1 -0
  4. package/dist/components/About.js +129 -0
  5. package/dist/components/About.jsx +153 -0
  6. package/dist/components/CTA.d.ts +118 -0
  7. package/dist/components/CTA.d.ts.map +1 -0
  8. package/dist/components/CTA.js +58 -0
  9. package/dist/components/CTA.jsx +88 -0
  10. package/dist/components/Contact.d.ts +111 -0
  11. package/dist/components/Contact.d.ts.map +1 -0
  12. package/dist/components/Contact.js +82 -0
  13. package/dist/components/Contact.jsx +107 -0
  14. package/dist/components/FAQ.d.ts +89 -0
  15. package/dist/components/FAQ.d.ts.map +1 -0
  16. package/dist/components/FAQ.js +78 -0
  17. package/dist/components/FAQ.jsx +98 -0
  18. package/dist/components/Features.d.ts +111 -0
  19. package/dist/components/Features.d.ts.map +1 -0
  20. package/dist/components/Features.js +109 -0
  21. package/dist/components/Features.jsx +122 -0
  22. package/dist/components/Footer.d.ts +120 -0
  23. package/dist/components/Footer.d.ts.map +1 -0
  24. package/dist/components/Footer.js +101 -0
  25. package/dist/components/Footer.jsx +138 -0
  26. package/dist/components/HeroMotion.d.ts +107 -0
  27. package/dist/components/HeroMotion.d.ts.map +1 -0
  28. package/dist/components/HeroMotion.js +55 -0
  29. package/dist/components/HeroMotion.jsx +95 -0
  30. package/dist/components/HeroOverlay.d.ts +116 -0
  31. package/dist/components/HeroOverlay.d.ts.map +1 -0
  32. package/dist/components/HeroOverlay.js +111 -0
  33. package/dist/components/HeroOverlay.jsx +141 -0
  34. package/dist/components/HeroSplit.d.ts +98 -0
  35. package/dist/components/HeroSplit.d.ts.map +1 -0
  36. package/dist/components/HeroSplit.js +100 -0
  37. package/dist/components/HeroSplit.jsx +134 -0
  38. package/dist/components/Navbar.d.ts +112 -0
  39. package/dist/components/Navbar.d.ts.map +1 -0
  40. package/dist/components/Navbar.js +80 -0
  41. package/dist/components/Navbar.jsx +127 -0
  42. package/dist/components/Newsletter.d.ts +59 -0
  43. package/dist/components/Newsletter.d.ts.map +1 -0
  44. package/dist/components/Newsletter.js +34 -0
  45. package/dist/components/Newsletter.jsx +54 -0
  46. package/dist/components/PortfolioSimple.d.ts +137 -0
  47. package/dist/components/PortfolioSimple.d.ts.map +1 -0
  48. package/dist/components/PortfolioSimple.js +180 -0
  49. package/dist/components/PortfolioSimple.jsx +259 -0
  50. package/dist/components/Pricing.d.ts +96 -0
  51. package/dist/components/Pricing.d.ts.map +1 -0
  52. package/dist/components/Pricing.js +91 -0
  53. package/dist/components/Pricing.jsx +103 -0
  54. package/dist/components/ProcessTimeline.d.ts +121 -0
  55. package/dist/components/ProcessTimeline.d.ts.map +1 -0
  56. package/dist/components/ProcessTimeline.js +88 -0
  57. package/dist/components/ProcessTimeline.jsx +151 -0
  58. package/dist/components/ServicesGrid.d.ts +64 -0
  59. package/dist/components/ServicesGrid.d.ts.map +1 -0
  60. package/dist/components/ServicesGrid.js +72 -0
  61. package/dist/components/ServicesGrid.jsx +97 -0
  62. package/dist/components/Team.d.ts +115 -0
  63. package/dist/components/Team.d.ts.map +1 -0
  64. package/dist/components/Team.js +107 -0
  65. package/dist/components/Team.jsx +135 -0
  66. package/dist/components/Testimonials.d.ts +81 -0
  67. package/dist/components/Testimonials.d.ts.map +1 -0
  68. package/dist/components/Testimonials.js +46 -0
  69. package/dist/components/Testimonials.jsx +58 -0
  70. package/dist/components/TrustBadges.d.ts +80 -0
  71. package/dist/components/TrustBadges.d.ts.map +1 -0
  72. package/dist/components/TrustBadges.js +46 -0
  73. package/dist/components/TrustBadges.jsx +64 -0
  74. package/dist/components/index.d.ts +21 -0
  75. package/dist/components/index.d.ts.map +1 -0
  76. package/dist/components/index.js +18 -0
  77. package/dist/index.d.ts +2 -0
  78. package/dist/index.d.ts.map +1 -0
  79. package/dist/index.js +1 -0
  80. package/package.json +26 -0
@@ -0,0 +1,80 @@
1
+ import React from "react";
2
+ /**
3
+ * A single trust badge (stat or certification).
4
+ * @public
5
+ */
6
+ export interface TrustBadgeData {
7
+ /** Main badge text (e.g., "99.9% Uptime") */
8
+ badgeText: string;
9
+ /** Optional short descriptor above/below the text */
10
+ badgeDescription?: string;
11
+ /** Optional icon/emoji representation */
12
+ badgeIcon?: string;
13
+ }
14
+ /**
15
+ * Props for the TrustBadges section component.
16
+ *
17
+ * @remarks
18
+ * - Layout: choose horizontal row or vertical stack via layout.
19
+ * - Styling: slot-style overrides are merged after defaults via cn().
20
+ * - Motion: enableMotion toggles hover scale.
21
+ */
22
+ export interface TrustBadgesProps {
23
+ /** Optional id on root. @defaultValue "trust-badges" */
24
+ id?: string;
25
+ /** Root className merged into section slot */
26
+ className?: string;
27
+ /** Badges to display. @defaultValue defaultTrustBadgeData */
28
+ badges?: TrustBadgeData[];
29
+ /** Optional heading above badges */
30
+ trustBadgesSectionHeader?: string;
31
+ /** Slot-style overrides */
32
+ section?: {
33
+ className?: string;
34
+ };
35
+ container?: {
36
+ className?: string;
37
+ };
38
+ header?: {
39
+ className?: string;
40
+ };
41
+ heading?: {
42
+ className?: string;
43
+ };
44
+ badgesContainer?: {
45
+ className?: string;
46
+ };
47
+ badge?: {
48
+ className?: string;
49
+ };
50
+ badgeContent?: {
51
+ className?: string;
52
+ };
53
+ icon?: {
54
+ className?: string;
55
+ };
56
+ description?: {
57
+ className?: string;
58
+ };
59
+ text?: {
60
+ className?: string;
61
+ };
62
+ /** Layout orientation. @defaultValue "horizontal" */
63
+ layout?: "horizontal" | "vertical";
64
+ /** When false, disables hover scale */
65
+ enableMotion?: boolean;
66
+ /** ARIA label for the section. @defaultValue "Trust badges section" */
67
+ ariaLabel?: string;
68
+ }
69
+ /**
70
+ * Compact section to showcase trust signals like usage stats and compliance.
71
+ *
72
+ * @remarks
73
+ * - Horizontal by default; switch to vertical with layout="vertical".
74
+ * - Hover motion can be disabled via enableMotion.
75
+ *
76
+ * @example
77
+ * <TrustBadges badges={[{ badgeText: 'SOC 2', badgeDescription: 'Security', badgeIcon: '🔒' }]} />
78
+ */
79
+ export declare function TrustBadges({ id, className, badges, trustBadgesSectionHeader, section, container, header, heading, badgesContainer, badge, badgeContent, icon, description, text, layout, enableMotion, ariaLabel, }: TrustBadgesProps): React.JSX.Element;
80
+ //# sourceMappingURL=TrustBadges.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TrustBadges.d.ts","sourceRoot":"","sources":["../../src/components/TrustBadges.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,qDAAqD;IACrD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,yCAAyC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,gBAAgB;IAC/B,wDAAwD;IACxD,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,8CAA8C;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,6DAA6D;IAC7D,MAAM,CAAC,EAAE,cAAc,EAAE,CAAC;IAC1B,oCAAoC;IACpC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAElC,2BAA2B;IAC3B,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACjC,SAAS,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACnC,MAAM,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAChC,OAAO,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACjC,eAAe,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACzC,KAAK,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/B,YAAY,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9B,WAAW,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACrC,IAAI,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAE9B,qDAAqD;IACrD,MAAM,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACnC,uCAAuC;IACvC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,uEAAuE;IACvE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAoBD;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,EAC1B,EAAE,EACF,SAAS,EACT,MAA8B,EAC9B,wBAAwB,EACxB,OAA6C,EAC7C,SAA8C,EAC9C,MAA0C,EAC1C,OAEC,EACD,eAGC,EACD,KAGC,EACD,YAAoE,EACpE,IAAqC,EACrC,WAGC,EACD,IAEC,EACD,MAAqB,EACrB,YAAmB,EACnB,SAAkC,GACnC,EAAE,gBAAgB,qBA6ClB"}
@@ -0,0 +1,46 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { cn } from "@nextworks/blocks-core";
4
+ const defaultTrustBadgeData = [
5
+ {
6
+ badgeText: "10,000+ businesses",
7
+ badgeDescription: "Trusted by",
8
+ badgeIcon: "📊",
9
+ },
10
+ {
11
+ badgeText: "SOC 2 Compliant",
12
+ badgeDescription: "Enterprise security",
13
+ badgeIcon: "🔒",
14
+ },
15
+ {
16
+ badgeText: "99.9% Uptime",
17
+ badgeDescription: "Reliable service",
18
+ badgeIcon: "âš¡",
19
+ },
20
+ ];
21
+ /**
22
+ * Compact section to showcase trust signals like usage stats and compliance.
23
+ *
24
+ * @remarks
25
+ * - Horizontal by default; switch to vertical with layout="vertical".
26
+ * - Hover motion can be disabled via enableMotion.
27
+ *
28
+ * @example
29
+ * <TrustBadges badges={[{ badgeText: 'SOC 2', badgeDescription: 'Security', badgeIcon: '🔒' }]} />
30
+ */
31
+ export function TrustBadges({ id, className, badges = defaultTrustBadgeData, trustBadgesSectionHeader, section = { className: "py-8 px-6 bg-muted" }, container = { className: "max-w-7xl mx-auto" }, header = { className: "text-center mb-6" }, heading = {
32
+ className: "text-xl font-semibold text-foreground text-[var(--heading-fg)]",
33
+ }, badgesContainer = {
34
+ className: "flex flex-col md:flex-row justify-center items-center gap-8 flex-wrap",
35
+ }, badge = {
36
+ className: "flex flex-col items-center text-center min-w-[200px] transition-all duration-300 ease-in-out hover:scale-[1.02]",
37
+ }, badgeContent = { className: "flex flex-col items-center space-y-2" }, icon = { className: "text-2xl mb-2" }, description = {
38
+ className: "text-sm font-medium text-muted-foreground text-[var(--card-muted-fg)]",
39
+ }, text = {
40
+ className: "text-lg font-bold text-foreground text-[var(--card-fg)]",
41
+ }, layout = "horizontal", enableMotion = true, ariaLabel = "Trust badges section", }) {
42
+ const containerClasses = layout === "vertical"
43
+ ? "flex flex-col justify-center items-center gap-8"
44
+ : badgesContainer.className;
45
+ return (_jsx("section", { id: id || "trust-badges", className: cn(section.className, className), "aria-label": ariaLabel, children: _jsxs("div", { className: container.className, children: [trustBadgesSectionHeader && (_jsx("div", { className: header.className, children: _jsx("h2", { className: heading.className, children: trustBadgesSectionHeader }) })), _jsx("div", { className: containerClasses, children: badges.map((badgeData, index) => (_jsx("div", { className: cn(badge.className, !enableMotion && "transition-none hover:!scale-100"), children: _jsxs("div", { className: badgeContent.className, children: [badgeData.badgeIcon && (_jsx("div", { className: icon.className, children: badgeData.badgeIcon })), badgeData.badgeDescription && (_jsx("p", { className: description.className, children: badgeData.badgeDescription })), _jsx("p", { className: text.className, children: badgeData.badgeText })] }) }, index))) })] }) }));
46
+ }
@@ -0,0 +1,64 @@
1
+ "use client";
2
+ import React from "react";
3
+ import { cn } from "@nextworks/blocks-core";
4
+ const defaultTrustBadgeData = [
5
+ {
6
+ badgeText: "10,000+ businesses",
7
+ badgeDescription: "Trusted by",
8
+ badgeIcon: "📊",
9
+ },
10
+ {
11
+ badgeText: "SOC 2 Compliant",
12
+ badgeDescription: "Enterprise security",
13
+ badgeIcon: "🔒",
14
+ },
15
+ {
16
+ badgeText: "99.9% Uptime",
17
+ badgeDescription: "Reliable service",
18
+ badgeIcon: "âš¡",
19
+ },
20
+ ];
21
+ /**
22
+ * Compact section to showcase trust signals like usage stats and compliance.
23
+ *
24
+ * @remarks
25
+ * - Horizontal by default; switch to vertical with layout="vertical".
26
+ * - Hover motion can be disabled via enableMotion.
27
+ *
28
+ * @example
29
+ * <TrustBadges badges={[{ badgeText: 'SOC 2', badgeDescription: 'Security', badgeIcon: '🔒' }]} />
30
+ */
31
+ export function TrustBadges({ id, className, badges = defaultTrustBadgeData, trustBadgesSectionHeader, section = { className: "py-8 px-6 bg-muted" }, container = { className: "max-w-7xl mx-auto" }, header = { className: "text-center mb-6" }, heading = {
32
+ className: "text-xl font-semibold text-foreground text-[var(--heading-fg)]",
33
+ }, badgesContainer = {
34
+ className: "flex flex-col md:flex-row justify-center items-center gap-8 flex-wrap",
35
+ }, badge = {
36
+ className: "flex flex-col items-center text-center min-w-[200px] transition-all duration-300 ease-in-out hover:scale-[1.02]",
37
+ }, badgeContent = { className: "flex flex-col items-center space-y-2" }, icon = { className: "text-2xl mb-2" }, description = {
38
+ className: "text-sm font-medium text-muted-foreground text-[var(--card-muted-fg)]",
39
+ }, text = {
40
+ className: "text-lg font-bold text-foreground text-[var(--card-fg)]",
41
+ }, layout = "horizontal", enableMotion = true, ariaLabel = "Trust badges section", }) {
42
+ const containerClasses = layout === "vertical"
43
+ ? "flex flex-col justify-center items-center gap-8"
44
+ : badgesContainer.className;
45
+ return (<section id={id || "trust-badges"} className={cn(section.className, className)} aria-label={ariaLabel}>
46
+ <div className={container.className}>
47
+ {trustBadgesSectionHeader && (<div className={header.className}>
48
+ <h2 className={heading.className}>{trustBadgesSectionHeader}</h2>
49
+ </div>)}
50
+
51
+ <div className={containerClasses}>
52
+ {badges.map((badgeData, index) => (<div key={index} className={cn(badge.className, !enableMotion && "transition-none hover:!scale-100")}>
53
+ <div className={badgeContent.className}>
54
+ {badgeData.badgeIcon && (<div className={icon.className}>{badgeData.badgeIcon}</div>)}
55
+ {badgeData.badgeDescription && (<p className={description.className}>
56
+ {badgeData.badgeDescription}
57
+ </p>)}
58
+ <p className={text.className}>{badgeData.badgeText}</p>
59
+ </div>
60
+ </div>))}
61
+ </div>
62
+ </div>
63
+ </section>);
64
+ }
@@ -0,0 +1,21 @@
1
+ export type { AboutStatData } from "./About";
2
+ export { About } from "./About";
3
+ export * from "./Contact";
4
+ export * from "./CTA";
5
+ export * from "./FAQ";
6
+ export * from "./Features";
7
+ export type { FooterProps, NavLinkItem, NavLinkGroup, SocialLink, } from "./Footer";
8
+ export { Footer } from "./Footer";
9
+ export * from "./HeroMotion";
10
+ export * from "./HeroOverlay";
11
+ export * from "./HeroSplit";
12
+ export * from "./Navbar";
13
+ export * from "./Newsletter";
14
+ export * from "./PortfolioSimple";
15
+ export * from "./Pricing";
16
+ export * from "./ProcessTimeline";
17
+ export * from "./ServicesGrid";
18
+ export * from "./Team";
19
+ export * from "./Testimonials";
20
+ export * from "./TrustBadges";
21
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,OAAO,CAAC;AACtB,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC;AAC3B,YAAY,EACV,WAAW,EACX,WAAW,EACX,YAAY,EACZ,UAAU,GACX,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,QAAQ,CAAC;AACvB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC"}
@@ -0,0 +1,18 @@
1
+ export { About } from "./About";
2
+ export * from "./Contact";
3
+ export * from "./CTA";
4
+ export * from "./FAQ";
5
+ export * from "./Features";
6
+ export { Footer } from "./Footer";
7
+ export * from "./HeroMotion";
8
+ export * from "./HeroOverlay";
9
+ export * from "./HeroSplit";
10
+ export * from "./Navbar";
11
+ export * from "./Newsletter";
12
+ export * from "./PortfolioSimple";
13
+ export * from "./Pricing";
14
+ export * from "./ProcessTimeline";
15
+ export * from "./ServicesGrid";
16
+ export * from "./Team";
17
+ export * from "./Testimonials";
18
+ export * from "./TrustBadges";
@@ -0,0 +1,2 @@
1
+ export * from "./components";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1 @@
1
+ export * from "./components";
package/package.json ADDED
@@ -0,0 +1,26 @@
1
+ {
2
+ "name": "@nextworks/blocks-sections",
3
+ "version": "0.1.0-alpha.0",
4
+ "private": false,
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "files": [
8
+ "dist",
9
+ "package.json",
10
+ "README.md"
11
+ ],
12
+ "publishConfig": {
13
+ "access": "public"
14
+ },
15
+ "scripts": {
16
+ "build": "tsc -p tsconfig.json"
17
+ },
18
+ "dependencies": {
19
+ "@nextworks/blocks-core": "0.1.0-alpha.0"
20
+ },
21
+ "peerDependencies": {
22
+ "react": "^19.0.0",
23
+ "react-dom": "^19.0.0",
24
+ "next": "^15.0.0 || ^16.0.0"
25
+ }
26
+ }