@opensite/ui 3.2.5 → 3.2.7
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/about-developer-story.cjs +7 -1
- package/dist/about-developer-story.js +7 -1
- package/dist/badge.d.cts +1 -1
- package/dist/badge.d.ts +1 -1
- package/dist/hero-overlay-cta-grid.cjs +82 -19
- package/dist/hero-overlay-cta-grid.d.cts +8 -13
- package/dist/hero-overlay-cta-grid.d.ts +8 -13
- package/dist/hero-overlay-cta-grid.js +83 -20
- package/dist/process-expandable-timeline.cjs +1 -2
- package/dist/process-expandable-timeline.js +1 -2
- package/dist/process-icon-timeline.cjs +9 -99
- package/dist/process-icon-timeline.d.cts +3 -3
- package/dist/process-icon-timeline.d.ts +3 -3
- package/dist/process-icon-timeline.js +9 -99
- package/dist/process-mission-principles.cjs +5 -67
- package/dist/process-mission-principles.d.cts +3 -3
- package/dist/process-mission-principles.d.ts +3 -3
- package/dist/process-mission-principles.js +5 -67
- package/dist/process-numbered-services.cjs +22 -116
- package/dist/process-numbered-services.d.cts +3 -3
- package/dist/process-numbered-services.d.ts +3 -3
- package/dist/process-numbered-services.js +22 -116
- package/dist/process-scroll-image.cjs +20 -85
- package/dist/process-scroll-image.d.cts +3 -11
- package/dist/process-scroll-image.d.ts +3 -11
- package/dist/process-scroll-image.js +18 -83
- package/dist/process-steps-grid.cjs +31 -99
- package/dist/process-steps-grid.d.cts +3 -3
- package/dist/process-steps-grid.d.ts +3 -3
- package/dist/process-steps-grid.js +31 -99
- package/dist/process-sticky-steps.cjs +6 -35
- package/dist/process-sticky-steps.d.cts +5 -1
- package/dist/process-sticky-steps.d.ts +5 -1
- package/dist/process-sticky-steps.js +6 -35
- package/dist/registry.cjs +107 -140
- package/dist/registry.js +107 -140
- package/dist/social-link-icon.d.cts +1 -1
- package/dist/social-link-icon.d.ts +1 -1
- package/package.json +3 -3
|
@@ -113,15 +113,15 @@ interface ProcessIconTimelineProps {
|
|
|
113
113
|
*/
|
|
114
114
|
optixFlowConfig?: OptixFlowConfig;
|
|
115
115
|
/**
|
|
116
|
-
*
|
|
116
|
+
* Additional CSS classes for the container
|
|
117
117
|
*/
|
|
118
|
-
|
|
118
|
+
containerClassName?: string;
|
|
119
119
|
/** Optional Section ID */
|
|
120
120
|
sectionId?: string;
|
|
121
121
|
}
|
|
122
122
|
/**
|
|
123
123
|
* ProcessIconTimeline - A process section with icon-based timeline steps.
|
|
124
124
|
*/
|
|
125
|
-
declare function ProcessIconTimeline({ sectionId, heading, description, steps, stepsSlot, className, contentClassName, headerClassName, headingClassName, descriptionClassName, timelineClassName, timelineLineClassName, stepCardClassName, stepBadgeClassName, background, spacing, pattern, patternOpacity,
|
|
125
|
+
declare function ProcessIconTimeline({ sectionId, heading, description, steps, stepsSlot, className, contentClassName, headerClassName, headingClassName, descriptionClassName, timelineClassName, timelineLineClassName, stepCardClassName, stepBadgeClassName, background, spacing, pattern, patternOpacity, containerClassName, }: ProcessIconTimelineProps): React.JSX.Element;
|
|
126
126
|
|
|
127
127
|
export { ProcessIconTimeline, type ProcessIconTimelineProps };
|
|
@@ -10,84 +10,6 @@ import { jsx, jsxs } from 'react/jsx-runtime';
|
|
|
10
10
|
function cn(...inputs) {
|
|
11
11
|
return twMerge(clsx(inputs));
|
|
12
12
|
}
|
|
13
|
-
function getNestedCardBg(parentBg, variant = "muted", options) {
|
|
14
|
-
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
15
|
-
if (isDark) {
|
|
16
|
-
switch (variant) {
|
|
17
|
-
case "muted":
|
|
18
|
-
return "bg-background";
|
|
19
|
-
case "card":
|
|
20
|
-
return "bg-card";
|
|
21
|
-
case "accent":
|
|
22
|
-
return "bg-accent";
|
|
23
|
-
case "subtle":
|
|
24
|
-
return "bg-background/50";
|
|
25
|
-
}
|
|
26
|
-
} else {
|
|
27
|
-
switch (variant) {
|
|
28
|
-
case "muted":
|
|
29
|
-
return "bg-muted";
|
|
30
|
-
case "card":
|
|
31
|
-
return "bg-card";
|
|
32
|
-
case "accent":
|
|
33
|
-
return "bg-accent";
|
|
34
|
-
case "subtle":
|
|
35
|
-
return "bg-muted/50";
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
function getNestedCardTextColor(parentBg, options) {
|
|
40
|
-
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
41
|
-
return isDark ? "text-foreground" : "";
|
|
42
|
-
}
|
|
43
|
-
function getTextColor(parentBg, variant = "default", options) {
|
|
44
|
-
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
45
|
-
if (isDark) {
|
|
46
|
-
switch (variant) {
|
|
47
|
-
case "default":
|
|
48
|
-
return "text-foreground";
|
|
49
|
-
case "muted":
|
|
50
|
-
return "text-foreground/80";
|
|
51
|
-
case "subtle":
|
|
52
|
-
return "text-foreground/60";
|
|
53
|
-
case "accent":
|
|
54
|
-
return "text-accent-foreground";
|
|
55
|
-
}
|
|
56
|
-
} else {
|
|
57
|
-
switch (variant) {
|
|
58
|
-
case "default":
|
|
59
|
-
return "text-foreground";
|
|
60
|
-
case "muted":
|
|
61
|
-
return "text-muted-foreground";
|
|
62
|
-
case "subtle":
|
|
63
|
-
return "text-muted-foreground/70";
|
|
64
|
-
case "accent":
|
|
65
|
-
return "text-primary";
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
function getBorderColor(parentBg, variant = "default", options) {
|
|
70
|
-
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
71
|
-
if (isDark) {
|
|
72
|
-
switch (variant) {
|
|
73
|
-
case "default":
|
|
74
|
-
return "border-foreground/20";
|
|
75
|
-
case "muted":
|
|
76
|
-
return "border-foreground/10";
|
|
77
|
-
case "accent":
|
|
78
|
-
return "border-accent-foreground";
|
|
79
|
-
}
|
|
80
|
-
} else {
|
|
81
|
-
switch (variant) {
|
|
82
|
-
case "default":
|
|
83
|
-
return "border-border";
|
|
84
|
-
case "muted":
|
|
85
|
-
return "border-muted";
|
|
86
|
-
case "accent":
|
|
87
|
-
return "border-primary";
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
13
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
92
14
|
var DynamicIcon = React.memo(function DynamicIcon2({
|
|
93
15
|
apiKey,
|
|
@@ -491,10 +413,9 @@ function ProcessIconTimeline({
|
|
|
491
413
|
spacing,
|
|
492
414
|
pattern,
|
|
493
415
|
patternOpacity,
|
|
494
|
-
|
|
495
|
-
title
|
|
416
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8"
|
|
496
417
|
}) {
|
|
497
|
-
const resolvedHeading =
|
|
418
|
+
const resolvedHeading = heading;
|
|
498
419
|
const renderSteps = useMemo(() => {
|
|
499
420
|
if (stepsSlot) return stepsSlot;
|
|
500
421
|
if (!steps?.length) return null;
|
|
@@ -530,14 +451,13 @@ function ProcessIconTimeline({
|
|
|
530
451
|
{
|
|
531
452
|
className: cn(
|
|
532
453
|
"rounded-lg border p-6 shadow-sm",
|
|
533
|
-
|
|
534
|
-
getNestedCardTextColor(background),
|
|
454
|
+
"bg-card text-card-foreground",
|
|
535
455
|
index % 2 === 0 ? "lg:mr-12" : "lg:ml-12",
|
|
536
456
|
stepCardClassName
|
|
537
457
|
),
|
|
538
458
|
children: [
|
|
539
459
|
step.title && (typeof step.title === "string" ? /* @__PURE__ */ jsx("h3", { className: "mb-2 text-xl font-semibold tracking-tight", children: step.title }) : /* @__PURE__ */ jsx("div", { className: "mb-2 text-xl font-semibold tracking-tight", children: step.title })),
|
|
540
|
-
step.description && (typeof step.description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("mb-4"
|
|
460
|
+
step.description && (typeof step.description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("mb-4"), children: step.description }) : /* @__PURE__ */ jsx("div", { className: cn("mb-4"), children: step.description })),
|
|
541
461
|
step.highlights?.length ? /* @__PURE__ */ jsx(
|
|
542
462
|
"div",
|
|
543
463
|
{
|
|
@@ -550,8 +470,7 @@ function ProcessIconTimeline({
|
|
|
550
470
|
{
|
|
551
471
|
className: cn(
|
|
552
472
|
"rounded-full px-3 py-1 text-xs font-medium",
|
|
553
|
-
|
|
554
|
-
getNestedCardTextColor(background)
|
|
473
|
+
"bg-primary text-primary-foreground"
|
|
555
474
|
),
|
|
556
475
|
children: highlight
|
|
557
476
|
},
|
|
@@ -579,6 +498,7 @@ function ProcessIconTimeline({
|
|
|
579
498
|
className,
|
|
580
499
|
pattern,
|
|
581
500
|
patternOpacity,
|
|
501
|
+
containerClassName,
|
|
582
502
|
children: /* @__PURE__ */ jsxs("div", { className: contentClassName, children: [
|
|
583
503
|
/* @__PURE__ */ jsxs("div", { className: cn("mb-16 max-w-2xl", headerClassName), children: [
|
|
584
504
|
resolvedHeading && (typeof resolvedHeading === "string" ? /* @__PURE__ */ jsx(
|
|
@@ -590,18 +510,8 @@ function ProcessIconTimeline({
|
|
|
590
510
|
),
|
|
591
511
|
children: resolvedHeading
|
|
592
512
|
}
|
|
593
|
-
) :
|
|
594
|
-
description && (typeof description === "string" ? /* @__PURE__ */ jsx(
|
|
595
|
-
"p",
|
|
596
|
-
{
|
|
597
|
-
className: cn(
|
|
598
|
-
"text-lg",
|
|
599
|
-
getTextColor(background, "muted"),
|
|
600
|
-
descriptionClassName
|
|
601
|
-
),
|
|
602
|
-
children: description
|
|
603
|
-
}
|
|
604
|
-
) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description }))
|
|
513
|
+
) : resolvedHeading),
|
|
514
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-lg", descriptionClassName), children: description }) : description)
|
|
605
515
|
] }),
|
|
606
516
|
/* @__PURE__ */ jsxs("div", { className: cn("relative", timelineClassName), children: [
|
|
607
517
|
/* @__PURE__ */ jsx(
|
|
@@ -609,7 +519,7 @@ function ProcessIconTimeline({
|
|
|
609
519
|
{
|
|
610
520
|
className: cn(
|
|
611
521
|
"absolute left-6 top-0 bottom-0 w-px lg:left-1/2 lg:-translate-x-1/2",
|
|
612
|
-
|
|
522
|
+
"border-border border",
|
|
613
523
|
timelineLineClassName
|
|
614
524
|
)
|
|
615
525
|
}
|
|
@@ -14,66 +14,6 @@ var React__default = /*#__PURE__*/_interopDefault(React);
|
|
|
14
14
|
function cn(...inputs) {
|
|
15
15
|
return tailwindMerge.twMerge(clsx.clsx(inputs));
|
|
16
16
|
}
|
|
17
|
-
function getNestedCardBg(parentBg, variant = "muted", options) {
|
|
18
|
-
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
19
|
-
if (isDark) {
|
|
20
|
-
switch (variant) {
|
|
21
|
-
case "muted":
|
|
22
|
-
return "bg-background";
|
|
23
|
-
case "card":
|
|
24
|
-
return "bg-card";
|
|
25
|
-
case "accent":
|
|
26
|
-
return "bg-accent";
|
|
27
|
-
case "subtle":
|
|
28
|
-
return "bg-background/50";
|
|
29
|
-
}
|
|
30
|
-
} else {
|
|
31
|
-
switch (variant) {
|
|
32
|
-
case "muted":
|
|
33
|
-
return "bg-muted";
|
|
34
|
-
case "card":
|
|
35
|
-
return "bg-card";
|
|
36
|
-
case "accent":
|
|
37
|
-
return "bg-accent";
|
|
38
|
-
case "subtle":
|
|
39
|
-
return "bg-muted/50";
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
function getNestedCardTextColor(parentBg, options) {
|
|
44
|
-
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
45
|
-
return isDark ? "text-foreground" : "";
|
|
46
|
-
}
|
|
47
|
-
function getTextColor(parentBg, variant = "default", options) {
|
|
48
|
-
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
49
|
-
if (isDark) {
|
|
50
|
-
switch (variant) {
|
|
51
|
-
case "default":
|
|
52
|
-
return "text-foreground";
|
|
53
|
-
case "muted":
|
|
54
|
-
return "text-foreground/80";
|
|
55
|
-
case "subtle":
|
|
56
|
-
return "text-foreground/60";
|
|
57
|
-
case "accent":
|
|
58
|
-
return "text-accent-foreground";
|
|
59
|
-
}
|
|
60
|
-
} else {
|
|
61
|
-
switch (variant) {
|
|
62
|
-
case "default":
|
|
63
|
-
return "text-foreground";
|
|
64
|
-
case "muted":
|
|
65
|
-
return "text-muted-foreground";
|
|
66
|
-
case "subtle":
|
|
67
|
-
return "text-muted-foreground/70";
|
|
68
|
-
case "accent":
|
|
69
|
-
return "text-primary";
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
function getAccentColor(parentBg, options) {
|
|
74
|
-
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
75
|
-
return isDark ? "text-accent-foreground" : "text-primary";
|
|
76
|
-
}
|
|
77
17
|
var maxWidthStyles = {
|
|
78
18
|
sm: "max-w-screen-sm",
|
|
79
19
|
md: "max-w-screen-md",
|
|
@@ -473,10 +413,9 @@ function ProcessMissionPrinciples({
|
|
|
473
413
|
spacing,
|
|
474
414
|
pattern,
|
|
475
415
|
patternOpacity,
|
|
476
|
-
|
|
477
|
-
missionTitle
|
|
416
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8"
|
|
478
417
|
}) {
|
|
479
|
-
const resolvedMissionHeading =
|
|
418
|
+
const resolvedMissionHeading = missionHeading;
|
|
480
419
|
const renderPrinciples = React.useMemo(() => {
|
|
481
420
|
if (principlesSlot) return principlesSlot;
|
|
482
421
|
if (!principles?.length) return null;
|
|
@@ -492,8 +431,7 @@ function ProcessMissionPrinciples({
|
|
|
492
431
|
{
|
|
493
432
|
className: cn(
|
|
494
433
|
"group relative rounded-lg border p-6 transition-shadow hover:shadow-md",
|
|
495
|
-
|
|
496
|
-
getNestedCardTextColor(background),
|
|
434
|
+
"bg-card text-card-foreground",
|
|
497
435
|
principleCardClassName,
|
|
498
436
|
principle.className
|
|
499
437
|
),
|
|
@@ -510,7 +448,7 @@ function ProcessMissionPrinciples({
|
|
|
510
448
|
),
|
|
511
449
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "pt-4", children: [
|
|
512
450
|
principle.title && (typeof principle.title === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-3 text-xl font-semibold tracking-tight", children: principle.title }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mb-3 text-xl font-semibold tracking-tight", children: principle.title })),
|
|
513
|
-
principle.description && (typeof principle.description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("leading-relaxed"
|
|
451
|
+
principle.description && (typeof principle.description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("leading-relaxed"), children: principle.description }) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn("leading-relaxed"), children: principle.description }))
|
|
514
452
|
] })
|
|
515
453
|
]
|
|
516
454
|
},
|
|
@@ -535,6 +473,7 @@ function ProcessMissionPrinciples({
|
|
|
535
473
|
className,
|
|
536
474
|
pattern,
|
|
537
475
|
patternOpacity,
|
|
476
|
+
containerClassName,
|
|
538
477
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: contentClassName, children: [
|
|
539
478
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("mb-20 max-w-3xl", missionClassName), children: [
|
|
540
479
|
missionLabel && (typeof missionLabel === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -542,7 +481,6 @@ function ProcessMissionPrinciples({
|
|
|
542
481
|
{
|
|
543
482
|
className: cn(
|
|
544
483
|
"mb-4 inline-block text-sm font-semibold uppercase tracking-wider",
|
|
545
|
-
getAccentColor(background),
|
|
546
484
|
missionLabelClassName
|
|
547
485
|
),
|
|
548
486
|
children: missionLabel
|
|
@@ -117,15 +117,15 @@ interface ProcessMissionPrinciplesProps {
|
|
|
117
117
|
*/
|
|
118
118
|
optixFlowConfig?: OptixFlowConfig;
|
|
119
119
|
/**
|
|
120
|
-
*
|
|
120
|
+
* Additional CSS classes for the container
|
|
121
121
|
*/
|
|
122
|
-
|
|
122
|
+
containerClassName?: string;
|
|
123
123
|
/** Optional Section ID */
|
|
124
124
|
sectionId?: string;
|
|
125
125
|
}
|
|
126
126
|
/**
|
|
127
127
|
* ProcessMissionPrinciples - A mission statement and principles section.
|
|
128
128
|
*/
|
|
129
|
-
declare function ProcessMissionPrinciples({ sectionId, missionLabel, missionHeading, missionDescription, principlesLabel, principles, principlesSlot, className, contentClassName, missionClassName, missionLabelClassName, missionHeadingClassName, missionDescriptionClassName, principlesSectionClassName, principlesLabelClassName, principlesGridClassName, principleCardClassName, principleBadgeClassName, background, spacing, pattern, patternOpacity,
|
|
129
|
+
declare function ProcessMissionPrinciples({ sectionId, missionLabel, missionHeading, missionDescription, principlesLabel, principles, principlesSlot, className, contentClassName, missionClassName, missionLabelClassName, missionHeadingClassName, missionDescriptionClassName, principlesSectionClassName, principlesLabelClassName, principlesGridClassName, principleCardClassName, principleBadgeClassName, background, spacing, pattern, patternOpacity, containerClassName, }: ProcessMissionPrinciplesProps): React.JSX.Element;
|
|
130
130
|
|
|
131
131
|
export { ProcessMissionPrinciples, type ProcessMissionPrinciplesProps };
|
|
@@ -117,15 +117,15 @@ interface ProcessMissionPrinciplesProps {
|
|
|
117
117
|
*/
|
|
118
118
|
optixFlowConfig?: OptixFlowConfig;
|
|
119
119
|
/**
|
|
120
|
-
*
|
|
120
|
+
* Additional CSS classes for the container
|
|
121
121
|
*/
|
|
122
|
-
|
|
122
|
+
containerClassName?: string;
|
|
123
123
|
/** Optional Section ID */
|
|
124
124
|
sectionId?: string;
|
|
125
125
|
}
|
|
126
126
|
/**
|
|
127
127
|
* ProcessMissionPrinciples - A mission statement and principles section.
|
|
128
128
|
*/
|
|
129
|
-
declare function ProcessMissionPrinciples({ sectionId, missionLabel, missionHeading, missionDescription, principlesLabel, principles, principlesSlot, className, contentClassName, missionClassName, missionLabelClassName, missionHeadingClassName, missionDescriptionClassName, principlesSectionClassName, principlesLabelClassName, principlesGridClassName, principleCardClassName, principleBadgeClassName, background, spacing, pattern, patternOpacity,
|
|
129
|
+
declare function ProcessMissionPrinciples({ sectionId, missionLabel, missionHeading, missionDescription, principlesLabel, principles, principlesSlot, className, contentClassName, missionClassName, missionLabelClassName, missionHeadingClassName, missionDescriptionClassName, principlesSectionClassName, principlesLabelClassName, principlesGridClassName, principleCardClassName, principleBadgeClassName, background, spacing, pattern, patternOpacity, containerClassName, }: ProcessMissionPrinciplesProps): React.JSX.Element;
|
|
130
130
|
|
|
131
131
|
export { ProcessMissionPrinciples, type ProcessMissionPrinciplesProps };
|
|
@@ -8,66 +8,6 @@ import { jsx, jsxs } from 'react/jsx-runtime';
|
|
|
8
8
|
function cn(...inputs) {
|
|
9
9
|
return twMerge(clsx(inputs));
|
|
10
10
|
}
|
|
11
|
-
function getNestedCardBg(parentBg, variant = "muted", options) {
|
|
12
|
-
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
13
|
-
if (isDark) {
|
|
14
|
-
switch (variant) {
|
|
15
|
-
case "muted":
|
|
16
|
-
return "bg-background";
|
|
17
|
-
case "card":
|
|
18
|
-
return "bg-card";
|
|
19
|
-
case "accent":
|
|
20
|
-
return "bg-accent";
|
|
21
|
-
case "subtle":
|
|
22
|
-
return "bg-background/50";
|
|
23
|
-
}
|
|
24
|
-
} else {
|
|
25
|
-
switch (variant) {
|
|
26
|
-
case "muted":
|
|
27
|
-
return "bg-muted";
|
|
28
|
-
case "card":
|
|
29
|
-
return "bg-card";
|
|
30
|
-
case "accent":
|
|
31
|
-
return "bg-accent";
|
|
32
|
-
case "subtle":
|
|
33
|
-
return "bg-muted/50";
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
function getNestedCardTextColor(parentBg, options) {
|
|
38
|
-
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
39
|
-
return isDark ? "text-foreground" : "";
|
|
40
|
-
}
|
|
41
|
-
function getTextColor(parentBg, variant = "default", options) {
|
|
42
|
-
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
43
|
-
if (isDark) {
|
|
44
|
-
switch (variant) {
|
|
45
|
-
case "default":
|
|
46
|
-
return "text-foreground";
|
|
47
|
-
case "muted":
|
|
48
|
-
return "text-foreground/80";
|
|
49
|
-
case "subtle":
|
|
50
|
-
return "text-foreground/60";
|
|
51
|
-
case "accent":
|
|
52
|
-
return "text-accent-foreground";
|
|
53
|
-
}
|
|
54
|
-
} else {
|
|
55
|
-
switch (variant) {
|
|
56
|
-
case "default":
|
|
57
|
-
return "text-foreground";
|
|
58
|
-
case "muted":
|
|
59
|
-
return "text-muted-foreground";
|
|
60
|
-
case "subtle":
|
|
61
|
-
return "text-muted-foreground/70";
|
|
62
|
-
case "accent":
|
|
63
|
-
return "text-primary";
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
function getAccentColor(parentBg, options) {
|
|
68
|
-
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
69
|
-
return isDark ? "text-accent-foreground" : "text-primary";
|
|
70
|
-
}
|
|
71
11
|
var maxWidthStyles = {
|
|
72
12
|
sm: "max-w-screen-sm",
|
|
73
13
|
md: "max-w-screen-md",
|
|
@@ -467,10 +407,9 @@ function ProcessMissionPrinciples({
|
|
|
467
407
|
spacing,
|
|
468
408
|
pattern,
|
|
469
409
|
patternOpacity,
|
|
470
|
-
|
|
471
|
-
missionTitle
|
|
410
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8"
|
|
472
411
|
}) {
|
|
473
|
-
const resolvedMissionHeading =
|
|
412
|
+
const resolvedMissionHeading = missionHeading;
|
|
474
413
|
const renderPrinciples = useMemo(() => {
|
|
475
414
|
if (principlesSlot) return principlesSlot;
|
|
476
415
|
if (!principles?.length) return null;
|
|
@@ -486,8 +425,7 @@ function ProcessMissionPrinciples({
|
|
|
486
425
|
{
|
|
487
426
|
className: cn(
|
|
488
427
|
"group relative rounded-lg border p-6 transition-shadow hover:shadow-md",
|
|
489
|
-
|
|
490
|
-
getNestedCardTextColor(background),
|
|
428
|
+
"bg-card text-card-foreground",
|
|
491
429
|
principleCardClassName,
|
|
492
430
|
principle.className
|
|
493
431
|
),
|
|
@@ -504,7 +442,7 @@ function ProcessMissionPrinciples({
|
|
|
504
442
|
),
|
|
505
443
|
/* @__PURE__ */ jsxs("div", { className: "pt-4", children: [
|
|
506
444
|
principle.title && (typeof principle.title === "string" ? /* @__PURE__ */ jsx("h3", { className: "mb-3 text-xl font-semibold tracking-tight", children: principle.title }) : /* @__PURE__ */ jsx("div", { className: "mb-3 text-xl font-semibold tracking-tight", children: principle.title })),
|
|
507
|
-
principle.description && (typeof principle.description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("leading-relaxed"
|
|
445
|
+
principle.description && (typeof principle.description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("leading-relaxed"), children: principle.description }) : /* @__PURE__ */ jsx("div", { className: cn("leading-relaxed"), children: principle.description }))
|
|
508
446
|
] })
|
|
509
447
|
]
|
|
510
448
|
},
|
|
@@ -529,6 +467,7 @@ function ProcessMissionPrinciples({
|
|
|
529
467
|
className,
|
|
530
468
|
pattern,
|
|
531
469
|
patternOpacity,
|
|
470
|
+
containerClassName,
|
|
532
471
|
children: /* @__PURE__ */ jsxs("div", { className: contentClassName, children: [
|
|
533
472
|
/* @__PURE__ */ jsxs("div", { className: cn("mb-20 max-w-3xl", missionClassName), children: [
|
|
534
473
|
missionLabel && (typeof missionLabel === "string" ? /* @__PURE__ */ jsx(
|
|
@@ -536,7 +475,6 @@ function ProcessMissionPrinciples({
|
|
|
536
475
|
{
|
|
537
476
|
className: cn(
|
|
538
477
|
"mb-4 inline-block text-sm font-semibold uppercase tracking-wider",
|
|
539
|
-
getAccentColor(background),
|
|
540
478
|
missionLabelClassName
|
|
541
479
|
),
|
|
542
480
|
children: missionLabel
|
|
@@ -32,88 +32,6 @@ var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
|
32
32
|
function cn(...inputs) {
|
|
33
33
|
return tailwindMerge.twMerge(clsx.clsx(inputs));
|
|
34
34
|
}
|
|
35
|
-
function getNestedCardBg(parentBg, variant = "muted", options) {
|
|
36
|
-
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
37
|
-
if (isDark) {
|
|
38
|
-
switch (variant) {
|
|
39
|
-
case "muted":
|
|
40
|
-
return "bg-background";
|
|
41
|
-
case "card":
|
|
42
|
-
return "bg-card";
|
|
43
|
-
case "accent":
|
|
44
|
-
return "bg-accent";
|
|
45
|
-
case "subtle":
|
|
46
|
-
return "bg-background/50";
|
|
47
|
-
}
|
|
48
|
-
} else {
|
|
49
|
-
switch (variant) {
|
|
50
|
-
case "muted":
|
|
51
|
-
return "bg-muted";
|
|
52
|
-
case "card":
|
|
53
|
-
return "bg-card";
|
|
54
|
-
case "accent":
|
|
55
|
-
return "bg-accent";
|
|
56
|
-
case "subtle":
|
|
57
|
-
return "bg-muted/50";
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
function getNestedCardTextColor(parentBg, options) {
|
|
62
|
-
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
63
|
-
return isDark ? "text-foreground" : "";
|
|
64
|
-
}
|
|
65
|
-
function getTextColor(parentBg, variant = "default", options) {
|
|
66
|
-
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
67
|
-
if (isDark) {
|
|
68
|
-
switch (variant) {
|
|
69
|
-
case "default":
|
|
70
|
-
return "text-foreground";
|
|
71
|
-
case "muted":
|
|
72
|
-
return "text-foreground/80";
|
|
73
|
-
case "subtle":
|
|
74
|
-
return "text-foreground/60";
|
|
75
|
-
case "accent":
|
|
76
|
-
return "text-accent-foreground";
|
|
77
|
-
}
|
|
78
|
-
} else {
|
|
79
|
-
switch (variant) {
|
|
80
|
-
case "default":
|
|
81
|
-
return "text-foreground";
|
|
82
|
-
case "muted":
|
|
83
|
-
return "text-muted-foreground";
|
|
84
|
-
case "subtle":
|
|
85
|
-
return "text-muted-foreground/70";
|
|
86
|
-
case "accent":
|
|
87
|
-
return "text-primary";
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
function getAccentColor(parentBg, options) {
|
|
92
|
-
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
93
|
-
return isDark ? "text-accent-foreground" : "text-primary";
|
|
94
|
-
}
|
|
95
|
-
function getBorderColor(parentBg, variant = "default", options) {
|
|
96
|
-
const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
|
|
97
|
-
if (isDark) {
|
|
98
|
-
switch (variant) {
|
|
99
|
-
case "default":
|
|
100
|
-
return "border-foreground/20";
|
|
101
|
-
case "muted":
|
|
102
|
-
return "border-foreground/10";
|
|
103
|
-
case "accent":
|
|
104
|
-
return "border-accent-foreground";
|
|
105
|
-
}
|
|
106
|
-
} else {
|
|
107
|
-
switch (variant) {
|
|
108
|
-
case "default":
|
|
109
|
-
return "border-border";
|
|
110
|
-
case "muted":
|
|
111
|
-
return "border-muted";
|
|
112
|
-
case "accent":
|
|
113
|
-
return "border-primary";
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
35
|
var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
|
|
118
36
|
var DynamicIcon = React__namespace.memo(function DynamicIcon2({
|
|
119
37
|
apiKey,
|
|
@@ -517,10 +435,9 @@ function ProcessNumberedServices({
|
|
|
517
435
|
spacing = "py-6 md:py-32",
|
|
518
436
|
pattern,
|
|
519
437
|
patternOpacity,
|
|
520
|
-
|
|
521
|
-
title
|
|
438
|
+
containerClassName = "px-6 sm:px-6 md:px-8 lg:px-8"
|
|
522
439
|
}) {
|
|
523
|
-
const resolvedHeading =
|
|
440
|
+
const resolvedHeading = heading;
|
|
524
441
|
const renderServiceAction = React.useMemo(() => {
|
|
525
442
|
return (service) => {
|
|
526
443
|
if (service.actionSlot) return service.actionSlot;
|
|
@@ -538,11 +455,19 @@ function ProcessNumberedServices({
|
|
|
538
455
|
className: actionClassName,
|
|
539
456
|
...pressableProps
|
|
540
457
|
} = action;
|
|
541
|
-
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
458
|
+
return /* @__PURE__ */ jsxRuntime.jsx(
|
|
459
|
+
pressable.Pressable,
|
|
460
|
+
{
|
|
461
|
+
asButton: true,
|
|
462
|
+
className: cn(actionClassName, "mt-4"),
|
|
463
|
+
...pressableProps,
|
|
464
|
+
children: children ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
|
|
465
|
+
icon,
|
|
466
|
+
label,
|
|
467
|
+
iconAfter && iconAfter
|
|
468
|
+
] })
|
|
469
|
+
}
|
|
470
|
+
);
|
|
546
471
|
};
|
|
547
472
|
}, []);
|
|
548
473
|
const renderServices = React.useMemo(() => {
|
|
@@ -561,9 +486,7 @@ function ProcessNumberedServices({
|
|
|
561
486
|
"div",
|
|
562
487
|
{
|
|
563
488
|
className: cn(
|
|
564
|
-
"flex size-16 items-center justify-center rounded-full border-2 text-xl font-bold transition-colors",
|
|
565
|
-
getBorderColor(background, "accent"),
|
|
566
|
-
getAccentColor(background),
|
|
489
|
+
"flex size-16 items-center justify-center rounded-full border-2 border-primary text-primary text-xl font-bold transition-colors",
|
|
567
490
|
"bg-primary/5 group-hover:bg-primary group-hover:text-primary-foreground",
|
|
568
491
|
serviceBadgeClassName
|
|
569
492
|
),
|
|
@@ -571,8 +494,8 @@ function ProcessNumberedServices({
|
|
|
571
494
|
}
|
|
572
495
|
) }),
|
|
573
496
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: "lg:col-span-4", children: [
|
|
574
|
-
service.title && (typeof service.title === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-3 text-2xl font-semibold tracking-tight", children: service.title }) :
|
|
575
|
-
service.description && (typeof service.description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("leading-relaxed"
|
|
497
|
+
service.title && (typeof service.title === "string" ? /* @__PURE__ */ jsxRuntime.jsx("h3", { className: "mb-3 text-2xl font-semibold tracking-tight", children: service.title }) : service.title),
|
|
498
|
+
service.description && (typeof service.description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("leading-relaxed"), children: service.description }) : service.description),
|
|
576
499
|
renderServiceAction(service)
|
|
577
500
|
] }),
|
|
578
501
|
/* @__PURE__ */ jsxRuntime.jsx("div", { className: "lg:col-span-7", children: service.capabilities?.length ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -587,18 +510,10 @@ function ProcessNumberedServices({
|
|
|
587
510
|
{
|
|
588
511
|
className: cn(
|
|
589
512
|
"flex items-center gap-3 rounded-lg px-4 py-3",
|
|
590
|
-
|
|
591
|
-
getNestedCardTextColor(background)
|
|
513
|
+
"bg-muted text-muted-foreground"
|
|
592
514
|
),
|
|
593
515
|
children: [
|
|
594
|
-
/* @__PURE__ */ jsxRuntime.jsx(
|
|
595
|
-
DynamicIcon,
|
|
596
|
-
{
|
|
597
|
-
name: "lucide/check-circle-2",
|
|
598
|
-
size: 18,
|
|
599
|
-
className: getAccentColor(background)
|
|
600
|
-
}
|
|
601
|
-
),
|
|
516
|
+
/* @__PURE__ */ jsxRuntime.jsx(DynamicIcon, { name: "lucide/check-circle-2", size: 18 }),
|
|
602
517
|
/* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-medium", children: capability })
|
|
603
518
|
]
|
|
604
519
|
},
|
|
@@ -629,6 +544,7 @@ function ProcessNumberedServices({
|
|
|
629
544
|
className,
|
|
630
545
|
pattern,
|
|
631
546
|
patternOpacity,
|
|
547
|
+
containerClassName,
|
|
632
548
|
children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: contentClassName, children: [
|
|
633
549
|
/* @__PURE__ */ jsxRuntime.jsxs("div", { className: cn("mb-16 max-w-2xl", headerClassName), children: [
|
|
634
550
|
resolvedHeading && (typeof resolvedHeading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
@@ -641,17 +557,7 @@ function ProcessNumberedServices({
|
|
|
641
557
|
children: resolvedHeading
|
|
642
558
|
}
|
|
643
559
|
) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: headingClassName, children: resolvedHeading })),
|
|
644
|
-
description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
645
|
-
"p",
|
|
646
|
-
{
|
|
647
|
-
className: cn(
|
|
648
|
-
"text-lg",
|
|
649
|
-
getTextColor(background, "muted"),
|
|
650
|
-
descriptionClassName
|
|
651
|
-
),
|
|
652
|
-
children: description
|
|
653
|
-
}
|
|
654
|
-
) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: descriptionClassName, children: description }))
|
|
560
|
+
description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("text-lg", descriptionClassName), children: description }) : description)
|
|
655
561
|
] }),
|
|
656
562
|
renderServices
|
|
657
563
|
] })
|
|
@@ -121,15 +121,15 @@ interface ProcessNumberedServicesProps {
|
|
|
121
121
|
*/
|
|
122
122
|
optixFlowConfig?: OptixFlowConfig;
|
|
123
123
|
/**
|
|
124
|
-
*
|
|
124
|
+
* Additional CSS classes for the container
|
|
125
125
|
*/
|
|
126
|
-
|
|
126
|
+
containerClassName?: string;
|
|
127
127
|
/** Optional Section ID */
|
|
128
128
|
sectionId?: string;
|
|
129
129
|
}
|
|
130
130
|
/**
|
|
131
131
|
* ProcessNumberedServices - A numbered services section with capabilities grid.
|
|
132
132
|
*/
|
|
133
|
-
declare function ProcessNumberedServices({ sectionId, heading, description, services, servicesSlot, className, contentClassName, headerClassName, headingClassName, descriptionClassName, servicesClassName, serviceItemClassName, serviceBadgeClassName, capabilitiesClassName, background, spacing, pattern, patternOpacity,
|
|
133
|
+
declare function ProcessNumberedServices({ sectionId, heading, description, services, servicesSlot, className, contentClassName, headerClassName, headingClassName, descriptionClassName, servicesClassName, serviceItemClassName, serviceBadgeClassName, capabilitiesClassName, background, spacing, pattern, patternOpacity, containerClassName, }: ProcessNumberedServicesProps): React.JSX.Element;
|
|
134
134
|
|
|
135
135
|
export { ProcessNumberedServices, type ProcessNumberedServicesProps };
|