@opensite/ui 2.4.7 → 2.4.9

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 (93) hide show
  1. package/dist/about-developer-profile.cjs +1 -1
  2. package/dist/about-developer-profile.js +1 -1
  3. package/dist/about-stats-sidebar.cjs +5 -3
  4. package/dist/about-stats-sidebar.js +5 -3
  5. package/dist/about-story-hero.cjs +119 -105
  6. package/dist/about-story-hero.js +101 -102
  7. package/dist/components.cjs +1 -1
  8. package/dist/components.js +1 -1
  9. package/dist/cta-accent-background.cjs +8 -69
  10. package/dist/cta-accent-background.d.cts +1 -1
  11. package/dist/cta-accent-background.d.ts +1 -1
  12. package/dist/cta-accent-background.js +8 -69
  13. package/dist/cta-app-download-newsletter.cjs +4 -81
  14. package/dist/cta-app-download-newsletter.js +4 -81
  15. package/dist/faq-badge-support.cjs +97 -84
  16. package/dist/faq-badge-support.d.cts +1 -1
  17. package/dist/faq-badge-support.d.ts +1 -1
  18. package/dist/faq-badge-support.js +97 -83
  19. package/dist/faq-sidebar-navigation.cjs +106 -72
  20. package/dist/faq-sidebar-navigation.d.cts +1 -1
  21. package/dist/faq-sidebar-navigation.d.ts +1 -1
  22. package/dist/faq-sidebar-navigation.js +104 -70
  23. package/dist/faq-simple-accordion.cjs +83 -50
  24. package/dist/faq-simple-accordion.d.cts +13 -1
  25. package/dist/faq-simple-accordion.d.ts +13 -1
  26. package/dist/faq-simple-accordion.js +82 -46
  27. package/dist/feature-accordion-image.cjs +115 -85
  28. package/dist/feature-accordion-image.js +113 -83
  29. package/dist/feature-animated-carousel.cjs +2 -2
  30. package/dist/feature-animated-carousel.js +2 -2
  31. package/dist/feature-image-cards-three-column.cjs +2 -2
  32. package/dist/feature-image-cards-three-column.js +2 -2
  33. package/dist/footer-accordion-social.cjs +1 -1
  34. package/dist/footer-accordion-social.js +1 -1
  35. package/dist/footer-animated-social.cjs +1 -1
  36. package/dist/footer-animated-social.js +1 -1
  37. package/dist/footer-brand-description.cjs +1 -1
  38. package/dist/footer-brand-description.js +1 -1
  39. package/dist/footer-brand-links-contact.cjs +1 -1
  40. package/dist/footer-brand-links-contact.js +1 -1
  41. package/dist/footer-comprehensive-links.cjs +1 -1
  42. package/dist/footer-comprehensive-links.js +1 -1
  43. package/dist/footer-contact-card.cjs +1 -1
  44. package/dist/footer-contact-card.js +1 -1
  45. package/dist/footer-cta-banner.cjs +1 -1
  46. package/dist/footer-cta-banner.js +1 -1
  47. package/dist/footer-cta-social.cjs +1 -1
  48. package/dist/footer-cta-social.js +1 -1
  49. package/dist/footer-info-cards-accordion.cjs +1 -1
  50. package/dist/footer-info-cards-accordion.js +1 -1
  51. package/dist/footer-nav-social.cjs +1 -1
  52. package/dist/footer-nav-social.js +1 -1
  53. package/dist/footer-newsletter-contact.cjs +1 -1
  54. package/dist/footer-newsletter-contact.js +1 -1
  55. package/dist/footer-newsletter-grid.cjs +1 -1
  56. package/dist/footer-newsletter-grid.js +1 -1
  57. package/dist/footer-newsletter-minimal.cjs +1 -1
  58. package/dist/footer-newsletter-minimal.js +1 -1
  59. package/dist/footer-social-apps.cjs +1 -1
  60. package/dist/footer-social-apps.js +1 -1
  61. package/dist/footer-social-newsletter.cjs +1 -1
  62. package/dist/footer-social-newsletter.js +1 -1
  63. package/dist/footer-split-image-accordion.cjs +1 -1
  64. package/dist/footer-split-image-accordion.js +1 -1
  65. package/dist/hero-coming-soon-countdown.cjs +1 -1
  66. package/dist/hero-coming-soon-countdown.js +1 -1
  67. package/dist/hero-event-registration.cjs +1 -1
  68. package/dist/hero-event-registration.js +1 -1
  69. package/dist/hero-product-showcase-floating.cjs +120 -90
  70. package/dist/hero-product-showcase-floating.d.cts +5 -1
  71. package/dist/hero-product-showcase-floating.d.ts +5 -1
  72. package/dist/hero-product-showcase-floating.js +120 -90
  73. package/dist/index.cjs +1 -1
  74. package/dist/index.js +1 -1
  75. package/dist/link-page-bento-layout.cjs +1 -1
  76. package/dist/link-page-bento-layout.js +1 -1
  77. package/dist/link-page-grid-cards.cjs +1 -1
  78. package/dist/link-page-grid-cards.js +1 -1
  79. package/dist/link-page-minimal-profile.cjs +1 -1
  80. package/dist/link-page-minimal-profile.js +1 -1
  81. package/dist/link-page-newsletter-social.cjs +1 -1
  82. package/dist/link-page-newsletter-social.js +1 -1
  83. package/dist/link-tree-block.cjs +1 -1
  84. package/dist/link-tree-block.js +1 -1
  85. package/dist/navbar-fullscreen-menu.cjs +1 -1
  86. package/dist/navbar-fullscreen-menu.js +1 -1
  87. package/dist/navbar-transparent-overlay.cjs +1 -1
  88. package/dist/navbar-transparent-overlay.js +1 -1
  89. package/dist/registry.cjs +397 -290
  90. package/dist/registry.js +397 -290
  91. package/dist/social-link-icon.cjs +1 -1
  92. package/dist/social-link-icon.js +1 -1
  93. package/package.json +2 -2
