@geowiki/cms 0.15.0-dev.1

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 (98) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +55 -0
  3. package/dist/BannerFollowLinksWidget-26TXCSTL.mjs +21 -0
  4. package/dist/CardGridWidget-VZIU6X63.mjs +7 -0
  5. package/dist/CardWidget-7UX7ACLE.mjs +7 -0
  6. package/dist/ColumnWidget-XEDFONE6.mjs +7 -0
  7. package/dist/ContactCardsWidget-KRR6IY4X.mjs +95 -0
  8. package/dist/ContactWidget-WJH7K4FN.mjs +7 -0
  9. package/dist/ContainerWidget-6T555RQD.mjs +8 -0
  10. package/dist/DownloadQuestWidget-EVKBU33Z.mjs +86 -0
  11. package/dist/EntityListWidget-JC6UCIP5.mjs +7 -0
  12. package/dist/FarmerClusterFinderWidget-YENEGEZN.mjs +7 -0
  13. package/dist/FeatureRowWidget-YXCRZBKZ.mjs +7 -0
  14. package/dist/FeatureRowWithImageWidget-RDAGTLCL.mjs +7 -0
  15. package/dist/FeatureRowWithMultipleImagesWidget-NWLWBI3L.mjs +7 -0
  16. package/dist/GalleryWidget-7A3FR3Y7.mjs +7 -0
  17. package/dist/H2BodyInternalLinkMapWidget-T7MARJTA.mjs +78 -0
  18. package/dist/HeaderBodyWidget-ZW2WYKNP.mjs +27 -0
  19. package/dist/HeaderWidget-DUNY7APY.mjs +7 -0
  20. package/dist/HeadingTextWidget-YC36BLDY.mjs +6 -0
  21. package/dist/HeroCenterTextWidget-5LDZNUBR.mjs +7 -0
  22. package/dist/HeroMap-AT3N4ZVZ.mjs +164 -0
  23. package/dist/HeroWidget-A4ODJCXZ.mjs +7 -0
  24. package/dist/IframeWidget-DPA25ZE2.mjs +17 -0
  25. package/dist/ImageLeftH3BodyLinkWidget-JMALBJVD.mjs +26 -0
  26. package/dist/ImageLefttH3BodyWidget-2YAEQZHJ.mjs +26 -0
  27. package/dist/ImageWidget-JWDKESIB.mjs +7 -0
  28. package/dist/LanguagesWidget-OENZMIFA.mjs +61 -0
  29. package/dist/MapHeroWidget-MLNO6KKC.mjs +7 -0
  30. package/dist/MarkdownWidget-QTTNNVQW.mjs +7 -0
  31. package/dist/NewContactUsWidget-R5TILYPP.mjs +237 -0
  32. package/dist/NewTestimonialsWidget-CVFZM2UI.mjs +17 -0
  33. package/dist/NewfeedPreviewWidget-VM6ZMYGO.mjs +25 -0
  34. package/dist/NewsFeedWidget-4W7T4H2P.mjs +22 -0
  35. package/dist/NewsLetterWidget-PMR355EB.mjs +7 -0
  36. package/dist/QuestMapClient-B6LGGSGT.mjs +120 -0
  37. package/dist/QuestMapWidget-5JIFDDUO.mjs +22 -0
  38. package/dist/ResourceCollectionItemWidget-QXAJEPCN.mjs +7 -0
  39. package/dist/ResourceCollectionsWidget-KZ5HD3PG.mjs +8 -0
  40. package/dist/ResourceQuickFindWidget-S3OJV3GF.mjs +9 -0
  41. package/dist/RowWidget-VSVZUIYH.mjs +7 -0
  42. package/dist/SelectQuestWidget-YGZ5TFLV.mjs +161 -0
  43. package/dist/SignUpBannerWidget-R77S5VSL.mjs +27 -0
  44. package/dist/SimpleActionListWidget-NF32S56W.mjs +7 -0
  45. package/dist/SimpleCallToActionWidget-3LI6HMJR.mjs +7 -0
  46. package/dist/SixClusterNewsWidget-5DDHGLAI.mjs +11 -0
  47. package/dist/SpecialFeaturesWidget-ZWILQPVB.mjs +7 -0
  48. package/dist/StatsWidget-4MISF6XB.mjs +7 -0
  49. package/dist/SubtitleH2BodyVideoWidget-CP7T4FJ6.mjs +24 -0
  50. package/dist/SubtitleH3BodyInternalLinkListWidget-KFP3TIKE.mjs +25 -0
  51. package/dist/SubtitleH3BodySpecialFeatureResourceCollectionsWidget-62SJ4J73.mjs +37 -0
  52. package/dist/SubtitleH3BodyWidget-7XGVXSMR.mjs +35 -0
  53. package/dist/SubtitleH3ChildrenWidget-CA3TR726.mjs +40 -0
  54. package/dist/SubtitleH3FaqWidget-VXVV7TUL.mjs +78 -0
  55. package/dist/SubtitleH3KeyResourcesWidget-AGBBJ7ZJ.mjs +24 -0
  56. package/dist/SubtitleH3ResourceCollectionsWidget-IBDVHMSC.mjs +37 -0
  57. package/dist/TestimonialListWidget-5OKZ5TQQ.mjs +7 -0
  58. package/dist/UpdateUserInfoWidget-4I6RJQ5M.mjs +7 -0
  59. package/dist/UserInfoWidget-AS53SE7B.mjs +7 -0
  60. package/dist/VideoWidget-YRR7FCDN.mjs +18 -0
  61. package/dist/chunk-4AG2CMM3.mjs +86 -0
  62. package/dist/chunk-AO6SFQGL.mjs +20 -0
  63. package/dist/chunk-AQKMITUZ.mjs +52 -0
  64. package/dist/chunk-DED6JF7X.mjs +335 -0
  65. package/dist/chunk-DMKIIBTI.mjs +11 -0
  66. package/dist/chunk-DVN7SXOC.mjs +131 -0
  67. package/dist/chunk-ECRLCFXK.mjs +65 -0
  68. package/dist/chunk-ER4KI2WR.mjs +24 -0
  69. package/dist/chunk-FQ57AT5X.mjs +51 -0
  70. package/dist/chunk-HLTYOLFG.mjs +20 -0
  71. package/dist/chunk-J7SY757T.mjs +44 -0
  72. package/dist/chunk-JJWETKAK.mjs +18 -0
  73. package/dist/chunk-JNVPTKNZ.mjs +20 -0
  74. package/dist/chunk-KR42WXX4.mjs +18 -0
  75. package/dist/chunk-LIPPN7U2.mjs +25 -0
  76. package/dist/chunk-MR3ABJDZ.mjs +30 -0
  77. package/dist/chunk-NSGNUHUW.mjs +28 -0
  78. package/dist/chunk-O6WFR4J5.mjs +10 -0
  79. package/dist/chunk-OCSKL7XJ.mjs +34 -0
  80. package/dist/chunk-QDEIIXMC.mjs +52 -0
  81. package/dist/chunk-QYIHQTW5.mjs +46 -0
  82. package/dist/chunk-RXVHS4OJ.mjs +24 -0
  83. package/dist/chunk-SNHJDG24.mjs +44 -0
  84. package/dist/chunk-UGGGP7ZA.mjs +166 -0
  85. package/dist/chunk-UYS3OVMP.mjs +9 -0
  86. package/dist/chunk-VFXOGW3A.mjs +10 -0
  87. package/dist/chunk-VFYJ2I2X.mjs +45 -0
  88. package/dist/chunk-VHLUUHQ3.mjs +43 -0
  89. package/dist/chunk-VKH6K2KB.mjs +33 -0
  90. package/dist/chunk-XF76SGFU.mjs +10 -0
  91. package/dist/chunk-XR7AIYAA.mjs +112 -0
  92. package/dist/html-section-CWKFJCXX.mjs +7 -0
  93. package/dist/index.d.mts +185 -0
  94. package/dist/index.d.ts +185 -0
  95. package/dist/index.js +3990 -0
  96. package/dist/index.mjs +343 -0
  97. package/dist/styles.css +1 -0
  98. package/package.json +79 -0
