@churchapps/apphelper 0.17.6 → 0.19.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (134) hide show
  1. package/dist/forms/components/ConversationalForm.d.ts +14 -0
  2. package/dist/forms/components/ConversationalForm.d.ts.map +1 -0
  3. package/dist/forms/components/ConversationalForm.js +60 -0
  4. package/dist/forms/components/ConversationalForm.js.map +1 -0
  5. package/dist/forms/components/FormSubmissionEdit.d.ts +1 -0
  6. package/dist/forms/components/FormSubmissionEdit.d.ts.map +1 -1
  7. package/dist/forms/components/FormSubmissionEdit.js +10 -5
  8. package/dist/forms/components/FormSubmissionEdit.js.map +1 -1
  9. package/dist/forms/components/index.d.ts +1 -0
  10. package/dist/forms/components/index.d.ts.map +1 -1
  11. package/dist/forms/components/index.js +1 -0
  12. package/dist/forms/components/index.js.map +1 -1
  13. package/dist/forms/helpers/Locale.d.ts.map +1 -1
  14. package/dist/forms/helpers/Locale.js +3 -0
  15. package/dist/forms/helpers/Locale.js.map +1 -1
  16. package/dist/helpers/Locale.d.ts.map +1 -1
  17. package/dist/helpers/Locale.js +3 -0
  18. package/dist/helpers/Locale.js.map +1 -1
  19. package/dist/login/LoginPage.d.ts.map +1 -1
  20. package/dist/login/LoginPage.js +12 -2
  21. package/dist/login/LoginPage.js.map +1 -1
  22. package/dist/login/components/Login.d.ts.map +1 -1
  23. package/dist/login/components/Login.js +2 -1
  24. package/dist/login/components/Login.js.map +1 -1
  25. package/dist/login/components/Register.d.ts.map +1 -1
  26. package/dist/login/components/Register.js +2 -1
  27. package/dist/login/components/Register.js.map +1 -1
  28. package/dist/login/components/SsoButtons.d.ts +3 -0
  29. package/dist/login/components/SsoButtons.d.ts.map +1 -0
  30. package/dist/login/components/SsoButtons.js +51 -0
  31. package/dist/login/components/SsoButtons.js.map +1 -0
  32. package/dist/login/index.d.ts +1 -0
  33. package/dist/login/index.d.ts.map +1 -1
  34. package/dist/login/index.js +1 -0
  35. package/dist/login/index.js.map +1 -1
  36. package/dist/public/locales/ar.json +3 -0
  37. package/dist/public/locales/cs.json +3 -0
  38. package/dist/public/locales/da.json +3 -0
  39. package/dist/public/locales/de.json +3 -0
  40. package/dist/public/locales/en.json +7 -0
  41. package/dist/public/locales/es.json +3 -0
  42. package/dist/public/locales/fi.json +3 -0
  43. package/dist/public/locales/fr.json +3 -0
  44. package/dist/public/locales/hi.json +3 -0
  45. package/dist/public/locales/hu.json +3 -0
  46. package/dist/public/locales/id.json +3 -0
  47. package/dist/public/locales/it.json +3 -0
  48. package/dist/public/locales/ja.json +3 -0
  49. package/dist/public/locales/ko.json +3 -0
  50. package/dist/public/locales/lt.json +3 -0
  51. package/dist/public/locales/nl.json +3 -0
  52. package/dist/public/locales/no.json +3 -0
  53. package/dist/public/locales/pl.json +3 -0
  54. package/dist/public/locales/pt.json +3 -0
  55. package/dist/public/locales/ro.json +3 -0
  56. package/dist/public/locales/ru.json +3 -0
  57. package/dist/public/locales/sk.json +3 -0
  58. package/dist/public/locales/sl.json +3 -0
  59. package/dist/public/locales/sr.json +3 -0
  60. package/dist/public/locales/sv.json +3 -0
  61. package/dist/public/locales/tl.json +3 -0
  62. package/dist/public/locales/tr.json +3 -0
  63. package/dist/public/locales/uk.json +3 -0
  64. package/dist/public/locales/vi.json +3 -0
  65. package/dist/public/locales/zh.json +3 -0
  66. package/dist/website/components/AnnouncementBanner.d.ts +17 -0
  67. package/dist/website/components/AnnouncementBanner.d.ts.map +1 -0
  68. package/dist/website/components/AnnouncementBanner.js +68 -0
  69. package/dist/website/components/AnnouncementBanner.js.map +1 -0
  70. package/dist/website/components/Element.d.ts.map +1 -1
  71. package/dist/website/components/Element.js +19 -1
  72. package/dist/website/components/Element.js.map +1 -1
  73. package/dist/website/components/Launcher.d.ts +17 -0
  74. package/dist/website/components/Launcher.d.ts.map +1 -0
  75. package/dist/website/components/Launcher.js +47 -0
  76. package/dist/website/components/Launcher.js.map +1 -0
  77. package/dist/website/components/SectionDivider.d.ts +13 -0
  78. package/dist/website/components/SectionDivider.d.ts.map +1 -0
  79. package/dist/website/components/SectionDivider.js +31 -0
  80. package/dist/website/components/SectionDivider.js.map +1 -0
  81. package/dist/website/components/elementTypes/CampaignProgressElement.d.ts +9 -0
  82. package/dist/website/components/elementTypes/CampaignProgressElement.d.ts.map +1 -0
  83. package/dist/website/components/elementTypes/CampaignProgressElement.js +42 -0
  84. package/dist/website/components/elementTypes/CampaignProgressElement.js.map +1 -0
  85. package/dist/website/components/elementTypes/CountdownElement.d.ts +8 -0
  86. package/dist/website/components/elementTypes/CountdownElement.d.ts.map +1 -0
  87. package/dist/website/components/elementTypes/CountdownElement.js +50 -0
  88. package/dist/website/components/elementTypes/CountdownElement.js.map +1 -0
  89. package/dist/website/components/elementTypes/FormElement.d.ts +1 -0
  90. package/dist/website/components/elementTypes/FormElement.d.ts.map +1 -1
  91. package/dist/website/components/elementTypes/FormElement.js +1 -1
  92. package/dist/website/components/elementTypes/FormElement.js.map +1 -1
  93. package/dist/website/components/elementTypes/GalleryElement.d.ts +9 -0
  94. package/dist/website/components/elementTypes/GalleryElement.d.ts.map +1 -0
  95. package/dist/website/components/elementTypes/GalleryElement.js +44 -0
  96. package/dist/website/components/elementTypes/GalleryElement.js.map +1 -0
  97. package/dist/website/components/elementTypes/IconFeatureElement.d.ts +8 -0
  98. package/dist/website/components/elementTypes/IconFeatureElement.d.ts.map +1 -0
  99. package/dist/website/components/elementTypes/IconFeatureElement.js +12 -0
  100. package/dist/website/components/elementTypes/IconFeatureElement.js.map +1 -0
  101. package/dist/website/components/elementTypes/SermonElement.d.ts +3 -1
  102. package/dist/website/components/elementTypes/SermonElement.d.ts.map +1 -1
  103. package/dist/website/components/elementTypes/SermonElement.js +43 -1
  104. package/dist/website/components/elementTypes/SermonElement.js.map +1 -1
  105. package/dist/website/components/elementTypes/ServiceTimesElement.d.ts +10 -0
  106. package/dist/website/components/elementTypes/ServiceTimesElement.d.ts.map +1 -0
  107. package/dist/website/components/elementTypes/ServiceTimesElement.js +69 -0
  108. package/dist/website/components/elementTypes/ServiceTimesElement.js.map +1 -0
  109. package/dist/website/components/elementTypes/SocialIconsElement.d.ts +9 -0
  110. package/dist/website/components/elementTypes/SocialIconsElement.d.ts.map +1 -0
  111. package/dist/website/components/elementTypes/SocialIconsElement.js +47 -0
  112. package/dist/website/components/elementTypes/SocialIconsElement.js.map +1 -0
  113. package/dist/website/components/elementTypes/StaffGridElement.d.ts +9 -0
  114. package/dist/website/components/elementTypes/StaffGridElement.d.ts.map +1 -0
  115. package/dist/website/components/elementTypes/StaffGridElement.js +27 -0
  116. package/dist/website/components/elementTypes/StaffGridElement.js.map +1 -0
  117. package/dist/website/components/elementTypes/StatsElement.d.ts +9 -0
  118. package/dist/website/components/elementTypes/StatsElement.d.ts.map +1 -0
  119. package/dist/website/components/elementTypes/StatsElement.js +62 -0
  120. package/dist/website/components/elementTypes/StatsElement.js.map +1 -0
  121. package/dist/website/components/elementTypes/TestimonialElement.d.ts +9 -0
  122. package/dist/website/components/elementTypes/TestimonialElement.d.ts.map +1 -0
  123. package/dist/website/components/elementTypes/TestimonialElement.js +36 -0
  124. package/dist/website/components/elementTypes/TestimonialElement.js.map +1 -0
  125. package/dist/website/components/elementTypes/index.d.ts +9 -0
  126. package/dist/website/components/elementTypes/index.d.ts.map +1 -1
  127. package/dist/website/components/elementTypes/index.js +9 -0
  128. package/dist/website/components/elementTypes/index.js.map +1 -1
  129. package/dist/website/components/index.d.ts +3 -0
  130. package/dist/website/components/index.d.ts.map +1 -1
  131. package/dist/website/components/index.js +3 -0
  132. package/dist/website/components/index.js.map +1 -1
  133. package/dist/website/styles/pages.css +121 -0
  134. package/package.json +2 -2