@@ -7,41 +7,12 @@ import { Icon } from '@page-speed/icon';
7
7
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
8
8
  import { Img } from '@page-speed/img';
9
9
  import { cva } from 'class-variance-authority';
10
+ import { Slot } from '@radix-ui/react-slot';
10
11
 
11
12
  // components/blocks/hero/hero-product-showcase-floating.tsx
12
13
  function cn(...inputs) {
13
14
  return twMerge(clsx(inputs));
14
15
  }
15
- function getTextColor(parentBg, variant = "default", options) {
16
- const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
17
- if (isDark) {
18
- switch (variant) {
19
- case "default":
20
- return "text-foreground";
21
- case "muted":
22
- return "text-foreground/80";
23
- case "subtle":
24
- return "text-foreground/60";
25
- case "accent":
26
- return "text-accent-foreground";
27
- }
28
- } else {
29
- switch (variant) {
30
- case "default":
31
- return "text-foreground";
32
- case "muted":
33
- return "text-muted-foreground";
34
- case "subtle":
35
- return "text-muted-foreground/70";
36
- case "accent":
37
- return "text-primary";
38
- }
39
- }
40
- }
41
- function getAccentColor(parentBg, options) {
42
- const isDark = parentBg === "dark" || parentBg === "secondary" || parentBg === "primary";
43
- return isDark ? "text-accent-foreground" : "text-primary";
44
- }
45
16
  var DEFAULT_ICON_API_KEY = "au382bi7fsh96w9h9xlrnat2jglx";
46
17
  function DynamicIcon({ apiKey, ...props }) {
47
18
  return /* @__PURE__ */ jsx(Icon, { ...props, apiKey: apiKey ?? DEFAULT_ICON_API_KEY });
@@ -563,6 +534,38 @@ var buttonVariants = cva(baseStyles, {
563
534
  size: "default"
564
535
  }
565
536
  });
