@flamingo-stack/openframe-frontend-core 0.0.405 → 0.0.406-snapshot.20260711131925
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/{chunk-3KEBI6TP.cjs → chunk-2B6773QM.cjs} +1 -1
- package/dist/chunk-2B6773QM.cjs.map +1 -0
- package/dist/{chunk-RIGB7LP7.js → chunk-43H2WOAW.js} +3 -3
- package/dist/{chunk-QYTGHN2T.js → chunk-4UZH3MT2.js} +4 -4
- package/dist/{chunk-LREN3G7R.cjs → chunk-5M5W6XDY.cjs} +7 -7
- package/dist/{chunk-LREN3G7R.cjs.map → chunk-5M5W6XDY.cjs.map} +1 -1
- package/dist/{chunk-WEZIVLCO.cjs → chunk-74FWQI73.cjs} +18 -18
- package/dist/{chunk-WEZIVLCO.cjs.map → chunk-74FWQI73.cjs.map} +1 -1
- package/dist/{chunk-E6YHDT3D.js → chunk-7Q52HP45.js} +2 -2
- package/dist/chunk-7Q52HP45.js.map +1 -0
- package/dist/{chunk-3XCNFTFV.js → chunk-7XVFSGQA.js} +3 -3
- package/dist/{chunk-QAFRLO5N.cjs → chunk-CUN4CJUN.cjs} +10 -11
- package/dist/chunk-CUN4CJUN.cjs.map +1 -0
- package/dist/{chunk-ICJRSNBM.js → chunk-CVYSW33D.js} +199 -189
- package/dist/chunk-CVYSW33D.js.map +1 -0
- package/dist/{chunk-FOJRR647.cjs → chunk-DOBNDDNE.cjs} +75 -75
- package/dist/{chunk-FOJRR647.cjs.map → chunk-DOBNDDNE.cjs.map} +1 -1
- package/dist/{chunk-FFYEDIAG.cjs → chunk-GGDM5J4B.cjs} +332 -322
- package/dist/chunk-GGDM5J4B.cjs.map +1 -0
- package/dist/{chunk-UN2BJ7XW.js → chunk-GJSLKATJ.js} +2 -2
- package/dist/{chunk-GT7AJXKH.js → chunk-GMZL4T7C.js} +3 -3
- package/dist/{chunk-BK7QCB5J.js → chunk-H66L2265.js} +6 -6
- package/dist/{chunk-F3YLM5PO.js → chunk-HB63TQQO.js} +2 -2
- package/dist/{chunk-5XZEY34X.js → chunk-HJIRG7R6.js} +4 -4
- package/dist/{chunk-NA7XJRWB.js → chunk-KFQXO7QB.js} +1 -1
- package/dist/chunk-KFQXO7QB.js.map +1 -0
- package/dist/{chunk-Q2KKEE6W.js → chunk-KLBEIJVZ.js} +7 -7
- package/dist/{chunk-M6BGJVDY.cjs → chunk-LC6RRLFA.cjs} +15 -15
- package/dist/{chunk-M6BGJVDY.cjs.map → chunk-LC6RRLFA.cjs.map} +1 -1
- package/dist/{chunk-VFWEFR3Q.cjs → chunk-LPC3C7MG.cjs} +40 -40
- package/dist/{chunk-VFWEFR3Q.cjs.map → chunk-LPC3C7MG.cjs.map} +1 -1
- package/dist/{chunk-PNJ5LMVK.js → chunk-NO2KT42M.js} +9 -10
- package/dist/{chunk-PNJ5LMVK.js.map → chunk-NO2KT42M.js.map} +1 -1
- package/dist/{chunk-RC35ITSR.js → chunk-NSF7JUXF.js} +7 -7
- package/dist/{chunk-V4MOB3AD.cjs → chunk-PRKMOF2U.cjs} +14 -14
- package/dist/{chunk-V4MOB3AD.cjs.map → chunk-PRKMOF2U.cjs.map} +1 -1
- package/dist/{chunk-DHIYBC5Z.cjs → chunk-Q2MC3CBI.cjs} +35 -35
- package/dist/{chunk-DHIYBC5Z.cjs.map → chunk-Q2MC3CBI.cjs.map} +1 -1
- package/dist/{chunk-BS6O4HLJ.cjs → chunk-R4MXLJUS.cjs} +42 -42
- package/dist/{chunk-BS6O4HLJ.cjs.map → chunk-R4MXLJUS.cjs.map} +1 -1
- package/dist/{chunk-CCIBZ7TO.cjs → chunk-STGWQFYT.cjs} +5 -5
- package/dist/chunk-STGWQFYT.cjs.map +1 -0
- package/dist/{chunk-6OQ7YOX5.cjs → chunk-SY3QS2E5.cjs} +29 -29
- package/dist/{chunk-6OQ7YOX5.cjs.map → chunk-SY3QS2E5.cjs.map} +1 -1
- package/dist/{chunk-ELLTTMPE.cjs → chunk-WCPUJA3Y.cjs} +7 -7
- package/dist/{chunk-ELLTTMPE.cjs.map → chunk-WCPUJA3Y.cjs.map} +1 -1
- package/dist/{chunk-UIAQXIA6.js → chunk-XFP43YKG.js} +6 -6
- package/dist/{chunk-ACJ4CM6H.cjs → chunk-YX7C5JD7.cjs} +77 -77
- package/dist/{chunk-ACJ4CM6H.cjs.map → chunk-YX7C5JD7.cjs.map} +1 -1
- package/dist/components/announcement-bar.d.ts.map +1 -1
- package/dist/components/case-studies/index.cjs +10 -10
- package/dist/components/case-studies/index.js +4 -4
- package/dist/components/chat/index.cjs +4 -4
- package/dist/components/chat/index.js +3 -3
- package/dist/components/contact/index.cjs +5 -5
- package/dist/components/contact/index.js +4 -4
- package/dist/components/docs/index.cjs +7 -7
- package/dist/components/docs/index.js +6 -6
- package/dist/components/embeds/index.cjs +5 -5
- package/dist/components/embeds/index.js +4 -4
- package/dist/components/faq/index.cjs +6 -6
- package/dist/components/faq/index.js +5 -5
- package/dist/components/features/index.cjs +4 -4
- package/dist/components/features/index.js +3 -3
- package/dist/components/help-center-pages/index.cjs +23 -23
- package/dist/components/help-center-pages/index.js +14 -14
- package/dist/components/index.cjs +185 -179
- package/dist/components/index.cjs.map +1 -1
- package/dist/components/index.js +38 -32
- package/dist/components/index.js.map +1 -1
- package/dist/components/navigation/index.cjs +4 -4
- package/dist/components/navigation/index.js +3 -3
- package/dist/components/onboarding-guides/index.cjs +8 -8
- package/dist/components/onboarding-guides/index.js +7 -7
- package/dist/components/related-content/index.cjs +6 -6
- package/dist/components/related-content/index.js +5 -5
- package/dist/components/tickets/index.cjs +7 -7
- package/dist/components/tickets/index.js +6 -6
- package/dist/components/ui/index.cjs +4 -4
- package/dist/components/ui/index.js +3 -3
- package/dist/contexts/endpoints-runtime-context.d.ts +1 -1
- package/dist/contexts/endpoints-runtime-context.d.ts.map +1 -1
- package/dist/contexts/index.cjs +2 -2
- package/dist/contexts/index.js +1 -1
- package/dist/hooks/index.cjs +3 -3
- package/dist/hooks/index.js +2 -2
- package/dist/hooks/use-self-fetch.d.ts.map +1 -1
- package/dist/index.cjs +4 -4
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +5 -5
- package/dist/types/announcement.cjs.map +1 -1
- package/dist/types/announcement.d.ts +0 -6
- package/dist/types/announcement.d.ts.map +1 -1
- package/dist/types/announcement.js.map +1 -1
- package/dist/types/index.cjs.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/utils/announcement-storage.d.ts +3 -0
- package/dist/utils/announcement-storage.d.ts.map +1 -1
- package/dist/utils/app-config.d.ts.map +1 -1
- package/dist/utils/color-analysis.d.ts +0 -4
- package/dist/utils/color-analysis.d.ts.map +1 -1
- package/dist/utils/index.cjs +186 -177
- package/dist/utils/index.cjs.map +1 -1
- package/dist/utils/index.js +185 -176
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/ods-color-utils.d.ts +2 -1
- package/dist/utils/ods-color-utils.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/announcement-bar.tsx +38 -21
- package/src/components/features/video.tsx +8 -0
- package/src/contexts/endpoints-runtime-context.tsx +1 -1
- package/src/hooks/use-self-fetch.ts +10 -9
- package/src/stories/AnnouncementBar.stories.tsx +8 -14
- package/src/types/announcement.ts +0 -8
- package/src/utils/announcement-storage.ts +17 -0
- package/src/utils/app-config.ts +3 -2
- package/src/utils/color-analysis.ts +5 -2
- package/src/utils/ods-color-utils.ts +4 -7
- package/dist/chunk-3KEBI6TP.cjs.map +0 -1
- package/dist/chunk-CCIBZ7TO.cjs.map +0 -1
- package/dist/chunk-E6YHDT3D.js.map +0 -1
- package/dist/chunk-FFYEDIAG.cjs.map +0 -1
- package/dist/chunk-ICJRSNBM.js.map +0 -1
- package/dist/chunk-NA7XJRWB.js.map +0 -1
- package/dist/chunk-QAFRLO5N.cjs.map +0 -1
- /package/dist/{chunk-RIGB7LP7.js.map → chunk-43H2WOAW.js.map} +0 -0
- /package/dist/{chunk-QYTGHN2T.js.map → chunk-4UZH3MT2.js.map} +0 -0
- /package/dist/{chunk-3XCNFTFV.js.map → chunk-7XVFSGQA.js.map} +0 -0
- /package/dist/{chunk-UN2BJ7XW.js.map → chunk-GJSLKATJ.js.map} +0 -0
- /package/dist/{chunk-GT7AJXKH.js.map → chunk-GMZL4T7C.js.map} +0 -0
- /package/dist/{chunk-BK7QCB5J.js.map → chunk-H66L2265.js.map} +0 -0
- /package/dist/{chunk-F3YLM5PO.js.map → chunk-HB63TQQO.js.map} +0 -0
- /package/dist/{chunk-5XZEY34X.js.map → chunk-HJIRG7R6.js.map} +0 -0
- /package/dist/{chunk-Q2KKEE6W.js.map → chunk-KLBEIJVZ.js.map} +0 -0
- /package/dist/{chunk-RC35ITSR.js.map → chunk-NSF7JUXF.js.map} +0 -0
- /package/dist/{chunk-UIAQXIA6.js.map → chunk-XFP43YKG.js.map} +0 -0
package/dist/components/index.js
CHANGED
|
@@ -4,7 +4,7 @@ import "../chunk-GZ4C3XW6.js";
|
|
|
4
4
|
import {
|
|
5
5
|
GROUP_PAGE_SIZE,
|
|
6
6
|
RelatedContentSection
|
|
7
|
-
} from "../chunk-
|
|
7
|
+
} from "../chunk-7XVFSGQA.js";
|
|
8
8
|
import {
|
|
9
9
|
DeliveryLists,
|
|
10
10
|
DeliveryTable,
|
|
@@ -21,7 +21,7 @@ import {
|
|
|
21
21
|
useLegalDocs,
|
|
22
22
|
usePaginationLoading,
|
|
23
23
|
useRoadmapVoting
|
|
24
|
-
} from "../chunk-
|
|
24
|
+
} from "../chunk-KLBEIJVZ.js";
|
|
25
25
|
import {
|
|
26
26
|
AnnouncementBarSkeleton,
|
|
27
27
|
ArticleLayoutSkeleton,
|
|
@@ -54,17 +54,17 @@ import {
|
|
|
54
54
|
useDocNavigation,
|
|
55
55
|
useDocumentTree,
|
|
56
56
|
useScrollSpy
|
|
57
|
-
} from "../chunk-
|
|
57
|
+
} from "../chunk-XFP43YKG.js";
|
|
58
58
|
import {
|
|
59
59
|
FileDownloadCard,
|
|
60
60
|
GoogleSheetsViewer,
|
|
61
61
|
PdfViewer
|
|
62
|
-
} from "../chunk-
|
|
62
|
+
} from "../chunk-GJSLKATJ.js";
|
|
63
63
|
import {
|
|
64
64
|
FaqAccordion,
|
|
65
65
|
FaqDocumentPage,
|
|
66
66
|
FaqSection
|
|
67
|
-
} from "../chunk-
|
|
67
|
+
} from "../chunk-4UZH3MT2.js";
|
|
68
68
|
import {
|
|
69
69
|
DeliveryRow,
|
|
70
70
|
DevCardRowContent,
|
|
@@ -75,11 +75,11 @@ import {
|
|
|
75
75
|
EmptyState,
|
|
76
76
|
UnifiedPagination,
|
|
77
77
|
init_unified_pagination
|
|
78
|
-
} from "../chunk-
|
|
78
|
+
} from "../chunk-HB63TQQO.js";
|
|
79
79
|
import {
|
|
80
80
|
ArticleAuthorByline,
|
|
81
81
|
DetailPageSkeleton
|
|
82
|
-
} from "../chunk-
|
|
82
|
+
} from "../chunk-GMZL4T7C.js";
|
|
83
83
|
import {
|
|
84
84
|
DocSearchBar,
|
|
85
85
|
DocSearchResultRow,
|
|
@@ -87,10 +87,10 @@ import {
|
|
|
87
87
|
mapDocSearchResults,
|
|
88
88
|
resolveSearchResultAction,
|
|
89
89
|
useDocSearch
|
|
90
|
-
} from "../chunk-
|
|
90
|
+
} from "../chunk-HJIRG7R6.js";
|
|
91
91
|
import {
|
|
92
92
|
useSelfFetch
|
|
93
|
-
} from "../chunk-
|
|
93
|
+
} from "../chunk-NO2KT42M.js";
|
|
94
94
|
import "../chunk-4XLJWX2N.js";
|
|
95
95
|
import {
|
|
96
96
|
ADMIN_APPROVAL_REQUEST_CONTEXT_TYPE,
|
|
@@ -879,7 +879,7 @@ import {
|
|
|
879
879
|
useVideoOriginPreconnect,
|
|
880
880
|
useVideoWarmup,
|
|
881
881
|
usesCanonicalStatusStyle
|
|
882
|
-
} from "../chunk-
|
|
882
|
+
} from "../chunk-CVYSW33D.js";
|
|
883
883
|
import {
|
|
884
884
|
CommandApprovalToast,
|
|
885
885
|
ToastCard,
|
|
@@ -898,12 +898,12 @@ import {
|
|
|
898
898
|
showToast,
|
|
899
899
|
useOnboardingState,
|
|
900
900
|
useToast
|
|
901
|
-
} from "../chunk-
|
|
901
|
+
} from "../chunk-7Q52HP45.js";
|
|
902
902
|
import "../chunk-OYGFWWLQ.js";
|
|
903
903
|
import {
|
|
904
904
|
useChatRuntime,
|
|
905
905
|
useEndpointsRuntime
|
|
906
|
-
} from "../chunk-
|
|
906
|
+
} from "../chunk-KFQXO7QB.js";
|
|
907
907
|
import "../chunk-EL5YVPD5.js";
|
|
908
908
|
import {
|
|
909
909
|
init_next_navigation,
|
|
@@ -1115,7 +1115,7 @@ import "../chunk-GGWZFCYS.js";
|
|
|
1115
1115
|
|
|
1116
1116
|
// src/components/announcement-bar.tsx
|
|
1117
1117
|
init_button();
|
|
1118
|
-
import { useEffect, useMemo, useState } from "react";
|
|
1118
|
+
import { useEffect, useMemo, useRef, useState } from "react";
|
|
1119
1119
|
import { X } from "lucide-react";
|
|
1120
1120
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
1121
1121
|
function AnnouncementBar({
|
|
@@ -1135,6 +1135,11 @@ function AnnouncementBar({
|
|
|
1135
1135
|
revalidateOnVisibleAfterMs: 6e4
|
|
1136
1136
|
});
|
|
1137
1137
|
const announcement = data?.announcement ?? null;
|
|
1138
|
+
const lastAnnouncementRef = useRef(initialAnnouncement ?? null);
|
|
1139
|
+
useEffect(() => {
|
|
1140
|
+
if (announcement) lastAnnouncementRef.current = announcement;
|
|
1141
|
+
}, [announcement]);
|
|
1142
|
+
const displayAnnouncement = announcement ?? lastAnnouncementRef.current;
|
|
1138
1143
|
const [expandedState, setExpandedState] = useState(() => initialAnnouncement != null);
|
|
1139
1144
|
const expanded = previewMode ? announcement != null : expandedState;
|
|
1140
1145
|
useEffect(() => {
|
|
@@ -1157,13 +1162,14 @@ function AnnouncementBar({
|
|
|
1157
1162
|
const handleDismiss = () => {
|
|
1158
1163
|
if (previewMode || !announcement) return;
|
|
1159
1164
|
dismissAnnouncement(platform, announcement.id);
|
|
1165
|
+
document.activeElement?.blur?.();
|
|
1160
1166
|
setExpandedState(false);
|
|
1161
1167
|
};
|
|
1162
1168
|
const handleCtaClick = () => {
|
|
1163
1169
|
if (previewMode || !announcement?.cta_url) return;
|
|
1164
1170
|
let safeUrl;
|
|
1165
1171
|
try {
|
|
1166
|
-
const parsed = new URL(announcement.cta_url, window.location.
|
|
1172
|
+
const parsed = new URL(announcement.cta_url, window.location.href);
|
|
1167
1173
|
if (parsed.protocol !== "http:" && parsed.protocol !== "https:") return;
|
|
1168
1174
|
safeUrl = parsed.href;
|
|
1169
1175
|
} catch {
|
|
@@ -1171,10 +1177,10 @@ function AnnouncementBar({
|
|
|
1171
1177
|
}
|
|
1172
1178
|
announcement.cta_target === "_blank" ? window.open(safeUrl, "_blank", "noopener,noreferrer") : window.location.href = safeUrl;
|
|
1173
1179
|
};
|
|
1174
|
-
if (!
|
|
1175
|
-
const themeScope = pickReadableTextColor(
|
|
1180
|
+
if (!displayAnnouncement) return null;
|
|
1181
|
+
const themeScope = pickReadableTextColor(displayAnnouncement.background_color) === "dark" ? "theme-light" : "theme-dark";
|
|
1176
1182
|
const barButtonClasses = "text-[color:var(--ods-system-greys-white)] hover:bg-[var(--ods-system-greys-black-hover)] active:bg-[var(--ods-system-greys-black-action)]";
|
|
1177
|
-
const hasCta = Boolean(
|
|
1183
|
+
const hasCta = Boolean(displayAnnouncement.cta_enabled && displayAnnouncement.cta_url && displayAnnouncement.cta_text);
|
|
1178
1184
|
return /* @__PURE__ */ jsx(
|
|
1179
1185
|
"div",
|
|
1180
1186
|
{
|
|
@@ -1184,7 +1190,7 @@ function AnnouncementBar({
|
|
|
1184
1190
|
"data-announcement-bar": true,
|
|
1185
1191
|
className: `relative w-full z-50 grid transition-[grid-template-rows] duration-200 ease-out motion-reduce:transition-none ${className ?? ""}`,
|
|
1186
1192
|
style: { gridTemplateRows: expanded ? "1fr" : "0fr" },
|
|
1187
|
-
children: /* @__PURE__ */ jsx("div", { className: `min-h-0 overflow-hidden ${themeScope}`, style: { backgroundColor:
|
|
1193
|
+
children: /* @__PURE__ */ jsx("div", { className: `min-h-0 overflow-hidden ${themeScope}`, style: { backgroundColor: displayAnnouncement.background_color }, children: /* @__PURE__ */ jsxs("div", { className: "flex items-center w-full max-w-full min-h-11 text-[color:var(--ods-system-greys-white)]", children: [
|
|
1188
1194
|
/* @__PURE__ */ jsxs(
|
|
1189
1195
|
"div",
|
|
1190
1196
|
{
|
|
@@ -1200,22 +1206,22 @@ function AnnouncementBar({
|
|
|
1200
1206
|
EntityIcon,
|
|
1201
1207
|
{
|
|
1202
1208
|
icon: {
|
|
1203
|
-
name:
|
|
1204
|
-
url:
|
|
1205
|
-
props:
|
|
1209
|
+
name: displayAnnouncement.icon_name || "openframe-logo",
|
|
1210
|
+
url: displayAnnouncement.icon_url,
|
|
1211
|
+
props: displayAnnouncement.icon_props
|
|
1206
1212
|
},
|
|
1207
1213
|
size: 24,
|
|
1208
1214
|
className: "relative shrink-0 w-5 h-5 md:w-6 md:h-6"
|
|
1209
1215
|
}
|
|
1210
1216
|
),
|
|
1211
1217
|
/* @__PURE__ */ jsxs("p", { className: "font-body flex-1 min-w-0 max-w-full text-[13px] md:text-sm leading-snug truncate mb-0", children: [
|
|
1212
|
-
/* @__PURE__ */ jsx("span", { className: "font-semibold", children:
|
|
1213
|
-
|
|
1218
|
+
/* @__PURE__ */ jsx("span", { className: "font-semibold", children: displayAnnouncement.title }),
|
|
1219
|
+
displayAnnouncement.description && /* @__PURE__ */ jsxs("span", { className: "hidden sm:inline opacity-80", children: [
|
|
1214
1220
|
" \xB7 ",
|
|
1215
|
-
|
|
1221
|
+
displayAnnouncement.description
|
|
1216
1222
|
] })
|
|
1217
1223
|
] }),
|
|
1218
|
-
hasCta &&
|
|
1224
|
+
hasCta && displayAnnouncement.cta_text && /* @__PURE__ */ jsx("div", { className: "hidden md:flex flex-shrink-0 ml-1", children: /* @__PURE__ */ jsx(
|
|
1219
1225
|
Button,
|
|
1220
1226
|
{
|
|
1221
1227
|
onClick: handleCtaClick,
|
|
@@ -1223,15 +1229,15 @@ function AnnouncementBar({
|
|
|
1223
1229
|
size: "small",
|
|
1224
1230
|
className: barButtonClasses,
|
|
1225
1231
|
tabIndex: expanded ? 0 : -1,
|
|
1226
|
-
leftIcon:
|
|
1232
|
+
leftIcon: displayAnnouncement.cta_show_icon && displayAnnouncement.cta_icon_name ? /* @__PURE__ */ jsx(
|
|
1227
1233
|
EntityIcon,
|
|
1228
1234
|
{
|
|
1229
|
-
icon: { name:
|
|
1235
|
+
icon: { name: displayAnnouncement.cta_icon_name, props: displayAnnouncement.cta_icon_props },
|
|
1230
1236
|
size: 14,
|
|
1231
1237
|
className: "w-3.5 h-3.5"
|
|
1232
1238
|
}
|
|
1233
1239
|
) : void 0,
|
|
1234
|
-
children:
|
|
1240
|
+
children: displayAnnouncement.cta_text
|
|
1235
1241
|
}
|
|
1236
1242
|
) })
|
|
1237
1243
|
]
|
|
@@ -2636,11 +2642,11 @@ function FooterWaitlistButton({ className }) {
|
|
|
2636
2642
|
|
|
2637
2643
|
// src/components/hero-image-uploader.tsx
|
|
2638
2644
|
init_button();
|
|
2639
|
-
import { useRef, useState as useState2 } from "react";
|
|
2645
|
+
import { useRef as useRef2, useState as useState2 } from "react";
|
|
2640
2646
|
import { Loader2, Image as ImageIcon2, Upload, X as X3 } from "lucide-react";
|
|
2641
2647
|
import { Fragment as Fragment4, jsx as jsx15, jsxs as jsxs12 } from "react/jsx-runtime";
|
|
2642
2648
|
function HeroImageUploader({ imageUrl, onChange, uploadEndpoint, height = 300, objectFit = "cover", showReplaceButton = true, deferUpload = false, onUpload, onDelete }) {
|
|
2643
|
-
const inputRef =
|
|
2649
|
+
const inputRef = useRef2(null);
|
|
2644
2650
|
const { toast } = useToast();
|
|
2645
2651
|
const [uploading, setUploading] = useState2(false);
|
|
2646
2652
|
const ALLOWED_TYPES = ["image/jpeg", "image/jpg", "image/png", "image/webp", "image/gif"];
|
|
@@ -2758,7 +2764,7 @@ function HeroImageUploader({ imageUrl, onChange, uploadEndpoint, height = 300, o
|
|
|
2758
2764
|
}
|
|
2759
2765
|
|
|
2760
2766
|
// src/components/icons-block.tsx
|
|
2761
|
-
import { useState as useState3, useEffect as useEffect2, useRef as
|
|
2767
|
+
import { useState as useState3, useEffect as useEffect2, useRef as useRef3 } from "react";
|
|
2762
2768
|
|
|
2763
2769
|
// src/components/icons-stub.tsx
|
|
2764
2770
|
import { DollarSign, Code, Users, Building, GitCompare, MessageSquare } from "lucide-react";
|
|
@@ -2797,7 +2803,7 @@ function ResponsiveIconsBlock({ loading = false }) {
|
|
|
2797
2803
|
const [columns, setColumns] = useState3(24);
|
|
2798
2804
|
const [iconGrid, setIconGrid] = useState3([]);
|
|
2799
2805
|
const [iconsLoaded, setIconsLoaded] = useState3(false);
|
|
2800
|
-
const randomSeedRef =
|
|
2806
|
+
const randomSeedRef = useRef3(0);
|
|
2801
2807
|
useEffect2(() => {
|
|
2802
2808
|
function calculateColumns() {
|
|
2803
2809
|
const cols = Math.ceil(window.innerWidth / 56) + 4;
|