@opensite/ui 2.2.3 → 2.2.5
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-culture-tabs.cjs +83 -17
- package/dist/about-culture-tabs.js +83 -17
- package/dist/components.cjs +83 -17
- package/dist/components.js +83 -17
- package/dist/contact-callback.cjs +38 -552
- package/dist/contact-callback.d.cts +6 -74
- package/dist/contact-callback.d.ts +6 -74
- package/dist/contact-callback.js +36 -535
- package/dist/contact-careers.cjs +19 -555
- package/dist/contact-careers.d.cts +6 -62
- package/dist/contact-careers.d.ts +6 -62
- package/dist/contact-careers.js +18 -539
- package/dist/contact-catering.cjs +19 -531
- package/dist/contact-catering.d.cts +6 -61
- package/dist/contact-catering.d.ts +6 -61
- package/dist/contact-catering.js +18 -515
- package/dist/contact-consultation.cjs +87 -543
- package/dist/contact-consultation.d.cts +6 -61
- package/dist/contact-consultation.d.ts +6 -61
- package/dist/contact-consultation.js +88 -544
- package/dist/contact-demo.cjs +20 -563
- package/dist/contact-demo.d.cts +10 -50
- package/dist/contact-demo.d.ts +10 -50
- package/dist/contact-demo.js +19 -547
- package/dist/contact-emergency.cjs +1 -1
- package/dist/contact-emergency.js +1 -1
- package/dist/contact-event.cjs +19 -562
- package/dist/contact-event.d.cts +10 -50
- package/dist/contact-event.d.ts +10 -50
- package/dist/contact-event.js +19 -547
- package/dist/contact-feedback.cjs +19 -562
- package/dist/contact-feedback.d.cts +10 -50
- package/dist/contact-feedback.d.ts +10 -50
- package/dist/contact-feedback.js +19 -547
- package/dist/contact-fitness.cjs +19 -562
- package/dist/contact-fitness.d.cts +10 -50
- package/dist/contact-fitness.d.ts +10 -50
- package/dist/contact-fitness.js +19 -547
- package/dist/contact-guest.cjs +19 -562
- package/dist/contact-guest.d.cts +10 -50
- package/dist/contact-guest.d.ts +10 -50
- package/dist/contact-guest.js +19 -547
- package/dist/contact-insurance.cjs +19 -562
- package/dist/contact-insurance.d.cts +10 -50
- package/dist/contact-insurance.d.ts +10 -50
- package/dist/contact-insurance.js +19 -547
- package/dist/contact-interview.cjs +19 -562
- package/dist/contact-interview.d.cts +11 -51
- package/dist/contact-interview.d.ts +11 -51
- package/dist/contact-interview.js +19 -547
- package/dist/contact-locations.cjs +19 -562
- package/dist/contact-locations.d.cts +11 -51
- package/dist/contact-locations.d.ts +11 -51
- package/dist/contact-locations.js +19 -547
- package/dist/contact-maintenance.cjs +19 -562
- package/dist/contact-maintenance.d.cts +10 -50
- package/dist/contact-maintenance.d.ts +10 -50
- package/dist/contact-maintenance.js +19 -547
- package/dist/contact-map.cjs +19 -562
- package/dist/contact-map.d.cts +11 -51
- package/dist/contact-map.d.ts +11 -51
- package/dist/contact-map.js +19 -547
- package/dist/contact-minimal.cjs +19 -562
- package/dist/contact-minimal.d.cts +10 -50
- package/dist/contact-minimal.d.ts +10 -50
- package/dist/contact-minimal.js +19 -547
- package/dist/contact-moving.cjs +19 -562
- package/dist/contact-moving.d.cts +11 -51
- package/dist/contact-moving.d.ts +11 -51
- package/dist/contact-moving.js +19 -547
- package/dist/contact-multistep.cjs +19 -562
- package/dist/contact-multistep.d.cts +11 -51
- package/dist/contact-multistep.d.ts +11 -51
- package/dist/contact-multistep.js +19 -547
- package/dist/contact-partnership.cjs +22 -565
- package/dist/contact-partnership.d.cts +10 -50
- package/dist/contact-partnership.d.ts +10 -50
- package/dist/contact-partnership.js +22 -550
- package/dist/contact-photography.cjs +19 -562
- package/dist/contact-photography.d.cts +7 -50
- package/dist/contact-photography.d.ts +7 -50
- package/dist/contact-photography.js +18 -546
- package/dist/contact-press.cjs +19 -562
- package/dist/contact-press.d.cts +10 -50
- package/dist/contact-press.d.ts +10 -50
- package/dist/contact-press.js +19 -547
- package/dist/contact-quote.cjs +19 -562
- package/dist/contact-quote.d.cts +11 -51
- package/dist/contact-quote.d.ts +11 -51
- package/dist/contact-quote.js +19 -547
- package/dist/contact-referral.cjs +19 -562
- package/dist/contact-referral.d.cts +10 -50
- package/dist/contact-referral.d.ts +10 -50
- package/dist/contact-referral.js +19 -547
- package/dist/contact-report.cjs +19 -562
- package/dist/contact-report.d.cts +10 -50
- package/dist/contact-report.d.ts +10 -50
- package/dist/contact-report.js +19 -547
- package/dist/contact-reservation.cjs +19 -562
- package/dist/contact-reservation.d.cts +10 -50
- package/dist/contact-reservation.d.ts +10 -50
- package/dist/contact-reservation.js +19 -547
- package/dist/contact-retreat.cjs +88 -567
- package/dist/contact-retreat.d.cts +11 -51
- package/dist/contact-retreat.d.ts +11 -51
- package/dist/contact-retreat.js +90 -569
- package/dist/contact-rsvp.cjs +19 -562
- package/dist/contact-rsvp.d.cts +11 -51
- package/dist/contact-rsvp.d.ts +11 -51
- package/dist/contact-rsvp.js +19 -547
- package/dist/contact-sales.cjs +19 -562
- package/dist/contact-sales.d.cts +10 -50
- package/dist/contact-sales.d.ts +10 -50
- package/dist/contact-sales.js +19 -547
- package/dist/contact-schedule.cjs +19 -562
- package/dist/contact-schedule.d.cts +11 -51
- package/dist/contact-schedule.d.ts +11 -51
- package/dist/contact-schedule.js +19 -547
- package/dist/contact-sponsorship.cjs +19 -562
- package/dist/contact-sponsorship.d.cts +11 -51
- package/dist/contact-sponsorship.d.ts +11 -51
- package/dist/contact-sponsorship.js +19 -547
- package/dist/contact-support.cjs +19 -562
- package/dist/contact-support.d.cts +11 -51
- package/dist/contact-support.d.ts +11 -51
- package/dist/contact-support.js +19 -547
- package/dist/contact-tenant.cjs +19 -562
- package/dist/contact-tenant.d.cts +11 -51
- package/dist/contact-tenant.d.ts +11 -51
- package/dist/contact-tenant.js +19 -547
- package/dist/contact-volunteer.cjs +19 -562
- package/dist/contact-volunteer.d.cts +11 -51
- package/dist/contact-volunteer.d.ts +11 -51
- package/dist/contact-volunteer.js +19 -547
- package/dist/contact-warranty.cjs +19 -562
- package/dist/contact-warranty.d.cts +10 -50
- package/dist/contact-warranty.d.ts +10 -50
- package/dist/contact-warranty.js +19 -547
- package/dist/contact-wedding.cjs +19 -562
- package/dist/contact-wedding.d.cts +10 -50
- package/dist/contact-wedding.d.ts +10 -50
- package/dist/contact-wedding.js +19 -547
- package/dist/hero-presentation-platform-video.cjs +76 -27
- package/dist/hero-presentation-platform-video.js +76 -27
- package/dist/index.cjs +83 -17
- package/dist/index.js +83 -17
- package/dist/registry.cjs +768 -4196
- package/dist/registry.js +769 -4197
- package/package.json +12 -2
|
@@ -824,6 +824,38 @@ var Section = React__namespace.default.forwardRef(
|
|
|
824
824
|
}
|
|
825
825
|
);
|
|
826
826
|
Section.displayName = "Section";
|
|
827
|
+
function TextInner({ as, className, children, ...props }, ref) {
|
|
828
|
+
const Component = as || "span";
|
|
829
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ref, className: cn(className), ...props, children });
|
|
830
|
+
}
|
|
831
|
+
var Text = React__namespace.forwardRef(TextInner);
|
|
832
|
+
Text.displayName = "Text";
|
|
833
|
+
function isContentTextItem(item) {
|
|
834
|
+
return item !== null && typeof item === "object" && !React__namespace.isValidElement(item) && "_type" in item && item._type === "text";
|
|
835
|
+
}
|
|
836
|
+
var ContentGroup = React__namespace.forwardRef(
|
|
837
|
+
({ items, className, children, ...props }, ref) => {
|
|
838
|
+
const hasContent = items && items.length > 0;
|
|
839
|
+
if (!hasContent) {
|
|
840
|
+
return null;
|
|
841
|
+
}
|
|
842
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { ref, className: cn(className), ...props, children: [
|
|
843
|
+
items.map((item, idx) => {
|
|
844
|
+
if (isContentTextItem(item)) {
|
|
845
|
+
const { _type, ...textProps } = item;
|
|
846
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Text, { ...textProps }, idx);
|
|
847
|
+
}
|
|
848
|
+
const reactNode = item;
|
|
849
|
+
if (React__namespace.isValidElement(reactNode)) {
|
|
850
|
+
return React__namespace.cloneElement(reactNode, { key: reactNode.key ?? idx });
|
|
851
|
+
}
|
|
852
|
+
return /* @__PURE__ */ jsxRuntime.jsx(React__namespace.Fragment, { children: reactNode }, idx);
|
|
853
|
+
}),
|
|
854
|
+
children
|
|
855
|
+
] });
|
|
856
|
+
}
|
|
857
|
+
);
|
|
858
|
+
ContentGroup.displayName = "ContentGroup";
|
|
827
859
|
var MOBILE_CLASSES = {
|
|
828
860
|
"fit-left": "items-start md:items-center",
|
|
829
861
|
"fit-center": "items-center",
|
|
@@ -908,6 +940,49 @@ function HeroPresentationPlatformVideo({
|
|
|
908
940
|
descriptionClassName,
|
|
909
941
|
videoClassName
|
|
910
942
|
}) {
|
|
943
|
+
const contentItems = React.useMemo(() => {
|
|
944
|
+
const items = [];
|
|
945
|
+
if (subtitle) {
|
|
946
|
+
if (typeof subtitle === "string") {
|
|
947
|
+
items.push({
|
|
948
|
+
_type: "text",
|
|
949
|
+
as: "p",
|
|
950
|
+
className: "font-light uppercase",
|
|
951
|
+
children: subtitle
|
|
952
|
+
});
|
|
953
|
+
} else {
|
|
954
|
+
items.push(subtitle);
|
|
955
|
+
}
|
|
956
|
+
}
|
|
957
|
+
if (heading) {
|
|
958
|
+
if (typeof heading === "string") {
|
|
959
|
+
items.push({
|
|
960
|
+
_type: "text",
|
|
961
|
+
as: "h1",
|
|
962
|
+
className: cn(
|
|
963
|
+
"text-5xl font-medium md:text-6xl lg:text-7xl",
|
|
964
|
+
headingClassName
|
|
965
|
+
),
|
|
966
|
+
children: heading
|
|
967
|
+
});
|
|
968
|
+
} else {
|
|
969
|
+
items.push(heading);
|
|
970
|
+
}
|
|
971
|
+
}
|
|
972
|
+
if (description) {
|
|
973
|
+
if (typeof description === "string") {
|
|
974
|
+
items.push({
|
|
975
|
+
_type: "text",
|
|
976
|
+
as: "p",
|
|
977
|
+
className: cn("my-0 md:my-8 md:text-xl", descriptionClassName),
|
|
978
|
+
children: description
|
|
979
|
+
});
|
|
980
|
+
} else {
|
|
981
|
+
items.push(description);
|
|
982
|
+
}
|
|
983
|
+
}
|
|
984
|
+
return items;
|
|
985
|
+
}, [subtitle, heading, headingClassName, description, descriptionClassName]);
|
|
911
986
|
React.useMemo(() => {
|
|
912
987
|
if (actionsSlot) return actionsSlot;
|
|
913
988
|
if (!actions || actions.length === 0) return null;
|
|
@@ -979,33 +1054,7 @@ function HeroPresentationPlatformVideo({
|
|
|
979
1054
|
contentClassName
|
|
980
1055
|
),
|
|
981
1056
|
children: [
|
|
982
|
-
|
|
983
|
-
heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
984
|
-
"h1",
|
|
985
|
-
{
|
|
986
|
-
className: cn(
|
|
987
|
-
"text-5xl font-medium md:text-6xl lg:text-7xl",
|
|
988
|
-
headingClassName
|
|
989
|
-
),
|
|
990
|
-
children: heading
|
|
991
|
-
}
|
|
992
|
-
) : /* @__PURE__ */ jsxRuntime.jsx(
|
|
993
|
-
"h1",
|
|
994
|
-
{
|
|
995
|
-
className: cn(
|
|
996
|
-
"text-5xl font-medium md:text-6xl lg:text-7xl",
|
|
997
|
-
headingClassName
|
|
998
|
-
),
|
|
999
|
-
children: heading
|
|
1000
|
-
}
|
|
1001
|
-
)),
|
|
1002
|
-
description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
1003
|
-
"p",
|
|
1004
|
-
{
|
|
1005
|
-
className: cn("my-0 md:my-8 md:text-xl", descriptionClassName),
|
|
1006
|
-
children: description
|
|
1007
|
-
}
|
|
1008
|
-
) : /* @__PURE__ */ jsxRuntime.jsx("div", { className: descriptionClassName, children: description })),
|
|
1057
|
+
/* @__PURE__ */ jsxRuntime.jsx(ContentGroup, { items: contentItems }),
|
|
1009
1058
|
/* @__PURE__ */ jsxRuntime.jsx(
|
|
1010
1059
|
BlockActions,
|
|
1011
1060
|
{
|
|
@@ -803,6 +803,38 @@ var Section = React__default.forwardRef(
|
|
|
803
803
|
}
|
|
804
804
|
);
|
|
805
805
|
Section.displayName = "Section";
|
|
806
|
+
function TextInner({ as, className, children, ...props }, ref) {
|
|
807
|
+
const Component = as || "span";
|
|
808
|
+
return /* @__PURE__ */ jsx(Component, { ref, className: cn(className), ...props, children });
|
|
809
|
+
}
|
|
810
|
+
var Text = React.forwardRef(TextInner);
|
|
811
|
+
Text.displayName = "Text";
|
|
812
|
+
function isContentTextItem(item) {
|
|
813
|
+
return item !== null && typeof item === "object" && !React.isValidElement(item) && "_type" in item && item._type === "text";
|
|
814
|
+
}
|
|
815
|
+
var ContentGroup = React.forwardRef(
|
|
816
|
+
({ items, className, children, ...props }, ref) => {
|
|
817
|
+
const hasContent = items && items.length > 0;
|
|
818
|
+
if (!hasContent) {
|
|
819
|
+
return null;
|
|
820
|
+
}
|
|
821
|
+
return /* @__PURE__ */ jsxs("div", { ref, className: cn(className), ...props, children: [
|
|
822
|
+
items.map((item, idx) => {
|
|
823
|
+
if (isContentTextItem(item)) {
|
|
824
|
+
const { _type, ...textProps } = item;
|
|
825
|
+
return /* @__PURE__ */ jsx(Text, { ...textProps }, idx);
|
|
826
|
+
}
|
|
827
|
+
const reactNode = item;
|
|
828
|
+
if (React.isValidElement(reactNode)) {
|
|
829
|
+
return React.cloneElement(reactNode, { key: reactNode.key ?? idx });
|
|
830
|
+
}
|
|
831
|
+
return /* @__PURE__ */ jsx(React.Fragment, { children: reactNode }, idx);
|
|
832
|
+
}),
|
|
833
|
+
children
|
|
834
|
+
] });
|
|
835
|
+
}
|
|
836
|
+
);
|
|
837
|
+
ContentGroup.displayName = "ContentGroup";
|
|
806
838
|
var MOBILE_CLASSES = {
|
|
807
839
|
"fit-left": "items-start md:items-center",
|
|
808
840
|
"fit-center": "items-center",
|
|
@@ -887,6 +919,49 @@ function HeroPresentationPlatformVideo({
|
|
|
887
919
|
descriptionClassName,
|
|
888
920
|
videoClassName
|
|
889
921
|
}) {
|
|
922
|
+
const contentItems = useMemo(() => {
|
|
923
|
+
const items = [];
|
|
924
|
+
if (subtitle) {
|
|
925
|
+
if (typeof subtitle === "string") {
|
|
926
|
+
items.push({
|
|
927
|
+
_type: "text",
|
|
928
|
+
as: "p",
|
|
929
|
+
className: "font-light uppercase",
|
|
930
|
+
children: subtitle
|
|
931
|
+
});
|
|
932
|
+
} else {
|
|
933
|
+
items.push(subtitle);
|
|
934
|
+
}
|
|
935
|
+
}
|
|
936
|
+
if (heading) {
|
|
937
|
+
if (typeof heading === "string") {
|
|
938
|
+
items.push({
|
|
939
|
+
_type: "text",
|
|
940
|
+
as: "h1",
|
|
941
|
+
className: cn(
|
|
942
|
+
"text-5xl font-medium md:text-6xl lg:text-7xl",
|
|
943
|
+
headingClassName
|
|
944
|
+
),
|
|
945
|
+
children: heading
|
|
946
|
+
});
|
|
947
|
+
} else {
|
|
948
|
+
items.push(heading);
|
|
949
|
+
}
|
|
950
|
+
}
|
|
951
|
+
if (description) {
|
|
952
|
+
if (typeof description === "string") {
|
|
953
|
+
items.push({
|
|
954
|
+
_type: "text",
|
|
955
|
+
as: "p",
|
|
956
|
+
className: cn("my-0 md:my-8 md:text-xl", descriptionClassName),
|
|
957
|
+
children: description
|
|
958
|
+
});
|
|
959
|
+
} else {
|
|
960
|
+
items.push(description);
|
|
961
|
+
}
|
|
962
|
+
}
|
|
963
|
+
return items;
|
|
964
|
+
}, [subtitle, heading, headingClassName, description, descriptionClassName]);
|
|
890
965
|
useMemo(() => {
|
|
891
966
|
if (actionsSlot) return actionsSlot;
|
|
892
967
|
if (!actions || actions.length === 0) return null;
|
|
@@ -958,33 +1033,7 @@ function HeroPresentationPlatformVideo({
|
|
|
958
1033
|
contentClassName
|
|
959
1034
|
),
|
|
960
1035
|
children: [
|
|
961
|
-
|
|
962
|
-
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
963
|
-
"h1",
|
|
964
|
-
{
|
|
965
|
-
className: cn(
|
|
966
|
-
"text-5xl font-medium md:text-6xl lg:text-7xl",
|
|
967
|
-
headingClassName
|
|
968
|
-
),
|
|
969
|
-
children: heading
|
|
970
|
-
}
|
|
971
|
-
) : /* @__PURE__ */ jsx(
|
|
972
|
-
"h1",
|
|
973
|
-
{
|
|
974
|
-
className: cn(
|
|
975
|
-
"text-5xl font-medium md:text-6xl lg:text-7xl",
|
|
976
|
-
headingClassName
|
|
977
|
-
),
|
|
978
|
-
children: heading
|
|
979
|
-
}
|
|
980
|
-
)),
|
|
981
|
-
description && (typeof description === "string" ? /* @__PURE__ */ jsx(
|
|
982
|
-
"p",
|
|
983
|
-
{
|
|
984
|
-
className: cn("my-0 md:my-8 md:text-xl", descriptionClassName),
|
|
985
|
-
children: description
|
|
986
|
-
}
|
|
987
|
-
) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description })),
|
|
1036
|
+
/* @__PURE__ */ jsx(ContentGroup, { items: contentItems }),
|
|
988
1037
|
/* @__PURE__ */ jsx(
|
|
989
1038
|
BlockActions,
|
|
990
1039
|
{
|
package/dist/index.cjs
CHANGED
|
@@ -2704,6 +2704,38 @@ function ActionComponent({ action }) {
|
|
|
2704
2704
|
}
|
|
2705
2705
|
);
|
|
2706
2706
|
}
|
|
2707
|
+
function TextInner({ as, className, children, ...props }, ref) {
|
|
2708
|
+
const Component = as || "span";
|
|
2709
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Component, { ref, className: cn(className), ...props, children });
|
|
2710
|
+
}
|
|
2711
|
+
var Text = React4__namespace.forwardRef(TextInner);
|
|
2712
|
+
Text.displayName = "Text";
|
|
2713
|
+
function isContentTextItem(item) {
|
|
2714
|
+
return item !== null && typeof item === "object" && !React4__namespace.isValidElement(item) && "_type" in item && item._type === "text";
|
|
2715
|
+
}
|
|
2716
|
+
var ContentGroup = React4__namespace.forwardRef(
|
|
2717
|
+
({ items, className, children, ...props }, ref) => {
|
|
2718
|
+
const hasContent = items && items.length > 0;
|
|
2719
|
+
if (!hasContent) {
|
|
2720
|
+
return null;
|
|
2721
|
+
}
|
|
2722
|
+
return /* @__PURE__ */ jsxRuntime.jsxs("div", { ref, className: cn(className), ...props, children: [
|
|
2723
|
+
items.map((item, idx) => {
|
|
2724
|
+
if (isContentTextItem(item)) {
|
|
2725
|
+
const { _type, ...textProps } = item;
|
|
2726
|
+
return /* @__PURE__ */ jsxRuntime.jsx(Text, { ...textProps }, idx);
|
|
2727
|
+
}
|
|
2728
|
+
const reactNode = item;
|
|
2729
|
+
if (React4__namespace.isValidElement(reactNode)) {
|
|
2730
|
+
return React4__namespace.cloneElement(reactNode, { key: reactNode.key ?? idx });
|
|
2731
|
+
}
|
|
2732
|
+
return /* @__PURE__ */ jsxRuntime.jsx(React4__namespace.Fragment, { children: reactNode }, idx);
|
|
2733
|
+
}),
|
|
2734
|
+
children
|
|
2735
|
+
] });
|
|
2736
|
+
}
|
|
2737
|
+
);
|
|
2738
|
+
ContentGroup.displayName = "ContentGroup";
|
|
2707
2739
|
function AboutCultureTabs({
|
|
2708
2740
|
badgeText,
|
|
2709
2741
|
heading,
|
|
@@ -2737,6 +2769,53 @@ function AboutCultureTabs({
|
|
|
2737
2769
|
const [activeTab, setActiveTab] = React4__namespace.useState(
|
|
2738
2770
|
resolvedAspects[0]?.id || ""
|
|
2739
2771
|
);
|
|
2772
|
+
const headerItems = React4.useMemo(() => {
|
|
2773
|
+
const items = [];
|
|
2774
|
+
if (badgeText) {
|
|
2775
|
+
if (typeof badgeText === "string") {
|
|
2776
|
+
items.push(
|
|
2777
|
+
/* @__PURE__ */ jsxRuntime.jsx(Badge, { className: cn("px-3 py-1", badgeClassName), children: badgeText }, "badge")
|
|
2778
|
+
);
|
|
2779
|
+
} else {
|
|
2780
|
+
items.push(badgeText);
|
|
2781
|
+
}
|
|
2782
|
+
}
|
|
2783
|
+
if (heading) {
|
|
2784
|
+
if (typeof heading === "string") {
|
|
2785
|
+
items.push({
|
|
2786
|
+
_type: "text",
|
|
2787
|
+
as: "h2",
|
|
2788
|
+
className: cn(
|
|
2789
|
+
"text-3xl font-bold tracking-tight md:text-4xl text-pretty",
|
|
2790
|
+
headingClassName
|
|
2791
|
+
),
|
|
2792
|
+
children: heading
|
|
2793
|
+
});
|
|
2794
|
+
} else {
|
|
2795
|
+
items.push(heading);
|
|
2796
|
+
}
|
|
2797
|
+
}
|
|
2798
|
+
if (description) {
|
|
2799
|
+
if (typeof description === "string") {
|
|
2800
|
+
items.push({
|
|
2801
|
+
_type: "text",
|
|
2802
|
+
as: "p",
|
|
2803
|
+
className: cn("text-balance", descriptionClassName),
|
|
2804
|
+
children: description
|
|
2805
|
+
});
|
|
2806
|
+
} else {
|
|
2807
|
+
items.push(description);
|
|
2808
|
+
}
|
|
2809
|
+
}
|
|
2810
|
+
return items;
|
|
2811
|
+
}, [
|
|
2812
|
+
badgeText,
|
|
2813
|
+
badgeClassName,
|
|
2814
|
+
heading,
|
|
2815
|
+
headingClassName,
|
|
2816
|
+
description,
|
|
2817
|
+
descriptionClassName
|
|
2818
|
+
]);
|
|
2740
2819
|
const ctaImagesContent = React4.useMemo(() => {
|
|
2741
2820
|
if (ctaImagesSlot) return ctaImagesSlot;
|
|
2742
2821
|
if (!ctaImages || ctaImages.length === 0) return null;
|
|
@@ -2767,27 +2846,14 @@ function AboutCultureTabs({
|
|
|
2767
2846
|
className,
|
|
2768
2847
|
containerClassName,
|
|
2769
2848
|
children: [
|
|
2770
|
-
/* @__PURE__ */ jsxRuntime.
|
|
2771
|
-
|
|
2849
|
+
/* @__PURE__ */ jsxRuntime.jsx(
|
|
2850
|
+
ContentGroup,
|
|
2772
2851
|
{
|
|
2852
|
+
items: headerItems,
|
|
2773
2853
|
className: cn(
|
|
2774
2854
|
"mx-auto mb-12 max-w-full md:max-w-md space-y-4 text-center flex flex-col items-center justify-center",
|
|
2775
2855
|
headerClassName
|
|
2776
|
-
)
|
|
2777
|
-
children: [
|
|
2778
|
-
badgeText && (typeof badgeText === "string" ? /* @__PURE__ */ jsxRuntime.jsx(Badge, { className: cn("px-3 py-1", badgeClassName), children: badgeText }) : badgeText),
|
|
2779
|
-
heading && (typeof heading === "string" ? /* @__PURE__ */ jsxRuntime.jsx(
|
|
2780
|
-
"h2",
|
|
2781
|
-
{
|
|
2782
|
-
className: cn(
|
|
2783
|
-
"text-3xl font-bold tracking-tight md:text-4xl text-pretty",
|
|
2784
|
-
headingClassName
|
|
2785
|
-
),
|
|
2786
|
-
children: heading
|
|
2787
|
-
}
|
|
2788
|
-
) : heading),
|
|
2789
|
-
description && (typeof description === "string" ? /* @__PURE__ */ jsxRuntime.jsx("p", { className: cn("text-balance", descriptionClassName), children: description }) : description)
|
|
2790
|
-
]
|
|
2856
|
+
)
|
|
2791
2857
|
}
|
|
2792
2858
|
),
|
|
2793
2859
|
aspectsSlot ? aspectsSlot : resolvedAspects.length > 0 ? /* @__PURE__ */ jsxRuntime.jsxs(
|
package/dist/index.js
CHANGED
|
@@ -2682,6 +2682,38 @@ function ActionComponent({ action }) {
|
|
|
2682
2682
|
}
|
|
2683
2683
|
);
|
|
2684
2684
|
}
|
|
2685
|
+
function TextInner({ as, className, children, ...props }, ref) {
|
|
2686
|
+
const Component = as || "span";
|
|
2687
|
+
return /* @__PURE__ */ jsx(Component, { ref, className: cn(className), ...props, children });
|
|
2688
|
+
}
|
|
2689
|
+
var Text = React4.forwardRef(TextInner);
|
|
2690
|
+
Text.displayName = "Text";
|
|
2691
|
+
function isContentTextItem(item) {
|
|
2692
|
+
return item !== null && typeof item === "object" && !React4.isValidElement(item) && "_type" in item && item._type === "text";
|
|
2693
|
+
}
|
|
2694
|
+
var ContentGroup = React4.forwardRef(
|
|
2695
|
+
({ items, className, children, ...props }, ref) => {
|
|
2696
|
+
const hasContent = items && items.length > 0;
|
|
2697
|
+
if (!hasContent) {
|
|
2698
|
+
return null;
|
|
2699
|
+
}
|
|
2700
|
+
return /* @__PURE__ */ jsxs("div", { ref, className: cn(className), ...props, children: [
|
|
2701
|
+
items.map((item, idx) => {
|
|
2702
|
+
if (isContentTextItem(item)) {
|
|
2703
|
+
const { _type, ...textProps } = item;
|
|
2704
|
+
return /* @__PURE__ */ jsx(Text, { ...textProps }, idx);
|
|
2705
|
+
}
|
|
2706
|
+
const reactNode = item;
|
|
2707
|
+
if (React4.isValidElement(reactNode)) {
|
|
2708
|
+
return React4.cloneElement(reactNode, { key: reactNode.key ?? idx });
|
|
2709
|
+
}
|
|
2710
|
+
return /* @__PURE__ */ jsx(React4.Fragment, { children: reactNode }, idx);
|
|
2711
|
+
}),
|
|
2712
|
+
children
|
|
2713
|
+
] });
|
|
2714
|
+
}
|
|
2715
|
+
);
|
|
2716
|
+
ContentGroup.displayName = "ContentGroup";
|
|
2685
2717
|
function AboutCultureTabs({
|
|
2686
2718
|
badgeText,
|
|
2687
2719
|
heading,
|
|
@@ -2715,6 +2747,53 @@ function AboutCultureTabs({
|
|
|
2715
2747
|
const [activeTab, setActiveTab] = React4.useState(
|
|
2716
2748
|
resolvedAspects[0]?.id || ""
|
|
2717
2749
|
);
|
|
2750
|
+
const headerItems = useMemo(() => {
|
|
2751
|
+
const items = [];
|
|
2752
|
+
if (badgeText) {
|
|
2753
|
+
if (typeof badgeText === "string") {
|
|
2754
|
+
items.push(
|
|
2755
|
+
/* @__PURE__ */ jsx(Badge, { className: cn("px-3 py-1", badgeClassName), children: badgeText }, "badge")
|
|
2756
|
+
);
|
|
2757
|
+
} else {
|
|
2758
|
+
items.push(badgeText);
|
|
2759
|
+
}
|
|
2760
|
+
}
|
|
2761
|
+
if (heading) {
|
|
2762
|
+
if (typeof heading === "string") {
|
|
2763
|
+
items.push({
|
|
2764
|
+
_type: "text",
|
|
2765
|
+
as: "h2",
|
|
2766
|
+
className: cn(
|
|
2767
|
+
"text-3xl font-bold tracking-tight md:text-4xl text-pretty",
|
|
2768
|
+
headingClassName
|
|
2769
|
+
),
|
|
2770
|
+
children: heading
|
|
2771
|
+
});
|
|
2772
|
+
} else {
|
|
2773
|
+
items.push(heading);
|
|
2774
|
+
}
|
|
2775
|
+
}
|
|
2776
|
+
if (description) {
|
|
2777
|
+
if (typeof description === "string") {
|
|
2778
|
+
items.push({
|
|
2779
|
+
_type: "text",
|
|
2780
|
+
as: "p",
|
|
2781
|
+
className: cn("text-balance", descriptionClassName),
|
|
2782
|
+
children: description
|
|
2783
|
+
});
|
|
2784
|
+
} else {
|
|
2785
|
+
items.push(description);
|
|
2786
|
+
}
|
|
2787
|
+
}
|
|
2788
|
+
return items;
|
|
2789
|
+
}, [
|
|
2790
|
+
badgeText,
|
|
2791
|
+
badgeClassName,
|
|
2792
|
+
heading,
|
|
2793
|
+
headingClassName,
|
|
2794
|
+
description,
|
|
2795
|
+
descriptionClassName
|
|
2796
|
+
]);
|
|
2718
2797
|
const ctaImagesContent = useMemo(() => {
|
|
2719
2798
|
if (ctaImagesSlot) return ctaImagesSlot;
|
|
2720
2799
|
if (!ctaImages || ctaImages.length === 0) return null;
|
|
@@ -2745,27 +2824,14 @@ function AboutCultureTabs({
|
|
|
2745
2824
|
className,
|
|
2746
2825
|
containerClassName,
|
|
2747
2826
|
children: [
|
|
2748
|
-
/* @__PURE__ */
|
|
2749
|
-
|
|
2827
|
+
/* @__PURE__ */ jsx(
|
|
2828
|
+
ContentGroup,
|
|
2750
2829
|
{
|
|
2830
|
+
items: headerItems,
|
|
2751
2831
|
className: cn(
|
|
2752
2832
|
"mx-auto mb-12 max-w-full md:max-w-md space-y-4 text-center flex flex-col items-center justify-center",
|
|
2753
2833
|
headerClassName
|
|
2754
|
-
)
|
|
2755
|
-
children: [
|
|
2756
|
-
badgeText && (typeof badgeText === "string" ? /* @__PURE__ */ jsx(Badge, { className: cn("px-3 py-1", badgeClassName), children: badgeText }) : badgeText),
|
|
2757
|
-
heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
|
|
2758
|
-
"h2",
|
|
2759
|
-
{
|
|
2760
|
-
className: cn(
|
|
2761
|
-
"text-3xl font-bold tracking-tight md:text-4xl text-pretty",
|
|
2762
|
-
headingClassName
|
|
2763
|
-
),
|
|
2764
|
-
children: heading
|
|
2765
|
-
}
|
|
2766
|
-
) : heading),
|
|
2767
|
-
description && (typeof description === "string" ? /* @__PURE__ */ jsx("p", { className: cn("text-balance", descriptionClassName), children: description }) : description)
|
|
2768
|
-
]
|
|
2834
|
+
)
|
|
2769
2835
|
}
|
|
2770
2836
|
),
|
|
2771
2837
|
aspectsSlot ? aspectsSlot : resolvedAspects.length > 0 ? /* @__PURE__ */ jsxs(
|