package/dist/index.js ADDED
@@ -0,0 +1,3990 @@
1
+ "use strict";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __esm = (fn, res) => function __init() {
9
+ return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res;
10
+ };
11
+ var __export = (target, all) => {
12
+ for (var name in all)
13
+ __defProp(target, name, { get: all[name], enumerable: true });
14
+ };
15
+ var __copyProps = (to, from, except, desc) => {
16
+ if (from && typeof from === "object" || typeof from === "function") {
17
+ for (let key of __getOwnPropNames(from))
18
+ if (!__hasOwnProp.call(to, key) && key !== except)
19
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
20
+ }
21
+ return to;
22
+ };
23
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
24
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
25
+ // If the importer is in node compatibility mode or this is not an ESM
26
+ // file that has been converted to a CommonJS file using a Babel-
27
+ // compatible transform (i.e. "__esModule" has not been set), then set
28
+ // "default" to the CommonJS "module.exports" for node compatibility.
29
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
30
+ mod
31
+ ));
32
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
33
+
34
+ // src/components/Section/NewsFeedWidget.tsx
35
+ var NewsFeedWidget_exports = {};
36
+ __export(NewsFeedWidget_exports, {
37
+ default: () => NewsFeedWidget_default
38
+ });
39
+ var import_core, import_ui, import_router, import_react, import_jsx_runtime, NewsFeedWidget, NewsFeedWidget_default;
40
+ var init_NewsFeedWidget = __esm({
41
+ "src/components/Section/NewsFeedWidget.tsx"() {
42
+ "use strict";
43
+ import_core = require("@geowiki/core");
44
+ import_ui = require("@geowiki/ui");
45
+ import_router = require("next/router");
46
+ import_react = require("react");
47
+ import_jsx_runtime = require("react/jsx-runtime");
48
+ NewsFeedWidget = () => {
49
+ const router = (0, import_router.useRouter)();
50
+ var lang = router.query.lang || "all";
51
+ var [skip, _setSkip] = (0, import_react.useState)(0);
52
+ var [take, _setTake] = (0, import_react.useState)(32);
53
+ var { data: newsItems, isLoading } = (0, import_core.useNews)(lang, skip, take);
54
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "container mx-auto max-w-7xl", children: [
55
+ newsItems == null && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "flex justify-center mt-5", children: "No recent news" }),
56
+ isLoading && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "flex justify-center mt-5", children: "Loading..." }),
57
+ !isLoading && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_ui.NewsItemList, { currentLang: lang, newsItems })
58
+ ] });
59
+ };
60
+ NewsFeedWidget_default = NewsFeedWidget;
61
+ }
62
+ });
63
+
64
+ // src/components/Section/Recodo/UpdateUserInfoWidget.tsx
65
+ var UpdateUserInfoWidget_exports = {};
66
+ __export(UpdateUserInfoWidget_exports, {
67
+ UpdateUserInfoWidget: () => UpdateUserInfoWidget
68
+ });
69
+ var import_recodo, import_jsx_runtime2, UpdateUserInfoWidget;
70
+ var init_UpdateUserInfoWidget = __esm({
71
+ "src/components/Section/Recodo/UpdateUserInfoWidget.tsx"() {
72
+ "use strict";
73
+ "use client";
74
+ import_recodo = require("@geowiki/recodo");
75
+ import_jsx_runtime2 = require("react/jsx-runtime");
76
+ UpdateUserInfoWidget = (_props) => {
77
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "container mx-auto", children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_recodo.UpdateUser, {}) });
78
+ };
79
+ }
80
+ });
81
+
82
+ // src/components/Section/Recodo/UserInfoWidget.tsx
83
+ var UserInfoWidget_exports = {};
84
+ __export(UserInfoWidget_exports, {
85
+ UserInfoWidget: () => UserInfoWidget
86
+ });
87
+ var import_recodo2, import_jsx_runtime3, UserInfoWidget;
88
+ var init_UserInfoWidget = __esm({
89
+ "src/components/Section/Recodo/UserInfoWidget.tsx"() {
90
+ "use strict";
91
+ "use client";
92
+ import_recodo2 = require("@geowiki/recodo");
93
+ import_jsx_runtime3 = require("react/jsx-runtime");
94
+ UserInfoWidget = (_props) => {
95
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("div", { className: "container mx-auto", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(import_recodo2.UserInfoPage, {}) });
96
+ };
97
+ }
98
+ });
99
+
100
+ // src/components/Section/ContactWidget.tsx
101
+ var ContactWidget_exports = {};
102
+ __export(ContactWidget_exports, {
103
+ ContactWidget: () => ContactWidget
104
+ });
105
+ var import_api_proxy, import_core2, import_react_hook_form, import_react_toastify, import_jsx_runtime4, ContactWidget;
106
+ var init_ContactWidget = __esm({
107
+ "src/components/Section/ContactWidget.tsx"() {
108
+ "use strict";
109
+ "use client";
110
+ import_api_proxy = require("@geowiki/api-proxy");
111
+ import_core2 = require("@geowiki/core");
112
+ import_react_hook_form = require("react-hook-form");
113
+ import_react_toastify = require("react-toastify");
114
+ import_jsx_runtime4 = require("react/jsx-runtime");
115
+ ContactWidget = ({ data }) => {
116
+ const { data: hosts } = (0, import_core2.useHosts)();
117
+ const {
118
+ register,
119
+ handleSubmit,
120
+ formState: { errors }
121
+ } = (0, import_react_hook_form.useForm)();
122
+ const onSubmit = async (formData) => {
123
+ var tenantInfo = import_core2.HostService.getCurrentHostInfo(hosts || []);
124
+ var tenantName = import_core2.HostService.getTenantName(tenantInfo);
125
+ var subjectPrefix = "";
126
+ if (tenantName) {
127
+ subjectPrefix = tenantName + " - ";
128
+ }
129
+ var subject = subjectPrefix + "Contact form from - " + formData.first_name + " " + formData.last_name;
130
+ try {
131
+ await import_api_proxy.EmailManagementService.emailManagementSendEmail(
132
+ data?.Contact?.From?.Text,
133
+ data?.Contact?.To?.Text,
134
+ formData.from,
135
+ subject,
136
+ formData.message
137
+ );
138
+ import_react_toastify.toast.success("Email sent successfully!");
139
+ } catch (error) {
140
+ console.log(error);
141
+ import_react_toastify.toast.error("Failed to send email");
142
+ }
143
+ };
144
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { className: "container mx-auto", children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { className: "relative isolate py-24 px-6 sm:py-32 lg:px-8", children: /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("div", { className: "mx-auto max-w-xl lg:max-w-4xl", children: [
145
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("h2", { className: "text-4xl font-bold tracking-tight", children: data.Contact?.MainText?.Text }),
146
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("p", { className: "mt-2 text-lg leading-8 ", children: data.Contact?.SubText?.Text }),
147
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { className: "mt-16 flex flex-col gap-16 sm:gap-y-20 lg:flex-row", children: /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("form", { onSubmit: handleSubmit(onSubmit), className: "lg:flex-auto", children: [
148
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("div", { className: "flex flex-col", children: [
149
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("div", { children: [
150
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(
151
+ "label",
152
+ {
153
+ htmlFor: "from",
154
+ className: "block text-sm font-semibold leading-6 ",
155
+ children: [
156
+ "Your email address ",
157
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("span", { className: "text-red-500", children: "*" })
158
+ ]
159
+ }
160
+ ),
161
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { className: "mt-2.5", children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
162
+ "input",
163
+ {
164
+ type: "email",
165
+ id: "from",
166
+ autoComplete: "email",
167
+ ...register("from", { required: true }),
168
+ className: "block w-full rounded-md border-0 py-2 px-3.5 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-primary-600 sm:text-sm sm:leading-6"
169
+ }
170
+ ) }),
171
+ errors.from && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("span", { className: "text-red-500", children: "Email is required" })
172
+ ] }),
173
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("div", { className: "pt-4", children: [
174
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(
175
+ "label",
176
+ {
177
+ htmlFor: "first_name",
178
+ className: "block text-sm font-semibold leading-6 ",
179
+ children: [
180
+ "First name ",
181
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("span", { className: "text-red-500", children: "*" })
182
+ ]
183
+ }
184
+ ),
185
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { className: "mt-2.5", children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
186
+ "input",
187
+ {
188
+ id: "first_name",
189
+ autoComplete: "first_name",
190
+ ...register("first_name", { required: true }),
191
+ className: "block w-full rounded-md border-0 py-2 px-3.5 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-primary-600 sm:text-sm sm:leading-6"
192
+ }
193
+ ) }),
194
+ errors.from && /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("span", { className: "text-red-500", children: [
195
+ " ",
196
+ "First name is required"
197
+ ] }),
198
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("div", { className: "pt-4", children: [
199
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(
200
+ "label",
201
+ {
202
+ htmlFor: "last_name",
203
+ className: "block text-sm font-semibold leading-6 ",
204
+ children: [
205
+ "Last name ",
206
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("span", { className: "text-red-500", children: "*" })
207
+ ]
208
+ }
209
+ ),
210
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { className: "mt-2.5", children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
211
+ "input",
212
+ {
213
+ id: "last_name",
214
+ autoComplete: "last_name",
215
+ ...register("last_name", { required: true }),
216
+ className: "block w-full rounded-md border-0 py-2 px-3.5 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-primary-600 sm:text-sm sm:leading-6"
217
+ }
218
+ ) }),
219
+ errors.from && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("span", { className: "text-red-500", children: "Last name is required" })
220
+ ] })
221
+ ] }),
222
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("div", { className: "pt-4", children: [
223
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(
224
+ "label",
225
+ {
226
+ htmlFor: "message",
227
+ className: "block text-sm font-semibold leading-6 ",
228
+ children: [
229
+ "Message ",
230
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("span", { className: "text-red-500", children: "*" })
231
+ ]
232
+ }
233
+ ),
234
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { className: "mt-2.5", children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
235
+ "textarea",
236
+ {
237
+ id: "message",
238
+ ...register("message", { required: true }),
239
+ rows: 4,
240
+ className: "block w-full rounded-md border-0 py-2 px-3.5 shadow-sm ring-1 ring-inset ring-gray-300 placeholder:text-gray-400 focus:ring-2 focus:ring-inset focus:ring-primary-600 sm:text-sm sm:leading-6",
241
+ defaultValue: ""
242
+ }
243
+ ) }),
244
+ errors.message && /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("span", { className: "text-red-500", children: "Message is required" })
245
+ ] })
246
+ ] }),
247
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { className: "mt-10", children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
248
+ "button",
249
+ {
250
+ type: "submit",
251
+ className: "block w-full rounded-md bg-primary-600 px-3.5 py-2.5 text-center text-sm font-semibold text-white shadow-sm hover:bg-primary-500 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-primary-600",
252
+ children: "Submit"
253
+ }
254
+ ) }),
255
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("p", { className: "mt-4 text-sm leading-6", children: [
256
+ "By submitting this form, I agree to the",
257
+ " ",
258
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
259
+ "a",
260
+ {
261
+ href: data.Contact?.PrivacyUrl?.Text,
262
+ className: "font-semibold text-primary-600 cursor-pointer",
263
+ children: "Privacy\xA0Policy"
264
+ }
265
+ ),
266
+ "."
267
+ ] })
268
+ ] }) })
269
+ ] }) }) });
270
+ };
271
+ }
272
+ });
273
+
274
+ // src/components/Section/CardGridWidget.tsx
275
+ var CardGridWidget_exports = {};
276
+ __export(CardGridWidget_exports, {
277
+ CardGridWidget: () => CardGridWidget
278
+ });
279
+ var import_core3, import_core4, import_ui2, import_jsx_runtime5, CardGridWidget;
280
+ var init_CardGridWidget = __esm({
281
+ "src/components/Section/CardGridWidget.tsx"() {
282
+ "use strict";
283
+ "use client";
284
+ import_core3 = require("@geowiki/core");
285
+ import_core4 = require("@geowiki/core");
286
+ import_ui2 = require("@geowiki/ui");
287
+ import_jsx_runtime5 = require("react/jsx-runtime");
288
+ CardGridWidget = ({ data, cmsUrl }) => {
289
+ cmsUrl = cmsUrl === void 0 ? import_core4.settingsStore.getState().settings?.generalSettings.GeoWikiSettings?.Host?.Text : cmsUrl;
290
+ return /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "container mx-auto sm:w-2/3 items-center p-8 bg-base-300 ", children: [
291
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("h3", { className: "text-3xl py-2 font-bold", children: data.TitlePart?.Title }),
292
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { className: "divide-y divide-base-300 overflow-hidden rounded-lg bg-base-300 sm:grid sm:grid-cols-2 sm:gap-px sm:divide-y-0", children: data.BagPart?.ContentItems?.map((contentItemDto, actionIdx) => /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(
293
+ "div",
294
+ {
295
+ className: (0, import_core3.classNames)(
296
+ actionIdx === 0 ? "rounded-tl-lg sm:rounded-tr-none" : "",
297
+ actionIdx === 1 ? "sm:rounded-tr-lg" : "",
298
+ "relative group p-6 focus-within:ring-2 focus-within:ring-inset focus-within:ring-primary-900 hover:border-neutral-focus"
299
+ ),
300
+ children: [
301
+ contentItemDto.Card.Image.Paths?.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
302
+ import_ui2.SizedImage,
303
+ {
304
+ src: cmsUrl + "/media/" + contentItemDto.Card.Image.Paths[0],
305
+ height: 60,
306
+ width: 60,
307
+ alt: ""
308
+ }
309
+ ) }),
310
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)("div", { className: "mt-6", children: [
311
+ /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("h3", { className: "text-base font-bold leading-6 text-neutral-focus", children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
312
+ "a",
313
+ {
314
+ href: contentItemDto.LinkPart.Url.Text,
315
+ className: "focus:outline-none",
316
+ children: contentItemDto.DisplayText
317
+ }
318
+ ) }),
319
+ contentItemDto.Card.MainText.Text != null && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("p", { className: "mt-1 text-sm text-neutral", children: contentItemDto.Card.MainText.Text }),
320
+ contentItemDto.Card.Description.Text != null && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("p", { className: "mt-2 text-sm text-neutral", children: contentItemDto.Card.Description.Text })
321
+ ] }),
322
+ contentItemDto.DisplayText !== null && /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
323
+ "span",
324
+ {
325
+ className: "pointer-events-none absolute top-6 right-6 text-base-300 group-hover:text-text-neutral",
326
+ "aria-hidden": "true",
327
+ children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
328
+ "svg",
329
+ {
330
+ className: "h-6 w-6",
331
+ fill: "currentColor",
332
+ viewBox: "0 0 24 24",
333
+ children: /* @__PURE__ */ (0, import_jsx_runtime5.jsx)("path", { d: "M20 4h1a1 1 0 00-1-1v1zm-1 12a1 1 0 102 0h-2zM8 3a1 1 0 000 2V3zM3.293 19.293a1 1 0 101.414 1.414l-1.414-1.414zM19 4v12h2V4h-2zm1-1H8v2h12V3zm-.707.293l-16 16 1.414 1.414 16-16-1.414-1.414z" })
334
+ }
335
+ )
336
+ }
337
+ )
338
+ ]
339
+ },
340
+ contentItemDto.ContentItemId
341
+ )) })
342
+ ] });
343
+ };
344
+ }
345
+ });
346
+
347
+ // src/components/Section/ResourceCollectionItemWidget.tsx
348
+ var ResourceCollectionItemWidget_exports = {};
349
+ __export(ResourceCollectionItemWidget_exports, {
350
+ ResourceCollectionItemWidget: () => ResourceCollectionItemWidget
351
+ });
352
+ var import_jsx_runtime6, ResourceCollectionItemWidget;
353
+ var init_ResourceCollectionItemWidget = __esm({
354
+ "src/components/Section/ResourceCollectionItemWidget.tsx"() {
355
+ "use strict";
356
+ "use client";
357
+ import_jsx_runtime6 = require("react/jsx-runtime");
358
+ ResourceCollectionItemWidget = (_props) => {
359
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "container mx-auto relative p-5 rounded-sm", children: [
360
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsxs)("div", { className: "flex flex-col mb-2 lg:items-center lg:flex-row", children: [
361
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("div", { className: "flex items-center justify-center w-10 h-10 mb-4 mr-2 rounded-full bg-primary-50 lg:mb-0", children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
362
+ "svg",
363
+ {
364
+ fill: "none",
365
+ stroke: "currentColor",
366
+ strokeWidth: "1.5",
367
+ viewBox: "-8 -8 40 40",
368
+ xmlns: "http://www.w3.org/2000/svg",
369
+ "aria-hidden": "true",
370
+ children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
371
+ "path",
372
+ {
373
+ strokeLinecap: "round",
374
+ strokeLinejoin: "round",
375
+ d: "M19.5 14.25v-2.625a3.375 3.375 0 00-3.375-3.375h-1.5A1.125 1.125 0 0113.5 7.125v-1.5a3.375 3.375 0 00-3.375-3.375H8.25m0 12.75h7.5m-7.5 3H12M10.5 2.25H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 00-9-9z"
376
+ }
377
+ )
378
+ }
379
+ ) }),
380
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("h6", { className: "font-semibold leading-5", children: _props.data.ResourceCollectionItem?.Title?.Text })
381
+ ] }),
382
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)("p", { className: "mb-2 text-sm ", children: _props.data.ResourceCollectionItem?.Description?.Text }),
383
+ /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
384
+ "a",
385
+ {
386
+ href: _props.data.ResourceCollectionItem?.LinkUrl?.Url,
387
+ "aria-label": "",
388
+ rel: "noreferrer",
389
+ target: "_blank",
390
+ className: "inline-flex items-center text-sm font-semibold transition-colors duration-200 text-primary-500 hover:text-primary-800",
391
+ children: _props.data.ResourceCollectionItem?.LinkUrl?.Text
392
+ }
393
+ )
394
+ ] });
395
+ };
396
+ }
397
+ });
398
+
399
+ // src/components/Section/ResourceCollectionsWidget.tsx
400
+ var ResourceCollectionsWidget_exports = {};
401
+ __export(ResourceCollectionsWidget_exports, {
402
+ ResourceCollectionsWidget: () => ResourceCollectionsWidget
403
+ });
404
+ var import_jsx_runtime7, ResourceCollectionsWidget;
405
+ var init_ResourceCollectionsWidget = __esm({
406
+ "src/components/Section/ResourceCollectionsWidget.tsx"() {
407
+ "use strict";
408
+ "use client";
409
+ init_ResourceCollectionItemWidget();
410
+ import_jsx_runtime7 = require("react/jsx-runtime");
411
+ ResourceCollectionsWidget = (_props) => {
412
+ return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)("div", { className: "container mx-auto", children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
413
+ "div",
414
+ {
415
+ className: "grid gap-8 row-gap-5 lg:grid-cols-" + _props?.data?.BagPart?.ContentItems?.length,
416
+ children: _props.data.BagPart?.ContentItems?.map(
417
+ (resourceCollectionItem, index) => /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
418
+ "div",
419
+ {
420
+ className: "relative p-px overflow-hidden transition duration-300 transform border rounded shadow-sm hover:scale-105 group hover:shadow-xl",
421
+ children: /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
422
+ ResourceCollectionItemWidget,
423
+ {
424
+ data: resourceCollectionItem
425
+ },
426
+ index
427
+ )
428
+ },
429
+ index
430
+ )
431
+ )
432
+ }
433
+ ) });
434
+ };
435
+ }
436
+ });
437
+
438
+ // src/components/Section/Recodo/FarmerClusterFinderWidget.tsx
439
+ var FarmerClusterFinderWidget_exports = {};
440
+ __export(FarmerClusterFinderWidget_exports, {
441
+ FarmerClusterFinderWidget: () => FarmerClusterFinderWidget
442
+ });
443
+ var import_recodo3, import_jsx_runtime8, FarmerClusterFinderWidget;
444
+ var init_FarmerClusterFinderWidget = __esm({
445
+ "src/components/Section/Recodo/FarmerClusterFinderWidget.tsx"() {
446
+ "use strict";
447
+ "use client";
448
+ import_recodo3 = require("@geowiki/recodo");
449
+ import_jsx_runtime8 = require("react/jsx-runtime");
450
+ FarmerClusterFinderWidget = (_props) => {
451
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)("div", { className: "lg:container mx-auto", children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_recodo3.FarmerClusterFinder, {}) });
452
+ };
453
+ }
454
+ });
455
+
456
+ // src/components/Section/EntityListWidget.tsx
457
+ var EntityListWidget_exports = {};
458
+ __export(EntityListWidget_exports, {
459
+ EntityListWidget: () => EntityListWidget
460
+ });
461
+ var import_react2, import_core5, import_ui3, import_ui4, import_core6, import_core7, import_jsx_runtime9, EntityListWidget;
462
+ var init_EntityListWidget = __esm({
463
+ "src/components/Section/EntityListWidget.tsx"() {
464
+ "use strict";
465
+ "use client";
466
+ import_react2 = require("react");
467
+ import_core5 = require("@geowiki/core");
468
+ import_ui3 = require("@geowiki/ui");
469
+ import_ui4 = require("@geowiki/ui");
470
+ import_core6 = require("@geowiki/core");
471
+ import_core7 = require("@geowiki/core");
472
+ import_jsx_runtime9 = require("react/jsx-runtime");
473
+ EntityListWidget = ({ data }) => {
474
+ const { data: appData } = (0, import_core7.useAppConfig)();
475
+ const NumberOfEntity = data?.EntityList?.NumberofEntity?.Value === null || data?.EntityList?.NumberofEntity?.Value === void 0 ? 4 : data?.EntityList?.NumberofEntity?.Value;
476
+ const [Skip, setSkip] = (0, import_react2.useState)(0);
477
+ const fileUrl = (0, import_core6.useFileUrl)();
478
+ const { data: clusterNews, isLoading } = (0, import_core5.useAllNewsFromAllClusters)(
479
+ "CreationTime",
480
+ Skip * NumberOfEntity,
481
+ NumberOfEntity
482
+ );
483
+ if (isLoading)
484
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_ui3.LoaderFull, {});
485
+ if (!isLoading && clusterNews?.totalCount == 0)
486
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("span", { className: "flex items-center justify-center m-10", children: "No News" });
487
+ else
488
+ return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { id: "news", className: "container mx-auto px-4 py-16 ", children: [
489
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: "flex flex-col mb-6 lg:justify-between lg:flex-row md:mb-8", children: [
490
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("h2", { className: "max-w-lg mb-5 text-3xl font-bold tracking-tight sm:text-4xl sm:leading-none md:mb-6 group", children: [
491
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("span", { className: "inline-block mb-1 sm:mb-4", children: data?.EntityList?.MainText?.Text }),
492
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: "h-1 ml-auto duration-300 origin-left transform bg-deep-purple-accent-400 scale-x-30 group-hover:scale-x-100" })
493
+ ] }),
494
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("p", { className: "text-xl lg:max-w-md", children: data?.EntityList?.SubText?.Text })
495
+ ] }),
496
+ clusterNews !== null && clusterNews !== void 0 && clusterNews.items !== void 0 && clusterNews.items.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { children: [
497
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
498
+ "div",
499
+ {
500
+ className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-4 mb-8",
501
+ children: clusterNews?.items?.slice(0, NumberOfEntity).map((news, index) => /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
502
+ "a",
503
+ {
504
+ href: "/cluster/" + news.clusterId + "/news/" + news.id + (appData?.currentUser?.id == news.creatorId ? "?view=edit" : ""),
505
+ rel: "noreferrer",
506
+ target: "_blank",
507
+ "aria-label": "View Item",
508
+ children: /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: "relative overflow-hidden transition duration-200 transform rounded shadow-lg hover:-translate-y-2 hover:shadow-2xl", children: [
509
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
510
+ "img",
511
+ {
512
+ className: "object-cover w-full h-56 md:h-64 xl:h-80",
513
+ src: `${fileUrl}${news.imageId}`,
514
+ alt: ""
515
+ }
516
+ ),
517
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("div", { className: "absolute inset-0 px-6 py-4 transition-opacity duration-200 bg-primary bg-opacity-75 opacity-0 hover:opacity-100", children: [
518
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("p", { className: "mb-2 text-lg font-bold text-gray-100 line-clamp-1", children: news.title }),
519
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)("p", { className: "text-sm tracking-wide text-gray-300", children: [
520
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("span", { className: "mt-2 float-left w-full", children: news.username }),
521
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("span", { className: "mt-2 float-left w-full", children: new Date(news.lastModificationTime).toUTCString().slice(0, -12) }),
522
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("span", { className: "mt-2 float-left w-full", children: news.clusterCountry }),
523
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: "mt-2 float-left w-full truncate md:whitespace-normal line-clamp-1 md:line-clamp-2", children: news.intro })
524
+ ] })
525
+ ] })
526
+ ] })
527
+ },
528
+ index
529
+ ))
530
+ }
531
+ ),
532
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: "text-center", children: /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
533
+ import_ui4.Pagination,
534
+ {
535
+ className: "pagination-bar",
536
+ currentPage: Skip + 1,
537
+ totalCount: clusterNews?.totalCount,
538
+ pageSize: NumberOfEntity,
539
+ onPageChange: (page) => setSkip(page - 1),
540
+ siblingCount: 1,
541
+ elementId: "news"
542
+ }
543
+ ) })
544
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("div", { className: "w-full text-center", children: "There are no stories to share yet" })
545
+ ] });
546
+ };
547
+ }
548
+ });
549
+
550
+ // src/components/Section/SpecialFeaturesWidget.tsx
551
+ var SpecialFeaturesWidget_exports = {};
552
+ __export(SpecialFeaturesWidget_exports, {
553
+ SpecialFeaturesWidget: () => SpecialFeaturesWidget
554
+ });
555
+ var import_jsx_runtime10, SpecialFeaturesWidget;
556
+ var init_SpecialFeaturesWidget = __esm({
557
+ "src/components/Section/SpecialFeaturesWidget.tsx"() {
558
+ "use strict";
559
+ "use client";
560
+ import_jsx_runtime10 = require("react/jsx-runtime");
561
+ SpecialFeaturesWidget = ({
562
+ data,
563
+ cmsUrl
564
+ }) => {
565
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: "container mx-auto px-4 py-8", children: [
566
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { className: "max-w-xl mb-6 sm:mx-auto sm:text-center md:mb-10 lg:max-w-2xl", children: [
567
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("p", { className: "mb-1 text-xs font-semibold tracking-wide uppercase md:mb-2", children: data.SpecialFeatures?.MainText?.Text }),
568
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("p", { className: "text-base md:text-lg", children: data.SpecialFeatures?.SubText?.Text })
569
+ ] }),
570
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("div", { className: "grid gap-6 row-gap-5 lg:grid-cols-3", children: data.FeatureItems?.ContentItems?.map(
571
+ (item, index) => {
572
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsxs)("div", { children: [
573
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
574
+ "img",
575
+ {
576
+ className: "object-cover w-full h-64 mb-6 rounded shadow-lg lg:h-80 xl:h-96",
577
+ src: `${cmsUrl}/media/${item.FeatureItem?.Image?.Paths?.[0]}?width=480&height=480`,
578
+ alt: ""
579
+ }
580
+ ),
581
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("h5", { className: "mb-2 text-xl font-bold leading-none sm:text-2xl", children: item.FeatureItem?.Name?.Text }),
582
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)("p", { className: "", children: item.FeatureItem?.Description?.Text }),
583
+ /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
584
+ "a",
585
+ {
586
+ href: item.FeatureItem?.Link?.Url,
587
+ target: "_blank",
588
+ rel: "noreferrer",
589
+ "aria-label": "",
590
+ className: "inline-flex items-center font-semibold transition-colors duration-200 text-primary-400 hover:text-primary-800 mt-5",
591
+ children: item.FeatureItem?.Link?.Text
592
+ }
593
+ )
594
+ ] }, index);
595
+ }
596
+ ) })
597
+ ] });
598
+ };
599
+ }
600
+ });
601
+
602
+ // src/components/Section/SimpleActionListWidget.tsx
603
+ var SimpleActionListWidget_exports = {};
604
+ __export(SimpleActionListWidget_exports, {
605
+ SimpleActionListWidget: () => SimpleActionListWidget
606
+ });
607
+ var import_ui5, import_jsx_runtime11, SimpleActionListWidget;
608
+ var init_SimpleActionListWidget = __esm({
609
+ "src/components/Section/SimpleActionListWidget.tsx"() {
610
+ "use strict";
611
+ "use client";
612
+ import_ui5 = require("@geowiki/ui");
613
+ import_jsx_runtime11 = require("react/jsx-runtime");
614
+ SimpleActionListWidget = ({
615
+ data
616
+ }) => {
617
+ return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "container mx-auto px-4 lg:py-16", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "grid grid-cols-1 lg:grid-cols-3", children: data.ActionItems?.ContentItems?.map(
618
+ (item, index) => {
619
+ return /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)(
620
+ "div",
621
+ {
622
+ className: "p-4 m-2 border rounded shadow-sm flex flex-col justify-between",
623
+ children: [
624
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsxs)("div", { children: [
625
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("p", { className: "mb-2 text-xs font-semibold tracking-wide uppercase", children: item.SimpleAction?.Tag?.Text }),
626
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("h5", { className: "max-w-md mb-6 text-3xl font-extrabold leading-none sm:text-4xl", children: item.SimpleAction?.MainText?.Text }),
627
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("p", { className: "mb-6 text-base md:text-lg sm:mb-8 h-42 overflow-clip", children: item.SimpleAction?.SubText?.Text })
628
+ ] }),
629
+ /* @__PURE__ */ (0, import_jsx_runtime11.jsx)("div", { className: "flex flex-col xl:flex-row", children: /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(import_ui5.ButtonList, { data: item.Buttons?.ContentItems }) })
630
+ ]
631
+ },
632
+ index
633
+ );
634
+ }
635
+ ) }) });
636
+ };
637
+ }
638
+ });
639
+
640
+ // src/components/Section/FeatureRowWithMultipleImagesWidget.tsx
641
+ var FeatureRowWithMultipleImagesWidget_exports = {};
642
+ __export(FeatureRowWithMultipleImagesWidget_exports, {
643
+ FeatureRowWithMultipleImagesWidget: () => FeatureRowWithMultipleImagesWidget
644
+ });
645
+ var import_jsx_runtime12, FeatureRowWithMultipleImagesWidget;
646
+ var init_FeatureRowWithMultipleImagesWidget = __esm({
647
+ "src/components/Section/FeatureRowWithMultipleImagesWidget.tsx"() {
648
+ "use strict";
649
+ "use client";
650
+ import_jsx_runtime12 = require("react/jsx-runtime");
651
+ FeatureRowWithMultipleImagesWidget = ({
652
+ data,
653
+ cmsUrl
654
+ }) => {
655
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "container mx-auto px-4 py-16", children: [
656
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "flex flex-col mb-6", children: [
657
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("h2", { className: "max-w-lg mb-5 text-3xl font-bold tracking-tight sm:text-4xl sm:leading-none md:mb-6 group", children: [
658
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("span", { className: "inline-block mb-1 sm:mb-4", children: data.FeatureRowWithMultipleImages?.MainText?.Text }),
659
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "h-1 ml-auto duration-300 origin-left transform bg-deep-purple-accent-400 scale-x-30 group-hover:scale-x-100" })
660
+ ] }),
661
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("p", { className: "text-xl lg:max-w-md", children: data.FeatureRowWithMultipleImages?.SubText?.Text })
662
+ ] }),
663
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "grid gap-6 row-gap-5 mb-8 lg:grid-cols-4 sm:row-gap-6 sm:grid-cols-2", children: data?.Images?.ContentItems?.map(
664
+ (image, index) => {
665
+ return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
666
+ "a",
667
+ {
668
+ href: image?.ImageWithText?.LinkUrl?.Url,
669
+ "aria-label": "View Item",
670
+ children: /* @__PURE__ */ (0, import_jsx_runtime12.jsxs)("div", { className: "relative overflow-hidden transition duration-200 transform rounded shadow-lg hover:-translate-y-2 hover:shadow-2xl", children: [
671
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
672
+ "img",
673
+ {
674
+ className: "object-cover w-full h-56 md:h-64 xl:h-80",
675
+ src: `${cmsUrl}/media/${image?.ImageWithText?.Image?.Paths?.[0]}?height=480&width=480`,
676
+ alt: ""
677
+ }
678
+ ),
679
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("div", { className: "absolute inset-x-0 bottom-0 px-6 py-4 bg-primary bg-opacity-75", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("p", { className: "text-sm font-medium tracking-wide text-white", children: image?.ImageWithText?.Text?.Text }) })
680
+ ] })
681
+ },
682
+ index
683
+ );
684
+ }
685
+ ) })
686
+ ] });
687
+ };
688
+ }
689
+ });
690
+
691
+ // src/components/Section/TestimonialListWidget.tsx
692
+ var TestimonialListWidget_exports = {};
693
+ __export(TestimonialListWidget_exports, {
694
+ TestimonialListWidget: () => TestimonialListWidget
695
+ });
696
+ var import_ui6, import_react_responsive_carousel, import_jsx_runtime13, TestimonialListWidget;
697
+ var init_TestimonialListWidget = __esm({
698
+ "src/components/Section/TestimonialListWidget.tsx"() {
699
+ "use strict";
700
+ "use client";
701
+ import_ui6 = require("@geowiki/ui");
702
+ import_react_responsive_carousel = require("react-responsive-carousel");
703
+ import_jsx_runtime13 = require("react/jsx-runtime");
704
+ TestimonialListWidget = ({ data }) => {
705
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_react_responsive_carousel.Carousel, { autoPlay: true, infiniteLoop: true, children: data.BagPart?.ContentItems?.map(
706
+ (item, index) => {
707
+ return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { id: item.Id, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: " pt-16 lg:py-24", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: "bg-primary-600 pb-16 lg:relative lg:z-10 lg:pb-0", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("div", { className: "lg:mx-auto lg:grid lg:max-w-7xl lg:grid-cols-3 lg:gap-8 lg:px-8", children: [
708
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("div", { className: "relative lg:-my-8", children: [
709
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
710
+ "div",
711
+ {
712
+ "aria-hidden": "true",
713
+ className: "absolute inset-x-0 top-0 h-1/2 lg:hidden"
714
+ }
715
+ ),
716
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: "mx-auto max-w-md px-6 sm:max-w-3xl lg:h-full lg:p-0", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: "aspect-w-10 aspect-h-6 overflow-hidden rounded-xl shadow-xl sm:aspect-w-16 sm:aspect-h-7 lg:aspect-none lg:h-full", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
717
+ import_ui6.CmsImage,
718
+ {
719
+ src: item?.Testimonial?.Image?.Paths?.[0],
720
+ width: 200,
721
+ height: 200
722
+ }
723
+ ) }) })
724
+ ] }),
725
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: "mt-12 lg:col-span-2 lg:m-0 lg:pl-8", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: "mx-auto max-w-md px-6 sm:max-w-2xl lg:max-w-none lg:px-0 lg:py-20", children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("blockquote", { children: [
726
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("div", { children: [
727
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
728
+ "svg",
729
+ {
730
+ className: "h-12 w-12 text-white opacity-25",
731
+ fill: "currentColor",
732
+ viewBox: "0 0 32 32",
733
+ "aria-hidden": "true",
734
+ children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("path", { d: "M9.352 4C4.456 7.456 1 13.12 1 19.36c0 5.088 3.072 8.064 6.624 8.064 3.36 0 5.856-2.688 5.856-5.856 0-3.168-2.208-5.472-5.088-5.472-.576 0-1.344.096-1.536.192.48-3.264 3.552-7.104 6.624-9.024L9.352 4zm16.512 0c-4.8 3.456-8.256 9.12-8.256 15.36 0 5.088 3.072 8.064 6.624 8.064 3.264 0 5.856-2.688 5.856-5.856 0-3.168-2.304-5.472-5.184-5.472-.576 0-1.248.096-1.44.192.48-3.264 3.456-7.104 6.528-9.024L25.864 4z" })
735
+ }
736
+ ),
737
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("p", { className: "mt-6 text-2xl font-medium text-white", children: item.Testimonial?.Info?.Text })
738
+ ] }),
739
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)("footer", { className: "mt-6", children: [
740
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("p", { className: "text-base font-medium text-white", children: item.Testimonial?.Name?.Text }),
741
+ /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("p", { className: "text-base font-medium text-primary-100", children: item.Testimonial?.Title?.Text })
742
+ ] })
743
+ ] }) }) })
744
+ ] }) }) }) }, index);
745
+ }
746
+ ) }) });
747
+ };
748
+ }
749
+ });
750
+
751
+ // src/components/Section/FeatureRowWithImageWidget.tsx
752
+ var FeatureRowWithImageWidget_exports = {};
753
+ __export(FeatureRowWithImageWidget_exports, {
754
+ FeatureRowWithImageWidget: () => FeatureRowWithImageWidget
755
+ });
756
+ var import_ui7, import_jsx_runtime14, FeatureRowWithImageWidget;
757
+ var init_FeatureRowWithImageWidget = __esm({
758
+ "src/components/Section/FeatureRowWithImageWidget.tsx"() {
759
+ "use strict";
760
+ "use client";
761
+ import_ui7 = require("@geowiki/ui");
762
+ import_jsx_runtime14 = require("react/jsx-runtime");
763
+ FeatureRowWithImageWidget = ({
764
+ data,
765
+ cmsUrl
766
+ }) => {
767
+ return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "container mx-auto px-4 py-4", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: "grid gap-5 row-gap-8 lg:grid-cols-2", children: [
768
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: "flex flex-col justify-center", children: [
769
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: "max-w-xl mb-6", children: [
770
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("h2", { className: "max-w-lg mb-6 text-3xl font-bold tracking-tight sm:text-4xl sm:leading-none", children: data.FeatureRowWithImage?.MainText?.Text }),
771
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("p", { className: "text-base md:text-lg", children: data.FeatureRowWithImage?.SubText?.Text })
772
+ ] }),
773
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "grid gap-5 row-gap-8 sm:grid-cols-2", children: data.FeatureItems?.ContentItems?.map(
774
+ (item, index) => {
775
+ return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_ui7.FeatureItemElement, { item, cmsUrl }, index);
776
+ }
777
+ ) })
778
+ ] }),
779
+ /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { className: "flex justify-center items-center ", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
780
+ "img",
781
+ {
782
+ className: "object-cover w-full h-96 rounded shadow-lg",
783
+ alt: data.FeatureRowWithImage?.Image?.Description?.Text,
784
+ src: `${cmsUrl}/media/${data.FeatureRowWithImage?.Image?.Paths?.[0]}?height=480&width=480`
785
+ }
786
+ ) })
787
+ ] }) });
788
+ };
789
+ }
790
+ });
791
+
792
+ // src/components/Section/FeatureRowWidget.tsx
793
+ var FeatureRowWidget_exports = {};
794
+ __export(FeatureRowWidget_exports, {
795
+ FeatureRowWidget: () => FeatureRowWidget
796
+ });
797
+ var import_ui8, import_jsx_runtime15, FeatureRowWidget;
798
+ var init_FeatureRowWidget = __esm({
799
+ "src/components/Section/FeatureRowWidget.tsx"() {
800
+ "use strict";
801
+ "use client";
802
+ import_ui8 = require("@geowiki/ui");
803
+ import_jsx_runtime15 = require("react/jsx-runtime");
804
+ FeatureRowWidget = ({ data, cmsUrl }) => {
805
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "container px-4 py-16 mx-auto sm:max-w-xl md:max-w-full lg:max-w-screen-xl md:px-24 lg:px-8 lg:py-20", children: [
806
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "max-w-xl mb-10 md:mx-auto sm:text-center lg:max-w-2xl md:mb-12", children: [
807
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("h2", { className: "max-w-lg mb-6 text-3xl font-bold leading-none tracking-tight sm:text-4xl md:mx-auto", children: data.FeatureRow?.MainText?.Text }),
808
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("p", { className: "text-base md:text-lg", children: data.FeatureRow?.SubText?.Text })
809
+ ] }),
810
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("div", { className: "grid gap-8 row-gap-8 lg:grid-cols-3", children: data.FeatureItems?.ContentItems?.map(
811
+ (item, index) => {
812
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_ui8.FeatureItemElement, { item, cmsUrl }, index);
813
+ }
814
+ ) })
815
+ ] });
816
+ };
817
+ }
818
+ });
819
+
820
+ // src/components/Section/SimpleCallToActionWidget.tsx
821
+ var SimpleCallToActionWidget_exports = {};
822
+ __export(SimpleCallToActionWidget_exports, {
823
+ SimpleCallToActionWidget: () => SimpleCallToActionWidget
824
+ });
825
+ var import_jsx_runtime16, SimpleCallToActionWidget;
826
+ var init_SimpleCallToActionWidget = __esm({
827
+ "src/components/Section/SimpleCallToActionWidget.tsx"() {
828
+ "use strict";
829
+ "use client";
830
+ import_jsx_runtime16 = require("react/jsx-runtime");
831
+ SimpleCallToActionWidget = ({
832
+ data
833
+ }) => {
834
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "relative isolate overflow-hidden bg-primary-800", children: [
835
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "py-24 px-6 sm:px-6 sm:py-32 lg:px-8", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("div", { className: "mx-auto max-w-2xl text-center", children: [
836
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("h2", { className: "text-4xl font-bold tracking-tight text-white", children: data.SimpleCenteredCallToAction?.MainText?.Text }),
837
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("p", { className: "mx-auto mt-6 max-w-xl text-lg leading-8 text-gray-300", children: data.SimpleCenteredCallToAction?.SubText?.Text }),
838
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("div", { className: "mt-10 flex items-center justify-center gap-x-6", children: data.Buttons?.ContentItems?.map(
839
+ (button, index) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
840
+ "a",
841
+ {
842
+ href: button.LinkMenuItemPart?.Url,
843
+ className: "rounded-md px-3.5 py-1.5 text-base font-semibold leading-7 bg-white shadow-sm hover:bg-gray-100 focus-visible:outline focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-white",
844
+ children: button.LinkMenuItemPart?.Name
845
+ },
846
+ index
847
+ )
848
+ ) })
849
+ ] }) }),
850
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
851
+ "svg",
852
+ {
853
+ viewBox: "0 0 1024 1024",
854
+ className: "absolute top-1/2 left-1/2 -z-10 h-[64rem] w-[64rem] -translate-x-1/2 [mask-image:radial-gradient(closest-side,white,transparent)]",
855
+ "aria-hidden": "true",
856
+ children: [
857
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
858
+ "circle",
859
+ {
860
+ cx: 512,
861
+ cy: 512,
862
+ r: 512,
863
+ fill: "url(#8d958450-c69f-4251-94bc-4e091a323369)",
864
+ fillOpacity: "0.7"
865
+ }
866
+ ),
867
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("defs", { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)("radialGradient", { id: "8d958450-c69f-4251-94bc-4e091a323369", children: [
868
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("stop", { stopColor: "#7775D6" }),
869
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("stop", { offset: 1, stopColor: "#E935C1" })
870
+ ] }) })
871
+ ]
872
+ }
873
+ )
874
+ ] });
875
+ };
876
+ }
877
+ });
878
+
879
+ // src/components/Section/ImageWidget.tsx
880
+ var ImageWidget_exports = {};
881
+ __export(ImageWidget_exports, {
882
+ ImageWidget: () => ImageWidget
883
+ });
884
+ var import_ui9, import_jsx_runtime17, ImageWidget;
885
+ var init_ImageWidget = __esm({
886
+ "src/components/Section/ImageWidget.tsx"() {
887
+ "use strict";
888
+ "use client";
889
+ import_ui9 = require("@geowiki/ui");
890
+ import_jsx_runtime17 = require("react/jsx-runtime");
891
+ ImageWidget = ({ data }) => {
892
+ var paths = data?.Image?.Image?.Paths;
893
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
894
+ import_ui9.CmsImage,
895
+ {
896
+ src: paths[0],
897
+ className: "relative h-[26.875rem] w-full object-contain rounded-xl mt-6 lg:mt-12 lg:h-[70vh]",
898
+ priority: true
899
+ }
900
+ );
901
+ };
902
+ }
903
+ });
904
+
905
+ // src/components/Section/GalleryWidget.tsx
906
+ var GalleryWidget_exports = {};
907
+ __export(GalleryWidget_exports, {
908
+ GalleryWidget: () => GalleryWidget
909
+ });
910
+ var import_ui10, import_jsx_runtime18, GalleryWidget;
911
+ var init_GalleryWidget = __esm({
912
+ "src/components/Section/GalleryWidget.tsx"() {
913
+ "use strict";
914
+ "use client";
915
+ import_ui10 = require("@geowiki/ui");
916
+ import_jsx_runtime18 = require("react/jsx-runtime");
917
+ GalleryWidget = ({ data, cmsUrl }) => {
918
+ return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "container mx-auto my-4", children: [
919
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("p", { className: "my-8 text-center text-4xl tracking-tight font-bold sm:text-5xl lg:text-6xl", children: data.TitlePart?.Title }),
920
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("section", { className: "overflow-hidden", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "py-2", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "flex flex-wrap -m-1 md:-m-2", children: data?.BagPart?.ContentItems?.map((item) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "flex flex-wrap w-1/3", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "w-full p-1 md:p-2", children: item.ContentType === "GalleryMediaItem" ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
921
+ import_ui10.MediaItem,
922
+ {
923
+ path: item?.GalleryMediaItem?.Image?.Paths[0],
924
+ cmsUrl
925
+ }
926
+ ) : /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
927
+ import_ui10.MediaEmbedItem,
928
+ {
929
+ alt: item.GalleryEmbedItem?.AlternateText?.Text,
930
+ src: item.GalleryEmbedItem?.EmbedURL?.Text
931
+ }
932
+ ) }) }, item.ContentItemId)) }) }) })
933
+ ] });
934
+ };
935
+ }
936
+ });
937
+
938
+ // src/components/Section/HeaderWidget.tsx
939
+ var HeaderWidget_exports = {};
940
+ __export(HeaderWidget_exports, {
941
+ HeaderWidget: () => HeaderWidget
942
+ });
943
+ var import_ui11, import_jsx_runtime19, HeaderWidget;
944
+ var init_HeaderWidget = __esm({
945
+ "src/components/Section/HeaderWidget.tsx"() {
946
+ "use strict";
947
+ "use client";
948
+ import_ui11 = require("@geowiki/ui");
949
+ import_jsx_runtime19 = require("react/jsx-runtime");
950
+ HeaderWidget = ({
951
+ data,
952
+ renderAsHtml,
953
+ cssClass
954
+ }) => {
955
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("div", { className: "space-x-4 px-4", "data-component": "HeaderWidget", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)("div", { className: "text-center py-8 flex flex-col gap-6", children: [
956
+ data.Header?.SubHeadingText?.Text && !renderAsHtml ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("h2", { className: "text-lg font-semibold text-secondary", children: data.Header?.SubHeadingText?.Text }) : data.Header?.SubHeadingText?.Text && renderAsHtml ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_ui11.HtmlView, { html: data.Header?.SubHeadingText?.Text }) : null,
957
+ data.Header?.HeadingText?.Text && !renderAsHtml ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("h1", { className: "mt-1 text-4xl tracking-tight font-bold sm:text-5xl lg:text-6xl", children: data.Header?.HeadingText?.Text }) : data.Header?.HeadingText?.Text && renderAsHtml ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_ui11.HtmlView, { html: data.Header?.HeadingText?.Text }) : null,
958
+ data.Header?.HeadingInfo?.Text && !renderAsHtml ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("p", { className: "mx-auto text-xl", children: data.Header?.HeadingInfo?.Text }) : data.Header?.HeadingInfo?.Text && renderAsHtml ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
959
+ import_ui11.HtmlView,
960
+ {
961
+ html: data.Header?.HeadingInfo?.Text,
962
+ cssClass
963
+ }
964
+ ) : null
965
+ ] }) });
966
+ };
967
+ }
968
+ });
969
+
970
+ // src/components/Section/CardWidget.tsx
971
+ var CardWidget_exports = {};
972
+ __export(CardWidget_exports, {
973
+ CardWidget: () => CardWidget
974
+ });
975
+ var import_ui12, import_core8, import_jsx_runtime20, CardWidget;
976
+ var init_CardWidget = __esm({
977
+ "src/components/Section/CardWidget.tsx"() {
978
+ "use strict";
979
+ "use client";
980
+ import_ui12 = require("@geowiki/ui");
981
+ import_core8 = require("@geowiki/core");
982
+ import_jsx_runtime20 = require("react/jsx-runtime");
983
+ CardWidget = ({ data, cmsUrl }) => {
984
+ cmsUrl = (0, import_core8.useCmsUrl)();
985
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: "container mx-auto", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: "px-4 py-16 mx-auto sm:max-w-xl md:max-w-full lg:max-w-screen-xl md:px-24 lg:px-8 lg:py-20", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("div", { className: "flex flex-col max-w-screen-lg overflow-hidden border rounded shadow-sm lg:flex-row sm:mx-auto", children: [
986
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: "relative lg:w-1/2", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
987
+ import_ui12.CmsImage,
988
+ {
989
+ src: data.Card?.Image?.Paths[0],
990
+ className: "object-cover w-full lg:absolute h-80 lg:h-full",
991
+ cmsUrl
992
+ }
993
+ ) }),
994
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("div", { className: "flex flex-col justify-center p-8 lg:p-16 lg:pl-10 lg:w-1/2", children: [
995
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("p", { className: "inline-block px-3 py-px mb-4 text-xs font-semibold tracking-wider uppercase rounded-full bg-teal-accent-400", children: data.TitlePart?.Title }) }),
996
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("h5", { className: "mb-3 text-3xl font-extrabold leading-none sm:text-4xl", children: data.Card?.MainText?.Text }),
997
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("p", { className: "mb-5", children: data.Card?.Description?.Text }),
998
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: "flex items-center", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
999
+ "a",
1000
+ {
1001
+ href: data.LinkPart?.Url?.Text,
1002
+ "aria-label": "",
1003
+ className: "inline-flex items-center font-semibold transition-colors duration-200 text-deep-purple-accent-400 hover:text-deep-purple-800",
1004
+ children: [
1005
+ data.LinkPart?.Text?.Text,
1006
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
1007
+ "svg",
1008
+ {
1009
+ className: "inline-block w-3 ml-2",
1010
+ fill: "currentColor",
1011
+ viewBox: "0 0 12 12",
1012
+ children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("path", { d: "M9.707,5.293l-5-5A1,1,0,0,0,3.293,1.707L7.586,6,3.293,10.293a1,1,0,1,0,1.414,1.414l5-5A1,1,0,0,0,9.707,5.293Z" })
1013
+ }
1014
+ )
1015
+ ]
1016
+ }
1017
+ ) })
1018
+ ] })
1019
+ ] }) }) });
1020
+ };
1021
+ }
1022
+ });
1023
+
1024
+ // src/components/Section/ColumnWidget.tsx
1025
+ var ColumnWidget_exports = {};
1026
+ __export(ColumnWidget_exports, {
1027
+ ColumnWidget: () => ColumnWidget
1028
+ });
1029
+ var import_ui13, import_jsx_runtime21, ColumnWidget;
1030
+ var init_ColumnWidget = __esm({
1031
+ "src/components/Section/ColumnWidget.tsx"() {
1032
+ "use strict";
1033
+ "use client";
1034
+ import_ui13 = require("@geowiki/ui");
1035
+ import_jsx_runtime21 = require("react/jsx-runtime");
1036
+ ColumnWidget = ({ data, cmsUrl }) => {
1037
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("div", { className: "container mx-auto pt-12", children: [
1038
+ data.TitlePart && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("section", { className: "py-12 text-center", children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("h2", { className: "text-4xl font-bold", children: data.TitlePart?.Title }) }),
1039
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: "grid lg:grid-cols-3 gap-6 xl:gap-x-12", children: data.BagPart?.ContentItems?.map((col, index) => /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("div", { className: "mb-6 lg:mb-0", children: [
1040
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: "relative overflow-hidden bg-no-repeat bg-cover ripple shadow-lg rounded-lg mb-6", children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
1041
+ import_ui13.CmsImage,
1042
+ {
1043
+ src: col.Card?.Image?.Paths[0],
1044
+ className: "w-full h-full object-cover",
1045
+ cmsUrl
1046
+ }
1047
+ ) }),
1048
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("h5", { className: "text-xl font-bold mb-3 text-center", children: col.TitlePart?.Title }),
1049
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("p", { className: "text-lg", children: col.Card?.Description?.Text })
1050
+ ] }, index)) })
1051
+ ] }) });
1052
+ };
1053
+ }
1054
+ });
1055
+
1056
+ // src/components/Section/RowWidget.tsx
1057
+ var RowWidget_exports = {};
1058
+ __export(RowWidget_exports, {
1059
+ RowWidget: () => RowWidget
1060
+ });
1061
+ var import_classnames, import_ui14, import_ui15, import_jsx_runtime22, RowWidget;
1062
+ var init_RowWidget = __esm({
1063
+ "src/components/Section/RowWidget.tsx"() {
1064
+ "use strict";
1065
+ "use client";
1066
+ import_classnames = __toESM(require("classnames"));
1067
+ import_ui14 = require("@geowiki/ui");
1068
+ import_ui15 = require("@geowiki/ui");
1069
+ import_jsx_runtime22 = require("react/jsx-runtime");
1070
+ RowWidget = ({ data, cmsUrl }) => {
1071
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)("div", { children: [
1072
+ data.TitlePart && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("section", { className: "py-12 text-center", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("h2", { className: "text-4xl font-bold", children: data.TitlePart?.Title }) }),
1073
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "container mx-auto flex flex-col gap-12 py-12", children: data.BagPart?.ContentItems?.map((row, index) => /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(
1074
+ "div",
1075
+ {
1076
+ className: (0, import_classnames.default)(
1077
+ "flex flex-col justify-start md:justify-between md:items-center gap-10",
1078
+ {
1079
+ "lg:flex-row": index % 2 === 0,
1080
+ "lg:flex-row-reverse": index % 2 === 1
1081
+ }
1082
+ ),
1083
+ children: [
1084
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)("div", { className: "w-full lg:w-6/12 lg:pr-6 text-lg", children: [
1085
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("h3", { className: "text-2xl font-bold text-center", children: row.Card?.MainText?.Text }),
1086
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("p", { className: "my-6", children: row.Card?.Description?.Text }),
1087
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_ui14.CustomLink, { data: row.LinkPart })
1088
+ ] }),
1089
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "w-full sm:9/12 lg:w-6/12 max-h-full", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
1090
+ import_ui15.CmsImage,
1091
+ {
1092
+ className: "h-96",
1093
+ src: row.Card?.Image?.Paths[0],
1094
+ height: 384,
1095
+ width: 900,
1096
+ alt: row.Card?.MainText?.Text,
1097
+ cmsUrl
1098
+ }
1099
+ ) })
1100
+ ]
1101
+ },
1102
+ row.ContentItemId
1103
+ )) })
1104
+ ] });
1105
+ };
1106
+ }
1107
+ });
1108
+
1109
+ // src/components/Section/NewsLetterWidget.tsx
1110
+ var NewsLetterWidget_exports = {};
1111
+ __export(NewsLetterWidget_exports, {
1112
+ NewsLetterWidget: () => NewsLetterWidget
1113
+ });
1114
+ var import_ui16, import_react3, import_api_proxy2, import_core9, import_ui17, import_jsx_runtime23, NewsLetterWidget;
1115
+ var init_NewsLetterWidget = __esm({
1116
+ "src/components/Section/NewsLetterWidget.tsx"() {
1117
+ "use strict";
1118
+ "use client";
1119
+ import_ui16 = require("@geowiki/ui");
1120
+ import_react3 = require("react");
1121
+ import_api_proxy2 = require("@geowiki/api-proxy");
1122
+ import_core9 = require("@geowiki/core");
1123
+ import_ui17 = require("@geowiki/ui");
1124
+ import_jsx_runtime23 = require("react/jsx-runtime");
1125
+ NewsLetterWidget = ({ data }) => {
1126
+ const { toast: toast2 } = (0, import_ui17.useToast)();
1127
+ var brandName = import_core9.settingsStore.getState().settings?.generalSettings.GeoWikiSettings?.BrandName?.Text;
1128
+ const [loading, setLoading] = (0, import_react3.useState)(false);
1129
+ const [isAccepted, setIsAccepted] = (0, import_react3.useState)(false);
1130
+ const [email, setEmail] = (0, import_react3.useState)("");
1131
+ const isEmailValid = (email2) => {
1132
+ return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email2);
1133
+ };
1134
+ const subscribe = () => {
1135
+ if (!isAccepted) {
1136
+ toast2({
1137
+ title: "You must accept the privacy policy",
1138
+ variant: "destructive"
1139
+ });
1140
+ return;
1141
+ }
1142
+ if (!email || email.length === 0) {
1143
+ toast2({
1144
+ title: "You must enter an email",
1145
+ variant: "destructive"
1146
+ });
1147
+ return;
1148
+ }
1149
+ if (!isEmailValid(email)) {
1150
+ toast2({
1151
+ title: "Invalid email",
1152
+ variant: "destructive"
1153
+ });
1154
+ return;
1155
+ }
1156
+ var listId = data.NewsLetter?.MailChimpListId?.Text;
1157
+ if (!brandName) {
1158
+ brandName = window.location.hostname;
1159
+ }
1160
+ var subscribeInput = {
1161
+ email_address: email,
1162
+ list_id: listId,
1163
+ tags: [brandName]
1164
+ };
1165
+ setLoading(true);
1166
+ import_api_proxy2.MailChimpService.mailChimpGetIsMember(listId, email).then((res) => {
1167
+ if (res) {
1168
+ toast2({
1169
+ title: "You are already subscribed",
1170
+ variant: "default"
1171
+ });
1172
+ setLoading(false);
1173
+ } else {
1174
+ import_api_proxy2.MailChimpService.mailChimpSubscribe(subscribeInput).then(() => {
1175
+ setLoading(false);
1176
+ toast2({
1177
+ title: "Subscribed successfully",
1178
+ variant: "default"
1179
+ });
1180
+ });
1181
+ }
1182
+ });
1183
+ };
1184
+ return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "border rounded-xl", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: "container mx-auto py-12 px-4 sm:px-6 lg:py-16 lg:px-8 lg:flex lg:items-center", children: [
1185
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: "lg:w-0 lg:flex-1", children: [
1186
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
1187
+ "h2",
1188
+ {
1189
+ className: "text-3xl font-extrabold tracking-tight sm:text-4xl",
1190
+ id: "newsletter-headline",
1191
+ children: data?.NewsLetter?.MainText?.Text
1192
+ }
1193
+ ),
1194
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("p", { className: "mt-3 max-w-3xl text-lg leading-6", children: data?.NewsLetter?.SubText?.Text })
1195
+ ] }),
1196
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("div", { className: "lg:mt-0 lg:ml-8 ", children: /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { children: [
1197
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: "flex flex-col md:flex-row gap-4 pt-8", children: [
1198
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
1199
+ "input",
1200
+ {
1201
+ className: "mt-1 bg-gray-100 block w-full border border-gray-300 rounded-md shadow-sm py-2 px-3 focus:outline-none focus:ring-primary-500 focus:border-primary-500 sm:text-sm",
1202
+ type: "email",
1203
+ name: "email",
1204
+ onChange: (e) => setEmail(e.target.value),
1205
+ placeholder: data.emailPlaceholder
1206
+ }
1207
+ ),
1208
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
1209
+ import_ui16.OldButton,
1210
+ {
1211
+ compact: false,
1212
+ appearance: "dark",
1213
+ label: "Subscribe",
1214
+ handleClick: subscribe,
1215
+ loading
1216
+ }
1217
+ )
1218
+ ] }),
1219
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("p", { className: "mt-3 text-sm", children: [
1220
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
1221
+ "input",
1222
+ {
1223
+ type: "checkbox",
1224
+ checked: isAccepted,
1225
+ onChange: () => setIsAccepted(!isAccepted),
1226
+ className: "mr-2",
1227
+ name: "accept",
1228
+ id: "accept"
1229
+ }
1230
+ ),
1231
+ "We care about the protection of your data. Read our",
1232
+ " ",
1233
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
1234
+ "a",
1235
+ {
1236
+ href: data.NewsLetter?.PrivacyUrl?.Text || "#",
1237
+ className: "font-medium underline cursor-pointer",
1238
+ children: "Privacy Policy."
1239
+ }
1240
+ )
1241
+ ] })
1242
+ ] }) })
1243
+ ] }) });
1244
+ };
1245
+ }
1246
+ });
1247
+
1248
+ // src/components/Section/StatsWidget.tsx
1249
+ var StatsWidget_exports = {};
1250
+ __export(StatsWidget_exports, {
1251
+ StatsWidget: () => StatsWidget
1252
+ });
1253
+ var import_jsx_runtime24, StatsWidget;
1254
+ var init_StatsWidget = __esm({
1255
+ "src/components/Section/StatsWidget.tsx"() {
1256
+ "use strict";
1257
+ "use client";
1258
+ import_jsx_runtime24 = require("react/jsx-runtime");
1259
+ StatsWidget = ({ data }) => {
1260
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: "font-semibold", children: /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)("div", { className: "container mx-auto py-12 px-4 sm:py-16 sm:px-6 lg:px-8 lg:py-20", children: [
1261
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)("div", { className: "max-w-4xl mx-auto text-center", children: [
1262
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("h2", { className: "text-3xl font-extrabold sm:text-4xl", children: data.Stats?.MainText?.Text }),
1263
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("p", { className: "mt-3 text-xl sm:mt-4", children: data?.Stats?.SubText?.Text })
1264
+ ] }),
1265
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("dl", { className: "mt-10 text-center sm:max-w-3xl sm:mx-auto sm:grid sm:grid-cols-3 sm:gap-8", children: data?.BagPart?.ContentItems?.map(
1266
+ (stat, index) => /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)("div", { className: "flex flex-col", children: [
1267
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("dt", { className: "order-2 mt-2 text-lg leading-6 font-medium", children: stat.StatisticsItem?.SubText?.Text }),
1268
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("dd", { className: "order-1 text-5xl font-extrabold", children: stat.StatisticsItem?.MainText?.Text })
1269
+ ] }, index)
1270
+ ) })
1271
+ ] }) });
1272
+ };
1273
+ }
1274
+ });
1275
+
1276
+ // src/components/ClusterMap/MarkerClusterGroup.tsx
1277
+ function getPropsAndEvents(props) {
1278
+ let clusterProps = {};
1279
+ let clusterEvents = {};
1280
+ const { children, ...rest } = props;
1281
+ Object.entries(rest).forEach(([propName, prop]) => {
1282
+ if (propName.startsWith("on")) {
1283
+ clusterEvents = { ...clusterEvents, [propName]: prop };
1284
+ } else {
1285
+ clusterProps = { ...clusterProps, [propName]: prop };
1286
+ }
1287
+ });
1288
+ return { clusterProps, clusterEvents };
1289
+ }
1290
+ function createMarkerClusterGroup(props, context) {
1291
+ const { clusterProps, clusterEvents } = getPropsAndEvents(props);
1292
+ const markerClusterGroup = new L.MarkerClusterGroup(clusterProps);
1293
+ Object.entries(clusterEvents).forEach(([eventAsProp, callback]) => {
1294
+ const clusterEvent = `cluster${eventAsProp.substring(2).toLowerCase()}`;
1295
+ markerClusterGroup.on(clusterEvent, callback);
1296
+ });
1297
+ return (0, import_core10.createElementObject)(
1298
+ markerClusterGroup,
1299
+ (0, import_core10.extendContext)(context, { layerContainer: markerClusterGroup })
1300
+ );
1301
+ }
1302
+ var import_core10, L, import_leaflet, updateMarkerCluster, MarkerClusterGroup2;
1303
+ var init_MarkerClusterGroup = __esm({
1304
+ "src/components/ClusterMap/MarkerClusterGroup.tsx"() {
1305
+ "use strict";
1306
+ "use client";
1307
+ import_core10 = require("@react-leaflet/core");
1308
+ L = __toESM(require("leaflet"));
1309
+ import_leaflet = require("leaflet.markercluster");
1310
+ updateMarkerCluster = () => {
1311
+ };
1312
+ MarkerClusterGroup2 = (0, import_core10.createPathComponent)(
1313
+ createMarkerClusterGroup,
1314
+ updateMarkerCluster
1315
+ );
1316
+ }
1317
+ });
1318
+
1319
+ // src/components/ClusterMap/cluster-markers.tsx
1320
+ function getIcon(color, name) {
1321
+ const myIcon = import_ui19.IconPaths.find((icon) => icon.name === name);
1322
+ if (myIcon) {
1323
+ const MyIcon = import_ui19.MapIcon;
1324
+ return (0, import_server.renderToString)(/* @__PURE__ */ (0, import_jsx_runtime25.jsx)(MyIcon, { Icon: myIcon.icon, color }));
1325
+ } else {
1326
+ const MyIcon = import_MapPinIcon.default;
1327
+ return (0, import_server.renderToString)(/* @__PURE__ */ (0, import_jsx_runtime25.jsx)(MyIcon, { height: 40, width: 40, color }));
1328
+ }
1329
+ }
1330
+ var import_leaflet2, import_react_leaflet, import_core11, import_ui18, import_core12, import_MapPinIcon, import_server, import_core13, import_ui19, import_jsx_runtime25, createClusterIcon, ClusterMarkers;
1331
+ var init_cluster_markers = __esm({
1332
+ "src/components/ClusterMap/cluster-markers.tsx"() {
1333
+ "use strict";
1334
+ "use client";
1335
+ import_leaflet2 = require("leaflet");
1336
+ import_react_leaflet = require("react-leaflet");
1337
+ import_core11 = require("@geowiki/core");
1338
+ import_ui18 = require("@geowiki/ui");
1339
+ init_MarkerClusterGroup();
1340
+ import_core12 = require("@geowiki/core");
1341
+ import_MapPinIcon = __toESM(require("@heroicons/react/24/solid/MapPinIcon"));
1342
+ import_server = require("react-dom/server");
1343
+ import_core13 = require("@geowiki/core");
1344
+ import_ui19 = require("@geowiki/ui");
1345
+ import_jsx_runtime25 = require("react/jsx-runtime");
1346
+ createClusterIcon = (color) => {
1347
+ return (cluster) => {
1348
+ const markers = cluster.getAllChildMarkers();
1349
+ const statusCount = {
1350
+ ongoing: 0,
1351
+ auxiliary: 0,
1352
+ default: 0
1353
+ };
1354
+ markers.forEach((marker) => {
1355
+ const status = marker.feature?.properties?.Status?.trim().toLowerCase() || "default";
1356
+ if (status === "ongoing")
1357
+ statusCount.ongoing++;
1358
+ else if (status === "auxiliary")
1359
+ statusCount.auxiliary++;
1360
+ else
1361
+ statusCount.default++;
1362
+ });
1363
+ return (0, import_leaflet2.divIcon)({
1364
+ html: `<div style=
1365
+ "background-color: ${color};
1366
+ width: 36px;
1367
+ height: 36px;
1368
+ border-radius: 50%;
1369
+ display: flex;
1370
+ justify-content: center;
1371
+ align-items: center;
1372
+ text-align: center;
1373
+ justify-content: center;
1374
+ font-size: 14px;
1375
+ font-weight: 600;
1376
+ color: white;
1377
+ ">${markers.length}</div>`,
1378
+ className: "custom-cluster-icon",
1379
+ iconSize: [30, 30]
1380
+ });
1381
+ };
1382
+ };
1383
+ ClusterMarkers = (_props) => {
1384
+ const { data: ConfigSettings, isLoading: IsConfigSettingsLoaded } = (0, import_core13.useConfigSettings)();
1385
+ const { data, error, isLoading } = (0, import_core11.useClusterMapInfo)();
1386
+ const fileUrl = (0, import_core12.useFileUrl)();
1387
+ if (error)
1388
+ return null;
1389
+ if (isLoading || IsConfigSettingsLoaded)
1390
+ return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_ui18.LoaderFull, {});
1391
+ if (ConfigSettings?.ConfigSettings?.FeaturesFarmerCluster?.Text) {
1392
+ return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(MarkerClusterGroup2, { iconCreateFunction: createClusterIcon("#9999CC"), children: data?.map((cluster) => /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
1393
+ import_react_leaflet.Marker,
1394
+ {
1395
+ icon: new import_leaflet2.DivIcon({
1396
+ iconSize: [30, 30],
1397
+ html: `<i>${getIcon("#9999CC", "Farmer Clusters")}</i>`,
1398
+ className: "custom-div-icon",
1399
+ iconAnchor: [18, 30]
1400
+ }),
1401
+ position: cluster.location ? new import_leaflet2.LatLng(
1402
+ cluster?.location?.latitude,
1403
+ cluster?.location?.longitude
1404
+ ) : new import_leaflet2.LatLng(0, 0),
1405
+ children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_react_leaflet.Popup, { maxWidth: 600, children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("div", { className: "bg-white text-black rounded-3xl", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
1406
+ import_ui18.DesignFarmerClusterPin,
1407
+ {
1408
+ farmerCluster: {
1409
+ description: cluster.description,
1410
+ path: `${fileUrl}${cluster.coverImageId}`,
1411
+ title: cluster.name,
1412
+ viewUrl: `/cluster/view/${cluster.id}`
1413
+ }
1414
+ }
1415
+ ) }) })
1416
+ },
1417
+ cluster.id
1418
+ )) }) });
1419
+ } else {
1420
+ return null;
1421
+ }
1422
+ };
1423
+ }
1424
+ });
1425
+
1426
+ // src/components/ClusterMap/HeroMap.tsx
1427
+ var HeroMap_exports = {};
1428
+ __export(HeroMap_exports, {
1429
+ HeroMap: () => HeroMap
1430
+ });
1431
+ var import_react_leaflet2, import_leaflet3, import_jsx_runtime26, HeroMap;
1432
+ var init_HeroMap = __esm({
1433
+ "src/components/ClusterMap/HeroMap.tsx"() {
1434
+ "use strict";
1435
+ import_react_leaflet2 = require("react-leaflet");
1436
+ import_leaflet3 = require("leaflet/dist/leaflet.css");
1437
+ init_cluster_markers();
1438
+ import_jsx_runtime26 = require("react/jsx-runtime");
1439
+ HeroMap = () => {
1440
+ const position = [48.210033, 16.363449];
1441
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(import_react_leaflet2.MapContainer, { center: position, zoom: 5, scrollWheelZoom: false, children: [
1442
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
1443
+ import_react_leaflet2.TileLayer,
1444
+ {
1445
+ attribution: '\xA9 <a href="http://osm.org/copyright">OpenStreetMap</a> contributors',
1446
+ url: "https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",
1447
+ maxZoom: 18
1448
+ }
1449
+ ),
1450
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(ClusterMarkers, {})
1451
+ ] });
1452
+ };
1453
+ }
1454
+ });
1455
+
1456
+ // src/components/Section/MapHeroWidget.tsx
1457
+ var MapHeroWidget_exports = {};
1458
+ __export(MapHeroWidget_exports, {
1459
+ MapHeroWidget: () => MapHeroWidget
1460
+ });
1461
+ var import_dynamic, import_react4, import_jsx_runtime27, MapWithNoSSR, MapHeroWidget;
1462
+ var init_MapHeroWidget = __esm({
1463
+ "src/components/Section/MapHeroWidget.tsx"() {
1464
+ "use strict";
1465
+ "use client";
1466
+ import_dynamic = __toESM(require("next/dynamic"));
1467
+ import_react4 = require("react");
1468
+ import_jsx_runtime27 = require("react/jsx-runtime");
1469
+ MapWithNoSSR = (0, import_dynamic.default)(
1470
+ () => Promise.resolve().then(() => (init_HeroMap(), HeroMap_exports)).then((x) => x.HeroMap),
1471
+ {
1472
+ ssr: false
1473
+ }
1474
+ );
1475
+ MapHeroWidget = ({}) => {
1476
+ const [position, setPosition] = (0, import_react4.useState)(null);
1477
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("div", { className: "w-full h-[560px] rounded-[12px] mt-6 overflow-hidden lg:mt-12", children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
1478
+ MapWithNoSSR,
1479
+ {
1480
+ ...{
1481
+ position,
1482
+ setPosition,
1483
+ showClusterMarkers: true,
1484
+ enableLocationMarker: false
1485
+ }
1486
+ }
1487
+ ) });
1488
+ };
1489
+ }
1490
+ });
1491
+
1492
+ // src/components/Section/HeroCenterTextWidget.tsx
1493
+ var HeroCenterTextWidget_exports = {};
1494
+ __export(HeroCenterTextWidget_exports, {
1495
+ HeroCenterTextWidget: () => HeroCenterTextWidget
1496
+ });
1497
+ var import_ui20, import_jsx_runtime28, HeroCenterTextWidget;
1498
+ var init_HeroCenterTextWidget = __esm({
1499
+ "src/components/Section/HeroCenterTextWidget.tsx"() {
1500
+ "use strict";
1501
+ "use client";
1502
+ import_ui20 = require("@geowiki/ui");
1503
+ import_jsx_runtime28 = require("react/jsx-runtime");
1504
+ HeroCenterTextWidget = ({ data }) => {
1505
+ var paths = data?.HeroCenterText?.Image?.Paths;
1506
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "grid pt-8", children: [
1507
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "w-full bg-center bg-cover hero-geo-wiki rounded-xl overflow-hidden col-start-1 row-start-1", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_ui20.CmsImage, { src: paths[0] }) }),
1508
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "col-start-1 row-start-1 z-10 flex justify-center items-center", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "text-center bg-opacity-60 p-8 bg-gray-600 text-white", children: [
1509
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("h1", { className: "text-4xl font-bold mt-2 sm:mt-0 mb-4 sm:mb-2", children: data.HeroCenterText?.MainText?.Text }),
1510
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("p", { className: "text-xl mb-6", children: data.HeroCenterText?.SubText?.Text }),
1511
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("div", { className: "flex flex-row flex-wrap gap-4 justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_ui20.ButtonList, { data: data?.Buttons?.ContentItems }) })
1512
+ ] }) })
1513
+ ] });
1514
+ };
1515
+ }
1516
+ });
1517
+
1518
+ // src/components/Section/html-section.tsx
1519
+ var html_section_exports = {};
1520
+ __export(html_section_exports, {
1521
+ HtmlSection: () => HtmlSection
1522
+ });
1523
+ var import_ui21, import_jsx_runtime29, HtmlSection;
1524
+ var init_html_section = __esm({
1525
+ "src/components/Section/html-section.tsx"() {
1526
+ "use strict";
1527
+ "use client";
1528
+ import_ui21 = require("@geowiki/ui");
1529
+ import_jsx_runtime29 = require("react/jsx-runtime");
1530
+ HtmlSection = ({ data }) => {
1531
+ const { HtmlBodyPart } = data;
1532
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { className: "lg:container mx-auto pt-4 lg:pt-0", children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("div", { className: "max-w-screen-2xl prose prose-xl", children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_ui21.HtmlView, { html: HtmlBodyPart.Html }) }) });
1533
+ };
1534
+ }
1535
+ });
1536
+
1537
+ // src/components/Section/MarkdownWidget.tsx
1538
+ var MarkdownWidget_exports = {};
1539
+ __export(MarkdownWidget_exports, {
1540
+ MarkdownWidget: () => MarkdownWidget
1541
+ });
1542
+ var import_jsx_runtime30, MarkdownWidget;
1543
+ var init_MarkdownWidget = __esm({
1544
+ "src/components/Section/MarkdownWidget.tsx"() {
1545
+ "use strict";
1546
+ "use client";
1547
+ import_jsx_runtime30 = require("react/jsx-runtime");
1548
+ MarkdownWidget = ({ data }) => {
1549
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: "mx-auto flex flex-col justify-center pt-4", children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("div", { className: "container mx-auto", children: data.MarkdownBodyPart?.Markdown }) });
1550
+ };
1551
+ }
1552
+ });
1553
+
1554
+ // src/components/Section/ContainerWidget.tsx
1555
+ var ContainerWidget_exports = {};
1556
+ __export(ContainerWidget_exports, {
1557
+ ContainerWidget: () => ContainerWidget
1558
+ });
1559
+ var import_jsx_runtime31, ContainerWidget;
1560
+ var init_ContainerWidget = __esm({
1561
+ "src/components/Section/ContainerWidget.tsx"() {
1562
+ "use strict";
1563
+ "use client";
1564
+ init_Sections();
1565
+ import_jsx_runtime31 = require("react/jsx-runtime");
1566
+ ContainerWidget = ({ data, settings, cmsUrl }) => {
1567
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
1568
+ Sections,
1569
+ {
1570
+ sections: data.FlowPart.Widgets,
1571
+ settings,
1572
+ cmsUrl
1573
+ }
1574
+ );
1575
+ };
1576
+ }
1577
+ });
1578
+
1579
+ // src/components/Section/HeroWidget.tsx
1580
+ var HeroWidget_exports = {};
1581
+ __export(HeroWidget_exports, {
1582
+ HeroWidget: () => HeroWidget
1583
+ });
1584
+ var import_ui22, import_ui23, import_ui24, import_ui25, import_ui26, import_ui27, import_core14, import_ui28, import_ui29, import_jsx_runtime32, HeroWidget;
1585
+ var init_HeroWidget = __esm({
1586
+ "src/components/Section/HeroWidget.tsx"() {
1587
+ "use strict";
1588
+ "use client";
1589
+ import_ui22 = require("@geowiki/ui");
1590
+ import_ui23 = require("@geowiki/ui");
1591
+ import_ui24 = require("@geowiki/ui");
1592
+ import_ui25 = require("@geowiki/ui");
1593
+ import_ui26 = require("@geowiki/ui");
1594
+ import_ui27 = require("@geowiki/ui");
1595
+ import_core14 = require("@geowiki/core");
1596
+ import_ui28 = require("@geowiki/ui");
1597
+ import_ui29 = require("@geowiki/ui");
1598
+ import_jsx_runtime32 = require("react/jsx-runtime");
1599
+ HeroWidget = ({ data }) => {
1600
+ const type = data?.Hero?.Type?.Text;
1601
+ var cmsUrl = (0, import_core14.useCmsUrl)();
1602
+ switch (type) {
1603
+ case "image":
1604
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_ui22.HeroImage, { path: data?.Hero?.Images?.Paths[0], cmsUrl });
1605
+ case "withMultipleImages":
1606
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
1607
+ import_ui26.HeroWithMultipleImage,
1608
+ {
1609
+ paths: data?.Hero?.Images?.Paths,
1610
+ contentItemId: data.ContentItemId,
1611
+ title: data.Hero?.Title?.Text,
1612
+ description: data.Hero?.Description?.Text,
1613
+ links: data.Buttons?.ContentItems,
1614
+ cmsUrl
1615
+ }
1616
+ );
1617
+ case "withThreeImages":
1618
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
1619
+ import_ui27.HeroWithThreeImage,
1620
+ {
1621
+ paths: data?.Hero?.Images?.Paths,
1622
+ title: data?.Hero?.Title?.Text,
1623
+ description: data?.Hero?.Description?.Text,
1624
+ links: data?.Buttons?.ContentItems,
1625
+ cmsUrl
1626
+ }
1627
+ );
1628
+ case "withCenterText":
1629
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
1630
+ import_ui24.HeroWithCenterText,
1631
+ {
1632
+ paths: data?.Hero?.Images?.Paths,
1633
+ title: data.Hero?.Title?.Text,
1634
+ description: data.Hero?.Description?.Text,
1635
+ links: data.Buttons?.ContentItems,
1636
+ cmsUrl
1637
+ }
1638
+ );
1639
+ case "withMap":
1640
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
1641
+ import_ui25.HeroWithMap,
1642
+ {
1643
+ title: data.Hero?.Title?.Text,
1644
+ description: data.Hero?.Description?.Text,
1645
+ links: data.Buttons?.ContentItems
1646
+ }
1647
+ );
1648
+ case "withImageLeft":
1649
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
1650
+ import_ui28.HeroImageLeft,
1651
+ {
1652
+ logoPath: data?.Hero?.Logo?.Paths[0],
1653
+ path: data?.Hero?.Images?.Paths[0],
1654
+ text: data.Hero?.Description?.Text
1655
+ }
1656
+ );
1657
+ case "withImageRight":
1658
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
1659
+ import_ui28.HeroImageRight,
1660
+ {
1661
+ path: data?.Hero?.Images?.Paths[0],
1662
+ title: data.Hero?.Title?.Text,
1663
+ description: data.Hero?.Description?.Text
1664
+ }
1665
+ );
1666
+ case "mobileDevice":
1667
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
1668
+ import_ui29.HeroWidgetMobileDevice,
1669
+ {
1670
+ version: data.Hero?.LayoutVersion.Value ?? 1,
1671
+ title: data.Hero?.Title?.Text,
1672
+ description: data.Hero?.Description?.Text,
1673
+ image: data.Hero?.Images?.Paths?.[0],
1674
+ cmsUrl,
1675
+ links: data?.Buttons?.ContentItems,
1676
+ storeLinks: [
1677
+ ...data.Hero?.GooglePlayUrl.Text ? [{ url: data.Hero.GooglePlayUrl.Text, type: "google" }] : [],
1678
+ ...data.Hero?.AppStoreUrl.Text ? [{ url: data.Hero.AppStoreUrl.Text, type: "apple" }] : []
1679
+ ]
1680
+ }
1681
+ );
1682
+ default:
1683
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
1684
+ import_ui23.HeroWidgetOld,
1685
+ {
1686
+ paths: data?.HeroWidget.Images?.Paths,
1687
+ contentItemId: data.ContentItemId,
1688
+ mainText: data.HeroWidget.MainText.Text,
1689
+ subText: data.HeroWidget.SubText.Text,
1690
+ contentItems: data?.Buttons?.ContentItems,
1691
+ cmsUrl
1692
+ }
1693
+ );
1694
+ }
1695
+ };
1696
+ }
1697
+ });
1698
+
1699
+ // src/components/Section/HeadingTextWidget.tsx
1700
+ var HeadingTextWidget_exports = {};
1701
+ __export(HeadingTextWidget_exports, {
1702
+ HeadingTextWidget: () => HeadingTextWidget
1703
+ });
1704
+ var import_ui30, import_jsx_runtime33, HeadingTextWidget;
1705
+ var init_HeadingTextWidget = __esm({
1706
+ "src/components/Section/HeadingTextWidget.tsx"() {
1707
+ "use strict";
1708
+ import_ui30 = require("@geowiki/ui");
1709
+ import_jsx_runtime33 = require("react/jsx-runtime");
1710
+ HeadingTextWidget = ({ data }) => {
1711
+ var type = data.HeadingText.Type.Values[0];
1712
+ var buttonProps = {
1713
+ text: data.LinkPart.Text.Text,
1714
+ link: data.LinkPart.Url.Text,
1715
+ isNewTab: data.LinkPart.IsNewTab.Value
1716
+ };
1717
+ if (type === "H1BodyButton") {
1718
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
1719
+ import_ui30.H1BodyButton,
1720
+ {
1721
+ title: data.TitlePart.Title,
1722
+ textBody: data.HeadingText.TextBody.Html,
1723
+ button: buttonProps
1724
+ }
1725
+ ) });
1726
+ }
1727
+ if (type === "H2BodyButton") {
1728
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
1729
+ import_ui30.H2BodyButton,
1730
+ {
1731
+ tag: data.HeadingText.Tag.Text,
1732
+ textBody: data.HeadingText.TextBody.Html,
1733
+ button: buttonProps,
1734
+ title: data.TitlePart.Title,
1735
+ bottomPadding: data.HeadingText.BottomPadding?.Text
1736
+ }
1737
+ );
1738
+ }
1739
+ if (type === "LandingTitleBodyButton") {
1740
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
1741
+ import_ui30.LandingTitleBodyButton,
1742
+ {
1743
+ textBody: data.HeadingText.TextBody.Text,
1744
+ button: buttonProps,
1745
+ title: data.TitlePart.Title
1746
+ }
1747
+ ) });
1748
+ }
1749
+ return null;
1750
+ };
1751
+ }
1752
+ });
1753
+
1754
+ // src/components/Section/ResourceQuickFindWidget.tsx
1755
+ var ResourceQuickFindWidget_exports = {};
1756
+ __export(ResourceQuickFindWidget_exports, {
1757
+ ResourceQuickFindWidget: () => ResourceQuickFindWidget
1758
+ });
1759
+ var import_recodo4, import_jsx_runtime34, ResourceQuickFindWidget;
1760
+ var init_ResourceQuickFindWidget = __esm({
1761
+ "src/components/Section/ResourceQuickFindWidget.tsx"() {
1762
+ "use strict";
1763
+ import_recodo4 = require("@geowiki/recodo");
1764
+ import_jsx_runtime34 = require("react/jsx-runtime");
1765
+ ResourceQuickFindWidget = ({}) => {
1766
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_recodo4.ResourcesQuickFind, {});
1767
+ };
1768
+ }
1769
+ });
1770
+
1771
+ // src/components/Section/NewfeedPreviewWidget.tsx
1772
+ var NewfeedPreviewWidget_exports = {};
1773
+ __export(NewfeedPreviewWidget_exports, {
1774
+ NewsfeedPreviewWidget: () => NewsfeedPreviewWidget
1775
+ });
1776
+ var import_core15, import_ui31, import_jsx_runtime35, NewsfeedPreviewWidget;
1777
+ var init_NewfeedPreviewWidget = __esm({
1778
+ "src/components/Section/NewfeedPreviewWidget.tsx"() {
1779
+ "use strict";
1780
+ import_core15 = require("@geowiki/core");
1781
+ import_ui31 = require("@geowiki/ui");
1782
+ import_jsx_runtime35 = require("react/jsx-runtime");
1783
+ NewsfeedPreviewWidget = () => {
1784
+ var { data: newsItems, isLoading } = (0, import_core15.useNews)("all", 0, 6);
1785
+ var newsArticleData = newsItems?.slice(0, 4)?.map((news) => {
1786
+ return {
1787
+ title: news.title,
1788
+ description: news.description,
1789
+ username: news.sourceName,
1790
+ time: news.publishDate,
1791
+ language: news.language,
1792
+ path: news.imageUrl,
1793
+ link: news.url
1794
+ };
1795
+ });
1796
+ if (isLoading) {
1797
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("div", { children: "Loading..." });
1798
+ }
1799
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(import_ui31.NewsfeedPreview, { newsArticleData });
1800
+ };
1801
+ }
1802
+ });
1803
+
1804
+ // src/components/Section/SubtitleH3BodyWidget.tsx
1805
+ var SubtitleH3BodyWidget_exports = {};
1806
+ __export(SubtitleH3BodyWidget_exports, {
1807
+ SubtitleH3BodyWidget: () => SubtitleH3BodyWidget
1808
+ });
1809
+ var import_ui32, import_jsx_runtime36, SubtitleH3BodyWidget;
1810
+ var init_SubtitleH3BodyWidget = __esm({
1811
+ "src/components/Section/SubtitleH3BodyWidget.tsx"() {
1812
+ "use strict";
1813
+ import_ui32 = require("@geowiki/ui");
1814
+ import_jsx_runtime36 = require("react/jsx-runtime");
1815
+ SubtitleH3BodyWidget = ({ data }) => {
1816
+ var buttonProps = {
1817
+ text: data.LinkPart.Text.Text,
1818
+ link: data.LinkPart.Url.Text,
1819
+ isNewTab: data.LinkPart.IsNewTab.Value
1820
+ };
1821
+ var bgColor = data.SubtitleH3Body.BackgroundColor?.Text;
1822
+ const backgroundColor = (color) => {
1823
+ switch (color) {
1824
+ case "greyLightest":
1825
+ return "bg-grey-lightest";
1826
+ case "lightPurple":
1827
+ return "bg-accent-secondary";
1828
+ case "green":
1829
+ return "bg-primary text-white";
1830
+ }
1831
+ };
1832
+ return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
1833
+ import_ui32.SubtitleH3Body,
1834
+ {
1835
+ title: data.TitlePart.Title,
1836
+ subtitle: data.SubtitleH3Body.Subtitle.Text,
1837
+ content: data.SubtitleH3Body.Content.Html,
1838
+ button: buttonProps,
1839
+ backgroundColor: backgroundColor(bgColor),
1840
+ imgClass: data.SubtitleH3Body.ImageClass?.Text
1841
+ }
1842
+ ) });
1843
+ };
1844
+ }
1845
+ });
1846
+
1847
+ // src/components/Section/SubtitleH3BodyInternalLinkListWidget.tsx
1848
+ var SubtitleH3BodyInternalLinkListWidget_exports = {};
1849
+ __export(SubtitleH3BodyInternalLinkListWidget_exports, {
1850
+ SubtitleH3BodyInternalLinkListWidget: () => SubtitleH3BodyInternalLinkListWidget
1851
+ });
1852
+ var import_ui33, import_jsx_runtime37, SubtitleH3BodyInternalLinkListWidget;
1853
+ var init_SubtitleH3BodyInternalLinkListWidget = __esm({
1854
+ "src/components/Section/SubtitleH3BodyInternalLinkListWidget.tsx"() {
1855
+ "use strict";
1856
+ import_ui33 = require("@geowiki/ui");
1857
+ import_jsx_runtime37 = require("react/jsx-runtime");
1858
+ SubtitleH3BodyInternalLinkListWidget = ({
1859
+ data
1860
+ }) => {
1861
+ const links = data.BagPart.ContentItems.map((contentItem) => ({
1862
+ title: contentItem.HtmlLink.Url.Text,
1863
+ href: contentItem.HtmlLink.Url.Url,
1864
+ isNewTab: contentItem.HtmlLink.NewTab.Value,
1865
+ type: contentItem.HtmlLink.NewTab.Value ? "external" : "internal"
1866
+ }));
1867
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
1868
+ import_ui33.SubtitleH3BodyInternalLinkList,
1869
+ {
1870
+ title: data.TitlePart.Title,
1871
+ subtitle: data.SubtitleH3BodyInternalLinkList.Subtitle?.Text,
1872
+ textBody: data.SubtitleH3BodyInternalLinkList.Content?.Html,
1873
+ links
1874
+ }
1875
+ ) });
1876
+ };
1877
+ }
1878
+ });
1879
+
1880
+ // src/components/Section/SubtitleH3FaqWidget.tsx
1881
+ var SubtitleH3FaqWidget_exports = {};
1882
+ __export(SubtitleH3FaqWidget_exports, {
1883
+ SubtitleH3FaqWidget: () => SubtitleH3FaqWidget
1884
+ });
1885
+ var import_ui34, import_uuid, import_jsx_runtime38, SubtitleH3FaqWidget;
1886
+ var init_SubtitleH3FaqWidget = __esm({
1887
+ "src/components/Section/SubtitleH3FaqWidget.tsx"() {
1888
+ "use strict";
1889
+ import_ui34 = require("@geowiki/ui");
1890
+ import_uuid = require("uuid");
1891
+ import_jsx_runtime38 = require("react/jsx-runtime");
1892
+ SubtitleH3FaqWidget = ({ data }) => {
1893
+ var type = data.SubtitleH3Faq.Type.Text;
1894
+ var bgColor = data.SubtitleH3Faq.BackgroundColor?.Text;
1895
+ const backgroundColor = (color) => {
1896
+ switch (color) {
1897
+ case "transparent":
1898
+ return "";
1899
+ case "lightPurple":
1900
+ return "bg-accent-secondary";
1901
+ case "green":
1902
+ return "bg-primary text-white";
1903
+ }
1904
+ };
1905
+ const addLinksStyles = (text) => {
1906
+ const textToAdd = " class='text-primary font-semibold'";
1907
+ const regex = /(<a(?=[^>]*>))/g;
1908
+ const modifiedText = text?.replace(regex, `$1${textToAdd}`);
1909
+ return modifiedText;
1910
+ };
1911
+ if (type === "withText") {
1912
+ const faqs = data.BagPart.ContentItems.map((contentItem) => ({
1913
+ question: contentItem.Faq.Question.Text,
1914
+ answer: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
1915
+ import_ui34.HtmlView,
1916
+ {
1917
+ cssClass: "m-0",
1918
+ html: addLinksStyles(contentItem.Faq.AnswerText?.Html)
1919
+ }
1920
+ ),
1921
+ hint: contentItem.Faq.Hint.Text
1922
+ }));
1923
+ return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
1924
+ import_ui34.SubtitleH3Faq,
1925
+ {
1926
+ title: data.TitlePart.Title,
1927
+ subtitle: data.SubtitleH3Faq.Subtitle.Text,
1928
+ description: data.SubtitleH3Faq.Description?.Text,
1929
+ faqs,
1930
+ backgroundColor: backgroundColor(bgColor)
1931
+ }
1932
+ ) });
1933
+ }
1934
+ if (type === "withLinkList") {
1935
+ var textColorLink = bgColor === "green" ? "white" : "black";
1936
+ const faqs = data.BagPart.ContentItems.map((contentItem) => ({
1937
+ question: contentItem.Faq.Question.Text,
1938
+ answer: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { className: "grid grid-cols-1 space-y-4", children: contentItem.BagPart.ContentItems.map((contentItem2) => /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
1939
+ import_ui34.DesignCustomLink,
1940
+ {
1941
+ linkText: contentItem2.Link?.Text?.Text,
1942
+ href: contentItem2.Link?.Url?.Text,
1943
+ isNewTab: contentItem2.Link?.IsNewTab?.Value,
1944
+ fillColor: `fill-${textColorLink}`,
1945
+ className: `text-${textColorLink}`
1946
+ },
1947
+ (0, import_uuid.v4)()
1948
+ )) }),
1949
+ hint: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_ui34.HtmlView, { cssClass: "m-0", html: contentItem.Faq.Hint.Text })
1950
+ }));
1951
+ return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
1952
+ import_ui34.SubtitleH3Faq,
1953
+ {
1954
+ title: data.TitlePart.Title,
1955
+ subtitle: data.SubtitleH3Faq.Subtitle.Text,
1956
+ description: data.SubtitleH3Faq.Description?.Text,
1957
+ faqs,
1958
+ backgroundColor: backgroundColor(bgColor)
1959
+ }
1960
+ ) });
1961
+ }
1962
+ };
1963
+ }
1964
+ });
1965
+
1966
+ // src/components/Section/NewTestimonialsWidget.tsx
1967
+ var NewTestimonialsWidget_exports = {};
1968
+ __export(NewTestimonialsWidget_exports, {
1969
+ NewTestimonialsWidget: () => NewTestimonialsWidget
1970
+ });
1971
+ var import_ui35, import_jsx_runtime39, NewTestimonialsWidget;
1972
+ var init_NewTestimonialsWidget = __esm({
1973
+ "src/components/Section/NewTestimonialsWidget.tsx"() {
1974
+ "use strict";
1975
+ "use client";
1976
+ import_ui35 = require("@geowiki/ui");
1977
+ import_jsx_runtime39 = require("react/jsx-runtime");
1978
+ NewTestimonialsWidget = ({ data }) => {
1979
+ const testimonials = data.BagPart.ContentItems.map((contentItem) => ({
1980
+ info: contentItem.Testimonial?.Info?.Text,
1981
+ name: contentItem.Testimonial?.Name?.Text,
1982
+ position: contentItem.Testimonial?.Title?.Text,
1983
+ imagePath: contentItem.Testimonial?.Image?.Paths[0]
1984
+ }));
1985
+ return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_ui35.DesignTestimonials, { testimonials }) });
1986
+ };
1987
+ }
1988
+ });
1989
+
1990
+ // src/components/Section/SubtitleH3ResourceCollectionsWidget.tsx
1991
+ var SubtitleH3ResourceCollectionsWidget_exports = {};
1992
+ __export(SubtitleH3ResourceCollectionsWidget_exports, {
1993
+ SubtitleH3ResourceCollectionsWidget: () => SubtitleH3ResourceCollectionsWidget
1994
+ });
1995
+ var import_recodo5, import_lucide_react, import_jsx_runtime40, SubtitleH3ResourceCollectionsWidget;
1996
+ var init_SubtitleH3ResourceCollectionsWidget = __esm({
1997
+ "src/components/Section/SubtitleH3ResourceCollectionsWidget.tsx"() {
1998
+ "use strict";
1999
+ "use client";
2000
+ import_recodo5 = require("@geowiki/recodo");
2001
+ import_lucide_react = require("lucide-react");
2002
+ import_jsx_runtime40 = require("react/jsx-runtime");
2003
+ SubtitleH3ResourceCollectionsWidget = ({
2004
+ data
2005
+ }) => {
2006
+ const resourceCollections = data.BagPart.ContentItems.map(
2007
+ (contentItem) => ({
2008
+ title: contentItem.NewResourceCollectionItem.Title?.Text,
2009
+ type: contentItem.NewResourceCollectionItem.Subtitle?.Text,
2010
+ text: contentItem.NewResourceCollectionItem.Text?.Text,
2011
+ icon: contentItem.NewResourceCollectionItem.Icon?.Text,
2012
+ button: {
2013
+ link: contentItem.NewResourceCollectionItem.Link?.Text,
2014
+ isNewTab: contentItem.NewResourceCollectionItem.IsNewTab?.Value,
2015
+ variant: "circle",
2016
+ size: "sm",
2017
+ contents: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_lucide_react.ArrowRight, { className: "h-6 w-10 my-2" }),
2018
+ className: "w-12 h-12 p-2"
2019
+ }
2020
+ })
2021
+ );
2022
+ return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { className: "mt-8 lg:mt-24", children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
2023
+ import_recodo5.SubtitleH3ResourceCollections,
2024
+ {
2025
+ title: data.TitlePart?.Title,
2026
+ subtitle: data.SubtitleH3ResourceCollections?.Subtitle?.Text,
2027
+ resourceCollections
2028
+ }
2029
+ ) });
2030
+ };
2031
+ }
2032
+ });
2033
+
2034
+ // src/components/Section/BannerFollowLinksWidget.tsx
2035
+ var BannerFollowLinksWidget_exports = {};
2036
+ __export(BannerFollowLinksWidget_exports, {
2037
+ BannerFollowLinksWidget: () => BannerFollowLinksWidget
2038
+ });
2039
+ var import_ui36, import_jsx_runtime41, BannerFollowLinksWidget;
2040
+ var init_BannerFollowLinksWidget = __esm({
2041
+ "src/components/Section/BannerFollowLinksWidget.tsx"() {
2042
+ "use strict";
2043
+ "use client";
2044
+ import_ui36 = require("@geowiki/ui");
2045
+ import_jsx_runtime41 = require("react/jsx-runtime");
2046
+ BannerFollowLinksWidget = ({ data }) => {
2047
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
2048
+ import_ui36.BannerFollowLinks,
2049
+ {
2050
+ title: data.TitlePart?.Title,
2051
+ links: data.BagPart.ContentItems.map((contentItem) => ({
2052
+ text: contentItem.HtmlLink?.Url?.Text,
2053
+ href: contentItem.HtmlLink?.Url?.Url,
2054
+ isNewTab: contentItem.HtmlLink?.NewTab?.Value
2055
+ }))
2056
+ }
2057
+ ) });
2058
+ };
2059
+ }
2060
+ });
2061
+
2062
+ // src/components/Section/NewContactUsWidget.tsx
2063
+ var NewContactUsWidget_exports = {};
2064
+ __export(NewContactUsWidget_exports, {
2065
+ NewContactUsWidget: () => NewContactUsWidget
2066
+ });
2067
+ var import_api_proxy3, import_react5, import_react_hook_form2, import_ui37, import_ui38, import_ui39, import_react6, import_core16, import_zod, import_zod2, import_jsx_runtime42, ContactFormSchema, NewContactUsWidget;
2068
+ var init_NewContactUsWidget = __esm({
2069
+ "src/components/Section/NewContactUsWidget.tsx"() {
2070
+ "use strict";
2071
+ "use client";
2072
+ import_api_proxy3 = require("@geowiki/api-proxy");
2073
+ import_react5 = require("react");
2074
+ import_react_hook_form2 = require("react-hook-form");
2075
+ import_ui37 = require("@geowiki/ui");
2076
+ import_ui38 = require("@geowiki/ui");
2077
+ import_ui39 = require("@geowiki/ui");
2078
+ import_react6 = require("react");
2079
+ import_core16 = require("@geowiki/core");
2080
+ import_zod = require("zod");
2081
+ import_zod2 = require("@hookform/resolvers/zod");
2082
+ import_jsx_runtime42 = require("react/jsx-runtime");
2083
+ ContactFormSchema = import_zod.z.object({
2084
+ name: import_zod.z.string().min(3, "Name is required"),
2085
+ email: import_zod.z.string().email("Invalid email address"),
2086
+ subject: import_zod.z.string().min(3, "Subject is required"),
2087
+ role: import_zod.z.string({ message: "Role is required" }).min(3, "Role is required"),
2088
+ message: import_zod.z.string().min(3, "Message is required"),
2089
+ acceptTerms: import_zod.z.boolean({ message: "You must accept the terms and conditions" }).default(false).refine((val) => {
2090
+ return val === true;
2091
+ }, "You must accept the terms and conditions")
2092
+ });
2093
+ NewContactUsWidget = ({ data }) => {
2094
+ console.log("data", data);
2095
+ const formRef = (0, import_react5.useRef)(null);
2096
+ const { data: audiences, isLoading: isAudienceLoading } = (0, import_core16.useAudience)();
2097
+ const [open, setOpen] = (0, import_react6.useState)(false);
2098
+ const [openSending, setOpenSending] = (0, import_react6.useState)(false);
2099
+ const form = (0, import_react_hook_form2.useForm)({
2100
+ resolver: (0, import_zod2.zodResolver)(ContactFormSchema)
2101
+ });
2102
+ const {
2103
+ register,
2104
+ handleSubmit,
2105
+ watch,
2106
+ reset,
2107
+ control,
2108
+ formState: { errors }
2109
+ } = form;
2110
+ const acceptTerms = watch("acceptTerms");
2111
+ const onSubmit = async (data2) => {
2112
+ setOpenSending(true);
2113
+ import_api_proxy3.ClusterService.clusterRecodoContact({
2114
+ name: data2.name,
2115
+ email: data2.email,
2116
+ subject: data2.subject,
2117
+ role: data2.role,
2118
+ message: data2.message
2119
+ }).then(() => {
2120
+ setOpenSending(false);
2121
+ setOpen(true);
2122
+ reset({
2123
+ name: "",
2124
+ email: "",
2125
+ subject: "",
2126
+ role: void 0,
2127
+ message: "",
2128
+ acceptTerms: false
2129
+ });
2130
+ }).catch((error) => {
2131
+ console.log(error);
2132
+ setOpenSending(false);
2133
+ setOpen(false);
2134
+ });
2135
+ };
2136
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "p-5 bg-grey-lightest rounded-xl flex justify-center mt-6 lg:px-88 lg:py-20 lg:mt-12", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_ui38.Form, { ...form, children: /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
2137
+ "form",
2138
+ {
2139
+ onSubmit: handleSubmit(onSubmit),
2140
+ className: "w-[41.25rem] space-y-8",
2141
+ ref: formRef,
2142
+ children: [
2143
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { className: "space-y-8", children: [
2144
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
2145
+ import_ui37.DesignInput,
2146
+ {
2147
+ placeholder: "Your name",
2148
+ type: "text",
2149
+ id: "name",
2150
+ autoComplete: "name",
2151
+ ...register("name", { required: true })
2152
+ }
2153
+ ),
2154
+ errors.name && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("span", { className: "text-red-500 text-sm", children: errors.name.message }),
2155
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
2156
+ import_ui37.DesignInput,
2157
+ {
2158
+ placeholder: "Your email",
2159
+ type: "email",
2160
+ id: "from",
2161
+ autoComplete: "email",
2162
+ ...register("email", { required: true })
2163
+ }
2164
+ ),
2165
+ errors.email && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("span", { className: "text-red-500 text-sm", children: errors.email.message }),
2166
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
2167
+ import_ui37.DesignInput,
2168
+ {
2169
+ placeholder: "Your subject",
2170
+ id: "subject",
2171
+ ...register("subject", { required: true })
2172
+ }
2173
+ ),
2174
+ errors.subject && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("span", { className: "text-red-500 text-sm", children: errors.subject.message }),
2175
+ !isAudienceLoading && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
2176
+ import_ui38.FormField,
2177
+ {
2178
+ control,
2179
+ name: "role",
2180
+ render: ({ field }) => /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
2181
+ import_ui38.DesignSelect,
2182
+ {
2183
+ onValueChange: field.onChange,
2184
+ defaultValue: field.value,
2185
+ children: [
2186
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
2187
+ import_ui38.DesignSelectTrigger,
2188
+ {
2189
+ className: "pl-0 py-1.5",
2190
+ variant: "input",
2191
+ children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_ui38.DesignSelectValue, { placeholder: "Your role" })
2192
+ }
2193
+ ),
2194
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_ui38.DesignSelectContent, { children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_ui38.DesignSelectGroup, { children: audiences.map((audience) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
2195
+ import_ui38.DesignSelectItem,
2196
+ {
2197
+ value: audience.value,
2198
+ children: audience.value
2199
+ },
2200
+ audience.key
2201
+ )) }) })
2202
+ ]
2203
+ },
2204
+ field.value
2205
+ )
2206
+ }
2207
+ ),
2208
+ errors.role && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("span", { className: "text-red-500 text-sm", children: errors.role.message }),
2209
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
2210
+ "textarea",
2211
+ {
2212
+ id: "message",
2213
+ placeholder: "Your message",
2214
+ ...register("message", { required: true }),
2215
+ rows: 5,
2216
+ className: "textarea textarea-bordered-0 text-sm lg:text-base w-full bg-transparent pl-0 border-0 border-b border-zinc-300 focus-within:border-primary focus:ring-0 focus:outline-none",
2217
+ defaultValue: ""
2218
+ }
2219
+ ),
2220
+ errors.message && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("span", { className: "text-red-500 text-sm", children: errors.message.message })
2221
+ ] }),
2222
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { className: "flex items-center space-x-1", children: [
2223
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
2224
+ import_ui38.FormField,
2225
+ {
2226
+ control,
2227
+ name: "acceptTerms",
2228
+ render: ({ field }) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_ui38.FormItem, { children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_ui38.FormControl, { children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
2229
+ import_ui37.Checkbox,
2230
+ {
2231
+ onCheckedChange: field.onChange,
2232
+ checked: field.value
2233
+ }
2234
+ ) }) })
2235
+ }
2236
+ ),
2237
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("label", { children: [
2238
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("span", { className: "text-sm lg:text-base leading-[130%]", children: "I'm accepting Recodo's" }),
2239
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
2240
+ "a",
2241
+ {
2242
+ href: "/page/terms-of-use",
2243
+ className: " text-primary",
2244
+ target: "_blank",
2245
+ children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("span", { className: "text-[.9375rem] lg:text-base font-semibold leading-[130%]", children: " Terms of Use " })
2246
+ }
2247
+ ),
2248
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("span", { className: "text-sm lg:text-base leading-[130%]", children: "and " }),
2249
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
2250
+ "a",
2251
+ {
2252
+ href: "/page/privacy-policy",
2253
+ className: " text-primary",
2254
+ target: "_blank",
2255
+ children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("span", { className: "text-[.9375rem] lg:text-base font-semibold leading-[130%]", children: "Privacy Policy " })
2256
+ }
2257
+ )
2258
+ ] })
2259
+ ] }),
2260
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
2261
+ import_ui39.DesignButton,
2262
+ {
2263
+ type: "submit",
2264
+ disabled: !acceptTerms,
2265
+ className: "w-full lg:w-auto",
2266
+ children: "Send"
2267
+ }
2268
+ ),
2269
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
2270
+ import_ui38.Notification,
2271
+ {
2272
+ title: "Sending",
2273
+ description: " ",
2274
+ open: openSending,
2275
+ setOpen: setOpenSending
2276
+ }
2277
+ ),
2278
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
2279
+ import_ui38.Notification,
2280
+ {
2281
+ title: "Thank you for submitting your information.",
2282
+ description: "Someone from the Recodo team will contact you shortly.",
2283
+ open,
2284
+ setOpen
2285
+ }
2286
+ )
2287
+ ]
2288
+ }
2289
+ ) }) });
2290
+ };
2291
+ }
2292
+ });
2293
+
2294
+ // src/components/Section/ContactCardsWidget.tsx
2295
+ var ContactCardsWidget_exports = {};
2296
+ __export(ContactCardsWidget_exports, {
2297
+ ContactCardsWidget: () => ContactCardsWidget
2298
+ });
2299
+ var import_ui40, import_jsx_runtime43, ContactCardsWidget;
2300
+ var init_ContactCardsWidget = __esm({
2301
+ "src/components/Section/ContactCardsWidget.tsx"() {
2302
+ "use strict";
2303
+ "use client";
2304
+ import_ui40 = require("@geowiki/ui");
2305
+ import_jsx_runtime43 = require("react/jsx-runtime");
2306
+ ContactCardsWidget = ({ data }) => {
2307
+ const cards = data.BagPart?.ContentItems || [];
2308
+ const getIconComponent = (iconName) => {
2309
+ switch (iconName?.toLowerCase()) {
2310
+ case "globe":
2311
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", width: "48", height: "48", viewBox: "0 0 48 48", fill: "none", children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("path", { d: "M25.4996 37.4478V40.4998H31.9996C32.8276 40.4998 33.4996 41.1718 33.4996 41.9998C33.4996 42.8278 32.8276 43.4998 31.9996 43.4998H15.9996C15.1716 43.4998 14.4996 42.8278 14.4996 41.9998C14.4996 41.1718 15.1716 40.4998 15.9996 40.4998H22.4996V37.3919C18.6216 36.9959 14.9977 35.4357 12.0357 32.8677L9.06157 35.8418C8.47557 36.4278 7.5255 36.4278 6.9395 35.8418C6.3535 35.2558 6.3535 34.3058 6.9395 33.7198L10.9395 29.7198C11.2215 29.4378 11.6016 29.2798 11.9996 29.2798C12.0016 29.2798 12.0035 29.2798 12.0035 29.2798C12.4035 29.2798 12.7875 29.4419 13.0655 29.7259C16.1075 32.8039 20.1535 34.4998 24.4595 34.4998C33.3035 34.4998 40.4996 27.3138 40.4996 18.4798C40.4996 14.1798 38.8017 10.1258 35.7217 7.06375C35.1337 6.47975 35.1294 5.52968 35.7134 4.94168C36.2994 4.35368 37.2535 4.35382 37.8355 4.93582C41.4875 8.56382 43.4996 13.3758 43.4996 18.4798C43.4996 28.6178 35.5136 36.9038 25.4996 37.4478ZM23.9996 6.49979C17.3816 6.49979 11.9996 11.8818 11.9996 18.4998C11.9996 25.1178 17.3816 30.4998 23.9996 30.4998C30.6176 30.4998 35.9996 25.1178 35.9996 18.4998C35.9996 11.8818 30.6176 6.49979 23.9996 6.49979Z", fill: "black" }) });
2312
+ case "gallery":
2313
+ case "frames":
2314
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", width: "48", height: "48", viewBox: "0 0 48 48", fill: "none", children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("path", { d: "M44.896 15.2155L42.4961 32.3776C42.1821 34.5636 41.3279 36.1156 39.9819 37.0016C39.5159 37.2416 39.0061 36.9998 39.0061 36.5138V19.3317C39.0061 14.1137 35.8901 10.9977 30.6721 10.9977C30.6721 10.9977 12.4479 10.9977 11.8479 10.9977C11.2479 10.9977 11.2339 10.4574 11.2759 10.2174C11.5919 8.32543 12.34 6.92541 13.5 6.05141C14.714 5.13741 16.354 4.81961 18.384 5.10561L39.5061 8.06557C41.5401 8.35357 43.0359 9.11568 43.9519 10.3317C44.8659 11.5457 45.184 13.1895 44.896 15.2155ZM36.0061 19.3297V36.6657C36.0061 40.2217 34.2281 41.9997 30.6721 41.9997H9.33594C5.77994 41.9997 4.00195 40.2217 4.00195 36.6657V19.3297C4.00195 15.7737 5.77994 13.9957 9.33594 13.9957H30.6721C34.2281 13.9957 36.0061 15.7717 36.0061 19.3297ZM7 19.3297V33.6857L9.86597 30.8195C10.546 30.1195 11.686 30.1195 12.386 30.8195L14.0459 32.4796C14.3859 32.8196 14.9659 32.8196 15.3059 32.4796L24.0859 23.6998C24.7659 23.0198 25.906 23.0198 26.606 23.6998L33.0061 30.1159V19.3297C33.0061 17.4317 32.5701 16.9957 30.6721 16.9957H9.33594C7.43594 16.9957 7 17.4317 7 19.3297ZM13.0039 24.9997C14.1059 24.9997 15 24.1037 15 22.9997C15 21.8957 14.1059 20.9997 13.0039 20.9997H12.988C11.886 20.9997 11 21.8957 11 22.9997C11 24.1037 11.9019 24.9997 13.0039 24.9997Z", fill: "black" }) });
2315
+ case "document":
2316
+ case "list":
2317
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("svg", { xmlns: "http://www.w3.org/2000/svg", width: "48", height: "48", viewBox: "0 0 48 48", fill: "none", children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("path", { d: "M37 4.5H14C9.164 4.5 6.5 7.164 6.5 12V36C6.5 40.486 9.514 43.5 14 43.5H37C39.48 43.5 41.5 41.482 41.5 39V27V9C41.5 6.518 39.48 4.5 37 4.5ZM18 12.5H30C30.828 12.5 31.5 13.172 31.5 14C31.5 14.828 30.828 15.5 30 15.5H18C17.172 15.5 16.5 14.828 16.5 14C16.5 13.172 17.172 12.5 18 12.5ZM18 18.5H26C26.828 18.5 27.5 19.172 27.5 20C27.5 20.828 26.828 21.5 26 21.5H18C17.172 21.5 16.5 20.828 16.5 20C16.5 19.172 17.172 18.5 18 18.5ZM38.5 39C38.5 39.828 37.826 40.5 37 40.5H14C9.94 40.5 9.5 37.352 9.5 36C9.5 34.648 9.94 31.5 14 31.5H37C37.29 31.5 37.5702 31.4661 37.8442 31.4141C37.9322 31.3981 38.0161 31.3679 38.1021 31.3459C38.2341 31.3119 38.372 31.2879 38.5 31.2419V39Z", fill: "black" }) });
2318
+ default:
2319
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(
2320
+ "svg",
2321
+ {
2322
+ className: "w-8 h-8",
2323
+ fill: "currentColor",
2324
+ viewBox: "0 0 24 24",
2325
+ xmlns: "http://www.w3.org/2000/svg",
2326
+ "aria-label": "Star icon",
2327
+ children: [
2328
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("title", { children: "Star icon" }),
2329
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("path", { d: "M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z" })
2330
+ ]
2331
+ }
2332
+ );
2333
+ }
2334
+ };
2335
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { className: "py-16", children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8 max-w-6xl mx-auto", children: cards.map((card, index) => {
2336
+ const cardId = card.NewResourceCollectionItem?.Title?.Text || `card-${index}`;
2337
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(
2338
+ "div",
2339
+ {
2340
+ className: "bg-gray-100 rounded-xl py-6 px-6 hover:bg-gray-100 hover:shadow-none transition-none",
2341
+ children: [
2342
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { className: "text-black mb-4", children: getIconComponent(
2343
+ card.NewResourceCollectionItem?.Icon?.Text || void 0
2344
+ ) }),
2345
+ card.NewResourceCollectionItem?.Subtitle?.Text && /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("p", { className: "text-green-600 text-base font-semibold mb-2", children: card.NewResourceCollectionItem.Subtitle.Text }),
2346
+ card.NewResourceCollectionItem?.Title?.Text && /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("h3", { className: "text-2xl font-bold text-gray-900 mb-4", children: card.NewResourceCollectionItem.Title.Text }),
2347
+ card.NewResourceCollectionItem?.Text?.Text && /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("p", { className: "text-gray-700 mb-6 leading-relaxed", children: card.NewResourceCollectionItem.Text.Text }),
2348
+ card.NewResourceCollectionItem?.Link?.Text && /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
2349
+ import_ui40.DesignButton,
2350
+ {
2351
+ variant: "primary",
2352
+ size: "sm",
2353
+ className: "bg-[#59AD31] hover:bg-[#4a9027] text-white rounded-full w-12 h-12 p-0 flex items-center justify-center",
2354
+ onClick: () => {
2355
+ const linkText = card.NewResourceCollectionItem?.Link?.Text ?? "";
2356
+ if (linkText && typeof linkText === "string") {
2357
+ if (card.NewResourceCollectionItem?.IsNewTab?.Value) {
2358
+ window.open(linkText, "_blank");
2359
+ } else {
2360
+ window.location.href = linkText;
2361
+ }
2362
+ }
2363
+ },
2364
+ children: /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(
2365
+ "svg",
2366
+ {
2367
+ xmlns: "http://www.w3.org/2000/svg",
2368
+ width: "24",
2369
+ height: "24",
2370
+ viewBox: "0 0 24 24",
2371
+ fill: "none",
2372
+ stroke: "currentColor",
2373
+ strokeWidth: "2",
2374
+ strokeLinecap: "round",
2375
+ strokeLinejoin: "round",
2376
+ className: "h-6 w-10",
2377
+ "aria-label": "Arrow right",
2378
+ children: [
2379
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("title", { children: "Arrow right" }),
2380
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("line", { x1: "5", x2: "19", y1: "12", y2: "12" }),
2381
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("polyline", { points: "12 5 19 12 12 19" })
2382
+ ]
2383
+ }
2384
+ )
2385
+ }
2386
+ )
2387
+ ]
2388
+ },
2389
+ cardId
2390
+ );
2391
+ }) }) });
2392
+ };
2393
+ }
2394
+ });
2395
+
2396
+ // src/components/Section/SubtitleH3BodySpecialFeatureResourceCollectionsWidget.tsx
2397
+ var SubtitleH3BodySpecialFeatureResourceCollectionsWidget_exports = {};
2398
+ __export(SubtitleH3BodySpecialFeatureResourceCollectionsWidget_exports, {
2399
+ SubtitleH3BodySpecialFeatureResourceCollectionsWidget: () => SubtitleH3BodySpecialFeatureResourceCollectionsWidget
2400
+ });
2401
+ var import_recodo6, import_jsx_runtime44, SubtitleH3BodySpecialFeatureResourceCollectionsWidget;
2402
+ var init_SubtitleH3BodySpecialFeatureResourceCollectionsWidget = __esm({
2403
+ "src/components/Section/SubtitleH3BodySpecialFeatureResourceCollectionsWidget.tsx"() {
2404
+ "use strict";
2405
+ "use client";
2406
+ import_recodo6 = require("@geowiki/recodo");
2407
+ import_jsx_runtime44 = require("react/jsx-runtime");
2408
+ SubtitleH3BodySpecialFeatureResourceCollectionsWidget = ({
2409
+ data,
2410
+ cmsUrl
2411
+ }) => {
2412
+ const featureResources = data.BagPart.ContentItems.map(
2413
+ (contentItem) => ({
2414
+ imagesPath: `${cmsUrl}/media/${contentItem.FeatureResourceCollections?.Image?.Paths[0]}`,
2415
+ title: contentItem.FeatureResourceCollections.Title?.Text,
2416
+ subtitle: contentItem.FeatureResourceCollections.Subtitle?.Text,
2417
+ text: contentItem.FeatureResourceCollections.Text?.Text,
2418
+ tag: contentItem.FeatureResourceCollections.Tag?.Text,
2419
+ imageType: contentItem.FeatureResourceCollections.ImageType?.Text,
2420
+ button: {
2421
+ link: contentItem.LinkPart.Url?.Text,
2422
+ isNewTab: contentItem.LinkPart.IsNewTab?.Value,
2423
+ contents: contentItem.LinkPart.Text?.Text
2424
+ }
2425
+ })
2426
+ );
2427
+ return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
2428
+ import_recodo6.SubtitleH3BodySpecialFeatureResourceCollections,
2429
+ {
2430
+ title: data.TitlePart?.Title,
2431
+ subtitle: data.SubtitleH3BodySpecialFeatureResourceCollections?.Subtitle?.Text,
2432
+ description: data.SubtitleH3BodySpecialFeatureResourceCollections?.Description?.Text,
2433
+ featureResources
2434
+ }
2435
+ ) });
2436
+ };
2437
+ }
2438
+ });
2439
+
2440
+ // src/components/Section/H2BodyInternalLinkMapWidget.tsx
2441
+ var H2BodyInternalLinkMapWidget_exports = {};
2442
+ __export(H2BodyInternalLinkMapWidget_exports, {
2443
+ H2BodyInternalLinkMapWidget: () => H2BodyInternalLinkMapWidget
2444
+ });
2445
+ var import_link, import_dynamic2, import_react7, import_ui41, import_jsx_runtime45, MapWithNoSSR2, H2BodyInternalLinkMapWidget;
2446
+ var init_H2BodyInternalLinkMapWidget = __esm({
2447
+ "src/components/Section/H2BodyInternalLinkMapWidget.tsx"() {
2448
+ "use strict";
2449
+ "use client";
2450
+ import_link = __toESM(require("next/link"));
2451
+ import_dynamic2 = __toESM(require("next/dynamic"));
2452
+ import_react7 = require("react");
2453
+ import_ui41 = require("@geowiki/ui");
2454
+ import_jsx_runtime45 = require("react/jsx-runtime");
2455
+ MapWithNoSSR2 = (0, import_dynamic2.default)(
2456
+ () => Promise.resolve().then(() => (init_HeroMap(), HeroMap_exports)).then((x) => x.HeroMap),
2457
+ {
2458
+ ssr: false
2459
+ }
2460
+ );
2461
+ H2BodyInternalLinkMapWidget = ({
2462
+ data
2463
+ }) => {
2464
+ var button = {
2465
+ text: data.LinkPart.Text.Text,
2466
+ link: data.LinkPart.Url.Text,
2467
+ isNewTab: data.LinkPart.IsNewTab.Value
2468
+ };
2469
+ const [position, setPosition] = (0, import_react7.useState)(null);
2470
+ return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
2471
+ "div",
2472
+ {
2473
+ className: "rounded-xl bg-grey-lightest ",
2474
+ "data-component": "H2BodyInternalLinkMapWidget",
2475
+ children: /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("div", { className: "container mx-auto mt-6 p-5 lg:p-0 lg:flex lg:justify-between lg:items-center lg:mt-20", children: [
2476
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)("div", { className: "pt-1 pb-8 lg:pl-28 lg:pr-30 lg:py-0", children: [
2477
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
2478
+ import_ui41.HtmlView,
2479
+ {
2480
+ cssClass: "m-0 lg:max-w-sm",
2481
+ html: (0, import_ui41.parseTitle)(data.TitlePart.Title, "H2")
2482
+ }
2483
+ ),
2484
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_ui41.Body18, { className: " py-4 lg:max-w-xs lg:pt-16 lg:pb-6", children: data.H2BodyInternalLinkMap.Text.Text }),
2485
+ button?.text && button?.link && /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
2486
+ import_ui41.DesignButton,
2487
+ {
2488
+ variant: "internalLink",
2489
+ className: "h-auto p-0 text-base lg:p-0",
2490
+ children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
2491
+ import_link.default,
2492
+ {
2493
+ href: button.link,
2494
+ target: button.isNewTab ? "_blank" : "_self",
2495
+ rel: "noreferrer",
2496
+ children: button.text
2497
+ }
2498
+ )
2499
+ }
2500
+ )
2501
+ ] }),
2502
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)("div", { className: "w-full h-[22.75rem] rounded-[12px] overflow-hidden items-center lg:w-[55%] lg:h-[35rem] lg:m-12 ", children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
2503
+ MapWithNoSSR2,
2504
+ {
2505
+ ...{
2506
+ position,
2507
+ setPosition,
2508
+ showClusterMarkers: true,
2509
+ enableLocationMarker: false
2510
+ }
2511
+ }
2512
+ ) })
2513
+ ] })
2514
+ }
2515
+ );
2516
+ };
2517
+ }
2518
+ });
2519
+
2520
+ // src/components/Section/SignUpBannerWidget.tsx
2521
+ var SignUpBannerWidget_exports = {};
2522
+ __export(SignUpBannerWidget_exports, {
2523
+ SignUpBannerWidget: () => SignUpBannerWidget
2524
+ });
2525
+ var import_ui42, import_jsx_runtime46, SignUpBannerWidget;
2526
+ var init_SignUpBannerWidget = __esm({
2527
+ "src/components/Section/SignUpBannerWidget.tsx"() {
2528
+ "use strict";
2529
+ "use client";
2530
+ import_ui42 = require("@geowiki/ui");
2531
+ import_jsx_runtime46 = require("react/jsx-runtime");
2532
+ SignUpBannerWidget = ({ data }) => {
2533
+ var buttonProps = {
2534
+ text: data.LinkPart.Text.Text,
2535
+ link: data.LinkPart.Url.Text,
2536
+ isNewTab: data.LinkPart.IsNewTab.Value
2537
+ };
2538
+ const imagePaths = data.BagPart.ContentItems.map(
2539
+ (contentItem) => contentItem.Image.Image.Paths[0]
2540
+ );
2541
+ return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
2542
+ import_ui42.SignUpBanner,
2543
+ {
2544
+ title: data.TitlePart.Title,
2545
+ text: data.SignUpBanner.Text.Text,
2546
+ button: buttonProps,
2547
+ imagePaths
2548
+ }
2549
+ ) });
2550
+ };
2551
+ }
2552
+ });
2553
+
2554
+ // src/components/Section/SubtitleH3ChildrenWidget.tsx
2555
+ var SubtitleH3ChildrenWidget_exports = {};
2556
+ __export(SubtitleH3ChildrenWidget_exports, {
2557
+ SubtitleH3ChildrenWidget: () => SubtitleH3ChildrenWidget
2558
+ });
2559
+ var import_ui43, import_jsx_runtime47, SubtitleH3ChildrenWidget;
2560
+ var init_SubtitleH3ChildrenWidget = __esm({
2561
+ "src/components/Section/SubtitleH3ChildrenWidget.tsx"() {
2562
+ "use strict";
2563
+ "use client";
2564
+ import_ui43 = require("@geowiki/ui");
2565
+ import_jsx_runtime47 = require("react/jsx-runtime");
2566
+ SubtitleH3ChildrenWidget = ({ data }) => {
2567
+ var type = data.SubtitleH3Children.Type.Values[0];
2568
+ var buttonProps = {
2569
+ text: data.LinkPart.Text.Text,
2570
+ link: data.LinkPart.Url.Text,
2571
+ isNewTab: data.LinkPart.IsNewTab.Value
2572
+ };
2573
+ if (type === "ClusterNews3Collumn") {
2574
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
2575
+ import_ui43.SubtitleH3ClusterNews3Column,
2576
+ {
2577
+ title: data.TitlePart.Title,
2578
+ subtitle: data.SubtitleH3Children.Subtitle.Text,
2579
+ button: buttonProps
2580
+ }
2581
+ ) });
2582
+ }
2583
+ if (type === "Cluster4Column") {
2584
+ return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
2585
+ import_ui43.SubtitleH3Cluster4Column,
2586
+ {
2587
+ title: data.TitlePart.Title,
2588
+ subtitle: data.SubtitleH3Children.Subtitle.Text,
2589
+ button: buttonProps
2590
+ }
2591
+ ) });
2592
+ }
2593
+ return null;
2594
+ };
2595
+ }
2596
+ });
2597
+
2598
+ // src/components/Section/HeaderBodyWidget.tsx
2599
+ var HeaderBodyWidget_exports = {};
2600
+ __export(HeaderBodyWidget_exports, {
2601
+ HeaderBodyWidget: () => HeaderBodyWidget
2602
+ });
2603
+ var import_ui44, import_jsx_runtime48, HeaderBodyWidget;
2604
+ var init_HeaderBodyWidget = __esm({
2605
+ "src/components/Section/HeaderBodyWidget.tsx"() {
2606
+ "use strict";
2607
+ import_ui44 = require("@geowiki/ui");
2608
+ import_jsx_runtime48 = require("react/jsx-runtime");
2609
+ HeaderBodyWidget = ({ data }) => {
2610
+ var type = data.HeaderBody.Type.Values[0];
2611
+ if (type === "H1Body") {
2612
+ return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("div", { className: "mx-auto max-w-full lg:container lg:max-w-5xl", children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
2613
+ import_ui44.H1Body,
2614
+ {
2615
+ title: data.TitlePart.Title,
2616
+ textBody: data.HeaderBody.TextBody.Html
2617
+ }
2618
+ ) });
2619
+ }
2620
+ if (type === "H7Body") {
2621
+ return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)("div", { className: "mx-auto max-w-full lg:container lg:max-w-5xl", children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
2622
+ import_ui44.H7Body,
2623
+ {
2624
+ title: data.TitlePart.Title,
2625
+ textBody: data.HeaderBody.TextBody.Html
2626
+ }
2627
+ ) });
2628
+ }
2629
+ };
2630
+ }
2631
+ });
2632
+
2633
+ // src/components/Section/Recodo/LanguagesWidget.tsx
2634
+ var LanguagesWidget_exports = {};
2635
+ __export(LanguagesWidget_exports, {
2636
+ LanguageWidget: () => LanguageWidget
2637
+ });
2638
+ var import_core17, import_ui45, import_react8, import_jsx_runtime49, LanguageWidget;
2639
+ var init_LanguagesWidget = __esm({
2640
+ "src/components/Section/Recodo/LanguagesWidget.tsx"() {
2641
+ "use strict";
2642
+ import_core17 = require("@geowiki/core");
2643
+ init_Sections();
2644
+ import_ui45 = require("@geowiki/ui");
2645
+ import_react8 = require("react");
2646
+ import_jsx_runtime49 = require("react/jsx-runtime");
2647
+ LanguageWidget = () => {
2648
+ const { data: languages, isLoading: isLanguagesLoading } = (0, import_core17.useCmsContentWithType)("LanguageItem");
2649
+ const { data: generalSettings, isLoading: isGeneralSettingsLoading } = (0, import_core17.useDefaultSettings)();
2650
+ const [selectedLanguageContent, setSelectedLanguageContent] = (0, import_react8.useState)();
2651
+ const handleLanguageChange = (language) => {
2652
+ const selectedLang = languages.find(
2653
+ (lang) => lang.TitlePart.Title === language
2654
+ );
2655
+ console.log(selectedLang);
2656
+ setSelectedLanguageContent(selectedLang);
2657
+ };
2658
+ (0, import_react8.useEffect)(() => {
2659
+ if (languages) {
2660
+ const englishLanguage = languages.find(
2661
+ (lang) => lang.TitlePart.Title === "English"
2662
+ );
2663
+ setSelectedLanguageContent(englishLanguage);
2664
+ }
2665
+ }, [languages]);
2666
+ if (isLanguagesLoading || isGeneralSettingsLoading)
2667
+ return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { children: "Loading..." });
2668
+ return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "container mx-auto px-4 py-8", children: /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "grid grid-cols-1 md:grid-cols-3 gap-8", children: [
2669
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "space-y-4 lg:mt-28", children: [
2670
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("h2", { className: "text-2xl font-bold", children: "Language" }),
2671
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("nav", { className: "space-y-1", children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
2672
+ import_ui45.RadioGroup,
2673
+ {
2674
+ defaultValue: "English",
2675
+ onValueChange: (e) => {
2676
+ console.log(e);
2677
+ handleLanguageChange(e);
2678
+ },
2679
+ children: languages.map((language, index) => /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)("div", { className: "flex items-center space-x-2", children: [
2680
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_ui45.RadioGroupItem, { value: language?.TitlePart?.Title, id: "r1" }),
2681
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(import_ui45.Label, { htmlFor: "r1", children: language?.TitlePart?.Title })
2682
+ ] }, index))
2683
+ }
2684
+ ) })
2685
+ ] }),
2686
+ /* @__PURE__ */ (0, import_jsx_runtime49.jsx)("div", { className: "md:col-span-2 space-y-6", children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
2687
+ Sections,
2688
+ {
2689
+ sections: selectedLanguageContent?.Content.ContentItems,
2690
+ settings: generalSettings,
2691
+ cmsUrl: ""
2692
+ }
2693
+ ) })
2694
+ ] }) });
2695
+ };
2696
+ }
2697
+ });
2698
+
2699
+ // src/components/Section/Recodo/SubtitleH3KeyResourcesWidget.tsx
2700
+ var SubtitleH3KeyResourcesWidget_exports = {};
2701
+ __export(SubtitleH3KeyResourcesWidget_exports, {
2702
+ SubtitleH3KeyResourcesWidget: () => SubtitleH3KeyResourcesWidget
2703
+ });
2704
+ var import_recodo7, import_jsx_runtime50, SubtitleH3KeyResourcesWidget;
2705
+ var init_SubtitleH3KeyResourcesWidget = __esm({
2706
+ "src/components/Section/Recodo/SubtitleH3KeyResourcesWidget.tsx"() {
2707
+ "use strict";
2708
+ import_recodo7 = require("@geowiki/recodo");
2709
+ import_jsx_runtime50 = require("react/jsx-runtime");
2710
+ SubtitleH3KeyResourcesWidget = ({
2711
+ data
2712
+ }) => {
2713
+ const keyResources = data.BagPart.ContentItems.map((contentItem) => ({
2714
+ imagePath: contentItem.KeyResourceItem?.Image?.Paths[0],
2715
+ title: contentItem.TitlePart?.Title,
2716
+ subtitle: contentItem.KeyResourceItem.Subtitle?.Text,
2717
+ path: contentItem.KeyResourceItem.Link?.Url
2718
+ }));
2719
+ return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
2720
+ import_recodo7.SubtitleH3KeyResources,
2721
+ {
2722
+ title: data.TitlePart?.Title,
2723
+ subtitle: data.SubtitleH3KeyResources?.Subtitle?.Text,
2724
+ keyResources
2725
+ }
2726
+ ) });
2727
+ };
2728
+ }
2729
+ });
2730
+
2731
+ // src/components/Section/VideoWidget.tsx
2732
+ var VideoWidget_exports = {};
2733
+ __export(VideoWidget_exports, {
2734
+ VideoWidget: () => VideoWidget
2735
+ });
2736
+ var import_dynamic3, import_jsx_runtime51, ReactPlayer, VideoWidget;
2737
+ var init_VideoWidget = __esm({
2738
+ "src/components/Section/VideoWidget.tsx"() {
2739
+ "use strict";
2740
+ import_dynamic3 = __toESM(require("next/dynamic"));
2741
+ import_jsx_runtime51 = require("react/jsx-runtime");
2742
+ ReactPlayer = (0, import_dynamic3.default)(() => import("react-player"), { ssr: false });
2743
+ VideoWidget = ({ data }) => {
2744
+ return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)("div", { className: "mx-auto lg:container w-full lg:w-[60%] pt-10 h-[260px] lg:h-[505px]", children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
2745
+ ReactPlayer,
2746
+ {
2747
+ url: data.LinkPart?.Url?.Text,
2748
+ controls: true,
2749
+ width: "100%",
2750
+ height: "100%"
2751
+ }
2752
+ ) });
2753
+ };
2754
+ }
2755
+ });
2756
+
2757
+ // src/components/Section/SubtitleH2BodyVideoWidget.tsx
2758
+ var SubtitleH2BodyVideoWidget_exports = {};
2759
+ __export(SubtitleH2BodyVideoWidget_exports, {
2760
+ SubtitleH2BodyVideoWidget: () => SubtitleH2BodyVideoWidget
2761
+ });
2762
+ var import_ui46, import_jsx_runtime52, SubtitleH2BodyVideoWidget;
2763
+ var init_SubtitleH2BodyVideoWidget = __esm({
2764
+ "src/components/Section/SubtitleH2BodyVideoWidget.tsx"() {
2765
+ "use strict";
2766
+ import_ui46 = require("@geowiki/ui");
2767
+ import_jsx_runtime52 = require("react/jsx-runtime");
2768
+ SubtitleH2BodyVideoWidget = ({
2769
+ data
2770
+ }) => {
2771
+ var buttonProps = {
2772
+ text: data.LinkPart.Text.Text,
2773
+ link: data.LinkPart.Url.Text,
2774
+ isNewTab: data.LinkPart.IsNewTab.Value
2775
+ };
2776
+ return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
2777
+ import_ui46.SubtitleH2BodyVideo,
2778
+ {
2779
+ title: data.TitlePart.Title,
2780
+ content: data.SubtitleH2BodyVideo?.Content?.Html,
2781
+ button: buttonProps,
2782
+ videoLink: data.SubtitleH2BodyVideo?.VideoLink?.Url
2783
+ }
2784
+ ) });
2785
+ };
2786
+ }
2787
+ });
2788
+
2789
+ // src/components/Section/ImageLefttH3BodyWidget.tsx
2790
+ var ImageLefttH3BodyWidget_exports = {};
2791
+ __export(ImageLefttH3BodyWidget_exports, {
2792
+ ImageLefttH3BodyWidget: () => ImageLefttH3BodyWidget
2793
+ });
2794
+ var import_ui47, import_jsx_runtime53, ImageLefttH3BodyWidget;
2795
+ var init_ImageLefttH3BodyWidget = __esm({
2796
+ "src/components/Section/ImageLefttH3BodyWidget.tsx"() {
2797
+ "use strict";
2798
+ "use client";
2799
+ import_ui47 = require("@geowiki/ui");
2800
+ import_jsx_runtime53 = require("react/jsx-runtime");
2801
+ ImageLefttH3BodyWidget = ({
2802
+ data
2803
+ }) => {
2804
+ var button = {
2805
+ text: data.LinkPart.Text.Text,
2806
+ link: data.LinkPart.Url.Text,
2807
+ isNewTab: data.LinkPart.IsNewTab.Value
2808
+ };
2809
+ return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
2810
+ import_ui47.ImageLefttH3Body,
2811
+ {
2812
+ imagePath: data?.ImageLefttH3Body?.Image?.Paths,
2813
+ title: data.TitlePart?.Title,
2814
+ text: data?.ImageLefttH3Body?.Text?.Html,
2815
+ button
2816
+ }
2817
+ );
2818
+ };
2819
+ }
2820
+ });
2821
+
2822
+ // src/components/Section/SixClusterNewsWidget.tsx
2823
+ var SixClusterNewsWidget_exports = {};
2824
+ __export(SixClusterNewsWidget_exports, {
2825
+ SixClusterNewsWidget: () => SixClusterNewsWidget
2826
+ });
2827
+ var import_ui48, import_jsx_runtime54, SixClusterNewsWidget;
2828
+ var init_SixClusterNewsWidget = __esm({
2829
+ "src/components/Section/SixClusterNewsWidget.tsx"() {
2830
+ "use strict";
2831
+ "use client";
2832
+ import_ui48 = require("@geowiki/ui");
2833
+ import_jsx_runtime54 = require("react/jsx-runtime");
2834
+ SixClusterNewsWidget = () => {
2835
+ return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(import_ui48.SixClusterNews, {});
2836
+ };
2837
+ }
2838
+ });
2839
+
2840
+ // src/components/Section/ImageLeftH3BodyLinkWidget.tsx
2841
+ var ImageLeftH3BodyLinkWidget_exports = {};
2842
+ __export(ImageLeftH3BodyLinkWidget_exports, {
2843
+ ImageLeftH3BodyLinkWidget: () => ImageLeftH3BodyLinkWidget
2844
+ });
2845
+ var import_ui49, import_jsx_runtime55, ImageLeftH3BodyLinkWidget;
2846
+ var init_ImageLeftH3BodyLinkWidget = __esm({
2847
+ "src/components/Section/ImageLeftH3BodyLinkWidget.tsx"() {
2848
+ "use strict";
2849
+ "use client";
2850
+ import_ui49 = require("@geowiki/ui");
2851
+ import_jsx_runtime55 = require("react/jsx-runtime");
2852
+ ImageLeftH3BodyLinkWidget = ({
2853
+ data
2854
+ }) => {
2855
+ var buttonProps = {
2856
+ text: data.LinkPart.Text.Text,
2857
+ link: data.LinkPart.Url.Text,
2858
+ isNewTab: data.LinkPart.IsNewTab.Value
2859
+ };
2860
+ return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
2861
+ import_ui49.ImageLeftH3BodyLink,
2862
+ {
2863
+ title: data.TitlePart.Title,
2864
+ content: data.ImageLeftH3BodyLink.Content.Html,
2865
+ button: buttonProps,
2866
+ path: data?.ImageLeftH3BodyLink?.Image?.Paths[0]
2867
+ }
2868
+ ) });
2869
+ };
2870
+ }
2871
+ });
2872
+
2873
+ // src/components/Section/IframeWidget.tsx
2874
+ var IframeWidget_exports = {};
2875
+ __export(IframeWidget_exports, {
2876
+ IframeWidget: () => IframeWidget
2877
+ });
2878
+ var import_ui50, import_jsx_runtime56, IframeWidget;
2879
+ var init_IframeWidget = __esm({
2880
+ "src/components/Section/IframeWidget.tsx"() {
2881
+ "use strict";
2882
+ "use client";
2883
+ import_ui50 = require("@geowiki/ui");
2884
+ import_jsx_runtime56 = require("react/jsx-runtime");
2885
+ IframeWidget = ({ data }) => {
2886
+ return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)("div", { className: "lg:container mx-auto", children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
2887
+ import_ui50.IframeViewer,
2888
+ {
2889
+ html: data.IframeViewer?.Content?.Text,
2890
+ className: data.IframeViewer?.ClassName?.Text
2891
+ }
2892
+ ) });
2893
+ };
2894
+ }
2895
+ });
2896
+
2897
+ // src/components/Section/GeoQuest/DownloadQuestWidget.tsx
2898
+ var DownloadQuestWidget_exports = {};
2899
+ __export(DownloadQuestWidget_exports, {
2900
+ DownloadQuestWidget: () => DownloadQuestWidget
2901
+ });
2902
+ var import_react9, import_jsx_runtime57, quests, DownloadIcon, DownloadQuestWidget;
2903
+ var init_DownloadQuestWidget = __esm({
2904
+ "src/components/Section/GeoQuest/DownloadQuestWidget.tsx"() {
2905
+ "use strict";
2906
+ import_react9 = require("react");
2907
+ import_jsx_runtime57 = require("react/jsx-runtime");
2908
+ quests = [
2909
+ {
2910
+ label: "Crop Capture",
2911
+ value: "quest1",
2912
+ url: "https://geoquest.blob.core.windows.net/crop-observe/points.parquet"
2913
+ }
2914
+ //{ label: "Tree Quest", value: "quest2", url: "/downloads/quest2.csv" },
2915
+ //{ label: "Forest Quest", value: "quest3", url: "/downloads/quest3.csv" },
2916
+ //{ label: "Plot Quest", value: "quest3", url: "/downloads/quest3.csv" },
2917
+ ];
2918
+ DownloadIcon = () => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
2919
+ "svg",
2920
+ {
2921
+ xmlns: "http://www.w3.org/2000/svg",
2922
+ fill: "none",
2923
+ viewBox: "0 0 24 24",
2924
+ strokeWidth: 2,
2925
+ stroke: "currentColor",
2926
+ className: "w-5 h-5 ml-2",
2927
+ children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
2928
+ "path",
2929
+ {
2930
+ strokeLinecap: "round",
2931
+ strokeLinejoin: "round",
2932
+ d: "M4.5 20.25h15m-7.5-16.5v12m0 0l-4.5-4.5m4.5 4.5l4.5-4.5"
2933
+ }
2934
+ )
2935
+ }
2936
+ );
2937
+ DownloadQuestWidget = () => {
2938
+ const [selectedQuest, setSelectedQuest] = (0, import_react9.useState)(quests[0].value);
2939
+ const quest = quests.find((q) => q.value === selectedQuest);
2940
+ return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("div", { className: "bg-green-100/60 rounded-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("section", { className: "w-full max-w-7xl mx-auto lg:px-16 lg:py-12 p-5 flex flex-col md:flex-row gap-8 items-center justify-center mt-4 md:mt-8", children: [
2941
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("div", { className: "flex-1 min-w-[250px]", children: [
2942
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("h2", { className: "text-2xl lg:text-4xl md:text-5xl font-light mb-4 text-gray-800", children: [
2943
+ "Download public GeoQuest",
2944
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("br", {}),
2945
+ "data"
2946
+ ] }),
2947
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("p", { className: "text-gray-600 text-base md:text-lg mt-4 max-w-lg", children: "Quick access to the public data produced in our Quests." })
2948
+ ] }),
2949
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("div", { className: "flex-1 max-w-sm w-full bg-white rounded-xl shadow p-8 flex flex-col gap-6 items-center", children: [
2950
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)("div", { className: "w-full", children: [
2951
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
2952
+ "label",
2953
+ {
2954
+ htmlFor: "quest-select",
2955
+ className: "block text-sm font-medium text-gray-700 mb-2",
2956
+ children: "Quest"
2957
+ }
2958
+ ),
2959
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
2960
+ "select",
2961
+ {
2962
+ id: "quest-select",
2963
+ className: "w-full rounded-md border border-gray-200 p-2 text-gray-700 bg-white focus:ring-2 focus:ring-green-200 focus:outline-none",
2964
+ value: selectedQuest,
2965
+ onChange: (e) => setSelectedQuest(e.target.value),
2966
+ children: quests.map((q) => /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("option", { value: q.value, children: q.label }, q.value))
2967
+ }
2968
+ )
2969
+ ] }),
2970
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsxs)(
2971
+ "a",
2972
+ {
2973
+ href: quest?.url || "#",
2974
+ download: true,
2975
+ target: "_blank",
2976
+ rel: "noopener noreferrer",
2977
+ className: `w-full flex items-center justify-center gap-2 rounded-full py-3 text-lg font-medium shadow transition-colors focus:outline-none focus:ring-2 focus:ring-green-200 ${quest?.url ? "bg-black text-white hover:bg-gray-900" : "bg-gray-300 text-gray-500 cursor-not-allowed pointer-events-none"}`,
2978
+ "aria-label": "Download quest data",
2979
+ children: [
2980
+ "Download ",
2981
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(DownloadIcon, {})
2982
+ ]
2983
+ }
2984
+ )
2985
+ ] })
2986
+ ] }) });
2987
+ };
2988
+ }
2989
+ });
2990
+
2991
+ // src/components/Section/GeoQuest/QuestMapClient.tsx
2992
+ var QuestMapClient_exports = {};
2993
+ __export(QuestMapClient_exports, {
2994
+ QuestMapClient: () => QuestMapClient
2995
+ });
2996
+ function getIcon2(color, name) {
2997
+ const myIcon = import_ui52.IconPaths.find((icon) => icon.name === name);
2998
+ if (myIcon) {
2999
+ const MyIcon = import_ui52.LocationIcon;
3000
+ return (0, import_server2.renderToString)(/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(MyIcon, { Icon: myIcon.icon, color }));
3001
+ } else {
3002
+ const MyIcon = import_MapPinIcon2.default;
3003
+ return (0, import_server2.renderToString)(/* @__PURE__ */ (0, import_jsx_runtime58.jsx)(MyIcon, { height: 40, width: 40, color }));
3004
+ }
3005
+ }
3006
+ var import_leaflet4, import_leaflet5, import_leaflet6, import_react10, import_ui51, import_ui52, import_server2, import_MapPinIcon2, import_leaflet7, import_jsx_runtime58, centerLocation, QuestMapClient;
3007
+ var init_QuestMapClient = __esm({
3008
+ "src/components/Section/GeoQuest/QuestMapClient.tsx"() {
3009
+ "use strict";
3010
+ "use client";
3011
+ import_leaflet4 = require("leaflet/dist/leaflet.css");
3012
+ import_leaflet5 = require("leaflet");
3013
+ import_leaflet6 = __toESM(require("leaflet"));
3014
+ import_react10 = require("react");
3015
+ import_ui51 = require("@geowiki/ui");
3016
+ import_ui52 = require("@geowiki/ui");
3017
+ import_server2 = require("react-dom/server");
3018
+ import_MapPinIcon2 = __toESM(require("@heroicons/react/24/solid/MapPinIcon"));
3019
+ import_leaflet7 = require("leaflet.markercluster");
3020
+ import_jsx_runtime58 = require("react/jsx-runtime");
3021
+ centerLocation = new import_leaflet5.LatLng(48.2081, 16.3713);
3022
+ QuestMapClient = () => {
3023
+ const markerCluster = import_leaflet6.default.markerClusterGroup({
3024
+ iconCreateFunction: function(cluster) {
3025
+ var count = cluster.getChildCount();
3026
+ return import_leaflet6.default.divIcon({
3027
+ html: `<div style="
3028
+ position: relative;
3029
+ width: 44px;
3030
+ height: 44px;
3031
+ display: flex;
3032
+ justify-content: center;
3033
+ align-items: center;
3034
+ "><div style="
3035
+ position: absolute;
3036
+ width: 44px;
3037
+ height: 44px;
3038
+ border-radius: 50%;
3039
+ background-color: rgba(0, 167, 206, 0.3);
3040
+ "></div><div style="
3041
+ position: relative;
3042
+ width: 36px;
3043
+ height: 36px;
3044
+ border-radius: 50%;
3045
+ background-color: #00A7CE;
3046
+ color: white;
3047
+ font-size: 14px;
3048
+ font-weight: 600;
3049
+ display: flex;
3050
+ justify-content: center;
3051
+ align-items: center;
3052
+ text-align: center;
3053
+ "><span>${count}</span></div></div>`,
3054
+ className: "custom-cluster-icon",
3055
+ iconSize: import_leaflet6.default.point(40, 40)
3056
+ });
3057
+ }
3058
+ });
3059
+ const mapRef = (0, import_react10.useRef)(null);
3060
+ const leafletmap = (0, import_react10.useRef)(null);
3061
+ const [data, setdata] = (0, import_react10.useState)();
3062
+ const [isLoading, setIsLoading] = (0, import_react10.useState)(true);
3063
+ (0, import_react10.useEffect)(() => {
3064
+ if (isLoading)
3065
+ fetch("/api/minio/fetchResource?filename=public/cropCapture.json").then((res) => res.json()).then((json) => {
3066
+ setdata(json), setIsLoading(false);
3067
+ });
3068
+ }, []);
3069
+ (0, import_react10.useEffect)(() => {
3070
+ if (mapRef.current && !leafletmap.current) {
3071
+ leafletmap.current = import_leaflet6.default.map(mapRef.current).setView(centerLocation, 3);
3072
+ import_leaflet6.default.tileLayer("https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png", {
3073
+ attribution: '&copy; <a href="http://osm.org/copyright">OpenStreetMap</a> contributors'
3074
+ }).addTo(leafletmap.current);
3075
+ if (!isLoading) {
3076
+ if (data) {
3077
+ data?.forEach((element) => {
3078
+ const icon = import_leaflet6.default.divIcon({
3079
+ iconSize: [40, 40],
3080
+ iconAnchor: [28, 15],
3081
+ html: `<i>${getIcon2("#00A7CE")}</i>`,
3082
+ className: ""
3083
+ });
3084
+ const marker = import_leaflet6.default.marker(
3085
+ [
3086
+ element.coordinates.split(",")[1],
3087
+ element.coordinates.split(",")[0]
3088
+ ],
3089
+ { icon }
3090
+ );
3091
+ markerCluster.addLayer(marker);
3092
+ });
3093
+ markerCluster.addTo(leafletmap.current);
3094
+ }
3095
+ }
3096
+ }
3097
+ return () => {
3098
+ if (leafletmap.current) {
3099
+ leafletmap.current.remove();
3100
+ leafletmap.current = null;
3101
+ }
3102
+ };
3103
+ }, [isLoading]);
3104
+ if (isLoading)
3105
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(import_ui51.LoaderFull, {});
3106
+ return /* @__PURE__ */ (0, import_jsx_runtime58.jsx)("div", { className: "w-full rounded-2xl overflow-hidden shadow bg-white", children: /* @__PURE__ */ (0, import_jsx_runtime58.jsx)(
3107
+ "div",
3108
+ {
3109
+ ref: mapRef,
3110
+ className: "w-full min-h-[500px]",
3111
+ style: { height: 500 }
3112
+ }
3113
+ ) });
3114
+ };
3115
+ }
3116
+ });
3117
+
3118
+ // src/components/Section/GeoQuest/QuestMapWidget.tsx
3119
+ var QuestMapWidget_exports = {};
3120
+ __export(QuestMapWidget_exports, {
3121
+ QuestMapWidget: () => QuestMapWidget
3122
+ });
3123
+ var import_dynamic4, import_jsx_runtime59, QuestMapClient2, QuestMapWidget;
3124
+ var init_QuestMapWidget = __esm({
3125
+ "src/components/Section/GeoQuest/QuestMapWidget.tsx"() {
3126
+ "use strict";
3127
+ import_dynamic4 = __toESM(require("next/dynamic"));
3128
+ import_jsx_runtime59 = require("react/jsx-runtime");
3129
+ QuestMapClient2 = (0, import_dynamic4.default)(
3130
+ () => Promise.resolve().then(() => (init_QuestMapClient(), QuestMapClient_exports)).then((mod) => mod.QuestMapClient),
3131
+ {
3132
+ ssr: false
3133
+ }
3134
+ );
3135
+ QuestMapWidget = () => {
3136
+ return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
3137
+ "div",
3138
+ {
3139
+ className: "w-full mt-4 lg:mt-20 rounded-2xl overflow-hidden shadow bg-white",
3140
+ id: "QuestMap",
3141
+ children: /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(QuestMapClient2, {})
3142
+ }
3143
+ );
3144
+ };
3145
+ }
3146
+ });
3147
+
3148
+ // src/components/Section/GeoQuest/SelectQuestWidget.tsx
3149
+ var SelectQuestWidget_exports = {};
3150
+ __export(SelectQuestWidget_exports, {
3151
+ SelectQuestWidget: () => SelectQuestWidget
3152
+ });
3153
+ var import_jsx_runtime60, CornIcon, TreeIcon, UrbanIcon, BiodiversityIcon, ArrowRight2, quests2, SelectQuestWidget;
3154
+ var init_SelectQuestWidget = __esm({
3155
+ "src/components/Section/GeoQuest/SelectQuestWidget.tsx"() {
3156
+ "use strict";
3157
+ import_jsx_runtime60 = require("react/jsx-runtime");
3158
+ CornIcon = () => /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(
3159
+ "svg",
3160
+ {
3161
+ xmlns: "http://www.w3.org/2000/svg",
3162
+ width: "24",
3163
+ height: "24",
3164
+ viewBox: "0 0 512 512",
3165
+ fill: "none",
3166
+ stroke: "currentColor",
3167
+ strokeWidth: "2",
3168
+ strokeLinecap: "round",
3169
+ strokeLinejoin: "round",
3170
+ children: [
3171
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("path", { d: "", stroke: "none", fill: "#080404", fillRule: "evenodd" }),
3172
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
3173
+ "path",
3174
+ {
3175
+ d: "M 436 1.941 C 383.771 13.005, 314.364 51.830, 244.752 108.923 L 231.005 120.198 233.552 124.349 C 245.054 143.095, 254.626 169.071, 259.219 194 C 260.950 203.395, 261.352 209.619, 261.419 228 L 261.500 250.500 284 250.581 C 302.394 250.648, 308.599 251.050, 318 252.784 C 340.099 256.860, 360.594 263.919, 379.743 274.051 C 385.927 277.323, 391.353 280, 391.801 280 C 392.981 280, 411.493 257.240, 425.934 238.036 C 466.610 183.941, 496.829 127.792, 507.644 86.211 C 512.102 69.071, 513.307 49.155, 510.586 37.603 C 506.182 18.912, 493.229 5.860, 474.760 1.506 C 466.042 -0.550, 446.736 -0.333, 436 1.941 M 438.500 40.167 C 432.329 43.580, 429.305 49.482, 430.491 55.801 C 431.030 58.679, 433.358 61.686, 441.258 69.714 C 451.893 80.522, 455.568 82.679, 461.464 81.573 C 471.821 79.630, 476.516 67.049, 470.112 58.400 C 466.867 54.018, 455.801 43.152, 452.027 40.644 C 449.208 38.769, 441.517 38.498, 438.500 40.167 M 396.020 82.752 C 389.050 86.253, 385.947 95.224, 389.431 101.800 C 391.137 105.019, 414.555 128.304, 417.684 129.892 C 425.942 134.082, 437.985 126.625, 437.996 117.315 C 438.003 111.610, 436.057 108.736, 423.779 96.316 C 408.310 80.670, 404.180 78.652, 396.020 82.752 M 162.984 101.863 C 157.968 104.545, 156.278 108.185, 154.064 121.068 C 149.124 149.822, 137.569 176.500, 120.834 197.789 C 117.933 201.480, 104.052 216.200, 89.988 230.500 C 71.495 249.303, 62.867 258.853, 58.817 265 C 43.163 288.761, 35.803 312.607, 35.670 340 C 35.566 361.148, 38.831 377.287, 47.040 396.215 C 50.827 404.946, 50.957 405.561, 49.280 406.827 C 48.301 407.566, 38.050 415.068, 26.500 423.498 C 14.950 431.928, 4.375 440.025, 3 441.493 C 0.831 443.807, 0.500 445.078, 0.500 451.078 L 0.500 457.995 27.184 484.679 L 53.867 511.363 59.684 511.770 C 64.560 512.111, 66.061 511.795, 68.974 509.816 C 70.971 508.459, 79.531 497.772, 89.110 484.674 C 98.275 472.145, 105.974 461.693, 106.218 461.448 C 106.463 461.204, 110.901 462.852, 116.082 465.112 C 158.939 483.809, 207.474 479.371, 247 453.141 C 253.071 449.112, 263.219 439.929, 282.516 421 C 297.374 406.425, 313.126 391.874, 317.519 388.665 C 339.739 372.433, 364.924 362.035, 392.853 357.562 C 397.997 356.738, 403.571 355.262, 405.240 354.282 C 411.417 350.654, 413.752 341.494, 410.335 334.293 C 408.128 329.642, 394.149 317.532, 380.465 308.415 C 336.324 279.008, 278.521 271.017, 229.620 287.562 C 225.760 288.867, 222.481 289.815, 222.333 289.667 C 222.185 289.519, 223.133 286.240, 224.438 282.380 C 240.980 233.487, 232.919 175.357, 203.515 131.501 C 194.265 117.705, 182.249 103.821, 177.684 101.655 C 173.092 99.476, 167.296 99.558, 162.984 101.863 M 331.970 104.250 C 328.432 106.037, 327.127 107.452, 325.624 111.127 C 322.448 118.893, 323.654 121.893, 334.337 132.813 C 344.661 143.365, 347.164 145, 353 145 C 361.119 145, 367 139.154, 367 131.082 C 367 125.115, 365.374 122.623, 354.820 112.413 C 348.148 105.959, 344.473 103.145, 342.094 102.669 C 337.279 101.706, 336.884 101.767, 331.970 104.250 M 282.256 153.645 C 275.860 156.798, 272.980 166.232, 276.410 172.800 C 277.186 174.285, 282.035 179.623, 287.187 184.663 C 294.471 191.789, 297.379 193.980, 300.270 194.523 C 307.680 195.913, 313.886 192.483, 316.542 185.530 C 319.402 178.041, 318.196 175.146, 307.689 164.286 C 302.641 159.068, 297.294 154.169, 295.805 153.399 C 292.233 151.552, 286.282 151.660, 282.256 153.645 M 355 166.722 C 351.203 168.148, 348.018 171.386, 346.499 175.363 C 343.908 182.148, 345.570 186.482, 354.303 195.713 C 362.832 204.728, 369.080 209, 373.736 209 C 378.353 209, 384.140 205.807, 386.333 202.050 C 388.620 198.133, 388.718 190.745, 386.528 187.403 C 383.968 183.495, 371.918 171.536, 367.610 168.627 C 363.864 166.096, 358.728 165.321, 355 166.722",
3176
+ stroke: "none",
3177
+ fill: "#040404",
3178
+ fillRule: "evenodd"
3179
+ }
3180
+ )
3181
+ ]
3182
+ }
3183
+ );
3184
+ TreeIcon = () => /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(
3185
+ "svg",
3186
+ {
3187
+ xmlns: "http://www.w3.org/2000/svg",
3188
+ width: "24",
3189
+ height: "24",
3190
+ viewBox: "0 0 512 512",
3191
+ version: "1.1",
3192
+ children: [
3193
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("path", { d: "", stroke: "none", fill: "#080404", fillRule: "evenodd" }),
3194
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
3195
+ "path",
3196
+ {
3197
+ d: "M 249.500 0.909 C 248.400 1.399, 246.078 3.307, 244.340 5.150 C 239.059 10.750, 157.750 119.178, 155.216 124 C 152.184 129.769, 152.632 135.517, 156.508 140.600 C 160.563 145.916, 164.119 147, 177.499 147 L 189.063 147 152.781 195.176 C 132.827 221.672, 115.731 244.735, 114.792 246.426 C 110.982 253.283, 113.401 263.220, 119.856 267.234 C 123.272 269.358, 124.856 269.531, 145.197 270 L 166.895 270.500 128.814 321 C 107.870 348.775, 90.119 372.948, 89.367 374.718 C 86.439 381.610, 89.179 390.084, 95.632 394.095 L 99.500 396.500 256 396.500 L 412.500 396.500 416.368 394.095 C 422.821 390.084, 425.561 381.609, 422.632 374.718 C 421.880 372.948, 404.125 348.775, 383.177 321 L 345.089 270.500 366.794 270 C 387.145 269.531, 388.728 269.359, 392.144 267.234 C 398.598 263.221, 401.021 253.271, 397.208 246.440 C 396.269 244.757, 379.176 221.694, 359.225 195.190 L 322.950 147 334.507 147 C 347.881 147, 351.437 145.915, 355.492 140.600 C 359.370 135.515, 359.816 129.768, 356.781 124 C 353.857 118.444, 272.312 10.003, 266.970 4.568 C 263.474 1.010, 262.552 0.606, 257.303 0.327 C 254.111 0.157, 250.600 0.419, 249.500 0.909 M 208.194 463.750 C 208.485 498.722, 208.599 500.669, 210.554 503.997 C 211.684 505.920, 214.113 508.507, 215.952 509.747 C 219.270 511.983, 219.576 512, 256 512 C 292.424 512, 292.730 511.983, 296.048 509.747 C 297.887 508.507, 300.316 505.920, 301.446 503.997 C 303.401 500.669, 303.515 498.722, 303.806 463.750 L 304.113 427 256 427 L 207.887 427 208.194 463.750",
3198
+ stroke: "none",
3199
+ fill: "#080404",
3200
+ fillRule: "evenodd"
3201
+ }
3202
+ )
3203
+ ]
3204
+ }
3205
+ );
3206
+ UrbanIcon = () => /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
3207
+ "img",
3208
+ {
3209
+ width: 24,
3210
+ height: 24,
3211
+ src: "data:image/png;base64,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"
3212
+ }
3213
+ ) });
3214
+ BiodiversityIcon = () => /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
3215
+ "svg",
3216
+ {
3217
+ xmlns: "http://www.w3.org/2000/svg",
3218
+ width: "24",
3219
+ height: "24",
3220
+ viewBox: "0 0 16 16",
3221
+ children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
3222
+ "path",
3223
+ {
3224
+ fill: "#000",
3225
+ "fill-rule": "evenodd",
3226
+ d: "M13.33 7.33C12.05 8.6 10.31 8.94 9 8.99V14a1 1 0 1 1-2 0v-3.01c-1.31-.05-3.05-.39-4.33-1.67C.35 7 1.12 3.12 1.12 3.12S5 2.35 7.33 4.67l.07.08c.25-.73.65-1.46 1.27-2.08C11 .35 14.88 1.12 14.88 1.12S15.65 5 13.33 7.33zM9.01 6.99c.06 0 .13 0 .19-.01 1.03-.08 2.03-.38 2.71-1.06.67-.67.97-1.67 1.06-2.7 0-.06.01-.13.02-.19a10.68 10.68 0 0 0-.19 0c-1.03.08-2.03.38-2.71 1.06-.67.67-.97 1.67-1.06 2.7 0 .06 0 .13-.02.19zM6.8 8.98c.07.01.13.01.19.01 0-.07 0-.13-.01-.19-.08-1.03-.38-2.03-1.06-2.7-.67-.67-1.67-.97-2.7-1.06a10.68 10.68 0 0 0-.19-.01c.01.07.01.13.02.19.08 1.03.38 2.03 1.06 2.7.67.68 1.67.97 2.7 1.06z"
3227
+ }
3228
+ )
3229
+ }
3230
+ );
3231
+ ArrowRight2 = (props) => /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("a", { href: props.url, target: "_blank", className: "bg-primary", children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
3232
+ "svg",
3233
+ {
3234
+ width: "24",
3235
+ height: "25",
3236
+ viewBox: "0 0 24 25",
3237
+ fill: "none",
3238
+ xmlns: "http://www.w3.org/2000/svg",
3239
+ children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
3240
+ "path",
3241
+ {
3242
+ d: "M5.22848 18.0472L15.1732 8.10249L7.97771 8.10248L7.99468 6.21875H18.5504L18.5504 16.7744L16.6497 16.7744L16.6666 9.59589L6.72189 19.5406L5.22848 18.0472Z",
3243
+ fill: "#F3F3F4"
3244
+ }
3245
+ )
3246
+ }
3247
+ ) });
3248
+ quests2 = [
3249
+ {
3250
+ icon: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(CornIcon, {}),
3251
+ category: "Crops",
3252
+ title: "Crop Capture",
3253
+ tags: "public",
3254
+ url: "https://crop-capture.main.geo-wiki.org/",
3255
+ description: "Crop Capture is designed to capture spatial and temporal crop information on the field."
3256
+ },
3257
+ {
3258
+ icon: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(TreeIcon, {}),
3259
+ category: "Forestry",
3260
+ title: "Tree Quest",
3261
+ tags: "pending verification",
3262
+ url: "https://c4cweb.main.geo-wiki.org/",
3263
+ description: "Join the Tree-Quest citizen science campaign! Help measure individual trees, learn how much carbon they store, and support climate science."
3264
+ },
3265
+ {
3266
+ icon: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(BiodiversityIcon, {}),
3267
+ category: "Biodiversity",
3268
+ title: "Species presence/absence",
3269
+ tags: "upcoming",
3270
+ description: "Designed to document the existence or absence of certain species at specific locations."
3271
+ },
3272
+ {
3273
+ icon: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(UrbanIcon, {}),
3274
+ category: "Urban",
3275
+ title: "Soil Sealing",
3276
+ tags: "upcoming",
3277
+ description: "Monitoring the expanding area of soil sealing in urban and peri-urban locations."
3278
+ }
3279
+ ];
3280
+ SelectQuestWidget = () => {
3281
+ return /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("div", { className: "px-1 py-6", children: [
3282
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("div", { className: "mb-8", children: [
3283
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("span", { className: "text-base text-gray-600", children: "View data" }),
3284
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("h2", { className: "text-4xl font-light mt-4 mb-8", children: "Select a Quest:" })
3285
+ ] }),
3286
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-8", children: quests2.map((quest, idx) => /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)(
3287
+ "div",
3288
+ {
3289
+ className: "bg-gray-100 rounded-xl shadow-sm lg:p-8 p-4 flex flex-col justify-between lg:min-h-[260px] hover:shadow-md transition-shadow",
3290
+ children: [
3291
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("div", { children: [
3292
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "mb-4", children: quest.icon }),
3293
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsxs)("div", { className: "font-semibold text-sm mb-1 flex justify-between items-center w-full text-primary", children: [
3294
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { children: quest.category }),
3295
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "bg-primary text-white rounded-md p-1 text-xs", children: quest.tags })
3296
+ ] }),
3297
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "text-2xl font-medium mb-2", children: quest.title }),
3298
+ /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { className: "text-gray-600 text-sm lg:mb-4 mb-8", children: quest.description })
3299
+ ] }),
3300
+ quest.url && /* @__PURE__ */ (0, import_jsx_runtime60.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(
3301
+ "button",
3302
+ {
3303
+ className: "bg-primary text-white rounded-full w-10 h-10 flex items-center justify-center transition-colors",
3304
+ "aria-label": `Go to ${quest.title}`,
3305
+ children: /* @__PURE__ */ (0, import_jsx_runtime60.jsx)(ArrowRight2, { url: quest.url })
3306
+ }
3307
+ ) })
3308
+ ]
3309
+ },
3310
+ idx
3311
+ )) })
3312
+ ] });
3313
+ };
3314
+ }
3315
+ });
3316
+
3317
+ // src/components/SectionComponents.ts
3318
+ var import_dynamic5, NewsFeedWidget2, UpdateUserInfoWidget2, UserInfoWidget2, ContactWidget2, CardGridWidget2, ResourceCollectionItemWidget2, ResourceCollectionsWidget2, FarmerClusterFinderWidget2, EntityListWidget2, SpecialFeaturesWidget2, SimpleActionListWidget2, FeatureRowWithMultipleImagesWidget2, TestimonialListWidget2, FeatureRowWithImageWidget2, FeatureRowWidget2, SimpleCallToActionWidget2, ImageWidget2, GalleryWidget2, HeaderWidget2, CardWidget2, ColumnWidget2, RowWidget2, NewsLetterWidget2, StatsWidget2, MapHeroWidget2, HeroCenterTextWidget2, HtmlSection2, MarkdownWidget2, ContainerWidget2, HeroWidget2, HeadingTextWidget2, ResourceQuickFindWidget2, NewsfeedPreviewWidget2, SubtitleH3BodyWidget2, SubtitleH3BodyInternalLinkListWidget2, SubtitleH3FaqWidget2, NewTestimonialsWidget2, SubtitleH3ResourceCollectionsWidget2, BannerFollowLinksWidget2, NewContactUsWidget2, ContactCardsWidget2, SubtitleH3BodySpecialFeatureResourceCollectionsWidget2, H2BodyInternalLinkMapWidget2, SignUpBannerWidget2, SubtitleH3ChildrenWidget2, HeaderBodyWidget2, LanguageWidget2, SubtitleH3KeyResourcesWidget2, VideoWidget2, SubtitleH2BodyVideoWidget2, ImageLefttH3BodyWidget2, SixClusterNewsWidget2, ImageLeftH3BodyLinkWidget2, IframeWidget2, DownloadQuestWidget2, QuestMapWidget2, SelectQuestWidget2, SectionComponents;
3319
+ var init_SectionComponents = __esm({
3320
+ "src/components/SectionComponents.ts"() {
3321
+ "use strict";
3322
+ import_dynamic5 = __toESM(require("next/dynamic"));
3323
+ NewsFeedWidget2 = (0, import_dynamic5.default)(() => Promise.resolve().then(() => (init_NewsFeedWidget(), NewsFeedWidget_exports)));
3324
+ UpdateUserInfoWidget2 = (0, import_dynamic5.default)(
3325
+ () => Promise.resolve().then(() => (init_UpdateUserInfoWidget(), UpdateUserInfoWidget_exports)).then(
3326
+ (mod) => mod.UpdateUserInfoWidget
3327
+ )
3328
+ );
3329
+ UserInfoWidget2 = (0, import_dynamic5.default)(
3330
+ () => Promise.resolve().then(() => (init_UserInfoWidget(), UserInfoWidget_exports)).then((mod) => mod.UserInfoWidget)
3331
+ );
3332
+ ContactWidget2 = (0, import_dynamic5.default)(
3333
+ () => Promise.resolve().then(() => (init_ContactWidget(), ContactWidget_exports)).then((mod) => mod.ContactWidget)
3334
+ );
3335
+ CardGridWidget2 = (0, import_dynamic5.default)(
3336
+ () => Promise.resolve().then(() => (init_CardGridWidget(), CardGridWidget_exports)).then((mod) => mod.CardGridWidget)
3337
+ );
3338
+ ResourceCollectionItemWidget2 = (0, import_dynamic5.default)(
3339
+ () => Promise.resolve().then(() => (init_ResourceCollectionItemWidget(), ResourceCollectionItemWidget_exports)).then(
3340
+ (mod) => mod.ResourceCollectionItemWidget
3341
+ )
3342
+ );
3343
+ ResourceCollectionsWidget2 = (0, import_dynamic5.default)(
3344
+ () => Promise.resolve().then(() => (init_ResourceCollectionsWidget(), ResourceCollectionsWidget_exports)).then(
3345
+ (mod) => mod.ResourceCollectionsWidget
3346
+ )
3347
+ );
3348
+ FarmerClusterFinderWidget2 = (0, import_dynamic5.default)(
3349
+ () => Promise.resolve().then(() => (init_FarmerClusterFinderWidget(), FarmerClusterFinderWidget_exports)).then(
3350
+ (mod) => mod.FarmerClusterFinderWidget
3351
+ )
3352
+ );
3353
+ EntityListWidget2 = (0, import_dynamic5.default)(
3354
+ () => Promise.resolve().then(() => (init_EntityListWidget(), EntityListWidget_exports)).then((mod) => mod.EntityListWidget)
3355
+ );
3356
+ SpecialFeaturesWidget2 = (0, import_dynamic5.default)(
3357
+ () => Promise.resolve().then(() => (init_SpecialFeaturesWidget(), SpecialFeaturesWidget_exports)).then(
3358
+ (mod) => mod.SpecialFeaturesWidget
3359
+ )
3360
+ );
3361
+ SimpleActionListWidget2 = (0, import_dynamic5.default)(
3362
+ () => Promise.resolve().then(() => (init_SimpleActionListWidget(), SimpleActionListWidget_exports)).then(
3363
+ (mod) => mod.SimpleActionListWidget
3364
+ )
3365
+ );
3366
+ FeatureRowWithMultipleImagesWidget2 = (0, import_dynamic5.default)(
3367
+ () => Promise.resolve().then(() => (init_FeatureRowWithMultipleImagesWidget(), FeatureRowWithMultipleImagesWidget_exports)).then(
3368
+ (mod) => mod.FeatureRowWithMultipleImagesWidget
3369
+ )
3370
+ );
3371
+ TestimonialListWidget2 = (0, import_dynamic5.default)(
3372
+ () => Promise.resolve().then(() => (init_TestimonialListWidget(), TestimonialListWidget_exports)).then(
3373
+ (mod) => mod.TestimonialListWidget
3374
+ )
3375
+ );
3376
+ FeatureRowWithImageWidget2 = (0, import_dynamic5.default)(
3377
+ () => Promise.resolve().then(() => (init_FeatureRowWithImageWidget(), FeatureRowWithImageWidget_exports)).then(
3378
+ (mod) => mod.FeatureRowWithImageWidget
3379
+ )
3380
+ );
3381
+ FeatureRowWidget2 = (0, import_dynamic5.default)(
3382
+ () => Promise.resolve().then(() => (init_FeatureRowWidget(), FeatureRowWidget_exports)).then((mod) => mod.FeatureRowWidget)
3383
+ );
3384
+ SimpleCallToActionWidget2 = (0, import_dynamic5.default)(
3385
+ () => Promise.resolve().then(() => (init_SimpleCallToActionWidget(), SimpleCallToActionWidget_exports)).then(
3386
+ (mod) => mod.SimpleCallToActionWidget
3387
+ )
3388
+ );
3389
+ ImageWidget2 = (0, import_dynamic5.default)(
3390
+ () => Promise.resolve().then(() => (init_ImageWidget(), ImageWidget_exports)).then((mod) => mod.ImageWidget)
3391
+ );
3392
+ GalleryWidget2 = (0, import_dynamic5.default)(
3393
+ () => Promise.resolve().then(() => (init_GalleryWidget(), GalleryWidget_exports)).then((mod) => mod.GalleryWidget)
3394
+ );
3395
+ HeaderWidget2 = (0, import_dynamic5.default)(
3396
+ () => Promise.resolve().then(() => (init_HeaderWidget(), HeaderWidget_exports)).then((mod) => mod.HeaderWidget)
3397
+ );
3398
+ CardWidget2 = (0, import_dynamic5.default)(
3399
+ () => Promise.resolve().then(() => (init_CardWidget(), CardWidget_exports)).then((mod) => mod.CardWidget)
3400
+ );
3401
+ ColumnWidget2 = (0, import_dynamic5.default)(
3402
+ () => Promise.resolve().then(() => (init_ColumnWidget(), ColumnWidget_exports)).then((mod) => mod.ColumnWidget)
3403
+ );
3404
+ RowWidget2 = (0, import_dynamic5.default)(
3405
+ () => Promise.resolve().then(() => (init_RowWidget(), RowWidget_exports)).then((mod) => mod.RowWidget)
3406
+ );
3407
+ NewsLetterWidget2 = (0, import_dynamic5.default)(
3408
+ () => Promise.resolve().then(() => (init_NewsLetterWidget(), NewsLetterWidget_exports)).then((mod) => mod.NewsLetterWidget)
3409
+ );
3410
+ StatsWidget2 = (0, import_dynamic5.default)(
3411
+ () => Promise.resolve().then(() => (init_StatsWidget(), StatsWidget_exports)).then((mod) => mod.StatsWidget)
3412
+ );
3413
+ MapHeroWidget2 = (0, import_dynamic5.default)(
3414
+ () => Promise.resolve().then(() => (init_MapHeroWidget(), MapHeroWidget_exports)).then((mod) => mod.MapHeroWidget)
3415
+ );
3416
+ HeroCenterTextWidget2 = (0, import_dynamic5.default)(
3417
+ () => Promise.resolve().then(() => (init_HeroCenterTextWidget(), HeroCenterTextWidget_exports)).then(
3418
+ (mod) => mod.HeroCenterTextWidget
3419
+ )
3420
+ );
3421
+ HtmlSection2 = (0, import_dynamic5.default)(
3422
+ () => Promise.resolve().then(() => (init_html_section(), html_section_exports)).then((mod) => mod.HtmlSection)
3423
+ );
3424
+ MarkdownWidget2 = (0, import_dynamic5.default)(
3425
+ () => Promise.resolve().then(() => (init_MarkdownWidget(), MarkdownWidget_exports)).then((mod) => mod.MarkdownWidget)
3426
+ );
3427
+ ContainerWidget2 = (0, import_dynamic5.default)(
3428
+ () => Promise.resolve().then(() => (init_ContainerWidget(), ContainerWidget_exports)).then((mod) => mod.ContainerWidget)
3429
+ );
3430
+ HeroWidget2 = (0, import_dynamic5.default)(
3431
+ () => Promise.resolve().then(() => (init_HeroWidget(), HeroWidget_exports)).then((mod) => mod.HeroWidget)
3432
+ );
3433
+ HeadingTextWidget2 = (0, import_dynamic5.default)(
3434
+ () => Promise.resolve().then(() => (init_HeadingTextWidget(), HeadingTextWidget_exports)).then((mod) => mod.HeadingTextWidget)
3435
+ );
3436
+ ResourceQuickFindWidget2 = (0, import_dynamic5.default)(
3437
+ () => Promise.resolve().then(() => (init_ResourceQuickFindWidget(), ResourceQuickFindWidget_exports)).then(
3438
+ (mod) => mod.ResourceQuickFindWidget
3439
+ )
3440
+ );
3441
+ NewsfeedPreviewWidget2 = (0, import_dynamic5.default)(
3442
+ () => Promise.resolve().then(() => (init_NewfeedPreviewWidget(), NewfeedPreviewWidget_exports)).then(
3443
+ (mod) => mod.NewsfeedPreviewWidget
3444
+ )
3445
+ );
3446
+ SubtitleH3BodyWidget2 = (0, import_dynamic5.default)(
3447
+ () => Promise.resolve().then(() => (init_SubtitleH3BodyWidget(), SubtitleH3BodyWidget_exports)).then(
3448
+ (mod) => mod.SubtitleH3BodyWidget
3449
+ )
3450
+ );
3451
+ SubtitleH3BodyInternalLinkListWidget2 = (0, import_dynamic5.default)(
3452
+ () => Promise.resolve().then(() => (init_SubtitleH3BodyInternalLinkListWidget(), SubtitleH3BodyInternalLinkListWidget_exports)).then(
3453
+ (mod) => mod.SubtitleH3BodyInternalLinkListWidget
3454
+ )
3455
+ );
3456
+ SubtitleH3FaqWidget2 = (0, import_dynamic5.default)(
3457
+ () => Promise.resolve().then(() => (init_SubtitleH3FaqWidget(), SubtitleH3FaqWidget_exports)).then(
3458
+ (mod) => mod.SubtitleH3FaqWidget
3459
+ )
3460
+ );
3461
+ NewTestimonialsWidget2 = (0, import_dynamic5.default)(
3462
+ () => Promise.resolve().then(() => (init_NewTestimonialsWidget(), NewTestimonialsWidget_exports)).then(
3463
+ (mod) => mod.NewTestimonialsWidget
3464
+ )
3465
+ );
3466
+ SubtitleH3ResourceCollectionsWidget2 = (0, import_dynamic5.default)(
3467
+ () => Promise.resolve().then(() => (init_SubtitleH3ResourceCollectionsWidget(), SubtitleH3ResourceCollectionsWidget_exports)).then(
3468
+ (mod) => mod.SubtitleH3ResourceCollectionsWidget
3469
+ )
3470
+ );
3471
+ BannerFollowLinksWidget2 = (0, import_dynamic5.default)(
3472
+ () => Promise.resolve().then(() => (init_BannerFollowLinksWidget(), BannerFollowLinksWidget_exports)).then(
3473
+ (mod) => mod.BannerFollowLinksWidget
3474
+ )
3475
+ );
3476
+ NewContactUsWidget2 = (0, import_dynamic5.default)(
3477
+ () => Promise.resolve().then(() => (init_NewContactUsWidget(), NewContactUsWidget_exports)).then((mod) => mod.NewContactUsWidget)
3478
+ );
3479
+ ContactCardsWidget2 = (0, import_dynamic5.default)(
3480
+ () => Promise.resolve().then(() => (init_ContactCardsWidget(), ContactCardsWidget_exports)).then((mod) => mod.ContactCardsWidget)
3481
+ );
3482
+ SubtitleH3BodySpecialFeatureResourceCollectionsWidget2 = (0, import_dynamic5.default)(
3483
+ () => Promise.resolve().then(() => (init_SubtitleH3BodySpecialFeatureResourceCollectionsWidget(), SubtitleH3BodySpecialFeatureResourceCollectionsWidget_exports)).then((mod) => mod.SubtitleH3BodySpecialFeatureResourceCollectionsWidget)
3484
+ );
3485
+ H2BodyInternalLinkMapWidget2 = (0, import_dynamic5.default)(
3486
+ () => Promise.resolve().then(() => (init_H2BodyInternalLinkMapWidget(), H2BodyInternalLinkMapWidget_exports)).then(
3487
+ (mod) => mod.H2BodyInternalLinkMapWidget
3488
+ )
3489
+ );
3490
+ SignUpBannerWidget2 = (0, import_dynamic5.default)(
3491
+ () => Promise.resolve().then(() => (init_SignUpBannerWidget(), SignUpBannerWidget_exports)).then((mod) => mod.SignUpBannerWidget)
3492
+ );
3493
+ SubtitleH3ChildrenWidget2 = (0, import_dynamic5.default)(
3494
+ () => Promise.resolve().then(() => (init_SubtitleH3ChildrenWidget(), SubtitleH3ChildrenWidget_exports)).then(
3495
+ (mod) => mod.SubtitleH3ChildrenWidget
3496
+ )
3497
+ );
3498
+ HeaderBodyWidget2 = (0, import_dynamic5.default)(
3499
+ () => Promise.resolve().then(() => (init_HeaderBodyWidget(), HeaderBodyWidget_exports)).then((mod) => mod.HeaderBodyWidget)
3500
+ );
3501
+ LanguageWidget2 = (0, import_dynamic5.default)(
3502
+ () => Promise.resolve().then(() => (init_LanguagesWidget(), LanguagesWidget_exports)).then((mod) => mod.LanguageWidget)
3503
+ );
3504
+ SubtitleH3KeyResourcesWidget2 = (0, import_dynamic5.default)(
3505
+ () => Promise.resolve().then(() => (init_SubtitleH3KeyResourcesWidget(), SubtitleH3KeyResourcesWidget_exports)).then(
3506
+ (mod) => mod.SubtitleH3KeyResourcesWidget
3507
+ )
3508
+ );
3509
+ VideoWidget2 = (0, import_dynamic5.default)(
3510
+ () => Promise.resolve().then(() => (init_VideoWidget(), VideoWidget_exports)).then((mod) => mod.VideoWidget)
3511
+ );
3512
+ SubtitleH2BodyVideoWidget2 = (0, import_dynamic5.default)(
3513
+ () => Promise.resolve().then(() => (init_SubtitleH2BodyVideoWidget(), SubtitleH2BodyVideoWidget_exports)).then(
3514
+ (mod) => mod.SubtitleH2BodyVideoWidget
3515
+ )
3516
+ );
3517
+ ImageLefttH3BodyWidget2 = (0, import_dynamic5.default)(
3518
+ () => Promise.resolve().then(() => (init_ImageLefttH3BodyWidget(), ImageLefttH3BodyWidget_exports)).then(
3519
+ (mod) => mod.ImageLefttH3BodyWidget
3520
+ )
3521
+ );
3522
+ SixClusterNewsWidget2 = (0, import_dynamic5.default)(
3523
+ () => Promise.resolve().then(() => (init_SixClusterNewsWidget(), SixClusterNewsWidget_exports)).then(
3524
+ (mod) => mod.SixClusterNewsWidget
3525
+ )
3526
+ );
3527
+ ImageLeftH3BodyLinkWidget2 = (0, import_dynamic5.default)(
3528
+ () => Promise.resolve().then(() => (init_ImageLeftH3BodyLinkWidget(), ImageLeftH3BodyLinkWidget_exports)).then(
3529
+ (mod) => mod.ImageLeftH3BodyLinkWidget
3530
+ )
3531
+ );
3532
+ IframeWidget2 = (0, import_dynamic5.default)(
3533
+ () => Promise.resolve().then(() => (init_IframeWidget(), IframeWidget_exports)).then((mod) => mod.IframeWidget)
3534
+ );
3535
+ DownloadQuestWidget2 = (0, import_dynamic5.default)(
3536
+ () => Promise.resolve().then(() => (init_DownloadQuestWidget(), DownloadQuestWidget_exports)).then(
3537
+ (mod) => mod.DownloadQuestWidget
3538
+ )
3539
+ );
3540
+ QuestMapWidget2 = (0, import_dynamic5.default)(
3541
+ () => Promise.resolve().then(() => (init_QuestMapWidget(), QuestMapWidget_exports)).then((mod) => mod.QuestMapWidget)
3542
+ );
3543
+ SelectQuestWidget2 = (0, import_dynamic5.default)(
3544
+ () => Promise.resolve().then(() => (init_SelectQuestWidget(), SelectQuestWidget_exports)).then(
3545
+ (mod) => mod.SelectQuestWidget
3546
+ )
3547
+ );
3548
+ SectionComponents = {
3549
+ // PLOP_WIDGET_COMPONENTS
3550
+ NewsFeed: NewsFeedWidget2,
3551
+ UpdateUserInfo: UpdateUserInfoWidget2,
3552
+ UserInfo: UserInfoWidget2,
3553
+ Contact: ContactWidget2,
3554
+ CardGrid: CardGridWidget2,
3555
+ ResourceCollectionItem: ResourceCollectionItemWidget2,
3556
+ ResourceCollections: ResourceCollectionsWidget2,
3557
+ FarmerClusterFinder: FarmerClusterFinderWidget2,
3558
+ EntityList: EntityListWidget2,
3559
+ SpecialFeatures: SpecialFeaturesWidget2,
3560
+ SimpleActionList: SimpleActionListWidget2,
3561
+ FeatureRowWithMultipleImages: FeatureRowWithMultipleImagesWidget2,
3562
+ TestimonialList: TestimonialListWidget2,
3563
+ FeatureRowWithImage: FeatureRowWithImageWidget2,
3564
+ FeatureRow: FeatureRowWidget2,
3565
+ SimpleCenteredCallToAction: SimpleCallToActionWidget2,
3566
+ Image: ImageWidget2,
3567
+ Gallery: GalleryWidget2,
3568
+ Header: HeaderWidget2,
3569
+ Card: CardWidget2,
3570
+ Column: ColumnWidget2,
3571
+ Row: RowWidget2,
3572
+ NewsLetter: NewsLetterWidget2,
3573
+ Stats: StatsWidget2,
3574
+ MapHeroWidget: MapHeroWidget2,
3575
+ HeroCenterText: HeroCenterTextWidget2,
3576
+ HtmlWidget: HtmlSection2,
3577
+ MarkdownWidget: MarkdownWidget2,
3578
+ ContainerWidget: ContainerWidget2,
3579
+ Hero: HeroWidget2,
3580
+ HeroWidget: HeroWidget2,
3581
+ HeadingText: HeadingTextWidget2,
3582
+ ResourceQuickFind: ResourceQuickFindWidget2,
3583
+ NewsFeedPreview: NewsfeedPreviewWidget2,
3584
+ SubtitleH3Body: SubtitleH3BodyWidget2,
3585
+ SubtitleH3BodyInternalLinkList: SubtitleH3BodyInternalLinkListWidget2,
3586
+ SubtitleH3Faq: SubtitleH3FaqWidget2,
3587
+ NewTestimonials: NewTestimonialsWidget2,
3588
+ SubtitleH3ResourceCollections: SubtitleH3ResourceCollectionsWidget2,
3589
+ BannerFollowLinks: BannerFollowLinksWidget2,
3590
+ NewContactUs: NewContactUsWidget2,
3591
+ ContactCards: ContactCardsWidget2,
3592
+ SubtitleH3BodySpecialFeatureResourceCollections: SubtitleH3BodySpecialFeatureResourceCollectionsWidget2,
3593
+ H2BodyInternalLinkMap: H2BodyInternalLinkMapWidget2,
3594
+ SignUpBanner: SignUpBannerWidget2,
3595
+ SubtitleH3Children: SubtitleH3ChildrenWidget2,
3596
+ HeaderBody: HeaderBodyWidget2,
3597
+ Language: LanguageWidget2,
3598
+ SubtitleH3KeyResources: SubtitleH3KeyResourcesWidget2,
3599
+ Video: VideoWidget2,
3600
+ SubtitleH2BodyVideo: SubtitleH2BodyVideoWidget2,
3601
+ ImageLefttH3Body: ImageLefttH3BodyWidget2,
3602
+ SixClusterNews: SixClusterNewsWidget2,
3603
+ ImageLeftH3BodyLink: ImageLeftH3BodyLinkWidget2,
3604
+ IframeViewer: IframeWidget2,
3605
+ DownloadQuest: DownloadQuestWidget2,
3606
+ QuestMap: QuestMapWidget2,
3607
+ SelectQuest: SelectQuestWidget2
3608
+ };
3609
+ }
3610
+ });
3611
+
3612
+ // src/components/Sections.tsx
3613
+ var import_core18, import_framer_motion, import_jsx_runtime61, Section, Sections;
3614
+ var init_Sections = __esm({
3615
+ "src/components/Sections.tsx"() {
3616
+ "use strict";
3617
+ "use client";
3618
+ import_core18 = require("@geowiki/core");
3619
+ import_framer_motion = require("framer-motion");
3620
+ init_SectionComponents();
3621
+ import_jsx_runtime61 = require("react/jsx-runtime");
3622
+ Section = ({ sectionData, settings, cmsUrl, newsItems }) => {
3623
+ const SectionComponent = SectionComponents[sectionData.ContentType];
3624
+ if (!SectionComponent) {
3625
+ return null;
3626
+ }
3627
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_framer_motion.motion.div, { variants: import_core18.itemVariants, children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
3628
+ SectionComponent,
3629
+ {
3630
+ data: sectionData,
3631
+ settings,
3632
+ cmsUrl,
3633
+ newsItems
3634
+ }
3635
+ ) }, sectionData.ContentItemId);
3636
+ };
3637
+ Sections = ({ sections, settings, cmsUrl }) => {
3638
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
3639
+ import_framer_motion.motion.div,
3640
+ {
3641
+ className: "flex flex-col",
3642
+ initial: "initial",
3643
+ animate: "enter",
3644
+ exit: "exit",
3645
+ variants: import_core18.listVariants,
3646
+ children: sections?.map((section) => /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
3647
+ Section,
3648
+ {
3649
+ sectionData: section,
3650
+ settings,
3651
+ cmsUrl
3652
+ },
3653
+ `${section?.ContentType}_${section?.ContentItemId}`
3654
+ ))
3655
+ }
3656
+ );
3657
+ };
3658
+ }
3659
+ });
3660
+
3661
+ // src/index.tsx
3662
+ var src_exports = {};
3663
+ __export(src_exports, {
3664
+ AppsList: () => AppsList,
3665
+ CardGridWidget: () => CardGridWidget,
3666
+ CardWidget: () => CardWidget,
3667
+ ClusterNewsStories: () => ClusterNewsStories,
3668
+ ColumnWidget: () => ColumnWidget,
3669
+ ContactWidget: () => ContactWidget,
3670
+ ContainerWidget: () => ContainerWidget,
3671
+ EntityListWidget: () => EntityListWidget,
3672
+ FarmerClusterFinderWidget: () => FarmerClusterFinderWidget,
3673
+ FeatureColumnsGroup: () => FeatureColumnsGroup,
3674
+ FeatureRowWidget: () => FeatureRowWidget,
3675
+ FeatureRowWithImageWidget: () => FeatureRowWithImageWidget,
3676
+ FeatureRowWithMultipleImagesWidget: () => FeatureRowWithMultipleImagesWidget,
3677
+ GalleryWidget: () => GalleryWidget,
3678
+ HeaderWidget: () => HeaderWidget,
3679
+ HeadingTextWidget: () => HeadingTextWidget,
3680
+ HeroCenterTextWidget: () => HeroCenterTextWidget,
3681
+ HeroGeoWiki: () => HeroGeoWiki,
3682
+ HeroWidget: () => HeroWidget,
3683
+ HtmlSection: () => HtmlSection,
3684
+ ImageWidget: () => ImageWidget,
3685
+ LargeVideo: () => LargeVideo,
3686
+ MapHeroWidget: () => MapHeroWidget,
3687
+ MarkdownWidget: () => MarkdownWidget,
3688
+ NewsLetterWidget: () => NewsLetterWidget,
3689
+ ResourceCollectionItemWidget: () => ResourceCollectionItemWidget,
3690
+ ResourceCollectionsWidget: () => ResourceCollectionsWidget,
3691
+ RichText: () => RichText,
3692
+ RowWidget: () => RowWidget,
3693
+ Sections: () => Sections,
3694
+ SimpleActionListWidget: () => SimpleActionListWidget,
3695
+ SimpleCallToActionWidget: () => SimpleCallToActionWidget,
3696
+ SpecialFeaturesWidget: () => SpecialFeaturesWidget,
3697
+ StatsWidget: () => StatsWidget,
3698
+ TestimonialListWidget: () => TestimonialListWidget,
3699
+ UnderConstruction: () => UnderConstruction,
3700
+ UpdateUserInfoWidget: () => UpdateUserInfoWidget,
3701
+ UserInfoWidget: () => UserInfoWidget
3702
+ });
3703
+ module.exports = __toCommonJS(src_exports);
3704
+ init_Sections();
3705
+
3706
+ // src/components/Section/apps-list.tsx
3707
+ var import_core19 = require("@geowiki/core");
3708
+ var import_framer_motion2 = require("framer-motion");
3709
+ var import_ui53 = require("@geowiki/ui");
3710
+ var import_jsx_runtime62 = require("react/jsx-runtime");
3711
+ var AppsList = ({ apps }) => {
3712
+ console.log("apps", apps);
3713
+ var cmsUrl = (0, import_core19.useCmsUrl)();
3714
+ var visibleApps = apps?.filter(
3715
+ (app) => app?.Application?.IsVisible?.Value === true
3716
+ );
3717
+ visibleApps?.sort((a, b) => {
3718
+ return a?.Application?.Order?.Value - b?.Application?.Order?.Value;
3719
+ });
3720
+ return /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: "px-4 py-16 mx-auto sm:max-w-xl md:max-w-full ", children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: "", children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: "mx-auto px-4 container sm:px-6", children: /* @__PURE__ */ (0, import_jsx_runtime62.jsxs)("div", { className: "space-y-12", children: [
3721
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: "space-y-5 sm:space-y-4", children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("h2", { className: "text-3xl font-extrabold tracking-tight sm:text-4xl text-center", children: "Our Apps" }) }),
3722
+ /* @__PURE__ */ (0, import_jsx_runtime62.jsx)("div", { className: "lg:col-span-2", children: /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
3723
+ import_framer_motion2.motion.ul,
3724
+ {
3725
+ className: "space-y-12 sm:grid sm:grid-cols-2 lg:grid-cols-3 sm:gap-x-6 sm:gap-y-12 sm:space-y-0 lg:gap-x-8",
3726
+ initial: "initial",
3727
+ animate: "enter",
3728
+ exit: "exit",
3729
+ variants: import_core19.listVariants,
3730
+ children: visibleApps && visibleApps.map((app) => /* @__PURE__ */ (0, import_jsx_runtime62.jsx)(
3731
+ import_ui53.ApplicationView,
3732
+ {
3733
+ app,
3734
+ cmsUrl
3735
+ },
3736
+ app.ContentItemId
3737
+ ))
3738
+ }
3739
+ ) })
3740
+ ] }) }) }) });
3741
+ };
3742
+
3743
+ // src/index.tsx
3744
+ init_HeaderWidget();
3745
+ init_MapHeroWidget();
3746
+ init_CardGridWidget();
3747
+ init_CardWidget();
3748
+ init_ColumnWidget();
3749
+ init_ContactWidget();
3750
+ init_ContainerWidget();
3751
+ init_EntityListWidget();
3752
+
3753
+ // src/components/Section/feature-columns-group.tsx
3754
+ var import_ui54 = require("@geowiki/ui");
3755
+ var import_jsx_runtime63 = require("react/jsx-runtime");
3756
+ var FeatureColumnsGroup = ({ data }) => {
3757
+ return /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: "", children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: "container mx-auto flex flex-col lg:flex-row lg:flex-wrap gap-12 align-top py-12 text-center", children: data.features.map((feature) => /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)("div", { className: "flex-1 text-lg", children: [
3758
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("div", { className: "flex content-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_ui54.CustomImage, { src: feature.icon, className: "w-10" }) }),
3759
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("h3", { className: "font-bold mt-4 mb-4", children: feature.title }),
3760
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("p", { children: feature.description }),
3761
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("a", {})
3762
+ ] }, feature.id)) }) });
3763
+ };
3764
+
3765
+ // src/components/Section/feature-rows-group.tsx
3766
+ var import_classnames2 = __toESM(require("classnames"));
3767
+ var import_ui55 = require("@geowiki/ui");
3768
+ var import_ui56 = require("@geowiki/ui");
3769
+ var import_jsx_runtime64 = require("react/jsx-runtime");
3770
+
3771
+ // src/index.tsx
3772
+ init_FeatureRowWidget();
3773
+ init_FeatureRowWithImageWidget();
3774
+ init_FeatureRowWithMultipleImagesWidget();
3775
+ init_GalleryWidget();
3776
+ init_HeroCenterTextWidget();
3777
+ init_HeroWidget();
3778
+ init_HeadingTextWidget();
3779
+
3780
+ // src/components/Section/hero-geowiki.tsx
3781
+ var import_core20 = require("@geowiki/core");
3782
+ var import_ui57 = require("@geowiki/ui");
3783
+ var import_jsx_runtime65 = require("react/jsx-runtime");
3784
+ var HeroGeoWiki = ({ data }) => {
3785
+ return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
3786
+ "div",
3787
+ {
3788
+ className: "w-full bg-center bg-cover hero-geo-wiki rounded-xl overflow-hidden",
3789
+ style: { backgroundImage: `url('${data.picture.url}')` },
3790
+ children: /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "flex items-center justify-center w-full h-full", children: /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "text-center bg-opacity-50 bg-gray-600 p-8", children: [
3791
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("p", { className: "uppercase tracking-wide font-semibold opacity-100 text-white", children: data.label }),
3792
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("h1", { className: "title text-white mt-2 sm:mt-0 mb-4 sm:mb-2", children: data.title }),
3793
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("p", { className: "text-xl text-white mb-6", children: data.description }),
3794
+ /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "flex flex-row flex-wrap gap-4 justify-center text-white", children: data.buttons.map((button) => /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(
3795
+ import_ui57.ButtonLink,
3796
+ {
3797
+ button,
3798
+ compact: false,
3799
+ appearance: (0, import_core20.getButtonAppearance)(button.type, "light")
3800
+ },
3801
+ button.id
3802
+ )) })
3803
+ ] }) })
3804
+ }
3805
+ ) });
3806
+ };
3807
+
3808
+ // src/index.tsx
3809
+ init_html_section();
3810
+ init_ImageWidget();
3811
+
3812
+ // src/components/Section/large-video.tsx
3813
+ var import_ui58 = require("@geowiki/ui");
3814
+ var import_jsx_runtime66 = require("react/jsx-runtime");
3815
+ var LargeVideo = ({ data }) => {
3816
+ return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("section", { className: "container flex flex-col align-middle text-center pt-12 pb-16", children: [
3817
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("h2", { className: "title mb-6", children: data.title }),
3818
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("p", { className: "text-lg mb-10", children: data.description }),
3819
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { className: "w-full lg:w-9/12 mx-auto overflow-hidden shadow-2xl", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(
3820
+ import_ui58.Video,
3821
+ {
3822
+ media: data.video,
3823
+ poster: data.poster,
3824
+ className: "w-full max-h-full"
3825
+ }
3826
+ ) })
3827
+ ] });
3828
+ };
3829
+
3830
+ // src/index.tsx
3831
+ init_MarkdownWidget();
3832
+ init_NewsLetterWidget();
3833
+ init_ResourceCollectionItemWidget();
3834
+ init_ResourceCollectionsWidget();
3835
+
3836
+ // src/components/Section/rich-text.tsx
3837
+ var import_react_markdown = __toESM(require("react-markdown"));
3838
+ var import_jsx_runtime67 = require("react/jsx-runtime");
3839
+ var RichText = ({ data }) => {
3840
+ return /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { className: "container mx-auto ", children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)("div", { className: "prose prose-lg container mx-auto py-12", children: /* @__PURE__ */ (0, import_jsx_runtime67.jsx)(import_react_markdown.default, { className: "", children: data.content }) }) });
3841
+ };
3842
+
3843
+ // src/index.tsx
3844
+ init_RowWidget();
3845
+ init_SimpleActionListWidget();
3846
+ init_SimpleCallToActionWidget();
3847
+ init_SpecialFeaturesWidget();
3848
+ init_StatsWidget();
3849
+ init_TestimonialListWidget();
3850
+
3851
+ // src/components/Section/under-construction.tsx
3852
+ var import_link2 = __toESM(require("next/link"));
3853
+ var import_jsx_runtime68 = require("react/jsx-runtime");
3854
+ var UnderConstruction = () => {
3855
+ return /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "container mx-auto min-h-screen px-4 py-16 sm:px-6 sm:py-24 md:grid md:place-items-center lg:px-8", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "max-w-max mx-auto", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("main", { className: "sm:flex", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsxs)("div", { className: "sm:ml-6", children: [
3856
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "sm:border-l sm:border-gray-200 sm:pl-6", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("h1", { className: "text-4xl font-extrabold tracking-tight sm:text-5xl", children: "Page under construction" }) }),
3857
+ /* @__PURE__ */ (0, import_jsx_runtime68.jsx)("div", { className: "mt-10 flex space-x-3 sm:border-l sm:border-transparent sm:pl-6", children: /* @__PURE__ */ (0, import_jsx_runtime68.jsx)(
3858
+ import_link2.default,
3859
+ {
3860
+ href: "/",
3861
+ className: "inline-flex items-center px-4 py-2 border border-transparent text-sm font-medium rounded-md shadow-sm text-white bg-primary-600 hover:bg-primary-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-primary-500",
3862
+ children: "Go back home"
3863
+ }
3864
+ ) })
3865
+ ] }) }) }) });
3866
+ };
3867
+
3868
+ // src/index.tsx
3869
+ init_FarmerClusterFinderWidget();
3870
+ init_UpdateUserInfoWidget();
3871
+ init_UserInfoWidget();
3872
+
3873
+ // src/components/Section/Recodo/ClusterNewsStories.tsx
3874
+ var import_core21 = require("@geowiki/core");
3875
+ var import_ui59 = require("@geowiki/ui");
3876
+ var import_link3 = __toESM(require("next/link"));
3877
+ var import_router2 = require("next/router");
3878
+ var import_jsx_runtime69 = require("react/jsx-runtime");
3879
+ var ArticleMeta = ({
3880
+ date,
3881
+ location,
3882
+ author
3883
+ }) => /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex gap-3 items-center", children: [
3884
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_ui59.Body16, { children: new Date(date).toDateString() }),
3885
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_ui59.Body16m, { children: location }),
3886
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_ui59.Body16m, { children: author })
3887
+ ] });
3888
+ var Article = ({ meta, title, newsId }) => /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("article", { className: "flex flex-col items-start self-stretch lg:px-5 my-auto font-medium max-md:mt-6 max-md:max-w-full", children: [
3889
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(ArticleMeta, { ...meta }),
3890
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("h1", { className: "self-stretch mt-4 text-2xl font-light leading-[130%] max-md:max-w-full lg:leading-10 lg:text-3xl lg:mt-6", children: title }),
3891
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "flex gap-2 mt-4 text-lg lg:mt-6", children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_link3.default, { href: `/news/farmer-cluster/${newsId}`, className: "text-primary", children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_ui59.DesignButton, { variant: "internalLink", className: "h-auto p-0 lg:p-0 ", children: "Read full story" }) }) })
3892
+ ] });
3893
+ var ClusterNewsStories = ({}) => {
3894
+ const router = (0, import_router2.useRouter)();
3895
+ var page = parseInt(router.query.page) || 1;
3896
+ var pageSize = 9;
3897
+ var skip = (page - 1) * pageSize + 1;
3898
+ if (skip === 0) {
3899
+ skip = 1;
3900
+ }
3901
+ var take = pageSize;
3902
+ const { data: clusterNews, isLoading } = (0, import_core21.useNewsFromAllClusters)(skip, take);
3903
+ const { data: featuredNews, isLoading: isFeaturedLoading } = (0, import_core21.useNewsFromAllClusters)(0, 1);
3904
+ var firstNews = featuredNews?.items?.[0];
3905
+ if (isFeaturedLoading || isLoading) {
3906
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_ui59.LoaderFull, {});
3907
+ }
3908
+ return /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "lg:container mx-auto", children: [
3909
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsxs)("div", { className: "flex gap-5 max-md:flex-col max-md:gap-0", children: [
3910
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "flex flex-col w-6/12 max-md:ml-0 max-md:w-full", children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
3911
+ Article,
3912
+ {
3913
+ meta: {
3914
+ date: firstNews?.creationTime,
3915
+ location: firstNews?.clusterCountry,
3916
+ author: firstNews?.username
3917
+ },
3918
+ title: firstNews?.title,
3919
+ newsId: firstNews?.id
3920
+ }
3921
+ ) }),
3922
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "flex flex-col ml-5 w-6/12 max-md:ml-0 max-md:w-full", children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
3923
+ import_ui59.ApiImage,
3924
+ {
3925
+ imageId: firstNews?.imageId,
3926
+ className: "flex overflow-hidden relative flex-col grow justify-center min-h-[560px] mt-6 max-md:max-w-full lg:mt-10"
3927
+ }
3928
+ ) })
3929
+ ] }),
3930
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { className: "grid grid-flow-row gap-5 lg:grid-cols-3 py-11 lg:pt-20 lg:pb-24", children: clusterNews?.items?.map((news) => /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(
3931
+ import_ui59.ClusterNewsItem,
3932
+ {
3933
+ id: news.id,
3934
+ clusterCountry: news.clusterCountry,
3935
+ path: news.imageId,
3936
+ time: news.creationTime,
3937
+ title: news.title,
3938
+ clusterName: news.clusterName,
3939
+ username: news.username
3940
+ },
3941
+ news.id
3942
+ ) }, news.id)) }),
3943
+ /* @__PURE__ */ (0, import_jsx_runtime69.jsx)("div", { children: /* @__PURE__ */ (0, import_jsx_runtime69.jsx)(import_ui59.RoutePagination, { pageSize, total: clusterNews?.totalCount }) })
3944
+ ] });
3945
+ };
3946
+
3947
+ // src/index.tsx
3948
+ __reExport(src_exports, require("@geowiki/core/src/hooks/useMapMenuItems"), module.exports);
3949
+ // Annotate the CommonJS export names for ESM import in node:
3950
+ 0 && (module.exports = {
3951
+ AppsList,
3952
+ CardGridWidget,
3953
+ CardWidget,
3954
+ ClusterNewsStories,
3955
+ ColumnWidget,
3956
+ ContactWidget,
3957
+ ContainerWidget,
3958
+ EntityListWidget,
3959
+ FarmerClusterFinderWidget,
3960
+ FeatureColumnsGroup,
3961
+ FeatureRowWidget,
3962
+ FeatureRowWithImageWidget,
3963
+ FeatureRowWithMultipleImagesWidget,
3964
+ GalleryWidget,
3965
+ HeaderWidget,
3966
+ HeadingTextWidget,
3967
+ HeroCenterTextWidget,
3968
+ HeroGeoWiki,
3969
+ HeroWidget,
3970
+ HtmlSection,
3971
+ ImageWidget,
3972
+ LargeVideo,
3973
+ MapHeroWidget,
3974
+ MarkdownWidget,
3975
+ NewsLetterWidget,
3976
+ ResourceCollectionItemWidget,
3977
+ ResourceCollectionsWidget,
3978
+ RichText,
3979
+ RowWidget,
3980
+ Sections,
3981
+ SimpleActionListWidget,
3982
+ SimpleCallToActionWidget,
3983
+ SpecialFeaturesWidget,
3984
+ StatsWidget,
3985
+ TestimonialListWidget,
3986
+ UnderConstruction,
3987
+ UpdateUserInfoWidget,
3988
+ UserInfoWidget,
3989
+ ...require("@geowiki/core/src/hooks/useMapMenuItems")
3990
+ });