@@ -5,11 +5,13 @@ import { Typography, Breadcrumbs, Button, Grid, Card, CardContent, Box } from "@
5
5
  import FolderCopyIcon from "@mui/icons-material/FolderCopy";
6
6
  import TopicIcon from "@mui/icons-material/Topic";
7
7
  import LiveTvIcon from "@mui/icons-material/LiveTv";
8
+ import PlayCircleOutlineIcon from "@mui/icons-material/PlayCircleOutline";
9
+ import ArrowBackIcon from "@mui/icons-material/ArrowBack";
8
10
  import { ApiHelper } from "../../..";
9
11
  import { AppearanceHelper } from "../../..";
10
12
  import { Loading } from "../../..";
11
13
  import { EnvironmentHelper } from "../../helpers/EnvironmentHelper";
12
- export const SermonElement = ({ churchId, appearance }) => {
14
+ export const SermonElement = ({ churchId, appearance, element }) => {
13
15
  const [isLoading, setIsLoading] = useState(true);
14
16
  const [isActive, setIsActive] = useState("playlists");
15
17
  const [playlists, setPlaylists] = useState([]);
@@ -17,6 +19,12 @@ export const SermonElement = ({ churchId, appearance }) => {
17
19
  const [sermons, setSermons] = useState([]);
18
20
  const [activeSermons, setActiveSermons] = useState([]);
19
21
  const [activeVideo, setActiveVideo] = useState();
22
+ const answers = element?.answers || {};
23
+ const layout = answers.layout || "browse";
24
+ const filterPlaylistId = answers.playlistId || "";
25
+ const itemCount = Math.max(1, parseInt(answers.itemCount, 10) || 6);
26
+ const showTitles = answers.showTitles !== false && answers.showTitles !== "false";
27
+ const showDates = answers.showDates !== false && answers.showDates !== "false";
20
28
  useEffect(() => {
21
29
  EnvironmentHelper.init();
22
30
  ApiHelper.getAnonymous("/playlists/public/" + churchId, "ContentApi").then((data) => {
@@ -33,8 +41,42 @@ export const SermonElement = ({ churchId, appearance }) => {
33
41
  const filteredData = sermons.filter((item) => item.playlistId === id);
34
42
  setActiveSermons(filteredData);
35
43
  };
44
+ const formatDate = (date) => {
45
+ if (!date)
46
+ return "";
47
+ const d = new Date(date);
48
+ if (isNaN(d.getTime()))
49
+ return "";
50
+ return d.toLocaleDateString("en-US", { year: "numeric", month: "long", day: "numeric" });
51
+ };
52
+ const thumbFor = (item) => item.thumbnail || AppearanceHelper.getLogo(appearance, "/images/logo.png", "/images/logo.png", "#FFF");
53
+ const playVideo = (item) => {
54
+ setActiveVideo(item);
55
+ setIsActive("video");
56
+ };
36
57
  if (isLoading)
37
58
  return _jsx(Loading, {});
59
+ if (layout !== "browse") {
60
+ if (isActive === "video" && activeVideo?.videoUrl) {
61
+ return (_jsxs("div", { children: [_jsx(Button, { size: "small", startIcon: _jsx(ArrowBackIcon, {}), sx: { borderRadius: 3, marginBottom: 1 }, onClick: () => { setActiveVideo(undefined); setIsActive("playlists"); }, children: "Back" }), _jsx("div", { className: "videoWrapper", children: _jsx("iframe", { src: activeVideo.videoUrl.replace("controls=0", "controls=1"), allowFullScreen: true, style: { border: 0 } }) })] }));
62
+ }
63
+ const items = (Array.isArray(sermons) ? sermons : [])
64
+ .filter((item) => !filterPlaylistId || item.playlistId === filterPlaylistId)
65
+ .sort((a, b) => new Date(b.publishDate || 0).getTime() - new Date(a.publishDate || 0).getTime());
66
+ if (layout === "featuredLatest") {
67
+ const featured = items[0];
68
+ if (!featured)
69
+ return null;
70
+ return (_jsxs("div", { className: "sermonFeatured", onClick: () => playVideo(featured), "data-testid": "sermon-featured", children: [_jsxs("div", { className: "sermonThumb sermonThumbFeatured", children: [_jsx("img", { src: thumbFor(featured), alt: featured.title, loading: "lazy" }), _jsx(PlayCircleOutlineIcon, { className: "sermonPlayIcon", sx: { fontSize: 96 } })] }), showTitles && _jsx("h2", { className: "sermonFeaturedTitle", children: featured.title }), showDates && featured.publishDate && _jsx("div", { className: "sermonCardDate", children: formatDate(featured.publishDate) })] }));
71
+ }
72
+ const shown = items.slice(0, itemCount);
73
+ if (shown.length === 0)
74
+ return null;
75
+ if (layout === "list") {
76
+ return (_jsx("div", { className: "sermonList", "data-testid": "sermon-list", children: shown.map((item) => (_jsxs("div", { className: "sermonListItem", onClick: () => playVideo(item), children: [_jsxs("div", { className: "sermonThumb sermonThumbList", children: [_jsx("img", { src: thumbFor(item), alt: item.title, loading: "lazy" }), _jsx(PlayCircleOutlineIcon, { className: "sermonPlayIcon", sx: { fontSize: 48 } })] }), _jsxs("div", { className: "sermonListBody", children: [showTitles && _jsx("h3", { className: "sermonCardTitle", children: item.title }), showDates && item.publishDate && _jsx("div", { className: "sermonCardDate", children: formatDate(item.publishDate) }), item.description && _jsx("p", { className: "sermonListDesc", children: item.description })] })] }, item.id))) }));
77
+ }
78
+ return (_jsx("div", { className: "sermonGrid", "data-testid": "sermon-grid", children: shown.map((item) => (_jsxs("div", { className: "sermonCard", onClick: () => playVideo(item), children: [_jsxs("div", { className: "sermonThumb", children: [_jsx("img", { src: thumbFor(item), alt: item.title, loading: "lazy" }), _jsx(PlayCircleOutlineIcon, { className: "sermonPlayIcon", sx: { fontSize: 56 } })] }), showTitles && _jsx("h3", { className: "sermonCardTitle", children: item.title }), showDates && item.publishDate && _jsx("div", { className: "sermonCardDate", children: formatDate(item.publishDate) })] }, item.id))) }));
79
+ }
38
80
  return (_jsxs(_Fragment, { children: [_jsxs(Breadcrumbs, { children: [_jsx(Button, { size: "small", startIcon: _jsx(FolderCopyIcon, {}), variant: isActive === "playlists" ? "contained" : "text", color: isActive === "playlists" ? "primary" : "secondary", sx: { borderRadius: 3 }, onClick: () => {
39
81
  setIsActive("playlists");
40
82
  }, "data-testid": "sermon-playlists-button", children: "Playlists" }), activePlaylist?.title && (_jsx(Button, { size: "small", startIcon: _jsx(TopicIcon, {}), variant: isActive === "sermons" ? "contained" : "text", color: isActive === "sermons" ? "primary" : "secondary", sx: { borderRadius: 3 }, onClick: () => {
@@ -1 +1 @@
1
- {"version":3,"file":"SermonElement.js","sourceRoot":"","sources":["../../../../src/website/components/elementTypes/SermonElement.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SermonElement.js","sourceRoot":"","sources":["../../../../src/website/components/elementTypes/SermonElement.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import { ElementInterface, SectionInterface } from "../../helpers";
2
+ interface Props {
3
+ element: ElementInterface;
4
+ churchId: string;
5
+ churchName?: string;
6
+ onEdit?: (section: SectionInterface | null, element: ElementInterface) => void;
7
+ }
8
+ export declare const ServiceTimesElement: ({ element, churchId, churchName, onEdit }: Props) => import("react").JSX.Element;
9
+ export {};
10
+ //# sourceMappingURL=ServiceTimesElement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServiceTimesElement.d.ts","sourceRoot":"","sources":["../../../../src/website/components/elementTypes/ServiceTimesElement.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAKnE,UAAU,KAAK;IACb,OAAO,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,EAAE,OAAO,EAAE,gBAAgB,KAAK,IAAI,CAAC;CAChF;AA8CD,eAAO,MAAM,mBAAmB,GAAI,2CAA2C,KAAK,gCAoCnF,CAAC"}
@@ -0,0 +1,69 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useEffect, useState } from "react";
4
+ import { ApiHelper } from "../../..";
5
+ const DAY_URLS = {
6
+ sunday: "https://schema.org/Sunday",
7
+ monday: "https://schema.org/Monday",
8
+ tuesday: "https://schema.org/Tuesday",
9
+ wednesday: "https://schema.org/Wednesday",
10
+ thursday: "https://schema.org/Thursday",
11
+ friday: "https://schema.org/Friday",
12
+ saturday: "https://schema.org/Saturday"
13
+ };
14
+ const DAY_RE = /\b(sunday|monday|tuesday|wednesday|thursday|friday|saturday)\b/i;
15
+ const TIME_RE = /\b(1[0-2]|[1-9]):([0-5][0-9])\s*(AM|PM)\b/i;
16
+ const to24h = (h, m, ap) => {
17
+ let hour = h;
18
+ const isPM = ap.toUpperCase() === "PM";
19
+ if (isPM && hour !== 12)
20
+ hour += 12;
21
+ if (!isPM && hour === 12)
22
+ hour = 0;
23
+ return String(hour).padStart(2, "0") + ":" + m;
24
+ };
25
+ const buildJsonLd = (services, churchName) => {
26
+ const events = [];
27
+ services.forEach((s) => {
28
+ (s.times || []).forEach((t) => {
29
+ const text = ((s.serviceName || "") + " " + (t.name || "")).trim();
30
+ const day = DAY_RE.exec(text);
31
+ const time = TIME_RE.exec(text);
32
+ if (!day || !time)
33
+ return;
34
+ events.push({
35
+ "@type": "Event",
36
+ name: s.serviceName || t.name || "Service",
37
+ eventSchedule: {
38
+ "@type": "Schedule",
39
+ byDay: DAY_URLS[day[1].toLowerCase()],
40
+ startTime: to24h(parseInt(time[1], 10), time[2], time[3]),
41
+ repeatFrequency: "P1W"
42
+ },
43
+ ...(churchName ? { location: { "@type": "Place", name: churchName } } : {})
44
+ });
45
+ });
46
+ });
47
+ return events.length ? { "@context": "https://schema.org", "@graph": events } : null;
48
+ };
49
+ export const ServiceTimesElement = ({ element, churchId, churchName, onEdit }) => {
50
+ const answers = element.answers || {};
51
+ const title = answers.title || "Service Times";
52
+ const showCampus = answers.showCampus !== false && answers.showCampus !== "false";
53
+ const [services, setServices] = useState([]);
54
+ useEffect(() => {
55
+ if (!churchId)
56
+ return;
57
+ ApiHelper.getAnonymous("/servicetimes/public/" + churchId, "AttendanceApi")
58
+ .then((d) => setServices(Array.isArray(d) ? d : []))
59
+ .catch(() => setServices([]));
60
+ }, [churchId]);
61
+ if (services.length === 0) {
62
+ if (onEdit)
63
+ return _jsx("div", { className: "service-times-empty", children: "Service Times: no published services found" });
64
+ return null;
65
+ }
66
+ const jsonLd = buildJsonLd(services, churchName);
67
+ return (_jsxs("div", { id: "el-" + element.id, className: "serviceTimes", children: [title && _jsx("h3", { className: "service-times-title", children: title }), services.map((s) => (_jsxs("div", { className: "service-group", children: [_jsx("div", { className: "service-name", children: s.serviceName }), showCampus && s.campusName && _jsx("div", { className: "service-campus", children: s.campusName }), _jsx("ul", { className: "service-time-list", children: (s.times || []).map((t) => _jsx("li", { className: "service-time", children: t.name }, t.id)) })] }, s.serviceId))), jsonLd && _jsx("script", { type: "application/ld+json", dangerouslySetInnerHTML: { __html: JSON.stringify(jsonLd) } })] }));
68
+ };
69
+ //# sourceMappingURL=ServiceTimesElement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ServiceTimesElement.js","sourceRoot":"","sources":["../../../../src/website/components/elementTypes/ServiceTimesElement.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ import { ElementInterface, SectionInterface } from "../../helpers";
3
+ interface Props {
4
+ element: ElementInterface;
5
+ onEdit?: (section: SectionInterface | null, element: ElementInterface) => void;
6
+ }
7
+ export declare const SocialIconsElement: ({ element, onEdit }: Props) => React.JSX.Element;
8
+ export {};
9
+ //# sourceMappingURL=SocialIconsElement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SocialIconsElement.d.ts","sourceRoot":"","sources":["../../../../src/website/components/elementTypes/SocialIconsElement.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEnE,UAAU,KAAK;IACb,OAAO,EAAE,gBAAgB,CAAC;IAC1B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,EAAE,OAAO,EAAE,gBAAgB,KAAK,IAAI,CAAC;CAChF;AAaD,eAAO,MAAM,kBAAkB,GAAI,qBAAqB,KAAK,sBA8C5D,CAAC"}
@@ -0,0 +1,47 @@
1
+ "use client";
2
+ import { jsx as _jsx } from "react/jsx-runtime";
3
+ import React from "react";
4
+ import { SvgIcon } from "@mui/material";
5
+ import FacebookIcon from "@mui/icons-material/Facebook";
6
+ import InstagramIcon from "@mui/icons-material/Instagram";
7
+ import YouTubeIcon from "@mui/icons-material/YouTube";
8
+ import XIcon from "@mui/icons-material/X";
9
+ const TikTokIcon = () => (_jsx(SvgIcon, { viewBox: "0 0 24 24", children: _jsx("path", { d: "M16.6 5.82s.51.5 0 0A4.28 4.28 0 0 1 15.54 3h-3.09v12.4a2.59 2.59 0 0 1-2.59 2.5c-1.42 0-2.6-1.16-2.6-2.6c0-1.72 1.66-3.01 3.37-2.48V9.66c-3.45-.46-6.47 2.22-6.47 5.64c0 3.33 2.76 5.7 5.69 5.7c3.14 0 5.69-2.55 5.69-5.7V9.01a7.35 7.35 0 0 0 4.3 1.38V7.3s-1.88.09-3.24-1.48" }) }));
10
+ const VimeoIcon = () => (_jsx(SvgIcon, { viewBox: "0 0 24 24", children: _jsx("path", { d: "M22 7.42c-.1 2.14-1.59 5.06-4.48 8.78C14.54 20.08 12 22 9.89 22c-1.31 0-2.42-1.21-3.32-3.63c-.6-2.21-1.2-4.42-1.8-6.63c-.67-2.42-1.38-3.63-2.15-3.63c-.17 0-.75.35-1.74 1.04L0 7.83c1.05-.92 2.08-1.85 3.1-2.77C4.5 3.85 5.55 3.22 6.26 3.15c1.67-.16 2.7.98 3.08 3.42c.42 2.63.71 4.27.87 4.91c.49 2.22 1.03 3.33 1.62 3.33c.46 0 1.15-.72 2.07-2.17c.92-1.45 1.41-2.55 1.48-3.31c.13-1.24-.36-1.86-1.48-1.86c-.53 0-1.07.12-1.63.36c1.08-3.54 3.15-5.26 6.2-5.16c2.26.06 3.32 1.53 3.19 4.4" }) }));
11
+ const SIZES = { small: 32, medium: 44, large: 56 };
12
+ const ICON_SCALE = 0.55;
13
+ export const SocialIconsElement = ({ element, onEdit }) => {
14
+ const answers = element.answers || {};
15
+ const networks = [
16
+ { key: "facebook", url: answers.facebook, label: "Facebook", icon: _jsx(FacebookIcon, {}) },
17
+ { key: "instagram", url: answers.instagram, label: "Instagram", icon: _jsx(InstagramIcon, {}) },
18
+ { key: "youtube", url: answers.youtube, label: "YouTube", icon: _jsx(YouTubeIcon, {}) },
19
+ { key: "x", url: answers.x, label: "X", icon: _jsx(XIcon, {}) },
20
+ { key: "tiktok", url: answers.tiktok, label: "TikTok", icon: _jsx(TikTokIcon, {}) },
21
+ { key: "vimeo", url: answers.vimeo, label: "Vimeo", icon: _jsx(VimeoIcon, {}) }
22
+ ].filter((n) => n.url);
23
+ if (networks.length === 0) {
24
+ if (onEdit)
25
+ return _jsx("div", { className: "social-icons-empty", children: "Social Icons: add at least one profile URL" });
26
+ return null;
27
+ }
28
+ const outlined = answers.iconStyle === "outlined";
29
+ const color = answers.color || "#444444";
30
+ const size = SIZES[answers.size] || SIZES.medium;
31
+ const align = answers.alignment || "center";
32
+ const justify = align === "left" ? "flex-start" : align === "right" ? "flex-end" : "center";
33
+ const circleStyle = {
34
+ width: size,
35
+ height: size,
36
+ borderRadius: "50%",
37
+ display: "inline-flex",
38
+ alignItems: "center",
39
+ justifyContent: "center",
40
+ color: outlined ? color : "#fff",
41
+ background: outlined ? "transparent" : color,
42
+ border: outlined ? `2px solid ${color}` : "none",
43
+ textDecoration: "none"
44
+ };
45
+ return (_jsx("div", { id: "el-" + element.id, className: "social-icons", style: { display: "flex", gap: 12, justifyContent: justify, flexWrap: "wrap" }, children: networks.map((n) => (_jsx("a", { href: n.url, target: "_blank", rel: "noopener noreferrer", "aria-label": n.label, style: circleStyle, children: _jsx("span", { style: { display: "inline-flex", fontSize: size * ICON_SCALE, lineHeight: 0 }, children: React.isValidElement(n.icon) ? React.cloneElement(n.icon, { style: { fontSize: size * ICON_SCALE } }) : n.icon }) }, n.key))) }));
46
+ };
47
+ //# sourceMappingURL=SocialIconsElement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SocialIconsElement.js","sourceRoot":"","sources":["../../../../src/website/components/elementTypes/SocialIconsElement.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { ElementInterface, SectionInterface } from "../../helpers";
2
+ interface Props {
3
+ element: ElementInterface;
4
+ churchId: string;
5
+ onEdit?: (section: SectionInterface | null, element: ElementInterface) => void;
6
+ }
7
+ export declare const StaffGridElement: ({ element, churchId, onEdit }: Props) => import("react").JSX.Element;
8
+ export {};
9
+ //# sourceMappingURL=StaffGridElement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StaffGridElement.d.ts","sourceRoot":"","sources":["../../../../src/website/components/elementTypes/StaffGridElement.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAInE,UAAU,KAAK;IACb,OAAO,EAAE,gBAAgB,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,EAAE,OAAO,EAAE,gBAAgB,KAAK,IAAI,CAAC;CAChF;AAED,eAAO,MAAM,gBAAgB,GAAI,+BAA+B,KAAK,gCAiCpE,CAAC"}
@@ -0,0 +1,27 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useEffect, useState } from "react";
4
+ import { ApiHelper } from "../../..";
5
+ export const StaffGridElement = ({ element, churchId, onEdit }) => {
6
+ const answers = element.answers || {};
7
+ const groupId = answers.groupId || "";
8
+ const columns = Math.min(4, Math.max(2, parseInt(answers.columns, 10) || 3));
9
+ const showRoles = answers.showRoles !== false && answers.showRoles !== "false";
10
+ const [members, setMembers] = useState([]);
11
+ useEffect(() => {
12
+ if (!groupId || !churchId)
13
+ return;
14
+ ApiHelper.getAnonymous("/groupmembers/public/" + churchId + "/" + groupId, "MembershipApi")
15
+ .then((d) => setMembers(Array.isArray(d) ? d : []))
16
+ .catch(() => setMembers([]));
17
+ }, [churchId, groupId]);
18
+ if (members.length === 0) {
19
+ if (onEdit)
20
+ return _jsx("div", { className: "staff-empty", children: "Staff Grid: select a group with a public roster" });
21
+ return null;
22
+ }
23
+ return (_jsx("div", { id: "el-" + element.id, className: "staffGrid", style: { display: "grid", gridTemplateColumns: `repeat(${columns}, 1fr)`, gap: 24 }, children: members.map((m) => (_jsxs("div", { className: "staff-card", children: [m.photo
24
+ ? _jsx("img", { className: "staff-photo", src: m.photo, alt: m.name?.display || "", loading: "lazy" })
25
+ : _jsx("div", { className: "staff-photo staff-photo--placeholder", "aria-hidden": "true" }), _jsx("div", { className: "staff-name", children: m.name?.display || "" }), showRoles && m.role && _jsx("span", { className: "staff-role", children: m.role })] }, m.id))) }));
26
+ };
27
+ //# sourceMappingURL=StaffGridElement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StaffGridElement.js","sourceRoot":"","sources":["../../../../src/website/components/elementTypes/StaffGridElement.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAWrC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAS,EAAE,EAAE;IACvE,MAAM,OAAO,GAAQ,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;IAC3C,MAAM,OAAO,GAAI,OAAO,CAAC,OAAkB,IAAI,EAAE,CAAC;IAClD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC7E,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,KAAK,KAAK,IAAI,OAAO,CAAC,SAAS,KAAK,OAAO,CAAC;IAE/E,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAgB,EAAE,CAAC,CAAC;IAE1D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,OAAO,IAAI,CAAC,QAAQ;YAAE,OAAO;QAClC,SAAS,CAAC,YAAY,CAAC,uBAAuB,GAAG,QAAQ,GAAG,GAAG,GAAG,OAAO,EAAE,eAAe,CAAC;aACxF,IAAI,CAAC,CAAC,CAAgB,EAAE,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;aACjE,KAAK,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;IACjC,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;IAExB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,IAAI,MAAM;YAAE,OAAO,cAAK,SAAS,EAAC,aAAa,gEAAsD,CAAC;QACtG,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CACL,cAAK,EAAE,EAAE,KAAK,GAAG,OAAO,CAAC,EAAE,EAAE,SAAS,EAAC,WAAW,EAAC,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,mBAAmB,EAAE,UAAU,OAAO,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,YACnI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAClB,eAAK,SAAS,EAAC,YAAY,aACxB,CAAC,CAAC,KAAK;oBACN,CAAC,CAAC,cAAK,SAAS,EAAC,aAAa,EAAC,GAAG,EAAE,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,EAAE,OAAO,EAAC,MAAM,GAAG;oBAC1F,CAAC,CAAC,cAAK,SAAS,EAAC,sCAAsC,iBAAa,MAAM,GAAG,EAC/E,cAAK,SAAS,EAAC,YAAY,YAAE,CAAC,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,GAAO,EACxD,SAAS,IAAI,CAAC,CAAC,IAAI,IAAI,eAAM,SAAS,EAAC,YAAY,YAAE,CAAC,CAAC,IAAI,GAAQ,KALrC,CAAC,CAAC,EAAE,CAM/B,CACP,CAAC,GACE,CACP,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ import { ElementInterface, SectionInterface } from "../../helpers";
3
+ interface Props {
4
+ element: ElementInterface;
5
+ onEdit?: (section: SectionInterface | null, element: ElementInterface) => void;
6
+ }
7
+ export declare const StatsElement: ({ element, onEdit }: Props) => React.JSX.Element;
8
+ export {};
9
+ //# sourceMappingURL=StatsElement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StatsElement.d.ts","sourceRoot":"","sources":["../../../../src/website/components/elementTypes/StatsElement.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAInE,UAAU,KAAK;IACb,OAAO,EAAE,gBAAgB,CAAC;IAC1B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,EAAE,OAAO,EAAE,gBAAgB,KAAK,IAAI,CAAC;CAChF;AA8BD,eAAO,MAAM,YAAY,GAAI,qBAAqB,KAAK,sBA4BtD,CAAC"}
@@ -0,0 +1,62 @@
1
+ "use client";
2
+ import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
3
+ import { useEffect, useRef, useState } from "react";
4
+ const StatBlock = ({ item, animate }) => {
5
+ const target = Number(item.value) || 0;
6
+ const [display, setDisplay] = useState(animate ? 0 : target);
7
+ useEffect(() => {
8
+ if (!animate) {
9
+ setDisplay(target);
10
+ return;
11
+ }
12
+ const duration = 1500;
13
+ let raf = 0;
14
+ let start = 0;
15
+ const step = (ts) => {
16
+ if (!start)
17
+ start = ts;
18
+ const progress = Math.min(1, (ts - start) / duration);
19
+ const eased = 1 - Math.pow(1 - progress, 3);
20
+ setDisplay(Math.round(target * eased));
21
+ if (progress < 1)
22
+ raf = requestAnimationFrame(step);
23
+ };
24
+ raf = requestAnimationFrame(step);
25
+ return () => cancelAnimationFrame(raf);
26
+ }, [animate, target]);
27
+ return (_jsxs("div", { className: "stat-item", children: [_jsxs("div", { className: "stat-value", children: [item.prefix || "", display.toLocaleString(), item.suffix || ""] }), _jsx("div", { className: "stat-label", children: item.label })] }));
28
+ };
29
+ export const StatsElement = ({ element, onEdit }) => {
30
+ const items = Array.isArray(element.answers?.items) ? element.answers.items : [];
31
+ const columns = Math.min(4, Math.max(2, parseInt(element.answers?.columns, 10) || 3));
32
+ const ref = useRef(null);
33
+ const [animate, setAnimate] = useState(false);
34
+ useEffect(() => {
35
+ if (typeof window === "undefined")
36
+ return;
37
+ if (window.matchMedia?.("(prefers-reduced-motion: reduce)").matches) {
38
+ setAnimate(false);
39
+ return;
40
+ }
41
+ const node = ref.current;
42
+ if (!node || typeof IntersectionObserver === "undefined") {
43
+ setAnimate(true);
44
+ return;
45
+ }
46
+ const observer = new IntersectionObserver((entries) => {
47
+ if (entries.some((e) => e.isIntersecting)) {
48
+ setAnimate(true);
49
+ observer.disconnect();
50
+ }
51
+ }, { threshold: 0.3 });
52
+ observer.observe(node);
53
+ return () => observer.disconnect();
54
+ }, []);
55
+ if (items.length === 0) {
56
+ if (onEdit)
57
+ return _jsx("div", { className: "stats-empty", children: "Stats: add items to get started" });
58
+ return null;
59
+ }
60
+ return (_jsx("div", { id: "el-" + element.id, className: "stats", ref: ref, style: { display: "grid", gridTemplateColumns: `repeat(${columns}, 1fr)`, gap: 16 }, children: items.map((item, i) => _jsx(StatBlock, { item: item, animate: animate }, i)) }));
61
+ };
62
+ //# sourceMappingURL=StatsElement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StatsElement.js","sourceRoot":"","sources":["../../../../src/website/components/elementTypes/StatsElement.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ import { ElementInterface, SectionInterface } from "../../helpers";
3
+ interface Props {
4
+ element: ElementInterface;
5
+ onEdit?: (section: SectionInterface | null, element: ElementInterface) => void;
6
+ }
7
+ export declare const TestimonialElement: ({ element, onEdit }: Props) => React.JSX.Element;
8
+ export {};
9
+ //# sourceMappingURL=TestimonialElement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TestimonialElement.d.ts","sourceRoot":"","sources":["../../../../src/website/components/elementTypes/TestimonialElement.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAsC,MAAM,OAAO,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAInE,UAAU,KAAK;IACb,OAAO,EAAE,gBAAgB,CAAC;IAC1B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,EAAE,OAAO,EAAE,gBAAgB,KAAK,IAAI,CAAC;CAChF;AAeD,eAAO,MAAM,kBAAkB,GAAI,qBAAqB,KAAK,sBAuC5D,CAAC"}
@@ -0,0 +1,36 @@
1
+ "use client";
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useEffect, useRef, useState } from "react";
4
+ const prefersReducedMotion = () => typeof window !== "undefined" && window.matchMedia?.("(prefers-reduced-motion: reduce)").matches;
5
+ const QuoteCard = ({ quote }) => (_jsxs("blockquote", { className: "testimonial-quote", style: { margin: 0, textAlign: "center" }, children: [_jsx("p", { className: "testimonial-text", children: quote.text }), _jsxs("footer", { className: "testimonial-author", children: [quote.photoUrl && _jsx("img", { src: quote.photoUrl, alt: quote.author || "", className: "testimonial-photo", loading: "lazy", decoding: "async" }), _jsx("cite", { className: "testimonial-name", children: quote.author }), quote.role && _jsx("span", { className: "testimonial-role", children: quote.role })] })] }));
6
+ export const TestimonialElement = ({ element, onEdit }) => {
7
+ const quotes = Array.isArray(element.answers?.quotes) ? element.answers.quotes : [];
8
+ const rotate = element.answers?.displayMode === "rotate" && quotes.length > 1;
9
+ const [index, setIndex] = useState(0);
10
+ const [fade, setFade] = useState(true);
11
+ const reduce = useRef(false);
12
+ useEffect(() => { reduce.current = prefersReducedMotion(); }, []);
13
+ useEffect(() => {
14
+ if (!rotate)
15
+ return;
16
+ const interval = setInterval(() => {
17
+ if (reduce.current) {
18
+ setIndex((i) => (i + 1) % quotes.length);
19
+ return;
20
+ }
21
+ setFade(false);
22
+ setTimeout(() => { setIndex((i) => (i + 1) % quotes.length); setFade(true); }, 400);
23
+ }, 7000);
24
+ return () => clearInterval(interval);
25
+ }, [rotate, quotes.length]);
26
+ if (quotes.length === 0) {
27
+ if (onEdit)
28
+ return _jsx("div", { className: "testimonial-empty", children: "Testimonial: add quotes to get started" });
29
+ return null;
30
+ }
31
+ if (rotate) {
32
+ return (_jsx("div", { id: "el-" + element.id, className: "testimonial", children: _jsx("div", { style: { opacity: fade ? 1 : 0, transition: "opacity 0.4s ease" }, children: _jsx(QuoteCard, { quote: quotes[index] }) }) }));
33
+ }
34
+ return (_jsx("div", { id: "el-" + element.id, className: "testimonial", children: quotes.map((quote, i) => _jsx(QuoteCard, { quote: quote }, i)) }));
35
+ };
36
+ //# sourceMappingURL=TestimonialElement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TestimonialElement.js","sourceRoot":"","sources":["../../../../src/website/components/elementTypes/TestimonialElement.tsx"],"names":[],"mappings":"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"}
@@ -1,13 +1,17 @@
1
1
  export * from "./BoxElement";
2
2
  export * from "./ButtonLink";
3
3
  export * from "./CalendarElement";
4
+ export * from "./CampaignProgressElement";
4
5
  export * from "./CardElement";
5
6
  export * from "./CarouselElement";
7
+ export * from "./CountdownElement";
6
8
  export * from "./DonateLinkElement";
7
9
  export * from "./ElementBlock";
8
10
  export * from "./FaqElement";
9
11
  export * from "./FormElement";
12
+ export * from "./GalleryElement";
10
13
  export * from "./GroupListElement";
14
+ export * from "./IconFeatureElement";
11
15
  export * from "./HtmlPreview";
12
16
  export * from "./IframeElement";
13
17
  export * from "./ImageElement";
@@ -16,8 +20,13 @@ export * from "./MapElement";
16
20
  export * from "./RawHTMLElement";
17
21
  export * from "./RowElement";
18
22
  export * from "./SermonElement";
23
+ export * from "./ServiceTimesElement";
24
+ export * from "./SocialIconsElement";
25
+ export * from "./StaffGridElement";
26
+ export * from "./StatsElement";
19
27
  export * from "./StreamElement";
20
28
  export * from "./TableElement";
29
+ export * from "./TestimonialElement";
21
30
  export * from "./TextOnly";
22
31
  export * from "./TextWithPhoto";
23
32
  export * from "./VideoElement";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/website/components/elementTypes/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/website/components/elementTypes/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC"}
@@ -1,13 +1,17 @@
1
1
  export * from "./BoxElement";
2
2
  export * from "./ButtonLink";
3
3
  export * from "./CalendarElement";
4
+ export * from "./CampaignProgressElement";
4
5
  export * from "./CardElement";
5
6
  export * from "./CarouselElement";
7
+ export * from "./CountdownElement";
6
8
  export * from "./DonateLinkElement";
7
9
  export * from "./ElementBlock";
8
10
  export * from "./FaqElement";
9
11
  export * from "./FormElement";
12
+ export * from "./GalleryElement";
10
13
  export * from "./GroupListElement";
14
+ export * from "./IconFeatureElement";
11
15
  export * from "./HtmlPreview";
12
16
  export * from "./IframeElement";
13
17
  export * from "./ImageElement";
@@ -16,8 +20,13 @@ export * from "./MapElement";
16
20
  export * from "./RawHTMLElement";
17
21
  export * from "./RowElement";
18
22
  export * from "./SermonElement";
23
+ export * from "./ServiceTimesElement";
24
+ export * from "./SocialIconsElement";
25
+ export * from "./StaffGridElement";
26
+ export * from "./StatsElement";
19
27
  export * from "./StreamElement";
20
28
  export * from "./TableElement";
29
+ export * from "./TestimonialElement";
21
30
  export * from "./TextOnly";
22
31
  export * from "./TextWithPhoto";
23
32
  export * from "./VideoElement";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/website/components/elementTypes/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,oBAAoB,CAAC;AACnC,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/website/components/elementTypes/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,sBAAsB,CAAC;AACrC,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,qBAAqB,CAAC"}
@@ -1,5 +1,8 @@
1
+ export * from "./AnnouncementBanner";
1
2
  export * from "./Element";
2
3
  export * from "./ElementRegistry";
4
+ export * from "./Launcher";
5
+ export * from "./SectionDivider";
3
6
  export * from "./elementTypes";
4
7
  export * from "./eventCalendar";
5
8
  export * from "./admin";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/website/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,qBAAqB,CAAC;AACpC,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/website/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,qBAAqB,CAAC;AACpC,cAAc,WAAW,CAAC"}
@@ -1,5 +1,8 @@
1
+ export * from "./AnnouncementBanner";
1
2
  export * from "./Element";
2
3
  export * from "./ElementRegistry";
4
+ export * from "./Launcher";
5
+ export * from "./SectionDivider";
3
6
  export * from "./elementTypes";
4
7
  export * from "./eventCalendar";
5
8
  export * from "./admin";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/website/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,qBAAqB,CAAC;AACpC,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/website/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,qBAAqB,CAAC;AACpC,cAAc,WAAW,CAAC"}