537
+ var badgeVariants = cva(
538
+ "inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden",
539
+ {
540
+ variants: {
541
+ variant: {
542
+ default: "border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",
543
+ secondary: "border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",
544
+ destructive: "border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
545
+ outline: "text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"
546
+ }
547
+ },
548
+ defaultVariants: {
549
+ variant: "default"
550
+ }
551
+ }
552
+ );
553
+ function Badge({
554
+ className,
555
+ variant,
556
+ asChild = false,
557
+ ...props
558
+ }) {
559
+ const Comp = asChild ? Slot : "span";
560
+ return /* @__PURE__ */ jsx(
561
+ Comp,
562
+ {
563
+ "data-slot": "badge",
564
+ className: cn(badgeVariants({ variant }), className),
565
+ ...props
566
+ }
567
+ );
568
+ }
566
569
  function normalizePhoneNumber(input) {
567
570
  const trimmed = input.trim();
568
571
  if (trimmed.toLowerCase().startsWith("tel:")) {
@@ -839,6 +842,38 @@ var Pressable = React3.forwardRef(
839
842
  }
840
843
  );
841
844
  Pressable.displayName = "Pressable";
845
+ function TextInner({ as, className, children, ...props }, ref) {
846
+ const Component = as || "span";
847
+ return /* @__PURE__ */ jsx(Component, { ref, className: cn(className), ...props, children });
848
+ }
849
+ var Text = React3.forwardRef(TextInner);
850
+ Text.displayName = "Text";
851
+ function isContentTextItem(item) {
852
+ return item !== null && typeof item === "object" && !React3.isValidElement(item) && "_type" in item && item._type === "text";
853
+ }
854
+ var ContentGroup = React3.forwardRef(
855
+ ({ items, className, children, ...props }, ref) => {
856
+ const hasContent = items && items.length > 0;
857
+ if (!hasContent) {
858
+ return null;
859
+ }
860
+ return /* @__PURE__ */ jsxs("div", { ref, className: cn(className), ...props, children: [
861
+ items.map((item, idx) => {
862
+ if (isContentTextItem(item)) {
863
+ const { _type, ...textProps } = item;
864
+ return /* @__PURE__ */ jsx(Text, { ...textProps }, idx);
865
+ }
866
+ const reactNode = item;
867
+ if (React3.isValidElement(reactNode)) {
868
+ return React3.cloneElement(reactNode, { key: reactNode.key ?? idx });
869
+ }
870
+ return /* @__PURE__ */ jsx(React3.Fragment, { children: reactNode }, idx);
871
+ }),
872
+ children
873
+ ] });
874
+ }
875
+ );
876
+ ContentGroup.displayName = "ContentGroup";
842
877
  var MOBILE_CLASSES = {
843
878
  "fit-left": "items-start md:items-center",
844
879
  "fit-center": "items-center",
@@ -926,56 +961,40 @@ function HeroProductShowcaseFloating({
926
961
  spacing = "xl",
927
962
  contentClassName,
928
963
  headingClassName,
964
+ headerClassName,
929
965
  descriptionClassName,
930
966
  showcaseClassName,
931
967
  optixFlowConfig
932
968
  }) {
933
969
  const renderBadge = useMemo(() => {
934
970
  if (badgeSlot) return badgeSlot;
935
- return /* @__PURE__ */ jsxs(
936
- "div",
937
- {
938
- className: cn(
939
- "inline-flex w-fit items-center gap-2 rounded-full px-4 py-2 text-sm font-medium",
940
- `${getAccentColor(background)}/10`,
941
- getAccentColor(background)
942
- ),
943
- children: [
944
- badgeIcon && /* @__PURE__ */ jsx(DynamicIcon, { name: badgeIcon, size: 16 }),
945
- badgeText && /* @__PURE__ */ jsx("span", { children: badgeText })
946
- ]
947
- }
948
- );
971
+ return /* @__PURE__ */ jsxs(Badge, { className: cn("px-2"), children: [
972
+ badgeIcon && /* @__PURE__ */ jsx(DynamicIcon, { name: badgeIcon, size: 16 }),
973
+ badgeText && /* @__PURE__ */ jsx("span", { children: badgeText })
974
+ ] });
949
975
  }, [badgeSlot, badgeIcon, badgeText]);
950
976
  const renderFloatingStat = useMemo(() => {
951
977
  if (floatingStatSlot) return floatingStatSlot;
952
978
  if (!floatingStat) return null;
953
- return /* @__PURE__ */ jsx("div", { className: "absolute -top-4 -right-4 rounded-xl bg-background p-4 shadow-lg", children: /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-2", children: [
954
- floatingStat.icon && /* @__PURE__ */ jsx("div", { className: "flex h-10 w-10 items-center justify-center rounded-full bg-success/10", children: /* @__PURE__ */ jsx(
955
- DynamicIcon,
956
- {
957
- name: floatingStat.icon,
958
- size: 20,
959
- className: "text-success"
960
- }
961
- ) }),
962
- /* @__PURE__ */ jsxs("div", { children: [
963
- /* @__PURE__ */ jsx("div", { className: "text-2xl font-bold ", children: floatingStat.value }),
964
- /* @__PURE__ */ jsx("div", { className: cn("text-xs", getTextColor(background, "muted")), children: floatingStat.label })
979
+ return /* @__PURE__ */ jsx("div", { className: "absolute -top-4 -right-4 rounded-xl bg-card text-card-foreground p-4 shadow-lg border", children: /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-3", children: [
980
+ floatingStat.icon && /* @__PURE__ */ jsx("div", { className: "flex shrink-0 size-10 items-center justify-center rounded-full bg-primary text-primary-foreground shadow-lg", children: /* @__PURE__ */ jsx(DynamicIcon, { name: floatingStat.icon }) }),
981
+ /* @__PURE__ */ jsxs("div", { className: "text-sm", children: [
982
+ /* @__PURE__ */ jsx("div", { className: "font-semibold", children: floatingStat.value }),
983
+ /* @__PURE__ */ jsx("div", { className: "font-normal opacity-70", children: floatingStat.label })
965
984
  ] })
966
985
  ] }) });
967
986
  }, [floatingStatSlot, floatingStat]);
968
987
  const renderUserCount = useMemo(() => {
969
988
  if (userCountSlot) return userCountSlot;
970
989
  if (!userCount) return null;
971
- return /* @__PURE__ */ jsx("div", { className: "absolute -bottom-4 -left-4 rounded-xl bg-background p-4 shadow-lg", children: /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-3", children: [
990
+ return /* @__PURE__ */ jsx("div", { className: "absolute -bottom-4 -left-4 rounded-xl bg-card text-card-foreground p-4 shadow-lg border", children: /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-3", children: [
972
991
  userCount.avatars && userCount.avatars.length > 0 && /* @__PURE__ */ jsx("div", { className: "flex -space-x-2", children: userCount.avatars.map((avatar, idx) => /* @__PURE__ */ jsx(
973
992
  Img,
974
993
  {
975
994
  src: avatar.src,
976
995
  alt: avatar.alt,
977
996
  className: cn(
978
- "h-8 w-8 rounded-full border-2 border-background object-cover",
997
+ "size-8 rounded-full border-2 border-background object-cover",
979
998
  avatar.className
980
999
  ),
981
1000
  optixFlowConfig
@@ -983,8 +1002,8 @@ function HeroProductShowcaseFloating({
983
1002
  idx
984
1003
  )) }),
985
1004
  /* @__PURE__ */ jsxs("div", { className: "text-sm", children: [
986
- /* @__PURE__ */ jsx("div", { className: "font-semibold ", children: userCount.count }),
987
- /* @__PURE__ */ jsx("div", { className: getTextColor(background, "muted"), children: userCount.label })
1005
+ /* @__PURE__ */ jsx("div", { className: "font-semibold", children: userCount.count }),
1006
+ /* @__PURE__ */ jsx("div", { className: "font-normal opacity-70", children: userCount.label })
988
1007
  ] })
989
1008
  ] }) });
990
1009
  }, [userCountSlot, userCount, optixFlowConfig]);
@@ -992,7 +1011,7 @@ function HeroProductShowcaseFloating({
992
1011
  if (productImageSlot) return productImageSlot;
993
1012
  if (!productImage) return null;
994
1013
  return /* @__PURE__ */ jsx("div", { className: cn("order-1", showcaseClassName), children: /* @__PURE__ */ jsxs("div", { className: "relative", children: [
995
- /* @__PURE__ */ jsx("div", { className: "aspect-4/3 overflow-hidden rounded-2xl bg-linear-to-br from-primary/20 to-purple-500/20 p-8", children: /* @__PURE__ */ jsx(
1014
+ /* @__PURE__ */ jsx("div", { className: "aspect-square overflow-hidden rounded-2xl bg-linear-to-br from-primary/20 to-primary/80 p-8", children: /* @__PURE__ */ jsx(
996
1015
  Img,
997
1016
  {
998
1017
  src: productImage.src,
@@ -1015,6 +1034,37 @@ function HeroProductShowcaseFloating({
1015
1034
  renderFloatingStat,
1016
1035
  renderUserCount
1017
1036
  ]);
1037
+ const contentItems = useMemo(() => {
1038
+ const items = [];
1039
+ if (heading) {
1040
+ if (typeof heading === "string") {
1041
+ items.push({
1042
+ _type: "text",
1043
+ as: "h2",
1044
+ className: cn(
1045
+ "text-2xl font-semibold md:text-3xl lg:text-4xl",
1046
+ headingClassName
1047
+ ),
1048
+ children: heading
1049
+ });
1050
+ } else {
1051
+ items.push(heading);
1052
+ }
1053
+ }
1054
+ if (description) {
1055
+ if (typeof description === "string") {
1056
+ items.push({
1057
+ _type: "text",
1058
+ as: "p",
1059
+ className: cn("text-lg opacity-70", descriptionClassName),
1060
+ children: description
1061
+ });
1062
+ } else {
1063
+ items.push(description);
1064
+ }
1065
+ }
1066
+ return items;
1067
+ }, [heading, headingClassName, description, descriptionClassName]);
1018
1068
  return /* @__PURE__ */ jsx(
1019
1069
  Section,
1020
1070
  {
@@ -1022,42 +1072,22 @@ function HeroProductShowcaseFloating({
1022
1072
  spacing,
1023
1073
  pattern,
1024
1074
  patternOpacity,
1025
- className: cn(className),
1075
+ className,
1026
1076
  containerClassName,
1027
- children: /* @__PURE__ */ jsx("div", { className: "pt-10 md:pt-0", children: /* @__PURE__ */ jsxs("div", { className: "grid items-center gap-12 lg:grid-cols-2 lg:gap-20", children: [
1077
+ children: /* @__PURE__ */ jsx("div", { className: "relative", children: /* @__PURE__ */ jsxs("div", { className: "grid items-center gap-12 grid-cols-1 md:grid-cols-2 lg:gap-20", children: [
1028
1078
  renderProductShowcase,
1029
1079
  /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col gap-8 order-2", contentClassName), children: [
1030
1080
  renderBadge,
1031
- heading && (typeof heading === "string" ? /* @__PURE__ */ jsx(
1032
- "h1",
1033
- {
1034
- className: cn(
1035
- "text-4xl font-bold tracking-tight md:text-5xl lg:text-6xl",
1036
- headingClassName
1037
- ),
1038
- children: heading
1039
- }
1040
- ) : /* @__PURE__ */ jsx(
1041
- "h1",
1042
- {
1043
- className: cn(
1044
- "text-4xl font-bold tracking-tight md:text-5xl lg:text-6xl",
1045
- headingClassName
1046
- ),
1047
- children: heading
1048
- }
1049
- )),
1050
- description && (typeof description === "string" ? /* @__PURE__ */ jsx(
1051
- "p",
1081
+ /* @__PURE__ */ jsx(
1082
+ ContentGroup,
1052
1083
  {
1084
+ items: contentItems,
1053
1085
  className: cn(
1054
- "text-lg",
1055
- getTextColor(background, "muted"),
1056
- descriptionClassName
1057
- ),
1058
- children: description
1086
+ "text-left text-balance space-y-0 md:space-y-2",
1087
+ headerClassName
1088
+ )
1059
1089
  }
1060
- ) : /* @__PURE__ */ jsx("div", { className: descriptionClassName, children: description })),
1090
+ ),
1061
1091
  /* @__PURE__ */ jsx(
1062
1092
  BlockActions,
1063
1093
  {
package/dist/index.cjs CHANGED
@@ -1615,7 +1615,7 @@ var platformIconMap = {
1615
1615
  yelp: "cib/yelp",
1616
1616
  spotify: "cib/spotify",
1617
1617
  apple: "cib/apple",
1618
- x: "line-md/twitter-x-alt",
1618
+ x: "prime/twitter",
1619
1619
  github: "cib/github",
1620
1620
  snapchat: "cib/snapchat",
1621
1621
  discord: "cib/discord",
package/dist/index.js CHANGED
@@ -1593,7 +1593,7 @@ var platformIconMap = {
1593
1593
  yelp: "cib/yelp",
1594
1594
  spotify: "cib/spotify",
1595
1595
  apple: "cib/apple",
1596
- x: "line-md/twitter-x-alt",
1596
+ x: "prime/twitter",
1597
1597
  github: "cib/github",
1598
1598
  snapchat: "cib/snapchat",
1599
1599
  discord: "cib/discord",
@@ -841,7 +841,7 @@ var platformIconMap = {
841
841
  yelp: "cib/yelp",
842
842
  spotify: "cib/spotify",
843
843
  apple: "cib/apple",
844
- x: "line-md/twitter-x-alt",
844
+ x: "prime/twitter",
845
845
  github: "cib/github",
846
846
  snapchat: "cib/snapchat",
847
847
  discord: "cib/discord",
@@ -820,7 +820,7 @@ var platformIconMap = {
820
820
  yelp: "cib/yelp",
821
821
  spotify: "cib/spotify",
822
822
  apple: "cib/apple",
823
- x: "line-md/twitter-x-alt",
823
+ x: "prime/twitter",
824
824
  github: "cib/github",
825
825
  snapchat: "cib/snapchat",
826
826
  discord: "cib/discord",
@@ -841,7 +841,7 @@ var platformIconMap = {
841
841
  yelp: "cib/yelp",
842
842
  spotify: "cib/spotify",
843
843
  apple: "cib/apple",
844
- x: "line-md/twitter-x-alt",
844
+ x: "prime/twitter",
845
845
  github: "cib/github",
846
846
  snapchat: "cib/snapchat",
847
847
  discord: "cib/discord",
@@ -820,7 +820,7 @@ var platformIconMap = {
820
820
  yelp: "cib/yelp",
821
821
  spotify: "cib/spotify",
822
822
  apple: "cib/apple",
823
- x: "line-md/twitter-x-alt",
823
+ x: "prime/twitter",
824
824
  github: "cib/github",
825
825
  snapchat: "cib/snapchat",
826
826
  discord: "cib/discord",
@@ -841,7 +841,7 @@ var platformIconMap = {
841
841
  yelp: "cib/yelp",
842
842
  spotify: "cib/spotify",
843
843
  apple: "cib/apple",
844
- x: "line-md/twitter-x-alt",
844
+ x: "prime/twitter",
845
845
  github: "cib/github",
846
846
  snapchat: "cib/snapchat",
847
847
  discord: "cib/discord",
@@ -820,7 +820,7 @@ var platformIconMap = {
820
820
  yelp: "cib/yelp",
821
821
  spotify: "cib/spotify",
822
822
  apple: "cib/apple",
823
- x: "line-md/twitter-x-alt",
823
+ x: "prime/twitter",
824
824
  github: "cib/github",
825
825
  snapchat: "cib/snapchat",
826
826
  discord: "cib/discord",
@@ -842,7 +842,7 @@ var platformIconMap = {
842
842
  yelp: "cib/yelp",
843
843
  spotify: "cib/spotify",
844
844
  apple: "cib/apple",
845
- x: "line-md/twitter-x-alt",
845
+ x: "prime/twitter",
846
846
  github: "cib/github",
847
847
  snapchat: "cib/snapchat",
848
848
  discord: "cib/discord",
@@ -821,7 +821,7 @@ var platformIconMap = {
821
821
  yelp: "cib/yelp",
822
822
  spotify: "cib/spotify",
823
823
  apple: "cib/apple",
824
- x: "line-md/twitter-x-alt",
824
+ x: "prime/twitter",
825
825
  github: "cib/github",
826
826
  snapchat: "cib/snapchat",
827
827
  discord: "cib/discord",
@@ -875,7 +875,7 @@ var platformIconMap = {
875
875
  yelp: "cib/yelp",
876
876
  spotify: "cib/spotify",
877
877
  apple: "cib/apple",
878
- x: "line-md/twitter-x-alt",
878
+ x: "prime/twitter",
879
879
  github: "cib/github",
880
880
  snapchat: "cib/snapchat",
881
881
  discord: "cib/discord",
@@ -854,7 +854,7 @@ var platformIconMap = {
854
854
  yelp: "cib/yelp",
855
855
  spotify: "cib/spotify",
856
856
  apple: "cib/apple",
857
- x: "line-md/twitter-x-alt",
857
+ x: "prime/twitter",
858
858
  github: "cib/github",
859
859
  snapchat: "cib/snapchat",
860
860
  discord: "cib/discord",
@@ -901,7 +901,7 @@ var platformIconMap = {
901
901
  yelp: "cib/yelp",
902
902
  spotify: "cib/spotify",
903
903
  apple: "cib/apple",
904
- x: "line-md/twitter-x-alt",
904
+ x: "prime/twitter",
905
905
  github: "cib/github",
906
906
  snapchat: "cib/snapchat",
907
907
  discord: "cib/discord",
@@ -880,7 +880,7 @@ var platformIconMap = {
880
880
  yelp: "cib/yelp",
881
881
  spotify: "cib/spotify",
882
882
  apple: "cib/apple",
883
- x: "line-md/twitter-x-alt",
883
+ x: "prime/twitter",
884
884
  github: "cib/github",
885
885
  snapchat: "cib/snapchat",
886
886
  discord: "cib/discord",
@@ -973,7 +973,7 @@ var platformIconMap = {
973
973
  yelp: "cib/yelp",
974
974
  spotify: "cib/spotify",
975
975
  apple: "cib/apple",
976
- x: "line-md/twitter-x-alt",
976
+ x: "prime/twitter",
977
977
  github: "cib/github",
978
978
  snapchat: "cib/snapchat",
979
979
  discord: "cib/discord",
@@ -951,7 +951,7 @@ var platformIconMap = {
951
951
  yelp: "cib/yelp",
952
952
  spotify: "cib/spotify",
953
953
  apple: "cib/apple",
954
- x: "line-md/twitter-x-alt",
954
+ x: "prime/twitter",
955
955
  github: "cib/github",
956
956
  snapchat: "cib/snapchat",
957
957
  discord: "cib/discord",