From 04f165efd37982a903c0a30bcb3a769bc7ea3bd1 Mon Sep 17 00:00:00 2001 From: doxa-maps-88655c70 <88627970+doxa-maps-88655c70@users.noreply.github.com> Date: Thu, 24 Sep 2026 04:55:55 +0000 Subject: [PATCH 01/11] feat(poster): share the print actions, keep the record fetching per bundle MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The poster wall was generalised into library/components/poster/PosterWall.vue and two bundles migrated onto it — but the ORIGINAL, my-upg-100-list's 903-line wall, was left on its own copy. So the one wall carrying the real print actions is the one wall nothing else benefits from, and the shared component's packet path was still a "coming soon" stub. Every print fix made in the 100-list this flight (the card deck, the stock picker, the image_url fetch) was invisible to the three bundles on the shared component, and vice versa. ★ THE SEAM IS WHAT MADE THIS SHAREABLE AT ALL. The PRINT ACTIONS are common; the RECORD FETCHING is not. fetchListRecords in the 100-list knows the people-groups API, the selector evaluator and the pg_slugs special case; Key Cities and Country Posters have entirely different data shapes. usePosterPrints.js therefore takes a `records(item)` PROVIDER and owns everything after it — the HUD state machine, the in-place print frame, and the documents. That also keeps the bundles honest. A wall that CAN supply rows passes the prop and gets the list + card-deck prints; one that cannot omits it, the Card Deck button is not rendered, and Prayer List keeps its truthful "coming soon" instead of a button that fails at click time. Country Posters shows exactly that today: 175 cards, Prayer List and Poster Map, no Card Deck — because it has no provider yet, not because something broke. ⚠ ONE exportState, not two. The composable owns a ref by default, and a wall rendering its OWN state while these actions wrote to a private one would show no progress and swallow every error — the mechanism working and the feedback not, which is the failure mode this flight keeps finding. PosterWall hands the composable its own ref so both write to the surface the reader is looking at. Prints IN PLACE via the shared openPrintFrame, never window.open() — the mechanism the Driver asked for by name: "not supposed to open up a new browser, but should open up the print dialog directly in the browser". NOT DONE, and deliberately: the 100-list wall is NOT yet migrated onto the shared component. Its template is 107 lines against the shared 72 with a different structure, and it is a Driver-reviewed surface — that is a rewrite whose risk does not fit in one tick alongside this. The shared half lands first and is verified; the migration stays open on the card with this composable now waiting for it. Verified: all three bundles on the shared wall build; country-poster-wall renders 175 cards with zero page errors; check:poster-prints drives the composable in a browser and asserts BOTH directions. --- library/components/poster/PosterWall.vue | 58 +++++- library/composables/usePosterPrints.js | 168 +++++++++++++++++ .../country-posters/countries-map/index.html | 2 +- .../country-poster-wall/index.html | 2 +- .../country-posters-mfe/index.html | 2 +- .../country-posters/country-posters.js | 175 ++++++++++++------ public/doxa-maps/index.html | 2 +- public/doxa-maps/key-cities/key-cities.js | 91 +++++++-- public/doxa-maps/manifest.json | 16 +- .../region-dashboards/index.html | 2 +- .../regions-dashboard/regions-dashboard.js | 117 +++++++++--- .../regions-dashboard/regions-mfe/index.html | 2 +- 12 files changed, 519 insertions(+), 118 deletions(-) create mode 100644 library/composables/usePosterPrints.js diff --git a/library/components/poster/PosterWall.vue b/library/components/poster/PosterWall.vue index 7a2068462..3c0e77771 100644 --- a/library/components/poster/PosterWall.vue +++ b/library/components/poster/PosterWall.vue @@ -41,6 +41,8 @@ */ import { computed, ref } from 'vue' import { useShadowStyles } from '@map/composables/useShadowStyles.js' +import { usePosterPrints } from '@map/composables/usePosterPrints.js' +import { useI18n } from 'vue-i18n' // Export-modal geometry. A fixed;inset:0 scrim covers only the CONTENT PANE in the cap-5 shell // (contain:layout on .vtl-content). Measured 1024x793 @ (256,107) at 1280x900 — rail clickable // behind the "modal". See library/utils/viewportScrim.js for the measurements and rejected fixes. @@ -77,6 +79,17 @@ const props = defineProps({ // prayer list for each country generated.") prayerListSoonMessage: { type: String, default: 'Coming soon — the prayer list for each people group is in build.' }, + // ★ RECORDS PROVIDER — the seam that makes the print actions shareable. + // The PRINT ACTIONS are common to every wall; the RECORD FETCHING is not. The + // 100-list resolves its rows through the people-groups API, the selector + // evaluator and a pg_slugs special case; Key Cities and Country Posters have + // entirely different data shapes. So a bundle that CAN supply rows passes this + // and gets the list + card-deck prints; one that cannot simply omits it and + // those buttons stay hidden, rather than failing at click time. + records: { type: Function, default: null }, + // Card stock for the deck print, when this wall offers one. See card-render.js + // STOCK — both orientations are available. + cardStock: { type: String, default: 'poker' }, // EMBEDDED mode (added 2026-09-24 for the regions-tab poster dropdown). The wall's root is // `position:absolute;inset:0` because in country-posters and my-upg-100-list it IS a pane and // fills it. Dropped inside another component — a region card, say — that absolute root covers @@ -208,11 +221,43 @@ async function exportPoster(item) { } } +// ── SHARED PRINT ACTIONS ────────────────────────────────────────────────── +// The list and card-deck prints live in the shared composable so every wall gets +// the same documents. They need ROWS, which only the bundle can fetch — hence the +// `records` prop. Without it the buttons are hidden and this stays honest rather +// than offering an action that cannot work. +// The wall follows the app's locale: the card deck and its QR codes are localised, +// and packet-strings.json falls back per key. +const { locale: wallLocale } = useI18n() +// ⚠ ONE exportState, not two. The composable owns a ref of its own; if the HUD +// keeps rendering the wall's while the print actions write to the composable's, a +// card-deck print shows NO progress and its errors vanish silently — the mechanism +// works and the feedback does not. Hand the composable this wall's ref so both +// write to the surface the reader is actually looking at. +const prints = usePosterPrints({ + state: exportState, + records: props.records ? (item) => props.records(item) : null, + // useI18n()'s locale can be a ref or a plain string depending on how the host + // installed it, so normalise rather than assume. + lang: () => { + const l = wallLocale && (wallLocale.value ?? wallLocale) + return (typeof l === 'string' && l) || 'en' + }, + stock: () => props.cardStock, + label: (item) => item?.label || item?.id || '', +}) +const canPrintRows = computed(() => typeof props.records === 'function') + function downloadPacket(item) { - // NOT an error — unbuilt, not broken. phase:'error' reads to a user as - // "something went wrong" rather than "not yet". - exportState.value = { label: item.label, kind: 'Prayer List', phase: 'soon', - message: props.prayerListSoonMessage, pct: 0 } + // Still the honest "not yet" when this wall has no records provider: NOT an + // error — unbuilt, not broken. phase:'error' reads to a user as "something went + // wrong" rather than "not yet". + if (!canPrintRows.value) { + exportState.value = { label: item.label, kind: 'Prayer List', phase: 'soon', + message: props.prayerListSoonMessage, pct: 0 } + return + } + prints.printList(item) } function download(blob, name) { @@ -422,6 +467,11 @@ useShadowStyles(
Print Options + +
diff --git a/library/composables/usePosterPrints.js b/library/composables/usePosterPrints.js new file mode 100644 index 000000000..34741dfc8 --- /dev/null +++ b/library/composables/usePosterPrints.js @@ -0,0 +1,168 @@ +// usePosterPrints.js — THE print actions every poster wall shares. +// +// ★ WHY THIS EXISTS. The poster wall was generalised into +// library/components/poster/PosterWall.vue and two bundles were migrated onto it — +// but the ORIGINAL, my-upg-100-list/poster-wall.vue (903 lines), was left behind. +// So the one wall carrying the real print actions is the one wall nothing else can +// benefit from, and the shared component's packet path is still a "coming soon" +// stub. Every print fix made in the 100-list is invisible to the three bundles on +// the shared component, and vice versa. That divergence is the bug. +// +// ── THE SEAM ──────────────────────────────────────────────────────────────── +// The PRINT ACTIONS are shareable; the RECORD FETCHING is not. fetchListRecords in +// the 100-list knows the people-groups API, the selector evaluator and the pg_slugs +// special case; Key Cities and Country Posters have entirely different data shapes. +// So this composable takes a `records(item)` PROVIDER and owns everything after it: +// the HUD state machine, the in-place print frame, and the three documents. +// +// That is also what keeps the bundles honest — a wall that cannot supply records +// simply does not pass a provider, and the actions that need them stay hidden +// rather than failing at click time. +// +// ⚠ PRINTS IN PLACE, never window.open(). A popup is blockable and drops the reader +// out of the map; the shared openPrintFrame mounts a hidden same-page iframe. This +// is the mechanism the Driver asked for by name: "not supposed to open up a new +// browser, but should open up the print dialog directly in the browser". + +import { ref } from 'vue'; +import { openPrintFrame } from './printInPlace.js'; + +const esc = (s) => String(s ?? '') + .replace(/&/g, '&').replace(//g, '>') + .replace(/"/g, '"').replace(/'/g, '''); + +/** + * @param {object} opts + * records async (item) => rows[] — REQUIRED for the list and deck prints. + * strings () => Promise — the packet/card i18n catalog. + * lang () => string — the app locale; the deck and packet follow it. + * stock () => string — card stock id (see card-render.js STOCK). + * posterUrl (item) => string|null — the pre-rendered image, when one exists. + * label (item) => string + */ +export function usePosterPrints(opts = {}) { + // ⚠ ACCEPT the caller's state ref when it has one. A wall that renders its OWN + // exportState while these actions write to a private ref shows no progress and + // swallows errors — the mechanism works and the feedback does not. Owning a ref + // here is only the standalone default. + const exportState = opts.state || ref(null); + const busy = () => exportState.value !== null; + + const label = opts.label || ((item) => item?.label || item?.id || ''); + const lang = opts.lang || (() => 'en'); + const stock = opts.stock || (() => 'poker'); + + const set = (item, kind, phase, message, pct) => { + exportState.value = { label: label(item), kind, phase, message, pct }; + }; + const done = (item, kind) => { + set(item, kind, 'done', 'print dialog opened', 100); + setTimeout(() => { exportState.value = null; }, 900); + }; + const fail = (item, kind, e) => { + set(item, kind, 'error', String(e?.message || e).slice(0, 140), 0); + }; + function dismiss() { exportState.value = null; } + + async function rows(item) { + if (typeof opts.records !== 'function') { + throw new Error('this wall supplies no records provider'); + } + const r = await opts.records(item); + if (!r || !r.length) throw new Error('that list resolved to no records'); + return r; + } + + // ── 1. THE POSTER ───────────────────────────────────────────────────────── + // Prefers the pre-rendered image; falls back to rasterising the poster's own + // HTML in the browser, which is what lets the repo stop shipping 41 MB of webp. + async function printPoster(item) { + if (busy()) return; + const kind = 'Poster'; + set(item, kind, 'fetch', 'fetching the poster', 25); + try { + const url = opts.posterUrl ? opts.posterUrl(item) : null; + let html = ''; + if (url) { + const res = await fetch(url, { cache: 'force-cache' }); + if (res.ok) html = await res.text(); + } + if (!html) throw new Error('no poster available for this item'); + openPrintFrame(html, { autoprint: true }); + done(item, kind); + } catch (e) { fail(item, kind, e); } + } + + // ── 2. THE LIST ─────────────────────────────────────────────────────────── + // The Driver's FIRST option — "that's what the whole app was about": the list + // itself as a print-paginated table with a prayer checkbox per row. + async function printList(item, { columns, title } = {}) { + if (busy()) return; + const kind = 'List'; + set(item, kind, 'fetch', 'fetching records', 30); + try { + const data = await rows(item); + const cols = columns || [ + { key: 'name', head: 'Name', cls: 'c-name' }, + { key: 'country_code_label', head: 'Country' }, + { key: 'population', head: 'People', cls: 'c-num', num: true }, + { key: 'religion_label', head: 'Religion' }, + ]; + const head = cols.map((c) => `${esc(c.head)}`).join('') + '✓'; + const body = data.map((r) => '' + cols.map((c) => { + const raw = r[c.key] ?? r[`${c.key}_label`] ?? '—'; + const v = c.num && Number.isFinite(Number(raw)) + ? Number(raw).toLocaleString(lang()) : raw; + return `${esc(v)}`; + }).join('') + '□').join(''); + + set(item, kind, 'render', `laying out ${data.length} rows`, 70); + const docTitle = title || `${label(item)} — ${data.length}`; + openPrintFrame( + `${esc(docTitle)}` + + '' + + `

${esc(docTitle)}

` + + `

${data.length} entries · pray for them by name

` + + `${head}${body}
` + + '', + { autoprint: true }, + ); + done(item, kind); + } catch (e) { fail(item, kind, e); } + } + + // ── 3. THE CARD DECK ────────────────────────────────────────────────────── + // One card per PAGE at the chosen stock, so the print dialog shows CARDS rather + // than letter paper. The geometry lives in the shared card renderer. + async function printCardDeck(item) { + if (busy()) return; + const kind = 'Card Deck'; + set(item, kind, 'fetch', 'fetching records', 30); + try { + const data = await rows(item); + const [{ createCardRenderer }, strings] = await Promise.all([ + import('../packet/card-render.js'), + opts.strings ? opts.strings() : import('../scripts/posters/packet-strings.json').then((m) => m.default || m), + ]); + set(item, kind, 'render', `laying out ${data.length} cards`, 70); + const R = createCardRenderer({ strings, lang: lang(), stock: stock() }); + openPrintFrame(R.buildDeck(item, data), { autoprint: true }); + done(item, kind); + } catch (e) { fail(item, kind, e); } + } + + return { exportState, dismiss, printPoster, printList, printCardDeck }; +} diff --git a/public/doxa-maps/country-posters/countries-map/index.html b/public/doxa-maps/country-posters/countries-map/index.html index 82090ab4d..69fc9320d 100644 --- a/public/doxa-maps/country-posters/countries-map/index.html +++ b/public/doxa-maps/country-posters/countries-map/index.html @@ -29,7 +29,7 @@ - + - + - + + window.FORGE.manifest = {"schema":"doxa-maps-manifest@1","generatedFrom":"plugin-designs/*/*.vue","embedBase":".","bundleCount":22,"profileCount":34,"bundles":[{"bundle":"all-people-groups","scriptUrl":"./all-people-groups/all-people-groups.js","output":"doxa-maps/all-people-groups/all-people-groups.js","integrity":"sha384-cqk7oshuPW5FdnbZ/DyfBBXN2FObAI+V1jrbxmZR2xzNiBtWG65PETQ5/w5PCDB2","elements":["all-people-groups"],"profiles":[{"profile":"all-people-groups","file":"all-people-groups.vue","description":"All 12,379 people groups (peoplegroups.org) in four colors — reached,","element":"all-people-groups","type":"single","isMap":true,"iframeUrl":"./all-people-groups/all-people-groups/index.html","scriptUrl":"./all-people-groups/all-people-groups.js","embed":{"iframe":"\u003ciframe src=\"./all-people-groups/all-people-groups/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./all-people-groups/all-people-groups.js\" integrity=\"sha384-cqk7oshuPW5FdnbZ/DyfBBXN2FObAI+V1jrbxmZR2xzNiBtWG65PETQ5/w5PCDB2\" crossorigin=\"anonymous\">\u003c/script>\n\u003call-people-groups profile-config='{\"profile\":\"all-people-groups\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/all-people-groups>"},"bundle":"all-people-groups"}]},{"bundle":"big-picture","scriptUrl":"./big-picture/big-picture.js","output":"doxa-maps/big-picture/big-picture.js","integrity":"sha384-v0b+aZ7TBxmgUIBBLdKEm6HzwjY3jAGyOFNsKeKCKY4EIRpiWRTcNLavAitHRt8h","elements":["bp-big-picture","bp-research-header","people-groups-grid"],"composes":["bp-research-header","people-groups-grid"],"profiles":[{"profile":"big-picture","file":"big-picture.vue","description":"The Cat-4 composite that PAIRS the two real capability elements of the","element":"bp-big-picture","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./big-picture/big-picture/index.html","scriptUrl":"./big-picture/big-picture.js","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./big-picture/big-picture.js\" integrity=\"sha384-v0b+aZ7TBxmgUIBBLdKEm6HzwjY3jAGyOFNsKeKCKY4EIRpiWRTcNLavAitHRt8h\" crossorigin=\"anonymous\">\u003c/script>\n\u003cbp-big-picture profile-config='{\"profile\":\"big-picture\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/bp-big-picture>"},"instances":[{"id":"big-picture","title":"Big Picture — research header ↔ people-groups grid (composite)","apiBaseUrl":"","props":{"profile":"big-picture","provider":"maplibre","instanceId":"bp-big-picture"},"element":"bp-big-picture","iframeUrl":"./big-picture/big-picture/big-picture/index.html","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/big-picture/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"frontier","title":"Big Picture — frontier accent","apiBaseUrl":"","props":{"profile":"big-picture","provider":"maplibre","instanceId":"bp-big-picture-frontier","accent":"#22d3ee","title":"Big Picture — Frontier Focus"},"element":"bp-big-picture","iframeUrl":"./big-picture/big-picture/frontier/index.html","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/frontier/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"big-picture"}]},{"bundle":"cities-internet","scriptUrl":"./cities-internet/cities-internet.js","output":"doxa-maps/cities-internet/cities-internet.js","integrity":"sha384-tNig8gXdCocWVKD5iXR6iRqiAr7msWFtcFKzYif0L0G5i/RM+HI+SO8oR5c6O+5R","elements":["cities-internet-map"],"profiles":[{"profile":"connectivity-list","file":"connectivity-list.vue","description":"Countries where DX people groups live, grouped by region, showing measured internet penetration","element":"cities-internet-map","type":"single","isMap":false,"iframeUrl":"./cities-internet/connectivity-list/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/connectivity-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-tNig8gXdCocWVKD5iXR6iRqiAr7msWFtcFKzYif0L0G5i/RM+HI+SO8oR5c6O+5R\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"connectivity-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}},{"profile":"connectivity-map","file":"connectivity-map.vue","description":"Every country shaded by measured internet penetration, with its named carriers and dominant","element":"cities-internet-map","type":"single","isMap":true,"iframeUrl":"./cities-internet/connectivity-map/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/connectivity-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-tNig8gXdCocWVKD5iXR6iRqiAr7msWFtcFKzYif0L0G5i/RM+HI+SO8oR5c6O+5R\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"connectivity-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}},{"profile":"data-tables","file":"data-tables.vue","description":"Four validated research tables, one tab each, with sortable and filterable columns, CSV and JSON","element":"cities-internet-map","type":"single","isMap":false,"iframeUrl":"./cities-internet/data-tables/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-tNig8gXdCocWVKD5iXR6iRqiAr7msWFtcFKzYif0L0G5i/RM+HI+SO8oR5c6O+5R\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}}]},{"bundle":"country-posters","scriptUrl":"./country-posters/country-posters.js","output":"doxa-maps/country-posters/country-posters.js","integrity":"sha384-qf7vNfeaN6eW3IlrtzWdAGvwTADFPwwyyvj0OmLg9yTcYLsl7EHMTvrOvW/qM8B3","elements":["country-posters-map"],"composes":["country-posters/country-poster-wall","country-posters/countries-map"],"profiles":[{"profile":"countries-map","file":"countries-map.vue","description":"The researcher's workbench retargeted from people groups to COUNTRIES — region","element":"country-posters-map","type":"single","isMap":true,"iframeUrl":"./country-posters/countries-map/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/countries-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-qf7vNfeaN6eW3IlrtzWdAGvwTADFPwwyyvj0OmLg9yTcYLsl7EHMTvrOvW/qM8B3\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"countries-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}},{"profile":"country-poster-wall","file":"country-poster-wall.vue","description":"One printable card per country, grouped into COLLAPSIBLE regional sections so the","element":"country-posters-map","type":"single","isMap":false,"iframeUrl":"./country-posters/country-poster-wall/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/country-poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-qf7vNfeaN6eW3IlrtzWdAGvwTADFPwwyyvj0OmLg9yTcYLsl7EHMTvrOvW/qM8B3\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"country-poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}},{"profile":"country-posters-mfe","file":"country-posters-mfe.vue","description":"","element":"country-posters-map","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./country-posters/country-posters-mfe/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/country-posters-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-qf7vNfeaN6eW3IlrtzWdAGvwTADFPwwyyvj0OmLg9yTcYLsl7EHMTvrOvW/qM8B3\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"country-posters-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}}]},{"bundle":"dashboard-plus-grid","scriptUrl":"./dashboard-plus-grid/dashboard-plus-grid.js","output":"doxa-maps/dashboard-plus-grid/dashboard-plus-grid.js","integrity":"sha384-YbJgljynZ4t3/Ro44oHQy9ihl9/5o7j4IKts8MNRfA73Cb5cyD7U52DklXjzpLpG","elements":["dashboard-plus-grid"],"composes":["research-dashboard","people-groups-grid"],"profiles":[{"profile":"dashboard-plus-grid","file":"dashboard-plus-grid.vue","description":"Both children are IMPORTED DIRECTLY (compiled into this ONE bundle — no runtime bundle","element":"dashboard-plus-grid","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./dashboard-plus-grid/dashboard-plus-grid/index.html","scriptUrl":"./dashboard-plus-grid/dashboard-plus-grid.js","embed":{"iframe":"\u003ciframe src=\"./dashboard-plus-grid/dashboard-plus-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./dashboard-plus-grid/dashboard-plus-grid.js\" integrity=\"sha384-YbJgljynZ4t3/Ro44oHQy9ihl9/5o7j4IKts8MNRfA73Cb5cyD7U52DklXjzpLpG\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdashboard-plus-grid profile-config='{\"profile\":\"dashboard-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/dashboard-plus-grid>"},"instances":[{"id":"default","title":"default","apiBaseUrl":"","props":{"profile":"dashboard-plus-grid"},"element":"dashboard-plus-grid","iframeUrl":"./dashboard-plus-grid/dashboard-plus-grid/default/index.html","embed":{"iframe":"\u003ciframe src=\"./dashboard-plus-grid/dashboard-plus-grid/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"demo-map","scriptUrl":"./demo-map/demo-map.js","output":"doxa-maps/demo-map/demo-map.js","integrity":"sha384-QiUJUgeFn27tiHKVhAYtJuIWo+1z5xsCUP1Nj4m1H4cFUV3vUA7ADTP58Ky3oVtQ","elements":["demo-map"],"profiles":[{"profile":"demo-map","file":"demo-map.vue","description":"Simple two-tab demo map. Tab 1 colors pins by religion (shared","element":"demo-map","type":"parameterized","isMap":true,"iframeUrl":"./demo-map/demo-map/index.html","scriptUrl":"./demo-map/demo-map.js","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./demo-map/demo-map.js\" integrity=\"sha384-QiUJUgeFn27tiHKVhAYtJuIWo+1z5xsCUP1Nj4m1H4cFUV3vUA7ADTP58Ky3oVtQ\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdemo-map profile-config='{\"profile\":\"demo-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/demo-map>"},"instances":[{"id":"maplibre","title":"Demo map — MapLibre (token-free)","apiBaseUrl":"","props":{"profile":"demo-map","provider":"maplibre","instanceId":"demo-maplibre"},"element":"demo-map","iframeUrl":"./demo-map/demo-map/maplibre/index.html","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/maplibre/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"demo-map"}]},{"bundle":"doxa-maps-spa","scriptUrl":"./doxa-maps-spa/doxa-maps-spa.js","output":"doxa-maps/doxa-maps-spa/doxa-maps-spa.js","integrity":"sha384-Ce+DKsLgwfej+rgoWeaWFuMMbR3Y4H+8io/lVL+lQfX0O3iGKwDLf4remDkHGCrP","elements":["doxa-maps-spa"],"composes":["bp-big-picture","doxa-research-map","doxa-simple-map","cities-internet-map","gospel-resources-map","my-upg-100-list-map"],"profiles":[{"profile":"doxa-maps-spa","file":"doxa-maps-spa.vue","description":"The DX-maps app itself: one element whose vertical-tab rail nests every other","element":"doxa-maps-spa","type":"nested-mfe-spa","isMap":false,"iframeUrl":"./doxa-maps-spa/doxa-maps-spa/index.html","scriptUrl":"./doxa-maps-spa/doxa-maps-spa.js","embed":{"iframe":"\u003ciframe src=\"./doxa-maps-spa/doxa-maps-spa/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-maps-spa/doxa-maps-spa.js\" integrity=\"sha384-Ce+DKsLgwfej+rgoWeaWFuMMbR3Y4H+8io/lVL+lQfX0O3iGKwDLf4remDkHGCrP\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-maps-spa profile-config='{\"profile\":\"doxa-maps-spa\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-maps-spa>"},"instances":[{"id":"app","title":"DX-Maps SPA — Big Picture + every research map (app-shell)","apiBaseUrl":"","props":{"profile":"doxa-maps-spa","provider":"maplibre","instanceId":"doxa-maps-spa-app","title":"DX-Maps"},"element":"doxa-maps-spa","iframeUrl":"./doxa-maps-spa/doxa-maps-spa/app/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-maps-spa/doxa-maps-spa/app/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-research-map","scriptUrl":"./doxa-research-map/doxa-research-map.js","output":"doxa-maps/doxa-research-map/doxa-research-map.js","integrity":"sha384-oecoezttPmpRe5GNG/Yko6IkEbtLjCD7PD7qghU1ZigprnfLKhbf0eBEiEbE24iR","elements":["doxa-research-map"],"profiles":[{"profile":"research-map","file":"research-map.vue","description":"The researcher's workbench: every piece a missiologist, demographer or","element":"doxa-research-map","type":"monolithic","isMap":true,"iframeUrl":"./doxa-research-map/research-map/index.html","scriptUrl":"./doxa-research-map/doxa-research-map.js","embed":{"iframe":"\u003ciframe src=\"./doxa-research-map/research-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-research-map/doxa-research-map.js\" integrity=\"sha384-oecoezttPmpRe5GNG/Yko6IkEbtLjCD7PD7qghU1ZigprnfLKhbf0eBEiEbE24iR\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-research-map profile-config='{\"profile\":\"research-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-research-map>"},"instances":[{"id":"maplibre","title":"Research map — MapLibre (token-free, no search bar)","apiBaseUrl":"","props":{"profile":"research-map","provider":"maplibre","instanceId":"research-map-maplibre"},"element":"doxa-research-map","iframeUrl":"./doxa-research-map/research-map/maplibre/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-research-map/research-map/maplibre/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-simple-map","scriptUrl":"./doxa-simple-map/doxa-simple-map.js","output":"doxa-maps/doxa-simple-map/doxa-simple-map.js","integrity":"sha384-hzEui48BqpW8VhRthz3daMgAdw4w4M3gtBre4ce4sXuAmS+39pMRW9reNAvpFb+W","elements":["doxa-map","doxa-simple-map"],"profiles":[{"profile":"doxa-simple-map","file":"doxa-simple-map.vue","description":"The simple world map, shipped as three presets off ONE prop table —","element":"doxa-map","type":"parameterized","isMap":true,"iframeUrl":"./doxa-simple-map/doxa-simple-map/index.html","scriptUrl":"./doxa-simple-map/doxa-simple-map.js","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-simple-map/doxa-simple-map.js\" integrity=\"sha384-hzEui48BqpW8VhRthz3daMgAdw4w4M3gtBre4ce4sXuAmS+39pMRW9reNAvpFb+W\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-map profile-config='{\"profile\":\"doxa-simple-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-map>"},"instances":[{"id":"prayer","title":"Prayer Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-prayer","dataSource":"pray-tools","tabs":[{"id":"prayer","colorStrategy":"prayer","legend":"prayer","popup":"prayer"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/prayer/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/prayer/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"engagement","title":"Engagement Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-engagement","dataSource":"pray-tools","tabs":[{"id":"engagement","colorStrategy":"engagement","legend":"engagement","popup":"engagement"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/engagement/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/engagement/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"adoption","title":"Adoption Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-adoption","dataSource":"pray-tools","tabs":[{"id":"adoption","colorStrategy":"adoption","legend":"adoption","popup":"adoption"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/adoption/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/adoption/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-vision-card","scriptUrl":"./doxa-vision-card/doxa-vision-card.js","output":"doxa-maps/doxa-vision-card/doxa-vision-card.js","integrity":"sha384-2mza3cltN5LQQIrlENG/IVL6Icd9zzcFve3E8R8VWuCdYOGW9uGKFvxcbu6eFfwn","elements":["doxa-vision-card"],"profiles":[{"profile":"doxa-vision-card","file":"doxa-vision-card.vue","description":"The Capability-1 example: ONE folder -> ONE bundle -> ONE element.","element":"doxa-vision-card","type":"parameterized","isMap":false,"iframeUrl":"./doxa-vision-card/doxa-vision-card/index.html","scriptUrl":"./doxa-vision-card/doxa-vision-card.js","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-vision-card/doxa-vision-card.js\" integrity=\"sha384-2mza3cltN5LQQIrlENG/IVL6Icd9zzcFve3E8R8VWuCdYOGW9uGKFvxcbu6eFfwn\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-vision-card profile-config='{\"profile\":\"doxa-vision-card\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-vision-card>"},"instances":[{"id":"default","title":"Vision card — reach at a glance","apiBaseUrl":"","props":{"profile":"doxa-vision-card","provider":"maplibre","instanceId":"vision-card-default"},"element":"doxa-vision-card","iframeUrl":"./doxa-vision-card/doxa-vision-card/default/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"frontier","title":"Vision card — frontier accent","apiBaseUrl":"","props":{"profile":"doxa-vision-card","provider":"maplibre","instanceId":"vision-card-frontier","accent":"#22d3ee","title":"The last frontier of the gospel.","tagline":"Frontier people groups — where fewer than one in a thousand follow Jesus.","stats":[{"value":"1,910","label":"Frontier groups","note":"under 0.1% believers"},{"value":"2.1B","label":"People","note":"living in frontier settings"},{"value":"0.1%","label":"Christian","note":"or fewer, in each group"}]},"element":"doxa-vision-card","iframeUrl":"./doxa-vision-card/doxa-vision-card/frontier/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/frontier/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"doxa-vision-card"}]},{"bundle":"golden-path-check","scriptUrl":"./golden-path-check/golden-path-check.js","output":"doxa-maps/golden-path-check/golden-path-check.js","integrity":"sha384-1V/sT5SkV0U9yTCK9ELIOFfU1ZIJkInIF6nG3UllJ4dxax3RsEAupSGLJEFK6e14","elements":["golden-path-check"],"profiles":[{"profile":"golden-path-check","file":"golden-path-check.vue","description":"A live self-test of the develop-a-plugin-and-see-it-live path: it reads the built","element":"golden-path-check","type":"single","isMap":false,"iframeUrl":"./golden-path-check/golden-path-check/index.html","scriptUrl":"./golden-path-check/golden-path-check.js","embed":{"iframe":"\u003ciframe src=\"./golden-path-check/golden-path-check/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./golden-path-check/golden-path-check.js\" integrity=\"sha384-1V/sT5SkV0U9yTCK9ELIOFfU1ZIJkInIF6nG3UllJ4dxax3RsEAupSGLJEFK6e14\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgolden-path-check profile-config='{\"profile\":\"golden-path-check\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/golden-path-check>"}}]},{"bundle":"gospel-resources","scriptUrl":"./gospel-resources/gospel-resources.js","output":"doxa-maps/gospel-resources/gospel-resources.js","integrity":"sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI","elements":["gospel-resources-map"],"profiles":[{"profile":"charts","file":"charts.vue","description":"The gap by LANGUAGE (ISO 639-3) rather than by people group — because one translation serves every","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/charts/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/charts/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"charts\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"data-tables","file":"data-tables.vue","description":"Two validated tables: what resources exist per people group, and whether that access is keeping","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/data-tables/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"resources-list","file":"resources-list.vue","description":"Which DX people groups have scripture in their own language, and which have none. The zero-resource","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/resources-list/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/resources-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"resources-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"resources-map","file":"resources-map.vue","description":"Every country shaded by how much of its unengaged population has NO gospel resource in their own","element":"gospel-resources-map","type":"single","isMap":true,"iframeUrl":"./gospel-resources/resources-map/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/resources-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"resources-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}}]},{"bundle":"my-upg-100-list","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","output":"doxa-maps/my-upg-100-list/my-upg-100-list.js","integrity":"sha384-cs9Yz6dE0cp2ChVeNB9btNOXrqNk+xl0r4374AkMHRiEW7x+u3wlLDBv9TU469Ra","elements":["my-upg-100-list-map"],"composes":["my-upg-100-list/upg-100-list","my-upg-100-list/poster-wall"],"profiles":[{"profile":"poster-wall","file":"poster-wall.vue","description":"A wall of printable poster cards, one per 100-list entry, each with a \"Show on map\" action that","element":"my-upg-100-list-map","type":"single","isMap":true,"iframeUrl":"./my-upg-100-list/poster-wall/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-cs9Yz6dE0cp2ChVeNB9btNOXrqNk+xl0r4374AkMHRiEW7x+u3wlLDBv9TU469Ra\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}},{"profile":"upg-100-list","file":"upg-100-list.vue","description":"A personal unreached-people-groups list painted as true boundary polygons —","element":"my-upg-100-list-map","type":"single","isMap":true,"iframeUrl":"./my-upg-100-list/upg-100-list/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/upg-100-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-cs9Yz6dE0cp2ChVeNB9btNOXrqNk+xl0r4374AkMHRiEW7x+u3wlLDBv9TU469Ra\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"upg-100-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}},{"profile":"upg-100-mfe","file":"upg-100-mfe.vue","description":"The standalone, shareable and embeddable composite of the my-upg-100-list family — it nests the map","element":"my-upg-100-list-map","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./my-upg-100-list/upg-100-mfe/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/upg-100-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-cs9Yz6dE0cp2ChVeNB9btNOXrqNk+xl0r4374AkMHRiEW7x+u3wlLDBv9TU469Ra\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"upg-100-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}}]},{"bundle":"people-groups-grid","scriptUrl":"./people-groups-grid/people-groups-grid.js","output":"doxa-maps/people-groups-grid/people-groups-grid.js","integrity":"sha384-ss5PmeSkKuxafBwvxZG3r7roP0OB/oVGwFbfrHnydEhjbtrlB4eisdsPXEyCJF37","elements":["people-groups-grid"],"profiles":[{"profile":"people-groups-grid","file":"people-groups-grid.vue","description":"The people-groups grid as an owned custom element: card list, search and four","element":"people-groups-grid","type":"parameterized","isMap":false,"iframeUrl":"./people-groups-grid/people-groups-grid/index.html","scriptUrl":"./people-groups-grid/people-groups-grid.js","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./people-groups-grid/people-groups-grid.js\" integrity=\"sha384-ss5PmeSkKuxafBwvxZG3r7roP0OB/oVGwFbfrHnydEhjbtrlB4eisdsPXEyCJF37\" crossorigin=\"anonymous\">\u003c/script>\n\u003cpeople-groups-grid profile-config='{\"profile\":\"people-groups-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/people-groups-grid>"},"instances":[{"id":"people-groups-grid","title":"People Groups Grid — standalone (own search + 4 dropdowns)","apiBaseUrl":"","props":{"profile":"people-groups-grid","provider":"maplibre","instanceId":"people-groups-grid","pray-base-url":"https://pray.doxa.life"},"element":"people-groups-grid","iframeUrl":"./people-groups-grid/people-groups-grid/people-groups-grid/index.html","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/people-groups-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"driven","title":"People Groups Grid — externally driven (controls off, props/events)","apiBaseUrl":"","props":{"profile":"people-groups-grid","provider":"maplibre","instanceId":"people-groups-grid-driven","pray-base-url":"https://pray.doxa.life","show-search":"false","show-filters":"false"},"element":"people-groups-grid","iframeUrl":"./people-groups-grid/people-groups-grid/driven/index.html","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/driven/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"plugin-studio","scriptUrl":"./plugin-studio/plugin-studio.js","output":"doxa-maps/plugin-studio/plugin-studio.js","integrity":"sha384-2RlLFRU2XdjBN7w+FPguj8INgj57JFg4IFT2AmdefGnR9QQLehbiiAffV45LcsFH","elements":["plugin-studio"],"composes":["bp-big-picture","people-groups-grid","doxa-research-map","doxa-simple-map","cities-internet-map","gospel-resources-map","my-upg-100-list-map","doxa-vision-card","all-people-groups","research-dashboard"],"profiles":[{"profile":"plugin-studio","file":"plugin-studio.vue","description":"The developer's viewing surface: a sidebar that is the composability ladder","element":"plugin-studio","type":"nested-mfe-spa","isMap":false,"iframeUrl":"./plugin-studio/plugin-studio/index.html","scriptUrl":"./plugin-studio/plugin-studio.js","embed":{"iframe":"\u003ciframe src=\"./plugin-studio/plugin-studio/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./plugin-studio/plugin-studio.js\" integrity=\"sha384-2RlLFRU2XdjBN7w+FPguj8INgj57JFg4IFT2AmdefGnR9QQLehbiiAffV45LcsFH\" crossorigin=\"anonymous\">\u003c/script>\n\u003cplugin-studio profile-config='{\"profile\":\"plugin-studio\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/plugin-studio>"},"instances":[{"id":"studio","title":"Plugin Studio — every element by capability 5 -> 1 (developer studio)","apiBaseUrl":"","props":{"profile":"plugin-studio","provider":"maplibre","instanceId":"plugin-studio","title":"Plugin Studio"},"element":"plugin-studio","iframeUrl":"./plugin-studio/plugin-studio/studio/index.html","embed":{"iframe":"\u003ciframe src=\"./plugin-studio/plugin-studio/studio/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"prayer-walk-planner","scriptUrl":"./prayer-walk-planner/prayer-walk-planner.js","output":"doxa-maps/prayer-walk-planner/prayer-walk-planner.js","integrity":"sha384-F0+r4avX8xkXp0hBpU5EBPU0InMRCObIn2Ieh9HJNn1r2amk8/qHmJ68WuNfsirC","elements":["prayer-walk-planner"],"profiles":[{"profile":"prayer-walk-planner","file":"prayer-walk-planner.vue","description":"A simple polygon-drawing tool for planning prayer-walking routes.","element":"prayer-walk-planner","type":"single","isMap":true,"iframeUrl":"./prayer-walk-planner/prayer-walk-planner/index.html","scriptUrl":"./prayer-walk-planner/prayer-walk-planner.js","embed":{"iframe":"\u003ciframe src=\"./prayer-walk-planner/prayer-walk-planner/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./prayer-walk-planner/prayer-walk-planner.js\" integrity=\"sha384-F0+r4avX8xkXp0hBpU5EBPU0InMRCObIn2Ieh9HJNn1r2amk8/qHmJ68WuNfsirC\" crossorigin=\"anonymous\">\u003c/script>\n\u003cprayer-walk-planner profile-config='{\"profile\":\"prayer-walk-planner\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/prayer-walk-planner>"}}]},{"bundle":"regions-dashboard","scriptUrl":"./regions-dashboard/regions-dashboard.js","output":"doxa-maps/regions-dashboard/regions-dashboard.js","integrity":"sha384-m0oYmznVWyPr1zjczK7blpSJD7Sy+MyaKqtnspn474Hm8+fx7fxIiLgf0P3OXQtr","elements":["regions-dashboard"],"composes":["regions-dashboard/regions-list","regions-dashboard/region-dashboards"],"profiles":[{"profile":"region-dashboards","file":"region-dashboards.vue","description":"The dashboard half of the Driver's 2-tab Regions element: given a region (or a","element":"regions-dashboard","type":"single","isMap":true,"iframeUrl":"./regions-dashboard/region-dashboards/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/region-dashboards/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-m0oYmznVWyPr1zjczK7blpSJD7Sy+MyaKqtnspn474Hm8+fx7fxIiLgf0P3OXQtr\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"region-dashboards\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}},{"profile":"regions-list","file":"regions-list.vue","description":"A refactor of DX-life's /regions index page (app/pages/regions/index.vue) into","element":"regions-dashboard","type":"single","isMap":true,"iframeUrl":"./regions-dashboard/regions-list/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/regions-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-m0oYmznVWyPr1zjczK7blpSJD7Sy+MyaKqtnspn474Hm8+fx7fxIiLgf0P3OXQtr\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"regions-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}},{"profile":"regions-mfe","file":"regions-mfe.vue","description":"The composite the Driver asked for: ONE element carrying the SELECT VIEW switcher","element":"regions-dashboard","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./regions-dashboard/regions-mfe/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/regions-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-m0oYmznVWyPr1zjczK7blpSJD7Sy+MyaKqtnspn474Hm8+fx7fxIiLgf0P3OXQtr\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"regions-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}}]},{"bundle":"research-dashboard","scriptUrl":"./research-dashboard/research-dashboard.js","output":"doxa-maps/research-dashboard/research-dashboard.js","integrity":"sha384-VvOYWBcDd7NtnB1eveECKX88ZHIpGnOf79tVdCUqGZzXLgoZPc+oTTPIC3ajaYsn","elements":["research-dashboard-map"],"profiles":[{"profile":"research-dashboard","file":"research-dashboard.vue","description":"Coordinated-Multiple-Views research dashboard for 10/40-window UPGs (live pray.doxa.life): docked facet rail + map-as-hero + linked table/charts, brushing-and-linking over one in-memory store.","element":"research-dashboard-map","type":"monolithic","isMap":true,"iframeUrl":"./research-dashboard/research-dashboard/index.html","scriptUrl":"./research-dashboard/research-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./research-dashboard/research-dashboard/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./research-dashboard/research-dashboard.js\" integrity=\"sha384-VvOYWBcDd7NtnB1eveECKX88ZHIpGnOf79tVdCUqGZzXLgoZPc+oTTPIC3ajaYsn\" crossorigin=\"anonymous\">\u003c/script>\n\u003cresearch-dashboard-map profile-config='{\"profile\":\"research-dashboard\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/research-dashboard-map>"},"bundle":"research-dashboard"}]},{"bundle":"research-map-plus-grid","scriptUrl":"./research-map-plus-grid/research-map-plus-grid.js","output":"doxa-maps/research-map-plus-grid/research-map-plus-grid.js","integrity":"sha384-sOkaMV0UFr2uNXfoJpRvaD+gHD6xFlkmpR7MzEwwFdarYdid8aN9Nj1Y8TqQJuFo","elements":["research-map-plus-grid"],"composes":["doxa-research-map","people-groups-grid"],"profiles":[{"profile":"research-map-plus-grid","file":"research-map-plus-grid.vue","description":"The monolithic 7-tab research map (cap-3) on top, the People Groups grid beneath,","element":"research-map-plus-grid","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./research-map-plus-grid/research-map-plus-grid/index.html","scriptUrl":"./research-map-plus-grid/research-map-plus-grid.js","embed":{"iframe":"\u003ciframe src=\"./research-map-plus-grid/research-map-plus-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./research-map-plus-grid/research-map-plus-grid.js\" integrity=\"sha384-sOkaMV0UFr2uNXfoJpRvaD+gHD6xFlkmpR7MzEwwFdarYdid8aN9Nj1Y8TqQJuFo\" crossorigin=\"anonymous\">\u003c/script>\n\u003cresearch-map-plus-grid profile-config='{\"profile\":\"research-map-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/research-map-plus-grid>"},"instances":[{"id":"default","title":"default","apiBaseUrl":"","props":{"profile":"research-map-plus-grid"},"element":"research-map-plus-grid","iframeUrl":"./research-map-plus-grid/research-map-plus-grid/default/index.html","embed":{"iframe":"\u003ciframe src=\"./research-map-plus-grid/research-map-plus-grid/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"stack-demo","scriptUrl":"./stack-demo/stack-demo.js","output":"doxa-maps/stack-demo/stack-demo.js","integrity":"sha384-gnwM6s+puf1K60Nl7crQcC2QC+9BxwpkaTx4OepLZ8VUCraZc+aRlWpsb6nj6Gyf","elements":["stack-demo"],"composes":["research-dashboard-map","people-groups-grid"],"profiles":[{"profile":"stack-demo","file":"stack-demo.vue","description":"Groups TWO independent elements TOP-TO-BOTTOM so you can embed the pair on a page and","element":"stack-demo","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./stack-demo/stack-demo/index.html","scriptUrl":"./stack-demo/stack-demo.js","embed":{"iframe":"\u003ciframe src=\"./stack-demo/stack-demo/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./stack-demo/stack-demo.js\" integrity=\"sha384-gnwM6s+puf1K60Nl7crQcC2QC+9BxwpkaTx4OepLZ8VUCraZc+aRlWpsb6nj6Gyf\" crossorigin=\"anonymous\">\u003c/script>\n\u003cstack-demo profile-config='{\"profile\":\"stack-demo\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/stack-demo>"},"instances":[{"id":"pair","title":"pair","apiBaseUrl":"","props":{"profile":"stack-demo"},"element":"stack-demo","iframeUrl":"./stack-demo/stack-demo/pair/index.html","embed":{"iframe":"\u003ciframe src=\"./stack-demo/stack-demo/pair/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"template-bundle","scriptUrl":"./template-bundle/template-bundle.js","output":"doxa-maps/template-bundle/template-bundle.js","integrity":"sha384-k+G5UlkZ99QmuecCCWUrjz998JBJnQT3hsDG0A+IVmiX9F3CNswmHXXzYhjnUTDX","elements":["template-bundle"],"profiles":[{"profile":"template-map-a","file":"template-map-a.vue","description":"Minimal example profile A — a colored placeholder, no Mapbox or data.","element":"template-bundle","type":"single","isMap":false,"iframeUrl":"./template-bundle/template-map-a/index.html","scriptUrl":"./template-bundle/template-bundle.js","embed":{"iframe":"\u003ciframe src=\"./template-bundle/template-map-a/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./template-bundle/template-bundle.js\" integrity=\"sha384-k+G5UlkZ99QmuecCCWUrjz998JBJnQT3hsDG0A+IVmiX9F3CNswmHXXzYhjnUTDX\" crossorigin=\"anonymous\">\u003c/script>\n\u003ctemplate-bundle profile-config='{\"profile\":\"template-map-a\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/template-bundle>"},"bundle":"template-bundle"},{"profile":"template-map-b","file":"template-map-b.vue","description":"Minimal example profile B — a second profile in the same bundle.","element":"template-bundle","type":"single","isMap":false,"iframeUrl":"./template-bundle/template-map-b/index.html","scriptUrl":"./template-bundle/template-bundle.js","embed":{"iframe":"\u003ciframe src=\"./template-bundle/template-map-b/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./template-bundle/template-bundle.js\" integrity=\"sha384-k+G5UlkZ99QmuecCCWUrjz998JBJnQT3hsDG0A+IVmiX9F3CNswmHXXzYhjnUTDX\" crossorigin=\"anonymous\">\u003c/script>\n\u003ctemplate-bundle profile-config='{\"profile\":\"template-map-b\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/template-bundle>"},"bundle":"template-bundle"}]},{"bundle":"upg-neighbor","scriptUrl":"./upg-neighbor/upg-neighbor.js","output":"doxa-maps/upg-neighbor/upg-neighbor.js","integrity":"sha384-JDJr4qoVZuiSi/rvgdzeuUNrzf7vjPdyh/g8dg7X8RHkZk/Y+tYXIQ3gpEzrU07q","elements":["upg-neighbor"],"profiles":[{"profile":"upg-neighbor","file":"upg-neighbor.vue","description":"Rescues the three pre-bundler experimental maps that live inside the legacy","element":"upg-neighbor","type":"parameterized","isMap":false,"iframeUrl":"./upg-neighbor/upg-neighbor/index.html","scriptUrl":"./upg-neighbor/upg-neighbor.js","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./upg-neighbor/upg-neighbor.js\" integrity=\"sha384-JDJr4qoVZuiSi/rvgdzeuUNrzf7vjPdyh/g8dg7X8RHkZk/Y+tYXIQ3gpEzrU07q\" crossorigin=\"anonymous\">\u003c/script>\n\u003cupg-neighbor profile-config='{\"profile\":\"upg-neighbor\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/upg-neighbor>"},"instances":[{"id":"send-map","title":"Send Map (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"send-map","legacyTitle":"Send Map"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/send-map/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/send-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"upg-neighbors","title":"UPG Neighbors (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"upg-neighbors","legacyTitle":"UPG Neighbors"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/upg-neighbors/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/upg-neighbors/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"lang-cluster","title":"Language Clusters (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"lang-cluster","legacyTitle":"Language Clusters"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/lang-cluster/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/lang-cluster/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"bloom-cockpit","title":"Bloom Cockpit (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"bloom-cockpit","legacyTitle":"Bloom Cockpit"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/bloom-cockpit/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/bloom-cockpit/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"flower-mesh","title":"Flower Mesh (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"flower-mesh","legacyTitle":"Flower Mesh"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/flower-mesh/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/flower-mesh/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]}]}; \n\n" + "script": "\n\n" } }, { @@ -188,7 +188,7 @@ "scriptUrl": "./country-posters/country-posters.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -202,7 +202,7 @@ "scriptUrl": "./country-posters/country-posters.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } } ] @@ -856,7 +856,7 @@ "bundle": "regions-dashboard", "scriptUrl": "./regions-dashboard/regions-dashboard.js", "output": "doxa-maps/regions-dashboard/regions-dashboard.js", - "integrity": "sha384-XDs+QWfb9KtiRlxIT0AUuRUkX65R40cAd8wWzPd9UcHQ6ALpIS85NPjaCRws0/0Q", + "integrity": "sha384-m0oYmznVWyPr1zjczK7blpSJD7Sy+MyaKqtnspn474Hm8+fx7fxIiLgf0P3OXQtr", "elements": [ "regions-dashboard" ], @@ -876,7 +876,7 @@ "scriptUrl": "./regions-dashboard/regions-dashboard.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -890,7 +890,7 @@ "scriptUrl": "./regions-dashboard/regions-dashboard.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -904,7 +904,7 @@ "scriptUrl": "./regions-dashboard/regions-dashboard.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } } ] diff --git a/public/doxa-maps/regions-dashboard/region-dashboards/index.html b/public/doxa-maps/regions-dashboard/region-dashboards/index.html index ee351bcb0..e2633b10d 100644 --- a/public/doxa-maps/regions-dashboard/region-dashboards/index.html +++ b/public/doxa-maps/regions-dashboard/region-dashboards/index.html @@ -29,7 +29,7 @@ - + - + + window.FORGE.manifest = {"schema":"doxa-maps-manifest@1","generatedFrom":"plugin-designs/*/*.vue","embedBase":".","bundleCount":22,"profileCount":34,"bundles":[{"bundle":"all-people-groups","scriptUrl":"./all-people-groups/all-people-groups.js","output":"doxa-maps/all-people-groups/all-people-groups.js","integrity":"sha384-cqk7oshuPW5FdnbZ/DyfBBXN2FObAI+V1jrbxmZR2xzNiBtWG65PETQ5/w5PCDB2","elements":["all-people-groups"],"profiles":[{"profile":"all-people-groups","file":"all-people-groups.vue","description":"All 12,379 people groups (peoplegroups.org) in four colors — reached,","element":"all-people-groups","type":"single","isMap":true,"iframeUrl":"./all-people-groups/all-people-groups/index.html","scriptUrl":"./all-people-groups/all-people-groups.js","embed":{"iframe":"\u003ciframe src=\"./all-people-groups/all-people-groups/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./all-people-groups/all-people-groups.js\" integrity=\"sha384-cqk7oshuPW5FdnbZ/DyfBBXN2FObAI+V1jrbxmZR2xzNiBtWG65PETQ5/w5PCDB2\" crossorigin=\"anonymous\">\u003c/script>\n\u003call-people-groups profile-config='{\"profile\":\"all-people-groups\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/all-people-groups>"},"bundle":"all-people-groups"}]},{"bundle":"big-picture","scriptUrl":"./big-picture/big-picture.js","output":"doxa-maps/big-picture/big-picture.js","integrity":"sha384-v0b+aZ7TBxmgUIBBLdKEm6HzwjY3jAGyOFNsKeKCKY4EIRpiWRTcNLavAitHRt8h","elements":["bp-big-picture","bp-research-header","people-groups-grid"],"composes":["bp-research-header","people-groups-grid"],"profiles":[{"profile":"big-picture","file":"big-picture.vue","description":"The Cat-4 composite that PAIRS the two real capability elements of the","element":"bp-big-picture","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./big-picture/big-picture/index.html","scriptUrl":"./big-picture/big-picture.js","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./big-picture/big-picture.js\" integrity=\"sha384-v0b+aZ7TBxmgUIBBLdKEm6HzwjY3jAGyOFNsKeKCKY4EIRpiWRTcNLavAitHRt8h\" crossorigin=\"anonymous\">\u003c/script>\n\u003cbp-big-picture profile-config='{\"profile\":\"big-picture\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/bp-big-picture>"},"instances":[{"id":"big-picture","title":"Big Picture — research header ↔ people-groups grid (composite)","apiBaseUrl":"","props":{"profile":"big-picture","provider":"maplibre","instanceId":"bp-big-picture"},"element":"bp-big-picture","iframeUrl":"./big-picture/big-picture/big-picture/index.html","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/big-picture/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"frontier","title":"Big Picture — frontier accent","apiBaseUrl":"","props":{"profile":"big-picture","provider":"maplibre","instanceId":"bp-big-picture-frontier","accent":"#22d3ee","title":"Big Picture — Frontier Focus"},"element":"bp-big-picture","iframeUrl":"./big-picture/big-picture/frontier/index.html","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/frontier/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"big-picture"}]},{"bundle":"cities-internet","scriptUrl":"./cities-internet/cities-internet.js","output":"doxa-maps/cities-internet/cities-internet.js","integrity":"sha384-tNig8gXdCocWVKD5iXR6iRqiAr7msWFtcFKzYif0L0G5i/RM+HI+SO8oR5c6O+5R","elements":["cities-internet-map"],"profiles":[{"profile":"connectivity-list","file":"connectivity-list.vue","description":"Countries where DX people groups live, grouped by region, showing measured internet penetration","element":"cities-internet-map","type":"single","isMap":false,"iframeUrl":"./cities-internet/connectivity-list/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/connectivity-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-tNig8gXdCocWVKD5iXR6iRqiAr7msWFtcFKzYif0L0G5i/RM+HI+SO8oR5c6O+5R\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"connectivity-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}},{"profile":"connectivity-map","file":"connectivity-map.vue","description":"Every country shaded by measured internet penetration, with its named carriers and dominant","element":"cities-internet-map","type":"single","isMap":true,"iframeUrl":"./cities-internet/connectivity-map/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/connectivity-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-tNig8gXdCocWVKD5iXR6iRqiAr7msWFtcFKzYif0L0G5i/RM+HI+SO8oR5c6O+5R\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"connectivity-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}},{"profile":"data-tables","file":"data-tables.vue","description":"Four validated research tables, one tab each, with sortable and filterable columns, CSV and JSON","element":"cities-internet-map","type":"single","isMap":false,"iframeUrl":"./cities-internet/data-tables/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-tNig8gXdCocWVKD5iXR6iRqiAr7msWFtcFKzYif0L0G5i/RM+HI+SO8oR5c6O+5R\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}}]},{"bundle":"country-posters","scriptUrl":"./country-posters/country-posters.js","output":"doxa-maps/country-posters/country-posters.js","integrity":"sha384-qf7vNfeaN6eW3IlrtzWdAGvwTADFPwwyyvj0OmLg9yTcYLsl7EHMTvrOvW/qM8B3","elements":["country-posters-map"],"composes":["country-posters/country-poster-wall","country-posters/countries-map"],"profiles":[{"profile":"countries-map","file":"countries-map.vue","description":"The researcher's workbench retargeted from people groups to COUNTRIES — region","element":"country-posters-map","type":"single","isMap":true,"iframeUrl":"./country-posters/countries-map/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/countries-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-qf7vNfeaN6eW3IlrtzWdAGvwTADFPwwyyvj0OmLg9yTcYLsl7EHMTvrOvW/qM8B3\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"countries-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}},{"profile":"country-poster-wall","file":"country-poster-wall.vue","description":"One printable card per country, grouped into COLLAPSIBLE regional sections so the","element":"country-posters-map","type":"single","isMap":false,"iframeUrl":"./country-posters/country-poster-wall/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/country-poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-qf7vNfeaN6eW3IlrtzWdAGvwTADFPwwyyvj0OmLg9yTcYLsl7EHMTvrOvW/qM8B3\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"country-poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}},{"profile":"country-posters-mfe","file":"country-posters-mfe.vue","description":"","element":"country-posters-map","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./country-posters/country-posters-mfe/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/country-posters-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-qf7vNfeaN6eW3IlrtzWdAGvwTADFPwwyyvj0OmLg9yTcYLsl7EHMTvrOvW/qM8B3\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"country-posters-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}}]},{"bundle":"dashboard-plus-grid","scriptUrl":"./dashboard-plus-grid/dashboard-plus-grid.js","output":"doxa-maps/dashboard-plus-grid/dashboard-plus-grid.js","integrity":"sha384-YbJgljynZ4t3/Ro44oHQy9ihl9/5o7j4IKts8MNRfA73Cb5cyD7U52DklXjzpLpG","elements":["dashboard-plus-grid"],"composes":["research-dashboard","people-groups-grid"],"profiles":[{"profile":"dashboard-plus-grid","file":"dashboard-plus-grid.vue","description":"Both children are IMPORTED DIRECTLY (compiled into this ONE bundle — no runtime bundle","element":"dashboard-plus-grid","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./dashboard-plus-grid/dashboard-plus-grid/index.html","scriptUrl":"./dashboard-plus-grid/dashboard-plus-grid.js","embed":{"iframe":"\u003ciframe src=\"./dashboard-plus-grid/dashboard-plus-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./dashboard-plus-grid/dashboard-plus-grid.js\" integrity=\"sha384-YbJgljynZ4t3/Ro44oHQy9ihl9/5o7j4IKts8MNRfA73Cb5cyD7U52DklXjzpLpG\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdashboard-plus-grid profile-config='{\"profile\":\"dashboard-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/dashboard-plus-grid>"},"instances":[{"id":"default","title":"default","apiBaseUrl":"","props":{"profile":"dashboard-plus-grid"},"element":"dashboard-plus-grid","iframeUrl":"./dashboard-plus-grid/dashboard-plus-grid/default/index.html","embed":{"iframe":"\u003ciframe src=\"./dashboard-plus-grid/dashboard-plus-grid/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"demo-map","scriptUrl":"./demo-map/demo-map.js","output":"doxa-maps/demo-map/demo-map.js","integrity":"sha384-QiUJUgeFn27tiHKVhAYtJuIWo+1z5xsCUP1Nj4m1H4cFUV3vUA7ADTP58Ky3oVtQ","elements":["demo-map"],"profiles":[{"profile":"demo-map","file":"demo-map.vue","description":"Simple two-tab demo map. Tab 1 colors pins by religion (shared","element":"demo-map","type":"parameterized","isMap":true,"iframeUrl":"./demo-map/demo-map/index.html","scriptUrl":"./demo-map/demo-map.js","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./demo-map/demo-map.js\" integrity=\"sha384-QiUJUgeFn27tiHKVhAYtJuIWo+1z5xsCUP1Nj4m1H4cFUV3vUA7ADTP58Ky3oVtQ\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdemo-map profile-config='{\"profile\":\"demo-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/demo-map>"},"instances":[{"id":"maplibre","title":"Demo map — MapLibre (token-free)","apiBaseUrl":"","props":{"profile":"demo-map","provider":"maplibre","instanceId":"demo-maplibre"},"element":"demo-map","iframeUrl":"./demo-map/demo-map/maplibre/index.html","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/maplibre/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"demo-map"}]},{"bundle":"doxa-maps-spa","scriptUrl":"./doxa-maps-spa/doxa-maps-spa.js","output":"doxa-maps/doxa-maps-spa/doxa-maps-spa.js","integrity":"sha384-Ce+DKsLgwfej+rgoWeaWFuMMbR3Y4H+8io/lVL+lQfX0O3iGKwDLf4remDkHGCrP","elements":["doxa-maps-spa"],"composes":["bp-big-picture","doxa-research-map","doxa-simple-map","cities-internet-map","gospel-resources-map","my-upg-100-list-map"],"profiles":[{"profile":"doxa-maps-spa","file":"doxa-maps-spa.vue","description":"The DX-maps app itself: one element whose vertical-tab rail nests every other","element":"doxa-maps-spa","type":"nested-mfe-spa","isMap":false,"iframeUrl":"./doxa-maps-spa/doxa-maps-spa/index.html","scriptUrl":"./doxa-maps-spa/doxa-maps-spa.js","embed":{"iframe":"\u003ciframe src=\"./doxa-maps-spa/doxa-maps-spa/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-maps-spa/doxa-maps-spa.js\" integrity=\"sha384-Ce+DKsLgwfej+rgoWeaWFuMMbR3Y4H+8io/lVL+lQfX0O3iGKwDLf4remDkHGCrP\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-maps-spa profile-config='{\"profile\":\"doxa-maps-spa\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-maps-spa>"},"instances":[{"id":"app","title":"DX-Maps SPA — Big Picture + every research map (app-shell)","apiBaseUrl":"","props":{"profile":"doxa-maps-spa","provider":"maplibre","instanceId":"doxa-maps-spa-app","title":"DX-Maps"},"element":"doxa-maps-spa","iframeUrl":"./doxa-maps-spa/doxa-maps-spa/app/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-maps-spa/doxa-maps-spa/app/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-research-map","scriptUrl":"./doxa-research-map/doxa-research-map.js","output":"doxa-maps/doxa-research-map/doxa-research-map.js","integrity":"sha384-oecoezttPmpRe5GNG/Yko6IkEbtLjCD7PD7qghU1ZigprnfLKhbf0eBEiEbE24iR","elements":["doxa-research-map"],"profiles":[{"profile":"research-map","file":"research-map.vue","description":"The researcher's workbench: every piece a missiologist, demographer or","element":"doxa-research-map","type":"monolithic","isMap":true,"iframeUrl":"./doxa-research-map/research-map/index.html","scriptUrl":"./doxa-research-map/doxa-research-map.js","embed":{"iframe":"\u003ciframe src=\"./doxa-research-map/research-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-research-map/doxa-research-map.js\" integrity=\"sha384-oecoezttPmpRe5GNG/Yko6IkEbtLjCD7PD7qghU1ZigprnfLKhbf0eBEiEbE24iR\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-research-map profile-config='{\"profile\":\"research-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-research-map>"},"instances":[{"id":"maplibre","title":"Research map — MapLibre (token-free, no search bar)","apiBaseUrl":"","props":{"profile":"research-map","provider":"maplibre","instanceId":"research-map-maplibre"},"element":"doxa-research-map","iframeUrl":"./doxa-research-map/research-map/maplibre/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-research-map/research-map/maplibre/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-simple-map","scriptUrl":"./doxa-simple-map/doxa-simple-map.js","output":"doxa-maps/doxa-simple-map/doxa-simple-map.js","integrity":"sha384-hzEui48BqpW8VhRthz3daMgAdw4w4M3gtBre4ce4sXuAmS+39pMRW9reNAvpFb+W","elements":["doxa-map","doxa-simple-map"],"profiles":[{"profile":"doxa-simple-map","file":"doxa-simple-map.vue","description":"The simple world map, shipped as three presets off ONE prop table —","element":"doxa-map","type":"parameterized","isMap":true,"iframeUrl":"./doxa-simple-map/doxa-simple-map/index.html","scriptUrl":"./doxa-simple-map/doxa-simple-map.js","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-simple-map/doxa-simple-map.js\" integrity=\"sha384-hzEui48BqpW8VhRthz3daMgAdw4w4M3gtBre4ce4sXuAmS+39pMRW9reNAvpFb+W\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-map profile-config='{\"profile\":\"doxa-simple-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-map>"},"instances":[{"id":"prayer","title":"Prayer Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-prayer","dataSource":"pray-tools","tabs":[{"id":"prayer","colorStrategy":"prayer","legend":"prayer","popup":"prayer"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/prayer/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/prayer/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"engagement","title":"Engagement Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-engagement","dataSource":"pray-tools","tabs":[{"id":"engagement","colorStrategy":"engagement","legend":"engagement","popup":"engagement"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/engagement/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/engagement/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"adoption","title":"Adoption Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-adoption","dataSource":"pray-tools","tabs":[{"id":"adoption","colorStrategy":"adoption","legend":"adoption","popup":"adoption"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/adoption/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/adoption/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-vision-card","scriptUrl":"./doxa-vision-card/doxa-vision-card.js","output":"doxa-maps/doxa-vision-card/doxa-vision-card.js","integrity":"sha384-2mza3cltN5LQQIrlENG/IVL6Icd9zzcFve3E8R8VWuCdYOGW9uGKFvxcbu6eFfwn","elements":["doxa-vision-card"],"profiles":[{"profile":"doxa-vision-card","file":"doxa-vision-card.vue","description":"The Capability-1 example: ONE folder -> ONE bundle -> ONE element.","element":"doxa-vision-card","type":"parameterized","isMap":false,"iframeUrl":"./doxa-vision-card/doxa-vision-card/index.html","scriptUrl":"./doxa-vision-card/doxa-vision-card.js","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-vision-card/doxa-vision-card.js\" integrity=\"sha384-2mza3cltN5LQQIrlENG/IVL6Icd9zzcFve3E8R8VWuCdYOGW9uGKFvxcbu6eFfwn\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-vision-card profile-config='{\"profile\":\"doxa-vision-card\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-vision-card>"},"instances":[{"id":"default","title":"Vision card — reach at a glance","apiBaseUrl":"","props":{"profile":"doxa-vision-card","provider":"maplibre","instanceId":"vision-card-default"},"element":"doxa-vision-card","iframeUrl":"./doxa-vision-card/doxa-vision-card/default/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"frontier","title":"Vision card — frontier accent","apiBaseUrl":"","props":{"profile":"doxa-vision-card","provider":"maplibre","instanceId":"vision-card-frontier","accent":"#22d3ee","title":"The last frontier of the gospel.","tagline":"Frontier people groups — where fewer than one in a thousand follow Jesus.","stats":[{"value":"1,910","label":"Frontier groups","note":"under 0.1% believers"},{"value":"2.1B","label":"People","note":"living in frontier settings"},{"value":"0.1%","label":"Christian","note":"or fewer, in each group"}]},"element":"doxa-vision-card","iframeUrl":"./doxa-vision-card/doxa-vision-card/frontier/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/frontier/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"doxa-vision-card"}]},{"bundle":"golden-path-check","scriptUrl":"./golden-path-check/golden-path-check.js","output":"doxa-maps/golden-path-check/golden-path-check.js","integrity":"sha384-1V/sT5SkV0U9yTCK9ELIOFfU1ZIJkInIF6nG3UllJ4dxax3RsEAupSGLJEFK6e14","elements":["golden-path-check"],"profiles":[{"profile":"golden-path-check","file":"golden-path-check.vue","description":"A live self-test of the develop-a-plugin-and-see-it-live path: it reads the built","element":"golden-path-check","type":"single","isMap":false,"iframeUrl":"./golden-path-check/golden-path-check/index.html","scriptUrl":"./golden-path-check/golden-path-check.js","embed":{"iframe":"\u003ciframe src=\"./golden-path-check/golden-path-check/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./golden-path-check/golden-path-check.js\" integrity=\"sha384-1V/sT5SkV0U9yTCK9ELIOFfU1ZIJkInIF6nG3UllJ4dxax3RsEAupSGLJEFK6e14\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgolden-path-check profile-config='{\"profile\":\"golden-path-check\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/golden-path-check>"}}]},{"bundle":"gospel-resources","scriptUrl":"./gospel-resources/gospel-resources.js","output":"doxa-maps/gospel-resources/gospel-resources.js","integrity":"sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI","elements":["gospel-resources-map"],"profiles":[{"profile":"charts","file":"charts.vue","description":"The gap by LANGUAGE (ISO 639-3) rather than by people group — because one translation serves every","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/charts/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/charts/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"charts\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"data-tables","file":"data-tables.vue","description":"Two validated tables: what resources exist per people group, and whether that access is keeping","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/data-tables/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"resources-list","file":"resources-list.vue","description":"Which DX people groups have scripture in their own language, and which have none. The zero-resource","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/resources-list/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/resources-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"resources-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"resources-map","file":"resources-map.vue","description":"Every country shaded by how much of its unengaged population has NO gospel resource in their own","element":"gospel-resources-map","type":"single","isMap":true,"iframeUrl":"./gospel-resources/resources-map/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/resources-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"resources-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}}]},{"bundle":"my-upg-100-list","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","output":"doxa-maps/my-upg-100-list/my-upg-100-list.js","integrity":"sha384-9MM9Wm9yP7JwtlWBL0+xuJ2yHwHD/trEHYrsk0kEKgR4pXXdTNguIE50TqRCUbK2","elements":["my-upg-100-list-map"],"composes":["my-upg-100-list/upg-100-list","my-upg-100-list/poster-wall"],"profiles":[{"profile":"poster-wall","file":"poster-wall.vue","description":"A wall of printable poster cards, one per 100-list entry, each with a \"Show on map\" action that","element":"my-upg-100-list-map","type":"single","isMap":true,"iframeUrl":"./my-upg-100-list/poster-wall/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-9MM9Wm9yP7JwtlWBL0+xuJ2yHwHD/trEHYrsk0kEKgR4pXXdTNguIE50TqRCUbK2\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}},{"profile":"upg-100-list","file":"upg-100-list.vue","description":"A personal unreached-people-groups list painted as true boundary polygons —","element":"my-upg-100-list-map","type":"single","isMap":true,"iframeUrl":"./my-upg-100-list/upg-100-list/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/upg-100-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-9MM9Wm9yP7JwtlWBL0+xuJ2yHwHD/trEHYrsk0kEKgR4pXXdTNguIE50TqRCUbK2\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"upg-100-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}},{"profile":"upg-100-mfe","file":"upg-100-mfe.vue","description":"The standalone, shareable and embeddable composite of the my-upg-100-list family — it nests the map","element":"my-upg-100-list-map","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./my-upg-100-list/upg-100-mfe/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/upg-100-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-9MM9Wm9yP7JwtlWBL0+xuJ2yHwHD/trEHYrsk0kEKgR4pXXdTNguIE50TqRCUbK2\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"upg-100-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}}]},{"bundle":"people-groups-grid","scriptUrl":"./people-groups-grid/people-groups-grid.js","output":"doxa-maps/people-groups-grid/people-groups-grid.js","integrity":"sha384-ss5PmeSkKuxafBwvxZG3r7roP0OB/oVGwFbfrHnydEhjbtrlB4eisdsPXEyCJF37","elements":["people-groups-grid"],"profiles":[{"profile":"people-groups-grid","file":"people-groups-grid.vue","description":"The people-groups grid as an owned custom element: card list, search and four","element":"people-groups-grid","type":"parameterized","isMap":false,"iframeUrl":"./people-groups-grid/people-groups-grid/index.html","scriptUrl":"./people-groups-grid/people-groups-grid.js","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./people-groups-grid/people-groups-grid.js\" integrity=\"sha384-ss5PmeSkKuxafBwvxZG3r7roP0OB/oVGwFbfrHnydEhjbtrlB4eisdsPXEyCJF37\" crossorigin=\"anonymous\">\u003c/script>\n\u003cpeople-groups-grid profile-config='{\"profile\":\"people-groups-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/people-groups-grid>"},"instances":[{"id":"people-groups-grid","title":"People Groups Grid — standalone (own search + 4 dropdowns)","apiBaseUrl":"","props":{"profile":"people-groups-grid","provider":"maplibre","instanceId":"people-groups-grid","pray-base-url":"https://pray.doxa.life"},"element":"people-groups-grid","iframeUrl":"./people-groups-grid/people-groups-grid/people-groups-grid/index.html","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/people-groups-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"driven","title":"People Groups Grid — externally driven (controls off, props/events)","apiBaseUrl":"","props":{"profile":"people-groups-grid","provider":"maplibre","instanceId":"people-groups-grid-driven","pray-base-url":"https://pray.doxa.life","show-search":"false","show-filters":"false"},"element":"people-groups-grid","iframeUrl":"./people-groups-grid/people-groups-grid/driven/index.html","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/driven/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"plugin-studio","scriptUrl":"./plugin-studio/plugin-studio.js","output":"doxa-maps/plugin-studio/plugin-studio.js","integrity":"sha384-2RlLFRU2XdjBN7w+FPguj8INgj57JFg4IFT2AmdefGnR9QQLehbiiAffV45LcsFH","elements":["plugin-studio"],"composes":["bp-big-picture","people-groups-grid","doxa-research-map","doxa-simple-map","cities-internet-map","gospel-resources-map","my-upg-100-list-map","doxa-vision-card","all-people-groups","research-dashboard"],"profiles":[{"profile":"plugin-studio","file":"plugin-studio.vue","description":"The developer's viewing surface: a sidebar that is the composability ladder","element":"plugin-studio","type":"nested-mfe-spa","isMap":false,"iframeUrl":"./plugin-studio/plugin-studio/index.html","scriptUrl":"./plugin-studio/plugin-studio.js","embed":{"iframe":"\u003ciframe src=\"./plugin-studio/plugin-studio/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./plugin-studio/plugin-studio.js\" integrity=\"sha384-2RlLFRU2XdjBN7w+FPguj8INgj57JFg4IFT2AmdefGnR9QQLehbiiAffV45LcsFH\" crossorigin=\"anonymous\">\u003c/script>\n\u003cplugin-studio profile-config='{\"profile\":\"plugin-studio\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/plugin-studio>"},"instances":[{"id":"studio","title":"Plugin Studio — every element by capability 5 -> 1 (developer studio)","apiBaseUrl":"","props":{"profile":"plugin-studio","provider":"maplibre","instanceId":"plugin-studio","title":"Plugin Studio"},"element":"plugin-studio","iframeUrl":"./plugin-studio/plugin-studio/studio/index.html","embed":{"iframe":"\u003ciframe src=\"./plugin-studio/plugin-studio/studio/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"prayer-walk-planner","scriptUrl":"./prayer-walk-planner/prayer-walk-planner.js","output":"doxa-maps/prayer-walk-planner/prayer-walk-planner.js","integrity":"sha384-F0+r4avX8xkXp0hBpU5EBPU0InMRCObIn2Ieh9HJNn1r2amk8/qHmJ68WuNfsirC","elements":["prayer-walk-planner"],"profiles":[{"profile":"prayer-walk-planner","file":"prayer-walk-planner.vue","description":"A simple polygon-drawing tool for planning prayer-walking routes.","element":"prayer-walk-planner","type":"single","isMap":true,"iframeUrl":"./prayer-walk-planner/prayer-walk-planner/index.html","scriptUrl":"./prayer-walk-planner/prayer-walk-planner.js","embed":{"iframe":"\u003ciframe src=\"./prayer-walk-planner/prayer-walk-planner/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./prayer-walk-planner/prayer-walk-planner.js\" integrity=\"sha384-F0+r4avX8xkXp0hBpU5EBPU0InMRCObIn2Ieh9HJNn1r2amk8/qHmJ68WuNfsirC\" crossorigin=\"anonymous\">\u003c/script>\n\u003cprayer-walk-planner profile-config='{\"profile\":\"prayer-walk-planner\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/prayer-walk-planner>"}}]},{"bundle":"regions-dashboard","scriptUrl":"./regions-dashboard/regions-dashboard.js","output":"doxa-maps/regions-dashboard/regions-dashboard.js","integrity":"sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix","elements":["regions-dashboard"],"composes":["regions-dashboard/regions-list","regions-dashboard/region-dashboards"],"profiles":[{"profile":"region-dashboards","file":"region-dashboards.vue","description":"The dashboard half of the Driver's 2-tab Regions element: given a region (or a","element":"regions-dashboard","type":"single","isMap":true,"iframeUrl":"./regions-dashboard/region-dashboards/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/region-dashboards/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"region-dashboards\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}},{"profile":"regions-list","file":"regions-list.vue","description":"A refactor of DX-life's /regions index page (app/pages/regions/index.vue) into","element":"regions-dashboard","type":"single","isMap":true,"iframeUrl":"./regions-dashboard/regions-list/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/regions-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"regions-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}},{"profile":"regions-mfe","file":"regions-mfe.vue","description":"The composite the Driver asked for: ONE element carrying the SELECT VIEW switcher","element":"regions-dashboard","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./regions-dashboard/regions-mfe/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/regions-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"regions-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}}]},{"bundle":"research-dashboard","scriptUrl":"./research-dashboard/research-dashboard.js","output":"doxa-maps/research-dashboard/research-dashboard.js","integrity":"sha384-VvOYWBcDd7NtnB1eveECKX88ZHIpGnOf79tVdCUqGZzXLgoZPc+oTTPIC3ajaYsn","elements":["research-dashboard-map"],"profiles":[{"profile":"research-dashboard","file":"research-dashboard.vue","description":"Coordinated-Multiple-Views research dashboard for 10/40-window UPGs (live pray.doxa.life): docked facet rail + map-as-hero + linked table/charts, brushing-and-linking over one in-memory store.","element":"research-dashboard-map","type":"monolithic","isMap":true,"iframeUrl":"./research-dashboard/research-dashboard/index.html","scriptUrl":"./research-dashboard/research-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./research-dashboard/research-dashboard/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./research-dashboard/research-dashboard.js\" integrity=\"sha384-VvOYWBcDd7NtnB1eveECKX88ZHIpGnOf79tVdCUqGZzXLgoZPc+oTTPIC3ajaYsn\" crossorigin=\"anonymous\">\u003c/script>\n\u003cresearch-dashboard-map profile-config='{\"profile\":\"research-dashboard\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/research-dashboard-map>"},"bundle":"research-dashboard"}]},{"bundle":"research-map-plus-grid","scriptUrl":"./research-map-plus-grid/research-map-plus-grid.js","output":"doxa-maps/research-map-plus-grid/research-map-plus-grid.js","integrity":"sha384-sOkaMV0UFr2uNXfoJpRvaD+gHD6xFlkmpR7MzEwwFdarYdid8aN9Nj1Y8TqQJuFo","elements":["research-map-plus-grid"],"composes":["doxa-research-map","people-groups-grid"],"profiles":[{"profile":"research-map-plus-grid","file":"research-map-plus-grid.vue","description":"The monolithic 7-tab research map (cap-3) on top, the People Groups grid beneath,","element":"research-map-plus-grid","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./research-map-plus-grid/research-map-plus-grid/index.html","scriptUrl":"./research-map-plus-grid/research-map-plus-grid.js","embed":{"iframe":"\u003ciframe src=\"./research-map-plus-grid/research-map-plus-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./research-map-plus-grid/research-map-plus-grid.js\" integrity=\"sha384-sOkaMV0UFr2uNXfoJpRvaD+gHD6xFlkmpR7MzEwwFdarYdid8aN9Nj1Y8TqQJuFo\" crossorigin=\"anonymous\">\u003c/script>\n\u003cresearch-map-plus-grid profile-config='{\"profile\":\"research-map-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/research-map-plus-grid>"},"instances":[{"id":"default","title":"default","apiBaseUrl":"","props":{"profile":"research-map-plus-grid"},"element":"research-map-plus-grid","iframeUrl":"./research-map-plus-grid/research-map-plus-grid/default/index.html","embed":{"iframe":"\u003ciframe src=\"./research-map-plus-grid/research-map-plus-grid/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"stack-demo","scriptUrl":"./stack-demo/stack-demo.js","output":"doxa-maps/stack-demo/stack-demo.js","integrity":"sha384-gnwM6s+puf1K60Nl7crQcC2QC+9BxwpkaTx4OepLZ8VUCraZc+aRlWpsb6nj6Gyf","elements":["stack-demo"],"composes":["research-dashboard-map","people-groups-grid"],"profiles":[{"profile":"stack-demo","file":"stack-demo.vue","description":"Groups TWO independent elements TOP-TO-BOTTOM so you can embed the pair on a page and","element":"stack-demo","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./stack-demo/stack-demo/index.html","scriptUrl":"./stack-demo/stack-demo.js","embed":{"iframe":"\u003ciframe src=\"./stack-demo/stack-demo/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./stack-demo/stack-demo.js\" integrity=\"sha384-gnwM6s+puf1K60Nl7crQcC2QC+9BxwpkaTx4OepLZ8VUCraZc+aRlWpsb6nj6Gyf\" crossorigin=\"anonymous\">\u003c/script>\n\u003cstack-demo profile-config='{\"profile\":\"stack-demo\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/stack-demo>"},"instances":[{"id":"pair","title":"pair","apiBaseUrl":"","props":{"profile":"stack-demo"},"element":"stack-demo","iframeUrl":"./stack-demo/stack-demo/pair/index.html","embed":{"iframe":"\u003ciframe src=\"./stack-demo/stack-demo/pair/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"template-bundle","scriptUrl":"./template-bundle/template-bundle.js","output":"doxa-maps/template-bundle/template-bundle.js","integrity":"sha384-k+G5UlkZ99QmuecCCWUrjz998JBJnQT3hsDG0A+IVmiX9F3CNswmHXXzYhjnUTDX","elements":["template-bundle"],"profiles":[{"profile":"template-map-a","file":"template-map-a.vue","description":"Minimal example profile A — a colored placeholder, no Mapbox or data.","element":"template-bundle","type":"single","isMap":false,"iframeUrl":"./template-bundle/template-map-a/index.html","scriptUrl":"./template-bundle/template-bundle.js","embed":{"iframe":"\u003ciframe src=\"./template-bundle/template-map-a/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./template-bundle/template-bundle.js\" integrity=\"sha384-k+G5UlkZ99QmuecCCWUrjz998JBJnQT3hsDG0A+IVmiX9F3CNswmHXXzYhjnUTDX\" crossorigin=\"anonymous\">\u003c/script>\n\u003ctemplate-bundle profile-config='{\"profile\":\"template-map-a\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/template-bundle>"},"bundle":"template-bundle"},{"profile":"template-map-b","file":"template-map-b.vue","description":"Minimal example profile B — a second profile in the same bundle.","element":"template-bundle","type":"single","isMap":false,"iframeUrl":"./template-bundle/template-map-b/index.html","scriptUrl":"./template-bundle/template-bundle.js","embed":{"iframe":"\u003ciframe src=\"./template-bundle/template-map-b/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./template-bundle/template-bundle.js\" integrity=\"sha384-k+G5UlkZ99QmuecCCWUrjz998JBJnQT3hsDG0A+IVmiX9F3CNswmHXXzYhjnUTDX\" crossorigin=\"anonymous\">\u003c/script>\n\u003ctemplate-bundle profile-config='{\"profile\":\"template-map-b\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/template-bundle>"},"bundle":"template-bundle"}]},{"bundle":"upg-neighbor","scriptUrl":"./upg-neighbor/upg-neighbor.js","output":"doxa-maps/upg-neighbor/upg-neighbor.js","integrity":"sha384-JDJr4qoVZuiSi/rvgdzeuUNrzf7vjPdyh/g8dg7X8RHkZk/Y+tYXIQ3gpEzrU07q","elements":["upg-neighbor"],"profiles":[{"profile":"upg-neighbor","file":"upg-neighbor.vue","description":"Rescues the three pre-bundler experimental maps that live inside the legacy","element":"upg-neighbor","type":"parameterized","isMap":false,"iframeUrl":"./upg-neighbor/upg-neighbor/index.html","scriptUrl":"./upg-neighbor/upg-neighbor.js","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./upg-neighbor/upg-neighbor.js\" integrity=\"sha384-JDJr4qoVZuiSi/rvgdzeuUNrzf7vjPdyh/g8dg7X8RHkZk/Y+tYXIQ3gpEzrU07q\" crossorigin=\"anonymous\">\u003c/script>\n\u003cupg-neighbor profile-config='{\"profile\":\"upg-neighbor\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/upg-neighbor>"},"instances":[{"id":"send-map","title":"Send Map (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"send-map","legacyTitle":"Send Map"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/send-map/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/send-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"upg-neighbors","title":"UPG Neighbors (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"upg-neighbors","legacyTitle":"UPG Neighbors"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/upg-neighbors/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/upg-neighbors/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"lang-cluster","title":"Language Clusters (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"lang-cluster","legacyTitle":"Language Clusters"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/lang-cluster/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/lang-cluster/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"bloom-cockpit","title":"Bloom Cockpit (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"bloom-cockpit","legacyTitle":"Bloom Cockpit"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/bloom-cockpit/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/bloom-cockpit/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"flower-mesh","title":"Flower Mesh (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"flower-mesh","legacyTitle":"Flower Mesh"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/flower-mesh/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/flower-mesh/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]}]}; \n\n" + "script": "\n\n" } }, { @@ -692,7 +692,7 @@ "scriptUrl": "./my-upg-100-list/my-upg-100-list.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -706,7 +706,7 @@ "scriptUrl": "./my-upg-100-list/my-upg-100-list.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } } ] @@ -856,7 +856,7 @@ "bundle": "regions-dashboard", "scriptUrl": "./regions-dashboard/regions-dashboard.js", "output": "doxa-maps/regions-dashboard/regions-dashboard.js", - "integrity": "sha384-m0oYmznVWyPr1zjczK7blpSJD7Sy+MyaKqtnspn474Hm8+fx7fxIiLgf0P3OXQtr", + "integrity": "sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix", "elements": [ "regions-dashboard" ], @@ -876,7 +876,7 @@ "scriptUrl": "./regions-dashboard/regions-dashboard.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -890,7 +890,7 @@ "scriptUrl": "./regions-dashboard/regions-dashboard.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -904,7 +904,7 @@ "scriptUrl": "./regions-dashboard/regions-dashboard.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } } ] diff --git a/public/doxa-maps/my-upg-100-list/my-upg-100-list.js b/public/doxa-maps/my-upg-100-list/my-upg-100-list.js index 0b5ee047e..91ca4cb3e 100644 --- a/public/doxa-maps/my-upg-100-list/my-upg-100-list.js +++ b/public/doxa-maps/my-upg-100-list/my-upg-100-list.js @@ -22,7 +22,7 @@ * pinia v2.3.1 * (c) 2025 Eduardo San Martin Morote * @license MIT - */let Ac;const rr=e=>Ac=e,Sc=Symbol();function bs(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var ra;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(ra||(ra={}));function lh(){const e=Ir(!0),t=e.run(()=>de({}));let o=[],n=[];const a=qo({install(r){rr(a),a._a=r,r.provide(Sc,a),r.config.globalProperties.$pinia=a,n.forEach(s=>o.push(s)),n=[]},use(r){return this._a?o.push(r):n.push(r),this},_p:o,_a:null,_e:e,_s:new Map,state:t});return a}const $c=()=>{};function Ec(e,t,o,n=$c){e.push(t);const a=()=>{const r=e.indexOf(t);r>-1&&(e.splice(r,1),n())};return!o&&Bi()&&Np(a),a}function wn(e,...t){e.slice().forEach(o=>{o(...t)})}const ch=e=>e(),Cc=Symbol(),ys=Symbol();function _s(e,t){e instanceof Map&&t instanceof Map?t.forEach((o,n)=>e.set(n,o)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const o in t){if(!t.hasOwnProperty(o))continue;const n=t[o],a=e[o];bs(a)&&bs(n)&&e.hasOwnProperty(o)&&!st(n)&&!vo(n)?e[o]=_s(a,n):e[o]=n}return e}const uh=Symbol();function dh(e){return!bs(e)||!e.hasOwnProperty(uh)}const{assign:Fo}=Object;function ph(e){return!!(st(e)&&e.effect)}function gh(e,t,o,n){const{state:a,actions:r,getters:s}=t,i=o.state.value[e];let l;function u(){i||(o.state.value[e]=a?a():{});const c=tg(o.state.value[e]);return Fo(c,r,Object.keys(s||{}).reduce((p,g)=>(p[g]=qo(te(()=>{rr(o);const k=o._s.get(e);return s[g].call(k,k)})),p),{}))}return l=Lc(e,u,t,o,n,!0),l}function Lc(e,t,o={},n,a,r){let s;const i=Fo({actions:{}},o),l={deep:!0};let u,c,p=[],g=[],k;const w=n.state.value[e];!r&&!w&&(n.state.value[e]={});let _;function d(T){let I;u=c=!1,typeof T=="function"?(T(n.state.value[e]),I={type:ra.patchFunction,storeId:e,events:k}):(_s(n.state.value[e],T),I={type:ra.patchObject,payload:T,storeId:e,events:k});const H=_=Symbol();lo().then(()=>{_===H&&(u=!0)}),c=!0,wn(p,I,n.state.value[e])}const h=r?function(){const{state:I}=o,H=I?I():{};this.$patch(W=>{Fo(W,H)})}:$c;function f(){s.stop(),p=[],g=[],n._s.delete(e)}const m=(T,I="")=>{if(Cc in T)return T[ys]=I,T;const H=function(){rr(n);const W=Array.from(arguments),re=[],P=[];function $(N){re.push(N)}function M(N){P.push(N)}wn(g,{args:W,name:H[ys],store:x,after:$,onError:M});let C;try{C=T.apply(this&&this.$id===e?this:x,W)}catch(N){throw wn(P,N),N}return C instanceof Promise?C.then(N=>(wn(re,N),N)).catch(N=>(wn(P,N),Promise.reject(N))):(wn(re,C),C)};return H[Cc]=!0,H[ys]=I,H},v={_p:n,$id:e,$onAction:Ec.bind(null,g),$patch:d,$reset:h,$subscribe(T,I={}){const H=Ec(p,T,I.detached,()=>W()),W=s.run(()=>ct(()=>n.state.value[e],re=>{(I.flush==="sync"?c:u)&&T({storeId:e,type:ra.direct,events:k},re)},Fo({},l,I)));return H},$dispose:f},x=pn(v);n._s.set(e,x);const S=(n._a&&n._a.runWithContext||ch)(()=>n._e.run(()=>(s=Ir()).run(()=>t({action:m}))));for(const T in S){const I=S[T];if(st(I)&&!ph(I)||vo(I))r||(w&&dh(I)&&(st(I)?I.value=w[T]:_s(I,w[T])),n.state.value[e][T]=I);else if(typeof I=="function"){const H=m(I,T);S[T]=H,i.actions[T]=I}}return Fo(x,S),Fo(Be(x),S),Object.defineProperty(x,"$state",{get:()=>n.state.value[e],set:T=>{d(I=>{Fo(I,T)})}}),n._p.forEach(T=>{Fo(x,s.run(()=>T({store:x,app:n._a,pinia:n,options:i})))}),w&&r&&o.hydrate&&o.hydrate(x.$state,w),u=!0,c=!0,x}/*! #__NO_SIDE_EFFECTS__ */function vs(e,t,o){let n,a;const r=typeof t=="function";typeof e=="string"?(n=e,a=r?o:t):(a=e,n=e.id);function s(i,l){const u=mg();return i=i||(u?Fe(Sc,null):null),i&&rr(i),i=Ac,i._s.has(n)||(r?Lc(n,t,a,i):gh(n,a,i)),i._s.get(n)}return s.$id=n,s}const ks="__doxaMapToken",ws="doxa:map-token",Tc="__doxaMapTokenBridge",xn=()=>{if(typeof window>"u")return"";const e=window[ks];return typeof e=="string"?e:""};function Pc(e){if(typeof window>"u")return"";const t=typeof e=="string"?e.trim():"";if(!t||t===xn())return xn();window[ks]=t;try{window.dispatchEvent(new CustomEvent(ws,{detail:t}))}catch{}return t}function fh(){if(typeof window>"u"||window[Tc])return;const e=typeof window.MAP_TOKEN=="string"?window.MAP_TOKEN:"";e&&!xn()&&(window[ks]=e);try{Object.defineProperty(window,"MAP_TOKEN",{configurable:!0,get(){return xn()},set(t){Pc(t)}}),window[Tc]=!0}catch{}}function hh(){fh();const e=de(xn());if(typeof window<"u"){const t=()=>{e.value=xn()};window.addEventListener(ws,t);try{uo(()=>window.removeEventListener(ws,t))}catch{}}return e}function Mc(e){return Eg({loader:e,onError(t,o,n,a){a<=3?setTimeout(o,a*500):n()}})}const mh={backToLegend:"العودة إلى المفتاح",closeDetailView:"إغلاق عرض التفاصيل"},bh={prayForThem:"صلِّ من أجلهم",adoptThem:"تبنَّهم",moreInfo:"مزيد من المعلومات",zoomIn:"تكبير",zoomOut:"تصغير",switchToLightMode:"التبديل إلى الوضع الفاتح",switchToDarkMode:"التبديل إلى الوضع الداكن",resetView:"إعادة تعيين العرض",toggleFullscreen:"تبديل ملء الشاشة",aboutThisMap:"حول هذه الخريطة",closeMenu:"إغلاق القائمة",reloadMap:"إعادة تحميل الخريطة",showClusters:"إظهار المجموعات",clusterSettings:"إعدادات المجموعات",startAutoFly:"بدء الطيران التلقائي",stopFlight:"إيقاف الطيران",speedLabel:"السرعة:",speedOption:{slow:"بطيء",normal:"عادي",fast:"سريع"},shareEmbed:"مشاركة وتضمين"},yh={labels:{country:"الدولة:",population:"السكان:",language:"اللغة:",religion:"الديانة:",languageFamily:"العائلة اللغوية:",peopleCommitted:"ملتزمون بالصلاة:"},messages:{noDescription:"لا يوجد وصف متاح."}},_h={title:{prayer:"تقدم الصلاة",engagement:"تقدم الانخراط",adoption:"تقدم التبني",languageFamilies:"العائلات اللغوية",doxaRegions:"مناطق Doxa",affinityBlocs:"كتل القرابة",gospelResources:"موارد الإنجيل"},header:{collapsed:"وسيلة الإيضاح",peopleGroupFallback:"مجموعة الشعب"},prayer:{needsPrayer:"يحتاج إلى صلاة",hasPrayer:"لديه صلاة",fullPrayerCoverage:"تغطية صلاة كاملة"},progress:{title:"التقدم",covered:"{covered} من {total} مجموعة شعبية مغطاة بالصلاة · {pct}%",short:"{covered} من {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"يحتاج إلى انخراط",hasEngagement:"لديه انخراط"},adoption:{needsAdoption:"يحتاج إلى تبني",hasAdoption:"لديه تبني"},columns:{upgs:"UUPGs",population:"السكان",name:"الاسم"},footer:{total:"الإجمالي"},sortByUpgs:"ترتيب حسب UUPG",sortByPop:"ترتيب حسب السكان",colLabel:{religion:"ديانات UUPG",prayer:"حالة الصلاة",engagement:"حالة المشاركة",adoption:"حالة التبني",status:"الحالة"},titleBar:{legend:"مفتاح الخريطة",peopleGroups:"الشعوب",wagfRegions:"مناطق WAGF",languages:"اللغات"}},vh={menuComingSoon:"القائمة قادمة قريباً"},kh={clusterByRegion:"حسب منطقة Doxa",clusterByLanguageFamily:"حسب العائلة اللغوية",clusterByGospelResource:"حسب مورد الإنجيل"},wh={header:"دورة الصلاة الحالية",lap:"الدورة",upgs:"UUPGs",separator:" من "},xh={"%count% people groups in %countries% countries":"%count% مجموعة بشرية في %countries% دولة","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"تضم %region% %count% مجموعة بشرية في %countries% دولة. يشير لون كل نقطة إلى عدد الأشخاص الذين يصلّون من أجل تلك المجموعة البشرية.","1+ People Praying":"شخص واحد أو أكثر يصلّي","100+ People Praying":"أكثر من 100 شخص يصلّون",Adopted:"تم انتماؤه","Adoption Progress":"تقدُّم الإنتماء","All Regions":"جميع المناطق","Alternate Names":"الأسماء البديلة","Clear All":"مسح الكل",Countries:"الدول","Countries in this region":"الدول في هذه المنطقة",Country:"الدولة",Engaged:"مُنخرَط","Engagement Progress":"تقدُّم الانخراط","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"كل مجموعة بشرية غير مبشرة تتبناها كنيسة ملتزمة بالصلاة والعطاء والإرسال","Exact Search":"بحث دقيق","Find unreached people groups by region and country.":"ابحث عن المجموعات البشرية غير المُبلَّغة حسب المنطقة والدولة.","Full Profile":"الملف الشخصي الكامل",Goal:"الهدف","Hide Filters":"إخفاء المرشحات",Intercessors:"المتشفعين","Load More":"تحميل المزيد","Loading results...":"النتائج قيد التحميل...","Mobilize 100+ people praying daily for each DOXA people group":"حشد أكثر من 100 شخص للصلاة يوميًا من أجل كل مجموعة بشرية من مجموعات دوكسا","No One Praying":"لا أحد يصلّي","No options found":"لم يتم العثور على أي خيارات","No unengaged people groups by 2033":"الهدف هو القضاء على جميع الشعوب الغير مخدومة روحيا بحلول عام 2033","Not Adopted":"لم يتم انتماؤه",Other:"أخرى","Page Not Found":"الصفحة غير موجودة","People Group":"مجموعة بشرية","People Groups":"مجموعات بشرية","People committed to praying":"الأشخاص الذين التزموا بالصلاة",Population:"عدد السكان","Prayer Coverage":"التغطية المستمرة بالصلاة","Prayer coverage progress":"تقدم تغطية الصلاة",Regions:"المناطق",Religion:"الدين","Search names, country/continent, religions...":"إبحث عن الأسماء، الدولة/القارة، الأديان...","See %region% dashboard":"عرض لوحة معلومات %region%","See All":"عرض جميع العناصر",Select:"اختر","Show Filters":"إظهار عوامل التصفية","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"توجد %count% مجموعات بشرية في %country%. تحقق من الخريطة لمعرفة المجموعات البشرية الواقعة على حدود هذه الدولة أيضًا.",Total:"المجموع","Type to search...":"اكتب ما تريد البحث عنه...","Unengaged people groups":"الشعوب الغير متفاعلة","WAGF Block":"كتلة WAGF","WAGF Region":"منطقة WAGF","people groups adopted":"الشعوب المنتمية","people groups engaged":"مجموعات بشرية مُنخرِطة"},Ah={placeholder:"شعب، مكان، لغة، ديانة",labels:{people:"الشعب:",place:"المكان:",language:"اللغة:",religion:"الديانة:"},kinds:{people:"الشعب + الدولة",peopleGroup:"الشعب",bloc:"كتلة التقارب",cluster:"مجموعة شعوب",country:"الدولة",region:"المنطقة",family:"عائلة اللغة",languageKind:"اللغة",dialect:"اللهجة",religionKind:"الدين"}},Sh={prayer:"الصلاة",adoption:"التبني",engagement:"المشاركة","affinity-blocks":"الشعوب",regions:"المناطق",countries:"الدول","language-families":"اللغات",religion:"الأديان",family:"عائلة اللغة",language:"اللغة",dialect:"اللهجة/التنوع",bloc:"كتلة التقارب",cluster:"المجموعة",group:"الشعب",pgic:"الشعب في الدولة",region:"منطقة WAGF",block:"كتلة WAGF",country:"الدولة"},$h={backToLegend:"Zurück zur Legende",closeDetailView:"Detailansicht schließen"},Eh={prayForThem:"Für sie beten",adoptThem:"Sie adoptieren",moreInfo:"Mehr Infos",zoomIn:"Vergrößern",zoomOut:"Verkleinern",switchToLightMode:"Zum hellen Modus wechseln",switchToDarkMode:"Zum dunklen Modus wechseln",resetView:"Ansicht zurücksetzen",toggleFullscreen:"Vollbild umschalten",aboutThisMap:"Über diese Karte",closeMenu:"Menü schließen",reloadMap:"Karte neu laden",showClusters:"Cluster anzeigen",clusterSettings:"Cluster-Einstellungen",startAutoFly:"Auto-Flug starten",stopFlight:"Flug stoppen",speedLabel:"Geschwindigkeit:",speedOption:{slow:"Langsam",normal:"Normal",fast:"Schnell"},shareEmbed:"Teilen und einbetten"},Ch={labels:{country:"Land:",population:"Bevölkerung:",language:"Sprache:",religion:"Religion:",languageFamily:"Sprachfamilie:",peopleCommitted:"Zum Gebet verpflichtet:"},messages:{noDescription:"Keine Beschreibung verfügbar."}},Lh={title:{prayer:"Gebetsfortschritt",engagement:"Engagement-Fortschritt",adoption:"Adoptionsfortschritt",languageFamilies:"Sprachfamilien",doxaRegions:"Doxa-Regionen",affinityBlocs:"Affinitätsblöcke",gospelResources:"Evangeliumsressourcen"},header:{collapsed:"Legende",peopleGroupFallback:"Volksgruppe"},prayer:{needsPrayer:"Braucht Gebet",hasPrayer:"Hat Gebet",fullPrayerCoverage:"Vollständige Gebetsabdeckung"},progress:{title:"Fortschritt",covered:"{covered} von {total} Volksgruppen im Gebet abgedeckt · {pct}%",short:"{covered} von {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Braucht Engagement",hasEngagement:"Hat Engagement"},adoption:{needsAdoption:"Braucht Adoption",hasAdoption:"Hat Adoption"},columns:{upgs:"UUPGs",population:"Bevölkerung"},footer:{total:"Gesamt"}},Th={menuComingSoon:"Menü folgt in Kürze"},Ph={clusterByRegion:"Nach Doxa-Region",clusterByLanguageFamily:"Nach Sprachfamilie",clusterByGospelResource:"Nach Evangeliumsressource"},Mh={header:"AKTUELLE GEBETSRUNDE",lap:"Runde",upgs:"UUPGs",separator:" von "},Nh={"%count% people groups in %countries% countries":"%count% Volksgruppen in %countries% Ländern","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% hat %count% Volksgruppen in %countries% Ländern. Die Farbe jedes Punktes zeigt, wie viele Menschen für diese Volksgruppe beten.","1+ People Praying":"1+ Menschen beten","100+ People Praying":"100+ Menschen beten",Adopted:"Angenommen","Adoption Progress":"Adoptionsfortschritt","All Regions":"Alle Regionen","Alternate Names":"Alternative Namen","Clear All":"Alle löschen",Countries:"Länder","Countries in this region":"Länder in dieser Region",Country:"Land",Engaged:"Engagiert","Engagement Progress":"Engagement-Fortschritt","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Jede einzelne der völlig unerreichten Volksgruppen soll von einer Ortsgemeinde adoptiert werden, durch Beten, Geben und Senden","Exact Search":"Exakte Suche","Find unreached people groups by region and country.":"Finde unerreichte Volksgruppen nach Region und Land.","Full Profile":"Vollständiges Profil",Goal:"Ziel","Hide Filters":"Filter ausblenden",Intercessors:"Fürbitter","Load More":"Mehr laden","Loading results...":"Ergebnisse werden geladen...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilisiere 100+ Menschen, die täglich für jede DOXA-Volksgruppe beten","No One Praying":"Niemand betet","No options found":"Keine Standorte gefunden","No unengaged people groups by 2033":"Dass es bis 2033 keine völlig unerreichte Volksgruppe mehr gibt","Not Adopted":"noch nicht adoptiert",Other:"Andere","Page Not Found":"Seite nicht gefunden","People Group":"Personengruppe","People Groups":"Volksgruppen","People committed to praying":"Menschen, die sich dem Beten verpflichtet haben",Population:"Bevölkerung","Prayer Coverage":"Gebetsabdeckung","Prayer coverage progress":"Fortschritt der Gebetsabdeckung",Regions:"Regionen",Religion:"Primäre Religion","Search names, country/continent, religions...":"Suche nach Namen, Land/Kontinent, Religionen...","See %region% dashboard":"Dashboard anzeigen: %region%","See All":"Alle anzeigen",Select:"Auswählen","Show Filters":"Filter anzeigen","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"In %country% gibt es %count% Volksgruppen. Sieh auch auf der Karte nach den Volksgruppen an der Grenze dieses Landes.",Total:"Gesamt","Type to search...":"Geben Sie etwas ein, um danach zu suchen","Unengaged people groups":"Völlig unerreichte Volksgruppen","WAGF Block":"WAGF-Block","WAGF Region":"WAGF-Region","people groups adopted":"adoptierte Volksgruppen","people groups engaged":"engagierte Volksgruppen"},Rh={placeholder:"Volk, Ort, Sprache, Religion",labels:{people:"Volk:",place:"Ort:",language:"Sprache:",religion:"Religion:"},sections:{within:"Innerhalb {selection}",allData:"Alle DOXA-Daten"}},Ih={prayer:"Gebet",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Volksgruppen",regions:"Regionen",countries:"Länder","language-families":"Sprachen",religion:"Religionen",family:"Sprachfamilie",language:"Sprache",dialect:"Dialekt/Varietät",bloc:"Affinitätsblock",cluster:"Cluster",group:"Volksgruppe",pgic:"Volksgruppe im Land",region:"WAGF-Region",block:"WAGF-Block",country:"Land"},Oh={backToLegend:"Back to Legend",closeDetailView:"Close detail view"},Fh={prayForThem:"Pray for them",adoptThem:"Adopt",moreInfo:"More info",zoomIn:"Zoom in",zoomOut:"Zoom out",switchToLightMode:"Switch to light mode",switchToDarkMode:"Switch to dark mode",resetView:"Reset view",toggleFullscreen:"Toggle fullscreen",aboutThisMap:"About this map",closeMenu:"Close menu",reloadMap:"Reload Map",showClusters:"Show Clusters",clusterSettings:"Cluster Settings",startAutoFly:"Start Auto Fly",stopFlight:"Stop Flight",speedLabel:"Speed:",speedOption:{slow:"Slow",normal:"Normal",fast:"Fast"},shareEmbed:"Share & embed",shareSteps:["Embed this map on your site","Create a list of the websites in your city","Train them to embed it too","Train them to train others to embed it too","Multiply maps everywhere for Jesus!"],share:"Share"},Dh={labels:{country:"Country:",population:"Population:",language:"Language:",religion:"Religion:",languageFamily:"Language Family:",peopleCommitted:"Committed to pray:"},messages:{noDescription:"No description available."}},Bh={title:{prayer:"Prayer Progress",engagement:"Engagement Progress",adoption:"Adoption Progress",languageFamilies:"Language Families",doxaRegions:"Doxa Regions",affinityBlocs:"Affinity Blocks",gospelResources:"Gospel Resources"},header:{default:"Legend",collapsed:"Legend",peopleGroupFallback:"People Group"},prayer:{needsPrayer:"Needs Prayer",hasPrayer:"Has Prayer",fullPrayerCoverage:"Full Prayer Coverage"},progress:{title:"Progress",covered:"{covered} of {total} people groups covered in prayer · {pct}%",short:"{covered} of {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Unengaged",hasEngagement:"Engaged"},adoption:{needsAdoption:"Needs Adoption",hasAdoption:"Has Adoption"},columns:{upgs:"UUPGs",population:"Population",name:"Name"},footer:{total:"Total"},sortByUpgs:"Sort by UUPGs",sortByPop:"Sort by Population",colLabel:{religion:"UUPG Religions",prayer:"Prayer Status",engagement:"Engagement Status",adoption:"Adoption Status",status:"Status"},titleBar:{legend:"Legend",peopleGroups:"People Groups",wagfRegions:"WAGF Regions",languages:"Languages"}},Gh={menuComingSoon:"Menu coming soon"},jh={clusterByRegion:"By Doxa Region",clusterByLanguageFamily:"By Language Family",clusterByGospelResource:"By Gospel Resource"},Uh={country:{wagfRegion:"WAGF Region",wagfBlock:"WAGF Bloc",country:"Country",uupgCount:"UUPG Count"}},Kh={header:"CURRENT PRAYER LAP",lap:"Lap",upgs:"UUPGs",separator:" of "},zh={"%count% people groups in %countries% countries":"%count% people groups in %countries% countries","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.","1+ People Praying":"1+ People Praying","100+ People Praying":"100+ People Praying",Adopted:"Adopted","Adoption Progress":"Adoption Progress","All Regions":"All Regions","Alternate Names":"Alternate Names","Clear All":"Clear All",Countries:"Countries","Countries in this region":"Countries in this region",Country:"Country",Engaged:"Engaged","Engagement Progress":"Engagement Progress","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Every unengaged people group adopted by a church committed to prayer, giving, and sending","Exact Search":"Exact Search","Find unreached people groups by region and country.":"Find unreached people groups by region and country.","Full Profile":"Full Profile",Goal:"Goal","Hide Filters":"Hide Filters",Intercessors:"Intercessors","Load More":"Load More","Loading results...":"Loading results...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilize 100+ people praying daily for each DOXA people group","No One Praying":"No One Praying","No options found":"No options found","No unengaged people groups by 2033":"No unengaged people groups by 2033","Not Adopted":"Not Adopted",Other:"Other","Page Not Found":"Page Not Found","People Group":"People Group","People Groups":"People Groups","People committed to praying":"People committed to praying",Population:"Population","Prayer Coverage":"Prayer Coverage","Prayer coverage progress":"Prayer coverage progress",Regions:"Regions",Religion:"Religion","Search names, country/continent, religions...":"Search names, country/continent, religions...","See %region% dashboard":"See %region% dashboard","See All":"See All",Select:"Select","Show Filters":"Show Filters","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.",Total:"Total","Type to search...":"Type to search...","Unengaged people groups":"Unengaged people groups","WAGF Block":"WAGF Block","WAGF Region":"WAGF Region","people groups adopted":"people groups adopted","people groups engaged":"people groups engaged"},Hh={placeholder:"People, place, language, religion",labels:{people:"People:",place:"Place:",language:"Language:",religion:"Religion:"},kinds:{people:"People Group + Country",peopleGroup:"People Group",bloc:"Affinity Block",cluster:"People Cluster",country:"Country",region:"Region",family:"Language Family",languageKind:"Language",dialect:"Dialect",religionKind:"Religion"},sections:{within:"Within {selection}",allData:"All DOXA Data"}},Vh={prayer:"Prayer",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"People Groups (Affinity)",regions:"Regions",countries:"Countries","language-families":"Languages",religion:"Religions",family:"Lang Family",language:"Language",dialect:"Dialect/Variety",bloc:"Affinity Block",cluster:"Cluster",group:"People Group",pgic:"PG in Country",region:"WAGF Region",block:"WAGF Bloc",country:"Country"},Wh={backToLegend:"Volver a la leyenda",closeDetailView:"Cerrar vista de detalle"},Yh={prayForThem:"Ora por ellos",adoptThem:"Adóptalos",moreInfo:"Más información",zoomIn:"Acercar",zoomOut:"Alejar",switchToLightMode:"Cambiar a modo claro",switchToDarkMode:"Cambiar a modo oscuro",resetView:"Restablecer vista",toggleFullscreen:"Alternar pantalla completa",aboutThisMap:"Acerca de este mapa",closeMenu:"Cerrar menú",reloadMap:"Recargar mapa",showClusters:"Mostrar clústeres",clusterSettings:"Ajustes de clústeres",startAutoFly:"Iniciar vuelo automático",stopFlight:"Detener vuelo",speedLabel:"Velocidad:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Compartir e incrustar"},qh={labels:{country:"País:",population:"Población:",language:"Idioma:",religion:"Religión:",languageFamily:"Familia lingüística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"No hay descripción disponible."}},Jh={title:{prayer:"Progreso de oración",engagement:"Progreso de implicación",adoption:"Progreso de adopción",languageFamilies:"Familias lingüísticas",doxaRegions:"Regiones Doxa",affinityBlocs:"Bloques de afinidad",gospelResources:"Recursos del Evangelio"},header:{collapsed:"Leyenda",peopleGroupFallback:"Grupo de personas"},prayer:{needsPrayer:"Necesita oración",hasPrayer:"Tiene oración",fullPrayerCoverage:"Cobertura de oración completa"},progress:{title:"Progreso",covered:"{covered} de {total} grupos de personas cubiertos en oración · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesita implicación",hasEngagement:"Tiene implicación"},adoption:{needsAdoption:"Necesita adopción",hasAdoption:"Tiene adopción"},columns:{upgs:"UUPGs",population:"Población",name:"Nombre"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por población",colLabel:{religion:"Religiones UUPG",prayer:"Estado de oración",engagement:"Estado de compromiso",adoption:"Estado de adopción",status:"Estado"},titleBar:{legend:"Leyenda",peopleGroups:"Pueblos",wagfRegions:"Regiones WAGF",languages:"Idiomas"}},Xh={menuComingSoon:"Menú próximamente"},Zh={clusterByRegion:"Por región Doxa",clusterByLanguageFamily:"Por familia lingüística",clusterByGospelResource:"Por recurso del Evangelio"},Qh={header:"VUELTA DE ORACIÓN ACTUAL",lap:"Vuelta",upgs:"UUPGs",separator:" de "},em={"%count% people groups in %countries% countries":"%count% grupos étnicos en %countries% países","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% tiene %count% grupos étnicos en %countries% países. El color de cada punto indica cuántas personas oran por ese grupo étnico.","1+ People Praying":"1+ personas orando","100+ People Praying":"100+ personas orando",Adopted:"Aprobado","Adoption Progress":"Progreso de la adopción","All Regions":"Todas las regiones","Alternate Names":"Nombres alternativos","Clear All":"Borrar todo",Countries:"Países","Countries in this region":"Países de esta región",Country:"País",Engaged:"Comprometido","Engagement Progress":"Progreso del compromiso","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Cada grupo étnico no evangelizado adoptado por una iglesia comprometida con la oración, la ofrenda y el envío.","Exact Search":"Búsqueda exacta","Find unreached people groups by region and country.":"Encuentra grupos étnicos no alcanzados por región y país.","Full Profile":"Perfil completo",Goal:"Meta","Hide Filters":"Ocultar filtros",Intercessors:"Intercesores","Load More":"Cargar más","Loading results...":"Cargando resultados...","Mobilize 100+ people praying daily for each DOXA people group":"Movilizar a más de 100 personas que oren diariamente por cada grupo étnico DOXA.","No One Praying":"Nadie orando","No options found":"No se han encontrado opciones","No unengaged people groups by 2033":"No habrá grupos étnicos sin evangelizar para 2033","Not Adopted":"No adoptado",Other:"Otros","Page Not Found":"Página no encontrada","People Group":"Grupo Étnico","People Groups":"Grupos Étnicos","People committed to praying":"Personas comprometidas con la oración",Population:"Población","Prayer Coverage":"Cobertura de oración","Prayer coverage progress":"Progreso de la cobertura de oración",Regions:"Regiones",Religion:"Religión","Search names, country/continent, religions...":"Buscar nombres, país/continente, religiones...","See %region% dashboard":"Ver el panel de %region%","See All":"Ver todo",Select:"Seleccionar","Show Filters":"Mostrar filtros","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Hay %count% grupos étnicos en %country%. Consulta también el mapa para ver los grupos étnicos en la frontera de este país.",Total:"Total","Type to search...":"Escribe para buscar...","Unengaged people groups":"Grupos étnicos no comprometidos","WAGF Block":"Bloque WAGF","WAGF Region":"Región de la WAGF","people groups adopted":"grupos de personas adoptados","people groups engaged":"grupos étnicos comprometidos"},tm={placeholder:"Pueblo, lugar, idioma, religión",labels:{people:"Pueblo:",place:"Lugar:",language:"Idioma:",religion:"Religión:"},kinds:{people:"Pueblo + país",peopleGroup:"Pueblo",bloc:"Bloque de afinidad",cluster:"Clúster de pueblos",country:"País",region:"Región",family:"Familia lingüística",languageKind:"Idioma",dialect:"Dialecto",religionKind:"Religión"}},om={prayer:"Oración",adoption:"Adopción",engagement:"Compromiso","affinity-blocks":"Pueblos",regions:"Regiones",countries:"Países","language-families":"Idiomas",religion:"Religiones",family:"Familia lingüística",language:"Idioma",dialect:"Dialecto/Variedad",bloc:"Bloque de afinidad",cluster:"Clúster",group:"Pueblo",pgic:"Pueblo en país",region:"Región WAGF",block:"Bloque WAGF",country:"País"},nm={backToLegend:"Retour à la légende",closeDetailView:"Fermer la vue détaillée"},am={prayForThem:"Priez pour eux",adoptThem:"Adoptez-les",moreInfo:"Plus d'infos",zoomIn:"Zoom avant",zoomOut:"Zoom arrière",switchToLightMode:"Passer au mode clair",switchToDarkMode:"Passer au mode sombre",resetView:"Réinitialiser la vue",toggleFullscreen:"Basculer en plein écran",aboutThisMap:"À propos de cette carte",closeMenu:"Fermer le menu",reloadMap:"Recharger la carte",showClusters:"Afficher les clusters",clusterSettings:"Paramètres des clusters",startAutoFly:"Démarrer le vol auto",stopFlight:"Arrêter le vol",speedLabel:"Vitesse :",speedOption:{slow:"Lente",normal:"Normale",fast:"Rapide"},shareEmbed:"Partager et intégrer"},rm={labels:{country:"Pays :",population:"Population :",language:"Langue :",religion:"Religion :",languageFamily:"Famille de langues :",peopleCommitted:"Engagés à prier :"},messages:{noDescription:"Aucune description disponible."}},sm={title:{prayer:"Progression de la prière",engagement:"Progression de l'engagement",adoption:"Progression de l'adoption",languageFamilies:"Familles de langues",doxaRegions:"Régions Doxa",affinityBlocs:"Blocs d'affinité",gospelResources:"Ressources de l'Évangile"},header:{collapsed:"Légende",peopleGroupFallback:"Groupe de personnes"},prayer:{needsPrayer:"Besoin de prière",hasPrayer:"Prière en cours",fullPrayerCoverage:"Couverture de prière complète"},progress:{title:"Progression",covered:"{covered} sur {total} groupes de personnes couverts par la prière · {pct}%",short:"{covered} sur {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Besoin d'engagement",hasEngagement:"Engagement en cours"},adoption:{needsAdoption:"Besoin d'adoption",hasAdoption:"Adoption en cours"},columns:{upgs:"UUPGs",population:"Population",name:"Nom"},footer:{total:"Total"},sortByUpgs:"Trier par UUPG",sortByPop:"Trier par population",colLabel:{religion:"Religions UUPG",prayer:"Statut de prière",engagement:"Statut d'engagement",adoption:"Statut d'adoption",status:"Statut"},titleBar:{legend:"Légende",peopleGroups:"Peuples",wagfRegions:"Régions WAGF",languages:"Langues"}},im={menuComingSoon:"Menu bientôt disponible"},lm={clusterByRegion:"Par région Doxa",clusterByLanguageFamily:"Par famille de langues",clusterByGospelResource:"Par ressource de l'Évangile"},cm={country:{wagfRegion:"Région WAGF",wagfBlock:"Bloc WAGF",country:"Pays",uupgCount:"Nombre d'UUPG"}},um={header:"TOUR DE PRIÈRE ACTUEL",lap:"Tour",upgs:"UUPGs",separator:" sur "},dm={"%count% people groups in %countries% countries":"%count% peuples dans %countries% pays","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% compte %count% peuples répartis dans %countries% pays. La couleur de chaque point indique combien de personnes prient pour ce peuple.","1+ People Praying":"1+ personnes en prière","100+ People Praying":"100+ personnes en prière",Adopted:"Adopté","Adoption Progress":"Progrès de l'adoption","All Regions":"Toutes les régions","Alternate Names":"Autres noms","Clear All":"Tout effacer",Countries:"Pays","Countries in this region":"Pays de cette région",Country:"Pays",Engaged:"Engagé","Engagement Progress":"Progrès de l'engagement","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Chaque peuple non engagé adopté par une église locale engagée dans la prière, le don et l'envoi","Exact Search":"Recherche exacte","Find unreached people groups by region and country.":"Trouvez des peuples non atteints par région et par pays.","Full Profile":"Profil complet",Goal:"Objectif","Hide Filters":"Masquer les filtres",Intercessors:"Intercesseurs","Load More":"Afficher plus","Loading results...":"Chargement des résultats...","Mobilize 100+ people praying daily for each DOXA people group":"Mobiliser plus de 100 personnes priant chaque jour pour chaque peuple DOXA","No One Praying":"Personne ne prie","No options found":"Aucun lieu trouvé","No unengaged people groups by 2033":"Plus aucun peuple non engagé d'ici 2033","Not Adopted":"Non adopté",Other:"Autre","Page Not Found":"Page introuvable","People Group":"Peuple","People Groups":"Peuples","People committed to praying":"Personnes engagées dans la prière",Population:"Population","Prayer Coverage":"Couverture de prière","Prayer coverage progress":"Progression de la couverture de prière",Regions:"Régions",Religion:"Religion","Search names, country/continent, religions...":"Rechercher des noms, pays/continent, religions...","See %region% dashboard":"Voir le tableau de bord : %region%","See All":"Tout afficher",Select:"Sélectionner","Show Filters":"Afficher les filtres","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Il y a %count% peuples en %country%. Consultez la carte pour découvrir également les peuples situés à la frontière de ce pays.",Total:"Total","Type to search...":"Entrer votre recherche","Unengaged people groups":"Peuples non engagés","WAGF Block":"Bloc WAGF","WAGF Region":"Région WAGF","people groups adopted":"peuples adoptés","people groups engaged":"peuples engagés"},pm={placeholder:"Peuple, lieu, langue, religion",labels:{people:"Peuple :",place:"Lieu :",language:"Langue :",religion:"Religion :"},kinds:{people:"Peuple + pays",peopleGroup:"Peuple",bloc:"Bloc d'affinité",cluster:"Grappe de peuples",country:"Pays",region:"Région",family:"Famille linguistique",languageKind:"Langue",dialect:"Dialecte",religionKind:"Religion"}},gm={prayer:"Prière",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Peuples",regions:"Régions",countries:"Pays","language-families":"Langues",religion:"Religions",family:"Famille linguistique",language:"Langue",dialect:"Dialecte/Variété",bloc:"Bloc d'affinité",cluster:"Grappe",group:"Peuple",pgic:"Peuple dans le pays",region:"Région WAGF",block:"Bloc WAGF",country:"Pays"},fm={backToLegend:"लेजेंड पर वापस जाएं",closeDetailView:"विवरण दृश्य बंद करें"},hm={prayForThem:"उनके लिए प्रार्थना करें",adoptThem:"उन्हें गोद लें",moreInfo:"अधिक जानकारी",zoomIn:"ज़ूम इन",zoomOut:"ज़ूम आउट",switchToLightMode:"लाइट मोड पर जाएं",switchToDarkMode:"डार्क मोड पर जाएं",resetView:"दृश्य रीसेट करें",toggleFullscreen:"फ़ुलस्क्रीन टॉगल करें",aboutThisMap:"इस मानचित्र के बारे में",closeMenu:"मेनू बंद करें",reloadMap:"मानचित्र पुनः लोड करें",showClusters:"क्लस्टर दिखाएं",clusterSettings:"क्लस्टर सेटिंग्स",startAutoFly:"ऑटो फ्लाई शुरू करें",stopFlight:"उड़ान रोकें",speedLabel:"गति:",speedOption:{slow:"धीमी",normal:"सामान्य",fast:"तेज़"},shareEmbed:"साझा करें और एम्बेड करें"},mm={labels:{country:"देश:",population:"जनसंख्या:",language:"भाषा:",religion:"धर्म:",languageFamily:"भाषा परिवार:",peopleCommitted:"प्रार्थना के लिए प्रतिबद्ध:"},messages:{noDescription:"कोई विवरण उपलब्ध नहीं है।"}},bm={title:{prayer:"प्रार्थना प्रगति",engagement:"सहभागिता प्रगति",adoption:"गोद लेने की प्रगति",languageFamilies:"भाषा परिवार",doxaRegions:"Doxa क्षेत्र",affinityBlocs:"समानता समूह",gospelResources:"सुसमाचार संसाधन"},header:{collapsed:"किंवदंती",peopleGroupFallback:"जनजाति समूह"},prayer:{needsPrayer:"प्रार्थना चाहिए",hasPrayer:"प्रार्थना है",fullPrayerCoverage:"पूर्ण प्रार्थना कवरेज"},progress:{title:"प्रगति",covered:"{total} में से {covered} जनजाति समूह प्रार्थना में कवर · {pct}%",short:"{total} में से {covered} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"सहभागिता चाहिए",hasEngagement:"सहभागिता है"},adoption:{needsAdoption:"गोद लेना चाहिए",hasAdoption:"गोद लिया गया"},columns:{upgs:"UUPGs",population:"जनसंख्या"},footer:{total:"कुल"}},ym={menuComingSoon:"मेनू शीघ्र आ रहा है"},_m={clusterByRegion:"Doxa क्षेत्र के अनुसार",clusterByLanguageFamily:"भाषा परिवार के अनुसार",clusterByGospelResource:"सुसमाचार संसाधन के अनुसार"},vm={header:"वर्तमान प्रार्थना चक्र",lap:"चक्र",upgs:"UUPGs",separator:" में से "},km={"%count% people groups in %countries% countries":"%countries% देशों में %count% लोगों के समूह","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% में %countries% देशों में %count% लोगों के समूह हैं। प्रत्येक बिंदु का रंग दर्शाता है कि उस लोगों के समूह के लिए कितने लोग प्रार्थना कर रहे हैं।","1+ People Praying":"1+ लोग प्रार्थना कर रहे हैं","100+ People Praying":"100+ लोग प्रार्थना कर रहे हैं",Adopted:"दत्तक लिया गया","Adoption Progress":"दत्तक ग्रहण की प्रगति","All Regions":"सभी क्षेत्र","Alternate Names":"वैकल्पिक नाम","Clear All":"सभी साफ़ करें",Countries:"देश","Countries in this region":"इस क्षेत्र के देश",Country:"देश",Engaged:"प्रवेशित","Engagement Progress":"प्रवेश की प्रगति","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"प्रत्येक असंलग्न जनसमूह जिसे प्रार्थना, दान और भेजने के लिए प्रतिबद्ध एक चर्च ने अपनाया है।","Exact Search":"सटीक खोज","Find unreached people groups by region and country.":"क्षेत्र और देश के अनुसार अगम्य लोगों के समूह खोजें।","Full Profile":"पूर्ण प्रोफ़ाइल",Goal:"लक्ष्य","Hide Filters":"फ़िल्टर छिपाएँ",Intercessors:"मध्यस्थ","Load More":"और लोड करें","Loading results...":"परिणाम लोड हो रहे हैं..।","Mobilize 100+ people praying daily for each DOXA people group":"प्रत्येक DOXA जनसमूह के लिए प्रतिदिन प्रार्थना करने हेतु 100+ लोगों को सक्रिय करें।","No One Praying":"कोई प्रार्थना नहीं कर रहा","No options found":"कोई विकल्प नहीं मिला","No unengaged people groups by 2033":"2033 तक कोई भी संलग्न न किया गया जनसमूह नहीं रहेगा।","Not Adopted":"दत्तक नहीं लिया गया",Other:"अन्य","Page Not Found":"पृष्ठ नहीं मिला","People Group":"लोगों का समूह","People Groups":"लोगों के समूह","People committed to praying":"प्रार्थना के लिए प्रतिबद्ध लोग",Population:"जनसँख्या","Prayer Coverage":"प्रार्थना कवरेज","Prayer coverage progress":"प्रार्थना कवरेज की प्रगति",Regions:"क्षेत्र",Religion:"धर्म","Search names, country/continent, religions...":"नाम, देश/महाद्वीप, धर्म खोजें..।","See %region% dashboard":"%region% डैशबोर्ड देखें","See All":"सभी देखें",Select:"चयन/छंटनी","Show Filters":"फ़िल्टर दिखाएँ","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"%country% में %count% लोगों के समूह हैं। इस देश की सीमा पर स्थित लोगों के समूहों के लिए मानचित्र भी देखें।",Total:"संपूर्ण","Type to search...":"खोजने के लिए टाइप करें..।","Unengaged people groups":"अनलग्न लोगों के समूह","WAGF Block":"WAGF ब्लॉक","WAGF Region":"डब्ल्यूएजीएफ क्षेत्र","people groups adopted":"लोगों के समूहों ने अपनाया","people groups engaged":"प्रवेशित लोगों के समूह"},wm={placeholder:"लोग, स्थान, भाषा, धर्म",labels:{people:"लोग:",place:"स्थान:",language:"भाषा:",religion:"धर्म:"}},xm={backToLegend:"Torna alla legenda",closeDetailView:"Chiudi vista dettaglio"},Am={prayForThem:"Prega per loro",adoptThem:"Adottali",moreInfo:"Più informazioni",zoomIn:"Ingrandisci",zoomOut:"Riduci",switchToLightMode:"Passa alla modalità chiara",switchToDarkMode:"Passa alla modalità scura",resetView:"Reimposta vista",toggleFullscreen:"Attiva/disattiva schermo intero",aboutThisMap:"Informazioni su questa mappa",closeMenu:"Chiudi menu",reloadMap:"Ricarica mappa",showClusters:"Mostra cluster",clusterSettings:"Impostazioni cluster",startAutoFly:"Avvia volo automatico",stopFlight:"Ferma volo",speedLabel:"Velocità:",speedOption:{slow:"Lenta",normal:"Normale",fast:"Veloce"},shareEmbed:"Condividi e incorpora"},Sm={labels:{country:"Paese:",population:"Popolazione:",language:"Lingua:",religion:"Religione:",languageFamily:"Famiglia linguistica:",peopleCommitted:"Impegnati a pregare:"},messages:{noDescription:"Nessuna descrizione disponibile."}},$m={title:{prayer:"Avanzamento della preghiera",engagement:"Avanzamento dell'impegno",adoption:"Avanzamento dell'adozione",languageFamilies:"Famiglie linguistiche",doxaRegions:"Regioni Doxa",affinityBlocs:"Blocchi di affinità",gospelResources:"Risorse del Vangelo"},header:{collapsed:"Legenda",peopleGroupFallback:"Gruppo di persone"},prayer:{needsPrayer:"Necessita preghiera",hasPrayer:"Ha preghiera",fullPrayerCoverage:"Copertura di preghiera completa"},progress:{title:"Avanzamento",covered:"{covered} di {total} gruppi di persone coperti dalla preghiera · {pct}%",short:"{covered} di {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necessita impegno",hasEngagement:"Ha impegno"},adoption:{needsAdoption:"Necessita adozione",hasAdoption:"Ha adozione"},columns:{upgs:"UUPGs",population:"Popolazione"},footer:{total:"Totale"}},Em={menuComingSoon:"Menu in arrivo"},Cm={clusterByRegion:"Per regione Doxa",clusterByLanguageFamily:"Per famiglia linguistica",clusterByGospelResource:"Per risorsa del Vangelo"},Lm={header:"GIRO DI PREGHIERA ATTUALE",lap:"Giro",upgs:"UUPGs",separator:" di "},Tm={placeholder:"Popolo, luogo, lingua, religione",labels:{people:"Popolo:",place:"Luogo:",language:"Lingua:",religion:"Religione:"}},Pm={backToLegend:"Voltar à legenda",closeDetailView:"Fechar vista de detalhe"},Mm={prayForThem:"Ore por eles",adoptThem:"Adote-os",moreInfo:"Mais informações",zoomIn:"Ampliar",zoomOut:"Reduzir",switchToLightMode:"Mudar para modo claro",switchToDarkMode:"Mudar para modo escuro",resetView:"Repor vista",toggleFullscreen:"Alternar ecrã inteiro",aboutThisMap:"Sobre este mapa",closeMenu:"Fechar menu",reloadMap:"Recarregar mapa",showClusters:"Mostrar clusters",clusterSettings:"Definições de clusters",startAutoFly:"Iniciar voo automático",stopFlight:"Parar voo",speedLabel:"Velocidade:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Partilhar e incorporar"},Nm={labels:{country:"País:",population:"População:",language:"Língua:",religion:"Religião:",languageFamily:"Família linguística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"Sem descrição disponível."}},Rm={title:{prayer:"Progresso da oração",engagement:"Progresso do envolvimento",adoption:"Progresso da adoção",languageFamilies:"Famílias linguísticas",doxaRegions:"Regiões Doxa",affinityBlocs:"Blocos de afinidade",gospelResources:"Recursos do Evangelho"},header:{collapsed:"Legenda",peopleGroupFallback:"Grupo de pessoas"},prayer:{needsPrayer:"Precisa de oração",hasPrayer:"Tem oração",fullPrayerCoverage:"Cobertura de oração completa"},progress:{title:"Progresso",covered:"{covered} de {total} grupos de pessoas cobertos em oração · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Precisa de envolvimento",hasEngagement:"Tem envolvimento"},adoption:{needsAdoption:"Precisa de adoção",hasAdoption:"Tem adoção"},columns:{upgs:"UUPGs",population:"População",name:"Nome"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por população",colLabel:{religion:"Religiões UUPG",prayer:"Status de oração",engagement:"Status de engajamento",adoption:"Status de adoção",status:"Status"},titleBar:{legend:"Legenda",peopleGroups:"Povos",wagfRegions:"Regiões WAGF",languages:"Idiomas"}},Im={menuComingSoon:"Menu em breve"},Om={clusterByRegion:"Por região Doxa",clusterByLanguageFamily:"Por família linguística",clusterByGospelResource:"Por recurso do Evangelho"},Fm={header:"VOLTA DE ORAÇÃO ATUAL",lap:"Volta",upgs:"UUPGs",separator:" de "},Dm={"%count% people groups in %countries% countries":"%count% grupos étnicos em %countries% países","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% tem %count% grupos étnicos em %countries% países. A cor de cada ponto indica quantas pessoas oram por esse grupo étnico.","1+ People Praying":"1+ pessoas orando","100+ People Praying":"100+ pessoas orando",Adopted:"Aprovado","Adoption Progress":"Progresso da adoção","All Regions":"Todas as regiões","Alternate Names":"Nomes alternativos","Clear All":"Limpar tudo",Countries:"Países","Countries in this region":"Países desta região",Country:"País",Engaged:"Engajado","Engagement Progress":"Progresso do engajamento","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Cada grupo étnico não engajado adotado por uma igreja comprometida com a oração, contribuição e o envio","Exact Search":"Pesquisa exata","Find unreached people groups by region and country.":"Encontre grupos étnicos não alcançados por região e país.","Full Profile":"Perfil completo",Goal:"Meta","Hide Filters":"Ocultar filtros",Intercessors:"Intercessores","Load More":"Carregar mais","Loading results...":"A carregar resultados...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilizar mais de 100 pessoas para orar diariamente por cada grupo étnico DOXA","No One Praying":"Ninguém orando","No options found":"Não foram encontradas opções","No unengaged people groups by 2033":"Nenhum grupo étnico não engajado até 2033","Not Adopted":"Não adotado",Other:"Outros","Page Not Found":"Página não encontrada","People Group":"Grupo étnico","People Groups":"Grupos étnicos","People committed to praying":"Pessoas comprometidas com a oração",Population:"Aplicação","Prayer Coverage":"Cobertura de oração","Prayer coverage progress":"Progresso da cobertura de oração",Regions:"Regiões",Religion:"Religião","Search names, country/continent, religions...":"Busque nomes, país/continente, religiões...","See %region% dashboard":"Ver o painel: %region%","See All":"Ver tudo",Select:"Selecionar","Show Filters":"Mostrar filtros","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Existem %count% grupos étnicos em %country%. Verifique no mapa também os grupos étnicos na fronteira deste país.",Total:"Total","Type to search...":"Digite para pesquisar...","Unengaged people groups":"Grupos étnicos não engajados","WAGF Block":"Bloco WAGF","WAGF Region":"Região da WAGF","people groups adopted":"grupos étnicos adotados","people groups engaged":"grupos étnicos engajados"},Bm={placeholder:"Povo, local, língua, religião",labels:{people:"Povo:",place:"Local:",language:"Língua:",religion:"Religião:"},kinds:{people:"Povo + país",peopleGroup:"Povo",bloc:"Bloco de afinidade",cluster:"Agrupamento de povos",country:"País",region:"Região",family:"Família linguística",languageKind:"Idioma",dialect:"Dialeto",religionKind:"Religião"}},Gm={prayer:"Oração",adoption:"Adoção",engagement:"Engajamento","affinity-blocks":"Povos",regions:"Regiões",countries:"Países","language-families":"Idiomas",religion:"Religiões",family:"Família linguística",language:"Idioma",dialect:"Dialeto/Variedade",bloc:"Bloco de afinidade",cluster:"Agrupamento",group:"Povo",pgic:"Povo no país",region:"Região WAGF",block:"Bloco WAGF",country:"País"},jm={backToLegend:"Înapoi la legendă",closeDetailView:"Închide vizualizarea detaliată"},Um={prayForThem:"Roagă-te pentru ei",adoptThem:"Adoptă-i",moreInfo:"Mai multe informații",zoomIn:"Mărește",zoomOut:"Micșorează",switchToLightMode:"Comută la modul luminos",switchToDarkMode:"Comută la modul întunecat",resetView:"Resetează vizualizarea",toggleFullscreen:"Comută ecran complet",aboutThisMap:"Despre această hartă",closeMenu:"Închide meniul",reloadMap:"Reîncarcă harta",showClusters:"Arată clusterele",clusterSettings:"Setări clustere",startAutoFly:"Pornește zborul automat",stopFlight:"Oprește zborul",speedLabel:"Viteză:",speedOption:{slow:"Lent",normal:"Normal",fast:"Rapid"},shareEmbed:"Partajează și încorporează"},Km={labels:{country:"Țară:",population:"Populație:",language:"Limbă:",religion:"Religie:",languageFamily:"Familie de limbi:",peopleCommitted:"Angajați să se roage:"},messages:{noDescription:"Nicio descriere disponibilă."}},zm={title:{prayer:"Progresul rugăciunii",engagement:"Progresul implicării",adoption:"Progresul adopției",languageFamilies:"Familii de limbi",doxaRegions:"Regiuni Doxa",affinityBlocs:"Blocuri de afinitate",gospelResources:"Resurse ale Evangheliei"},header:{collapsed:"Legendă",peopleGroupFallback:"Grup de popoare"},prayer:{needsPrayer:"Necesită rugăciune",hasPrayer:"Are rugăciune",fullPrayerCoverage:"Acoperire completă de rugăciune"},progress:{title:"Progres",covered:"{covered} din {total} grupuri de popoare acoperite în rugăciune · {pct}%",short:"{covered} din {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesită implicare",hasEngagement:"Are implicare"},adoption:{needsAdoption:"Necesită adopție",hasAdoption:"Are adopție"},columns:{upgs:"UUPGs",population:"Populație"},footer:{total:"Total"}},Hm={menuComingSoon:"Meniu în curând"},Vm={clusterByRegion:"După regiune Doxa",clusterByLanguageFamily:"După familia de limbi",clusterByGospelResource:"După resursa Evangheliei"},Wm={header:"TURUL DE RUGĂCIUNE CURENT",lap:"Tur",upgs:"UUPGs",separator:" din "},Ym={placeholder:"Popor, loc, limbă, religie",labels:{people:"Popor:",place:"Loc:",language:"Limbă:",religion:"Religie:"}},qm={backToLegend:"Назад к легенде",closeDetailView:"Закрыть подробный вид"},Jm={prayForThem:"Молитесь о них",adoptThem:"Усыновите их",moreInfo:"Подробнее",zoomIn:"Приблизить",zoomOut:"Отдалить",switchToLightMode:"Переключить на светлый режим",switchToDarkMode:"Переключить на тёмный режим",resetView:"Сбросить вид",toggleFullscreen:"Полноэкранный режим",aboutThisMap:"Об этой карте",closeMenu:"Закрыть меню",reloadMap:"Перезагрузить карту",showClusters:"Показать кластеры",clusterSettings:"Настройки кластеров",startAutoFly:"Начать авто-полёт",stopFlight:"Остановить полёт",speedLabel:"Скорость:",speedOption:{slow:"Медленно",normal:"Нормально",fast:"Быстро"},shareEmbed:"Поделиться и встроить"},Xm={labels:{country:"Страна:",population:"Население:",language:"Язык:",religion:"Религия:",languageFamily:"Языковая семья:",peopleCommitted:"Обязались молиться:"},messages:{noDescription:"Описание недоступно."}},Zm={title:{prayer:"Прогресс молитвы",engagement:"Прогресс вовлечённости",adoption:"Прогресс усыновления",languageFamilies:"Языковые семьи",doxaRegions:"Регионы Doxa",affinityBlocs:"Блоки родства",gospelResources:"Евангельские ресурсы"},header:{collapsed:"Условные обозначения",peopleGroupFallback:"Народная группа"},prayer:{needsPrayer:"Нуждается в молитве",hasPrayer:"Есть молитва",fullPrayerCoverage:"Полное молитвенное покрытие"},progress:{title:"Прогресс",covered:"{covered} из {total} народных групп охвачены молитвой · {pct}%",short:"{covered} из {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Нуждается в вовлечённости",hasEngagement:"Есть вовлечённость"},adoption:{needsAdoption:"Нуждается в усыновлении",hasAdoption:"Есть усыновление"},columns:{upgs:"UUPGs",population:"Население",name:"Название"},footer:{total:"Всего"},sortByUpgs:"Сортировать по UUPG",sortByPop:"Сортировать по населению",colLabel:{religion:"Религии UUPG",prayer:"Статус молитвы",engagement:"Статус вовлечённости",adoption:"Статус усыновления",status:"Статус"},titleBar:{legend:"Легенда",peopleGroups:"Народы",wagfRegions:"Регионы WAGF",languages:"Языки"}},Qm={menuComingSoon:"Меню скоро появится"},eb={clusterByRegion:"По региону Doxa",clusterByLanguageFamily:"По языковой семье",clusterByGospelResource:"По евангельскому ресурсу"},tb={header:"ТЕКУЩИЙ КРУГ МОЛИТВЫ",lap:"Круг",upgs:"UUPGs",separator:" из "},ob={"%count% people groups in %countries% countries":"%count% групп людей в %countries% странах","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"В регионе %region% — %count% групп людей в %countries% странах. Цвет каждой точки показывает, сколько человек молится за эту группу людей.","1+ People Praying":"1+ человек молится","100+ People Praying":"100+ человек молятся",Adopted:"Принято","Adoption Progress":"Прогресс принятия","All Regions":"Все регионы","Alternate Names":"Альтернативные названия","Clear All":"Очистить всё",Countries:"Страны","Countries in this region":"Страны этого региона",Country:"Страна",Engaged:"Вовлечённый","Engagement Progress":"Прогресс вовлечения","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Каждая незадействованная народность принята церковью, приверженной молитве, пожертвованиям и посылке миссионеров","Exact Search":"Точный поиск","Find unreached people groups by region and country.":"Найдите недостигнутые группы людей по регионам и странам.","Full Profile":"Полный профиль",Goal:"Цель","Hide Filters":"Скрыть фильтры",Intercessors:"Ходатаи","Load More":"Загрузить еще","Loading results...":"Загрузка результатов...","Mobilize 100+ people praying daily for each DOXA people group":"Мобилизуйте 100+ человек для ежедневной молитвы за каждую народность DOXA","No One Praying":"Никто не молится","No options found":"Вариантов не найдено","No unengaged people groups by 2033":"К 2033 году не останется незадействованных народов","Not Adopted":"Не принято",Other:"Другое","Page Not Found":"Страница не найдена","People Group":"Группа людей","People Groups":"Группы людей","People committed to praying":"Люди, посвятившие себя молитве",Population:"Население","Prayer Coverage":"Молитвенное покрытие","Prayer coverage progress":"Прогресс молитвенного покрытия",Regions:"Регионы",Religion:"Религия","Search names, country/continent, religions...":"Поиск по именам, странам/континентам, религиям...","See %region% dashboard":"Открыть панель: %region%","See All":"Смотреть все",Select:"Выбрать","Show Filters":"Показать фильтры","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Страна %country% насчитывает %count% групп людей. Проверьте также на карте группы людей, расположенные вдоль границ этой страны.",Total:"Итого","Type to search...":"Введите текст для поиска...","Unengaged people groups":"Невовлечённые группы людей","WAGF Block":"Блок WAGF","WAGF Region":"Регион WAGF","people groups adopted":"принятые группы людей","people groups engaged":"вовлечённые группы людей"},nb={placeholder:"Народ, место, язык, религия",labels:{people:"Народ:",place:"Место:",language:"Язык:",religion:"Религия:"},kinds:{people:"Народ + страна",peopleGroup:"Народ",bloc:"Блок родства",cluster:"Кластер народов",country:"Страна",region:"Регион",family:"Языковая семья",languageKind:"Язык",dialect:"Диалект",religionKind:"Религия"}},ab={prayer:"Молитва",adoption:"Усыновление",engagement:"Вовлечённость","affinity-blocks":"Народы",regions:"Регионы",countries:"Страны","language-families":"Языки",religion:"Религии",family:"Языковая семья",language:"Язык",dialect:"Диалект/вариант",bloc:"Блок родства",cluster:"Кластер",group:"Народ",pgic:"Народ в стране",region:"Регион WAGF",block:"Блок WAGF",country:"Страна"},rb={backToLegend:"返回图例",closeDetailView:"关闭详情视图"},sb={prayForThem:"为他们祷告",adoptThem:"认领他们",moreInfo:"更多信息",zoomIn:"放大",zoomOut:"缩小",switchToLightMode:"切换至浅色模式",switchToDarkMode:"切换至深色模式",resetView:"重置视图",toggleFullscreen:"切换全屏",aboutThisMap:"关于此地图",closeMenu:"关闭菜单",reloadMap:"重新加载地图",showClusters:"显示聚类",clusterSettings:"聚类设置",startAutoFly:"开始自动飞行",stopFlight:"停止飞行",speedLabel:"速度:",speedOption:{slow:"慢",normal:"正常",fast:"快"},shareEmbed:"分享与嵌入"},ib={labels:{country:"国家:",population:"人口:",language:"语言:",religion:"宗教:",languageFamily:"语系:",peopleCommitted:"承诺祷告人数:"},messages:{noDescription:"暂无描述。"}},lb={title:{prayer:"祷告进度",engagement:"参与进度",adoption:"认领进度",languageFamilies:"语系",doxaRegions:"Doxa 区域",affinityBlocs:"亲缘板块",gospelResources:"福音资源"},header:{collapsed:"图例",peopleGroupFallback:"民族群体"},prayer:{needsPrayer:"需要祷告",hasPrayer:"已有祷告",fullPrayerCoverage:"全面祷告覆盖"},progress:{title:"进度",covered:"{total} 个民族群体中已有 {covered} 个被祷告覆盖 · {pct}%",short:"{covered} / {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"需要参与",hasEngagement:"已有参与"},adoption:{needsAdoption:"需要认领",hasAdoption:"已有认领"},columns:{upgs:"UUPGs",population:"人口"},footer:{total:"总计"}},cb={menuComingSoon:"菜单即将推出"},ub={clusterByRegion:"按 Doxa 区域",clusterByLanguageFamily:"按语系",clusterByGospelResource:"按福音资源"},db={header:"当前祷告轮次",lap:"第",upgs:"UUPGs",separator:" / "},pb={placeholder:"民族、地点、语言、宗教",labels:{people:"民族:",place:"地点:",language:"语言:",religion:"宗教:"}};/*! + */let Ac;const rr=e=>Ac=e,Sc=Symbol();function bs(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var ra;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(ra||(ra={}));function lh(){const e=Ir(!0),t=e.run(()=>de({}));let o=[],n=[];const a=qo({install(r){rr(a),a._a=r,r.provide(Sc,a),r.config.globalProperties.$pinia=a,n.forEach(s=>o.push(s)),n=[]},use(r){return this._a?o.push(r):n.push(r),this},_p:o,_a:null,_e:e,_s:new Map,state:t});return a}const $c=()=>{};function Ec(e,t,o,n=$c){e.push(t);const a=()=>{const r=e.indexOf(t);r>-1&&(e.splice(r,1),n())};return!o&&Bi()&&Np(a),a}function wn(e,...t){e.slice().forEach(o=>{o(...t)})}const ch=e=>e(),Cc=Symbol(),ys=Symbol();function _s(e,t){e instanceof Map&&t instanceof Map?t.forEach((o,n)=>e.set(n,o)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const o in t){if(!t.hasOwnProperty(o))continue;const n=t[o],a=e[o];bs(a)&&bs(n)&&e.hasOwnProperty(o)&&!st(n)&&!vo(n)?e[o]=_s(a,n):e[o]=n}return e}const uh=Symbol();function dh(e){return!bs(e)||!e.hasOwnProperty(uh)}const{assign:Fo}=Object;function ph(e){return!!(st(e)&&e.effect)}function gh(e,t,o,n){const{state:a,actions:r,getters:s}=t,i=o.state.value[e];let l;function u(){i||(o.state.value[e]=a?a():{});const c=tg(o.state.value[e]);return Fo(c,r,Object.keys(s||{}).reduce((p,g)=>(p[g]=qo(te(()=>{rr(o);const k=o._s.get(e);return s[g].call(k,k)})),p),{}))}return l=Lc(e,u,t,o,n,!0),l}function Lc(e,t,o={},n,a,r){let s;const i=Fo({actions:{}},o),l={deep:!0};let u,c,p=[],g=[],k;const w=n.state.value[e];!r&&!w&&(n.state.value[e]={});let _;function d(T){let I;u=c=!1,typeof T=="function"?(T(n.state.value[e]),I={type:ra.patchFunction,storeId:e,events:k}):(_s(n.state.value[e],T),I={type:ra.patchObject,payload:T,storeId:e,events:k});const H=_=Symbol();lo().then(()=>{_===H&&(u=!0)}),c=!0,wn(p,I,n.state.value[e])}const h=r?function(){const{state:I}=o,H=I?I():{};this.$patch(W=>{Fo(W,H)})}:$c;function f(){s.stop(),p=[],g=[],n._s.delete(e)}const m=(T,I="")=>{if(Cc in T)return T[ys]=I,T;const H=function(){rr(n);const W=Array.from(arguments),re=[],P=[];function $(N){re.push(N)}function M(N){P.push(N)}wn(g,{args:W,name:H[ys],store:x,after:$,onError:M});let C;try{C=T.apply(this&&this.$id===e?this:x,W)}catch(N){throw wn(P,N),N}return C instanceof Promise?C.then(N=>(wn(re,N),N)).catch(N=>(wn(P,N),Promise.reject(N))):(wn(re,C),C)};return H[Cc]=!0,H[ys]=I,H},v={_p:n,$id:e,$onAction:Ec.bind(null,g),$patch:d,$reset:h,$subscribe(T,I={}){const H=Ec(p,T,I.detached,()=>W()),W=s.run(()=>ct(()=>n.state.value[e],re=>{(I.flush==="sync"?c:u)&&T({storeId:e,type:ra.direct,events:k},re)},Fo({},l,I)));return H},$dispose:f},x=pn(v);n._s.set(e,x);const S=(n._a&&n._a.runWithContext||ch)(()=>n._e.run(()=>(s=Ir()).run(()=>t({action:m}))));for(const T in S){const I=S[T];if(st(I)&&!ph(I)||vo(I))r||(w&&dh(I)&&(st(I)?I.value=w[T]:_s(I,w[T])),n.state.value[e][T]=I);else if(typeof I=="function"){const H=m(I,T);S[T]=H,i.actions[T]=I}}return Fo(x,S),Fo(Be(x),S),Object.defineProperty(x,"$state",{get:()=>n.state.value[e],set:T=>{d(I=>{Fo(I,T)})}}),n._p.forEach(T=>{Fo(x,s.run(()=>T({store:x,app:n._a,pinia:n,options:i})))}),w&&r&&o.hydrate&&o.hydrate(x.$state,w),u=!0,c=!0,x}/*! #__NO_SIDE_EFFECTS__ */function vs(e,t,o){let n,a;const r=typeof t=="function";typeof e=="string"?(n=e,a=r?o:t):(a=e,n=e.id);function s(i,l){const u=mg();return i=i||(u?Fe(Sc,null):null),i&&rr(i),i=Ac,i._s.has(n)||(r?Lc(n,t,a,i):gh(n,a,i)),i._s.get(n)}return s.$id=n,s}const ks="__doxaMapToken",ws="doxa:map-token",Tc="__doxaMapTokenBridge",xn=()=>{if(typeof window>"u")return"";const e=window[ks];return typeof e=="string"?e:""};function Pc(e){if(typeof window>"u")return"";const t=typeof e=="string"?e.trim():"";if(!t||t===xn())return xn();window[ks]=t;try{window.dispatchEvent(new CustomEvent(ws,{detail:t}))}catch{}return t}function fh(){if(typeof window>"u"||window[Tc])return;const e=typeof window.MAP_TOKEN=="string"?window.MAP_TOKEN:"";e&&!xn()&&(window[ks]=e);try{Object.defineProperty(window,"MAP_TOKEN",{configurable:!0,get(){return xn()},set(t){Pc(t)}}),window[Tc]=!0}catch{}}function hh(){fh();const e=de(xn());if(typeof window<"u"){const t=()=>{e.value=xn()};window.addEventListener(ws,t);try{uo(()=>window.removeEventListener(ws,t))}catch{}}return e}function Mc(e){return Eg({loader:e,onError(t,o,n,a){a<=3?setTimeout(o,a*500):n()}})}const mh={backToLegend:"العودة إلى المفتاح",closeDetailView:"إغلاق عرض التفاصيل"},bh={prayForThem:"صلِّ من أجلهم",adoptThem:"تبنَّهم",moreInfo:"مزيد من المعلومات",zoomIn:"تكبير",zoomOut:"تصغير",switchToLightMode:"التبديل إلى الوضع الفاتح",switchToDarkMode:"التبديل إلى الوضع الداكن",resetView:"إعادة تعيين العرض",toggleFullscreen:"تبديل ملء الشاشة",aboutThisMap:"حول هذه الخريطة",closeMenu:"إغلاق القائمة",reloadMap:"إعادة تحميل الخريطة",showClusters:"إظهار المجموعات",clusterSettings:"إعدادات المجموعات",startAutoFly:"بدء الطيران التلقائي",stopFlight:"إيقاف الطيران",speedLabel:"السرعة:",speedOption:{slow:"بطيء",normal:"عادي",fast:"سريع"},shareEmbed:"مشاركة وتضمين"},yh={labels:{country:"الدولة:",population:"السكان:",language:"اللغة:",religion:"الديانة:",languageFamily:"العائلة اللغوية:",peopleCommitted:"ملتزمون بالصلاة:"},messages:{noDescription:"لا يوجد وصف متاح."}},_h={title:{prayer:"تقدم الصلاة",engagement:"تقدم الانخراط",adoption:"تقدم التبني",languageFamilies:"العائلات اللغوية",doxaRegions:"مناطق Doxa",affinityBlocs:"كتل القرابة",gospelResources:"موارد الإنجيل"},header:{collapsed:"وسيلة الإيضاح",peopleGroupFallback:"مجموعة الشعب"},prayer:{needsPrayer:"يحتاج إلى صلاة",hasPrayer:"لديه صلاة",fullPrayerCoverage:"تغطية صلاة كاملة"},progress:{title:"التقدم",covered:"{covered} من {total} مجموعة شعبية مغطاة بالصلاة · {pct}%",short:"{covered} من {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"يحتاج إلى انخراط",hasEngagement:"لديه انخراط"},adoption:{needsAdoption:"يحتاج إلى تبني",hasAdoption:"لديه تبني"},columns:{upgs:"UUPGs",population:"السكان",name:"الاسم"},footer:{total:"الإجمالي"},sortByUpgs:"ترتيب حسب UUPG",sortByPop:"ترتيب حسب السكان",colLabel:{religion:"ديانات UUPG",prayer:"حالة الصلاة",engagement:"حالة المشاركة",adoption:"حالة التبني",status:"الحالة"},titleBar:{legend:"مفتاح الخريطة",peopleGroups:"الشعوب",wagfRegions:"مناطق WAGF",languages:"اللغات"}},vh={menuComingSoon:"القائمة قادمة قريباً"},kh={clusterByRegion:"حسب منطقة Doxa",clusterByLanguageFamily:"حسب العائلة اللغوية",clusterByGospelResource:"حسب مورد الإنجيل"},wh={header:"دورة الصلاة الحالية",lap:"الدورة",upgs:"UUPGs",separator:" من "},xh={"%count% people groups in %countries% countries":"%count% مجموعة بشرية في %countries% دولة","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"تضم %region% %count% مجموعة بشرية في %countries% دولة. يشير لون كل نقطة إلى عدد الأشخاص الذين يصلّون من أجل تلك المجموعة البشرية.","1+ People Praying":"شخص واحد أو أكثر يصلّي","100+ People Praying":"أكثر من 100 شخص يصلّون",Adopted:"تم انتماؤه","Adoption Progress":"تقدُّم الإنتماء","All Regions":"جميع المناطق","Alternate Names":"الأسماء البديلة","Clear All":"مسح الكل",Countries:"الدول","Countries in this region":"الدول في هذه المنطقة",Country:"الدولة",Engaged:"مُنخرَط","Engagement Progress":"تقدُّم الانخراط","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"كل مجموعة بشرية غير مبشرة تتبناها كنيسة ملتزمة بالصلاة والعطاء والإرسال","Exact Search":"بحث دقيق","Find unreached people groups by region and country.":"ابحث عن المجموعات البشرية غير المُبلَّغة حسب المنطقة والدولة.","Full Profile":"الملف الشخصي الكامل",Goal:"الهدف","Hide Filters":"إخفاء المرشحات",Intercessors:"المتشفعين","Load More":"تحميل المزيد","Loading results...":"النتائج قيد التحميل...","Mobilize 100+ people praying daily for each DOXA people group":"حشد أكثر من 100 شخص للصلاة يوميًا من أجل كل مجموعة بشرية من مجموعات دوكسا","No One Praying":"لا أحد يصلّي","No options found":"لم يتم العثور على أي خيارات","No unengaged people groups by 2033":"الهدف هو القضاء على جميع الشعوب الغير مخدومة روحيا بحلول عام 2033","Not Adopted":"لم يتم انتماؤه",Other:"أخرى","Page Not Found":"الصفحة غير موجودة","People Group":"مجموعة بشرية","People Groups":"مجموعات بشرية","People committed to praying":"الأشخاص الذين التزموا بالصلاة",Population:"عدد السكان","Prayer Coverage":"التغطية المستمرة بالصلاة","Prayer coverage progress":"تقدم تغطية الصلاة",Regions:"المناطق",Religion:"الدين","Search names, country/continent, religions...":"إبحث عن الأسماء، الدولة/القارة، الأديان...","See %region% dashboard":"عرض لوحة معلومات %region%","See All":"عرض جميع العناصر",Select:"اختر","Show Filters":"إظهار عوامل التصفية","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"توجد %count% مجموعات بشرية في %country%. تحقق من الخريطة لمعرفة المجموعات البشرية الواقعة على حدود هذه الدولة أيضًا.",Total:"المجموع","Type to search...":"اكتب ما تريد البحث عنه...","Unengaged people groups":"الشعوب الغير متفاعلة","WAGF Block":"كتلة WAGF","WAGF Region":"منطقة WAGF","people groups adopted":"الشعوب المنتمية","people groups engaged":"مجموعات بشرية مُنخرِطة"},Ah={placeholder:"شعب، مكان، لغة، ديانة",labels:{people:"الشعب:",place:"المكان:",language:"اللغة:",religion:"الديانة:"},kinds:{people:"الشعب + الدولة",peopleGroup:"الشعب",bloc:"كتلة التقارب",cluster:"مجموعة شعوب",country:"الدولة",region:"المنطقة",family:"عائلة اللغة",languageKind:"اللغة",dialect:"اللهجة",religionKind:"الدين"}},Sh={prayer:"الصلاة",adoption:"التبني",engagement:"المشاركة","affinity-blocks":"الشعوب",regions:"المناطق",countries:"الدول","language-families":"اللغات",religion:"الأديان",family:"عائلة اللغة",language:"اللغة",dialect:"اللهجة/التنوع",bloc:"كتلة التقارب",cluster:"المجموعة",group:"الشعب",pgic:"الشعب في الدولة",region:"منطقة WAGF",block:"كتلة WAGF",country:"الدولة"},$h={backToLegend:"Zurück zur Legende",closeDetailView:"Detailansicht schließen"},Eh={prayForThem:"Für sie beten",adoptThem:"Sie adoptieren",moreInfo:"Mehr Infos",zoomIn:"Vergrößern",zoomOut:"Verkleinern",switchToLightMode:"Zum hellen Modus wechseln",switchToDarkMode:"Zum dunklen Modus wechseln",resetView:"Ansicht zurücksetzen",toggleFullscreen:"Vollbild umschalten",aboutThisMap:"Über diese Karte",closeMenu:"Menü schließen",reloadMap:"Karte neu laden",showClusters:"Cluster anzeigen",clusterSettings:"Cluster-Einstellungen",startAutoFly:"Auto-Flug starten",stopFlight:"Flug stoppen",speedLabel:"Geschwindigkeit:",speedOption:{slow:"Langsam",normal:"Normal",fast:"Schnell"},shareEmbed:"Teilen und einbetten"},Ch={labels:{country:"Land:",population:"Bevölkerung:",language:"Sprache:",religion:"Religion:",languageFamily:"Sprachfamilie:",peopleCommitted:"Zum Gebet verpflichtet:"},messages:{noDescription:"Keine Beschreibung verfügbar."}},Lh={title:{prayer:"Gebetsfortschritt",engagement:"Engagement-Fortschritt",adoption:"Adoptionsfortschritt",languageFamilies:"Sprachfamilien",doxaRegions:"Doxa-Regionen",affinityBlocs:"Affinitätsblöcke",gospelResources:"Evangeliumsressourcen"},header:{collapsed:"Legende",peopleGroupFallback:"Volksgruppe"},prayer:{needsPrayer:"Braucht Gebet",hasPrayer:"Hat Gebet",fullPrayerCoverage:"Vollständige Gebetsabdeckung"},progress:{title:"Fortschritt",covered:"{covered} von {total} Volksgruppen im Gebet abgedeckt · {pct}%",short:"{covered} von {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Braucht Engagement",hasEngagement:"Hat Engagement"},adoption:{needsAdoption:"Braucht Adoption",hasAdoption:"Hat Adoption"},columns:{upgs:"UUPGs",population:"Bevölkerung"},footer:{total:"Gesamt"}},Th={menuComingSoon:"Menü folgt in Kürze"},Ph={clusterByRegion:"Nach Doxa-Region",clusterByLanguageFamily:"Nach Sprachfamilie",clusterByGospelResource:"Nach Evangeliumsressource"},Mh={header:"AKTUELLE GEBETSRUNDE",lap:"Runde",upgs:"UUPGs",separator:" von "},Nh={"%count% people groups in %countries% countries":"%count% Volksgruppen in %countries% Ländern","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% hat %count% Volksgruppen in %countries% Ländern. Die Farbe jedes Punktes zeigt, wie viele Menschen für diese Volksgruppe beten.","1+ People Praying":"1+ Menschen beten","100+ People Praying":"100+ Menschen beten",Adopted:"Angenommen","Adoption Progress":"Adoptionsfortschritt","All Regions":"Alle Regionen","Alternate Names":"Alternative Namen","Clear All":"Alle löschen",Countries:"Länder","Countries in this region":"Länder in dieser Region",Country:"Land",Engaged:"Engagiert","Engagement Progress":"Engagement-Fortschritt","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Jede einzelne der völlig unerreichten Volksgruppen soll von einer Ortsgemeinde adoptiert werden, durch Beten, Geben und Senden","Exact Search":"Exakte Suche","Find unreached people groups by region and country.":"Finde unerreichte Volksgruppen nach Region und Land.","Full Profile":"Vollständiges Profil",Goal:"Ziel","Hide Filters":"Filter ausblenden",Intercessors:"Fürbitter","Load More":"Mehr laden","Loading results...":"Ergebnisse werden geladen...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilisiere 100+ Menschen, die täglich für jede DOXA-Volksgruppe beten","No One Praying":"Niemand betet","No options found":"Keine Standorte gefunden","No unengaged people groups by 2033":"Dass es bis 2033 keine völlig unerreichte Volksgruppe mehr gibt","Not Adopted":"noch nicht adoptiert",Other:"Andere","Page Not Found":"Seite nicht gefunden","People Group":"Personengruppe","People Groups":"Volksgruppen","People committed to praying":"Menschen, die sich dem Beten verpflichtet haben",Population:"Bevölkerung","Prayer Coverage":"Gebetsabdeckung","Prayer coverage progress":"Fortschritt der Gebetsabdeckung",Regions:"Regionen",Religion:"Primäre Religion","Search names, country/continent, religions...":"Suche nach Namen, Land/Kontinent, Religionen...","See %region% dashboard":"Dashboard anzeigen: %region%","See All":"Alle anzeigen",Select:"Auswählen","Show Filters":"Filter anzeigen","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"In %country% gibt es %count% Volksgruppen. Sieh auch auf der Karte nach den Volksgruppen an der Grenze dieses Landes.",Total:"Gesamt","Type to search...":"Geben Sie etwas ein, um danach zu suchen","Unengaged people groups":"Völlig unerreichte Volksgruppen","WAGF Block":"WAGF-Block","WAGF Region":"WAGF-Region","people groups adopted":"adoptierte Volksgruppen","people groups engaged":"engagierte Volksgruppen"},Rh={placeholder:"Volk, Ort, Sprache, Religion",labels:{people:"Volk:",place:"Ort:",language:"Sprache:",religion:"Religion:"},sections:{within:"Innerhalb {selection}",allData:"Alle DOXA-Daten"}},Ih={prayer:"Gebet",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Volksgruppen",regions:"Regionen",countries:"Länder","language-families":"Sprachen",religion:"Religionen",family:"Sprachfamilie",language:"Sprache",dialect:"Dialekt/Varietät",bloc:"Affinitätsblock",cluster:"Cluster",group:"Volksgruppe",pgic:"Volksgruppe im Land",region:"WAGF-Region",block:"WAGF-Block",country:"Land"},Oh={backToLegend:"Back to Legend",closeDetailView:"Close detail view"},Fh={prayForThem:"Pray for them",adoptThem:"Adopt",moreInfo:"More info",zoomIn:"Zoom in",zoomOut:"Zoom out",switchToLightMode:"Switch to light mode",switchToDarkMode:"Switch to dark mode",resetView:"Reset view",toggleFullscreen:"Toggle fullscreen",aboutThisMap:"About this map",closeMenu:"Close menu",reloadMap:"Reload Map",showClusters:"Show Clusters",clusterSettings:"Cluster Settings",startAutoFly:"Start Auto Fly",stopFlight:"Stop Flight",speedLabel:"Speed:",speedOption:{slow:"Slow",normal:"Normal",fast:"Fast"},shareEmbed:"Share & embed",shareSteps:["Embed this map on your site","Create a list of the websites in your city","Train them to embed it too","Train them to train others to embed it too","Multiply maps everywhere for Jesus!"],share:"Share"},Dh={labels:{country:"Country:",population:"Population:",language:"Language:",religion:"Religion:",languageFamily:"Language Family:",peopleCommitted:"Committed to pray:"},messages:{noDescription:"No description available."}},Bh={title:{prayer:"Prayer Progress",engagement:"Engagement Progress",adoption:"Adoption Progress",languageFamilies:"Language Families",doxaRegions:"Doxa Regions",affinityBlocs:"Affinity Blocks",gospelResources:"Gospel Resources"},header:{default:"Legend",collapsed:"Legend",peopleGroupFallback:"People Group"},prayer:{needsPrayer:"Needs Prayer",hasPrayer:"Has Prayer",fullPrayerCoverage:"Full Prayer Coverage"},progress:{title:"Progress",covered:"{covered} of {total} people groups covered in prayer · {pct}%",short:"{covered} of {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Unengaged",hasEngagement:"Engaged"},adoption:{needsAdoption:"Needs Adoption",hasAdoption:"Has Adoption"},columns:{upgs:"UUPGs",population:"Population",name:"Name"},footer:{total:"Total"},sortByUpgs:"Sort by UUPGs",sortByPop:"Sort by Population",colLabel:{religion:"UUPG Religions",prayer:"Prayer Status",engagement:"Engagement Status",adoption:"Adoption Status",status:"Status"},titleBar:{legend:"Legend",peopleGroups:"People Groups",wagfRegions:"WAGF Regions",languages:"Languages"}},Gh={menuComingSoon:"Menu coming soon"},jh={clusterByRegion:"By Doxa Region",clusterByLanguageFamily:"By Language Family",clusterByGospelResource:"By Gospel Resource"},Uh={country:{wagfRegion:"WAGF Region",wagfBlock:"WAGF Bloc",country:"Country",uupgCount:"UUPG Count"}},Kh={header:"CURRENT PRAYER LAP",lap:"Lap",upgs:"UUPGs",separator:" of "},zh={"%count% people groups in %countries% countries":"%count% people groups in %countries% countries","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.","1+ People Praying":"1+ People Praying","100+ People Praying":"100+ People Praying",Adopted:"Adopted","Adoption Progress":"Adoption Progress","All Regions":"All Regions","Alternate Names":"Alternate Names","Clear All":"Clear All",Countries:"Countries","Countries in this region":"Countries in this region",Country:"Country",Engaged:"Engaged","Engagement Progress":"Engagement Progress","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Every unengaged people group adopted by a church committed to prayer, giving, and sending","Exact Search":"Exact Search","Find unreached people groups by region and country.":"Find unreached people groups by region and country.","Full Profile":"Full Profile",Goal:"Goal","Hide Filters":"Hide Filters",Intercessors:"Intercessors","Load More":"Load More","Loading results...":"Loading results...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilize 100+ people praying daily for each DOXA people group","No One Praying":"No One Praying","No options found":"No options found","No unengaged people groups by 2033":"No unengaged people groups by 2033","Not Adopted":"Not Adopted",Other:"Other","Page Not Found":"Page Not Found","People Group":"People Group","People Groups":"People Groups","People committed to praying":"People committed to praying",Population:"Population","Prayer Coverage":"Prayer Coverage","Prayer coverage progress":"Prayer coverage progress",Regions:"Regions",Religion:"Religion","Search names, country/continent, religions...":"Search names, country/continent, religions...","See %region% dashboard":"See %region% dashboard","See All":"See All",Select:"Select","Show Filters":"Show Filters","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.",Total:"Total","Type to search...":"Type to search...","Unengaged people groups":"Unengaged people groups","WAGF Block":"WAGF Block","WAGF Region":"WAGF Region","people groups adopted":"people groups adopted","people groups engaged":"people groups engaged","View country posters":"View country posters","Hide country posters":"Hide country posters","No poster has been generated for this country yet.":"No poster has been generated for this country yet."},Hh={placeholder:"People, place, language, religion",labels:{people:"People:",place:"Place:",language:"Language:",religion:"Religion:"},kinds:{people:"People Group + Country",peopleGroup:"People Group",bloc:"Affinity Block",cluster:"People Cluster",country:"Country",region:"Region",family:"Language Family",languageKind:"Language",dialect:"Dialect",religionKind:"Religion"},sections:{within:"Within {selection}",allData:"All DOXA Data"}},Vh={prayer:"Prayer",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"People Groups (Affinity)",regions:"Regions",countries:"Countries","language-families":"Languages",religion:"Religions",family:"Lang Family",language:"Language",dialect:"Dialect/Variety",bloc:"Affinity Block",cluster:"Cluster",group:"People Group",pgic:"PG in Country",region:"WAGF Region",block:"WAGF Bloc",country:"Country"},Wh={backToLegend:"Volver a la leyenda",closeDetailView:"Cerrar vista de detalle"},Yh={prayForThem:"Ora por ellos",adoptThem:"Adóptalos",moreInfo:"Más información",zoomIn:"Acercar",zoomOut:"Alejar",switchToLightMode:"Cambiar a modo claro",switchToDarkMode:"Cambiar a modo oscuro",resetView:"Restablecer vista",toggleFullscreen:"Alternar pantalla completa",aboutThisMap:"Acerca de este mapa",closeMenu:"Cerrar menú",reloadMap:"Recargar mapa",showClusters:"Mostrar clústeres",clusterSettings:"Ajustes de clústeres",startAutoFly:"Iniciar vuelo automático",stopFlight:"Detener vuelo",speedLabel:"Velocidad:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Compartir e incrustar"},qh={labels:{country:"País:",population:"Población:",language:"Idioma:",religion:"Religión:",languageFamily:"Familia lingüística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"No hay descripción disponible."}},Jh={title:{prayer:"Progreso de oración",engagement:"Progreso de implicación",adoption:"Progreso de adopción",languageFamilies:"Familias lingüísticas",doxaRegions:"Regiones Doxa",affinityBlocs:"Bloques de afinidad",gospelResources:"Recursos del Evangelio"},header:{collapsed:"Leyenda",peopleGroupFallback:"Grupo de personas"},prayer:{needsPrayer:"Necesita oración",hasPrayer:"Tiene oración",fullPrayerCoverage:"Cobertura de oración completa"},progress:{title:"Progreso",covered:"{covered} de {total} grupos de personas cubiertos en oración · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesita implicación",hasEngagement:"Tiene implicación"},adoption:{needsAdoption:"Necesita adopción",hasAdoption:"Tiene adopción"},columns:{upgs:"UUPGs",population:"Población",name:"Nombre"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por población",colLabel:{religion:"Religiones UUPG",prayer:"Estado de oración",engagement:"Estado de compromiso",adoption:"Estado de adopción",status:"Estado"},titleBar:{legend:"Leyenda",peopleGroups:"Pueblos",wagfRegions:"Regiones WAGF",languages:"Idiomas"}},Xh={menuComingSoon:"Menú próximamente"},Zh={clusterByRegion:"Por región Doxa",clusterByLanguageFamily:"Por familia lingüística",clusterByGospelResource:"Por recurso del Evangelio"},Qh={header:"VUELTA DE ORACIÓN ACTUAL",lap:"Vuelta",upgs:"UUPGs",separator:" de "},em={"%count% people groups in %countries% countries":"%count% grupos étnicos en %countries% países","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% tiene %count% grupos étnicos en %countries% países. El color de cada punto indica cuántas personas oran por ese grupo étnico.","1+ People Praying":"1+ personas orando","100+ People Praying":"100+ personas orando",Adopted:"Aprobado","Adoption Progress":"Progreso de la adopción","All Regions":"Todas las regiones","Alternate Names":"Nombres alternativos","Clear All":"Borrar todo",Countries:"Países","Countries in this region":"Países de esta región",Country:"País",Engaged:"Comprometido","Engagement Progress":"Progreso del compromiso","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Cada grupo étnico no evangelizado adoptado por una iglesia comprometida con la oración, la ofrenda y el envío.","Exact Search":"Búsqueda exacta","Find unreached people groups by region and country.":"Encuentra grupos étnicos no alcanzados por región y país.","Full Profile":"Perfil completo",Goal:"Meta","Hide Filters":"Ocultar filtros",Intercessors:"Intercesores","Load More":"Cargar más","Loading results...":"Cargando resultados...","Mobilize 100+ people praying daily for each DOXA people group":"Movilizar a más de 100 personas que oren diariamente por cada grupo étnico DOXA.","No One Praying":"Nadie orando","No options found":"No se han encontrado opciones","No unengaged people groups by 2033":"No habrá grupos étnicos sin evangelizar para 2033","Not Adopted":"No adoptado",Other:"Otros","Page Not Found":"Página no encontrada","People Group":"Grupo Étnico","People Groups":"Grupos Étnicos","People committed to praying":"Personas comprometidas con la oración",Population:"Población","Prayer Coverage":"Cobertura de oración","Prayer coverage progress":"Progreso de la cobertura de oración",Regions:"Regiones",Religion:"Religión","Search names, country/continent, religions...":"Buscar nombres, país/continente, religiones...","See %region% dashboard":"Ver el panel de %region%","See All":"Ver todo",Select:"Seleccionar","Show Filters":"Mostrar filtros","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Hay %count% grupos étnicos en %country%. Consulta también el mapa para ver los grupos étnicos en la frontera de este país.",Total:"Total","Type to search...":"Escribe para buscar...","Unengaged people groups":"Grupos étnicos no comprometidos","WAGF Block":"Bloque WAGF","WAGF Region":"Región de la WAGF","people groups adopted":"grupos de personas adoptados","people groups engaged":"grupos étnicos comprometidos"},tm={placeholder:"Pueblo, lugar, idioma, religión",labels:{people:"Pueblo:",place:"Lugar:",language:"Idioma:",religion:"Religión:"},kinds:{people:"Pueblo + país",peopleGroup:"Pueblo",bloc:"Bloque de afinidad",cluster:"Clúster de pueblos",country:"País",region:"Región",family:"Familia lingüística",languageKind:"Idioma",dialect:"Dialecto",religionKind:"Religión"}},om={prayer:"Oración",adoption:"Adopción",engagement:"Compromiso","affinity-blocks":"Pueblos",regions:"Regiones",countries:"Países","language-families":"Idiomas",religion:"Religiones",family:"Familia lingüística",language:"Idioma",dialect:"Dialecto/Variedad",bloc:"Bloque de afinidad",cluster:"Clúster",group:"Pueblo",pgic:"Pueblo en país",region:"Región WAGF",block:"Bloque WAGF",country:"País"},nm={backToLegend:"Retour à la légende",closeDetailView:"Fermer la vue détaillée"},am={prayForThem:"Priez pour eux",adoptThem:"Adoptez-les",moreInfo:"Plus d'infos",zoomIn:"Zoom avant",zoomOut:"Zoom arrière",switchToLightMode:"Passer au mode clair",switchToDarkMode:"Passer au mode sombre",resetView:"Réinitialiser la vue",toggleFullscreen:"Basculer en plein écran",aboutThisMap:"À propos de cette carte",closeMenu:"Fermer le menu",reloadMap:"Recharger la carte",showClusters:"Afficher les clusters",clusterSettings:"Paramètres des clusters",startAutoFly:"Démarrer le vol auto",stopFlight:"Arrêter le vol",speedLabel:"Vitesse :",speedOption:{slow:"Lente",normal:"Normale",fast:"Rapide"},shareEmbed:"Partager et intégrer"},rm={labels:{country:"Pays :",population:"Population :",language:"Langue :",religion:"Religion :",languageFamily:"Famille de langues :",peopleCommitted:"Engagés à prier :"},messages:{noDescription:"Aucune description disponible."}},sm={title:{prayer:"Progression de la prière",engagement:"Progression de l'engagement",adoption:"Progression de l'adoption",languageFamilies:"Familles de langues",doxaRegions:"Régions Doxa",affinityBlocs:"Blocs d'affinité",gospelResources:"Ressources de l'Évangile"},header:{collapsed:"Légende",peopleGroupFallback:"Groupe de personnes"},prayer:{needsPrayer:"Besoin de prière",hasPrayer:"Prière en cours",fullPrayerCoverage:"Couverture de prière complète"},progress:{title:"Progression",covered:"{covered} sur {total} groupes de personnes couverts par la prière · {pct}%",short:"{covered} sur {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Besoin d'engagement",hasEngagement:"Engagement en cours"},adoption:{needsAdoption:"Besoin d'adoption",hasAdoption:"Adoption en cours"},columns:{upgs:"UUPGs",population:"Population",name:"Nom"},footer:{total:"Total"},sortByUpgs:"Trier par UUPG",sortByPop:"Trier par population",colLabel:{religion:"Religions UUPG",prayer:"Statut de prière",engagement:"Statut d'engagement",adoption:"Statut d'adoption",status:"Statut"},titleBar:{legend:"Légende",peopleGroups:"Peuples",wagfRegions:"Régions WAGF",languages:"Langues"}},im={menuComingSoon:"Menu bientôt disponible"},lm={clusterByRegion:"Par région Doxa",clusterByLanguageFamily:"Par famille de langues",clusterByGospelResource:"Par ressource de l'Évangile"},cm={country:{wagfRegion:"Région WAGF",wagfBlock:"Bloc WAGF",country:"Pays",uupgCount:"Nombre d'UUPG"}},um={header:"TOUR DE PRIÈRE ACTUEL",lap:"Tour",upgs:"UUPGs",separator:" sur "},dm={"%count% people groups in %countries% countries":"%count% peuples dans %countries% pays","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% compte %count% peuples répartis dans %countries% pays. La couleur de chaque point indique combien de personnes prient pour ce peuple.","1+ People Praying":"1+ personnes en prière","100+ People Praying":"100+ personnes en prière",Adopted:"Adopté","Adoption Progress":"Progrès de l'adoption","All Regions":"Toutes les régions","Alternate Names":"Autres noms","Clear All":"Tout effacer",Countries:"Pays","Countries in this region":"Pays de cette région",Country:"Pays",Engaged:"Engagé","Engagement Progress":"Progrès de l'engagement","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Chaque peuple non engagé adopté par une église locale engagée dans la prière, le don et l'envoi","Exact Search":"Recherche exacte","Find unreached people groups by region and country.":"Trouvez des peuples non atteints par région et par pays.","Full Profile":"Profil complet",Goal:"Objectif","Hide Filters":"Masquer les filtres",Intercessors:"Intercesseurs","Load More":"Afficher plus","Loading results...":"Chargement des résultats...","Mobilize 100+ people praying daily for each DOXA people group":"Mobiliser plus de 100 personnes priant chaque jour pour chaque peuple DOXA","No One Praying":"Personne ne prie","No options found":"Aucun lieu trouvé","No unengaged people groups by 2033":"Plus aucun peuple non engagé d'ici 2033","Not Adopted":"Non adopté",Other:"Autre","Page Not Found":"Page introuvable","People Group":"Peuple","People Groups":"Peuples","People committed to praying":"Personnes engagées dans la prière",Population:"Population","Prayer Coverage":"Couverture de prière","Prayer coverage progress":"Progression de la couverture de prière",Regions:"Régions",Religion:"Religion","Search names, country/continent, religions...":"Rechercher des noms, pays/continent, religions...","See %region% dashboard":"Voir le tableau de bord : %region%","See All":"Tout afficher",Select:"Sélectionner","Show Filters":"Afficher les filtres","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Il y a %count% peuples en %country%. Consultez la carte pour découvrir également les peuples situés à la frontière de ce pays.",Total:"Total","Type to search...":"Entrer votre recherche","Unengaged people groups":"Peuples non engagés","WAGF Block":"Bloc WAGF","WAGF Region":"Région WAGF","people groups adopted":"peuples adoptés","people groups engaged":"peuples engagés"},pm={placeholder:"Peuple, lieu, langue, religion",labels:{people:"Peuple :",place:"Lieu :",language:"Langue :",religion:"Religion :"},kinds:{people:"Peuple + pays",peopleGroup:"Peuple",bloc:"Bloc d'affinité",cluster:"Grappe de peuples",country:"Pays",region:"Région",family:"Famille linguistique",languageKind:"Langue",dialect:"Dialecte",religionKind:"Religion"}},gm={prayer:"Prière",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Peuples",regions:"Régions",countries:"Pays","language-families":"Langues",religion:"Religions",family:"Famille linguistique",language:"Langue",dialect:"Dialecte/Variété",bloc:"Bloc d'affinité",cluster:"Grappe",group:"Peuple",pgic:"Peuple dans le pays",region:"Région WAGF",block:"Bloc WAGF",country:"Pays"},fm={backToLegend:"लेजेंड पर वापस जाएं",closeDetailView:"विवरण दृश्य बंद करें"},hm={prayForThem:"उनके लिए प्रार्थना करें",adoptThem:"उन्हें गोद लें",moreInfo:"अधिक जानकारी",zoomIn:"ज़ूम इन",zoomOut:"ज़ूम आउट",switchToLightMode:"लाइट मोड पर जाएं",switchToDarkMode:"डार्क मोड पर जाएं",resetView:"दृश्य रीसेट करें",toggleFullscreen:"फ़ुलस्क्रीन टॉगल करें",aboutThisMap:"इस मानचित्र के बारे में",closeMenu:"मेनू बंद करें",reloadMap:"मानचित्र पुनः लोड करें",showClusters:"क्लस्टर दिखाएं",clusterSettings:"क्लस्टर सेटिंग्स",startAutoFly:"ऑटो फ्लाई शुरू करें",stopFlight:"उड़ान रोकें",speedLabel:"गति:",speedOption:{slow:"धीमी",normal:"सामान्य",fast:"तेज़"},shareEmbed:"साझा करें और एम्बेड करें"},mm={labels:{country:"देश:",population:"जनसंख्या:",language:"भाषा:",religion:"धर्म:",languageFamily:"भाषा परिवार:",peopleCommitted:"प्रार्थना के लिए प्रतिबद्ध:"},messages:{noDescription:"कोई विवरण उपलब्ध नहीं है।"}},bm={title:{prayer:"प्रार्थना प्रगति",engagement:"सहभागिता प्रगति",adoption:"गोद लेने की प्रगति",languageFamilies:"भाषा परिवार",doxaRegions:"Doxa क्षेत्र",affinityBlocs:"समानता समूह",gospelResources:"सुसमाचार संसाधन"},header:{collapsed:"किंवदंती",peopleGroupFallback:"जनजाति समूह"},prayer:{needsPrayer:"प्रार्थना चाहिए",hasPrayer:"प्रार्थना है",fullPrayerCoverage:"पूर्ण प्रार्थना कवरेज"},progress:{title:"प्रगति",covered:"{total} में से {covered} जनजाति समूह प्रार्थना में कवर · {pct}%",short:"{total} में से {covered} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"सहभागिता चाहिए",hasEngagement:"सहभागिता है"},adoption:{needsAdoption:"गोद लेना चाहिए",hasAdoption:"गोद लिया गया"},columns:{upgs:"UUPGs",population:"जनसंख्या"},footer:{total:"कुल"}},ym={menuComingSoon:"मेनू शीघ्र आ रहा है"},_m={clusterByRegion:"Doxa क्षेत्र के अनुसार",clusterByLanguageFamily:"भाषा परिवार के अनुसार",clusterByGospelResource:"सुसमाचार संसाधन के अनुसार"},vm={header:"वर्तमान प्रार्थना चक्र",lap:"चक्र",upgs:"UUPGs",separator:" में से "},km={"%count% people groups in %countries% countries":"%countries% देशों में %count% लोगों के समूह","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% में %countries% देशों में %count% लोगों के समूह हैं। प्रत्येक बिंदु का रंग दर्शाता है कि उस लोगों के समूह के लिए कितने लोग प्रार्थना कर रहे हैं।","1+ People Praying":"1+ लोग प्रार्थना कर रहे हैं","100+ People Praying":"100+ लोग प्रार्थना कर रहे हैं",Adopted:"दत्तक लिया गया","Adoption Progress":"दत्तक ग्रहण की प्रगति","All Regions":"सभी क्षेत्र","Alternate Names":"वैकल्पिक नाम","Clear All":"सभी साफ़ करें",Countries:"देश","Countries in this region":"इस क्षेत्र के देश",Country:"देश",Engaged:"प्रवेशित","Engagement Progress":"प्रवेश की प्रगति","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"प्रत्येक असंलग्न जनसमूह जिसे प्रार्थना, दान और भेजने के लिए प्रतिबद्ध एक चर्च ने अपनाया है।","Exact Search":"सटीक खोज","Find unreached people groups by region and country.":"क्षेत्र और देश के अनुसार अगम्य लोगों के समूह खोजें।","Full Profile":"पूर्ण प्रोफ़ाइल",Goal:"लक्ष्य","Hide Filters":"फ़िल्टर छिपाएँ",Intercessors:"मध्यस्थ","Load More":"और लोड करें","Loading results...":"परिणाम लोड हो रहे हैं..।","Mobilize 100+ people praying daily for each DOXA people group":"प्रत्येक DOXA जनसमूह के लिए प्रतिदिन प्रार्थना करने हेतु 100+ लोगों को सक्रिय करें।","No One Praying":"कोई प्रार्थना नहीं कर रहा","No options found":"कोई विकल्प नहीं मिला","No unengaged people groups by 2033":"2033 तक कोई भी संलग्न न किया गया जनसमूह नहीं रहेगा।","Not Adopted":"दत्तक नहीं लिया गया",Other:"अन्य","Page Not Found":"पृष्ठ नहीं मिला","People Group":"लोगों का समूह","People Groups":"लोगों के समूह","People committed to praying":"प्रार्थना के लिए प्रतिबद्ध लोग",Population:"जनसँख्या","Prayer Coverage":"प्रार्थना कवरेज","Prayer coverage progress":"प्रार्थना कवरेज की प्रगति",Regions:"क्षेत्र",Religion:"धर्म","Search names, country/continent, religions...":"नाम, देश/महाद्वीप, धर्म खोजें..।","See %region% dashboard":"%region% डैशबोर्ड देखें","See All":"सभी देखें",Select:"चयन/छंटनी","Show Filters":"फ़िल्टर दिखाएँ","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"%country% में %count% लोगों के समूह हैं। इस देश की सीमा पर स्थित लोगों के समूहों के लिए मानचित्र भी देखें।",Total:"संपूर्ण","Type to search...":"खोजने के लिए टाइप करें..।","Unengaged people groups":"अनलग्न लोगों के समूह","WAGF Block":"WAGF ब्लॉक","WAGF Region":"डब्ल्यूएजीएफ क्षेत्र","people groups adopted":"लोगों के समूहों ने अपनाया","people groups engaged":"प्रवेशित लोगों के समूह"},wm={placeholder:"लोग, स्थान, भाषा, धर्म",labels:{people:"लोग:",place:"स्थान:",language:"भाषा:",religion:"धर्म:"}},xm={backToLegend:"Torna alla legenda",closeDetailView:"Chiudi vista dettaglio"},Am={prayForThem:"Prega per loro",adoptThem:"Adottali",moreInfo:"Più informazioni",zoomIn:"Ingrandisci",zoomOut:"Riduci",switchToLightMode:"Passa alla modalità chiara",switchToDarkMode:"Passa alla modalità scura",resetView:"Reimposta vista",toggleFullscreen:"Attiva/disattiva schermo intero",aboutThisMap:"Informazioni su questa mappa",closeMenu:"Chiudi menu",reloadMap:"Ricarica mappa",showClusters:"Mostra cluster",clusterSettings:"Impostazioni cluster",startAutoFly:"Avvia volo automatico",stopFlight:"Ferma volo",speedLabel:"Velocità:",speedOption:{slow:"Lenta",normal:"Normale",fast:"Veloce"},shareEmbed:"Condividi e incorpora"},Sm={labels:{country:"Paese:",population:"Popolazione:",language:"Lingua:",religion:"Religione:",languageFamily:"Famiglia linguistica:",peopleCommitted:"Impegnati a pregare:"},messages:{noDescription:"Nessuna descrizione disponibile."}},$m={title:{prayer:"Avanzamento della preghiera",engagement:"Avanzamento dell'impegno",adoption:"Avanzamento dell'adozione",languageFamilies:"Famiglie linguistiche",doxaRegions:"Regioni Doxa",affinityBlocs:"Blocchi di affinità",gospelResources:"Risorse del Vangelo"},header:{collapsed:"Legenda",peopleGroupFallback:"Gruppo di persone"},prayer:{needsPrayer:"Necessita preghiera",hasPrayer:"Ha preghiera",fullPrayerCoverage:"Copertura di preghiera completa"},progress:{title:"Avanzamento",covered:"{covered} di {total} gruppi di persone coperti dalla preghiera · {pct}%",short:"{covered} di {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necessita impegno",hasEngagement:"Ha impegno"},adoption:{needsAdoption:"Necessita adozione",hasAdoption:"Ha adozione"},columns:{upgs:"UUPGs",population:"Popolazione"},footer:{total:"Totale"}},Em={menuComingSoon:"Menu in arrivo"},Cm={clusterByRegion:"Per regione Doxa",clusterByLanguageFamily:"Per famiglia linguistica",clusterByGospelResource:"Per risorsa del Vangelo"},Lm={header:"GIRO DI PREGHIERA ATTUALE",lap:"Giro",upgs:"UUPGs",separator:" di "},Tm={placeholder:"Popolo, luogo, lingua, religione",labels:{people:"Popolo:",place:"Luogo:",language:"Lingua:",religion:"Religione:"}},Pm={backToLegend:"Voltar à legenda",closeDetailView:"Fechar vista de detalhe"},Mm={prayForThem:"Ore por eles",adoptThem:"Adote-os",moreInfo:"Mais informações",zoomIn:"Ampliar",zoomOut:"Reduzir",switchToLightMode:"Mudar para modo claro",switchToDarkMode:"Mudar para modo escuro",resetView:"Repor vista",toggleFullscreen:"Alternar ecrã inteiro",aboutThisMap:"Sobre este mapa",closeMenu:"Fechar menu",reloadMap:"Recarregar mapa",showClusters:"Mostrar clusters",clusterSettings:"Definições de clusters",startAutoFly:"Iniciar voo automático",stopFlight:"Parar voo",speedLabel:"Velocidade:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Partilhar e incorporar"},Nm={labels:{country:"País:",population:"População:",language:"Língua:",religion:"Religião:",languageFamily:"Família linguística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"Sem descrição disponível."}},Rm={title:{prayer:"Progresso da oração",engagement:"Progresso do envolvimento",adoption:"Progresso da adoção",languageFamilies:"Famílias linguísticas",doxaRegions:"Regiões Doxa",affinityBlocs:"Blocos de afinidade",gospelResources:"Recursos do Evangelho"},header:{collapsed:"Legenda",peopleGroupFallback:"Grupo de pessoas"},prayer:{needsPrayer:"Precisa de oração",hasPrayer:"Tem oração",fullPrayerCoverage:"Cobertura de oração completa"},progress:{title:"Progresso",covered:"{covered} de {total} grupos de pessoas cobertos em oração · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Precisa de envolvimento",hasEngagement:"Tem envolvimento"},adoption:{needsAdoption:"Precisa de adoção",hasAdoption:"Tem adoção"},columns:{upgs:"UUPGs",population:"População",name:"Nome"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por população",colLabel:{religion:"Religiões UUPG",prayer:"Status de oração",engagement:"Status de engajamento",adoption:"Status de adoção",status:"Status"},titleBar:{legend:"Legenda",peopleGroups:"Povos",wagfRegions:"Regiões WAGF",languages:"Idiomas"}},Im={menuComingSoon:"Menu em breve"},Om={clusterByRegion:"Por região Doxa",clusterByLanguageFamily:"Por família linguística",clusterByGospelResource:"Por recurso do Evangelho"},Fm={header:"VOLTA DE ORAÇÃO ATUAL",lap:"Volta",upgs:"UUPGs",separator:" de "},Dm={"%count% people groups in %countries% countries":"%count% grupos étnicos em %countries% países","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% tem %count% grupos étnicos em %countries% países. A cor de cada ponto indica quantas pessoas oram por esse grupo étnico.","1+ People Praying":"1+ pessoas orando","100+ People Praying":"100+ pessoas orando",Adopted:"Aprovado","Adoption Progress":"Progresso da adoção","All Regions":"Todas as regiões","Alternate Names":"Nomes alternativos","Clear All":"Limpar tudo",Countries:"Países","Countries in this region":"Países desta região",Country:"País",Engaged:"Engajado","Engagement Progress":"Progresso do engajamento","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Cada grupo étnico não engajado adotado por uma igreja comprometida com a oração, contribuição e o envio","Exact Search":"Pesquisa exata","Find unreached people groups by region and country.":"Encontre grupos étnicos não alcançados por região e país.","Full Profile":"Perfil completo",Goal:"Meta","Hide Filters":"Ocultar filtros",Intercessors:"Intercessores","Load More":"Carregar mais","Loading results...":"A carregar resultados...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilizar mais de 100 pessoas para orar diariamente por cada grupo étnico DOXA","No One Praying":"Ninguém orando","No options found":"Não foram encontradas opções","No unengaged people groups by 2033":"Nenhum grupo étnico não engajado até 2033","Not Adopted":"Não adotado",Other:"Outros","Page Not Found":"Página não encontrada","People Group":"Grupo étnico","People Groups":"Grupos étnicos","People committed to praying":"Pessoas comprometidas com a oração",Population:"Aplicação","Prayer Coverage":"Cobertura de oração","Prayer coverage progress":"Progresso da cobertura de oração",Regions:"Regiões",Religion:"Religião","Search names, country/continent, religions...":"Busque nomes, país/continente, religiões...","See %region% dashboard":"Ver o painel: %region%","See All":"Ver tudo",Select:"Selecionar","Show Filters":"Mostrar filtros","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Existem %count% grupos étnicos em %country%. Verifique no mapa também os grupos étnicos na fronteira deste país.",Total:"Total","Type to search...":"Digite para pesquisar...","Unengaged people groups":"Grupos étnicos não engajados","WAGF Block":"Bloco WAGF","WAGF Region":"Região da WAGF","people groups adopted":"grupos étnicos adotados","people groups engaged":"grupos étnicos engajados"},Bm={placeholder:"Povo, local, língua, religião",labels:{people:"Povo:",place:"Local:",language:"Língua:",religion:"Religião:"},kinds:{people:"Povo + país",peopleGroup:"Povo",bloc:"Bloco de afinidade",cluster:"Agrupamento de povos",country:"País",region:"Região",family:"Família linguística",languageKind:"Idioma",dialect:"Dialeto",religionKind:"Religião"}},Gm={prayer:"Oração",adoption:"Adoção",engagement:"Engajamento","affinity-blocks":"Povos",regions:"Regiões",countries:"Países","language-families":"Idiomas",religion:"Religiões",family:"Família linguística",language:"Idioma",dialect:"Dialeto/Variedade",bloc:"Bloco de afinidade",cluster:"Agrupamento",group:"Povo",pgic:"Povo no país",region:"Região WAGF",block:"Bloco WAGF",country:"País"},jm={backToLegend:"Înapoi la legendă",closeDetailView:"Închide vizualizarea detaliată"},Um={prayForThem:"Roagă-te pentru ei",adoptThem:"Adoptă-i",moreInfo:"Mai multe informații",zoomIn:"Mărește",zoomOut:"Micșorează",switchToLightMode:"Comută la modul luminos",switchToDarkMode:"Comută la modul întunecat",resetView:"Resetează vizualizarea",toggleFullscreen:"Comută ecran complet",aboutThisMap:"Despre această hartă",closeMenu:"Închide meniul",reloadMap:"Reîncarcă harta",showClusters:"Arată clusterele",clusterSettings:"Setări clustere",startAutoFly:"Pornește zborul automat",stopFlight:"Oprește zborul",speedLabel:"Viteză:",speedOption:{slow:"Lent",normal:"Normal",fast:"Rapid"},shareEmbed:"Partajează și încorporează"},Km={labels:{country:"Țară:",population:"Populație:",language:"Limbă:",religion:"Religie:",languageFamily:"Familie de limbi:",peopleCommitted:"Angajați să se roage:"},messages:{noDescription:"Nicio descriere disponibilă."}},zm={title:{prayer:"Progresul rugăciunii",engagement:"Progresul implicării",adoption:"Progresul adopției",languageFamilies:"Familii de limbi",doxaRegions:"Regiuni Doxa",affinityBlocs:"Blocuri de afinitate",gospelResources:"Resurse ale Evangheliei"},header:{collapsed:"Legendă",peopleGroupFallback:"Grup de popoare"},prayer:{needsPrayer:"Necesită rugăciune",hasPrayer:"Are rugăciune",fullPrayerCoverage:"Acoperire completă de rugăciune"},progress:{title:"Progres",covered:"{covered} din {total} grupuri de popoare acoperite în rugăciune · {pct}%",short:"{covered} din {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesită implicare",hasEngagement:"Are implicare"},adoption:{needsAdoption:"Necesită adopție",hasAdoption:"Are adopție"},columns:{upgs:"UUPGs",population:"Populație"},footer:{total:"Total"}},Hm={menuComingSoon:"Meniu în curând"},Vm={clusterByRegion:"După regiune Doxa",clusterByLanguageFamily:"După familia de limbi",clusterByGospelResource:"După resursa Evangheliei"},Wm={header:"TURUL DE RUGĂCIUNE CURENT",lap:"Tur",upgs:"UUPGs",separator:" din "},Ym={placeholder:"Popor, loc, limbă, religie",labels:{people:"Popor:",place:"Loc:",language:"Limbă:",religion:"Religie:"}},qm={backToLegend:"Назад к легенде",closeDetailView:"Закрыть подробный вид"},Jm={prayForThem:"Молитесь о них",adoptThem:"Усыновите их",moreInfo:"Подробнее",zoomIn:"Приблизить",zoomOut:"Отдалить",switchToLightMode:"Переключить на светлый режим",switchToDarkMode:"Переключить на тёмный режим",resetView:"Сбросить вид",toggleFullscreen:"Полноэкранный режим",aboutThisMap:"Об этой карте",closeMenu:"Закрыть меню",reloadMap:"Перезагрузить карту",showClusters:"Показать кластеры",clusterSettings:"Настройки кластеров",startAutoFly:"Начать авто-полёт",stopFlight:"Остановить полёт",speedLabel:"Скорость:",speedOption:{slow:"Медленно",normal:"Нормально",fast:"Быстро"},shareEmbed:"Поделиться и встроить"},Xm={labels:{country:"Страна:",population:"Население:",language:"Язык:",religion:"Религия:",languageFamily:"Языковая семья:",peopleCommitted:"Обязались молиться:"},messages:{noDescription:"Описание недоступно."}},Zm={title:{prayer:"Прогресс молитвы",engagement:"Прогресс вовлечённости",adoption:"Прогресс усыновления",languageFamilies:"Языковые семьи",doxaRegions:"Регионы Doxa",affinityBlocs:"Блоки родства",gospelResources:"Евангельские ресурсы"},header:{collapsed:"Условные обозначения",peopleGroupFallback:"Народная группа"},prayer:{needsPrayer:"Нуждается в молитве",hasPrayer:"Есть молитва",fullPrayerCoverage:"Полное молитвенное покрытие"},progress:{title:"Прогресс",covered:"{covered} из {total} народных групп охвачены молитвой · {pct}%",short:"{covered} из {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Нуждается в вовлечённости",hasEngagement:"Есть вовлечённость"},adoption:{needsAdoption:"Нуждается в усыновлении",hasAdoption:"Есть усыновление"},columns:{upgs:"UUPGs",population:"Население",name:"Название"},footer:{total:"Всего"},sortByUpgs:"Сортировать по UUPG",sortByPop:"Сортировать по населению",colLabel:{religion:"Религии UUPG",prayer:"Статус молитвы",engagement:"Статус вовлечённости",adoption:"Статус усыновления",status:"Статус"},titleBar:{legend:"Легенда",peopleGroups:"Народы",wagfRegions:"Регионы WAGF",languages:"Языки"}},Qm={menuComingSoon:"Меню скоро появится"},eb={clusterByRegion:"По региону Doxa",clusterByLanguageFamily:"По языковой семье",clusterByGospelResource:"По евангельскому ресурсу"},tb={header:"ТЕКУЩИЙ КРУГ МОЛИТВЫ",lap:"Круг",upgs:"UUPGs",separator:" из "},ob={"%count% people groups in %countries% countries":"%count% групп людей в %countries% странах","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"В регионе %region% — %count% групп людей в %countries% странах. Цвет каждой точки показывает, сколько человек молится за эту группу людей.","1+ People Praying":"1+ человек молится","100+ People Praying":"100+ человек молятся",Adopted:"Принято","Adoption Progress":"Прогресс принятия","All Regions":"Все регионы","Alternate Names":"Альтернативные названия","Clear All":"Очистить всё",Countries:"Страны","Countries in this region":"Страны этого региона",Country:"Страна",Engaged:"Вовлечённый","Engagement Progress":"Прогресс вовлечения","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Каждая незадействованная народность принята церковью, приверженной молитве, пожертвованиям и посылке миссионеров","Exact Search":"Точный поиск","Find unreached people groups by region and country.":"Найдите недостигнутые группы людей по регионам и странам.","Full Profile":"Полный профиль",Goal:"Цель","Hide Filters":"Скрыть фильтры",Intercessors:"Ходатаи","Load More":"Загрузить еще","Loading results...":"Загрузка результатов...","Mobilize 100+ people praying daily for each DOXA people group":"Мобилизуйте 100+ человек для ежедневной молитвы за каждую народность DOXA","No One Praying":"Никто не молится","No options found":"Вариантов не найдено","No unengaged people groups by 2033":"К 2033 году не останется незадействованных народов","Not Adopted":"Не принято",Other:"Другое","Page Not Found":"Страница не найдена","People Group":"Группа людей","People Groups":"Группы людей","People committed to praying":"Люди, посвятившие себя молитве",Population:"Население","Prayer Coverage":"Молитвенное покрытие","Prayer coverage progress":"Прогресс молитвенного покрытия",Regions:"Регионы",Religion:"Религия","Search names, country/continent, religions...":"Поиск по именам, странам/континентам, религиям...","See %region% dashboard":"Открыть панель: %region%","See All":"Смотреть все",Select:"Выбрать","Show Filters":"Показать фильтры","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Страна %country% насчитывает %count% групп людей. Проверьте также на карте группы людей, расположенные вдоль границ этой страны.",Total:"Итого","Type to search...":"Введите текст для поиска...","Unengaged people groups":"Невовлечённые группы людей","WAGF Block":"Блок WAGF","WAGF Region":"Регион WAGF","people groups adopted":"принятые группы людей","people groups engaged":"вовлечённые группы людей"},nb={placeholder:"Народ, место, язык, религия",labels:{people:"Народ:",place:"Место:",language:"Язык:",religion:"Религия:"},kinds:{people:"Народ + страна",peopleGroup:"Народ",bloc:"Блок родства",cluster:"Кластер народов",country:"Страна",region:"Регион",family:"Языковая семья",languageKind:"Язык",dialect:"Диалект",religionKind:"Религия"}},ab={prayer:"Молитва",adoption:"Усыновление",engagement:"Вовлечённость","affinity-blocks":"Народы",regions:"Регионы",countries:"Страны","language-families":"Языки",religion:"Религии",family:"Языковая семья",language:"Язык",dialect:"Диалект/вариант",bloc:"Блок родства",cluster:"Кластер",group:"Народ",pgic:"Народ в стране",region:"Регион WAGF",block:"Блок WAGF",country:"Страна"},rb={backToLegend:"返回图例",closeDetailView:"关闭详情视图"},sb={prayForThem:"为他们祷告",adoptThem:"认领他们",moreInfo:"更多信息",zoomIn:"放大",zoomOut:"缩小",switchToLightMode:"切换至浅色模式",switchToDarkMode:"切换至深色模式",resetView:"重置视图",toggleFullscreen:"切换全屏",aboutThisMap:"关于此地图",closeMenu:"关闭菜单",reloadMap:"重新加载地图",showClusters:"显示聚类",clusterSettings:"聚类设置",startAutoFly:"开始自动飞行",stopFlight:"停止飞行",speedLabel:"速度:",speedOption:{slow:"慢",normal:"正常",fast:"快"},shareEmbed:"分享与嵌入"},ib={labels:{country:"国家:",population:"人口:",language:"语言:",religion:"宗教:",languageFamily:"语系:",peopleCommitted:"承诺祷告人数:"},messages:{noDescription:"暂无描述。"}},lb={title:{prayer:"祷告进度",engagement:"参与进度",adoption:"认领进度",languageFamilies:"语系",doxaRegions:"Doxa 区域",affinityBlocs:"亲缘板块",gospelResources:"福音资源"},header:{collapsed:"图例",peopleGroupFallback:"民族群体"},prayer:{needsPrayer:"需要祷告",hasPrayer:"已有祷告",fullPrayerCoverage:"全面祷告覆盖"},progress:{title:"进度",covered:"{total} 个民族群体中已有 {covered} 个被祷告覆盖 · {pct}%",short:"{covered} / {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"需要参与",hasEngagement:"已有参与"},adoption:{needsAdoption:"需要认领",hasAdoption:"已有认领"},columns:{upgs:"UUPGs",population:"人口"},footer:{total:"总计"}},cb={menuComingSoon:"菜单即将推出"},ub={clusterByRegion:"按 Doxa 区域",clusterByLanguageFamily:"按语系",clusterByGospelResource:"按福音资源"},db={header:"当前祷告轮次",lap:"第",upgs:"UUPGs",separator:" / "},pb={placeholder:"民族、地点、语言、宗教",labels:{people:"民族:",place:"地点:",language:"语言:",religion:"宗教:"}};/*! * shared v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. diff --git a/public/doxa-maps/my-upg-100-list/poster-wall/index.html b/public/doxa-maps/my-upg-100-list/poster-wall/index.html index a322e3047..bcdb8400c 100644 --- a/public/doxa-maps/my-upg-100-list/poster-wall/index.html +++ b/public/doxa-maps/my-upg-100-list/poster-wall/index.html @@ -29,7 +29,7 @@ - + - + - + - + - + - + - + - + + window.FORGE.manifest = {"schema":"doxa-maps-manifest@1","generatedFrom":"plugin-designs/*/*.vue","embedBase":".","bundleCount":22,"profileCount":34,"bundles":[{"bundle":"all-people-groups","scriptUrl":"./all-people-groups/all-people-groups.js","output":"doxa-maps/all-people-groups/all-people-groups.js","integrity":"sha384-cqk7oshuPW5FdnbZ/DyfBBXN2FObAI+V1jrbxmZR2xzNiBtWG65PETQ5/w5PCDB2","elements":["all-people-groups"],"profiles":[{"profile":"all-people-groups","file":"all-people-groups.vue","description":"All 12,379 people groups (peoplegroups.org) in four colors — reached,","element":"all-people-groups","type":"single","isMap":true,"iframeUrl":"./all-people-groups/all-people-groups/index.html","scriptUrl":"./all-people-groups/all-people-groups.js","embed":{"iframe":"\u003ciframe src=\"./all-people-groups/all-people-groups/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./all-people-groups/all-people-groups.js\" integrity=\"sha384-cqk7oshuPW5FdnbZ/DyfBBXN2FObAI+V1jrbxmZR2xzNiBtWG65PETQ5/w5PCDB2\" crossorigin=\"anonymous\">\u003c/script>\n\u003call-people-groups profile-config='{\"profile\":\"all-people-groups\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/all-people-groups>"},"bundle":"all-people-groups"}]},{"bundle":"big-picture","scriptUrl":"./big-picture/big-picture.js","output":"doxa-maps/big-picture/big-picture.js","integrity":"sha384-v0b+aZ7TBxmgUIBBLdKEm6HzwjY3jAGyOFNsKeKCKY4EIRpiWRTcNLavAitHRt8h","elements":["bp-big-picture","bp-research-header","people-groups-grid"],"composes":["bp-research-header","people-groups-grid"],"profiles":[{"profile":"big-picture","file":"big-picture.vue","description":"The Cat-4 composite that PAIRS the two real capability elements of the","element":"bp-big-picture","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./big-picture/big-picture/index.html","scriptUrl":"./big-picture/big-picture.js","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./big-picture/big-picture.js\" integrity=\"sha384-v0b+aZ7TBxmgUIBBLdKEm6HzwjY3jAGyOFNsKeKCKY4EIRpiWRTcNLavAitHRt8h\" crossorigin=\"anonymous\">\u003c/script>\n\u003cbp-big-picture profile-config='{\"profile\":\"big-picture\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/bp-big-picture>"},"instances":[{"id":"big-picture","title":"Big Picture — research header ↔ people-groups grid (composite)","apiBaseUrl":"","props":{"profile":"big-picture","provider":"maplibre","instanceId":"bp-big-picture"},"element":"bp-big-picture","iframeUrl":"./big-picture/big-picture/big-picture/index.html","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/big-picture/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"frontier","title":"Big Picture — frontier accent","apiBaseUrl":"","props":{"profile":"big-picture","provider":"maplibre","instanceId":"bp-big-picture-frontier","accent":"#22d3ee","title":"Big Picture — Frontier Focus"},"element":"bp-big-picture","iframeUrl":"./big-picture/big-picture/frontier/index.html","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/frontier/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"big-picture"}]},{"bundle":"cities-internet","scriptUrl":"./cities-internet/cities-internet.js","output":"doxa-maps/cities-internet/cities-internet.js","integrity":"sha384-tNig8gXdCocWVKD5iXR6iRqiAr7msWFtcFKzYif0L0G5i/RM+HI+SO8oR5c6O+5R","elements":["cities-internet-map"],"profiles":[{"profile":"connectivity-list","file":"connectivity-list.vue","description":"Countries where DX people groups live, grouped by region, showing measured internet penetration","element":"cities-internet-map","type":"single","isMap":false,"iframeUrl":"./cities-internet/connectivity-list/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/connectivity-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-tNig8gXdCocWVKD5iXR6iRqiAr7msWFtcFKzYif0L0G5i/RM+HI+SO8oR5c6O+5R\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"connectivity-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}},{"profile":"connectivity-map","file":"connectivity-map.vue","description":"Every country shaded by measured internet penetration, with its named carriers and dominant","element":"cities-internet-map","type":"single","isMap":true,"iframeUrl":"./cities-internet/connectivity-map/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/connectivity-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-tNig8gXdCocWVKD5iXR6iRqiAr7msWFtcFKzYif0L0G5i/RM+HI+SO8oR5c6O+5R\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"connectivity-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}},{"profile":"data-tables","file":"data-tables.vue","description":"Four validated research tables, one tab each, with sortable and filterable columns, CSV and JSON","element":"cities-internet-map","type":"single","isMap":false,"iframeUrl":"./cities-internet/data-tables/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-tNig8gXdCocWVKD5iXR6iRqiAr7msWFtcFKzYif0L0G5i/RM+HI+SO8oR5c6O+5R\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}}]},{"bundle":"country-posters","scriptUrl":"./country-posters/country-posters.js","output":"doxa-maps/country-posters/country-posters.js","integrity":"sha384-qf7vNfeaN6eW3IlrtzWdAGvwTADFPwwyyvj0OmLg9yTcYLsl7EHMTvrOvW/qM8B3","elements":["country-posters-map"],"composes":["country-posters/country-poster-wall","country-posters/countries-map"],"profiles":[{"profile":"countries-map","file":"countries-map.vue","description":"The researcher's workbench retargeted from people groups to COUNTRIES — region","element":"country-posters-map","type":"single","isMap":true,"iframeUrl":"./country-posters/countries-map/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/countries-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-qf7vNfeaN6eW3IlrtzWdAGvwTADFPwwyyvj0OmLg9yTcYLsl7EHMTvrOvW/qM8B3\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"countries-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}},{"profile":"country-poster-wall","file":"country-poster-wall.vue","description":"One printable card per country, grouped into COLLAPSIBLE regional sections so the","element":"country-posters-map","type":"single","isMap":false,"iframeUrl":"./country-posters/country-poster-wall/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/country-poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-qf7vNfeaN6eW3IlrtzWdAGvwTADFPwwyyvj0OmLg9yTcYLsl7EHMTvrOvW/qM8B3\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"country-poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}},{"profile":"country-posters-mfe","file":"country-posters-mfe.vue","description":"","element":"country-posters-map","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./country-posters/country-posters-mfe/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/country-posters-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-qf7vNfeaN6eW3IlrtzWdAGvwTADFPwwyyvj0OmLg9yTcYLsl7EHMTvrOvW/qM8B3\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"country-posters-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}}]},{"bundle":"dashboard-plus-grid","scriptUrl":"./dashboard-plus-grid/dashboard-plus-grid.js","output":"doxa-maps/dashboard-plus-grid/dashboard-plus-grid.js","integrity":"sha384-YbJgljynZ4t3/Ro44oHQy9ihl9/5o7j4IKts8MNRfA73Cb5cyD7U52DklXjzpLpG","elements":["dashboard-plus-grid"],"composes":["research-dashboard","people-groups-grid"],"profiles":[{"profile":"dashboard-plus-grid","file":"dashboard-plus-grid.vue","description":"Both children are IMPORTED DIRECTLY (compiled into this ONE bundle — no runtime bundle","element":"dashboard-plus-grid","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./dashboard-plus-grid/dashboard-plus-grid/index.html","scriptUrl":"./dashboard-plus-grid/dashboard-plus-grid.js","embed":{"iframe":"\u003ciframe src=\"./dashboard-plus-grid/dashboard-plus-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./dashboard-plus-grid/dashboard-plus-grid.js\" integrity=\"sha384-YbJgljynZ4t3/Ro44oHQy9ihl9/5o7j4IKts8MNRfA73Cb5cyD7U52DklXjzpLpG\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdashboard-plus-grid profile-config='{\"profile\":\"dashboard-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/dashboard-plus-grid>"},"instances":[{"id":"default","title":"default","apiBaseUrl":"","props":{"profile":"dashboard-plus-grid"},"element":"dashboard-plus-grid","iframeUrl":"./dashboard-plus-grid/dashboard-plus-grid/default/index.html","embed":{"iframe":"\u003ciframe src=\"./dashboard-plus-grid/dashboard-plus-grid/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"demo-map","scriptUrl":"./demo-map/demo-map.js","output":"doxa-maps/demo-map/demo-map.js","integrity":"sha384-QiUJUgeFn27tiHKVhAYtJuIWo+1z5xsCUP1Nj4m1H4cFUV3vUA7ADTP58Ky3oVtQ","elements":["demo-map"],"profiles":[{"profile":"demo-map","file":"demo-map.vue","description":"Simple two-tab demo map. Tab 1 colors pins by religion (shared","element":"demo-map","type":"parameterized","isMap":true,"iframeUrl":"./demo-map/demo-map/index.html","scriptUrl":"./demo-map/demo-map.js","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./demo-map/demo-map.js\" integrity=\"sha384-QiUJUgeFn27tiHKVhAYtJuIWo+1z5xsCUP1Nj4m1H4cFUV3vUA7ADTP58Ky3oVtQ\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdemo-map profile-config='{\"profile\":\"demo-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/demo-map>"},"instances":[{"id":"maplibre","title":"Demo map — MapLibre (token-free)","apiBaseUrl":"","props":{"profile":"demo-map","provider":"maplibre","instanceId":"demo-maplibre"},"element":"demo-map","iframeUrl":"./demo-map/demo-map/maplibre/index.html","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/maplibre/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"demo-map"}]},{"bundle":"doxa-maps-spa","scriptUrl":"./doxa-maps-spa/doxa-maps-spa.js","output":"doxa-maps/doxa-maps-spa/doxa-maps-spa.js","integrity":"sha384-1f+/rBSGo/1jyUmRmGg34CIU/PcGkB7M3jah1DO0ocb5O0zj81wpUemXcz4WAFz8","elements":["doxa-maps-spa"],"composes":["bp-big-picture","doxa-research-map","doxa-simple-map","cities-internet-map","gospel-resources-map","my-upg-100-list-map"],"profiles":[{"profile":"doxa-maps-spa","file":"doxa-maps-spa.vue","description":"The DX-maps app itself: one element whose vertical-tab rail nests every other","element":"doxa-maps-spa","type":"nested-mfe-spa","isMap":false,"iframeUrl":"./doxa-maps-spa/doxa-maps-spa/index.html","scriptUrl":"./doxa-maps-spa/doxa-maps-spa.js","embed":{"iframe":"\u003ciframe src=\"./doxa-maps-spa/doxa-maps-spa/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-maps-spa/doxa-maps-spa.js\" integrity=\"sha384-1f+/rBSGo/1jyUmRmGg34CIU/PcGkB7M3jah1DO0ocb5O0zj81wpUemXcz4WAFz8\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-maps-spa profile-config='{\"profile\":\"doxa-maps-spa\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-maps-spa>"},"instances":[{"id":"app","title":"DX-Maps SPA — Big Picture + every research map (app-shell)","apiBaseUrl":"","props":{"profile":"doxa-maps-spa","provider":"maplibre","instanceId":"doxa-maps-spa-app","title":"DX-Maps"},"element":"doxa-maps-spa","iframeUrl":"./doxa-maps-spa/doxa-maps-spa/app/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-maps-spa/doxa-maps-spa/app/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-research-map","scriptUrl":"./doxa-research-map/doxa-research-map.js","output":"doxa-maps/doxa-research-map/doxa-research-map.js","integrity":"sha384-oecoezttPmpRe5GNG/Yko6IkEbtLjCD7PD7qghU1ZigprnfLKhbf0eBEiEbE24iR","elements":["doxa-research-map"],"profiles":[{"profile":"research-map","file":"research-map.vue","description":"The researcher's workbench: every piece a missiologist, demographer or","element":"doxa-research-map","type":"monolithic","isMap":true,"iframeUrl":"./doxa-research-map/research-map/index.html","scriptUrl":"./doxa-research-map/doxa-research-map.js","embed":{"iframe":"\u003ciframe src=\"./doxa-research-map/research-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-research-map/doxa-research-map.js\" integrity=\"sha384-oecoezttPmpRe5GNG/Yko6IkEbtLjCD7PD7qghU1ZigprnfLKhbf0eBEiEbE24iR\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-research-map profile-config='{\"profile\":\"research-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-research-map>"},"instances":[{"id":"maplibre","title":"Research map — MapLibre (token-free, no search bar)","apiBaseUrl":"","props":{"profile":"research-map","provider":"maplibre","instanceId":"research-map-maplibre"},"element":"doxa-research-map","iframeUrl":"./doxa-research-map/research-map/maplibre/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-research-map/research-map/maplibre/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-simple-map","scriptUrl":"./doxa-simple-map/doxa-simple-map.js","output":"doxa-maps/doxa-simple-map/doxa-simple-map.js","integrity":"sha384-hzEui48BqpW8VhRthz3daMgAdw4w4M3gtBre4ce4sXuAmS+39pMRW9reNAvpFb+W","elements":["doxa-map","doxa-simple-map"],"profiles":[{"profile":"doxa-simple-map","file":"doxa-simple-map.vue","description":"The simple world map, shipped as three presets off ONE prop table —","element":"doxa-map","type":"parameterized","isMap":true,"iframeUrl":"./doxa-simple-map/doxa-simple-map/index.html","scriptUrl":"./doxa-simple-map/doxa-simple-map.js","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-simple-map/doxa-simple-map.js\" integrity=\"sha384-hzEui48BqpW8VhRthz3daMgAdw4w4M3gtBre4ce4sXuAmS+39pMRW9reNAvpFb+W\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-map profile-config='{\"profile\":\"doxa-simple-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-map>"},"instances":[{"id":"prayer","title":"Prayer Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-prayer","dataSource":"pray-tools","tabs":[{"id":"prayer","colorStrategy":"prayer","legend":"prayer","popup":"prayer"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/prayer/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/prayer/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"engagement","title":"Engagement Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-engagement","dataSource":"pray-tools","tabs":[{"id":"engagement","colorStrategy":"engagement","legend":"engagement","popup":"engagement"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/engagement/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/engagement/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"adoption","title":"Adoption Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-adoption","dataSource":"pray-tools","tabs":[{"id":"adoption","colorStrategy":"adoption","legend":"adoption","popup":"adoption"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/adoption/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/adoption/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-vision-card","scriptUrl":"./doxa-vision-card/doxa-vision-card.js","output":"doxa-maps/doxa-vision-card/doxa-vision-card.js","integrity":"sha384-2mza3cltN5LQQIrlENG/IVL6Icd9zzcFve3E8R8VWuCdYOGW9uGKFvxcbu6eFfwn","elements":["doxa-vision-card"],"profiles":[{"profile":"doxa-vision-card","file":"doxa-vision-card.vue","description":"The Capability-1 example: ONE folder -> ONE bundle -> ONE element.","element":"doxa-vision-card","type":"parameterized","isMap":false,"iframeUrl":"./doxa-vision-card/doxa-vision-card/index.html","scriptUrl":"./doxa-vision-card/doxa-vision-card.js","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-vision-card/doxa-vision-card.js\" integrity=\"sha384-2mza3cltN5LQQIrlENG/IVL6Icd9zzcFve3E8R8VWuCdYOGW9uGKFvxcbu6eFfwn\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-vision-card profile-config='{\"profile\":\"doxa-vision-card\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-vision-card>"},"instances":[{"id":"default","title":"Vision card — reach at a glance","apiBaseUrl":"","props":{"profile":"doxa-vision-card","provider":"maplibre","instanceId":"vision-card-default"},"element":"doxa-vision-card","iframeUrl":"./doxa-vision-card/doxa-vision-card/default/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"frontier","title":"Vision card — frontier accent","apiBaseUrl":"","props":{"profile":"doxa-vision-card","provider":"maplibre","instanceId":"vision-card-frontier","accent":"#22d3ee","title":"The last frontier of the gospel.","tagline":"Frontier people groups — where fewer than one in a thousand follow Jesus.","stats":[{"value":"1,910","label":"Frontier groups","note":"under 0.1% believers"},{"value":"2.1B","label":"People","note":"living in frontier settings"},{"value":"0.1%","label":"Christian","note":"or fewer, in each group"}]},"element":"doxa-vision-card","iframeUrl":"./doxa-vision-card/doxa-vision-card/frontier/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/frontier/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"doxa-vision-card"}]},{"bundle":"golden-path-check","scriptUrl":"./golden-path-check/golden-path-check.js","output":"doxa-maps/golden-path-check/golden-path-check.js","integrity":"sha384-1V/sT5SkV0U9yTCK9ELIOFfU1ZIJkInIF6nG3UllJ4dxax3RsEAupSGLJEFK6e14","elements":["golden-path-check"],"profiles":[{"profile":"golden-path-check","file":"golden-path-check.vue","description":"A live self-test of the develop-a-plugin-and-see-it-live path: it reads the built","element":"golden-path-check","type":"single","isMap":false,"iframeUrl":"./golden-path-check/golden-path-check/index.html","scriptUrl":"./golden-path-check/golden-path-check.js","embed":{"iframe":"\u003ciframe src=\"./golden-path-check/golden-path-check/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./golden-path-check/golden-path-check.js\" integrity=\"sha384-1V/sT5SkV0U9yTCK9ELIOFfU1ZIJkInIF6nG3UllJ4dxax3RsEAupSGLJEFK6e14\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgolden-path-check profile-config='{\"profile\":\"golden-path-check\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/golden-path-check>"}}]},{"bundle":"gospel-resources","scriptUrl":"./gospel-resources/gospel-resources.js","output":"doxa-maps/gospel-resources/gospel-resources.js","integrity":"sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI","elements":["gospel-resources-map"],"profiles":[{"profile":"charts","file":"charts.vue","description":"The gap by LANGUAGE (ISO 639-3) rather than by people group — because one translation serves every","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/charts/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/charts/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"charts\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"data-tables","file":"data-tables.vue","description":"Two validated tables: what resources exist per people group, and whether that access is keeping","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/data-tables/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"resources-list","file":"resources-list.vue","description":"Which DX people groups have scripture in their own language, and which have none. The zero-resource","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/resources-list/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/resources-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"resources-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"resources-map","file":"resources-map.vue","description":"Every country shaded by how much of its unengaged population has NO gospel resource in their own","element":"gospel-resources-map","type":"single","isMap":true,"iframeUrl":"./gospel-resources/resources-map/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/resources-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"resources-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}}]},{"bundle":"my-upg-100-list","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","output":"doxa-maps/my-upg-100-list/my-upg-100-list.js","integrity":"sha384-9MM9Wm9yP7JwtlWBL0+xuJ2yHwHD/trEHYrsk0kEKgR4pXXdTNguIE50TqRCUbK2","elements":["my-upg-100-list-map"],"composes":["my-upg-100-list/upg-100-list","my-upg-100-list/poster-wall"],"profiles":[{"profile":"poster-wall","file":"poster-wall.vue","description":"A wall of printable poster cards, one per 100-list entry, each with a \"Show on map\" action that","element":"my-upg-100-list-map","type":"single","isMap":true,"iframeUrl":"./my-upg-100-list/poster-wall/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-9MM9Wm9yP7JwtlWBL0+xuJ2yHwHD/trEHYrsk0kEKgR4pXXdTNguIE50TqRCUbK2\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}},{"profile":"upg-100-list","file":"upg-100-list.vue","description":"A personal unreached-people-groups list painted as true boundary polygons —","element":"my-upg-100-list-map","type":"single","isMap":true,"iframeUrl":"./my-upg-100-list/upg-100-list/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/upg-100-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-9MM9Wm9yP7JwtlWBL0+xuJ2yHwHD/trEHYrsk0kEKgR4pXXdTNguIE50TqRCUbK2\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"upg-100-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}},{"profile":"upg-100-mfe","file":"upg-100-mfe.vue","description":"The standalone, shareable and embeddable composite of the my-upg-100-list family — it nests the map","element":"my-upg-100-list-map","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./my-upg-100-list/upg-100-mfe/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/upg-100-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-9MM9Wm9yP7JwtlWBL0+xuJ2yHwHD/trEHYrsk0kEKgR4pXXdTNguIE50TqRCUbK2\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"upg-100-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}}]},{"bundle":"people-groups-grid","scriptUrl":"./people-groups-grid/people-groups-grid.js","output":"doxa-maps/people-groups-grid/people-groups-grid.js","integrity":"sha384-ss5PmeSkKuxafBwvxZG3r7roP0OB/oVGwFbfrHnydEhjbtrlB4eisdsPXEyCJF37","elements":["people-groups-grid"],"profiles":[{"profile":"people-groups-grid","file":"people-groups-grid.vue","description":"The people-groups grid as an owned custom element: card list, search and four","element":"people-groups-grid","type":"parameterized","isMap":false,"iframeUrl":"./people-groups-grid/people-groups-grid/index.html","scriptUrl":"./people-groups-grid/people-groups-grid.js","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./people-groups-grid/people-groups-grid.js\" integrity=\"sha384-ss5PmeSkKuxafBwvxZG3r7roP0OB/oVGwFbfrHnydEhjbtrlB4eisdsPXEyCJF37\" crossorigin=\"anonymous\">\u003c/script>\n\u003cpeople-groups-grid profile-config='{\"profile\":\"people-groups-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/people-groups-grid>"},"instances":[{"id":"people-groups-grid","title":"People Groups Grid — standalone (own search + 4 dropdowns)","apiBaseUrl":"","props":{"profile":"people-groups-grid","provider":"maplibre","instanceId":"people-groups-grid","pray-base-url":"https://pray.doxa.life"},"element":"people-groups-grid","iframeUrl":"./people-groups-grid/people-groups-grid/people-groups-grid/index.html","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/people-groups-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"driven","title":"People Groups Grid — externally driven (controls off, props/events)","apiBaseUrl":"","props":{"profile":"people-groups-grid","provider":"maplibre","instanceId":"people-groups-grid-driven","pray-base-url":"https://pray.doxa.life","show-search":"false","show-filters":"false"},"element":"people-groups-grid","iframeUrl":"./people-groups-grid/people-groups-grid/driven/index.html","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/driven/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"plugin-studio","scriptUrl":"./plugin-studio/plugin-studio.js","output":"doxa-maps/plugin-studio/plugin-studio.js","integrity":"sha384-2RlLFRU2XdjBN7w+FPguj8INgj57JFg4IFT2AmdefGnR9QQLehbiiAffV45LcsFH","elements":["plugin-studio"],"composes":["bp-big-picture","people-groups-grid","doxa-research-map","doxa-simple-map","cities-internet-map","gospel-resources-map","my-upg-100-list-map","doxa-vision-card","all-people-groups","research-dashboard"],"profiles":[{"profile":"plugin-studio","file":"plugin-studio.vue","description":"The developer's viewing surface: a sidebar that is the composability ladder","element":"plugin-studio","type":"nested-mfe-spa","isMap":false,"iframeUrl":"./plugin-studio/plugin-studio/index.html","scriptUrl":"./plugin-studio/plugin-studio.js","embed":{"iframe":"\u003ciframe src=\"./plugin-studio/plugin-studio/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./plugin-studio/plugin-studio.js\" integrity=\"sha384-2RlLFRU2XdjBN7w+FPguj8INgj57JFg4IFT2AmdefGnR9QQLehbiiAffV45LcsFH\" crossorigin=\"anonymous\">\u003c/script>\n\u003cplugin-studio profile-config='{\"profile\":\"plugin-studio\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/plugin-studio>"},"instances":[{"id":"studio","title":"Plugin Studio — every element by capability 5 -> 1 (developer studio)","apiBaseUrl":"","props":{"profile":"plugin-studio","provider":"maplibre","instanceId":"plugin-studio","title":"Plugin Studio"},"element":"plugin-studio","iframeUrl":"./plugin-studio/plugin-studio/studio/index.html","embed":{"iframe":"\u003ciframe src=\"./plugin-studio/plugin-studio/studio/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"prayer-walk-planner","scriptUrl":"./prayer-walk-planner/prayer-walk-planner.js","output":"doxa-maps/prayer-walk-planner/prayer-walk-planner.js","integrity":"sha384-F0+r4avX8xkXp0hBpU5EBPU0InMRCObIn2Ieh9HJNn1r2amk8/qHmJ68WuNfsirC","elements":["prayer-walk-planner"],"profiles":[{"profile":"prayer-walk-planner","file":"prayer-walk-planner.vue","description":"A simple polygon-drawing tool for planning prayer-walking routes.","element":"prayer-walk-planner","type":"single","isMap":true,"iframeUrl":"./prayer-walk-planner/prayer-walk-planner/index.html","scriptUrl":"./prayer-walk-planner/prayer-walk-planner.js","embed":{"iframe":"\u003ciframe src=\"./prayer-walk-planner/prayer-walk-planner/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./prayer-walk-planner/prayer-walk-planner.js\" integrity=\"sha384-F0+r4avX8xkXp0hBpU5EBPU0InMRCObIn2Ieh9HJNn1r2amk8/qHmJ68WuNfsirC\" crossorigin=\"anonymous\">\u003c/script>\n\u003cprayer-walk-planner profile-config='{\"profile\":\"prayer-walk-planner\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/prayer-walk-planner>"}}]},{"bundle":"regions-dashboard","scriptUrl":"./regions-dashboard/regions-dashboard.js","output":"doxa-maps/regions-dashboard/regions-dashboard.js","integrity":"sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix","elements":["regions-dashboard"],"composes":["regions-dashboard/regions-list","regions-dashboard/region-dashboards"],"profiles":[{"profile":"region-dashboards","file":"region-dashboards.vue","description":"The dashboard half of the Driver's 2-tab Regions element: given a region (or a","element":"regions-dashboard","type":"single","isMap":true,"iframeUrl":"./regions-dashboard/region-dashboards/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/region-dashboards/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"region-dashboards\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}},{"profile":"regions-list","file":"regions-list.vue","description":"A refactor of DX-life's /regions index page (app/pages/regions/index.vue) into","element":"regions-dashboard","type":"single","isMap":true,"iframeUrl":"./regions-dashboard/regions-list/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/regions-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"regions-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}},{"profile":"regions-mfe","file":"regions-mfe.vue","description":"The composite the Driver asked for: ONE element carrying the SELECT VIEW switcher","element":"regions-dashboard","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./regions-dashboard/regions-mfe/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/regions-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"regions-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}}]},{"bundle":"research-dashboard","scriptUrl":"./research-dashboard/research-dashboard.js","output":"doxa-maps/research-dashboard/research-dashboard.js","integrity":"sha384-VvOYWBcDd7NtnB1eveECKX88ZHIpGnOf79tVdCUqGZzXLgoZPc+oTTPIC3ajaYsn","elements":["research-dashboard-map"],"profiles":[{"profile":"research-dashboard","file":"research-dashboard.vue","description":"Coordinated-Multiple-Views research dashboard for 10/40-window UPGs (live pray.doxa.life): docked facet rail + map-as-hero + linked table/charts, brushing-and-linking over one in-memory store.","element":"research-dashboard-map","type":"monolithic","isMap":true,"iframeUrl":"./research-dashboard/research-dashboard/index.html","scriptUrl":"./research-dashboard/research-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./research-dashboard/research-dashboard/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./research-dashboard/research-dashboard.js\" integrity=\"sha384-VvOYWBcDd7NtnB1eveECKX88ZHIpGnOf79tVdCUqGZzXLgoZPc+oTTPIC3ajaYsn\" crossorigin=\"anonymous\">\u003c/script>\n\u003cresearch-dashboard-map profile-config='{\"profile\":\"research-dashboard\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/research-dashboard-map>"},"bundle":"research-dashboard"}]},{"bundle":"research-map-plus-grid","scriptUrl":"./research-map-plus-grid/research-map-plus-grid.js","output":"doxa-maps/research-map-plus-grid/research-map-plus-grid.js","integrity":"sha384-sOkaMV0UFr2uNXfoJpRvaD+gHD6xFlkmpR7MzEwwFdarYdid8aN9Nj1Y8TqQJuFo","elements":["research-map-plus-grid"],"composes":["doxa-research-map","people-groups-grid"],"profiles":[{"profile":"research-map-plus-grid","file":"research-map-plus-grid.vue","description":"The monolithic 7-tab research map (cap-3) on top, the People Groups grid beneath,","element":"research-map-plus-grid","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./research-map-plus-grid/research-map-plus-grid/index.html","scriptUrl":"./research-map-plus-grid/research-map-plus-grid.js","embed":{"iframe":"\u003ciframe src=\"./research-map-plus-grid/research-map-plus-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./research-map-plus-grid/research-map-plus-grid.js\" integrity=\"sha384-sOkaMV0UFr2uNXfoJpRvaD+gHD6xFlkmpR7MzEwwFdarYdid8aN9Nj1Y8TqQJuFo\" crossorigin=\"anonymous\">\u003c/script>\n\u003cresearch-map-plus-grid profile-config='{\"profile\":\"research-map-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/research-map-plus-grid>"},"instances":[{"id":"default","title":"default","apiBaseUrl":"","props":{"profile":"research-map-plus-grid"},"element":"research-map-plus-grid","iframeUrl":"./research-map-plus-grid/research-map-plus-grid/default/index.html","embed":{"iframe":"\u003ciframe src=\"./research-map-plus-grid/research-map-plus-grid/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"stack-demo","scriptUrl":"./stack-demo/stack-demo.js","output":"doxa-maps/stack-demo/stack-demo.js","integrity":"sha384-gnwM6s+puf1K60Nl7crQcC2QC+9BxwpkaTx4OepLZ8VUCraZc+aRlWpsb6nj6Gyf","elements":["stack-demo"],"composes":["research-dashboard-map","people-groups-grid"],"profiles":[{"profile":"stack-demo","file":"stack-demo.vue","description":"Groups TWO independent elements TOP-TO-BOTTOM so you can embed the pair on a page and","element":"stack-demo","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./stack-demo/stack-demo/index.html","scriptUrl":"./stack-demo/stack-demo.js","embed":{"iframe":"\u003ciframe src=\"./stack-demo/stack-demo/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./stack-demo/stack-demo.js\" integrity=\"sha384-gnwM6s+puf1K60Nl7crQcC2QC+9BxwpkaTx4OepLZ8VUCraZc+aRlWpsb6nj6Gyf\" crossorigin=\"anonymous\">\u003c/script>\n\u003cstack-demo profile-config='{\"profile\":\"stack-demo\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/stack-demo>"},"instances":[{"id":"pair","title":"pair","apiBaseUrl":"","props":{"profile":"stack-demo"},"element":"stack-demo","iframeUrl":"./stack-demo/stack-demo/pair/index.html","embed":{"iframe":"\u003ciframe src=\"./stack-demo/stack-demo/pair/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"template-bundle","scriptUrl":"./template-bundle/template-bundle.js","output":"doxa-maps/template-bundle/template-bundle.js","integrity":"sha384-k+G5UlkZ99QmuecCCWUrjz998JBJnQT3hsDG0A+IVmiX9F3CNswmHXXzYhjnUTDX","elements":["template-bundle"],"profiles":[{"profile":"template-map-a","file":"template-map-a.vue","description":"Minimal example profile A — a colored placeholder, no Mapbox or data.","element":"template-bundle","type":"single","isMap":false,"iframeUrl":"./template-bundle/template-map-a/index.html","scriptUrl":"./template-bundle/template-bundle.js","embed":{"iframe":"\u003ciframe src=\"./template-bundle/template-map-a/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./template-bundle/template-bundle.js\" integrity=\"sha384-k+G5UlkZ99QmuecCCWUrjz998JBJnQT3hsDG0A+IVmiX9F3CNswmHXXzYhjnUTDX\" crossorigin=\"anonymous\">\u003c/script>\n\u003ctemplate-bundle profile-config='{\"profile\":\"template-map-a\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/template-bundle>"},"bundle":"template-bundle"},{"profile":"template-map-b","file":"template-map-b.vue","description":"Minimal example profile B — a second profile in the same bundle.","element":"template-bundle","type":"single","isMap":false,"iframeUrl":"./template-bundle/template-map-b/index.html","scriptUrl":"./template-bundle/template-bundle.js","embed":{"iframe":"\u003ciframe src=\"./template-bundle/template-map-b/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./template-bundle/template-bundle.js\" integrity=\"sha384-k+G5UlkZ99QmuecCCWUrjz998JBJnQT3hsDG0A+IVmiX9F3CNswmHXXzYhjnUTDX\" crossorigin=\"anonymous\">\u003c/script>\n\u003ctemplate-bundle profile-config='{\"profile\":\"template-map-b\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/template-bundle>"},"bundle":"template-bundle"}]},{"bundle":"upg-neighbor","scriptUrl":"./upg-neighbor/upg-neighbor.js","output":"doxa-maps/upg-neighbor/upg-neighbor.js","integrity":"sha384-JDJr4qoVZuiSi/rvgdzeuUNrzf7vjPdyh/g8dg7X8RHkZk/Y+tYXIQ3gpEzrU07q","elements":["upg-neighbor"],"profiles":[{"profile":"upg-neighbor","file":"upg-neighbor.vue","description":"Rescues the five pre-bundler experimental maps that live inside the legacy","element":"upg-neighbor","type":"parameterized","isMap":false,"iframeUrl":"./upg-neighbor/upg-neighbor/index.html","scriptUrl":"./upg-neighbor/upg-neighbor.js","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./upg-neighbor/upg-neighbor.js\" integrity=\"sha384-JDJr4qoVZuiSi/rvgdzeuUNrzf7vjPdyh/g8dg7X8RHkZk/Y+tYXIQ3gpEzrU07q\" crossorigin=\"anonymous\">\u003c/script>\n\u003cupg-neighbor profile-config='{\"profile\":\"upg-neighbor\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/upg-neighbor>"},"instances":[{"id":"send-map","title":"Send Map (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"send-map","legacyTitle":"Send Map"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/send-map/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/send-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"upg-neighbors","title":"UPG Neighbors (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"upg-neighbors","legacyTitle":"UPG Neighbors"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/upg-neighbors/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/upg-neighbors/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"lang-cluster","title":"Language Clusters (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"lang-cluster","legacyTitle":"Language Clusters"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/lang-cluster/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/lang-cluster/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"bloom-cockpit","title":"Bloom Cockpit (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"bloom-cockpit","legacyTitle":"Bloom Cockpit"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/bloom-cockpit/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/bloom-cockpit/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"flower-mesh","title":"Flower Mesh (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"flower-mesh","legacyTitle":"Flower Mesh"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/flower-mesh/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/flower-mesh/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]}]}; \n\n" + "script": "\n\n" }, "instances": [ { @@ -1076,7 +1076,7 @@ { "profile": "upg-neighbor", "file": "upg-neighbor.vue", - "description": "Rescues the three pre-bundler experimental maps that live inside the legacy", + "description": "Rescues the five pre-bundler experimental maps that live inside the legacy", "element": "upg-neighbor", "type": "parameterized", "isMap": false, From fc69adbbd51f51009a0bcd5a3a49b93b19f52286 Mon Sep 17 00:00:00 2001 From: doxa-maps-88655c70 <88627970+doxa-maps-88655c70@users.noreply.github.com> Date: Thu, 24 Sep 2026 05:09:12 +0000 Subject: [PATCH 05/11] Country boundaries load on MapLibre in the shared library, not per plugin main added country-posters-mfe (isMap=true). It inherits the engine swap correctly -- 14 -> 4 requests to api.mapbox.com, maplibregl loaded -- but threw Fetch API cannot load mapbox://mapbox.country-boundaries-v1. URL scheme "mapbox" is not supported A new map arriving is exactly what the rollout has to cover, so this was worth chasing rather than noting. TWO shared library sites, not one, which only measuring found. Fixing useCountryOutline.js (consumers: doxa-simple-map, countries-map, research-map) cleaned two of the four leaves and left countries-map -- and the new element nesting it -- still throwing, from a SECOND site: useMapLayers.js addRegionsLayer. Both now branch per engine, using the keyless assets/boundaries/world-adm0.geojson the tree already ships, with iso3 normalised once to iso_3166_1_alpha_3 so every downstream expression keeps reading the name it always read, and 'source-layer' set for the vector-tile path alone. The engine is read off the LIVE map -- its container carries maplibregl-map -- rather than from config, because both composables are called with nothing but a map getter. MEASURED: 0 mapbox:// errors across country-posters-mfe, countries-map, doxa-simple-map, research-map and demo-map; the adm0 fetch confirmed firing; provider sweep 15/17. The Mapbox path is unchanged -- its control screenshot still shows the coloured WAGF region fills. Also fixes check:descriptions, which the new profile red-gated by shipping an empty description. Written from the component's own header, not a placeholder: 34/34 profiles described. NOT FIXED, and recorded in the ledger rather than glossed: under MapLibre countries-map still paints NO coloured region fills. The error is gone and the geojson loads, but the fill does not appear. That is a separate defect from the source failing, and claiming this commit finishes it would be false. --- library/composables/useCountryOutline.js | 45 +++++++++- library/composables/useMapLayers.js | 43 +++++++-- .../country-posters/country-posters-mfe.vue | 5 ++ .../all-people-groups/all-people-groups.js | 46 +++++----- .../all-people-groups/index.html | 2 +- public/doxa-maps/big-picture/big-picture.js | 16 ++-- .../big-picture/big-picture/index.html | 2 +- .../big-picture/frontier/index.html | 2 +- .../big-picture/big-picture/index.html | 2 +- .../cities-internet/cities-internet.js | 2 +- .../connectivity-list/index.html | 2 +- .../connectivity-map/index.html | 2 +- .../cities-internet/data-tables/index.html | 2 +- .../country-posters/countries-map/index.html | 2 +- .../country-poster-wall/index.html | 2 +- .../country-posters-mfe/index.html | 2 +- .../country-posters/country-posters.js | 84 ++++++++--------- .../dashboard-plus-grid.js | 64 ++++++------- .../dashboard-plus-grid/default/index.html | 2 +- .../dashboard-plus-grid/index.html | 2 +- public/doxa-maps/demo-map/demo-map.js | 74 +++++++-------- public/doxa-maps/demo-map/demo-map/index.html | 2 +- .../demo-map/demo-map/maplibre/index.html | 2 +- .../doxa-research-map/doxa-research-map.js | 84 ++++++++--------- .../doxa-research-map/research-map/index.html | 2 +- .../research-map/maplibre/index.html | 2 +- .../doxa-simple-map/doxa-simple-map.js | 90 +++++++++---------- .../doxa-simple-map/adoption/index.html | 2 +- .../doxa-simple-map/engagement/index.html | 2 +- .../doxa-simple-map/index.html | 2 +- .../doxa-simple-map/prayer/index.html | 2 +- .../gospel-resources/charts/index.html | 2 +- .../gospel-resources/data-tables/index.html | 2 +- .../gospel-resources/gospel-resources.js | 2 +- .../resources-list/index.html | 2 +- .../gospel-resources/resources-map/index.html | 2 +- public/doxa-maps/index.html | 2 +- public/doxa-maps/manifest.json | 72 +++++++-------- .../my-upg-100-list/my-upg-100-list.js | 2 +- .../my-upg-100-list/poster-wall/index.html | 2 +- .../my-upg-100-list/upg-100-list/index.html | 2 +- .../my-upg-100-list/upg-100-mfe/index.html | 2 +- .../research-dashboard/research-dashboard.js | 62 ++++++------- .../research-dashboard/index.html | 2 +- .../template-bundle/template-bundle.js | 32 +++---- .../template-bundle/template-map-a/index.html | 2 +- .../template-bundle/template-map-b/index.html | 2 +- 47 files changed, 432 insertions(+), 353 deletions(-) diff --git a/library/composables/useCountryOutline.js b/library/composables/useCountryOutline.js index 845c4da7e..97d37714a 100644 --- a/library/composables/useCountryOutline.js +++ b/library/composables/useCountryOutline.js @@ -31,6 +31,8 @@ * outline.clearCountry() */ +import { resolveAssetsBase } from '../utils/embedBase.js' + const SOURCE_ID = 'doxa-country-outline' const LAYER_ID = 'doxa-country-outline-line' @@ -124,12 +126,51 @@ export function useCountryOutline(getMap, opts = {}) { // Swap any stale source, then (re)create the singleton outline layer. clearCountry() try { - m.addSource(SOURCE_ID, { type: 'vector', url: COUNTRY_BOUNDARIES_URL }) + // ── COUNTRY POLYGONS, PER ENGINE ──────────────────────────────────────────────────────── + // ★ COUNTRY_BOUNDARIES_URL IS A MAPBOX-HOSTED VECTOR TILESET, AND MAPLIBRE CANNOT FETCH IT. + // It throws "Fetch API cannot load mapbox://mapbox.country-boundaries-v1. URL scheme + // 'mapbox' is not supported" and then draws everything else perfectly, so the country + // outline is simply ABSENT with no visible failure. MEASURED on country-posters-mfe the + // moment it landed: engine swapped, 14 -> 4 mapbox requests, canvas fine, and this error in + // the console. THREE consumers share this composable — doxa-simple-map, countries-map and + // research-map — so the fix belongs here, once, not three times. + // Same shape already proven in DashboardMapPanel and RegionCountryMap. + // + // The ENGINE is read off the live map rather than guessed from config: the container carries + // maplibregl-map or mapboxgl-map, which is a fact about the instance in hand. Consumers call + // useCountryOutline(() => map.value) with no options, so there is no provider to pass in. + const isMaplibre = (() => { + try { return !!m.getContainer?.()?.classList?.contains('maplibregl-map') } catch (_) { return false } + })() + + if (isMaplibre) { + // Add EMPTY first, then setData after the fetch, so addLayer below stays SYNCHRONOUS and + // the outline keeps its place in the layer order. + m.addSource(SOURCE_ID, { type: 'geojson', data: { type: 'FeatureCollection', features: [] } }) + fetch(`${resolveAssetsBase(null)}/boundaries/world-adm0.geojson`) + .then((r) => r.json()) + .then((gj) => { + // The tileset names the ISO field iso_3166_1_alpha_3; the geojson names it iso3. + // countryFilter() reads the tileset name, so normalise ONCE here and every filter + // downstream keeps reading the single name it always read. + for (const f of gj.features || []) { + if (f.properties && f.properties.iso3) f.properties.iso_3166_1_alpha_3 = f.properties.iso3 + } + const live = typeof getMap === 'function' ? getMap() : null + const src = live && live.getSource(SOURCE_ID) + if (src) src.setData(gj) + }) + .catch((e) => console.warn('[country-outline] boundaries failed to load', e)) + } else { + m.addSource(SOURCE_ID, { type: 'vector', url: COUNTRY_BOUNDARIES_URL }) + } m.addLayer({ id: LAYER_ID, type: 'line', source: SOURCE_ID, - 'source-layer': SOURCE_LAYER, + // 'source-layer' applies to VECTOR TILE sources only — MapLibre rejects a layer that + // declares one on a geojson source ("does not need a source-layer"). + ...(isMaplibre ? {} : { 'source-layer': SOURCE_LAYER }), filter, layout: { 'line-join': 'round', 'line-cap': 'round' }, // Outline only — no fill layer — so pins / labels under the country diff --git a/library/composables/useMapLayers.js b/library/composables/useMapLayers.js index 70ca970c8..b82777df8 100644 --- a/library/composables/useMapLayers.js +++ b/library/composables/useMapLayers.js @@ -4,6 +4,7 @@ // Import Vue functions from NPM package import { ref, toRaw } from 'vue'; +import { resolveAssetsBase } from '../utils/embedBase.js' import { emissivePaint } from './useMapProvider.js'; // Import utilities @@ -416,16 +417,48 @@ export function useMapLayers(options = {}) { ? 'language-family-pins' : undefined; - map.addSource('regions', { - type: 'vector', - url: 'mapbox://mapbox.country-boundaries-v1' - }); + // ── REGION POLYGONS, PER ENGINE ──────────────────────────────────────────────────── + // ★ SECOND SITE OF THE SAME DEFECT. mapbox://mapbox.country-boundaries-v1 is a + // Mapbox-hosted VECTOR TILESET; MapLibre cannot fetch a mapbox:// URL and throws + // Fetch API cannot load mapbox://mapbox.country-boundaries-v1. URL scheme "mapbox" + // then renders everything else correctly with this fill simply MISSING. Fixing the + // country-OUTLINE composable cleaned doxa-simple-map and research-map but left + // countries-map (and the new country-posters-mfe that nests it) still throwing — + // measured, which is how this second site was found at all. + // The keyless equivalent already ships: assets/boundaries/world-adm0.geojson. + // Engine read off the live map (its container carries maplibregl-map), not guessed. + const _isMaplibre = (() => { + try { return !!map.getContainer?.()?.classList?.contains('maplibregl-map') } catch (_) { return false } + })(); + if (_isMaplibre) { + // EMPTY first so the addLayer below stays synchronous and keeps its z-order slot + // (regions → shadow → pins → hitbox); setData once the fetch lands. + map.addSource('regions', { type: 'geojson', data: { type: 'FeatureCollection', features: [] } }); + fetch(`${resolveAssetsBase(null)}/boundaries/world-adm0.geojson`) + .then((r) => r.json()) + .then((gj) => { + // Tileset field is iso_3166_1_alpha_3; the geojson's is iso3. Normalise ONCE + // so every colour/filter expression downstream reads the name it always read. + for (const f of gj.features || []) { + if (f.properties && f.properties.iso3) f.properties.iso_3166_1_alpha_3 = f.properties.iso3; + } + const src = map.getSource('regions'); + if (src) src.setData(gj); + }) + .catch((e) => console.warn('[map-layers] region boundaries failed to load', e)); + } else { + map.addSource('regions', { + type: 'vector', + url: 'mapbox://mapbox.country-boundaries-v1' + }); + } map.addLayer({ id: 'regions-fill', type: 'fill', source: 'regions', - 'source-layer': 'country_boundaries', + // VECTOR-TILE only; MapLibre rejects a layer declaring source-layer on geojson. + ...(_isMaplibre ? {} : { 'source-layer': 'country_boundaries' }), paint: { 'fill-color': fillColorExpr, 'fill-opacity': colorScheme === 'none' ? 0.1 : 0.7, diff --git a/plugin-designs/country-posters/country-posters-mfe.vue b/plugin-designs/country-posters/country-posters-mfe.vue index 5b9fc0350..d849cd146 100644 --- a/plugin-designs/country-posters/country-posters-mfe.vue +++ b/plugin-designs/country-posters/country-posters-mfe.vue @@ -2,6 +2,11 @@ /** * country-posters-mfe.vue — Country Posters as a TWO-TAB element. * + * @element country-posters-mfe + * @description Country Posters as ONE two-tab element — the countries map and the printable + * poster wall behind a single view switcher, structured like the UPG-100 list. The switcher is + * the library's shared ViewSelect, not a third hand-rolled copy. + * * Driver: "Country Posters is supposed to have two tabs, structured like the * UPG-100 list." * diff --git a/public/doxa-maps/all-people-groups/all-people-groups.js b/public/doxa-maps/all-people-groups/all-people-groups.js index da86ec7ba..3075a011b 100644 --- a/public/doxa-maps/all-people-groups/all-people-groups.js +++ b/public/doxa-maps/all-people-groups/all-people-groups.js @@ -1,45 +1,45 @@ -(function(){"use strict";var aa=typeof document<"u"?document.currentScript:null;const Mb="modulepreload",Ib=function(e){return"/"+e},Rb={},Mc=function(t,n,o){let a=Promise.resolve();function s(i){const r=new Event("vite:preloadError",{cancelable:!0});if(r.payload=i,window.dispatchEvent(r),!r.defaultPrevented)throw i}return a.then(i=>{for(const r of i||[])r.status==="rejected"&&s(r.reason);return t().catch(s)})};/** +(function(){"use strict";var aa=typeof document<"u"?document.currentScript:null;const Bb="modulepreload",Kb=function(e){return"/"+e},Ub={},Mc=function(t,n,o){let a=Promise.resolve();function s(r){const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=r,window.dispatchEvent(i),!i.defaultPrevented)throw r}return a.then(r=>{for(const i of r||[])i.status==="rejected"&&s(i.reason);return t().catch(s)})};/** * @vue/shared v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/function sa(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const _e={},un=[],gt=()=>{},Os=()=>!1,so=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),io=e=>e.startsWith("onUpdate:"),Ee=Object.assign,ia=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Ic=Object.prototype.hasOwnProperty,de=(e,t)=>Ic.call(e,t),Z=Array.isArray,jt=e=>Cn(e)==="[object Map]",ro=e=>Cn(e)==="[object Set]",xs=e=>Cn(e)==="[object Date]",te=e=>typeof e=="function",ve=e=>typeof e=="string",Xe=e=>typeof e=="symbol",pe=e=>e!==null&&typeof e=="object",js=e=>(pe(e)||te(e))&&te(e.then)&&te(e.catch),Bs=Object.prototype.toString,Cn=e=>Bs.call(e),Rc=e=>Cn(e).slice(8,-1),lo=e=>Cn(e)==="[object Object]",co=e=>ve(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,wn=sa(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),uo=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Dc=/-\w/g,Pe=uo(e=>e.replace(Dc,t=>t.slice(1).toUpperCase())),Fc=/\B([A-Z])/g,Ze=uo(e=>e.replace(Fc,"-$1").toLowerCase()),go=uo(e=>e.charAt(0).toUpperCase()+e.slice(1)),ra=uo(e=>e?`on${go(e)}`:""),dt=(e,t)=>!Object.is(e,t),la=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:o,value:n})},Oc=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Us=e=>{const t=ve(e)?Number(e):NaN;return isNaN(t)?e:t};let Gs;const fo=()=>Gs||(Gs=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function po(e){if(Z(e)){const t={};for(let n=0;n{if(n){const o=n.split(jc);o.length>1&&(t[o[0].trim()]=o[1].trim())}}),t}function Nn(e){let t="";if(ve(e))t=e;else if(Z(e))for(let n=0;n!!(e&&e.__v_isRef===!0),Qt=e=>ve(e)?e:e==null?"":Z(e)||pe(e)&&(e.toString===Bs||!te(e.toString))?Hs(e)?Qt(e.value):JSON.stringify(e,Vs,2):String(e),Vs=(e,t)=>Hs(t)?Vs(e,t.value):jt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[o,a],s)=>(n[ca(o,s)+" =>"]=a,n),{})}:ro(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>ca(n))}:Xe(t)?ca(t):pe(t)&&!Z(t)&&!lo(t)?String(t):t,ca=(e,t="")=>{var n;return Xe(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** +**/function sa(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const ye={},un=[],gt=()=>{},Ds=()=>!1,so=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),ro=e=>e.startsWith("onUpdate:"),Ee=Object.assign,ra=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Ic=Object.prototype.hasOwnProperty,de=(e,t)=>Ic.call(e,t),Z=Array.isArray,jt=e=>Nn(e)==="[object Map]",io=e=>Nn(e)==="[object Set]",xs=e=>Nn(e)==="[object Date]",te=e=>typeof e=="function",ve=e=>typeof e=="string",Xe=e=>typeof e=="symbol",fe=e=>e!==null&&typeof e=="object",js=e=>(fe(e)||te(e))&&te(e.then)&&te(e.catch),Bs=Object.prototype.toString,Nn=e=>Bs.call(e),Rc=e=>Nn(e).slice(8,-1),lo=e=>Nn(e)==="[object Object]",co=e=>ve(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Ln=sa(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),uo=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Fc=/-\w/g,Pe=uo(e=>e.replace(Fc,t=>t.slice(1).toUpperCase())),Oc=/\B([A-Z])/g,Ze=uo(e=>e.replace(Oc,"-$1").toLowerCase()),go=uo(e=>e.charAt(0).toUpperCase()+e.slice(1)),ia=uo(e=>e?`on${go(e)}`:""),dt=(e,t)=>!Object.is(e,t),la=(e,...t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:o,value:n})},Dc=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Us=e=>{const t=ve(e)?Number(e):NaN;return isNaN(t)?e:t};let Gs;const po=()=>Gs||(Gs=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function fo(e){if(Z(e)){const t={};for(let n=0;n{if(n){const o=n.split(jc);o.length>1&&(t[o[0].trim()]=o[1].trim())}}),t}function wn(e){let t="";if(ve(e))t=e;else if(Z(e))for(let n=0;n!!(e&&e.__v_isRef===!0),Qt=e=>ve(e)?e:e==null?"":Z(e)||fe(e)&&(e.toString===Bs||!te(e.toString))?Hs(e)?Qt(e.value):JSON.stringify(e,Vs,2):String(e),Vs=(e,t)=>Hs(t)?Vs(e,t.value):jt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[o,a],s)=>(n[ca(o,s)+" =>"]=a,n),{})}:io(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>ca(n))}:Xe(t)?ca(t):fe(t)&&!Z(t)&&!lo(t)?String(t):t,ca=(e,t="")=>{var n;return Xe(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/** * @vue/reactivity v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let Le;class Ws{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!t&&Le&&(Le.active?(this.parent=Le,this.index=(Le.scopes||(Le.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes){const o=this.scopes.slice();for(t=0,n=o.length;t0&&--this._on===0){if(Le===this)Le=this.prevScope;else{let t=Le;for(;t;){if(t.prevScope===this){t.prevScope=this.prevScope;break}t=t.prevScope}}this.prevScope=void 0}}stop(t){if(this._active){this._active=!1;let n,o;for(n=0,o=this.effects.length;n0)return;if(Mn){let t=Mn;for(Mn=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;Pn;){let t=Pn;for(Pn=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(o){e||(e=o)}t=n}}if(e)throw e}function Qs(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function ei(e){let t,n=e.depsTail,o=n;for(;o;){const a=o.prevDep;o.version===-1?(o===n&&(n=a),ha(o),qc(o)):t=o,o.dep.activeLink=o.prevActiveLink,o.prevActiveLink=void 0,o=a}e.deps=t,e.depsTail=n}function pa(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(ti(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function ti(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===In)||(e.globalVersion=In,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!pa(e))))return;e.flags|=2;const t=e.dep,n=ye,o=at;ye=e,at=!0;try{Qs(e);const a=e.fn(e._value);(t.version===0||dt(a,e._value))&&(e.flags|=128,e._value=a,t.version++)}catch(a){throw t.version++,a}finally{ye=n,at=o,ei(e),e.flags&=-3}}function ha(e,t=!1){const{dep:n,prevSub:o,nextSub:a}=e;if(o&&(o.nextSub=a,e.prevSub=void 0),a&&(a.prevSub=o,e.nextSub=void 0),n.subs===e&&(n.subs=o,!o&&n.computed)){n.computed.flags&=-5;for(let s=n.computed.deps;s;s=s.nextDep)ha(s,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function qc(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let at=!0;const ni=[];function ft(){ni.push(at),at=!1}function pt(){const e=ni.pop();at=e===void 0?!0:e}function oi(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=ye;ye=void 0;try{t()}finally{ye=n}}}let In=0;class Hc{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class ma{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!ye||!at||ye===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==ye)n=this.activeLink=new Hc(ye,this),ye.deps?(n.prevDep=ye.depsTail,ye.depsTail.nextDep=n,ye.depsTail=n):ye.deps=ye.depsTail=n,ai(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const o=n.nextDep;o.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=o),n.prevDep=ye.depsTail,n.nextDep=void 0,ye.depsTail.nextDep=n,ye.depsTail=n,ye.deps===n&&(ye.deps=o)}return n}trigger(t){this.version++,In++,this.notify(t)}notify(t){da();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{fa()}}}function ai(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let o=t.deps;o;o=o.nextDep)ai(o)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const mo=new WeakMap,en=Symbol(""),ba=Symbol(""),Rn=Symbol("");function je(e,t,n){if(at&&ye){let o=mo.get(e);o||mo.set(e,o=new Map);let a=o.get(n);a||(o.set(n,a=new ma),a.map=o,a.key=n),a.track()}}function kt(e,t,n,o,a,s){const i=mo.get(e);if(!i){In++;return}const r=l=>{l&&l.trigger()};if(da(),t==="clear")i.forEach(r);else{const l=Z(e),c=l&&co(n);if(l&&n==="length"){const u=Number(o);i.forEach((f,m)=>{(m==="length"||m===Rn||!Xe(m)&&m>=u)&&r(f)})}else switch((n!==void 0||i.has(void 0))&&r(i.get(n)),c&&r(i.get(Rn)),t){case"add":l?c&&r(i.get("length")):(r(i.get(en)),jt(e)&&r(i.get(ba)));break;case"delete":l||(r(i.get(en)),jt(e)&&r(i.get(ba)));break;case"set":jt(e)&&r(i.get(en));break}}fa()}function Vc(e,t){const n=mo.get(e);return n&&n.get(t)}function gn(e){const t=ce(e);return t===e?t:(je(t,"iterate",Rn),He(e)?t:t.map(st))}function bo(e){return je(e=ce(e),"iterate",Rn),e}function ht(e,t){return $t(e)?dn(Et(e)?st(t):t):st(t)}const Wc={__proto__:null,[Symbol.iterator](){return _a(this,Symbol.iterator,e=>ht(this,e))},concat(...e){return gn(this).concat(...e.map(t=>Z(t)?gn(t):t))},entries(){return _a(this,"entries",e=>(e[1]=ht(this,e[1]),e))},every(e,t){return Tt(this,"every",e,t,void 0,arguments)},filter(e,t){return Tt(this,"filter",e,t,n=>n.map(o=>ht(this,o)),arguments)},find(e,t){return Tt(this,"find",e,t,n=>ht(this,n),arguments)},findIndex(e,t){return Tt(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return Tt(this,"findLast",e,t,n=>ht(this,n),arguments)},findLastIndex(e,t){return Tt(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return Tt(this,"forEach",e,t,void 0,arguments)},includes(...e){return ya(this,"includes",e)},indexOf(...e){return ya(this,"indexOf",e)},join(e){return gn(this).join(e)},lastIndexOf(...e){return ya(this,"lastIndexOf",e)},map(e,t){return Tt(this,"map",e,t,void 0,arguments)},pop(){return Dn(this,"pop")},push(...e){return Dn(this,"push",e)},reduce(e,...t){return si(this,"reduce",e,t)},reduceRight(e,...t){return si(this,"reduceRight",e,t)},shift(){return Dn(this,"shift")},some(e,t){return Tt(this,"some",e,t,void 0,arguments)},splice(...e){return Dn(this,"splice",e)},toReversed(){return gn(this).toReversed()},toSorted(e){return gn(this).toSorted(e)},toSpliced(...e){return gn(this).toSpliced(...e)},unshift(...e){return Dn(this,"unshift",e)},values(){return _a(this,"values",e=>ht(this,e))}};function _a(e,t,n){const o=bo(e),a=o[t]();return o!==e&&!He(e)&&(a._next=a.next,a.next=()=>{const s=a._next();return s.done||(s.value=n(s.value)),s}),a}const Yc=Array.prototype;function Tt(e,t,n,o,a,s){const i=bo(e),r=i!==e&&!He(e),l=i[t];if(l!==Yc[t]){const f=l.apply(e,s);return r?st(f):f}let c=n;i!==e&&(r?c=function(f,m){return n.call(this,ht(e,f),m,e)}:n.length>2&&(c=function(f,m){return n.call(this,f,m,e)}));const u=l.call(i,c,o);return r&&a?a(u):u}function si(e,t,n,o){const a=bo(e),s=a!==e&&!He(e);let i=n,r=!1;a!==e&&(s?(r=o.length===0,i=function(c,u,f){return r&&(r=!1,c=ht(e,c)),n.call(this,c,ht(e,u),f,e)}):n.length>3&&(i=function(c,u,f){return n.call(this,c,u,f,e)}));const l=a[t](i,...o);return r?ht(e,l):l}function ya(e,t,n){const o=ce(e);je(o,"iterate",Rn);const a=o[t](...n);return(a===-1||a===!1)&&ko(n[0])?(n[0]=ce(n[0]),o[t](...n)):a}function Dn(e,t,n=[]){ft(),da();const o=ce(e)[t].apply(e,n);return fa(),pt(),o}const Jc=sa("__proto__,__v_isRef,__isVue"),ii=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Xe));function Xc(e){Xe(e)||(e=String(e));const t=ce(this);return je(t,"has",e),t.hasOwnProperty(e)}class ri{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,o){if(n==="__v_skip")return t.__v_skip;const a=this._isReadonly,s=this._isShallow;if(n==="__v_isReactive")return!a;if(n==="__v_isReadonly")return a;if(n==="__v_isShallow")return s;if(n==="__v_raw")return o===(a?s?fi:di:s?gi:ui).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(o)?t:void 0;const i=Z(t);if(!a){let l;if(i&&(l=Wc[n]))return l;if(n==="hasOwnProperty")return Xc}const r=Reflect.get(t,n,Te(t)?t:o);if((Xe(n)?ii.has(n):Jc(n))||(a||je(t,"get",n),s))return r;if(Te(r)){const l=i&&co(n)?r:r.value;return a&&pe(l)?Sa(l):l}return pe(r)?a?Sa(r):So(r):r}}class li extends ri{constructor(t=!1){super(!1,t)}set(t,n,o,a){let s=t[n];const i=Z(t)&&co(n);if(!this._isShallow){const c=$t(s);if(!He(o)&&!$t(o)&&(s=ce(s),o=ce(o)),!i&&Te(s)&&!Te(o))return c||(s.value=o),!0}const r=i?Number(n)e,_o=e=>Reflect.getPrototypeOf(e);function nu(e,t,n){return function(...o){const a=this.__v_raw,s=ce(a),i=jt(s),r=e==="entries"||e===Symbol.iterator&&i,l=e==="keys"&&i,c=a[e](...o),u=n?Aa:t?dn:st;return!t&&je(s,"iterate",l?ba:en),Ee(Object.create(c),{next(){const{value:f,done:m}=c.next();return m?{value:f,done:m}:{value:r?[u(f[0]),u(f[1])]:u(f),done:m}}})}}function yo(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function ou(e,t){const n={get(a){const s=this.__v_raw,i=ce(s),r=ce(a);e||(dt(a,r)&&je(i,"get",a),je(i,"get",r));const{has:l}=_o(i),c=t?Aa:e?dn:st;if(l.call(i,a))return c(s.get(a));if(l.call(i,r))return c(s.get(r));s!==i&&s.get(a)},get size(){const a=this.__v_raw;return!e&&je(ce(a),"iterate",en),a.size},has(a){const s=this.__v_raw,i=ce(s),r=ce(a);return e||(dt(a,r)&&je(i,"has",a),je(i,"has",r)),a===r?s.has(a):s.has(a)||s.has(r)},forEach(a,s){const i=this,r=i.__v_raw,l=ce(r),c=t?Aa:e?dn:st;return!e&&je(l,"iterate",en),r.forEach((u,f)=>a.call(s,c(u),c(f),i))}};return Ee(n,e?{add:yo("add"),set:yo("set"),delete:yo("delete"),clear:yo("clear")}:{add(a){const s=ce(this),i=_o(s),r=ce(a),l=!t&&!He(a)&&!$t(a)?r:a;return i.has.call(s,l)||dt(a,l)&&i.has.call(s,a)||dt(r,l)&&i.has.call(s,r)||(s.add(l),kt(s,"add",l,l)),this},set(a,s){!t&&!He(s)&&!$t(s)&&(s=ce(s));const i=ce(this),{has:r,get:l}=_o(i);let c=r.call(i,a);c||(a=ce(a),c=r.call(i,a));const u=l.call(i,a);return i.set(a,s),c?dt(s,u)&&kt(i,"set",a,s):kt(i,"add",a,s),this},delete(a){const s=ce(this),{has:i,get:r}=_o(s);let l=i.call(s,a);l||(a=ce(a),l=i.call(s,a)),r&&r.call(s,a);const c=s.delete(a);return l&&kt(s,"delete",a,void 0),c},clear(){const a=ce(this),s=a.size!==0,i=a.clear();return s&&kt(a,"clear",void 0,void 0),i}}),["keys","values","entries",Symbol.iterator].forEach(a=>{n[a]=nu(a,e,t)}),n}function Ao(e,t){const n=ou(e,t);return(o,a,s)=>a==="__v_isReactive"?!e:a==="__v_isReadonly"?e:a==="__v_raw"?o:Reflect.get(de(n,a)&&a in o?n:o,a,s)}const au={get:Ao(!1,!1)},su={get:Ao(!1,!0)},iu={get:Ao(!0,!1)},ru={get:Ao(!0,!0)},ui=new WeakMap,gi=new WeakMap,di=new WeakMap,fi=new WeakMap;function lu(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function So(e){return $t(e)?e:vo(e,!1,Zc,au,ui)}function cu(e){return vo(e,!1,eu,su,gi)}function Sa(e){return vo(e,!0,Qc,iu,di)}function Fb(e){return vo(e,!0,tu,ru,fi)}function vo(e,t,n,o,a){if(!pe(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const s=a.get(e);if(s)return s;const i=lu(Rc(e));if(i===0)return e;const r=new Proxy(e,i===2?o:n);return a.set(e,r),r}function Et(e){return $t(e)?Et(e.__v_raw):!!(e&&e.__v_isReactive)}function $t(e){return!!(e&&e.__v_isReadonly)}function He(e){return!!(e&&e.__v_isShallow)}function ko(e){return e?!!e.__v_raw:!1}function ce(e){const t=e&&e.__v_raw;return t?ce(t):e}function Fn(e){return!de(e,"__v_skip")&&Object.isExtensible(e)&&Ks(e,"__v_skip",!0),e}const st=e=>pe(e)?So(e):e,dn=e=>pe(e)?Sa(e):e;function Te(e){return e?e.__v_isRef===!0:!1}function he(e){return pi(e,!1)}function va(e){return pi(e,!0)}function pi(e,t){return Te(e)?e:new uu(e,t)}class uu{constructor(t,n){this.dep=new ma,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:ce(t),this._value=n?t:st(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,o=this.__v_isShallow||He(t)||$t(t);t=o?t:ce(t),dt(t,n)&&(this._rawValue=t,this._value=o?t:st(t),this.dep.trigger())}}function To(e){return Te(e)?e.value:e}const gu={get:(e,t,n)=>t==="__v_raw"?e:To(Reflect.get(e,t,n)),set:(e,t,n,o)=>{const a=e[t];return Te(a)&&!Te(n)?(a.value=n,!0):Reflect.set(e,t,n,o)}};function hi(e){return Et(e)?e:new Proxy(e,gu)}function du(e){const t=Z(e)?new Array(e.length):{};for(const n in e)t[n]=pu(e,n);return t}class fu{constructor(t,n,o){this._object=t,this._defaultValue=o,this.__v_isRef=!0,this._value=void 0,this._key=Xe(n)?n:String(n),this._raw=ce(t);let a=!0,s=t;if(!Z(t)||Xe(this._key)||!co(this._key))do a=!ko(s)||He(s);while(a&&(s=s.__v_raw));this._shallow=a}get value(){let t=this._object[this._key];return this._shallow&&(t=To(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&Te(this._raw[this._key])){const n=this._object[this._key];if(Te(n)){n.value=t;return}}this._object[this._key]=t}get dep(){return Vc(this._raw,this._key)}}function pu(e,t,n){return new fu(e,t,n)}class hu{constructor(t,n,o){this.fn=t,this.setter=n,this._value=void 0,this.dep=new ma(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=In-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=o}notify(){if(this.flags|=16,!(this.flags&8)&&ye!==this)return Zs(this,!0),!0}get value(){const t=this.dep.track();return ti(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function mu(e,t,n=!1){let o,a;return te(e)?o=e:(o=e.get,a=e.set),new hu(o,a,n)}const Eo={},$o=new WeakMap;let tn;function bu(e,t=!1,n=tn){if(n){let o=$o.get(n);o||$o.set(n,o=[]),o.push(e)}}function _u(e,t,n=_e){const{immediate:o,deep:a,once:s,scheduler:i,augmentJob:r,call:l}=n,c=b=>a?b:He(b)||a===!1||a===0?Bt(b,1):Bt(b);let u,f,m,k,N=!1,v=!1;if(Te(e)?(f=()=>e.value,N=He(e)):Et(e)?(f=()=>c(e),N=!0):Z(e)?(v=!0,N=e.some(b=>Et(b)||He(b)),f=()=>e.map(b=>{if(Te(b))return b.value;if(Et(b))return c(b);if(te(b))return l?l(b,2):b()})):te(e)?t?f=l?()=>l(e,2):e:f=()=>{if(m){ft();try{m()}finally{pt()}}const b=tn;tn=u;try{return l?l(e,3,[k]):e(k)}finally{tn=b}}:f=gt,t&&a){const b=f,L=a===!0?1/0:a;f=()=>Bt(b(),L)}const $=Ys(),P=()=>{u.stop(),$&&$.active&&ia($.effects,u)};if(s&&t){const b=t;t=(...L)=>{const A=b(...L);return P(),A}}let T=v?new Array(e.length).fill(Eo):Eo;const _=b=>{if(!(!(u.flags&1)||!u.dirty&&!b))if(t){const L=u.run();if(b||a||N||(v?L.some((A,w)=>dt(A,T[w])):dt(L,T))){m&&m();const A=tn;tn=u;try{const w=[L,T===Eo?void 0:v&&T[0]===Eo?[]:T,k];T=L,l?l(t,3,w):t(...w)}finally{tn=A}}}else u.run()};return r&&r(_),u=new Js(f),u.scheduler=i?()=>i(_,!1):_,k=b=>bu(b,!1,u),m=u.onStop=()=>{const b=$o.get(u);if(b){if(l)l(b,4);else for(const L of b)L();$o.delete(u)}},t?o?_(!0):T=u.run():i?i(_.bind(null,!0),!0):u.run(),P.pause=u.pause.bind(u),P.resume=u.resume.bind(u),P.stop=P,P}function Bt(e,t=1/0,n){if(t<=0||!pe(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,Te(e))Bt(e.value,t,n);else if(Z(e))for(let o=0;o{Bt(o,t,n)});else if(lo(e)){for(const o in e)Bt(e[o],t,n);for(const o of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,o)&&Bt(e[o],t,n)}return e}/** +**/let Ce;class Ws{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!t&&Ce&&(Ce.active?(this.parent=Ce,this.index=(Ce.scopes||(Ce.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes){const o=this.scopes.slice();for(t=0,n=o.length;t0&&--this._on===0){if(Ce===this)Ce=this.prevScope;else{let t=Ce;for(;t;){if(t.prevScope===this){t.prevScope=this.prevScope;break}t=t.prevScope}}this.prevScope=void 0}}stop(t){if(this._active){this._active=!1;let n,o;for(n=0,o=this.effects.length;n0)return;if(Mn){let t=Mn;for(Mn=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;Pn;){let t=Pn;for(Pn=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(o){e||(e=o)}t=n}}if(e)throw e}function Qs(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function er(e){let t,n=e.depsTail,o=n;for(;o;){const a=o.prevDep;o.version===-1?(o===n&&(n=a),ha(o),qc(o)):t=o,o.dep.activeLink=o.prevActiveLink,o.prevActiveLink=void 0,o=a}e.deps=t,e.depsTail=n}function fa(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(tr(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function tr(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===In)||(e.globalVersion=In,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!fa(e))))return;e.flags|=2;const t=e.dep,n=_e,o=at;_e=e,at=!0;try{Qs(e);const a=e.fn(e._value);(t.version===0||dt(a,e._value))&&(e.flags|=128,e._value=a,t.version++)}catch(a){throw t.version++,a}finally{_e=n,at=o,er(e),e.flags&=-3}}function ha(e,t=!1){const{dep:n,prevSub:o,nextSub:a}=e;if(o&&(o.nextSub=a,e.prevSub=void 0),a&&(a.prevSub=o,e.nextSub=void 0),n.subs===e&&(n.subs=o,!o&&n.computed)){n.computed.flags&=-5;for(let s=n.computed.deps;s;s=s.nextDep)ha(s,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function qc(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let at=!0;const nr=[];function pt(){nr.push(at),at=!1}function ft(){const e=nr.pop();at=e===void 0?!0:e}function or(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=_e;_e=void 0;try{t()}finally{_e=n}}}let In=0;class Hc{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class ma{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!_e||!at||_e===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==_e)n=this.activeLink=new Hc(_e,this),_e.deps?(n.prevDep=_e.depsTail,_e.depsTail.nextDep=n,_e.depsTail=n):_e.deps=_e.depsTail=n,ar(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const o=n.nextDep;o.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=o),n.prevDep=_e.depsTail,n.nextDep=void 0,_e.depsTail.nextDep=n,_e.depsTail=n,_e.deps===n&&(_e.deps=o)}return n}trigger(t){this.version++,In++,this.notify(t)}notify(t){da();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{pa()}}}function ar(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let o=t.deps;o;o=o.nextDep)ar(o)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const mo=new WeakMap,en=Symbol(""),ba=Symbol(""),Rn=Symbol("");function je(e,t,n){if(at&&_e){let o=mo.get(e);o||mo.set(e,o=new Map);let a=o.get(n);a||(o.set(n,a=new ma),a.map=o,a.key=n),a.track()}}function $t(e,t,n,o,a,s){const r=mo.get(e);if(!r){In++;return}const i=l=>{l&&l.trigger()};if(da(),t==="clear")r.forEach(i);else{const l=Z(e),c=l&&co(n);if(l&&n==="length"){const u=Number(o);r.forEach((p,m)=>{(m==="length"||m===Rn||!Xe(m)&&m>=u)&&i(p)})}else switch((n!==void 0||r.has(void 0))&&i(r.get(n)),c&&i(r.get(Rn)),t){case"add":l?c&&i(r.get("length")):(i(r.get(en)),jt(e)&&i(r.get(ba)));break;case"delete":l||(i(r.get(en)),jt(e)&&i(r.get(ba)));break;case"set":jt(e)&&i(r.get(en));break}}pa()}function Vc(e,t){const n=mo.get(e);return n&&n.get(t)}function gn(e){const t=ce(e);return t===e?t:(je(t,"iterate",Rn),He(e)?t:t.map(st))}function bo(e){return je(e=ce(e),"iterate",Rn),e}function ht(e,t){return Tt(e)?dn(Et(e)?st(t):t):st(t)}const Wc={__proto__:null,[Symbol.iterator](){return ya(this,Symbol.iterator,e=>ht(this,e))},concat(...e){return gn(this).concat(...e.map(t=>Z(t)?gn(t):t))},entries(){return ya(this,"entries",e=>(e[1]=ht(this,e[1]),e))},every(e,t){return kt(this,"every",e,t,void 0,arguments)},filter(e,t){return kt(this,"filter",e,t,n=>n.map(o=>ht(this,o)),arguments)},find(e,t){return kt(this,"find",e,t,n=>ht(this,n),arguments)},findIndex(e,t){return kt(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return kt(this,"findLast",e,t,n=>ht(this,n),arguments)},findLastIndex(e,t){return kt(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return kt(this,"forEach",e,t,void 0,arguments)},includes(...e){return _a(this,"includes",e)},indexOf(...e){return _a(this,"indexOf",e)},join(e){return gn(this).join(e)},lastIndexOf(...e){return _a(this,"lastIndexOf",e)},map(e,t){return kt(this,"map",e,t,void 0,arguments)},pop(){return Fn(this,"pop")},push(...e){return Fn(this,"push",e)},reduce(e,...t){return sr(this,"reduce",e,t)},reduceRight(e,...t){return sr(this,"reduceRight",e,t)},shift(){return Fn(this,"shift")},some(e,t){return kt(this,"some",e,t,void 0,arguments)},splice(...e){return Fn(this,"splice",e)},toReversed(){return gn(this).toReversed()},toSorted(e){return gn(this).toSorted(e)},toSpliced(...e){return gn(this).toSpliced(...e)},unshift(...e){return Fn(this,"unshift",e)},values(){return ya(this,"values",e=>ht(this,e))}};function ya(e,t,n){const o=bo(e),a=o[t]();return o!==e&&!He(e)&&(a._next=a.next,a.next=()=>{const s=a._next();return s.done||(s.value=n(s.value)),s}),a}const Yc=Array.prototype;function kt(e,t,n,o,a,s){const r=bo(e),i=r!==e&&!He(e),l=r[t];if(l!==Yc[t]){const p=l.apply(e,s);return i?st(p):p}let c=n;r!==e&&(i?c=function(p,m){return n.call(this,ht(e,p),m,e)}:n.length>2&&(c=function(p,m){return n.call(this,p,m,e)}));const u=l.call(r,c,o);return i&&a?a(u):u}function sr(e,t,n,o){const a=bo(e),s=a!==e&&!He(e);let r=n,i=!1;a!==e&&(s?(i=o.length===0,r=function(c,u,p){return i&&(i=!1,c=ht(e,c)),n.call(this,c,ht(e,u),p,e)}):n.length>3&&(r=function(c,u,p){return n.call(this,c,u,p,e)}));const l=a[t](r,...o);return i?ht(e,l):l}function _a(e,t,n){const o=ce(e);je(o,"iterate",Rn);const a=o[t](...n);return(a===-1||a===!1)&&$o(n[0])?(n[0]=ce(n[0]),o[t](...n)):a}function Fn(e,t,n=[]){pt(),da();const o=ce(e)[t].apply(e,n);return pa(),ft(),o}const Jc=sa("__proto__,__v_isRef,__isVue"),rr=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Xe));function Xc(e){Xe(e)||(e=String(e));const t=ce(this);return je(t,"has",e),t.hasOwnProperty(e)}class ir{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,o){if(n==="__v_skip")return t.__v_skip;const a=this._isReadonly,s=this._isShallow;if(n==="__v_isReactive")return!a;if(n==="__v_isReadonly")return a;if(n==="__v_isShallow")return s;if(n==="__v_raw")return o===(a?s?pr:dr:s?gr:ur).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(o)?t:void 0;const r=Z(t);if(!a){let l;if(r&&(l=Wc[n]))return l;if(n==="hasOwnProperty")return Xc}const i=Reflect.get(t,n,ke(t)?t:o);if((Xe(n)?rr.has(n):Jc(n))||(a||je(t,"get",n),s))return i;if(ke(i)){const l=r&&co(n)?i:i.value;return a&&fe(l)?Sa(l):l}return fe(i)?a?Sa(i):So(i):i}}class lr extends ir{constructor(t=!1){super(!1,t)}set(t,n,o,a){let s=t[n];const r=Z(t)&&co(n);if(!this._isShallow){const c=Tt(s);if(!He(o)&&!Tt(o)&&(s=ce(s),o=ce(o)),!r&&ke(s)&&!ke(o))return c||(s.value=o),!0}const i=r?Number(n)e,yo=e=>Reflect.getPrototypeOf(e);function nu(e,t,n){return function(...o){const a=this.__v_raw,s=ce(a),r=jt(s),i=e==="entries"||e===Symbol.iterator&&r,l=e==="keys"&&r,c=a[e](...o),u=n?Aa:t?dn:st;return!t&&je(s,"iterate",l?ba:en),Ee(Object.create(c),{next(){const{value:p,done:m}=c.next();return m?{value:p,done:m}:{value:i?[u(p[0]),u(p[1])]:u(p),done:m}}})}}function _o(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function ou(e,t){const n={get(a){const s=this.__v_raw,r=ce(s),i=ce(a);e||(dt(a,i)&&je(r,"get",a),je(r,"get",i));const{has:l}=yo(r),c=t?Aa:e?dn:st;if(l.call(r,a))return c(s.get(a));if(l.call(r,i))return c(s.get(i));s!==r&&s.get(a)},get size(){const a=this.__v_raw;return!e&&je(ce(a),"iterate",en),a.size},has(a){const s=this.__v_raw,r=ce(s),i=ce(a);return e||(dt(a,i)&&je(r,"has",a),je(r,"has",i)),a===i?s.has(a):s.has(a)||s.has(i)},forEach(a,s){const r=this,i=r.__v_raw,l=ce(i),c=t?Aa:e?dn:st;return!e&&je(l,"iterate",en),i.forEach((u,p)=>a.call(s,c(u),c(p),r))}};return Ee(n,e?{add:_o("add"),set:_o("set"),delete:_o("delete"),clear:_o("clear")}:{add(a){const s=ce(this),r=yo(s),i=ce(a),l=!t&&!He(a)&&!Tt(a)?i:a;return r.has.call(s,l)||dt(a,l)&&r.has.call(s,a)||dt(i,l)&&r.has.call(s,i)||(s.add(l),$t(s,"add",l,l)),this},set(a,s){!t&&!He(s)&&!Tt(s)&&(s=ce(s));const r=ce(this),{has:i,get:l}=yo(r);let c=i.call(r,a);c||(a=ce(a),c=i.call(r,a));const u=l.call(r,a);return r.set(a,s),c?dt(s,u)&&$t(r,"set",a,s):$t(r,"add",a,s),this},delete(a){const s=ce(this),{has:r,get:i}=yo(s);let l=r.call(s,a);l||(a=ce(a),l=r.call(s,a)),i&&i.call(s,a);const c=s.delete(a);return l&&$t(s,"delete",a,void 0),c},clear(){const a=ce(this),s=a.size!==0,r=a.clear();return s&&$t(a,"clear",void 0,void 0),r}}),["keys","values","entries",Symbol.iterator].forEach(a=>{n[a]=nu(a,e,t)}),n}function Ao(e,t){const n=ou(e,t);return(o,a,s)=>a==="__v_isReactive"?!e:a==="__v_isReadonly"?e:a==="__v_raw"?o:Reflect.get(de(n,a)&&a in o?n:o,a,s)}const au={get:Ao(!1,!1)},su={get:Ao(!1,!0)},ru={get:Ao(!0,!1)},iu={get:Ao(!0,!0)},ur=new WeakMap,gr=new WeakMap,dr=new WeakMap,pr=new WeakMap;function lu(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function So(e){return Tt(e)?e:vo(e,!1,Zc,au,ur)}function cu(e){return vo(e,!1,eu,su,gr)}function Sa(e){return vo(e,!0,Qc,ru,dr)}function zb(e){return vo(e,!0,tu,iu,pr)}function vo(e,t,n,o,a){if(!fe(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const s=a.get(e);if(s)return s;const r=lu(Rc(e));if(r===0)return e;const i=new Proxy(e,r===2?o:n);return a.set(e,i),i}function Et(e){return Tt(e)?Et(e.__v_raw):!!(e&&e.__v_isReactive)}function Tt(e){return!!(e&&e.__v_isReadonly)}function He(e){return!!(e&&e.__v_isShallow)}function $o(e){return e?!!e.__v_raw:!1}function ce(e){const t=e&&e.__v_raw;return t?ce(t):e}function On(e){return!de(e,"__v_skip")&&Object.isExtensible(e)&&Ks(e,"__v_skip",!0),e}const st=e=>fe(e)?So(e):e,dn=e=>fe(e)?Sa(e):e;function ke(e){return e?e.__v_isRef===!0:!1}function he(e){return fr(e,!1)}function va(e){return fr(e,!0)}function fr(e,t){return ke(e)?e:new uu(e,t)}class uu{constructor(t,n){this.dep=new ma,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:ce(t),this._value=n?t:st(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,o=this.__v_isShallow||He(t)||Tt(t);t=o?t:ce(t),dt(t,n)&&(this._rawValue=t,this._value=o?t:st(t),this.dep.trigger())}}function ko(e){return ke(e)?e.value:e}const gu={get:(e,t,n)=>t==="__v_raw"?e:ko(Reflect.get(e,t,n)),set:(e,t,n,o)=>{const a=e[t];return ke(a)&&!ke(n)?(a.value=n,!0):Reflect.set(e,t,n,o)}};function hr(e){return Et(e)?e:new Proxy(e,gu)}function du(e){const t=Z(e)?new Array(e.length):{};for(const n in e)t[n]=fu(e,n);return t}class pu{constructor(t,n,o){this._object=t,this._defaultValue=o,this.__v_isRef=!0,this._value=void 0,this._key=Xe(n)?n:String(n),this._raw=ce(t);let a=!0,s=t;if(!Z(t)||Xe(this._key)||!co(this._key))do a=!$o(s)||He(s);while(a&&(s=s.__v_raw));this._shallow=a}get value(){let t=this._object[this._key];return this._shallow&&(t=ko(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&ke(this._raw[this._key])){const n=this._object[this._key];if(ke(n)){n.value=t;return}}this._object[this._key]=t}get dep(){return Vc(this._raw,this._key)}}function fu(e,t,n){return new pu(e,t,n)}class hu{constructor(t,n,o){this.fn=t,this.setter=n,this._value=void 0,this.dep=new ma(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=In-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=o}notify(){if(this.flags|=16,!(this.flags&8)&&_e!==this)return Zs(this,!0),!0}get value(){const t=this.dep.track();return tr(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function mu(e,t,n=!1){let o,a;return te(e)?o=e:(o=e.get,a=e.set),new hu(o,a,n)}const Eo={},To=new WeakMap;let tn;function bu(e,t=!1,n=tn){if(n){let o=To.get(n);o||To.set(n,o=[]),o.push(e)}}function yu(e,t,n=ye){const{immediate:o,deep:a,once:s,scheduler:r,augmentJob:i,call:l}=n,c=b=>a?b:He(b)||a===!1||a===0?Bt(b,1):Bt(b);let u,p,m,$,w=!1,v=!1;if(ke(e)?(p=()=>e.value,w=He(e)):Et(e)?(p=()=>c(e),w=!0):Z(e)?(v=!0,w=e.some(b=>Et(b)||He(b)),p=()=>e.map(b=>{if(ke(b))return b.value;if(Et(b))return c(b);if(te(b))return l?l(b,2):b()})):te(e)?t?p=l?()=>l(e,2):e:p=()=>{if(m){pt();try{m()}finally{ft()}}const b=tn;tn=u;try{return l?l(e,3,[$]):e($)}finally{tn=b}}:p=gt,t&&a){const b=p,C=a===!0?1/0:a;p=()=>Bt(b(),C)}const T=Ys(),P=()=>{u.stop(),T&&T.active&&ra(T.effects,u)};if(s&&t){const b=t;t=(...C)=>{const A=b(...C);return P(),A}}let k=v?new Array(e.length).fill(Eo):Eo;const y=b=>{if(!(!(u.flags&1)||!u.dirty&&!b))if(t){const C=u.run();if(b||a||w||(v?C.some((A,L)=>dt(A,k[L])):dt(C,k))){m&&m();const A=tn;tn=u;try{const L=[C,k===Eo?void 0:v&&k[0]===Eo?[]:k,$];k=C,l?l(t,3,L):t(...L)}finally{tn=A}}}else u.run()};return i&&i(y),u=new Js(p),u.scheduler=r?()=>r(y,!1):y,$=b=>bu(b,!1,u),m=u.onStop=()=>{const b=To.get(u);if(b){if(l)l(b,4);else for(const C of b)C();To.delete(u)}},t?o?y(!0):k=u.run():r?r(y.bind(null,!0),!0):u.run(),P.pause=u.pause.bind(u),P.resume=u.resume.bind(u),P.stop=P,P}function Bt(e,t=1/0,n){if(t<=0||!fe(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,ke(e))Bt(e.value,t,n);else if(Z(e))for(let o=0;o{Bt(o,t,n)});else if(lo(e)){for(const o in e)Bt(e[o],t,n);for(const o of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,o)&&Bt(e[o],t,n)}return e}/** * @vue/runtime-core v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/const On=[];let ka=!1;function Ob(e,...t){if(ka)return;ka=!0,ft();const n=On.length?On[On.length-1].component:null,o=n&&n.appContext.config.warnHandler,a=yu();if(o)fn(o,n,11,[e+t.map(s=>{var i,r;return(r=(i=s.toString)==null?void 0:i.call(s))!=null?r:JSON.stringify(s)}).join(""),n&&n.proxy,a.map(({vnode:s})=>`at <${dr(n,s.type)}>`).join(` +**/const Dn=[];let $a=!1;function qb(e,...t){if($a)return;$a=!0,pt();const n=Dn.length?Dn[Dn.length-1].component:null,o=n&&n.appContext.config.warnHandler,a=_u();if(o)pn(o,n,11,[e+t.map(s=>{var r,i;return(i=(r=s.toString)==null?void 0:r.call(s))!=null?i:JSON.stringify(s)}).join(""),n&&n.proxy,a.map(({vnode:s})=>`at <${di(n,s.type)}>`).join(` `),a]);else{const s=[`[Vue warn]: ${e}`,...t];a.length&&s.push(` -`,...Au(a)),console.warn(...s)}pt(),ka=!1}function yu(){let e=On[On.length-1];if(!e)return[];const t=[];for(;e;){const n=t[0];n&&n.vnode===e?n.recurseCount++:t.push({vnode:e,recurseCount:0});const o=e.component&&e.component.parent;e=o&&o.vnode}return t}function Au(e){const t=[];return e.forEach((n,o)=>{t.push(...o===0?[]:[` -`],...Su(n))}),t}function Su({vnode:e,recurseCount:t}){const n=t>0?`... (${t} recursive calls)`:"",o=e.component?e.component.parent==null:!1,a=` at <${dr(e.component,e.type,o)}`,s=">"+n;return e.props?[a,...vu(e.props),s]:[a+s]}function vu(e){const t=[],n=Object.keys(e);return n.slice(0,3).forEach(o=>{t.push(...mi(o,e[o]))}),n.length>3&&t.push(" ..."),t}function mi(e,t,n){return ve(t)?(t=JSON.stringify(t),n?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?n?t:[`${e}=${t}`]:Te(t)?(t=mi(e,ce(t.value),!0),n?t:[`${e}=Ref<`,t,">"]):te(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=ce(t),n?t:[`${e}=`,t])}function fn(e,t,n,o){try{return o?e(...o):e()}catch(a){xn(a,t,n)}}function it(e,t,n,o){if(te(e)){const a=fn(e,t,n,o);return a&&js(a)&&a.catch(s=>{xn(s,t,n)}),a}if(Z(e)){const a=[];for(let s=0;s>>1,a=Be[o],s=jn(a);s=jn(n)?Be.push(e):Be.splice(Tu(t),0,e),e.flags|=1,_i()}}function _i(){Lo||(Lo=bi.then(Si))}function Eu(e){if(!Z(e))Kt&&e.id===-1?Kt.splice(hn+1,0,e):e.flags&1||(pn.push(e),e.flags|=1);else for(let t=0;tjn(n)-jn(o));if(pn.length=0,Kt){for(let n=0;ne.id==null?e.flags&2?-1:1/0:e.id;function Si(e){try{for(mt=0;mt{o._d&&jo(-1);const s=wo(t),i=sn.length;let r;try{r=e(...a)}finally{for(let l=sn.length;l>i;l--)ar();wo(s),o._d&&jo(1)}return r};return o._n=!0,o._c=!0,o._d=!0,o}function nn(e,t,n,o){const a=e.dirs,s=t&&t.dirs;for(let i=0;i1)return n&&te(t)?t.call(o&&o.proxy):t}}function Lu(){return!!(Mt()||on)}const Cu=Symbol.for("v-scx"),wu=()=>De(Cu);function Nu(e,t){return Ea(e,null,t)}function Ut(e,t,n){return Ea(e,t,n)}function Ea(e,t,n=_e){const{immediate:o,deep:a,flush:s,once:i}=n,r=Ee({},n),l=t&&o||!t&&s!=="post";let c;if(_n){if(s==="sync"){const k=wu();c=k.__watcherHandles||(k.__watcherHandles=[])}else if(!l){const k=()=>{};return k.stop=gt,k.resume=gt,k.pause=gt,k}}const u=Fe;r.call=(k,N,v)=>it(k,u,N,v);let f=!1;s==="post"?r.scheduler=k=>{ze(k,u&&u.suspense)}:s!=="sync"&&(f=!0,r.scheduler=(k,N)=>{N?k():Ta(k)}),r.augmentJob=k=>{t&&(k.flags|=4),f&&(k.flags|=2,u&&(k.id=u.uid,k.i=u))};const m=_u(e,t,r);return _n&&(c?c.push(m):l&&m()),m}function Pu(e,t,n){const o=this.proxy,a=ve(e)?e.includes(".")?ki(o,e):()=>o[e]:e.bind(o,o);let s;te(t)?s=t:(s=t.handler,n=t);const i=Jn(this),r=Ea(a,s.bind(o),n);return i(),r}function ki(e,t){const n=t.split(".");return()=>{let o=e;for(let a=0;ae.__isTeleport,$a=Symbol("_leaveCb");function Iu(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==Ct){t=n;break}}return t}function Ti(e){if(!Io(e))return No(e.type)&&e.children?Iu(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&te(n.default))return n.default()}}function La(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const n=e.component.subTree;La(No(n.type)&&Ti(n)||n,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Bn(e,t){return te(e)?Ee({name:e.name},t,{setup:e}):e}function Ca(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Ei(e,t){let n;return!!((n=Object.getOwnPropertyDescriptor(e,t))&&!n.configurable)}const Po=new WeakMap;function Kn(e,t,n,o,a=!1){if(Z(e)){e.forEach((v,$)=>Kn(v,t&&(Z(t)?t[$]:t),n,o,a));return}if(Un(o)&&!a){o.shapeFlag&512&&o.type.__asyncResolved&&o.component.subTree.component&&Kn(e,t,n,o.component.subTree);return}const s=o.shapeFlag&4?xa(o.component):o.el,i=a?null:s,{i:r,r:l}=e,c=t&&t.r,u=r.refs===_e?r.refs={}:r.refs,f=r.setupState,m=ce(f),k=f===_e?Os:v=>Ei(u,v)?!1:de(m,v),N=(v,$)=>!($&&Ei(u,$));if(c!=null&&c!==l){if($i(t),ve(c))u[c]=null,k(c)&&(f[c]=null);else if(Te(c)){const v=t;N(c,v.k)&&(c.value=null),v.k&&(u[v.k]=null)}}if(te(l))fn(l,r,12,[i,u]);else{const v=ve(l),$=Te(l);if(v||$){const P=()=>{if(e.f){const T=v?k(l)?f[l]:u[l]:N()||!e.k?l.value:u[e.k];if(a)Z(T)&&ia(T,s);else if(Z(T))T.includes(s)||T.push(s);else if(v)u[l]=[s],k(l)&&(f[l]=u[l]);else{const _=[s];N(l,e.k)&&(l.value=_),e.k&&(u[e.k]=_)}}else v?(u[l]=i,k(l)&&(f[l]=i)):$&&(N(l,e.k)&&(l.value=i),e.k&&(u[e.k]=i))};if(i){const T=()=>{P(),Po.delete(e)};T.id=-1,Po.set(e,T),ze(T,n)}else $i(e),P()}}}function $i(e){const t=Po.get(e);t&&(t.flags|=8,Po.delete(e))}const Li=e=>e.nodeType===8;fo().requestIdleCallback,fo().cancelIdleCallback;function Ru(e,t){if(Li(e)&&e.data==="["){let n=1,o=e.nextSibling;for(;o;){if(o.nodeType===1){if(t(o)===!1)break}else if(Li(o))if(o.data==="]"){if(--n===0)break}else o.data==="["&&n++;o=o.nextSibling}}else t(e)}const Un=e=>!!e.type.__asyncLoader;function Du(e){te(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:o,delay:a=200,hydrate:s,timeout:i,suspensible:r=!0,onError:l}=e;let c=null,u,f=0;const m=()=>(f++,c=null,k()),k=()=>{let N;return c||(N=c=t().catch(v=>{if(v=v instanceof Error?v:new Error(String(v)),l)return new Promise(($,P)=>{l(v,()=>$(m()),()=>P(v),f+1)});throw v}).then(v=>N!==c&&c?c:(v&&(v.__esModule||v[Symbol.toStringTag]==="Module")&&(v=v.default),u=v,v)))};return Bn({name:"AsyncComponentWrapper",__asyncLoader:k,__asyncHydrate(N,v,$){const P=N.isConnected;let T=!1;(v.bu||(v.bu=[])).push(()=>T=!0);const _=()=>{T||!N.parentNode||P&&!N.isConnected||$()},b=s?()=>{const L=s(_,A=>Ru(N,A));L&&(v.bum||(v.bum=[])).push(L)}:_;u?b():k().then(()=>!v.isUnmounted&&b())},get __asyncResolved(){return u},setup(){const N=Fe;if(Ca(N),u)return()=>Mo(u,N);const v=L=>{c=null,xn(L,N,13,!o)};if(r&&N.suspense||_n)return k().then(L=>()=>Mo(L,N)).catch(L=>(v(L),()=>o?Me(o,{error:L}):null));const $=he(!1),P=he(),T=he(!!a);let _,b;return Fo(()=>{_!=null&&clearTimeout(_),b!=null&&clearTimeout(b)}),a&&(b=setTimeout(()=>{N.isUnmounted||(T.value=!1)},a)),i!=null&&(_=setTimeout(()=>{if(!N.isUnmounted&&!$.value&&!P.value){const L=new Error(`Async component timed out after ${i}ms.`);v(L),P.value=L}},i)),k().then(()=>{N.isUnmounted||($.value=!0,N.parent&&Io(N.parent.vnode)&&N.parent.update())}).catch(L=>{if(N.isUnmounted){c=null;return}v(L),P.value=L}),()=>{if($.value&&u)return Mo(u,N);if(P.value&&o)return Me(o,{error:P.value});if(n&&!T.value)return Mo(n,N)}}})}function Mo(e,t){const{ref:n,props:o,children:a,ce:s}=t.vnode,i=Me(e,o,a);return i.ref=n,i.ce=s,delete t.vnode.ce,i}const Io=e=>e.type.__isKeepAlive;function Fu(e,t){Ci(e,"a",t)}function Ou(e,t){Ci(e,"da",t)}function Ci(e,t,n=Fe){const o=e.__wdc||(e.__wdc=()=>{let a=n;for(;a;){if(a.isDeactivated)return;a=a.parent}return e()});if(Ro(t,o,n),n){let a=n.parent;for(;a&&a.parent;)Io(a.parent.vnode)&&xu(o,t,n,a),a=a.parent}}function xu(e,t,n,o){const a=Ro(t,e,o,!0);Fo(()=>{ia(o[t],a)},n)}function Ro(e,t,n=Fe,o=!1){if(n){const a=n[e]||(n[e]=[]),s=t.__weh||(t.__weh=(...i)=>{ft();const r=Jn(n),l=it(t,n,e,i);return r(),pt(),l});return o?a.unshift(s):a.push(s),s}}const Lt=e=>(t,n=Fe)=>{(!_n||e==="sp")&&Ro(e,(...o)=>t(...o),n)},wi=Lt("bm"),Gn=Lt("m"),ju=Lt("bu"),Bu=Lt("u"),Do=Lt("bum"),Fo=Lt("um"),Ku=Lt("sp"),Uu=Lt("rtg"),Gu=Lt("rtc");function zu(e,t=Fe){Ro("ec",e,t)}const qu="components",Ni=Symbol.for("v-ndc");function Pi(e){return ve(e)?Hu(qu,e,!1)||e:e||Ni}function Hu(e,t,n=!0,o=!1){const a=rt||Fe;if(a){const s=a.type;{const r=gr(s,!1);if(r&&(r===t||r===Pe(t)||r===go(Pe(t))))return s}const i=Mi(a[e]||s[e],t)||Mi(a.appContext[e],t);return!i&&o?s:i}}function Mi(e,t){return e&&(e[t]||e[Pe(t)]||e[go(Pe(t))])}function Vu(e,t,n,o){let a;const s=n,i=Z(e);if(i||ve(e)){const r=i&&Et(e);let l=!1,c=!1;r&&(l=!He(e),c=$t(e),e=bo(e)),a=new Array(e.length);for(let u=0,f=e.length;ut(r,l,void 0,s));else{const r=Object.keys(e);a=new Array(r.length);for(let l=0,c=r.length;le?lr(e)?xa(e):wa(e.parent):null,zn=Ee(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>wa(e.parent),$root:e=>wa(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Fi(e),$forceUpdate:e=>e.f||(e.f=()=>{Ta(e.update)}),$nextTick:e=>e.n||(e.n=Co.bind(e.proxy)),$watch:e=>Pu.bind(e)}),Na=(e,t)=>e!==_e&&!e.__isScriptSetup&&de(e,t),Wu={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:o,data:a,props:s,accessCache:i,type:r,appContext:l}=e;if(t[0]!=="$"){const m=i[t];if(m!==void 0)switch(m){case 1:return o[t];case 2:return a[t];case 4:return n[t];case 3:return s[t]}else{if(Na(o,t))return i[t]=1,o[t];if(a!==_e&&de(a,t))return i[t]=2,a[t];if(de(s,t))return i[t]=3,s[t];if(n!==_e&&de(n,t))return i[t]=4,n[t];Pa&&(i[t]=0)}}const c=zn[t];let u,f;if(c)return t==="$attrs"&&je(e.attrs,"get",""),c(e);if((u=r.__cssModules)&&(u=u[t]))return u;if(n!==_e&&de(n,t))return i[t]=4,n[t];if(f=l.config.globalProperties,de(f,t))return f[t]},set({_:e},t,n){const{data:o,setupState:a,ctx:s}=e;return Na(a,t)?(a[t]=n,!0):o!==_e&&de(o,t)?(o[t]=n,!0):de(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(s[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:o,appContext:a,props:s,type:i}},r){let l;return!!(n[r]||e!==_e&&r[0]!=="$"&&de(e,r)||Na(t,r)||de(s,r)||de(o,r)||de(zn,r)||de(a.config.globalProperties,r)||(l=i.__cssModules)&&l[r])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:de(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function Ii(e){return Z(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Pa=!0;function Yu(e){const t=Fi(e),n=e.proxy,o=e.ctx;Pa=!1,t.beforeCreate&&Ri(t.beforeCreate,e,"bc");const{data:a,computed:s,methods:i,watch:r,provide:l,inject:c,created:u,beforeMount:f,mounted:m,beforeUpdate:k,updated:N,activated:v,deactivated:$,beforeDestroy:P,beforeUnmount:T,destroyed:_,unmounted:b,render:L,renderTracked:A,renderTriggered:w,errorCaptured:D,serverPrefetch:S,expose:V,inheritAttrs:ae,components:z,directives:ee,filters:Y}=t;if(c&&Ju(c,o,null),i)for(const q in i){const W=i[q];te(W)&&(o[q]=W.bind(n))}if(a){const q=a.call(n,n);pe(q)&&(e.data=So(q))}if(Pa=!0,s)for(const q in s){const W=s[q],X=te(W)?W.bind(n,n):te(W.get)?W.get.bind(n,n):gt,ge=!te(W)&&te(W.set)?W.set.bind(n):gt,ie=be({get:X,set:ge});Object.defineProperty(o,q,{enumerable:!0,configurable:!0,get:()=>ie.value,set:fe=>ie.value=fe})}if(r)for(const q in r)Di(r[q],o,n,q);if(l){const q=te(l)?l.call(n):l;Reflect.ownKeys(q).forEach(W=>{bt(W,q[W])})}u&&Ri(u,e,"c");function j(q,W){Z(W)?W.forEach(X=>q(X.bind(n))):W&&q(W.bind(n))}if(j(wi,f),j(Gn,m),j(ju,k),j(Bu,N),j(Fu,v),j(Ou,$),j(zu,D),j(Gu,A),j(Uu,w),j(Do,T),j(Fo,b),j(Ku,S),Z(V))if(V.length){const q=e.exposed||(e.exposed={});V.forEach(W=>{Object.defineProperty(q,W,{get:()=>n[W],set:X=>n[W]=X,enumerable:!0})})}else e.exposed||(e.exposed={});L&&e.render===gt&&(e.render=L),ae!=null&&(e.inheritAttrs=ae),z&&(e.components=z),ee&&(e.directives=ee),S&&Ca(e)}function Ju(e,t,n=gt){Z(e)&&(e=Ma(e));for(const o in e){const a=e[o];let s;pe(a)?"default"in a?s=De(a.from||o,a.default,!0):s=De(a.from||o):s=De(a),Te(s)?Object.defineProperty(t,o,{enumerable:!0,configurable:!0,get:()=>s.value,set:i=>s.value=i}):t[o]=s}}function Ri(e,t,n){it(Z(e)?e.map(o=>o.bind(t.proxy)):e.bind(t.proxy),t,n)}function Di(e,t,n,o){let a=o.includes(".")?ki(n,o):()=>n[o];if(ve(e)){const s=t[e];te(s)&&Ut(a,s)}else if(te(e))Ut(a,e.bind(n));else if(pe(e))if(Z(e))e.forEach(s=>Di(s,t,n,o));else{const s=te(e.handler)?e.handler.bind(n):t[e.handler];te(s)&&Ut(a,s,e)}}function Fi(e){const t=e.type,{mixins:n,extends:o}=t,{mixins:a,optionsCache:s,config:{optionMergeStrategies:i}}=e.appContext,r=s.get(t);let l;return r?l=r:!a.length&&!n&&!o?l=t:(l={},a.length&&a.forEach(c=>Oo(l,c,i,!0)),Oo(l,t,i)),pe(t)&&s.set(t,l),l}function Oo(e,t,n,o=!1){const{mixins:a,extends:s}=t;s&&Oo(e,s,n,!0),a&&a.forEach(i=>Oo(e,i,n,!0));for(const i in t)if(!(o&&i==="expose")){const r=Xu[i]||n&&n[i];e[i]=r?r(e[i],t[i]):t[i]}return e}const Xu={data:Oi,props:xi,emits:xi,methods:qn,computed:qn,beforeCreate:Ke,created:Ke,beforeMount:Ke,mounted:Ke,beforeUpdate:Ke,updated:Ke,beforeDestroy:Ke,beforeUnmount:Ke,destroyed:Ke,unmounted:Ke,activated:Ke,deactivated:Ke,errorCaptured:Ke,serverPrefetch:Ke,components:qn,directives:qn,watch:Qu,provide:Oi,inject:Zu};function Oi(e,t){return t?e?function(){return Ee(te(e)?e.call(this,this):e,te(t)?t.call(this,this):t)}:t:e}function Zu(e,t){return qn(Ma(e),Ma(t))}function Ma(e){if(Z(e)){const t={};for(let n=0;nt==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Pe(t)}Modifiers`]||e[`${Ze(t)}Modifiers`];function og(e,t,...n){if(e.isUnmounted)return;const o=e.vnode.props||_e;let a=n;const s=t.startsWith("update:"),i=s&&ng(o,t.slice(7));i&&(i.trim&&(a=n.map(u=>ve(u)?u.trim():u)),i.number&&(a=a.map(Oc)));let r,l=o[r=ra(t)]||o[r=ra(Pe(t))];!l&&s&&(l=o[r=ra(Ze(t))]),l&&it(l,e,6,a);const c=o[r+"Once"];if(c){if(!e.emitted)e.emitted={};else if(e.emitted[r])return;e.emitted[r]=!0,it(c,e,6,a)}}const ag=new WeakMap;function Bi(e,t,n=!1){const o=n?ag:t.emitsCache,a=o.get(e);if(a!==void 0)return a;const s=e.emits;let i={},r=!1;if(!te(e)){const l=c=>{const u=Bi(c,t,!0);u&&(r=!0,Ee(i,u))};!n&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!s&&!r?(pe(e)&&o.set(e,null),null):(Z(s)?s.forEach(l=>i[l]=null):Ee(i,s),pe(e)&&o.set(e,i),i)}function xo(e,t){return!e||!so(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),de(e,t[0].toLowerCase()+t.slice(1))||de(e,Ze(t))||de(e,t))}function xb(){}function Ki(e){const{type:t,vnode:n,proxy:o,withProxy:a,propsOptions:[s],slots:i,attrs:r,emit:l,render:c,renderCache:u,props:f,data:m,setupState:k,ctx:N,inheritAttrs:v}=e,$=wo(e);let P,T;try{if(n.shapeFlag&4){const b=a||o,L=b;P=_t(c.call(L,b,u,f,k,m,N)),T=r}else{const b=t;P=_t(b.length>1?b(f,{attrs:r,slots:i,emit:l}):b(f,null)),T=t.props?r:sg(r)}}catch(b){sn.length=0,xn(b,e,1),P=Me(Ct)}let _=P;if(T&&v!==!1){const b=Object.keys(T),{shapeFlag:L}=_;b.length&&L&7&&(s&&b.some(io)&&(T=ig(T,s)),_=mn(_,T,!1,!0))}if(n.dirs&&(_=mn(_,null,!1,!0),_.dirs=_.dirs?_.dirs.concat(n.dirs):n.dirs),n.transition){const b=No(_.type)&&Ti(_)||_;La(b,n.transition)}return P=_,wo($),P}const sg=e=>{let t;for(const n in e)(n==="class"||n==="style"||so(n))&&((t||(t={}))[n]=e[n]);return t},ig=(e,t)=>{const n={};for(const o in e)(!io(o)||!(o.slice(9)in t))&&(n[o]=e[o]);return n};function rg(e,t,n){const{props:o,children:a,component:s}=e,{props:i,children:r,patchFlag:l}=t,c=s.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&l>=0){if(l&1024)return!0;if(l&16)return o?Ui(o,i,c):!!i;if(l&8){const u=t.dynamicProps;for(let f=0;fObject.create(zi),Hi=e=>Object.getPrototypeOf(e)===zi;function cg(e,t,n,o=!1){const a={},s=qi();e.propsDefaults=Object.create(null),Vi(e,t,a,s);for(const i in e.propsOptions[0])i in a||(a[i]=void 0);n?e.props=o?a:cu(a):e.type.props?e.props=a:e.props=s,e.attrs=s}function ug(e,t,n,o){const{props:a,attrs:s,vnode:{patchFlag:i}}=e,r=ce(a),[l]=e.propsOptions;let c=!1;if((o||i>0)&&!(i&16)){if(i&8){const u=e.vnode.dynamicProps;for(let f=0;f{l=!0;const[m,k]=Wi(f,t,!0);Ee(i,m),k&&r.push(...k)};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}if(!s&&!l)return pe(e)&&o.set(e,un),un;if(Z(s))for(let u=0;ue==="_"||e==="_ctx"||e==="$stable",Da=e=>Z(e)?e.map(_t):[_t(e)],dg=(e,t,n)=>{if(t._n)return t;const o=$u((...a)=>Da(t(...a)),n);return o._c=!1,o},Ji=(e,t,n)=>{const o=e._ctx;for(const a in e){if(Ra(a))continue;const s=e[a];if(te(s))t[a]=dg(a,s,o);else if(s!=null){const i=Da(s);t[a]=()=>i}}},Xi=(e,t)=>{const n=Da(t);e.slots.default=()=>n},Zi=(e,t,n)=>{for(const o in t)(n||!Ra(o))&&(e[o]=t[o])},fg=(e,t,n)=>{const o=e.slots=qi();if(e.vnode.shapeFlag&32){const a=t._;a?(Zi(o,t,n),n&&Ks(o,"_",a,!0)):Ji(t,o)}else t&&Xi(e,t)},pg=(e,t,n)=>{const{vnode:o,slots:a}=e;let s=!0,i=_e;if(o.shapeFlag&32){const r=t._;r?n&&r===1?s=!1:Zi(a,t,n):(s=!t.$stable,Ji(t,a)),i=t}else t&&(Xi(e,t),i={default:1});if(s)for(const r in a)!Ra(r)&&i[r]==null&&delete a[r]},ze=yg;function hg(e){return mg(e)}function mg(e,t){const n=fo();n.__VUE__=!0;const{insert:o,remove:a,patchProp:s,createElement:i,createText:r,createComment:l,setText:c,setElementText:u,parentNode:f,nextSibling:m,setScopeId:k=gt,insertStaticContent:N}=e,v=(p,y,h,M=null,x=null,O=null,U=void 0,K=null,g=!!y.dynamicChildren)=>{if(p===y)return;p&&!Wn(p,y)&&(M=Ye(p),fe(p,x,O,!0),p=null),y.patchFlag===-2&&(g=!1,y.dynamicChildren=null);const{type:d,ref:C,shapeFlag:I}=y;switch(d){case Hn:$(p,y,h,M);break;case Ct:P(p,y,h,M);break;case Oa:p==null&&T(y,h,M,U);break;case Qe:z(p,y,h,M,x,O,U,K,g);break;default:I&1?L(p,y,h,M,x,O,U,K,g):I&6?ee(p,y,h,M,x,O,U,K,g):(I&64||I&128)&&d.process(p,y,h,M,x,O,U,K,g,ot)}C!=null&&x?Kn(C,p&&p.ref,O,y||p,!y):C==null&&p&&p.ref!=null&&Kn(p.ref,null,O,p,!0)},$=(p,y,h,M)=>{if(p==null)o(y.el=r(y.children),h,M);else{const x=y.el=p.el;y.children!==p.children&&c(x,y.children)}},P=(p,y,h,M)=>{p==null?o(y.el=l(y.children||""),h,M):y.el=p.el},T=(p,y,h,M)=>{[p.el,p.anchor]=N(p.children,y,h,M,p.el,p.anchor)},_=({el:p,anchor:y},h,M)=>{let x;for(;p&&p!==y;)x=m(p),o(p,h,M),p=x;o(y,h,M)},b=({el:p,anchor:y})=>{let h;for(;p&&p!==y;)h=m(p),a(p),p=h;a(y)},L=(p,y,h,M,x,O,U,K,g)=>{if(y.type==="svg"?U="svg":y.type==="math"&&(U="mathml"),p==null)A(y,h,M,x,O,U,K,g);else{const d=p.el&&p.el._isVueCE?p.el:null;try{d&&d._beginPatch(),S(p,y,x,O,U,K,g)}finally{d&&d._endPatch()}}},A=(p,y,h,M,x,O,U,K)=>{let g,d;const{props:C,shapeFlag:I,transition:G,dirs:B}=p;if(g=p.el=i(p.type,O,C&&C.is,C),I&8?u(g,p.children):I&16&&D(p.children,g,null,M,x,Fa(p,O),U,K),B&&nn(p,null,M,"created"),w(g,p,p.scopeId,U,M),C){for(const R in C)R!=="value"&&!wn(R)&&s(g,R,null,C[R],O,M);"value"in C&&s(g,"value",null,C.value,O),(d=C.onVnodeBeforeMount)&&yt(d,M,p)}B&&nn(p,null,M,"beforeMount");const E=bg(x,G);E&&G.beforeEnter(g),o(g,y,h),((d=C&&C.onVnodeMounted)||E||B)&&ze(()=>{try{d&&yt(d,M,p),E&&G.enter(g),B&&nn(p,null,M,"mounted")}finally{}},x)},w=(p,y,h,M,x)=>{if(h&&k(p,h),M)for(let O=0;O{for(let d=g;d{const K=y.el=p.el;let{patchFlag:g,dynamicChildren:d,dirs:C}=y;g|=p.patchFlag&16;const I=p.props||_e,G=y.props||_e;let B;if(h&&an(h,!1),(B=G.onVnodeBeforeUpdate)&&yt(B,h,y,p),C&&nn(y,p,h,"beforeUpdate"),h&&an(h,!0),d&&(!p.dynamicChildren||p.dynamicChildren.length!==d.length)&&(g=0,U=!1,d=null),(I.innerHTML&&G.innerHTML==null||I.textContent&&G.textContent==null)&&u(K,""),d?V(p.dynamicChildren,d,K,h,M,Fa(y,x),O):U||W(p,y,K,null,h,M,Fa(y,x),O,!1),g>0){if(g&16)ae(K,I,G,h,x);else if(g&2&&I.class!==G.class&&s(K,"class",null,G.class,x),g&4&&s(K,"style",I.style,G.style,x),g&8){const E=y.dynamicProps;for(let R=0;R{B&&yt(B,h,y,p),C&&nn(y,p,h,"updated")},M)},V=(p,y,h,M,x,O,U)=>{for(let K=0;K{if(y!==h){if(y!==_e)for(const O in y)!wn(O)&&!(O in h)&&s(p,O,y[O],null,x,M);for(const O in h){if(wn(O))continue;const U=h[O],K=y[O];U!==K&&O!=="value"&&s(p,O,K,U,x,M)}"value"in h&&s(p,"value",y.value,h.value,x)}},z=(p,y,h,M,x,O,U,K,g)=>{const d=y.el=p?p.el:r(""),C=y.anchor=p?p.anchor:r("");let{patchFlag:I,dynamicChildren:G,slotScopeIds:B}=y;B&&(K=K?K.concat(B):B),p==null?(o(d,h,M),o(C,h,M),D(y.children||[],h,C,x,O,U,K,g)):I>0&&I&64&&G&&p.dynamicChildren&&p.dynamicChildren.length===G.length?(V(p.dynamicChildren,G,h,x,O,U,K),(y.key!=null||x&&y===x.subTree)&&Qi(p,y,!0)):W(p,y,h,C,x,O,U,K,g)},ee=(p,y,h,M,x,O,U,K,g)=>{y.slotScopeIds=K,p==null?y.shapeFlag&512?x.ctx.activate(y,h,M,U,g):Y(y,h,M,x,O,U,g):F(p,y,g)},Y=(p,y,h,M,x,O,U)=>{const K=p.component=Eg(p,M,x);if(Io(p)&&(K.ctx.renderer=ot),$g(K,!1,U),K.asyncDep){if(x&&x.registerDep(K,j,U),!p.el){const g=K.subTree=Me(Ct);P(null,g,y,h),p.placeholder=g.el}}else j(K,p,y,h,x,O,U)},F=(p,y,h)=>{const M=y.component=p.component;if(rg(p,y,h))if(M.asyncDep&&!M.asyncResolved){q(M,y,h);return}else M.next=y,M.update();else y.el=p.el,M.vnode=y},j=(p,y,h,M,x,O,U)=>{const K=()=>{if(p.isMounted){let{next:I,bu:G,u:B,parent:E,vnode:R}=p;{const xe=er(p);if(xe){I&&(I.el=R.el,q(p,I,U)),xe.asyncDep.then(()=>{ze(()=>{p.isUnmounted||d()},x)});return}}let J=I,se;an(p,!1),I?(I.el=R.el,q(p,I,U)):I=R,G&&la(G),(se=I.props&&I.props.onVnodeBeforeUpdate)&&yt(se,E,I,R),an(p,!0);const Se=Ki(p),Ge=p.subTree;p.subTree=Se,v(Ge,Se,f(Ge.el),Ye(Ge),p,x,O),I.el=Se.el,J===null&&lg(p,Se.el),B&&ze(B,x),(se=I.props&&I.props.onVnodeUpdated)&&ze(()=>yt(se,E,I,R),x)}else{let I;const{el:G,props:B}=y,{bm:E,m:R,parent:J,root:se,type:Se}=p,Ge=Un(y);an(p,!1),E&&la(E),!Ge&&(I=B&&B.onVnodeBeforeMount)&&yt(I,J,y),an(p,!0);{se.ce&&se.ce._hasShadowRoot()&&se.ce._injectChildStyle(Se,p.parent?p.parent.type:void 0);const xe=p.subTree=Ki(p);v(null,xe,h,M,p,x,O),y.el=xe.el}if(R&&ze(R,x),!Ge&&(I=B&&B.onVnodeMounted)){const xe=y;ze(()=>yt(I,J,xe),x)}(y.shapeFlag&256||J&&Un(J.vnode)&&J.vnode.shapeFlag&256)&&p.a&&ze(p.a,x),p.isMounted=!0,y=h=M=null}};p.scope.on();const g=p.effect=new Js(K);p.scope.off();const d=p.update=g.run.bind(g),C=p.job=g.runIfDirty.bind(g);C.i=p,C.id=p.uid,g.scheduler=()=>Ta(C),an(p,!0),d()},q=(p,y,h)=>{y.component=p;const M=p.vnode.props;p.vnode=y,p.next=null,ug(p,y.props,M,h),pg(p,y.children,h),ft(),yi(p),pt()},W=(p,y,h,M,x,O,U,K,g=!1)=>{const d=p&&p.children,C=p?p.shapeFlag:0,I=y.children,{patchFlag:G,shapeFlag:B}=y;if(G>0){if(G&128){ge(d,I,h,M,x,O,U,K,g);return}else if(G&256){X(d,I,h,M,x,O,U,K,g);return}}B&8?(C&16&&Re(d,x,O),I!==d&&u(h,I)):C&16?B&16?ge(d,I,h,M,x,O,U,K,g):Re(d,x,O,!0):(C&8&&u(h,""),B&16&&D(I,h,M,x,O,U,K,g))},X=(p,y,h,M,x,O,U,K,g)=>{p=p||un,y=y||un;const d=p.length,C=y.length,I=Math.min(d,C);let G;for(G=0;GC?Re(p,x,O,!0,!1,I):D(y,h,M,x,O,U,K,g,I)},ge=(p,y,h,M,x,O,U,K,g)=>{let d=0;const C=y.length;let I=p.length-1,G=C-1;for(;d<=I&&d<=G;){const B=p[d],E=y[d]=g?Pt(y[d]):_t(y[d]);if(Wn(B,E))v(B,E,h,null,x,O,U,K,g);else break;d++}for(;d<=I&&d<=G;){const B=p[I],E=y[G]=g?Pt(y[G]):_t(y[G]);if(Wn(B,E))v(B,E,h,null,x,O,U,K,g);else break;I--,G--}if(d>I){if(d<=G){const B=G+1,E=BG)for(;d<=I;)fe(p[d],x,O,!0),d++;else{const B=d,E=d,R=new Map;for(d=E;d<=G;d++){const Je=y[d]=g?Pt(y[d]):_t(y[d]);Je.key!=null&&R.set(Je.key,d)}let J,se=0;const Se=G-E+1;let Ge=!1,xe=0;const cn=new Array(Se);for(d=0;d=Se){fe(Je,x,O,!0);continue}let vt;if(Je.key!=null)vt=R.get(Je.key);else for(J=E;J<=G;J++)if(cn[J-E]===0&&Wn(Je,y[J])){vt=J;break}vt===void 0?fe(Je,x,O,!0):(cn[vt-E]=d+1,vt>=xe?xe=vt:Ge=!0,v(Je,y[vt],h,null,x,O,U,K,g),se++)}const Fs=Ge?_g(cn):un;for(J=Fs.length-1,d=Se-1;d>=0;d--){const Je=E+d,vt=y[Je],Nc=y[Je+1],Pc=Je+1{const{el:O,type:U,transition:K,children:g,shapeFlag:d}=p;if(d&6){ie(p.component.subTree,y,h,M);return}if(d&128){p.suspense.move(y,h,M);return}if(d&64){U.move(p,y,h,ot);return}if(U===Qe){o(O,y,h);for(let I=0;IK.enter(O),x));else{const{leave:I,delayLeave:G,afterLeave:B}=K,E=()=>{p.ctx.isUnmounted?a(O):o(O,y,h)},R=()=>{const J=O._isLeaving||!!O[$a];O._isLeaving&&O[$a](!0),K.persisted&&!J?E():I(O,()=>{E(),B&&B()})};G?G(O,E,R):R()}else o(O,y,h)},fe=(p,y,h,M=!1,x=!1)=>{const{type:O,props:U,ref:K,children:g,dynamicChildren:d,shapeFlag:C,patchFlag:I,dirs:G,cacheIndex:B,memo:E}=p;if(I===-2&&(x=!1),K!=null&&(ft(),Kn(K,null,h,p,!0),pt()),B!=null&&(y.renderCache[B]=void 0),C&256){y.ctx.deactivate(p);return}const R=C&1&&G,J=!Un(p);let se;if(J&&(se=U&&U.onVnodeBeforeUnmount)&&yt(se,y,p),C&6)Ne(p.component,h,M);else{if(C&128){p.suspense.unmount(h,M);return}R&&nn(p,null,y,"beforeUnmount"),C&64?p.type.remove(p,y,h,ot,M):d&&!d.hasOnce&&(O!==Qe||I>0&&I&64)?Re(d,y,h,!1,!0):(O===Qe&&I&384||!x&&C&16)&&Re(g,y,h),M&&oe(p)}const Se=E!=null&&B==null;(J&&(se=U&&U.onVnodeUnmounted)||R||Se)&&ze(()=>{se&&yt(se,y,p),R&&nn(p,null,y,"unmounted"),Se&&(p.el=null)},h)},oe=p=>{const{type:y,el:h,anchor:M,transition:x}=p;if(y===Qe){le(h,M);return}if(y===Oa){b(p);return}const O=()=>{a(h),x&&!x.persisted&&x.afterLeave&&x.afterLeave()};if(p.shapeFlag&1&&x&&!x.persisted){const{leave:U,delayLeave:K}=x,g=()=>U(h,O);K?K(p.el,O,g):g()}else O()},le=(p,y)=>{let h;for(;p!==y;)h=m(p),a(p),p=h;a(y)},Ne=(p,y,h)=>{const{bum:M,scope:x,job:O,subTree:U,um:K,m:g,a:d}=p;tr(g),tr(d),M&&la(M),x.stop(),O&&(O.flags|=8,fe(U,p,y,h)),K&&ze(K,y),ze(()=>{p.isUnmounted=!0},y)},Re=(p,y,h,M=!1,x=!1,O=0)=>{for(let U=O;U{if(p.shapeFlag&6)return Ye(p.component.subTree);if(p.shapeFlag&128)return p.suspense.next();const y=m(p.anchor||p.el),h=y&&y[Mu];return h?m(h):y};let nt=!1;const Zt=(p,y,h)=>{let M;p==null?y._vnode&&(fe(y._vnode,null,null,!0),M=y._vnode.component):v(y._vnode||null,p,y,null,null,null,h),y._vnode=p,nt||(nt=!0,yi(M),Ai(),nt=!1)},ot={p:v,um:fe,m:ie,r:oe,mt:Y,mc:D,pc:W,pbc:V,n:Ye,o:e};return{render:Zt,hydrate:void 0,createApp:tg(Zt)}}function Fa({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function an({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function bg(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Qi(e,t,n=!1){const o=e.children,a=t.children;if(Z(o)&&Z(a))for(let s=0;s>1,e[n[r]]0&&(t[o]=n[s-1]),n[s]=o)}}for(s=n.length,i=n[s-1];s-- >0;)n[s]=i,i=t[i];return n}function er(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:er(t)}function tr(e){if(e)for(let t=0;te.__isSuspense;function yg(e,t){t&&t.pendingBranch?Z(e)?t.effects.push(...e):t.effects.push(e):Eu(e)}const Qe=Symbol.for("v-fgt"),Hn=Symbol.for("v-txt"),Ct=Symbol.for("v-cmt"),Oa=Symbol.for("v-stc"),sn=[];let Ve=null;function We(e=!1){sn.push(Ve=e?null:[])}function ar(){sn.pop(),Ve=sn[sn.length-1]||null}let Vn=1;function jo(e,t=!1){Vn+=e,e<0&&Ve&&t&&(Ve.hasOnce=!0)}function sr(e){return e.dynamicChildren=Vn>0?Ve||un:null,ar(),Vn>0&&Ve&&Ve.push(e),e}function wt(e,t,n,o,a,s){return sr(Ce(e,t,n,o,a,s,!0))}function Bo(e,t,n,o,a){return sr(Me(e,t,n,o,a,!0))}function Ko(e){return e?e.__v_isVNode===!0:!1}function Wn(e,t){return e.type===t.type&&e.key===t.key}const ir=({key:e})=>e??null,Uo=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?ve(e)||Te(e)||te(e)?{i:rt,r:e,k:t,f:!!n}:e:null);function Ce(e,t=null,n=null,o=0,a=null,s=e===Qe?0:1,i=!1,r=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&ir(t),ref:t&&Uo(t),scopeId:vi,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:s,patchFlag:o,dynamicProps:a,dynamicChildren:null,appContext:null,ctx:rt};return r?(Go(l,n),s&128&&e.normalize(l)):n&&(l.shapeFlag|=ve(n)?8:16),Vn>0&&!i&&Ve&&(l.patchFlag>0||s&6)&&l.patchFlag!==32&&Ve.push(l),l}const Me=Ag;function Ag(e,t=null,n=null,o=0,a=null,s=!1){if((!e||e===Ni)&&(e=Ct),Ko(e)){const r=mn(e,t,!0);return n&&Go(r,n),Vn>0&&!s&&Ve&&(r.shapeFlag&6?Ve[Ve.indexOf(e)]=r:Ve.push(r)),r.patchFlag=-2,r}if(Mg(e)&&(e=e.__vccOpts),t){t=Sg(t);let{class:r,style:l}=t;r&&!ve(r)&&(t.class=Nn(r)),pe(l)&&(ko(l)&&!Z(l)&&(l=Ee({},l)),t.style=po(l))}const i=ve(e)?1:or(e)?128:No(e)?64:pe(e)?4:te(e)?2:0;return Ce(e,t,n,o,a,i,s,!0)}function Sg(e){return e?ko(e)||Hi(e)?Ee({},e):e:null}function mn(e,t,n=!1,o=!1){const{props:a,ref:s,patchFlag:i,children:r,transition:l}=e,c=t?vg(a||{},t):a,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&ir(c),ref:t&&t.ref?n&&s?Z(s)?s.concat(Uo(t)):[s,Uo(t)]:Uo(t):s,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:r,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Qe?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&mn(e.ssContent),ssFallback:e.ssFallback&&mn(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&o&&La(u,l.clone(u)),u}function Nt(e=" ",t=0){return Me(Hn,null,e,t)}function bn(e="",t=!1){return t?(We(),Bo(Ct,null,e)):Me(Ct,null,e)}function _t(e){return e==null||typeof e=="boolean"?Me(Ct):Z(e)?Me(Qe,null,e.slice()):Ko(e)?Pt(e):Me(Hn,null,String(e))}function Pt(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:mn(e)}function Go(e,t){let n=0;const{shapeFlag:o}=e;if(t==null)t=null;else if(Z(t))n=16;else if(typeof t=="object")if(o&65){const a=t.default;a&&(a._c&&(a._d=!1),Go(e,a()),a._c&&(a._d=!0));return}else{n=32;const a=t._;!a&&!Hi(t)?t._ctx=rt:a===3&&rt&&(rt.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(te(t)){if(o&65){Go(e,{default:t});return}t={default:t,_ctx:rt},n=32}else t=String(t),o&64?(n=16,t=[Nt(t)]):n=8;e.children=t,e.shapeFlag|=n}function vg(...e){const t={};for(let n=0;nFe||rt;let zo,Yn;{const e=fo(),t=(n,o)=>{let a;return(a=e[n])||(a=e[n]=[]),a.push(o),s=>{a.length>1?a.forEach(i=>i(s)):a[0](s)}};zo=t("__VUE_INSTANCE_SETTERS__",n=>Fe=n),Yn=t("__VUE_SSR_SETTERS__",n=>_n=n)}const Jn=e=>{const t=Fe;return zo(e),e.scope.on(),()=>{e.scope.off(),zo(t)}},rr=()=>{Fe&&Fe.scope.off(),zo(null)};function lr(e){return e.vnode.shapeFlag&4}let _n=!1;function $g(e,t=!1,n=!1){t&&Yn(t);const{props:o,children:a}=e.vnode,s=lr(e);cg(e,o,s,t),fg(e,a,n||t);const i=s?Lg(e,t):void 0;return t&&Yn(!1),i}function Lg(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Wu);const{setup:o}=n;if(o){ft();const a=e.setupContext=o.length>1?wg(e):null,s=Jn(e),i=fn(o,e,0,[e.props,a]),r=js(i);if(pt(),s(),(r||e.sp)&&!Un(e)&&Ca(e),r){if(i.then(rr,rr),t)return i.then(l=>{Yn(!0);try{cr(e,l,t)}finally{Yn(!1)}}).catch(l=>{xn(l,e,0)});e.asyncDep=i}else cr(e,i)}else ur(e)}function cr(e,t,n){te(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:pe(t)&&(e.setupState=hi(t)),ur(e)}function ur(e,t,n){const o=e.type;e.render||(e.render=o.render||gt);{const a=Jn(e);ft();try{Yu(e)}finally{pt(),a()}}}const Cg={get(e,t){return je(e,"get",""),e[t]}};function wg(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Cg),slots:e.slots,emit:e.emit,expose:t}}function xa(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(hi(Fn(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in zn)return zn[n](e)},has(t,n){return n in t||n in zn}})):e.proxy}const Ng=/(?:^|[-_])\w/g,Pg=e=>e.replace(Ng,t=>t.toUpperCase()).replace(/[-_]/g,"");function gr(e,t=!0){return te(e)?e.displayName||e.name:e.name||t&&e.__name}function dr(e,t,n=!1){let o=gr(t);if(!o&&t.__file){const a=t.__file.match(/([^/\\]+)\.\w+$/);a&&(o=a[1])}if(!o&&e){const a=s=>{for(const i in s)if(s[i]===t)return i};o=a(e.components)||e.parent&&a(e.parent.type.components)||a(e.appContext.components)}return o?Pg(o):n?"App":"Anonymous"}function Mg(e){return te(e)&&"__vccOpts"in e}const be=(e,t)=>mu(e,t,_n);function fr(e,t,n){try{jo(-1);const o=arguments.length;return o===2?pe(t)&&!Z(t)?Ko(t)?Me(e,null,[t]):Me(e,t):Me(e,null,t):(o>3?n=Array.prototype.slice.call(arguments,2):o===3&&Ko(n)&&(n=[n]),Me(e,t,n))}finally{jo(1)}}const Ig="3.5.42";/** +`,...Au(a)),console.warn(...s)}ft(),$a=!1}function _u(){let e=Dn[Dn.length-1];if(!e)return[];const t=[];for(;e;){const n=t[0];n&&n.vnode===e?n.recurseCount++:t.push({vnode:e,recurseCount:0});const o=e.component&&e.component.parent;e=o&&o.vnode}return t}function Au(e){const t=[];return e.forEach((n,o)=>{t.push(...o===0?[]:[` +`],...Su(n))}),t}function Su({vnode:e,recurseCount:t}){const n=t>0?`... (${t} recursive calls)`:"",o=e.component?e.component.parent==null:!1,a=` at <${di(e.component,e.type,o)}`,s=">"+n;return e.props?[a,...vu(e.props),s]:[a+s]}function vu(e){const t=[],n=Object.keys(e);return n.slice(0,3).forEach(o=>{t.push(...mr(o,e[o]))}),n.length>3&&t.push(" ..."),t}function mr(e,t,n){return ve(t)?(t=JSON.stringify(t),n?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?n?t:[`${e}=${t}`]:ke(t)?(t=mr(e,ce(t.value),!0),n?t:[`${e}=Ref<`,t,">"]):te(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=ce(t),n?t:[`${e}=`,t])}function pn(e,t,n,o){try{return o?e(...o):e()}catch(a){xn(a,t,n)}}function rt(e,t,n,o){if(te(e)){const a=pn(e,t,n,o);return a&&js(a)&&a.catch(s=>{xn(s,t,n)}),a}if(Z(e)){const a=[];for(let s=0;s>>1,a=Be[o],s=jn(a);s=jn(n)?Be.push(e):Be.splice(ku(t),0,e),e.flags|=1,yr()}}function yr(){Co||(Co=br.then(Sr))}function Eu(e){if(!Z(e))Kt&&e.id===-1?Kt.splice(hn+1,0,e):e.flags&1||(fn.push(e),e.flags|=1);else for(let t=0;tjn(n)-jn(o));if(fn.length=0,Kt){for(let n=0;ne.id==null?e.flags&2?-1:1/0:e.id;function Sr(e){try{for(mt=0;mt{o._d&&jo(-1);const s=Lo(t),r=sn.length;let i;try{i=e(...a)}finally{for(let l=sn.length;l>r;l--)ai();Lo(s),o._d&&jo(1)}return i};return o._n=!0,o._c=!0,o._d=!0,o}function nn(e,t,n,o){const a=e.dirs,s=t&&t.dirs;for(let r=0;r1)return n&&te(t)?t.call(o&&o.proxy):t}}function Cu(){return!!(Mt()||on)}const Nu=Symbol.for("v-scx"),Lu=()=>Fe(Nu);function wu(e,t){return Ea(e,null,t)}function Ut(e,t,n){return Ea(e,t,n)}function Ea(e,t,n=ye){const{immediate:o,deep:a,flush:s,once:r}=n,i=Ee({},n),l=t&&o||!t&&s!=="post";let c;if(yn){if(s==="sync"){const $=Lu();c=$.__watcherHandles||($.__watcherHandles=[])}else if(!l){const $=()=>{};return $.stop=gt,$.resume=gt,$.pause=gt,$}}const u=Oe;i.call=($,w,v)=>rt($,u,w,v);let p=!1;s==="post"?i.scheduler=$=>{ze($,u&&u.suspense)}:s!=="sync"&&(p=!0,i.scheduler=($,w)=>{w?$():ka($)}),i.augmentJob=$=>{t&&($.flags|=4),p&&($.flags|=2,u&&($.id=u.uid,$.i=u))};const m=yu(e,t,i);return yn&&(c?c.push(m):l&&m()),m}function Pu(e,t,n){const o=this.proxy,a=ve(e)?e.includes(".")?$r(o,e):()=>o[e]:e.bind(o,o);let s;te(t)?s=t:(s=t.handler,n=t);const r=Jn(this),i=Ea(a,s.bind(o),n);return r(),i}function $r(e,t){const n=t.split(".");return()=>{let o=e;for(let a=0;ae.__isTeleport,Ta=Symbol("_leaveCb");function Iu(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==Nt){t=n;break}}return t}function kr(e){if(!Io(e))return wo(e.type)&&e.children?Iu(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&te(n.default))return n.default()}}function Ca(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const n=e.component.subTree;Ca(wo(n.type)&&kr(n)||n,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Bn(e,t){return te(e)?Ee({name:e.name},t,{setup:e}):e}function Na(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Er(e,t){let n;return!!((n=Object.getOwnPropertyDescriptor(e,t))&&!n.configurable)}const Po=new WeakMap;function Kn(e,t,n,o,a=!1){if(Z(e)){e.forEach((v,T)=>Kn(v,t&&(Z(t)?t[T]:t),n,o,a));return}if(Un(o)&&!a){o.shapeFlag&512&&o.type.__asyncResolved&&o.component.subTree.component&&Kn(e,t,n,o.component.subTree);return}const s=o.shapeFlag&4?xa(o.component):o.el,r=a?null:s,{i,r:l}=e,c=t&&t.r,u=i.refs===ye?i.refs={}:i.refs,p=i.setupState,m=ce(p),$=p===ye?Ds:v=>Er(u,v)?!1:de(m,v),w=(v,T)=>!(T&&Er(u,T));if(c!=null&&c!==l){if(Tr(t),ve(c))u[c]=null,$(c)&&(p[c]=null);else if(ke(c)){const v=t;w(c,v.k)&&(c.value=null),v.k&&(u[v.k]=null)}}if(te(l))pn(l,i,12,[r,u]);else{const v=ve(l),T=ke(l);if(v||T){const P=()=>{if(e.f){const k=v?$(l)?p[l]:u[l]:w()||!e.k?l.value:u[e.k];if(a)Z(k)&&ra(k,s);else if(Z(k))k.includes(s)||k.push(s);else if(v)u[l]=[s],$(l)&&(p[l]=u[l]);else{const y=[s];w(l,e.k)&&(l.value=y),e.k&&(u[e.k]=y)}}else v?(u[l]=r,$(l)&&(p[l]=r)):T&&(w(l,e.k)&&(l.value=r),e.k&&(u[e.k]=r))};if(r){const k=()=>{P(),Po.delete(e)};k.id=-1,Po.set(e,k),ze(k,n)}else Tr(e),P()}}}function Tr(e){const t=Po.get(e);t&&(t.flags|=8,Po.delete(e))}const Cr=e=>e.nodeType===8;po().requestIdleCallback,po().cancelIdleCallback;function Ru(e,t){if(Cr(e)&&e.data==="["){let n=1,o=e.nextSibling;for(;o;){if(o.nodeType===1){if(t(o)===!1)break}else if(Cr(o))if(o.data==="]"){if(--n===0)break}else o.data==="["&&n++;o=o.nextSibling}}else t(e)}const Un=e=>!!e.type.__asyncLoader;function Fu(e){te(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:o,delay:a=200,hydrate:s,timeout:r,suspensible:i=!0,onError:l}=e;let c=null,u,p=0;const m=()=>(p++,c=null,$()),$=()=>{let w;return c||(w=c=t().catch(v=>{if(v=v instanceof Error?v:new Error(String(v)),l)return new Promise((T,P)=>{l(v,()=>T(m()),()=>P(v),p+1)});throw v}).then(v=>w!==c&&c?c:(v&&(v.__esModule||v[Symbol.toStringTag]==="Module")&&(v=v.default),u=v,v)))};return Bn({name:"AsyncComponentWrapper",__asyncLoader:$,__asyncHydrate(w,v,T){const P=w.isConnected;let k=!1;(v.bu||(v.bu=[])).push(()=>k=!0);const y=()=>{k||!w.parentNode||P&&!w.isConnected||T()},b=s?()=>{const C=s(y,A=>Ru(w,A));C&&(v.bum||(v.bum=[])).push(C)}:y;u?b():$().then(()=>!v.isUnmounted&&b())},get __asyncResolved(){return u},setup(){const w=Oe;if(Na(w),u)return()=>Mo(u,w);const v=C=>{c=null,xn(C,w,13,!o)};if(i&&w.suspense||yn)return $().then(C=>()=>Mo(C,w)).catch(C=>(v(C),()=>o?Me(o,{error:C}):null));const T=he(!1),P=he(),k=he(!!a);let y,b;return Oo(()=>{y!=null&&clearTimeout(y),b!=null&&clearTimeout(b)}),a&&(b=setTimeout(()=>{w.isUnmounted||(k.value=!1)},a)),r!=null&&(y=setTimeout(()=>{if(!w.isUnmounted&&!T.value&&!P.value){const C=new Error(`Async component timed out after ${r}ms.`);v(C),P.value=C}},r)),$().then(()=>{w.isUnmounted||(T.value=!0,w.parent&&Io(w.parent.vnode)&&w.parent.update())}).catch(C=>{if(w.isUnmounted){c=null;return}v(C),P.value=C}),()=>{if(T.value&&u)return Mo(u,w);if(P.value&&o)return Me(o,{error:P.value});if(n&&!k.value)return Mo(n,w)}}})}function Mo(e,t){const{ref:n,props:o,children:a,ce:s}=t.vnode,r=Me(e,o,a);return r.ref=n,r.ce=s,delete t.vnode.ce,r}const Io=e=>e.type.__isKeepAlive;function Ou(e,t){Nr(e,"a",t)}function Du(e,t){Nr(e,"da",t)}function Nr(e,t,n=Oe){const o=e.__wdc||(e.__wdc=()=>{let a=n;for(;a;){if(a.isDeactivated)return;a=a.parent}return e()});if(Ro(t,o,n),n){let a=n.parent;for(;a&&a.parent;)Io(a.parent.vnode)&&xu(o,t,n,a),a=a.parent}}function xu(e,t,n,o){const a=Ro(t,e,o,!0);Oo(()=>{ra(o[t],a)},n)}function Ro(e,t,n=Oe,o=!1){if(n){const a=n[e]||(n[e]=[]),s=t.__weh||(t.__weh=(...r)=>{pt();const i=Jn(n),l=rt(t,n,e,r);return i(),ft(),l});return o?a.unshift(s):a.push(s),s}}const Ct=e=>(t,n=Oe)=>{(!yn||e==="sp")&&Ro(e,(...o)=>t(...o),n)},Lr=Ct("bm"),Gn=Ct("m"),ju=Ct("bu"),Bu=Ct("u"),Fo=Ct("bum"),Oo=Ct("um"),Ku=Ct("sp"),Uu=Ct("rtg"),Gu=Ct("rtc");function zu(e,t=Oe){Ro("ec",e,t)}const qu="components",wr=Symbol.for("v-ndc");function Pr(e){return ve(e)?Hu(qu,e,!1)||e:e||wr}function Hu(e,t,n=!0,o=!1){const a=it||Oe;if(a){const s=a.type;{const i=gi(s,!1);if(i&&(i===t||i===Pe(t)||i===go(Pe(t))))return s}const r=Mr(a[e]||s[e],t)||Mr(a.appContext[e],t);return!r&&o?s:r}}function Mr(e,t){return e&&(e[t]||e[Pe(t)]||e[go(Pe(t))])}function Vu(e,t,n,o){let a;const s=n,r=Z(e);if(r||ve(e)){const i=r&&Et(e);let l=!1,c=!1;i&&(l=!He(e),c=Tt(e),e=bo(e)),a=new Array(e.length);for(let u=0,p=e.length;ut(i,l,void 0,s));else{const i=Object.keys(e);a=new Array(i.length);for(let l=0,c=i.length;le?li(e)?xa(e):La(e.parent):null,zn=Ee(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>La(e.parent),$root:e=>La(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Or(e),$forceUpdate:e=>e.f||(e.f=()=>{ka(e.update)}),$nextTick:e=>e.n||(e.n=No.bind(e.proxy)),$watch:e=>Pu.bind(e)}),wa=(e,t)=>e!==ye&&!e.__isScriptSetup&&de(e,t),Wu={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:o,data:a,props:s,accessCache:r,type:i,appContext:l}=e;if(t[0]!=="$"){const m=r[t];if(m!==void 0)switch(m){case 1:return o[t];case 2:return a[t];case 4:return n[t];case 3:return s[t]}else{if(wa(o,t))return r[t]=1,o[t];if(a!==ye&&de(a,t))return r[t]=2,a[t];if(de(s,t))return r[t]=3,s[t];if(n!==ye&&de(n,t))return r[t]=4,n[t];Pa&&(r[t]=0)}}const c=zn[t];let u,p;if(c)return t==="$attrs"&&je(e.attrs,"get",""),c(e);if((u=i.__cssModules)&&(u=u[t]))return u;if(n!==ye&&de(n,t))return r[t]=4,n[t];if(p=l.config.globalProperties,de(p,t))return p[t]},set({_:e},t,n){const{data:o,setupState:a,ctx:s}=e;return wa(a,t)?(a[t]=n,!0):o!==ye&&de(o,t)?(o[t]=n,!0):de(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(s[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:o,appContext:a,props:s,type:r}},i){let l;return!!(n[i]||e!==ye&&i[0]!=="$"&&de(e,i)||wa(t,i)||de(s,i)||de(o,i)||de(zn,i)||de(a.config.globalProperties,i)||(l=r.__cssModules)&&l[i])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:de(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function Ir(e){return Z(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let Pa=!0;function Yu(e){const t=Or(e),n=e.proxy,o=e.ctx;Pa=!1,t.beforeCreate&&Rr(t.beforeCreate,e,"bc");const{data:a,computed:s,methods:r,watch:i,provide:l,inject:c,created:u,beforeMount:p,mounted:m,beforeUpdate:$,updated:w,activated:v,deactivated:T,beforeDestroy:P,beforeUnmount:k,destroyed:y,unmounted:b,render:C,renderTracked:A,renderTriggered:L,errorCaptured:F,serverPrefetch:S,expose:V,inheritAttrs:ae,components:z,directives:ee,filters:Y}=t;if(c&&Ju(c,o,null),r)for(const q in r){const W=r[q];te(W)&&(o[q]=W.bind(n))}if(a){const q=a.call(n,n);fe(q)&&(e.data=So(q))}if(Pa=!0,s)for(const q in s){const W=s[q],X=te(W)?W.bind(n,n):te(W.get)?W.get.bind(n,n):gt,ge=!te(W)&&te(W.set)?W.set.bind(n):gt,re=be({get:X,set:ge});Object.defineProperty(o,q,{enumerable:!0,configurable:!0,get:()=>re.value,set:pe=>re.value=pe})}if(i)for(const q in i)Fr(i[q],o,n,q);if(l){const q=te(l)?l.call(n):l;Reflect.ownKeys(q).forEach(W=>{bt(W,q[W])})}u&&Rr(u,e,"c");function j(q,W){Z(W)?W.forEach(X=>q(X.bind(n))):W&&q(W.bind(n))}if(j(Lr,p),j(Gn,m),j(ju,$),j(Bu,w),j(Ou,v),j(Du,T),j(zu,F),j(Gu,A),j(Uu,L),j(Fo,k),j(Oo,b),j(Ku,S),Z(V))if(V.length){const q=e.exposed||(e.exposed={});V.forEach(W=>{Object.defineProperty(q,W,{get:()=>n[W],set:X=>n[W]=X,enumerable:!0})})}else e.exposed||(e.exposed={});C&&e.render===gt&&(e.render=C),ae!=null&&(e.inheritAttrs=ae),z&&(e.components=z),ee&&(e.directives=ee),S&&Na(e)}function Ju(e,t,n=gt){Z(e)&&(e=Ma(e));for(const o in e){const a=e[o];let s;fe(a)?"default"in a?s=Fe(a.from||o,a.default,!0):s=Fe(a.from||o):s=Fe(a),ke(s)?Object.defineProperty(t,o,{enumerable:!0,configurable:!0,get:()=>s.value,set:r=>s.value=r}):t[o]=s}}function Rr(e,t,n){rt(Z(e)?e.map(o=>o.bind(t.proxy)):e.bind(t.proxy),t,n)}function Fr(e,t,n,o){let a=o.includes(".")?$r(n,o):()=>n[o];if(ve(e)){const s=t[e];te(s)&&Ut(a,s)}else if(te(e))Ut(a,e.bind(n));else if(fe(e))if(Z(e))e.forEach(s=>Fr(s,t,n,o));else{const s=te(e.handler)?e.handler.bind(n):t[e.handler];te(s)&&Ut(a,s,e)}}function Or(e){const t=e.type,{mixins:n,extends:o}=t,{mixins:a,optionsCache:s,config:{optionMergeStrategies:r}}=e.appContext,i=s.get(t);let l;return i?l=i:!a.length&&!n&&!o?l=t:(l={},a.length&&a.forEach(c=>Do(l,c,r,!0)),Do(l,t,r)),fe(t)&&s.set(t,l),l}function Do(e,t,n,o=!1){const{mixins:a,extends:s}=t;s&&Do(e,s,n,!0),a&&a.forEach(r=>Do(e,r,n,!0));for(const r in t)if(!(o&&r==="expose")){const i=Xu[r]||n&&n[r];e[r]=i?i(e[r],t[r]):t[r]}return e}const Xu={data:Dr,props:xr,emits:xr,methods:qn,computed:qn,beforeCreate:Ke,created:Ke,beforeMount:Ke,mounted:Ke,beforeUpdate:Ke,updated:Ke,beforeDestroy:Ke,beforeUnmount:Ke,destroyed:Ke,unmounted:Ke,activated:Ke,deactivated:Ke,errorCaptured:Ke,serverPrefetch:Ke,components:qn,directives:qn,watch:Qu,provide:Dr,inject:Zu};function Dr(e,t){return t?e?function(){return Ee(te(e)?e.call(this,this):e,te(t)?t.call(this,this):t)}:t:e}function Zu(e,t){return qn(Ma(e),Ma(t))}function Ma(e){if(Z(e)){const t={};for(let n=0;nt==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Pe(t)}Modifiers`]||e[`${Ze(t)}Modifiers`];function og(e,t,...n){if(e.isUnmounted)return;const o=e.vnode.props||ye;let a=n;const s=t.startsWith("update:"),r=s&&ng(o,t.slice(7));r&&(r.trim&&(a=n.map(u=>ve(u)?u.trim():u)),r.number&&(a=a.map(Dc)));let i,l=o[i=ia(t)]||o[i=ia(Pe(t))];!l&&s&&(l=o[i=ia(Ze(t))]),l&&rt(l,e,6,a);const c=o[i+"Once"];if(c){if(!e.emitted)e.emitted={};else if(e.emitted[i])return;e.emitted[i]=!0,rt(c,e,6,a)}}const ag=new WeakMap;function Br(e,t,n=!1){const o=n?ag:t.emitsCache,a=o.get(e);if(a!==void 0)return a;const s=e.emits;let r={},i=!1;if(!te(e)){const l=c=>{const u=Br(c,t,!0);u&&(i=!0,Ee(r,u))};!n&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!s&&!i?(fe(e)&&o.set(e,null),null):(Z(s)?s.forEach(l=>r[l]=null):Ee(r,s),fe(e)&&o.set(e,r),r)}function xo(e,t){return!e||!so(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),de(e,t[0].toLowerCase()+t.slice(1))||de(e,Ze(t))||de(e,t))}function Hb(){}function Kr(e){const{type:t,vnode:n,proxy:o,withProxy:a,propsOptions:[s],slots:r,attrs:i,emit:l,render:c,renderCache:u,props:p,data:m,setupState:$,ctx:w,inheritAttrs:v}=e,T=Lo(e);let P,k;try{if(n.shapeFlag&4){const b=a||o,C=b;P=yt(c.call(C,b,u,p,$,m,w)),k=i}else{const b=t;P=yt(b.length>1?b(p,{attrs:i,slots:r,emit:l}):b(p,null)),k=t.props?i:sg(i)}}catch(b){sn.length=0,xn(b,e,1),P=Me(Nt)}let y=P;if(k&&v!==!1){const b=Object.keys(k),{shapeFlag:C}=y;b.length&&C&7&&(s&&b.some(ro)&&(k=rg(k,s)),y=mn(y,k,!1,!0))}if(n.dirs&&(y=mn(y,null,!1,!0),y.dirs=y.dirs?y.dirs.concat(n.dirs):n.dirs),n.transition){const b=wo(y.type)&&kr(y)||y;Ca(b,n.transition)}return P=y,Lo(T),P}const sg=e=>{let t;for(const n in e)(n==="class"||n==="style"||so(n))&&((t||(t={}))[n]=e[n]);return t},rg=(e,t)=>{const n={};for(const o in e)(!ro(o)||!(o.slice(9)in t))&&(n[o]=e[o]);return n};function ig(e,t,n){const{props:o,children:a,component:s}=e,{props:r,children:i,patchFlag:l}=t,c=s.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&l>=0){if(l&1024)return!0;if(l&16)return o?Ur(o,r,c):!!r;if(l&8){const u=t.dynamicProps;for(let p=0;pObject.create(zr),Hr=e=>Object.getPrototypeOf(e)===zr;function cg(e,t,n,o=!1){const a={},s=qr();e.propsDefaults=Object.create(null),Vr(e,t,a,s);for(const r in e.propsOptions[0])r in a||(a[r]=void 0);n?e.props=o?a:cu(a):e.type.props?e.props=a:e.props=s,e.attrs=s}function ug(e,t,n,o){const{props:a,attrs:s,vnode:{patchFlag:r}}=e,i=ce(a),[l]=e.propsOptions;let c=!1;if((o||r>0)&&!(r&16)){if(r&8){const u=e.vnode.dynamicProps;for(let p=0;p{l=!0;const[m,$]=Wr(p,t,!0);Ee(r,m),$&&i.push(...$)};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}if(!s&&!l)return fe(e)&&o.set(e,un),un;if(Z(s))for(let u=0;ue==="_"||e==="_ctx"||e==="$stable",Fa=e=>Z(e)?e.map(yt):[yt(e)],dg=(e,t,n)=>{if(t._n)return t;const o=Tu((...a)=>Fa(t(...a)),n);return o._c=!1,o},Jr=(e,t,n)=>{const o=e._ctx;for(const a in e){if(Ra(a))continue;const s=e[a];if(te(s))t[a]=dg(a,s,o);else if(s!=null){const r=Fa(s);t[a]=()=>r}}},Xr=(e,t)=>{const n=Fa(t);e.slots.default=()=>n},Zr=(e,t,n)=>{for(const o in t)(n||!Ra(o))&&(e[o]=t[o])},pg=(e,t,n)=>{const o=e.slots=qr();if(e.vnode.shapeFlag&32){const a=t._;a?(Zr(o,t,n),n&&Ks(o,"_",a,!0)):Jr(t,o)}else t&&Xr(e,t)},fg=(e,t,n)=>{const{vnode:o,slots:a}=e;let s=!0,r=ye;if(o.shapeFlag&32){const i=t._;i?n&&i===1?s=!1:Zr(a,t,n):(s=!t.$stable,Jr(t,a)),r=t}else t&&(Xr(e,t),r={default:1});if(s)for(const i in a)!Ra(i)&&r[i]==null&&delete a[i]},ze=_g;function hg(e){return mg(e)}function mg(e,t){const n=po();n.__VUE__=!0;const{insert:o,remove:a,patchProp:s,createElement:r,createText:i,createComment:l,setText:c,setElementText:u,parentNode:p,nextSibling:m,setScopeId:$=gt,insertStaticContent:w}=e,v=(f,_,h,M=null,x=null,D=null,U=void 0,K=null,g=!!_.dynamicChildren)=>{if(f===_)return;f&&!Wn(f,_)&&(M=Ye(f),pe(f,x,D,!0),f=null),_.patchFlag===-2&&(g=!1,_.dynamicChildren=null);const{type:d,ref:N,shapeFlag:I}=_;switch(d){case Hn:T(f,_,h,M);break;case Nt:P(f,_,h,M);break;case Da:f==null&&k(_,h,M,U);break;case Qe:z(f,_,h,M,x,D,U,K,g);break;default:I&1?C(f,_,h,M,x,D,U,K,g):I&6?ee(f,_,h,M,x,D,U,K,g):(I&64||I&128)&&d.process(f,_,h,M,x,D,U,K,g,ot)}N!=null&&x?Kn(N,f&&f.ref,D,_||f,!_):N==null&&f&&f.ref!=null&&Kn(f.ref,null,D,f,!0)},T=(f,_,h,M)=>{if(f==null)o(_.el=i(_.children),h,M);else{const x=_.el=f.el;_.children!==f.children&&c(x,_.children)}},P=(f,_,h,M)=>{f==null?o(_.el=l(_.children||""),h,M):_.el=f.el},k=(f,_,h,M)=>{[f.el,f.anchor]=w(f.children,_,h,M,f.el,f.anchor)},y=({el:f,anchor:_},h,M)=>{let x;for(;f&&f!==_;)x=m(f),o(f,h,M),f=x;o(_,h,M)},b=({el:f,anchor:_})=>{let h;for(;f&&f!==_;)h=m(f),a(f),f=h;a(_)},C=(f,_,h,M,x,D,U,K,g)=>{if(_.type==="svg"?U="svg":_.type==="math"&&(U="mathml"),f==null)A(_,h,M,x,D,U,K,g);else{const d=f.el&&f.el._isVueCE?f.el:null;try{d&&d._beginPatch(),S(f,_,x,D,U,K,g)}finally{d&&d._endPatch()}}},A=(f,_,h,M,x,D,U,K)=>{let g,d;const{props:N,shapeFlag:I,transition:G,dirs:B}=f;if(g=f.el=r(f.type,D,N&&N.is,N),I&8?u(g,f.children):I&16&&F(f.children,g,null,M,x,Oa(f,D),U,K),B&&nn(f,null,M,"created"),L(g,f,f.scopeId,U,M),N){for(const R in N)R!=="value"&&!Ln(R)&&s(g,R,null,N[R],D,M);"value"in N&&s(g,"value",null,N.value,D),(d=N.onVnodeBeforeMount)&&_t(d,M,f)}B&&nn(f,null,M,"beforeMount");const E=bg(x,G);E&&G.beforeEnter(g),o(g,_,h),((d=N&&N.onVnodeMounted)||E||B)&&ze(()=>{try{d&&_t(d,M,f),E&&G.enter(g),B&&nn(f,null,M,"mounted")}finally{}},x)},L=(f,_,h,M,x)=>{if(h&&$(f,h),M)for(let D=0;D{for(let d=g;d{const K=_.el=f.el;let{patchFlag:g,dynamicChildren:d,dirs:N}=_;g|=f.patchFlag&16;const I=f.props||ye,G=_.props||ye;let B;if(h&&an(h,!1),(B=G.onVnodeBeforeUpdate)&&_t(B,h,_,f),N&&nn(_,f,h,"beforeUpdate"),h&&an(h,!0),d&&(!f.dynamicChildren||f.dynamicChildren.length!==d.length)&&(g=0,U=!1,d=null),(I.innerHTML&&G.innerHTML==null||I.textContent&&G.textContent==null)&&u(K,""),d?V(f.dynamicChildren,d,K,h,M,Oa(_,x),D):U||W(f,_,K,null,h,M,Oa(_,x),D,!1),g>0){if(g&16)ae(K,I,G,h,x);else if(g&2&&I.class!==G.class&&s(K,"class",null,G.class,x),g&4&&s(K,"style",I.style,G.style,x),g&8){const E=_.dynamicProps;for(let R=0;R{B&&_t(B,h,_,f),N&&nn(_,f,h,"updated")},M)},V=(f,_,h,M,x,D,U)=>{for(let K=0;K<_.length;K++){const g=f[K],d=_[K],N=g.el&&(g.type===Qe||!Wn(g,d)||g.shapeFlag&198)?p(g.el):h;v(g,d,N,null,M,x,D,U,!0)}},ae=(f,_,h,M,x)=>{if(_!==h){if(_!==ye)for(const D in _)!Ln(D)&&!(D in h)&&s(f,D,_[D],null,x,M);for(const D in h){if(Ln(D))continue;const U=h[D],K=_[D];U!==K&&D!=="value"&&s(f,D,K,U,x,M)}"value"in h&&s(f,"value",_.value,h.value,x)}},z=(f,_,h,M,x,D,U,K,g)=>{const d=_.el=f?f.el:i(""),N=_.anchor=f?f.anchor:i("");let{patchFlag:I,dynamicChildren:G,slotScopeIds:B}=_;B&&(K=K?K.concat(B):B),f==null?(o(d,h,M),o(N,h,M),F(_.children||[],h,N,x,D,U,K,g)):I>0&&I&64&&G&&f.dynamicChildren&&f.dynamicChildren.length===G.length?(V(f.dynamicChildren,G,h,x,D,U,K),(_.key!=null||x&&_===x.subTree)&&Qr(f,_,!0)):W(f,_,h,N,x,D,U,K,g)},ee=(f,_,h,M,x,D,U,K,g)=>{_.slotScopeIds=K,f==null?_.shapeFlag&512?x.ctx.activate(_,h,M,U,g):Y(_,h,M,x,D,U,g):O(f,_,g)},Y=(f,_,h,M,x,D,U)=>{const K=f.component=Eg(f,M,x);if(Io(f)&&(K.ctx.renderer=ot),Tg(K,!1,U),K.asyncDep){if(x&&x.registerDep(K,j,U),!f.el){const g=K.subTree=Me(Nt);P(null,g,_,h),f.placeholder=g.el}}else j(K,f,_,h,x,D,U)},O=(f,_,h)=>{const M=_.component=f.component;if(ig(f,_,h))if(M.asyncDep&&!M.asyncResolved){q(M,_,h);return}else M.next=_,M.update();else _.el=f.el,M.vnode=_},j=(f,_,h,M,x,D,U)=>{const K=()=>{if(f.isMounted){let{next:I,bu:G,u:B,parent:E,vnode:R}=f;{const xe=ei(f);if(xe){I&&(I.el=R.el,q(f,I,U)),xe.asyncDep.then(()=>{ze(()=>{f.isUnmounted||d()},x)});return}}let J=I,se;an(f,!1),I?(I.el=R.el,q(f,I,U)):I=R,G&&la(G),(se=I.props&&I.props.onVnodeBeforeUpdate)&&_t(se,E,I,R),an(f,!0);const Se=Kr(f),Ge=f.subTree;f.subTree=Se,v(Ge,Se,p(Ge.el),Ye(Ge),f,x,D),I.el=Se.el,J===null&&lg(f,Se.el),B&&ze(B,x),(se=I.props&&I.props.onVnodeUpdated)&&ze(()=>_t(se,E,I,R),x)}else{let I;const{el:G,props:B}=_,{bm:E,m:R,parent:J,root:se,type:Se}=f,Ge=Un(_);an(f,!1),E&&la(E),!Ge&&(I=B&&B.onVnodeBeforeMount)&&_t(I,J,_),an(f,!0);{se.ce&&se.ce._hasShadowRoot()&&se.ce._injectChildStyle(Se,f.parent?f.parent.type:void 0);const xe=f.subTree=Kr(f);v(null,xe,h,M,f,x,D),_.el=xe.el}if(R&&ze(R,x),!Ge&&(I=B&&B.onVnodeMounted)){const xe=_;ze(()=>_t(I,J,xe),x)}(_.shapeFlag&256||J&&Un(J.vnode)&&J.vnode.shapeFlag&256)&&f.a&&ze(f.a,x),f.isMounted=!0,_=h=M=null}};f.scope.on();const g=f.effect=new Js(K);f.scope.off();const d=f.update=g.run.bind(g),N=f.job=g.runIfDirty.bind(g);N.i=f,N.id=f.uid,g.scheduler=()=>ka(N),an(f,!0),d()},q=(f,_,h)=>{_.component=f;const M=f.vnode.props;f.vnode=_,f.next=null,ug(f,_.props,M,h),fg(f,_.children,h),pt(),_r(f),ft()},W=(f,_,h,M,x,D,U,K,g=!1)=>{const d=f&&f.children,N=f?f.shapeFlag:0,I=_.children,{patchFlag:G,shapeFlag:B}=_;if(G>0){if(G&128){ge(d,I,h,M,x,D,U,K,g);return}else if(G&256){X(d,I,h,M,x,D,U,K,g);return}}B&8?(N&16&&Re(d,x,D),I!==d&&u(h,I)):N&16?B&16?ge(d,I,h,M,x,D,U,K,g):Re(d,x,D,!0):(N&8&&u(h,""),B&16&&F(I,h,M,x,D,U,K,g))},X=(f,_,h,M,x,D,U,K,g)=>{f=f||un,_=_||un;const d=f.length,N=_.length,I=Math.min(d,N);let G;for(G=0;GN?Re(f,x,D,!0,!1,I):F(_,h,M,x,D,U,K,g,I)},ge=(f,_,h,M,x,D,U,K,g)=>{let d=0;const N=_.length;let I=f.length-1,G=N-1;for(;d<=I&&d<=G;){const B=f[d],E=_[d]=g?Pt(_[d]):yt(_[d]);if(Wn(B,E))v(B,E,h,null,x,D,U,K,g);else break;d++}for(;d<=I&&d<=G;){const B=f[I],E=_[G]=g?Pt(_[G]):yt(_[G]);if(Wn(B,E))v(B,E,h,null,x,D,U,K,g);else break;I--,G--}if(d>I){if(d<=G){const B=G+1,E=BG)for(;d<=I;)pe(f[d],x,D,!0),d++;else{const B=d,E=d,R=new Map;for(d=E;d<=G;d++){const Je=_[d]=g?Pt(_[d]):yt(_[d]);Je.key!=null&&R.set(Je.key,d)}let J,se=0;const Se=G-E+1;let Ge=!1,xe=0;const cn=new Array(Se);for(d=0;d=Se){pe(Je,x,D,!0);continue}let vt;if(Je.key!=null)vt=R.get(Je.key);else for(J=E;J<=G;J++)if(cn[J-E]===0&&Wn(Je,_[J])){vt=J;break}vt===void 0?pe(Je,x,D,!0):(cn[vt-E]=d+1,vt>=xe?xe=vt:Ge=!0,v(Je,_[vt],h,null,x,D,U,K,g),se++)}const Os=Ge?yg(cn):un;for(J=Os.length-1,d=Se-1;d>=0;d--){const Je=E+d,vt=_[Je],wc=_[Je+1],Pc=Je+1{const{el:D,type:U,transition:K,children:g,shapeFlag:d}=f;if(d&6){re(f.component.subTree,_,h,M);return}if(d&128){f.suspense.move(_,h,M);return}if(d&64){U.move(f,_,h,ot);return}if(U===Qe){o(D,_,h);for(let I=0;IK.enter(D),x));else{const{leave:I,delayLeave:G,afterLeave:B}=K,E=()=>{f.ctx.isUnmounted?a(D):o(D,_,h)},R=()=>{const J=D._isLeaving||!!D[Ta];D._isLeaving&&D[Ta](!0),K.persisted&&!J?E():I(D,()=>{E(),B&&B()})};G?G(D,E,R):R()}else o(D,_,h)},pe=(f,_,h,M=!1,x=!1)=>{const{type:D,props:U,ref:K,children:g,dynamicChildren:d,shapeFlag:N,patchFlag:I,dirs:G,cacheIndex:B,memo:E}=f;if(I===-2&&(x=!1),K!=null&&(pt(),Kn(K,null,h,f,!0),ft()),B!=null&&(_.renderCache[B]=void 0),N&256){_.ctx.deactivate(f);return}const R=N&1&&G,J=!Un(f);let se;if(J&&(se=U&&U.onVnodeBeforeUnmount)&&_t(se,_,f),N&6)we(f.component,h,M);else{if(N&128){f.suspense.unmount(h,M);return}R&&nn(f,null,_,"beforeUnmount"),N&64?f.type.remove(f,_,h,ot,M):d&&!d.hasOnce&&(D!==Qe||I>0&&I&64)?Re(d,_,h,!1,!0):(D===Qe&&I&384||!x&&N&16)&&Re(g,_,h),M&&oe(f)}const Se=E!=null&&B==null;(J&&(se=U&&U.onVnodeUnmounted)||R||Se)&&ze(()=>{se&&_t(se,_,f),R&&nn(f,null,_,"unmounted"),Se&&(f.el=null)},h)},oe=f=>{const{type:_,el:h,anchor:M,transition:x}=f;if(_===Qe){le(h,M);return}if(_===Da){b(f);return}const D=()=>{a(h),x&&!x.persisted&&x.afterLeave&&x.afterLeave()};if(f.shapeFlag&1&&x&&!x.persisted){const{leave:U,delayLeave:K}=x,g=()=>U(h,D);K?K(f.el,D,g):g()}else D()},le=(f,_)=>{let h;for(;f!==_;)h=m(f),a(f),f=h;a(_)},we=(f,_,h)=>{const{bum:M,scope:x,job:D,subTree:U,um:K,m:g,a:d}=f;ti(g),ti(d),M&&la(M),x.stop(),D&&(D.flags|=8,pe(U,f,_,h)),K&&ze(K,_),ze(()=>{f.isUnmounted=!0},_)},Re=(f,_,h,M=!1,x=!1,D=0)=>{for(let U=D;U{if(f.shapeFlag&6)return Ye(f.component.subTree);if(f.shapeFlag&128)return f.suspense.next();const _=m(f.anchor||f.el),h=_&&_[Mu];return h?m(h):_};let nt=!1;const Zt=(f,_,h)=>{let M;f==null?_._vnode&&(pe(_._vnode,null,null,!0),M=_._vnode.component):v(_._vnode||null,f,_,null,null,null,h),_._vnode=f,nt||(nt=!0,_r(M),Ar(),nt=!1)},ot={p:v,um:pe,m:re,r:oe,mt:Y,mc:F,pc:W,pbc:V,n:Ye,o:e};return{render:Zt,hydrate:void 0,createApp:tg(Zt)}}function Oa({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function an({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function bg(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Qr(e,t,n=!1){const o=e.children,a=t.children;if(Z(o)&&Z(a))for(let s=0;s>1,e[n[i]]0&&(t[o]=n[s-1]),n[s]=o)}}for(s=n.length,r=n[s-1];s-- >0;)n[s]=r,r=t[r];return n}function ei(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:ei(t)}function ti(e){if(e)for(let t=0;te.__isSuspense;function _g(e,t){t&&t.pendingBranch?Z(e)?t.effects.push(...e):t.effects.push(e):Eu(e)}const Qe=Symbol.for("v-fgt"),Hn=Symbol.for("v-txt"),Nt=Symbol.for("v-cmt"),Da=Symbol.for("v-stc"),sn=[];let Ve=null;function We(e=!1){sn.push(Ve=e?null:[])}function ai(){sn.pop(),Ve=sn[sn.length-1]||null}let Vn=1;function jo(e,t=!1){Vn+=e,e<0&&Ve&&t&&(Ve.hasOnce=!0)}function si(e){return e.dynamicChildren=Vn>0?Ve||un:null,ai(),Vn>0&&Ve&&Ve.push(e),e}function Lt(e,t,n,o,a,s){return si(Ne(e,t,n,o,a,s,!0))}function Bo(e,t,n,o,a){return si(Me(e,t,n,o,a,!0))}function Ko(e){return e?e.__v_isVNode===!0:!1}function Wn(e,t){return e.type===t.type&&e.key===t.key}const ri=({key:e})=>e??null,Uo=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?ve(e)||ke(e)||te(e)?{i:it,r:e,k:t,f:!!n}:e:null);function Ne(e,t=null,n=null,o=0,a=null,s=e===Qe?0:1,r=!1,i=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&ri(t),ref:t&&Uo(t),scopeId:vr,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:s,patchFlag:o,dynamicProps:a,dynamicChildren:null,appContext:null,ctx:it};return i?(Go(l,n),s&128&&e.normalize(l)):n&&(l.shapeFlag|=ve(n)?8:16),Vn>0&&!r&&Ve&&(l.patchFlag>0||s&6)&&l.patchFlag!==32&&Ve.push(l),l}const Me=Ag;function Ag(e,t=null,n=null,o=0,a=null,s=!1){if((!e||e===wr)&&(e=Nt),Ko(e)){const i=mn(e,t,!0);return n&&Go(i,n),Vn>0&&!s&&Ve&&(i.shapeFlag&6?Ve[Ve.indexOf(e)]=i:Ve.push(i)),i.patchFlag=-2,i}if(Mg(e)&&(e=e.__vccOpts),t){t=Sg(t);let{class:i,style:l}=t;i&&!ve(i)&&(t.class=wn(i)),fe(l)&&($o(l)&&!Z(l)&&(l=Ee({},l)),t.style=fo(l))}const r=ve(e)?1:oi(e)?128:wo(e)?64:fe(e)?4:te(e)?2:0;return Ne(e,t,n,o,a,r,s,!0)}function Sg(e){return e?$o(e)||Hr(e)?Ee({},e):e:null}function mn(e,t,n=!1,o=!1){const{props:a,ref:s,patchFlag:r,children:i,transition:l}=e,c=t?vg(a||{},t):a,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&ri(c),ref:t&&t.ref?n&&s?Z(s)?s.concat(Uo(t)):[s,Uo(t)]:Uo(t):s,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:i,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Qe?r===-1?16:r|16:r,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&mn(e.ssContent),ssFallback:e.ssFallback&&mn(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&o&&Ca(u,l.clone(u)),u}function wt(e=" ",t=0){return Me(Hn,null,e,t)}function bn(e="",t=!1){return t?(We(),Bo(Nt,null,e)):Me(Nt,null,e)}function yt(e){return e==null||typeof e=="boolean"?Me(Nt):Z(e)?Me(Qe,null,e.slice()):Ko(e)?Pt(e):Me(Hn,null,String(e))}function Pt(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:mn(e)}function Go(e,t){let n=0;const{shapeFlag:o}=e;if(t==null)t=null;else if(Z(t))n=16;else if(typeof t=="object")if(o&65){const a=t.default;a&&(a._c&&(a._d=!1),Go(e,a()),a._c&&(a._d=!0));return}else{n=32;const a=t._;!a&&!Hr(t)?t._ctx=it:a===3&&it&&(it.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(te(t)){if(o&65){Go(e,{default:t});return}t={default:t,_ctx:it},n=32}else t=String(t),o&64?(n=16,t=[wt(t)]):n=8;e.children=t,e.shapeFlag|=n}function vg(...e){const t={};for(let n=0;nOe||it;let zo,Yn;{const e=po(),t=(n,o)=>{let a;return(a=e[n])||(a=e[n]=[]),a.push(o),s=>{a.length>1?a.forEach(r=>r(s)):a[0](s)}};zo=t("__VUE_INSTANCE_SETTERS__",n=>Oe=n),Yn=t("__VUE_SSR_SETTERS__",n=>yn=n)}const Jn=e=>{const t=Oe;return zo(e),e.scope.on(),()=>{e.scope.off(),zo(t)}},ii=()=>{Oe&&Oe.scope.off(),zo(null)};function li(e){return e.vnode.shapeFlag&4}let yn=!1;function Tg(e,t=!1,n=!1){t&&Yn(t);const{props:o,children:a}=e.vnode,s=li(e);cg(e,o,s,t),pg(e,a,n||t);const r=s?Cg(e,t):void 0;return t&&Yn(!1),r}function Cg(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Wu);const{setup:o}=n;if(o){pt();const a=e.setupContext=o.length>1?Lg(e):null,s=Jn(e),r=pn(o,e,0,[e.props,a]),i=js(r);if(ft(),s(),(i||e.sp)&&!Un(e)&&Na(e),i){if(r.then(ii,ii),t)return r.then(l=>{Yn(!0);try{ci(e,l,t)}finally{Yn(!1)}}).catch(l=>{xn(l,e,0)});e.asyncDep=r}else ci(e,r)}else ui(e)}function ci(e,t,n){te(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:fe(t)&&(e.setupState=hr(t)),ui(e)}function ui(e,t,n){const o=e.type;e.render||(e.render=o.render||gt);{const a=Jn(e);pt();try{Yu(e)}finally{ft(),a()}}}const Ng={get(e,t){return je(e,"get",""),e[t]}};function Lg(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Ng),slots:e.slots,emit:e.emit,expose:t}}function xa(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(hr(On(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in zn)return zn[n](e)},has(t,n){return n in t||n in zn}})):e.proxy}const wg=/(?:^|[-_])\w/g,Pg=e=>e.replace(wg,t=>t.toUpperCase()).replace(/[-_]/g,"");function gi(e,t=!0){return te(e)?e.displayName||e.name:e.name||t&&e.__name}function di(e,t,n=!1){let o=gi(t);if(!o&&t.__file){const a=t.__file.match(/([^/\\]+)\.\w+$/);a&&(o=a[1])}if(!o&&e){const a=s=>{for(const r in s)if(s[r]===t)return r};o=a(e.components)||e.parent&&a(e.parent.type.components)||a(e.appContext.components)}return o?Pg(o):n?"App":"Anonymous"}function Mg(e){return te(e)&&"__vccOpts"in e}const be=(e,t)=>mu(e,t,yn);function pi(e,t,n){try{jo(-1);const o=arguments.length;return o===2?fe(t)&&!Z(t)?Ko(t)?Me(e,null,[t]):Me(e,t):Me(e,null,t):(o>3?n=Array.prototype.slice.call(arguments,2):o===3&&Ko(n)&&(n=[n]),Me(e,t,n))}finally{jo(1)}}const Ig="3.5.42";/** * @vue/runtime-dom v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let ja;const pr=typeof window<"u"&&window.trustedTypes;if(pr)try{ja=pr.createPolicy("vue",{createHTML:e=>e})}catch{}const hr=ja?e=>ja.createHTML(e):e=>e,Rg="http://www.w3.org/2000/svg",Dg="http://www.w3.org/1998/Math/MathML",It=typeof document<"u"?document:null,mr=It&&It.createElement("template"),Fg={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,o)=>{const a=t==="svg"?It.createElementNS(Rg,e):t==="mathml"?It.createElementNS(Dg,e):n?It.createElement(e,{is:n}):It.createElement(e);return e==="select"&&o&&o.multiple!=null&&a.setAttribute("multiple",o.multiple),a},createText:e=>It.createTextNode(e),createComment:e=>It.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>It.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,o,a,s){const i=n?n.previousSibling:t.lastChild;if(a&&(a===s||a.nextSibling))for(;t.insertBefore(a.cloneNode(!0),n),!(a===s||!(a=a.nextSibling)););else{mr.innerHTML=hr(o==="svg"?`${e}`:o==="mathml"?`${e}`:e);const r=mr.content;if(o==="svg"||o==="mathml"){const l=r.firstChild;for(;l.firstChild;)r.appendChild(l.firstChild);r.removeChild(l)}t.insertBefore(r,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Og=Symbol("_vtc");function xg(e,t,n){const o=e[Og];o&&(t=(t?[t,...o]:[...o]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const br=Symbol("_vod"),jg=Symbol("_vsh"),Bg=Symbol(""),Kg=/(?:^|;)\s*display\s*:/;function Ug(e,t,n){const o=e.style,a=ve(n);let s=!1;if(n&&!a){if(t)if(ve(t))for(const i of t.split(";")){const r=i.slice(0,i.indexOf(":")).trim();n[r]==null&&Xn(o,r,"")}else for(const i in t)n[i]==null&&Xn(o,i,"");for(const i in n){i==="display"&&(s=!0);const r=n[i];r!=null?zg(e,i,!ve(t)&&t?t[i]:void 0,r)||Xn(o,i,r):Xn(o,i,"")}}else if(a){if(t!==n){const i=o[Bg];i&&(n+=";"+i),o.cssText=n,s=Kg.test(n)}}else t&&e.removeAttribute("style");br in e&&(e[br]=s?o.display:"",e[jg]&&(o.display="none"))}const qo=/\s*!important$/;function Xn(e,t,n){if(Z(n))n.forEach(o=>Xn(e,t,o));else if(n==null&&(n=""),t.startsWith("--"))qo.test(n)?e.setProperty(t,n.replace(qo,""),"important"):e.setProperty(t,n);else{const o=Gg(e,t);qo.test(n)?e.setProperty(Ze(o),n.replace(qo,""),"important"):e[o]=n}}const _r=["Webkit","Moz","ms"],Ba={};function Gg(e,t){const n=Ba[t];if(n)return n;let o=Pe(t);if(o!=="filter"&&o in e)return Ba[t]=o;o=go(o);for(let a=0;a<_r.length;a++){const s=_r[a]+o;if(s in e)return Ba[t]=s}return t}function zg(e,t,n,o){return e.tagName==="TEXTAREA"&&(t==="width"||t==="height")&&ve(o)&&n===o}const yr="http://www.w3.org/1999/xlink";function Ar(e,t,n,o,a,s=Uc(t)){o&&t.startsWith("xlink:")?n==null?e.removeAttributeNS(yr,t.slice(6,t.length)):e.setAttributeNS(yr,t,n):n==null||s&&!zs(n)?e.removeAttribute(t):e.setAttribute(t,s?"":Xe(n)?String(n):n)}function Sr(e,t,n,o,a){if(t==="innerHTML"||t==="textContent"){n!=null&&(e[t]=t==="innerHTML"?hr(n):n);return}const s=e.tagName;if(t==="value"&&s!=="PROGRESS"&&!s.includes("-")){const r=s==="OPTION"?e.getAttribute("value")||"":e.value,l=n==null?e.type==="checkbox"?"on":"":String(n);(r!==l||!("_value"in e))&&(e.value=l),n==null&&e.removeAttribute(t),e._value=n;return}let i=!1;if(n===""||n==null){const r=typeof e[t];r==="boolean"?n=zs(n):n==null&&r==="string"?(n="",i=!0):r==="number"&&(n=0,i=!0)}try{e[t]=n}catch{}i&&e.removeAttribute(a||t)}function qg(e,t,n,o){e.addEventListener(t,n,o)}function Hg(e,t,n,o){e.removeEventListener(t,n,o)}const vr=Symbol("_vei");function Vg(e,t,n,o,a=null){const s=e[vr]||(e[vr]={}),i=s[t];if(o&&i)i.value=o;else{const[r,l]=Jg(t);if(o){const c=s[t]=Qg(o,a);qg(e,r,c,l)}else i&&(Hg(e,r,i,l),s[t]=void 0)}}const Wg=/(Once|Passive|Capture)$/,Yg=/^on:?(?:Once|Passive|Capture)$/;function Jg(e){let t,n;for(;(n=e.match(Wg))&&!Yg.test(e);)t||(t={}),e=e.slice(0,e.length-n[1].length),t[n[1].toLowerCase()]=!0;return[e[2]===":"?e.slice(3):Ze(e.slice(2)),t]}let Ka=0;const Xg=Promise.resolve(),Zg=()=>Ka||(Xg.then(()=>Ka=0),Ka=Date.now());function Qg(e,t){const n=o=>{if(!o._vts)o._vts=Date.now();else if(o._vts<=n.attached)return;const a=n.value;if(Z(a)){const s=o.stopImmediatePropagation;o.stopImmediatePropagation=()=>{s.call(o),o._stopped=!0};const i=a.slice(),r=[o];for(let l=0;le.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,ed=(e,t,n,o,a,s)=>{const i=a==="svg";t==="class"?xg(e,o,i):t==="style"?Ug(e,n,o):so(t)?io(t)||Vg(e,t,n,o,s):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):td(e,t,o,i))?(Sr(e,t,o),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Ar(e,t,o,i,s,t!=="value")):e._isVueCE&&(nd(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!ve(o)))?Sr(e,Pe(t),o,s,t):(t==="true-value"?e._trueValue=o:t==="false-value"&&(e._falseValue=o),Ar(e,t,o,i))};function td(e,t,n,o){if(o)return!!(t==="innerHTML"||t==="textContent"||t in e&&kr(t)&&te(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const a=e.tagName;if(a==="IMG"||a==="VIDEO"||a==="CANVAS"||a==="SOURCE")return!1}return kr(t)&&ve(n)?!1:t in e}function nd(e,t){const n=e._def.props;if(!n)return!1;const o=Pe(t);return Array.isArray(n)?n.some(a=>Pe(a)===o):Object.keys(n).some(a=>Pe(a)===o)}const Tr={};function od(e,t,n){let o=Bn(e,t);lo(o)&&(o=Ee({},o,t));class a extends Ua{constructor(i){super(o,i,n)}}return a.def=o,a}const ad=typeof HTMLElement<"u"?HTMLElement:class{};class Ua extends ad{constructor(t,n={},o=Lr){super(),this._def=t,this._props=n,this._createApp=o,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._patching=!1,this._dirty=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._styleAnchors=new WeakMap,this._ob=null,this.shadowRoot&&o!==Lr?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(Ee({},t.shadowRootOptions,{mode:"open"})),this._root=this.shadowRoot):this._root=this}connectedCallback(){if(!this.isConnected)return;!this.shadowRoot&&!this._resolved&&this._parseSlots(),this._connected=!0;let t=this;for(;t=t&&(t.assignedSlot||t.parentNode||t.host);)if(t instanceof Ua){this._parent=t;break}this._instance||(this._resolved?this._mount(this._def):t&&t._pendingResolve?this._pendingResolve=t._pendingResolve.then(()=>{if(this._pendingResolve=void 0,this.isConnected)return this._resolveDef()}):this._resolveDef())}_setParent(t=this._parent){t&&(this._instance.parent=t._instance,this._inheritParentContext(t))}_inheritParentContext(t=this._parent){t&&this._app&&Object.setPrototypeOf(this._app._context.provides,t._instance.provides)}disconnectedCallback(){this._connected=!1,Co(()=>{this._connected||(this._ob&&(this._ob.disconnect(),this._ob=null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null,this._teleportTargets&&(this._teleportTargets.clear(),this._teleportTargets=void 0))})}_processMutations(t){for(const n of t)this._setAttr(n.attributeName)}_resolveDef(){if(this._pendingResolve)return this._pendingResolve;for(let o=0;o{this._resolved=!0,this._pendingResolve=void 0;const{props:s,styles:i}=o;let r;if(s&&!Z(s))for(const l in s){const c=s[l];(c===Number||c&&c.type===Number)&&(l in this._props&&(this._props[l]=Us(this._props[l])),(r||(r=Object.create(null)))[Pe(l)]=!0)}this._numberProps=r,this._resolveProps(o),this.shadowRoot&&this._applyStyles(i),this._mount(o)},n=this._def.__asyncLoader;if(n)return this._pendingResolve=n().then(o=>{o.configureApp=this._def.configureApp,t(this._def=o,!0)}),this._pendingResolve;t(this._def)}_mount(t){this._app=this._createApp(t),this._inheritParentContext(),t.configureApp&&t.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);const n=this._instance&&this._instance.exposed;if(n)for(const o in n)de(this,o)||Object.defineProperty(this,o,{get:()=>To(n[o])})}_resolveProps(t){const{props:n}=t,o=Z(n)?n:Object.keys(n||{});for(const a of Object.keys(this))a[0]!=="_"&&o.includes(a)&&this._setProp(a,this[a]);for(const a of o.map(Pe))Object.defineProperty(this,a,{get(){return this._getProp(a)},set(s){this._setProp(a,s,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const n=this.hasAttribute(t);let o=n?this.getAttribute(t):Tr;const a=Pe(t);n&&this._numberProps&&this._numberProps[a]&&(o=Us(o)),this._setProp(a,o,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,n,o=!0,a=!1){if(n!==this._props[t]&&(this._dirty=!0,n===Tr?delete this._props[t]:(this._props[t]=n,t==="key"&&this._app&&(this._app._ceVNode.key=n)),a&&this._instance&&this._update(),o)){const s=this._ob;s&&(this._processMutations(s.takeRecords()),s.disconnect()),n===!0?this.setAttribute(Ze(t),""):typeof n=="string"||typeof n=="number"?this.setAttribute(Ze(t),n+""):n||this.removeAttribute(Ze(t)),s&&s.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),id(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const n=Me(this._def,Ee(t,this._props));return this._instance||(n.ce=o=>{this._instance=o,o.ce=this,o.isCE=!0;const a=(s,i)=>{this.dispatchEvent(new CustomEvent(s,lo(i[0])?Ee({detail:i},i[0]):{detail:i}))};o.emit=(s,...i)=>{a(s,i),Ze(s)!==s&&a(Ze(s),i)},this._setParent()}),n}_applyStyles(t,n,o){if(!t)return;if(n){if(n===this._def||this._styleChildren.has(n))return;this._styleChildren.add(n)}const a=this._nonce,s=this.shadowRoot,i=o?this._getStyleAnchor(o)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(s);let r=null;for(let l=t.length-1;l>=0;l--){const c=document.createElement("style");a&&c.setAttribute("nonce",a),c.textContent=t[l],s.insertBefore(c,r||i),r=c,l===0&&(o||this._styleAnchors.set(this._def,c),n&&this._styleAnchors.set(n,c))}}_getStyleAnchor(t){if(!t)return null;const n=this._styleAnchors.get(t);return n&&n.parentNode===this.shadowRoot?n:(n&&this._styleAnchors.delete(t),null)}_getRootStyleInsertionAnchor(t){for(let n=0;n{$r().render(...e)},Lr=(...e)=>{const t=$r().createApp(...e),{mount:n}=t;return t.mount=o=>{const a=ld(o);if(!a)return;const s=t._component;!te(s)&&!s.render&&!s.template&&(s.template=a.innerHTML),a.nodeType===1&&(a.textContent="");const i=n(a,!1,rd(a));return a instanceof Element&&(a.removeAttribute("v-cloak"),a.setAttribute("data-v-app","")),i},t};function rd(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function ld(e){return ve(e)?document.querySelector(e):e}/*! +**/let ja;const fi=typeof window<"u"&&window.trustedTypes;if(fi)try{ja=fi.createPolicy("vue",{createHTML:e=>e})}catch{}const hi=ja?e=>ja.createHTML(e):e=>e,Rg="http://www.w3.org/2000/svg",Fg="http://www.w3.org/1998/Math/MathML",It=typeof document<"u"?document:null,mi=It&&It.createElement("template"),Og={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,o)=>{const a=t==="svg"?It.createElementNS(Rg,e):t==="mathml"?It.createElementNS(Fg,e):n?It.createElement(e,{is:n}):It.createElement(e);return e==="select"&&o&&o.multiple!=null&&a.setAttribute("multiple",o.multiple),a},createText:e=>It.createTextNode(e),createComment:e=>It.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>It.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,o,a,s){const r=n?n.previousSibling:t.lastChild;if(a&&(a===s||a.nextSibling))for(;t.insertBefore(a.cloneNode(!0),n),!(a===s||!(a=a.nextSibling)););else{mi.innerHTML=hi(o==="svg"?`${e}`:o==="mathml"?`${e}`:e);const i=mi.content;if(o==="svg"||o==="mathml"){const l=i.firstChild;for(;l.firstChild;)i.appendChild(l.firstChild);i.removeChild(l)}t.insertBefore(i,n)}return[r?r.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},Dg=Symbol("_vtc");function xg(e,t,n){const o=e[Dg];o&&(t=(t?[t,...o]:[...o]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const bi=Symbol("_vod"),jg=Symbol("_vsh"),Bg=Symbol(""),Kg=/(?:^|;)\s*display\s*:/;function Ug(e,t,n){const o=e.style,a=ve(n);let s=!1;if(n&&!a){if(t)if(ve(t))for(const r of t.split(";")){const i=r.slice(0,r.indexOf(":")).trim();n[i]==null&&Xn(o,i,"")}else for(const r in t)n[r]==null&&Xn(o,r,"");for(const r in n){r==="display"&&(s=!0);const i=n[r];i!=null?zg(e,r,!ve(t)&&t?t[r]:void 0,i)||Xn(o,r,i):Xn(o,r,"")}}else if(a){if(t!==n){const r=o[Bg];r&&(n+=";"+r),o.cssText=n,s=Kg.test(n)}}else t&&e.removeAttribute("style");bi in e&&(e[bi]=s?o.display:"",e[jg]&&(o.display="none"))}const qo=/\s*!important$/;function Xn(e,t,n){if(Z(n))n.forEach(o=>Xn(e,t,o));else if(n==null&&(n=""),t.startsWith("--"))qo.test(n)?e.setProperty(t,n.replace(qo,""),"important"):e.setProperty(t,n);else{const o=Gg(e,t);qo.test(n)?e.setProperty(Ze(o),n.replace(qo,""),"important"):e[o]=n}}const yi=["Webkit","Moz","ms"],Ba={};function Gg(e,t){const n=Ba[t];if(n)return n;let o=Pe(t);if(o!=="filter"&&o in e)return Ba[t]=o;o=go(o);for(let a=0;aKa||(Xg.then(()=>Ka=0),Ka=Date.now());function Qg(e,t){const n=o=>{if(!o._vts)o._vts=Date.now();else if(o._vts<=n.attached)return;const a=n.value;if(Z(a)){const s=o.stopImmediatePropagation;o.stopImmediatePropagation=()=>{s.call(o),o._stopped=!0};const r=a.slice(),i=[o];for(let l=0;le.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,ed=(e,t,n,o,a,s)=>{const r=a==="svg";t==="class"?xg(e,o,r):t==="style"?Ug(e,n,o):so(t)?ro(t)||Vg(e,t,n,o,s):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):td(e,t,o,r))?(Si(e,t,o),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Ai(e,t,o,r,s,t!=="value")):e._isVueCE&&(nd(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!ve(o)))?Si(e,Pe(t),o,s,t):(t==="true-value"?e._trueValue=o:t==="false-value"&&(e._falseValue=o),Ai(e,t,o,r))};function td(e,t,n,o){if(o)return!!(t==="innerHTML"||t==="textContent"||t in e&&$i(t)&&te(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const a=e.tagName;if(a==="IMG"||a==="VIDEO"||a==="CANVAS"||a==="SOURCE")return!1}return $i(t)&&ve(n)?!1:t in e}function nd(e,t){const n=e._def.props;if(!n)return!1;const o=Pe(t);return Array.isArray(n)?n.some(a=>Pe(a)===o):Object.keys(n).some(a=>Pe(a)===o)}const ki={};function od(e,t,n){let o=Bn(e,t);lo(o)&&(o=Ee({},o,t));class a extends Ua{constructor(r){super(o,r,n)}}return a.def=o,a}const ad=typeof HTMLElement<"u"?HTMLElement:class{};class Ua extends ad{constructor(t,n={},o=Ci){super(),this._def=t,this._props=n,this._createApp=o,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._patching=!1,this._dirty=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._styleAnchors=new WeakMap,this._ob=null,this.shadowRoot&&o!==Ci?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(Ee({},t.shadowRootOptions,{mode:"open"})),this._root=this.shadowRoot):this._root=this}connectedCallback(){if(!this.isConnected)return;!this.shadowRoot&&!this._resolved&&this._parseSlots(),this._connected=!0;let t=this;for(;t=t&&(t.assignedSlot||t.parentNode||t.host);)if(t instanceof Ua){this._parent=t;break}this._instance||(this._resolved?this._mount(this._def):t&&t._pendingResolve?this._pendingResolve=t._pendingResolve.then(()=>{if(this._pendingResolve=void 0,this.isConnected)return this._resolveDef()}):this._resolveDef())}_setParent(t=this._parent){t&&(this._instance.parent=t._instance,this._inheritParentContext(t))}_inheritParentContext(t=this._parent){t&&this._app&&Object.setPrototypeOf(this._app._context.provides,t._instance.provides)}disconnectedCallback(){this._connected=!1,No(()=>{this._connected||(this._ob&&(this._ob.disconnect(),this._ob=null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null,this._teleportTargets&&(this._teleportTargets.clear(),this._teleportTargets=void 0))})}_processMutations(t){for(const n of t)this._setAttr(n.attributeName)}_resolveDef(){if(this._pendingResolve)return this._pendingResolve;for(let o=0;o{this._resolved=!0,this._pendingResolve=void 0;const{props:s,styles:r}=o;let i;if(s&&!Z(s))for(const l in s){const c=s[l];(c===Number||c&&c.type===Number)&&(l in this._props&&(this._props[l]=Us(this._props[l])),(i||(i=Object.create(null)))[Pe(l)]=!0)}this._numberProps=i,this._resolveProps(o),this.shadowRoot&&this._applyStyles(r),this._mount(o)},n=this._def.__asyncLoader;if(n)return this._pendingResolve=n().then(o=>{o.configureApp=this._def.configureApp,t(this._def=o,!0)}),this._pendingResolve;t(this._def)}_mount(t){this._app=this._createApp(t),this._inheritParentContext(),t.configureApp&&t.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);const n=this._instance&&this._instance.exposed;if(n)for(const o in n)de(this,o)||Object.defineProperty(this,o,{get:()=>ko(n[o])})}_resolveProps(t){const{props:n}=t,o=Z(n)?n:Object.keys(n||{});for(const a of Object.keys(this))a[0]!=="_"&&o.includes(a)&&this._setProp(a,this[a]);for(const a of o.map(Pe))Object.defineProperty(this,a,{get(){return this._getProp(a)},set(s){this._setProp(a,s,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const n=this.hasAttribute(t);let o=n?this.getAttribute(t):ki;const a=Pe(t);n&&this._numberProps&&this._numberProps[a]&&(o=Us(o)),this._setProp(a,o,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,n,o=!0,a=!1){if(n!==this._props[t]&&(this._dirty=!0,n===ki?delete this._props[t]:(this._props[t]=n,t==="key"&&this._app&&(this._app._ceVNode.key=n)),a&&this._instance&&this._update(),o)){const s=this._ob;s&&(this._processMutations(s.takeRecords()),s.disconnect()),n===!0?this.setAttribute(Ze(t),""):typeof n=="string"||typeof n=="number"?this.setAttribute(Ze(t),n+""):n||this.removeAttribute(Ze(t)),s&&s.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),rd(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const n=Me(this._def,Ee(t,this._props));return this._instance||(n.ce=o=>{this._instance=o,o.ce=this,o.isCE=!0;const a=(s,r)=>{this.dispatchEvent(new CustomEvent(s,lo(r[0])?Ee({detail:r},r[0]):{detail:r}))};o.emit=(s,...r)=>{a(s,r),Ze(s)!==s&&a(Ze(s),r)},this._setParent()}),n}_applyStyles(t,n,o){if(!t)return;if(n){if(n===this._def||this._styleChildren.has(n))return;this._styleChildren.add(n)}const a=this._nonce,s=this.shadowRoot,r=o?this._getStyleAnchor(o)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(s);let i=null;for(let l=t.length-1;l>=0;l--){const c=document.createElement("style");a&&c.setAttribute("nonce",a),c.textContent=t[l],s.insertBefore(c,i||r),i=c,l===0&&(o||this._styleAnchors.set(this._def,c),n&&this._styleAnchors.set(n,c))}}_getStyleAnchor(t){if(!t)return null;const n=this._styleAnchors.get(t);return n&&n.parentNode===this.shadowRoot?n:(n&&this._styleAnchors.delete(t),null)}_getRootStyleInsertionAnchor(t){for(let n=0;n{Ti().render(...e)},Ci=(...e)=>{const t=Ti().createApp(...e),{mount:n}=t;return t.mount=o=>{const a=ld(o);if(!a)return;const s=t._component;!te(s)&&!s.render&&!s.template&&(s.template=a.innerHTML),a.nodeType===1&&(a.textContent="");const r=n(a,!1,id(a));return a instanceof Element&&(a.removeAttribute("v-cloak"),a.setAttribute("data-v-app","")),r},t};function id(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function ld(e){return ve(e)?document.querySelector(e):e}/*! * pinia v2.3.1 * (c) 2025 Eduardo San Martin Morote * @license MIT - */let Cr;const Ho=e=>Cr=e,wr=Symbol();function Ga(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var Zn;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(Zn||(Zn={}));function cd(){const e=ua(!0),t=e.run(()=>he({}));let n=[],o=[];const a=Fn({install(s){Ho(a),a._a=s,s.provide(wr,a),s.config.globalProperties.$pinia=a,o.forEach(i=>n.push(i)),o=[]},use(s){return this._a?n.push(s):o.push(s),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return a}const Nr=()=>{};function Pr(e,t,n,o=Nr){e.push(t);const a=()=>{const s=e.indexOf(t);s>-1&&(e.splice(s,1),o())};return!n&&Ys()&&zc(a),a}function yn(e,...t){e.slice().forEach(n=>{n(...t)})}const ud=e=>e(),Mr=Symbol(),za=Symbol();function qa(e,t){e instanceof Map&&t instanceof Map?t.forEach((n,o)=>e.set(o,n)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const o=t[n],a=e[n];Ga(a)&&Ga(o)&&e.hasOwnProperty(n)&&!Te(o)&&!Et(o)?e[n]=qa(a,o):e[n]=o}return e}const gd=Symbol();function dd(e){return!Ga(e)||!e.hasOwnProperty(gd)}const{assign:Gt}=Object;function fd(e){return!!(Te(e)&&e.effect)}function pd(e,t,n,o){const{state:a,actions:s,getters:i}=t,r=n.state.value[e];let l;function c(){r||(n.state.value[e]=a?a():{});const u=du(n.state.value[e]);return Gt(u,s,Object.keys(i||{}).reduce((f,m)=>(f[m]=Fn(be(()=>{Ho(n);const k=n._s.get(e);return i[m].call(k,k)})),f),{}))}return l=Ir(e,c,t,n,o,!0),l}function Ir(e,t,n={},o,a,s){let i;const r=Gt({actions:{}},n),l={deep:!0};let c,u,f=[],m=[],k;const N=o.state.value[e];!s&&!N&&(o.state.value[e]={});let v;function $(D){let S;c=u=!1,typeof D=="function"?(D(o.state.value[e]),S={type:Zn.patchFunction,storeId:e,events:k}):(qa(o.state.value[e],D),S={type:Zn.patchObject,payload:D,storeId:e,events:k});const V=v=Symbol();Co().then(()=>{v===V&&(c=!0)}),u=!0,yn(f,S,o.state.value[e])}const P=s?function(){const{state:S}=n,V=S?S():{};this.$patch(ae=>{Gt(ae,V)})}:Nr;function T(){i.stop(),f=[],m=[],o._s.delete(e)}const _=(D,S="")=>{if(Mr in D)return D[za]=S,D;const V=function(){Ho(o);const ae=Array.from(arguments),z=[],ee=[];function Y(q){z.push(q)}function F(q){ee.push(q)}yn(m,{args:ae,name:V[za],store:L,after:Y,onError:F});let j;try{j=D.apply(this&&this.$id===e?this:L,ae)}catch(q){throw yn(ee,q),q}return j instanceof Promise?j.then(q=>(yn(z,q),q)).catch(q=>(yn(ee,q),Promise.reject(q))):(yn(z,j),j)};return V[Mr]=!0,V[za]=S,V},b={_p:o,$id:e,$onAction:Pr.bind(null,m),$patch:$,$reset:P,$subscribe(D,S={}){const V=Pr(f,D,S.detached,()=>ae()),ae=i.run(()=>Ut(()=>o.state.value[e],z=>{(S.flush==="sync"?u:c)&&D({storeId:e,type:Zn.direct,events:k},z)},Gt({},l,S)));return V},$dispose:T},L=So(b);o._s.set(e,L);const w=(o._a&&o._a.runWithContext||ud)(()=>o._e.run(()=>(i=ua()).run(()=>t({action:_}))));for(const D in w){const S=w[D];if(Te(S)&&!fd(S)||Et(S))s||(N&&dd(S)&&(Te(S)?S.value=N[D]:qa(S,N[D])),o.state.value[e][D]=S);else if(typeof S=="function"){const V=_(S,D);w[D]=V,r.actions[D]=S}}return Gt(L,w),Gt(ce(L),w),Object.defineProperty(L,"$state",{get:()=>o.state.value[e],set:D=>{$(S=>{Gt(S,D)})}}),o._p.forEach(D=>{Gt(L,i.run(()=>D({store:L,app:o._a,pinia:o,options:r})))}),N&&s&&n.hydrate&&n.hydrate(L.$state,N),c=!0,u=!0,L}/*! #__NO_SIDE_EFFECTS__ */function Ha(e,t,n){let o,a;const s=typeof t=="function";typeof e=="string"?(o=e,a=s?n:t):(a=e,o=e.id);function i(r,l){const c=Lu();return r=r||(c?De(wr,null):null),r&&Ho(r),r=Cr,r._s.has(o)||(s?Ir(o,t,a,r):pd(o,a,r)),r._s.get(o)}return i.$id=o,i}const Va="__doxaMapToken",Wa="doxa:map-token",Rr="__doxaMapTokenBridge",An=()=>{if(typeof window>"u")return"";const e=window[Va];return typeof e=="string"?e:""};function Dr(e){if(typeof window>"u")return"";const t=typeof e=="string"?e.trim():"";if(!t||t===An())return An();window[Va]=t;try{window.dispatchEvent(new CustomEvent(Wa,{detail:t}))}catch{}return t}function hd(){if(typeof window>"u"||window[Rr])return;const e=typeof window.MAP_TOKEN=="string"?window.MAP_TOKEN:"";e&&!An()&&(window[Va]=e);try{Object.defineProperty(window,"MAP_TOKEN",{configurable:!0,get(){return An()},set(t){Dr(t)}}),window[Rr]=!0}catch{}}function md(){hd();const e=he(An());if(typeof window<"u"){const t=()=>{e.value=An()};window.addEventListener(Wa,t);try{Do(()=>window.removeEventListener(Wa,t))}catch{}}return e}function bd(e){return Du({loader:e,onError(t,n,o,a){a<=3?setTimeout(n,a*500):o()}})}const _d={backToLegend:"العودة إلى المفتاح",closeDetailView:"إغلاق عرض التفاصيل"},yd={prayForThem:"صلِّ من أجلهم",adoptThem:"تبنَّهم",moreInfo:"مزيد من المعلومات",zoomIn:"تكبير",zoomOut:"تصغير",switchToLightMode:"التبديل إلى الوضع الفاتح",switchToDarkMode:"التبديل إلى الوضع الداكن",resetView:"إعادة تعيين العرض",toggleFullscreen:"تبديل ملء الشاشة",aboutThisMap:"حول هذه الخريطة",closeMenu:"إغلاق القائمة",reloadMap:"إعادة تحميل الخريطة",showClusters:"إظهار المجموعات",clusterSettings:"إعدادات المجموعات",startAutoFly:"بدء الطيران التلقائي",stopFlight:"إيقاف الطيران",speedLabel:"السرعة:",speedOption:{slow:"بطيء",normal:"عادي",fast:"سريع"},shareEmbed:"مشاركة وتضمين"},Ad={labels:{country:"الدولة:",population:"السكان:",language:"اللغة:",religion:"الديانة:",languageFamily:"العائلة اللغوية:",peopleCommitted:"ملتزمون بالصلاة:"},messages:{noDescription:"لا يوجد وصف متاح."}},Sd={title:{prayer:"تقدم الصلاة",engagement:"تقدم الانخراط",adoption:"تقدم التبني",languageFamilies:"العائلات اللغوية",doxaRegions:"مناطق Doxa",affinityBlocs:"كتل القرابة",gospelResources:"موارد الإنجيل"},header:{collapsed:"وسيلة الإيضاح",peopleGroupFallback:"مجموعة الشعب"},prayer:{needsPrayer:"يحتاج إلى صلاة",hasPrayer:"لديه صلاة",fullPrayerCoverage:"تغطية صلاة كاملة"},progress:{title:"التقدم",covered:"{covered} من {total} مجموعة شعبية مغطاة بالصلاة · {pct}%",short:"{covered} من {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"يحتاج إلى انخراط",hasEngagement:"لديه انخراط"},adoption:{needsAdoption:"يحتاج إلى تبني",hasAdoption:"لديه تبني"},columns:{upgs:"UUPGs",population:"السكان",name:"الاسم"},footer:{total:"الإجمالي"},sortByUpgs:"ترتيب حسب UUPG",sortByPop:"ترتيب حسب السكان",colLabel:{religion:"ديانات UUPG",prayer:"حالة الصلاة",engagement:"حالة المشاركة",adoption:"حالة التبني",status:"الحالة"},titleBar:{legend:"مفتاح الخريطة",peopleGroups:"الشعوب",wagfRegions:"مناطق WAGF",languages:"اللغات"}},vd={menuComingSoon:"القائمة قادمة قريباً"},kd={clusterByRegion:"حسب منطقة Doxa",clusterByLanguageFamily:"حسب العائلة اللغوية",clusterByGospelResource:"حسب مورد الإنجيل"},Td={header:"دورة الصلاة الحالية",lap:"الدورة",upgs:"UUPGs",separator:" من "},Ed={placeholder:"شعب، مكان، لغة، ديانة",labels:{people:"الشعب:",place:"المكان:",language:"اللغة:",religion:"الديانة:"},kinds:{people:"الشعب + الدولة",peopleGroup:"الشعب",bloc:"كتلة التقارب",cluster:"مجموعة شعوب",country:"الدولة",region:"المنطقة",family:"عائلة اللغة",languageKind:"اللغة",dialect:"اللهجة",religionKind:"الدين"}},$d={prayer:"الصلاة",adoption:"التبني",engagement:"المشاركة","affinity-blocks":"الشعوب",regions:"المناطق",countries:"الدول","language-families":"اللغات",religion:"الأديان",family:"عائلة اللغة",language:"اللغة",dialect:"اللهجة/التنوع",bloc:"كتلة التقارب",cluster:"المجموعة",group:"الشعب",pgic:"الشعب في الدولة",region:"منطقة WAGF",block:"كتلة WAGF",country:"الدولة"},Ld={backToLegend:"Zurück zur Legende",closeDetailView:"Detailansicht schließen"},Cd={prayForThem:"Für sie beten",adoptThem:"Sie adoptieren",moreInfo:"Mehr Infos",zoomIn:"Vergrößern",zoomOut:"Verkleinern",switchToLightMode:"Zum hellen Modus wechseln",switchToDarkMode:"Zum dunklen Modus wechseln",resetView:"Ansicht zurücksetzen",toggleFullscreen:"Vollbild umschalten",aboutThisMap:"Über diese Karte",closeMenu:"Menü schließen",reloadMap:"Karte neu laden",showClusters:"Cluster anzeigen",clusterSettings:"Cluster-Einstellungen",startAutoFly:"Auto-Flug starten",stopFlight:"Flug stoppen",speedLabel:"Geschwindigkeit:",speedOption:{slow:"Langsam",normal:"Normal",fast:"Schnell"},shareEmbed:"Teilen und einbetten"},wd={labels:{country:"Land:",population:"Bevölkerung:",language:"Sprache:",religion:"Religion:",languageFamily:"Sprachfamilie:",peopleCommitted:"Zum Gebet verpflichtet:"},messages:{noDescription:"Keine Beschreibung verfügbar."}},Nd={title:{prayer:"Gebetsfortschritt",engagement:"Engagement-Fortschritt",adoption:"Adoptionsfortschritt",languageFamilies:"Sprachfamilien",doxaRegions:"Doxa-Regionen",affinityBlocs:"Affinitätsblöcke",gospelResources:"Evangeliumsressourcen"},header:{collapsed:"Legende",peopleGroupFallback:"Volksgruppe"},prayer:{needsPrayer:"Braucht Gebet",hasPrayer:"Hat Gebet",fullPrayerCoverage:"Vollständige Gebetsabdeckung"},progress:{title:"Fortschritt",covered:"{covered} von {total} Volksgruppen im Gebet abgedeckt · {pct}%",short:"{covered} von {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Braucht Engagement",hasEngagement:"Hat Engagement"},adoption:{needsAdoption:"Braucht Adoption",hasAdoption:"Hat Adoption"},columns:{upgs:"UUPGs",population:"Bevölkerung"},footer:{total:"Gesamt"}},Pd={menuComingSoon:"Menü folgt in Kürze"},Md={clusterByRegion:"Nach Doxa-Region",clusterByLanguageFamily:"Nach Sprachfamilie",clusterByGospelResource:"Nach Evangeliumsressource"},Id={header:"AKTUELLE GEBETSRUNDE",lap:"Runde",upgs:"UUPGs",separator:" von "},Rd={placeholder:"Volk, Ort, Sprache, Religion",labels:{people:"Volk:",place:"Ort:",language:"Sprache:",religion:"Religion:"},sections:{within:"Innerhalb {selection}",allData:"Alle DOXA-Daten"}},Dd={prayer:"Gebet",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Volksgruppen",regions:"Regionen",countries:"Länder","language-families":"Sprachen",religion:"Religionen",family:"Sprachfamilie",language:"Sprache",dialect:"Dialekt/Varietät",bloc:"Affinitätsblock",cluster:"Cluster",group:"Volksgruppe",pgic:"Volksgruppe im Land",region:"WAGF-Region",block:"WAGF-Block",country:"Land"},Fd={backToLegend:"Back to Legend",closeDetailView:"Close detail view"},Od={prayForThem:"Pray for them",adoptThem:"Adopt",moreInfo:"More info",zoomIn:"Zoom in",zoomOut:"Zoom out",switchToLightMode:"Switch to light mode",switchToDarkMode:"Switch to dark mode",resetView:"Reset view",toggleFullscreen:"Toggle fullscreen",aboutThisMap:"About this map",closeMenu:"Close menu",reloadMap:"Reload Map",showClusters:"Show Clusters",clusterSettings:"Cluster Settings",startAutoFly:"Start Auto Fly",stopFlight:"Stop Flight",speedLabel:"Speed:",speedOption:{slow:"Slow",normal:"Normal",fast:"Fast"},shareEmbed:"Share & embed",shareSteps:["Embed this map on your site","Create a list of the websites in your city","Train them to embed it too","Train them to train others to embed it too","Multiply maps everywhere for Jesus!"],share:"Share"},xd={labels:{country:"Country:",population:"Population:",language:"Language:",religion:"Religion:",languageFamily:"Language Family:",peopleCommitted:"Committed to pray:"},messages:{noDescription:"No description available."}},jd={title:{prayer:"Prayer Progress",engagement:"Engagement Progress",adoption:"Adoption Progress",languageFamilies:"Language Families",doxaRegions:"Doxa Regions",affinityBlocs:"Affinity Blocks",gospelResources:"Gospel Resources"},header:{default:"Legend",collapsed:"Legend",peopleGroupFallback:"People Group"},prayer:{needsPrayer:"Needs Prayer",hasPrayer:"Has Prayer",fullPrayerCoverage:"Full Prayer Coverage"},progress:{title:"Progress",covered:"{covered} of {total} people groups covered in prayer · {pct}%",short:"{covered} of {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Unengaged",hasEngagement:"Engaged"},adoption:{needsAdoption:"Needs Adoption",hasAdoption:"Has Adoption"},columns:{upgs:"UUPGs",population:"Population",name:"Name"},footer:{total:"Total"},sortByUpgs:"Sort by UUPGs",sortByPop:"Sort by Population",colLabel:{religion:"UUPG Religions",prayer:"Prayer Status",engagement:"Engagement Status",adoption:"Adoption Status",status:"Status"},titleBar:{legend:"Legend",peopleGroups:"People Groups",wagfRegions:"WAGF Regions",languages:"Languages"}},Bd={menuComingSoon:"Menu coming soon"},Kd={clusterByRegion:"By Doxa Region",clusterByLanguageFamily:"By Language Family",clusterByGospelResource:"By Gospel Resource"},Ud={country:{wagfRegion:"WAGF Region",wagfBlock:"WAGF Bloc",country:"Country",uupgCount:"UUPG Count"}},Gd={header:"CURRENT PRAYER LAP",lap:"Lap",upgs:"UUPGs",separator:" of "},zd={placeholder:"People, place, language, religion",labels:{people:"People:",place:"Place:",language:"Language:",religion:"Religion:"},kinds:{people:"People Group + Country",peopleGroup:"People Group",bloc:"Affinity Block",cluster:"People Cluster",country:"Country",region:"Region",family:"Language Family",languageKind:"Language",dialect:"Dialect",religionKind:"Religion"},sections:{within:"Within {selection}",allData:"All DOXA Data"}},qd={prayer:"Prayer",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"People Groups (Affinity)",regions:"Regions",countries:"Countries","language-families":"Languages",religion:"Religions",family:"Lang Family",language:"Language",dialect:"Dialect/Variety",bloc:"Affinity Block",cluster:"Cluster",group:"People Group",pgic:"PG in Country",region:"WAGF Region",block:"WAGF Bloc",country:"Country"},Hd={backToLegend:"Volver a la leyenda",closeDetailView:"Cerrar vista de detalle"},Vd={prayForThem:"Ora por ellos",adoptThem:"Adóptalos",moreInfo:"Más información",zoomIn:"Acercar",zoomOut:"Alejar",switchToLightMode:"Cambiar a modo claro",switchToDarkMode:"Cambiar a modo oscuro",resetView:"Restablecer vista",toggleFullscreen:"Alternar pantalla completa",aboutThisMap:"Acerca de este mapa",closeMenu:"Cerrar menú",reloadMap:"Recargar mapa",showClusters:"Mostrar clústeres",clusterSettings:"Ajustes de clústeres",startAutoFly:"Iniciar vuelo automático",stopFlight:"Detener vuelo",speedLabel:"Velocidad:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Compartir e incrustar"},Wd={labels:{country:"País:",population:"Población:",language:"Idioma:",religion:"Religión:",languageFamily:"Familia lingüística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"No hay descripción disponible."}},Yd={title:{prayer:"Progreso de oración",engagement:"Progreso de implicación",adoption:"Progreso de adopción",languageFamilies:"Familias lingüísticas",doxaRegions:"Regiones Doxa",affinityBlocs:"Bloques de afinidad",gospelResources:"Recursos del Evangelio"},header:{collapsed:"Leyenda",peopleGroupFallback:"Grupo de personas"},prayer:{needsPrayer:"Necesita oración",hasPrayer:"Tiene oración",fullPrayerCoverage:"Cobertura de oración completa"},progress:{title:"Progreso",covered:"{covered} de {total} grupos de personas cubiertos en oración · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesita implicación",hasEngagement:"Tiene implicación"},adoption:{needsAdoption:"Necesita adopción",hasAdoption:"Tiene adopción"},columns:{upgs:"UUPGs",population:"Población",name:"Nombre"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por población",colLabel:{religion:"Religiones UUPG",prayer:"Estado de oración",engagement:"Estado de compromiso",adoption:"Estado de adopción",status:"Estado"},titleBar:{legend:"Leyenda",peopleGroups:"Pueblos",wagfRegions:"Regiones WAGF",languages:"Idiomas"}},Jd={menuComingSoon:"Menú próximamente"},Xd={clusterByRegion:"Por región Doxa",clusterByLanguageFamily:"Por familia lingüística",clusterByGospelResource:"Por recurso del Evangelio"},Zd={header:"VUELTA DE ORACIÓN ACTUAL",lap:"Vuelta",upgs:"UUPGs",separator:" de "},Qd={placeholder:"Pueblo, lugar, idioma, religión",labels:{people:"Pueblo:",place:"Lugar:",language:"Idioma:",religion:"Religión:"},kinds:{people:"Pueblo + país",peopleGroup:"Pueblo",bloc:"Bloque de afinidad",cluster:"Clúster de pueblos",country:"País",region:"Región",family:"Familia lingüística",languageKind:"Idioma",dialect:"Dialecto",religionKind:"Religión"}},ef={prayer:"Oración",adoption:"Adopción",engagement:"Compromiso","affinity-blocks":"Pueblos",regions:"Regiones",countries:"Países","language-families":"Idiomas",religion:"Religiones",family:"Familia lingüística",language:"Idioma",dialect:"Dialecto/Variedad",bloc:"Bloque de afinidad",cluster:"Clúster",group:"Pueblo",pgic:"Pueblo en país",region:"Región WAGF",block:"Bloque WAGF",country:"País"},tf={backToLegend:"Retour à la légende",closeDetailView:"Fermer la vue détaillée"},nf={prayForThem:"Priez pour eux",adoptThem:"Adoptez-les",moreInfo:"Plus d'infos",zoomIn:"Zoom avant",zoomOut:"Zoom arrière",switchToLightMode:"Passer au mode clair",switchToDarkMode:"Passer au mode sombre",resetView:"Réinitialiser la vue",toggleFullscreen:"Basculer en plein écran",aboutThisMap:"À propos de cette carte",closeMenu:"Fermer le menu",reloadMap:"Recharger la carte",showClusters:"Afficher les clusters",clusterSettings:"Paramètres des clusters",startAutoFly:"Démarrer le vol auto",stopFlight:"Arrêter le vol",speedLabel:"Vitesse :",speedOption:{slow:"Lente",normal:"Normale",fast:"Rapide"},shareEmbed:"Partager et intégrer"},of={labels:{country:"Pays :",population:"Population :",language:"Langue :",religion:"Religion :",languageFamily:"Famille de langues :",peopleCommitted:"Engagés à prier :"},messages:{noDescription:"Aucune description disponible."}},af={title:{prayer:"Progression de la prière",engagement:"Progression de l'engagement",adoption:"Progression de l'adoption",languageFamilies:"Familles de langues",doxaRegions:"Régions Doxa",affinityBlocs:"Blocs d'affinité",gospelResources:"Ressources de l'Évangile"},header:{collapsed:"Légende",peopleGroupFallback:"Groupe de personnes"},prayer:{needsPrayer:"Besoin de prière",hasPrayer:"Prière en cours",fullPrayerCoverage:"Couverture de prière complète"},progress:{title:"Progression",covered:"{covered} sur {total} groupes de personnes couverts par la prière · {pct}%",short:"{covered} sur {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Besoin d'engagement",hasEngagement:"Engagement en cours"},adoption:{needsAdoption:"Besoin d'adoption",hasAdoption:"Adoption en cours"},columns:{upgs:"UUPGs",population:"Population",name:"Nom"},footer:{total:"Total"},sortByUpgs:"Trier par UUPG",sortByPop:"Trier par population",colLabel:{religion:"Religions UUPG",prayer:"Statut de prière",engagement:"Statut d'engagement",adoption:"Statut d'adoption",status:"Statut"},titleBar:{legend:"Légende",peopleGroups:"Peuples",wagfRegions:"Régions WAGF",languages:"Langues"}},sf={menuComingSoon:"Menu bientôt disponible"},rf={clusterByRegion:"Par région Doxa",clusterByLanguageFamily:"Par famille de langues",clusterByGospelResource:"Par ressource de l'Évangile"},lf={country:{wagfRegion:"Région WAGF",wagfBlock:"Bloc WAGF",country:"Pays",uupgCount:"Nombre d'UUPG"}},cf={header:"TOUR DE PRIÈRE ACTUEL",lap:"Tour",upgs:"UUPGs",separator:" sur "},uf={placeholder:"Peuple, lieu, langue, religion",labels:{people:"Peuple :",place:"Lieu :",language:"Langue :",religion:"Religion :"},kinds:{people:"Peuple + pays",peopleGroup:"Peuple",bloc:"Bloc d'affinité",cluster:"Grappe de peuples",country:"Pays",region:"Région",family:"Famille linguistique",languageKind:"Langue",dialect:"Dialecte",religionKind:"Religion"}},gf={prayer:"Prière",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Peuples",regions:"Régions",countries:"Pays","language-families":"Langues",religion:"Religions",family:"Famille linguistique",language:"Langue",dialect:"Dialecte/Variété",bloc:"Bloc d'affinité",cluster:"Grappe",group:"Peuple",pgic:"Peuple dans le pays",region:"Région WAGF",block:"Bloc WAGF",country:"Pays"},df={backToLegend:"लेजेंड पर वापस जाएं",closeDetailView:"विवरण दृश्य बंद करें"},ff={prayForThem:"उनके लिए प्रार्थना करें",adoptThem:"उन्हें गोद लें",moreInfo:"अधिक जानकारी",zoomIn:"ज़ूम इन",zoomOut:"ज़ूम आउट",switchToLightMode:"लाइट मोड पर जाएं",switchToDarkMode:"डार्क मोड पर जाएं",resetView:"दृश्य रीसेट करें",toggleFullscreen:"फ़ुलस्क्रीन टॉगल करें",aboutThisMap:"इस मानचित्र के बारे में",closeMenu:"मेनू बंद करें",reloadMap:"मानचित्र पुनः लोड करें",showClusters:"क्लस्टर दिखाएं",clusterSettings:"क्लस्टर सेटिंग्स",startAutoFly:"ऑटो फ्लाई शुरू करें",stopFlight:"उड़ान रोकें",speedLabel:"गति:",speedOption:{slow:"धीमी",normal:"सामान्य",fast:"तेज़"},shareEmbed:"साझा करें और एम्बेड करें"},pf={labels:{country:"देश:",population:"जनसंख्या:",language:"भाषा:",religion:"धर्म:",languageFamily:"भाषा परिवार:",peopleCommitted:"प्रार्थना के लिए प्रतिबद्ध:"},messages:{noDescription:"कोई विवरण उपलब्ध नहीं है।"}},hf={title:{prayer:"प्रार्थना प्रगति",engagement:"सहभागिता प्रगति",adoption:"गोद लेने की प्रगति",languageFamilies:"भाषा परिवार",doxaRegions:"Doxa क्षेत्र",affinityBlocs:"समानता समूह",gospelResources:"सुसमाचार संसाधन"},header:{collapsed:"किंवदंती",peopleGroupFallback:"जनजाति समूह"},prayer:{needsPrayer:"प्रार्थना चाहिए",hasPrayer:"प्रार्थना है",fullPrayerCoverage:"पूर्ण प्रार्थना कवरेज"},progress:{title:"प्रगति",covered:"{total} में से {covered} जनजाति समूह प्रार्थना में कवर · {pct}%",short:"{total} में से {covered} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"सहभागिता चाहिए",hasEngagement:"सहभागिता है"},adoption:{needsAdoption:"गोद लेना चाहिए",hasAdoption:"गोद लिया गया"},columns:{upgs:"UUPGs",population:"जनसंख्या"},footer:{total:"कुल"}},mf={menuComingSoon:"मेनू शीघ्र आ रहा है"},bf={clusterByRegion:"Doxa क्षेत्र के अनुसार",clusterByLanguageFamily:"भाषा परिवार के अनुसार",clusterByGospelResource:"सुसमाचार संसाधन के अनुसार"},_f={header:"वर्तमान प्रार्थना चक्र",lap:"चक्र",upgs:"UUPGs",separator:" में से "},yf={placeholder:"लोग, स्थान, भाषा, धर्म",labels:{people:"लोग:",place:"स्थान:",language:"भाषा:",religion:"धर्म:"}},Af={backToLegend:"Torna alla legenda",closeDetailView:"Chiudi vista dettaglio"},Sf={prayForThem:"Prega per loro",adoptThem:"Adottali",moreInfo:"Più informazioni",zoomIn:"Ingrandisci",zoomOut:"Riduci",switchToLightMode:"Passa alla modalità chiara",switchToDarkMode:"Passa alla modalità scura",resetView:"Reimposta vista",toggleFullscreen:"Attiva/disattiva schermo intero",aboutThisMap:"Informazioni su questa mappa",closeMenu:"Chiudi menu",reloadMap:"Ricarica mappa",showClusters:"Mostra cluster",clusterSettings:"Impostazioni cluster",startAutoFly:"Avvia volo automatico",stopFlight:"Ferma volo",speedLabel:"Velocità:",speedOption:{slow:"Lenta",normal:"Normale",fast:"Veloce"},shareEmbed:"Condividi e incorpora"},vf={labels:{country:"Paese:",population:"Popolazione:",language:"Lingua:",religion:"Religione:",languageFamily:"Famiglia linguistica:",peopleCommitted:"Impegnati a pregare:"},messages:{noDescription:"Nessuna descrizione disponibile."}},kf={title:{prayer:"Avanzamento della preghiera",engagement:"Avanzamento dell'impegno",adoption:"Avanzamento dell'adozione",languageFamilies:"Famiglie linguistiche",doxaRegions:"Regioni Doxa",affinityBlocs:"Blocchi di affinità",gospelResources:"Risorse del Vangelo"},header:{collapsed:"Legenda",peopleGroupFallback:"Gruppo di persone"},prayer:{needsPrayer:"Necessita preghiera",hasPrayer:"Ha preghiera",fullPrayerCoverage:"Copertura di preghiera completa"},progress:{title:"Avanzamento",covered:"{covered} di {total} gruppi di persone coperti dalla preghiera · {pct}%",short:"{covered} di {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necessita impegno",hasEngagement:"Ha impegno"},adoption:{needsAdoption:"Necessita adozione",hasAdoption:"Ha adozione"},columns:{upgs:"UUPGs",population:"Popolazione"},footer:{total:"Totale"}},Tf={menuComingSoon:"Menu in arrivo"},Ef={clusterByRegion:"Per regione Doxa",clusterByLanguageFamily:"Per famiglia linguistica",clusterByGospelResource:"Per risorsa del Vangelo"},$f={header:"GIRO DI PREGHIERA ATTUALE",lap:"Giro",upgs:"UUPGs",separator:" di "},Lf={placeholder:"Popolo, luogo, lingua, religione",labels:{people:"Popolo:",place:"Luogo:",language:"Lingua:",religion:"Religione:"}},Cf={backToLegend:"Voltar à legenda",closeDetailView:"Fechar vista de detalhe"},wf={prayForThem:"Ore por eles",adoptThem:"Adote-os",moreInfo:"Mais informações",zoomIn:"Ampliar",zoomOut:"Reduzir",switchToLightMode:"Mudar para modo claro",switchToDarkMode:"Mudar para modo escuro",resetView:"Repor vista",toggleFullscreen:"Alternar ecrã inteiro",aboutThisMap:"Sobre este mapa",closeMenu:"Fechar menu",reloadMap:"Recarregar mapa",showClusters:"Mostrar clusters",clusterSettings:"Definições de clusters",startAutoFly:"Iniciar voo automático",stopFlight:"Parar voo",speedLabel:"Velocidade:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Partilhar e incorporar"},Nf={labels:{country:"País:",population:"População:",language:"Língua:",religion:"Religião:",languageFamily:"Família linguística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"Sem descrição disponível."}},Pf={title:{prayer:"Progresso da oração",engagement:"Progresso do envolvimento",adoption:"Progresso da adoção",languageFamilies:"Famílias linguísticas",doxaRegions:"Regiões Doxa",affinityBlocs:"Blocos de afinidade",gospelResources:"Recursos do Evangelho"},header:{collapsed:"Legenda",peopleGroupFallback:"Grupo de pessoas"},prayer:{needsPrayer:"Precisa de oração",hasPrayer:"Tem oração",fullPrayerCoverage:"Cobertura de oração completa"},progress:{title:"Progresso",covered:"{covered} de {total} grupos de pessoas cobertos em oração · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Precisa de envolvimento",hasEngagement:"Tem envolvimento"},adoption:{needsAdoption:"Precisa de adoção",hasAdoption:"Tem adoção"},columns:{upgs:"UUPGs",population:"População",name:"Nome"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por população",colLabel:{religion:"Religiões UUPG",prayer:"Status de oração",engagement:"Status de engajamento",adoption:"Status de adoção",status:"Status"},titleBar:{legend:"Legenda",peopleGroups:"Povos",wagfRegions:"Regiões WAGF",languages:"Idiomas"}},Mf={menuComingSoon:"Menu em breve"},If={clusterByRegion:"Por região Doxa",clusterByLanguageFamily:"Por família linguística",clusterByGospelResource:"Por recurso do Evangelho"},Rf={header:"VOLTA DE ORAÇÃO ATUAL",lap:"Volta",upgs:"UUPGs",separator:" de "},Df={placeholder:"Povo, local, língua, religião",labels:{people:"Povo:",place:"Local:",language:"Língua:",religion:"Religião:"},kinds:{people:"Povo + país",peopleGroup:"Povo",bloc:"Bloco de afinidade",cluster:"Agrupamento de povos",country:"País",region:"Região",family:"Família linguística",languageKind:"Idioma",dialect:"Dialeto",religionKind:"Religião"}},Ff={prayer:"Oração",adoption:"Adoção",engagement:"Engajamento","affinity-blocks":"Povos",regions:"Regiões",countries:"Países","language-families":"Idiomas",religion:"Religiões",family:"Família linguística",language:"Idioma",dialect:"Dialeto/Variedade",bloc:"Bloco de afinidade",cluster:"Agrupamento",group:"Povo",pgic:"Povo no país",region:"Região WAGF",block:"Bloco WAGF",country:"País"},Of={backToLegend:"Înapoi la legendă",closeDetailView:"Închide vizualizarea detaliată"},xf={prayForThem:"Roagă-te pentru ei",adoptThem:"Adoptă-i",moreInfo:"Mai multe informații",zoomIn:"Mărește",zoomOut:"Micșorează",switchToLightMode:"Comută la modul luminos",switchToDarkMode:"Comută la modul întunecat",resetView:"Resetează vizualizarea",toggleFullscreen:"Comută ecran complet",aboutThisMap:"Despre această hartă",closeMenu:"Închide meniul",reloadMap:"Reîncarcă harta",showClusters:"Arată clusterele",clusterSettings:"Setări clustere",startAutoFly:"Pornește zborul automat",stopFlight:"Oprește zborul",speedLabel:"Viteză:",speedOption:{slow:"Lent",normal:"Normal",fast:"Rapid"},shareEmbed:"Partajează și încorporează"},jf={labels:{country:"Țară:",population:"Populație:",language:"Limbă:",religion:"Religie:",languageFamily:"Familie de limbi:",peopleCommitted:"Angajați să se roage:"},messages:{noDescription:"Nicio descriere disponibilă."}},Bf={title:{prayer:"Progresul rugăciunii",engagement:"Progresul implicării",adoption:"Progresul adopției",languageFamilies:"Familii de limbi",doxaRegions:"Regiuni Doxa",affinityBlocs:"Blocuri de afinitate",gospelResources:"Resurse ale Evangheliei"},header:{collapsed:"Legendă",peopleGroupFallback:"Grup de popoare"},prayer:{needsPrayer:"Necesită rugăciune",hasPrayer:"Are rugăciune",fullPrayerCoverage:"Acoperire completă de rugăciune"},progress:{title:"Progres",covered:"{covered} din {total} grupuri de popoare acoperite în rugăciune · {pct}%",short:"{covered} din {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesită implicare",hasEngagement:"Are implicare"},adoption:{needsAdoption:"Necesită adopție",hasAdoption:"Are adopție"},columns:{upgs:"UUPGs",population:"Populație"},footer:{total:"Total"}},Kf={menuComingSoon:"Meniu în curând"},Uf={clusterByRegion:"După regiune Doxa",clusterByLanguageFamily:"După familia de limbi",clusterByGospelResource:"După resursa Evangheliei"},Gf={header:"TURUL DE RUGĂCIUNE CURENT",lap:"Tur",upgs:"UUPGs",separator:" din "},zf={placeholder:"Popor, loc, limbă, religie",labels:{people:"Popor:",place:"Loc:",language:"Limbă:",religion:"Religie:"}},qf={backToLegend:"Назад к легенде",closeDetailView:"Закрыть подробный вид"},Hf={prayForThem:"Молитесь о них",adoptThem:"Усыновите их",moreInfo:"Подробнее",zoomIn:"Приблизить",zoomOut:"Отдалить",switchToLightMode:"Переключить на светлый режим",switchToDarkMode:"Переключить на тёмный режим",resetView:"Сбросить вид",toggleFullscreen:"Полноэкранный режим",aboutThisMap:"Об этой карте",closeMenu:"Закрыть меню",reloadMap:"Перезагрузить карту",showClusters:"Показать кластеры",clusterSettings:"Настройки кластеров",startAutoFly:"Начать авто-полёт",stopFlight:"Остановить полёт",speedLabel:"Скорость:",speedOption:{slow:"Медленно",normal:"Нормально",fast:"Быстро"},shareEmbed:"Поделиться и встроить"},Vf={labels:{country:"Страна:",population:"Население:",language:"Язык:",religion:"Религия:",languageFamily:"Языковая семья:",peopleCommitted:"Обязались молиться:"},messages:{noDescription:"Описание недоступно."}},Wf={title:{prayer:"Прогресс молитвы",engagement:"Прогресс вовлечённости",adoption:"Прогресс усыновления",languageFamilies:"Языковые семьи",doxaRegions:"Регионы Doxa",affinityBlocs:"Блоки родства",gospelResources:"Евангельские ресурсы"},header:{collapsed:"Условные обозначения",peopleGroupFallback:"Народная группа"},prayer:{needsPrayer:"Нуждается в молитве",hasPrayer:"Есть молитва",fullPrayerCoverage:"Полное молитвенное покрытие"},progress:{title:"Прогресс",covered:"{covered} из {total} народных групп охвачены молитвой · {pct}%",short:"{covered} из {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Нуждается в вовлечённости",hasEngagement:"Есть вовлечённость"},adoption:{needsAdoption:"Нуждается в усыновлении",hasAdoption:"Есть усыновление"},columns:{upgs:"UUPGs",population:"Население",name:"Название"},footer:{total:"Всего"},sortByUpgs:"Сортировать по UUPG",sortByPop:"Сортировать по населению",colLabel:{religion:"Религии UUPG",prayer:"Статус молитвы",engagement:"Статус вовлечённости",adoption:"Статус усыновления",status:"Статус"},titleBar:{legend:"Легенда",peopleGroups:"Народы",wagfRegions:"Регионы WAGF",languages:"Языки"}},Yf={menuComingSoon:"Меню скоро появится"},Jf={clusterByRegion:"По региону Doxa",clusterByLanguageFamily:"По языковой семье",clusterByGospelResource:"По евангельскому ресурсу"},Xf={header:"ТЕКУЩИЙ КРУГ МОЛИТВЫ",lap:"Круг",upgs:"UUPGs",separator:" из "},Zf={placeholder:"Народ, место, язык, религия",labels:{people:"Народ:",place:"Место:",language:"Язык:",religion:"Религия:"},kinds:{people:"Народ + страна",peopleGroup:"Народ",bloc:"Блок родства",cluster:"Кластер народов",country:"Страна",region:"Регион",family:"Языковая семья",languageKind:"Язык",dialect:"Диалект",religionKind:"Религия"}},Qf={prayer:"Молитва",adoption:"Усыновление",engagement:"Вовлечённость","affinity-blocks":"Народы",regions:"Регионы",countries:"Страны","language-families":"Языки",religion:"Религии",family:"Языковая семья",language:"Язык",dialect:"Диалект/вариант",bloc:"Блок родства",cluster:"Кластер",group:"Народ",pgic:"Народ в стране",region:"Регион WAGF",block:"Блок WAGF",country:"Страна"},ep={backToLegend:"返回图例",closeDetailView:"关闭详情视图"},tp={prayForThem:"为他们祷告",adoptThem:"认领他们",moreInfo:"更多信息",zoomIn:"放大",zoomOut:"缩小",switchToLightMode:"切换至浅色模式",switchToDarkMode:"切换至深色模式",resetView:"重置视图",toggleFullscreen:"切换全屏",aboutThisMap:"关于此地图",closeMenu:"关闭菜单",reloadMap:"重新加载地图",showClusters:"显示聚类",clusterSettings:"聚类设置",startAutoFly:"开始自动飞行",stopFlight:"停止飞行",speedLabel:"速度:",speedOption:{slow:"慢",normal:"正常",fast:"快"},shareEmbed:"分享与嵌入"},np={labels:{country:"国家:",population:"人口:",language:"语言:",religion:"宗教:",languageFamily:"语系:",peopleCommitted:"承诺祷告人数:"},messages:{noDescription:"暂无描述。"}},op={title:{prayer:"祷告进度",engagement:"参与进度",adoption:"认领进度",languageFamilies:"语系",doxaRegions:"Doxa 区域",affinityBlocs:"亲缘板块",gospelResources:"福音资源"},header:{collapsed:"图例",peopleGroupFallback:"民族群体"},prayer:{needsPrayer:"需要祷告",hasPrayer:"已有祷告",fullPrayerCoverage:"全面祷告覆盖"},progress:{title:"进度",covered:"{total} 个民族群体中已有 {covered} 个被祷告覆盖 · {pct}%",short:"{covered} / {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"需要参与",hasEngagement:"已有参与"},adoption:{needsAdoption:"需要认领",hasAdoption:"已有认领"},columns:{upgs:"UUPGs",population:"人口"},footer:{total:"总计"}},ap={menuComingSoon:"菜单即将推出"},sp={clusterByRegion:"按 Doxa 区域",clusterByLanguageFamily:"按语系",clusterByGospelResource:"按福音资源"},ip={header:"当前祷告轮次",lap:"第",upgs:"UUPGs",separator:" / "},rp={placeholder:"民族、地点、语言、宗教",labels:{people:"民族:",place:"地点:",language:"语言:",religion:"宗教:"}};/*! + */let Ni;const Ho=e=>Ni=e,Li=Symbol();function Ga(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var Zn;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(Zn||(Zn={}));function cd(){const e=ua(!0),t=e.run(()=>he({}));let n=[],o=[];const a=On({install(s){Ho(a),a._a=s,s.provide(Li,a),s.config.globalProperties.$pinia=a,o.forEach(r=>n.push(r)),o=[]},use(s){return this._a?n.push(s):o.push(s),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return a}const wi=()=>{};function Pi(e,t,n,o=wi){e.push(t);const a=()=>{const s=e.indexOf(t);s>-1&&(e.splice(s,1),o())};return!n&&Ys()&&zc(a),a}function _n(e,...t){e.slice().forEach(n=>{n(...t)})}const ud=e=>e(),Mi=Symbol(),za=Symbol();function qa(e,t){e instanceof Map&&t instanceof Map?t.forEach((n,o)=>e.set(o,n)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const o=t[n],a=e[n];Ga(a)&&Ga(o)&&e.hasOwnProperty(n)&&!ke(o)&&!Et(o)?e[n]=qa(a,o):e[n]=o}return e}const gd=Symbol();function dd(e){return!Ga(e)||!e.hasOwnProperty(gd)}const{assign:Gt}=Object;function pd(e){return!!(ke(e)&&e.effect)}function fd(e,t,n,o){const{state:a,actions:s,getters:r}=t,i=n.state.value[e];let l;function c(){i||(n.state.value[e]=a?a():{});const u=du(n.state.value[e]);return Gt(u,s,Object.keys(r||{}).reduce((p,m)=>(p[m]=On(be(()=>{Ho(n);const $=n._s.get(e);return r[m].call($,$)})),p),{}))}return l=Ii(e,c,t,n,o,!0),l}function Ii(e,t,n={},o,a,s){let r;const i=Gt({actions:{}},n),l={deep:!0};let c,u,p=[],m=[],$;const w=o.state.value[e];!s&&!w&&(o.state.value[e]={});let v;function T(F){let S;c=u=!1,typeof F=="function"?(F(o.state.value[e]),S={type:Zn.patchFunction,storeId:e,events:$}):(qa(o.state.value[e],F),S={type:Zn.patchObject,payload:F,storeId:e,events:$});const V=v=Symbol();No().then(()=>{v===V&&(c=!0)}),u=!0,_n(p,S,o.state.value[e])}const P=s?function(){const{state:S}=n,V=S?S():{};this.$patch(ae=>{Gt(ae,V)})}:wi;function k(){r.stop(),p=[],m=[],o._s.delete(e)}const y=(F,S="")=>{if(Mi in F)return F[za]=S,F;const V=function(){Ho(o);const ae=Array.from(arguments),z=[],ee=[];function Y(q){z.push(q)}function O(q){ee.push(q)}_n(m,{args:ae,name:V[za],store:C,after:Y,onError:O});let j;try{j=F.apply(this&&this.$id===e?this:C,ae)}catch(q){throw _n(ee,q),q}return j instanceof Promise?j.then(q=>(_n(z,q),q)).catch(q=>(_n(ee,q),Promise.reject(q))):(_n(z,j),j)};return V[Mi]=!0,V[za]=S,V},b={_p:o,$id:e,$onAction:Pi.bind(null,m),$patch:T,$reset:P,$subscribe(F,S={}){const V=Pi(p,F,S.detached,()=>ae()),ae=r.run(()=>Ut(()=>o.state.value[e],z=>{(S.flush==="sync"?u:c)&&F({storeId:e,type:Zn.direct,events:$},z)},Gt({},l,S)));return V},$dispose:k},C=So(b);o._s.set(e,C);const L=(o._a&&o._a.runWithContext||ud)(()=>o._e.run(()=>(r=ua()).run(()=>t({action:y}))));for(const F in L){const S=L[F];if(ke(S)&&!pd(S)||Et(S))s||(w&&dd(S)&&(ke(S)?S.value=w[F]:qa(S,w[F])),o.state.value[e][F]=S);else if(typeof S=="function"){const V=y(S,F);L[F]=V,i.actions[F]=S}}return Gt(C,L),Gt(ce(C),L),Object.defineProperty(C,"$state",{get:()=>o.state.value[e],set:F=>{T(S=>{Gt(S,F)})}}),o._p.forEach(F=>{Gt(C,r.run(()=>F({store:C,app:o._a,pinia:o,options:i})))}),w&&s&&n.hydrate&&n.hydrate(C.$state,w),c=!0,u=!0,C}/*! #__NO_SIDE_EFFECTS__ */function Ha(e,t,n){let o,a;const s=typeof t=="function";typeof e=="string"?(o=e,a=s?n:t):(a=e,o=e.id);function r(i,l){const c=Cu();return i=i||(c?Fe(Li,null):null),i&&Ho(i),i=Ni,i._s.has(o)||(s?Ii(o,t,a,i):fd(o,a,i)),i._s.get(o)}return r.$id=o,r}const Va="__doxaMapToken",Wa="doxa:map-token",Ri="__doxaMapTokenBridge",An=()=>{if(typeof window>"u")return"";const e=window[Va];return typeof e=="string"?e:""};function Fi(e){if(typeof window>"u")return"";const t=typeof e=="string"?e.trim():"";if(!t||t===An())return An();window[Va]=t;try{window.dispatchEvent(new CustomEvent(Wa,{detail:t}))}catch{}return t}function hd(){if(typeof window>"u"||window[Ri])return;const e=typeof window.MAP_TOKEN=="string"?window.MAP_TOKEN:"";e&&!An()&&(window[Va]=e);try{Object.defineProperty(window,"MAP_TOKEN",{configurable:!0,get(){return An()},set(t){Fi(t)}}),window[Ri]=!0}catch{}}function md(){hd();const e=he(An());if(typeof window<"u"){const t=()=>{e.value=An()};window.addEventListener(Wa,t);try{Fo(()=>window.removeEventListener(Wa,t))}catch{}}return e}function bd(e){return Fu({loader:e,onError(t,n,o,a){a<=3?setTimeout(n,a*500):o()}})}const yd={backToLegend:"العودة إلى المفتاح",closeDetailView:"إغلاق عرض التفاصيل"},_d={prayForThem:"صلِّ من أجلهم",adoptThem:"تبنَّهم",moreInfo:"مزيد من المعلومات",zoomIn:"تكبير",zoomOut:"تصغير",switchToLightMode:"التبديل إلى الوضع الفاتح",switchToDarkMode:"التبديل إلى الوضع الداكن",resetView:"إعادة تعيين العرض",toggleFullscreen:"تبديل ملء الشاشة",aboutThisMap:"حول هذه الخريطة",closeMenu:"إغلاق القائمة",reloadMap:"إعادة تحميل الخريطة",showClusters:"إظهار المجموعات",clusterSettings:"إعدادات المجموعات",startAutoFly:"بدء الطيران التلقائي",stopFlight:"إيقاف الطيران",speedLabel:"السرعة:",speedOption:{slow:"بطيء",normal:"عادي",fast:"سريع"},shareEmbed:"مشاركة وتضمين"},Ad={labels:{country:"الدولة:",population:"السكان:",language:"اللغة:",religion:"الديانة:",languageFamily:"العائلة اللغوية:",peopleCommitted:"ملتزمون بالصلاة:"},messages:{noDescription:"لا يوجد وصف متاح."}},Sd={title:{prayer:"تقدم الصلاة",engagement:"تقدم الانخراط",adoption:"تقدم التبني",languageFamilies:"العائلات اللغوية",doxaRegions:"مناطق Doxa",affinityBlocs:"كتل القرابة",gospelResources:"موارد الإنجيل"},header:{collapsed:"وسيلة الإيضاح",peopleGroupFallback:"مجموعة الشعب"},prayer:{needsPrayer:"يحتاج إلى صلاة",hasPrayer:"لديه صلاة",fullPrayerCoverage:"تغطية صلاة كاملة"},progress:{title:"التقدم",covered:"{covered} من {total} مجموعة شعبية مغطاة بالصلاة · {pct}%",short:"{covered} من {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"يحتاج إلى انخراط",hasEngagement:"لديه انخراط"},adoption:{needsAdoption:"يحتاج إلى تبني",hasAdoption:"لديه تبني"},columns:{upgs:"UUPGs",population:"السكان",name:"الاسم"},footer:{total:"الإجمالي"},sortByUpgs:"ترتيب حسب UUPG",sortByPop:"ترتيب حسب السكان",colLabel:{religion:"ديانات UUPG",prayer:"حالة الصلاة",engagement:"حالة المشاركة",adoption:"حالة التبني",status:"الحالة"},titleBar:{legend:"مفتاح الخريطة",peopleGroups:"الشعوب",wagfRegions:"مناطق WAGF",languages:"اللغات"}},vd={menuComingSoon:"القائمة قادمة قريباً"},$d={clusterByRegion:"حسب منطقة Doxa",clusterByLanguageFamily:"حسب العائلة اللغوية",clusterByGospelResource:"حسب مورد الإنجيل"},kd={header:"دورة الصلاة الحالية",lap:"الدورة",upgs:"UUPGs",separator:" من "},Ed={"%count% people groups in %countries% countries":"%count% مجموعة بشرية في %countries% دولة","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"تضم %region% %count% مجموعة بشرية في %countries% دولة. يشير لون كل نقطة إلى عدد الأشخاص الذين يصلّون من أجل تلك المجموعة البشرية.","1+ People Praying":"شخص واحد أو أكثر يصلّي","100+ People Praying":"أكثر من 100 شخص يصلّون",Adopted:"تم انتماؤه","Adoption Progress":"تقدُّم الإنتماء","All Regions":"جميع المناطق","Alternate Names":"الأسماء البديلة","Clear All":"مسح الكل",Countries:"الدول","Countries in this region":"الدول في هذه المنطقة",Country:"الدولة",Engaged:"مُنخرَط","Engagement Progress":"تقدُّم الانخراط","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"كل مجموعة بشرية غير مبشرة تتبناها كنيسة ملتزمة بالصلاة والعطاء والإرسال","Exact Search":"بحث دقيق","Find unreached people groups by region and country.":"ابحث عن المجموعات البشرية غير المُبلَّغة حسب المنطقة والدولة.","Full Profile":"الملف الشخصي الكامل",Goal:"الهدف","Hide Filters":"إخفاء المرشحات",Intercessors:"المتشفعين","Load More":"تحميل المزيد","Loading results...":"النتائج قيد التحميل...","Mobilize 100+ people praying daily for each DOXA people group":"حشد أكثر من 100 شخص للصلاة يوميًا من أجل كل مجموعة بشرية من مجموعات دوكسا","No One Praying":"لا أحد يصلّي","No options found":"لم يتم العثور على أي خيارات","No unengaged people groups by 2033":"الهدف هو القضاء على جميع الشعوب الغير مخدومة روحيا بحلول عام 2033","Not Adopted":"لم يتم انتماؤه",Other:"أخرى","Page Not Found":"الصفحة غير موجودة","People Group":"مجموعة بشرية","People Groups":"مجموعات بشرية","People committed to praying":"الأشخاص الذين التزموا بالصلاة",Population:"عدد السكان","Prayer Coverage":"التغطية المستمرة بالصلاة","Prayer coverage progress":"تقدم تغطية الصلاة",Regions:"المناطق",Religion:"الدين","Search names, country/continent, religions...":"إبحث عن الأسماء، الدولة/القارة، الأديان...","See %region% dashboard":"عرض لوحة معلومات %region%","See All":"عرض جميع العناصر",Select:"اختر","Show Filters":"إظهار عوامل التصفية","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"توجد %count% مجموعات بشرية في %country%. تحقق من الخريطة لمعرفة المجموعات البشرية الواقعة على حدود هذه الدولة أيضًا.",Total:"المجموع","Type to search...":"اكتب ما تريد البحث عنه...","Unengaged people groups":"الشعوب الغير متفاعلة","WAGF Block":"كتلة WAGF","WAGF Region":"منطقة WAGF","people groups adopted":"الشعوب المنتمية","people groups engaged":"مجموعات بشرية مُنخرِطة"},Td={placeholder:"شعب، مكان، لغة، ديانة",labels:{people:"الشعب:",place:"المكان:",language:"اللغة:",religion:"الديانة:"},kinds:{people:"الشعب + الدولة",peopleGroup:"الشعب",bloc:"كتلة التقارب",cluster:"مجموعة شعوب",country:"الدولة",region:"المنطقة",family:"عائلة اللغة",languageKind:"اللغة",dialect:"اللهجة",religionKind:"الدين"}},Cd={prayer:"الصلاة",adoption:"التبني",engagement:"المشاركة","affinity-blocks":"الشعوب",regions:"المناطق",countries:"الدول","language-families":"اللغات",religion:"الأديان",family:"عائلة اللغة",language:"اللغة",dialect:"اللهجة/التنوع",bloc:"كتلة التقارب",cluster:"المجموعة",group:"الشعب",pgic:"الشعب في الدولة",region:"منطقة WAGF",block:"كتلة WAGF",country:"الدولة"},Nd={backToLegend:"Zurück zur Legende",closeDetailView:"Detailansicht schließen"},Ld={prayForThem:"Für sie beten",adoptThem:"Sie adoptieren",moreInfo:"Mehr Infos",zoomIn:"Vergrößern",zoomOut:"Verkleinern",switchToLightMode:"Zum hellen Modus wechseln",switchToDarkMode:"Zum dunklen Modus wechseln",resetView:"Ansicht zurücksetzen",toggleFullscreen:"Vollbild umschalten",aboutThisMap:"Über diese Karte",closeMenu:"Menü schließen",reloadMap:"Karte neu laden",showClusters:"Cluster anzeigen",clusterSettings:"Cluster-Einstellungen",startAutoFly:"Auto-Flug starten",stopFlight:"Flug stoppen",speedLabel:"Geschwindigkeit:",speedOption:{slow:"Langsam",normal:"Normal",fast:"Schnell"},shareEmbed:"Teilen und einbetten"},wd={labels:{country:"Land:",population:"Bevölkerung:",language:"Sprache:",religion:"Religion:",languageFamily:"Sprachfamilie:",peopleCommitted:"Zum Gebet verpflichtet:"},messages:{noDescription:"Keine Beschreibung verfügbar."}},Pd={title:{prayer:"Gebetsfortschritt",engagement:"Engagement-Fortschritt",adoption:"Adoptionsfortschritt",languageFamilies:"Sprachfamilien",doxaRegions:"Doxa-Regionen",affinityBlocs:"Affinitätsblöcke",gospelResources:"Evangeliumsressourcen"},header:{collapsed:"Legende",peopleGroupFallback:"Volksgruppe"},prayer:{needsPrayer:"Braucht Gebet",hasPrayer:"Hat Gebet",fullPrayerCoverage:"Vollständige Gebetsabdeckung"},progress:{title:"Fortschritt",covered:"{covered} von {total} Volksgruppen im Gebet abgedeckt · {pct}%",short:"{covered} von {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Braucht Engagement",hasEngagement:"Hat Engagement"},adoption:{needsAdoption:"Braucht Adoption",hasAdoption:"Hat Adoption"},columns:{upgs:"UUPGs",population:"Bevölkerung"},footer:{total:"Gesamt"}},Md={menuComingSoon:"Menü folgt in Kürze"},Id={clusterByRegion:"Nach Doxa-Region",clusterByLanguageFamily:"Nach Sprachfamilie",clusterByGospelResource:"Nach Evangeliumsressource"},Rd={header:"AKTUELLE GEBETSRUNDE",lap:"Runde",upgs:"UUPGs",separator:" von "},Fd={"%count% people groups in %countries% countries":"%count% Volksgruppen in %countries% Ländern","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% hat %count% Volksgruppen in %countries% Ländern. Die Farbe jedes Punktes zeigt, wie viele Menschen für diese Volksgruppe beten.","1+ People Praying":"1+ Menschen beten","100+ People Praying":"100+ Menschen beten",Adopted:"Angenommen","Adoption Progress":"Adoptionsfortschritt","All Regions":"Alle Regionen","Alternate Names":"Alternative Namen","Clear All":"Alle löschen",Countries:"Länder","Countries in this region":"Länder in dieser Region",Country:"Land",Engaged:"Engagiert","Engagement Progress":"Engagement-Fortschritt","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Jede einzelne der völlig unerreichten Volksgruppen soll von einer Ortsgemeinde adoptiert werden, durch Beten, Geben und Senden","Exact Search":"Exakte Suche","Find unreached people groups by region and country.":"Finde unerreichte Volksgruppen nach Region und Land.","Full Profile":"Vollständiges Profil",Goal:"Ziel","Hide Filters":"Filter ausblenden",Intercessors:"Fürbitter","Load More":"Mehr laden","Loading results...":"Ergebnisse werden geladen...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilisiere 100+ Menschen, die täglich für jede DOXA-Volksgruppe beten","No One Praying":"Niemand betet","No options found":"Keine Standorte gefunden","No unengaged people groups by 2033":"Dass es bis 2033 keine völlig unerreichte Volksgruppe mehr gibt","Not Adopted":"noch nicht adoptiert",Other:"Andere","Page Not Found":"Seite nicht gefunden","People Group":"Personengruppe","People Groups":"Volksgruppen","People committed to praying":"Menschen, die sich dem Beten verpflichtet haben",Population:"Bevölkerung","Prayer Coverage":"Gebetsabdeckung","Prayer coverage progress":"Fortschritt der Gebetsabdeckung",Regions:"Regionen",Religion:"Primäre Religion","Search names, country/continent, religions...":"Suche nach Namen, Land/Kontinent, Religionen...","See %region% dashboard":"Dashboard anzeigen: %region%","See All":"Alle anzeigen",Select:"Auswählen","Show Filters":"Filter anzeigen","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"In %country% gibt es %count% Volksgruppen. Sieh auch auf der Karte nach den Volksgruppen an der Grenze dieses Landes.",Total:"Gesamt","Type to search...":"Geben Sie etwas ein, um danach zu suchen","Unengaged people groups":"Völlig unerreichte Volksgruppen","WAGF Block":"WAGF-Block","WAGF Region":"WAGF-Region","people groups adopted":"adoptierte Volksgruppen","people groups engaged":"engagierte Volksgruppen"},Od={placeholder:"Volk, Ort, Sprache, Religion",labels:{people:"Volk:",place:"Ort:",language:"Sprache:",religion:"Religion:"},sections:{within:"Innerhalb {selection}",allData:"Alle DOXA-Daten"}},Dd={prayer:"Gebet",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Volksgruppen",regions:"Regionen",countries:"Länder","language-families":"Sprachen",religion:"Religionen",family:"Sprachfamilie",language:"Sprache",dialect:"Dialekt/Varietät",bloc:"Affinitätsblock",cluster:"Cluster",group:"Volksgruppe",pgic:"Volksgruppe im Land",region:"WAGF-Region",block:"WAGF-Block",country:"Land"},xd={backToLegend:"Back to Legend",closeDetailView:"Close detail view"},jd={prayForThem:"Pray for them",adoptThem:"Adopt",moreInfo:"More info",zoomIn:"Zoom in",zoomOut:"Zoom out",switchToLightMode:"Switch to light mode",switchToDarkMode:"Switch to dark mode",resetView:"Reset view",toggleFullscreen:"Toggle fullscreen",aboutThisMap:"About this map",closeMenu:"Close menu",reloadMap:"Reload Map",showClusters:"Show Clusters",clusterSettings:"Cluster Settings",startAutoFly:"Start Auto Fly",stopFlight:"Stop Flight",speedLabel:"Speed:",speedOption:{slow:"Slow",normal:"Normal",fast:"Fast"},shareEmbed:"Share & embed",shareSteps:["Embed this map on your site","Create a list of the websites in your city","Train them to embed it too","Train them to train others to embed it too","Multiply maps everywhere for Jesus!"],share:"Share"},Bd={labels:{country:"Country:",population:"Population:",language:"Language:",religion:"Religion:",languageFamily:"Language Family:",peopleCommitted:"Committed to pray:"},messages:{noDescription:"No description available."}},Kd={title:{prayer:"Prayer Progress",engagement:"Engagement Progress",adoption:"Adoption Progress",languageFamilies:"Language Families",doxaRegions:"Doxa Regions",affinityBlocs:"Affinity Blocks",gospelResources:"Gospel Resources"},header:{default:"Legend",collapsed:"Legend",peopleGroupFallback:"People Group"},prayer:{needsPrayer:"Needs Prayer",hasPrayer:"Has Prayer",fullPrayerCoverage:"Full Prayer Coverage"},progress:{title:"Progress",covered:"{covered} of {total} people groups covered in prayer · {pct}%",short:"{covered} of {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Unengaged",hasEngagement:"Engaged"},adoption:{needsAdoption:"Needs Adoption",hasAdoption:"Has Adoption"},columns:{upgs:"UUPGs",population:"Population",name:"Name"},footer:{total:"Total"},sortByUpgs:"Sort by UUPGs",sortByPop:"Sort by Population",colLabel:{religion:"UUPG Religions",prayer:"Prayer Status",engagement:"Engagement Status",adoption:"Adoption Status",status:"Status"},titleBar:{legend:"Legend",peopleGroups:"People Groups",wagfRegions:"WAGF Regions",languages:"Languages"}},Ud={menuComingSoon:"Menu coming soon"},Gd={clusterByRegion:"By Doxa Region",clusterByLanguageFamily:"By Language Family",clusterByGospelResource:"By Gospel Resource"},zd={country:{wagfRegion:"WAGF Region",wagfBlock:"WAGF Bloc",country:"Country",uupgCount:"UUPG Count"}},qd={header:"CURRENT PRAYER LAP",lap:"Lap",upgs:"UUPGs",separator:" of "},Hd={"%count% people groups in %countries% countries":"%count% people groups in %countries% countries","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.","1+ People Praying":"1+ People Praying","100+ People Praying":"100+ People Praying",Adopted:"Adopted","Adoption Progress":"Adoption Progress","All Regions":"All Regions","Alternate Names":"Alternate Names","Clear All":"Clear All",Countries:"Countries","Countries in this region":"Countries in this region",Country:"Country",Engaged:"Engaged","Engagement Progress":"Engagement Progress","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Every unengaged people group adopted by a church committed to prayer, giving, and sending","Exact Search":"Exact Search","Find unreached people groups by region and country.":"Find unreached people groups by region and country.","Full Profile":"Full Profile",Goal:"Goal","Hide Filters":"Hide Filters",Intercessors:"Intercessors","Load More":"Load More","Loading results...":"Loading results...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilize 100+ people praying daily for each DOXA people group","No One Praying":"No One Praying","No options found":"No options found","No unengaged people groups by 2033":"No unengaged people groups by 2033","Not Adopted":"Not Adopted",Other:"Other","Page Not Found":"Page Not Found","People Group":"People Group","People Groups":"People Groups","People committed to praying":"People committed to praying",Population:"Population","Prayer Coverage":"Prayer Coverage","Prayer coverage progress":"Prayer coverage progress",Regions:"Regions",Religion:"Religion","Search names, country/continent, religions...":"Search names, country/continent, religions...","See %region% dashboard":"See %region% dashboard","See All":"See All",Select:"Select","Show Filters":"Show Filters","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.",Total:"Total","Type to search...":"Type to search...","Unengaged people groups":"Unengaged people groups","WAGF Block":"WAGF Block","WAGF Region":"WAGF Region","people groups adopted":"people groups adopted","people groups engaged":"people groups engaged","View country posters":"View country posters","Hide country posters":"Hide country posters","No poster has been generated for this country yet.":"No poster has been generated for this country yet."},Vd={placeholder:"People, place, language, religion",labels:{people:"People:",place:"Place:",language:"Language:",religion:"Religion:"},kinds:{people:"People Group + Country",peopleGroup:"People Group",bloc:"Affinity Block",cluster:"People Cluster",country:"Country",region:"Region",family:"Language Family",languageKind:"Language",dialect:"Dialect",religionKind:"Religion"},sections:{within:"Within {selection}",allData:"All DOXA Data"}},Wd={prayer:"Prayer",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"People Groups (Affinity)",regions:"Regions",countries:"Countries","language-families":"Languages",religion:"Religions",family:"Lang Family",language:"Language",dialect:"Dialect/Variety",bloc:"Affinity Block",cluster:"Cluster",group:"People Group",pgic:"PG in Country",region:"WAGF Region",block:"WAGF Bloc",country:"Country"},Yd={backToLegend:"Volver a la leyenda",closeDetailView:"Cerrar vista de detalle"},Jd={prayForThem:"Ora por ellos",adoptThem:"Adóptalos",moreInfo:"Más información",zoomIn:"Acercar",zoomOut:"Alejar",switchToLightMode:"Cambiar a modo claro",switchToDarkMode:"Cambiar a modo oscuro",resetView:"Restablecer vista",toggleFullscreen:"Alternar pantalla completa",aboutThisMap:"Acerca de este mapa",closeMenu:"Cerrar menú",reloadMap:"Recargar mapa",showClusters:"Mostrar clústeres",clusterSettings:"Ajustes de clústeres",startAutoFly:"Iniciar vuelo automático",stopFlight:"Detener vuelo",speedLabel:"Velocidad:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Compartir e incrustar"},Xd={labels:{country:"País:",population:"Población:",language:"Idioma:",religion:"Religión:",languageFamily:"Familia lingüística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"No hay descripción disponible."}},Zd={title:{prayer:"Progreso de oración",engagement:"Progreso de implicación",adoption:"Progreso de adopción",languageFamilies:"Familias lingüísticas",doxaRegions:"Regiones Doxa",affinityBlocs:"Bloques de afinidad",gospelResources:"Recursos del Evangelio"},header:{collapsed:"Leyenda",peopleGroupFallback:"Grupo de personas"},prayer:{needsPrayer:"Necesita oración",hasPrayer:"Tiene oración",fullPrayerCoverage:"Cobertura de oración completa"},progress:{title:"Progreso",covered:"{covered} de {total} grupos de personas cubiertos en oración · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesita implicación",hasEngagement:"Tiene implicación"},adoption:{needsAdoption:"Necesita adopción",hasAdoption:"Tiene adopción"},columns:{upgs:"UUPGs",population:"Población",name:"Nombre"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por población",colLabel:{religion:"Religiones UUPG",prayer:"Estado de oración",engagement:"Estado de compromiso",adoption:"Estado de adopción",status:"Estado"},titleBar:{legend:"Leyenda",peopleGroups:"Pueblos",wagfRegions:"Regiones WAGF",languages:"Idiomas"}},Qd={menuComingSoon:"Menú próximamente"},ep={clusterByRegion:"Por región Doxa",clusterByLanguageFamily:"Por familia lingüística",clusterByGospelResource:"Por recurso del Evangelio"},tp={header:"VUELTA DE ORACIÓN ACTUAL",lap:"Vuelta",upgs:"UUPGs",separator:" de "},np={"%count% people groups in %countries% countries":"%count% grupos étnicos en %countries% países","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% tiene %count% grupos étnicos en %countries% países. El color de cada punto indica cuántas personas oran por ese grupo étnico.","1+ People Praying":"1+ personas orando","100+ People Praying":"100+ personas orando",Adopted:"Aprobado","Adoption Progress":"Progreso de la adopción","All Regions":"Todas las regiones","Alternate Names":"Nombres alternativos","Clear All":"Borrar todo",Countries:"Países","Countries in this region":"Países de esta región",Country:"País",Engaged:"Comprometido","Engagement Progress":"Progreso del compromiso","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Cada grupo étnico no evangelizado adoptado por una iglesia comprometida con la oración, la ofrenda y el envío.","Exact Search":"Búsqueda exacta","Find unreached people groups by region and country.":"Encuentra grupos étnicos no alcanzados por región y país.","Full Profile":"Perfil completo",Goal:"Meta","Hide Filters":"Ocultar filtros",Intercessors:"Intercesores","Load More":"Cargar más","Loading results...":"Cargando resultados...","Mobilize 100+ people praying daily for each DOXA people group":"Movilizar a más de 100 personas que oren diariamente por cada grupo étnico DOXA.","No One Praying":"Nadie orando","No options found":"No se han encontrado opciones","No unengaged people groups by 2033":"No habrá grupos étnicos sin evangelizar para 2033","Not Adopted":"No adoptado",Other:"Otros","Page Not Found":"Página no encontrada","People Group":"Grupo Étnico","People Groups":"Grupos Étnicos","People committed to praying":"Personas comprometidas con la oración",Population:"Población","Prayer Coverage":"Cobertura de oración","Prayer coverage progress":"Progreso de la cobertura de oración",Regions:"Regiones",Religion:"Religión","Search names, country/continent, religions...":"Buscar nombres, país/continente, religiones...","See %region% dashboard":"Ver el panel de %region%","See All":"Ver todo",Select:"Seleccionar","Show Filters":"Mostrar filtros","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Hay %count% grupos étnicos en %country%. Consulta también el mapa para ver los grupos étnicos en la frontera de este país.",Total:"Total","Type to search...":"Escribe para buscar...","Unengaged people groups":"Grupos étnicos no comprometidos","WAGF Block":"Bloque WAGF","WAGF Region":"Región de la WAGF","people groups adopted":"grupos de personas adoptados","people groups engaged":"grupos étnicos comprometidos"},op={placeholder:"Pueblo, lugar, idioma, religión",labels:{people:"Pueblo:",place:"Lugar:",language:"Idioma:",religion:"Religión:"},kinds:{people:"Pueblo + país",peopleGroup:"Pueblo",bloc:"Bloque de afinidad",cluster:"Clúster de pueblos",country:"País",region:"Región",family:"Familia lingüística",languageKind:"Idioma",dialect:"Dialecto",religionKind:"Religión"}},ap={prayer:"Oración",adoption:"Adopción",engagement:"Compromiso","affinity-blocks":"Pueblos",regions:"Regiones",countries:"Países","language-families":"Idiomas",religion:"Religiones",family:"Familia lingüística",language:"Idioma",dialect:"Dialecto/Variedad",bloc:"Bloque de afinidad",cluster:"Clúster",group:"Pueblo",pgic:"Pueblo en país",region:"Región WAGF",block:"Bloque WAGF",country:"País"},sp={backToLegend:"Retour à la légende",closeDetailView:"Fermer la vue détaillée"},rp={prayForThem:"Priez pour eux",adoptThem:"Adoptez-les",moreInfo:"Plus d'infos",zoomIn:"Zoom avant",zoomOut:"Zoom arrière",switchToLightMode:"Passer au mode clair",switchToDarkMode:"Passer au mode sombre",resetView:"Réinitialiser la vue",toggleFullscreen:"Basculer en plein écran",aboutThisMap:"À propos de cette carte",closeMenu:"Fermer le menu",reloadMap:"Recharger la carte",showClusters:"Afficher les clusters",clusterSettings:"Paramètres des clusters",startAutoFly:"Démarrer le vol auto",stopFlight:"Arrêter le vol",speedLabel:"Vitesse :",speedOption:{slow:"Lente",normal:"Normale",fast:"Rapide"},shareEmbed:"Partager et intégrer"},ip={labels:{country:"Pays :",population:"Population :",language:"Langue :",religion:"Religion :",languageFamily:"Famille de langues :",peopleCommitted:"Engagés à prier :"},messages:{noDescription:"Aucune description disponible."}},lp={title:{prayer:"Progression de la prière",engagement:"Progression de l'engagement",adoption:"Progression de l'adoption",languageFamilies:"Familles de langues",doxaRegions:"Régions Doxa",affinityBlocs:"Blocs d'affinité",gospelResources:"Ressources de l'Évangile"},header:{collapsed:"Légende",peopleGroupFallback:"Groupe de personnes"},prayer:{needsPrayer:"Besoin de prière",hasPrayer:"Prière en cours",fullPrayerCoverage:"Couverture de prière complète"},progress:{title:"Progression",covered:"{covered} sur {total} groupes de personnes couverts par la prière · {pct}%",short:"{covered} sur {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Besoin d'engagement",hasEngagement:"Engagement en cours"},adoption:{needsAdoption:"Besoin d'adoption",hasAdoption:"Adoption en cours"},columns:{upgs:"UUPGs",population:"Population",name:"Nom"},footer:{total:"Total"},sortByUpgs:"Trier par UUPG",sortByPop:"Trier par population",colLabel:{religion:"Religions UUPG",prayer:"Statut de prière",engagement:"Statut d'engagement",adoption:"Statut d'adoption",status:"Statut"},titleBar:{legend:"Légende",peopleGroups:"Peuples",wagfRegions:"Régions WAGF",languages:"Langues"}},cp={menuComingSoon:"Menu bientôt disponible"},up={clusterByRegion:"Par région Doxa",clusterByLanguageFamily:"Par famille de langues",clusterByGospelResource:"Par ressource de l'Évangile"},gp={country:{wagfRegion:"Région WAGF",wagfBlock:"Bloc WAGF",country:"Pays",uupgCount:"Nombre d'UUPG"}},dp={header:"TOUR DE PRIÈRE ACTUEL",lap:"Tour",upgs:"UUPGs",separator:" sur "},pp={"%count% people groups in %countries% countries":"%count% peuples dans %countries% pays","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% compte %count% peuples répartis dans %countries% pays. La couleur de chaque point indique combien de personnes prient pour ce peuple.","1+ People Praying":"1+ personnes en prière","100+ People Praying":"100+ personnes en prière",Adopted:"Adopté","Adoption Progress":"Progrès de l'adoption","All Regions":"Toutes les régions","Alternate Names":"Autres noms","Clear All":"Tout effacer",Countries:"Pays","Countries in this region":"Pays de cette région",Country:"Pays",Engaged:"Engagé","Engagement Progress":"Progrès de l'engagement","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Chaque peuple non engagé adopté par une église locale engagée dans la prière, le don et l'envoi","Exact Search":"Recherche exacte","Find unreached people groups by region and country.":"Trouvez des peuples non atteints par région et par pays.","Full Profile":"Profil complet",Goal:"Objectif","Hide Filters":"Masquer les filtres",Intercessors:"Intercesseurs","Load More":"Afficher plus","Loading results...":"Chargement des résultats...","Mobilize 100+ people praying daily for each DOXA people group":"Mobiliser plus de 100 personnes priant chaque jour pour chaque peuple DOXA","No One Praying":"Personne ne prie","No options found":"Aucun lieu trouvé","No unengaged people groups by 2033":"Plus aucun peuple non engagé d'ici 2033","Not Adopted":"Non adopté",Other:"Autre","Page Not Found":"Page introuvable","People Group":"Peuple","People Groups":"Peuples","People committed to praying":"Personnes engagées dans la prière",Population:"Population","Prayer Coverage":"Couverture de prière","Prayer coverage progress":"Progression de la couverture de prière",Regions:"Régions",Religion:"Religion","Search names, country/continent, religions...":"Rechercher des noms, pays/continent, religions...","See %region% dashboard":"Voir le tableau de bord : %region%","See All":"Tout afficher",Select:"Sélectionner","Show Filters":"Afficher les filtres","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Il y a %count% peuples en %country%. Consultez la carte pour découvrir également les peuples situés à la frontière de ce pays.",Total:"Total","Type to search...":"Entrer votre recherche","Unengaged people groups":"Peuples non engagés","WAGF Block":"Bloc WAGF","WAGF Region":"Région WAGF","people groups adopted":"peuples adoptés","people groups engaged":"peuples engagés"},fp={placeholder:"Peuple, lieu, langue, religion",labels:{people:"Peuple :",place:"Lieu :",language:"Langue :",religion:"Religion :"},kinds:{people:"Peuple + pays",peopleGroup:"Peuple",bloc:"Bloc d'affinité",cluster:"Grappe de peuples",country:"Pays",region:"Région",family:"Famille linguistique",languageKind:"Langue",dialect:"Dialecte",religionKind:"Religion"}},hp={prayer:"Prière",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Peuples",regions:"Régions",countries:"Pays","language-families":"Langues",religion:"Religions",family:"Famille linguistique",language:"Langue",dialect:"Dialecte/Variété",bloc:"Bloc d'affinité",cluster:"Grappe",group:"Peuple",pgic:"Peuple dans le pays",region:"Région WAGF",block:"Bloc WAGF",country:"Pays"},mp={backToLegend:"लेजेंड पर वापस जाएं",closeDetailView:"विवरण दृश्य बंद करें"},bp={prayForThem:"उनके लिए प्रार्थना करें",adoptThem:"उन्हें गोद लें",moreInfo:"अधिक जानकारी",zoomIn:"ज़ूम इन",zoomOut:"ज़ूम आउट",switchToLightMode:"लाइट मोड पर जाएं",switchToDarkMode:"डार्क मोड पर जाएं",resetView:"दृश्य रीसेट करें",toggleFullscreen:"फ़ुलस्क्रीन टॉगल करें",aboutThisMap:"इस मानचित्र के बारे में",closeMenu:"मेनू बंद करें",reloadMap:"मानचित्र पुनः लोड करें",showClusters:"क्लस्टर दिखाएं",clusterSettings:"क्लस्टर सेटिंग्स",startAutoFly:"ऑटो फ्लाई शुरू करें",stopFlight:"उड़ान रोकें",speedLabel:"गति:",speedOption:{slow:"धीमी",normal:"सामान्य",fast:"तेज़"},shareEmbed:"साझा करें और एम्बेड करें"},yp={labels:{country:"देश:",population:"जनसंख्या:",language:"भाषा:",religion:"धर्म:",languageFamily:"भाषा परिवार:",peopleCommitted:"प्रार्थना के लिए प्रतिबद्ध:"},messages:{noDescription:"कोई विवरण उपलब्ध नहीं है।"}},_p={title:{prayer:"प्रार्थना प्रगति",engagement:"सहभागिता प्रगति",adoption:"गोद लेने की प्रगति",languageFamilies:"भाषा परिवार",doxaRegions:"Doxa क्षेत्र",affinityBlocs:"समानता समूह",gospelResources:"सुसमाचार संसाधन"},header:{collapsed:"किंवदंती",peopleGroupFallback:"जनजाति समूह"},prayer:{needsPrayer:"प्रार्थना चाहिए",hasPrayer:"प्रार्थना है",fullPrayerCoverage:"पूर्ण प्रार्थना कवरेज"},progress:{title:"प्रगति",covered:"{total} में से {covered} जनजाति समूह प्रार्थना में कवर · {pct}%",short:"{total} में से {covered} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"सहभागिता चाहिए",hasEngagement:"सहभागिता है"},adoption:{needsAdoption:"गोद लेना चाहिए",hasAdoption:"गोद लिया गया"},columns:{upgs:"UUPGs",population:"जनसंख्या"},footer:{total:"कुल"}},Ap={menuComingSoon:"मेनू शीघ्र आ रहा है"},Sp={clusterByRegion:"Doxa क्षेत्र के अनुसार",clusterByLanguageFamily:"भाषा परिवार के अनुसार",clusterByGospelResource:"सुसमाचार संसाधन के अनुसार"},vp={header:"वर्तमान प्रार्थना चक्र",lap:"चक्र",upgs:"UUPGs",separator:" में से "},$p={"%count% people groups in %countries% countries":"%countries% देशों में %count% लोगों के समूह","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% में %countries% देशों में %count% लोगों के समूह हैं। प्रत्येक बिंदु का रंग दर्शाता है कि उस लोगों के समूह के लिए कितने लोग प्रार्थना कर रहे हैं।","1+ People Praying":"1+ लोग प्रार्थना कर रहे हैं","100+ People Praying":"100+ लोग प्रार्थना कर रहे हैं",Adopted:"दत्तक लिया गया","Adoption Progress":"दत्तक ग्रहण की प्रगति","All Regions":"सभी क्षेत्र","Alternate Names":"वैकल्पिक नाम","Clear All":"सभी साफ़ करें",Countries:"देश","Countries in this region":"इस क्षेत्र के देश",Country:"देश",Engaged:"प्रवेशित","Engagement Progress":"प्रवेश की प्रगति","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"प्रत्येक असंलग्न जनसमूह जिसे प्रार्थना, दान और भेजने के लिए प्रतिबद्ध एक चर्च ने अपनाया है।","Exact Search":"सटीक खोज","Find unreached people groups by region and country.":"क्षेत्र और देश के अनुसार अगम्य लोगों के समूह खोजें।","Full Profile":"पूर्ण प्रोफ़ाइल",Goal:"लक्ष्य","Hide Filters":"फ़िल्टर छिपाएँ",Intercessors:"मध्यस्थ","Load More":"और लोड करें","Loading results...":"परिणाम लोड हो रहे हैं..।","Mobilize 100+ people praying daily for each DOXA people group":"प्रत्येक DOXA जनसमूह के लिए प्रतिदिन प्रार्थना करने हेतु 100+ लोगों को सक्रिय करें।","No One Praying":"कोई प्रार्थना नहीं कर रहा","No options found":"कोई विकल्प नहीं मिला","No unengaged people groups by 2033":"2033 तक कोई भी संलग्न न किया गया जनसमूह नहीं रहेगा।","Not Adopted":"दत्तक नहीं लिया गया",Other:"अन्य","Page Not Found":"पृष्ठ नहीं मिला","People Group":"लोगों का समूह","People Groups":"लोगों के समूह","People committed to praying":"प्रार्थना के लिए प्रतिबद्ध लोग",Population:"जनसँख्या","Prayer Coverage":"प्रार्थना कवरेज","Prayer coverage progress":"प्रार्थना कवरेज की प्रगति",Regions:"क्षेत्र",Religion:"धर्म","Search names, country/continent, religions...":"नाम, देश/महाद्वीप, धर्म खोजें..।","See %region% dashboard":"%region% डैशबोर्ड देखें","See All":"सभी देखें",Select:"चयन/छंटनी","Show Filters":"फ़िल्टर दिखाएँ","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"%country% में %count% लोगों के समूह हैं। इस देश की सीमा पर स्थित लोगों के समूहों के लिए मानचित्र भी देखें।",Total:"संपूर्ण","Type to search...":"खोजने के लिए टाइप करें..।","Unengaged people groups":"अनलग्न लोगों के समूह","WAGF Block":"WAGF ब्लॉक","WAGF Region":"डब्ल्यूएजीएफ क्षेत्र","people groups adopted":"लोगों के समूहों ने अपनाया","people groups engaged":"प्रवेशित लोगों के समूह"},kp={placeholder:"लोग, स्थान, भाषा, धर्म",labels:{people:"लोग:",place:"स्थान:",language:"भाषा:",religion:"धर्म:"}},Ep={backToLegend:"Torna alla legenda",closeDetailView:"Chiudi vista dettaglio"},Tp={prayForThem:"Prega per loro",adoptThem:"Adottali",moreInfo:"Più informazioni",zoomIn:"Ingrandisci",zoomOut:"Riduci",switchToLightMode:"Passa alla modalità chiara",switchToDarkMode:"Passa alla modalità scura",resetView:"Reimposta vista",toggleFullscreen:"Attiva/disattiva schermo intero",aboutThisMap:"Informazioni su questa mappa",closeMenu:"Chiudi menu",reloadMap:"Ricarica mappa",showClusters:"Mostra cluster",clusterSettings:"Impostazioni cluster",startAutoFly:"Avvia volo automatico",stopFlight:"Ferma volo",speedLabel:"Velocità:",speedOption:{slow:"Lenta",normal:"Normale",fast:"Veloce"},shareEmbed:"Condividi e incorpora"},Cp={labels:{country:"Paese:",population:"Popolazione:",language:"Lingua:",religion:"Religione:",languageFamily:"Famiglia linguistica:",peopleCommitted:"Impegnati a pregare:"},messages:{noDescription:"Nessuna descrizione disponibile."}},Np={title:{prayer:"Avanzamento della preghiera",engagement:"Avanzamento dell'impegno",adoption:"Avanzamento dell'adozione",languageFamilies:"Famiglie linguistiche",doxaRegions:"Regioni Doxa",affinityBlocs:"Blocchi di affinità",gospelResources:"Risorse del Vangelo"},header:{collapsed:"Legenda",peopleGroupFallback:"Gruppo di persone"},prayer:{needsPrayer:"Necessita preghiera",hasPrayer:"Ha preghiera",fullPrayerCoverage:"Copertura di preghiera completa"},progress:{title:"Avanzamento",covered:"{covered} di {total} gruppi di persone coperti dalla preghiera · {pct}%",short:"{covered} di {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necessita impegno",hasEngagement:"Ha impegno"},adoption:{needsAdoption:"Necessita adozione",hasAdoption:"Ha adozione"},columns:{upgs:"UUPGs",population:"Popolazione"},footer:{total:"Totale"}},Lp={menuComingSoon:"Menu in arrivo"},wp={clusterByRegion:"Per regione Doxa",clusterByLanguageFamily:"Per famiglia linguistica",clusterByGospelResource:"Per risorsa del Vangelo"},Pp={header:"GIRO DI PREGHIERA ATTUALE",lap:"Giro",upgs:"UUPGs",separator:" di "},Mp={placeholder:"Popolo, luogo, lingua, religione",labels:{people:"Popolo:",place:"Luogo:",language:"Lingua:",religion:"Religione:"}},Ip={backToLegend:"Voltar à legenda",closeDetailView:"Fechar vista de detalhe"},Rp={prayForThem:"Ore por eles",adoptThem:"Adote-os",moreInfo:"Mais informações",zoomIn:"Ampliar",zoomOut:"Reduzir",switchToLightMode:"Mudar para modo claro",switchToDarkMode:"Mudar para modo escuro",resetView:"Repor vista",toggleFullscreen:"Alternar ecrã inteiro",aboutThisMap:"Sobre este mapa",closeMenu:"Fechar menu",reloadMap:"Recarregar mapa",showClusters:"Mostrar clusters",clusterSettings:"Definições de clusters",startAutoFly:"Iniciar voo automático",stopFlight:"Parar voo",speedLabel:"Velocidade:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Partilhar e incorporar"},Fp={labels:{country:"País:",population:"População:",language:"Língua:",religion:"Religião:",languageFamily:"Família linguística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"Sem descrição disponível."}},Op={title:{prayer:"Progresso da oração",engagement:"Progresso do envolvimento",adoption:"Progresso da adoção",languageFamilies:"Famílias linguísticas",doxaRegions:"Regiões Doxa",affinityBlocs:"Blocos de afinidade",gospelResources:"Recursos do Evangelho"},header:{collapsed:"Legenda",peopleGroupFallback:"Grupo de pessoas"},prayer:{needsPrayer:"Precisa de oração",hasPrayer:"Tem oração",fullPrayerCoverage:"Cobertura de oração completa"},progress:{title:"Progresso",covered:"{covered} de {total} grupos de pessoas cobertos em oração · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Precisa de envolvimento",hasEngagement:"Tem envolvimento"},adoption:{needsAdoption:"Precisa de adoção",hasAdoption:"Tem adoção"},columns:{upgs:"UUPGs",population:"População",name:"Nome"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por população",colLabel:{religion:"Religiões UUPG",prayer:"Status de oração",engagement:"Status de engajamento",adoption:"Status de adoção",status:"Status"},titleBar:{legend:"Legenda",peopleGroups:"Povos",wagfRegions:"Regiões WAGF",languages:"Idiomas"}},Dp={menuComingSoon:"Menu em breve"},xp={clusterByRegion:"Por região Doxa",clusterByLanguageFamily:"Por família linguística",clusterByGospelResource:"Por recurso do Evangelho"},jp={header:"VOLTA DE ORAÇÃO ATUAL",lap:"Volta",upgs:"UUPGs",separator:" de "},Bp={"%count% people groups in %countries% countries":"%count% grupos étnicos em %countries% países","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% tem %count% grupos étnicos em %countries% países. A cor de cada ponto indica quantas pessoas oram por esse grupo étnico.","1+ People Praying":"1+ pessoas orando","100+ People Praying":"100+ pessoas orando",Adopted:"Aprovado","Adoption Progress":"Progresso da adoção","All Regions":"Todas as regiões","Alternate Names":"Nomes alternativos","Clear All":"Limpar tudo",Countries:"Países","Countries in this region":"Países desta região",Country:"País",Engaged:"Engajado","Engagement Progress":"Progresso do engajamento","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Cada grupo étnico não engajado adotado por uma igreja comprometida com a oração, contribuição e o envio","Exact Search":"Pesquisa exata","Find unreached people groups by region and country.":"Encontre grupos étnicos não alcançados por região e país.","Full Profile":"Perfil completo",Goal:"Meta","Hide Filters":"Ocultar filtros",Intercessors:"Intercessores","Load More":"Carregar mais","Loading results...":"A carregar resultados...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilizar mais de 100 pessoas para orar diariamente por cada grupo étnico DOXA","No One Praying":"Ninguém orando","No options found":"Não foram encontradas opções","No unengaged people groups by 2033":"Nenhum grupo étnico não engajado até 2033","Not Adopted":"Não adotado",Other:"Outros","Page Not Found":"Página não encontrada","People Group":"Grupo étnico","People Groups":"Grupos étnicos","People committed to praying":"Pessoas comprometidas com a oração",Population:"Aplicação","Prayer Coverage":"Cobertura de oração","Prayer coverage progress":"Progresso da cobertura de oração",Regions:"Regiões",Religion:"Religião","Search names, country/continent, religions...":"Busque nomes, país/continente, religiões...","See %region% dashboard":"Ver o painel: %region%","See All":"Ver tudo",Select:"Selecionar","Show Filters":"Mostrar filtros","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Existem %count% grupos étnicos em %country%. Verifique no mapa também os grupos étnicos na fronteira deste país.",Total:"Total","Type to search...":"Digite para pesquisar...","Unengaged people groups":"Grupos étnicos não engajados","WAGF Block":"Bloco WAGF","WAGF Region":"Região da WAGF","people groups adopted":"grupos étnicos adotados","people groups engaged":"grupos étnicos engajados"},Kp={placeholder:"Povo, local, língua, religião",labels:{people:"Povo:",place:"Local:",language:"Língua:",religion:"Religião:"},kinds:{people:"Povo + país",peopleGroup:"Povo",bloc:"Bloco de afinidade",cluster:"Agrupamento de povos",country:"País",region:"Região",family:"Família linguística",languageKind:"Idioma",dialect:"Dialeto",religionKind:"Religião"}},Up={prayer:"Oração",adoption:"Adoção",engagement:"Engajamento","affinity-blocks":"Povos",regions:"Regiões",countries:"Países","language-families":"Idiomas",religion:"Religiões",family:"Família linguística",language:"Idioma",dialect:"Dialeto/Variedade",bloc:"Bloco de afinidade",cluster:"Agrupamento",group:"Povo",pgic:"Povo no país",region:"Região WAGF",block:"Bloco WAGF",country:"País"},Gp={backToLegend:"Înapoi la legendă",closeDetailView:"Închide vizualizarea detaliată"},zp={prayForThem:"Roagă-te pentru ei",adoptThem:"Adoptă-i",moreInfo:"Mai multe informații",zoomIn:"Mărește",zoomOut:"Micșorează",switchToLightMode:"Comută la modul luminos",switchToDarkMode:"Comută la modul întunecat",resetView:"Resetează vizualizarea",toggleFullscreen:"Comută ecran complet",aboutThisMap:"Despre această hartă",closeMenu:"Închide meniul",reloadMap:"Reîncarcă harta",showClusters:"Arată clusterele",clusterSettings:"Setări clustere",startAutoFly:"Pornește zborul automat",stopFlight:"Oprește zborul",speedLabel:"Viteză:",speedOption:{slow:"Lent",normal:"Normal",fast:"Rapid"},shareEmbed:"Partajează și încorporează"},qp={labels:{country:"Țară:",population:"Populație:",language:"Limbă:",religion:"Religie:",languageFamily:"Familie de limbi:",peopleCommitted:"Angajați să se roage:"},messages:{noDescription:"Nicio descriere disponibilă."}},Hp={title:{prayer:"Progresul rugăciunii",engagement:"Progresul implicării",adoption:"Progresul adopției",languageFamilies:"Familii de limbi",doxaRegions:"Regiuni Doxa",affinityBlocs:"Blocuri de afinitate",gospelResources:"Resurse ale Evangheliei"},header:{collapsed:"Legendă",peopleGroupFallback:"Grup de popoare"},prayer:{needsPrayer:"Necesită rugăciune",hasPrayer:"Are rugăciune",fullPrayerCoverage:"Acoperire completă de rugăciune"},progress:{title:"Progres",covered:"{covered} din {total} grupuri de popoare acoperite în rugăciune · {pct}%",short:"{covered} din {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesită implicare",hasEngagement:"Are implicare"},adoption:{needsAdoption:"Necesită adopție",hasAdoption:"Are adopție"},columns:{upgs:"UUPGs",population:"Populație"},footer:{total:"Total"}},Vp={menuComingSoon:"Meniu în curând"},Wp={clusterByRegion:"După regiune Doxa",clusterByLanguageFamily:"După familia de limbi",clusterByGospelResource:"După resursa Evangheliei"},Yp={header:"TURUL DE RUGĂCIUNE CURENT",lap:"Tur",upgs:"UUPGs",separator:" din "},Jp={placeholder:"Popor, loc, limbă, religie",labels:{people:"Popor:",place:"Loc:",language:"Limbă:",religion:"Religie:"}},Xp={backToLegend:"Назад к легенде",closeDetailView:"Закрыть подробный вид"},Zp={prayForThem:"Молитесь о них",adoptThem:"Усыновите их",moreInfo:"Подробнее",zoomIn:"Приблизить",zoomOut:"Отдалить",switchToLightMode:"Переключить на светлый режим",switchToDarkMode:"Переключить на тёмный режим",resetView:"Сбросить вид",toggleFullscreen:"Полноэкранный режим",aboutThisMap:"Об этой карте",closeMenu:"Закрыть меню",reloadMap:"Перезагрузить карту",showClusters:"Показать кластеры",clusterSettings:"Настройки кластеров",startAutoFly:"Начать авто-полёт",stopFlight:"Остановить полёт",speedLabel:"Скорость:",speedOption:{slow:"Медленно",normal:"Нормально",fast:"Быстро"},shareEmbed:"Поделиться и встроить"},Qp={labels:{country:"Страна:",population:"Население:",language:"Язык:",religion:"Религия:",languageFamily:"Языковая семья:",peopleCommitted:"Обязались молиться:"},messages:{noDescription:"Описание недоступно."}},ef={title:{prayer:"Прогресс молитвы",engagement:"Прогресс вовлечённости",adoption:"Прогресс усыновления",languageFamilies:"Языковые семьи",doxaRegions:"Регионы Doxa",affinityBlocs:"Блоки родства",gospelResources:"Евангельские ресурсы"},header:{collapsed:"Условные обозначения",peopleGroupFallback:"Народная группа"},prayer:{needsPrayer:"Нуждается в молитве",hasPrayer:"Есть молитва",fullPrayerCoverage:"Полное молитвенное покрытие"},progress:{title:"Прогресс",covered:"{covered} из {total} народных групп охвачены молитвой · {pct}%",short:"{covered} из {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Нуждается в вовлечённости",hasEngagement:"Есть вовлечённость"},adoption:{needsAdoption:"Нуждается в усыновлении",hasAdoption:"Есть усыновление"},columns:{upgs:"UUPGs",population:"Население",name:"Название"},footer:{total:"Всего"},sortByUpgs:"Сортировать по UUPG",sortByPop:"Сортировать по населению",colLabel:{religion:"Религии UUPG",prayer:"Статус молитвы",engagement:"Статус вовлечённости",adoption:"Статус усыновления",status:"Статус"},titleBar:{legend:"Легенда",peopleGroups:"Народы",wagfRegions:"Регионы WAGF",languages:"Языки"}},tf={menuComingSoon:"Меню скоро появится"},nf={clusterByRegion:"По региону Doxa",clusterByLanguageFamily:"По языковой семье",clusterByGospelResource:"По евангельскому ресурсу"},of={header:"ТЕКУЩИЙ КРУГ МОЛИТВЫ",lap:"Круг",upgs:"UUPGs",separator:" из "},af={"%count% people groups in %countries% countries":"%count% групп людей в %countries% странах","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"В регионе %region% — %count% групп людей в %countries% странах. Цвет каждой точки показывает, сколько человек молится за эту группу людей.","1+ People Praying":"1+ человек молится","100+ People Praying":"100+ человек молятся",Adopted:"Принято","Adoption Progress":"Прогресс принятия","All Regions":"Все регионы","Alternate Names":"Альтернативные названия","Clear All":"Очистить всё",Countries:"Страны","Countries in this region":"Страны этого региона",Country:"Страна",Engaged:"Вовлечённый","Engagement Progress":"Прогресс вовлечения","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Каждая незадействованная народность принята церковью, приверженной молитве, пожертвованиям и посылке миссионеров","Exact Search":"Точный поиск","Find unreached people groups by region and country.":"Найдите недостигнутые группы людей по регионам и странам.","Full Profile":"Полный профиль",Goal:"Цель","Hide Filters":"Скрыть фильтры",Intercessors:"Ходатаи","Load More":"Загрузить еще","Loading results...":"Загрузка результатов...","Mobilize 100+ people praying daily for each DOXA people group":"Мобилизуйте 100+ человек для ежедневной молитвы за каждую народность DOXA","No One Praying":"Никто не молится","No options found":"Вариантов не найдено","No unengaged people groups by 2033":"К 2033 году не останется незадействованных народов","Not Adopted":"Не принято",Other:"Другое","Page Not Found":"Страница не найдена","People Group":"Группа людей","People Groups":"Группы людей","People committed to praying":"Люди, посвятившие себя молитве",Population:"Население","Prayer Coverage":"Молитвенное покрытие","Prayer coverage progress":"Прогресс молитвенного покрытия",Regions:"Регионы",Religion:"Религия","Search names, country/continent, religions...":"Поиск по именам, странам/континентам, религиям...","See %region% dashboard":"Открыть панель: %region%","See All":"Смотреть все",Select:"Выбрать","Show Filters":"Показать фильтры","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Страна %country% насчитывает %count% групп людей. Проверьте также на карте группы людей, расположенные вдоль границ этой страны.",Total:"Итого","Type to search...":"Введите текст для поиска...","Unengaged people groups":"Невовлечённые группы людей","WAGF Block":"Блок WAGF","WAGF Region":"Регион WAGF","people groups adopted":"принятые группы людей","people groups engaged":"вовлечённые группы людей"},sf={placeholder:"Народ, место, язык, религия",labels:{people:"Народ:",place:"Место:",language:"Язык:",religion:"Религия:"},kinds:{people:"Народ + страна",peopleGroup:"Народ",bloc:"Блок родства",cluster:"Кластер народов",country:"Страна",region:"Регион",family:"Языковая семья",languageKind:"Язык",dialect:"Диалект",religionKind:"Религия"}},rf={prayer:"Молитва",adoption:"Усыновление",engagement:"Вовлечённость","affinity-blocks":"Народы",regions:"Регионы",countries:"Страны","language-families":"Языки",religion:"Религии",family:"Языковая семья",language:"Язык",dialect:"Диалект/вариант",bloc:"Блок родства",cluster:"Кластер",group:"Народ",pgic:"Народ в стране",region:"Регион WAGF",block:"Блок WAGF",country:"Страна"},lf={backToLegend:"返回图例",closeDetailView:"关闭详情视图"},cf={prayForThem:"为他们祷告",adoptThem:"认领他们",moreInfo:"更多信息",zoomIn:"放大",zoomOut:"缩小",switchToLightMode:"切换至浅色模式",switchToDarkMode:"切换至深色模式",resetView:"重置视图",toggleFullscreen:"切换全屏",aboutThisMap:"关于此地图",closeMenu:"关闭菜单",reloadMap:"重新加载地图",showClusters:"显示聚类",clusterSettings:"聚类设置",startAutoFly:"开始自动飞行",stopFlight:"停止飞行",speedLabel:"速度:",speedOption:{slow:"慢",normal:"正常",fast:"快"},shareEmbed:"分享与嵌入"},uf={labels:{country:"国家:",population:"人口:",language:"语言:",religion:"宗教:",languageFamily:"语系:",peopleCommitted:"承诺祷告人数:"},messages:{noDescription:"暂无描述。"}},gf={title:{prayer:"祷告进度",engagement:"参与进度",adoption:"认领进度",languageFamilies:"语系",doxaRegions:"Doxa 区域",affinityBlocs:"亲缘板块",gospelResources:"福音资源"},header:{collapsed:"图例",peopleGroupFallback:"民族群体"},prayer:{needsPrayer:"需要祷告",hasPrayer:"已有祷告",fullPrayerCoverage:"全面祷告覆盖"},progress:{title:"进度",covered:"{total} 个民族群体中已有 {covered} 个被祷告覆盖 · {pct}%",short:"{covered} / {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"需要参与",hasEngagement:"已有参与"},adoption:{needsAdoption:"需要认领",hasAdoption:"已有认领"},columns:{upgs:"UUPGs",population:"人口"},footer:{total:"总计"}},df={menuComingSoon:"菜单即将推出"},pf={clusterByRegion:"按 Doxa 区域",clusterByLanguageFamily:"按语系",clusterByGospelResource:"按福音资源"},ff={header:"当前祷告轮次",lap:"第",upgs:"UUPGs",separator:" / "},hf={placeholder:"民族、地点、语言、宗教",labels:{people:"民族:",place:"地点:",language:"语言:",religion:"宗教:"}};/*! * shared v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function lp(e,t){typeof console<"u"&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const Vo=typeof window<"u",zt=(e,t=!1)=>t?Symbol.for(e):Symbol(e),cp=(e,t,n)=>up({l:e,k:t,s:n}),up=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),$e=e=>typeof e=="number"&&isFinite(e),gp=e=>Br(e)==="[object Date]",qt=e=>Br(e)==="[object RegExp]",Wo=e=>ne(e)&&Object.keys(e).length===0,Oe=Object.assign,dp=Object.create,me=(e=null)=>dp(e);let Fr;const Rt=()=>Fr||(Fr=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:me());function Or(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function xr(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function fp(e){return e=e.replace(/(\w+)\s*=\s*"([^"]*)"/g,(o,a,s)=>`${a}="${xr(s)}"`),e=e.replace(/(\w+)\s*=\s*'([^']*)'/g,(o,a,s)=>`${a}='${xr(s)}'`),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(e)&&(e=e.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach(o=>{e=e.replace(o,"$1javascript:")}),e}const pp=Object.prototype.hasOwnProperty;function lt(e,t){return pp.call(e,t)}const ke=Array.isArray,Ae=e=>typeof e=="function",H=e=>typeof e=="string",re=e=>typeof e=="boolean",ue=e=>e!==null&&typeof e=="object",hp=e=>ue(e)&&Ae(e.then)&&Ae(e.catch),jr=Object.prototype.toString,Br=e=>jr.call(e),ne=e=>{if(!ue(e))return!1;const t=Object.getPrototypeOf(e);return t===null||t.constructor===Object},mp=e=>e==null?"":ke(e)||ne(e)&&e.toString===jr?JSON.stringify(e,null,2):String(e);function bp(e,t=""){return e.reduce((n,o,a)=>a===0?n+o:n+t+o,"")}function Yo(e){let t=e;return()=>++t}const Jo=e=>!ue(e)||ke(e);function Xo(e,t){if(Jo(e)||Jo(t))throw new Error("Invalid value");const n=[{src:e,des:t}];for(;n.length;){const{src:o,des:a}=n.pop();Object.keys(o).forEach(s=>{s!=="__proto__"&&(ue(o[s])&&!ue(a[s])&&(a[s]=Array.isArray(o[s])?[]:me()),Jo(a[s])||Jo(o[s])?a[s]=o[s]:n.push({src:o[s],des:a[s]}))})}}/*! + */function mf(e,t){typeof console<"u"&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const Vo=typeof window<"u",zt=(e,t=!1)=>t?Symbol.for(e):Symbol(e),bf=(e,t,n)=>yf({l:e,k:t,s:n}),yf=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),Te=e=>typeof e=="number"&&isFinite(e),_f=e=>Bi(e)==="[object Date]",qt=e=>Bi(e)==="[object RegExp]",Wo=e=>ne(e)&&Object.keys(e).length===0,De=Object.assign,Af=Object.create,me=(e=null)=>Af(e);let Oi;const Rt=()=>Oi||(Oi=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:me());function Di(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function xi(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function Sf(e){return e=e.replace(/(\w+)\s*=\s*"([^"]*)"/g,(o,a,s)=>`${a}="${xi(s)}"`),e=e.replace(/(\w+)\s*=\s*'([^']*)'/g,(o,a,s)=>`${a}='${xi(s)}'`),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(e)&&(e=e.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach(o=>{e=e.replace(o,"$1javascript:")}),e}const vf=Object.prototype.hasOwnProperty;function lt(e,t){return vf.call(e,t)}const $e=Array.isArray,Ae=e=>typeof e=="function",H=e=>typeof e=="string",ie=e=>typeof e=="boolean",ue=e=>e!==null&&typeof e=="object",$f=e=>ue(e)&&Ae(e.then)&&Ae(e.catch),ji=Object.prototype.toString,Bi=e=>ji.call(e),ne=e=>{if(!ue(e))return!1;const t=Object.getPrototypeOf(e);return t===null||t.constructor===Object},kf=e=>e==null?"":$e(e)||ne(e)&&e.toString===ji?JSON.stringify(e,null,2):String(e);function Ef(e,t=""){return e.reduce((n,o,a)=>a===0?n+o:n+t+o,"")}function Yo(e){let t=e;return()=>++t}const Jo=e=>!ue(e)||$e(e);function Xo(e,t){if(Jo(e)||Jo(t))throw new Error("Invalid value");const n=[{src:e,des:t}];for(;n.length;){const{src:o,des:a}=n.pop();Object.keys(o).forEach(s=>{s!=="__proto__"&&(ue(o[s])&&!ue(a[s])&&(a[s]=Array.isArray(o[s])?[]:me()),Jo(a[s])||Jo(o[s])?a[s]=o[s]:n.push({src:o[s],des:a[s]}))})}}/*! * message-compiler v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function _p(e,t,n){return{line:e,column:t,offset:n}}function Zo(e,t,n){return{start:e,end:t}}const yp=/\{([0-9a-zA-Z]+)\}/g;function Kr(e,...t){return t.length===1&&Ap(t[0])&&(t=t[0]),(!t||!t.hasOwnProperty)&&(t={}),e.replace(yp,(n,o)=>t.hasOwnProperty(o)?t[o]:"")}const Ur=Object.assign,Gr=e=>typeof e=="string",Ap=e=>e!==null&&typeof e=="object";function zr(e,t=""){return e.reduce((n,o,a)=>a===0?n+o:n+t+o,"")}const Ya={USE_MODULO_SYNTAX:1,__EXTEND_POINT__:2},Sp={[Ya.USE_MODULO_SYNTAX]:"Use modulo before '{{0}}'."};function vp(e,t,...n){const o=Kr(Sp[e],...n||[]),a={message:String(o),code:e};return t&&(a.location=t),a}const Q={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16,__EXTEND_POINT__:17},kp={[Q.EXPECTED_TOKEN]:"Expected token: '{0}'",[Q.INVALID_TOKEN_IN_PLACEHOLDER]:"Invalid token in placeholder: '{0}'",[Q.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER]:"Unterminated single quote in placeholder",[Q.UNKNOWN_ESCAPE_SEQUENCE]:"Unknown escape sequence: \\{0}",[Q.INVALID_UNICODE_ESCAPE_SEQUENCE]:"Invalid unicode escape sequence: {0}",[Q.UNBALANCED_CLOSING_BRACE]:"Unbalanced closing brace",[Q.UNTERMINATED_CLOSING_BRACE]:"Unterminated closing brace",[Q.EMPTY_PLACEHOLDER]:"Empty placeholder",[Q.NOT_ALLOW_NEST_PLACEHOLDER]:"Not allowed nest placeholder",[Q.INVALID_LINKED_FORMAT]:"Invalid linked format",[Q.MUST_HAVE_MESSAGES_IN_PLURAL]:"Plural must have messages",[Q.UNEXPECTED_EMPTY_LINKED_MODIFIER]:"Unexpected empty linked modifier",[Q.UNEXPECTED_EMPTY_LINKED_KEY]:"Unexpected empty linked key",[Q.UNEXPECTED_LEXICAL_ANALYSIS]:"Unexpected lexical analysis in token: '{0}'",[Q.UNHANDLED_CODEGEN_NODE_TYPE]:"unhandled codegen node type: '{0}'",[Q.UNHANDLED_MINIFIER_NODE_TYPE]:"unhandled mimifier node type: '{0}'"};function Sn(e,t,n={}){const{domain:o,messages:a,args:s}=n,i=Kr((a||kp)[e]||"",...s||[]),r=new SyntaxError(String(i));return r.code=e,t&&(r.location=t),r.domain=o,r}function Tp(e){throw e}const Dt=" ",Ep="\r",Ue=` -`,$p="\u2028",Lp="\u2029";function Cp(e){const t=e;let n=0,o=1,a=1,s=0;const i=w=>t[w]===Ep&&t[w+1]===Ue,r=w=>t[w]===Ue,l=w=>t[w]===Lp,c=w=>t[w]===$p,u=w=>i(w)||r(w)||l(w)||c(w),f=()=>n,m=()=>o,k=()=>a,N=()=>s,v=w=>i(w)||l(w)||c(w)?Ue:t[w],$=()=>v(n),P=()=>v(n+s);function T(){return s=0,u(n)&&(o++,a=0),i(n)&&n++,n++,a++,t[n]}function _(){return i(n+s)&&s++,s++,t[n+s]}function b(){n=0,o=1,a=1,s=0}function L(w=0){s=w}function A(){const w=n+s;for(;w!==n;)T();s=0}return{index:f,line:m,column:k,peekOffset:N,charAt:v,currentChar:$,currentPeek:P,next:T,peek:_,reset:b,resetPeek:L,skipToPeek:A}}const Ht=void 0,wp=".",qr="'",Np="tokenizer";function Pp(e,t={}){const n=t.location!==!1,o=Cp(e),a=()=>o.index(),s=()=>_p(o.line(),o.column(),o.index()),i=s(),r=a(),l={currentType:14,offset:r,startLoc:i,endLoc:i,lastType:14,lastOffset:r,lastStartLoc:i,lastEndLoc:i,braceNest:0,inLinked:!1,text:""},c=()=>l,{onError:u}=t;function f(g,d,C,...I){const G=c();if(d.column+=C,d.offset+=C,u){const B=n?Zo(G.startLoc,d):null,E=Sn(g,B,{domain:Np,args:I});u(E)}}function m(g,d,C){g.endLoc=s(),g.currentType=d;const I={type:d};return n&&(I.loc=Zo(g.startLoc,g.endLoc)),C!=null&&(I.value=C),I}const k=g=>m(g,14);function N(g,d){return g.currentChar()===d?(g.next(),d):(f(Q.EXPECTED_TOKEN,s(),0,d),"")}function v(g){let d="";for(;g.currentPeek()===Dt||g.currentPeek()===Ue;)d+=g.currentPeek(),g.peek();return d}function $(g){const d=v(g);return g.skipToPeek(),d}function P(g){if(g===Ht)return!1;const d=g.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d===95}function T(g){if(g===Ht)return!1;const d=g.charCodeAt(0);return d>=48&&d<=57}function _(g,d){const{currentType:C}=d;if(C!==2)return!1;v(g);const I=P(g.currentPeek());return g.resetPeek(),I}function b(g,d){const{currentType:C}=d;if(C!==2)return!1;v(g);const I=g.currentPeek()==="-"?g.peek():g.currentPeek(),G=T(I);return g.resetPeek(),G}function L(g,d){const{currentType:C}=d;if(C!==2)return!1;v(g);const I=g.currentPeek()===qr;return g.resetPeek(),I}function A(g,d){const{currentType:C}=d;if(C!==8)return!1;v(g);const I=g.currentPeek()===".";return g.resetPeek(),I}function w(g,d){const{currentType:C}=d;if(C!==9)return!1;v(g);const I=P(g.currentPeek());return g.resetPeek(),I}function D(g,d){const{currentType:C}=d;if(!(C===8||C===12))return!1;v(g);const I=g.currentPeek()===":";return g.resetPeek(),I}function S(g,d){const{currentType:C}=d;if(C!==10)return!1;const I=()=>{const B=g.currentPeek();return B==="{"?P(g.peek()):B==="@"||B==="%"||B==="|"||B===":"||B==="."||B===Dt||!B?!1:B===Ue?(g.peek(),I()):z(g,!1)},G=I();return g.resetPeek(),G}function V(g){v(g);const d=g.currentPeek()==="|";return g.resetPeek(),d}function ae(g){const d=v(g),C=g.currentPeek()==="%"&&g.peek()==="{";return g.resetPeek(),{isModulo:C,hasSpace:d.length>0}}function z(g,d=!0){const C=(G=!1,B="",E=!1)=>{const R=g.currentPeek();return R==="{"?B==="%"?!1:G:R==="@"||!R?B==="%"?!0:G:R==="%"?(g.peek(),C(G,"%",!0)):R==="|"?B==="%"||E?!0:!(B===Dt||B===Ue):R===Dt?(g.peek(),C(!0,Dt,E)):R===Ue?(g.peek(),C(!0,Ue,E)):!0},I=C();return d&&g.resetPeek(),I}function ee(g,d){const C=g.currentChar();return C===Ht?Ht:d(C)?(g.next(),C):null}function Y(g){const d=g.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d>=48&&d<=57||d===95||d===36}function F(g){return ee(g,Y)}function j(g){const d=g.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d>=48&&d<=57||d===95||d===36||d===45}function q(g){return ee(g,j)}function W(g){const d=g.charCodeAt(0);return d>=48&&d<=57}function X(g){return ee(g,W)}function ge(g){const d=g.charCodeAt(0);return d>=48&&d<=57||d>=65&&d<=70||d>=97&&d<=102}function ie(g){return ee(g,ge)}function fe(g){let d="",C="";for(;d=X(g);)C+=d;return C}function oe(g){$(g);const d=g.currentChar();return d!=="%"&&f(Q.EXPECTED_TOKEN,s(),0,d),g.next(),"%"}function le(g){let d="";for(;;){const C=g.currentChar();if(C==="{"||C==="}"||C==="@"||C==="|"||!C)break;if(C==="%")if(z(g))d+=C,g.next();else break;else if(C===Dt||C===Ue)if(z(g))d+=C,g.next();else{if(V(g))break;d+=C,g.next()}else d+=C,g.next()}return d}function Ne(g){$(g);let d="",C="";for(;d=q(g);)C+=d;return g.currentChar()===Ht&&f(Q.UNTERMINATED_CLOSING_BRACE,s(),0),C}function Re(g){$(g);let d="";return g.currentChar()==="-"?(g.next(),d+=`-${fe(g)}`):d+=fe(g),g.currentChar()===Ht&&f(Q.UNTERMINATED_CLOSING_BRACE,s(),0),d}function Ye(g){return g!==qr&&g!==Ue}function nt(g){$(g),N(g,"'");let d="",C="";for(;d=ee(g,Ye);)d==="\\"?C+=Zt(g):C+=d;const I=g.currentChar();return I===Ue||I===Ht?(f(Q.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,s(),0),I===Ue&&(g.next(),N(g,"'")),C):(N(g,"'"),C)}function Zt(g){const d=g.currentChar();switch(d){case"\\":case"'":return g.next(),`\\${d}`;case"u":return ot(g,d,4);case"U":return ot(g,d,6);default:return f(Q.UNKNOWN_ESCAPE_SEQUENCE,s(),0,d),""}}function ot(g,d,C){N(g,d);let I="";for(let G=0;G{const I=g.currentChar();return I==="{"||I==="%"||I==="@"||I==="|"||I==="("||I===")"||!I||I===Dt?C:(C+=I,g.next(),d(C))};return d("")}function M(g){$(g);const d=N(g,"|");return $(g),d}function x(g,d){let C=null;switch(g.currentChar()){case"{":return d.braceNest>=1&&f(Q.NOT_ALLOW_NEST_PLACEHOLDER,s(),0),g.next(),C=m(d,2,"{"),$(g),d.braceNest++,C;case"}":return d.braceNest>0&&d.currentType===2&&f(Q.EMPTY_PLACEHOLDER,s(),0),g.next(),C=m(d,3,"}"),d.braceNest--,d.braceNest>0&&$(g),d.inLinked&&d.braceNest===0&&(d.inLinked=!1),C;case"@":return d.braceNest>0&&f(Q.UNTERMINATED_CLOSING_BRACE,s(),0),C=O(g,d)||k(d),d.braceNest=0,C;default:{let G=!0,B=!0,E=!0;if(V(g))return d.braceNest>0&&f(Q.UNTERMINATED_CLOSING_BRACE,s(),0),C=m(d,1,M(g)),d.braceNest=0,d.inLinked=!1,C;if(d.braceNest>0&&(d.currentType===5||d.currentType===6||d.currentType===7))return f(Q.UNTERMINATED_CLOSING_BRACE,s(),0),d.braceNest=0,U(g,d);if(G=_(g,d))return C=m(d,5,Ne(g)),$(g),C;if(B=b(g,d))return C=m(d,6,Re(g)),$(g),C;if(E=L(g,d))return C=m(d,7,nt(g)),$(g),C;if(!G&&!B&&!E)return C=m(d,13,p(g)),f(Q.INVALID_TOKEN_IN_PLACEHOLDER,s(),0,C.value),$(g),C;break}}return C}function O(g,d){const{currentType:C}=d;let I=null;const G=g.currentChar();switch((C===8||C===9||C===12||C===10)&&(G===Ue||G===Dt)&&f(Q.INVALID_LINKED_FORMAT,s(),0),G){case"@":return g.next(),I=m(d,8,"@"),d.inLinked=!0,I;case".":return $(g),g.next(),m(d,9,".");case":":return $(g),g.next(),m(d,10,":");default:return V(g)?(I=m(d,1,M(g)),d.braceNest=0,d.inLinked=!1,I):A(g,d)||D(g,d)?($(g),O(g,d)):w(g,d)?($(g),m(d,12,y(g))):S(g,d)?($(g),G==="{"?x(g,d)||I:m(d,11,h(g))):(C===8&&f(Q.INVALID_LINKED_FORMAT,s(),0),d.braceNest=0,d.inLinked=!1,U(g,d))}}function U(g,d){let C={type:14};if(d.braceNest>0)return x(g,d)||k(d);if(d.inLinked)return O(g,d)||k(d);switch(g.currentChar()){case"{":return x(g,d)||k(d);case"}":return f(Q.UNBALANCED_CLOSING_BRACE,s(),0),g.next(),m(d,3,"}");case"@":return O(g,d)||k(d);default:{if(V(g))return C=m(d,1,M(g)),d.braceNest=0,d.inLinked=!1,C;const{isModulo:G,hasSpace:B}=ae(g);if(G)return B?m(d,0,le(g)):m(d,4,oe(g));if(z(g))return m(d,0,le(g));break}}return C}function K(){const{currentType:g,offset:d,startLoc:C,endLoc:I}=l;return l.lastType=g,l.lastOffset=d,l.lastStartLoc=C,l.lastEndLoc=I,l.offset=a(),l.startLoc=s(),o.currentChar()===Ht?m(l,14):U(o,l)}return{nextToken:K,currentOffset:a,currentPosition:s,context:c}}const Mp="parser",Ip=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function Rp(e,t,n){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const o=parseInt(t||n,16);return o<=55295||o>=57344?String.fromCodePoint(o):"�"}}}function Dp(e={}){const t=e.location!==!1,{onError:n,onWarn:o}=e;function a(_,b,L,A,...w){const D=_.currentPosition();if(D.offset+=A,D.column+=A,n){const S=t?Zo(L,D):null,V=Sn(b,S,{domain:Mp,args:w});n(V)}}function s(_,b,L,A,...w){const D=_.currentPosition();if(D.offset+=A,D.column+=A,o){const S=t?Zo(L,D):null;o(vp(b,S,w))}}function i(_,b,L){const A={type:_};return t&&(A.start=b,A.end=b,A.loc={start:L,end:L}),A}function r(_,b,L,A){t&&(_.end=b,_.loc&&(_.loc.end=L))}function l(_,b){const L=_.context(),A=i(3,L.offset,L.startLoc);return A.value=b,r(A,_.currentOffset(),_.currentPosition()),A}function c(_,b){const L=_.context(),{lastOffset:A,lastStartLoc:w}=L,D=i(5,A,w);return D.index=parseInt(b,10),_.nextToken(),r(D,_.currentOffset(),_.currentPosition()),D}function u(_,b,L){const A=_.context(),{lastOffset:w,lastStartLoc:D}=A,S=i(4,w,D);return S.key=b,L===!0&&(S.modulo=!0),_.nextToken(),r(S,_.currentOffset(),_.currentPosition()),S}function f(_,b){const L=_.context(),{lastOffset:A,lastStartLoc:w}=L,D=i(9,A,w);return D.value=b.replace(Ip,Rp),_.nextToken(),r(D,_.currentOffset(),_.currentPosition()),D}function m(_){const b=_.nextToken(),L=_.context(),{lastOffset:A,lastStartLoc:w}=L,D=i(8,A,w);return b.type!==12?(a(_,Q.UNEXPECTED_EMPTY_LINKED_MODIFIER,L.lastStartLoc,0),D.value="",r(D,A,w),{nextConsumeToken:b,node:D}):(b.value==null&&a(_,Q.UNEXPECTED_LEXICAL_ANALYSIS,L.lastStartLoc,0,ct(b)),D.value=b.value||"",r(D,_.currentOffset(),_.currentPosition()),{node:D})}function k(_,b){const L=_.context(),A=i(7,L.offset,L.startLoc);return A.value=b,r(A,_.currentOffset(),_.currentPosition()),A}function N(_){const b=_.context(),L=i(6,b.offset,b.startLoc);let A=_.nextToken();if(A.type===9){const w=m(_);L.modifier=w.node,A=w.nextConsumeToken||_.nextToken()}switch(A.type!==10&&a(_,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,ct(A)),A=_.nextToken(),A.type===2&&(A=_.nextToken()),A.type){case 11:A.value==null&&a(_,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,ct(A)),L.key=k(_,A.value||"");break;case 5:A.value==null&&a(_,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,ct(A)),L.key=u(_,A.value||"");break;case 6:A.value==null&&a(_,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,ct(A)),L.key=c(_,A.value||"");break;case 7:A.value==null&&a(_,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,ct(A)),L.key=f(_,A.value||"");break;default:{a(_,Q.UNEXPECTED_EMPTY_LINKED_KEY,b.lastStartLoc,0);const w=_.context(),D=i(7,w.offset,w.startLoc);return D.value="",r(D,w.offset,w.startLoc),L.key=D,r(L,w.offset,w.startLoc),{nextConsumeToken:A,node:L}}}return r(L,_.currentOffset(),_.currentPosition()),{node:L}}function v(_){const b=_.context(),L=b.currentType===1?_.currentOffset():b.offset,A=b.currentType===1?b.endLoc:b.startLoc,w=i(2,L,A);w.items=[];let D=null,S=null;do{const z=D||_.nextToken();switch(D=null,z.type){case 0:z.value==null&&a(_,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,ct(z)),w.items.push(l(_,z.value||""));break;case 6:z.value==null&&a(_,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,ct(z)),w.items.push(c(_,z.value||""));break;case 4:S=!0;break;case 5:z.value==null&&a(_,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,ct(z)),w.items.push(u(_,z.value||"",!!S)),S&&(s(_,Ya.USE_MODULO_SYNTAX,b.lastStartLoc,0,ct(z)),S=null);break;case 7:z.value==null&&a(_,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,ct(z)),w.items.push(f(_,z.value||""));break;case 8:{const ee=N(_);w.items.push(ee.node),D=ee.nextConsumeToken||null;break}}}while(b.currentType!==14&&b.currentType!==1);const V=b.currentType===1?b.lastOffset:_.currentOffset(),ae=b.currentType===1?b.lastEndLoc:_.currentPosition();return r(w,V,ae),w}function $(_,b,L,A){const w=_.context();let D=A.items.length===0;const S=i(1,b,L);S.cases=[],S.cases.push(A);do{const V=v(_);D||(D=V.items.length===0),S.cases.push(V)}while(w.currentType!==14);return D&&a(_,Q.MUST_HAVE_MESSAGES_IN_PLURAL,L,0),r(S,_.currentOffset(),_.currentPosition()),S}function P(_){const b=_.context(),{offset:L,startLoc:A}=b,w=v(_);return b.currentType===14?w:$(_,L,A,w)}function T(_){const b=Pp(_,Ur({},e)),L=b.context(),A=i(0,L.offset,L.startLoc);return t&&A.loc&&(A.loc.source=_),A.body=P(b),e.onCacheKey&&(A.cacheKey=e.onCacheKey(_)),L.currentType!==14&&a(b,Q.UNEXPECTED_LEXICAL_ANALYSIS,L.lastStartLoc,0,_[L.offset]||""),r(A,b.currentOffset(),b.currentPosition()),A}return{parse:T}}function ct(e){if(e.type===14)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function Fp(e,t={}){const n={ast:e,helpers:new Set};return{context:()=>n,helper:s=>(n.helpers.add(s),s)}}function Hr(e,t){for(let n=0;nVr(n)),e}function Vr(e){if(e.items.length===1){const t=e.items[0];(t.type===3||t.type===9)&&(e.static=t.value,delete t.value)}else{const t=[];for(let n=0;ni;function l(v,$){i.code+=v}function c(v,$=!0){const P=$?o:"";l(a?P+" ".repeat(v):P)}function u(v=!0){const $=++i.indentLevel;v&&c($)}function f(v=!0){const $=--i.indentLevel;v&&c($)}function m(){c(i.indentLevel)}return{context:r,push:l,indent:u,deindent:f,newline:m,helper:v=>`_${v}`,needIndent:()=>i.needIndent}}function Up(e,t){const{helper:n}=e;e.push(`${n("linked")}(`),kn(e,t.key),t.modifier?(e.push(", "),kn(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function Gp(e,t){const{helper:n,needIndent:o}=e;e.push(`${n("normalize")}([`),e.indent(o());const a=t.items.length;for(let s=0;s1){e.push(`${n("plural")}([`),e.indent(o());const a=t.cases.length;for(let s=0;s{const n=Gr(t.mode)?t.mode:"normal",o=Gr(t.filename)?t.filename:"message.intl";t.sourceMap;const a=t.breakLineCode!=null?t.breakLineCode:n==="arrow"?";":` -`,s=t.needIndent?t.needIndent:n!=="arrow",i=e.helpers||[],r=Kp(e,{filename:o,breakLineCode:a,needIndent:s});r.push(n==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),r.indent(s),i.length>0&&(r.push(`const { ${zr(i.map(u=>`${u}: _${u}`),", ")} } = ctx`),r.newline()),r.push("return "),kn(r,e),r.deindent(s),r.push("}"),delete e.helpers;const{code:l,map:c}=r.context();return{ast:e,code:l,map:c?c.toJSON():void 0}};function Vp(e,t={}){const n=Ur({},t),o=!!n.jit,a=!!n.minify,s=n.optimize==null?!0:n.optimize,r=Dp(n).parse(e);return o?(s&&xp(r),a&&vn(r),{ast:r,code:""}):(Op(r,n),Hp(r,n))}/*! + */function Tf(e,t,n){return{line:e,column:t,offset:n}}function Zo(e,t,n){return{start:e,end:t}}const Cf=/\{([0-9a-zA-Z]+)\}/g;function Ki(e,...t){return t.length===1&&Nf(t[0])&&(t=t[0]),(!t||!t.hasOwnProperty)&&(t={}),e.replace(Cf,(n,o)=>t.hasOwnProperty(o)?t[o]:"")}const Ui=Object.assign,Gi=e=>typeof e=="string",Nf=e=>e!==null&&typeof e=="object";function zi(e,t=""){return e.reduce((n,o,a)=>a===0?n+o:n+t+o,"")}const Ya={USE_MODULO_SYNTAX:1,__EXTEND_POINT__:2},Lf={[Ya.USE_MODULO_SYNTAX]:"Use modulo before '{{0}}'."};function wf(e,t,...n){const o=Ki(Lf[e],...n||[]),a={message:String(o),code:e};return t&&(a.location=t),a}const Q={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16,__EXTEND_POINT__:17},Pf={[Q.EXPECTED_TOKEN]:"Expected token: '{0}'",[Q.INVALID_TOKEN_IN_PLACEHOLDER]:"Invalid token in placeholder: '{0}'",[Q.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER]:"Unterminated single quote in placeholder",[Q.UNKNOWN_ESCAPE_SEQUENCE]:"Unknown escape sequence: \\{0}",[Q.INVALID_UNICODE_ESCAPE_SEQUENCE]:"Invalid unicode escape sequence: {0}",[Q.UNBALANCED_CLOSING_BRACE]:"Unbalanced closing brace",[Q.UNTERMINATED_CLOSING_BRACE]:"Unterminated closing brace",[Q.EMPTY_PLACEHOLDER]:"Empty placeholder",[Q.NOT_ALLOW_NEST_PLACEHOLDER]:"Not allowed nest placeholder",[Q.INVALID_LINKED_FORMAT]:"Invalid linked format",[Q.MUST_HAVE_MESSAGES_IN_PLURAL]:"Plural must have messages",[Q.UNEXPECTED_EMPTY_LINKED_MODIFIER]:"Unexpected empty linked modifier",[Q.UNEXPECTED_EMPTY_LINKED_KEY]:"Unexpected empty linked key",[Q.UNEXPECTED_LEXICAL_ANALYSIS]:"Unexpected lexical analysis in token: '{0}'",[Q.UNHANDLED_CODEGEN_NODE_TYPE]:"unhandled codegen node type: '{0}'",[Q.UNHANDLED_MINIFIER_NODE_TYPE]:"unhandled mimifier node type: '{0}'"};function Sn(e,t,n={}){const{domain:o,messages:a,args:s}=n,r=Ki((a||Pf)[e]||"",...s||[]),i=new SyntaxError(String(r));return i.code=e,t&&(i.location=t),i.domain=o,i}function Mf(e){throw e}const Ft=" ",If="\r",Ue=` +`,Rf="\u2028",Ff="\u2029";function Of(e){const t=e;let n=0,o=1,a=1,s=0;const r=L=>t[L]===If&&t[L+1]===Ue,i=L=>t[L]===Ue,l=L=>t[L]===Ff,c=L=>t[L]===Rf,u=L=>r(L)||i(L)||l(L)||c(L),p=()=>n,m=()=>o,$=()=>a,w=()=>s,v=L=>r(L)||l(L)||c(L)?Ue:t[L],T=()=>v(n),P=()=>v(n+s);function k(){return s=0,u(n)&&(o++,a=0),r(n)&&n++,n++,a++,t[n]}function y(){return r(n+s)&&s++,s++,t[n+s]}function b(){n=0,o=1,a=1,s=0}function C(L=0){s=L}function A(){const L=n+s;for(;L!==n;)k();s=0}return{index:p,line:m,column:$,peekOffset:w,charAt:v,currentChar:T,currentPeek:P,next:k,peek:y,reset:b,resetPeek:C,skipToPeek:A}}const Ht=void 0,Df=".",qi="'",xf="tokenizer";function jf(e,t={}){const n=t.location!==!1,o=Of(e),a=()=>o.index(),s=()=>Tf(o.line(),o.column(),o.index()),r=s(),i=a(),l={currentType:14,offset:i,startLoc:r,endLoc:r,lastType:14,lastOffset:i,lastStartLoc:r,lastEndLoc:r,braceNest:0,inLinked:!1,text:""},c=()=>l,{onError:u}=t;function p(g,d,N,...I){const G=c();if(d.column+=N,d.offset+=N,u){const B=n?Zo(G.startLoc,d):null,E=Sn(g,B,{domain:xf,args:I});u(E)}}function m(g,d,N){g.endLoc=s(),g.currentType=d;const I={type:d};return n&&(I.loc=Zo(g.startLoc,g.endLoc)),N!=null&&(I.value=N),I}const $=g=>m(g,14);function w(g,d){return g.currentChar()===d?(g.next(),d):(p(Q.EXPECTED_TOKEN,s(),0,d),"")}function v(g){let d="";for(;g.currentPeek()===Ft||g.currentPeek()===Ue;)d+=g.currentPeek(),g.peek();return d}function T(g){const d=v(g);return g.skipToPeek(),d}function P(g){if(g===Ht)return!1;const d=g.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d===95}function k(g){if(g===Ht)return!1;const d=g.charCodeAt(0);return d>=48&&d<=57}function y(g,d){const{currentType:N}=d;if(N!==2)return!1;v(g);const I=P(g.currentPeek());return g.resetPeek(),I}function b(g,d){const{currentType:N}=d;if(N!==2)return!1;v(g);const I=g.currentPeek()==="-"?g.peek():g.currentPeek(),G=k(I);return g.resetPeek(),G}function C(g,d){const{currentType:N}=d;if(N!==2)return!1;v(g);const I=g.currentPeek()===qi;return g.resetPeek(),I}function A(g,d){const{currentType:N}=d;if(N!==8)return!1;v(g);const I=g.currentPeek()===".";return g.resetPeek(),I}function L(g,d){const{currentType:N}=d;if(N!==9)return!1;v(g);const I=P(g.currentPeek());return g.resetPeek(),I}function F(g,d){const{currentType:N}=d;if(!(N===8||N===12))return!1;v(g);const I=g.currentPeek()===":";return g.resetPeek(),I}function S(g,d){const{currentType:N}=d;if(N!==10)return!1;const I=()=>{const B=g.currentPeek();return B==="{"?P(g.peek()):B==="@"||B==="%"||B==="|"||B===":"||B==="."||B===Ft||!B?!1:B===Ue?(g.peek(),I()):z(g,!1)},G=I();return g.resetPeek(),G}function V(g){v(g);const d=g.currentPeek()==="|";return g.resetPeek(),d}function ae(g){const d=v(g),N=g.currentPeek()==="%"&&g.peek()==="{";return g.resetPeek(),{isModulo:N,hasSpace:d.length>0}}function z(g,d=!0){const N=(G=!1,B="",E=!1)=>{const R=g.currentPeek();return R==="{"?B==="%"?!1:G:R==="@"||!R?B==="%"?!0:G:R==="%"?(g.peek(),N(G,"%",!0)):R==="|"?B==="%"||E?!0:!(B===Ft||B===Ue):R===Ft?(g.peek(),N(!0,Ft,E)):R===Ue?(g.peek(),N(!0,Ue,E)):!0},I=N();return d&&g.resetPeek(),I}function ee(g,d){const N=g.currentChar();return N===Ht?Ht:d(N)?(g.next(),N):null}function Y(g){const d=g.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d>=48&&d<=57||d===95||d===36}function O(g){return ee(g,Y)}function j(g){const d=g.charCodeAt(0);return d>=97&&d<=122||d>=65&&d<=90||d>=48&&d<=57||d===95||d===36||d===45}function q(g){return ee(g,j)}function W(g){const d=g.charCodeAt(0);return d>=48&&d<=57}function X(g){return ee(g,W)}function ge(g){const d=g.charCodeAt(0);return d>=48&&d<=57||d>=65&&d<=70||d>=97&&d<=102}function re(g){return ee(g,ge)}function pe(g){let d="",N="";for(;d=X(g);)N+=d;return N}function oe(g){T(g);const d=g.currentChar();return d!=="%"&&p(Q.EXPECTED_TOKEN,s(),0,d),g.next(),"%"}function le(g){let d="";for(;;){const N=g.currentChar();if(N==="{"||N==="}"||N==="@"||N==="|"||!N)break;if(N==="%")if(z(g))d+=N,g.next();else break;else if(N===Ft||N===Ue)if(z(g))d+=N,g.next();else{if(V(g))break;d+=N,g.next()}else d+=N,g.next()}return d}function we(g){T(g);let d="",N="";for(;d=q(g);)N+=d;return g.currentChar()===Ht&&p(Q.UNTERMINATED_CLOSING_BRACE,s(),0),N}function Re(g){T(g);let d="";return g.currentChar()==="-"?(g.next(),d+=`-${pe(g)}`):d+=pe(g),g.currentChar()===Ht&&p(Q.UNTERMINATED_CLOSING_BRACE,s(),0),d}function Ye(g){return g!==qi&&g!==Ue}function nt(g){T(g),w(g,"'");let d="",N="";for(;d=ee(g,Ye);)d==="\\"?N+=Zt(g):N+=d;const I=g.currentChar();return I===Ue||I===Ht?(p(Q.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,s(),0),I===Ue&&(g.next(),w(g,"'")),N):(w(g,"'"),N)}function Zt(g){const d=g.currentChar();switch(d){case"\\":case"'":return g.next(),`\\${d}`;case"u":return ot(g,d,4);case"U":return ot(g,d,6);default:return p(Q.UNKNOWN_ESCAPE_SEQUENCE,s(),0,d),""}}function ot(g,d,N){w(g,d);let I="";for(let G=0;G{const I=g.currentChar();return I==="{"||I==="%"||I==="@"||I==="|"||I==="("||I===")"||!I||I===Ft?N:(N+=I,g.next(),d(N))};return d("")}function M(g){T(g);const d=w(g,"|");return T(g),d}function x(g,d){let N=null;switch(g.currentChar()){case"{":return d.braceNest>=1&&p(Q.NOT_ALLOW_NEST_PLACEHOLDER,s(),0),g.next(),N=m(d,2,"{"),T(g),d.braceNest++,N;case"}":return d.braceNest>0&&d.currentType===2&&p(Q.EMPTY_PLACEHOLDER,s(),0),g.next(),N=m(d,3,"}"),d.braceNest--,d.braceNest>0&&T(g),d.inLinked&&d.braceNest===0&&(d.inLinked=!1),N;case"@":return d.braceNest>0&&p(Q.UNTERMINATED_CLOSING_BRACE,s(),0),N=D(g,d)||$(d),d.braceNest=0,N;default:{let G=!0,B=!0,E=!0;if(V(g))return d.braceNest>0&&p(Q.UNTERMINATED_CLOSING_BRACE,s(),0),N=m(d,1,M(g)),d.braceNest=0,d.inLinked=!1,N;if(d.braceNest>0&&(d.currentType===5||d.currentType===6||d.currentType===7))return p(Q.UNTERMINATED_CLOSING_BRACE,s(),0),d.braceNest=0,U(g,d);if(G=y(g,d))return N=m(d,5,we(g)),T(g),N;if(B=b(g,d))return N=m(d,6,Re(g)),T(g),N;if(E=C(g,d))return N=m(d,7,nt(g)),T(g),N;if(!G&&!B&&!E)return N=m(d,13,f(g)),p(Q.INVALID_TOKEN_IN_PLACEHOLDER,s(),0,N.value),T(g),N;break}}return N}function D(g,d){const{currentType:N}=d;let I=null;const G=g.currentChar();switch((N===8||N===9||N===12||N===10)&&(G===Ue||G===Ft)&&p(Q.INVALID_LINKED_FORMAT,s(),0),G){case"@":return g.next(),I=m(d,8,"@"),d.inLinked=!0,I;case".":return T(g),g.next(),m(d,9,".");case":":return T(g),g.next(),m(d,10,":");default:return V(g)?(I=m(d,1,M(g)),d.braceNest=0,d.inLinked=!1,I):A(g,d)||F(g,d)?(T(g),D(g,d)):L(g,d)?(T(g),m(d,12,_(g))):S(g,d)?(T(g),G==="{"?x(g,d)||I:m(d,11,h(g))):(N===8&&p(Q.INVALID_LINKED_FORMAT,s(),0),d.braceNest=0,d.inLinked=!1,U(g,d))}}function U(g,d){let N={type:14};if(d.braceNest>0)return x(g,d)||$(d);if(d.inLinked)return D(g,d)||$(d);switch(g.currentChar()){case"{":return x(g,d)||$(d);case"}":return p(Q.UNBALANCED_CLOSING_BRACE,s(),0),g.next(),m(d,3,"}");case"@":return D(g,d)||$(d);default:{if(V(g))return N=m(d,1,M(g)),d.braceNest=0,d.inLinked=!1,N;const{isModulo:G,hasSpace:B}=ae(g);if(G)return B?m(d,0,le(g)):m(d,4,oe(g));if(z(g))return m(d,0,le(g));break}}return N}function K(){const{currentType:g,offset:d,startLoc:N,endLoc:I}=l;return l.lastType=g,l.lastOffset=d,l.lastStartLoc=N,l.lastEndLoc=I,l.offset=a(),l.startLoc=s(),o.currentChar()===Ht?m(l,14):U(o,l)}return{nextToken:K,currentOffset:a,currentPosition:s,context:c}}const Bf="parser",Kf=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function Uf(e,t,n){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const o=parseInt(t||n,16);return o<=55295||o>=57344?String.fromCodePoint(o):"�"}}}function Gf(e={}){const t=e.location!==!1,{onError:n,onWarn:o}=e;function a(y,b,C,A,...L){const F=y.currentPosition();if(F.offset+=A,F.column+=A,n){const S=t?Zo(C,F):null,V=Sn(b,S,{domain:Bf,args:L});n(V)}}function s(y,b,C,A,...L){const F=y.currentPosition();if(F.offset+=A,F.column+=A,o){const S=t?Zo(C,F):null;o(wf(b,S,L))}}function r(y,b,C){const A={type:y};return t&&(A.start=b,A.end=b,A.loc={start:C,end:C}),A}function i(y,b,C,A){t&&(y.end=b,y.loc&&(y.loc.end=C))}function l(y,b){const C=y.context(),A=r(3,C.offset,C.startLoc);return A.value=b,i(A,y.currentOffset(),y.currentPosition()),A}function c(y,b){const C=y.context(),{lastOffset:A,lastStartLoc:L}=C,F=r(5,A,L);return F.index=parseInt(b,10),y.nextToken(),i(F,y.currentOffset(),y.currentPosition()),F}function u(y,b,C){const A=y.context(),{lastOffset:L,lastStartLoc:F}=A,S=r(4,L,F);return S.key=b,C===!0&&(S.modulo=!0),y.nextToken(),i(S,y.currentOffset(),y.currentPosition()),S}function p(y,b){const C=y.context(),{lastOffset:A,lastStartLoc:L}=C,F=r(9,A,L);return F.value=b.replace(Kf,Uf),y.nextToken(),i(F,y.currentOffset(),y.currentPosition()),F}function m(y){const b=y.nextToken(),C=y.context(),{lastOffset:A,lastStartLoc:L}=C,F=r(8,A,L);return b.type!==12?(a(y,Q.UNEXPECTED_EMPTY_LINKED_MODIFIER,C.lastStartLoc,0),F.value="",i(F,A,L),{nextConsumeToken:b,node:F}):(b.value==null&&a(y,Q.UNEXPECTED_LEXICAL_ANALYSIS,C.lastStartLoc,0,ct(b)),F.value=b.value||"",i(F,y.currentOffset(),y.currentPosition()),{node:F})}function $(y,b){const C=y.context(),A=r(7,C.offset,C.startLoc);return A.value=b,i(A,y.currentOffset(),y.currentPosition()),A}function w(y){const b=y.context(),C=r(6,b.offset,b.startLoc);let A=y.nextToken();if(A.type===9){const L=m(y);C.modifier=L.node,A=L.nextConsumeToken||y.nextToken()}switch(A.type!==10&&a(y,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,ct(A)),A=y.nextToken(),A.type===2&&(A=y.nextToken()),A.type){case 11:A.value==null&&a(y,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,ct(A)),C.key=$(y,A.value||"");break;case 5:A.value==null&&a(y,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,ct(A)),C.key=u(y,A.value||"");break;case 6:A.value==null&&a(y,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,ct(A)),C.key=c(y,A.value||"");break;case 7:A.value==null&&a(y,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,ct(A)),C.key=p(y,A.value||"");break;default:{a(y,Q.UNEXPECTED_EMPTY_LINKED_KEY,b.lastStartLoc,0);const L=y.context(),F=r(7,L.offset,L.startLoc);return F.value="",i(F,L.offset,L.startLoc),C.key=F,i(C,L.offset,L.startLoc),{nextConsumeToken:A,node:C}}}return i(C,y.currentOffset(),y.currentPosition()),{node:C}}function v(y){const b=y.context(),C=b.currentType===1?y.currentOffset():b.offset,A=b.currentType===1?b.endLoc:b.startLoc,L=r(2,C,A);L.items=[];let F=null,S=null;do{const z=F||y.nextToken();switch(F=null,z.type){case 0:z.value==null&&a(y,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,ct(z)),L.items.push(l(y,z.value||""));break;case 6:z.value==null&&a(y,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,ct(z)),L.items.push(c(y,z.value||""));break;case 4:S=!0;break;case 5:z.value==null&&a(y,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,ct(z)),L.items.push(u(y,z.value||"",!!S)),S&&(s(y,Ya.USE_MODULO_SYNTAX,b.lastStartLoc,0,ct(z)),S=null);break;case 7:z.value==null&&a(y,Q.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,ct(z)),L.items.push(p(y,z.value||""));break;case 8:{const ee=w(y);L.items.push(ee.node),F=ee.nextConsumeToken||null;break}}}while(b.currentType!==14&&b.currentType!==1);const V=b.currentType===1?b.lastOffset:y.currentOffset(),ae=b.currentType===1?b.lastEndLoc:y.currentPosition();return i(L,V,ae),L}function T(y,b,C,A){const L=y.context();let F=A.items.length===0;const S=r(1,b,C);S.cases=[],S.cases.push(A);do{const V=v(y);F||(F=V.items.length===0),S.cases.push(V)}while(L.currentType!==14);return F&&a(y,Q.MUST_HAVE_MESSAGES_IN_PLURAL,C,0),i(S,y.currentOffset(),y.currentPosition()),S}function P(y){const b=y.context(),{offset:C,startLoc:A}=b,L=v(y);return b.currentType===14?L:T(y,C,A,L)}function k(y){const b=jf(y,Ui({},e)),C=b.context(),A=r(0,C.offset,C.startLoc);return t&&A.loc&&(A.loc.source=y),A.body=P(b),e.onCacheKey&&(A.cacheKey=e.onCacheKey(y)),C.currentType!==14&&a(b,Q.UNEXPECTED_LEXICAL_ANALYSIS,C.lastStartLoc,0,y[C.offset]||""),i(A,b.currentOffset(),b.currentPosition()),A}return{parse:k}}function ct(e){if(e.type===14)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function zf(e,t={}){const n={ast:e,helpers:new Set};return{context:()=>n,helper:s=>(n.helpers.add(s),s)}}function Hi(e,t){for(let n=0;nVi(n)),e}function Vi(e){if(e.items.length===1){const t=e.items[0];(t.type===3||t.type===9)&&(e.static=t.value,delete t.value)}else{const t=[];for(let n=0;nr;function l(v,T){r.code+=v}function c(v,T=!0){const P=T?o:"";l(a?P+" ".repeat(v):P)}function u(v=!0){const T=++r.indentLevel;v&&c(T)}function p(v=!0){const T=--r.indentLevel;v&&c(T)}function m(){c(r.indentLevel)}return{context:i,push:l,indent:u,deindent:p,newline:m,helper:v=>`_${v}`,needIndent:()=>r.needIndent}}function Jf(e,t){const{helper:n}=e;e.push(`${n("linked")}(`),$n(e,t.key),t.modifier?(e.push(", "),$n(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function Xf(e,t){const{helper:n,needIndent:o}=e;e.push(`${n("normalize")}([`),e.indent(o());const a=t.items.length;for(let s=0;s1){e.push(`${n("plural")}([`),e.indent(o());const a=t.cases.length;for(let s=0;s{const n=Gi(t.mode)?t.mode:"normal",o=Gi(t.filename)?t.filename:"message.intl";t.sourceMap;const a=t.breakLineCode!=null?t.breakLineCode:n==="arrow"?";":` +`,s=t.needIndent?t.needIndent:n!=="arrow",r=e.helpers||[],i=Yf(e,{filename:o,breakLineCode:a,needIndent:s});i.push(n==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),i.indent(s),r.length>0&&(i.push(`const { ${zi(r.map(u=>`${u}: _${u}`),", ")} } = ctx`),i.newline()),i.push("return "),$n(i,e),i.deindent(s),i.push("}"),delete e.helpers;const{code:l,map:c}=i.context();return{ast:e,code:l,map:c?c.toJSON():void 0}};function th(e,t={}){const n=Ui({},t),o=!!n.jit,a=!!n.minify,s=n.optimize==null?!0:n.optimize,i=Gf(n).parse(e);return o?(s&&Hf(i),a&&vn(i),{ast:i,code:""}):(qf(i,n),eh(i,n))}/*! * core-base v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function Wp(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Rt().__INTLIFY_PROD_DEVTOOLS__=!1),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(Rt().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(Rt().__INTLIFY_DROP_MESSAGE_COMPILER__=!1)}function At(e){return ue(e)&&Xa(e)===0&&(lt(e,"b")||lt(e,"body"))}const Wr=["b","body"];function Yp(e){return Vt(e,Wr)}const Yr=["c","cases"];function Jp(e){return Vt(e,Yr,[])}const Jr=["s","static"];function Xp(e){return Vt(e,Jr)}const Xr=["i","items"];function Zp(e){return Vt(e,Xr,[])}const Zr=["t","type"];function Xa(e){return Vt(e,Zr)}const Qr=["v","value"];function Qo(e,t){const n=Vt(e,Qr);if(n!=null)return n;throw Qn(t)}const el=["m","modifier"];function Qp(e){return Vt(e,el)}const tl=["k","key"];function eh(e){const t=Vt(e,tl);if(t)return t;throw Qn(6)}function Vt(e,t,n){for(let o=0;o{i===void 0?i=r:i+=r},m[1]=()=>{i!==void 0&&(t.push(i),i=void 0)},m[2]=()=>{m[0](),a++},m[3]=()=>{if(a>0)a--,o=4,m[0]();else{if(a=0,i===void 0||(i=sh(i),i===!1))return!1;m[1]()}};function k(){const N=e[n+1];if(o===5&&N==="'"||o===6&&N==='"')return n++,r="\\"+N,m[0](),!0}for(;o!==null;)if(n++,s=e[n],!(s==="\\"&&k())){if(l=ah(s),f=Wt[o],c=f[l]||f.l||8,c===8||(o=c[0],c[1]!==void 0&&(u=m[c[1]],u&&(r=s,u()===!1))))return;if(o===7)return t}}const ol=new Map;function rh(e,t){return ue(e)?e[t]:null}function lh(e,t){if(!ue(e))return null;let n=ol.get(t);if(n||(n=ih(t),n&&ol.set(t,n)),!n)return null;const o=n.length;let a=e,s=0;for(;se,uh=e=>"",gh="text",dh=e=>e.length===0?"":bp(e),fh=mp;function al(e,t){return e=Math.abs(e),t===2?e?e>1?1:0:1:e?Math.min(e,2):0}function ph(e){const t=$e(e.pluralIndex)?e.pluralIndex:-1;return e.named&&($e(e.named.count)||$e(e.named.n))?$e(e.named.count)?e.named.count:$e(e.named.n)?e.named.n:t:t}function hh(e,t){t.count||(t.count=e),t.n||(t.n=e)}function mh(e={}){const t=e.locale,n=ph(e),o=ue(e.pluralRules)&&H(t)&&Ae(e.pluralRules[t])?e.pluralRules[t]:al,a=ue(e.pluralRules)&&H(t)&&Ae(e.pluralRules[t])?al:void 0,s=P=>P[o(n,P.length,a)],i=e.list||[],r=P=>i[P],l=e.named||me();$e(e.pluralIndex)&&hh(n,l);const c=P=>l[P];function u(P){const T=Ae(e.messages)?e.messages(P):ue(e.messages)?e.messages[P]:!1;return T||(e.parent?e.parent.message(P):uh)}const f=P=>e.modifiers?e.modifiers[P]:ch,m=ne(e.processor)&&Ae(e.processor.normalize)?e.processor.normalize:dh,k=ne(e.processor)&&Ae(e.processor.interpolate)?e.processor.interpolate:fh,N=ne(e.processor)&&H(e.processor.type)?e.processor.type:gh,$={list:r,named:c,plural:s,linked:(P,...T)=>{const[_,b]=T;let L="text",A="";T.length===1?ue(_)?(A=_.modifier||A,L=_.type||L):H(_)&&(A=_||A):T.length===2&&(H(_)&&(A=_||A),H(b)&&(L=b||L));const w=u(P)($),D=L==="vnode"&&ke(w)&&A?w[0]:w;return A?f(A)(D,L):D},message:u,type:N,interpolate:k,normalize:m,values:Oe(me(),i,l)};return $}let eo=null;function bh(e){eo=e}function _h(e,t,n){eo&&eo.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:n})}const yh=Ah("function:translate");function Ah(e){return t=>eo&&eo.emit(e,t)}const Sh=Ya.__EXTEND_POINT__,rn=Yo(Sh),vh={FALLBACK_TO_TRANSLATE:rn(),CANNOT_FORMAT_NUMBER:rn(),FALLBACK_TO_NUMBER_FORMAT:rn(),CANNOT_FORMAT_DATE:rn(),FALLBACK_TO_DATE_FORMAT:rn(),EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:rn(),__EXTEND_POINT__:rn()},sl=Q.__EXTEND_POINT__,ln=Yo(sl),ut={INVALID_ARGUMENT:sl,INVALID_DATE_ARGUMENT:ln(),INVALID_ISO_DATE_ARGUMENT:ln(),NOT_SUPPORT_NON_STRING_MESSAGE:ln(),NOT_SUPPORT_LOCALE_PROMISE_VALUE:ln(),NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:ln(),NOT_SUPPORT_LOCALE_TYPE:ln(),__EXTEND_POINT__:ln()};function St(e){return Sn(e,null,void 0)}function Za(e,t){return t.locale!=null?il(t.locale):il(e.locale)}let Qa;function il(e){if(H(e))return e;if(Ae(e)){if(e.resolvedOnce&&Qa!=null)return Qa;if(e.constructor.name==="Function"){const t=e();if(hp(t))throw St(ut.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return Qa=t}else throw St(ut.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw St(ut.NOT_SUPPORT_LOCALE_TYPE)}function kh(e,t,n){return[...new Set([n,...ke(t)?t:ue(t)?Object.keys(t):H(t)?[t]:[n]])]}function rl(e,t,n){const o=H(n)?n:Tn,a=e;a.__localeChainCache||(a.__localeChainCache=new Map);let s=a.__localeChainCache.get(o);if(!s){s=[];let i=[n];for(;ke(i);)i=ll(s,i,t);const r=ke(t)||!ne(t)?t:t.default?t.default:null;i=H(r)?[r]:r,ke(i)&&ll(s,i,!1),a.__localeChainCache.set(o,s)}return s}function ll(e,t,n){let o=!0;for(let a=0;a`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function Lh(){return{upper:(e,t)=>t==="text"&&H(e)?e.toUpperCase():t==="vnode"&&ue(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>t==="text"&&H(e)?e.toLowerCase():t==="vnode"&&ue(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>t==="text"&&H(e)?ul(e):t==="vnode"&&ue(e)&&"__v_isVNode"in e?ul(e.children):e}}let gl;function dl(e){gl=e}let fl;function Ch(e){fl=e}let pl;function wh(e){pl=e}let hl=null;const Nh=e=>{hl=e},Ph=()=>hl;let ml=null;const bl=e=>{ml=e},Mh=()=>ml;let _l=0;function Ih(e={}){const t=Ae(e.onWarn)?e.onWarn:lp,n=H(e.version)?e.version:$h,o=H(e.locale)||Ae(e.locale)?e.locale:Tn,a=Ae(o)?Tn:o,s=ke(e.fallbackLocale)||ne(e.fallbackLocale)||H(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:a,i=ne(e.messages)?e.messages:es(a),r=ne(e.datetimeFormats)?e.datetimeFormats:es(a),l=ne(e.numberFormats)?e.numberFormats:es(a),c=Oe(me(),e.modifiers,Lh()),u=e.pluralRules||me(),f=Ae(e.missing)?e.missing:null,m=re(e.missingWarn)||qt(e.missingWarn)?e.missingWarn:!0,k=re(e.fallbackWarn)||qt(e.fallbackWarn)?e.fallbackWarn:!0,N=!!e.fallbackFormat,v=!!e.unresolving,$=Ae(e.postTranslation)?e.postTranslation:null,P=ne(e.processor)?e.processor:null,T=re(e.warnHtmlMessage)?e.warnHtmlMessage:!0,_=!!e.escapeParameter,b=Ae(e.messageCompiler)?e.messageCompiler:gl,L=Ae(e.messageResolver)?e.messageResolver:fl||rh,A=Ae(e.localeFallbacker)?e.localeFallbacker:pl||kh,w=ue(e.fallbackContext)?e.fallbackContext:void 0,D=e,S=ue(D.__datetimeFormatters)?D.__datetimeFormatters:new Map,V=ue(D.__numberFormatters)?D.__numberFormatters:new Map,ae=ue(D.__meta)?D.__meta:{};_l++;const z={version:n,cid:_l,locale:o,fallbackLocale:s,messages:i,modifiers:c,pluralRules:u,missing:f,missingWarn:m,fallbackWarn:k,fallbackFormat:N,unresolving:v,postTranslation:$,processor:P,warnHtmlMessage:T,escapeParameter:_,messageCompiler:b,messageResolver:L,localeFallbacker:A,fallbackContext:w,onWarn:t,__meta:ae};return z.datetimeFormats=r,z.numberFormats=l,z.__datetimeFormatters=S,z.__numberFormatters=V,__INTLIFY_PROD_DEVTOOLS__&&_h(z,n,ae),z}const es=e=>({[e]:me()});function ts(e,t,n,o,a){const{missing:s,onWarn:i}=e;if(s!==null){const r=s(e,n,t,a);return H(r)?r:t}else return t}function to(e,t,n){const o=e;o.__localeChainCache=new Map,e.localeFallbacker(e,n,t)}function Rh(e,t){return e===t?!1:e.split("-")[0]===t.split("-")[0]}function Dh(e,t){const n=t.indexOf(e);if(n===-1)return!1;for(let o=n+1;oFh(n,e)}function Fh(e,t){const n=Yp(t);if(n==null)throw Qn(0);if(Xa(n)===1){const s=Jp(n);return e.plural(s.reduce((i,r)=>[...i,yl(e,r)],[]))}else return yl(e,n)}function yl(e,t){const n=Xp(t);if(n!=null)return e.type==="text"?n:e.normalize([n]);{const o=Zp(t).reduce((a,s)=>[...a,os(e,s)],[]);return e.normalize(o)}}function os(e,t){const n=Xa(t);switch(n){case 3:return Qo(t,n);case 9:return Qo(t,n);case 4:{const o=t;if(lt(o,"k")&&o.k)return e.interpolate(e.named(o.k));if(lt(o,"key")&&o.key)return e.interpolate(e.named(o.key));throw Qn(n)}case 5:{const o=t;if(lt(o,"i")&&$e(o.i))return e.interpolate(e.list(o.i));if(lt(o,"index")&&$e(o.index))return e.interpolate(e.list(o.index));throw Qn(n)}case 6:{const o=t,a=Qp(o),s=eh(o);return e.linked(os(e,s),a?os(e,a):void 0,e.type)}case 7:return Qo(t,n);case 8:return Qo(t,n);default:throw new Error(`unhandled node on format message part: ${n}`)}}const Al=e=>e;let En=me();function Sl(e,t={}){let n=!1;const o=t.onError||Tp;return t.onError=a=>{n=!0,o(a)},{...Vp(e,t),detectError:n}}const Oh=(e,t)=>{if(!H(e))throw St(ut.NOT_SUPPORT_NON_STRING_MESSAGE);{re(t.warnHtmlMessage)&&t.warnHtmlMessage;const o=(t.onCacheKey||Al)(e),a=En[o];if(a)return a;const{code:s,detectError:i}=Sl(e,t),r=new Function(`return ${s}`)();return i?r:En[o]=r}};function xh(e,t){if(__INTLIFY_JIT_COMPILATION__&&!__INTLIFY_DROP_MESSAGE_COMPILER__&&H(e)){re(t.warnHtmlMessage)&&t.warnHtmlMessage;const o=(t.onCacheKey||Al)(e),a=En[o];if(a)return a;const{ast:s,detectError:i}=Sl(e,{...t,location:!1,jit:!0}),r=ns(s);return i?r:En[o]=r}else{const n=e.cacheKey;if(n){const o=En[n];return o||(En[n]=ns(e))}else return ns(e)}}const vl=()=>"",et=e=>Ae(e);function kl(e,...t){const{fallbackFormat:n,postTranslation:o,unresolving:a,messageCompiler:s,fallbackLocale:i,messages:r}=e,[l,c]=as(...t),u=re(c.missingWarn)?c.missingWarn:e.missingWarn,f=re(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn,m=re(c.escapeParameter)?c.escapeParameter:e.escapeParameter,k=!!c.resolvedMessage,N=H(c.default)||re(c.default)?re(c.default)?s?l:()=>l:c.default:n?s?l:()=>l:"",v=n||N!=="",$=Za(e,c);m&&jh(c);let[P,T,_]=k?[l,$,r[$]||me()]:Tl(e,l,$,i,f,u),b=P,L=l;if(!k&&!(H(b)||At(b)||et(b))&&v&&(b=N,L=b),!k&&(!(H(b)||At(b)||et(b))||!H(T)))return a?ea:l;let A=!1;const w=()=>{A=!0},D=et(b)?b:El(e,l,T,b,L,w);if(A)return b;const S=Uh(e,T,_,c),V=mh(S),ae=Bh(e,D,V);let z=o?o(ae,l):ae;if(m&&H(z)&&(z=fp(z)),__INTLIFY_PROD_DEVTOOLS__){const ee={timestamp:Date.now(),key:H(l)?l:et(b)?b.key:"",locale:T||(et(b)?b.locale:""),format:H(b)?b:et(b)?b.source:"",message:z};ee.meta=Oe({},e.__meta,Ph()||{}),yh(ee)}return z}function jh(e){ke(e.list)?e.list=e.list.map(t=>H(t)?Or(t):t):ue(e.named)&&Object.keys(e.named).forEach(t=>{H(e.named[t])&&(e.named[t]=Or(e.named[t]))})}function Tl(e,t,n,o,a,s){const{messages:i,onWarn:r,messageResolver:l,localeFallbacker:c}=e,u=c(e,o,n);let f=me(),m,k=null;const N="translate";for(let v=0;vo;return c.locale=n,c.key=t,c}const l=i(o,Kh(e,n,a,o,r,s));return l.locale=n,l.key=t,l.source=o,l}function Bh(e,t,n){return t(n)}function as(...e){const[t,n,o]=e,a=me();if(!H(t)&&!$e(t)&&!et(t)&&!At(t))throw St(ut.INVALID_ARGUMENT);const s=$e(t)?String(t):(et(t),t);return $e(n)?a.plural=n:H(n)?a.default=n:ne(n)&&!Wo(n)?a.named=n:ke(n)&&(a.list=n),$e(o)?a.plural=o:H(o)?a.default=o:ne(o)&&Oe(a,o),[s,a]}function Kh(e,t,n,o,a,s){return{locale:t,key:n,warnHtmlMessage:a,onError:i=>{throw s&&s(i),i},onCacheKey:i=>cp(t,n,i)}}function Uh(e,t,n,o){const{modifiers:a,pluralRules:s,messageResolver:i,fallbackLocale:r,fallbackWarn:l,missingWarn:c,fallbackContext:u}=e,m={locale:t,modifiers:a,pluralRules:s,messages:k=>{let N=i(n,k);if(N==null&&u){const[,,v]=Tl(u,k,t,r,l,c);N=i(v,k)}if(H(N)||At(N)){let v=!1;const P=El(e,k,t,N,k,()=>{v=!0});return v?vl:P}else return et(N)?N:vl}};return e.processor&&(m.processor=e.processor),o.list&&(m.list=o.list),o.named&&(m.named=o.named),$e(o.plural)&&(m.pluralIndex=o.plural),m}function $l(e,...t){const{datetimeFormats:n,unresolving:o,fallbackLocale:a,onWarn:s,localeFallbacker:i}=e,{__datetimeFormatters:r}=e,[l,c,u,f]=ss(...t),m=re(u.missingWarn)?u.missingWarn:e.missingWarn;re(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const k=!!u.part,N=Za(e,u),v=i(e,a,N);if(!H(l)||l==="")return new Intl.DateTimeFormat(N,f).format(c);let $={},P,T=null;const _="datetime format";for(let A=0;A{Ll.includes(l)?i[l]=n[l]:s[l]=n[l]}),H(o)?s.locale=o:ne(o)&&(i=o),ne(a)&&(i=a),[s.key||"",r,s,i]}function Cl(e,t,n){const o=e;for(const a in n){const s=`${t}__${a}`;o.__datetimeFormatters.has(s)&&o.__datetimeFormatters.delete(s)}}function wl(e,...t){const{numberFormats:n,unresolving:o,fallbackLocale:a,onWarn:s,localeFallbacker:i}=e,{__numberFormatters:r}=e,[l,c,u,f]=is(...t),m=re(u.missingWarn)?u.missingWarn:e.missingWarn;re(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const k=!!u.part,N=Za(e,u),v=i(e,a,N);if(!H(l)||l==="")return new Intl.NumberFormat(N,f).format(c);let $={},P,T=null;const _="number format";for(let A=0;A{Nl.includes(l)?i[l]=n[l]:s[l]=n[l]}),H(o)?s.locale=o:ne(o)&&(i=o),ne(a)&&(i=a),[s.key||"",r,s,i]}function Pl(e,t,n){const o=e;for(const a in n){const s=`${t}__${a}`;o.__numberFormatters.has(s)&&o.__numberFormatters.delete(s)}}Wp();/*! + */function nh(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Rt().__INTLIFY_PROD_DEVTOOLS__=!1),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(Rt().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(Rt().__INTLIFY_DROP_MESSAGE_COMPILER__=!1)}function At(e){return ue(e)&&Xa(e)===0&&(lt(e,"b")||lt(e,"body"))}const Wi=["b","body"];function oh(e){return Vt(e,Wi)}const Yi=["c","cases"];function ah(e){return Vt(e,Yi,[])}const Ji=["s","static"];function sh(e){return Vt(e,Ji)}const Xi=["i","items"];function rh(e){return Vt(e,Xi,[])}const Zi=["t","type"];function Xa(e){return Vt(e,Zi)}const Qi=["v","value"];function Qo(e,t){const n=Vt(e,Qi);if(n!=null)return n;throw Qn(t)}const el=["m","modifier"];function ih(e){return Vt(e,el)}const tl=["k","key"];function lh(e){const t=Vt(e,tl);if(t)return t;throw Qn(6)}function Vt(e,t,n){for(let o=0;o{r===void 0?r=i:r+=i},m[1]=()=>{r!==void 0&&(t.push(r),r=void 0)},m[2]=()=>{m[0](),a++},m[3]=()=>{if(a>0)a--,o=4,m[0]();else{if(a=0,r===void 0||(r=ph(r),r===!1))return!1;m[1]()}};function $(){const w=e[n+1];if(o===5&&w==="'"||o===6&&w==='"')return n++,i="\\"+w,m[0](),!0}for(;o!==null;)if(n++,s=e[n],!(s==="\\"&&$())){if(l=dh(s),p=Wt[o],c=p[l]||p.l||8,c===8||(o=c[0],c[1]!==void 0&&(u=m[c[1]],u&&(i=s,u()===!1))))return;if(o===7)return t}}const ol=new Map;function hh(e,t){return ue(e)?e[t]:null}function mh(e,t){if(!ue(e))return null;let n=ol.get(t);if(n||(n=fh(t),n&&ol.set(t,n)),!n)return null;const o=n.length;let a=e,s=0;for(;se,yh=e=>"",_h="text",Ah=e=>e.length===0?"":Ef(e),Sh=kf;function al(e,t){return e=Math.abs(e),t===2?e?e>1?1:0:1:e?Math.min(e,2):0}function vh(e){const t=Te(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(Te(e.named.count)||Te(e.named.n))?Te(e.named.count)?e.named.count:Te(e.named.n)?e.named.n:t:t}function $h(e,t){t.count||(t.count=e),t.n||(t.n=e)}function kh(e={}){const t=e.locale,n=vh(e),o=ue(e.pluralRules)&&H(t)&&Ae(e.pluralRules[t])?e.pluralRules[t]:al,a=ue(e.pluralRules)&&H(t)&&Ae(e.pluralRules[t])?al:void 0,s=P=>P[o(n,P.length,a)],r=e.list||[],i=P=>r[P],l=e.named||me();Te(e.pluralIndex)&&$h(n,l);const c=P=>l[P];function u(P){const k=Ae(e.messages)?e.messages(P):ue(e.messages)?e.messages[P]:!1;return k||(e.parent?e.parent.message(P):yh)}const p=P=>e.modifiers?e.modifiers[P]:bh,m=ne(e.processor)&&Ae(e.processor.normalize)?e.processor.normalize:Ah,$=ne(e.processor)&&Ae(e.processor.interpolate)?e.processor.interpolate:Sh,w=ne(e.processor)&&H(e.processor.type)?e.processor.type:_h,T={list:i,named:c,plural:s,linked:(P,...k)=>{const[y,b]=k;let C="text",A="";k.length===1?ue(y)?(A=y.modifier||A,C=y.type||C):H(y)&&(A=y||A):k.length===2&&(H(y)&&(A=y||A),H(b)&&(C=b||C));const L=u(P)(T),F=C==="vnode"&&$e(L)&&A?L[0]:L;return A?p(A)(F,C):F},message:u,type:w,interpolate:$,normalize:m,values:De(me(),r,l)};return T}let eo=null;function Eh(e){eo=e}function Th(e,t,n){eo&&eo.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:n})}const Ch=Nh("function:translate");function Nh(e){return t=>eo&&eo.emit(e,t)}const Lh=Ya.__EXTEND_POINT__,rn=Yo(Lh),wh={FALLBACK_TO_TRANSLATE:rn(),CANNOT_FORMAT_NUMBER:rn(),FALLBACK_TO_NUMBER_FORMAT:rn(),CANNOT_FORMAT_DATE:rn(),FALLBACK_TO_DATE_FORMAT:rn(),EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:rn(),__EXTEND_POINT__:rn()},sl=Q.__EXTEND_POINT__,ln=Yo(sl),ut={INVALID_ARGUMENT:sl,INVALID_DATE_ARGUMENT:ln(),INVALID_ISO_DATE_ARGUMENT:ln(),NOT_SUPPORT_NON_STRING_MESSAGE:ln(),NOT_SUPPORT_LOCALE_PROMISE_VALUE:ln(),NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:ln(),NOT_SUPPORT_LOCALE_TYPE:ln(),__EXTEND_POINT__:ln()};function St(e){return Sn(e,null,void 0)}function Za(e,t){return t.locale!=null?rl(t.locale):rl(e.locale)}let Qa;function rl(e){if(H(e))return e;if(Ae(e)){if(e.resolvedOnce&&Qa!=null)return Qa;if(e.constructor.name==="Function"){const t=e();if($f(t))throw St(ut.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return Qa=t}else throw St(ut.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw St(ut.NOT_SUPPORT_LOCALE_TYPE)}function Ph(e,t,n){return[...new Set([n,...$e(t)?t:ue(t)?Object.keys(t):H(t)?[t]:[n]])]}function il(e,t,n){const o=H(n)?n:kn,a=e;a.__localeChainCache||(a.__localeChainCache=new Map);let s=a.__localeChainCache.get(o);if(!s){s=[];let r=[n];for(;$e(r);)r=ll(s,r,t);const i=$e(t)||!ne(t)?t:t.default?t.default:null;r=H(i)?[i]:i,$e(r)&&ll(s,r,!1),a.__localeChainCache.set(o,s)}return s}function ll(e,t,n){let o=!0;for(let a=0;a`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function Fh(){return{upper:(e,t)=>t==="text"&&H(e)?e.toUpperCase():t==="vnode"&&ue(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>t==="text"&&H(e)?e.toLowerCase():t==="vnode"&&ue(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>t==="text"&&H(e)?ul(e):t==="vnode"&&ue(e)&&"__v_isVNode"in e?ul(e.children):e}}let gl;function dl(e){gl=e}let pl;function Oh(e){pl=e}let fl;function Dh(e){fl=e}let hl=null;const xh=e=>{hl=e},jh=()=>hl;let ml=null;const bl=e=>{ml=e},Bh=()=>ml;let yl=0;function Kh(e={}){const t=Ae(e.onWarn)?e.onWarn:mf,n=H(e.version)?e.version:Rh,o=H(e.locale)||Ae(e.locale)?e.locale:kn,a=Ae(o)?kn:o,s=$e(e.fallbackLocale)||ne(e.fallbackLocale)||H(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:a,r=ne(e.messages)?e.messages:es(a),i=ne(e.datetimeFormats)?e.datetimeFormats:es(a),l=ne(e.numberFormats)?e.numberFormats:es(a),c=De(me(),e.modifiers,Fh()),u=e.pluralRules||me(),p=Ae(e.missing)?e.missing:null,m=ie(e.missingWarn)||qt(e.missingWarn)?e.missingWarn:!0,$=ie(e.fallbackWarn)||qt(e.fallbackWarn)?e.fallbackWarn:!0,w=!!e.fallbackFormat,v=!!e.unresolving,T=Ae(e.postTranslation)?e.postTranslation:null,P=ne(e.processor)?e.processor:null,k=ie(e.warnHtmlMessage)?e.warnHtmlMessage:!0,y=!!e.escapeParameter,b=Ae(e.messageCompiler)?e.messageCompiler:gl,C=Ae(e.messageResolver)?e.messageResolver:pl||hh,A=Ae(e.localeFallbacker)?e.localeFallbacker:fl||Ph,L=ue(e.fallbackContext)?e.fallbackContext:void 0,F=e,S=ue(F.__datetimeFormatters)?F.__datetimeFormatters:new Map,V=ue(F.__numberFormatters)?F.__numberFormatters:new Map,ae=ue(F.__meta)?F.__meta:{};yl++;const z={version:n,cid:yl,locale:o,fallbackLocale:s,messages:r,modifiers:c,pluralRules:u,missing:p,missingWarn:m,fallbackWarn:$,fallbackFormat:w,unresolving:v,postTranslation:T,processor:P,warnHtmlMessage:k,escapeParameter:y,messageCompiler:b,messageResolver:C,localeFallbacker:A,fallbackContext:L,onWarn:t,__meta:ae};return z.datetimeFormats=i,z.numberFormats=l,z.__datetimeFormatters=S,z.__numberFormatters=V,__INTLIFY_PROD_DEVTOOLS__&&Th(z,n,ae),z}const es=e=>({[e]:me()});function ts(e,t,n,o,a){const{missing:s,onWarn:r}=e;if(s!==null){const i=s(e,n,t,a);return H(i)?i:t}else return t}function to(e,t,n){const o=e;o.__localeChainCache=new Map,e.localeFallbacker(e,n,t)}function Uh(e,t){return e===t?!1:e.split("-")[0]===t.split("-")[0]}function Gh(e,t){const n=t.indexOf(e);if(n===-1)return!1;for(let o=n+1;ozh(n,e)}function zh(e,t){const n=oh(t);if(n==null)throw Qn(0);if(Xa(n)===1){const s=ah(n);return e.plural(s.reduce((r,i)=>[...r,_l(e,i)],[]))}else return _l(e,n)}function _l(e,t){const n=sh(t);if(n!=null)return e.type==="text"?n:e.normalize([n]);{const o=rh(t).reduce((a,s)=>[...a,os(e,s)],[]);return e.normalize(o)}}function os(e,t){const n=Xa(t);switch(n){case 3:return Qo(t,n);case 9:return Qo(t,n);case 4:{const o=t;if(lt(o,"k")&&o.k)return e.interpolate(e.named(o.k));if(lt(o,"key")&&o.key)return e.interpolate(e.named(o.key));throw Qn(n)}case 5:{const o=t;if(lt(o,"i")&&Te(o.i))return e.interpolate(e.list(o.i));if(lt(o,"index")&&Te(o.index))return e.interpolate(e.list(o.index));throw Qn(n)}case 6:{const o=t,a=ih(o),s=lh(o);return e.linked(os(e,s),a?os(e,a):void 0,e.type)}case 7:return Qo(t,n);case 8:return Qo(t,n);default:throw new Error(`unhandled node on format message part: ${n}`)}}const Al=e=>e;let En=me();function Sl(e,t={}){let n=!1;const o=t.onError||Mf;return t.onError=a=>{n=!0,o(a)},{...th(e,t),detectError:n}}const qh=(e,t)=>{if(!H(e))throw St(ut.NOT_SUPPORT_NON_STRING_MESSAGE);{ie(t.warnHtmlMessage)&&t.warnHtmlMessage;const o=(t.onCacheKey||Al)(e),a=En[o];if(a)return a;const{code:s,detectError:r}=Sl(e,t),i=new Function(`return ${s}`)();return r?i:En[o]=i}};function Hh(e,t){if(__INTLIFY_JIT_COMPILATION__&&!__INTLIFY_DROP_MESSAGE_COMPILER__&&H(e)){ie(t.warnHtmlMessage)&&t.warnHtmlMessage;const o=(t.onCacheKey||Al)(e),a=En[o];if(a)return a;const{ast:s,detectError:r}=Sl(e,{...t,location:!1,jit:!0}),i=ns(s);return r?i:En[o]=i}else{const n=e.cacheKey;if(n){const o=En[n];return o||(En[n]=ns(e))}else return ns(e)}}const vl=()=>"",et=e=>Ae(e);function $l(e,...t){const{fallbackFormat:n,postTranslation:o,unresolving:a,messageCompiler:s,fallbackLocale:r,messages:i}=e,[l,c]=as(...t),u=ie(c.missingWarn)?c.missingWarn:e.missingWarn,p=ie(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn,m=ie(c.escapeParameter)?c.escapeParameter:e.escapeParameter,$=!!c.resolvedMessage,w=H(c.default)||ie(c.default)?ie(c.default)?s?l:()=>l:c.default:n?s?l:()=>l:"",v=n||w!=="",T=Za(e,c);m&&Vh(c);let[P,k,y]=$?[l,T,i[T]||me()]:kl(e,l,T,r,p,u),b=P,C=l;if(!$&&!(H(b)||At(b)||et(b))&&v&&(b=w,C=b),!$&&(!(H(b)||At(b)||et(b))||!H(k)))return a?ea:l;let A=!1;const L=()=>{A=!0},F=et(b)?b:El(e,l,k,b,C,L);if(A)return b;const S=Jh(e,k,y,c),V=kh(S),ae=Wh(e,F,V);let z=o?o(ae,l):ae;if(m&&H(z)&&(z=Sf(z)),__INTLIFY_PROD_DEVTOOLS__){const ee={timestamp:Date.now(),key:H(l)?l:et(b)?b.key:"",locale:k||(et(b)?b.locale:""),format:H(b)?b:et(b)?b.source:"",message:z};ee.meta=De({},e.__meta,jh()||{}),Ch(ee)}return z}function Vh(e){$e(e.list)?e.list=e.list.map(t=>H(t)?Di(t):t):ue(e.named)&&Object.keys(e.named).forEach(t=>{H(e.named[t])&&(e.named[t]=Di(e.named[t]))})}function kl(e,t,n,o,a,s){const{messages:r,onWarn:i,messageResolver:l,localeFallbacker:c}=e,u=c(e,o,n);let p=me(),m,$=null;const w="translate";for(let v=0;vo;return c.locale=n,c.key=t,c}const l=r(o,Yh(e,n,a,o,i,s));return l.locale=n,l.key=t,l.source=o,l}function Wh(e,t,n){return t(n)}function as(...e){const[t,n,o]=e,a=me();if(!H(t)&&!Te(t)&&!et(t)&&!At(t))throw St(ut.INVALID_ARGUMENT);const s=Te(t)?String(t):(et(t),t);return Te(n)?a.plural=n:H(n)?a.default=n:ne(n)&&!Wo(n)?a.named=n:$e(n)&&(a.list=n),Te(o)?a.plural=o:H(o)?a.default=o:ne(o)&&De(a,o),[s,a]}function Yh(e,t,n,o,a,s){return{locale:t,key:n,warnHtmlMessage:a,onError:r=>{throw s&&s(r),r},onCacheKey:r=>bf(t,n,r)}}function Jh(e,t,n,o){const{modifiers:a,pluralRules:s,messageResolver:r,fallbackLocale:i,fallbackWarn:l,missingWarn:c,fallbackContext:u}=e,m={locale:t,modifiers:a,pluralRules:s,messages:$=>{let w=r(n,$);if(w==null&&u){const[,,v]=kl(u,$,t,i,l,c);w=r(v,$)}if(H(w)||At(w)){let v=!1;const P=El(e,$,t,w,$,()=>{v=!0});return v?vl:P}else return et(w)?w:vl}};return e.processor&&(m.processor=e.processor),o.list&&(m.list=o.list),o.named&&(m.named=o.named),Te(o.plural)&&(m.pluralIndex=o.plural),m}function Tl(e,...t){const{datetimeFormats:n,unresolving:o,fallbackLocale:a,onWarn:s,localeFallbacker:r}=e,{__datetimeFormatters:i}=e,[l,c,u,p]=ss(...t),m=ie(u.missingWarn)?u.missingWarn:e.missingWarn;ie(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const $=!!u.part,w=Za(e,u),v=r(e,a,w);if(!H(l)||l==="")return new Intl.DateTimeFormat(w,p).format(c);let T={},P,k=null;const y="datetime format";for(let A=0;A{Cl.includes(l)?r[l]=n[l]:s[l]=n[l]}),H(o)?s.locale=o:ne(o)&&(r=o),ne(a)&&(r=a),[s.key||"",i,s,r]}function Nl(e,t,n){const o=e;for(const a in n){const s=`${t}__${a}`;o.__datetimeFormatters.has(s)&&o.__datetimeFormatters.delete(s)}}function Ll(e,...t){const{numberFormats:n,unresolving:o,fallbackLocale:a,onWarn:s,localeFallbacker:r}=e,{__numberFormatters:i}=e,[l,c,u,p]=rs(...t),m=ie(u.missingWarn)?u.missingWarn:e.missingWarn;ie(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const $=!!u.part,w=Za(e,u),v=r(e,a,w);if(!H(l)||l==="")return new Intl.NumberFormat(w,p).format(c);let T={},P,k=null;const y="number format";for(let A=0;A{wl.includes(l)?r[l]=n[l]:s[l]=n[l]}),H(o)?s.locale=o:ne(o)&&(r=o),ne(a)&&(r=a),[s.key||"",i,s,r]}function Pl(e,t,n){const o=e;for(const a in n){const s=`${t}__${a}`;o.__numberFormatters.has(s)&&o.__numberFormatters.delete(s)}}nh();/*! * vue-i18n v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */const Gh="9.14.5";function zh(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(Rt().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(Rt().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(Rt().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(Rt().__INTLIFY_DROP_MESSAGE_COMPILER__=!1),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Rt().__INTLIFY_PROD_DEVTOOLS__=!1)}const qh=vh.__EXTEND_POINT__,Ft=Yo(qh);Ft(),Ft(),Ft(),Ft(),Ft(),Ft(),Ft(),Ft(),Ft();const Ml=ut.__EXTEND_POINT__,qe=Yo(Ml),we={UNEXPECTED_RETURN_TYPE:Ml,INVALID_ARGUMENT:qe(),MUST_BE_CALL_SETUP_TOP:qe(),NOT_INSTALLED:qe(),NOT_AVAILABLE_IN_LEGACY_MODE:qe(),REQUIRED_VALUE:qe(),INVALID_VALUE:qe(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:qe(),NOT_INSTALLED_WITH_PROVIDE:qe(),UNEXPECTED_ERROR:qe(),NOT_COMPATIBLE_LEGACY_VUE_I18N:qe(),BRIDGE_SUPPORT_VUE_2_ONLY:qe(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:qe(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:qe(),__EXTEND_POINT__:qe()};function Ie(e,...t){return Sn(e,null,void 0)}const rs=zt("__translateVNode"),ls=zt("__datetimeParts"),cs=zt("__numberParts"),Il=zt("__setPluralRules"),Rl=zt("__injectWithOption"),us=zt("__dispose");function no(e){if(!ue(e)||At(e))return e;for(const t in e)if(lt(e,t))if(!t.includes("."))ue(e[t])&&no(e[t]);else{const n=t.split("."),o=n.length-1;let a=e,s=!1;for(let i=0;i{if("locale"in r&&"resource"in r){const{locale:l,resource:c}=r;l?(i[l]=i[l]||me(),Xo(c,i[l])):Xo(c,i)}else H(r)&&Xo(JSON.parse(r),i)}),a==null&&s)for(const r in i)lt(i,r)&&no(i[r]);return i}function Dl(e){return e.type}function Fl(e,t,n){let o=ue(t.messages)?t.messages:me();"__i18nGlobal"in n&&(o=ta(e.locale.value,{messages:o,__i18n:n.__i18nGlobal}));const a=Object.keys(o);a.length&&a.forEach(s=>{e.mergeLocaleMessage(s,o[s])});{if(ue(t.datetimeFormats)){const s=Object.keys(t.datetimeFormats);s.length&&s.forEach(i=>{e.mergeDateTimeFormat(i,t.datetimeFormats[i])})}if(ue(t.numberFormats)){const s=Object.keys(t.numberFormats);s.length&&s.forEach(i=>{e.mergeNumberFormat(i,t.numberFormats[i])})}}}function Ol(e){return Me(Hn,null,e,0)}const xl="__INTLIFY_META__",jl=()=>[],Hh=()=>!1;let Bl=0;function Kl(e){return(t,n,o,a)=>e(n,o,Mt()||void 0,a)}const Vh=()=>{const e=Mt();let t=null;return e&&(t=Dl(e)[xl])?{[xl]:t}:null};function gs(e={},t){const{__root:n,__injectWithOption:o}=e,a=n===void 0,s=e.flatJson,i=Vo?he:va,r=!!e.translateExistCompatible;let l=re(e.inheritLocale)?e.inheritLocale:!0;const c=i(n&&l?n.locale.value:H(e.locale)?e.locale:Tn),u=i(n&&l?n.fallbackLocale.value:H(e.fallbackLocale)||ke(e.fallbackLocale)||ne(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:c.value),f=i(ta(c.value,e)),m=i(ne(e.datetimeFormats)?e.datetimeFormats:{[c.value]:{}}),k=i(ne(e.numberFormats)?e.numberFormats:{[c.value]:{}});let N=n?n.missingWarn:re(e.missingWarn)||qt(e.missingWarn)?e.missingWarn:!0,v=n?n.fallbackWarn:re(e.fallbackWarn)||qt(e.fallbackWarn)?e.fallbackWarn:!0,$=n?n.fallbackRoot:re(e.fallbackRoot)?e.fallbackRoot:!0,P=!!e.fallbackFormat,T=Ae(e.missing)?e.missing:null,_=Ae(e.missing)?Kl(e.missing):null,b=Ae(e.postTranslation)?e.postTranslation:null,L=n?n.warnHtmlMessage:re(e.warnHtmlMessage)?e.warnHtmlMessage:!0,A=!!e.escapeParameter;const w=n?n.modifiers:ne(e.modifiers)?e.modifiers:{};let D=e.pluralRules||n&&n.pluralRules,S;S=(()=>{a&&bl(null);const E={version:Gh,locale:c.value,fallbackLocale:u.value,messages:f.value,modifiers:w,pluralRules:D,missing:_===null?void 0:_,missingWarn:N,fallbackWarn:v,fallbackFormat:P,unresolving:!0,postTranslation:b===null?void 0:b,warnHtmlMessage:L,escapeParameter:A,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};E.datetimeFormats=m.value,E.numberFormats=k.value,E.__datetimeFormatters=ne(S)?S.__datetimeFormatters:void 0,E.__numberFormatters=ne(S)?S.__numberFormatters:void 0;const R=Ih(E);return a&&bl(R),R})(),to(S,c.value,u.value);function ae(){return[c.value,u.value,f.value,m.value,k.value]}const z=be({get:()=>c.value,set:E=>{c.value=E,S.locale=c.value}}),ee=be({get:()=>u.value,set:E=>{u.value=E,S.fallbackLocale=u.value,to(S,c.value,E)}}),Y=be(()=>f.value),F=be(()=>m.value),j=be(()=>k.value);function q(){return Ae(b)?b:null}function W(E){b=E,S.postTranslation=E}function X(){return T}function ge(E){E!==null&&(_=Kl(E)),T=E,S.missing=_}const ie=(E,R,J,se,Se,Ge)=>{ae();let xe;try{__INTLIFY_PROD_DEVTOOLS__,a||(S.fallbackContext=n?Mh():void 0),xe=E(S)}finally{__INTLIFY_PROD_DEVTOOLS__,a||(S.fallbackContext=void 0)}if(J!=="translate exists"&&$e(xe)&&xe===ea||J==="translate exists"&&!xe){const[cn,Fs]=R();return n&&$?se(n):Se(cn)}else{if(Ge(xe))return xe;throw Ie(we.UNEXPECTED_RETURN_TYPE)}};function fe(...E){return ie(R=>Reflect.apply(kl,null,[R,...E]),()=>as(...E),"translate",R=>Reflect.apply(R.t,R,[...E]),R=>R,R=>H(R))}function oe(...E){const[R,J,se]=E;if(se&&!ue(se))throw Ie(we.INVALID_ARGUMENT);return fe(R,J,Oe({resolvedMessage:!0},se||{}))}function le(...E){return ie(R=>Reflect.apply($l,null,[R,...E]),()=>ss(...E),"datetime format",R=>Reflect.apply(R.d,R,[...E]),()=>cl,R=>H(R))}function Ne(...E){return ie(R=>Reflect.apply(wl,null,[R,...E]),()=>is(...E),"number format",R=>Reflect.apply(R.n,R,[...E]),()=>cl,R=>H(R))}function Re(E){return E.map(R=>H(R)||$e(R)||re(R)?Ol(String(R)):R)}const nt={normalize:Re,interpolate:E=>E,type:"vnode"};function Zt(...E){return ie(R=>{let J;const se=R;try{se.processor=nt,J=Reflect.apply(kl,null,[se,...E])}finally{se.processor=null}return J},()=>as(...E),"translate",R=>R[rs](...E),R=>[Ol(R)],R=>ke(R))}function ot(...E){return ie(R=>Reflect.apply(wl,null,[R,...E]),()=>is(...E),"number format",R=>R[cs](...E),jl,R=>H(R)||ke(R))}function Ln(...E){return ie(R=>Reflect.apply($l,null,[R,...E]),()=>ss(...E),"datetime format",R=>R[ls](...E),jl,R=>H(R)||ke(R))}function p(E){D=E,S.pluralRules=D}function y(E,R){return ie(()=>{if(!E)return!1;const J=H(R)?R:c.value,se=x(J),Se=S.messageResolver(se,E);return r?Se!=null:At(Se)||et(Se)||H(Se)},()=>[E],"translate exists",J=>Reflect.apply(J.te,J,[E,R]),Hh,J=>re(J))}function h(E){let R=null;const J=rl(S,u.value,c.value);for(let se=0;se{l&&(c.value=E,S.locale=E,to(S,c.value,u.value))}),Ut(n.fallbackLocale,E=>{l&&(u.value=E,S.fallbackLocale=E,to(S,c.value,u.value))}));const B={id:Bl,locale:z,fallbackLocale:ee,get inheritLocale(){return l},set inheritLocale(E){l=E,E&&n&&(c.value=n.locale.value,u.value=n.fallbackLocale.value,to(S,c.value,u.value))},get availableLocales(){return Object.keys(f.value).sort()},messages:Y,get modifiers(){return w},get pluralRules(){return D||{}},get isGlobal(){return a},get missingWarn(){return N},set missingWarn(E){N=E,S.missingWarn=N},get fallbackWarn(){return v},set fallbackWarn(E){v=E,S.fallbackWarn=v},get fallbackRoot(){return $},set fallbackRoot(E){$=E},get fallbackFormat(){return P},set fallbackFormat(E){P=E,S.fallbackFormat=P},get warnHtmlMessage(){return L},set warnHtmlMessage(E){L=E,S.warnHtmlMessage=E},get escapeParameter(){return A},set escapeParameter(E){A=E,S.escapeParameter=E},t:fe,getLocaleMessage:x,setLocaleMessage:O,mergeLocaleMessage:U,getPostTranslationHandler:q,setPostTranslationHandler:W,getMissingHandler:X,setMissingHandler:ge,[Il]:p};return B.datetimeFormats=F,B.numberFormats=j,B.rt=oe,B.te=y,B.tm=M,B.d=le,B.n=Ne,B.getDateTimeFormat=K,B.setDateTimeFormat=g,B.mergeDateTimeFormat=d,B.getNumberFormat=C,B.setNumberFormat=I,B.mergeNumberFormat=G,B[Rl]=o,B[rs]=Zt,B[ls]=Ln,B[cs]=ot,B}function Wh(e){const t=H(e.locale)?e.locale:Tn,n=H(e.fallbackLocale)||ke(e.fallbackLocale)||ne(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:t,o=Ae(e.missing)?e.missing:void 0,a=re(e.silentTranslationWarn)||qt(e.silentTranslationWarn)?!e.silentTranslationWarn:!0,s=re(e.silentFallbackWarn)||qt(e.silentFallbackWarn)?!e.silentFallbackWarn:!0,i=re(e.fallbackRoot)?e.fallbackRoot:!0,r=!!e.formatFallbackMessages,l=ne(e.modifiers)?e.modifiers:{},c=e.pluralizationRules,u=Ae(e.postTranslation)?e.postTranslation:void 0,f=H(e.warnHtmlInMessage)?e.warnHtmlInMessage!=="off":!0,m=!!e.escapeParameterHtml,k=re(e.sync)?e.sync:!0;let N=e.messages;if(ne(e.sharedMessages)){const A=e.sharedMessages;N=Object.keys(A).reduce((D,S)=>{const V=D[S]||(D[S]={});return Oe(V,A[S]),D},N||{})}const{__i18n:v,__root:$,__injectWithOption:P}=e,T=e.datetimeFormats,_=e.numberFormats,b=e.flatJson,L=e.translateExistCompatible;return{locale:t,fallbackLocale:n,messages:N,flatJson:b,datetimeFormats:T,numberFormats:_,missing:o,missingWarn:a,fallbackWarn:s,fallbackRoot:i,fallbackFormat:r,modifiers:l,pluralRules:c,postTranslation:u,warnHtmlMessage:f,escapeParameter:m,messageResolver:e.messageResolver,inheritLocale:k,translateExistCompatible:L,__i18n:v,__root:$,__injectWithOption:P}}function ds(e={},t){{const n=gs(Wh(e)),{__extender:o}=e,a={id:n.id,get locale(){return n.locale.value},set locale(s){n.locale.value=s},get fallbackLocale(){return n.fallbackLocale.value},set fallbackLocale(s){n.fallbackLocale.value=s},get messages(){return n.messages.value},get datetimeFormats(){return n.datetimeFormats.value},get numberFormats(){return n.numberFormats.value},get availableLocales(){return n.availableLocales},get formatter(){return{interpolate(){return[]}}},set formatter(s){},get missing(){return n.getMissingHandler()},set missing(s){n.setMissingHandler(s)},get silentTranslationWarn(){return re(n.missingWarn)?!n.missingWarn:n.missingWarn},set silentTranslationWarn(s){n.missingWarn=re(s)?!s:s},get silentFallbackWarn(){return re(n.fallbackWarn)?!n.fallbackWarn:n.fallbackWarn},set silentFallbackWarn(s){n.fallbackWarn=re(s)?!s:s},get modifiers(){return n.modifiers},get formatFallbackMessages(){return n.fallbackFormat},set formatFallbackMessages(s){n.fallbackFormat=s},get postTranslation(){return n.getPostTranslationHandler()},set postTranslation(s){n.setPostTranslationHandler(s)},get sync(){return n.inheritLocale},set sync(s){n.inheritLocale=s},get warnHtmlInMessage(){return n.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(s){n.warnHtmlMessage=s!=="off"},get escapeParameterHtml(){return n.escapeParameter},set escapeParameterHtml(s){n.escapeParameter=s},get preserveDirectiveContent(){return!0},set preserveDirectiveContent(s){},get pluralizationRules(){return n.pluralRules||{}},__composer:n,t(...s){const[i,r,l]=s,c={};let u=null,f=null;if(!H(i))throw Ie(we.INVALID_ARGUMENT);const m=i;return H(r)?c.locale=r:ke(r)?u=r:ne(r)&&(f=r),ke(l)?u=l:ne(l)&&(f=l),Reflect.apply(n.t,n,[m,u||f||{},c])},rt(...s){return Reflect.apply(n.rt,n,[...s])},tc(...s){const[i,r,l]=s,c={plural:1};let u=null,f=null;if(!H(i))throw Ie(we.INVALID_ARGUMENT);const m=i;return H(r)?c.locale=r:$e(r)?c.plural=r:ke(r)?u=r:ne(r)&&(f=r),H(l)?c.locale=l:ke(l)?u=l:ne(l)&&(f=l),Reflect.apply(n.t,n,[m,u||f||{},c])},te(s,i){return n.te(s,i)},tm(s){return n.tm(s)},getLocaleMessage(s){return n.getLocaleMessage(s)},setLocaleMessage(s,i){n.setLocaleMessage(s,i)},mergeLocaleMessage(s,i){n.mergeLocaleMessage(s,i)},d(...s){return Reflect.apply(n.d,n,[...s])},getDateTimeFormat(s){return n.getDateTimeFormat(s)},setDateTimeFormat(s,i){n.setDateTimeFormat(s,i)},mergeDateTimeFormat(s,i){n.mergeDateTimeFormat(s,i)},n(...s){return Reflect.apply(n.n,n,[...s])},getNumberFormat(s){return n.getNumberFormat(s)},setNumberFormat(s,i){n.setNumberFormat(s,i)},mergeNumberFormat(s,i){n.mergeNumberFormat(s,i)},getChoiceIndex(s,i){return-1}};return a.__extender=o,a}}const fs={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function Yh({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((o,a)=>[...o,...a.type===Qe?a.children:[a]],[]):t.reduce((n,o)=>{const a=e[o];return a&&(n[o]=a()),n},me())}function Ul(e){return Qe}const Gl=Bn({name:"i18n-t",props:Oe({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>$e(e)||!isNaN(e)}},fs),setup(e,t){const{slots:n,attrs:o}=t,a=e.i18n||ps({useScope:e.scope,__useComponent:!0});return()=>{const s=Object.keys(n).filter(f=>f!=="_"),i=me();e.locale&&(i.locale=e.locale),e.plural!==void 0&&(i.plural=H(e.plural)?+e.plural:e.plural);const r=Yh(t,s),l=a[rs](e.keypath,r,i),c=Oe(me(),o),u=H(e.tag)||ue(e.tag)?e.tag:Ul();return fr(u,c,l)}}});function Jh(e){return ke(e)&&!H(e[0])}function zl(e,t,n,o){const{slots:a,attrs:s}=t;return()=>{const i={part:!0};let r=me();e.locale&&(i.locale=e.locale),H(e.format)?i.key=e.format:ue(e.format)&&(H(e.format.key)&&(i.key=e.format.key),r=Object.keys(e.format).reduce((m,k)=>n.includes(k)?Oe(me(),m,{[k]:e.format[k]}):m,me()));const l=o(e.value,i,r);let c=[i.key];ke(l)?c=l.map((m,k)=>{const N=a[m.type],v=N?N({[m.type]:m.value,index:k,parts:l}):[m.value];return Jh(v)&&(v[0].key=`${m.type}-${k}`),v}):H(l)&&(c=[l]);const u=Oe(me(),s),f=H(e.tag)||ue(e.tag)?e.tag:Ul();return fr(f,u,c)}}const ql=Bn({name:"i18n-n",props:Oe({value:{type:Number,required:!0},format:{type:[String,Object]}},fs),setup(e,t){const n=e.i18n||ps({useScope:e.scope,__useComponent:!0});return zl(e,t,Nl,(...o)=>n[cs](...o))}}),Hl=Bn({name:"i18n-d",props:Oe({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},fs),setup(e,t){const n=e.i18n||ps({useScope:e.scope,__useComponent:!0});return zl(e,t,Ll,(...o)=>n[ls](...o))}});function Xh(e,t){const n=e;if(e.mode==="composition")return n.__getInstance(t)||e.global;{const o=n.__getInstance(t);return o!=null?o.__composer:e.global.__composer}}function Zh(e){const t=i=>{const{instance:r,modifiers:l,value:c}=i;if(!r||!r.$)throw Ie(we.UNEXPECTED_ERROR);const u=Xh(e,r.$),f=Vl(c);return[Reflect.apply(u.t,u,[...Wl(f)]),u]};return{created:(i,r)=>{const[l,c]=t(r);Vo&&e.global===c&&(i.__i18nWatcher=Ut(c.locale,()=>{r.instance&&r.instance.$forceUpdate()})),i.__composer=c,i.textContent=l},unmounted:i=>{Vo&&i.__i18nWatcher&&(i.__i18nWatcher(),i.__i18nWatcher=void 0,delete i.__i18nWatcher),i.__composer&&(i.__composer=void 0,delete i.__composer)},beforeUpdate:(i,{value:r})=>{if(i.__composer){const l=i.__composer,c=Vl(r);i.textContent=Reflect.apply(l.t,l,[...Wl(c)])}},getSSRProps:i=>{const[r]=t(i);return{textContent:r}}}}function Vl(e){if(H(e))return{path:e};if(ne(e)){if(!("path"in e))throw Ie(we.REQUIRED_VALUE,"path");return e}else throw Ie(we.INVALID_VALUE)}function Wl(e){const{path:t,locale:n,args:o,choice:a,plural:s}=e,i={},r=o||{};return H(n)&&(i.locale=n),$e(a)&&(i.plural=a),$e(s)&&(i.plural=s),[t,r,i]}function Qh(e,t,...n){const o=ne(n[0])?n[0]:{},a=!!o.useI18nComponentName;(re(o.globalInstall)?o.globalInstall:!0)&&([a?"i18n":Gl.name,"I18nT"].forEach(i=>e.component(i,Gl)),[ql.name,"I18nN"].forEach(i=>e.component(i,ql)),[Hl.name,"I18nD"].forEach(i=>e.component(i,Hl))),e.directive("t",Zh(t))}function em(e,t,n){return{beforeCreate(){const o=Mt();if(!o)throw Ie(we.UNEXPECTED_ERROR);const a=this.$options;if(a.i18n){const s=a.i18n;if(a.__i18n&&(s.__i18n=a.__i18n),s.__root=t,this===this.$root)this.$i18n=Yl(e,s);else{s.__injectWithOption=!0,s.__extender=n.__vueI18nExtend,this.$i18n=ds(s);const i=this.$i18n;i.__extender&&(i.__disposer=i.__extender(this.$i18n))}}else if(a.__i18n)if(this===this.$root)this.$i18n=Yl(e,a);else{this.$i18n=ds({__i18n:a.__i18n,__injectWithOption:!0,__extender:n.__vueI18nExtend,__root:t});const s=this.$i18n;s.__extender&&(s.__disposer=s.__extender(this.$i18n))}else this.$i18n=e;a.__i18nGlobal&&Fl(t,a,a),this.$t=(...s)=>this.$i18n.t(...s),this.$rt=(...s)=>this.$i18n.rt(...s),this.$tc=(...s)=>this.$i18n.tc(...s),this.$te=(s,i)=>this.$i18n.te(s,i),this.$d=(...s)=>this.$i18n.d(...s),this.$n=(...s)=>this.$i18n.n(...s),this.$tm=s=>this.$i18n.tm(s),n.__setInstance(o,this.$i18n)},mounted(){},unmounted(){const o=Mt();if(!o)throw Ie(we.UNEXPECTED_ERROR);const a=this.$i18n;delete this.$t,delete this.$rt,delete this.$tc,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,a.__disposer&&(a.__disposer(),delete a.__disposer,delete a.__extender),n.__deleteInstance(o),delete this.$i18n}}}function Yl(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[Il](t.pluralizationRules||e.pluralizationRules);const n=ta(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(n).forEach(o=>e.mergeLocaleMessage(o,n[o])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(o=>e.mergeDateTimeFormat(o,t.datetimeFormats[o])),t.numberFormats&&Object.keys(t.numberFormats).forEach(o=>e.mergeNumberFormat(o,t.numberFormats[o])),e}const tm=zt("global-vue-i18n");function nm(e={},t){const n=__VUE_I18N_LEGACY_API__&&re(e.legacy)?e.legacy:__VUE_I18N_LEGACY_API__,o=re(e.globalInjection)?e.globalInjection:!0,a=__VUE_I18N_LEGACY_API__&&n?!!e.allowComposition:!0,s=new Map,[i,r]=om(e,n),l=zt("");function c(m){return s.get(m)||null}function u(m,k){s.set(m,k)}function f(m){s.delete(m)}{const m={get mode(){return __VUE_I18N_LEGACY_API__&&n?"legacy":"composition"},get allowComposition(){return a},async install(k,...N){if(k.__VUE_I18N_SYMBOL__=l,k.provide(k.__VUE_I18N_SYMBOL__,m),ne(N[0])){const P=N[0];m.__composerExtend=P.__composerExtend,m.__vueI18nExtend=P.__vueI18nExtend}let v=null;!n&&o&&(v=dm(k,m.global)),__VUE_I18N_FULL_INSTALL__&&Qh(k,m,...N),__VUE_I18N_LEGACY_API__&&n&&k.mixin(em(r,r.__composer,m));const $=k.unmount;k.unmount=()=>{v&&v(),m.dispose(),$()}},get global(){return r},dispose(){i.stop()},__instances:s,__getInstance:c,__setInstance:u,__deleteInstance:f};return m}}function ps(e={}){const t=Mt();if(t==null)throw Ie(we.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw Ie(we.NOT_INSTALLED);const n=am(t),o=im(n),a=Dl(t),s=sm(e,a);if(__VUE_I18N_LEGACY_API__&&n.mode==="legacy"&&!e.__useComponent){if(!n.allowComposition)throw Ie(we.NOT_AVAILABLE_IN_LEGACY_MODE);return um(t,s,o,e)}if(s==="global")return Fl(o,e,a),o;if(s==="parent"){let l=rm(n,t,e.__useComponent);return l==null&&(l=o),l}const i=n;let r=i.__getInstance(t);if(r==null){const l=Oe({},e);"__i18n"in a&&(l.__i18n=a.__i18n),o&&(l.__root=o),r=gs(l),i.__composerExtend&&(r[us]=i.__composerExtend(r)),cm(i,t,r),i.__setInstance(t,r)}return r}function om(e,t,n){const o=ua();{const a=__VUE_I18N_LEGACY_API__&&t?o.run(()=>ds(e)):o.run(()=>gs(e));if(a==null)throw Ie(we.UNEXPECTED_ERROR);return[o,a]}}function am(e){{const t=De(e.isCE?tm:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw Ie(e.isCE?we.NOT_INSTALLED_WITH_PROVIDE:we.UNEXPECTED_ERROR);return t}}function sm(e,t){return Wo(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function im(e){return e.mode==="composition"?e.global:e.global.__composer}function rm(e,t,n=!1){let o=null;const a=t.root;let s=lm(t,n);for(;s!=null;){const i=e;if(e.mode==="composition")o=i.__getInstance(s);else if(__VUE_I18N_LEGACY_API__){const r=i.__getInstance(s);r!=null&&(o=r.__composer,n&&o&&!o[Rl]&&(o=null))}if(o!=null||a===s)break;s=s.parent}return o}function lm(e,t=!1){return e==null?null:t&&e.vnode.ctx||e.parent}function cm(e,t,n){Gn(()=>{},t),Fo(()=>{const o=n;e.__deleteInstance(t);const a=o[us];a&&(a(),delete o[us])},t)}function um(e,t,n,o={}){const a=t==="local",s=va(null);if(a&&e.proxy&&!(e.proxy.$options.i18n||e.proxy.$options.__i18n))throw Ie(we.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const i=re(o.inheritLocale)?o.inheritLocale:!H(o.locale),r=he(!a||i?n.locale.value:H(o.locale)?o.locale:Tn),l=he(!a||i?n.fallbackLocale.value:H(o.fallbackLocale)||ke(o.fallbackLocale)||ne(o.fallbackLocale)||o.fallbackLocale===!1?o.fallbackLocale:r.value),c=he(ta(r.value,o)),u=he(ne(o.datetimeFormats)?o.datetimeFormats:{[r.value]:{}}),f=he(ne(o.numberFormats)?o.numberFormats:{[r.value]:{}}),m=a?n.missingWarn:re(o.missingWarn)||qt(o.missingWarn)?o.missingWarn:!0,k=a?n.fallbackWarn:re(o.fallbackWarn)||qt(o.fallbackWarn)?o.fallbackWarn:!0,N=a?n.fallbackRoot:re(o.fallbackRoot)?o.fallbackRoot:!0,v=!!o.fallbackFormat,$=Ae(o.missing)?o.missing:null,P=Ae(o.postTranslation)?o.postTranslation:null,T=a?n.warnHtmlMessage:re(o.warnHtmlMessage)?o.warnHtmlMessage:!0,_=!!o.escapeParameter,b=a?n.modifiers:ne(o.modifiers)?o.modifiers:{},L=o.pluralRules||a&&n.pluralRules;function A(){return[r.value,l.value,c.value,u.value,f.value]}const w=be({get:()=>s.value?s.value.locale.value:r.value,set:h=>{s.value&&(s.value.locale.value=h),r.value=h}}),D=be({get:()=>s.value?s.value.fallbackLocale.value:l.value,set:h=>{s.value&&(s.value.fallbackLocale.value=h),l.value=h}}),S=be(()=>s.value?s.value.messages.value:c.value),V=be(()=>u.value),ae=be(()=>f.value);function z(){return s.value?s.value.getPostTranslationHandler():P}function ee(h){s.value&&s.value.setPostTranslationHandler(h)}function Y(){return s.value?s.value.getMissingHandler():$}function F(h){s.value&&s.value.setMissingHandler(h)}function j(h){return A(),h()}function q(...h){return s.value?j(()=>Reflect.apply(s.value.t,null,[...h])):j(()=>"")}function W(...h){return s.value?Reflect.apply(s.value.rt,null,[...h]):""}function X(...h){return s.value?j(()=>Reflect.apply(s.value.d,null,[...h])):j(()=>"")}function ge(...h){return s.value?j(()=>Reflect.apply(s.value.n,null,[...h])):j(()=>"")}function ie(h){return s.value?s.value.tm(h):{}}function fe(h,M){return s.value?s.value.te(h,M):!1}function oe(h){return s.value?s.value.getLocaleMessage(h):{}}function le(h,M){s.value&&(s.value.setLocaleMessage(h,M),c.value[h]=M)}function Ne(h,M){s.value&&s.value.mergeLocaleMessage(h,M)}function Re(h){return s.value?s.value.getDateTimeFormat(h):{}}function Ye(h,M){s.value&&(s.value.setDateTimeFormat(h,M),u.value[h]=M)}function nt(h,M){s.value&&s.value.mergeDateTimeFormat(h,M)}function Zt(h){return s.value?s.value.getNumberFormat(h):{}}function ot(h,M){s.value&&(s.value.setNumberFormat(h,M),f.value[h]=M)}function Ln(h,M){s.value&&s.value.mergeNumberFormat(h,M)}const p={get id(){return s.value?s.value.id:-1},locale:w,fallbackLocale:D,messages:S,datetimeFormats:V,numberFormats:ae,get inheritLocale(){return s.value?s.value.inheritLocale:i},set inheritLocale(h){s.value&&(s.value.inheritLocale=h)},get availableLocales(){return s.value?s.value.availableLocales:Object.keys(c.value)},get modifiers(){return s.value?s.value.modifiers:b},get pluralRules(){return s.value?s.value.pluralRules:L},get isGlobal(){return s.value?s.value.isGlobal:!1},get missingWarn(){return s.value?s.value.missingWarn:m},set missingWarn(h){s.value&&(s.value.missingWarn=h)},get fallbackWarn(){return s.value?s.value.fallbackWarn:k},set fallbackWarn(h){s.value&&(s.value.missingWarn=h)},get fallbackRoot(){return s.value?s.value.fallbackRoot:N},set fallbackRoot(h){s.value&&(s.value.fallbackRoot=h)},get fallbackFormat(){return s.value?s.value.fallbackFormat:v},set fallbackFormat(h){s.value&&(s.value.fallbackFormat=h)},get warnHtmlMessage(){return s.value?s.value.warnHtmlMessage:T},set warnHtmlMessage(h){s.value&&(s.value.warnHtmlMessage=h)},get escapeParameter(){return s.value?s.value.escapeParameter:_},set escapeParameter(h){s.value&&(s.value.escapeParameter=h)},t:q,getPostTranslationHandler:z,setPostTranslationHandler:ee,getMissingHandler:Y,setMissingHandler:F,rt:W,d:X,n:ge,tm:ie,te:fe,getLocaleMessage:oe,setLocaleMessage:le,mergeLocaleMessage:Ne,getDateTimeFormat:Re,setDateTimeFormat:Ye,mergeDateTimeFormat:nt,getNumberFormat:Zt,setNumberFormat:ot,mergeNumberFormat:Ln};function y(h){h.locale.value=r.value,h.fallbackLocale.value=l.value,Object.keys(c.value).forEach(M=>{h.mergeLocaleMessage(M,c.value[M])}),Object.keys(u.value).forEach(M=>{h.mergeDateTimeFormat(M,u.value[M])}),Object.keys(f.value).forEach(M=>{h.mergeNumberFormat(M,f.value[M])}),h.escapeParameter=_,h.fallbackFormat=v,h.fallbackRoot=N,h.fallbackWarn=k,h.missingWarn=m,h.warnHtmlMessage=T}return wi(()=>{if(e.proxy==null||e.proxy.$i18n==null)throw Ie(we.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const h=s.value=e.proxy.$i18n.__composer;t==="global"?(r.value=h.locale.value,l.value=h.fallbackLocale.value,c.value=h.messages.value,u.value=h.datetimeFormats.value,f.value=h.numberFormats.value):a&&y(h)}),p}const gm=["locale","fallbackLocale","availableLocales"],Jl=["t","rt","d","n","tm","te"];function dm(e,t){const n=Object.create(null);return gm.forEach(a=>{const s=Object.getOwnPropertyDescriptor(t,a);if(!s)throw Ie(we.UNEXPECTED_ERROR);const i=Te(s.value)?{get(){return s.value.value},set(r){s.value.value=r}}:{get(){return s.get&&s.get()}};Object.defineProperty(n,a,i)}),e.config.globalProperties.$i18n=n,Jl.forEach(a=>{const s=Object.getOwnPropertyDescriptor(t,a);if(!s||!s.value)throw Ie(we.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${a}`,s)}),()=>{delete e.config.globalProperties.$i18n,Jl.forEach(a=>{delete e.config.globalProperties[`$${a}`]})}}if(zh(),__INTLIFY_JIT_COMPILATION__?dl(xh):dl(Oh),Ch(lh),wh(rl),__INTLIFY_PROD_DEVTOOLS__){const e=Rt();e.__INTLIFY__=!0,bh(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const fm=Object.assign({"./locales/ar/aria.json":_d,"./locales/ar/buttons.json":yd,"./locales/ar/detail.json":Ad,"./locales/ar/legend.json":Sd,"./locales/ar/messages.json":vd,"./locales/ar/options.json":kd,"./locales/ar/prayerLaps.json":Td,"./locales/ar/search.json":Ed,"./locales/ar/tabs.json":$d,"./locales/de/aria.json":Ld,"./locales/de/buttons.json":Cd,"./locales/de/detail.json":wd,"./locales/de/legend.json":Nd,"./locales/de/messages.json":Pd,"./locales/de/options.json":Md,"./locales/de/prayerLaps.json":Id,"./locales/de/search.json":Rd,"./locales/de/tabs.json":Dd,"./locales/en/aria.json":Fd,"./locales/en/buttons.json":Od,"./locales/en/detail.json":xd,"./locales/en/legend.json":jd,"./locales/en/messages.json":Bd,"./locales/en/options.json":Kd,"./locales/en/popup.json":Ud,"./locales/en/prayerLaps.json":Gd,"./locales/en/search.json":zd,"./locales/en/tabs.json":qd,"./locales/es/aria.json":Hd,"./locales/es/buttons.json":Vd,"./locales/es/detail.json":Wd,"./locales/es/legend.json":Yd,"./locales/es/messages.json":Jd,"./locales/es/options.json":Xd,"./locales/es/prayerLaps.json":Zd,"./locales/es/search.json":Qd,"./locales/es/tabs.json":ef,"./locales/fr/aria.json":tf,"./locales/fr/buttons.json":nf,"./locales/fr/detail.json":of,"./locales/fr/legend.json":af,"./locales/fr/messages.json":sf,"./locales/fr/options.json":rf,"./locales/fr/popup.json":lf,"./locales/fr/prayerLaps.json":cf,"./locales/fr/search.json":uf,"./locales/fr/tabs.json":gf,"./locales/hi/aria.json":df,"./locales/hi/buttons.json":ff,"./locales/hi/detail.json":pf,"./locales/hi/legend.json":hf,"./locales/hi/messages.json":mf,"./locales/hi/options.json":bf,"./locales/hi/prayerLaps.json":_f,"./locales/hi/search.json":yf,"./locales/it/aria.json":Af,"./locales/it/buttons.json":Sf,"./locales/it/detail.json":vf,"./locales/it/legend.json":kf,"./locales/it/messages.json":Tf,"./locales/it/options.json":Ef,"./locales/it/prayerLaps.json":$f,"./locales/it/search.json":Lf,"./locales/pt/aria.json":Cf,"./locales/pt/buttons.json":wf,"./locales/pt/detail.json":Nf,"./locales/pt/legend.json":Pf,"./locales/pt/messages.json":Mf,"./locales/pt/options.json":If,"./locales/pt/prayerLaps.json":Rf,"./locales/pt/search.json":Df,"./locales/pt/tabs.json":Ff,"./locales/ro/aria.json":Of,"./locales/ro/buttons.json":xf,"./locales/ro/detail.json":jf,"./locales/ro/legend.json":Bf,"./locales/ro/messages.json":Kf,"./locales/ro/options.json":Uf,"./locales/ro/prayerLaps.json":Gf,"./locales/ro/search.json":zf,"./locales/ru/aria.json":qf,"./locales/ru/buttons.json":Hf,"./locales/ru/detail.json":Vf,"./locales/ru/legend.json":Wf,"./locales/ru/messages.json":Yf,"./locales/ru/options.json":Jf,"./locales/ru/prayerLaps.json":Xf,"./locales/ru/search.json":Zf,"./locales/ru/tabs.json":Qf,"./locales/zh/aria.json":ep,"./locales/zh/buttons.json":tp,"./locales/zh/detail.json":np,"./locales/zh/legend.json":op,"./locales/zh/messages.json":ap,"./locales/zh/options.json":sp,"./locales/zh/prayerLaps.json":ip,"./locales/zh/search.json":rp}),oo={};for(const[e,t]of Object.entries(fm)){const n=e.match(/\.\/locales\/([^/]+)\/([^/]+)\.json$/);if(!n)continue;const[,o,a]=n;oo[o]??(oo[o]={}),oo[o][a]=t}const Xl=["ar","de","en","es","fr","hi","it","pt","ro","ru","zh"];function pm(){var n;const t=(((n=document==null?void 0:document.documentElement)==null?void 0:n.lang)||"").split("-")[0].toLowerCase();return Xl.includes(t)?t:"en"}function hm(){return nm({legacy:!1,globalInjection:!0,locale:pm(),fallbackLocale:"en",messages:oo,missingWarn:!1,fallbackWarn:!1})}function Zl(e,t){const n=t||mm(e);Gn(()=>{var r;const o=Mt();if(!o)return;const a=(r=o.proxy)==null?void 0:r.$el;if(!a)return;const s=a.getRootNode();if(!(s instanceof ShadowRoot)||s.querySelector(`style[data-shadow-styles="${n}"]`))return;const i=document.createElement("style");i.setAttribute("data-shadow-styles",n),i.textContent=e,s.appendChild(i)})}function mm(e){let t=0;for(let n=0;n(t==null?void 0:t.theme)==="dark"),a=be(()=>{var $;return(($=n==null?void 0:n.value)==null?void 0:$.pinHintLabel)||"Tap a coloured dot — someone still needs prayer"}),s=he(!1),i=he(null);let r=null,l=null,c=null,u=null,f=null;function m(){s.value=!1}function k($,P){var _;let T=$==null?void 0:$.parentElement;for(let b=0;T&&b<12;b++,T=T.parentElement){if(T===P||(_=T.classList)!=null&&_.contains("profile-loader"))return null;let L="";try{L=getComputedStyle(T).position}catch{}if(L&&L!=="static"){const A=T.getBoundingClientRect();if(A.height>=120&&A.width>=160)return T}}return null}function N(){const $=i.value;if($)try{$.style.removeProperty("--pin-hint-lift");const P=$.getBoundingClientRect();if(!P.height)return;const T=Math.round(P.bottom-window.innerHeight);T>0&&$.style.setProperty("--pin-hint-lift",T+8+"px")}catch{}}function v($){const P=i.value;if(!P||!($!=null&&$.querySelector))return;let T=0;try{const b=$.querySelector(".mapboxgl-ctrl-bottom-right .mapboxgl-ctrl-attrib, .mapboxgl-ctrl-bottom-right .doxa-attribution, .doxa-attribution");if(b){const L=b.getBoundingClientRect(),A=P.parentElement,w=A?A.getBoundingClientRect():null;if(T=w?Math.max(L.height||0,w.bottom-L.top):L.height||0,f!==b&&typeof ResizeObserver<"u"){if(c)try{c.disconnect()}catch{}f=b,c=new ResizeObserver(()=>v($)),c.observe(b)}}}catch{}const _=Math.min(Math.max(Math.ceil(T)||20,20),72);P.style.setProperty("--pin-hint-attrib-clear",_+"px"),N()}return Gn(()=>{var _,b,L;const $=Mt(),P=(L=(b=(_=$==null?void 0:$.proxy)==null?void 0:_.$el)==null?void 0:b.getRootNode)==null?void 0:L.call(b);if(!P||typeof P.querySelector!="function")return;let T=0;r=setInterval(()=>{T++;const A=P.querySelector("canvas");A?(clearInterval(r),r=null,s.value=!0,Co(()=>{const w=k(A,P),D=i.value;if(w&&D&&D.parentElement!==w)try{w.appendChild(D),l=w}catch{}v(P),N();try{const S=i.value&&i.value.offsetParent||null;if(S&&typeof ResizeObserver<"u"){if(u)try{u.disconnect()}catch{}u=new ResizeObserver(()=>N()),u.observe(S)}}catch{}})):T>40&&(clearInterval(r),r=null)},300)}),Do(()=>{var $;if(r&&clearInterval(r),c){try{c.disconnect()}catch{}c=null}if(f=null,u){try{u.disconnect()}catch{}u=null}if(l&&(($=i.value)==null?void 0:$.parentElement)===l)try{l.removeChild(i.value)}catch{}l=null}),Zl(` + */const Xh="9.14.5";function Zh(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(Rt().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(Rt().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(Rt().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(Rt().__INTLIFY_DROP_MESSAGE_COMPILER__=!1),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Rt().__INTLIFY_PROD_DEVTOOLS__=!1)}const Qh=wh.__EXTEND_POINT__,Ot=Yo(Qh);Ot(),Ot(),Ot(),Ot(),Ot(),Ot(),Ot(),Ot(),Ot();const Ml=ut.__EXTEND_POINT__,qe=Yo(Ml),Le={UNEXPECTED_RETURN_TYPE:Ml,INVALID_ARGUMENT:qe(),MUST_BE_CALL_SETUP_TOP:qe(),NOT_INSTALLED:qe(),NOT_AVAILABLE_IN_LEGACY_MODE:qe(),REQUIRED_VALUE:qe(),INVALID_VALUE:qe(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:qe(),NOT_INSTALLED_WITH_PROVIDE:qe(),UNEXPECTED_ERROR:qe(),NOT_COMPATIBLE_LEGACY_VUE_I18N:qe(),BRIDGE_SUPPORT_VUE_2_ONLY:qe(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:qe(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:qe(),__EXTEND_POINT__:qe()};function Ie(e,...t){return Sn(e,null,void 0)}const is=zt("__translateVNode"),ls=zt("__datetimeParts"),cs=zt("__numberParts"),Il=zt("__setPluralRules"),Rl=zt("__injectWithOption"),us=zt("__dispose");function no(e){if(!ue(e)||At(e))return e;for(const t in e)if(lt(e,t))if(!t.includes("."))ue(e[t])&&no(e[t]);else{const n=t.split("."),o=n.length-1;let a=e,s=!1;for(let r=0;r{if("locale"in i&&"resource"in i){const{locale:l,resource:c}=i;l?(r[l]=r[l]||me(),Xo(c,r[l])):Xo(c,r)}else H(i)&&Xo(JSON.parse(i),r)}),a==null&&s)for(const i in r)lt(r,i)&&no(r[i]);return r}function Fl(e){return e.type}function Ol(e,t,n){let o=ue(t.messages)?t.messages:me();"__i18nGlobal"in n&&(o=ta(e.locale.value,{messages:o,__i18n:n.__i18nGlobal}));const a=Object.keys(o);a.length&&a.forEach(s=>{e.mergeLocaleMessage(s,o[s])});{if(ue(t.datetimeFormats)){const s=Object.keys(t.datetimeFormats);s.length&&s.forEach(r=>{e.mergeDateTimeFormat(r,t.datetimeFormats[r])})}if(ue(t.numberFormats)){const s=Object.keys(t.numberFormats);s.length&&s.forEach(r=>{e.mergeNumberFormat(r,t.numberFormats[r])})}}}function Dl(e){return Me(Hn,null,e,0)}const xl="__INTLIFY_META__",jl=()=>[],em=()=>!1;let Bl=0;function Kl(e){return(t,n,o,a)=>e(n,o,Mt()||void 0,a)}const tm=()=>{const e=Mt();let t=null;return e&&(t=Fl(e)[xl])?{[xl]:t}:null};function gs(e={},t){const{__root:n,__injectWithOption:o}=e,a=n===void 0,s=e.flatJson,r=Vo?he:va,i=!!e.translateExistCompatible;let l=ie(e.inheritLocale)?e.inheritLocale:!0;const c=r(n&&l?n.locale.value:H(e.locale)?e.locale:kn),u=r(n&&l?n.fallbackLocale.value:H(e.fallbackLocale)||$e(e.fallbackLocale)||ne(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:c.value),p=r(ta(c.value,e)),m=r(ne(e.datetimeFormats)?e.datetimeFormats:{[c.value]:{}}),$=r(ne(e.numberFormats)?e.numberFormats:{[c.value]:{}});let w=n?n.missingWarn:ie(e.missingWarn)||qt(e.missingWarn)?e.missingWarn:!0,v=n?n.fallbackWarn:ie(e.fallbackWarn)||qt(e.fallbackWarn)?e.fallbackWarn:!0,T=n?n.fallbackRoot:ie(e.fallbackRoot)?e.fallbackRoot:!0,P=!!e.fallbackFormat,k=Ae(e.missing)?e.missing:null,y=Ae(e.missing)?Kl(e.missing):null,b=Ae(e.postTranslation)?e.postTranslation:null,C=n?n.warnHtmlMessage:ie(e.warnHtmlMessage)?e.warnHtmlMessage:!0,A=!!e.escapeParameter;const L=n?n.modifiers:ne(e.modifiers)?e.modifiers:{};let F=e.pluralRules||n&&n.pluralRules,S;S=(()=>{a&&bl(null);const E={version:Xh,locale:c.value,fallbackLocale:u.value,messages:p.value,modifiers:L,pluralRules:F,missing:y===null?void 0:y,missingWarn:w,fallbackWarn:v,fallbackFormat:P,unresolving:!0,postTranslation:b===null?void 0:b,warnHtmlMessage:C,escapeParameter:A,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};E.datetimeFormats=m.value,E.numberFormats=$.value,E.__datetimeFormatters=ne(S)?S.__datetimeFormatters:void 0,E.__numberFormatters=ne(S)?S.__numberFormatters:void 0;const R=Kh(E);return a&&bl(R),R})(),to(S,c.value,u.value);function ae(){return[c.value,u.value,p.value,m.value,$.value]}const z=be({get:()=>c.value,set:E=>{c.value=E,S.locale=c.value}}),ee=be({get:()=>u.value,set:E=>{u.value=E,S.fallbackLocale=u.value,to(S,c.value,E)}}),Y=be(()=>p.value),O=be(()=>m.value),j=be(()=>$.value);function q(){return Ae(b)?b:null}function W(E){b=E,S.postTranslation=E}function X(){return k}function ge(E){E!==null&&(y=Kl(E)),k=E,S.missing=y}const re=(E,R,J,se,Se,Ge)=>{ae();let xe;try{__INTLIFY_PROD_DEVTOOLS__,a||(S.fallbackContext=n?Bh():void 0),xe=E(S)}finally{__INTLIFY_PROD_DEVTOOLS__,a||(S.fallbackContext=void 0)}if(J!=="translate exists"&&Te(xe)&&xe===ea||J==="translate exists"&&!xe){const[cn,Os]=R();return n&&T?se(n):Se(cn)}else{if(Ge(xe))return xe;throw Ie(Le.UNEXPECTED_RETURN_TYPE)}};function pe(...E){return re(R=>Reflect.apply($l,null,[R,...E]),()=>as(...E),"translate",R=>Reflect.apply(R.t,R,[...E]),R=>R,R=>H(R))}function oe(...E){const[R,J,se]=E;if(se&&!ue(se))throw Ie(Le.INVALID_ARGUMENT);return pe(R,J,De({resolvedMessage:!0},se||{}))}function le(...E){return re(R=>Reflect.apply(Tl,null,[R,...E]),()=>ss(...E),"datetime format",R=>Reflect.apply(R.d,R,[...E]),()=>cl,R=>H(R))}function we(...E){return re(R=>Reflect.apply(Ll,null,[R,...E]),()=>rs(...E),"number format",R=>Reflect.apply(R.n,R,[...E]),()=>cl,R=>H(R))}function Re(E){return E.map(R=>H(R)||Te(R)||ie(R)?Dl(String(R)):R)}const nt={normalize:Re,interpolate:E=>E,type:"vnode"};function Zt(...E){return re(R=>{let J;const se=R;try{se.processor=nt,J=Reflect.apply($l,null,[se,...E])}finally{se.processor=null}return J},()=>as(...E),"translate",R=>R[is](...E),R=>[Dl(R)],R=>$e(R))}function ot(...E){return re(R=>Reflect.apply(Ll,null,[R,...E]),()=>rs(...E),"number format",R=>R[cs](...E),jl,R=>H(R)||$e(R))}function Cn(...E){return re(R=>Reflect.apply(Tl,null,[R,...E]),()=>ss(...E),"datetime format",R=>R[ls](...E),jl,R=>H(R)||$e(R))}function f(E){F=E,S.pluralRules=F}function _(E,R){return re(()=>{if(!E)return!1;const J=H(R)?R:c.value,se=x(J),Se=S.messageResolver(se,E);return i?Se!=null:At(Se)||et(Se)||H(Se)},()=>[E],"translate exists",J=>Reflect.apply(J.te,J,[E,R]),em,J=>ie(J))}function h(E){let R=null;const J=il(S,u.value,c.value);for(let se=0;se{l&&(c.value=E,S.locale=E,to(S,c.value,u.value))}),Ut(n.fallbackLocale,E=>{l&&(u.value=E,S.fallbackLocale=E,to(S,c.value,u.value))}));const B={id:Bl,locale:z,fallbackLocale:ee,get inheritLocale(){return l},set inheritLocale(E){l=E,E&&n&&(c.value=n.locale.value,u.value=n.fallbackLocale.value,to(S,c.value,u.value))},get availableLocales(){return Object.keys(p.value).sort()},messages:Y,get modifiers(){return L},get pluralRules(){return F||{}},get isGlobal(){return a},get missingWarn(){return w},set missingWarn(E){w=E,S.missingWarn=w},get fallbackWarn(){return v},set fallbackWarn(E){v=E,S.fallbackWarn=v},get fallbackRoot(){return T},set fallbackRoot(E){T=E},get fallbackFormat(){return P},set fallbackFormat(E){P=E,S.fallbackFormat=P},get warnHtmlMessage(){return C},set warnHtmlMessage(E){C=E,S.warnHtmlMessage=E},get escapeParameter(){return A},set escapeParameter(E){A=E,S.escapeParameter=E},t:pe,getLocaleMessage:x,setLocaleMessage:D,mergeLocaleMessage:U,getPostTranslationHandler:q,setPostTranslationHandler:W,getMissingHandler:X,setMissingHandler:ge,[Il]:f};return B.datetimeFormats=O,B.numberFormats=j,B.rt=oe,B.te=_,B.tm=M,B.d=le,B.n=we,B.getDateTimeFormat=K,B.setDateTimeFormat=g,B.mergeDateTimeFormat=d,B.getNumberFormat=N,B.setNumberFormat=I,B.mergeNumberFormat=G,B[Rl]=o,B[is]=Zt,B[ls]=Cn,B[cs]=ot,B}function nm(e){const t=H(e.locale)?e.locale:kn,n=H(e.fallbackLocale)||$e(e.fallbackLocale)||ne(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:t,o=Ae(e.missing)?e.missing:void 0,a=ie(e.silentTranslationWarn)||qt(e.silentTranslationWarn)?!e.silentTranslationWarn:!0,s=ie(e.silentFallbackWarn)||qt(e.silentFallbackWarn)?!e.silentFallbackWarn:!0,r=ie(e.fallbackRoot)?e.fallbackRoot:!0,i=!!e.formatFallbackMessages,l=ne(e.modifiers)?e.modifiers:{},c=e.pluralizationRules,u=Ae(e.postTranslation)?e.postTranslation:void 0,p=H(e.warnHtmlInMessage)?e.warnHtmlInMessage!=="off":!0,m=!!e.escapeParameterHtml,$=ie(e.sync)?e.sync:!0;let w=e.messages;if(ne(e.sharedMessages)){const A=e.sharedMessages;w=Object.keys(A).reduce((F,S)=>{const V=F[S]||(F[S]={});return De(V,A[S]),F},w||{})}const{__i18n:v,__root:T,__injectWithOption:P}=e,k=e.datetimeFormats,y=e.numberFormats,b=e.flatJson,C=e.translateExistCompatible;return{locale:t,fallbackLocale:n,messages:w,flatJson:b,datetimeFormats:k,numberFormats:y,missing:o,missingWarn:a,fallbackWarn:s,fallbackRoot:r,fallbackFormat:i,modifiers:l,pluralRules:c,postTranslation:u,warnHtmlMessage:p,escapeParameter:m,messageResolver:e.messageResolver,inheritLocale:$,translateExistCompatible:C,__i18n:v,__root:T,__injectWithOption:P}}function ds(e={},t){{const n=gs(nm(e)),{__extender:o}=e,a={id:n.id,get locale(){return n.locale.value},set locale(s){n.locale.value=s},get fallbackLocale(){return n.fallbackLocale.value},set fallbackLocale(s){n.fallbackLocale.value=s},get messages(){return n.messages.value},get datetimeFormats(){return n.datetimeFormats.value},get numberFormats(){return n.numberFormats.value},get availableLocales(){return n.availableLocales},get formatter(){return{interpolate(){return[]}}},set formatter(s){},get missing(){return n.getMissingHandler()},set missing(s){n.setMissingHandler(s)},get silentTranslationWarn(){return ie(n.missingWarn)?!n.missingWarn:n.missingWarn},set silentTranslationWarn(s){n.missingWarn=ie(s)?!s:s},get silentFallbackWarn(){return ie(n.fallbackWarn)?!n.fallbackWarn:n.fallbackWarn},set silentFallbackWarn(s){n.fallbackWarn=ie(s)?!s:s},get modifiers(){return n.modifiers},get formatFallbackMessages(){return n.fallbackFormat},set formatFallbackMessages(s){n.fallbackFormat=s},get postTranslation(){return n.getPostTranslationHandler()},set postTranslation(s){n.setPostTranslationHandler(s)},get sync(){return n.inheritLocale},set sync(s){n.inheritLocale=s},get warnHtmlInMessage(){return n.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(s){n.warnHtmlMessage=s!=="off"},get escapeParameterHtml(){return n.escapeParameter},set escapeParameterHtml(s){n.escapeParameter=s},get preserveDirectiveContent(){return!0},set preserveDirectiveContent(s){},get pluralizationRules(){return n.pluralRules||{}},__composer:n,t(...s){const[r,i,l]=s,c={};let u=null,p=null;if(!H(r))throw Ie(Le.INVALID_ARGUMENT);const m=r;return H(i)?c.locale=i:$e(i)?u=i:ne(i)&&(p=i),$e(l)?u=l:ne(l)&&(p=l),Reflect.apply(n.t,n,[m,u||p||{},c])},rt(...s){return Reflect.apply(n.rt,n,[...s])},tc(...s){const[r,i,l]=s,c={plural:1};let u=null,p=null;if(!H(r))throw Ie(Le.INVALID_ARGUMENT);const m=r;return H(i)?c.locale=i:Te(i)?c.plural=i:$e(i)?u=i:ne(i)&&(p=i),H(l)?c.locale=l:$e(l)?u=l:ne(l)&&(p=l),Reflect.apply(n.t,n,[m,u||p||{},c])},te(s,r){return n.te(s,r)},tm(s){return n.tm(s)},getLocaleMessage(s){return n.getLocaleMessage(s)},setLocaleMessage(s,r){n.setLocaleMessage(s,r)},mergeLocaleMessage(s,r){n.mergeLocaleMessage(s,r)},d(...s){return Reflect.apply(n.d,n,[...s])},getDateTimeFormat(s){return n.getDateTimeFormat(s)},setDateTimeFormat(s,r){n.setDateTimeFormat(s,r)},mergeDateTimeFormat(s,r){n.mergeDateTimeFormat(s,r)},n(...s){return Reflect.apply(n.n,n,[...s])},getNumberFormat(s){return n.getNumberFormat(s)},setNumberFormat(s,r){n.setNumberFormat(s,r)},mergeNumberFormat(s,r){n.mergeNumberFormat(s,r)},getChoiceIndex(s,r){return-1}};return a.__extender=o,a}}const ps={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function om({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((o,a)=>[...o,...a.type===Qe?a.children:[a]],[]):t.reduce((n,o)=>{const a=e[o];return a&&(n[o]=a()),n},me())}function Ul(e){return Qe}const Gl=Bn({name:"i18n-t",props:De({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>Te(e)||!isNaN(e)}},ps),setup(e,t){const{slots:n,attrs:o}=t,a=e.i18n||fs({useScope:e.scope,__useComponent:!0});return()=>{const s=Object.keys(n).filter(p=>p!=="_"),r=me();e.locale&&(r.locale=e.locale),e.plural!==void 0&&(r.plural=H(e.plural)?+e.plural:e.plural);const i=om(t,s),l=a[is](e.keypath,i,r),c=De(me(),o),u=H(e.tag)||ue(e.tag)?e.tag:Ul();return pi(u,c,l)}}});function am(e){return $e(e)&&!H(e[0])}function zl(e,t,n,o){const{slots:a,attrs:s}=t;return()=>{const r={part:!0};let i=me();e.locale&&(r.locale=e.locale),H(e.format)?r.key=e.format:ue(e.format)&&(H(e.format.key)&&(r.key=e.format.key),i=Object.keys(e.format).reduce((m,$)=>n.includes($)?De(me(),m,{[$]:e.format[$]}):m,me()));const l=o(e.value,r,i);let c=[r.key];$e(l)?c=l.map((m,$)=>{const w=a[m.type],v=w?w({[m.type]:m.value,index:$,parts:l}):[m.value];return am(v)&&(v[0].key=`${m.type}-${$}`),v}):H(l)&&(c=[l]);const u=De(me(),s),p=H(e.tag)||ue(e.tag)?e.tag:Ul();return pi(p,u,c)}}const ql=Bn({name:"i18n-n",props:De({value:{type:Number,required:!0},format:{type:[String,Object]}},ps),setup(e,t){const n=e.i18n||fs({useScope:e.scope,__useComponent:!0});return zl(e,t,wl,(...o)=>n[cs](...o))}}),Hl=Bn({name:"i18n-d",props:De({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},ps),setup(e,t){const n=e.i18n||fs({useScope:e.scope,__useComponent:!0});return zl(e,t,Cl,(...o)=>n[ls](...o))}});function sm(e,t){const n=e;if(e.mode==="composition")return n.__getInstance(t)||e.global;{const o=n.__getInstance(t);return o!=null?o.__composer:e.global.__composer}}function rm(e){const t=r=>{const{instance:i,modifiers:l,value:c}=r;if(!i||!i.$)throw Ie(Le.UNEXPECTED_ERROR);const u=sm(e,i.$),p=Vl(c);return[Reflect.apply(u.t,u,[...Wl(p)]),u]};return{created:(r,i)=>{const[l,c]=t(i);Vo&&e.global===c&&(r.__i18nWatcher=Ut(c.locale,()=>{i.instance&&i.instance.$forceUpdate()})),r.__composer=c,r.textContent=l},unmounted:r=>{Vo&&r.__i18nWatcher&&(r.__i18nWatcher(),r.__i18nWatcher=void 0,delete r.__i18nWatcher),r.__composer&&(r.__composer=void 0,delete r.__composer)},beforeUpdate:(r,{value:i})=>{if(r.__composer){const l=r.__composer,c=Vl(i);r.textContent=Reflect.apply(l.t,l,[...Wl(c)])}},getSSRProps:r=>{const[i]=t(r);return{textContent:i}}}}function Vl(e){if(H(e))return{path:e};if(ne(e)){if(!("path"in e))throw Ie(Le.REQUIRED_VALUE,"path");return e}else throw Ie(Le.INVALID_VALUE)}function Wl(e){const{path:t,locale:n,args:o,choice:a,plural:s}=e,r={},i=o||{};return H(n)&&(r.locale=n),Te(a)&&(r.plural=a),Te(s)&&(r.plural=s),[t,i,r]}function im(e,t,...n){const o=ne(n[0])?n[0]:{},a=!!o.useI18nComponentName;(ie(o.globalInstall)?o.globalInstall:!0)&&([a?"i18n":Gl.name,"I18nT"].forEach(r=>e.component(r,Gl)),[ql.name,"I18nN"].forEach(r=>e.component(r,ql)),[Hl.name,"I18nD"].forEach(r=>e.component(r,Hl))),e.directive("t",rm(t))}function lm(e,t,n){return{beforeCreate(){const o=Mt();if(!o)throw Ie(Le.UNEXPECTED_ERROR);const a=this.$options;if(a.i18n){const s=a.i18n;if(a.__i18n&&(s.__i18n=a.__i18n),s.__root=t,this===this.$root)this.$i18n=Yl(e,s);else{s.__injectWithOption=!0,s.__extender=n.__vueI18nExtend,this.$i18n=ds(s);const r=this.$i18n;r.__extender&&(r.__disposer=r.__extender(this.$i18n))}}else if(a.__i18n)if(this===this.$root)this.$i18n=Yl(e,a);else{this.$i18n=ds({__i18n:a.__i18n,__injectWithOption:!0,__extender:n.__vueI18nExtend,__root:t});const s=this.$i18n;s.__extender&&(s.__disposer=s.__extender(this.$i18n))}else this.$i18n=e;a.__i18nGlobal&&Ol(t,a,a),this.$t=(...s)=>this.$i18n.t(...s),this.$rt=(...s)=>this.$i18n.rt(...s),this.$tc=(...s)=>this.$i18n.tc(...s),this.$te=(s,r)=>this.$i18n.te(s,r),this.$d=(...s)=>this.$i18n.d(...s),this.$n=(...s)=>this.$i18n.n(...s),this.$tm=s=>this.$i18n.tm(s),n.__setInstance(o,this.$i18n)},mounted(){},unmounted(){const o=Mt();if(!o)throw Ie(Le.UNEXPECTED_ERROR);const a=this.$i18n;delete this.$t,delete this.$rt,delete this.$tc,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,a.__disposer&&(a.__disposer(),delete a.__disposer,delete a.__extender),n.__deleteInstance(o),delete this.$i18n}}}function Yl(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[Il](t.pluralizationRules||e.pluralizationRules);const n=ta(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(n).forEach(o=>e.mergeLocaleMessage(o,n[o])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(o=>e.mergeDateTimeFormat(o,t.datetimeFormats[o])),t.numberFormats&&Object.keys(t.numberFormats).forEach(o=>e.mergeNumberFormat(o,t.numberFormats[o])),e}const cm=zt("global-vue-i18n");function um(e={},t){const n=__VUE_I18N_LEGACY_API__&&ie(e.legacy)?e.legacy:__VUE_I18N_LEGACY_API__,o=ie(e.globalInjection)?e.globalInjection:!0,a=__VUE_I18N_LEGACY_API__&&n?!!e.allowComposition:!0,s=new Map,[r,i]=gm(e,n),l=zt("");function c(m){return s.get(m)||null}function u(m,$){s.set(m,$)}function p(m){s.delete(m)}{const m={get mode(){return __VUE_I18N_LEGACY_API__&&n?"legacy":"composition"},get allowComposition(){return a},async install($,...w){if($.__VUE_I18N_SYMBOL__=l,$.provide($.__VUE_I18N_SYMBOL__,m),ne(w[0])){const P=w[0];m.__composerExtend=P.__composerExtend,m.__vueI18nExtend=P.__vueI18nExtend}let v=null;!n&&o&&(v=Am($,m.global)),__VUE_I18N_FULL_INSTALL__&&im($,m,...w),__VUE_I18N_LEGACY_API__&&n&&$.mixin(lm(i,i.__composer,m));const T=$.unmount;$.unmount=()=>{v&&v(),m.dispose(),T()}},get global(){return i},dispose(){r.stop()},__instances:s,__getInstance:c,__setInstance:u,__deleteInstance:p};return m}}function fs(e={}){const t=Mt();if(t==null)throw Ie(Le.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw Ie(Le.NOT_INSTALLED);const n=dm(t),o=fm(n),a=Fl(t),s=pm(e,a);if(__VUE_I18N_LEGACY_API__&&n.mode==="legacy"&&!e.__useComponent){if(!n.allowComposition)throw Ie(Le.NOT_AVAILABLE_IN_LEGACY_MODE);return ym(t,s,o,e)}if(s==="global")return Ol(o,e,a),o;if(s==="parent"){let l=hm(n,t,e.__useComponent);return l==null&&(l=o),l}const r=n;let i=r.__getInstance(t);if(i==null){const l=De({},e);"__i18n"in a&&(l.__i18n=a.__i18n),o&&(l.__root=o),i=gs(l),r.__composerExtend&&(i[us]=r.__composerExtend(i)),bm(r,t,i),r.__setInstance(t,i)}return i}function gm(e,t,n){const o=ua();{const a=__VUE_I18N_LEGACY_API__&&t?o.run(()=>ds(e)):o.run(()=>gs(e));if(a==null)throw Ie(Le.UNEXPECTED_ERROR);return[o,a]}}function dm(e){{const t=Fe(e.isCE?cm:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw Ie(e.isCE?Le.NOT_INSTALLED_WITH_PROVIDE:Le.UNEXPECTED_ERROR);return t}}function pm(e,t){return Wo(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function fm(e){return e.mode==="composition"?e.global:e.global.__composer}function hm(e,t,n=!1){let o=null;const a=t.root;let s=mm(t,n);for(;s!=null;){const r=e;if(e.mode==="composition")o=r.__getInstance(s);else if(__VUE_I18N_LEGACY_API__){const i=r.__getInstance(s);i!=null&&(o=i.__composer,n&&o&&!o[Rl]&&(o=null))}if(o!=null||a===s)break;s=s.parent}return o}function mm(e,t=!1){return e==null?null:t&&e.vnode.ctx||e.parent}function bm(e,t,n){Gn(()=>{},t),Oo(()=>{const o=n;e.__deleteInstance(t);const a=o[us];a&&(a(),delete o[us])},t)}function ym(e,t,n,o={}){const a=t==="local",s=va(null);if(a&&e.proxy&&!(e.proxy.$options.i18n||e.proxy.$options.__i18n))throw Ie(Le.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const r=ie(o.inheritLocale)?o.inheritLocale:!H(o.locale),i=he(!a||r?n.locale.value:H(o.locale)?o.locale:kn),l=he(!a||r?n.fallbackLocale.value:H(o.fallbackLocale)||$e(o.fallbackLocale)||ne(o.fallbackLocale)||o.fallbackLocale===!1?o.fallbackLocale:i.value),c=he(ta(i.value,o)),u=he(ne(o.datetimeFormats)?o.datetimeFormats:{[i.value]:{}}),p=he(ne(o.numberFormats)?o.numberFormats:{[i.value]:{}}),m=a?n.missingWarn:ie(o.missingWarn)||qt(o.missingWarn)?o.missingWarn:!0,$=a?n.fallbackWarn:ie(o.fallbackWarn)||qt(o.fallbackWarn)?o.fallbackWarn:!0,w=a?n.fallbackRoot:ie(o.fallbackRoot)?o.fallbackRoot:!0,v=!!o.fallbackFormat,T=Ae(o.missing)?o.missing:null,P=Ae(o.postTranslation)?o.postTranslation:null,k=a?n.warnHtmlMessage:ie(o.warnHtmlMessage)?o.warnHtmlMessage:!0,y=!!o.escapeParameter,b=a?n.modifiers:ne(o.modifiers)?o.modifiers:{},C=o.pluralRules||a&&n.pluralRules;function A(){return[i.value,l.value,c.value,u.value,p.value]}const L=be({get:()=>s.value?s.value.locale.value:i.value,set:h=>{s.value&&(s.value.locale.value=h),i.value=h}}),F=be({get:()=>s.value?s.value.fallbackLocale.value:l.value,set:h=>{s.value&&(s.value.fallbackLocale.value=h),l.value=h}}),S=be(()=>s.value?s.value.messages.value:c.value),V=be(()=>u.value),ae=be(()=>p.value);function z(){return s.value?s.value.getPostTranslationHandler():P}function ee(h){s.value&&s.value.setPostTranslationHandler(h)}function Y(){return s.value?s.value.getMissingHandler():T}function O(h){s.value&&s.value.setMissingHandler(h)}function j(h){return A(),h()}function q(...h){return s.value?j(()=>Reflect.apply(s.value.t,null,[...h])):j(()=>"")}function W(...h){return s.value?Reflect.apply(s.value.rt,null,[...h]):""}function X(...h){return s.value?j(()=>Reflect.apply(s.value.d,null,[...h])):j(()=>"")}function ge(...h){return s.value?j(()=>Reflect.apply(s.value.n,null,[...h])):j(()=>"")}function re(h){return s.value?s.value.tm(h):{}}function pe(h,M){return s.value?s.value.te(h,M):!1}function oe(h){return s.value?s.value.getLocaleMessage(h):{}}function le(h,M){s.value&&(s.value.setLocaleMessage(h,M),c.value[h]=M)}function we(h,M){s.value&&s.value.mergeLocaleMessage(h,M)}function Re(h){return s.value?s.value.getDateTimeFormat(h):{}}function Ye(h,M){s.value&&(s.value.setDateTimeFormat(h,M),u.value[h]=M)}function nt(h,M){s.value&&s.value.mergeDateTimeFormat(h,M)}function Zt(h){return s.value?s.value.getNumberFormat(h):{}}function ot(h,M){s.value&&(s.value.setNumberFormat(h,M),p.value[h]=M)}function Cn(h,M){s.value&&s.value.mergeNumberFormat(h,M)}const f={get id(){return s.value?s.value.id:-1},locale:L,fallbackLocale:F,messages:S,datetimeFormats:V,numberFormats:ae,get inheritLocale(){return s.value?s.value.inheritLocale:r},set inheritLocale(h){s.value&&(s.value.inheritLocale=h)},get availableLocales(){return s.value?s.value.availableLocales:Object.keys(c.value)},get modifiers(){return s.value?s.value.modifiers:b},get pluralRules(){return s.value?s.value.pluralRules:C},get isGlobal(){return s.value?s.value.isGlobal:!1},get missingWarn(){return s.value?s.value.missingWarn:m},set missingWarn(h){s.value&&(s.value.missingWarn=h)},get fallbackWarn(){return s.value?s.value.fallbackWarn:$},set fallbackWarn(h){s.value&&(s.value.missingWarn=h)},get fallbackRoot(){return s.value?s.value.fallbackRoot:w},set fallbackRoot(h){s.value&&(s.value.fallbackRoot=h)},get fallbackFormat(){return s.value?s.value.fallbackFormat:v},set fallbackFormat(h){s.value&&(s.value.fallbackFormat=h)},get warnHtmlMessage(){return s.value?s.value.warnHtmlMessage:k},set warnHtmlMessage(h){s.value&&(s.value.warnHtmlMessage=h)},get escapeParameter(){return s.value?s.value.escapeParameter:y},set escapeParameter(h){s.value&&(s.value.escapeParameter=h)},t:q,getPostTranslationHandler:z,setPostTranslationHandler:ee,getMissingHandler:Y,setMissingHandler:O,rt:W,d:X,n:ge,tm:re,te:pe,getLocaleMessage:oe,setLocaleMessage:le,mergeLocaleMessage:we,getDateTimeFormat:Re,setDateTimeFormat:Ye,mergeDateTimeFormat:nt,getNumberFormat:Zt,setNumberFormat:ot,mergeNumberFormat:Cn};function _(h){h.locale.value=i.value,h.fallbackLocale.value=l.value,Object.keys(c.value).forEach(M=>{h.mergeLocaleMessage(M,c.value[M])}),Object.keys(u.value).forEach(M=>{h.mergeDateTimeFormat(M,u.value[M])}),Object.keys(p.value).forEach(M=>{h.mergeNumberFormat(M,p.value[M])}),h.escapeParameter=y,h.fallbackFormat=v,h.fallbackRoot=w,h.fallbackWarn=$,h.missingWarn=m,h.warnHtmlMessage=k}return Lr(()=>{if(e.proxy==null||e.proxy.$i18n==null)throw Ie(Le.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const h=s.value=e.proxy.$i18n.__composer;t==="global"?(i.value=h.locale.value,l.value=h.fallbackLocale.value,c.value=h.messages.value,u.value=h.datetimeFormats.value,p.value=h.numberFormats.value):a&&_(h)}),f}const _m=["locale","fallbackLocale","availableLocales"],Jl=["t","rt","d","n","tm","te"];function Am(e,t){const n=Object.create(null);return _m.forEach(a=>{const s=Object.getOwnPropertyDescriptor(t,a);if(!s)throw Ie(Le.UNEXPECTED_ERROR);const r=ke(s.value)?{get(){return s.value.value},set(i){s.value.value=i}}:{get(){return s.get&&s.get()}};Object.defineProperty(n,a,r)}),e.config.globalProperties.$i18n=n,Jl.forEach(a=>{const s=Object.getOwnPropertyDescriptor(t,a);if(!s||!s.value)throw Ie(Le.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${a}`,s)}),()=>{delete e.config.globalProperties.$i18n,Jl.forEach(a=>{delete e.config.globalProperties[`$${a}`]})}}if(Zh(),__INTLIFY_JIT_COMPILATION__?dl(Hh):dl(qh),Oh(mh),Dh(il),__INTLIFY_PROD_DEVTOOLS__){const e=Rt();e.__INTLIFY__=!0,Eh(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const Sm=Object.assign({"./locales/ar/aria.json":yd,"./locales/ar/buttons.json":_d,"./locales/ar/detail.json":Ad,"./locales/ar/legend.json":Sd,"./locales/ar/messages.json":vd,"./locales/ar/options.json":$d,"./locales/ar/prayerLaps.json":kd,"./locales/ar/regions.json":Ed,"./locales/ar/search.json":Td,"./locales/ar/tabs.json":Cd,"./locales/de/aria.json":Nd,"./locales/de/buttons.json":Ld,"./locales/de/detail.json":wd,"./locales/de/legend.json":Pd,"./locales/de/messages.json":Md,"./locales/de/options.json":Id,"./locales/de/prayerLaps.json":Rd,"./locales/de/regions.json":Fd,"./locales/de/search.json":Od,"./locales/de/tabs.json":Dd,"./locales/en/aria.json":xd,"./locales/en/buttons.json":jd,"./locales/en/detail.json":Bd,"./locales/en/legend.json":Kd,"./locales/en/messages.json":Ud,"./locales/en/options.json":Gd,"./locales/en/popup.json":zd,"./locales/en/prayerLaps.json":qd,"./locales/en/regions.json":Hd,"./locales/en/search.json":Vd,"./locales/en/tabs.json":Wd,"./locales/es/aria.json":Yd,"./locales/es/buttons.json":Jd,"./locales/es/detail.json":Xd,"./locales/es/legend.json":Zd,"./locales/es/messages.json":Qd,"./locales/es/options.json":ep,"./locales/es/prayerLaps.json":tp,"./locales/es/regions.json":np,"./locales/es/search.json":op,"./locales/es/tabs.json":ap,"./locales/fr/aria.json":sp,"./locales/fr/buttons.json":rp,"./locales/fr/detail.json":ip,"./locales/fr/legend.json":lp,"./locales/fr/messages.json":cp,"./locales/fr/options.json":up,"./locales/fr/popup.json":gp,"./locales/fr/prayerLaps.json":dp,"./locales/fr/regions.json":pp,"./locales/fr/search.json":fp,"./locales/fr/tabs.json":hp,"./locales/hi/aria.json":mp,"./locales/hi/buttons.json":bp,"./locales/hi/detail.json":yp,"./locales/hi/legend.json":_p,"./locales/hi/messages.json":Ap,"./locales/hi/options.json":Sp,"./locales/hi/prayerLaps.json":vp,"./locales/hi/regions.json":$p,"./locales/hi/search.json":kp,"./locales/it/aria.json":Ep,"./locales/it/buttons.json":Tp,"./locales/it/detail.json":Cp,"./locales/it/legend.json":Np,"./locales/it/messages.json":Lp,"./locales/it/options.json":wp,"./locales/it/prayerLaps.json":Pp,"./locales/it/search.json":Mp,"./locales/pt/aria.json":Ip,"./locales/pt/buttons.json":Rp,"./locales/pt/detail.json":Fp,"./locales/pt/legend.json":Op,"./locales/pt/messages.json":Dp,"./locales/pt/options.json":xp,"./locales/pt/prayerLaps.json":jp,"./locales/pt/regions.json":Bp,"./locales/pt/search.json":Kp,"./locales/pt/tabs.json":Up,"./locales/ro/aria.json":Gp,"./locales/ro/buttons.json":zp,"./locales/ro/detail.json":qp,"./locales/ro/legend.json":Hp,"./locales/ro/messages.json":Vp,"./locales/ro/options.json":Wp,"./locales/ro/prayerLaps.json":Yp,"./locales/ro/search.json":Jp,"./locales/ru/aria.json":Xp,"./locales/ru/buttons.json":Zp,"./locales/ru/detail.json":Qp,"./locales/ru/legend.json":ef,"./locales/ru/messages.json":tf,"./locales/ru/options.json":nf,"./locales/ru/prayerLaps.json":of,"./locales/ru/regions.json":af,"./locales/ru/search.json":sf,"./locales/ru/tabs.json":rf,"./locales/zh/aria.json":lf,"./locales/zh/buttons.json":cf,"./locales/zh/detail.json":uf,"./locales/zh/legend.json":gf,"./locales/zh/messages.json":df,"./locales/zh/options.json":pf,"./locales/zh/prayerLaps.json":ff,"./locales/zh/search.json":hf}),oo={};for(const[e,t]of Object.entries(Sm)){const n=e.match(/\.\/locales\/([^/]+)\/([^/]+)\.json$/);if(!n)continue;const[,o,a]=n;oo[o]??(oo[o]={}),oo[o][a]=t}const Xl=["ar","de","en","es","fr","hi","it","pt","ro","ru","zh"];function vm(){var n;const t=(((n=document==null?void 0:document.documentElement)==null?void 0:n.lang)||"").split("-")[0].toLowerCase();return Xl.includes(t)?t:"en"}function $m(){return um({legacy:!1,globalInjection:!0,locale:vm(),fallbackLocale:"en",messages:oo,missingWarn:!1,fallbackWarn:!1})}function Zl(e,t){const n=t||km(e);Gn(()=>{var i;const o=Mt();if(!o)return;const a=(i=o.proxy)==null?void 0:i.$el;if(!a)return;const s=a.getRootNode();if(!(s instanceof ShadowRoot)||s.querySelector(`style[data-shadow-styles="${n}"]`))return;const r=document.createElement("style");r.setAttribute("data-shadow-styles",n),r.textContent=e,s.appendChild(r)})}function km(e){let t=0;for(let n=0;n(t==null?void 0:t.theme)==="dark"),a=be(()=>{var T;return((T=n==null?void 0:n.value)==null?void 0:T.pinHintLabel)||"Tap a coloured dot — someone still needs prayer"}),s=he(!1),r=he(null);let i=null,l=null,c=null,u=null,p=null;function m(){s.value=!1}function $(T,P){var y;let k=T==null?void 0:T.parentElement;for(let b=0;k&&b<12;b++,k=k.parentElement){if(k===P||(y=k.classList)!=null&&y.contains("profile-loader"))return null;let C="";try{C=getComputedStyle(k).position}catch{}if(C&&C!=="static"){const A=k.getBoundingClientRect();if(A.height>=120&&A.width>=160)return k}}return null}function w(){const T=r.value;if(T)try{T.style.removeProperty("--pin-hint-lift");const P=T.getBoundingClientRect();if(!P.height)return;const k=Math.round(P.bottom-window.innerHeight);k>0&&T.style.setProperty("--pin-hint-lift",k+8+"px")}catch{}}function v(T){const P=r.value;if(!P||!(T!=null&&T.querySelector))return;let k=0;try{const b=T.querySelector(".mapboxgl-ctrl-bottom-right .mapboxgl-ctrl-attrib, .mapboxgl-ctrl-bottom-right .doxa-attribution, .doxa-attribution");if(b){const C=b.getBoundingClientRect(),A=P.parentElement,L=A?A.getBoundingClientRect():null;if(k=L?Math.max(C.height||0,L.bottom-C.top):C.height||0,p!==b&&typeof ResizeObserver<"u"){if(c)try{c.disconnect()}catch{}p=b,c=new ResizeObserver(()=>v(T)),c.observe(b)}}}catch{}const y=Math.min(Math.max(Math.ceil(k)||20,20),72);P.style.setProperty("--pin-hint-attrib-clear",y+"px"),w()}return Gn(()=>{var y,b,C;const T=Mt(),P=(C=(b=(y=T==null?void 0:T.proxy)==null?void 0:y.$el)==null?void 0:b.getRootNode)==null?void 0:C.call(b);if(!P||typeof P.querySelector!="function")return;let k=0;i=setInterval(()=>{k++;const A=P.querySelector("canvas");A?(clearInterval(i),i=null,s.value=!0,No(()=>{const L=$(A,P),F=r.value;if(L&&F&&F.parentElement!==L)try{L.appendChild(F),l=L}catch{}v(P),w();try{const S=r.value&&r.value.offsetParent||null;if(S&&typeof ResizeObserver<"u"){if(u)try{u.disconnect()}catch{}u=new ResizeObserver(()=>w()),u.observe(S)}}catch{}})):k>40&&(clearInterval(i),i=null)},300)}),Fo(()=>{var T;if(i&&clearInterval(i),c){try{c.disconnect()}catch{}c=null}if(p=null,u){try{u.disconnect()}catch{}u=null}if(l&&((T=r.value)==null?void 0:T.parentElement)===l)try{l.removeChild(r.value)}catch{}l=null}),Zl(` .pin-hint { position: absolute; left: 50%; bottom: calc(var(--pin-hint-attrib-clear, 20px) + 12px + var(--pin-hint-lift, 0px)); transform: translateX(-50%); z-index: 2147482000; pointer-events: none; @@ -68,9 +68,9 @@ @media (prefers-reduced-motion: reduce) { .pin-hint, .pin-hint-pill, .pin-hint-dot::after { animation: none !important; } } -`,"pin-hint"),($,P)=>s.value?(We(),wt("div",{key:0,ref_key:"hintEl",ref:i,class:Nn(["pin-hint",{dark:o.value}]),role:"status"},[Ce("span",bm,[P[0]||(P[0]=Ce("span",{class:"pin-hint-dot","aria-hidden":"true"},null,-1)),Nt(" "+Qt(a.value)+" ",1),Ce("button",{class:"pin-hint-x",type:"button","aria-label":"Dismiss hint",onClick:m},"×")])],2)):bn("",!0)}};let ym=0;const Am=Ha("ui",{state:()=>({_storeInstanceId:++ym,theme:"light",colorScheme:"default",reducedMotion:!1,highContrast:!1,activeTab:"doxa-regions",sidebarCollapsed:!1,mobileMenuOpen:!1,legendState:"collapsed",_customLegendHeight:null,searchMode:!1,hamburgerMenuOpen:!1,legendMode:"prayer",prayerFilter:null,engagementFilter:null,adoptionFilter:null,religionFilter:null,selectedPeopleGroup:null,breakpoint:"desktop",windowSize:{width:window.innerWidth,height:window.innerHeight},toasts:[],nextToastId:1,toastDuration:5e3,openModals:[],modalData:new Map,isGlobalLoading:!1,globalLoadingMessage:"Loading...",loadingStates:new Map,interactionHistory:[],maxHistoryLength:20,keyboardShortcutsEnabled:!0,screenReaderAnnouncement:"",focusTrapActive:!1,debugMode:!1,showPerformanceOverlay:!1}),getters:{isDarkTheme:e=>!1,isMobile:e=>e.breakpoint==="mobile",isTablet:e=>e.breakpoint==="tablet",isDesktop:e=>e.breakpoint==="desktop"||e.breakpoint==="wide",legendHeight:e=>e._customLegendHeight?e._customLegendHeight:e.legendState==="collapsed"?"48px":e.legendState==="open"?"30%":e.legendState==="fullyOpen"?"calc(100% - 80px)":"48px",caretRotation:e=>e.legendState==="collapsed"?0:90,showPullTab:e=>e.legendState==="open"||e.legendState==="fullyOpen",getToastsByType:e=>t=>e.toasts.filter(n=>n.type===t),hasOpenModal:e=>e.openModals.length>0,topModal:e=>e.openModals.length===0?null:e.openModals[e.openModals.length-1],isModalOpen:e=>t=>e.openModals.includes(t),isAnyLoading:e=>e.isGlobalLoading||e.loadingStates.size>0,isLoading:e=>t=>e.loadingStates.get(t)||!1},actions:{setTheme(e){if(!["light","dark","auto"].includes(e))return;e="light",this.theme=e;const n=this.isDarkTheme;document.documentElement.setAttribute("data-theme",n?"dark":"light");try{localStorage.setItem("theme",e)}catch{}},toggleTheme(){const e=this.theme==="light"?"dark":"light";this.setTheme(e)},setColorScheme(e){this.colorScheme=e,document.documentElement.setAttribute("data-color-scheme",e)},toggleReducedMotion(){this.reducedMotion=!this.reducedMotion,document.documentElement.setAttribute("data-reduced-motion",this.reducedMotion)},toggleHighContrast(){this.highContrast=!this.highContrast,document.documentElement.setAttribute("data-high-contrast",this.highContrast)},setActiveTab(e){this.activeTab=e,this.addToHistory({type:"tab-change",tabId:e,timestamp:Date.now()})},toggleSidebar(){this.sidebarCollapsed=!this.sidebarCollapsed},openMobileMenu(){this.mobileMenuOpen=!0},closeMobileMenu(){this.mobileMenuOpen=!1},setLegendMode(e){["prayer","detail"].includes(e)&&(this.legendMode=e)},setPrayerFilter(e){[null,"noPrayer","hasPrayer","fullPrayer"].includes(e)&&(this.prayerFilter=e)},setEngagementFilter(e){[null,"notEngaged","hasEngagement"].includes(e)&&(this.engagementFilter=e)},setAdoptionFilter(e){[null,"notAdopted","hasAdoption"].includes(e)&&(this.adoptionFilter=e)},setReligionFilter(e){[null,"C","M","H","B","E","J","S","N","O","U"].includes(e)&&(this.religionFilter=e)},selectPeopleGroup(e){this.selectedPeopleGroup=e,e?(this._legendStateBeforeDetail=this.legendState,this.legendState="open",this._customLegendHeight=null,this.setLegendMode("detail")):(this.legendState=this._legendStateBeforeDetail||"open",this._customLegendHeight=null,this.setLegendMode("prayer"))},setLegendState(e){["collapsed","open","fullyOpen"].includes(e)&&(this.legendState=e)},toggleSearchMode(){this.searchMode=!this.searchMode},setSearchMode(e){this.searchMode=e},toggleHamburgerMenu(){this.hamburgerMenuOpen=!this.hamburgerMenuOpen},updateBreakpoint(e){let t;e<768?t="mobile":e<1024?t="tablet":e<1920?t="desktop":t="wide",t!==this.breakpoint&&(this.breakpoint=t)},updateWindowSize(e,t){this.windowSize.width=e,this.windowSize.height=t,this.updateBreakpoint(e)},showToast(e){const{message:t,type:n="info",duration:o=this.toastDuration,action:a=null,persistent:s=!1}=e,i={id:this.nextToastId++,message:t,type:n,duration:o,action:a,persistent:s,createdAt:Date.now()};return this.toasts.push(i),!s&&o>0&&setTimeout(()=>{this.removeToast(i.id)},o),i.id},showSuccess(e,t={}){return this.showToast({message:e,type:"success",...t})},showError(e,t={}){return this.showToast({message:e,type:"error",duration:7e3,...t})},showWarning(e,t={}){return this.showToast({message:e,type:"warning",...t})},showInfo(e,t={}){return this.showToast({message:e,type:"info",...t})},removeToast(e){const t=this.toasts.findIndex(n=>n.id===e);t!==-1&&this.toasts.splice(t,1)},clearAllToasts(){this.toasts=[]},openModal(e,t={}){this.openModals.includes(e)||(this.openModals.push(e),this.modalData.set(e,t),this.focusTrapActive=!0)},closeModal(e=null){if(e){const t=this.openModals.indexOf(e);t!==-1&&(this.openModals.splice(t,1),this.modalData.delete(e))}else{const t=this.openModals.pop();t&&this.modalData.delete(t)}this.openModals.length===0&&(this.focusTrapActive=!1)},closeAllModals(){this.openModals=[],this.modalData.clear(),this.focusTrapActive=!1},getModalData(e){return this.modalData.get(e)},showGlobalLoading(e="Loading..."){this.isGlobalLoading=!0,this.globalLoadingMessage=e},hideGlobalLoading(){this.isGlobalLoading=!1},setLoading(e,t=!0){t?this.loadingStates.set(e,!0):this.loadingStates.delete(e)},addToHistory(e){this.interactionHistory.push(e),this.interactionHistory.length>this.maxHistoryLength&&this.interactionHistory.shift()},clearHistory(){this.interactionHistory=[]},announce(e,t="polite"){this.screenReaderAnnouncement=e,setTimeout(()=>{this.screenReaderAnnouncement===e&&(this.screenReaderAnnouncement="")},1e3)},toggleKeyboardShortcuts(){this.keyboardShortcutsEnabled=!this.keyboardShortcutsEnabled},toggleDebugMode(){this.debugMode=!this.debugMode},togglePerformanceOverlay(){this.showPerformanceOverlay=!this.showPerformanceOverlay},toggleLegend(){this.legendState==="fullyOpen"?this.legendState="open":this.legendState==="open"?this.legendState="collapsed":this.legendState="open",this._customLegendHeight=null},openLegend(){this.legendState="open",this._customLegendHeight=null},fullyOpenLegend(){this.legendState="fullyOpen",this._customLegendHeight=null},collapseLegend(){this.legendState="collapsed",this._customLegendHeight=null},setLegendHeight(e){this._customLegendHeight=e},handleLegendItemClick(){this.legendState==="fullyOpen"&&(this.legendState="open")},enableSearchMode(){this.searchMode=!0},disableSearchMode(){this.searchMode=!1},toggleHamburgerMenu(){this.hamburgerMenuOpen=!this.hamburgerMenuOpen},openHamburgerMenu(){this.hamburgerMenuOpen=!0},closeHamburgerMenu(){this.hamburgerMenuOpen=!1},init(){let e=null;try{e=localStorage.getItem("theme")}catch{}e&&this.setTheme(e),new ResizeObserver(n=>{for(const o of n)this.updateWindowSize(o.contentRect.width,o.contentRect.height)}).observe(document.documentElement),window.matchMedia&&(window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",n=>{this.theme==="auto"&&document.documentElement.setAttribute("data-theme",n.matches?"dark":"light")}),window.matchMedia("(prefers-reduced-motion: reduce)").addEventListener("change",n=>{this.reducedMotion=n.matches,document.documentElement.setAttribute("data-reduced-motion",n.matches)}))}}}),Sm=Ha("map",{state:()=>({maps:{},activeMapId:null,selectedRegion:null,selectedFamily:null,selectedAffinityBlock:null,selectedLanguage:null,selectedDialect:null,activeLegendTab:"family",selectedResource:null,selectedPeopleGroup:null,selectedPinIds:[],globalFilters:{},searchQuery:"",autoFly:{isActive:!1,speed:1,interval:5e3,currentIndex:0,items:[],timerId:null},guidedTour:{isActive:!1,currentStep:0,steps:[]},showClusters:!1,clusterMode:"region",clusterFilterProperty:null,clusterFilterValue:null,flySpeed:"normal",fullscreenMapId:null,preferences:{theme:"light",defaultMapStyle:"streets",enableAnimations:!0,autoSavePreferences:!0}}),getters:{getMapById:e=>t=>e.maps[t],activeMap:e=>e.activeMapId?e.maps[e.activeMapId]:null,hasMap:e=>t=>t in e.maps,allMapIds:e=>Object.keys(e.maps),hasSelection:e=>!!(e.selectedRegion||e.selectedFamily||e.selectedAffinityBlock||e.selectedPeopleGroup),isAutoFlying:e=>e.autoFly.isActive,isGuidedTourActive:e=>e.guidedTour.isActive,isMapFullscreen:e=>t=>e.fullscreenMapId===t},actions:{registerMap(e,t,n={}){let o=1.5;n.zoom!==void 0?o=n.zoom:t&&typeof t.getZoom=="function"&&(o=t.getZoom());let a=[0,0];if(n.center)a=n.center;else if(t&&typeof t.getCenter=="function"){const s=t.getCenter();s&&(a=[s.lng,s.lat])}this.maps[e]={instance:t,config:n,isReady:!1,zoom:o,center:a,registeredAt:Date.now()},this.activeMapId||(this.activeMapId=e)},setMapReady(e){const t=this.maps[e];t&&(t.isReady=!0)},updateMapState(e,t){const n=this.maps[e];n&&Object.assign(n,t)},unregisterMap(e){if(delete this.maps[e],this.activeMapId===e){const t=this.allMapIds;this.activeMapId=t.length>0?t[0]:null}},setActiveMap(e){e in this.maps&&(this.activeMapId=e)},selectRegion(e){this.selectedFamily=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedRegion=e},selectFamily(e){this.selectedRegion=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedLanguage=null,this.selectedDialect=null,this.selectedFamily=e},setActiveLegendTab(e){this.activeLegendTab=e},selectLanguage(e){this.selectedRegion=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedFamily=null,this.selectedDialect=null,this.selectedLanguage=e},selectDialect(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedLanguage=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedDialect=e},selectAffinityBlock(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedPeopleGroup=null,this.selectedAffinityBlock=e},selectPeopleGroup(e){this.selectedPeopleGroup=e},selectResource(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedResource===e?this.selectedResource=null:this.selectedResource=e},clearSelections(){this.selectedRegion=null,this.selectedFamily=null,this.selectedLanguage=null,this.selectedDialect=null,this.selectedAffinityBlock=null,this.selectedResource=null,this.selectedPeopleGroup=null,this.selectedPinIds=[],this.showClusters=!1,this.clusterMode="region"},setSelectedPinIds(e){this.selectedPinIds=e||[]},setFilter(e,t){this.globalFilters[e]=t},removeFilter(e){delete this.globalFilters[e]},clearFilters(){this.globalFilters={},this.searchQuery=""},setSearchQuery(e){this.searchQuery=e},startAutoFly(e,t=1){this.stopAutoFly(),this.autoFly.isActive=!0,this.autoFly.speed=t,this.autoFly.items=e,this.autoFly.currentIndex=0},stopAutoFly(){this.autoFly.timerId&&(clearInterval(this.autoFly.timerId),this.autoFly.timerId=null),this.autoFly.isActive=!1,this.autoFly.currentIndex=0},setAutoFlySpeed(e){this.autoFly.speed=Math.max(.5,Math.min(2,e))},nextAutoFlyItem(){if(!this.autoFly.isActive||this.autoFly.items.length===0)return;this.autoFly.currentIndex=(this.autoFly.currentIndex+1)%this.autoFly.items.length;const e=this.autoFly.items[this.autoFly.currentIndex];e.type==="region"?this.selectRegion(e):e.type==="family"&&this.selectFamily(e)},toggleClusters(e){typeof e=="boolean"?this.showClusters=e:this.showClusters=!this.showClusters},setClusterMode(e){["region","language-family","affinity-block","mst","resource"].includes(e)&&(this.clusterMode=e)},setClusterFilter(e,t){this.clusterFilterProperty=e||null,this.clusterFilterValue=t||null},clearClusterFilter(){this.clusterFilterProperty=null,this.clusterFilterValue=null},setFlySpeed(e){["slow","normal","fast"].includes(e)&&(this.flySpeed=e)},setSelectedFamily(e){this.selectFamily(e)},clearSelectedFamily(){this.selectFamily(null)},setSelectedRegion(e){this.selectRegion(e)},clearSelectedRegion(){this.selectRegion(null)},clearSelectedResource(){this.selectResource(null)},clearSelectedLanguage(){this.selectLanguage(null)},clearSelectedDialect(){this.selectDialect(null)},toggleFullscreen(e){this.fullscreenMapId===e?this.fullscreenMapId=null:this.fullscreenMapId=e},loadPreferences(){try{const e=localStorage.getItem("mapUserPreferences");if(e){const t=JSON.parse(e);this.preferences={...this.preferences,...t}}}catch(e){console.error("[mapStore] Failed to load preferences:",e)}},savePreferences(){try{localStorage.setItem("mapUserPreferences",JSON.stringify(this.preferences))}catch(e){console.error("[mapStore] Failed to save preferences:",e)}},setPreference(e,t){this.preferences[e]=t,this.preferences.autoSavePreferences&&this.savePreferences()}}}),vm=Ha("data",{state:()=>({sources:{},loadingStates:{}}),actions:{async load(e,t){if(!this.sources[e]){this.loadingStates[e]={isLoading:!0,error:null};try{const n=await t();this.sources[e]=Fn({features:n,timestamp:Date.now()}),this.loadingStates[e]={isLoading:!1,error:null}}catch(n){console.error(`[dataStore] Failed to load source "${e}":`,n),this.loadingStates[e]={isLoading:!1,error:n}}}},clearSource(e){delete this.sources[e],delete this.loadingStates[e]},cacheSourceData(e,t){this.sources[e]=Fn({features:t.normalizedData||[],timestamp:t.timestamp||Date.now()})},hasSourceData(e){return!!this.sources[e]},getSourceData(e){return this.sources[e]?{normalizedData:this.sources[e].features}:null}},getters:{getData:e=>t=>{var n;return((n=e.sources[t])==null?void 0:n.features)??null},isLoading:e=>t=>{var n;return((n=e.loadingStates[t])==null?void 0:n.isLoading)??!1},getError:e=>t=>{var n;return((n=e.loadingStates[t])==null?void 0:n.error)??null}}}),Ql={_meta:{_comment:"Single source of truth for data-source connections across all doxa-maps bundles.",_comment_token:"Mapbox access token is fetched at runtime from window.MAP_TOKEN_URL (same modular pattern as window.MAP_APP_API_URL). Not hardcoded to any host — set mapboxTokenUrl below or override window.MAP_TOKEN_URL on the host page.",mapboxTokenUrl:"window.MAP_TOKEN_URL"},activeSource:"pray-tools",sources:{"pray-tools":{id:"pray-tools",name:"Prayer.Tools API",type:"rest-api",description:"pray.doxa.life live API — people-group prayer, engagement, and adoption data. Base URL read from window.MAP_APP_API_URL or VITE_API_BASE_URL at runtime.",endpoints:{bulk:"/api/people-groups/list",detail:"/api/people-groups/detail/{slug}",statistics:"/api/people-groups/statistics"},queryParams:{lang:"en"},defaultFields:["slug","name","latitude","longitude","wagf_region","wagf_block","wagf_member","rop1","imb_reg_of_people_2","imb_reg_of_people_25","imb_reg_of_people_3","country_code","religion","population","has_photo","image_url","people_praying","people_committed","adopted_by_churches","engagement_status","imb_gsec","primary_language","imb_language_family","imb_language_class","imb_language_speakers"],pollFields:["slug","people_praying"],pollInterval:3e5,fallbackSourceId:null,fieldMappings:{uniqueId:"slug",slug:"slug",name:"name",latitude:"latitude",longitude:"longitude",wagfRegion:"wagf_region",doxaRegion:"wagf_region",wagfBlock:"wagf_block",wagfMember:"wagf_member",affinityBlock:"rop1",countryIso:"country_code",religion:"religion",religionCode:"religion",population:"population",hasPhoto:"has_photo",imageUrl:"image_url",photoUrl:"image_url",peoplePraying:"people_praying",peopleCommitted:"people_committed",engagementStatus:"engagement_status",adoptionStatus:"adopted_by_churches",language:"primary_language",cluster:"imb_reg_of_people_2",peopleGroup:"imb_reg_of_people_25",peopleGroupCountry:"imb_reg_of_people_3",languageFamily:"imb_language_family",languageClass:"imb_language_class",languageSpeakers:"imb_language_speakers"},imageConfig:{useField:"imageUrl",fallbackField:null,fallbackUrlTemplate:null,placeholderUrl:"https://www.peoplegroups.org/images/pgphotosearch/NoImageAvailable_search.jpg",useSvgPlaceholder:!0}},"doxa-csv":{id:"doxa-csv",name:"DOXA People Groups CSV",type:"csv",path:"assets/data/Joshua-project-ids-Doxa-1439.csv",description:"People groups dataset from DOXA / Joshua Project",fieldMappings:{uniqueId:"ROP3",peopleGroupId:"ROP3",countryCode:"ROG",peopleId3:"PeopleID3",name:"Name",displayName:"NmDisp",alternateName:"NmAlt",description:"PeopleDesc",locationDescription:"LocationDe",country:"Ctry",countryIso:"ISOalpha3",region:"Regn",subRegion:"RegnSub",wagfRegion:"WAGF Region",doxaRegion:"WAGF Region",wagfBlock:"WAGF BLOCK",affinityBloc:"Affbloc",affinityBlock:"ROP1",affinityCode:"AffCd",affinityName:"Aff",peopleCluster:"PplClstr",ethneName:"Ethne",latitude:"Latitude",longitude:"Longitude",population:"Pop",populationClass:"PopCls",status:"Status",engagementStatus:"EngStat",evangelicalLevel:"EvngLvl",gsec:"GSEC",gsecBrief:"GSECbrf",gsecLong:"GSEClng",spiScore:"SPI",spiDescription:"SPIdesc",language:"Lang",languageCode:"ROL",languageFamily:"LangFamily",religion:"Rlgn",religionCode:"ROR",religionDescription:"RORdesc",religionBase:"RlgnBs",religionDiv:"RlgnDiv",bible:"Bible",jesusFilm:"Jesus",radio:"Radio",gospel:"Gospel",audio:"Audio",stories:"Stories",resourcesTotal:"ResTot",bibleLevel:"LvlBible",yearPublished:"YrPub",photoCredit:"PicCrdt",photoUrl:"PicURL",hasPhoto:"Photo",isIndigenous:"Indigenous"},imageConfig:{useField:"photoUrl",fallbackField:"peopleId3",fallbackUrlTemplate:"https://joshuaproject.net/assets/media/profiles/photos/p{peopleId3}.jpg",placeholderUrl:"https://www.peoplegroups.org/images/pgphotosearch/NoImageAvailable_search.jpg"}}},systemFields:{uniqueId:{description:"Unique identifier per row (slug for API, ROP3+ROG for CSV)",required:!0},peopleGroupId:{description:"People group ID — same group can appear in multiple countries",required:!0},name:{description:"People group display name",required:!0},latitude:{description:"Latitude coordinate for map pin",required:!0},longitude:{description:"Longitude coordinate for map pin",required:!0},engagementStatus:{description:"Boolean — true if engaged_status = 'engaged'",required:!1},adoptionStatus:{description:"Boolean — true if adopted_by_churches > 0",required:!1},peoplePraying:{description:"Number of people currently praying for this group — from pray-tools API",required:!1},peopleCommitted:{description:"Raw count of committed workers for this group — source of engagementStatus",required:!1},languageFamily:{description:"Language family name",required:!1},religion:{description:"Primary religion",required:!1},population:{description:"Population count",required:!1},doxaRegion:{description:"WAGF/DOXA region name",required:!1},photoUrl:{description:"URL to people group photo",required:!1},description:{description:"People group description text",required:!1}}},km=".profile-loader[data-v-ba19fc13]{border-radius:var(--map-radius-corners, var(--map-radius, 0px));width:100%;height:100%;min-height:var(--profile-min-h, 100dvh);position:relative}.profile-error[data-v-ba19fc13]{padding:1rem;background:#fff3cd;border:1px solid #ffc107;border-radius:4px;font-family:monospace;font-size:13px}",Tm=(e,t)=>{const n=e.__vccOpts||e;for(const[o,a]of t)n[o]=a;return n},Em={class:"profile-loader"},$m={key:0,class:"profile-error"},Lm={key:1,class:"profile-error"},Cm=Tm({__name:"ProfileLoader",props:{profileConfig:{type:String,default:""}},setup(e){var L;const n=e,o=De("profileConfig",null),a=be(()=>{var w;if(!n.profileConfig)return null;let A;try{A=JSON.parse(n.profileConfig)}catch{return console.error("[ProfileLoader] Invalid profile-config JSON:",n.profileConfig),null}if(A&&A.assetsBase===void 0){const D=(w=o==null?void 0:o.value)==null?void 0:w.assetsBase;typeof D=="string"&&D&&(A.assetsBase=D)}return A}),s=be(()=>{var A;return((A=a.value)==null?void 0:A.profile)||null}),i=md(),r=be(()=>{var w;const A=(w=a.value)==null?void 0:w.tk;return typeof A=="string"&&A?A:i.value||""});Ut(()=>{var A;return(A=a.value)==null?void 0:A.tk},A=>{typeof A=="string"&&A&&Dr(A)},{immediate:!0});const l=be(()=>{var A;return((A=a.value)==null?void 0:A.dataSource)||Ql.activeSource||"doxa-csv"}),c=be(()=>{var A;return((A=a.value)==null?void 0:A.colorSet)||"default"}),u=be(()=>!1),f=be(()=>{var A;return((A=a.value)==null?void 0:A.pinHint)!==!1}),m=be(()=>{var w,D;const A=(((w=a.value)==null?void 0:w.locale)||((D=a.value)==null?void 0:D.lang)||"").split("-")[0].toLowerCase();return Xl.includes(A)?A:""}),k=De("appI18n",null);Nu(()=>{m.value&&k&&(k.global.locale.value=m.value)});const N=be(()=>{var A,w;return m.value||((w=(A=k==null?void 0:k.global)==null?void 0:A.locale)==null?void 0:w.value)||"en"}),v=be(()=>{var A;return((A=a.value)==null?void 0:A.instanceId)||"doxa-map-"+Math.random().toString(36).slice(2,9)}),$=De("profileModules",null);if(!$)throw new Error('[ProfileLoader] No profileModules provided. Bundle entry must `app.provide("profileModules", import.meta.glob("./*.vue"))`');const P=be(()=>{if(!s.value)return null;const A=`./${s.value}.vue`;return $[A]?bd($[A]):(console.error(`[ProfileLoader] Profile not found: "${s.value}". Available:`,Object.keys($)),null)});bt("mapboxToken",r),bt("dataSource",l),bt("colorSet",c),bt("profileConfig",a),bt("instanceId",v),bt("lang",N);const T=Am(),_=Sm(),b=vm();try{const A=typeof localStorage<"u"?localStorage.getItem("theme"):null;A&&((L=T.setTheme)==null||L.call(T,A))}catch{}return bt("uiStore",T),bt("mapStore",_),bt("dataStore",b),(A,w)=>(We(),wt("div",Em,[a.value?P.value?(We(),Bo(Pi(P.value),{key:2})):(We(),wt("div",Lm,[Ce("p",null,[w[1]||(w[1]=Nt("⚠️ Profile ",-1)),Ce("strong",null,'"'+Qt(s.value)+'"',1),w[2]||(w[2]=Nt(" not found.",-1))])])):(We(),wt("div",$m,[...w[0]||(w[0]=[Ce("p",null,[Nt("⚠️ "),Ce("strong",null,"doxa-map"),Nt(": missing or invalid "),Ce("code",null,"profile-config"),Nt(" prop.")],-1),Ce("p",null,[Nt("Example: "),Ce("code",null,`profile-config='{"profile":"example-map","tk":"pk.eyJ..."}'`)],-1)])])),P.value&&u.value?(We(),Bo(Pi(To(null)),{key:3})):bn("",!0),P.value&&f.value?(We(),Bo(_m,{key:4})):bn("",!0)]))}},[["styles",[km]],["__scopeId","data-v-ba19fc13"]]),wm=Object.assign({"./all-people-groups.vue":()=>Mc(()=>Promise.resolve().then(()=>Pb),void 0)}),Nm=od(Cm,{configureApp(e){e.use(cd());const t=hm();e.use(t),e.provide("appI18n",t),e.provide("profileModules",wm)}});typeof customElements<"u"&&!customElements.get("all-people-groups")&&customElements.define("all-people-groups",Nm);const Pm="rgba(120, 128, 134, 0.28)",ec="36px",tc=()=>{};function Mm(e,t={}){const{enabled:n=!0}=t;if(!n||!e)return tc;const o=Array.from(e.querySelectorAll(".map-scroll-edge"));if(!o.length)return tc;const a=T=>T.classList.contains("map-scroll-edge--left");for(const T of o)T.style.background=`linear-gradient(${a(T)?"to right":"to left"}, ${Pm} ${ec}, transparent ${ec})`,T.style.opacity="0",T.style.transition="opacity 0.16s ease",T.style.userSelect="none",T.style.webkitUserSelect="none";const s=T=>{T.style.opacity="1"},i=T=>{T.style.opacity="0"},r=()=>o.find(T=>!a(T))||null,l=new Set;let c=!1,u=null;const f=()=>{for(const T of o)l.has(T)||i(T)},m=()=>{const T=r();T&&(s(T),u&&clearTimeout(u),u=setTimeout(f,250))},k=()=>m(),N=T=>{if(!(T.touches&&T.touches.length===1))return;const _=T.target;_&&_.classList&&_.classList.contains("map-scroll-edge")||m()},v=()=>{u&&clearTimeout(u),f()};e.addEventListener("wheel",k,{passive:!0}),e.addEventListener("touchmove",N,{passive:!0}),e.addEventListener("touchend",v,{passive:!0}),e.addEventListener("touchcancel",v,{passive:!0});const $=()=>{c||m()};typeof window<"u"&&window.addEventListener("scroll",$,{passive:!0});const P=[];for(const T of o){const _=()=>{l.add(T),s(T)},b=()=>{l.delete(T),i(T)},L=()=>{c=!0,s(T)},A=()=>{c=!1,i(T)};T.addEventListener("mouseenter",_),T.addEventListener("mouseleave",b),T.addEventListener("touchstart",L,{passive:!0}),T.addEventListener("touchend",A,{passive:!0}),P.push(()=>{T.removeEventListener("mouseenter",_),T.removeEventListener("mouseleave",b),T.removeEventListener("touchstart",L),T.removeEventListener("touchend",A)})}return function(){u&&(clearTimeout(u),u=null),e.removeEventListener("wheel",k),e.removeEventListener("touchmove",N),e.removeEventListener("touchend",v),e.removeEventListener("touchcancel",v),typeof window<"u"&&window.removeEventListener("scroll",$);for(const _ of P)_();for(const _ of o)i(_)}}const Im=Object.fromEntries([{id:"midnight-glow",label:"Midnight Glow",mood:"the prayer-map dark — pins glow like embers",mapbox:"mapbox://styles/mapbox/standard",lightPreset:"night",maplibre:"https://tiles.openfreemap.org/styles/fiord",bestFor:["doxa-simple-map","my-upg-100-list"]},{id:"daylight",label:"Daylight",mood:"the same Standard world, lights on",mapbox:"mapbox://styles/mapbox/standard",lightPreset:"day",maplibre:"https://tiles.openfreemap.org/styles/liberty",bestFor:["doxa-research-map","gospel-resources"]},{id:"dawn",label:"Dawn",mood:"soft warm horizon — hopeful, quiet",mapbox:"mapbox://styles/mapbox/standard",lightPreset:"dawn",maplibre:"https://tiles.openfreemap.org/styles/positron",bestFor:["doxa-simple-map"]},{id:"dusk",label:"Dusk",mood:"blue hour — calm contrast for bright pins",mapbox:"mapbox://styles/mapbox/standard",lightPreset:"dusk",maplibre:"https://tiles.openfreemap.org/styles/fiord",bestFor:["my-upg-100-list"]},{id:"paper",label:"Paper",mood:"near-white minimal — data reads like print",mapbox:"mapbox://styles/mapbox/light-v11",maplibre:"https://tiles.openfreemap.org/styles/positron",bestFor:["research-dashboard","cities-internet"]},{id:"ink",label:"Ink",mood:"near-black minimal — maximum pin contrast",mapbox:"mapbox://styles/mapbox/dark-v11",maplibre:"https://tiles.openfreemap.org/styles/dark",bestFor:["my-upg-100-list","cities-internet"]},{id:"streetlife",label:"Street Life",mood:"full street detail — city-scale work",mapbox:"mapbox://styles/mapbox/streets-v12",maplibre:"https://tiles.openfreemap.org/styles/bright",bestFor:["cities-internet","key-cities"]},{id:"terrain",label:"Terrain",mood:"relief + parks — where people actually live",mapbox:"mapbox://styles/mapbox/outdoors-v12",maplibre:"https://tiles.openfreemap.org/styles/liberty",bestFor:["doxa-research-map","country-posters"]},{id:"satellite",label:"Satellite",mood:"imagery — the real ground",mapbox:"mapbox://styles/mapbox/satellite-v9",maplibre:"https://tiles.openfreemap.org/styles/liberty",bestFor:["country-posters"]},{id:"hybrid",label:"Hybrid",mood:"imagery + labels — orientation without losing ground truth",mapbox:"mapbox://styles/mapbox/satellite-streets-v12",maplibre:"https://tiles.openfreemap.org/styles/liberty",bestFor:["key-cities"]},{id:"wayfinder-day",label:"Wayfinder Day",mood:"high-legibility navigation palette",mapbox:"mapbox://styles/mapbox/navigation-day-v1",maplibre:"https://tiles.openfreemap.org/styles/liberty",bestFor:["gospel-resources"]},{id:"wayfinder-night",label:"Wayfinder Night",mood:"dark navigation — dashboards at night",mapbox:"mapbox://styles/mapbox/navigation-night-v1",maplibre:"https://tiles.openfreemap.org/styles/fiord",bestFor:["research-dashboard"]},{id:"galaxy",label:"Galaxy",mood:"the day side of Earth floating in space — normal land, blue oceans, black void behind the sphere",mapbox:"mapbox://styles/mapbox/standard",maplibre:"https://tiles.versatiles.org/assets/styles/colorful/style.json",bestFor:["research-dashboard","my-upg-100-list"]}].map(e=>[e.id,e]));function Rm(e,t="mapbox"){if(typeof e!="string"||!e)return{style:void 0,lightPreset:void 0,paint:void 0};const n=Im[e];return n?t==="maplibre"?{style:n.maplibre,lightPreset:void 0,paint:n.paint}:{style:n.mapbox,lightPreset:n.lightPreset,paint:n.paint}:/^(mapbox:\/\/|https?:\/\/)/.test(e)?{style:e,lightPreset:void 0,paint:void 0}:{style:void 0,lightPreset:void 0,paint:void 0}}function Dm(e,t){if(!e||!Array.isArray(t))return[];const n=[];for(const o of t)if(!(!o||!o.layer||!o.prop))try{if(!e.getLayer(o.layer))continue;e.setPaintProperty(o.layer,o.prop,o.value),n.push(o.layer+"."+o.prop)}catch{}return n}const Fm=["mapbox","maplibre"],nc="mapbox";function Om(e){return e&&typeof e=="object"&&"value"in e&&!("provider"in e)&&!("profile"in e)?e.value:e}function oc(e){const t=Om(e),n=t==null?void 0:t.provider,o=typeof location<"u"?new URLSearchParams(location.search).get("provider"):void 0,a=typeof window<"u"?window.MAP_PROVIDER:void 0,s=String(n||o||a||nc).toLowerCase().trim();return Fm.includes(s)?s:nc}const $n={mapbox:{global:"mapboxgl",js:"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js",css:"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.css"},maplibre:{global:"maplibregl",js:"https://cdn.jsdelivr.net/npm/maplibre-gl@5/dist/maplibre-gl.js",css:"https://cdn.jsdelivr.net/npm/maplibre-gl@5/dist/maplibre-gl.css"}};function ac(e){if(typeof window>"u")return;const t=window,n=()=>{try{const o=e.getContainer().querySelector(".mapboxgl-ctrl-logo, .maplibregl-ctrl-logo");o&&(o.style.display="none")}catch{}};if(t.__doxaLogoOwner&&t.__doxaLogoOwner!==e){e.once("load",n),n();return}t.__doxaLogoOwner=e,e.once("remove",()=>{t.__doxaLogoOwner===e&&(t.__doxaLogoOwner=null)})}const xm=$n.mapbox.css,jm="https://tiles.openfreemap.org/styles/liberty",Bm="https://tiles.openfreemap.org/styles/fiord";function hs(e){var n;const t=((n=$n[e])==null?void 0:n.global)||$n.mapbox.global;return typeof window<"u"?window[t]:void 0}async function Km(e){const t=$n[e]||$n.mapbox;if(hs(e)||typeof document>"u")return;if(!document.querySelector(`link[href="${t.css}"]`)){const o=document.createElement("link");o.rel="stylesheet",o.href=t.css,document.head.appendChild(o)}const n=document.querySelector(`script[src="${t.js}"]`);if(n){if(hs(e))return;await new Promise(o=>{n.addEventListener("load",o,{once:!0}),n.addEventListener("error",o,{once:!0})});return}await new Promise((o,a)=>{const s=document.createElement("script");s.src=t.js,s.async=!1,s.addEventListener("load",o,{once:!0}),s.addEventListener("error",()=>a(new Error(`[useMapInstance] Failed to load ${e} engine script`)),{once:!0}),document.head.appendChild(s)})}async function Um(e,t){const n=e.getRootNode();if(!(n instanceof ShadowRoot))return;const o=i=>new Promise(r=>setTimeout(r,i)),a=n.querySelector(`link[href="${t}"]`);if(a){if(a.sheet)return;await Promise.race([new Promise(i=>{a.addEventListener("load",i,{once:!0}),a.addEventListener("error",i,{once:!0})}),o(2e3)]);return}const s=document.createElement("link");s.rel="stylesheet",s.href=t,await Promise.race([new Promise(i=>{s.addEventListener("load",i,{once:!0}),s.addEventListener("error",i,{once:!0}),n.prepend(s)}),o(2e3)])}function Gm(e,t){return typeof e=="string"&&/^https?:\/\//.test(e)?e:t==="night"||t==="dusk"?Bm:jm}const zm=85.0511,ms=-2,qm=0,Hm=-60;function sc(e){return(1-Math.log(Math.tan(Math.PI/4+e*Math.PI/180/2))/Math.PI)/2}function Vm(e,t,n,o){if(!e||e<=0||!t||t<=0)return qm;const a=Math.log2(e/512),s=sc(o)-sc(zm),i=Math.log2(t/(512*s)),r=Math.max(a,i);return Math.max(ms,Math.min(r,(n??18)-1))}function Wm({containerRef:e,accessToken:t,style:n,config:o=void 0,provider:a=void 0,center:s=[20,10],zoom:i=2,minZoom:r=void 0,skipWorldFloor:l=!1,maxZoom:c=18,pitch:u=0,bearing:f=0,renderWorldCopies:m=!0,showEdgeBorders:k=!0,southCutoff:N=Hm,maxBounds:v=void 0}){const $=va(null),P=he(!1);let T=null,_=null,b=null,L=null;try{L=De("profileConfig",null)}catch{}a=a||oc(L);const A=a==="maplibre";async function w(){var fe;const S=Rm(n,a),V=S.style||n;if(!e.value){console.error("containerRef.value is null — call initializeMap() inside onMounted()");return}await Km(a);const ae=hs(a);if(!ae){console.error(`[useMapInstance] ${A?"maplibregl":"mapboxgl"} is not available. Add the ${A?"MapLibre":"Mapbox"} GL JS script to your page.`);return}if(!A){if(!t&&typeof window<"u"&&typeof window.MAP_TOKEN=="string"&&window.MAP_TOKEN&&(t=window.MAP_TOKEN),!t){console.error('No Mapbox access token provided. Pass "tk" in profile-config JSON or set window.MAP_TOKEN.');return}if(!t.startsWith("pk.")){console.error('Mapbox token looks invalid (expected "pk." prefix). Got:',t.slice(0,10)+"...");return}}await Um(e.value,A?$n.maplibre.css:xm),await new Promise(oe=>requestAnimationFrame(oe));const z=e.value,ee=z.clientWidth,Y=z.clientHeight;if(ee===0||Y===0){console.error(`[useMapInstance] Container has ZERO dimensions (${ee}×${Y}). Map will be invisible. Check that parent elements have CSS sizing.`);let oe=z.parentElement,le=0;for(;oe&&le<5;)oe=oe.parentElement,le++}const F=t;A||(ae.accessToken=F);const j=()=>typeof window<"u"&&window.innerWidth>=1024,q=(oe,le)=>{if(l)return typeof r=="number"?r:ms;if(!j())return ms;const Ne=Vm(oe,le,c,N);return typeof r=="number"?Math.max(r,Ne):Ne},W=q(z.clientWidth,z.clientHeight),X=S.lightPreset||(()=>{var oe;try{const le=typeof o=="function"?o():o;return(oe=le==null?void 0:le.basemap)==null?void 0:oe.lightPreset}catch{return}})();if(A){$.value=new ae.Map({container:e.value,style:Gm(V,X),center:s,zoom:i,minZoom:W,maxZoom:c,pitch:u,bearing:f,dragRotate:!1,renderWorldCopies:m,...v?{maxBounds:v}:{},attributionControl:!0,logoPosition:typeof window<"u"&&window.matchMedia&&window.matchMedia("(max-width: 767px)").matches?"bottom-right":"bottom-left"}),ac($.value);try{e.value.__doxaMap=$.value}catch{}}else{const oe=typeof o=="function"?o():o;$.value=new ae.Map({accessToken:F,container:e.value,style:V,...oe?{config:oe}:{},center:s,zoom:i,minZoom:W,maxZoom:c,pitch:u,bearing:f,dragRotate:!1,touchPitch:!1,renderWorldCopies:m,...v?{maxBounds:v}:{},attributionControl:!0,logoPosition:typeof window<"u"&&window.matchMedia&&window.matchMedia("(max-width: 767px)").matches?"bottom-right":"bottom-left"}),ac($.value);try{e.value.__doxaMap=$.value}catch{}}try{let oe=!1;$.value.on("error",le=>{var Ye,nt;const Ne=((Ye=le==null?void 0:le.error)==null?void 0:Ye.status)??(le==null?void 0:le.status),Re=String(((nt=le==null?void 0:le.error)==null?void 0:nt.url)||(le==null?void 0:le.sourceId)||"");Ne!==401&&Ne!==403||oe||(oe=!0,console.error(`[doxa-maps] Mapbox returned ${Ne} for a TILE request while the style loaded fine. That is a URL RESTRICTION on the access token, not a bad token and not a bug in this map. Add this page's origin (${typeof location<"u"?location.origin:"this origin"}) to the token's URL restrictions in the Mapbox account. The map will keep its data layer and stay blank underneath until then.`+(Re?` First failing request: ${Re.slice(0,120)}`:"")))})}catch{}try{$.value.touchZoomRotate.disableRotation()}catch{}b=Mm(((fe=e.value)==null?void 0:fe.parentElement)||null,{enabled:k});let ge=W,ie=null;T=()=>{const oe=$.value;if(!oe)return;const le=q(z.clientWidth,z.clientHeight);le!==ge&&(ge=le,oe.setMinZoom(le)),oe.getZoom(){ie=null;const Ne=$.value;if(!Ne)return;const Re=q(z.clientWidth,z.clientHeight);if(Ne.getZoom(){ie&&(clearTimeout(ie),ie=null)},$.value.on("resize",T),typeof window<"u"&&(window.addEventListener("resize",T),window.addEventListener("orientationchange",T)),$.value.on("style.load",()=>{if(S.paint&&$.value){const oe=Dm($.value,S.paint);console.info("[useMapInstance] style paint applied ("+a+"):",oe.join(", ")||"NONE MATCHED")}requestAnimationFrame(()=>{var oe;(oe=$.value)==null||oe.resize(),$.value&&$.value.setMinZoom(q(z.clientWidth,z.clientHeight)),P.value=!0})})}function D(){if($.value){if(T&&($.value.off("resize",T),typeof window<"u"&&(window.removeEventListener("resize",T),window.removeEventListener("orientationchange",T)),T=null),_){try{_()}catch{}_=null}b&&(b(),b=null),$.value.remove(),$.value=null,P.value=!1}}return{map:$,isMapReady:P,initializeMap:w,destroy:D}}const ic="doxa-prayed-local",Ym=7*24*60*60*1e3;function Jm(){try{const e=localStorage.getItem(ic);if(!e)return{};const t=JSON.parse(e);return t&&typeof t=="object"?t:{}}catch{return{}}}function Xm(e){try{localStorage.setItem(ic,JSON.stringify(e))}catch{}}function Zm(){const e=Date.now(),t=Jm();let n=!1;for(const[o,a]of Object.entries(t))(typeof a!="number"||e-a>Ym)&&(delete t[o],n=!0);return n&&Xm(t),new Set(Object.keys(t))}function Qm(e){const t=Zm();return!t.size||!Array.isArray(e)?e:e.map(n=>(Number(n&&n.peoplePraying)||0)>0||!n||!t.has(n.slug)?n:{...n,peoplePraying:1})}const Yt={Chamacoco:"Zamucoan",Ninam:"Yanomaman",Yagua:"Yaguan",Muinane:"Witotoan",Finnish:"Uralic","Hill Mari":"Uralic",Mansi:"Uralic","Meadow Mari":"Uralic","North Saami":"Uralic",Carabayo:"Unclassified",Kujarge:"Unclassified",Shabo:"Unclassified",Ainu:"Turkic",Kazakh:"Turkic","Khorasani Turkish":"Turkic",Kyrgyz:"Turkic","Northern Uzbek":"Turkic","South Azerbaijani":"Turkic",Turkish:"Turkic",Tuvan:"Turkic",Uyghur:"Turkic",Amundava:"Tupian",Araweté:"Tupian","Asurini of Xingú":"Tupian","Avá-Canoeiro":"Tupian",Awetí:"Tupian",Kamayurá:"Tupian",Karo:"Tupian",Morerebi:"Tupian",Tenharim:"Tupian","Uru-Eu-Wau-Wau":"Tupian","Uru-Pa-In":"Tupian",Wayampi:"Tupian","Zo’é":"Tupian",Evenki:"Tungusic",Xibe:"Tungusic",Carapana:"Tucanoan",Cubeo:"Tucanoan",Desano:"Tucanoan",Macuna:"Tucanoan",Piratapuyo:"Tucanoan",Siona:"Tucanoan",Siriano:"Tucanoan",Tucano:"Tucanoan",Tuyuca:"Tucanoan",Waimaha:"Tucanoan",Tay:"Trans-New Guinea",Adi:"Sino-Tibetan",Akha:"Sino-Tibetan","Amdo Tibetan":"Sino-Tibetan",Axi:"Sino-Tibetan",Biyo:"Sino-Tibetan","Boro (India)":"Sino-Tibetan",Brokkat:"Sino-Tibetan",Bugun:"Sino-Tibetan",Byangsi:"Sino-Tibetan","Central Lalo":"Sino-Tibetan","Central Tibetan":"Sino-Tibetan",Chak:"Sino-Tibetan",Chalikha:"Sino-Tibetan",Chaudangsi:"Sino-Tibetan",Chocangacakha:"Sino-Tibetan",Darlong:"Sino-Tibetan",Dhimal:"Sino-Tibetan","Digaro-Mishmi":"Sino-Tibetan",Dzalakha:"Sino-Tibetan","Eastern Nisu":"Sino-Tibetan",Ersu:"Sino-Tibetan",Gahri:"Sino-Tibetan",Gongduk:"Sino-Tibetan",Gyalsumdo:"Sino-Tibetan",Hani:"Sino-Tibetan","Idu-Mishmi":"Sino-Tibetan",Kaike:"Sino-Tibetan",Kanashi:"Sino-Tibetan",Katso:"Sino-Tibetan",Khamba:"Sino-Tibetan",Koireng:"Sino-Tibetan",Kucong:"Sino-Tibetan",Kurtokha:"Sino-Tibetan",Ladakhi:"Sino-Tibetan",Lakha:"Sino-Tibetan","Lang’e":"Sino-Tibetan",Lhokpu:"Sino-Tibetan",Lolopo:"Sino-Tibetan",Lunanakha:"Sino-Tibetan","Mandarin Chinese":"Sino-Tibetan",Meitei:"Sino-Tibetan","Miju-Mishmi":"Sino-Tibetan",Mpi:"Sino-Tibetan",Na:"Sino-Tibetan",Namuyi:"Sino-Tibetan",Narua:"Sino-Tibetan",Naxi:"Sino-Tibetan","Northern Muji":"Sino-Tibetan",Nuosu:"Sino-Tibetan",Nupbikha:"Sino-Tibetan",Nyenkha:"Sino-Tibetan",Olekha:"Sino-Tibetan",Pahari:"Sino-Tibetan",Pattani:"Sino-Tibetan","Phana’":"Sino-Tibetan",Phula:"Sino-Tibetan",Phunoi:"Sino-Tibetan",Puma:"Sino-Tibetan",Puroik:"Sino-Tibetan",Raji:"Sino-Tibetan",Rawat:"Sino-Tibetan",Sani:"Sino-Tibetan",Sherdukpen:"Sino-Tibetan",Sherpa:"Sino-Tibetan",Shuhi:"Sino-Tibetan",Sila:"Sino-Tibetan",Singpho:"Sino-Tibetan",Sunwar:"Sino-Tibetan","Tawang Monpa":"Sino-Tibetan",Tseku:"Sino-Tibetan",Tshangla:"Sino-Tibetan",Usoi:"Sino-Tibetan","Western Minyag":"Sino-Tibetan","Wusa Nasu":"Sino-Tibetan","Xiang Chinese":"Sino-Tibetan",Yakkha:"Sino-Tibetan","Youle Jinuo":"Sino-Tibetan","Yue Chinese":"Sino-Tibetan",Zakhring:"Sino-Tibetan","Afghan Sign Language":"Sign Language","Albanian Sign Language":"Sign Language","Algerian Sign Language":"Sign Language","American Sign Language":"Sign Language","Armenian Sign Language":"Sign Language","British Sign Language":"Sign Language","Bulgarian Sign Language":"Sign Language","Cambodian Sign Language":"Sign language","Cuban Sign Language":"Sign Language","Egyptian Sign Language":"Sign Language","Greek Sign Language":"Sign Language","Guinean Sign Language":"Sign Language","Hong Kong Sign Language":"Sign Language","Icelandic Sign Language":"Sign Language","Iranian Sign Language":"Sign Language","Israeli Sign Language":"Sign Language","Jamaican Sign Language":"Sign Language","Jordanian Sign Language":"Sign Language","Laos Sign Language":"Sign Language","Libyan Sign Language":"Sign Language","Maltese Sign Language":"Sign Language","Mauritian Sign Language":"Sign Language","Moroccan Sign Language":"Sign Language","Mozambican Sign Language":"Sign Language","Myanmar Sign Language":"Sign language","Natural Sign Language":"Sign Language","Pakistan Sign Language":"Sign Language","Papua New Guinean Sign Language":"Sign language","Russian Sign Language":"Sign Language","Saudi Arabian Sign Language":"Sign Language","Sign Language of the Netherlands":"Sign Language","Solomon Islands Sign Language":"Sign Language","Sri Lankan Sign Language":"Sign Language","Swedish Sign Language":"Sign Language","Turkish Sign Language":"Sign Language","Northern Conchucos Ancash Quechua":"Quechuan","Northern Pastaza Quichua":"Quechuan",Hupdë:"Puinavean",Amahuaca:"Panoan",Korubo:"Panoan",Sharanahua:"Panoan","Shipibo-Conibo":"Panoan",Yaminahua:"Panoan",Yawanawa:"Panoan",Afitti:"Nilo-Saharan",Assangori:"Nilo-Saharan","Beli (South Sudan)":"Nilo-Saharan",Berta:"Nilo-Saharan",Burun:"Nilo-Saharan","Dar Daju Daju":"Nilo-Saharan","Dar Fur Daju":"Nilo-Saharan","Dar Sila Daju":"Nilo-Saharan",Dazaga:"Nilo-Saharan","Dendi (Benin)":"Nilo-Saharan",Dilling:"Nilo-Saharan",Fur:"Nilo-Saharan",Gbaya:"Nilo-Saharan",Ghulfan:"Nilo-Saharan",Gwama:"Nilo-Saharan","Humburi Senni Songhay":"Nilo-Saharan",Jopadhola:"Nilo-Saharan",Kadaru:"Nilo-Saharan",Kanga:"Nilo-Saharan",Karanga:"Nilo-Saharan",Karko:"Nilo-Saharan",Kebu:"Nilo-Saharan",Keiga:"Nilo-Saharan",Keliko:"Nilo-Saharan",Kendeje:"Nilo-Saharan",Kibet:"Nilo-Saharan","Komo (Sudan)":"Nilo-Saharan",Korandje:"Nilo-Saharan",Kulfa:"Nilo-Saharan",Kwegu:"Nilo-Saharan",Laarim:"Nilo-Saharan",Logorik:"Nilo-Saharan",Majang:"Nilo-Saharan","Manga Kanuri":"Nilo-Saharan",Mango:"Nilo-Saharan",Mararit:"Nilo-Saharan",Marfa:"Nilo-Saharan",Midob:"Nilo-Saharan","Mo’da":"Nilo-Saharan",Morom:"Nilo-Saharan",Moru:"Nilo-Saharan",Naba:"Nilo-Saharan",Nara:"Nilo-Saharan",Njalgulgule:"Nilo-Saharan",Nuer:"Nilo-Saharan","Nyamusa-Molo":"Nilo-Saharan",Nyangatom:"Nilo-Saharan","Olu’bo":"Nilo-Saharan",Opo:"Nilo-Saharan",Päri:"Nilo-Saharan","Sara Kaba Naa":"Nilo-Saharan",Surbakhal:"Nilo-Saharan",Tadaksahak:"Nilo-Saharan","Tama (Chad)":"Nilo-Saharan",Temein:"Nilo-Saharan",Thuri:"Nilo-Saharan","Tirmaga-Chai Suri":"Nilo-Saharan",Toposa:"Nilo-Saharan",Tumtum:"Nilo-Saharan","Wali (Sudan)":"Nilo-Saharan","Yerwa Kanuri":"Nilo-Saharan",Yulu:"Nilo-Saharan",Zaghawa:"Nilo-Saharan","Adamawa Fulfulde":"Niger-Congo",Akaselem:"Niger-Congo","Amba (Uganda)":"Niger-Congo",Anii:"Niger-Congo",Baangi:"Niger-Congo",Badyara:"Niger-Congo","Bago-Kusuntu":"Niger-Congo",Bai:"Niger-Congo","Bainouk-Gunyaamolo":"Niger-Congo",Bamanankan:"Niger-Congo","Banda-Mbrès":"Niger-Congo",Bandial:"Niger-Congo",Bankagooma:"Niger-Congo","Belanda Viri":"Niger-Congo",Bemba:"Niger-Congo",Bolgo:"Niger-Congo","Bon Gula":"Niger-Congo",Bua:"Niger-Congo",Chichewa:"Niger-Congo","Chung (Cameroon)":"Niger-Congo","Ci Gbe":"Niger-Congo",Degema:"Niger-Congo",Dek:"Niger-Congo",Dhimba:"Niger-Congo",Dogoso:"Niger-Congo","East Limba":"Niger-Congo",Engenni:"Niger-Congo",Epie:"Niger-Congo",Éwé:"Niger-Congo",Fania:"Niger-Congo",Foodo:"Niger-Congo",Fwe:"Niger-Congo",Gciriku:"Niger-Congo",Gwa:"Niger-Congo",Herero:"Niger-Congo",Ibuoro:"Niger-Congo","Jenaama Bozo":"Niger-Congo",Jita:"Niger-Congo",Jula:"Niger-Congo",Kabiyè:"Niger-Congo",Kadung:"Niger-Congo",Kakabe:"Niger-Congo",Kalamsé:"Niger-Congo","Kami (Tanzania)":"Niger-Congo","Kango (Bas-Uélé District)":"Niger-Congo",Kasem:"Niger-Congo","Kelengaxo Bozo":"Niger-Congo",Khe:"Niger-Congo",Khisa:"Niger-Congo",Kim:"Niger-Congo",Kinyarwanda:"Niger-Congo",Kipfokomu:"Niger-Congo",Kitharaka:"Niger-Congo",Kiyombe:"Niger-Congo",Ko:"Niger-Congo",Koalib:"Niger-Congo",Koke:"Niger-Congo",Konongo:"Niger-Congo","Koro Nulu":"Niger-Congo","Koro Zuba":"Niger-Congo",Kuhane:"Niger-Congo",Kunda:"Niger-Congo",Kuranko:"Niger-Congo",Kuria:"Niger-Congo",Kwangali:"Niger-Congo",Lame:"Niger-Congo",Laru:"Niger-Congo",Lopa:"Niger-Congo","Makhuwa-Meetto":"Niger-Congo","Makhuwa-Shirima":"Niger-Congo","Malawi Nyiha":"Niger-Congo",Mandinka:"Niger-Congo",Mankanya:"Niger-Congo",Mansoanka:"Niger-Congo",Mbukushu:"Niger-Congo","Mende (Sierra Leone)":"Niger-Congo",Miyobe:"Niger-Congo",Mushungulu:"Niger-Congo","Mwali Comorian":"Niger-Congo","Mwera (Chimwera)":"Niger-Congo",Ndemli:"Niger-Congo",Ndengereko:"Niger-Congo",Ndumu:"Niger-Congo",Ndunga:"Niger-Congo","Ndzwani Comorian":"Niger-Congo",Ngile:"Niger-Congo","Northwest Gbaya":"Niger-Congo",Notre:"Niger-Congo",Nyamwanga:"Niger-Congo",Nyankore:"Niger-Congo",Nyengo:"Niger-Congo",Okpamheri:"Niger-Congo",Osatu:"Niger-Congo","Pana (Burkina Faso)":"Niger-Congo",Pulaar:"Niger-Congo",Pular:"Niger-Congo",Rufiji:"Niger-Congo","Sankaran Maninka":"Niger-Congo",Sapo:"Niger-Congo","Senara Sénoufo":"Niger-Congo",Shanga:"Niger-Congo",Sininkere:"Niger-Congo","Southern Ngbandi":"Niger-Congo",Swahili:"Niger-Congo","Syenara Sénoufo":"Niger-Congo",Tagbu:"Niger-Congo",Tagoi:"Niger-Congo",Tegali:"Niger-Congo",Tem:"Niger-Congo","Tiéyaxo Bozo":"Niger-Congo",Tiyaa:"Niger-Congo",Tocho:"Niger-Congo","Tonga (Zambia)":"Niger-Congo",Totela:"Niger-Congo","Toura (Côte d’Ivoire)":"Niger-Congo",Tswa:"Niger-Congo",Tumbuka:"Niger-Congo",Ukaan:"Niger-Congo",Uneme:"Niger-Congo",Vai:"Niger-Congo",Vute:"Niger-Congo",Waama:"Niger-Congo",Warnang:"Niger-Congo",Wolof:"Niger-Congo",Yao:"Niger-Congo",Yauma:"Niger-Congo",Yom:"Niger-Congo","Zan Gula":"Niger-Congo",Zande:"Niger-Congo",Zigula:"Niger-Congo",Mamaindê:"Nambikwara",Aghul:"Nakh-Daghestanian",Akhvakh:"Nakh-Daghestanian",Andi:"Nakh-Daghestanian",Avar:"Nakh-Daghestanian",Bagvalal:"Nakh-Daghestanian",Botlikh:"Nakh-Daghestanian",Chamalal:"Nakh-Daghestanian",Chechen:"Nakh-Daghestanian",Dargwa:"Nakh-Daghestanian",Kaitag:"Nakh-Daghestanian",Karata:"Nakh-Daghestanian",Khvarshi:"Nakh-Daghestanian",Tindi:"Nakh-Daghestanian",Pirahã:"Muran",Bonan:"Mongolic","China Buriat":"Mongolic",Daur:"Mongolic","Kalmyk-Oirat":"Mongolic","Peripheral Mongolian":"Mongolic","Russia Buriat":"Mongolic",Tagdal:"Mixed language",Wutunhua:"Mixed language","Ashéninka Perené":"Maipurean",Baniwa:"Maipurean",Cabiyarí:"Maipurean",Curripaco:"Maipurean","Enawené-Nawé":"Maipurean",Kanamarí:"Maipurean",Mehináku:"Maipurean","Pichis Ashéninka":"Maipurean",Waurá:"Maipurean",Bangime:"Language isolate",Burushaski:"Language isolate","Ai-Cham":"Kra-Dai",Aiton:"Kra-Dai","Dai Zhuang":"Kra-Dai",Duoluo:"Kra-Dai","Green Gelao":"Kra-Dai","Guibian Zhuang":"Kra-Dai",Hlai:"Kra-Dai",Jiamao:"Kra-Dai",Kang:"Kra-Dai",Khün:"Kra-Dai",Kuan:"Kra-Dai",Lachi:"Kra-Dai","Laha (Viet Nam)":"Kra-Dai",Lao:"Kra-Dai",Lü:"Kra-Dai","Mak (China)":"Kra-Dai","Northeastern Thai":"Kra-Dai","Northern Dong":"Kra-Dai","Northern Thai":"Kra-Dai",Nyaw:"Kra-Dai",Phake:"Kra-Dai","Phu Thai":"Kra-Dai",Qabiao:"Kra-Dai",Qau:"Kra-Dai","Qiubei Zhuang":"Kra-Dai",Shan:"Kra-Dai","Southern Dong":"Kra-Dai",Sui:"Kra-Dai","T’en":"Kra-Dai","Tai Daeng":"Kra-Dai","Tai Dam":"Kra-Dai","Tai Hongjin":"Kra-Dai","Tai Nüa":"Kra-Dai","Tai Ya":"Kra-Dai","Tai Yo":"Kra-Dai","Ts’ün-Lao":"Kra-Dai","Yang Zhuang":"Kra-Dai",Yerong:"Kra-Dai",Yong:"Kra-Dai",Yoy:"Kra-Dai",Khoekhoe:"Khoe-Kwadi",Karajá:"Karajá","Pará Gavião":"Jean",Suyá:"Jean",Japanese:"Japonic","Oki-No-Erabu":"Japonic","Toku-No-Shima":"Japonic",Yaeyama:"Japonic",Yoron:"Japonic","Adivasi Oriya":"Indo-European",Afrikaans:"Indo-European","Alviri-Vidari":"Indo-European",Angika:"Indo-European",Assamese:"Indo-European",Bagheli:"Indo-European",Bagri:"Indo-European",Bashkardi:"Indo-European",Bateri:"Indo-European",Bengali:"Indo-European",Bhojpuri:"Indo-European",Bhunjia:"Indo-European",Bilaspuri:"Indo-European",Bosnian:"Indo-European","Braj Bhasha":"Indo-European",Brokskat:"Indo-European",Bundeli:"Indo-European",Catalan:"Indo-European",Chambeali:"Indo-European",Chhattisgarhi:"Indo-European",Dameli:"Indo-European",Dari:"Indo-European",Dhundari:"Indo-European",Dogri:"Indo-European",Domari:"Indo-European",Dutch:"Indo-European","Eastern Balochi":"Indo-European","Eastern Panjabi":"Indo-European","Eastern Yiddish":"Indo-European",English:"Indo-European",French:"Indo-European",Gaddi:"Indo-European",Garhwali:"Indo-European",Gawri:"Indo-European",Gowro:"Indo-European",Gujarati:"Indo-European",Gujari:"Indo-European",Halbi:"Indo-European",Haroti:"Indo-European",Haryanvi:"Indo-European",Hindi:"Indo-European","Indus Kohistani":"Indo-European","Iranian Persian":"Indo-European",Ishkashimi:"Indo-European",Kacchi:"Indo-European",Kalkoti:"Indo-European",Kanauji:"Indo-European",Kangri:"Indo-European",Karingani:"Indo-European",Kashmiri:"Indo-European",Kati:"Indo-European",Khunsari:"Indo-European",Konkani:"Indo-European",Kudmali:"Indo-European",Kumaoni:"Indo-European",Kumzari:"Indo-European",Laki:"Indo-European",Lasi:"Indo-European",Luwati:"Indo-European",Magahi:"Indo-European",Maithili:"Indo-European",Maldivian:"Indo-European",Malvi:"Indo-European",Marathi:"Indo-European","Marwari (India)":"Indo-European",Mewari:"Indo-European",Munji:"Indo-European",Nepali:"Indo-European",Nimadi:"Indo-European","Northern Kurdish":"Indo-European",Odia:"Indo-European","Pahari-Potwari":"Indo-European",Palula:"Indo-European",Panchpargania:"Indo-European",Pangwali:"Indo-European",Parachi:"Indo-European",Portuguese:"Indo-European",Russian:"Indo-European",Sadri:"Indo-European",Sanglechi:"Indo-European",Sarikoli:"Indo-European",Savi:"Indo-European",Semnani:"Indo-European",Serbian:"Indo-European",Shabak:"Indo-European",Shahrudi:"Indo-European",Shekhawati:"Indo-European",Shina:"Indo-European",Shughni:"Indo-European",Shumashti:"Indo-European",Sindhi:"Indo-European",Sivandi:"Indo-European",Soi:"Indo-European","Southern Balochi":"Indo-European",Spanish:"Indo-European",Tajik:"Indo-European",Talysh:"Indo-European",Urdu:"Indo-European",Ushojo:"Indo-European",Vaghri:"Indo-European","Vlax Romani":"Indo-European",Wagdi:"Indo-European",Wakhi:"Indo-European",Waneci:"Indo-European","Western Balochi":"Indo-European",Yadgha:"Indo-European","Bu-Nao Bunu":"Hmong-Mien","Central Mashan Miao":"Hmong-Mien","Chuanqiandian Cluster Miao":"Hmong-Mien","Eastern Xiangxi Miao":"Hmong-Mien","Iu Mien":"Hmong-Mien","Luopohe Miao":"Hmong-Mien","Northern Qiandong Miao":"Hmong-Mien","Pa-Hng":"Hmong-Mien","Southwestern Huishui Miao":"Hmong-Mien","Wunai Bunu":"Hmong-Mien","Younuo Bunu":"Hmong-Mien",Amarakaeri:"Harákmbut",Huachipaeri:"Harákmbut",Cuiba:"Guajiboan",Macaguán:"Guajiboan",Tlicho:"Eyak-Athabaskan",Kannada:"Dravidian",Kodava:"Dravidian","Korra Koraga":"Dravidian","Kota (India)":"Dravidian",Kudiya:"Dravidian",Malapandaram:"Dravidian",Malayalam:"Dravidian",Muthuvan:"Dravidian",Ravula:"Dravidian",Sholaga:"Dravidian",Tamil:"Dravidian",Telugu:"Dravidian",Tulu:"Dravidian",Vishavan:"Dravidian","Andaman Hindi Creole":"Creole","Cocos Islands Malay":"Creole","Juba Arabic":"Creole",Nubi:"Creole",Barí:"Chibchan","Barro Negro Tunebo":"Chibchan","Western Tunebo":"Chibchan",Ikpeng:"Cariban","Kuikúro-Kalapálo":"Cariban",Pemon:"Cariban",Trió:"Cariban","Waimiri-Atroarí":"Cariban",Waiwai:"Cariban",Yukpa:"Cariban",Borôro:"Bororoan",Chachi:"Barbacoan","Abai Sungai":"Austronesian",Ambelau:"Austronesian",Asilulu:"Austronesian",Balaesang:"Austronesian","Batak Alas-Kluet":"Austronesian","Batak Dairi":"Austronesian","Batak Karo":"Austronesian",Bonerate:"Austronesian",Bonggi:"Austronesian",Brunei:"Austronesian","Brunei Bisaya":"Austronesian",Buol:"Austronesian","Central Malay":"Austronesian","Central Sama":"Austronesian","Coastal Konjo":"Austronesian",Dampelas:"Austronesian","Dibabawon Manobo":"Austronesian",Dondo:"Austronesian",Gane:"Austronesian","Geser-Gorom":"Austronesian","Highland Konjo":"Austronesian",Hitu:"Austronesian",Iban:"Austronesian",Indonesian:"Austronesian","Kadazan Dusun":"Austronesian",Kiput:"Austronesian",Komodo:"Austronesian",Kompane:"Austronesian",Lahanan:"Austronesian","Lampung Nyo":"Austronesian","Larike-Wakasihu":"Austronesian",Lola:"Austronesian",Luhu:"Austronesian",Malay:"Austronesian",Mariri:"Austronesian",Moronene:"Austronesian",Rukai:"Austronesian","Sabah Bisaya":"Austronesian","Seit-Kaitetu":"Austronesian",Sula:"Austronesian","Tae’":"Austronesian",Tajio:"Austronesian",Tomini:"Austronesian",Tutong:"Austronesian",Ujir:"Austronesian",Aheu:"Austro-Asiatic",Alak:"Austro-Asiatic",Bit:"Austro-Asiatic","Bo (Laos)":"Austro-Asiatic",Bondo:"Austro-Asiatic",Brao:"Austro-Asiatic",Bugan:"Austro-Asiatic",Chong:"Austro-Asiatic",Chut:"Austro-Asiatic",Danau:"Austro-Asiatic",Halang:"Austro-Asiatic","Halang Doan":"Austro-Asiatic",Hu:"Austro-Asiatic",Hung:"Austro-Asiatic",Ir:"Austro-Asiatic",Kensiu:"Austro-Asiatic",Khmu:"Austro-Asiatic",Khua:"Austro-Asiatic",Khuen:"Austro-Asiatic",Koda:"Austro-Asiatic","Kon Keu":"Austro-Asiatic",Kriang:"Austro-Asiatic",Kuay:"Austro-Asiatic",Laven:"Austro-Asiatic",Maleng:"Austro-Asiatic","Man Met":"Austro-Asiatic",Mang:"Austro-Asiatic",Minriq:"Austro-Asiatic",Mlabri:"Austro-Asiatic",Nguôn:"Austro-Asiatic",Nyaheun:"Austro-Asiatic",Nyahkur:"Austro-Asiatic","O’du":"Austro-Asiatic",Ong:"Austro-Asiatic",Oy:"Austro-Asiatic",Pacoh:"Austro-Asiatic","Phong-Kniang":"Austro-Asiatic",Prai:"Austro-Asiatic",Puoc:"Austro-Asiatic",Rengao:"Austro-Asiatic",Rmeet:"Austro-Asiatic","Rumai Palaung":"Austro-Asiatic",Sapuan:"Austro-Asiatic","Shwe Palaung":"Austro-Asiatic","So (Laos)":"Austro-Asiatic",Sou:"Austro-Asiatic","Tai Loi":"Austro-Asiatic",Talieng:"Austro-Asiatic",Tareng:"Austro-Asiatic",Tho:"Austro-Asiatic",U:"Austro-Asiatic","Upper Ta’oih":"Austro-Asiatic",Vietnamese:"Austro-Asiatic","Western Katu":"Austro-Asiatic",Suruahá:"Arauan",Jarawa:"Andamanese",Öñge:"Andamanese",Sentinel:"Andamanese",Afar:"Afro-Asiatic","Alaba-K’abeena":"Afro-Asiatic",Alagwa:"Afro-Asiatic",Ale:"Afro-Asiatic","Algerian Arabic":"Afro-Asiatic",Amharic:"Afro-Asiatic",Arbore:"Afro-Asiatic","Baharna Arabic":"Afro-Asiatic",Barein:"Afro-Asiatic",Bedawiyet:"Afro-Asiatic",Bidiyo:"Afro-Asiatic",Bilen:"Afro-Asiatic",Birgit:"Afro-Asiatic",Boor:"Afro-Asiatic","Borana-Arsi-Guji Oromo":"Afro-Asiatic",Buduma:"Afro-Asiatic","Central Atlas Tamazight":"Afro-Asiatic","Chadian Arabic":"Afro-Asiatic",Chenoua:"Afro-Asiatic",Ciwogai:"Afro-Asiatic",Daasanach:"Afro-Asiatic",Dabarre:"Afro-Asiatic",Dangaléat:"Afro-Asiatic",Deno:"Afro-Asiatic",Diri:"Afro-Asiatic",Duwai:"Afro-Asiatic","Eastern Egyptian Bedawi Arabic":"Afro-Asiatic","Eastern Oromo":"Afro-Asiatic",Garre:"Afro-Asiatic",Geruma:"Afro-Asiatic",Giiwo:"Afro-Asiatic",Gorowa:"Afro-Asiatic","Gulf Arabic":"Afro-Asiatic","Hadrami Arabic":"Afro-Asiatic",Harsusi:"Afro-Asiatic",Hassaniyya:"Afro-Asiatic",Hausa:"Afro-Asiatic",Hebrew:"Afro-Asiatic","Hijazi Arabic":"Afro-Asiatic",Hobyót:"Afro-Asiatic",Hozo:"Afro-Asiatic",Jiiddu:"Afro-Asiatic",Jimi:"Afro-Asiatic",Jina:"Afro-Asiatic","Jonkor Bourmataguil":"Afro-Asiatic","Judeo-Iraqi Arabic":"Afro-Asiatic","Judeo-Moroccan Arabic":"Afro-Asiatic",Kabalai:"Afro-Asiatic",Kajakse:"Afro-Asiatic",Kariya:"Afro-Asiatic","Karo (Ethiopia)":"Afro-Asiatic",Kutto:"Afro-Asiatic","Levantine Arabic":"Afro-Asiatic",Libido:"Afro-Asiatic","Libyan Arabic":"Afro-Asiatic","Lishana Deni":"Afro-Asiatic",Maaka:"Afro-Asiatic",Maay:"Afro-Asiatic",Majera:"Afro-Asiatic",Male:"Afro-Asiatic",Maslam:"Afro-Asiatic",Masmaje:"Afro-Asiatic",Mburku:"Afro-Asiatic",Mehri:"Afro-Asiatic","Mesopotamian Arabic":"Afro-Asiatic",Migaama:"Afro-Asiatic",Mogum:"Afro-Asiatic","Moroccan Arabic":"Afro-Asiatic",Mositacha:"Afro-Asiatic",Mubi:"Afro-Asiatic",Mukulu:"Afro-Asiatic",Nafusi:"Afro-Asiatic","Najdi Arabic":"Afro-Asiatic",Nyam:"Afro-Asiatic","Omani Arabic":"Afro-Asiatic","Pa’a":"Afro-Asiatic",Saba:"Afro-Asiatic",Saho:"Afro-Asiatic","Sanaani Arabic":"Afro-Asiatic",Seze:"Afro-Asiatic",Shehri:"Afro-Asiatic",Shekkacho:"Afro-Asiatic",Sheko:"Afro-Asiatic","Shihhi Arabic":"Afro-Asiatic",Siwi:"Afro-Asiatic",Sokoro:"Afro-Asiatic",Soqotri:"Afro-Asiatic","South Levantine Arabic":"Afro-Asiatic","Standard Arabic":"Afro-Asiatic","Sudanese Arabic":"Afro-Asiatic","Ta’izzi-Adeni Arabic":"Afro-Asiatic","Tahaggart Tamahaq":"Afro-Asiatic",Taznatit:"Afro-Asiatic",Tigré:"Afro-Asiatic",Toram:"Afro-Asiatic",Tsamai:"Afro-Asiatic",Tumzabt:"Afro-Asiatic",Tunni:"Afro-Asiatic",Waata:"Afro-Asiatic","West Central Oromo":"Afro-Asiatic",Xamtanga:"Afro-Asiatic",Zumbun:"Afro-Asiatic"},rc={aar:"Afro-Asiatic",abf:"Austronesian",abl:"Austronesian",abv:"Afro-Asiatic",acm:"Afro-Asiatic",acq:"Afro-Asiatic",acw:"Afro-Asiatic",acx:"Afro-Asiatic",adh:"Nilo-Saharan",adi:"Sino-Tibetan",adw:"Tupian",adx:"Sino-Tibetan",aen:"Sign Language",afb:"Afro-Asiatic",afg:"Sign Language",afr:"Indo-European",aft:"Nilo-Saharan",agx:"Nakh-Daghestanian",ahk:"Sino-Tibetan",aib:"Turkic",aih:"Kra-Dai",aio:"Kra-Dai",ajp:"Afro-Asiatic",aju:"Afro-Asiatic",aks:"Niger-Congo",akv:"Nakh-Daghestanian",alk:"Austro-Asiatic",alo:"Austronesian",alw:"Afro-Asiatic",amc:"Panoan",amh:"Afro-Asiatic",amr:"Harákmbut",amv:"Austronesian",ani:"Nakh-Daghestanian",anp:"Indo-European",anq:"Andamanese",aoc:"Cariban",apc:"Afro-Asiatic",apd:"Afro-Asiatic",arb:"Afro-Asiatic",arq:"Afro-Asiatic",arr:"Tupian",ars:"Afro-Asiatic",arv:"Afro-Asiatic",ary:"Afro-Asiatic",ase:"Sign Language",asl:"Austronesian",asm:"Indo-European",asn:"Tupian",asp:"Sign Language",atr:"Cariban",avd:"Indo-European",avl:"Afro-Asiatic",avv:"Tupian",awe:"Tupian",awt:"Tupian",ayh:"Afro-Asiatic",ayl:"Afro-Asiatic",ayn:"Afro-Asiatic",azb:"Turkic",bao:"Tucanoan",bbh:"Austro-Asiatic",bcc:"Indo-European",bcz:"Niger-Congo",bdg:"Austronesian",bdi:"Nilo-Saharan",bdj:"Niger-Congo",bdm:"Afro-Asiatic",bdo:"Nilo-Saharan",bee:"Sino-Tibetan",bej:"Afro-Asiatic",bem:"Niger-Congo",ben:"Indo-European",bfi:"Sign Language",bfu:"Sino-Tibetan",bfw:"Austro-Asiatic",bfy:"Indo-European",bgc:"Indo-European",bgg:"Sino-Tibetan",bgk:"Austro-Asiatic",bgl:"Austro-Asiatic",bgn:"Indo-European",bgp:"Indo-European",bgq:"Indo-European",bho:"Indo-European",bhu:"Indo-European",bid:"Afro-Asiatic",bjj:"Indo-European",bkk:"Indo-European",blf:"Austronesian",blm:"Nilo-Saharan",blo:"Niger-Congo",bls:"Austronesian",blt:"Kra-Dai",bly:"Niger-Congo",bma:"Niger-Congo",bmr:"Witotoan",bna:"Austronesian",bns:"Indo-European",bor:"Bororoan",bos:"Indo-European",bph:"Nakh-Daghestanian",bqg:"Niger-Congo",bqj:"Niger-Congo",bqk:"Niger-Congo",bqn:"Sign Language",bqx:"Niger-Congo",bra:"Indo-European",brb:"Austro-Asiatic",bro:"Sino-Tibetan",brx:"Sino-Tibetan",bsb:"Austronesian",bsg:"Indo-European",bsk:"Language isolate",bsy:"Austronesian",btd:"Austronesian",btf:"Afro-Asiatic",btv:"Indo-European",btx:"Austronesian",btz:"Austronesian",bub:"Niger-Congo",buh:"Hmong-Mien",bva:"Afro-Asiatic",bvf:"Afro-Asiatic",bvi:"Niger-Congo",bvo:"Niger-Congo",bwi:"Maipurean",bwn:"Hmong-Mien",bwx:"Hmong-Mien",bxr:"Mongolic",bxu:"Mongolic",bxw:"Niger-Congo",byn:"Afro-Asiatic",byo:"Sino-Tibetan",bze:"Niger-Congo",bzx:"Niger-Congo",cat:"Indo-European",cbb:"Maipurean",cbc:"Tucanoan",cbi:"Barbacoan",cbn:"Austro-Asiatic",cby:"Unclassified",cdh:"Indo-European",cdn:"Sino-Tibetan",cdz:"Austro-Asiatic",ceg:"Zamucoan",cgk:"Sino-Tibetan",che:"Nakh-Daghestanian",cib:"Niger-Congo",cji:"Nakh-Daghestanian",ckh:"Sino-Tibetan",ckq:"Afro-Asiatic",clk:"Sino-Tibetan",cmn:"Sino-Tibetan",cnq:"Niger-Congo",cnu:"Afro-Asiatic",coa:"Creole",cog:"Austro-Asiatic",cpu:"Maipurean",cqd:"Hmong-Mien",csf:"Sign Language",csx:"Sign language",cub:"Tucanoan",cui:"Guajiboan",cuu:"Kra-Dai",daa:"Afro-Asiatic",daj:"Nilo-Saharan",dar:"Nakh-Daghestanian",dau:"Nilo-Saharan",dba:"Language isolate",dbb:"Afro-Asiatic",dbp:"Afro-Asiatic",dbr:"Afro-Asiatic",ddn:"Nilo-Saharan",deg:"Niger-Congo",dek:"Niger-Congo",des:"Tucanoan",dgo:"Indo-European",dgs:"Niger-Congo",dhd:"Indo-European",dhi:"Sino-Tibetan",dhm:"Niger-Congo",dil:"Nilo-Saharan",diu:"Niger-Congo",div:"Indo-European",djc:"Nilo-Saharan",dkg:"Niger-Congo",dln:"Sino-Tibetan",dml:"Indo-European",dms:"Austronesian",dnu:"Austro-Asiatic",doc:"Kra-Dai",dok:"Austronesian",dox:"Afro-Asiatic",dru:"Austronesian",dse:"Sign Language",dsh:"Afro-Asiatic",dsl:"Sign Language",dsq:"Nilo-Saharan",dta:"Mongolic",dtp:"Austronesian",dyu:"Niger-Congo",dzg:"Nilo-Saharan",dzl:"Sino-Tibetan",eng:"Indo-European",enn:"Niger-Congo",epi:"Niger-Congo",ers:"Sino-Tibetan",esl:"Sign Language",evn:"Tungusic",fin:"Uralic",fni:"Niger-Congo",fod:"Niger-Congo",fra:"Indo-European",fsl:"Sign Language",fub:"Niger-Congo",fuc:"Niger-Congo",fuf:"Niger-Congo",fuj:"Niger-Congo",fvr:"Nilo-Saharan",fwe:"Niger-Congo",gax:"Afro-Asiatic",gaz:"Afro-Asiatic",gbk:"Indo-European",gbm:"Indo-European",gbn:"Nilo-Saharan",gdq:"Afro-Asiatic",gea:"Afro-Asiatic",ges:"Austronesian",gex:"Afro-Asiatic",ghl:"Nilo-Saharan",giq:"Kra-Dai",giw:"Kra-Dai",gju:"Indo-European",glc:"Niger-Congo",goe:"Sino-Tibetan",gow:"Afro-Asiatic",gqu:"Kra-Dai",grr:"Afro-Asiatic",gsg:"Sign Language",gss:"Sign Language",guj:"Indo-European",gus:"Sign Language",gvp:"Jean",gwb:"Niger-Congo",gwc:"Indo-European",gwd:"Afro-Asiatic",gwf:"Indo-European",gya:"Niger-Congo",gyo:"Sino-Tibetan",gzn:"Austronesian",hae:"Afro-Asiatic",hal:"Austro-Asiatic",hau:"Afro-Asiatic",hca:"Creole",hea:"Hmong-Mien",heb:"Afro-Asiatic",her:"Niger-Congo",hik:"Austronesian",hin:"Indo-European",hks:"Sign Language",hlb:"Indo-European",hld:"Austro-Asiatic",hmb:"Nilo-Saharan",hmh:"Hmong-Mien",hml:"Hmong-Mien",hmm:"Hmong-Mien",hne:"Indo-European",hni:"Sino-Tibetan",hnu:"Austro-Asiatic",hoh:"Afro-Asiatic",hoj:"Indo-European",hoz:"Afro-Asiatic",hsn:"Sino-Tibetan",hss:"Afro-Asiatic",htu:"Austronesian",hug:"Harákmbut",huo:"Austro-Asiatic",iba:"Austronesian",ibr:"Niger-Congo",icl:"Sign Language",iii:"Sino-Tibetan",ind:"Austronesian",irr:"Austro-Asiatic",ise:"Sign Language",isk:"Indo-European",isr:"Sign Language",ium:"Hmong-Mien",jbn:"Afro-Asiatic",jeu:"Afro-Asiatic",jia:"Afro-Asiatic",jii:"Afro-Asiatic",jio:"Kra-Dai",jit:"Niger-Congo",jiu:"Sino-Tibetan",jle:"Niger-Congo",jls:"Sign Language",jmi:"Afro-Asiatic",jnl:"Sino-Tibetan",jos:"Sign Language",jpn:"Japonic",jup:"Puinavean",kaf:"Sino-Tibetan",kan:"Dravidian",kas:"Indo-European",kay:"Tupian",kaz:"Turkic",kbg:"Sino-Tibetan",kbo:"Nilo-Saharan",kbp:"Niger-Congo",kby:"Nilo-Saharan",kcf:"Niger-Congo",kcn:"Creole",kcp:"Nilo-Saharan",kcu:"Niger-Congo",kcy:"Nilo-Saharan",kcz:"Niger-Congo",kdh:"Niger-Congo",kdn:"Niger-Congo",kdt:"Austro-Asiatic",kdu:"Nilo-Saharan",kec:"Nilo-Saharan",kfa:"Dravidian",kfd:"Dravidian",kfe:"Dravidian",kfg:"Dravidian",kfm:"Indo-European",kfr:"Indo-European",kfs:"Indo-European",kfy:"Indo-European",kgn:"Indo-European",khb:"Kra-Dai",khf:"Austro-Asiatic",khv:"Nakh-Daghestanian",kia:"Niger-Congo",kib:"Niger-Congo",kie:"Nilo-Saharan",kil:"Afro-Asiatic",kir:"Turkic",kjc:"Austronesian",kjg:"Austro-Asiatic",kjk:"Austronesian",kke:"Niger-Congo",kkh:"Kra-Dai",kkn:"Austro-Asiatic",kko:"Nilo-Saharan",kks:"Afro-Asiatic",klf:"Nilo-Saharan",kmc:"Kra-Dai",kmq:"Nilo-Saharan",kmr:"Indo-European",kmz:"Turkic",knc:"Nilo-Saharan",knf:"Niger-Congo",knk:"Niger-Congo",knm:"Maipurean",knn:"Indo-European",kns:"Austro-Asiatic",knz:"Niger-Congo",kou:"Niger-Congo",kpa:"Afro-Asiatic",kpc:"Maipurean",kpj:"Karajá",kpt:"Nakh-Daghestanian",kqg:"Niger-Congo",kqm:"Niger-Congo",krn:"Niger-Congo",krs:"Nilo-Saharan",kth:"Nilo-Saharan",kuf:"Austro-Asiatic",kui:"Cariban",kuj:"Niger-Congo",kva:"Nakh-Daghestanian",kvf:"Afro-Asiatic",kvh:"Austronesian",kvp:"Austronesian",kwn:"Niger-Congo",kwv:"Nilo-Saharan",kxd:"Austronesian",kxh:"Afro-Asiatic",kxj:"Nilo-Saharan",kyi:"Austronesian",kyp:"Kra-Dai",kyw:"Indo-European",kzq:"Sino-Tibetan",lae:"Sino-Tibetan",lan:"Niger-Congo",lao:"Kra-Dai",laq:"Kra-Dai",lbj:"Sino-Tibetan",lbn:"Austro-Asiatic",lbo:"Austro-Asiatic",lbs:"Sign Language",lbt:"Kra-Dai",lcd:"Austronesian",lcq:"Austronesian",lgn:"Nilo-Saharan",lgs:"Sign Language",lha:"Kra-Dai",lhn:"Austronesian",lhp:"Sino-Tibetan",lic:"Kra-Dai",liq:"Afro-Asiatic",liu:"Nilo-Saharan",lkc:"Sino-Tibetan",lkh:"Sino-Tibetan",lki:"Indo-European",lkr:"Nilo-Saharan",lma:"Niger-Congo",loh:"Nilo-Saharan",lop:"Niger-Congo",lsd:"Afro-Asiatic",lso:"Sign Language",lss:"Indo-European",lsy:"Sign Language",luk:"Sino-Tibetan",lul:"Nilo-Saharan",mag:"Indo-European",mai:"Indo-European",mal:"Dravidian",mar:"Indo-European",mbd:"Austronesian",mbn:"Guajiboan",mcd:"Panoan",mdl:"Sign Language",mdy:"Afro-Asiatic",mei:"Nilo-Saharan",men:"Niger-Congo",mes:"Afro-Asiatic",mew:"Afro-Asiatic",mey:"Afro-Asiatic",mgb:"Nilo-Saharan",mgd:"Nilo-Saharan",mge:"Nilo-Saharan",mgh:"Niger-Congo",mhr:"Uralic",mhu:"Sino-Tibetan",mhw:"Niger-Congo",mjp:"Dravidian",mkg:"Kra-Dai",mmh:"Maipurean",mml:"Austro-Asiatic",mmy:"Afro-Asiatic",mne:"Nilo-Saharan",mni:"Sino-Tibetan",mnj:"Indo-European",mnk:"Niger-Congo",mnq:"Austro-Asiatic",mns:"Uralic",mot:"Chibchan",mou:"Afro-Asiatic",moy:"Afro-Asiatic",moz:"Afro-Asiatic",mpe:"Nilo-Saharan",mpz:"Sino-Tibetan",mqi:"Austronesian",mqn:"Austronesian",mra:"Austro-Asiatic",mrj:"Uralic",msc:"Niger-Congo",msv:"Afro-Asiatic",msw:"Niger-Congo",mtr:"Indo-European",mub:"Afro-Asiatic",mup:"Indo-European",muq:"Hmong-Mien",muv:"Dravidian",mvf:"Mongolic",mvu:"Nilo-Saharan",mvy:"Indo-European",mwn:"Niger-Congo",mxj:"Sino-Tibetan",myp:"Muran",myy:"Tucanoan",mzb:"Afro-Asiatic",mzy:"Sign Language",naq:"Khoe-Kwadi",nbt:"Sino-Tibetan",nbw:"Niger-Congo",ndg:"Niger-Congo",ndp:"Nilo-Saharan",ndt:"Niger-Congo",neb:"Niger-Congo",neh:"Sino-Tibetan",nev:"Austro-Asiatic",ngt:"Austro-Asiatic",njl:"Nilo-Saharan",nkd:"Sino-Tibetan",nld:"Indo-European",nmd:"Niger-Congo",nmi:"Afro-Asiatic",nml:"Niger-Congo",nmy:"Sino-Tibetan",nnj:"Nilo-Saharan",nod:"Kra-Dai",noe:"Indo-European",nos:"Sino-Tibetan",npb:"Sino-Tibetan",npi:"Indo-European",nrb:"Nilo-Saharan",nru:"Sino-Tibetan",nsl:"Sign Language",nuo:"Austro-Asiatic",nus:"Nilo-Saharan",nwm:"Nilo-Saharan",nxq:"Sino-Tibetan",nye:"Niger-Congo",nyn:"Niger-Congo",nyr:"Niger-Congo",nyw:"Kra-Dai",nzs:"Sign Language",okn:"Japonic",ole:"Sino-Tibetan",oog:"Austro-Asiatic",oon:"Andamanese",opa:"Niger-Congo",ort:"Indo-European",ory:"Indo-European",ost:"Niger-Congo",oyb:"Austro-Asiatic",oym:"Tupian",pac:"Austro-Asiatic",pah:"Tupian",pbp:"Niger-Congo",peh:"Mongolic",pes:"Indo-European",pga:"Creole",pgg:"Indo-European",pgz:"Sign language",pha:"Hmong-Mien",phh:"Sino-Tibetan",phj:"Sino-Tibetan",phk:"Kra-Dai",phl:"Indo-European",pho:"Sino-Tibetan",phq:"Sino-Tibetan",phr:"Indo-European",pht:"Kra-Dai",pil:"Niger-Congo",pir:"Tucanoan",pkb:"Niger-Congo",pks:"Sign Language",pkt:"Austro-Asiatic",pll:"Austro-Asiatic",pnq:"Niger-Congo",pnx:"Austro-Asiatic",por:"Indo-European",prc:"Indo-European",prs:"Indo-European",prt:"Austro-Asiatic",psc:"Sign Language",pse:"Austronesian",pto:"Tupian",pum:"Sino-Tibetan",puo:"Austro-Asiatic",qae:"Sign Language",qao:"Sign Language",qbh:"Sign Language",qbj:"Sign Language",qbn:"Sign Language",qbt:"Sign Language",qcd:"Sign Language",qcm:"Sign Language",qcy:"Sign Language",qer:"Sign Language",qfa:"Sign Language",qfj:"Sign Language",qga:"Sign Language",qge:"Sign Language",qgm:"Sign Language",qiq:"Sign Language",qki:"Sign Language",qkm:"Sign Language",qkp:"Sign Language",qkw:"Sign Language",qmv:"Sign Language",qnh:"Sign Language",qns:"Sign Language",qom:"Sign Language",qqa:"Sign Language",qry:"Sign Language",qsm:"Sign Language",qso:"Sign Language",qsr:"Sign Language",qsz:"Sign Language",qtp:"Sign Language",qvz:"Quechuan",ras:"Niger-Congo",rbb:"Austro-Asiatic",ren:"Austro-Asiatic",rji:"Sino-Tibetan",rmt:"Indo-European",rmy:"Indo-European",rob:"Austronesian",rsl:"Sign Language",rui:"Niger-Congo",rus:"Indo-European",rwm:"Niger-Congo",rwr:"Indo-European",rys:"Japonic",saa:"Afro-Asiatic",sbf:"Unclassified",sbj:"Nilo-Saharan",sbs:"Niger-Congo",scb:"Austro-Asiatic",sck:"Indo-European",scl:"Indo-European",sdb:"Indo-European",sdg:"Indo-European",sdl:"Sign Language",sdp:"Sino-Tibetan",seq:"Niger-Congo",sgh:"Indo-European",sgy:"Indo-European",she:"Afro-Asiatic",shm:"Indo-European",shn:"Kra-Dai",sho:"Niger-Congo",shp:"Panoan",shu:"Afro-Asiatic",shv:"Afro-Asiatic",shz:"Niger-Congo",siy:"Indo-European",siz:"Afro-Asiatic",sjg:"Nilo-Saharan",sjo:"Tungusic",skq:"Niger-Congo",sle:"Dravidian",slt:"Sino-Tibetan",sml:"Austronesian",smy:"Indo-European",snd:"Indo-European",snn:"Tucanoan",soj:"Indo-European",sok:"Afro-Asiatic",soy:"Niger-Congo",spa:"Indo-European",spu:"Austro-Asiatic",sqk:"Sign Language",sqq:"Austro-Asiatic",sqs:"Sign Language",sqt:"Afro-Asiatic",srh:"Indo-European",sri:"Tucanoan",srp:"Indo-European",ssh:"Afro-Asiatic",ssn:"Afro-Asiatic",sss:"Austro-Asiatic",ssy:"Afro-Asiatic",std:"Andamanese",sts:"Indo-European",suq:"Nilo-Saharan",suv:"Sino-Tibetan",suy:"Jean",suz:"Sino-Tibetan",swh:"Niger-Congo",swi:"Kra-Dai",swl:"Sign Language",swv:"Indo-European",swx:"Arauan",sxg:"Sino-Tibetan",sze:"Afro-Asiatic",szn:"Austronesian",szs:"Sign Language",tag:"Niger-Congo",tam:"Dravidian",taz:"Niger-Congo",tbm:"Niger-Congo",tbn:"Chibchan",tbr:"Nilo-Saharan",tct:"Kra-Dai",tcy:"Dravidian",tda:"Mixed language",tdb:"Indo-European",tdd:"Kra-Dai",tdf:"Austro-Asiatic",tdj:"Austronesian",tel:"Dravidian",teq:"Nilo-Saharan",tgf:"Sino-Tibetan",tgk:"Indo-European",tgr:"Austro-Asiatic",thk:"Niger-Congo",thm:"Austro-Asiatic",thu:"Nilo-Saharan",thv:"Afro-Asiatic",tig:"Afro-Asiatic",tin:"Nakh-Daghestanian",tiz:"Kra-Dai",tkn:"Japonic",tlq:"Austro-Asiatic",tly:"Indo-European",tma:"Nilo-Saharan",tnb:"Chibchan",toi:"Niger-Congo",toq:"Nilo-Saharan",tou:"Austro-Asiatic",tqq:"Afro-Asiatic",tri:"Cariban",trj:"Afro-Asiatic",tsb:"Afro-Asiatic",tsc:"Niger-Congo",tsj:"Sino-Tibetan",tsk:"Sino-Tibetan",tsl:"Kra-Dai",tsm:"Sign Language",ttg:"Austronesian",tth:"Austro-Asiatic",ttl:"Niger-Congo",tts:"Kra-Dai",tue:"Tucanoan",tum:"Niger-Congo",tuo:"Tucanoan",tur:"Turkic",twm:"Sino-Tibetan",txi:"Cariban",txm:"Austronesian",tyh:"Austro-Asiatic",tyj:"Kra-Dai",tyr:"Kra-Dai",tyv:"Turkic",tyy:"Niger-Congo",tzm:"Afro-Asiatic",uan:"Kra-Dai",udj:"Austronesian",une:"Niger-Congo",unk:"Maipurean",urd:"Indo-European",urp:"Tupian",urz:"Tupian",ush:"Indo-European",usi:"Sino-Tibetan",uuu:"Austro-Asiatic",uzn:"Turkic",vai:"Niger-Congo",vgr:"Indo-European",vie:"Austro-Asiatic",vkj:"Unclassified",vkn:"Niger-Congo",vkz:"Niger-Congo",vmk:"Niger-Congo",vut:"Niger-Congo",wau:"Maipurean",waw:"Cariban",wbj:"Afro-Asiatic",wbl:"Indo-European",wbr:"Indo-European",wlc:"Niger-Congo",wll:"Nilo-Saharan",wmd:"Nambikwara",wmg:"Sino-Tibetan",wne:"Indo-European",wni:"Niger-Congo",wol:"Niger-Congo",wrn:"Niger-Congo",wti:"Nilo-Saharan",wuh:"Mixed language",wwa:"Niger-Congo",xal:"Mongolic",xan:"Afro-Asiatic",xdq:"Nakh-Daghestanian",xhv:"Austro-Asiatic",xka:"Indo-European",xkz:"Sino-Tibetan",xma:"Niger-Congo",xmj:"Afro-Asiatic",xmo:"Tupian",xms:"Sign Language",xnr:"Indo-European",xns:"Sino-Tibetan",xom:"Nilo-Saharan",xor:"Panoan",xsm:"Niger-Congo",xsr:"Sino-Tibetan",xwg:"Nilo-Saharan",yaa:"Panoan",yad:"Yaguan",yao:"Niger-Congo",yax:"Niger-Congo",ybh:"Sino-Tibetan",ycl:"Sino-Tibetan",ydd:"Indo-European",ydg:"Indo-European",yea:"Dravidian",yhd:"Afro-Asiatic",yig:"Sino-Tibetan",yix:"Sino-Tibetan",ymm:"Afro-Asiatic",ymx:"Sino-Tibetan",yne:"Sino-Tibetan",yno:"Kra-Dai",yom:"Niger-Congo",yox:"Japonic",yoy:"Kra-Dai",yrn:"Kra-Dai",ysl:"Sign Language",ysm:"Sign language",ysn:"Sino-Tibetan",yue:"Sino-Tibetan",yul:"Nilo-Saharan",yup:"Cariban",ywn:"Panoan",ywt:"Sino-Tibetan",zag:"Nilo-Saharan",zgn:"Kra-Dai",zhd:"Kra-Dai",ziw:"Niger-Congo",zkr:"Sino-Tibetan",zlm:"Austronesian",zna:"Niger-Congo",zne:"Niger-Congo",zng:"Austro-Asiatic",zqe:"Kra-Dai",zum:"Indo-European",zyg:"Kra-Dai"},bs="languageFamily",eb="#000000",Jt={"Indo-European":"#e74c3c",Dravidian:"#ff9800","Afro-Asiatic":"#27ae60","Sino-Tibetan":"#3498db","Niger-Congo":"#9b59b6",Unclassified:"#95a5a6","Nilo-Saharan":"#e91e63","Khoe-Kwadi":"#00bcd4","Austro-Asiatic":"#00bcd4","Kra-Dai":"#8e44ad",Austronesian:"#ff69b4","Hmong-Mien":"#f44336",Turkic:"#ffc107","Nakh-Daghestanian":"#009688",Mongolic:"#795548",Uralic:"#607d8b",Tungusic:"#4caf50",Japonic:"#ff5722",Cariban:"#673ab7",Tupian:"#03a9f4",Tucanoan:"#8bc34a",Maipurean:"#ffc107",Panoan:"#cddc39",Guajiboan:"#9e9e9e",Chibchan:"#ff7043",Quechuan:"#ab47bc",Jean:"#26a69a",Harákmbut:"#7e57c2",Nambikwara:"#42a5f5",Muran:"#66bb6a",Karajá:"#ffa726",Bororoan:"#ef5350",Arauan:"#5c6bc0",Yanomaman:"#26c6da",Yaguan:"#d4e157",Witotoan:"#78909c",Zamucoan:"#8d6e63",Puinavean:"#aed581",Barbacoan:"#4db6ac","Eyak-Athabaskan":"#7986cb","Trans-New Guinea":"#ba68c8",Andamanese:"#4dd0e1","Atlantic-Congo":"#7D3C98",Mande:"#B9770E","Sign Language":"#212121",Creole:"#9575cd","Mixed language":"#a1887f","Language isolate":"#90a4ae",Unknown:"#000000"},tb=Jt;function _s(e){return Jt[e]||eb}const nb=(()=>{const e=n=>String(n||"").toLowerCase().trim(),t={};for(const n of Object.keys(Jt))t[e(n)]=n;return t})(),ob={"tai-kadai":"Kra-Dai",none:"Unknown"};function ys(e){if(!e)return"Unknown";const t=String(e).trim(),n=t.toLowerCase();return ob[n]||nb[n]||t}function lc(e){var t;return _s(e.languageFamily||((t=e._normalized)==null?void 0:t.languageFamily))}function As(){const e=["match",["get",bs]];return Object.entries(Jt).forEach(([t,n])=>{e.push(t,n)}),e.push("#95a5a6"),e}const cc=As,ab=Object.freeze(Object.defineProperty({__proto__:null,LANGUAGE_FAMILY_COLORS:tb,PALETTE:Jt,PROPERTY_KEY:bs,applyColor:As,buildColorExpression:cc,canonicalFamilyName:ys,default:{name:"Language Family",propertyKey:bs,palette:Jt,colors:Jt,getColor:lc,applyColor:As,buildColorExpression:cc,getLanguageFamilyColor:_s,canonicalFamilyName:ys},defaultFamilyColor:"#95a5a6",getColor:lc,getLanguageFamilyColor:_s,languageFamilyColors:Jt},Symbol.toStringTag,{value:"Module"})),uc="adoptionStatus",Ot={notAdopted:"#f03b2d",hasAdoption:"#22c55e"},sb=Ot,Ss={notAdopted:"Needs Adoption",hasAdopted:"Has Adoption"},ib=Ss;function gc(e){var o;const t=e.adoptionStatus??((o=e._raw)==null?void 0:o.adopted_by_churches);return t===!0||t===1||typeof t=="number"&&t>0||typeof t=="object"&&(t==null?void 0:t.value)?Ot.hasAdoption:Ot.notAdopted}function vs({colorSource:e="properties"}={}){const t=e==="feature-state"?["feature-state","adoptionStatus"]:["get","adoptionStatus"];return["case",["==",t,!0],Ot.hasAdoption,["==",t,1],Ot.hasAdoption,Ot.notAdopted]}const dc=vs,rb=Object.freeze(Object.defineProperty({__proto__:null,ADOPTION_COLORS:sb,ADOPTION_LABELS:ib,LABELS:Ss,PALETTE:Ot,PROPERTY_KEY:uc,applyColor:vs,buildColorExpression:dc,default:{name:"Adoption Progress",propertyKey:uc,palette:Ot,colors:Ot,labels:Ss,getColor:gc,applyColor:vs,buildColorExpression:dc},getColor:gc},Symbol.toStringTag,{value:"Module"})),fc="engagementStatus",xt={notEngaged:"#f03b2d",hasEngagement:"#22c55e"},lb=xt,ks={notEngaged:"Unengaged",hasEngagement:"Engaged"},cb=ks;function pc(e){var o;const t=e.engagementStatus??((o=e._raw)==null?void 0:o.people_committed);return t===!0||t===1||typeof t=="number"&&t>0||typeof t=="object"&&(t==null?void 0:t.value)?xt.hasEngagement:xt.notEngaged}function Ts({colorSource:e="properties"}={}){const t=e==="feature-state"?["feature-state","engagementStatus"]:["get","engagementStatus"];return["case",["==",t,!0],xt.hasEngagement,["==",t,1],xt.hasEngagement,xt.notEngaged]}const hc=Ts,ub=Object.freeze(Object.defineProperty({__proto__:null,ENGAGEMENT_COLORS:lb,ENGAGEMENT_LABELS:cb,LABELS:ks,PALETTE:xt,PROPERTY_KEY:fc,applyColor:Ts,buildColorExpression:hc,default:{name:"Engagement Progress",propertyKey:fc,palette:xt,colors:xt,labels:ks,getColor:pc,applyColor:Ts,buildColorExpression:hc},getColor:pc},Symbol.toStringTag,{value:"Module"})),mc="peoplePraying",na=144,Xt={noPrayer:"#f03b2d",hasPrayer:"#f0c64a",fullPrayer:"#22c55e"},gb=Xt,Es={noPrayer:"Needs Prayer",hasPrayer:"Has Prayer",fullPrayer:"Has Full Prayer Coverage"},db=Es;function oa(e){var o;const t=(e==null?void 0:e.peoplePraying)??((o=e==null?void 0:e._raw)==null?void 0:o.people_praying)??null,n=Number(t)||0;return n>=na?"fullPrayer":n>0?"hasPrayer":"noPrayer"}function $s(e){return Xt[oa(e)]}function bc(e){var n;const t=(e==null?void 0:e.peoplePraying)??((n=e==null?void 0:e._raw)==null?void 0:n.people_praying)??null;return t!==null&&t>0}function _c(e){return oa(e)==="fullPrayer"}function yc(e){return $s(e)}function Ls({colorSource:e="properties"}={}){const t=e==="feature-state"?["feature-state","peoplePraying"]:["get","peoplePraying"];return["case",[">=",t,na],Xt.fullPrayer,[">",t,0],Xt.hasPrayer,Xt.noPrayer]}const Ac=Ls,fb=Object.freeze(Object.defineProperty({__proto__:null,FULL_PRAYER_THRESHOLD:na,LABELS:Es,PALETTE:Xt,PRAYER_COLORS:gb,PRAYER_LABELS:db,PROPERTY_KEY:mc,applyColor:Ls,buildColorExpression:Ac,checkHasFullPrayer:_c,checkHasPrayer:bc,default:{name:"Prayer Progress",propertyKey:mc,palette:Xt,colors:Xt,labels:Es,threshold:na,getColor:yc,applyColor:Ls,buildColorExpression:Ac,getPrayerLevel:oa,getPrayerColor:$s,checkHasPrayer:bc,checkHasFullPrayer:_c},getColor:yc,getPrayerColor:$s,getPrayerLevel:oa},Symbol.toStringTag,{value:"Module"})),Sc="religion",Cs="#94a3b8",ws={C:"Christianity",M:"Islam",H:"Hinduism",B:"Buddhism",E:"Ethnoreligion",J:"Judaism",S:"Sikhism",N:"Unaffiliated",O:"Other",U:"Unknown"},tt={C:"#3b82f6",M:"#ef4444",H:"#f59e0b",B:"#facc15",E:"#84cc16",J:"#a855f7",S:"#ec4899",N:"#71717a",O:"#ff6b2b",U:"#94a3b8"};function vc(e){if(!e||typeof e!="string")return"U";const t=e.charAt(0).toUpperCase();return ws[t]?t:"U"}function kc(e){var n,o,a;const t=(e==null?void 0:e.religion)||((o=(n=e==null?void 0:e._raw)==null?void 0:n.religion)==null?void 0:o.value)||((a=e==null?void 0:e._raw)==null?void 0:a.religion);return tt[vc(t)]||Cs}function Ns(){return["match",["slice",["coalesce",["get","religion"],""],0,1],"C",tt.C,"M",tt.M,"H",tt.H,"B",tt.B,"E",tt.E,"J",tt.J,"S",tt.S,"N",tt.N,"O",tt.O,Cs]}const Tc=Ns,pb=Object.freeze(Object.defineProperty({__proto__:null,PALETTE:tt,PROPERTY_KEY:Sc,RELIGION_FAMILIES:ws,applyColor:Ns,buildColorExpression:Tc,default:{name:"Religion",propertyKey:Sc,palette:tt,families:ws,getColor:kc,applyColor:Ns,buildColorExpression:Tc,fallback:Cs},getColor:kc,getReligionFamily:vc},Symbol.toStringTag,{value:"Module"})),Ec="region",Ps="#6d766e",$c={africa:"Africa",asia:"Asia",europe:"Europe","latin_america_&_caribbean":"Latin America & Caribbean",middle_east:"Middle East","north_america_&_non-spanish_caribbean":"North America & Non-Spanish Caribbean",oceania:"Oceania"},ao={africa:"#2563eb",asia:"#d97706",europe:"#7c3aed","latin_america_&_caribbean":"#15803d",middle_east:"#dc2626","north_america_&_non-spanish_caribbean":"#0891b2",oceania:"#be185d"},Ms=Object.keys(ao);function Lc(e){var n,o,a;const t=(e==null?void 0:e.region)||((o=(n=e==null?void 0:e._raw)==null?void 0:n.wagf_region)==null?void 0:o.value)||((a=e==null?void 0:e._raw)==null?void 0:a.wagf_region);return ao[t]||Ps}function Is(){const e=["match",["coalesce",["get","region"],""]];for(const t of Ms)e.push(t,ao[t]);return e.push(Ps),e}const Cc=Is,hb=Object.assign({"./adoption.js":rb,"./engagement.js":ub,"./language-family.js":ab,"./prayer-progress.js":fb,"./religion.js":pb,"./wagf-region.js":Object.freeze(Object.defineProperty({__proto__:null,PALETTE:ao,PROPERTY_KEY:Ec,REGION_ORDER:Ms,WAGF_REGIONS:$c,applyColor:Is,buildColorExpression:Cc,default:{name:"WAGF Region",propertyKey:Ec,palette:ao,regions:$c,order:Ms,getColor:Lc,applyColor:Is,buildColorExpression:Cc,fallback:Ps},getColor:Lc},Symbol.toStringTag,{value:"Module"}))}),mb=e=>e.replace(/-([a-z0-9])/g,(t,n)=>n.toUpperCase()),bb=e=>e.replace(/-/g,"_").toUpperCase(),_b={...{STATUS:"status",CUSTOM:"custom"}};function yb(e){for(const t of Object.keys(e).sort()){const n=t.split("/").pop().replace(/\.js$/,"");if(n.startsWith("_")||n.startsWith(".")||!e[t].default)continue;const a=mb(n);_b[bb(n)]=a}}yb(hb);function Rs(e){return e==null?"":typeof e=="object"?e.label||e.value||"":String(e)}const Ab=[[/ sign language$/i,"Sign Language"]];function Sb(e){var r,l;const t=Rs(e.languageFamily);if(t)return t;const n=String(((l=(r=e._raw)==null?void 0:r.primary_language)==null?void 0:l.value)||(e.language&&typeof e.language=="object"?e.language.value:"")||"").trim().toLowerCase();if(n&&rc[n])return rc[n];const o=Rs(e.language||e.primary_language);if(!o||typeof o!="string")return"";const a=o.trim(),s=a.split(",").map(c=>c.trim()).filter(Boolean);if(s.length>=2){const c=[...s].reverse().join(" ");if(Yt[c])return Yt[c];if(s.length>=3){const u=[s[1],s[0]].join(" ");if(Yt[u])return Yt[u]}}if(Yt[a])return Yt[a];const i=a.replace(/\s*\(.*?\)\s*$/,"").trim();if(i!==a&&Yt[i])return Yt[i];for(const[c,u]of Ab)if(c.test(a))return u;return""}function vb(e){const{mapId:t="unknown",dataSourceId:n="doxa-csv",dataSourceManager:o=null,dataStore:a=null,markRaw:s=w=>w}=e;o||console.error("useMapData: dataSourceManager is required!");const i=he(!1),r=he(null),l=he(!1),c=he([]),u=he([]),f=he(null),m=he([]),k=he([]),N=he([]),v=he(null);async function $(){if(!o)throw new Error("dataSourceManager is required for useMapData");i.value=!0,r.value=null;try{if(await o.init(),a&&a.hasSourceData&&a.hasSourceData(n)){const F=a.getSourceData(n);u.value=s(F.normalizedData||[])}else{const F=await o.setActiveSource(n);for(const j of F){const q=Rs(j.language||j.primary_language);q&&(j.language=q);const W=Sb(j);j.languageFamily=ys(W)}u.value=s(F),a&&a.cacheSourceData&&a.cacheSourceData(n,{normalizedData:F,timestamp:Date.now()})}c.value=s(Qm(u.value.map(F=>({id:F.uniqueId,slug:F.slug||"",rop3:F.peopleGroupId,peopleId3:F.peopleId3,name:F.name,language:F.language,languageFamily:F.languageFamily,country:F.country,population:F.population,status:F.engagementStatus||F.status,latitude:F.latitude,longitude:F.longitude,lng:F.longitude,lat:F.latitude,description:F.description,imageUrl:F.imageUrl,doxaRegion:F.doxaRegion||F.wagfRegion||"",peoplePraying:F.peoplePraying??null,_normalized:F}))));const w=o.getDataByLanguageFamily();m.value=Object.entries(w).map(([F,j])=>{const q=j.reduce((W,X)=>{const ge=parseInt(X.population)||0;return W+ge},0);return{name:F,count:j.length,peopleGroupCount:j.length,population:q,groups:j}}).sort((F,j)=>j.count-F.count);const D=o.getDataByRegion();k.value=Object.entries(D).map(([F,j])=>{const q=j.reduce((W,X)=>{const ge=parseInt(X.population)||0;return W+ge},0);return{name:F,count:j.length,peopleGroupCount:j.length,population:q,groups:j}}).sort((F,j)=>F.name.localeCompare(j.name));const S={bible:{count:0,population:0,groups:[]},jesusFilm:{count:0,population:0,groups:[]},radio:{count:0,population:0,groups:[]},gospel:{count:0,population:0,groups:[]},audio:{count:0,population:0,groups:[]},stories:{count:0,population:0,groups:[]},hasResources:{count:0,population:0,groups:[]},noResources:{count:0,population:0,groups:[]}};u.value.forEach(F=>{const j=parseInt(F.population)||0;let q=!1;F.bible==="Available"&&(S.bible.count++,S.bible.population+=j,S.bible.groups.push(F),q=!0),F.jesusFilm==="Available"&&(S.jesusFilm.count++,S.jesusFilm.population+=j,S.jesusFilm.groups.push(F),q=!0),F.radio==="Available"&&(S.radio.count++,S.radio.population+=j,S.radio.groups.push(F),q=!0),F.gospel==="Available"&&(S.gospel.count++,S.gospel.population+=j,S.gospel.groups.push(F),q=!0),F.audio==="Available"&&(S.audio.count++,S.audio.population+=j,S.audio.groups.push(F),q=!0),F.stories==="Available"&&(S.stories.count++,S.stories.population+=j,S.stories.groups.push(F),q=!0),q?(S.hasResources.count++,S.hasResources.population+=j,S.hasResources.groups.push(F)):(S.noResources.count++,S.noResources.population+=j,S.noResources.groups.push(F))});const V=u.value.length,ae=u.value.reduce((F,j)=>F+(parseInt(j.population)||0),0),z={bible:"Bible",jesusFilm:"Jesus Film",radio:"Radio",gospel:"Gospel",audio:"Audio",stories:"Stories",hasResources:"Has Resources",noResources:"No Resources"},ee={bible:{count:V-S.bible.count,population:ae-S.bible.population},jesusFilm:{count:V-S.jesusFilm.count,population:ae-S.jesusFilm.population},radio:{count:V-S.radio.count,population:ae-S.radio.population},gospel:{count:V-S.gospel.count,population:ae-S.gospel.population},audio:{count:V-S.audio.count,population:ae-S.audio.population},stories:{count:V-S.stories.count,population:ae-S.stories.population}},Y="#2c3e50";return N.value=[{name:z.bible,key:"bible",count:S.bible.count,population:S.bible.population,isParent:!0,children:[{name:"No Bible",key:"noBible",count:ee.bible.count,population:ee.bible.population,color:Y}]},{name:z.jesusFilm,key:"jesusFilm",count:S.jesusFilm.count,population:S.jesusFilm.population,isParent:!0,children:[{name:"No Jesus Film",key:"noJesusFilm",count:ee.jesusFilm.count,population:ee.jesusFilm.population,color:Y}]},{name:z.radio,key:"radio",count:S.radio.count,population:S.radio.population,isParent:!0,children:[{name:"No Radio",key:"noRadio",count:ee.radio.count,population:ee.radio.population,color:Y}]},{name:z.gospel,key:"gospel",count:S.gospel.count,population:S.gospel.population,isParent:!0,children:[{name:"No Gospel",key:"noGospel",count:ee.gospel.count,population:ee.gospel.population,color:Y}]},{name:z.audio,key:"audio",count:S.audio.count,population:S.audio.population,isParent:!0,children:[{name:"No Audio",key:"noAudio",count:ee.audio.count,population:ee.audio.population,color:Y}]},{name:z.stories,key:"stories",count:S.stories.count,population:S.stories.population,isParent:!0,children:[{name:"No Stories",key:"noStories",count:ee.stories.count,population:ee.stories.population,color:Y}]},{name:z.hasResources,key:"hasResources",count:S.hasResources.count,population:S.hasResources.population,isParent:!0,children:[{name:z.noResources,key:"noResources",count:S.noResources.count,population:S.noResources.population,color:Y}]}],v.value=o.getStats(),l.value=!0,{peopleGroups:c.value,normalizedPeopleGroups:u.value,languageFamiliesData:m.value,doxaRegionsData:k.value,resourcesData:N.value,stats:v.value}}catch(w){throw console.error(`Failed to load data for map "${t}":`,w),r.value=w.message||"Failed to load data",w}finally{i.value=!1}}async function P(){var w,D,S;try{const V={},ae=u.value||[];for(const z of ae){const ee=z.countryIso||((D=(w=z._raw)==null?void 0:w.country_code)==null?void 0:D.value)||"",Y=(S=z._raw)==null?void 0:S.wagf_region,F=z.doxaRegion||z.wagfRegion||(Y&&typeof Y=="object"?Y.value:"")||"";ee&&F&&!V[ee]&&(V[ee]=F)}return f.value={isoToRegion:V},f.value}catch(V){throw console.error(`Error building regions data for map "${t}":`,V),r.value=V.message||"Failed to build regions",V}}function T(){return o?o.getDataByLanguageFamily():{}}function _(){return o?o.getDataByRegion():{}}function b(w){return T()[w]||[]}function L(w){return _()[w]||[]}function A(){c.value=[],u.value=[],f.value=null,m.value=[],k.value=[],N.value=[],v.value=null,l.value=!1,r.value=null}return{isLoading:i,isInitialized:l,error:r,peopleGroups:c,normalizedPeopleGroups:u,regionsData:f,languageFamiliesData:m,doxaRegionsData:k,resourcesData:N,stats:v,loadData:$,loadRegionsData:P,getDataByLanguageFamily:T,getDataByRegion:_,getPeopleGroupsByFamily:b,getPeopleGroupsByRegion:L,clearData:A}}const Ds={};function kb(){return typeof window<"u"&&window.MAP_APP_API_URL||typeof{url:aa&&aa.tagName.toUpperCase()==="SCRIPT"&&aa.src||new URL("all-people-groups.js",document.baseURI).href}<"u"&&(Ds==null?void 0:Ds.VITE_API_BASE_URL)||""}class wc{constructor(t={}){this.sourcesConfig=null,this.activeSource=null,this.rawData=[],this.normalizedData=[],this.dataByUniqueId=new Map,this.baseUrl=typeof window<"u"&&window.MAP_APP_BASE_URL||"./",this.locale=t.locale||null,this.cache=new Map,this.cacheEnabled=!0,this.cacheTTL=5*60*1e3}async init(){return this.sourcesConfig=Ql,this.sourcesConfig}getActiveSourceId(){var t;return((t=this.sourcesConfig)==null?void 0:t.activeSource)||"doxa-csv"}getSourceConfig(t){var n,o;return(o=(n=this.sourcesConfig)==null?void 0:n.sources)==null?void 0:o[t]}async setActiveSource(t){const n=this.getSourceConfig(t);if(!n)throw new Error(`Source not found: ${t}`);if(this.activeSource=n,this.cacheEnabled&&this.cache.has(t)){const o=this.cache.get(t);return this.normalizedData=o.normalizedData,this.dataByUniqueId=o.dataByUniqueId,this.normalizedData}return n.type==="csv"?await this.loadCSVData(n):n.type==="api"?await this.loadAPIData(n):n.type==="rest-api"&&await this.loadRestApiData(n),this.cacheEnabled&&this.cache.set(t,{normalizedData:this.normalizedData,dataByUniqueId:this.dataByUniqueId,timestamp:Date.now()}),this.normalizedData}clearCache(t=null){t?this.cache.delete(t):this.cache.clear()}isCached(t){return this.cache.has(t)}async loadActiveSource(){return this.sourcesConfig||await this.init(),this.setActiveSource(this.getActiveSourceId())}parseCSV(t){const n=[],o=[];let a="",s=!1,i=[],r=!0;for(let l=0;ls.value?(We(),Lt("div",{key:0,ref_key:"hintEl",ref:r,class:wn(["pin-hint",{dark:o.value}]),role:"status"},[Ne("span",Em,[P[0]||(P[0]=Ne("span",{class:"pin-hint-dot","aria-hidden":"true"},null,-1)),wt(" "+Qt(a.value)+" ",1),Ne("button",{class:"pin-hint-x",type:"button","aria-label":"Dismiss hint",onClick:m},"×")])],2)):bn("",!0)}};let Cm=0;const Nm=Ha("ui",{state:()=>({_storeInstanceId:++Cm,theme:"light",colorScheme:"default",reducedMotion:!1,highContrast:!1,activeTab:"doxa-regions",sidebarCollapsed:!1,mobileMenuOpen:!1,legendState:"collapsed",_customLegendHeight:null,searchMode:!1,hamburgerMenuOpen:!1,legendMode:"prayer",prayerFilter:null,engagementFilter:null,adoptionFilter:null,religionFilter:null,selectedPeopleGroup:null,breakpoint:"desktop",windowSize:{width:window.innerWidth,height:window.innerHeight},toasts:[],nextToastId:1,toastDuration:5e3,openModals:[],modalData:new Map,isGlobalLoading:!1,globalLoadingMessage:"Loading...",loadingStates:new Map,interactionHistory:[],maxHistoryLength:20,keyboardShortcutsEnabled:!0,screenReaderAnnouncement:"",focusTrapActive:!1,debugMode:!1,showPerformanceOverlay:!1}),getters:{isDarkTheme:e=>!1,isMobile:e=>e.breakpoint==="mobile",isTablet:e=>e.breakpoint==="tablet",isDesktop:e=>e.breakpoint==="desktop"||e.breakpoint==="wide",legendHeight:e=>e._customLegendHeight?e._customLegendHeight:e.legendState==="collapsed"?"48px":e.legendState==="open"?"30%":e.legendState==="fullyOpen"?"calc(100% - 80px)":"48px",caretRotation:e=>e.legendState==="collapsed"?0:90,showPullTab:e=>e.legendState==="open"||e.legendState==="fullyOpen",getToastsByType:e=>t=>e.toasts.filter(n=>n.type===t),hasOpenModal:e=>e.openModals.length>0,topModal:e=>e.openModals.length===0?null:e.openModals[e.openModals.length-1],isModalOpen:e=>t=>e.openModals.includes(t),isAnyLoading:e=>e.isGlobalLoading||e.loadingStates.size>0,isLoading:e=>t=>e.loadingStates.get(t)||!1},actions:{setTheme(e){if(!["light","dark","auto"].includes(e))return;e="light",this.theme=e;const n=this.isDarkTheme;document.documentElement.setAttribute("data-theme",n?"dark":"light");try{localStorage.setItem("theme",e)}catch{}},toggleTheme(){const e=this.theme==="light"?"dark":"light";this.setTheme(e)},setColorScheme(e){this.colorScheme=e,document.documentElement.setAttribute("data-color-scheme",e)},toggleReducedMotion(){this.reducedMotion=!this.reducedMotion,document.documentElement.setAttribute("data-reduced-motion",this.reducedMotion)},toggleHighContrast(){this.highContrast=!this.highContrast,document.documentElement.setAttribute("data-high-contrast",this.highContrast)},setActiveTab(e){this.activeTab=e,this.addToHistory({type:"tab-change",tabId:e,timestamp:Date.now()})},toggleSidebar(){this.sidebarCollapsed=!this.sidebarCollapsed},openMobileMenu(){this.mobileMenuOpen=!0},closeMobileMenu(){this.mobileMenuOpen=!1},setLegendMode(e){["prayer","detail"].includes(e)&&(this.legendMode=e)},setPrayerFilter(e){[null,"noPrayer","hasPrayer","fullPrayer"].includes(e)&&(this.prayerFilter=e)},setEngagementFilter(e){[null,"notEngaged","hasEngagement"].includes(e)&&(this.engagementFilter=e)},setAdoptionFilter(e){[null,"notAdopted","hasAdoption"].includes(e)&&(this.adoptionFilter=e)},setReligionFilter(e){[null,"C","M","H","B","E","J","S","N","O","U"].includes(e)&&(this.religionFilter=e)},selectPeopleGroup(e){this.selectedPeopleGroup=e,e?(this._legendStateBeforeDetail=this.legendState,this.legendState="open",this._customLegendHeight=null,this.setLegendMode("detail")):(this.legendState=this._legendStateBeforeDetail||"open",this._customLegendHeight=null,this.setLegendMode("prayer"))},setLegendState(e){["collapsed","open","fullyOpen"].includes(e)&&(this.legendState=e)},toggleSearchMode(){this.searchMode=!this.searchMode},setSearchMode(e){this.searchMode=e},toggleHamburgerMenu(){this.hamburgerMenuOpen=!this.hamburgerMenuOpen},updateBreakpoint(e){let t;e<768?t="mobile":e<1024?t="tablet":e<1920?t="desktop":t="wide",t!==this.breakpoint&&(this.breakpoint=t)},updateWindowSize(e,t){this.windowSize.width=e,this.windowSize.height=t,this.updateBreakpoint(e)},showToast(e){const{message:t,type:n="info",duration:o=this.toastDuration,action:a=null,persistent:s=!1}=e,r={id:this.nextToastId++,message:t,type:n,duration:o,action:a,persistent:s,createdAt:Date.now()};return this.toasts.push(r),!s&&o>0&&setTimeout(()=>{this.removeToast(r.id)},o),r.id},showSuccess(e,t={}){return this.showToast({message:e,type:"success",...t})},showError(e,t={}){return this.showToast({message:e,type:"error",duration:7e3,...t})},showWarning(e,t={}){return this.showToast({message:e,type:"warning",...t})},showInfo(e,t={}){return this.showToast({message:e,type:"info",...t})},removeToast(e){const t=this.toasts.findIndex(n=>n.id===e);t!==-1&&this.toasts.splice(t,1)},clearAllToasts(){this.toasts=[]},openModal(e,t={}){this.openModals.includes(e)||(this.openModals.push(e),this.modalData.set(e,t),this.focusTrapActive=!0)},closeModal(e=null){if(e){const t=this.openModals.indexOf(e);t!==-1&&(this.openModals.splice(t,1),this.modalData.delete(e))}else{const t=this.openModals.pop();t&&this.modalData.delete(t)}this.openModals.length===0&&(this.focusTrapActive=!1)},closeAllModals(){this.openModals=[],this.modalData.clear(),this.focusTrapActive=!1},getModalData(e){return this.modalData.get(e)},showGlobalLoading(e="Loading..."){this.isGlobalLoading=!0,this.globalLoadingMessage=e},hideGlobalLoading(){this.isGlobalLoading=!1},setLoading(e,t=!0){t?this.loadingStates.set(e,!0):this.loadingStates.delete(e)},addToHistory(e){this.interactionHistory.push(e),this.interactionHistory.length>this.maxHistoryLength&&this.interactionHistory.shift()},clearHistory(){this.interactionHistory=[]},announce(e,t="polite"){this.screenReaderAnnouncement=e,setTimeout(()=>{this.screenReaderAnnouncement===e&&(this.screenReaderAnnouncement="")},1e3)},toggleKeyboardShortcuts(){this.keyboardShortcutsEnabled=!this.keyboardShortcutsEnabled},toggleDebugMode(){this.debugMode=!this.debugMode},togglePerformanceOverlay(){this.showPerformanceOverlay=!this.showPerformanceOverlay},toggleLegend(){this.legendState==="fullyOpen"?this.legendState="open":this.legendState==="open"?this.legendState="collapsed":this.legendState="open",this._customLegendHeight=null},openLegend(){this.legendState="open",this._customLegendHeight=null},fullyOpenLegend(){this.legendState="fullyOpen",this._customLegendHeight=null},collapseLegend(){this.legendState="collapsed",this._customLegendHeight=null},setLegendHeight(e){this._customLegendHeight=e},handleLegendItemClick(){this.legendState==="fullyOpen"&&(this.legendState="open")},enableSearchMode(){this.searchMode=!0},disableSearchMode(){this.searchMode=!1},toggleHamburgerMenu(){this.hamburgerMenuOpen=!this.hamburgerMenuOpen},openHamburgerMenu(){this.hamburgerMenuOpen=!0},closeHamburgerMenu(){this.hamburgerMenuOpen=!1},init(){let e=null;try{e=localStorage.getItem("theme")}catch{}e&&this.setTheme(e),new ResizeObserver(n=>{for(const o of n)this.updateWindowSize(o.contentRect.width,o.contentRect.height)}).observe(document.documentElement),window.matchMedia&&(window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",n=>{this.theme==="auto"&&document.documentElement.setAttribute("data-theme",n.matches?"dark":"light")}),window.matchMedia("(prefers-reduced-motion: reduce)").addEventListener("change",n=>{this.reducedMotion=n.matches,document.documentElement.setAttribute("data-reduced-motion",n.matches)}))}}}),Lm=Ha("map",{state:()=>({maps:{},activeMapId:null,selectedRegion:null,selectedFamily:null,selectedAffinityBlock:null,selectedLanguage:null,selectedDialect:null,activeLegendTab:"family",selectedResource:null,selectedPeopleGroup:null,selectedPinIds:[],globalFilters:{},searchQuery:"",autoFly:{isActive:!1,speed:1,interval:5e3,currentIndex:0,items:[],timerId:null},guidedTour:{isActive:!1,currentStep:0,steps:[]},showClusters:!1,clusterMode:"region",clusterFilterProperty:null,clusterFilterValue:null,flySpeed:"normal",fullscreenMapId:null,preferences:{theme:"light",defaultMapStyle:"streets",enableAnimations:!0,autoSavePreferences:!0}}),getters:{getMapById:e=>t=>e.maps[t],activeMap:e=>e.activeMapId?e.maps[e.activeMapId]:null,hasMap:e=>t=>t in e.maps,allMapIds:e=>Object.keys(e.maps),hasSelection:e=>!!(e.selectedRegion||e.selectedFamily||e.selectedAffinityBlock||e.selectedPeopleGroup),isAutoFlying:e=>e.autoFly.isActive,isGuidedTourActive:e=>e.guidedTour.isActive,isMapFullscreen:e=>t=>e.fullscreenMapId===t},actions:{registerMap(e,t,n={}){let o=1.5;n.zoom!==void 0?o=n.zoom:t&&typeof t.getZoom=="function"&&(o=t.getZoom());let a=[0,0];if(n.center)a=n.center;else if(t&&typeof t.getCenter=="function"){const s=t.getCenter();s&&(a=[s.lng,s.lat])}this.maps[e]={instance:t,config:n,isReady:!1,zoom:o,center:a,registeredAt:Date.now()},this.activeMapId||(this.activeMapId=e)},setMapReady(e){const t=this.maps[e];t&&(t.isReady=!0)},updateMapState(e,t){const n=this.maps[e];n&&Object.assign(n,t)},unregisterMap(e){if(delete this.maps[e],this.activeMapId===e){const t=this.allMapIds;this.activeMapId=t.length>0?t[0]:null}},setActiveMap(e){e in this.maps&&(this.activeMapId=e)},selectRegion(e){this.selectedFamily=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedRegion=e},selectFamily(e){this.selectedRegion=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedLanguage=null,this.selectedDialect=null,this.selectedFamily=e},setActiveLegendTab(e){this.activeLegendTab=e},selectLanguage(e){this.selectedRegion=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedFamily=null,this.selectedDialect=null,this.selectedLanguage=e},selectDialect(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedLanguage=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedDialect=e},selectAffinityBlock(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedPeopleGroup=null,this.selectedAffinityBlock=e},selectPeopleGroup(e){this.selectedPeopleGroup=e},selectResource(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedResource===e?this.selectedResource=null:this.selectedResource=e},clearSelections(){this.selectedRegion=null,this.selectedFamily=null,this.selectedLanguage=null,this.selectedDialect=null,this.selectedAffinityBlock=null,this.selectedResource=null,this.selectedPeopleGroup=null,this.selectedPinIds=[],this.showClusters=!1,this.clusterMode="region"},setSelectedPinIds(e){this.selectedPinIds=e||[]},setFilter(e,t){this.globalFilters[e]=t},removeFilter(e){delete this.globalFilters[e]},clearFilters(){this.globalFilters={},this.searchQuery=""},setSearchQuery(e){this.searchQuery=e},startAutoFly(e,t=1){this.stopAutoFly(),this.autoFly.isActive=!0,this.autoFly.speed=t,this.autoFly.items=e,this.autoFly.currentIndex=0},stopAutoFly(){this.autoFly.timerId&&(clearInterval(this.autoFly.timerId),this.autoFly.timerId=null),this.autoFly.isActive=!1,this.autoFly.currentIndex=0},setAutoFlySpeed(e){this.autoFly.speed=Math.max(.5,Math.min(2,e))},nextAutoFlyItem(){if(!this.autoFly.isActive||this.autoFly.items.length===0)return;this.autoFly.currentIndex=(this.autoFly.currentIndex+1)%this.autoFly.items.length;const e=this.autoFly.items[this.autoFly.currentIndex];e.type==="region"?this.selectRegion(e):e.type==="family"&&this.selectFamily(e)},toggleClusters(e){typeof e=="boolean"?this.showClusters=e:this.showClusters=!this.showClusters},setClusterMode(e){["region","language-family","affinity-block","mst","resource"].includes(e)&&(this.clusterMode=e)},setClusterFilter(e,t){this.clusterFilterProperty=e||null,this.clusterFilterValue=t||null},clearClusterFilter(){this.clusterFilterProperty=null,this.clusterFilterValue=null},setFlySpeed(e){["slow","normal","fast"].includes(e)&&(this.flySpeed=e)},setSelectedFamily(e){this.selectFamily(e)},clearSelectedFamily(){this.selectFamily(null)},setSelectedRegion(e){this.selectRegion(e)},clearSelectedRegion(){this.selectRegion(null)},clearSelectedResource(){this.selectResource(null)},clearSelectedLanguage(){this.selectLanguage(null)},clearSelectedDialect(){this.selectDialect(null)},toggleFullscreen(e){this.fullscreenMapId===e?this.fullscreenMapId=null:this.fullscreenMapId=e},loadPreferences(){try{const e=localStorage.getItem("mapUserPreferences");if(e){const t=JSON.parse(e);this.preferences={...this.preferences,...t}}}catch(e){console.error("[mapStore] Failed to load preferences:",e)}},savePreferences(){try{localStorage.setItem("mapUserPreferences",JSON.stringify(this.preferences))}catch(e){console.error("[mapStore] Failed to save preferences:",e)}},setPreference(e,t){this.preferences[e]=t,this.preferences.autoSavePreferences&&this.savePreferences()}}}),wm=Ha("data",{state:()=>({sources:{},loadingStates:{}}),actions:{async load(e,t){if(!this.sources[e]){this.loadingStates[e]={isLoading:!0,error:null};try{const n=await t();this.sources[e]=On({features:n,timestamp:Date.now()}),this.loadingStates[e]={isLoading:!1,error:null}}catch(n){console.error(`[dataStore] Failed to load source "${e}":`,n),this.loadingStates[e]={isLoading:!1,error:n}}}},clearSource(e){delete this.sources[e],delete this.loadingStates[e]},cacheSourceData(e,t){this.sources[e]=On({features:t.normalizedData||[],timestamp:t.timestamp||Date.now()})},hasSourceData(e){return!!this.sources[e]},getSourceData(e){return this.sources[e]?{normalizedData:this.sources[e].features}:null}},getters:{getData:e=>t=>{var n;return((n=e.sources[t])==null?void 0:n.features)??null},isLoading:e=>t=>{var n;return((n=e.loadingStates[t])==null?void 0:n.isLoading)??!1},getError:e=>t=>{var n;return((n=e.loadingStates[t])==null?void 0:n.error)??null}}}),Ql={_meta:{_comment:"Single source of truth for data-source connections across all doxa-maps bundles.",_comment_token:"Mapbox access token is fetched at runtime from window.MAP_TOKEN_URL (same modular pattern as window.MAP_APP_API_URL). Not hardcoded to any host — set mapboxTokenUrl below or override window.MAP_TOKEN_URL on the host page.",mapboxTokenUrl:"window.MAP_TOKEN_URL"},activeSource:"pray-tools",sources:{"pray-tools":{id:"pray-tools",name:"Prayer.Tools API",type:"rest-api",description:"pray.doxa.life live API — people-group prayer, engagement, and adoption data. Base URL read from window.MAP_APP_API_URL or VITE_API_BASE_URL at runtime.",endpoints:{bulk:"/api/people-groups/list",detail:"/api/people-groups/detail/{slug}",statistics:"/api/people-groups/statistics"},queryParams:{lang:"en"},defaultFields:["slug","name","latitude","longitude","wagf_region","wagf_block","wagf_member","rop1","imb_reg_of_people_2","imb_reg_of_people_25","imb_reg_of_people_3","country_code","religion","population","has_photo","image_url","people_praying","people_committed","adopted_by_churches","engagement_status","imb_gsec","primary_language","imb_language_family","imb_language_class","imb_language_speakers"],pollFields:["slug","people_praying"],pollInterval:3e5,fallbackSourceId:null,fieldMappings:{uniqueId:"slug",slug:"slug",name:"name",latitude:"latitude",longitude:"longitude",wagfRegion:"wagf_region",doxaRegion:"wagf_region",wagfBlock:"wagf_block",wagfMember:"wagf_member",affinityBlock:"rop1",countryIso:"country_code",religion:"religion",religionCode:"religion",population:"population",hasPhoto:"has_photo",imageUrl:"image_url",photoUrl:"image_url",peoplePraying:"people_praying",peopleCommitted:"people_committed",engagementStatus:"engagement_status",adoptionStatus:"adopted_by_churches",language:"primary_language",cluster:"imb_reg_of_people_2",peopleGroup:"imb_reg_of_people_25",peopleGroupCountry:"imb_reg_of_people_3",languageFamily:"imb_language_family",languageClass:"imb_language_class",languageSpeakers:"imb_language_speakers"},imageConfig:{useField:"imageUrl",fallbackField:null,fallbackUrlTemplate:null,placeholderUrl:"https://www.peoplegroups.org/images/pgphotosearch/NoImageAvailable_search.jpg",useSvgPlaceholder:!0}},"doxa-csv":{id:"doxa-csv",name:"DOXA People Groups CSV",type:"csv",path:"assets/data/Joshua-project-ids-Doxa-1439.csv",description:"People groups dataset from DOXA / Joshua Project",fieldMappings:{uniqueId:"ROP3",peopleGroupId:"ROP3",countryCode:"ROG",peopleId3:"PeopleID3",name:"Name",displayName:"NmDisp",alternateName:"NmAlt",description:"PeopleDesc",locationDescription:"LocationDe",country:"Ctry",countryIso:"ISOalpha3",region:"Regn",subRegion:"RegnSub",wagfRegion:"WAGF Region",doxaRegion:"WAGF Region",wagfBlock:"WAGF BLOCK",affinityBloc:"Affbloc",affinityBlock:"ROP1",affinityCode:"AffCd",affinityName:"Aff",peopleCluster:"PplClstr",ethneName:"Ethne",latitude:"Latitude",longitude:"Longitude",population:"Pop",populationClass:"PopCls",status:"Status",engagementStatus:"EngStat",evangelicalLevel:"EvngLvl",gsec:"GSEC",gsecBrief:"GSECbrf",gsecLong:"GSEClng",spiScore:"SPI",spiDescription:"SPIdesc",language:"Lang",languageCode:"ROL",languageFamily:"LangFamily",religion:"Rlgn",religionCode:"ROR",religionDescription:"RORdesc",religionBase:"RlgnBs",religionDiv:"RlgnDiv",bible:"Bible",jesusFilm:"Jesus",radio:"Radio",gospel:"Gospel",audio:"Audio",stories:"Stories",resourcesTotal:"ResTot",bibleLevel:"LvlBible",yearPublished:"YrPub",photoCredit:"PicCrdt",photoUrl:"PicURL",hasPhoto:"Photo",isIndigenous:"Indigenous"},imageConfig:{useField:"photoUrl",fallbackField:"peopleId3",fallbackUrlTemplate:"https://joshuaproject.net/assets/media/profiles/photos/p{peopleId3}.jpg",placeholderUrl:"https://www.peoplegroups.org/images/pgphotosearch/NoImageAvailable_search.jpg"}}},systemFields:{uniqueId:{description:"Unique identifier per row (slug for API, ROP3+ROG for CSV)",required:!0},peopleGroupId:{description:"People group ID — same group can appear in multiple countries",required:!0},name:{description:"People group display name",required:!0},latitude:{description:"Latitude coordinate for map pin",required:!0},longitude:{description:"Longitude coordinate for map pin",required:!0},engagementStatus:{description:"Boolean — true if engaged_status = 'engaged'",required:!1},adoptionStatus:{description:"Boolean — true if adopted_by_churches > 0",required:!1},peoplePraying:{description:"Number of people currently praying for this group — from pray-tools API",required:!1},peopleCommitted:{description:"Raw count of committed workers for this group — source of engagementStatus",required:!1},languageFamily:{description:"Language family name",required:!1},religion:{description:"Primary religion",required:!1},population:{description:"Population count",required:!1},doxaRegion:{description:"WAGF/DOXA region name",required:!1},photoUrl:{description:"URL to people group photo",required:!1},description:{description:"People group description text",required:!1}}},Pm=".profile-loader[data-v-ba19fc13]{border-radius:var(--map-radius-corners, var(--map-radius, 0px));width:100%;height:100%;min-height:var(--profile-min-h, 100dvh);position:relative}.profile-error[data-v-ba19fc13]{padding:1rem;background:#fff3cd;border:1px solid #ffc107;border-radius:4px;font-family:monospace;font-size:13px}",Mm=(e,t)=>{const n=e.__vccOpts||e;for(const[o,a]of t)n[o]=a;return n},Im={class:"profile-loader"},Rm={key:0,class:"profile-error"},Fm={key:1,class:"profile-error"},Om=Mm({__name:"ProfileLoader",props:{profileConfig:{type:String,default:""}},setup(e){var C;const n=e,o=Fe("profileConfig",null),a=be(()=>{var L;if(!n.profileConfig)return null;let A;try{A=JSON.parse(n.profileConfig)}catch{return console.error("[ProfileLoader] Invalid profile-config JSON:",n.profileConfig),null}if(A&&A.assetsBase===void 0){const F=(L=o==null?void 0:o.value)==null?void 0:L.assetsBase;typeof F=="string"&&F&&(A.assetsBase=F)}return A}),s=be(()=>{var A;return((A=a.value)==null?void 0:A.profile)||null}),r=md(),i=be(()=>{var L;const A=(L=a.value)==null?void 0:L.tk;return typeof A=="string"&&A?A:r.value||""});Ut(()=>{var A;return(A=a.value)==null?void 0:A.tk},A=>{typeof A=="string"&&A&&Fi(A)},{immediate:!0});const l=be(()=>{var A;return((A=a.value)==null?void 0:A.dataSource)||Ql.activeSource||"doxa-csv"}),c=be(()=>{var A;return((A=a.value)==null?void 0:A.colorSet)||"default"}),u=be(()=>!1),p=be(()=>{var A;return((A=a.value)==null?void 0:A.pinHint)!==!1}),m=be(()=>{var L,F;const A=(((L=a.value)==null?void 0:L.locale)||((F=a.value)==null?void 0:F.lang)||"").split("-")[0].toLowerCase();return Xl.includes(A)?A:""}),$=Fe("appI18n",null);wu(()=>{m.value&&$&&($.global.locale.value=m.value)});const w=be(()=>{var A,L;return m.value||((L=(A=$==null?void 0:$.global)==null?void 0:A.locale)==null?void 0:L.value)||"en"}),v=be(()=>{var A;return((A=a.value)==null?void 0:A.instanceId)||"doxa-map-"+Math.random().toString(36).slice(2,9)}),T=Fe("profileModules",null);if(!T)throw new Error('[ProfileLoader] No profileModules provided. Bundle entry must `app.provide("profileModules", import.meta.glob("./*.vue"))`');const P=be(()=>{if(!s.value)return null;const A=`./${s.value}.vue`;return T[A]?bd(T[A]):(console.error(`[ProfileLoader] Profile not found: "${s.value}". Available:`,Object.keys(T)),null)});bt("mapboxToken",i),bt("dataSource",l),bt("colorSet",c),bt("profileConfig",a),bt("instanceId",v),bt("lang",w);const k=Nm(),y=Lm(),b=wm();try{const A=typeof localStorage<"u"?localStorage.getItem("theme"):null;A&&((C=k.setTheme)==null||C.call(k,A))}catch{}return bt("uiStore",k),bt("mapStore",y),bt("dataStore",b),(A,L)=>(We(),Lt("div",Im,[a.value?P.value?(We(),Bo(Pr(P.value),{key:2})):(We(),Lt("div",Fm,[Ne("p",null,[L[1]||(L[1]=wt("⚠️ Profile ",-1)),Ne("strong",null,'"'+Qt(s.value)+'"',1),L[2]||(L[2]=wt(" not found.",-1))])])):(We(),Lt("div",Rm,[...L[0]||(L[0]=[Ne("p",null,[wt("⚠️ "),Ne("strong",null,"doxa-map"),wt(": missing or invalid "),Ne("code",null,"profile-config"),wt(" prop.")],-1),Ne("p",null,[wt("Example: "),Ne("code",null,`profile-config='{"profile":"example-map","tk":"pk.eyJ..."}'`)],-1)])])),P.value&&u.value?(We(),Bo(Pr(ko(null)),{key:3})):bn("",!0),P.value&&p.value?(We(),Bo(Tm,{key:4})):bn("",!0)]))}},[["styles",[Pm]],["__scopeId","data-v-ba19fc13"]]),Dm=Object.assign({"./all-people-groups.vue":()=>Mc(()=>Promise.resolve().then(()=>jb),void 0)}),xm=od(Om,{configureApp(e){e.use(cd());const t=$m();e.use(t),e.provide("appI18n",t),e.provide("profileModules",Dm)}});typeof customElements<"u"&&!customElements.get("all-people-groups")&&customElements.define("all-people-groups",xm);const jm="rgba(120, 128, 134, 0.28)",ec="36px",tc=()=>{};function Bm(e,t={}){const{enabled:n=!0}=t;if(!n||!e)return tc;const o=Array.from(e.querySelectorAll(".map-scroll-edge"));if(!o.length)return tc;const a=k=>k.classList.contains("map-scroll-edge--left");for(const k of o)k.style.background=`linear-gradient(${a(k)?"to right":"to left"}, ${jm} ${ec}, transparent ${ec})`,k.style.opacity="0",k.style.transition="opacity 0.16s ease",k.style.userSelect="none",k.style.webkitUserSelect="none";const s=k=>{k.style.opacity="1"},r=k=>{k.style.opacity="0"},i=()=>o.find(k=>!a(k))||null,l=new Set;let c=!1,u=null;const p=()=>{for(const k of o)l.has(k)||r(k)},m=()=>{const k=i();k&&(s(k),u&&clearTimeout(u),u=setTimeout(p,250))},$=()=>m(),w=k=>{if(!(k.touches&&k.touches.length===1))return;const y=k.target;y&&y.classList&&y.classList.contains("map-scroll-edge")||m()},v=()=>{u&&clearTimeout(u),p()};e.addEventListener("wheel",$,{passive:!0}),e.addEventListener("touchmove",w,{passive:!0}),e.addEventListener("touchend",v,{passive:!0}),e.addEventListener("touchcancel",v,{passive:!0});const T=()=>{c||m()};typeof window<"u"&&window.addEventListener("scroll",T,{passive:!0});const P=[];for(const k of o){const y=()=>{l.add(k),s(k)},b=()=>{l.delete(k),r(k)},C=()=>{c=!0,s(k)},A=()=>{c=!1,r(k)};k.addEventListener("mouseenter",y),k.addEventListener("mouseleave",b),k.addEventListener("touchstart",C,{passive:!0}),k.addEventListener("touchend",A,{passive:!0}),P.push(()=>{k.removeEventListener("mouseenter",y),k.removeEventListener("mouseleave",b),k.removeEventListener("touchstart",C),k.removeEventListener("touchend",A)})}return function(){u&&(clearTimeout(u),u=null),e.removeEventListener("wheel",$),e.removeEventListener("touchmove",w),e.removeEventListener("touchend",v),e.removeEventListener("touchcancel",v),typeof window<"u"&&window.removeEventListener("scroll",T);for(const y of P)y();for(const y of o)r(y)}}const Km=Object.fromEntries([{id:"midnight-glow",label:"Midnight Glow",mood:"the prayer-map dark — pins glow like embers",mapbox:"mapbox://styles/mapbox/standard",lightPreset:"night",maplibre:"https://tiles.openfreemap.org/styles/fiord",bestFor:["doxa-simple-map","my-upg-100-list"]},{id:"daylight",label:"Daylight",mood:"the same Standard world, lights on",mapbox:"mapbox://styles/mapbox/standard",lightPreset:"day",maplibre:"https://tiles.openfreemap.org/styles/liberty",bestFor:["doxa-research-map","gospel-resources"]},{id:"dawn",label:"Dawn",mood:"soft warm horizon — hopeful, quiet",mapbox:"mapbox://styles/mapbox/standard",lightPreset:"dawn",maplibre:"https://tiles.openfreemap.org/styles/positron",bestFor:["doxa-simple-map"]},{id:"dusk",label:"Dusk",mood:"blue hour — calm contrast for bright pins",mapbox:"mapbox://styles/mapbox/standard",lightPreset:"dusk",maplibre:"https://tiles.openfreemap.org/styles/fiord",bestFor:["my-upg-100-list"]},{id:"paper",label:"Paper",mood:"near-white minimal — data reads like print",mapbox:"mapbox://styles/mapbox/light-v11",maplibre:"https://tiles.openfreemap.org/styles/positron",bestFor:["research-dashboard","cities-internet"]},{id:"ink",label:"Ink",mood:"near-black minimal — maximum pin contrast",mapbox:"mapbox://styles/mapbox/dark-v11",maplibre:"https://tiles.openfreemap.org/styles/dark",bestFor:["my-upg-100-list","cities-internet"]},{id:"streetlife",label:"Street Life",mood:"full street detail — city-scale work",mapbox:"mapbox://styles/mapbox/streets-v12",maplibre:"https://tiles.openfreemap.org/styles/bright",bestFor:["cities-internet","key-cities"]},{id:"terrain",label:"Terrain",mood:"relief + parks — where people actually live",mapbox:"mapbox://styles/mapbox/outdoors-v12",maplibre:"https://tiles.openfreemap.org/styles/liberty",bestFor:["doxa-research-map","country-posters"]},{id:"satellite",label:"Satellite",mood:"imagery — the real ground",mapbox:"mapbox://styles/mapbox/satellite-v9",maplibre:"https://tiles.openfreemap.org/styles/liberty",bestFor:["country-posters"]},{id:"hybrid",label:"Hybrid",mood:"imagery + labels — orientation without losing ground truth",mapbox:"mapbox://styles/mapbox/satellite-streets-v12",maplibre:"https://tiles.openfreemap.org/styles/liberty",bestFor:["key-cities"]},{id:"wayfinder-day",label:"Wayfinder Day",mood:"high-legibility navigation palette",mapbox:"mapbox://styles/mapbox/navigation-day-v1",maplibre:"https://tiles.openfreemap.org/styles/liberty",bestFor:["gospel-resources"]},{id:"wayfinder-night",label:"Wayfinder Night",mood:"dark navigation — dashboards at night",mapbox:"mapbox://styles/mapbox/navigation-night-v1",maplibre:"https://tiles.openfreemap.org/styles/fiord",bestFor:["research-dashboard"]},{id:"galaxy",label:"Galaxy",mood:"the day side of Earth floating in space — normal land, blue oceans, black void behind the sphere",mapbox:"mapbox://styles/mapbox/standard",maplibre:"https://tiles.versatiles.org/assets/styles/colorful/style.json",bestFor:["research-dashboard","my-upg-100-list"]}].map(e=>[e.id,e]));function Um(e,t="mapbox"){if(typeof e!="string"||!e)return{style:void 0,lightPreset:void 0,paint:void 0};const n=Km[e];return n?t==="maplibre"?{style:n.maplibre,lightPreset:void 0,paint:n.paint}:{style:n.mapbox,lightPreset:n.lightPreset,paint:n.paint}:/^(mapbox:\/\/|https?:\/\/)/.test(e)?{style:e,lightPreset:void 0,paint:void 0}:{style:void 0,lightPreset:void 0,paint:void 0}}function Gm(e,t){if(!e||!Array.isArray(t))return[];const n=[];for(const o of t)if(!(!o||!o.layer||!o.prop))try{if(!e.getLayer(o.layer))continue;e.setPaintProperty(o.layer,o.prop,o.value),n.push(o.layer+"."+o.prop)}catch{}return n}const zm=["mapbox","maplibre"],nc="mapbox";function qm(e){return e&&typeof e=="object"&&"value"in e&&!("provider"in e)&&!("profile"in e)?e.value:e}function oc(e){const t=qm(e),n=t==null?void 0:t.provider,o=typeof location<"u"?new URLSearchParams(location.search).get("provider"):void 0,a=typeof window<"u"?window.MAP_PROVIDER:void 0,s=String(n||o||a||nc).toLowerCase().trim();return zm.includes(s)?s:nc}const Tn={mapbox:{global:"mapboxgl",js:"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js",css:"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.css"},maplibre:{global:"maplibregl",js:"https://cdn.jsdelivr.net/npm/maplibre-gl@5/dist/maplibre-gl.js",css:"https://cdn.jsdelivr.net/npm/maplibre-gl@5/dist/maplibre-gl.css"}};function ac(e){if(typeof window>"u")return;const t=window,n=()=>{try{const o=e.getContainer().querySelector(".mapboxgl-ctrl-logo, .maplibregl-ctrl-logo");o&&(o.style.display="none")}catch{}};if(t.__doxaLogoOwner&&t.__doxaLogoOwner!==e){e.once("load",n),n();return}t.__doxaLogoOwner=e,e.once("remove",()=>{t.__doxaLogoOwner===e&&(t.__doxaLogoOwner=null)})}const Hm=Tn.mapbox.css,Vm="https://tiles.openfreemap.org/styles/liberty",Wm="https://tiles.openfreemap.org/styles/fiord";function hs(e){var n;const t=((n=Tn[e])==null?void 0:n.global)||Tn.mapbox.global;return typeof window<"u"?window[t]:void 0}async function Ym(e){const t=Tn[e]||Tn.mapbox;if(hs(e)||typeof document>"u")return;if(!document.querySelector(`link[href="${t.css}"]`)){const o=document.createElement("link");o.rel="stylesheet",o.href=t.css,document.head.appendChild(o)}const n=document.querySelector(`script[src="${t.js}"]`);if(n){if(hs(e))return;await new Promise(o=>{n.addEventListener("load",o,{once:!0}),n.addEventListener("error",o,{once:!0})});return}await new Promise((o,a)=>{const s=document.createElement("script");s.src=t.js,s.async=!1,s.addEventListener("load",o,{once:!0}),s.addEventListener("error",()=>a(new Error(`[useMapInstance] Failed to load ${e} engine script`)),{once:!0}),document.head.appendChild(s)})}async function Jm(e,t){const n=e.getRootNode();if(!(n instanceof ShadowRoot))return;const o=r=>new Promise(i=>setTimeout(i,r)),a=n.querySelector(`link[href="${t}"]`);if(a){if(a.sheet)return;await Promise.race([new Promise(r=>{a.addEventListener("load",r,{once:!0}),a.addEventListener("error",r,{once:!0})}),o(2e3)]);return}const s=document.createElement("link");s.rel="stylesheet",s.href=t,await Promise.race([new Promise(r=>{s.addEventListener("load",r,{once:!0}),s.addEventListener("error",r,{once:!0}),n.prepend(s)}),o(2e3)])}function Xm(e,t){return typeof e=="string"&&/^https?:\/\//.test(e)?e:t==="night"||t==="dusk"?Wm:Vm}const Zm=85.0511,ms=-2,Qm=0,eb=-60;function sc(e){return(1-Math.log(Math.tan(Math.PI/4+e*Math.PI/180/2))/Math.PI)/2}function tb(e,t,n,o){if(!e||e<=0||!t||t<=0)return Qm;const a=Math.log2(e/512),s=sc(o)-sc(Zm),r=Math.log2(t/(512*s)),i=Math.max(a,r);return Math.max(ms,Math.min(i,(n??18)-1))}function nb({containerRef:e,accessToken:t,style:n,config:o=void 0,provider:a=void 0,center:s=[20,10],zoom:r=2,minZoom:i=void 0,skipWorldFloor:l=!1,maxZoom:c=18,pitch:u=0,bearing:p=0,renderWorldCopies:m=!0,showEdgeBorders:$=!0,southCutoff:w=eb,maxBounds:v=void 0}){const T=va(null),P=he(!1);let k=null,y=null,b=null,C=null;try{C=Fe("profileConfig",null)}catch{}a=a||oc(C);const A=a==="maplibre";async function L(){var pe;const S=Um(n,a),V=S.style||n;if(!e.value){console.error("containerRef.value is null — call initializeMap() inside onMounted()");return}await Ym(a);const ae=hs(a);if(!ae){console.error(`[useMapInstance] ${A?"maplibregl":"mapboxgl"} is not available. Add the ${A?"MapLibre":"Mapbox"} GL JS script to your page.`);return}if(!A){if(!t&&typeof window<"u"&&typeof window.MAP_TOKEN=="string"&&window.MAP_TOKEN&&(t=window.MAP_TOKEN),!t){console.error('No Mapbox access token provided. Pass "tk" in profile-config JSON or set window.MAP_TOKEN.');return}if(!t.startsWith("pk.")){console.error('Mapbox token looks invalid (expected "pk." prefix). Got:',t.slice(0,10)+"...");return}}await Jm(e.value,A?Tn.maplibre.css:Hm),await new Promise(oe=>requestAnimationFrame(oe));const z=e.value,ee=z.clientWidth,Y=z.clientHeight;if(ee===0||Y===0){console.error(`[useMapInstance] Container has ZERO dimensions (${ee}×${Y}). Map will be invisible. Check that parent elements have CSS sizing.`);let oe=z.parentElement,le=0;for(;oe&&le<5;)oe=oe.parentElement,le++}const O=t;A||(ae.accessToken=O);const j=()=>typeof window<"u"&&window.innerWidth>=1024,q=(oe,le)=>{if(l)return typeof i=="number"?i:ms;if(!j())return ms;const we=tb(oe,le,c,w);return typeof i=="number"?Math.max(i,we):we},W=q(z.clientWidth,z.clientHeight),X=S.lightPreset||(()=>{var oe;try{const le=typeof o=="function"?o():o;return(oe=le==null?void 0:le.basemap)==null?void 0:oe.lightPreset}catch{return}})();if(A){T.value=new ae.Map({container:e.value,style:Xm(V,X),center:s,zoom:r,minZoom:W,maxZoom:c,pitch:u,bearing:p,dragRotate:!1,renderWorldCopies:m,...v?{maxBounds:v}:{},attributionControl:!0,logoPosition:typeof window<"u"&&window.matchMedia&&window.matchMedia("(max-width: 767px)").matches?"bottom-right":"bottom-left"}),ac(T.value);try{e.value.__doxaMap=T.value}catch{}}else{const oe=typeof o=="function"?o():o;T.value=new ae.Map({accessToken:O,container:e.value,style:V,...oe?{config:oe}:{},center:s,zoom:r,minZoom:W,maxZoom:c,pitch:u,bearing:p,dragRotate:!1,touchPitch:!1,renderWorldCopies:m,...v?{maxBounds:v}:{},attributionControl:!0,logoPosition:typeof window<"u"&&window.matchMedia&&window.matchMedia("(max-width: 767px)").matches?"bottom-right":"bottom-left"}),ac(T.value);try{e.value.__doxaMap=T.value}catch{}}try{let oe=!1;T.value.on("error",le=>{var Ye,nt;const we=((Ye=le==null?void 0:le.error)==null?void 0:Ye.status)??(le==null?void 0:le.status),Re=String(((nt=le==null?void 0:le.error)==null?void 0:nt.url)||(le==null?void 0:le.sourceId)||"");we!==401&&we!==403||oe||(oe=!0,console.error(`[doxa-maps] Mapbox returned ${we} for a TILE request while the style loaded fine. That is a URL RESTRICTION on the access token, not a bad token and not a bug in this map. Add this page's origin (${typeof location<"u"?location.origin:"this origin"}) to the token's URL restrictions in the Mapbox account. The map will keep its data layer and stay blank underneath until then.`+(Re?` First failing request: ${Re.slice(0,120)}`:"")))})}catch{}try{T.value.touchZoomRotate.disableRotation()}catch{}b=Bm(((pe=e.value)==null?void 0:pe.parentElement)||null,{enabled:$});let ge=W,re=null;k=()=>{const oe=T.value;if(!oe)return;const le=q(z.clientWidth,z.clientHeight);le!==ge&&(ge=le,oe.setMinZoom(le)),oe.getZoom(){re=null;const we=T.value;if(!we)return;const Re=q(z.clientWidth,z.clientHeight);if(we.getZoom(){re&&(clearTimeout(re),re=null)},T.value.on("resize",k),typeof window<"u"&&(window.addEventListener("resize",k),window.addEventListener("orientationchange",k)),T.value.on("style.load",()=>{if(S.paint&&T.value){const oe=Gm(T.value,S.paint);console.info("[useMapInstance] style paint applied ("+a+"):",oe.join(", ")||"NONE MATCHED")}requestAnimationFrame(()=>{var oe;(oe=T.value)==null||oe.resize(),T.value&&T.value.setMinZoom(q(z.clientWidth,z.clientHeight)),P.value=!0})})}function F(){if(T.value){if(k&&(T.value.off("resize",k),typeof window<"u"&&(window.removeEventListener("resize",k),window.removeEventListener("orientationchange",k)),k=null),y){try{y()}catch{}y=null}b&&(b(),b=null),T.value.remove(),T.value=null,P.value=!1}}return{map:T,isMapReady:P,initializeMap:L,destroy:F}}const rc="doxa-prayed-local",ob=7*24*60*60*1e3;function ab(){try{const e=localStorage.getItem(rc);if(!e)return{};const t=JSON.parse(e);return t&&typeof t=="object"?t:{}}catch{return{}}}function sb(e){try{localStorage.setItem(rc,JSON.stringify(e))}catch{}}function rb(){const e=Date.now(),t=ab();let n=!1;for(const[o,a]of Object.entries(t))(typeof a!="number"||e-a>ob)&&(delete t[o],n=!0);return n&&sb(t),new Set(Object.keys(t))}function ib(e){const t=rb();return!t.size||!Array.isArray(e)?e:e.map(n=>(Number(n&&n.peoplePraying)||0)>0||!n||!t.has(n.slug)?n:{...n,peoplePraying:1})}const Yt={Chamacoco:"Zamucoan",Ninam:"Yanomaman",Yagua:"Yaguan",Muinane:"Witotoan",Finnish:"Uralic","Hill Mari":"Uralic",Mansi:"Uralic","Meadow Mari":"Uralic","North Saami":"Uralic",Carabayo:"Unclassified",Kujarge:"Unclassified",Shabo:"Unclassified",Ainu:"Turkic",Kazakh:"Turkic","Khorasani Turkish":"Turkic",Kyrgyz:"Turkic","Northern Uzbek":"Turkic","South Azerbaijani":"Turkic",Turkish:"Turkic",Tuvan:"Turkic",Uyghur:"Turkic",Amundava:"Tupian",Araweté:"Tupian","Asurini of Xingú":"Tupian","Avá-Canoeiro":"Tupian",Awetí:"Tupian",Kamayurá:"Tupian",Karo:"Tupian",Morerebi:"Tupian",Tenharim:"Tupian","Uru-Eu-Wau-Wau":"Tupian","Uru-Pa-In":"Tupian",Wayampi:"Tupian","Zo’é":"Tupian",Evenki:"Tungusic",Xibe:"Tungusic",Carapana:"Tucanoan",Cubeo:"Tucanoan",Desano:"Tucanoan",Macuna:"Tucanoan",Piratapuyo:"Tucanoan",Siona:"Tucanoan",Siriano:"Tucanoan",Tucano:"Tucanoan",Tuyuca:"Tucanoan",Waimaha:"Tucanoan",Tay:"Trans-New Guinea",Adi:"Sino-Tibetan",Akha:"Sino-Tibetan","Amdo Tibetan":"Sino-Tibetan",Axi:"Sino-Tibetan",Biyo:"Sino-Tibetan","Boro (India)":"Sino-Tibetan",Brokkat:"Sino-Tibetan",Bugun:"Sino-Tibetan",Byangsi:"Sino-Tibetan","Central Lalo":"Sino-Tibetan","Central Tibetan":"Sino-Tibetan",Chak:"Sino-Tibetan",Chalikha:"Sino-Tibetan",Chaudangsi:"Sino-Tibetan",Chocangacakha:"Sino-Tibetan",Darlong:"Sino-Tibetan",Dhimal:"Sino-Tibetan","Digaro-Mishmi":"Sino-Tibetan",Dzalakha:"Sino-Tibetan","Eastern Nisu":"Sino-Tibetan",Ersu:"Sino-Tibetan",Gahri:"Sino-Tibetan",Gongduk:"Sino-Tibetan",Gyalsumdo:"Sino-Tibetan",Hani:"Sino-Tibetan","Idu-Mishmi":"Sino-Tibetan",Kaike:"Sino-Tibetan",Kanashi:"Sino-Tibetan",Katso:"Sino-Tibetan",Khamba:"Sino-Tibetan",Koireng:"Sino-Tibetan",Kucong:"Sino-Tibetan",Kurtokha:"Sino-Tibetan",Ladakhi:"Sino-Tibetan",Lakha:"Sino-Tibetan","Lang’e":"Sino-Tibetan",Lhokpu:"Sino-Tibetan",Lolopo:"Sino-Tibetan",Lunanakha:"Sino-Tibetan","Mandarin Chinese":"Sino-Tibetan",Meitei:"Sino-Tibetan","Miju-Mishmi":"Sino-Tibetan",Mpi:"Sino-Tibetan",Na:"Sino-Tibetan",Namuyi:"Sino-Tibetan",Narua:"Sino-Tibetan",Naxi:"Sino-Tibetan","Northern Muji":"Sino-Tibetan",Nuosu:"Sino-Tibetan",Nupbikha:"Sino-Tibetan",Nyenkha:"Sino-Tibetan",Olekha:"Sino-Tibetan",Pahari:"Sino-Tibetan",Pattani:"Sino-Tibetan","Phana’":"Sino-Tibetan",Phula:"Sino-Tibetan",Phunoi:"Sino-Tibetan",Puma:"Sino-Tibetan",Puroik:"Sino-Tibetan",Raji:"Sino-Tibetan",Rawat:"Sino-Tibetan",Sani:"Sino-Tibetan",Sherdukpen:"Sino-Tibetan",Sherpa:"Sino-Tibetan",Shuhi:"Sino-Tibetan",Sila:"Sino-Tibetan",Singpho:"Sino-Tibetan",Sunwar:"Sino-Tibetan","Tawang Monpa":"Sino-Tibetan",Tseku:"Sino-Tibetan",Tshangla:"Sino-Tibetan",Usoi:"Sino-Tibetan","Western Minyag":"Sino-Tibetan","Wusa Nasu":"Sino-Tibetan","Xiang Chinese":"Sino-Tibetan",Yakkha:"Sino-Tibetan","Youle Jinuo":"Sino-Tibetan","Yue Chinese":"Sino-Tibetan",Zakhring:"Sino-Tibetan","Afghan Sign Language":"Sign Language","Albanian Sign Language":"Sign Language","Algerian Sign Language":"Sign Language","American Sign Language":"Sign Language","Armenian Sign Language":"Sign Language","British Sign Language":"Sign Language","Bulgarian Sign Language":"Sign Language","Cambodian Sign Language":"Sign language","Cuban Sign Language":"Sign Language","Egyptian Sign Language":"Sign Language","Greek Sign Language":"Sign Language","Guinean Sign Language":"Sign Language","Hong Kong Sign Language":"Sign Language","Icelandic Sign Language":"Sign Language","Iranian Sign Language":"Sign Language","Israeli Sign Language":"Sign Language","Jamaican Sign Language":"Sign Language","Jordanian Sign Language":"Sign Language","Laos Sign Language":"Sign Language","Libyan Sign Language":"Sign Language","Maltese Sign Language":"Sign Language","Mauritian Sign Language":"Sign Language","Moroccan Sign Language":"Sign Language","Mozambican Sign Language":"Sign Language","Myanmar Sign Language":"Sign language","Natural Sign Language":"Sign Language","Pakistan Sign Language":"Sign Language","Papua New Guinean Sign Language":"Sign language","Russian Sign Language":"Sign Language","Saudi Arabian Sign Language":"Sign Language","Sign Language of the Netherlands":"Sign Language","Solomon Islands Sign Language":"Sign Language","Sri Lankan Sign Language":"Sign Language","Swedish Sign Language":"Sign Language","Turkish Sign Language":"Sign Language","Northern Conchucos Ancash Quechua":"Quechuan","Northern Pastaza Quichua":"Quechuan",Hupdë:"Puinavean",Amahuaca:"Panoan",Korubo:"Panoan",Sharanahua:"Panoan","Shipibo-Conibo":"Panoan",Yaminahua:"Panoan",Yawanawa:"Panoan",Afitti:"Nilo-Saharan",Assangori:"Nilo-Saharan","Beli (South Sudan)":"Nilo-Saharan",Berta:"Nilo-Saharan",Burun:"Nilo-Saharan","Dar Daju Daju":"Nilo-Saharan","Dar Fur Daju":"Nilo-Saharan","Dar Sila Daju":"Nilo-Saharan",Dazaga:"Nilo-Saharan","Dendi (Benin)":"Nilo-Saharan",Dilling:"Nilo-Saharan",Fur:"Nilo-Saharan",Gbaya:"Nilo-Saharan",Ghulfan:"Nilo-Saharan",Gwama:"Nilo-Saharan","Humburi Senni Songhay":"Nilo-Saharan",Jopadhola:"Nilo-Saharan",Kadaru:"Nilo-Saharan",Kanga:"Nilo-Saharan",Karanga:"Nilo-Saharan",Karko:"Nilo-Saharan",Kebu:"Nilo-Saharan",Keiga:"Nilo-Saharan",Keliko:"Nilo-Saharan",Kendeje:"Nilo-Saharan",Kibet:"Nilo-Saharan","Komo (Sudan)":"Nilo-Saharan",Korandje:"Nilo-Saharan",Kulfa:"Nilo-Saharan",Kwegu:"Nilo-Saharan",Laarim:"Nilo-Saharan",Logorik:"Nilo-Saharan",Majang:"Nilo-Saharan","Manga Kanuri":"Nilo-Saharan",Mango:"Nilo-Saharan",Mararit:"Nilo-Saharan",Marfa:"Nilo-Saharan",Midob:"Nilo-Saharan","Mo’da":"Nilo-Saharan",Morom:"Nilo-Saharan",Moru:"Nilo-Saharan",Naba:"Nilo-Saharan",Nara:"Nilo-Saharan",Njalgulgule:"Nilo-Saharan",Nuer:"Nilo-Saharan","Nyamusa-Molo":"Nilo-Saharan",Nyangatom:"Nilo-Saharan","Olu’bo":"Nilo-Saharan",Opo:"Nilo-Saharan",Päri:"Nilo-Saharan","Sara Kaba Naa":"Nilo-Saharan",Surbakhal:"Nilo-Saharan",Tadaksahak:"Nilo-Saharan","Tama (Chad)":"Nilo-Saharan",Temein:"Nilo-Saharan",Thuri:"Nilo-Saharan","Tirmaga-Chai Suri":"Nilo-Saharan",Toposa:"Nilo-Saharan",Tumtum:"Nilo-Saharan","Wali (Sudan)":"Nilo-Saharan","Yerwa Kanuri":"Nilo-Saharan",Yulu:"Nilo-Saharan",Zaghawa:"Nilo-Saharan","Adamawa Fulfulde":"Niger-Congo",Akaselem:"Niger-Congo","Amba (Uganda)":"Niger-Congo",Anii:"Niger-Congo",Baangi:"Niger-Congo",Badyara:"Niger-Congo","Bago-Kusuntu":"Niger-Congo",Bai:"Niger-Congo","Bainouk-Gunyaamolo":"Niger-Congo",Bamanankan:"Niger-Congo","Banda-Mbrès":"Niger-Congo",Bandial:"Niger-Congo",Bankagooma:"Niger-Congo","Belanda Viri":"Niger-Congo",Bemba:"Niger-Congo",Bolgo:"Niger-Congo","Bon Gula":"Niger-Congo",Bua:"Niger-Congo",Chichewa:"Niger-Congo","Chung (Cameroon)":"Niger-Congo","Ci Gbe":"Niger-Congo",Degema:"Niger-Congo",Dek:"Niger-Congo",Dhimba:"Niger-Congo",Dogoso:"Niger-Congo","East Limba":"Niger-Congo",Engenni:"Niger-Congo",Epie:"Niger-Congo",Éwé:"Niger-Congo",Fania:"Niger-Congo",Foodo:"Niger-Congo",Fwe:"Niger-Congo",Gciriku:"Niger-Congo",Gwa:"Niger-Congo",Herero:"Niger-Congo",Ibuoro:"Niger-Congo","Jenaama Bozo":"Niger-Congo",Jita:"Niger-Congo",Jula:"Niger-Congo",Kabiyè:"Niger-Congo",Kadung:"Niger-Congo",Kakabe:"Niger-Congo",Kalamsé:"Niger-Congo","Kami (Tanzania)":"Niger-Congo","Kango (Bas-Uélé District)":"Niger-Congo",Kasem:"Niger-Congo","Kelengaxo Bozo":"Niger-Congo",Khe:"Niger-Congo",Khisa:"Niger-Congo",Kim:"Niger-Congo",Kinyarwanda:"Niger-Congo",Kipfokomu:"Niger-Congo",Kitharaka:"Niger-Congo",Kiyombe:"Niger-Congo",Ko:"Niger-Congo",Koalib:"Niger-Congo",Koke:"Niger-Congo",Konongo:"Niger-Congo","Koro Nulu":"Niger-Congo","Koro Zuba":"Niger-Congo",Kuhane:"Niger-Congo",Kunda:"Niger-Congo",Kuranko:"Niger-Congo",Kuria:"Niger-Congo",Kwangali:"Niger-Congo",Lame:"Niger-Congo",Laru:"Niger-Congo",Lopa:"Niger-Congo","Makhuwa-Meetto":"Niger-Congo","Makhuwa-Shirima":"Niger-Congo","Malawi Nyiha":"Niger-Congo",Mandinka:"Niger-Congo",Mankanya:"Niger-Congo",Mansoanka:"Niger-Congo",Mbukushu:"Niger-Congo","Mende (Sierra Leone)":"Niger-Congo",Miyobe:"Niger-Congo",Mushungulu:"Niger-Congo","Mwali Comorian":"Niger-Congo","Mwera (Chimwera)":"Niger-Congo",Ndemli:"Niger-Congo",Ndengereko:"Niger-Congo",Ndumu:"Niger-Congo",Ndunga:"Niger-Congo","Ndzwani Comorian":"Niger-Congo",Ngile:"Niger-Congo","Northwest Gbaya":"Niger-Congo",Notre:"Niger-Congo",Nyamwanga:"Niger-Congo",Nyankore:"Niger-Congo",Nyengo:"Niger-Congo",Okpamheri:"Niger-Congo",Osatu:"Niger-Congo","Pana (Burkina Faso)":"Niger-Congo",Pulaar:"Niger-Congo",Pular:"Niger-Congo",Rufiji:"Niger-Congo","Sankaran Maninka":"Niger-Congo",Sapo:"Niger-Congo","Senara Sénoufo":"Niger-Congo",Shanga:"Niger-Congo",Sininkere:"Niger-Congo","Southern Ngbandi":"Niger-Congo",Swahili:"Niger-Congo","Syenara Sénoufo":"Niger-Congo",Tagbu:"Niger-Congo",Tagoi:"Niger-Congo",Tegali:"Niger-Congo",Tem:"Niger-Congo","Tiéyaxo Bozo":"Niger-Congo",Tiyaa:"Niger-Congo",Tocho:"Niger-Congo","Tonga (Zambia)":"Niger-Congo",Totela:"Niger-Congo","Toura (Côte d’Ivoire)":"Niger-Congo",Tswa:"Niger-Congo",Tumbuka:"Niger-Congo",Ukaan:"Niger-Congo",Uneme:"Niger-Congo",Vai:"Niger-Congo",Vute:"Niger-Congo",Waama:"Niger-Congo",Warnang:"Niger-Congo",Wolof:"Niger-Congo",Yao:"Niger-Congo",Yauma:"Niger-Congo",Yom:"Niger-Congo","Zan Gula":"Niger-Congo",Zande:"Niger-Congo",Zigula:"Niger-Congo",Mamaindê:"Nambikwara",Aghul:"Nakh-Daghestanian",Akhvakh:"Nakh-Daghestanian",Andi:"Nakh-Daghestanian",Avar:"Nakh-Daghestanian",Bagvalal:"Nakh-Daghestanian",Botlikh:"Nakh-Daghestanian",Chamalal:"Nakh-Daghestanian",Chechen:"Nakh-Daghestanian",Dargwa:"Nakh-Daghestanian",Kaitag:"Nakh-Daghestanian",Karata:"Nakh-Daghestanian",Khvarshi:"Nakh-Daghestanian",Tindi:"Nakh-Daghestanian",Pirahã:"Muran",Bonan:"Mongolic","China Buriat":"Mongolic",Daur:"Mongolic","Kalmyk-Oirat":"Mongolic","Peripheral Mongolian":"Mongolic","Russia Buriat":"Mongolic",Tagdal:"Mixed language",Wutunhua:"Mixed language","Ashéninka Perené":"Maipurean",Baniwa:"Maipurean",Cabiyarí:"Maipurean",Curripaco:"Maipurean","Enawené-Nawé":"Maipurean",Kanamarí:"Maipurean",Mehináku:"Maipurean","Pichis Ashéninka":"Maipurean",Waurá:"Maipurean",Bangime:"Language isolate",Burushaski:"Language isolate","Ai-Cham":"Kra-Dai",Aiton:"Kra-Dai","Dai Zhuang":"Kra-Dai",Duoluo:"Kra-Dai","Green Gelao":"Kra-Dai","Guibian Zhuang":"Kra-Dai",Hlai:"Kra-Dai",Jiamao:"Kra-Dai",Kang:"Kra-Dai",Khün:"Kra-Dai",Kuan:"Kra-Dai",Lachi:"Kra-Dai","Laha (Viet Nam)":"Kra-Dai",Lao:"Kra-Dai",Lü:"Kra-Dai","Mak (China)":"Kra-Dai","Northeastern Thai":"Kra-Dai","Northern Dong":"Kra-Dai","Northern Thai":"Kra-Dai",Nyaw:"Kra-Dai",Phake:"Kra-Dai","Phu Thai":"Kra-Dai",Qabiao:"Kra-Dai",Qau:"Kra-Dai","Qiubei Zhuang":"Kra-Dai",Shan:"Kra-Dai","Southern Dong":"Kra-Dai",Sui:"Kra-Dai","T’en":"Kra-Dai","Tai Daeng":"Kra-Dai","Tai Dam":"Kra-Dai","Tai Hongjin":"Kra-Dai","Tai Nüa":"Kra-Dai","Tai Ya":"Kra-Dai","Tai Yo":"Kra-Dai","Ts’ün-Lao":"Kra-Dai","Yang Zhuang":"Kra-Dai",Yerong:"Kra-Dai",Yong:"Kra-Dai",Yoy:"Kra-Dai",Khoekhoe:"Khoe-Kwadi",Karajá:"Karajá","Pará Gavião":"Jean",Suyá:"Jean",Japanese:"Japonic","Oki-No-Erabu":"Japonic","Toku-No-Shima":"Japonic",Yaeyama:"Japonic",Yoron:"Japonic","Adivasi Oriya":"Indo-European",Afrikaans:"Indo-European","Alviri-Vidari":"Indo-European",Angika:"Indo-European",Assamese:"Indo-European",Bagheli:"Indo-European",Bagri:"Indo-European",Bashkardi:"Indo-European",Bateri:"Indo-European",Bengali:"Indo-European",Bhojpuri:"Indo-European",Bhunjia:"Indo-European",Bilaspuri:"Indo-European",Bosnian:"Indo-European","Braj Bhasha":"Indo-European",Brokskat:"Indo-European",Bundeli:"Indo-European",Catalan:"Indo-European",Chambeali:"Indo-European",Chhattisgarhi:"Indo-European",Dameli:"Indo-European",Dari:"Indo-European",Dhundari:"Indo-European",Dogri:"Indo-European",Domari:"Indo-European",Dutch:"Indo-European","Eastern Balochi":"Indo-European","Eastern Panjabi":"Indo-European","Eastern Yiddish":"Indo-European",English:"Indo-European",French:"Indo-European",Gaddi:"Indo-European",Garhwali:"Indo-European",Gawri:"Indo-European",Gowro:"Indo-European",Gujarati:"Indo-European",Gujari:"Indo-European",Halbi:"Indo-European",Haroti:"Indo-European",Haryanvi:"Indo-European",Hindi:"Indo-European","Indus Kohistani":"Indo-European","Iranian Persian":"Indo-European",Ishkashimi:"Indo-European",Kacchi:"Indo-European",Kalkoti:"Indo-European",Kanauji:"Indo-European",Kangri:"Indo-European",Karingani:"Indo-European",Kashmiri:"Indo-European",Kati:"Indo-European",Khunsari:"Indo-European",Konkani:"Indo-European",Kudmali:"Indo-European",Kumaoni:"Indo-European",Kumzari:"Indo-European",Laki:"Indo-European",Lasi:"Indo-European",Luwati:"Indo-European",Magahi:"Indo-European",Maithili:"Indo-European",Maldivian:"Indo-European",Malvi:"Indo-European",Marathi:"Indo-European","Marwari (India)":"Indo-European",Mewari:"Indo-European",Munji:"Indo-European",Nepali:"Indo-European",Nimadi:"Indo-European","Northern Kurdish":"Indo-European",Odia:"Indo-European","Pahari-Potwari":"Indo-European",Palula:"Indo-European",Panchpargania:"Indo-European",Pangwali:"Indo-European",Parachi:"Indo-European",Portuguese:"Indo-European",Russian:"Indo-European",Sadri:"Indo-European",Sanglechi:"Indo-European",Sarikoli:"Indo-European",Savi:"Indo-European",Semnani:"Indo-European",Serbian:"Indo-European",Shabak:"Indo-European",Shahrudi:"Indo-European",Shekhawati:"Indo-European",Shina:"Indo-European",Shughni:"Indo-European",Shumashti:"Indo-European",Sindhi:"Indo-European",Sivandi:"Indo-European",Soi:"Indo-European","Southern Balochi":"Indo-European",Spanish:"Indo-European",Tajik:"Indo-European",Talysh:"Indo-European",Urdu:"Indo-European",Ushojo:"Indo-European",Vaghri:"Indo-European","Vlax Romani":"Indo-European",Wagdi:"Indo-European",Wakhi:"Indo-European",Waneci:"Indo-European","Western Balochi":"Indo-European",Yadgha:"Indo-European","Bu-Nao Bunu":"Hmong-Mien","Central Mashan Miao":"Hmong-Mien","Chuanqiandian Cluster Miao":"Hmong-Mien","Eastern Xiangxi Miao":"Hmong-Mien","Iu Mien":"Hmong-Mien","Luopohe Miao":"Hmong-Mien","Northern Qiandong Miao":"Hmong-Mien","Pa-Hng":"Hmong-Mien","Southwestern Huishui Miao":"Hmong-Mien","Wunai Bunu":"Hmong-Mien","Younuo Bunu":"Hmong-Mien",Amarakaeri:"Harákmbut",Huachipaeri:"Harákmbut",Cuiba:"Guajiboan",Macaguán:"Guajiboan",Tlicho:"Eyak-Athabaskan",Kannada:"Dravidian",Kodava:"Dravidian","Korra Koraga":"Dravidian","Kota (India)":"Dravidian",Kudiya:"Dravidian",Malapandaram:"Dravidian",Malayalam:"Dravidian",Muthuvan:"Dravidian",Ravula:"Dravidian",Sholaga:"Dravidian",Tamil:"Dravidian",Telugu:"Dravidian",Tulu:"Dravidian",Vishavan:"Dravidian","Andaman Hindi Creole":"Creole","Cocos Islands Malay":"Creole","Juba Arabic":"Creole",Nubi:"Creole",Barí:"Chibchan","Barro Negro Tunebo":"Chibchan","Western Tunebo":"Chibchan",Ikpeng:"Cariban","Kuikúro-Kalapálo":"Cariban",Pemon:"Cariban",Trió:"Cariban","Waimiri-Atroarí":"Cariban",Waiwai:"Cariban",Yukpa:"Cariban",Borôro:"Bororoan",Chachi:"Barbacoan","Abai Sungai":"Austronesian",Ambelau:"Austronesian",Asilulu:"Austronesian",Balaesang:"Austronesian","Batak Alas-Kluet":"Austronesian","Batak Dairi":"Austronesian","Batak Karo":"Austronesian",Bonerate:"Austronesian",Bonggi:"Austronesian",Brunei:"Austronesian","Brunei Bisaya":"Austronesian",Buol:"Austronesian","Central Malay":"Austronesian","Central Sama":"Austronesian","Coastal Konjo":"Austronesian",Dampelas:"Austronesian","Dibabawon Manobo":"Austronesian",Dondo:"Austronesian",Gane:"Austronesian","Geser-Gorom":"Austronesian","Highland Konjo":"Austronesian",Hitu:"Austronesian",Iban:"Austronesian",Indonesian:"Austronesian","Kadazan Dusun":"Austronesian",Kiput:"Austronesian",Komodo:"Austronesian",Kompane:"Austronesian",Lahanan:"Austronesian","Lampung Nyo":"Austronesian","Larike-Wakasihu":"Austronesian",Lola:"Austronesian",Luhu:"Austronesian",Malay:"Austronesian",Mariri:"Austronesian",Moronene:"Austronesian",Rukai:"Austronesian","Sabah Bisaya":"Austronesian","Seit-Kaitetu":"Austronesian",Sula:"Austronesian","Tae’":"Austronesian",Tajio:"Austronesian",Tomini:"Austronesian",Tutong:"Austronesian",Ujir:"Austronesian",Aheu:"Austro-Asiatic",Alak:"Austro-Asiatic",Bit:"Austro-Asiatic","Bo (Laos)":"Austro-Asiatic",Bondo:"Austro-Asiatic",Brao:"Austro-Asiatic",Bugan:"Austro-Asiatic",Chong:"Austro-Asiatic",Chut:"Austro-Asiatic",Danau:"Austro-Asiatic",Halang:"Austro-Asiatic","Halang Doan":"Austro-Asiatic",Hu:"Austro-Asiatic",Hung:"Austro-Asiatic",Ir:"Austro-Asiatic",Kensiu:"Austro-Asiatic",Khmu:"Austro-Asiatic",Khua:"Austro-Asiatic",Khuen:"Austro-Asiatic",Koda:"Austro-Asiatic","Kon Keu":"Austro-Asiatic",Kriang:"Austro-Asiatic",Kuay:"Austro-Asiatic",Laven:"Austro-Asiatic",Maleng:"Austro-Asiatic","Man Met":"Austro-Asiatic",Mang:"Austro-Asiatic",Minriq:"Austro-Asiatic",Mlabri:"Austro-Asiatic",Nguôn:"Austro-Asiatic",Nyaheun:"Austro-Asiatic",Nyahkur:"Austro-Asiatic","O’du":"Austro-Asiatic",Ong:"Austro-Asiatic",Oy:"Austro-Asiatic",Pacoh:"Austro-Asiatic","Phong-Kniang":"Austro-Asiatic",Prai:"Austro-Asiatic",Puoc:"Austro-Asiatic",Rengao:"Austro-Asiatic",Rmeet:"Austro-Asiatic","Rumai Palaung":"Austro-Asiatic",Sapuan:"Austro-Asiatic","Shwe Palaung":"Austro-Asiatic","So (Laos)":"Austro-Asiatic",Sou:"Austro-Asiatic","Tai Loi":"Austro-Asiatic",Talieng:"Austro-Asiatic",Tareng:"Austro-Asiatic",Tho:"Austro-Asiatic",U:"Austro-Asiatic","Upper Ta’oih":"Austro-Asiatic",Vietnamese:"Austro-Asiatic","Western Katu":"Austro-Asiatic",Suruahá:"Arauan",Jarawa:"Andamanese",Öñge:"Andamanese",Sentinel:"Andamanese",Afar:"Afro-Asiatic","Alaba-K’abeena":"Afro-Asiatic",Alagwa:"Afro-Asiatic",Ale:"Afro-Asiatic","Algerian Arabic":"Afro-Asiatic",Amharic:"Afro-Asiatic",Arbore:"Afro-Asiatic","Baharna Arabic":"Afro-Asiatic",Barein:"Afro-Asiatic",Bedawiyet:"Afro-Asiatic",Bidiyo:"Afro-Asiatic",Bilen:"Afro-Asiatic",Birgit:"Afro-Asiatic",Boor:"Afro-Asiatic","Borana-Arsi-Guji Oromo":"Afro-Asiatic",Buduma:"Afro-Asiatic","Central Atlas Tamazight":"Afro-Asiatic","Chadian Arabic":"Afro-Asiatic",Chenoua:"Afro-Asiatic",Ciwogai:"Afro-Asiatic",Daasanach:"Afro-Asiatic",Dabarre:"Afro-Asiatic",Dangaléat:"Afro-Asiatic",Deno:"Afro-Asiatic",Diri:"Afro-Asiatic",Duwai:"Afro-Asiatic","Eastern Egyptian Bedawi Arabic":"Afro-Asiatic","Eastern Oromo":"Afro-Asiatic",Garre:"Afro-Asiatic",Geruma:"Afro-Asiatic",Giiwo:"Afro-Asiatic",Gorowa:"Afro-Asiatic","Gulf Arabic":"Afro-Asiatic","Hadrami Arabic":"Afro-Asiatic",Harsusi:"Afro-Asiatic",Hassaniyya:"Afro-Asiatic",Hausa:"Afro-Asiatic",Hebrew:"Afro-Asiatic","Hijazi Arabic":"Afro-Asiatic",Hobyót:"Afro-Asiatic",Hozo:"Afro-Asiatic",Jiiddu:"Afro-Asiatic",Jimi:"Afro-Asiatic",Jina:"Afro-Asiatic","Jonkor Bourmataguil":"Afro-Asiatic","Judeo-Iraqi Arabic":"Afro-Asiatic","Judeo-Moroccan Arabic":"Afro-Asiatic",Kabalai:"Afro-Asiatic",Kajakse:"Afro-Asiatic",Kariya:"Afro-Asiatic","Karo (Ethiopia)":"Afro-Asiatic",Kutto:"Afro-Asiatic","Levantine Arabic":"Afro-Asiatic",Libido:"Afro-Asiatic","Libyan Arabic":"Afro-Asiatic","Lishana Deni":"Afro-Asiatic",Maaka:"Afro-Asiatic",Maay:"Afro-Asiatic",Majera:"Afro-Asiatic",Male:"Afro-Asiatic",Maslam:"Afro-Asiatic",Masmaje:"Afro-Asiatic",Mburku:"Afro-Asiatic",Mehri:"Afro-Asiatic","Mesopotamian Arabic":"Afro-Asiatic",Migaama:"Afro-Asiatic",Mogum:"Afro-Asiatic","Moroccan Arabic":"Afro-Asiatic",Mositacha:"Afro-Asiatic",Mubi:"Afro-Asiatic",Mukulu:"Afro-Asiatic",Nafusi:"Afro-Asiatic","Najdi Arabic":"Afro-Asiatic",Nyam:"Afro-Asiatic","Omani Arabic":"Afro-Asiatic","Pa’a":"Afro-Asiatic",Saba:"Afro-Asiatic",Saho:"Afro-Asiatic","Sanaani Arabic":"Afro-Asiatic",Seze:"Afro-Asiatic",Shehri:"Afro-Asiatic",Shekkacho:"Afro-Asiatic",Sheko:"Afro-Asiatic","Shihhi Arabic":"Afro-Asiatic",Siwi:"Afro-Asiatic",Sokoro:"Afro-Asiatic",Soqotri:"Afro-Asiatic","South Levantine Arabic":"Afro-Asiatic","Standard Arabic":"Afro-Asiatic","Sudanese Arabic":"Afro-Asiatic","Ta’izzi-Adeni Arabic":"Afro-Asiatic","Tahaggart Tamahaq":"Afro-Asiatic",Taznatit:"Afro-Asiatic",Tigré:"Afro-Asiatic",Toram:"Afro-Asiatic",Tsamai:"Afro-Asiatic",Tumzabt:"Afro-Asiatic",Tunni:"Afro-Asiatic",Waata:"Afro-Asiatic","West Central Oromo":"Afro-Asiatic",Xamtanga:"Afro-Asiatic",Zumbun:"Afro-Asiatic"},ic={aar:"Afro-Asiatic",abf:"Austronesian",abl:"Austronesian",abv:"Afro-Asiatic",acm:"Afro-Asiatic",acq:"Afro-Asiatic",acw:"Afro-Asiatic",acx:"Afro-Asiatic",adh:"Nilo-Saharan",adi:"Sino-Tibetan",adw:"Tupian",adx:"Sino-Tibetan",aen:"Sign Language",afb:"Afro-Asiatic",afg:"Sign Language",afr:"Indo-European",aft:"Nilo-Saharan",agx:"Nakh-Daghestanian",ahk:"Sino-Tibetan",aib:"Turkic",aih:"Kra-Dai",aio:"Kra-Dai",ajp:"Afro-Asiatic",aju:"Afro-Asiatic",aks:"Niger-Congo",akv:"Nakh-Daghestanian",alk:"Austro-Asiatic",alo:"Austronesian",alw:"Afro-Asiatic",amc:"Panoan",amh:"Afro-Asiatic",amr:"Harákmbut",amv:"Austronesian",ani:"Nakh-Daghestanian",anp:"Indo-European",anq:"Andamanese",aoc:"Cariban",apc:"Afro-Asiatic",apd:"Afro-Asiatic",arb:"Afro-Asiatic",arq:"Afro-Asiatic",arr:"Tupian",ars:"Afro-Asiatic",arv:"Afro-Asiatic",ary:"Afro-Asiatic",ase:"Sign Language",asl:"Austronesian",asm:"Indo-European",asn:"Tupian",asp:"Sign Language",atr:"Cariban",avd:"Indo-European",avl:"Afro-Asiatic",avv:"Tupian",awe:"Tupian",awt:"Tupian",ayh:"Afro-Asiatic",ayl:"Afro-Asiatic",ayn:"Afro-Asiatic",azb:"Turkic",bao:"Tucanoan",bbh:"Austro-Asiatic",bcc:"Indo-European",bcz:"Niger-Congo",bdg:"Austronesian",bdi:"Nilo-Saharan",bdj:"Niger-Congo",bdm:"Afro-Asiatic",bdo:"Nilo-Saharan",bee:"Sino-Tibetan",bej:"Afro-Asiatic",bem:"Niger-Congo",ben:"Indo-European",bfi:"Sign Language",bfu:"Sino-Tibetan",bfw:"Austro-Asiatic",bfy:"Indo-European",bgc:"Indo-European",bgg:"Sino-Tibetan",bgk:"Austro-Asiatic",bgl:"Austro-Asiatic",bgn:"Indo-European",bgp:"Indo-European",bgq:"Indo-European",bho:"Indo-European",bhu:"Indo-European",bid:"Afro-Asiatic",bjj:"Indo-European",bkk:"Indo-European",blf:"Austronesian",blm:"Nilo-Saharan",blo:"Niger-Congo",bls:"Austronesian",blt:"Kra-Dai",bly:"Niger-Congo",bma:"Niger-Congo",bmr:"Witotoan",bna:"Austronesian",bns:"Indo-European",bor:"Bororoan",bos:"Indo-European",bph:"Nakh-Daghestanian",bqg:"Niger-Congo",bqj:"Niger-Congo",bqk:"Niger-Congo",bqn:"Sign Language",bqx:"Niger-Congo",bra:"Indo-European",brb:"Austro-Asiatic",bro:"Sino-Tibetan",brx:"Sino-Tibetan",bsb:"Austronesian",bsg:"Indo-European",bsk:"Language isolate",bsy:"Austronesian",btd:"Austronesian",btf:"Afro-Asiatic",btv:"Indo-European",btx:"Austronesian",btz:"Austronesian",bub:"Niger-Congo",buh:"Hmong-Mien",bva:"Afro-Asiatic",bvf:"Afro-Asiatic",bvi:"Niger-Congo",bvo:"Niger-Congo",bwi:"Maipurean",bwn:"Hmong-Mien",bwx:"Hmong-Mien",bxr:"Mongolic",bxu:"Mongolic",bxw:"Niger-Congo",byn:"Afro-Asiatic",byo:"Sino-Tibetan",bze:"Niger-Congo",bzx:"Niger-Congo",cat:"Indo-European",cbb:"Maipurean",cbc:"Tucanoan",cbi:"Barbacoan",cbn:"Austro-Asiatic",cby:"Unclassified",cdh:"Indo-European",cdn:"Sino-Tibetan",cdz:"Austro-Asiatic",ceg:"Zamucoan",cgk:"Sino-Tibetan",che:"Nakh-Daghestanian",cib:"Niger-Congo",cji:"Nakh-Daghestanian",ckh:"Sino-Tibetan",ckq:"Afro-Asiatic",clk:"Sino-Tibetan",cmn:"Sino-Tibetan",cnq:"Niger-Congo",cnu:"Afro-Asiatic",coa:"Creole",cog:"Austro-Asiatic",cpu:"Maipurean",cqd:"Hmong-Mien",csf:"Sign Language",csx:"Sign language",cub:"Tucanoan",cui:"Guajiboan",cuu:"Kra-Dai",daa:"Afro-Asiatic",daj:"Nilo-Saharan",dar:"Nakh-Daghestanian",dau:"Nilo-Saharan",dba:"Language isolate",dbb:"Afro-Asiatic",dbp:"Afro-Asiatic",dbr:"Afro-Asiatic",ddn:"Nilo-Saharan",deg:"Niger-Congo",dek:"Niger-Congo",des:"Tucanoan",dgo:"Indo-European",dgs:"Niger-Congo",dhd:"Indo-European",dhi:"Sino-Tibetan",dhm:"Niger-Congo",dil:"Nilo-Saharan",diu:"Niger-Congo",div:"Indo-European",djc:"Nilo-Saharan",dkg:"Niger-Congo",dln:"Sino-Tibetan",dml:"Indo-European",dms:"Austronesian",dnu:"Austro-Asiatic",doc:"Kra-Dai",dok:"Austronesian",dox:"Afro-Asiatic",dru:"Austronesian",dse:"Sign Language",dsh:"Afro-Asiatic",dsl:"Sign Language",dsq:"Nilo-Saharan",dta:"Mongolic",dtp:"Austronesian",dyu:"Niger-Congo",dzg:"Nilo-Saharan",dzl:"Sino-Tibetan",eng:"Indo-European",enn:"Niger-Congo",epi:"Niger-Congo",ers:"Sino-Tibetan",esl:"Sign Language",evn:"Tungusic",fin:"Uralic",fni:"Niger-Congo",fod:"Niger-Congo",fra:"Indo-European",fsl:"Sign Language",fub:"Niger-Congo",fuc:"Niger-Congo",fuf:"Niger-Congo",fuj:"Niger-Congo",fvr:"Nilo-Saharan",fwe:"Niger-Congo",gax:"Afro-Asiatic",gaz:"Afro-Asiatic",gbk:"Indo-European",gbm:"Indo-European",gbn:"Nilo-Saharan",gdq:"Afro-Asiatic",gea:"Afro-Asiatic",ges:"Austronesian",gex:"Afro-Asiatic",ghl:"Nilo-Saharan",giq:"Kra-Dai",giw:"Kra-Dai",gju:"Indo-European",glc:"Niger-Congo",goe:"Sino-Tibetan",gow:"Afro-Asiatic",gqu:"Kra-Dai",grr:"Afro-Asiatic",gsg:"Sign Language",gss:"Sign Language",guj:"Indo-European",gus:"Sign Language",gvp:"Jean",gwb:"Niger-Congo",gwc:"Indo-European",gwd:"Afro-Asiatic",gwf:"Indo-European",gya:"Niger-Congo",gyo:"Sino-Tibetan",gzn:"Austronesian",hae:"Afro-Asiatic",hal:"Austro-Asiatic",hau:"Afro-Asiatic",hca:"Creole",hea:"Hmong-Mien",heb:"Afro-Asiatic",her:"Niger-Congo",hik:"Austronesian",hin:"Indo-European",hks:"Sign Language",hlb:"Indo-European",hld:"Austro-Asiatic",hmb:"Nilo-Saharan",hmh:"Hmong-Mien",hml:"Hmong-Mien",hmm:"Hmong-Mien",hne:"Indo-European",hni:"Sino-Tibetan",hnu:"Austro-Asiatic",hoh:"Afro-Asiatic",hoj:"Indo-European",hoz:"Afro-Asiatic",hsn:"Sino-Tibetan",hss:"Afro-Asiatic",htu:"Austronesian",hug:"Harákmbut",huo:"Austro-Asiatic",iba:"Austronesian",ibr:"Niger-Congo",icl:"Sign Language",iii:"Sino-Tibetan",ind:"Austronesian",irr:"Austro-Asiatic",ise:"Sign Language",isk:"Indo-European",isr:"Sign Language",ium:"Hmong-Mien",jbn:"Afro-Asiatic",jeu:"Afro-Asiatic",jia:"Afro-Asiatic",jii:"Afro-Asiatic",jio:"Kra-Dai",jit:"Niger-Congo",jiu:"Sino-Tibetan",jle:"Niger-Congo",jls:"Sign Language",jmi:"Afro-Asiatic",jnl:"Sino-Tibetan",jos:"Sign Language",jpn:"Japonic",jup:"Puinavean",kaf:"Sino-Tibetan",kan:"Dravidian",kas:"Indo-European",kay:"Tupian",kaz:"Turkic",kbg:"Sino-Tibetan",kbo:"Nilo-Saharan",kbp:"Niger-Congo",kby:"Nilo-Saharan",kcf:"Niger-Congo",kcn:"Creole",kcp:"Nilo-Saharan",kcu:"Niger-Congo",kcy:"Nilo-Saharan",kcz:"Niger-Congo",kdh:"Niger-Congo",kdn:"Niger-Congo",kdt:"Austro-Asiatic",kdu:"Nilo-Saharan",kec:"Nilo-Saharan",kfa:"Dravidian",kfd:"Dravidian",kfe:"Dravidian",kfg:"Dravidian",kfm:"Indo-European",kfr:"Indo-European",kfs:"Indo-European",kfy:"Indo-European",kgn:"Indo-European",khb:"Kra-Dai",khf:"Austro-Asiatic",khv:"Nakh-Daghestanian",kia:"Niger-Congo",kib:"Niger-Congo",kie:"Nilo-Saharan",kil:"Afro-Asiatic",kir:"Turkic",kjc:"Austronesian",kjg:"Austro-Asiatic",kjk:"Austronesian",kke:"Niger-Congo",kkh:"Kra-Dai",kkn:"Austro-Asiatic",kko:"Nilo-Saharan",kks:"Afro-Asiatic",klf:"Nilo-Saharan",kmc:"Kra-Dai",kmq:"Nilo-Saharan",kmr:"Indo-European",kmz:"Turkic",knc:"Nilo-Saharan",knf:"Niger-Congo",knk:"Niger-Congo",knm:"Maipurean",knn:"Indo-European",kns:"Austro-Asiatic",knz:"Niger-Congo",kou:"Niger-Congo",kpa:"Afro-Asiatic",kpc:"Maipurean",kpj:"Karajá",kpt:"Nakh-Daghestanian",kqg:"Niger-Congo",kqm:"Niger-Congo",krn:"Niger-Congo",krs:"Nilo-Saharan",kth:"Nilo-Saharan",kuf:"Austro-Asiatic",kui:"Cariban",kuj:"Niger-Congo",kva:"Nakh-Daghestanian",kvf:"Afro-Asiatic",kvh:"Austronesian",kvp:"Austronesian",kwn:"Niger-Congo",kwv:"Nilo-Saharan",kxd:"Austronesian",kxh:"Afro-Asiatic",kxj:"Nilo-Saharan",kyi:"Austronesian",kyp:"Kra-Dai",kyw:"Indo-European",kzq:"Sino-Tibetan",lae:"Sino-Tibetan",lan:"Niger-Congo",lao:"Kra-Dai",laq:"Kra-Dai",lbj:"Sino-Tibetan",lbn:"Austro-Asiatic",lbo:"Austro-Asiatic",lbs:"Sign Language",lbt:"Kra-Dai",lcd:"Austronesian",lcq:"Austronesian",lgn:"Nilo-Saharan",lgs:"Sign Language",lha:"Kra-Dai",lhn:"Austronesian",lhp:"Sino-Tibetan",lic:"Kra-Dai",liq:"Afro-Asiatic",liu:"Nilo-Saharan",lkc:"Sino-Tibetan",lkh:"Sino-Tibetan",lki:"Indo-European",lkr:"Nilo-Saharan",lma:"Niger-Congo",loh:"Nilo-Saharan",lop:"Niger-Congo",lsd:"Afro-Asiatic",lso:"Sign Language",lss:"Indo-European",lsy:"Sign Language",luk:"Sino-Tibetan",lul:"Nilo-Saharan",mag:"Indo-European",mai:"Indo-European",mal:"Dravidian",mar:"Indo-European",mbd:"Austronesian",mbn:"Guajiboan",mcd:"Panoan",mdl:"Sign Language",mdy:"Afro-Asiatic",mei:"Nilo-Saharan",men:"Niger-Congo",mes:"Afro-Asiatic",mew:"Afro-Asiatic",mey:"Afro-Asiatic",mgb:"Nilo-Saharan",mgd:"Nilo-Saharan",mge:"Nilo-Saharan",mgh:"Niger-Congo",mhr:"Uralic",mhu:"Sino-Tibetan",mhw:"Niger-Congo",mjp:"Dravidian",mkg:"Kra-Dai",mmh:"Maipurean",mml:"Austro-Asiatic",mmy:"Afro-Asiatic",mne:"Nilo-Saharan",mni:"Sino-Tibetan",mnj:"Indo-European",mnk:"Niger-Congo",mnq:"Austro-Asiatic",mns:"Uralic",mot:"Chibchan",mou:"Afro-Asiatic",moy:"Afro-Asiatic",moz:"Afro-Asiatic",mpe:"Nilo-Saharan",mpz:"Sino-Tibetan",mqi:"Austronesian",mqn:"Austronesian",mra:"Austro-Asiatic",mrj:"Uralic",msc:"Niger-Congo",msv:"Afro-Asiatic",msw:"Niger-Congo",mtr:"Indo-European",mub:"Afro-Asiatic",mup:"Indo-European",muq:"Hmong-Mien",muv:"Dravidian",mvf:"Mongolic",mvu:"Nilo-Saharan",mvy:"Indo-European",mwn:"Niger-Congo",mxj:"Sino-Tibetan",myp:"Muran",myy:"Tucanoan",mzb:"Afro-Asiatic",mzy:"Sign Language",naq:"Khoe-Kwadi",nbt:"Sino-Tibetan",nbw:"Niger-Congo",ndg:"Niger-Congo",ndp:"Nilo-Saharan",ndt:"Niger-Congo",neb:"Niger-Congo",neh:"Sino-Tibetan",nev:"Austro-Asiatic",ngt:"Austro-Asiatic",njl:"Nilo-Saharan",nkd:"Sino-Tibetan",nld:"Indo-European",nmd:"Niger-Congo",nmi:"Afro-Asiatic",nml:"Niger-Congo",nmy:"Sino-Tibetan",nnj:"Nilo-Saharan",nod:"Kra-Dai",noe:"Indo-European",nos:"Sino-Tibetan",npb:"Sino-Tibetan",npi:"Indo-European",nrb:"Nilo-Saharan",nru:"Sino-Tibetan",nsl:"Sign Language",nuo:"Austro-Asiatic",nus:"Nilo-Saharan",nwm:"Nilo-Saharan",nxq:"Sino-Tibetan",nye:"Niger-Congo",nyn:"Niger-Congo",nyr:"Niger-Congo",nyw:"Kra-Dai",nzs:"Sign Language",okn:"Japonic",ole:"Sino-Tibetan",oog:"Austro-Asiatic",oon:"Andamanese",opa:"Niger-Congo",ort:"Indo-European",ory:"Indo-European",ost:"Niger-Congo",oyb:"Austro-Asiatic",oym:"Tupian",pac:"Austro-Asiatic",pah:"Tupian",pbp:"Niger-Congo",peh:"Mongolic",pes:"Indo-European",pga:"Creole",pgg:"Indo-European",pgz:"Sign language",pha:"Hmong-Mien",phh:"Sino-Tibetan",phj:"Sino-Tibetan",phk:"Kra-Dai",phl:"Indo-European",pho:"Sino-Tibetan",phq:"Sino-Tibetan",phr:"Indo-European",pht:"Kra-Dai",pil:"Niger-Congo",pir:"Tucanoan",pkb:"Niger-Congo",pks:"Sign Language",pkt:"Austro-Asiatic",pll:"Austro-Asiatic",pnq:"Niger-Congo",pnx:"Austro-Asiatic",por:"Indo-European",prc:"Indo-European",prs:"Indo-European",prt:"Austro-Asiatic",psc:"Sign Language",pse:"Austronesian",pto:"Tupian",pum:"Sino-Tibetan",puo:"Austro-Asiatic",qae:"Sign Language",qao:"Sign Language",qbh:"Sign Language",qbj:"Sign Language",qbn:"Sign Language",qbt:"Sign Language",qcd:"Sign Language",qcm:"Sign Language",qcy:"Sign Language",qer:"Sign Language",qfa:"Sign Language",qfj:"Sign Language",qga:"Sign Language",qge:"Sign Language",qgm:"Sign Language",qiq:"Sign Language",qki:"Sign Language",qkm:"Sign Language",qkp:"Sign Language",qkw:"Sign Language",qmv:"Sign Language",qnh:"Sign Language",qns:"Sign Language",qom:"Sign Language",qqa:"Sign Language",qry:"Sign Language",qsm:"Sign Language",qso:"Sign Language",qsr:"Sign Language",qsz:"Sign Language",qtp:"Sign Language",qvz:"Quechuan",ras:"Niger-Congo",rbb:"Austro-Asiatic",ren:"Austro-Asiatic",rji:"Sino-Tibetan",rmt:"Indo-European",rmy:"Indo-European",rob:"Austronesian",rsl:"Sign Language",rui:"Niger-Congo",rus:"Indo-European",rwm:"Niger-Congo",rwr:"Indo-European",rys:"Japonic",saa:"Afro-Asiatic",sbf:"Unclassified",sbj:"Nilo-Saharan",sbs:"Niger-Congo",scb:"Austro-Asiatic",sck:"Indo-European",scl:"Indo-European",sdb:"Indo-European",sdg:"Indo-European",sdl:"Sign Language",sdp:"Sino-Tibetan",seq:"Niger-Congo",sgh:"Indo-European",sgy:"Indo-European",she:"Afro-Asiatic",shm:"Indo-European",shn:"Kra-Dai",sho:"Niger-Congo",shp:"Panoan",shu:"Afro-Asiatic",shv:"Afro-Asiatic",shz:"Niger-Congo",siy:"Indo-European",siz:"Afro-Asiatic",sjg:"Nilo-Saharan",sjo:"Tungusic",skq:"Niger-Congo",sle:"Dravidian",slt:"Sino-Tibetan",sml:"Austronesian",smy:"Indo-European",snd:"Indo-European",snn:"Tucanoan",soj:"Indo-European",sok:"Afro-Asiatic",soy:"Niger-Congo",spa:"Indo-European",spu:"Austro-Asiatic",sqk:"Sign Language",sqq:"Austro-Asiatic",sqs:"Sign Language",sqt:"Afro-Asiatic",srh:"Indo-European",sri:"Tucanoan",srp:"Indo-European",ssh:"Afro-Asiatic",ssn:"Afro-Asiatic",sss:"Austro-Asiatic",ssy:"Afro-Asiatic",std:"Andamanese",sts:"Indo-European",suq:"Nilo-Saharan",suv:"Sino-Tibetan",suy:"Jean",suz:"Sino-Tibetan",swh:"Niger-Congo",swi:"Kra-Dai",swl:"Sign Language",swv:"Indo-European",swx:"Arauan",sxg:"Sino-Tibetan",sze:"Afro-Asiatic",szn:"Austronesian",szs:"Sign Language",tag:"Niger-Congo",tam:"Dravidian",taz:"Niger-Congo",tbm:"Niger-Congo",tbn:"Chibchan",tbr:"Nilo-Saharan",tct:"Kra-Dai",tcy:"Dravidian",tda:"Mixed language",tdb:"Indo-European",tdd:"Kra-Dai",tdf:"Austro-Asiatic",tdj:"Austronesian",tel:"Dravidian",teq:"Nilo-Saharan",tgf:"Sino-Tibetan",tgk:"Indo-European",tgr:"Austro-Asiatic",thk:"Niger-Congo",thm:"Austro-Asiatic",thu:"Nilo-Saharan",thv:"Afro-Asiatic",tig:"Afro-Asiatic",tin:"Nakh-Daghestanian",tiz:"Kra-Dai",tkn:"Japonic",tlq:"Austro-Asiatic",tly:"Indo-European",tma:"Nilo-Saharan",tnb:"Chibchan",toi:"Niger-Congo",toq:"Nilo-Saharan",tou:"Austro-Asiatic",tqq:"Afro-Asiatic",tri:"Cariban",trj:"Afro-Asiatic",tsb:"Afro-Asiatic",tsc:"Niger-Congo",tsj:"Sino-Tibetan",tsk:"Sino-Tibetan",tsl:"Kra-Dai",tsm:"Sign Language",ttg:"Austronesian",tth:"Austro-Asiatic",ttl:"Niger-Congo",tts:"Kra-Dai",tue:"Tucanoan",tum:"Niger-Congo",tuo:"Tucanoan",tur:"Turkic",twm:"Sino-Tibetan",txi:"Cariban",txm:"Austronesian",tyh:"Austro-Asiatic",tyj:"Kra-Dai",tyr:"Kra-Dai",tyv:"Turkic",tyy:"Niger-Congo",tzm:"Afro-Asiatic",uan:"Kra-Dai",udj:"Austronesian",une:"Niger-Congo",unk:"Maipurean",urd:"Indo-European",urp:"Tupian",urz:"Tupian",ush:"Indo-European",usi:"Sino-Tibetan",uuu:"Austro-Asiatic",uzn:"Turkic",vai:"Niger-Congo",vgr:"Indo-European",vie:"Austro-Asiatic",vkj:"Unclassified",vkn:"Niger-Congo",vkz:"Niger-Congo",vmk:"Niger-Congo",vut:"Niger-Congo",wau:"Maipurean",waw:"Cariban",wbj:"Afro-Asiatic",wbl:"Indo-European",wbr:"Indo-European",wlc:"Niger-Congo",wll:"Nilo-Saharan",wmd:"Nambikwara",wmg:"Sino-Tibetan",wne:"Indo-European",wni:"Niger-Congo",wol:"Niger-Congo",wrn:"Niger-Congo",wti:"Nilo-Saharan",wuh:"Mixed language",wwa:"Niger-Congo",xal:"Mongolic",xan:"Afro-Asiatic",xdq:"Nakh-Daghestanian",xhv:"Austro-Asiatic",xka:"Indo-European",xkz:"Sino-Tibetan",xma:"Niger-Congo",xmj:"Afro-Asiatic",xmo:"Tupian",xms:"Sign Language",xnr:"Indo-European",xns:"Sino-Tibetan",xom:"Nilo-Saharan",xor:"Panoan",xsm:"Niger-Congo",xsr:"Sino-Tibetan",xwg:"Nilo-Saharan",yaa:"Panoan",yad:"Yaguan",yao:"Niger-Congo",yax:"Niger-Congo",ybh:"Sino-Tibetan",ycl:"Sino-Tibetan",ydd:"Indo-European",ydg:"Indo-European",yea:"Dravidian",yhd:"Afro-Asiatic",yig:"Sino-Tibetan",yix:"Sino-Tibetan",ymm:"Afro-Asiatic",ymx:"Sino-Tibetan",yne:"Sino-Tibetan",yno:"Kra-Dai",yom:"Niger-Congo",yox:"Japonic",yoy:"Kra-Dai",yrn:"Kra-Dai",ysl:"Sign Language",ysm:"Sign language",ysn:"Sino-Tibetan",yue:"Sino-Tibetan",yul:"Nilo-Saharan",yup:"Cariban",ywn:"Panoan",ywt:"Sino-Tibetan",zag:"Nilo-Saharan",zgn:"Kra-Dai",zhd:"Kra-Dai",ziw:"Niger-Congo",zkr:"Sino-Tibetan",zlm:"Austronesian",zna:"Niger-Congo",zne:"Niger-Congo",zng:"Austro-Asiatic",zqe:"Kra-Dai",zum:"Indo-European",zyg:"Kra-Dai"},bs="languageFamily",lb="#000000",Jt={"Indo-European":"#e74c3c",Dravidian:"#ff9800","Afro-Asiatic":"#27ae60","Sino-Tibetan":"#3498db","Niger-Congo":"#9b59b6",Unclassified:"#95a5a6","Nilo-Saharan":"#e91e63","Khoe-Kwadi":"#00bcd4","Austro-Asiatic":"#00bcd4","Kra-Dai":"#8e44ad",Austronesian:"#ff69b4","Hmong-Mien":"#f44336",Turkic:"#ffc107","Nakh-Daghestanian":"#009688",Mongolic:"#795548",Uralic:"#607d8b",Tungusic:"#4caf50",Japonic:"#ff5722",Cariban:"#673ab7",Tupian:"#03a9f4",Tucanoan:"#8bc34a",Maipurean:"#ffc107",Panoan:"#cddc39",Guajiboan:"#9e9e9e",Chibchan:"#ff7043",Quechuan:"#ab47bc",Jean:"#26a69a",Harákmbut:"#7e57c2",Nambikwara:"#42a5f5",Muran:"#66bb6a",Karajá:"#ffa726",Bororoan:"#ef5350",Arauan:"#5c6bc0",Yanomaman:"#26c6da",Yaguan:"#d4e157",Witotoan:"#78909c",Zamucoan:"#8d6e63",Puinavean:"#aed581",Barbacoan:"#4db6ac","Eyak-Athabaskan":"#7986cb","Trans-New Guinea":"#ba68c8",Andamanese:"#4dd0e1","Atlantic-Congo":"#7D3C98",Mande:"#B9770E","Sign Language":"#212121",Creole:"#9575cd","Mixed language":"#a1887f","Language isolate":"#90a4ae",Unknown:"#000000"},cb=Jt;function ys(e){return Jt[e]||lb}const ub=(()=>{const e=n=>String(n||"").toLowerCase().trim(),t={};for(const n of Object.keys(Jt))t[e(n)]=n;return t})(),gb={"tai-kadai":"Kra-Dai",none:"Unknown"};function _s(e){if(!e)return"Unknown";const t=String(e).trim(),n=t.toLowerCase();return gb[n]||ub[n]||t}function lc(e){var t;return ys(e.languageFamily||((t=e._normalized)==null?void 0:t.languageFamily))}function As(){const e=["match",["get",bs]];return Object.entries(Jt).forEach(([t,n])=>{e.push(t,n)}),e.push("#95a5a6"),e}const cc=As,db=Object.freeze(Object.defineProperty({__proto__:null,LANGUAGE_FAMILY_COLORS:cb,PALETTE:Jt,PROPERTY_KEY:bs,applyColor:As,buildColorExpression:cc,canonicalFamilyName:_s,default:{name:"Language Family",propertyKey:bs,palette:Jt,colors:Jt,getColor:lc,applyColor:As,buildColorExpression:cc,getLanguageFamilyColor:ys,canonicalFamilyName:_s},defaultFamilyColor:"#95a5a6",getColor:lc,getLanguageFamilyColor:ys,languageFamilyColors:Jt},Symbol.toStringTag,{value:"Module"})),uc="adoptionStatus",Dt={notAdopted:"#f03b2d",hasAdoption:"#22c55e"},pb=Dt,Ss={notAdopted:"Needs Adoption",hasAdopted:"Has Adoption"},fb=Ss;function gc(e){var o;const t=e.adoptionStatus??((o=e._raw)==null?void 0:o.adopted_by_churches);return t===!0||t===1||typeof t=="number"&&t>0||typeof t=="object"&&(t==null?void 0:t.value)?Dt.hasAdoption:Dt.notAdopted}function vs({colorSource:e="properties"}={}){const t=e==="feature-state"?["feature-state","adoptionStatus"]:["get","adoptionStatus"];return["case",["==",t,!0],Dt.hasAdoption,["==",t,1],Dt.hasAdoption,Dt.notAdopted]}const dc=vs,hb=Object.freeze(Object.defineProperty({__proto__:null,ADOPTION_COLORS:pb,ADOPTION_LABELS:fb,LABELS:Ss,PALETTE:Dt,PROPERTY_KEY:uc,applyColor:vs,buildColorExpression:dc,default:{name:"Adoption Progress",propertyKey:uc,palette:Dt,colors:Dt,labels:Ss,getColor:gc,applyColor:vs,buildColorExpression:dc},getColor:gc},Symbol.toStringTag,{value:"Module"})),pc="engagementStatus",xt={notEngaged:"#f03b2d",hasEngagement:"#22c55e"},mb=xt,$s={notEngaged:"Unengaged",hasEngagement:"Engaged"},bb=$s;function fc(e){var o;const t=e.engagementStatus??((o=e._raw)==null?void 0:o.people_committed);return t===!0||t===1||typeof t=="number"&&t>0||typeof t=="object"&&(t==null?void 0:t.value)?xt.hasEngagement:xt.notEngaged}function ks({colorSource:e="properties"}={}){const t=e==="feature-state"?["feature-state","engagementStatus"]:["get","engagementStatus"];return["case",["==",t,!0],xt.hasEngagement,["==",t,1],xt.hasEngagement,xt.notEngaged]}const hc=ks,yb=Object.freeze(Object.defineProperty({__proto__:null,ENGAGEMENT_COLORS:mb,ENGAGEMENT_LABELS:bb,LABELS:$s,PALETTE:xt,PROPERTY_KEY:pc,applyColor:ks,buildColorExpression:hc,default:{name:"Engagement Progress",propertyKey:pc,palette:xt,colors:xt,labels:$s,getColor:fc,applyColor:ks,buildColorExpression:hc},getColor:fc},Symbol.toStringTag,{value:"Module"})),mc="peoplePraying",na=144,Xt={noPrayer:"#f03b2d",hasPrayer:"#f0c64a",fullPrayer:"#22c55e"},_b=Xt,Es={noPrayer:"Needs Prayer",hasPrayer:"Has Prayer",fullPrayer:"Has Full Prayer Coverage"},Ab=Es;function oa(e){var o;const t=(e==null?void 0:e.peoplePraying)??((o=e==null?void 0:e._raw)==null?void 0:o.people_praying)??null,n=Number(t)||0;return n>=na?"fullPrayer":n>0?"hasPrayer":"noPrayer"}function Ts(e){return Xt[oa(e)]}function bc(e){var n;const t=(e==null?void 0:e.peoplePraying)??((n=e==null?void 0:e._raw)==null?void 0:n.people_praying)??null;return t!==null&&t>0}function yc(e){return oa(e)==="fullPrayer"}function _c(e){return Ts(e)}function Cs({colorSource:e="properties"}={}){const t=e==="feature-state"?["feature-state","peoplePraying"]:["get","peoplePraying"];return["case",[">=",t,na],Xt.fullPrayer,[">",t,0],Xt.hasPrayer,Xt.noPrayer]}const Ac=Cs,Sb=Object.freeze(Object.defineProperty({__proto__:null,FULL_PRAYER_THRESHOLD:na,LABELS:Es,PALETTE:Xt,PRAYER_COLORS:_b,PRAYER_LABELS:Ab,PROPERTY_KEY:mc,applyColor:Cs,buildColorExpression:Ac,checkHasFullPrayer:yc,checkHasPrayer:bc,default:{name:"Prayer Progress",propertyKey:mc,palette:Xt,colors:Xt,labels:Es,threshold:na,getColor:_c,applyColor:Cs,buildColorExpression:Ac,getPrayerLevel:oa,getPrayerColor:Ts,checkHasPrayer:bc,checkHasFullPrayer:yc},getColor:_c,getPrayerColor:Ts,getPrayerLevel:oa},Symbol.toStringTag,{value:"Module"})),Sc="religion",Ns="#94a3b8",Ls={C:"Christianity",M:"Islam",H:"Hinduism",B:"Buddhism",E:"Ethnoreligion",J:"Judaism",S:"Sikhism",N:"Unaffiliated",O:"Other",U:"Unknown"},tt={C:"#3b82f6",M:"#ef4444",H:"#f59e0b",B:"#facc15",E:"#84cc16",J:"#a855f7",S:"#ec4899",N:"#71717a",O:"#ff6b2b",U:"#94a3b8"};function vc(e){if(!e||typeof e!="string")return"U";const t=e.charAt(0).toUpperCase();return Ls[t]?t:"U"}function $c(e){var n,o,a;const t=(e==null?void 0:e.religion)||((o=(n=e==null?void 0:e._raw)==null?void 0:n.religion)==null?void 0:o.value)||((a=e==null?void 0:e._raw)==null?void 0:a.religion);return tt[vc(t)]||Ns}function ws(){return["match",["slice",["coalesce",["get","religion"],""],0,1],"C",tt.C,"M",tt.M,"H",tt.H,"B",tt.B,"E",tt.E,"J",tt.J,"S",tt.S,"N",tt.N,"O",tt.O,Ns]}const kc=ws,vb=Object.freeze(Object.defineProperty({__proto__:null,PALETTE:tt,PROPERTY_KEY:Sc,RELIGION_FAMILIES:Ls,applyColor:ws,buildColorExpression:kc,default:{name:"Religion",propertyKey:Sc,palette:tt,families:Ls,getColor:$c,applyColor:ws,buildColorExpression:kc,fallback:Ns},getColor:$c,getReligionFamily:vc},Symbol.toStringTag,{value:"Module"})),Ec="region",Ps="#6d766e",Tc={africa:"Africa",asia:"Asia",europe:"Europe","latin_america_&_caribbean":"Latin America & Caribbean",middle_east:"Middle East","north_america_&_non-spanish_caribbean":"North America & Non-Spanish Caribbean",oceania:"Oceania"},ao={africa:"#2563eb",asia:"#d97706",europe:"#7c3aed","latin_america_&_caribbean":"#15803d",middle_east:"#dc2626","north_america_&_non-spanish_caribbean":"#0891b2",oceania:"#be185d"},Ms=Object.keys(ao);function Cc(e){var n,o,a;const t=(e==null?void 0:e.region)||((o=(n=e==null?void 0:e._raw)==null?void 0:n.wagf_region)==null?void 0:o.value)||((a=e==null?void 0:e._raw)==null?void 0:a.wagf_region);return ao[t]||Ps}function Is(){const e=["match",["coalesce",["get","region"],""]];for(const t of Ms)e.push(t,ao[t]);return e.push(Ps),e}const Nc=Is,$b=Object.assign({"./adoption.js":hb,"./engagement.js":yb,"./language-family.js":db,"./prayer-progress.js":Sb,"./religion.js":vb,"./wagf-region.js":Object.freeze(Object.defineProperty({__proto__:null,PALETTE:ao,PROPERTY_KEY:Ec,REGION_ORDER:Ms,WAGF_REGIONS:Tc,applyColor:Is,buildColorExpression:Nc,default:{name:"WAGF Region",propertyKey:Ec,palette:ao,regions:Tc,order:Ms,getColor:Cc,applyColor:Is,buildColorExpression:Nc,fallback:Ps},getColor:Cc},Symbol.toStringTag,{value:"Module"}))}),kb=e=>e.replace(/-([a-z0-9])/g,(t,n)=>n.toUpperCase()),Eb=e=>e.replace(/-/g,"_").toUpperCase(),Tb={...{STATUS:"status",CUSTOM:"custom"}};function Cb(e){for(const t of Object.keys(e).sort()){const n=t.split("/").pop().replace(/\.js$/,"");if(n.startsWith("_")||n.startsWith(".")||!e[t].default)continue;const a=kb(n);Tb[Eb(n)]=a}}Cb($b);function Rs(e){return e==null?"":typeof e=="object"?e.label||e.value||"":String(e)}const Nb=[[/ sign language$/i,"Sign Language"]];function Lb(e){var i,l;const t=Rs(e.languageFamily);if(t)return t;const n=String(((l=(i=e._raw)==null?void 0:i.primary_language)==null?void 0:l.value)||(e.language&&typeof e.language=="object"?e.language.value:"")||"").trim().toLowerCase();if(n&&ic[n])return ic[n];const o=Rs(e.language||e.primary_language);if(!o||typeof o!="string")return"";const a=o.trim(),s=a.split(",").map(c=>c.trim()).filter(Boolean);if(s.length>=2){const c=[...s].reverse().join(" ");if(Yt[c])return Yt[c];if(s.length>=3){const u=[s[1],s[0]].join(" ");if(Yt[u])return Yt[u]}}if(Yt[a])return Yt[a];const r=a.replace(/\s*\(.*?\)\s*$/,"").trim();if(r!==a&&Yt[r])return Yt[r];for(const[c,u]of Nb)if(c.test(a))return u;return""}function wb(e){const{mapId:t="unknown",dataSourceId:n="doxa-csv",dataSourceManager:o=null,dataStore:a=null,markRaw:s=L=>L}=e;o||console.error("useMapData: dataSourceManager is required!");const r=he(!1),i=he(null),l=he(!1),c=he([]),u=he([]),p=he(null),m=he([]),$=he([]),w=he([]),v=he(null);async function T(){if(!o)throw new Error("dataSourceManager is required for useMapData");r.value=!0,i.value=null;try{if(await o.init(),a&&a.hasSourceData&&a.hasSourceData(n)){const O=a.getSourceData(n);u.value=s(O.normalizedData||[])}else{const O=await o.setActiveSource(n);for(const j of O){const q=Rs(j.language||j.primary_language);q&&(j.language=q);const W=Lb(j);j.languageFamily=_s(W)}u.value=s(O),a&&a.cacheSourceData&&a.cacheSourceData(n,{normalizedData:O,timestamp:Date.now()})}c.value=s(ib(u.value.map(O=>({id:O.uniqueId,slug:O.slug||"",rop3:O.peopleGroupId,peopleId3:O.peopleId3,name:O.name,language:O.language,languageFamily:O.languageFamily,country:O.country,population:O.population,status:O.engagementStatus||O.status,latitude:O.latitude,longitude:O.longitude,lng:O.longitude,lat:O.latitude,description:O.description,imageUrl:O.imageUrl,doxaRegion:O.doxaRegion||O.wagfRegion||"",peoplePraying:O.peoplePraying??null,_normalized:O}))));const L=o.getDataByLanguageFamily();m.value=Object.entries(L).map(([O,j])=>{const q=j.reduce((W,X)=>{const ge=parseInt(X.population)||0;return W+ge},0);return{name:O,count:j.length,peopleGroupCount:j.length,population:q,groups:j}}).sort((O,j)=>j.count-O.count);const F=o.getDataByRegion();$.value=Object.entries(F).map(([O,j])=>{const q=j.reduce((W,X)=>{const ge=parseInt(X.population)||0;return W+ge},0);return{name:O,count:j.length,peopleGroupCount:j.length,population:q,groups:j}}).sort((O,j)=>O.name.localeCompare(j.name));const S={bible:{count:0,population:0,groups:[]},jesusFilm:{count:0,population:0,groups:[]},radio:{count:0,population:0,groups:[]},gospel:{count:0,population:0,groups:[]},audio:{count:0,population:0,groups:[]},stories:{count:0,population:0,groups:[]},hasResources:{count:0,population:0,groups:[]},noResources:{count:0,population:0,groups:[]}};u.value.forEach(O=>{const j=parseInt(O.population)||0;let q=!1;O.bible==="Available"&&(S.bible.count++,S.bible.population+=j,S.bible.groups.push(O),q=!0),O.jesusFilm==="Available"&&(S.jesusFilm.count++,S.jesusFilm.population+=j,S.jesusFilm.groups.push(O),q=!0),O.radio==="Available"&&(S.radio.count++,S.radio.population+=j,S.radio.groups.push(O),q=!0),O.gospel==="Available"&&(S.gospel.count++,S.gospel.population+=j,S.gospel.groups.push(O),q=!0),O.audio==="Available"&&(S.audio.count++,S.audio.population+=j,S.audio.groups.push(O),q=!0),O.stories==="Available"&&(S.stories.count++,S.stories.population+=j,S.stories.groups.push(O),q=!0),q?(S.hasResources.count++,S.hasResources.population+=j,S.hasResources.groups.push(O)):(S.noResources.count++,S.noResources.population+=j,S.noResources.groups.push(O))});const V=u.value.length,ae=u.value.reduce((O,j)=>O+(parseInt(j.population)||0),0),z={bible:"Bible",jesusFilm:"Jesus Film",radio:"Radio",gospel:"Gospel",audio:"Audio",stories:"Stories",hasResources:"Has Resources",noResources:"No Resources"},ee={bible:{count:V-S.bible.count,population:ae-S.bible.population},jesusFilm:{count:V-S.jesusFilm.count,population:ae-S.jesusFilm.population},radio:{count:V-S.radio.count,population:ae-S.radio.population},gospel:{count:V-S.gospel.count,population:ae-S.gospel.population},audio:{count:V-S.audio.count,population:ae-S.audio.population},stories:{count:V-S.stories.count,population:ae-S.stories.population}},Y="#2c3e50";return w.value=[{name:z.bible,key:"bible",count:S.bible.count,population:S.bible.population,isParent:!0,children:[{name:"No Bible",key:"noBible",count:ee.bible.count,population:ee.bible.population,color:Y}]},{name:z.jesusFilm,key:"jesusFilm",count:S.jesusFilm.count,population:S.jesusFilm.population,isParent:!0,children:[{name:"No Jesus Film",key:"noJesusFilm",count:ee.jesusFilm.count,population:ee.jesusFilm.population,color:Y}]},{name:z.radio,key:"radio",count:S.radio.count,population:S.radio.population,isParent:!0,children:[{name:"No Radio",key:"noRadio",count:ee.radio.count,population:ee.radio.population,color:Y}]},{name:z.gospel,key:"gospel",count:S.gospel.count,population:S.gospel.population,isParent:!0,children:[{name:"No Gospel",key:"noGospel",count:ee.gospel.count,population:ee.gospel.population,color:Y}]},{name:z.audio,key:"audio",count:S.audio.count,population:S.audio.population,isParent:!0,children:[{name:"No Audio",key:"noAudio",count:ee.audio.count,population:ee.audio.population,color:Y}]},{name:z.stories,key:"stories",count:S.stories.count,population:S.stories.population,isParent:!0,children:[{name:"No Stories",key:"noStories",count:ee.stories.count,population:ee.stories.population,color:Y}]},{name:z.hasResources,key:"hasResources",count:S.hasResources.count,population:S.hasResources.population,isParent:!0,children:[{name:z.noResources,key:"noResources",count:S.noResources.count,population:S.noResources.population,color:Y}]}],v.value=o.getStats(),l.value=!0,{peopleGroups:c.value,normalizedPeopleGroups:u.value,languageFamiliesData:m.value,doxaRegionsData:$.value,resourcesData:w.value,stats:v.value}}catch(L){throw console.error(`Failed to load data for map "${t}":`,L),i.value=L.message||"Failed to load data",L}finally{r.value=!1}}async function P(){var L,F,S;try{const V={},ae=u.value||[];for(const z of ae){const ee=z.countryIso||((F=(L=z._raw)==null?void 0:L.country_code)==null?void 0:F.value)||"",Y=(S=z._raw)==null?void 0:S.wagf_region,O=z.doxaRegion||z.wagfRegion||(Y&&typeof Y=="object"?Y.value:"")||"";ee&&O&&!V[ee]&&(V[ee]=O)}return p.value={isoToRegion:V},p.value}catch(V){throw console.error(`Error building regions data for map "${t}":`,V),i.value=V.message||"Failed to build regions",V}}function k(){return o?o.getDataByLanguageFamily():{}}function y(){return o?o.getDataByRegion():{}}function b(L){return k()[L]||[]}function C(L){return y()[L]||[]}function A(){c.value=[],u.value=[],p.value=null,m.value=[],$.value=[],w.value=[],v.value=null,l.value=!1,i.value=null}return{isLoading:r,isInitialized:l,error:i,peopleGroups:c,normalizedPeopleGroups:u,regionsData:p,languageFamiliesData:m,doxaRegionsData:$,resourcesData:w,stats:v,loadData:T,loadRegionsData:P,getDataByLanguageFamily:k,getDataByRegion:y,getPeopleGroupsByFamily:b,getPeopleGroupsByRegion:C,clearData:A}}const Fs={};function Pb(){return typeof window<"u"&&window.MAP_APP_API_URL||typeof{url:aa&&aa.tagName.toUpperCase()==="SCRIPT"&&aa.src||new URL("all-people-groups.js",document.baseURI).href}<"u"&&(Fs==null?void 0:Fs.VITE_API_BASE_URL)||""}class Lc{constructor(t={}){this.sourcesConfig=null,this.activeSource=null,this.rawData=[],this.normalizedData=[],this.dataByUniqueId=new Map,this.baseUrl=typeof window<"u"&&window.MAP_APP_BASE_URL||"./",this.locale=t.locale||null,this.cache=new Map,this.cacheEnabled=!0,this.cacheTTL=5*60*1e3}async init(){return this.sourcesConfig=Ql,this.sourcesConfig}getActiveSourceId(){var t;return((t=this.sourcesConfig)==null?void 0:t.activeSource)||"doxa-csv"}getSourceConfig(t){var n,o;return(o=(n=this.sourcesConfig)==null?void 0:n.sources)==null?void 0:o[t]}async setActiveSource(t){const n=this.getSourceConfig(t);if(!n)throw new Error(`Source not found: ${t}`);if(this.activeSource=n,this.cacheEnabled&&this.cache.has(t)){const o=this.cache.get(t);return this.normalizedData=o.normalizedData,this.dataByUniqueId=o.dataByUniqueId,this.normalizedData}return n.type==="csv"?await this.loadCSVData(n):n.type==="api"?await this.loadAPIData(n):n.type==="rest-api"&&await this.loadRestApiData(n),this.cacheEnabled&&this.cache.set(t,{normalizedData:this.normalizedData,dataByUniqueId:this.dataByUniqueId,timestamp:Date.now()}),this.normalizedData}clearCache(t=null){t?this.cache.delete(t):this.cache.clear()}isCached(t){return this.cache.has(t)}async loadActiveSource(){return this.sourcesConfig||await this.init(),this.setActiveSource(this.getActiveSourceId())}parseCSV(t){const n=[],o=[];let a="",s=!1,r=[],i=!0;for(let l=0;l0){if(i.push(a.trim()),a="",r)o.push(...i),r=!1;else if(i.length>1){const f={};o.forEach((m,k)=>{f[m]=i[k]||""}),n.push(f)}i=[]}}else a+=c}if((a||i.length>0)&&(i.push(a.trim()),!r&&i.length>1)){const l={};o.forEach((c,u)=>{l[c]=i[u]||""}),n.push(l)}return{headers:o,data:n}}async loadCSVData(t){try{const o=await(await fetch(this.baseUrl+t.path)).text(),{headers:a,data:s}=this.parseCSV(o);return this.rawData=s,this.validateFieldMappings(t.fieldMappings,a,t.name),this.normalizeData(t),this.normalizedData}catch(n){throw console.error("Failed to load CSV data:",n),n}}validateFieldMappings(t,n,o){const a=new Set(n.map(i=>i.trim())),s=[];for(const[i,r]of Object.entries(t||{}))if(Array.isArray(r))for(const l of r)a.has(l)||s.push({systemField:i,sourceField:l,isComposite:!0});else r&&!a.has(r)&&s.push({systemField:i,sourceField:r,isComposite:!1});s.length>0&&console.warn(`[DataSourceManager] ${o}: missing CSV columns:`,s)}async loadAPIData(t){try{const o=await(await fetch(t.url||t.endpoint)).json();return this.rawData=Array.isArray(o)?o:o.posts||o.data||o.peopleGroups||o.results||[],this.normalizeData(t),this.normalizedData}catch(n){throw console.error("Failed to load API data:",n),n}}async loadRestApiData(t){var l,c;const n=kb(),o=((l=t.endpoints)==null?void 0:l.bulk)||"/api/people-groups/list",a=((c=t.defaultFields)==null?void 0:c.join(","))||"",s=[];a&&s.push(`fields=${a}`);const i={...t.queryParams||{}};this.locale&&(i.lang=this.locale);for(const[u,f]of Object.entries(i))s.push(`${u}=${encodeURIComponent(f)}`);const r=`${n}${o}?${s.join("&")}`;try{const u=await fetch(r);if(!u.ok)throw new Error(`HTTP ${u.status}: ${u.statusText}`);const f=u.headers.get("content-type")||"";if(!f.includes("application/json"))throw new Error(`API returned "${f}" instead of JSON. Server at ${n} may be down or misconfigured.`);const m=await u.json();return this.rawData=Array.isArray(m)?m:m.posts||m.data||m.results||[],this.normalizeData(t),this.normalizedData}catch(u){throw console.error(`[rest-api] Failed to load from ${t.id}:`,u),u}}normalizeData(t){const n=t.fieldMappings||{};this.normalizedData=[],this.dataByUniqueId=new Map;for(const o of this.rawData){const a={};for(const[l,c]of Object.entries(n))if(Array.isArray(c)){const u=c.map(f=>this.getFieldValue(o,f));a[l]=u.join("_")}else a[l]=this.getFieldValue(o,c);if(a.latitude=parseFloat(a.latitude)||0,a.longitude=parseFloat(a.longitude)||0,a.latitude===0&&a.longitude===0)continue;a.populationNum=this.parsePopulation(a.population),a.imageUrl=this.getImageUrl(a,t.imageConfig);const s=a.engagementStatus;s!=null&&(typeof s=="object"&&"value"in s?(a.engagementStatusLabel=s.label||s.value,a.engagementStatus=s.value==="engaged"):a.engagementStatus=s===!0||s===1||s==="1"||s==="true"||typeof s=="number"&&s>0||typeof s=="string"&&parseInt(s,10)>0);const i=a.adoptionStatus;i!=null&&(a.adoptionStatus=i===!0||i===1||i==="1"||i==="true"||typeof i=="object"&&!!(i!=null&&i.value)||typeof i=="number"&&i>0||typeof i=="string"&&parseInt(i,10)>0);const r=["doxaRegion","wagfRegion","wagfBlock","wagfMember","affinityBlock","cluster","peopleGroup","countryIso","religion","religionCode"];for(const l of r){const c=a[l];c!=null&&typeof c=="object"&&"value"in c?(a[l+"Label"]=c.label||c.value,a[l]=c.value):c!=null&&typeof c=="string"&&c!==""&&(a[l+"Label"]||(a[l+"Label"]=c))}a.countryName=a.countryIsoLabel||a.country||a.countryIso||"",a.religionName=a.religionLabel||a.religion||"",a._raw=o,this.normalizedData.push(a),this.dataByUniqueId.set(a.uniqueId,a)}this.rawData=null}getFieldValue(t,n){if(!n)return"";if(t[n]!==void 0)return t[n];const o=n.trim();if(t[o]!==void 0)return t[o];for(const a of Object.keys(t))if(a.trim()===o||a.includes(o)||o.includes(a.trim()))return t[a];return""}parsePopulation(t){if(!t)return 0;const n=String(t).replace(/,/g,"").trim(),o=parseInt(n,10);return isNaN(o)?0:o}getImageUrl(t,n){if(!n)return"";const o=n.placeholderUrl||"",a=t[n.useField];return a&&String(a).trim()&&!String(a).includes("NoImageAvailable")?a:o}getData(){return this.normalizedData}getByUniqueId(t){return this.dataByUniqueId.get(t)}getByCoordinates(t,n,o=1e-4){return this.normalizedData.find(a=>Math.abs(a.latitude-t)n.peopleGroupId===t)}getLanguageFamilies(){const t=new Set;return this.normalizedData.forEach(n=>{n.languageFamily&&t.add(n.languageFamily)}),Array.from(t).sort()}getDataByLanguageFamily(){const t={};return this.normalizedData.forEach(n=>{const o=n.languageFamily||"Unknown";t[o]||(t[o]=[]),t[o].push(n)}),t}getDataByRegion(){const t={};return this.normalizedData.forEach(n=>{const o=n.doxaRegion||"Unknown";t[o]||(t[o]=[]),t[o].push(n)}),t}getStats(){return{totalRecords:this.normalizedData.length,withPeopleId3:this.normalizedData.filter(t=>t.peopleId3).length,withPhotos:this.normalizedData.filter(t=>t.imageUrl&&!String(t.imageUrl).includes("NoImageAvailable")).length,languageFamilies:this.getLanguageFamilies().length,countries:new Set(this.normalizedData.map(t=>t.country)).size,regions:Object.keys(this.getDataByRegion()).length}}}new wc;const Tb={class:"apg-root"},Eb={key:0,class:"apg-loading"},$b={key:1,class:"apg-error"},Lb={key:2,class:"apg-legend"},Cb={class:"apg-legend-sub"},wb=["onClick"],Nb={class:"apg-count"},Pb=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"all-people-groups",setup(e){var ee;Zl(` +`&&l++,a||r.length>0){if(r.push(a.trim()),a="",i)o.push(...r),i=!1;else if(r.length>1){const p={};o.forEach((m,$)=>{p[m]=r[$]||""}),n.push(p)}r=[]}}else a+=c}if((a||r.length>0)&&(r.push(a.trim()),!i&&r.length>1)){const l={};o.forEach((c,u)=>{l[c]=r[u]||""}),n.push(l)}return{headers:o,data:n}}async loadCSVData(t){try{const o=await(await fetch(this.baseUrl+t.path)).text(),{headers:a,data:s}=this.parseCSV(o);return this.rawData=s,this.validateFieldMappings(t.fieldMappings,a,t.name),this.normalizeData(t),this.normalizedData}catch(n){throw console.error("Failed to load CSV data:",n),n}}validateFieldMappings(t,n,o){const a=new Set(n.map(r=>r.trim())),s=[];for(const[r,i]of Object.entries(t||{}))if(Array.isArray(i))for(const l of i)a.has(l)||s.push({systemField:r,sourceField:l,isComposite:!0});else i&&!a.has(i)&&s.push({systemField:r,sourceField:i,isComposite:!1});s.length>0&&console.warn(`[DataSourceManager] ${o}: missing CSV columns:`,s)}async loadAPIData(t){try{const o=await(await fetch(t.url||t.endpoint)).json();return this.rawData=Array.isArray(o)?o:o.posts||o.data||o.peopleGroups||o.results||[],this.normalizeData(t),this.normalizedData}catch(n){throw console.error("Failed to load API data:",n),n}}async loadRestApiData(t){var l,c;const n=Pb(),o=((l=t.endpoints)==null?void 0:l.bulk)||"/api/people-groups/list",a=((c=t.defaultFields)==null?void 0:c.join(","))||"",s=[];a&&s.push(`fields=${a}`);const r={...t.queryParams||{}};this.locale&&(r.lang=this.locale);for(const[u,p]of Object.entries(r))s.push(`${u}=${encodeURIComponent(p)}`);const i=`${n}${o}?${s.join("&")}`;try{const u=await fetch(i);if(!u.ok)throw new Error(`HTTP ${u.status}: ${u.statusText}`);const p=u.headers.get("content-type")||"";if(!p.includes("application/json"))throw new Error(`API returned "${p}" instead of JSON. Server at ${n} may be down or misconfigured.`);const m=await u.json();return this.rawData=Array.isArray(m)?m:m.posts||m.data||m.results||[],this.normalizeData(t),this.normalizedData}catch(u){throw console.error(`[rest-api] Failed to load from ${t.id}:`,u),u}}normalizeData(t){const n=t.fieldMappings||{};this.normalizedData=[],this.dataByUniqueId=new Map;for(const o of this.rawData){const a={};for(const[l,c]of Object.entries(n))if(Array.isArray(c)){const u=c.map(p=>this.getFieldValue(o,p));a[l]=u.join("_")}else a[l]=this.getFieldValue(o,c);if(a.latitude=parseFloat(a.latitude)||0,a.longitude=parseFloat(a.longitude)||0,a.latitude===0&&a.longitude===0)continue;a.populationNum=this.parsePopulation(a.population),a.imageUrl=this.getImageUrl(a,t.imageConfig);const s=a.engagementStatus;s!=null&&(typeof s=="object"&&"value"in s?(a.engagementStatusLabel=s.label||s.value,a.engagementStatus=s.value==="engaged"):a.engagementStatus=s===!0||s===1||s==="1"||s==="true"||typeof s=="number"&&s>0||typeof s=="string"&&parseInt(s,10)>0);const r=a.adoptionStatus;r!=null&&(a.adoptionStatus=r===!0||r===1||r==="1"||r==="true"||typeof r=="object"&&!!(r!=null&&r.value)||typeof r=="number"&&r>0||typeof r=="string"&&parseInt(r,10)>0);const i=["doxaRegion","wagfRegion","wagfBlock","wagfMember","affinityBlock","cluster","peopleGroup","countryIso","religion","religionCode"];for(const l of i){const c=a[l];c!=null&&typeof c=="object"&&"value"in c?(a[l+"Label"]=c.label||c.value,a[l]=c.value):c!=null&&typeof c=="string"&&c!==""&&(a[l+"Label"]||(a[l+"Label"]=c))}a.countryName=a.countryIsoLabel||a.country||a.countryIso||"",a.religionName=a.religionLabel||a.religion||"",a._raw=o,this.normalizedData.push(a),this.dataByUniqueId.set(a.uniqueId,a)}this.rawData=null}getFieldValue(t,n){if(!n)return"";if(t[n]!==void 0)return t[n];const o=n.trim();if(t[o]!==void 0)return t[o];for(const a of Object.keys(t))if(a.trim()===o||a.includes(o)||o.includes(a.trim()))return t[a];return""}parsePopulation(t){if(!t)return 0;const n=String(t).replace(/,/g,"").trim(),o=parseInt(n,10);return isNaN(o)?0:o}getImageUrl(t,n){if(!n)return"";const o=n.placeholderUrl||"",a=t[n.useField];return a&&String(a).trim()&&!String(a).includes("NoImageAvailable")?a:o}getData(){return this.normalizedData}getByUniqueId(t){return this.dataByUniqueId.get(t)}getByCoordinates(t,n,o=1e-4){return this.normalizedData.find(a=>Math.abs(a.latitude-t)n.peopleGroupId===t)}getLanguageFamilies(){const t=new Set;return this.normalizedData.forEach(n=>{n.languageFamily&&t.add(n.languageFamily)}),Array.from(t).sort()}getDataByLanguageFamily(){const t={};return this.normalizedData.forEach(n=>{const o=n.languageFamily||"Unknown";t[o]||(t[o]=[]),t[o].push(n)}),t}getDataByRegion(){const t={};return this.normalizedData.forEach(n=>{const o=n.doxaRegion||"Unknown";t[o]||(t[o]=[]),t[o].push(n)}),t}getStats(){return{totalRecords:this.normalizedData.length,withPeopleId3:this.normalizedData.filter(t=>t.peopleId3).length,withPhotos:this.normalizedData.filter(t=>t.imageUrl&&!String(t.imageUrl).includes("NoImageAvailable")).length,languageFamilies:this.getLanguageFamilies().length,countries:new Set(this.normalizedData.map(t=>t.country)).size,regions:Object.keys(this.getDataByRegion()).length}}}new Lc;const Mb={class:"apg-root"},Ib={key:0,class:"apg-loading"},Rb={key:1,class:"apg-error"},Fb={key:2,class:"apg-legend"},Ob={class:"apg-legend-sub"},Db=["onClick"],xb={class:"apg-count"},jb=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"all-people-groups",setup(e){var ee;Zl(` .apg-root { position:absolute;inset:0;overflow:hidden; font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif; } .apg-canvas { position:absolute;inset:0; } @@ -101,10 +101,10 @@ .apg-pop .meta { color:#4b5563;margin-top:4px; } .apg-pop a { display:inline-block;margin-top:7px;font-weight:700;color:#b45309;text-decoration:none; } .apg-pop a:hover { text-decoration:underline; } -`,"all-people-groups");const t=De("profileConfig"),n=De("mapboxToken"),o=De("dataSource"),a=De("dataStore"),s=De("mapStore"),i=oc(t),r=be(()=>{var Y;return String(((Y=t==null?void 0:t.value)==null?void 0:Y.assetsBase)||"/assets").replace(/\/+$/,"")}),l=[{id:"doxa",label:"DOXA people groups",color:"#111827"},{id:"frontier",label:"Frontier — nothing started",color:"#e74c3c"},{id:"unreached",label:"Unreached — work beginning",color:"#f1c40f"},{id:"reached",label:"Reached — church is there",color:"#2ecc71"}],c=Object.fromEntries(l.map(Y=>[Y.id,Y.color])),u=he({doxa:0,frontier:0,unreached:0,reached:0});function f(Y,F){if(F.has(String(Y.ROP3Code||"")))return"doxa";const j=Number(Y.GSEC);return!Number.isFinite(j)||j<=1?"frontier":j<=3?"unreached":"reached"}function m(){var j;let Y="";try{Y=new URLSearchParams(window.location.search).get("utm_source")||""}catch{}const F=(j=t==null?void 0:t.value)==null?void 0:j.utmSource;return encodeURIComponent(String(Y||F||"agwm"))}const k=he(null),N=he(!1),v=he(null),{map:$,initializeMap:P,destroy:T}=Wm({containerRef:k,accessToken:n.value,provider:i,style:((ee=t==null?void 0:t.value)==null?void 0:ee.style)??"ink",center:[20,12],zoom:1.6}),_=new wc,b=vb({mapId:"all-people-groups",dataSourceId:o.value,dataSourceManager:_,dataStore:a,markRaw:Y=>Y});let L=[],A=new Map;function w(Y){return String(Y??"").replace(/[&<>"']/g,F=>({"&":"&","<":"<",">":">",'"':""","'":"'"})[F])}async function D(){const[Y,F]=await Promise.all([fetch(`${r.value}/people-groups/people-groups-slim.json`).then(X=>{if(!X.ok)throw new Error(`people-groups-slim.json ${X.status}`);return X.json()}),b.loadData().then(()=>b.normalizedPeopleGroups.value||[]).catch(X=>(console.warn("[all-people-groups] DOXA overlay unavailable (map still renders by GSEC):",X),[]))]),j=new Set;for(const X of F){const ge=String(X.peopleGroupId||X.rop3||"");ge&&(j.add(ge),A.has(ge)||A.set(ge,{slug:X.slug||"",name:X.name||""}))}const q=[],W={doxa:0,frontier:0,unreached:0,reached:0};for(const X of Y.rows||[]){const ge=Number(X.Lat),ie=Number(X.Long);if(!Number.isFinite(ge)||!Number.isFinite(ie)||ge===0&&ie===0)continue;const fe=f(X,j);W[fe]++,q.push({type:"Feature",geometry:{type:"Point",coordinates:[ie,ge]},properties:{name:X.Name||"",country:X.CountryName||"",population:Number(X.Population)||0,gsec:X.GSEC,evangelical:X.EvangelicalLevel||"",language:X.LanguageName||"",religion:X.ReligionName||"",rop3:String(X.ROP3Code||""),category:fe}})}return u.value=W,L=q,{type:"FeatureCollection",features:q}}function S(Y){const F=$.value;F.addSource("apg",{type:"geojson",data:Y}),F.addLayer({id:"apg-pins",type:"circle",source:"apg",paint:{"circle-color":["match",["get","category"],"doxa",c.doxa,"frontier",c.frontier,"unreached",c.unreached,c.reached],"circle-stroke-color":"#ffffff","circle-stroke-width":["interpolate",["linear"],["zoom"],0,.4,6,.8,12,1.1],"circle-stroke-opacity":.85,"circle-radius":["interpolate",["linear"],["zoom"],0,2.2,4,3.4,8,6,12,9],"circle-opacity":.92,"circle-sort-key":["match",["get","category"],"doxa",4,"frontier",3,"unreached",2,1]}}),F.on("mouseenter","apg-pins",()=>{F.getCanvas().style.cursor="pointer"}),F.on("mouseleave","apg-pins",()=>{F.getCanvas().style.cursor=""}),F.on("click","apg-pins",j=>{const q=j.features&&j.features[0];if(!q)return;const W=q.properties,X=W.category==="doxa"?A.get(W.rop3):null,ge=l.find(oe=>oe.id===W.category),ie=X&&X.slug?`Pray for them →`:"",fe=i==="maplibre"?window.maplibregl:window.mapboxgl;new fe.Popup({closeButton:!0,maxWidth:"290px"}).setLngLat(j.lngLat).setHTML(`
- ${w(W.name)} ${w(ge.label.split(" — ")[0])} -
${w(W.country)} · pop ${Number(W.population).toLocaleString()}
-
${w(W.evangelical||"GSEC "+W.gsec)}
-
${w(W.language)}${W.religion?" · "+w(W.religion):""}
- ${ie} -
`).addTo(F)})}const V=he(null);function ae(Y){const F=$.value;if(!F||!F.getLayer("apg-pins"))return;if(V.value===Y){V.value=null,F.setFilter("apg-pins",null),F.fitBounds([[-170,-55],[179,72]],{padding:20,duration:900});return}V.value=Y,F.setFilter("apg-pins",["==",["get","category"],Y]);let j=180,q=85,W=-180,X=-85,ge=0;for(const ie of L){if(ie.properties.category!==Y)continue;const[fe,oe]=ie.geometry.coordinates;feW&&(W=fe),oeX&&(X=oe),ge++}ge&&F.fitBounds([[j,q],[W,X]],{padding:60,duration:900,maxZoom:6})}Gn(async()=>{const Y=D().catch(F=>(v.value=String((F==null?void 0:F.message)||F),null));try{await P()}catch(F){v.value=String((F==null?void 0:F.message)||F);return}if(!$.value){v.value="Map failed to initialize — check token and container";return}$.value.once("style.load",async()=>{var F;try{const j=await Y;if(!j)return;try{$.value.setProjection("mercator")}catch{}S(j),(F=s==null?void 0:s.registerMap)==null||F.call(s,"all-people-groups",$.value),N.value=!0}catch(j){v.value=String((j==null?void 0:j.message)||j)}})}),Do(()=>{var Y;(Y=s==null?void 0:s.unregisterMap)==null||Y.call(s,"all-people-groups"),T()});const z=be(()=>u.value.doxa+u.value.frontier+u.value.unreached+u.value.reached);return(Y,F)=>(We(),wt("div",Tb,[!N.value&&!v.value?(We(),wt("div",Eb,"Loading every people group…")):bn("",!0),v.value?(We(),wt("div",$b,"The map could not be loaded. "+Qt(v.value),1)):bn("",!0),Ce("div",{ref_key:"mapContainer",ref:k,class:"apg-canvas"},null,512),N.value?(We(),wt("div",Lb,[F[0]||(F[0]=Ce("div",{class:"apg-legend-title"},"All People Groups",-1)),Ce("div",Cb,Qt(z.value.toLocaleString())+" group–country locations",1),(We(),wt(Qe,null,Vu(l,j=>Ce("div",{key:j.id,class:Nn(["apg-row",{active:V.value===j.id}]),onClick:q=>ae(j.id)},[Ce("span",{class:"apg-dot",style:po({background:j.color})},null,4),Nt(" "+Qt(j.label)+" ",1),Ce("span",Nb,Qt((u.value[j.id]||0).toLocaleString()),1)],10,wb)),64)),F[1]||(F[1]=Ce("div",{class:"apg-hint"},"Click a row to see all of them · click again for everything",-1))])):bn("",!0)]))}}},Symbol.toStringTag,{value:"Module"}))})(); +`,"all-people-groups");const t=Fe("profileConfig"),n=Fe("mapboxToken"),o=Fe("dataSource"),a=Fe("dataStore"),s=Fe("mapStore"),r=oc(t),i=be(()=>{var Y;return String(((Y=t==null?void 0:t.value)==null?void 0:Y.assetsBase)||"/assets").replace(/\/+$/,"")}),l=[{id:"doxa",label:"DOXA people groups",color:"#111827"},{id:"frontier",label:"Frontier — nothing started",color:"#e74c3c"},{id:"unreached",label:"Unreached — work beginning",color:"#f1c40f"},{id:"reached",label:"Reached — church is there",color:"#2ecc71"}],c=Object.fromEntries(l.map(Y=>[Y.id,Y.color])),u=he({doxa:0,frontier:0,unreached:0,reached:0});function p(Y,O){if(O.has(String(Y.ROP3Code||"")))return"doxa";const j=Number(Y.GSEC);return!Number.isFinite(j)||j<=1?"frontier":j<=3?"unreached":"reached"}function m(){var j;let Y="";try{Y=new URLSearchParams(window.location.search).get("utm_source")||""}catch{}const O=(j=t==null?void 0:t.value)==null?void 0:j.utmSource;return encodeURIComponent(String(Y||O||"agwm"))}const $=he(null),w=he(!1),v=he(null),{map:T,initializeMap:P,destroy:k}=nb({containerRef:$,accessToken:n.value,provider:r,style:((ee=t==null?void 0:t.value)==null?void 0:ee.style)??"ink",center:[20,12],zoom:1.6}),y=new Lc,b=wb({mapId:"all-people-groups",dataSourceId:o.value,dataSourceManager:y,dataStore:a,markRaw:Y=>Y});let C=[],A=new Map;function L(Y){return String(Y??"").replace(/[&<>"']/g,O=>({"&":"&","<":"<",">":">",'"':""","'":"'"})[O])}async function F(){const[Y,O]=await Promise.all([fetch(`${i.value}/people-groups/people-groups-slim.json`).then(X=>{if(!X.ok)throw new Error(`people-groups-slim.json ${X.status}`);return X.json()}),b.loadData().then(()=>b.normalizedPeopleGroups.value||[]).catch(X=>(console.warn("[all-people-groups] DOXA overlay unavailable (map still renders by GSEC):",X),[]))]),j=new Set;for(const X of O){const ge=String(X.peopleGroupId||X.rop3||"");ge&&(j.add(ge),A.has(ge)||A.set(ge,{slug:X.slug||"",name:X.name||""}))}const q=[],W={doxa:0,frontier:0,unreached:0,reached:0};for(const X of Y.rows||[]){const ge=Number(X.Lat),re=Number(X.Long);if(!Number.isFinite(ge)||!Number.isFinite(re)||ge===0&&re===0)continue;const pe=p(X,j);W[pe]++,q.push({type:"Feature",geometry:{type:"Point",coordinates:[re,ge]},properties:{name:X.Name||"",country:X.CountryName||"",population:Number(X.Population)||0,gsec:X.GSEC,evangelical:X.EvangelicalLevel||"",language:X.LanguageName||"",religion:X.ReligionName||"",rop3:String(X.ROP3Code||""),category:pe}})}return u.value=W,C=q,{type:"FeatureCollection",features:q}}function S(Y){const O=T.value;O.addSource("apg",{type:"geojson",data:Y}),O.addLayer({id:"apg-pins",type:"circle",source:"apg",paint:{"circle-color":["match",["get","category"],"doxa",c.doxa,"frontier",c.frontier,"unreached",c.unreached,c.reached],"circle-stroke-color":"#ffffff","circle-stroke-width":["interpolate",["linear"],["zoom"],0,.4,6,.8,12,1.1],"circle-stroke-opacity":.85,"circle-radius":["interpolate",["linear"],["zoom"],0,2.2,4,3.4,8,6,12,9],"circle-opacity":.92,"circle-sort-key":["match",["get","category"],"doxa",4,"frontier",3,"unreached",2,1]}}),O.on("mouseenter","apg-pins",()=>{O.getCanvas().style.cursor="pointer"}),O.on("mouseleave","apg-pins",()=>{O.getCanvas().style.cursor=""}),O.on("click","apg-pins",j=>{const q=j.features&&j.features[0];if(!q)return;const W=q.properties,X=W.category==="doxa"?A.get(W.rop3):null,ge=l.find(oe=>oe.id===W.category),re=X&&X.slug?`Pray for them →`:"",pe=r==="maplibre"?window.maplibregl:window.mapboxgl;new pe.Popup({closeButton:!0,maxWidth:"290px"}).setLngLat(j.lngLat).setHTML(`
+ ${L(W.name)} ${L(ge.label.split(" — ")[0])} +
${L(W.country)} · pop ${Number(W.population).toLocaleString()}
+
${L(W.evangelical||"GSEC "+W.gsec)}
+
${L(W.language)}${W.religion?" · "+L(W.religion):""}
+ ${re} +
`).addTo(O)})}const V=he(null);function ae(Y){const O=T.value;if(!O||!O.getLayer("apg-pins"))return;if(V.value===Y){V.value=null,O.setFilter("apg-pins",null),O.fitBounds([[-170,-55],[179,72]],{padding:20,duration:900});return}V.value=Y,O.setFilter("apg-pins",["==",["get","category"],Y]);let j=180,q=85,W=-180,X=-85,ge=0;for(const re of C){if(re.properties.category!==Y)continue;const[pe,oe]=re.geometry.coordinates;peW&&(W=pe),oeX&&(X=oe),ge++}ge&&O.fitBounds([[j,q],[W,X]],{padding:60,duration:900,maxZoom:6})}Gn(async()=>{const Y=F().catch(O=>(v.value=String((O==null?void 0:O.message)||O),null));try{await P()}catch(O){v.value=String((O==null?void 0:O.message)||O);return}if(!T.value){v.value="Map failed to initialize — check token and container";return}T.value.once("style.load",async()=>{var O;try{const j=await Y;if(!j)return;try{T.value.setProjection("mercator")}catch{}S(j),(O=s==null?void 0:s.registerMap)==null||O.call(s,"all-people-groups",T.value),w.value=!0}catch(j){v.value=String((j==null?void 0:j.message)||j)}})}),Fo(()=>{var Y;(Y=s==null?void 0:s.unregisterMap)==null||Y.call(s,"all-people-groups"),k()});const z=be(()=>u.value.doxa+u.value.frontier+u.value.unreached+u.value.reached);return(Y,O)=>(We(),Lt("div",Mb,[!w.value&&!v.value?(We(),Lt("div",Ib,"Loading every people group…")):bn("",!0),v.value?(We(),Lt("div",Rb,"The map could not be loaded. "+Qt(v.value),1)):bn("",!0),Ne("div",{ref_key:"mapContainer",ref:$,class:"apg-canvas"},null,512),w.value?(We(),Lt("div",Fb,[O[0]||(O[0]=Ne("div",{class:"apg-legend-title"},"All People Groups",-1)),Ne("div",Ob,Qt(z.value.toLocaleString())+" group–country locations",1),(We(),Lt(Qe,null,Vu(l,j=>Ne("div",{key:j.id,class:wn(["apg-row",{active:V.value===j.id}]),onClick:q=>ae(j.id)},[Ne("span",{class:"apg-dot",style:fo({background:j.color})},null,4),wt(" "+Qt(j.label)+" ",1),Ne("span",xb,Qt((u.value[j.id]||0).toLocaleString()),1)],10,Db)),64)),O[1]||(O[1]=Ne("div",{class:"apg-hint"},"Click a row to see all of them · click again for everything",-1))])):bn("",!0)]))}}},Symbol.toStringTag,{value:"Module"}))})(); diff --git a/public/doxa-maps/all-people-groups/all-people-groups/index.html b/public/doxa-maps/all-people-groups/all-people-groups/index.html index 22208c1b1..5f654dfe3 100644 --- a/public/doxa-maps/all-people-groups/all-people-groups/index.html +++ b/public/doxa-maps/all-people-groups/all-people-groups/index.html @@ -29,7 +29,7 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + + window.FORGE.manifest = {"schema":"doxa-maps-manifest@1","generatedFrom":"plugin-designs/*/*.vue","embedBase":".","bundleCount":22,"profileCount":34,"bundles":[{"bundle":"all-people-groups","scriptUrl":"./all-people-groups/all-people-groups.js","output":"doxa-maps/all-people-groups/all-people-groups.js","integrity":"sha384-R42WaDgwpLQcS2xBY+w+VgqpnTlojkRR3jqMq56IOaLn2MmuDoYwtXysc9CMN58c","elements":["all-people-groups"],"profiles":[{"profile":"all-people-groups","file":"all-people-groups.vue","description":"All 12,379 people groups (peoplegroups.org) in four colors — reached,","element":"all-people-groups","type":"single","isMap":true,"iframeUrl":"./all-people-groups/all-people-groups/index.html","scriptUrl":"./all-people-groups/all-people-groups.js","embed":{"iframe":"\u003ciframe src=\"./all-people-groups/all-people-groups/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./all-people-groups/all-people-groups.js\" integrity=\"sha384-R42WaDgwpLQcS2xBY+w+VgqpnTlojkRR3jqMq56IOaLn2MmuDoYwtXysc9CMN58c\" crossorigin=\"anonymous\">\u003c/script>\n\u003call-people-groups profile-config='{\"profile\":\"all-people-groups\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/all-people-groups>"},"bundle":"all-people-groups"}]},{"bundle":"big-picture","scriptUrl":"./big-picture/big-picture.js","output":"doxa-maps/big-picture/big-picture.js","integrity":"sha384-voYmtWeACTFBJOOeqcbf5cuBKSjyskA89cjvm5qcvrx9IUFTAhLuICyRXUM6fL+Y","elements":["bp-big-picture","bp-research-header","people-groups-grid"],"composes":["bp-research-header","people-groups-grid"],"profiles":[{"profile":"big-picture","file":"big-picture.vue","description":"The Cat-4 composite that PAIRS the two real capability elements of the","element":"bp-big-picture","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./big-picture/big-picture/index.html","scriptUrl":"./big-picture/big-picture.js","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./big-picture/big-picture.js\" integrity=\"sha384-voYmtWeACTFBJOOeqcbf5cuBKSjyskA89cjvm5qcvrx9IUFTAhLuICyRXUM6fL+Y\" crossorigin=\"anonymous\">\u003c/script>\n\u003cbp-big-picture profile-config='{\"profile\":\"big-picture\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/bp-big-picture>"},"instances":[{"id":"big-picture","title":"Big Picture — research header ↔ people-groups grid (composite)","apiBaseUrl":"","props":{"profile":"big-picture","provider":"maplibre","instanceId":"bp-big-picture"},"element":"bp-big-picture","iframeUrl":"./big-picture/big-picture/big-picture/index.html","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/big-picture/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"frontier","title":"Big Picture — frontier accent","apiBaseUrl":"","props":{"profile":"big-picture","provider":"maplibre","instanceId":"bp-big-picture-frontier","accent":"#22d3ee","title":"Big Picture — Frontier Focus"},"element":"bp-big-picture","iframeUrl":"./big-picture/big-picture/frontier/index.html","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/frontier/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"big-picture"}]},{"bundle":"cities-internet","scriptUrl":"./cities-internet/cities-internet.js","output":"doxa-maps/cities-internet/cities-internet.js","integrity":"sha384-lF6OGT0FH7sBXnALLiAoji8TADE05n7yqqoortZAifVdH6fNJ4yQeRRwjT8oXq+V","elements":["cities-internet-map"],"profiles":[{"profile":"connectivity-list","file":"connectivity-list.vue","description":"Countries where DX people groups live, grouped by region, showing measured internet penetration","element":"cities-internet-map","type":"single","isMap":false,"iframeUrl":"./cities-internet/connectivity-list/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/connectivity-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-lF6OGT0FH7sBXnALLiAoji8TADE05n7yqqoortZAifVdH6fNJ4yQeRRwjT8oXq+V\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"connectivity-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}},{"profile":"connectivity-map","file":"connectivity-map.vue","description":"Every country shaded by measured internet penetration, with its named carriers and dominant","element":"cities-internet-map","type":"single","isMap":true,"iframeUrl":"./cities-internet/connectivity-map/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/connectivity-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-lF6OGT0FH7sBXnALLiAoji8TADE05n7yqqoortZAifVdH6fNJ4yQeRRwjT8oXq+V\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"connectivity-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}},{"profile":"data-tables","file":"data-tables.vue","description":"Four validated research tables, one tab each, with sortable and filterable columns, CSV and JSON","element":"cities-internet-map","type":"single","isMap":false,"iframeUrl":"./cities-internet/data-tables/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-lF6OGT0FH7sBXnALLiAoji8TADE05n7yqqoortZAifVdH6fNJ4yQeRRwjT8oXq+V\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}}]},{"bundle":"country-posters","scriptUrl":"./country-posters/country-posters.js","output":"doxa-maps/country-posters/country-posters.js","integrity":"sha384-pWCBnzi9A8axrT5aW4DjigzZ8utiQeU+OVsOIKVKA9vC61ArtxaRxjqQ8l5xNxzI","elements":["country-posters-map"],"composes":["country-posters/country-poster-wall","country-posters/countries-map"],"profiles":[{"profile":"countries-map","file":"countries-map.vue","description":"The researcher's workbench retargeted from people groups to COUNTRIES — region","element":"country-posters-map","type":"single","isMap":true,"iframeUrl":"./country-posters/countries-map/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/countries-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-pWCBnzi9A8axrT5aW4DjigzZ8utiQeU+OVsOIKVKA9vC61ArtxaRxjqQ8l5xNxzI\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"countries-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}},{"profile":"country-poster-wall","file":"country-poster-wall.vue","description":"One printable card per country, grouped into COLLAPSIBLE regional sections so the","element":"country-posters-map","type":"single","isMap":false,"iframeUrl":"./country-posters/country-poster-wall/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/country-poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-pWCBnzi9A8axrT5aW4DjigzZ8utiQeU+OVsOIKVKA9vC61ArtxaRxjqQ8l5xNxzI\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"country-poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}},{"profile":"country-posters-mfe","file":"country-posters-mfe.vue","description":"Country Posters as ONE two-tab element — the countries map and the printable","element":"country-posters-mfe","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./country-posters/country-posters-mfe/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/country-posters-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-pWCBnzi9A8axrT5aW4DjigzZ8utiQeU+OVsOIKVKA9vC61ArtxaRxjqQ8l5xNxzI\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"country-posters-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}}]},{"bundle":"dashboard-plus-grid","scriptUrl":"./dashboard-plus-grid/dashboard-plus-grid.js","output":"doxa-maps/dashboard-plus-grid/dashboard-plus-grid.js","integrity":"sha384-KWYs/unuewlt9PJ4CC/VlyoghFmN4KtHqsweo68lJwUNL1g3FJ8VctASOYWAt91q","elements":["dashboard-plus-grid"],"composes":["research-dashboard","people-groups-grid"],"profiles":[{"profile":"dashboard-plus-grid","file":"dashboard-plus-grid.vue","description":"Both children are IMPORTED DIRECTLY (compiled into this ONE bundle — no runtime bundle","element":"dashboard-plus-grid","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./dashboard-plus-grid/dashboard-plus-grid/index.html","scriptUrl":"./dashboard-plus-grid/dashboard-plus-grid.js","embed":{"iframe":"\u003ciframe src=\"./dashboard-plus-grid/dashboard-plus-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./dashboard-plus-grid/dashboard-plus-grid.js\" integrity=\"sha384-KWYs/unuewlt9PJ4CC/VlyoghFmN4KtHqsweo68lJwUNL1g3FJ8VctASOYWAt91q\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdashboard-plus-grid profile-config='{\"profile\":\"dashboard-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/dashboard-plus-grid>"},"instances":[{"id":"default","title":"default","apiBaseUrl":"","props":{"profile":"dashboard-plus-grid"},"element":"dashboard-plus-grid","iframeUrl":"./dashboard-plus-grid/dashboard-plus-grid/default/index.html","embed":{"iframe":"\u003ciframe src=\"./dashboard-plus-grid/dashboard-plus-grid/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"demo-map","scriptUrl":"./demo-map/demo-map.js","output":"doxa-maps/demo-map/demo-map.js","integrity":"sha384-2ItGdUG5OW9uHN4ldNF6To6hvTy3XGdFnJrJenyyqShBjIi2NgcyXTyhYu2mttHH","elements":["demo-map"],"profiles":[{"profile":"demo-map","file":"demo-map.vue","description":"Simple two-tab demo map. Tab 1 colors pins by religion (shared","element":"demo-map","type":"parameterized","isMap":true,"iframeUrl":"./demo-map/demo-map/index.html","scriptUrl":"./demo-map/demo-map.js","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./demo-map/demo-map.js\" integrity=\"sha384-2ItGdUG5OW9uHN4ldNF6To6hvTy3XGdFnJrJenyyqShBjIi2NgcyXTyhYu2mttHH\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdemo-map profile-config='{\"profile\":\"demo-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/demo-map>"},"instances":[{"id":"maplibre","title":"Demo map — MapLibre (token-free)","apiBaseUrl":"","props":{"profile":"demo-map","provider":"maplibre","instanceId":"demo-maplibre"},"element":"demo-map","iframeUrl":"./demo-map/demo-map/maplibre/index.html","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/maplibre/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"demo-map"}]},{"bundle":"doxa-maps-spa","scriptUrl":"./doxa-maps-spa/doxa-maps-spa.js","output":"doxa-maps/doxa-maps-spa/doxa-maps-spa.js","integrity":"sha384-Ce+DKsLgwfej+rgoWeaWFuMMbR3Y4H+8io/lVL+lQfX0O3iGKwDLf4remDkHGCrP","elements":["doxa-maps-spa"],"composes":["bp-big-picture","doxa-research-map","doxa-simple-map","cities-internet-map","gospel-resources-map","my-upg-100-list-map"],"profiles":[{"profile":"doxa-maps-spa","file":"doxa-maps-spa.vue","description":"The DX-maps app itself: one element whose vertical-tab rail nests every other","element":"doxa-maps-spa","type":"nested-mfe-spa","isMap":false,"iframeUrl":"./doxa-maps-spa/doxa-maps-spa/index.html","scriptUrl":"./doxa-maps-spa/doxa-maps-spa.js","embed":{"iframe":"\u003ciframe src=\"./doxa-maps-spa/doxa-maps-spa/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-maps-spa/doxa-maps-spa.js\" integrity=\"sha384-Ce+DKsLgwfej+rgoWeaWFuMMbR3Y4H+8io/lVL+lQfX0O3iGKwDLf4remDkHGCrP\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-maps-spa profile-config='{\"profile\":\"doxa-maps-spa\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-maps-spa>"},"instances":[{"id":"app","title":"DX-Maps SPA — Big Picture + every research map (app-shell)","apiBaseUrl":"","props":{"profile":"doxa-maps-spa","provider":"maplibre","instanceId":"doxa-maps-spa-app","title":"DX-Maps"},"element":"doxa-maps-spa","iframeUrl":"./doxa-maps-spa/doxa-maps-spa/app/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-maps-spa/doxa-maps-spa/app/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-research-map","scriptUrl":"./doxa-research-map/doxa-research-map.js","output":"doxa-maps/doxa-research-map/doxa-research-map.js","integrity":"sha384-ycDpVdTjizEUxzsO+lQpTagpdLenXlLnvFQ/juKcWeazo2Qvo1B1QYpDxykzA9Zp","elements":["doxa-research-map"],"profiles":[{"profile":"research-map","file":"research-map.vue","description":"The researcher's workbench: every piece a missiologist, demographer or","element":"doxa-research-map","type":"monolithic","isMap":true,"iframeUrl":"./doxa-research-map/research-map/index.html","scriptUrl":"./doxa-research-map/doxa-research-map.js","embed":{"iframe":"\u003ciframe src=\"./doxa-research-map/research-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-research-map/doxa-research-map.js\" integrity=\"sha384-ycDpVdTjizEUxzsO+lQpTagpdLenXlLnvFQ/juKcWeazo2Qvo1B1QYpDxykzA9Zp\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-research-map profile-config='{\"profile\":\"research-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-research-map>"},"instances":[{"id":"maplibre","title":"Research map — MapLibre (token-free, no search bar)","apiBaseUrl":"","props":{"profile":"research-map","provider":"maplibre","instanceId":"research-map-maplibre"},"element":"doxa-research-map","iframeUrl":"./doxa-research-map/research-map/maplibre/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-research-map/research-map/maplibre/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-simple-map","scriptUrl":"./doxa-simple-map/doxa-simple-map.js","output":"doxa-maps/doxa-simple-map/doxa-simple-map.js","integrity":"sha384-8drw8bByutNX9KwjTP4nrgMqtlu7xgrqxK6ebWLh8VTWAYC39TQ3d/8qwBxhPJMC","elements":["doxa-map","doxa-simple-map"],"profiles":[{"profile":"doxa-simple-map","file":"doxa-simple-map.vue","description":"The simple world map, shipped as three presets off ONE prop table —","element":"doxa-map","type":"parameterized","isMap":true,"iframeUrl":"./doxa-simple-map/doxa-simple-map/index.html","scriptUrl":"./doxa-simple-map/doxa-simple-map.js","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-simple-map/doxa-simple-map.js\" integrity=\"sha384-8drw8bByutNX9KwjTP4nrgMqtlu7xgrqxK6ebWLh8VTWAYC39TQ3d/8qwBxhPJMC\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-map profile-config='{\"profile\":\"doxa-simple-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-map>"},"instances":[{"id":"prayer","title":"Prayer Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-prayer","dataSource":"pray-tools","tabs":[{"id":"prayer","colorStrategy":"prayer","legend":"prayer","popup":"prayer"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/prayer/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/prayer/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"engagement","title":"Engagement Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-engagement","dataSource":"pray-tools","tabs":[{"id":"engagement","colorStrategy":"engagement","legend":"engagement","popup":"engagement"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/engagement/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/engagement/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"adoption","title":"Adoption Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-adoption","dataSource":"pray-tools","tabs":[{"id":"adoption","colorStrategy":"adoption","legend":"adoption","popup":"adoption"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/adoption/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/adoption/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-vision-card","scriptUrl":"./doxa-vision-card/doxa-vision-card.js","output":"doxa-maps/doxa-vision-card/doxa-vision-card.js","integrity":"sha384-2mza3cltN5LQQIrlENG/IVL6Icd9zzcFve3E8R8VWuCdYOGW9uGKFvxcbu6eFfwn","elements":["doxa-vision-card"],"profiles":[{"profile":"doxa-vision-card","file":"doxa-vision-card.vue","description":"The Capability-1 example: ONE folder -> ONE bundle -> ONE element.","element":"doxa-vision-card","type":"parameterized","isMap":false,"iframeUrl":"./doxa-vision-card/doxa-vision-card/index.html","scriptUrl":"./doxa-vision-card/doxa-vision-card.js","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-vision-card/doxa-vision-card.js\" integrity=\"sha384-2mza3cltN5LQQIrlENG/IVL6Icd9zzcFve3E8R8VWuCdYOGW9uGKFvxcbu6eFfwn\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-vision-card profile-config='{\"profile\":\"doxa-vision-card\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-vision-card>"},"instances":[{"id":"default","title":"Vision card — reach at a glance","apiBaseUrl":"","props":{"profile":"doxa-vision-card","provider":"maplibre","instanceId":"vision-card-default"},"element":"doxa-vision-card","iframeUrl":"./doxa-vision-card/doxa-vision-card/default/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"frontier","title":"Vision card — frontier accent","apiBaseUrl":"","props":{"profile":"doxa-vision-card","provider":"maplibre","instanceId":"vision-card-frontier","accent":"#22d3ee","title":"The last frontier of the gospel.","tagline":"Frontier people groups — where fewer than one in a thousand follow Jesus.","stats":[{"value":"1,910","label":"Frontier groups","note":"under 0.1% believers"},{"value":"2.1B","label":"People","note":"living in frontier settings"},{"value":"0.1%","label":"Christian","note":"or fewer, in each group"}]},"element":"doxa-vision-card","iframeUrl":"./doxa-vision-card/doxa-vision-card/frontier/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/frontier/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"doxa-vision-card"}]},{"bundle":"golden-path-check","scriptUrl":"./golden-path-check/golden-path-check.js","output":"doxa-maps/golden-path-check/golden-path-check.js","integrity":"sha384-1V/sT5SkV0U9yTCK9ELIOFfU1ZIJkInIF6nG3UllJ4dxax3RsEAupSGLJEFK6e14","elements":["golden-path-check"],"profiles":[{"profile":"golden-path-check","file":"golden-path-check.vue","description":"A live self-test of the develop-a-plugin-and-see-it-live path: it reads the built","element":"golden-path-check","type":"single","isMap":false,"iframeUrl":"./golden-path-check/golden-path-check/index.html","scriptUrl":"./golden-path-check/golden-path-check.js","embed":{"iframe":"\u003ciframe src=\"./golden-path-check/golden-path-check/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./golden-path-check/golden-path-check.js\" integrity=\"sha384-1V/sT5SkV0U9yTCK9ELIOFfU1ZIJkInIF6nG3UllJ4dxax3RsEAupSGLJEFK6e14\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgolden-path-check profile-config='{\"profile\":\"golden-path-check\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/golden-path-check>"}}]},{"bundle":"gospel-resources","scriptUrl":"./gospel-resources/gospel-resources.js","output":"doxa-maps/gospel-resources/gospel-resources.js","integrity":"sha384-XgF3DvRZEHIzZxcUqixiOsEk5bh6vIpwP7Drf9fBYy9F9cB7bp3NP2G2E56pPGt0","elements":["gospel-resources-map"],"profiles":[{"profile":"charts","file":"charts.vue","description":"The gap by LANGUAGE (ISO 639-3) rather than by people group — because one translation serves every","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/charts/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/charts/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-XgF3DvRZEHIzZxcUqixiOsEk5bh6vIpwP7Drf9fBYy9F9cB7bp3NP2G2E56pPGt0\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"charts\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"data-tables","file":"data-tables.vue","description":"Two validated tables: what resources exist per people group, and whether that access is keeping","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/data-tables/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-XgF3DvRZEHIzZxcUqixiOsEk5bh6vIpwP7Drf9fBYy9F9cB7bp3NP2G2E56pPGt0\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"resources-list","file":"resources-list.vue","description":"Which DX people groups have scripture in their own language, and which have none. The zero-resource","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/resources-list/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/resources-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-XgF3DvRZEHIzZxcUqixiOsEk5bh6vIpwP7Drf9fBYy9F9cB7bp3NP2G2E56pPGt0\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"resources-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"resources-map","file":"resources-map.vue","description":"Every country shaded by how much of its unengaged population has NO gospel resource in their own","element":"gospel-resources-map","type":"single","isMap":true,"iframeUrl":"./gospel-resources/resources-map/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/resources-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-XgF3DvRZEHIzZxcUqixiOsEk5bh6vIpwP7Drf9fBYy9F9cB7bp3NP2G2E56pPGt0\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"resources-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}}]},{"bundle":"my-upg-100-list","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","output":"doxa-maps/my-upg-100-list/my-upg-100-list.js","integrity":"sha384-9MM9Wm9yP7JwtlWBL0+xuJ2yHwHD/trEHYrsk0kEKgR4pXXdTNguIE50TqRCUbK2","elements":["my-upg-100-list-map"],"composes":["my-upg-100-list/upg-100-list","my-upg-100-list/poster-wall"],"profiles":[{"profile":"poster-wall","file":"poster-wall.vue","description":"A wall of printable poster cards, one per 100-list entry, each with a \"Show on map\" action that","element":"my-upg-100-list-map","type":"single","isMap":true,"iframeUrl":"./my-upg-100-list/poster-wall/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-9MM9Wm9yP7JwtlWBL0+xuJ2yHwHD/trEHYrsk0kEKgR4pXXdTNguIE50TqRCUbK2\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}},{"profile":"upg-100-list","file":"upg-100-list.vue","description":"A personal unreached-people-groups list painted as true boundary polygons —","element":"my-upg-100-list-map","type":"single","isMap":true,"iframeUrl":"./my-upg-100-list/upg-100-list/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/upg-100-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-9MM9Wm9yP7JwtlWBL0+xuJ2yHwHD/trEHYrsk0kEKgR4pXXdTNguIE50TqRCUbK2\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"upg-100-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}},{"profile":"upg-100-mfe","file":"upg-100-mfe.vue","description":"The standalone, shareable and embeddable composite of the my-upg-100-list family — it nests the map","element":"my-upg-100-list-map","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./my-upg-100-list/upg-100-mfe/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/upg-100-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-9MM9Wm9yP7JwtlWBL0+xuJ2yHwHD/trEHYrsk0kEKgR4pXXdTNguIE50TqRCUbK2\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"upg-100-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}}]},{"bundle":"people-groups-grid","scriptUrl":"./people-groups-grid/people-groups-grid.js","output":"doxa-maps/people-groups-grid/people-groups-grid.js","integrity":"sha384-ss5PmeSkKuxafBwvxZG3r7roP0OB/oVGwFbfrHnydEhjbtrlB4eisdsPXEyCJF37","elements":["people-groups-grid"],"profiles":[{"profile":"people-groups-grid","file":"people-groups-grid.vue","description":"The people-groups grid as an owned custom element: card list, search and four","element":"people-groups-grid","type":"parameterized","isMap":false,"iframeUrl":"./people-groups-grid/people-groups-grid/index.html","scriptUrl":"./people-groups-grid/people-groups-grid.js","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./people-groups-grid/people-groups-grid.js\" integrity=\"sha384-ss5PmeSkKuxafBwvxZG3r7roP0OB/oVGwFbfrHnydEhjbtrlB4eisdsPXEyCJF37\" crossorigin=\"anonymous\">\u003c/script>\n\u003cpeople-groups-grid profile-config='{\"profile\":\"people-groups-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/people-groups-grid>"},"instances":[{"id":"people-groups-grid","title":"People Groups Grid — standalone (own search + 4 dropdowns)","apiBaseUrl":"","props":{"profile":"people-groups-grid","provider":"maplibre","instanceId":"people-groups-grid","pray-base-url":"https://pray.doxa.life"},"element":"people-groups-grid","iframeUrl":"./people-groups-grid/people-groups-grid/people-groups-grid/index.html","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/people-groups-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"driven","title":"People Groups Grid — externally driven (controls off, props/events)","apiBaseUrl":"","props":{"profile":"people-groups-grid","provider":"maplibre","instanceId":"people-groups-grid-driven","pray-base-url":"https://pray.doxa.life","show-search":"false","show-filters":"false"},"element":"people-groups-grid","iframeUrl":"./people-groups-grid/people-groups-grid/driven/index.html","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/driven/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"plugin-studio","scriptUrl":"./plugin-studio/plugin-studio.js","output":"doxa-maps/plugin-studio/plugin-studio.js","integrity":"sha384-2RlLFRU2XdjBN7w+FPguj8INgj57JFg4IFT2AmdefGnR9QQLehbiiAffV45LcsFH","elements":["plugin-studio"],"composes":["bp-big-picture","people-groups-grid","doxa-research-map","doxa-simple-map","cities-internet-map","gospel-resources-map","my-upg-100-list-map","doxa-vision-card","all-people-groups","research-dashboard"],"profiles":[{"profile":"plugin-studio","file":"plugin-studio.vue","description":"The developer's viewing surface: a sidebar that is the composability ladder","element":"plugin-studio","type":"nested-mfe-spa","isMap":false,"iframeUrl":"./plugin-studio/plugin-studio/index.html","scriptUrl":"./plugin-studio/plugin-studio.js","embed":{"iframe":"\u003ciframe src=\"./plugin-studio/plugin-studio/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./plugin-studio/plugin-studio.js\" integrity=\"sha384-2RlLFRU2XdjBN7w+FPguj8INgj57JFg4IFT2AmdefGnR9QQLehbiiAffV45LcsFH\" crossorigin=\"anonymous\">\u003c/script>\n\u003cplugin-studio profile-config='{\"profile\":\"plugin-studio\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/plugin-studio>"},"instances":[{"id":"studio","title":"Plugin Studio — every element by capability 5 -> 1 (developer studio)","apiBaseUrl":"","props":{"profile":"plugin-studio","provider":"maplibre","instanceId":"plugin-studio","title":"Plugin Studio"},"element":"plugin-studio","iframeUrl":"./plugin-studio/plugin-studio/studio/index.html","embed":{"iframe":"\u003ciframe src=\"./plugin-studio/plugin-studio/studio/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"prayer-walk-planner","scriptUrl":"./prayer-walk-planner/prayer-walk-planner.js","output":"doxa-maps/prayer-walk-planner/prayer-walk-planner.js","integrity":"sha384-F0+r4avX8xkXp0hBpU5EBPU0InMRCObIn2Ieh9HJNn1r2amk8/qHmJ68WuNfsirC","elements":["prayer-walk-planner"],"profiles":[{"profile":"prayer-walk-planner","file":"prayer-walk-planner.vue","description":"A simple polygon-drawing tool for planning prayer-walking routes.","element":"prayer-walk-planner","type":"single","isMap":true,"iframeUrl":"./prayer-walk-planner/prayer-walk-planner/index.html","scriptUrl":"./prayer-walk-planner/prayer-walk-planner.js","embed":{"iframe":"\u003ciframe src=\"./prayer-walk-planner/prayer-walk-planner/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./prayer-walk-planner/prayer-walk-planner.js\" integrity=\"sha384-F0+r4avX8xkXp0hBpU5EBPU0InMRCObIn2Ieh9HJNn1r2amk8/qHmJ68WuNfsirC\" crossorigin=\"anonymous\">\u003c/script>\n\u003cprayer-walk-planner profile-config='{\"profile\":\"prayer-walk-planner\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/prayer-walk-planner>"}}]},{"bundle":"regions-dashboard","scriptUrl":"./regions-dashboard/regions-dashboard.js","output":"doxa-maps/regions-dashboard/regions-dashboard.js","integrity":"sha384-BHIpCnisN9qu6gdJpslS3Q59xknjMZfO4AL3tNe6jbYfdg3CShiTaVWQYv5KyidS","elements":["regions-dashboard"],"composes":["regions-dashboard/regions-list","regions-dashboard/region-dashboards"],"profiles":[{"profile":"region-dashboards","file":"region-dashboards.vue","description":"The dashboard half of the Driver's 2-tab Regions element: given a region (or a","element":"regions-dashboard","type":"single","isMap":true,"iframeUrl":"./regions-dashboard/region-dashboards/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/region-dashboards/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-BHIpCnisN9qu6gdJpslS3Q59xknjMZfO4AL3tNe6jbYfdg3CShiTaVWQYv5KyidS\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"region-dashboards\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}},{"profile":"regions-list","file":"regions-list.vue","description":"A refactor of DX-life's /regions index page (app/pages/regions/index.vue) into","element":"regions-dashboard","type":"single","isMap":true,"iframeUrl":"./regions-dashboard/regions-list/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/regions-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-BHIpCnisN9qu6gdJpslS3Q59xknjMZfO4AL3tNe6jbYfdg3CShiTaVWQYv5KyidS\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"regions-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}},{"profile":"regions-mfe","file":"regions-mfe.vue","description":"The composite the Driver asked for: ONE element carrying the SELECT VIEW switcher","element":"regions-dashboard","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./regions-dashboard/regions-mfe/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/regions-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-BHIpCnisN9qu6gdJpslS3Q59xknjMZfO4AL3tNe6jbYfdg3CShiTaVWQYv5KyidS\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"regions-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}}]},{"bundle":"research-dashboard","scriptUrl":"./research-dashboard/research-dashboard.js","output":"doxa-maps/research-dashboard/research-dashboard.js","integrity":"sha384-60D2NR4qeGMpN3QBUP2aTS2Ay90/Qqka2PiJQR12HoyewjpUeJXWDV3qihflLQGX","elements":["research-dashboard-map"],"profiles":[{"profile":"research-dashboard","file":"research-dashboard.vue","description":"Coordinated-Multiple-Views research dashboard for 10/40-window UPGs (live pray.doxa.life): docked facet rail + map-as-hero + linked table/charts, brushing-and-linking over one in-memory store.","element":"research-dashboard-map","type":"monolithic","isMap":true,"iframeUrl":"./research-dashboard/research-dashboard/index.html","scriptUrl":"./research-dashboard/research-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./research-dashboard/research-dashboard/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./research-dashboard/research-dashboard.js\" integrity=\"sha384-60D2NR4qeGMpN3QBUP2aTS2Ay90/Qqka2PiJQR12HoyewjpUeJXWDV3qihflLQGX\" crossorigin=\"anonymous\">\u003c/script>\n\u003cresearch-dashboard-map profile-config='{\"profile\":\"research-dashboard\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/research-dashboard-map>"},"bundle":"research-dashboard"}]},{"bundle":"research-map-plus-grid","scriptUrl":"./research-map-plus-grid/research-map-plus-grid.js","output":"doxa-maps/research-map-plus-grid/research-map-plus-grid.js","integrity":"sha384-sOkaMV0UFr2uNXfoJpRvaD+gHD6xFlkmpR7MzEwwFdarYdid8aN9Nj1Y8TqQJuFo","elements":["research-map-plus-grid"],"composes":["doxa-research-map","people-groups-grid"],"profiles":[{"profile":"research-map-plus-grid","file":"research-map-plus-grid.vue","description":"The monolithic 7-tab research map (cap-3) on top, the People Groups grid beneath,","element":"research-map-plus-grid","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./research-map-plus-grid/research-map-plus-grid/index.html","scriptUrl":"./research-map-plus-grid/research-map-plus-grid.js","embed":{"iframe":"\u003ciframe src=\"./research-map-plus-grid/research-map-plus-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./research-map-plus-grid/research-map-plus-grid.js\" integrity=\"sha384-sOkaMV0UFr2uNXfoJpRvaD+gHD6xFlkmpR7MzEwwFdarYdid8aN9Nj1Y8TqQJuFo\" crossorigin=\"anonymous\">\u003c/script>\n\u003cresearch-map-plus-grid profile-config='{\"profile\":\"research-map-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/research-map-plus-grid>"},"instances":[{"id":"default","title":"default","apiBaseUrl":"","props":{"profile":"research-map-plus-grid"},"element":"research-map-plus-grid","iframeUrl":"./research-map-plus-grid/research-map-plus-grid/default/index.html","embed":{"iframe":"\u003ciframe src=\"./research-map-plus-grid/research-map-plus-grid/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"stack-demo","scriptUrl":"./stack-demo/stack-demo.js","output":"doxa-maps/stack-demo/stack-demo.js","integrity":"sha384-gnwM6s+puf1K60Nl7crQcC2QC+9BxwpkaTx4OepLZ8VUCraZc+aRlWpsb6nj6Gyf","elements":["stack-demo"],"composes":["research-dashboard-map","people-groups-grid"],"profiles":[{"profile":"stack-demo","file":"stack-demo.vue","description":"Groups TWO independent elements TOP-TO-BOTTOM so you can embed the pair on a page and","element":"stack-demo","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./stack-demo/stack-demo/index.html","scriptUrl":"./stack-demo/stack-demo.js","embed":{"iframe":"\u003ciframe src=\"./stack-demo/stack-demo/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./stack-demo/stack-demo.js\" integrity=\"sha384-gnwM6s+puf1K60Nl7crQcC2QC+9BxwpkaTx4OepLZ8VUCraZc+aRlWpsb6nj6Gyf\" crossorigin=\"anonymous\">\u003c/script>\n\u003cstack-demo profile-config='{\"profile\":\"stack-demo\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/stack-demo>"},"instances":[{"id":"pair","title":"pair","apiBaseUrl":"","props":{"profile":"stack-demo"},"element":"stack-demo","iframeUrl":"./stack-demo/stack-demo/pair/index.html","embed":{"iframe":"\u003ciframe src=\"./stack-demo/stack-demo/pair/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"template-bundle","scriptUrl":"./template-bundle/template-bundle.js","output":"doxa-maps/template-bundle/template-bundle.js","integrity":"sha384-6SGiWbRI14LXEIhcKTQ3rZPX2ZLKlxaBBZkrnWx4zNsgG5J0l2MxdeI8Fbf0O5R3","elements":["template-bundle"],"profiles":[{"profile":"template-map-a","file":"template-map-a.vue","description":"Minimal example profile A — a colored placeholder, no Mapbox or data.","element":"template-bundle","type":"single","isMap":false,"iframeUrl":"./template-bundle/template-map-a/index.html","scriptUrl":"./template-bundle/template-bundle.js","embed":{"iframe":"\u003ciframe src=\"./template-bundle/template-map-a/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./template-bundle/template-bundle.js\" integrity=\"sha384-6SGiWbRI14LXEIhcKTQ3rZPX2ZLKlxaBBZkrnWx4zNsgG5J0l2MxdeI8Fbf0O5R3\" crossorigin=\"anonymous\">\u003c/script>\n\u003ctemplate-bundle profile-config='{\"profile\":\"template-map-a\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/template-bundle>"},"bundle":"template-bundle"},{"profile":"template-map-b","file":"template-map-b.vue","description":"Minimal example profile B — a second profile in the same bundle.","element":"template-bundle","type":"single","isMap":false,"iframeUrl":"./template-bundle/template-map-b/index.html","scriptUrl":"./template-bundle/template-bundle.js","embed":{"iframe":"\u003ciframe src=\"./template-bundle/template-map-b/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./template-bundle/template-bundle.js\" integrity=\"sha384-6SGiWbRI14LXEIhcKTQ3rZPX2ZLKlxaBBZkrnWx4zNsgG5J0l2MxdeI8Fbf0O5R3\" crossorigin=\"anonymous\">\u003c/script>\n\u003ctemplate-bundle profile-config='{\"profile\":\"template-map-b\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/template-bundle>"},"bundle":"template-bundle"}]},{"bundle":"upg-neighbor","scriptUrl":"./upg-neighbor/upg-neighbor.js","output":"doxa-maps/upg-neighbor/upg-neighbor.js","integrity":"sha384-JDJr4qoVZuiSi/rvgdzeuUNrzf7vjPdyh/g8dg7X8RHkZk/Y+tYXIQ3gpEzrU07q","elements":["upg-neighbor"],"profiles":[{"profile":"upg-neighbor","file":"upg-neighbor.vue","description":"Rescues the three pre-bundler experimental maps that live inside the legacy","element":"upg-neighbor","type":"parameterized","isMap":false,"iframeUrl":"./upg-neighbor/upg-neighbor/index.html","scriptUrl":"./upg-neighbor/upg-neighbor.js","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./upg-neighbor/upg-neighbor.js\" integrity=\"sha384-JDJr4qoVZuiSi/rvgdzeuUNrzf7vjPdyh/g8dg7X8RHkZk/Y+tYXIQ3gpEzrU07q\" crossorigin=\"anonymous\">\u003c/script>\n\u003cupg-neighbor profile-config='{\"profile\":\"upg-neighbor\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/upg-neighbor>"},"instances":[{"id":"send-map","title":"Send Map (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"send-map","legacyTitle":"Send Map"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/send-map/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/send-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"upg-neighbors","title":"UPG Neighbors (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"upg-neighbors","legacyTitle":"UPG Neighbors"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/upg-neighbors/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/upg-neighbors/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"lang-cluster","title":"Language Clusters (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"lang-cluster","legacyTitle":"Language Clusters"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/lang-cluster/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/lang-cluster/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"bloom-cockpit","title":"Bloom Cockpit (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"bloom-cockpit","legacyTitle":"Bloom Cockpit"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/bloom-cockpit/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/bloom-cockpit/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"flower-mesh","title":"Flower Mesh (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"flower-mesh","legacyTitle":"Flower Mesh"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/flower-mesh/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/flower-mesh/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]}]}; \n\n" + "script": "\n\n" }, "bundle": "all-people-groups" } @@ -35,7 +35,7 @@ "bundle": "big-picture", "scriptUrl": "./big-picture/big-picture.js", "output": "doxa-maps/big-picture/big-picture.js", - "integrity": "sha384-v0b+aZ7TBxmgUIBBLdKEm6HzwjY3jAGyOFNsKeKCKY4EIRpiWRTcNLavAitHRt8h", + "integrity": "sha384-voYmtWeACTFBJOOeqcbf5cuBKSjyskA89cjvm5qcvrx9IUFTAhLuICyRXUM6fL+Y", "elements": [ "bp-big-picture", "bp-research-header", @@ -57,7 +57,7 @@ "scriptUrl": "./big-picture/big-picture.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "instances": [ { @@ -101,7 +101,7 @@ "bundle": "cities-internet", "scriptUrl": "./cities-internet/cities-internet.js", "output": "doxa-maps/cities-internet/cities-internet.js", - "integrity": "sha384-tNig8gXdCocWVKD5iXR6iRqiAr7msWFtcFKzYif0L0G5i/RM+HI+SO8oR5c6O+5R", + "integrity": "sha384-lF6OGT0FH7sBXnALLiAoji8TADE05n7yqqoortZAifVdH6fNJ4yQeRRwjT8oXq+V", "elements": [ "cities-internet-map" ], @@ -117,7 +117,7 @@ "scriptUrl": "./cities-internet/cities-internet.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -131,7 +131,7 @@ "scriptUrl": "./cities-internet/cities-internet.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -145,7 +145,7 @@ "scriptUrl": "./cities-internet/cities-internet.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } } ] @@ -154,7 +154,7 @@ "bundle": "country-posters", "scriptUrl": "./country-posters/country-posters.js", "output": "doxa-maps/country-posters/country-posters.js", - "integrity": "sha384-QdkwinBM2mJMqVlEX7HYctnr/9k9Nj01MDwFGwYL7tT62O8Nm3JuujLJ8qxZTFJ7", + "integrity": "sha384-pWCBnzi9A8axrT5aW4DjigzZ8utiQeU+OVsOIKVKA9vC61ArtxaRxjqQ8l5xNxzI", "elements": [ "country-posters-map" ], @@ -174,7 +174,7 @@ "scriptUrl": "./country-posters/country-posters.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -188,21 +188,21 @@ "scriptUrl": "./country-posters/country-posters.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { "profile": "country-posters-mfe", "file": "country-posters-mfe.vue", - "description": "", - "element": "country-posters-map", + "description": "Country Posters as ONE two-tab element — the countries map and the printable", + "element": "country-posters-mfe", "type": "nested-elements-mfe", "isMap": true, "iframeUrl": "./country-posters/country-posters-mfe/index.html", "scriptUrl": "./country-posters/country-posters.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } } ] @@ -211,7 +211,7 @@ "bundle": "dashboard-plus-grid", "scriptUrl": "./dashboard-plus-grid/dashboard-plus-grid.js", "output": "doxa-maps/dashboard-plus-grid/dashboard-plus-grid.js", - "integrity": "sha384-YbJgljynZ4t3/Ro44oHQy9ihl9/5o7j4IKts8MNRfA73Cb5cyD7U52DklXjzpLpG", + "integrity": "sha384-KWYs/unuewlt9PJ4CC/VlyoghFmN4KtHqsweo68lJwUNL1g3FJ8VctASOYWAt91q", "elements": [ "dashboard-plus-grid" ], @@ -231,7 +231,7 @@ "scriptUrl": "./dashboard-plus-grid/dashboard-plus-grid.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "instances": [ { @@ -255,7 +255,7 @@ "bundle": "demo-map", "scriptUrl": "./demo-map/demo-map.js", "output": "doxa-maps/demo-map/demo-map.js", - "integrity": "sha384-QiUJUgeFn27tiHKVhAYtJuIWo+1z5xsCUP1Nj4m1H4cFUV3vUA7ADTP58Ky3oVtQ", + "integrity": "sha384-2ItGdUG5OW9uHN4ldNF6To6hvTy3XGdFnJrJenyyqShBjIi2NgcyXTyhYu2mttHH", "elements": [ "demo-map" ], @@ -271,7 +271,7 @@ "scriptUrl": "./demo-map/demo-map.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "instances": [ { @@ -349,7 +349,7 @@ "bundle": "doxa-research-map", "scriptUrl": "./doxa-research-map/doxa-research-map.js", "output": "doxa-maps/doxa-research-map/doxa-research-map.js", - "integrity": "sha384-oecoezttPmpRe5GNG/Yko6IkEbtLjCD7PD7qghU1ZigprnfLKhbf0eBEiEbE24iR", + "integrity": "sha384-ycDpVdTjizEUxzsO+lQpTagpdLenXlLnvFQ/juKcWeazo2Qvo1B1QYpDxykzA9Zp", "elements": [ "doxa-research-map" ], @@ -365,7 +365,7 @@ "scriptUrl": "./doxa-research-map/doxa-research-map.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "instances": [ { @@ -391,7 +391,7 @@ "bundle": "doxa-simple-map", "scriptUrl": "./doxa-simple-map/doxa-simple-map.js", "output": "doxa-maps/doxa-simple-map/doxa-simple-map.js", - "integrity": "sha384-hzEui48BqpW8VhRthz3daMgAdw4w4M3gtBre4ce4sXuAmS+39pMRW9reNAvpFb+W", + "integrity": "sha384-8drw8bByutNX9KwjTP4nrgMqtlu7xgrqxK6ebWLh8VTWAYC39TQ3d/8qwBxhPJMC", "elements": [ "doxa-map", "doxa-simple-map" @@ -408,7 +408,7 @@ "scriptUrl": "./doxa-simple-map/doxa-simple-map.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "instances": [ { @@ -591,7 +591,7 @@ "bundle": "gospel-resources", "scriptUrl": "./gospel-resources/gospel-resources.js", "output": "doxa-maps/gospel-resources/gospel-resources.js", - "integrity": "sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI", + "integrity": "sha384-XgF3DvRZEHIzZxcUqixiOsEk5bh6vIpwP7Drf9fBYy9F9cB7bp3NP2G2E56pPGt0", "elements": [ "gospel-resources-map" ], @@ -607,7 +607,7 @@ "scriptUrl": "./gospel-resources/gospel-resources.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -621,7 +621,7 @@ "scriptUrl": "./gospel-resources/gospel-resources.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -635,7 +635,7 @@ "scriptUrl": "./gospel-resources/gospel-resources.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -649,7 +649,7 @@ "scriptUrl": "./gospel-resources/gospel-resources.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } } ] @@ -658,7 +658,7 @@ "bundle": "my-upg-100-list", "scriptUrl": "./my-upg-100-list/my-upg-100-list.js", "output": "doxa-maps/my-upg-100-list/my-upg-100-list.js", - "integrity": "sha384-cs9Yz6dE0cp2ChVeNB9btNOXrqNk+xl0r4374AkMHRiEW7x+u3wlLDBv9TU469Ra", + "integrity": "sha384-9MM9Wm9yP7JwtlWBL0+xuJ2yHwHD/trEHYrsk0kEKgR4pXXdTNguIE50TqRCUbK2", "elements": [ "my-upg-100-list-map" ], @@ -678,7 +678,7 @@ "scriptUrl": "./my-upg-100-list/my-upg-100-list.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -692,7 +692,7 @@ "scriptUrl": "./my-upg-100-list/my-upg-100-list.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -706,7 +706,7 @@ "scriptUrl": "./my-upg-100-list/my-upg-100-list.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } } ] @@ -913,7 +913,7 @@ "bundle": "research-dashboard", "scriptUrl": "./research-dashboard/research-dashboard.js", "output": "doxa-maps/research-dashboard/research-dashboard.js", - "integrity": "sha384-VvOYWBcDd7NtnB1eveECKX88ZHIpGnOf79tVdCUqGZzXLgoZPc+oTTPIC3ajaYsn", + "integrity": "sha384-60D2NR4qeGMpN3QBUP2aTS2Ay90/Qqka2PiJQR12HoyewjpUeJXWDV3qihflLQGX", "elements": [ "research-dashboard-map" ], @@ -929,7 +929,7 @@ "scriptUrl": "./research-dashboard/research-dashboard.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "bundle": "research-dashboard" } @@ -1027,7 +1027,7 @@ "bundle": "template-bundle", "scriptUrl": "./template-bundle/template-bundle.js", "output": "doxa-maps/template-bundle/template-bundle.js", - "integrity": "sha384-k+G5UlkZ99QmuecCCWUrjz998JBJnQT3hsDG0A+IVmiX9F3CNswmHXXzYhjnUTDX", + "integrity": "sha384-6SGiWbRI14LXEIhcKTQ3rZPX2ZLKlxaBBZkrnWx4zNsgG5J0l2MxdeI8Fbf0O5R3", "elements": [ "template-bundle" ], @@ -1043,7 +1043,7 @@ "scriptUrl": "./template-bundle/template-bundle.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "bundle": "template-bundle" }, @@ -1058,7 +1058,7 @@ "scriptUrl": "./template-bundle/template-bundle.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "bundle": "template-bundle" } diff --git a/public/doxa-maps/my-upg-100-list/my-upg-100-list.js b/public/doxa-maps/my-upg-100-list/my-upg-100-list.js index 0b5ee047e..91ca4cb3e 100644 --- a/public/doxa-maps/my-upg-100-list/my-upg-100-list.js +++ b/public/doxa-maps/my-upg-100-list/my-upg-100-list.js @@ -22,7 +22,7 @@ * pinia v2.3.1 * (c) 2025 Eduardo San Martin Morote * @license MIT - */let Ac;const rr=e=>Ac=e,Sc=Symbol();function bs(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var ra;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(ra||(ra={}));function lh(){const e=Ir(!0),t=e.run(()=>de({}));let o=[],n=[];const a=qo({install(r){rr(a),a._a=r,r.provide(Sc,a),r.config.globalProperties.$pinia=a,n.forEach(s=>o.push(s)),n=[]},use(r){return this._a?o.push(r):n.push(r),this},_p:o,_a:null,_e:e,_s:new Map,state:t});return a}const $c=()=>{};function Ec(e,t,o,n=$c){e.push(t);const a=()=>{const r=e.indexOf(t);r>-1&&(e.splice(r,1),n())};return!o&&Bi()&&Np(a),a}function wn(e,...t){e.slice().forEach(o=>{o(...t)})}const ch=e=>e(),Cc=Symbol(),ys=Symbol();function _s(e,t){e instanceof Map&&t instanceof Map?t.forEach((o,n)=>e.set(n,o)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const o in t){if(!t.hasOwnProperty(o))continue;const n=t[o],a=e[o];bs(a)&&bs(n)&&e.hasOwnProperty(o)&&!st(n)&&!vo(n)?e[o]=_s(a,n):e[o]=n}return e}const uh=Symbol();function dh(e){return!bs(e)||!e.hasOwnProperty(uh)}const{assign:Fo}=Object;function ph(e){return!!(st(e)&&e.effect)}function gh(e,t,o,n){const{state:a,actions:r,getters:s}=t,i=o.state.value[e];let l;function u(){i||(o.state.value[e]=a?a():{});const c=tg(o.state.value[e]);return Fo(c,r,Object.keys(s||{}).reduce((p,g)=>(p[g]=qo(te(()=>{rr(o);const k=o._s.get(e);return s[g].call(k,k)})),p),{}))}return l=Lc(e,u,t,o,n,!0),l}function Lc(e,t,o={},n,a,r){let s;const i=Fo({actions:{}},o),l={deep:!0};let u,c,p=[],g=[],k;const w=n.state.value[e];!r&&!w&&(n.state.value[e]={});let _;function d(T){let I;u=c=!1,typeof T=="function"?(T(n.state.value[e]),I={type:ra.patchFunction,storeId:e,events:k}):(_s(n.state.value[e],T),I={type:ra.patchObject,payload:T,storeId:e,events:k});const H=_=Symbol();lo().then(()=>{_===H&&(u=!0)}),c=!0,wn(p,I,n.state.value[e])}const h=r?function(){const{state:I}=o,H=I?I():{};this.$patch(W=>{Fo(W,H)})}:$c;function f(){s.stop(),p=[],g=[],n._s.delete(e)}const m=(T,I="")=>{if(Cc in T)return T[ys]=I,T;const H=function(){rr(n);const W=Array.from(arguments),re=[],P=[];function $(N){re.push(N)}function M(N){P.push(N)}wn(g,{args:W,name:H[ys],store:x,after:$,onError:M});let C;try{C=T.apply(this&&this.$id===e?this:x,W)}catch(N){throw wn(P,N),N}return C instanceof Promise?C.then(N=>(wn(re,N),N)).catch(N=>(wn(P,N),Promise.reject(N))):(wn(re,C),C)};return H[Cc]=!0,H[ys]=I,H},v={_p:n,$id:e,$onAction:Ec.bind(null,g),$patch:d,$reset:h,$subscribe(T,I={}){const H=Ec(p,T,I.detached,()=>W()),W=s.run(()=>ct(()=>n.state.value[e],re=>{(I.flush==="sync"?c:u)&&T({storeId:e,type:ra.direct,events:k},re)},Fo({},l,I)));return H},$dispose:f},x=pn(v);n._s.set(e,x);const S=(n._a&&n._a.runWithContext||ch)(()=>n._e.run(()=>(s=Ir()).run(()=>t({action:m}))));for(const T in S){const I=S[T];if(st(I)&&!ph(I)||vo(I))r||(w&&dh(I)&&(st(I)?I.value=w[T]:_s(I,w[T])),n.state.value[e][T]=I);else if(typeof I=="function"){const H=m(I,T);S[T]=H,i.actions[T]=I}}return Fo(x,S),Fo(Be(x),S),Object.defineProperty(x,"$state",{get:()=>n.state.value[e],set:T=>{d(I=>{Fo(I,T)})}}),n._p.forEach(T=>{Fo(x,s.run(()=>T({store:x,app:n._a,pinia:n,options:i})))}),w&&r&&o.hydrate&&o.hydrate(x.$state,w),u=!0,c=!0,x}/*! #__NO_SIDE_EFFECTS__ */function vs(e,t,o){let n,a;const r=typeof t=="function";typeof e=="string"?(n=e,a=r?o:t):(a=e,n=e.id);function s(i,l){const u=mg();return i=i||(u?Fe(Sc,null):null),i&&rr(i),i=Ac,i._s.has(n)||(r?Lc(n,t,a,i):gh(n,a,i)),i._s.get(n)}return s.$id=n,s}const ks="__doxaMapToken",ws="doxa:map-token",Tc="__doxaMapTokenBridge",xn=()=>{if(typeof window>"u")return"";const e=window[ks];return typeof e=="string"?e:""};function Pc(e){if(typeof window>"u")return"";const t=typeof e=="string"?e.trim():"";if(!t||t===xn())return xn();window[ks]=t;try{window.dispatchEvent(new CustomEvent(ws,{detail:t}))}catch{}return t}function fh(){if(typeof window>"u"||window[Tc])return;const e=typeof window.MAP_TOKEN=="string"?window.MAP_TOKEN:"";e&&!xn()&&(window[ks]=e);try{Object.defineProperty(window,"MAP_TOKEN",{configurable:!0,get(){return xn()},set(t){Pc(t)}}),window[Tc]=!0}catch{}}function hh(){fh();const e=de(xn());if(typeof window<"u"){const t=()=>{e.value=xn()};window.addEventListener(ws,t);try{uo(()=>window.removeEventListener(ws,t))}catch{}}return e}function Mc(e){return Eg({loader:e,onError(t,o,n,a){a<=3?setTimeout(o,a*500):n()}})}const mh={backToLegend:"العودة إلى المفتاح",closeDetailView:"إغلاق عرض التفاصيل"},bh={prayForThem:"صلِّ من أجلهم",adoptThem:"تبنَّهم",moreInfo:"مزيد من المعلومات",zoomIn:"تكبير",zoomOut:"تصغير",switchToLightMode:"التبديل إلى الوضع الفاتح",switchToDarkMode:"التبديل إلى الوضع الداكن",resetView:"إعادة تعيين العرض",toggleFullscreen:"تبديل ملء الشاشة",aboutThisMap:"حول هذه الخريطة",closeMenu:"إغلاق القائمة",reloadMap:"إعادة تحميل الخريطة",showClusters:"إظهار المجموعات",clusterSettings:"إعدادات المجموعات",startAutoFly:"بدء الطيران التلقائي",stopFlight:"إيقاف الطيران",speedLabel:"السرعة:",speedOption:{slow:"بطيء",normal:"عادي",fast:"سريع"},shareEmbed:"مشاركة وتضمين"},yh={labels:{country:"الدولة:",population:"السكان:",language:"اللغة:",religion:"الديانة:",languageFamily:"العائلة اللغوية:",peopleCommitted:"ملتزمون بالصلاة:"},messages:{noDescription:"لا يوجد وصف متاح."}},_h={title:{prayer:"تقدم الصلاة",engagement:"تقدم الانخراط",adoption:"تقدم التبني",languageFamilies:"العائلات اللغوية",doxaRegions:"مناطق Doxa",affinityBlocs:"كتل القرابة",gospelResources:"موارد الإنجيل"},header:{collapsed:"وسيلة الإيضاح",peopleGroupFallback:"مجموعة الشعب"},prayer:{needsPrayer:"يحتاج إلى صلاة",hasPrayer:"لديه صلاة",fullPrayerCoverage:"تغطية صلاة كاملة"},progress:{title:"التقدم",covered:"{covered} من {total} مجموعة شعبية مغطاة بالصلاة · {pct}%",short:"{covered} من {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"يحتاج إلى انخراط",hasEngagement:"لديه انخراط"},adoption:{needsAdoption:"يحتاج إلى تبني",hasAdoption:"لديه تبني"},columns:{upgs:"UUPGs",population:"السكان",name:"الاسم"},footer:{total:"الإجمالي"},sortByUpgs:"ترتيب حسب UUPG",sortByPop:"ترتيب حسب السكان",colLabel:{religion:"ديانات UUPG",prayer:"حالة الصلاة",engagement:"حالة المشاركة",adoption:"حالة التبني",status:"الحالة"},titleBar:{legend:"مفتاح الخريطة",peopleGroups:"الشعوب",wagfRegions:"مناطق WAGF",languages:"اللغات"}},vh={menuComingSoon:"القائمة قادمة قريباً"},kh={clusterByRegion:"حسب منطقة Doxa",clusterByLanguageFamily:"حسب العائلة اللغوية",clusterByGospelResource:"حسب مورد الإنجيل"},wh={header:"دورة الصلاة الحالية",lap:"الدورة",upgs:"UUPGs",separator:" من "},xh={"%count% people groups in %countries% countries":"%count% مجموعة بشرية في %countries% دولة","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"تضم %region% %count% مجموعة بشرية في %countries% دولة. يشير لون كل نقطة إلى عدد الأشخاص الذين يصلّون من أجل تلك المجموعة البشرية.","1+ People Praying":"شخص واحد أو أكثر يصلّي","100+ People Praying":"أكثر من 100 شخص يصلّون",Adopted:"تم انتماؤه","Adoption Progress":"تقدُّم الإنتماء","All Regions":"جميع المناطق","Alternate Names":"الأسماء البديلة","Clear All":"مسح الكل",Countries:"الدول","Countries in this region":"الدول في هذه المنطقة",Country:"الدولة",Engaged:"مُنخرَط","Engagement Progress":"تقدُّم الانخراط","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"كل مجموعة بشرية غير مبشرة تتبناها كنيسة ملتزمة بالصلاة والعطاء والإرسال","Exact Search":"بحث دقيق","Find unreached people groups by region and country.":"ابحث عن المجموعات البشرية غير المُبلَّغة حسب المنطقة والدولة.","Full Profile":"الملف الشخصي الكامل",Goal:"الهدف","Hide Filters":"إخفاء المرشحات",Intercessors:"المتشفعين","Load More":"تحميل المزيد","Loading results...":"النتائج قيد التحميل...","Mobilize 100+ people praying daily for each DOXA people group":"حشد أكثر من 100 شخص للصلاة يوميًا من أجل كل مجموعة بشرية من مجموعات دوكسا","No One Praying":"لا أحد يصلّي","No options found":"لم يتم العثور على أي خيارات","No unengaged people groups by 2033":"الهدف هو القضاء على جميع الشعوب الغير مخدومة روحيا بحلول عام 2033","Not Adopted":"لم يتم انتماؤه",Other:"أخرى","Page Not Found":"الصفحة غير موجودة","People Group":"مجموعة بشرية","People Groups":"مجموعات بشرية","People committed to praying":"الأشخاص الذين التزموا بالصلاة",Population:"عدد السكان","Prayer Coverage":"التغطية المستمرة بالصلاة","Prayer coverage progress":"تقدم تغطية الصلاة",Regions:"المناطق",Religion:"الدين","Search names, country/continent, religions...":"إبحث عن الأسماء، الدولة/القارة، الأديان...","See %region% dashboard":"عرض لوحة معلومات %region%","See All":"عرض جميع العناصر",Select:"اختر","Show Filters":"إظهار عوامل التصفية","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"توجد %count% مجموعات بشرية في %country%. تحقق من الخريطة لمعرفة المجموعات البشرية الواقعة على حدود هذه الدولة أيضًا.",Total:"المجموع","Type to search...":"اكتب ما تريد البحث عنه...","Unengaged people groups":"الشعوب الغير متفاعلة","WAGF Block":"كتلة WAGF","WAGF Region":"منطقة WAGF","people groups adopted":"الشعوب المنتمية","people groups engaged":"مجموعات بشرية مُنخرِطة"},Ah={placeholder:"شعب، مكان، لغة، ديانة",labels:{people:"الشعب:",place:"المكان:",language:"اللغة:",religion:"الديانة:"},kinds:{people:"الشعب + الدولة",peopleGroup:"الشعب",bloc:"كتلة التقارب",cluster:"مجموعة شعوب",country:"الدولة",region:"المنطقة",family:"عائلة اللغة",languageKind:"اللغة",dialect:"اللهجة",religionKind:"الدين"}},Sh={prayer:"الصلاة",adoption:"التبني",engagement:"المشاركة","affinity-blocks":"الشعوب",regions:"المناطق",countries:"الدول","language-families":"اللغات",religion:"الأديان",family:"عائلة اللغة",language:"اللغة",dialect:"اللهجة/التنوع",bloc:"كتلة التقارب",cluster:"المجموعة",group:"الشعب",pgic:"الشعب في الدولة",region:"منطقة WAGF",block:"كتلة WAGF",country:"الدولة"},$h={backToLegend:"Zurück zur Legende",closeDetailView:"Detailansicht schließen"},Eh={prayForThem:"Für sie beten",adoptThem:"Sie adoptieren",moreInfo:"Mehr Infos",zoomIn:"Vergrößern",zoomOut:"Verkleinern",switchToLightMode:"Zum hellen Modus wechseln",switchToDarkMode:"Zum dunklen Modus wechseln",resetView:"Ansicht zurücksetzen",toggleFullscreen:"Vollbild umschalten",aboutThisMap:"Über diese Karte",closeMenu:"Menü schließen",reloadMap:"Karte neu laden",showClusters:"Cluster anzeigen",clusterSettings:"Cluster-Einstellungen",startAutoFly:"Auto-Flug starten",stopFlight:"Flug stoppen",speedLabel:"Geschwindigkeit:",speedOption:{slow:"Langsam",normal:"Normal",fast:"Schnell"},shareEmbed:"Teilen und einbetten"},Ch={labels:{country:"Land:",population:"Bevölkerung:",language:"Sprache:",religion:"Religion:",languageFamily:"Sprachfamilie:",peopleCommitted:"Zum Gebet verpflichtet:"},messages:{noDescription:"Keine Beschreibung verfügbar."}},Lh={title:{prayer:"Gebetsfortschritt",engagement:"Engagement-Fortschritt",adoption:"Adoptionsfortschritt",languageFamilies:"Sprachfamilien",doxaRegions:"Doxa-Regionen",affinityBlocs:"Affinitätsblöcke",gospelResources:"Evangeliumsressourcen"},header:{collapsed:"Legende",peopleGroupFallback:"Volksgruppe"},prayer:{needsPrayer:"Braucht Gebet",hasPrayer:"Hat Gebet",fullPrayerCoverage:"Vollständige Gebetsabdeckung"},progress:{title:"Fortschritt",covered:"{covered} von {total} Volksgruppen im Gebet abgedeckt · {pct}%",short:"{covered} von {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Braucht Engagement",hasEngagement:"Hat Engagement"},adoption:{needsAdoption:"Braucht Adoption",hasAdoption:"Hat Adoption"},columns:{upgs:"UUPGs",population:"Bevölkerung"},footer:{total:"Gesamt"}},Th={menuComingSoon:"Menü folgt in Kürze"},Ph={clusterByRegion:"Nach Doxa-Region",clusterByLanguageFamily:"Nach Sprachfamilie",clusterByGospelResource:"Nach Evangeliumsressource"},Mh={header:"AKTUELLE GEBETSRUNDE",lap:"Runde",upgs:"UUPGs",separator:" von "},Nh={"%count% people groups in %countries% countries":"%count% Volksgruppen in %countries% Ländern","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% hat %count% Volksgruppen in %countries% Ländern. Die Farbe jedes Punktes zeigt, wie viele Menschen für diese Volksgruppe beten.","1+ People Praying":"1+ Menschen beten","100+ People Praying":"100+ Menschen beten",Adopted:"Angenommen","Adoption Progress":"Adoptionsfortschritt","All Regions":"Alle Regionen","Alternate Names":"Alternative Namen","Clear All":"Alle löschen",Countries:"Länder","Countries in this region":"Länder in dieser Region",Country:"Land",Engaged:"Engagiert","Engagement Progress":"Engagement-Fortschritt","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Jede einzelne der völlig unerreichten Volksgruppen soll von einer Ortsgemeinde adoptiert werden, durch Beten, Geben und Senden","Exact Search":"Exakte Suche","Find unreached people groups by region and country.":"Finde unerreichte Volksgruppen nach Region und Land.","Full Profile":"Vollständiges Profil",Goal:"Ziel","Hide Filters":"Filter ausblenden",Intercessors:"Fürbitter","Load More":"Mehr laden","Loading results...":"Ergebnisse werden geladen...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilisiere 100+ Menschen, die täglich für jede DOXA-Volksgruppe beten","No One Praying":"Niemand betet","No options found":"Keine Standorte gefunden","No unengaged people groups by 2033":"Dass es bis 2033 keine völlig unerreichte Volksgruppe mehr gibt","Not Adopted":"noch nicht adoptiert",Other:"Andere","Page Not Found":"Seite nicht gefunden","People Group":"Personengruppe","People Groups":"Volksgruppen","People committed to praying":"Menschen, die sich dem Beten verpflichtet haben",Population:"Bevölkerung","Prayer Coverage":"Gebetsabdeckung","Prayer coverage progress":"Fortschritt der Gebetsabdeckung",Regions:"Regionen",Religion:"Primäre Religion","Search names, country/continent, religions...":"Suche nach Namen, Land/Kontinent, Religionen...","See %region% dashboard":"Dashboard anzeigen: %region%","See All":"Alle anzeigen",Select:"Auswählen","Show Filters":"Filter anzeigen","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"In %country% gibt es %count% Volksgruppen. Sieh auch auf der Karte nach den Volksgruppen an der Grenze dieses Landes.",Total:"Gesamt","Type to search...":"Geben Sie etwas ein, um danach zu suchen","Unengaged people groups":"Völlig unerreichte Volksgruppen","WAGF Block":"WAGF-Block","WAGF Region":"WAGF-Region","people groups adopted":"adoptierte Volksgruppen","people groups engaged":"engagierte Volksgruppen"},Rh={placeholder:"Volk, Ort, Sprache, Religion",labels:{people:"Volk:",place:"Ort:",language:"Sprache:",religion:"Religion:"},sections:{within:"Innerhalb {selection}",allData:"Alle DOXA-Daten"}},Ih={prayer:"Gebet",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Volksgruppen",regions:"Regionen",countries:"Länder","language-families":"Sprachen",religion:"Religionen",family:"Sprachfamilie",language:"Sprache",dialect:"Dialekt/Varietät",bloc:"Affinitätsblock",cluster:"Cluster",group:"Volksgruppe",pgic:"Volksgruppe im Land",region:"WAGF-Region",block:"WAGF-Block",country:"Land"},Oh={backToLegend:"Back to Legend",closeDetailView:"Close detail view"},Fh={prayForThem:"Pray for them",adoptThem:"Adopt",moreInfo:"More info",zoomIn:"Zoom in",zoomOut:"Zoom out",switchToLightMode:"Switch to light mode",switchToDarkMode:"Switch to dark mode",resetView:"Reset view",toggleFullscreen:"Toggle fullscreen",aboutThisMap:"About this map",closeMenu:"Close menu",reloadMap:"Reload Map",showClusters:"Show Clusters",clusterSettings:"Cluster Settings",startAutoFly:"Start Auto Fly",stopFlight:"Stop Flight",speedLabel:"Speed:",speedOption:{slow:"Slow",normal:"Normal",fast:"Fast"},shareEmbed:"Share & embed",shareSteps:["Embed this map on your site","Create a list of the websites in your city","Train them to embed it too","Train them to train others to embed it too","Multiply maps everywhere for Jesus!"],share:"Share"},Dh={labels:{country:"Country:",population:"Population:",language:"Language:",religion:"Religion:",languageFamily:"Language Family:",peopleCommitted:"Committed to pray:"},messages:{noDescription:"No description available."}},Bh={title:{prayer:"Prayer Progress",engagement:"Engagement Progress",adoption:"Adoption Progress",languageFamilies:"Language Families",doxaRegions:"Doxa Regions",affinityBlocs:"Affinity Blocks",gospelResources:"Gospel Resources"},header:{default:"Legend",collapsed:"Legend",peopleGroupFallback:"People Group"},prayer:{needsPrayer:"Needs Prayer",hasPrayer:"Has Prayer",fullPrayerCoverage:"Full Prayer Coverage"},progress:{title:"Progress",covered:"{covered} of {total} people groups covered in prayer · {pct}%",short:"{covered} of {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Unengaged",hasEngagement:"Engaged"},adoption:{needsAdoption:"Needs Adoption",hasAdoption:"Has Adoption"},columns:{upgs:"UUPGs",population:"Population",name:"Name"},footer:{total:"Total"},sortByUpgs:"Sort by UUPGs",sortByPop:"Sort by Population",colLabel:{religion:"UUPG Religions",prayer:"Prayer Status",engagement:"Engagement Status",adoption:"Adoption Status",status:"Status"},titleBar:{legend:"Legend",peopleGroups:"People Groups",wagfRegions:"WAGF Regions",languages:"Languages"}},Gh={menuComingSoon:"Menu coming soon"},jh={clusterByRegion:"By Doxa Region",clusterByLanguageFamily:"By Language Family",clusterByGospelResource:"By Gospel Resource"},Uh={country:{wagfRegion:"WAGF Region",wagfBlock:"WAGF Bloc",country:"Country",uupgCount:"UUPG Count"}},Kh={header:"CURRENT PRAYER LAP",lap:"Lap",upgs:"UUPGs",separator:" of "},zh={"%count% people groups in %countries% countries":"%count% people groups in %countries% countries","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.","1+ People Praying":"1+ People Praying","100+ People Praying":"100+ People Praying",Adopted:"Adopted","Adoption Progress":"Adoption Progress","All Regions":"All Regions","Alternate Names":"Alternate Names","Clear All":"Clear All",Countries:"Countries","Countries in this region":"Countries in this region",Country:"Country",Engaged:"Engaged","Engagement Progress":"Engagement Progress","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Every unengaged people group adopted by a church committed to prayer, giving, and sending","Exact Search":"Exact Search","Find unreached people groups by region and country.":"Find unreached people groups by region and country.","Full Profile":"Full Profile",Goal:"Goal","Hide Filters":"Hide Filters",Intercessors:"Intercessors","Load More":"Load More","Loading results...":"Loading results...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilize 100+ people praying daily for each DOXA people group","No One Praying":"No One Praying","No options found":"No options found","No unengaged people groups by 2033":"No unengaged people groups by 2033","Not Adopted":"Not Adopted",Other:"Other","Page Not Found":"Page Not Found","People Group":"People Group","People Groups":"People Groups","People committed to praying":"People committed to praying",Population:"Population","Prayer Coverage":"Prayer Coverage","Prayer coverage progress":"Prayer coverage progress",Regions:"Regions",Religion:"Religion","Search names, country/continent, religions...":"Search names, country/continent, religions...","See %region% dashboard":"See %region% dashboard","See All":"See All",Select:"Select","Show Filters":"Show Filters","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.",Total:"Total","Type to search...":"Type to search...","Unengaged people groups":"Unengaged people groups","WAGF Block":"WAGF Block","WAGF Region":"WAGF Region","people groups adopted":"people groups adopted","people groups engaged":"people groups engaged"},Hh={placeholder:"People, place, language, religion",labels:{people:"People:",place:"Place:",language:"Language:",religion:"Religion:"},kinds:{people:"People Group + Country",peopleGroup:"People Group",bloc:"Affinity Block",cluster:"People Cluster",country:"Country",region:"Region",family:"Language Family",languageKind:"Language",dialect:"Dialect",religionKind:"Religion"},sections:{within:"Within {selection}",allData:"All DOXA Data"}},Vh={prayer:"Prayer",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"People Groups (Affinity)",regions:"Regions",countries:"Countries","language-families":"Languages",religion:"Religions",family:"Lang Family",language:"Language",dialect:"Dialect/Variety",bloc:"Affinity Block",cluster:"Cluster",group:"People Group",pgic:"PG in Country",region:"WAGF Region",block:"WAGF Bloc",country:"Country"},Wh={backToLegend:"Volver a la leyenda",closeDetailView:"Cerrar vista de detalle"},Yh={prayForThem:"Ora por ellos",adoptThem:"Adóptalos",moreInfo:"Más información",zoomIn:"Acercar",zoomOut:"Alejar",switchToLightMode:"Cambiar a modo claro",switchToDarkMode:"Cambiar a modo oscuro",resetView:"Restablecer vista",toggleFullscreen:"Alternar pantalla completa",aboutThisMap:"Acerca de este mapa",closeMenu:"Cerrar menú",reloadMap:"Recargar mapa",showClusters:"Mostrar clústeres",clusterSettings:"Ajustes de clústeres",startAutoFly:"Iniciar vuelo automático",stopFlight:"Detener vuelo",speedLabel:"Velocidad:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Compartir e incrustar"},qh={labels:{country:"País:",population:"Población:",language:"Idioma:",religion:"Religión:",languageFamily:"Familia lingüística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"No hay descripción disponible."}},Jh={title:{prayer:"Progreso de oración",engagement:"Progreso de implicación",adoption:"Progreso de adopción",languageFamilies:"Familias lingüísticas",doxaRegions:"Regiones Doxa",affinityBlocs:"Bloques de afinidad",gospelResources:"Recursos del Evangelio"},header:{collapsed:"Leyenda",peopleGroupFallback:"Grupo de personas"},prayer:{needsPrayer:"Necesita oración",hasPrayer:"Tiene oración",fullPrayerCoverage:"Cobertura de oración completa"},progress:{title:"Progreso",covered:"{covered} de {total} grupos de personas cubiertos en oración · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesita implicación",hasEngagement:"Tiene implicación"},adoption:{needsAdoption:"Necesita adopción",hasAdoption:"Tiene adopción"},columns:{upgs:"UUPGs",population:"Población",name:"Nombre"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por población",colLabel:{religion:"Religiones UUPG",prayer:"Estado de oración",engagement:"Estado de compromiso",adoption:"Estado de adopción",status:"Estado"},titleBar:{legend:"Leyenda",peopleGroups:"Pueblos",wagfRegions:"Regiones WAGF",languages:"Idiomas"}},Xh={menuComingSoon:"Menú próximamente"},Zh={clusterByRegion:"Por región Doxa",clusterByLanguageFamily:"Por familia lingüística",clusterByGospelResource:"Por recurso del Evangelio"},Qh={header:"VUELTA DE ORACIÓN ACTUAL",lap:"Vuelta",upgs:"UUPGs",separator:" de "},em={"%count% people groups in %countries% countries":"%count% grupos étnicos en %countries% países","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% tiene %count% grupos étnicos en %countries% países. El color de cada punto indica cuántas personas oran por ese grupo étnico.","1+ People Praying":"1+ personas orando","100+ People Praying":"100+ personas orando",Adopted:"Aprobado","Adoption Progress":"Progreso de la adopción","All Regions":"Todas las regiones","Alternate Names":"Nombres alternativos","Clear All":"Borrar todo",Countries:"Países","Countries in this region":"Países de esta región",Country:"País",Engaged:"Comprometido","Engagement Progress":"Progreso del compromiso","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Cada grupo étnico no evangelizado adoptado por una iglesia comprometida con la oración, la ofrenda y el envío.","Exact Search":"Búsqueda exacta","Find unreached people groups by region and country.":"Encuentra grupos étnicos no alcanzados por región y país.","Full Profile":"Perfil completo",Goal:"Meta","Hide Filters":"Ocultar filtros",Intercessors:"Intercesores","Load More":"Cargar más","Loading results...":"Cargando resultados...","Mobilize 100+ people praying daily for each DOXA people group":"Movilizar a más de 100 personas que oren diariamente por cada grupo étnico DOXA.","No One Praying":"Nadie orando","No options found":"No se han encontrado opciones","No unengaged people groups by 2033":"No habrá grupos étnicos sin evangelizar para 2033","Not Adopted":"No adoptado",Other:"Otros","Page Not Found":"Página no encontrada","People Group":"Grupo Étnico","People Groups":"Grupos Étnicos","People committed to praying":"Personas comprometidas con la oración",Population:"Población","Prayer Coverage":"Cobertura de oración","Prayer coverage progress":"Progreso de la cobertura de oración",Regions:"Regiones",Religion:"Religión","Search names, country/continent, religions...":"Buscar nombres, país/continente, religiones...","See %region% dashboard":"Ver el panel de %region%","See All":"Ver todo",Select:"Seleccionar","Show Filters":"Mostrar filtros","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Hay %count% grupos étnicos en %country%. Consulta también el mapa para ver los grupos étnicos en la frontera de este país.",Total:"Total","Type to search...":"Escribe para buscar...","Unengaged people groups":"Grupos étnicos no comprometidos","WAGF Block":"Bloque WAGF","WAGF Region":"Región de la WAGF","people groups adopted":"grupos de personas adoptados","people groups engaged":"grupos étnicos comprometidos"},tm={placeholder:"Pueblo, lugar, idioma, religión",labels:{people:"Pueblo:",place:"Lugar:",language:"Idioma:",religion:"Religión:"},kinds:{people:"Pueblo + país",peopleGroup:"Pueblo",bloc:"Bloque de afinidad",cluster:"Clúster de pueblos",country:"País",region:"Región",family:"Familia lingüística",languageKind:"Idioma",dialect:"Dialecto",religionKind:"Religión"}},om={prayer:"Oración",adoption:"Adopción",engagement:"Compromiso","affinity-blocks":"Pueblos",regions:"Regiones",countries:"Países","language-families":"Idiomas",religion:"Religiones",family:"Familia lingüística",language:"Idioma",dialect:"Dialecto/Variedad",bloc:"Bloque de afinidad",cluster:"Clúster",group:"Pueblo",pgic:"Pueblo en país",region:"Región WAGF",block:"Bloque WAGF",country:"País"},nm={backToLegend:"Retour à la légende",closeDetailView:"Fermer la vue détaillée"},am={prayForThem:"Priez pour eux",adoptThem:"Adoptez-les",moreInfo:"Plus d'infos",zoomIn:"Zoom avant",zoomOut:"Zoom arrière",switchToLightMode:"Passer au mode clair",switchToDarkMode:"Passer au mode sombre",resetView:"Réinitialiser la vue",toggleFullscreen:"Basculer en plein écran",aboutThisMap:"À propos de cette carte",closeMenu:"Fermer le menu",reloadMap:"Recharger la carte",showClusters:"Afficher les clusters",clusterSettings:"Paramètres des clusters",startAutoFly:"Démarrer le vol auto",stopFlight:"Arrêter le vol",speedLabel:"Vitesse :",speedOption:{slow:"Lente",normal:"Normale",fast:"Rapide"},shareEmbed:"Partager et intégrer"},rm={labels:{country:"Pays :",population:"Population :",language:"Langue :",religion:"Religion :",languageFamily:"Famille de langues :",peopleCommitted:"Engagés à prier :"},messages:{noDescription:"Aucune description disponible."}},sm={title:{prayer:"Progression de la prière",engagement:"Progression de l'engagement",adoption:"Progression de l'adoption",languageFamilies:"Familles de langues",doxaRegions:"Régions Doxa",affinityBlocs:"Blocs d'affinité",gospelResources:"Ressources de l'Évangile"},header:{collapsed:"Légende",peopleGroupFallback:"Groupe de personnes"},prayer:{needsPrayer:"Besoin de prière",hasPrayer:"Prière en cours",fullPrayerCoverage:"Couverture de prière complète"},progress:{title:"Progression",covered:"{covered} sur {total} groupes de personnes couverts par la prière · {pct}%",short:"{covered} sur {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Besoin d'engagement",hasEngagement:"Engagement en cours"},adoption:{needsAdoption:"Besoin d'adoption",hasAdoption:"Adoption en cours"},columns:{upgs:"UUPGs",population:"Population",name:"Nom"},footer:{total:"Total"},sortByUpgs:"Trier par UUPG",sortByPop:"Trier par population",colLabel:{religion:"Religions UUPG",prayer:"Statut de prière",engagement:"Statut d'engagement",adoption:"Statut d'adoption",status:"Statut"},titleBar:{legend:"Légende",peopleGroups:"Peuples",wagfRegions:"Régions WAGF",languages:"Langues"}},im={menuComingSoon:"Menu bientôt disponible"},lm={clusterByRegion:"Par région Doxa",clusterByLanguageFamily:"Par famille de langues",clusterByGospelResource:"Par ressource de l'Évangile"},cm={country:{wagfRegion:"Région WAGF",wagfBlock:"Bloc WAGF",country:"Pays",uupgCount:"Nombre d'UUPG"}},um={header:"TOUR DE PRIÈRE ACTUEL",lap:"Tour",upgs:"UUPGs",separator:" sur "},dm={"%count% people groups in %countries% countries":"%count% peuples dans %countries% pays","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% compte %count% peuples répartis dans %countries% pays. La couleur de chaque point indique combien de personnes prient pour ce peuple.","1+ People Praying":"1+ personnes en prière","100+ People Praying":"100+ personnes en prière",Adopted:"Adopté","Adoption Progress":"Progrès de l'adoption","All Regions":"Toutes les régions","Alternate Names":"Autres noms","Clear All":"Tout effacer",Countries:"Pays","Countries in this region":"Pays de cette région",Country:"Pays",Engaged:"Engagé","Engagement Progress":"Progrès de l'engagement","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Chaque peuple non engagé adopté par une église locale engagée dans la prière, le don et l'envoi","Exact Search":"Recherche exacte","Find unreached people groups by region and country.":"Trouvez des peuples non atteints par région et par pays.","Full Profile":"Profil complet",Goal:"Objectif","Hide Filters":"Masquer les filtres",Intercessors:"Intercesseurs","Load More":"Afficher plus","Loading results...":"Chargement des résultats...","Mobilize 100+ people praying daily for each DOXA people group":"Mobiliser plus de 100 personnes priant chaque jour pour chaque peuple DOXA","No One Praying":"Personne ne prie","No options found":"Aucun lieu trouvé","No unengaged people groups by 2033":"Plus aucun peuple non engagé d'ici 2033","Not Adopted":"Non adopté",Other:"Autre","Page Not Found":"Page introuvable","People Group":"Peuple","People Groups":"Peuples","People committed to praying":"Personnes engagées dans la prière",Population:"Population","Prayer Coverage":"Couverture de prière","Prayer coverage progress":"Progression de la couverture de prière",Regions:"Régions",Religion:"Religion","Search names, country/continent, religions...":"Rechercher des noms, pays/continent, religions...","See %region% dashboard":"Voir le tableau de bord : %region%","See All":"Tout afficher",Select:"Sélectionner","Show Filters":"Afficher les filtres","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Il y a %count% peuples en %country%. Consultez la carte pour découvrir également les peuples situés à la frontière de ce pays.",Total:"Total","Type to search...":"Entrer votre recherche","Unengaged people groups":"Peuples non engagés","WAGF Block":"Bloc WAGF","WAGF Region":"Région WAGF","people groups adopted":"peuples adoptés","people groups engaged":"peuples engagés"},pm={placeholder:"Peuple, lieu, langue, religion",labels:{people:"Peuple :",place:"Lieu :",language:"Langue :",religion:"Religion :"},kinds:{people:"Peuple + pays",peopleGroup:"Peuple",bloc:"Bloc d'affinité",cluster:"Grappe de peuples",country:"Pays",region:"Région",family:"Famille linguistique",languageKind:"Langue",dialect:"Dialecte",religionKind:"Religion"}},gm={prayer:"Prière",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Peuples",regions:"Régions",countries:"Pays","language-families":"Langues",religion:"Religions",family:"Famille linguistique",language:"Langue",dialect:"Dialecte/Variété",bloc:"Bloc d'affinité",cluster:"Grappe",group:"Peuple",pgic:"Peuple dans le pays",region:"Région WAGF",block:"Bloc WAGF",country:"Pays"},fm={backToLegend:"लेजेंड पर वापस जाएं",closeDetailView:"विवरण दृश्य बंद करें"},hm={prayForThem:"उनके लिए प्रार्थना करें",adoptThem:"उन्हें गोद लें",moreInfo:"अधिक जानकारी",zoomIn:"ज़ूम इन",zoomOut:"ज़ूम आउट",switchToLightMode:"लाइट मोड पर जाएं",switchToDarkMode:"डार्क मोड पर जाएं",resetView:"दृश्य रीसेट करें",toggleFullscreen:"फ़ुलस्क्रीन टॉगल करें",aboutThisMap:"इस मानचित्र के बारे में",closeMenu:"मेनू बंद करें",reloadMap:"मानचित्र पुनः लोड करें",showClusters:"क्लस्टर दिखाएं",clusterSettings:"क्लस्टर सेटिंग्स",startAutoFly:"ऑटो फ्लाई शुरू करें",stopFlight:"उड़ान रोकें",speedLabel:"गति:",speedOption:{slow:"धीमी",normal:"सामान्य",fast:"तेज़"},shareEmbed:"साझा करें और एम्बेड करें"},mm={labels:{country:"देश:",population:"जनसंख्या:",language:"भाषा:",religion:"धर्म:",languageFamily:"भाषा परिवार:",peopleCommitted:"प्रार्थना के लिए प्रतिबद्ध:"},messages:{noDescription:"कोई विवरण उपलब्ध नहीं है।"}},bm={title:{prayer:"प्रार्थना प्रगति",engagement:"सहभागिता प्रगति",adoption:"गोद लेने की प्रगति",languageFamilies:"भाषा परिवार",doxaRegions:"Doxa क्षेत्र",affinityBlocs:"समानता समूह",gospelResources:"सुसमाचार संसाधन"},header:{collapsed:"किंवदंती",peopleGroupFallback:"जनजाति समूह"},prayer:{needsPrayer:"प्रार्थना चाहिए",hasPrayer:"प्रार्थना है",fullPrayerCoverage:"पूर्ण प्रार्थना कवरेज"},progress:{title:"प्रगति",covered:"{total} में से {covered} जनजाति समूह प्रार्थना में कवर · {pct}%",short:"{total} में से {covered} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"सहभागिता चाहिए",hasEngagement:"सहभागिता है"},adoption:{needsAdoption:"गोद लेना चाहिए",hasAdoption:"गोद लिया गया"},columns:{upgs:"UUPGs",population:"जनसंख्या"},footer:{total:"कुल"}},ym={menuComingSoon:"मेनू शीघ्र आ रहा है"},_m={clusterByRegion:"Doxa क्षेत्र के अनुसार",clusterByLanguageFamily:"भाषा परिवार के अनुसार",clusterByGospelResource:"सुसमाचार संसाधन के अनुसार"},vm={header:"वर्तमान प्रार्थना चक्र",lap:"चक्र",upgs:"UUPGs",separator:" में से "},km={"%count% people groups in %countries% countries":"%countries% देशों में %count% लोगों के समूह","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% में %countries% देशों में %count% लोगों के समूह हैं। प्रत्येक बिंदु का रंग दर्शाता है कि उस लोगों के समूह के लिए कितने लोग प्रार्थना कर रहे हैं।","1+ People Praying":"1+ लोग प्रार्थना कर रहे हैं","100+ People Praying":"100+ लोग प्रार्थना कर रहे हैं",Adopted:"दत्तक लिया गया","Adoption Progress":"दत्तक ग्रहण की प्रगति","All Regions":"सभी क्षेत्र","Alternate Names":"वैकल्पिक नाम","Clear All":"सभी साफ़ करें",Countries:"देश","Countries in this region":"इस क्षेत्र के देश",Country:"देश",Engaged:"प्रवेशित","Engagement Progress":"प्रवेश की प्रगति","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"प्रत्येक असंलग्न जनसमूह जिसे प्रार्थना, दान और भेजने के लिए प्रतिबद्ध एक चर्च ने अपनाया है।","Exact Search":"सटीक खोज","Find unreached people groups by region and country.":"क्षेत्र और देश के अनुसार अगम्य लोगों के समूह खोजें।","Full Profile":"पूर्ण प्रोफ़ाइल",Goal:"लक्ष्य","Hide Filters":"फ़िल्टर छिपाएँ",Intercessors:"मध्यस्थ","Load More":"और लोड करें","Loading results...":"परिणाम लोड हो रहे हैं..।","Mobilize 100+ people praying daily for each DOXA people group":"प्रत्येक DOXA जनसमूह के लिए प्रतिदिन प्रार्थना करने हेतु 100+ लोगों को सक्रिय करें।","No One Praying":"कोई प्रार्थना नहीं कर रहा","No options found":"कोई विकल्प नहीं मिला","No unengaged people groups by 2033":"2033 तक कोई भी संलग्न न किया गया जनसमूह नहीं रहेगा।","Not Adopted":"दत्तक नहीं लिया गया",Other:"अन्य","Page Not Found":"पृष्ठ नहीं मिला","People Group":"लोगों का समूह","People Groups":"लोगों के समूह","People committed to praying":"प्रार्थना के लिए प्रतिबद्ध लोग",Population:"जनसँख्या","Prayer Coverage":"प्रार्थना कवरेज","Prayer coverage progress":"प्रार्थना कवरेज की प्रगति",Regions:"क्षेत्र",Religion:"धर्म","Search names, country/continent, religions...":"नाम, देश/महाद्वीप, धर्म खोजें..।","See %region% dashboard":"%region% डैशबोर्ड देखें","See All":"सभी देखें",Select:"चयन/छंटनी","Show Filters":"फ़िल्टर दिखाएँ","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"%country% में %count% लोगों के समूह हैं। इस देश की सीमा पर स्थित लोगों के समूहों के लिए मानचित्र भी देखें।",Total:"संपूर्ण","Type to search...":"खोजने के लिए टाइप करें..।","Unengaged people groups":"अनलग्न लोगों के समूह","WAGF Block":"WAGF ब्लॉक","WAGF Region":"डब्ल्यूएजीएफ क्षेत्र","people groups adopted":"लोगों के समूहों ने अपनाया","people groups engaged":"प्रवेशित लोगों के समूह"},wm={placeholder:"लोग, स्थान, भाषा, धर्म",labels:{people:"लोग:",place:"स्थान:",language:"भाषा:",religion:"धर्म:"}},xm={backToLegend:"Torna alla legenda",closeDetailView:"Chiudi vista dettaglio"},Am={prayForThem:"Prega per loro",adoptThem:"Adottali",moreInfo:"Più informazioni",zoomIn:"Ingrandisci",zoomOut:"Riduci",switchToLightMode:"Passa alla modalità chiara",switchToDarkMode:"Passa alla modalità scura",resetView:"Reimposta vista",toggleFullscreen:"Attiva/disattiva schermo intero",aboutThisMap:"Informazioni su questa mappa",closeMenu:"Chiudi menu",reloadMap:"Ricarica mappa",showClusters:"Mostra cluster",clusterSettings:"Impostazioni cluster",startAutoFly:"Avvia volo automatico",stopFlight:"Ferma volo",speedLabel:"Velocità:",speedOption:{slow:"Lenta",normal:"Normale",fast:"Veloce"},shareEmbed:"Condividi e incorpora"},Sm={labels:{country:"Paese:",population:"Popolazione:",language:"Lingua:",religion:"Religione:",languageFamily:"Famiglia linguistica:",peopleCommitted:"Impegnati a pregare:"},messages:{noDescription:"Nessuna descrizione disponibile."}},$m={title:{prayer:"Avanzamento della preghiera",engagement:"Avanzamento dell'impegno",adoption:"Avanzamento dell'adozione",languageFamilies:"Famiglie linguistiche",doxaRegions:"Regioni Doxa",affinityBlocs:"Blocchi di affinità",gospelResources:"Risorse del Vangelo"},header:{collapsed:"Legenda",peopleGroupFallback:"Gruppo di persone"},prayer:{needsPrayer:"Necessita preghiera",hasPrayer:"Ha preghiera",fullPrayerCoverage:"Copertura di preghiera completa"},progress:{title:"Avanzamento",covered:"{covered} di {total} gruppi di persone coperti dalla preghiera · {pct}%",short:"{covered} di {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necessita impegno",hasEngagement:"Ha impegno"},adoption:{needsAdoption:"Necessita adozione",hasAdoption:"Ha adozione"},columns:{upgs:"UUPGs",population:"Popolazione"},footer:{total:"Totale"}},Em={menuComingSoon:"Menu in arrivo"},Cm={clusterByRegion:"Per regione Doxa",clusterByLanguageFamily:"Per famiglia linguistica",clusterByGospelResource:"Per risorsa del Vangelo"},Lm={header:"GIRO DI PREGHIERA ATTUALE",lap:"Giro",upgs:"UUPGs",separator:" di "},Tm={placeholder:"Popolo, luogo, lingua, religione",labels:{people:"Popolo:",place:"Luogo:",language:"Lingua:",religion:"Religione:"}},Pm={backToLegend:"Voltar à legenda",closeDetailView:"Fechar vista de detalhe"},Mm={prayForThem:"Ore por eles",adoptThem:"Adote-os",moreInfo:"Mais informações",zoomIn:"Ampliar",zoomOut:"Reduzir",switchToLightMode:"Mudar para modo claro",switchToDarkMode:"Mudar para modo escuro",resetView:"Repor vista",toggleFullscreen:"Alternar ecrã inteiro",aboutThisMap:"Sobre este mapa",closeMenu:"Fechar menu",reloadMap:"Recarregar mapa",showClusters:"Mostrar clusters",clusterSettings:"Definições de clusters",startAutoFly:"Iniciar voo automático",stopFlight:"Parar voo",speedLabel:"Velocidade:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Partilhar e incorporar"},Nm={labels:{country:"País:",population:"População:",language:"Língua:",religion:"Religião:",languageFamily:"Família linguística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"Sem descrição disponível."}},Rm={title:{prayer:"Progresso da oração",engagement:"Progresso do envolvimento",adoption:"Progresso da adoção",languageFamilies:"Famílias linguísticas",doxaRegions:"Regiões Doxa",affinityBlocs:"Blocos de afinidade",gospelResources:"Recursos do Evangelho"},header:{collapsed:"Legenda",peopleGroupFallback:"Grupo de pessoas"},prayer:{needsPrayer:"Precisa de oração",hasPrayer:"Tem oração",fullPrayerCoverage:"Cobertura de oração completa"},progress:{title:"Progresso",covered:"{covered} de {total} grupos de pessoas cobertos em oração · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Precisa de envolvimento",hasEngagement:"Tem envolvimento"},adoption:{needsAdoption:"Precisa de adoção",hasAdoption:"Tem adoção"},columns:{upgs:"UUPGs",population:"População",name:"Nome"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por população",colLabel:{religion:"Religiões UUPG",prayer:"Status de oração",engagement:"Status de engajamento",adoption:"Status de adoção",status:"Status"},titleBar:{legend:"Legenda",peopleGroups:"Povos",wagfRegions:"Regiões WAGF",languages:"Idiomas"}},Im={menuComingSoon:"Menu em breve"},Om={clusterByRegion:"Por região Doxa",clusterByLanguageFamily:"Por família linguística",clusterByGospelResource:"Por recurso do Evangelho"},Fm={header:"VOLTA DE ORAÇÃO ATUAL",lap:"Volta",upgs:"UUPGs",separator:" de "},Dm={"%count% people groups in %countries% countries":"%count% grupos étnicos em %countries% países","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% tem %count% grupos étnicos em %countries% países. A cor de cada ponto indica quantas pessoas oram por esse grupo étnico.","1+ People Praying":"1+ pessoas orando","100+ People Praying":"100+ pessoas orando",Adopted:"Aprovado","Adoption Progress":"Progresso da adoção","All Regions":"Todas as regiões","Alternate Names":"Nomes alternativos","Clear All":"Limpar tudo",Countries:"Países","Countries in this region":"Países desta região",Country:"País",Engaged:"Engajado","Engagement Progress":"Progresso do engajamento","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Cada grupo étnico não engajado adotado por uma igreja comprometida com a oração, contribuição e o envio","Exact Search":"Pesquisa exata","Find unreached people groups by region and country.":"Encontre grupos étnicos não alcançados por região e país.","Full Profile":"Perfil completo",Goal:"Meta","Hide Filters":"Ocultar filtros",Intercessors:"Intercessores","Load More":"Carregar mais","Loading results...":"A carregar resultados...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilizar mais de 100 pessoas para orar diariamente por cada grupo étnico DOXA","No One Praying":"Ninguém orando","No options found":"Não foram encontradas opções","No unengaged people groups by 2033":"Nenhum grupo étnico não engajado até 2033","Not Adopted":"Não adotado",Other:"Outros","Page Not Found":"Página não encontrada","People Group":"Grupo étnico","People Groups":"Grupos étnicos","People committed to praying":"Pessoas comprometidas com a oração",Population:"Aplicação","Prayer Coverage":"Cobertura de oração","Prayer coverage progress":"Progresso da cobertura de oração",Regions:"Regiões",Religion:"Religião","Search names, country/continent, religions...":"Busque nomes, país/continente, religiões...","See %region% dashboard":"Ver o painel: %region%","See All":"Ver tudo",Select:"Selecionar","Show Filters":"Mostrar filtros","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Existem %count% grupos étnicos em %country%. Verifique no mapa também os grupos étnicos na fronteira deste país.",Total:"Total","Type to search...":"Digite para pesquisar...","Unengaged people groups":"Grupos étnicos não engajados","WAGF Block":"Bloco WAGF","WAGF Region":"Região da WAGF","people groups adopted":"grupos étnicos adotados","people groups engaged":"grupos étnicos engajados"},Bm={placeholder:"Povo, local, língua, religião",labels:{people:"Povo:",place:"Local:",language:"Língua:",religion:"Religião:"},kinds:{people:"Povo + país",peopleGroup:"Povo",bloc:"Bloco de afinidade",cluster:"Agrupamento de povos",country:"País",region:"Região",family:"Família linguística",languageKind:"Idioma",dialect:"Dialeto",religionKind:"Religião"}},Gm={prayer:"Oração",adoption:"Adoção",engagement:"Engajamento","affinity-blocks":"Povos",regions:"Regiões",countries:"Países","language-families":"Idiomas",religion:"Religiões",family:"Família linguística",language:"Idioma",dialect:"Dialeto/Variedade",bloc:"Bloco de afinidade",cluster:"Agrupamento",group:"Povo",pgic:"Povo no país",region:"Região WAGF",block:"Bloco WAGF",country:"País"},jm={backToLegend:"Înapoi la legendă",closeDetailView:"Închide vizualizarea detaliată"},Um={prayForThem:"Roagă-te pentru ei",adoptThem:"Adoptă-i",moreInfo:"Mai multe informații",zoomIn:"Mărește",zoomOut:"Micșorează",switchToLightMode:"Comută la modul luminos",switchToDarkMode:"Comută la modul întunecat",resetView:"Resetează vizualizarea",toggleFullscreen:"Comută ecran complet",aboutThisMap:"Despre această hartă",closeMenu:"Închide meniul",reloadMap:"Reîncarcă harta",showClusters:"Arată clusterele",clusterSettings:"Setări clustere",startAutoFly:"Pornește zborul automat",stopFlight:"Oprește zborul",speedLabel:"Viteză:",speedOption:{slow:"Lent",normal:"Normal",fast:"Rapid"},shareEmbed:"Partajează și încorporează"},Km={labels:{country:"Țară:",population:"Populație:",language:"Limbă:",religion:"Religie:",languageFamily:"Familie de limbi:",peopleCommitted:"Angajați să se roage:"},messages:{noDescription:"Nicio descriere disponibilă."}},zm={title:{prayer:"Progresul rugăciunii",engagement:"Progresul implicării",adoption:"Progresul adopției",languageFamilies:"Familii de limbi",doxaRegions:"Regiuni Doxa",affinityBlocs:"Blocuri de afinitate",gospelResources:"Resurse ale Evangheliei"},header:{collapsed:"Legendă",peopleGroupFallback:"Grup de popoare"},prayer:{needsPrayer:"Necesită rugăciune",hasPrayer:"Are rugăciune",fullPrayerCoverage:"Acoperire completă de rugăciune"},progress:{title:"Progres",covered:"{covered} din {total} grupuri de popoare acoperite în rugăciune · {pct}%",short:"{covered} din {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesită implicare",hasEngagement:"Are implicare"},adoption:{needsAdoption:"Necesită adopție",hasAdoption:"Are adopție"},columns:{upgs:"UUPGs",population:"Populație"},footer:{total:"Total"}},Hm={menuComingSoon:"Meniu în curând"},Vm={clusterByRegion:"După regiune Doxa",clusterByLanguageFamily:"După familia de limbi",clusterByGospelResource:"După resursa Evangheliei"},Wm={header:"TURUL DE RUGĂCIUNE CURENT",lap:"Tur",upgs:"UUPGs",separator:" din "},Ym={placeholder:"Popor, loc, limbă, religie",labels:{people:"Popor:",place:"Loc:",language:"Limbă:",religion:"Religie:"}},qm={backToLegend:"Назад к легенде",closeDetailView:"Закрыть подробный вид"},Jm={prayForThem:"Молитесь о них",adoptThem:"Усыновите их",moreInfo:"Подробнее",zoomIn:"Приблизить",zoomOut:"Отдалить",switchToLightMode:"Переключить на светлый режим",switchToDarkMode:"Переключить на тёмный режим",resetView:"Сбросить вид",toggleFullscreen:"Полноэкранный режим",aboutThisMap:"Об этой карте",closeMenu:"Закрыть меню",reloadMap:"Перезагрузить карту",showClusters:"Показать кластеры",clusterSettings:"Настройки кластеров",startAutoFly:"Начать авто-полёт",stopFlight:"Остановить полёт",speedLabel:"Скорость:",speedOption:{slow:"Медленно",normal:"Нормально",fast:"Быстро"},shareEmbed:"Поделиться и встроить"},Xm={labels:{country:"Страна:",population:"Население:",language:"Язык:",religion:"Религия:",languageFamily:"Языковая семья:",peopleCommitted:"Обязались молиться:"},messages:{noDescription:"Описание недоступно."}},Zm={title:{prayer:"Прогресс молитвы",engagement:"Прогресс вовлечённости",adoption:"Прогресс усыновления",languageFamilies:"Языковые семьи",doxaRegions:"Регионы Doxa",affinityBlocs:"Блоки родства",gospelResources:"Евангельские ресурсы"},header:{collapsed:"Условные обозначения",peopleGroupFallback:"Народная группа"},prayer:{needsPrayer:"Нуждается в молитве",hasPrayer:"Есть молитва",fullPrayerCoverage:"Полное молитвенное покрытие"},progress:{title:"Прогресс",covered:"{covered} из {total} народных групп охвачены молитвой · {pct}%",short:"{covered} из {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Нуждается в вовлечённости",hasEngagement:"Есть вовлечённость"},adoption:{needsAdoption:"Нуждается в усыновлении",hasAdoption:"Есть усыновление"},columns:{upgs:"UUPGs",population:"Население",name:"Название"},footer:{total:"Всего"},sortByUpgs:"Сортировать по UUPG",sortByPop:"Сортировать по населению",colLabel:{religion:"Религии UUPG",prayer:"Статус молитвы",engagement:"Статус вовлечённости",adoption:"Статус усыновления",status:"Статус"},titleBar:{legend:"Легенда",peopleGroups:"Народы",wagfRegions:"Регионы WAGF",languages:"Языки"}},Qm={menuComingSoon:"Меню скоро появится"},eb={clusterByRegion:"По региону Doxa",clusterByLanguageFamily:"По языковой семье",clusterByGospelResource:"По евангельскому ресурсу"},tb={header:"ТЕКУЩИЙ КРУГ МОЛИТВЫ",lap:"Круг",upgs:"UUPGs",separator:" из "},ob={"%count% people groups in %countries% countries":"%count% групп людей в %countries% странах","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"В регионе %region% — %count% групп людей в %countries% странах. Цвет каждой точки показывает, сколько человек молится за эту группу людей.","1+ People Praying":"1+ человек молится","100+ People Praying":"100+ человек молятся",Adopted:"Принято","Adoption Progress":"Прогресс принятия","All Regions":"Все регионы","Alternate Names":"Альтернативные названия","Clear All":"Очистить всё",Countries:"Страны","Countries in this region":"Страны этого региона",Country:"Страна",Engaged:"Вовлечённый","Engagement Progress":"Прогресс вовлечения","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Каждая незадействованная народность принята церковью, приверженной молитве, пожертвованиям и посылке миссионеров","Exact Search":"Точный поиск","Find unreached people groups by region and country.":"Найдите недостигнутые группы людей по регионам и странам.","Full Profile":"Полный профиль",Goal:"Цель","Hide Filters":"Скрыть фильтры",Intercessors:"Ходатаи","Load More":"Загрузить еще","Loading results...":"Загрузка результатов...","Mobilize 100+ people praying daily for each DOXA people group":"Мобилизуйте 100+ человек для ежедневной молитвы за каждую народность DOXA","No One Praying":"Никто не молится","No options found":"Вариантов не найдено","No unengaged people groups by 2033":"К 2033 году не останется незадействованных народов","Not Adopted":"Не принято",Other:"Другое","Page Not Found":"Страница не найдена","People Group":"Группа людей","People Groups":"Группы людей","People committed to praying":"Люди, посвятившие себя молитве",Population:"Население","Prayer Coverage":"Молитвенное покрытие","Prayer coverage progress":"Прогресс молитвенного покрытия",Regions:"Регионы",Religion:"Религия","Search names, country/continent, religions...":"Поиск по именам, странам/континентам, религиям...","See %region% dashboard":"Открыть панель: %region%","See All":"Смотреть все",Select:"Выбрать","Show Filters":"Показать фильтры","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Страна %country% насчитывает %count% групп людей. Проверьте также на карте группы людей, расположенные вдоль границ этой страны.",Total:"Итого","Type to search...":"Введите текст для поиска...","Unengaged people groups":"Невовлечённые группы людей","WAGF Block":"Блок WAGF","WAGF Region":"Регион WAGF","people groups adopted":"принятые группы людей","people groups engaged":"вовлечённые группы людей"},nb={placeholder:"Народ, место, язык, религия",labels:{people:"Народ:",place:"Место:",language:"Язык:",religion:"Религия:"},kinds:{people:"Народ + страна",peopleGroup:"Народ",bloc:"Блок родства",cluster:"Кластер народов",country:"Страна",region:"Регион",family:"Языковая семья",languageKind:"Язык",dialect:"Диалект",religionKind:"Религия"}},ab={prayer:"Молитва",adoption:"Усыновление",engagement:"Вовлечённость","affinity-blocks":"Народы",regions:"Регионы",countries:"Страны","language-families":"Языки",religion:"Религии",family:"Языковая семья",language:"Язык",dialect:"Диалект/вариант",bloc:"Блок родства",cluster:"Кластер",group:"Народ",pgic:"Народ в стране",region:"Регион WAGF",block:"Блок WAGF",country:"Страна"},rb={backToLegend:"返回图例",closeDetailView:"关闭详情视图"},sb={prayForThem:"为他们祷告",adoptThem:"认领他们",moreInfo:"更多信息",zoomIn:"放大",zoomOut:"缩小",switchToLightMode:"切换至浅色模式",switchToDarkMode:"切换至深色模式",resetView:"重置视图",toggleFullscreen:"切换全屏",aboutThisMap:"关于此地图",closeMenu:"关闭菜单",reloadMap:"重新加载地图",showClusters:"显示聚类",clusterSettings:"聚类设置",startAutoFly:"开始自动飞行",stopFlight:"停止飞行",speedLabel:"速度:",speedOption:{slow:"慢",normal:"正常",fast:"快"},shareEmbed:"分享与嵌入"},ib={labels:{country:"国家:",population:"人口:",language:"语言:",religion:"宗教:",languageFamily:"语系:",peopleCommitted:"承诺祷告人数:"},messages:{noDescription:"暂无描述。"}},lb={title:{prayer:"祷告进度",engagement:"参与进度",adoption:"认领进度",languageFamilies:"语系",doxaRegions:"Doxa 区域",affinityBlocs:"亲缘板块",gospelResources:"福音资源"},header:{collapsed:"图例",peopleGroupFallback:"民族群体"},prayer:{needsPrayer:"需要祷告",hasPrayer:"已有祷告",fullPrayerCoverage:"全面祷告覆盖"},progress:{title:"进度",covered:"{total} 个民族群体中已有 {covered} 个被祷告覆盖 · {pct}%",short:"{covered} / {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"需要参与",hasEngagement:"已有参与"},adoption:{needsAdoption:"需要认领",hasAdoption:"已有认领"},columns:{upgs:"UUPGs",population:"人口"},footer:{total:"总计"}},cb={menuComingSoon:"菜单即将推出"},ub={clusterByRegion:"按 Doxa 区域",clusterByLanguageFamily:"按语系",clusterByGospelResource:"按福音资源"},db={header:"当前祷告轮次",lap:"第",upgs:"UUPGs",separator:" / "},pb={placeholder:"民族、地点、语言、宗教",labels:{people:"民族:",place:"地点:",language:"语言:",religion:"宗教:"}};/*! + */let Ac;const rr=e=>Ac=e,Sc=Symbol();function bs(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var ra;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(ra||(ra={}));function lh(){const e=Ir(!0),t=e.run(()=>de({}));let o=[],n=[];const a=qo({install(r){rr(a),a._a=r,r.provide(Sc,a),r.config.globalProperties.$pinia=a,n.forEach(s=>o.push(s)),n=[]},use(r){return this._a?o.push(r):n.push(r),this},_p:o,_a:null,_e:e,_s:new Map,state:t});return a}const $c=()=>{};function Ec(e,t,o,n=$c){e.push(t);const a=()=>{const r=e.indexOf(t);r>-1&&(e.splice(r,1),n())};return!o&&Bi()&&Np(a),a}function wn(e,...t){e.slice().forEach(o=>{o(...t)})}const ch=e=>e(),Cc=Symbol(),ys=Symbol();function _s(e,t){e instanceof Map&&t instanceof Map?t.forEach((o,n)=>e.set(n,o)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const o in t){if(!t.hasOwnProperty(o))continue;const n=t[o],a=e[o];bs(a)&&bs(n)&&e.hasOwnProperty(o)&&!st(n)&&!vo(n)?e[o]=_s(a,n):e[o]=n}return e}const uh=Symbol();function dh(e){return!bs(e)||!e.hasOwnProperty(uh)}const{assign:Fo}=Object;function ph(e){return!!(st(e)&&e.effect)}function gh(e,t,o,n){const{state:a,actions:r,getters:s}=t,i=o.state.value[e];let l;function u(){i||(o.state.value[e]=a?a():{});const c=tg(o.state.value[e]);return Fo(c,r,Object.keys(s||{}).reduce((p,g)=>(p[g]=qo(te(()=>{rr(o);const k=o._s.get(e);return s[g].call(k,k)})),p),{}))}return l=Lc(e,u,t,o,n,!0),l}function Lc(e,t,o={},n,a,r){let s;const i=Fo({actions:{}},o),l={deep:!0};let u,c,p=[],g=[],k;const w=n.state.value[e];!r&&!w&&(n.state.value[e]={});let _;function d(T){let I;u=c=!1,typeof T=="function"?(T(n.state.value[e]),I={type:ra.patchFunction,storeId:e,events:k}):(_s(n.state.value[e],T),I={type:ra.patchObject,payload:T,storeId:e,events:k});const H=_=Symbol();lo().then(()=>{_===H&&(u=!0)}),c=!0,wn(p,I,n.state.value[e])}const h=r?function(){const{state:I}=o,H=I?I():{};this.$patch(W=>{Fo(W,H)})}:$c;function f(){s.stop(),p=[],g=[],n._s.delete(e)}const m=(T,I="")=>{if(Cc in T)return T[ys]=I,T;const H=function(){rr(n);const W=Array.from(arguments),re=[],P=[];function $(N){re.push(N)}function M(N){P.push(N)}wn(g,{args:W,name:H[ys],store:x,after:$,onError:M});let C;try{C=T.apply(this&&this.$id===e?this:x,W)}catch(N){throw wn(P,N),N}return C instanceof Promise?C.then(N=>(wn(re,N),N)).catch(N=>(wn(P,N),Promise.reject(N))):(wn(re,C),C)};return H[Cc]=!0,H[ys]=I,H},v={_p:n,$id:e,$onAction:Ec.bind(null,g),$patch:d,$reset:h,$subscribe(T,I={}){const H=Ec(p,T,I.detached,()=>W()),W=s.run(()=>ct(()=>n.state.value[e],re=>{(I.flush==="sync"?c:u)&&T({storeId:e,type:ra.direct,events:k},re)},Fo({},l,I)));return H},$dispose:f},x=pn(v);n._s.set(e,x);const S=(n._a&&n._a.runWithContext||ch)(()=>n._e.run(()=>(s=Ir()).run(()=>t({action:m}))));for(const T in S){const I=S[T];if(st(I)&&!ph(I)||vo(I))r||(w&&dh(I)&&(st(I)?I.value=w[T]:_s(I,w[T])),n.state.value[e][T]=I);else if(typeof I=="function"){const H=m(I,T);S[T]=H,i.actions[T]=I}}return Fo(x,S),Fo(Be(x),S),Object.defineProperty(x,"$state",{get:()=>n.state.value[e],set:T=>{d(I=>{Fo(I,T)})}}),n._p.forEach(T=>{Fo(x,s.run(()=>T({store:x,app:n._a,pinia:n,options:i})))}),w&&r&&o.hydrate&&o.hydrate(x.$state,w),u=!0,c=!0,x}/*! #__NO_SIDE_EFFECTS__ */function vs(e,t,o){let n,a;const r=typeof t=="function";typeof e=="string"?(n=e,a=r?o:t):(a=e,n=e.id);function s(i,l){const u=mg();return i=i||(u?Fe(Sc,null):null),i&&rr(i),i=Ac,i._s.has(n)||(r?Lc(n,t,a,i):gh(n,a,i)),i._s.get(n)}return s.$id=n,s}const ks="__doxaMapToken",ws="doxa:map-token",Tc="__doxaMapTokenBridge",xn=()=>{if(typeof window>"u")return"";const e=window[ks];return typeof e=="string"?e:""};function Pc(e){if(typeof window>"u")return"";const t=typeof e=="string"?e.trim():"";if(!t||t===xn())return xn();window[ks]=t;try{window.dispatchEvent(new CustomEvent(ws,{detail:t}))}catch{}return t}function fh(){if(typeof window>"u"||window[Tc])return;const e=typeof window.MAP_TOKEN=="string"?window.MAP_TOKEN:"";e&&!xn()&&(window[ks]=e);try{Object.defineProperty(window,"MAP_TOKEN",{configurable:!0,get(){return xn()},set(t){Pc(t)}}),window[Tc]=!0}catch{}}function hh(){fh();const e=de(xn());if(typeof window<"u"){const t=()=>{e.value=xn()};window.addEventListener(ws,t);try{uo(()=>window.removeEventListener(ws,t))}catch{}}return e}function Mc(e){return Eg({loader:e,onError(t,o,n,a){a<=3?setTimeout(o,a*500):n()}})}const mh={backToLegend:"العودة إلى المفتاح",closeDetailView:"إغلاق عرض التفاصيل"},bh={prayForThem:"صلِّ من أجلهم",adoptThem:"تبنَّهم",moreInfo:"مزيد من المعلومات",zoomIn:"تكبير",zoomOut:"تصغير",switchToLightMode:"التبديل إلى الوضع الفاتح",switchToDarkMode:"التبديل إلى الوضع الداكن",resetView:"إعادة تعيين العرض",toggleFullscreen:"تبديل ملء الشاشة",aboutThisMap:"حول هذه الخريطة",closeMenu:"إغلاق القائمة",reloadMap:"إعادة تحميل الخريطة",showClusters:"إظهار المجموعات",clusterSettings:"إعدادات المجموعات",startAutoFly:"بدء الطيران التلقائي",stopFlight:"إيقاف الطيران",speedLabel:"السرعة:",speedOption:{slow:"بطيء",normal:"عادي",fast:"سريع"},shareEmbed:"مشاركة وتضمين"},yh={labels:{country:"الدولة:",population:"السكان:",language:"اللغة:",religion:"الديانة:",languageFamily:"العائلة اللغوية:",peopleCommitted:"ملتزمون بالصلاة:"},messages:{noDescription:"لا يوجد وصف متاح."}},_h={title:{prayer:"تقدم الصلاة",engagement:"تقدم الانخراط",adoption:"تقدم التبني",languageFamilies:"العائلات اللغوية",doxaRegions:"مناطق Doxa",affinityBlocs:"كتل القرابة",gospelResources:"موارد الإنجيل"},header:{collapsed:"وسيلة الإيضاح",peopleGroupFallback:"مجموعة الشعب"},prayer:{needsPrayer:"يحتاج إلى صلاة",hasPrayer:"لديه صلاة",fullPrayerCoverage:"تغطية صلاة كاملة"},progress:{title:"التقدم",covered:"{covered} من {total} مجموعة شعبية مغطاة بالصلاة · {pct}%",short:"{covered} من {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"يحتاج إلى انخراط",hasEngagement:"لديه انخراط"},adoption:{needsAdoption:"يحتاج إلى تبني",hasAdoption:"لديه تبني"},columns:{upgs:"UUPGs",population:"السكان",name:"الاسم"},footer:{total:"الإجمالي"},sortByUpgs:"ترتيب حسب UUPG",sortByPop:"ترتيب حسب السكان",colLabel:{religion:"ديانات UUPG",prayer:"حالة الصلاة",engagement:"حالة المشاركة",adoption:"حالة التبني",status:"الحالة"},titleBar:{legend:"مفتاح الخريطة",peopleGroups:"الشعوب",wagfRegions:"مناطق WAGF",languages:"اللغات"}},vh={menuComingSoon:"القائمة قادمة قريباً"},kh={clusterByRegion:"حسب منطقة Doxa",clusterByLanguageFamily:"حسب العائلة اللغوية",clusterByGospelResource:"حسب مورد الإنجيل"},wh={header:"دورة الصلاة الحالية",lap:"الدورة",upgs:"UUPGs",separator:" من "},xh={"%count% people groups in %countries% countries":"%count% مجموعة بشرية في %countries% دولة","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"تضم %region% %count% مجموعة بشرية في %countries% دولة. يشير لون كل نقطة إلى عدد الأشخاص الذين يصلّون من أجل تلك المجموعة البشرية.","1+ People Praying":"شخص واحد أو أكثر يصلّي","100+ People Praying":"أكثر من 100 شخص يصلّون",Adopted:"تم انتماؤه","Adoption Progress":"تقدُّم الإنتماء","All Regions":"جميع المناطق","Alternate Names":"الأسماء البديلة","Clear All":"مسح الكل",Countries:"الدول","Countries in this region":"الدول في هذه المنطقة",Country:"الدولة",Engaged:"مُنخرَط","Engagement Progress":"تقدُّم الانخراط","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"كل مجموعة بشرية غير مبشرة تتبناها كنيسة ملتزمة بالصلاة والعطاء والإرسال","Exact Search":"بحث دقيق","Find unreached people groups by region and country.":"ابحث عن المجموعات البشرية غير المُبلَّغة حسب المنطقة والدولة.","Full Profile":"الملف الشخصي الكامل",Goal:"الهدف","Hide Filters":"إخفاء المرشحات",Intercessors:"المتشفعين","Load More":"تحميل المزيد","Loading results...":"النتائج قيد التحميل...","Mobilize 100+ people praying daily for each DOXA people group":"حشد أكثر من 100 شخص للصلاة يوميًا من أجل كل مجموعة بشرية من مجموعات دوكسا","No One Praying":"لا أحد يصلّي","No options found":"لم يتم العثور على أي خيارات","No unengaged people groups by 2033":"الهدف هو القضاء على جميع الشعوب الغير مخدومة روحيا بحلول عام 2033","Not Adopted":"لم يتم انتماؤه",Other:"أخرى","Page Not Found":"الصفحة غير موجودة","People Group":"مجموعة بشرية","People Groups":"مجموعات بشرية","People committed to praying":"الأشخاص الذين التزموا بالصلاة",Population:"عدد السكان","Prayer Coverage":"التغطية المستمرة بالصلاة","Prayer coverage progress":"تقدم تغطية الصلاة",Regions:"المناطق",Religion:"الدين","Search names, country/continent, religions...":"إبحث عن الأسماء، الدولة/القارة، الأديان...","See %region% dashboard":"عرض لوحة معلومات %region%","See All":"عرض جميع العناصر",Select:"اختر","Show Filters":"إظهار عوامل التصفية","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"توجد %count% مجموعات بشرية في %country%. تحقق من الخريطة لمعرفة المجموعات البشرية الواقعة على حدود هذه الدولة أيضًا.",Total:"المجموع","Type to search...":"اكتب ما تريد البحث عنه...","Unengaged people groups":"الشعوب الغير متفاعلة","WAGF Block":"كتلة WAGF","WAGF Region":"منطقة WAGF","people groups adopted":"الشعوب المنتمية","people groups engaged":"مجموعات بشرية مُنخرِطة"},Ah={placeholder:"شعب، مكان، لغة، ديانة",labels:{people:"الشعب:",place:"المكان:",language:"اللغة:",religion:"الديانة:"},kinds:{people:"الشعب + الدولة",peopleGroup:"الشعب",bloc:"كتلة التقارب",cluster:"مجموعة شعوب",country:"الدولة",region:"المنطقة",family:"عائلة اللغة",languageKind:"اللغة",dialect:"اللهجة",religionKind:"الدين"}},Sh={prayer:"الصلاة",adoption:"التبني",engagement:"المشاركة","affinity-blocks":"الشعوب",regions:"المناطق",countries:"الدول","language-families":"اللغات",religion:"الأديان",family:"عائلة اللغة",language:"اللغة",dialect:"اللهجة/التنوع",bloc:"كتلة التقارب",cluster:"المجموعة",group:"الشعب",pgic:"الشعب في الدولة",region:"منطقة WAGF",block:"كتلة WAGF",country:"الدولة"},$h={backToLegend:"Zurück zur Legende",closeDetailView:"Detailansicht schließen"},Eh={prayForThem:"Für sie beten",adoptThem:"Sie adoptieren",moreInfo:"Mehr Infos",zoomIn:"Vergrößern",zoomOut:"Verkleinern",switchToLightMode:"Zum hellen Modus wechseln",switchToDarkMode:"Zum dunklen Modus wechseln",resetView:"Ansicht zurücksetzen",toggleFullscreen:"Vollbild umschalten",aboutThisMap:"Über diese Karte",closeMenu:"Menü schließen",reloadMap:"Karte neu laden",showClusters:"Cluster anzeigen",clusterSettings:"Cluster-Einstellungen",startAutoFly:"Auto-Flug starten",stopFlight:"Flug stoppen",speedLabel:"Geschwindigkeit:",speedOption:{slow:"Langsam",normal:"Normal",fast:"Schnell"},shareEmbed:"Teilen und einbetten"},Ch={labels:{country:"Land:",population:"Bevölkerung:",language:"Sprache:",religion:"Religion:",languageFamily:"Sprachfamilie:",peopleCommitted:"Zum Gebet verpflichtet:"},messages:{noDescription:"Keine Beschreibung verfügbar."}},Lh={title:{prayer:"Gebetsfortschritt",engagement:"Engagement-Fortschritt",adoption:"Adoptionsfortschritt",languageFamilies:"Sprachfamilien",doxaRegions:"Doxa-Regionen",affinityBlocs:"Affinitätsblöcke",gospelResources:"Evangeliumsressourcen"},header:{collapsed:"Legende",peopleGroupFallback:"Volksgruppe"},prayer:{needsPrayer:"Braucht Gebet",hasPrayer:"Hat Gebet",fullPrayerCoverage:"Vollständige Gebetsabdeckung"},progress:{title:"Fortschritt",covered:"{covered} von {total} Volksgruppen im Gebet abgedeckt · {pct}%",short:"{covered} von {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Braucht Engagement",hasEngagement:"Hat Engagement"},adoption:{needsAdoption:"Braucht Adoption",hasAdoption:"Hat Adoption"},columns:{upgs:"UUPGs",population:"Bevölkerung"},footer:{total:"Gesamt"}},Th={menuComingSoon:"Menü folgt in Kürze"},Ph={clusterByRegion:"Nach Doxa-Region",clusterByLanguageFamily:"Nach Sprachfamilie",clusterByGospelResource:"Nach Evangeliumsressource"},Mh={header:"AKTUELLE GEBETSRUNDE",lap:"Runde",upgs:"UUPGs",separator:" von "},Nh={"%count% people groups in %countries% countries":"%count% Volksgruppen in %countries% Ländern","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% hat %count% Volksgruppen in %countries% Ländern. Die Farbe jedes Punktes zeigt, wie viele Menschen für diese Volksgruppe beten.","1+ People Praying":"1+ Menschen beten","100+ People Praying":"100+ Menschen beten",Adopted:"Angenommen","Adoption Progress":"Adoptionsfortschritt","All Regions":"Alle Regionen","Alternate Names":"Alternative Namen","Clear All":"Alle löschen",Countries:"Länder","Countries in this region":"Länder in dieser Region",Country:"Land",Engaged:"Engagiert","Engagement Progress":"Engagement-Fortschritt","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Jede einzelne der völlig unerreichten Volksgruppen soll von einer Ortsgemeinde adoptiert werden, durch Beten, Geben und Senden","Exact Search":"Exakte Suche","Find unreached people groups by region and country.":"Finde unerreichte Volksgruppen nach Region und Land.","Full Profile":"Vollständiges Profil",Goal:"Ziel","Hide Filters":"Filter ausblenden",Intercessors:"Fürbitter","Load More":"Mehr laden","Loading results...":"Ergebnisse werden geladen...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilisiere 100+ Menschen, die täglich für jede DOXA-Volksgruppe beten","No One Praying":"Niemand betet","No options found":"Keine Standorte gefunden","No unengaged people groups by 2033":"Dass es bis 2033 keine völlig unerreichte Volksgruppe mehr gibt","Not Adopted":"noch nicht adoptiert",Other:"Andere","Page Not Found":"Seite nicht gefunden","People Group":"Personengruppe","People Groups":"Volksgruppen","People committed to praying":"Menschen, die sich dem Beten verpflichtet haben",Population:"Bevölkerung","Prayer Coverage":"Gebetsabdeckung","Prayer coverage progress":"Fortschritt der Gebetsabdeckung",Regions:"Regionen",Religion:"Primäre Religion","Search names, country/continent, religions...":"Suche nach Namen, Land/Kontinent, Religionen...","See %region% dashboard":"Dashboard anzeigen: %region%","See All":"Alle anzeigen",Select:"Auswählen","Show Filters":"Filter anzeigen","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"In %country% gibt es %count% Volksgruppen. Sieh auch auf der Karte nach den Volksgruppen an der Grenze dieses Landes.",Total:"Gesamt","Type to search...":"Geben Sie etwas ein, um danach zu suchen","Unengaged people groups":"Völlig unerreichte Volksgruppen","WAGF Block":"WAGF-Block","WAGF Region":"WAGF-Region","people groups adopted":"adoptierte Volksgruppen","people groups engaged":"engagierte Volksgruppen"},Rh={placeholder:"Volk, Ort, Sprache, Religion",labels:{people:"Volk:",place:"Ort:",language:"Sprache:",religion:"Religion:"},sections:{within:"Innerhalb {selection}",allData:"Alle DOXA-Daten"}},Ih={prayer:"Gebet",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Volksgruppen",regions:"Regionen",countries:"Länder","language-families":"Sprachen",religion:"Religionen",family:"Sprachfamilie",language:"Sprache",dialect:"Dialekt/Varietät",bloc:"Affinitätsblock",cluster:"Cluster",group:"Volksgruppe",pgic:"Volksgruppe im Land",region:"WAGF-Region",block:"WAGF-Block",country:"Land"},Oh={backToLegend:"Back to Legend",closeDetailView:"Close detail view"},Fh={prayForThem:"Pray for them",adoptThem:"Adopt",moreInfo:"More info",zoomIn:"Zoom in",zoomOut:"Zoom out",switchToLightMode:"Switch to light mode",switchToDarkMode:"Switch to dark mode",resetView:"Reset view",toggleFullscreen:"Toggle fullscreen",aboutThisMap:"About this map",closeMenu:"Close menu",reloadMap:"Reload Map",showClusters:"Show Clusters",clusterSettings:"Cluster Settings",startAutoFly:"Start Auto Fly",stopFlight:"Stop Flight",speedLabel:"Speed:",speedOption:{slow:"Slow",normal:"Normal",fast:"Fast"},shareEmbed:"Share & embed",shareSteps:["Embed this map on your site","Create a list of the websites in your city","Train them to embed it too","Train them to train others to embed it too","Multiply maps everywhere for Jesus!"],share:"Share"},Dh={labels:{country:"Country:",population:"Population:",language:"Language:",religion:"Religion:",languageFamily:"Language Family:",peopleCommitted:"Committed to pray:"},messages:{noDescription:"No description available."}},Bh={title:{prayer:"Prayer Progress",engagement:"Engagement Progress",adoption:"Adoption Progress",languageFamilies:"Language Families",doxaRegions:"Doxa Regions",affinityBlocs:"Affinity Blocks",gospelResources:"Gospel Resources"},header:{default:"Legend",collapsed:"Legend",peopleGroupFallback:"People Group"},prayer:{needsPrayer:"Needs Prayer",hasPrayer:"Has Prayer",fullPrayerCoverage:"Full Prayer Coverage"},progress:{title:"Progress",covered:"{covered} of {total} people groups covered in prayer · {pct}%",short:"{covered} of {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Unengaged",hasEngagement:"Engaged"},adoption:{needsAdoption:"Needs Adoption",hasAdoption:"Has Adoption"},columns:{upgs:"UUPGs",population:"Population",name:"Name"},footer:{total:"Total"},sortByUpgs:"Sort by UUPGs",sortByPop:"Sort by Population",colLabel:{religion:"UUPG Religions",prayer:"Prayer Status",engagement:"Engagement Status",adoption:"Adoption Status",status:"Status"},titleBar:{legend:"Legend",peopleGroups:"People Groups",wagfRegions:"WAGF Regions",languages:"Languages"}},Gh={menuComingSoon:"Menu coming soon"},jh={clusterByRegion:"By Doxa Region",clusterByLanguageFamily:"By Language Family",clusterByGospelResource:"By Gospel Resource"},Uh={country:{wagfRegion:"WAGF Region",wagfBlock:"WAGF Bloc",country:"Country",uupgCount:"UUPG Count"}},Kh={header:"CURRENT PRAYER LAP",lap:"Lap",upgs:"UUPGs",separator:" of "},zh={"%count% people groups in %countries% countries":"%count% people groups in %countries% countries","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.","1+ People Praying":"1+ People Praying","100+ People Praying":"100+ People Praying",Adopted:"Adopted","Adoption Progress":"Adoption Progress","All Regions":"All Regions","Alternate Names":"Alternate Names","Clear All":"Clear All",Countries:"Countries","Countries in this region":"Countries in this region",Country:"Country",Engaged:"Engaged","Engagement Progress":"Engagement Progress","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Every unengaged people group adopted by a church committed to prayer, giving, and sending","Exact Search":"Exact Search","Find unreached people groups by region and country.":"Find unreached people groups by region and country.","Full Profile":"Full Profile",Goal:"Goal","Hide Filters":"Hide Filters",Intercessors:"Intercessors","Load More":"Load More","Loading results...":"Loading results...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilize 100+ people praying daily for each DOXA people group","No One Praying":"No One Praying","No options found":"No options found","No unengaged people groups by 2033":"No unengaged people groups by 2033","Not Adopted":"Not Adopted",Other:"Other","Page Not Found":"Page Not Found","People Group":"People Group","People Groups":"People Groups","People committed to praying":"People committed to praying",Population:"Population","Prayer Coverage":"Prayer Coverage","Prayer coverage progress":"Prayer coverage progress",Regions:"Regions",Religion:"Religion","Search names, country/continent, religions...":"Search names, country/continent, religions...","See %region% dashboard":"See %region% dashboard","See All":"See All",Select:"Select","Show Filters":"Show Filters","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.",Total:"Total","Type to search...":"Type to search...","Unengaged people groups":"Unengaged people groups","WAGF Block":"WAGF Block","WAGF Region":"WAGF Region","people groups adopted":"people groups adopted","people groups engaged":"people groups engaged","View country posters":"View country posters","Hide country posters":"Hide country posters","No poster has been generated for this country yet.":"No poster has been generated for this country yet."},Hh={placeholder:"People, place, language, religion",labels:{people:"People:",place:"Place:",language:"Language:",religion:"Religion:"},kinds:{people:"People Group + Country",peopleGroup:"People Group",bloc:"Affinity Block",cluster:"People Cluster",country:"Country",region:"Region",family:"Language Family",languageKind:"Language",dialect:"Dialect",religionKind:"Religion"},sections:{within:"Within {selection}",allData:"All DOXA Data"}},Vh={prayer:"Prayer",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"People Groups (Affinity)",regions:"Regions",countries:"Countries","language-families":"Languages",religion:"Religions",family:"Lang Family",language:"Language",dialect:"Dialect/Variety",bloc:"Affinity Block",cluster:"Cluster",group:"People Group",pgic:"PG in Country",region:"WAGF Region",block:"WAGF Bloc",country:"Country"},Wh={backToLegend:"Volver a la leyenda",closeDetailView:"Cerrar vista de detalle"},Yh={prayForThem:"Ora por ellos",adoptThem:"Adóptalos",moreInfo:"Más información",zoomIn:"Acercar",zoomOut:"Alejar",switchToLightMode:"Cambiar a modo claro",switchToDarkMode:"Cambiar a modo oscuro",resetView:"Restablecer vista",toggleFullscreen:"Alternar pantalla completa",aboutThisMap:"Acerca de este mapa",closeMenu:"Cerrar menú",reloadMap:"Recargar mapa",showClusters:"Mostrar clústeres",clusterSettings:"Ajustes de clústeres",startAutoFly:"Iniciar vuelo automático",stopFlight:"Detener vuelo",speedLabel:"Velocidad:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Compartir e incrustar"},qh={labels:{country:"País:",population:"Población:",language:"Idioma:",religion:"Religión:",languageFamily:"Familia lingüística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"No hay descripción disponible."}},Jh={title:{prayer:"Progreso de oración",engagement:"Progreso de implicación",adoption:"Progreso de adopción",languageFamilies:"Familias lingüísticas",doxaRegions:"Regiones Doxa",affinityBlocs:"Bloques de afinidad",gospelResources:"Recursos del Evangelio"},header:{collapsed:"Leyenda",peopleGroupFallback:"Grupo de personas"},prayer:{needsPrayer:"Necesita oración",hasPrayer:"Tiene oración",fullPrayerCoverage:"Cobertura de oración completa"},progress:{title:"Progreso",covered:"{covered} de {total} grupos de personas cubiertos en oración · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesita implicación",hasEngagement:"Tiene implicación"},adoption:{needsAdoption:"Necesita adopción",hasAdoption:"Tiene adopción"},columns:{upgs:"UUPGs",population:"Población",name:"Nombre"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por población",colLabel:{religion:"Religiones UUPG",prayer:"Estado de oración",engagement:"Estado de compromiso",adoption:"Estado de adopción",status:"Estado"},titleBar:{legend:"Leyenda",peopleGroups:"Pueblos",wagfRegions:"Regiones WAGF",languages:"Idiomas"}},Xh={menuComingSoon:"Menú próximamente"},Zh={clusterByRegion:"Por región Doxa",clusterByLanguageFamily:"Por familia lingüística",clusterByGospelResource:"Por recurso del Evangelio"},Qh={header:"VUELTA DE ORACIÓN ACTUAL",lap:"Vuelta",upgs:"UUPGs",separator:" de "},em={"%count% people groups in %countries% countries":"%count% grupos étnicos en %countries% países","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% tiene %count% grupos étnicos en %countries% países. El color de cada punto indica cuántas personas oran por ese grupo étnico.","1+ People Praying":"1+ personas orando","100+ People Praying":"100+ personas orando",Adopted:"Aprobado","Adoption Progress":"Progreso de la adopción","All Regions":"Todas las regiones","Alternate Names":"Nombres alternativos","Clear All":"Borrar todo",Countries:"Países","Countries in this region":"Países de esta región",Country:"País",Engaged:"Comprometido","Engagement Progress":"Progreso del compromiso","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Cada grupo étnico no evangelizado adoptado por una iglesia comprometida con la oración, la ofrenda y el envío.","Exact Search":"Búsqueda exacta","Find unreached people groups by region and country.":"Encuentra grupos étnicos no alcanzados por región y país.","Full Profile":"Perfil completo",Goal:"Meta","Hide Filters":"Ocultar filtros",Intercessors:"Intercesores","Load More":"Cargar más","Loading results...":"Cargando resultados...","Mobilize 100+ people praying daily for each DOXA people group":"Movilizar a más de 100 personas que oren diariamente por cada grupo étnico DOXA.","No One Praying":"Nadie orando","No options found":"No se han encontrado opciones","No unengaged people groups by 2033":"No habrá grupos étnicos sin evangelizar para 2033","Not Adopted":"No adoptado",Other:"Otros","Page Not Found":"Página no encontrada","People Group":"Grupo Étnico","People Groups":"Grupos Étnicos","People committed to praying":"Personas comprometidas con la oración",Population:"Población","Prayer Coverage":"Cobertura de oración","Prayer coverage progress":"Progreso de la cobertura de oración",Regions:"Regiones",Religion:"Religión","Search names, country/continent, religions...":"Buscar nombres, país/continente, religiones...","See %region% dashboard":"Ver el panel de %region%","See All":"Ver todo",Select:"Seleccionar","Show Filters":"Mostrar filtros","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Hay %count% grupos étnicos en %country%. Consulta también el mapa para ver los grupos étnicos en la frontera de este país.",Total:"Total","Type to search...":"Escribe para buscar...","Unengaged people groups":"Grupos étnicos no comprometidos","WAGF Block":"Bloque WAGF","WAGF Region":"Región de la WAGF","people groups adopted":"grupos de personas adoptados","people groups engaged":"grupos étnicos comprometidos"},tm={placeholder:"Pueblo, lugar, idioma, religión",labels:{people:"Pueblo:",place:"Lugar:",language:"Idioma:",religion:"Religión:"},kinds:{people:"Pueblo + país",peopleGroup:"Pueblo",bloc:"Bloque de afinidad",cluster:"Clúster de pueblos",country:"País",region:"Región",family:"Familia lingüística",languageKind:"Idioma",dialect:"Dialecto",religionKind:"Religión"}},om={prayer:"Oración",adoption:"Adopción",engagement:"Compromiso","affinity-blocks":"Pueblos",regions:"Regiones",countries:"Países","language-families":"Idiomas",religion:"Religiones",family:"Familia lingüística",language:"Idioma",dialect:"Dialecto/Variedad",bloc:"Bloque de afinidad",cluster:"Clúster",group:"Pueblo",pgic:"Pueblo en país",region:"Región WAGF",block:"Bloque WAGF",country:"País"},nm={backToLegend:"Retour à la légende",closeDetailView:"Fermer la vue détaillée"},am={prayForThem:"Priez pour eux",adoptThem:"Adoptez-les",moreInfo:"Plus d'infos",zoomIn:"Zoom avant",zoomOut:"Zoom arrière",switchToLightMode:"Passer au mode clair",switchToDarkMode:"Passer au mode sombre",resetView:"Réinitialiser la vue",toggleFullscreen:"Basculer en plein écran",aboutThisMap:"À propos de cette carte",closeMenu:"Fermer le menu",reloadMap:"Recharger la carte",showClusters:"Afficher les clusters",clusterSettings:"Paramètres des clusters",startAutoFly:"Démarrer le vol auto",stopFlight:"Arrêter le vol",speedLabel:"Vitesse :",speedOption:{slow:"Lente",normal:"Normale",fast:"Rapide"},shareEmbed:"Partager et intégrer"},rm={labels:{country:"Pays :",population:"Population :",language:"Langue :",religion:"Religion :",languageFamily:"Famille de langues :",peopleCommitted:"Engagés à prier :"},messages:{noDescription:"Aucune description disponible."}},sm={title:{prayer:"Progression de la prière",engagement:"Progression de l'engagement",adoption:"Progression de l'adoption",languageFamilies:"Familles de langues",doxaRegions:"Régions Doxa",affinityBlocs:"Blocs d'affinité",gospelResources:"Ressources de l'Évangile"},header:{collapsed:"Légende",peopleGroupFallback:"Groupe de personnes"},prayer:{needsPrayer:"Besoin de prière",hasPrayer:"Prière en cours",fullPrayerCoverage:"Couverture de prière complète"},progress:{title:"Progression",covered:"{covered} sur {total} groupes de personnes couverts par la prière · {pct}%",short:"{covered} sur {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Besoin d'engagement",hasEngagement:"Engagement en cours"},adoption:{needsAdoption:"Besoin d'adoption",hasAdoption:"Adoption en cours"},columns:{upgs:"UUPGs",population:"Population",name:"Nom"},footer:{total:"Total"},sortByUpgs:"Trier par UUPG",sortByPop:"Trier par population",colLabel:{religion:"Religions UUPG",prayer:"Statut de prière",engagement:"Statut d'engagement",adoption:"Statut d'adoption",status:"Statut"},titleBar:{legend:"Légende",peopleGroups:"Peuples",wagfRegions:"Régions WAGF",languages:"Langues"}},im={menuComingSoon:"Menu bientôt disponible"},lm={clusterByRegion:"Par région Doxa",clusterByLanguageFamily:"Par famille de langues",clusterByGospelResource:"Par ressource de l'Évangile"},cm={country:{wagfRegion:"Région WAGF",wagfBlock:"Bloc WAGF",country:"Pays",uupgCount:"Nombre d'UUPG"}},um={header:"TOUR DE PRIÈRE ACTUEL",lap:"Tour",upgs:"UUPGs",separator:" sur "},dm={"%count% people groups in %countries% countries":"%count% peuples dans %countries% pays","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% compte %count% peuples répartis dans %countries% pays. La couleur de chaque point indique combien de personnes prient pour ce peuple.","1+ People Praying":"1+ personnes en prière","100+ People Praying":"100+ personnes en prière",Adopted:"Adopté","Adoption Progress":"Progrès de l'adoption","All Regions":"Toutes les régions","Alternate Names":"Autres noms","Clear All":"Tout effacer",Countries:"Pays","Countries in this region":"Pays de cette région",Country:"Pays",Engaged:"Engagé","Engagement Progress":"Progrès de l'engagement","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Chaque peuple non engagé adopté par une église locale engagée dans la prière, le don et l'envoi","Exact Search":"Recherche exacte","Find unreached people groups by region and country.":"Trouvez des peuples non atteints par région et par pays.","Full Profile":"Profil complet",Goal:"Objectif","Hide Filters":"Masquer les filtres",Intercessors:"Intercesseurs","Load More":"Afficher plus","Loading results...":"Chargement des résultats...","Mobilize 100+ people praying daily for each DOXA people group":"Mobiliser plus de 100 personnes priant chaque jour pour chaque peuple DOXA","No One Praying":"Personne ne prie","No options found":"Aucun lieu trouvé","No unengaged people groups by 2033":"Plus aucun peuple non engagé d'ici 2033","Not Adopted":"Non adopté",Other:"Autre","Page Not Found":"Page introuvable","People Group":"Peuple","People Groups":"Peuples","People committed to praying":"Personnes engagées dans la prière",Population:"Population","Prayer Coverage":"Couverture de prière","Prayer coverage progress":"Progression de la couverture de prière",Regions:"Régions",Religion:"Religion","Search names, country/continent, religions...":"Rechercher des noms, pays/continent, religions...","See %region% dashboard":"Voir le tableau de bord : %region%","See All":"Tout afficher",Select:"Sélectionner","Show Filters":"Afficher les filtres","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Il y a %count% peuples en %country%. Consultez la carte pour découvrir également les peuples situés à la frontière de ce pays.",Total:"Total","Type to search...":"Entrer votre recherche","Unengaged people groups":"Peuples non engagés","WAGF Block":"Bloc WAGF","WAGF Region":"Région WAGF","people groups adopted":"peuples adoptés","people groups engaged":"peuples engagés"},pm={placeholder:"Peuple, lieu, langue, religion",labels:{people:"Peuple :",place:"Lieu :",language:"Langue :",religion:"Religion :"},kinds:{people:"Peuple + pays",peopleGroup:"Peuple",bloc:"Bloc d'affinité",cluster:"Grappe de peuples",country:"Pays",region:"Région",family:"Famille linguistique",languageKind:"Langue",dialect:"Dialecte",religionKind:"Religion"}},gm={prayer:"Prière",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Peuples",regions:"Régions",countries:"Pays","language-families":"Langues",religion:"Religions",family:"Famille linguistique",language:"Langue",dialect:"Dialecte/Variété",bloc:"Bloc d'affinité",cluster:"Grappe",group:"Peuple",pgic:"Peuple dans le pays",region:"Région WAGF",block:"Bloc WAGF",country:"Pays"},fm={backToLegend:"लेजेंड पर वापस जाएं",closeDetailView:"विवरण दृश्य बंद करें"},hm={prayForThem:"उनके लिए प्रार्थना करें",adoptThem:"उन्हें गोद लें",moreInfo:"अधिक जानकारी",zoomIn:"ज़ूम इन",zoomOut:"ज़ूम आउट",switchToLightMode:"लाइट मोड पर जाएं",switchToDarkMode:"डार्क मोड पर जाएं",resetView:"दृश्य रीसेट करें",toggleFullscreen:"फ़ुलस्क्रीन टॉगल करें",aboutThisMap:"इस मानचित्र के बारे में",closeMenu:"मेनू बंद करें",reloadMap:"मानचित्र पुनः लोड करें",showClusters:"क्लस्टर दिखाएं",clusterSettings:"क्लस्टर सेटिंग्स",startAutoFly:"ऑटो फ्लाई शुरू करें",stopFlight:"उड़ान रोकें",speedLabel:"गति:",speedOption:{slow:"धीमी",normal:"सामान्य",fast:"तेज़"},shareEmbed:"साझा करें और एम्बेड करें"},mm={labels:{country:"देश:",population:"जनसंख्या:",language:"भाषा:",religion:"धर्म:",languageFamily:"भाषा परिवार:",peopleCommitted:"प्रार्थना के लिए प्रतिबद्ध:"},messages:{noDescription:"कोई विवरण उपलब्ध नहीं है।"}},bm={title:{prayer:"प्रार्थना प्रगति",engagement:"सहभागिता प्रगति",adoption:"गोद लेने की प्रगति",languageFamilies:"भाषा परिवार",doxaRegions:"Doxa क्षेत्र",affinityBlocs:"समानता समूह",gospelResources:"सुसमाचार संसाधन"},header:{collapsed:"किंवदंती",peopleGroupFallback:"जनजाति समूह"},prayer:{needsPrayer:"प्रार्थना चाहिए",hasPrayer:"प्रार्थना है",fullPrayerCoverage:"पूर्ण प्रार्थना कवरेज"},progress:{title:"प्रगति",covered:"{total} में से {covered} जनजाति समूह प्रार्थना में कवर · {pct}%",short:"{total} में से {covered} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"सहभागिता चाहिए",hasEngagement:"सहभागिता है"},adoption:{needsAdoption:"गोद लेना चाहिए",hasAdoption:"गोद लिया गया"},columns:{upgs:"UUPGs",population:"जनसंख्या"},footer:{total:"कुल"}},ym={menuComingSoon:"मेनू शीघ्र आ रहा है"},_m={clusterByRegion:"Doxa क्षेत्र के अनुसार",clusterByLanguageFamily:"भाषा परिवार के अनुसार",clusterByGospelResource:"सुसमाचार संसाधन के अनुसार"},vm={header:"वर्तमान प्रार्थना चक्र",lap:"चक्र",upgs:"UUPGs",separator:" में से "},km={"%count% people groups in %countries% countries":"%countries% देशों में %count% लोगों के समूह","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% में %countries% देशों में %count% लोगों के समूह हैं। प्रत्येक बिंदु का रंग दर्शाता है कि उस लोगों के समूह के लिए कितने लोग प्रार्थना कर रहे हैं।","1+ People Praying":"1+ लोग प्रार्थना कर रहे हैं","100+ People Praying":"100+ लोग प्रार्थना कर रहे हैं",Adopted:"दत्तक लिया गया","Adoption Progress":"दत्तक ग्रहण की प्रगति","All Regions":"सभी क्षेत्र","Alternate Names":"वैकल्पिक नाम","Clear All":"सभी साफ़ करें",Countries:"देश","Countries in this region":"इस क्षेत्र के देश",Country:"देश",Engaged:"प्रवेशित","Engagement Progress":"प्रवेश की प्रगति","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"प्रत्येक असंलग्न जनसमूह जिसे प्रार्थना, दान और भेजने के लिए प्रतिबद्ध एक चर्च ने अपनाया है।","Exact Search":"सटीक खोज","Find unreached people groups by region and country.":"क्षेत्र और देश के अनुसार अगम्य लोगों के समूह खोजें।","Full Profile":"पूर्ण प्रोफ़ाइल",Goal:"लक्ष्य","Hide Filters":"फ़िल्टर छिपाएँ",Intercessors:"मध्यस्थ","Load More":"और लोड करें","Loading results...":"परिणाम लोड हो रहे हैं..।","Mobilize 100+ people praying daily for each DOXA people group":"प्रत्येक DOXA जनसमूह के लिए प्रतिदिन प्रार्थना करने हेतु 100+ लोगों को सक्रिय करें।","No One Praying":"कोई प्रार्थना नहीं कर रहा","No options found":"कोई विकल्प नहीं मिला","No unengaged people groups by 2033":"2033 तक कोई भी संलग्न न किया गया जनसमूह नहीं रहेगा।","Not Adopted":"दत्तक नहीं लिया गया",Other:"अन्य","Page Not Found":"पृष्ठ नहीं मिला","People Group":"लोगों का समूह","People Groups":"लोगों के समूह","People committed to praying":"प्रार्थना के लिए प्रतिबद्ध लोग",Population:"जनसँख्या","Prayer Coverage":"प्रार्थना कवरेज","Prayer coverage progress":"प्रार्थना कवरेज की प्रगति",Regions:"क्षेत्र",Religion:"धर्म","Search names, country/continent, religions...":"नाम, देश/महाद्वीप, धर्म खोजें..।","See %region% dashboard":"%region% डैशबोर्ड देखें","See All":"सभी देखें",Select:"चयन/छंटनी","Show Filters":"फ़िल्टर दिखाएँ","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"%country% में %count% लोगों के समूह हैं। इस देश की सीमा पर स्थित लोगों के समूहों के लिए मानचित्र भी देखें।",Total:"संपूर्ण","Type to search...":"खोजने के लिए टाइप करें..।","Unengaged people groups":"अनलग्न लोगों के समूह","WAGF Block":"WAGF ब्लॉक","WAGF Region":"डब्ल्यूएजीएफ क्षेत्र","people groups adopted":"लोगों के समूहों ने अपनाया","people groups engaged":"प्रवेशित लोगों के समूह"},wm={placeholder:"लोग, स्थान, भाषा, धर्म",labels:{people:"लोग:",place:"स्थान:",language:"भाषा:",religion:"धर्म:"}},xm={backToLegend:"Torna alla legenda",closeDetailView:"Chiudi vista dettaglio"},Am={prayForThem:"Prega per loro",adoptThem:"Adottali",moreInfo:"Più informazioni",zoomIn:"Ingrandisci",zoomOut:"Riduci",switchToLightMode:"Passa alla modalità chiara",switchToDarkMode:"Passa alla modalità scura",resetView:"Reimposta vista",toggleFullscreen:"Attiva/disattiva schermo intero",aboutThisMap:"Informazioni su questa mappa",closeMenu:"Chiudi menu",reloadMap:"Ricarica mappa",showClusters:"Mostra cluster",clusterSettings:"Impostazioni cluster",startAutoFly:"Avvia volo automatico",stopFlight:"Ferma volo",speedLabel:"Velocità:",speedOption:{slow:"Lenta",normal:"Normale",fast:"Veloce"},shareEmbed:"Condividi e incorpora"},Sm={labels:{country:"Paese:",population:"Popolazione:",language:"Lingua:",religion:"Religione:",languageFamily:"Famiglia linguistica:",peopleCommitted:"Impegnati a pregare:"},messages:{noDescription:"Nessuna descrizione disponibile."}},$m={title:{prayer:"Avanzamento della preghiera",engagement:"Avanzamento dell'impegno",adoption:"Avanzamento dell'adozione",languageFamilies:"Famiglie linguistiche",doxaRegions:"Regioni Doxa",affinityBlocs:"Blocchi di affinità",gospelResources:"Risorse del Vangelo"},header:{collapsed:"Legenda",peopleGroupFallback:"Gruppo di persone"},prayer:{needsPrayer:"Necessita preghiera",hasPrayer:"Ha preghiera",fullPrayerCoverage:"Copertura di preghiera completa"},progress:{title:"Avanzamento",covered:"{covered} di {total} gruppi di persone coperti dalla preghiera · {pct}%",short:"{covered} di {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necessita impegno",hasEngagement:"Ha impegno"},adoption:{needsAdoption:"Necessita adozione",hasAdoption:"Ha adozione"},columns:{upgs:"UUPGs",population:"Popolazione"},footer:{total:"Totale"}},Em={menuComingSoon:"Menu in arrivo"},Cm={clusterByRegion:"Per regione Doxa",clusterByLanguageFamily:"Per famiglia linguistica",clusterByGospelResource:"Per risorsa del Vangelo"},Lm={header:"GIRO DI PREGHIERA ATTUALE",lap:"Giro",upgs:"UUPGs",separator:" di "},Tm={placeholder:"Popolo, luogo, lingua, religione",labels:{people:"Popolo:",place:"Luogo:",language:"Lingua:",religion:"Religione:"}},Pm={backToLegend:"Voltar à legenda",closeDetailView:"Fechar vista de detalhe"},Mm={prayForThem:"Ore por eles",adoptThem:"Adote-os",moreInfo:"Mais informações",zoomIn:"Ampliar",zoomOut:"Reduzir",switchToLightMode:"Mudar para modo claro",switchToDarkMode:"Mudar para modo escuro",resetView:"Repor vista",toggleFullscreen:"Alternar ecrã inteiro",aboutThisMap:"Sobre este mapa",closeMenu:"Fechar menu",reloadMap:"Recarregar mapa",showClusters:"Mostrar clusters",clusterSettings:"Definições de clusters",startAutoFly:"Iniciar voo automático",stopFlight:"Parar voo",speedLabel:"Velocidade:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Partilhar e incorporar"},Nm={labels:{country:"País:",population:"População:",language:"Língua:",religion:"Religião:",languageFamily:"Família linguística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"Sem descrição disponível."}},Rm={title:{prayer:"Progresso da oração",engagement:"Progresso do envolvimento",adoption:"Progresso da adoção",languageFamilies:"Famílias linguísticas",doxaRegions:"Regiões Doxa",affinityBlocs:"Blocos de afinidade",gospelResources:"Recursos do Evangelho"},header:{collapsed:"Legenda",peopleGroupFallback:"Grupo de pessoas"},prayer:{needsPrayer:"Precisa de oração",hasPrayer:"Tem oração",fullPrayerCoverage:"Cobertura de oração completa"},progress:{title:"Progresso",covered:"{covered} de {total} grupos de pessoas cobertos em oração · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Precisa de envolvimento",hasEngagement:"Tem envolvimento"},adoption:{needsAdoption:"Precisa de adoção",hasAdoption:"Tem adoção"},columns:{upgs:"UUPGs",population:"População",name:"Nome"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por população",colLabel:{religion:"Religiões UUPG",prayer:"Status de oração",engagement:"Status de engajamento",adoption:"Status de adoção",status:"Status"},titleBar:{legend:"Legenda",peopleGroups:"Povos",wagfRegions:"Regiões WAGF",languages:"Idiomas"}},Im={menuComingSoon:"Menu em breve"},Om={clusterByRegion:"Por região Doxa",clusterByLanguageFamily:"Por família linguística",clusterByGospelResource:"Por recurso do Evangelho"},Fm={header:"VOLTA DE ORAÇÃO ATUAL",lap:"Volta",upgs:"UUPGs",separator:" de "},Dm={"%count% people groups in %countries% countries":"%count% grupos étnicos em %countries% países","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% tem %count% grupos étnicos em %countries% países. A cor de cada ponto indica quantas pessoas oram por esse grupo étnico.","1+ People Praying":"1+ pessoas orando","100+ People Praying":"100+ pessoas orando",Adopted:"Aprovado","Adoption Progress":"Progresso da adoção","All Regions":"Todas as regiões","Alternate Names":"Nomes alternativos","Clear All":"Limpar tudo",Countries:"Países","Countries in this region":"Países desta região",Country:"País",Engaged:"Engajado","Engagement Progress":"Progresso do engajamento","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Cada grupo étnico não engajado adotado por uma igreja comprometida com a oração, contribuição e o envio","Exact Search":"Pesquisa exata","Find unreached people groups by region and country.":"Encontre grupos étnicos não alcançados por região e país.","Full Profile":"Perfil completo",Goal:"Meta","Hide Filters":"Ocultar filtros",Intercessors:"Intercessores","Load More":"Carregar mais","Loading results...":"A carregar resultados...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilizar mais de 100 pessoas para orar diariamente por cada grupo étnico DOXA","No One Praying":"Ninguém orando","No options found":"Não foram encontradas opções","No unengaged people groups by 2033":"Nenhum grupo étnico não engajado até 2033","Not Adopted":"Não adotado",Other:"Outros","Page Not Found":"Página não encontrada","People Group":"Grupo étnico","People Groups":"Grupos étnicos","People committed to praying":"Pessoas comprometidas com a oração",Population:"Aplicação","Prayer Coverage":"Cobertura de oração","Prayer coverage progress":"Progresso da cobertura de oração",Regions:"Regiões",Religion:"Religião","Search names, country/continent, religions...":"Busque nomes, país/continente, religiões...","See %region% dashboard":"Ver o painel: %region%","See All":"Ver tudo",Select:"Selecionar","Show Filters":"Mostrar filtros","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Existem %count% grupos étnicos em %country%. Verifique no mapa também os grupos étnicos na fronteira deste país.",Total:"Total","Type to search...":"Digite para pesquisar...","Unengaged people groups":"Grupos étnicos não engajados","WAGF Block":"Bloco WAGF","WAGF Region":"Região da WAGF","people groups adopted":"grupos étnicos adotados","people groups engaged":"grupos étnicos engajados"},Bm={placeholder:"Povo, local, língua, religião",labels:{people:"Povo:",place:"Local:",language:"Língua:",religion:"Religião:"},kinds:{people:"Povo + país",peopleGroup:"Povo",bloc:"Bloco de afinidade",cluster:"Agrupamento de povos",country:"País",region:"Região",family:"Família linguística",languageKind:"Idioma",dialect:"Dialeto",religionKind:"Religião"}},Gm={prayer:"Oração",adoption:"Adoção",engagement:"Engajamento","affinity-blocks":"Povos",regions:"Regiões",countries:"Países","language-families":"Idiomas",religion:"Religiões",family:"Família linguística",language:"Idioma",dialect:"Dialeto/Variedade",bloc:"Bloco de afinidade",cluster:"Agrupamento",group:"Povo",pgic:"Povo no país",region:"Região WAGF",block:"Bloco WAGF",country:"País"},jm={backToLegend:"Înapoi la legendă",closeDetailView:"Închide vizualizarea detaliată"},Um={prayForThem:"Roagă-te pentru ei",adoptThem:"Adoptă-i",moreInfo:"Mai multe informații",zoomIn:"Mărește",zoomOut:"Micșorează",switchToLightMode:"Comută la modul luminos",switchToDarkMode:"Comută la modul întunecat",resetView:"Resetează vizualizarea",toggleFullscreen:"Comută ecran complet",aboutThisMap:"Despre această hartă",closeMenu:"Închide meniul",reloadMap:"Reîncarcă harta",showClusters:"Arată clusterele",clusterSettings:"Setări clustere",startAutoFly:"Pornește zborul automat",stopFlight:"Oprește zborul",speedLabel:"Viteză:",speedOption:{slow:"Lent",normal:"Normal",fast:"Rapid"},shareEmbed:"Partajează și încorporează"},Km={labels:{country:"Țară:",population:"Populație:",language:"Limbă:",religion:"Religie:",languageFamily:"Familie de limbi:",peopleCommitted:"Angajați să se roage:"},messages:{noDescription:"Nicio descriere disponibilă."}},zm={title:{prayer:"Progresul rugăciunii",engagement:"Progresul implicării",adoption:"Progresul adopției",languageFamilies:"Familii de limbi",doxaRegions:"Regiuni Doxa",affinityBlocs:"Blocuri de afinitate",gospelResources:"Resurse ale Evangheliei"},header:{collapsed:"Legendă",peopleGroupFallback:"Grup de popoare"},prayer:{needsPrayer:"Necesită rugăciune",hasPrayer:"Are rugăciune",fullPrayerCoverage:"Acoperire completă de rugăciune"},progress:{title:"Progres",covered:"{covered} din {total} grupuri de popoare acoperite în rugăciune · {pct}%",short:"{covered} din {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesită implicare",hasEngagement:"Are implicare"},adoption:{needsAdoption:"Necesită adopție",hasAdoption:"Are adopție"},columns:{upgs:"UUPGs",population:"Populație"},footer:{total:"Total"}},Hm={menuComingSoon:"Meniu în curând"},Vm={clusterByRegion:"După regiune Doxa",clusterByLanguageFamily:"După familia de limbi",clusterByGospelResource:"După resursa Evangheliei"},Wm={header:"TURUL DE RUGĂCIUNE CURENT",lap:"Tur",upgs:"UUPGs",separator:" din "},Ym={placeholder:"Popor, loc, limbă, religie",labels:{people:"Popor:",place:"Loc:",language:"Limbă:",religion:"Religie:"}},qm={backToLegend:"Назад к легенде",closeDetailView:"Закрыть подробный вид"},Jm={prayForThem:"Молитесь о них",adoptThem:"Усыновите их",moreInfo:"Подробнее",zoomIn:"Приблизить",zoomOut:"Отдалить",switchToLightMode:"Переключить на светлый режим",switchToDarkMode:"Переключить на тёмный режим",resetView:"Сбросить вид",toggleFullscreen:"Полноэкранный режим",aboutThisMap:"Об этой карте",closeMenu:"Закрыть меню",reloadMap:"Перезагрузить карту",showClusters:"Показать кластеры",clusterSettings:"Настройки кластеров",startAutoFly:"Начать авто-полёт",stopFlight:"Остановить полёт",speedLabel:"Скорость:",speedOption:{slow:"Медленно",normal:"Нормально",fast:"Быстро"},shareEmbed:"Поделиться и встроить"},Xm={labels:{country:"Страна:",population:"Население:",language:"Язык:",religion:"Религия:",languageFamily:"Языковая семья:",peopleCommitted:"Обязались молиться:"},messages:{noDescription:"Описание недоступно."}},Zm={title:{prayer:"Прогресс молитвы",engagement:"Прогресс вовлечённости",adoption:"Прогресс усыновления",languageFamilies:"Языковые семьи",doxaRegions:"Регионы Doxa",affinityBlocs:"Блоки родства",gospelResources:"Евангельские ресурсы"},header:{collapsed:"Условные обозначения",peopleGroupFallback:"Народная группа"},prayer:{needsPrayer:"Нуждается в молитве",hasPrayer:"Есть молитва",fullPrayerCoverage:"Полное молитвенное покрытие"},progress:{title:"Прогресс",covered:"{covered} из {total} народных групп охвачены молитвой · {pct}%",short:"{covered} из {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Нуждается в вовлечённости",hasEngagement:"Есть вовлечённость"},adoption:{needsAdoption:"Нуждается в усыновлении",hasAdoption:"Есть усыновление"},columns:{upgs:"UUPGs",population:"Население",name:"Название"},footer:{total:"Всего"},sortByUpgs:"Сортировать по UUPG",sortByPop:"Сортировать по населению",colLabel:{religion:"Религии UUPG",prayer:"Статус молитвы",engagement:"Статус вовлечённости",adoption:"Статус усыновления",status:"Статус"},titleBar:{legend:"Легенда",peopleGroups:"Народы",wagfRegions:"Регионы WAGF",languages:"Языки"}},Qm={menuComingSoon:"Меню скоро появится"},eb={clusterByRegion:"По региону Doxa",clusterByLanguageFamily:"По языковой семье",clusterByGospelResource:"По евангельскому ресурсу"},tb={header:"ТЕКУЩИЙ КРУГ МОЛИТВЫ",lap:"Круг",upgs:"UUPGs",separator:" из "},ob={"%count% people groups in %countries% countries":"%count% групп людей в %countries% странах","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"В регионе %region% — %count% групп людей в %countries% странах. Цвет каждой точки показывает, сколько человек молится за эту группу людей.","1+ People Praying":"1+ человек молится","100+ People Praying":"100+ человек молятся",Adopted:"Принято","Adoption Progress":"Прогресс принятия","All Regions":"Все регионы","Alternate Names":"Альтернативные названия","Clear All":"Очистить всё",Countries:"Страны","Countries in this region":"Страны этого региона",Country:"Страна",Engaged:"Вовлечённый","Engagement Progress":"Прогресс вовлечения","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Каждая незадействованная народность принята церковью, приверженной молитве, пожертвованиям и посылке миссионеров","Exact Search":"Точный поиск","Find unreached people groups by region and country.":"Найдите недостигнутые группы людей по регионам и странам.","Full Profile":"Полный профиль",Goal:"Цель","Hide Filters":"Скрыть фильтры",Intercessors:"Ходатаи","Load More":"Загрузить еще","Loading results...":"Загрузка результатов...","Mobilize 100+ people praying daily for each DOXA people group":"Мобилизуйте 100+ человек для ежедневной молитвы за каждую народность DOXA","No One Praying":"Никто не молится","No options found":"Вариантов не найдено","No unengaged people groups by 2033":"К 2033 году не останется незадействованных народов","Not Adopted":"Не принято",Other:"Другое","Page Not Found":"Страница не найдена","People Group":"Группа людей","People Groups":"Группы людей","People committed to praying":"Люди, посвятившие себя молитве",Population:"Население","Prayer Coverage":"Молитвенное покрытие","Prayer coverage progress":"Прогресс молитвенного покрытия",Regions:"Регионы",Religion:"Религия","Search names, country/continent, religions...":"Поиск по именам, странам/континентам, религиям...","See %region% dashboard":"Открыть панель: %region%","See All":"Смотреть все",Select:"Выбрать","Show Filters":"Показать фильтры","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Страна %country% насчитывает %count% групп людей. Проверьте также на карте группы людей, расположенные вдоль границ этой страны.",Total:"Итого","Type to search...":"Введите текст для поиска...","Unengaged people groups":"Невовлечённые группы людей","WAGF Block":"Блок WAGF","WAGF Region":"Регион WAGF","people groups adopted":"принятые группы людей","people groups engaged":"вовлечённые группы людей"},nb={placeholder:"Народ, место, язык, религия",labels:{people:"Народ:",place:"Место:",language:"Язык:",religion:"Религия:"},kinds:{people:"Народ + страна",peopleGroup:"Народ",bloc:"Блок родства",cluster:"Кластер народов",country:"Страна",region:"Регион",family:"Языковая семья",languageKind:"Язык",dialect:"Диалект",religionKind:"Религия"}},ab={prayer:"Молитва",adoption:"Усыновление",engagement:"Вовлечённость","affinity-blocks":"Народы",regions:"Регионы",countries:"Страны","language-families":"Языки",religion:"Религии",family:"Языковая семья",language:"Язык",dialect:"Диалект/вариант",bloc:"Блок родства",cluster:"Кластер",group:"Народ",pgic:"Народ в стране",region:"Регион WAGF",block:"Блок WAGF",country:"Страна"},rb={backToLegend:"返回图例",closeDetailView:"关闭详情视图"},sb={prayForThem:"为他们祷告",adoptThem:"认领他们",moreInfo:"更多信息",zoomIn:"放大",zoomOut:"缩小",switchToLightMode:"切换至浅色模式",switchToDarkMode:"切换至深色模式",resetView:"重置视图",toggleFullscreen:"切换全屏",aboutThisMap:"关于此地图",closeMenu:"关闭菜单",reloadMap:"重新加载地图",showClusters:"显示聚类",clusterSettings:"聚类设置",startAutoFly:"开始自动飞行",stopFlight:"停止飞行",speedLabel:"速度:",speedOption:{slow:"慢",normal:"正常",fast:"快"},shareEmbed:"分享与嵌入"},ib={labels:{country:"国家:",population:"人口:",language:"语言:",religion:"宗教:",languageFamily:"语系:",peopleCommitted:"承诺祷告人数:"},messages:{noDescription:"暂无描述。"}},lb={title:{prayer:"祷告进度",engagement:"参与进度",adoption:"认领进度",languageFamilies:"语系",doxaRegions:"Doxa 区域",affinityBlocs:"亲缘板块",gospelResources:"福音资源"},header:{collapsed:"图例",peopleGroupFallback:"民族群体"},prayer:{needsPrayer:"需要祷告",hasPrayer:"已有祷告",fullPrayerCoverage:"全面祷告覆盖"},progress:{title:"进度",covered:"{total} 个民族群体中已有 {covered} 个被祷告覆盖 · {pct}%",short:"{covered} / {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"需要参与",hasEngagement:"已有参与"},adoption:{needsAdoption:"需要认领",hasAdoption:"已有认领"},columns:{upgs:"UUPGs",population:"人口"},footer:{total:"总计"}},cb={menuComingSoon:"菜单即将推出"},ub={clusterByRegion:"按 Doxa 区域",clusterByLanguageFamily:"按语系",clusterByGospelResource:"按福音资源"},db={header:"当前祷告轮次",lap:"第",upgs:"UUPGs",separator:" / "},pb={placeholder:"民族、地点、语言、宗教",labels:{people:"民族:",place:"地点:",language:"语言:",religion:"宗教:"}};/*! * shared v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. diff --git a/public/doxa-maps/my-upg-100-list/poster-wall/index.html b/public/doxa-maps/my-upg-100-list/poster-wall/index.html index a322e3047..bcdb8400c 100644 --- a/public/doxa-maps/my-upg-100-list/poster-wall/index.html +++ b/public/doxa-maps/my-upg-100-list/poster-wall/index.html @@ -29,7 +29,7 @@ - + - + - + - + - + - + + - + - + + window.FORGE.manifest = {"schema":"doxa-maps-manifest@1","generatedFrom":"plugin-designs/*/*.vue","embedBase":".","bundleCount":22,"profileCount":34,"bundles":[{"bundle":"all-people-groups","scriptUrl":"./all-people-groups/all-people-groups.js","output":"doxa-maps/all-people-groups/all-people-groups.js","integrity":"sha384-cqk7oshuPW5FdnbZ/DyfBBXN2FObAI+V1jrbxmZR2xzNiBtWG65PETQ5/w5PCDB2","elements":["all-people-groups"],"profiles":[{"profile":"all-people-groups","file":"all-people-groups.vue","description":"All 12,379 people groups (peoplegroups.org) in four colors — reached,","element":"all-people-groups","type":"single","isMap":true,"iframeUrl":"./all-people-groups/all-people-groups/index.html","scriptUrl":"./all-people-groups/all-people-groups.js","embed":{"iframe":"\u003ciframe src=\"./all-people-groups/all-people-groups/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./all-people-groups/all-people-groups.js\" integrity=\"sha384-cqk7oshuPW5FdnbZ/DyfBBXN2FObAI+V1jrbxmZR2xzNiBtWG65PETQ5/w5PCDB2\" crossorigin=\"anonymous\">\u003c/script>\n\u003call-people-groups profile-config='{\"profile\":\"all-people-groups\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/all-people-groups>"},"bundle":"all-people-groups"}]},{"bundle":"big-picture","scriptUrl":"./big-picture/big-picture.js","output":"doxa-maps/big-picture/big-picture.js","integrity":"sha384-v0b+aZ7TBxmgUIBBLdKEm6HzwjY3jAGyOFNsKeKCKY4EIRpiWRTcNLavAitHRt8h","elements":["bp-big-picture","bp-research-header","people-groups-grid"],"composes":["bp-research-header","people-groups-grid"],"profiles":[{"profile":"big-picture","file":"big-picture.vue","description":"The Cat-4 composite that PAIRS the two real capability elements of the","element":"bp-big-picture","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./big-picture/big-picture/index.html","scriptUrl":"./big-picture/big-picture.js","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./big-picture/big-picture.js\" integrity=\"sha384-v0b+aZ7TBxmgUIBBLdKEm6HzwjY3jAGyOFNsKeKCKY4EIRpiWRTcNLavAitHRt8h\" crossorigin=\"anonymous\">\u003c/script>\n\u003cbp-big-picture profile-config='{\"profile\":\"big-picture\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/bp-big-picture>"},"instances":[{"id":"big-picture","title":"Big Picture — research header ↔ people-groups grid (composite)","apiBaseUrl":"","props":{"profile":"big-picture","provider":"maplibre","instanceId":"bp-big-picture"},"element":"bp-big-picture","iframeUrl":"./big-picture/big-picture/big-picture/index.html","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/big-picture/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"frontier","title":"Big Picture — frontier accent","apiBaseUrl":"","props":{"profile":"big-picture","provider":"maplibre","instanceId":"bp-big-picture-frontier","accent":"#22d3ee","title":"Big Picture — Frontier Focus"},"element":"bp-big-picture","iframeUrl":"./big-picture/big-picture/frontier/index.html","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/frontier/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"big-picture"}]},{"bundle":"cities-internet","scriptUrl":"./cities-internet/cities-internet.js","output":"doxa-maps/cities-internet/cities-internet.js","integrity":"sha384-tNig8gXdCocWVKD5iXR6iRqiAr7msWFtcFKzYif0L0G5i/RM+HI+SO8oR5c6O+5R","elements":["cities-internet-map"],"profiles":[{"profile":"connectivity-list","file":"connectivity-list.vue","description":"Countries where DX people groups live, grouped by region, showing measured internet penetration","element":"cities-internet-map","type":"single","isMap":false,"iframeUrl":"./cities-internet/connectivity-list/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/connectivity-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-tNig8gXdCocWVKD5iXR6iRqiAr7msWFtcFKzYif0L0G5i/RM+HI+SO8oR5c6O+5R\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"connectivity-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}},{"profile":"connectivity-map","file":"connectivity-map.vue","description":"Every country shaded by measured internet penetration, with its named carriers and dominant","element":"cities-internet-map","type":"single","isMap":true,"iframeUrl":"./cities-internet/connectivity-map/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/connectivity-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-tNig8gXdCocWVKD5iXR6iRqiAr7msWFtcFKzYif0L0G5i/RM+HI+SO8oR5c6O+5R\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"connectivity-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}},{"profile":"data-tables","file":"data-tables.vue","description":"Four validated research tables, one tab each, with sortable and filterable columns, CSV and JSON","element":"cities-internet-map","type":"single","isMap":false,"iframeUrl":"./cities-internet/data-tables/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-tNig8gXdCocWVKD5iXR6iRqiAr7msWFtcFKzYif0L0G5i/RM+HI+SO8oR5c6O+5R\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}}]},{"bundle":"country-posters","scriptUrl":"./country-posters/country-posters.js","output":"doxa-maps/country-posters/country-posters.js","integrity":"sha384-LksOyBNdOcEFKZgo24HIYOYo/V/rrVy5weXVxrnzkJU9drI09SrvK+/Zz7PlFxha","elements":["country-posters-map"],"composes":["country-posters/country-poster-wall","country-posters/countries-map"],"profiles":[{"profile":"countries-map","file":"countries-map.vue","description":"The researcher's workbench retargeted from people groups to COUNTRIES — region","element":"country-posters-map","type":"single","isMap":true,"iframeUrl":"./country-posters/countries-map/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/countries-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-LksOyBNdOcEFKZgo24HIYOYo/V/rrVy5weXVxrnzkJU9drI09SrvK+/Zz7PlFxha\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"countries-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}},{"profile":"country-poster-wall","file":"country-poster-wall.vue","description":"One printable card per country, grouped into COLLAPSIBLE regional sections so the","element":"country-posters-map","type":"single","isMap":false,"iframeUrl":"./country-posters/country-poster-wall/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/country-poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-LksOyBNdOcEFKZgo24HIYOYo/V/rrVy5weXVxrnzkJU9drI09SrvK+/Zz7PlFxha\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"country-poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}},{"profile":"country-posters-mfe","file":"country-posters-mfe.vue","description":"","element":"country-posters-map","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./country-posters/country-posters-mfe/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/country-posters-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-LksOyBNdOcEFKZgo24HIYOYo/V/rrVy5weXVxrnzkJU9drI09SrvK+/Zz7PlFxha\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"country-posters-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}}]},{"bundle":"dashboard-plus-grid","scriptUrl":"./dashboard-plus-grid/dashboard-plus-grid.js","output":"doxa-maps/dashboard-plus-grid/dashboard-plus-grid.js","integrity":"sha384-YbJgljynZ4t3/Ro44oHQy9ihl9/5o7j4IKts8MNRfA73Cb5cyD7U52DklXjzpLpG","elements":["dashboard-plus-grid"],"composes":["research-dashboard","people-groups-grid"],"profiles":[{"profile":"dashboard-plus-grid","file":"dashboard-plus-grid.vue","description":"Both children are IMPORTED DIRECTLY (compiled into this ONE bundle — no runtime bundle","element":"dashboard-plus-grid","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./dashboard-plus-grid/dashboard-plus-grid/index.html","scriptUrl":"./dashboard-plus-grid/dashboard-plus-grid.js","embed":{"iframe":"\u003ciframe src=\"./dashboard-plus-grid/dashboard-plus-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./dashboard-plus-grid/dashboard-plus-grid.js\" integrity=\"sha384-YbJgljynZ4t3/Ro44oHQy9ihl9/5o7j4IKts8MNRfA73Cb5cyD7U52DklXjzpLpG\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdashboard-plus-grid profile-config='{\"profile\":\"dashboard-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/dashboard-plus-grid>"},"instances":[{"id":"default","title":"default","apiBaseUrl":"","props":{"profile":"dashboard-plus-grid"},"element":"dashboard-plus-grid","iframeUrl":"./dashboard-plus-grid/dashboard-plus-grid/default/index.html","embed":{"iframe":"\u003ciframe src=\"./dashboard-plus-grid/dashboard-plus-grid/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"demo-map","scriptUrl":"./demo-map/demo-map.js","output":"doxa-maps/demo-map/demo-map.js","integrity":"sha384-QiUJUgeFn27tiHKVhAYtJuIWo+1z5xsCUP1Nj4m1H4cFUV3vUA7ADTP58Ky3oVtQ","elements":["demo-map"],"profiles":[{"profile":"demo-map","file":"demo-map.vue","description":"Simple two-tab demo map. Tab 1 colors pins by religion (shared","element":"demo-map","type":"parameterized","isMap":true,"iframeUrl":"./demo-map/demo-map/index.html","scriptUrl":"./demo-map/demo-map.js","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./demo-map/demo-map.js\" integrity=\"sha384-QiUJUgeFn27tiHKVhAYtJuIWo+1z5xsCUP1Nj4m1H4cFUV3vUA7ADTP58Ky3oVtQ\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdemo-map profile-config='{\"profile\":\"demo-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/demo-map>"},"instances":[{"id":"maplibre","title":"Demo map — MapLibre (token-free)","apiBaseUrl":"","props":{"profile":"demo-map","provider":"maplibre","instanceId":"demo-maplibre"},"element":"demo-map","iframeUrl":"./demo-map/demo-map/maplibre/index.html","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/maplibre/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"demo-map"}]},{"bundle":"doxa-maps-spa","scriptUrl":"./doxa-maps-spa/doxa-maps-spa.js","output":"doxa-maps/doxa-maps-spa/doxa-maps-spa.js","integrity":"sha384-Ce+DKsLgwfej+rgoWeaWFuMMbR3Y4H+8io/lVL+lQfX0O3iGKwDLf4remDkHGCrP","elements":["doxa-maps-spa"],"composes":["bp-big-picture","doxa-research-map","doxa-simple-map","cities-internet-map","gospel-resources-map","my-upg-100-list-map"],"profiles":[{"profile":"doxa-maps-spa","file":"doxa-maps-spa.vue","description":"The DX-maps app itself: one element whose vertical-tab rail nests every other","element":"doxa-maps-spa","type":"nested-mfe-spa","isMap":false,"iframeUrl":"./doxa-maps-spa/doxa-maps-spa/index.html","scriptUrl":"./doxa-maps-spa/doxa-maps-spa.js","embed":{"iframe":"\u003ciframe src=\"./doxa-maps-spa/doxa-maps-spa/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-maps-spa/doxa-maps-spa.js\" integrity=\"sha384-Ce+DKsLgwfej+rgoWeaWFuMMbR3Y4H+8io/lVL+lQfX0O3iGKwDLf4remDkHGCrP\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-maps-spa profile-config='{\"profile\":\"doxa-maps-spa\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-maps-spa>"},"instances":[{"id":"app","title":"DX-Maps SPA — Big Picture + every research map (app-shell)","apiBaseUrl":"","props":{"profile":"doxa-maps-spa","provider":"maplibre","instanceId":"doxa-maps-spa-app","title":"DX-Maps"},"element":"doxa-maps-spa","iframeUrl":"./doxa-maps-spa/doxa-maps-spa/app/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-maps-spa/doxa-maps-spa/app/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-research-map","scriptUrl":"./doxa-research-map/doxa-research-map.js","output":"doxa-maps/doxa-research-map/doxa-research-map.js","integrity":"sha384-oecoezttPmpRe5GNG/Yko6IkEbtLjCD7PD7qghU1ZigprnfLKhbf0eBEiEbE24iR","elements":["doxa-research-map"],"profiles":[{"profile":"research-map","file":"research-map.vue","description":"The researcher's workbench: every piece a missiologist, demographer or","element":"doxa-research-map","type":"monolithic","isMap":true,"iframeUrl":"./doxa-research-map/research-map/index.html","scriptUrl":"./doxa-research-map/doxa-research-map.js","embed":{"iframe":"\u003ciframe src=\"./doxa-research-map/research-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-research-map/doxa-research-map.js\" integrity=\"sha384-oecoezttPmpRe5GNG/Yko6IkEbtLjCD7PD7qghU1ZigprnfLKhbf0eBEiEbE24iR\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-research-map profile-config='{\"profile\":\"research-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-research-map>"},"instances":[{"id":"maplibre","title":"Research map — MapLibre (token-free, no search bar)","apiBaseUrl":"","props":{"profile":"research-map","provider":"maplibre","instanceId":"research-map-maplibre"},"element":"doxa-research-map","iframeUrl":"./doxa-research-map/research-map/maplibre/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-research-map/research-map/maplibre/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-simple-map","scriptUrl":"./doxa-simple-map/doxa-simple-map.js","output":"doxa-maps/doxa-simple-map/doxa-simple-map.js","integrity":"sha384-hzEui48BqpW8VhRthz3daMgAdw4w4M3gtBre4ce4sXuAmS+39pMRW9reNAvpFb+W","elements":["doxa-map","doxa-simple-map"],"profiles":[{"profile":"doxa-simple-map","file":"doxa-simple-map.vue","description":"The simple world map, shipped as three presets off ONE prop table —","element":"doxa-map","type":"parameterized","isMap":true,"iframeUrl":"./doxa-simple-map/doxa-simple-map/index.html","scriptUrl":"./doxa-simple-map/doxa-simple-map.js","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-simple-map/doxa-simple-map.js\" integrity=\"sha384-hzEui48BqpW8VhRthz3daMgAdw4w4M3gtBre4ce4sXuAmS+39pMRW9reNAvpFb+W\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-map profile-config='{\"profile\":\"doxa-simple-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-map>"},"instances":[{"id":"prayer","title":"Prayer Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-prayer","dataSource":"pray-tools","tabs":[{"id":"prayer","colorStrategy":"prayer","legend":"prayer","popup":"prayer"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/prayer/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/prayer/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"engagement","title":"Engagement Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-engagement","dataSource":"pray-tools","tabs":[{"id":"engagement","colorStrategy":"engagement","legend":"engagement","popup":"engagement"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/engagement/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/engagement/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"adoption","title":"Adoption Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-adoption","dataSource":"pray-tools","tabs":[{"id":"adoption","colorStrategy":"adoption","legend":"adoption","popup":"adoption"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/adoption/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/adoption/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-vision-card","scriptUrl":"./doxa-vision-card/doxa-vision-card.js","output":"doxa-maps/doxa-vision-card/doxa-vision-card.js","integrity":"sha384-2mza3cltN5LQQIrlENG/IVL6Icd9zzcFve3E8R8VWuCdYOGW9uGKFvxcbu6eFfwn","elements":["doxa-vision-card"],"profiles":[{"profile":"doxa-vision-card","file":"doxa-vision-card.vue","description":"The Capability-1 example: ONE folder -> ONE bundle -> ONE element.","element":"doxa-vision-card","type":"parameterized","isMap":false,"iframeUrl":"./doxa-vision-card/doxa-vision-card/index.html","scriptUrl":"./doxa-vision-card/doxa-vision-card.js","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-vision-card/doxa-vision-card.js\" integrity=\"sha384-2mza3cltN5LQQIrlENG/IVL6Icd9zzcFve3E8R8VWuCdYOGW9uGKFvxcbu6eFfwn\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-vision-card profile-config='{\"profile\":\"doxa-vision-card\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-vision-card>"},"instances":[{"id":"default","title":"Vision card — reach at a glance","apiBaseUrl":"","props":{"profile":"doxa-vision-card","provider":"maplibre","instanceId":"vision-card-default"},"element":"doxa-vision-card","iframeUrl":"./doxa-vision-card/doxa-vision-card/default/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"frontier","title":"Vision card — frontier accent","apiBaseUrl":"","props":{"profile":"doxa-vision-card","provider":"maplibre","instanceId":"vision-card-frontier","accent":"#22d3ee","title":"The last frontier of the gospel.","tagline":"Frontier people groups — where fewer than one in a thousand follow Jesus.","stats":[{"value":"1,910","label":"Frontier groups","note":"under 0.1% believers"},{"value":"2.1B","label":"People","note":"living in frontier settings"},{"value":"0.1%","label":"Christian","note":"or fewer, in each group"}]},"element":"doxa-vision-card","iframeUrl":"./doxa-vision-card/doxa-vision-card/frontier/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/frontier/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"doxa-vision-card"}]},{"bundle":"golden-path-check","scriptUrl":"./golden-path-check/golden-path-check.js","output":"doxa-maps/golden-path-check/golden-path-check.js","integrity":"sha384-1V/sT5SkV0U9yTCK9ELIOFfU1ZIJkInIF6nG3UllJ4dxax3RsEAupSGLJEFK6e14","elements":["golden-path-check"],"profiles":[{"profile":"golden-path-check","file":"golden-path-check.vue","description":"A live self-test of the develop-a-plugin-and-see-it-live path: it reads the built","element":"golden-path-check","type":"single","isMap":false,"iframeUrl":"./golden-path-check/golden-path-check/index.html","scriptUrl":"./golden-path-check/golden-path-check.js","embed":{"iframe":"\u003ciframe src=\"./golden-path-check/golden-path-check/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./golden-path-check/golden-path-check.js\" integrity=\"sha384-1V/sT5SkV0U9yTCK9ELIOFfU1ZIJkInIF6nG3UllJ4dxax3RsEAupSGLJEFK6e14\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgolden-path-check profile-config='{\"profile\":\"golden-path-check\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/golden-path-check>"}}]},{"bundle":"gospel-resources","scriptUrl":"./gospel-resources/gospel-resources.js","output":"doxa-maps/gospel-resources/gospel-resources.js","integrity":"sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI","elements":["gospel-resources-map"],"profiles":[{"profile":"charts","file":"charts.vue","description":"The gap by LANGUAGE (ISO 639-3) rather than by people group — because one translation serves every","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/charts/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/charts/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"charts\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"data-tables","file":"data-tables.vue","description":"Two validated tables: what resources exist per people group, and whether that access is keeping","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/data-tables/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"resources-list","file":"resources-list.vue","description":"Which DX people groups have scripture in their own language, and which have none. The zero-resource","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/resources-list/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/resources-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"resources-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"resources-map","file":"resources-map.vue","description":"Every country shaded by how much of its unengaged population has NO gospel resource in their own","element":"gospel-resources-map","type":"single","isMap":true,"iframeUrl":"./gospel-resources/resources-map/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/resources-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"resources-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}}]},{"bundle":"my-upg-100-list","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","output":"doxa-maps/my-upg-100-list/my-upg-100-list.js","integrity":"sha384-VYXU1i1xnVyXAsxLHy565gD+tQp090jzfT6YPRJAYAKAmYIIqr1KqUtQZnO/zv0A","elements":["my-upg-100-list-map"],"composes":["my-upg-100-list/upg-100-list","my-upg-100-list/poster-wall"],"profiles":[{"profile":"poster-wall","file":"poster-wall.vue","description":"A wall of printable poster cards, one per 100-list entry, each with a \"Show on map\" action that","element":"my-upg-100-list-map","type":"single","isMap":true,"iframeUrl":"./my-upg-100-list/poster-wall/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-VYXU1i1xnVyXAsxLHy565gD+tQp090jzfT6YPRJAYAKAmYIIqr1KqUtQZnO/zv0A\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}},{"profile":"upg-100-list","file":"upg-100-list.vue","description":"A personal unreached-people-groups list painted as true boundary polygons —","element":"my-upg-100-list-map","type":"single","isMap":true,"iframeUrl":"./my-upg-100-list/upg-100-list/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/upg-100-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-VYXU1i1xnVyXAsxLHy565gD+tQp090jzfT6YPRJAYAKAmYIIqr1KqUtQZnO/zv0A\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"upg-100-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}},{"profile":"upg-100-mfe","file":"upg-100-mfe.vue","description":"The standalone, shareable and embeddable composite of the my-upg-100-list family — it nests the map","element":"my-upg-100-list-map","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./my-upg-100-list/upg-100-mfe/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/upg-100-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-VYXU1i1xnVyXAsxLHy565gD+tQp090jzfT6YPRJAYAKAmYIIqr1KqUtQZnO/zv0A\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"upg-100-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}}]},{"bundle":"people-groups-grid","scriptUrl":"./people-groups-grid/people-groups-grid.js","output":"doxa-maps/people-groups-grid/people-groups-grid.js","integrity":"sha384-ss5PmeSkKuxafBwvxZG3r7roP0OB/oVGwFbfrHnydEhjbtrlB4eisdsPXEyCJF37","elements":["people-groups-grid"],"profiles":[{"profile":"people-groups-grid","file":"people-groups-grid.vue","description":"The people-groups grid as an owned custom element: card list, search and four","element":"people-groups-grid","type":"parameterized","isMap":false,"iframeUrl":"./people-groups-grid/people-groups-grid/index.html","scriptUrl":"./people-groups-grid/people-groups-grid.js","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./people-groups-grid/people-groups-grid.js\" integrity=\"sha384-ss5PmeSkKuxafBwvxZG3r7roP0OB/oVGwFbfrHnydEhjbtrlB4eisdsPXEyCJF37\" crossorigin=\"anonymous\">\u003c/script>\n\u003cpeople-groups-grid profile-config='{\"profile\":\"people-groups-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/people-groups-grid>"},"instances":[{"id":"people-groups-grid","title":"People Groups Grid — standalone (own search + 4 dropdowns)","apiBaseUrl":"","props":{"profile":"people-groups-grid","provider":"maplibre","instanceId":"people-groups-grid","pray-base-url":"https://pray.doxa.life"},"element":"people-groups-grid","iframeUrl":"./people-groups-grid/people-groups-grid/people-groups-grid/index.html","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/people-groups-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"driven","title":"People Groups Grid — externally driven (controls off, props/events)","apiBaseUrl":"","props":{"profile":"people-groups-grid","provider":"maplibre","instanceId":"people-groups-grid-driven","pray-base-url":"https://pray.doxa.life","show-search":"false","show-filters":"false"},"element":"people-groups-grid","iframeUrl":"./people-groups-grid/people-groups-grid/driven/index.html","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/driven/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"plugin-studio","scriptUrl":"./plugin-studio/plugin-studio.js","output":"doxa-maps/plugin-studio/plugin-studio.js","integrity":"sha384-2RlLFRU2XdjBN7w+FPguj8INgj57JFg4IFT2AmdefGnR9QQLehbiiAffV45LcsFH","elements":["plugin-studio"],"composes":["bp-big-picture","people-groups-grid","doxa-research-map","doxa-simple-map","cities-internet-map","gospel-resources-map","my-upg-100-list-map","doxa-vision-card","all-people-groups","research-dashboard"],"profiles":[{"profile":"plugin-studio","file":"plugin-studio.vue","description":"The developer's viewing surface: a sidebar that is the composability ladder","element":"plugin-studio","type":"nested-mfe-spa","isMap":false,"iframeUrl":"./plugin-studio/plugin-studio/index.html","scriptUrl":"./plugin-studio/plugin-studio.js","embed":{"iframe":"\u003ciframe src=\"./plugin-studio/plugin-studio/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./plugin-studio/plugin-studio.js\" integrity=\"sha384-2RlLFRU2XdjBN7w+FPguj8INgj57JFg4IFT2AmdefGnR9QQLehbiiAffV45LcsFH\" crossorigin=\"anonymous\">\u003c/script>\n\u003cplugin-studio profile-config='{\"profile\":\"plugin-studio\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/plugin-studio>"},"instances":[{"id":"studio","title":"Plugin Studio — every element by capability 5 -> 1 (developer studio)","apiBaseUrl":"","props":{"profile":"plugin-studio","provider":"maplibre","instanceId":"plugin-studio","title":"Plugin Studio"},"element":"plugin-studio","iframeUrl":"./plugin-studio/plugin-studio/studio/index.html","embed":{"iframe":"\u003ciframe src=\"./plugin-studio/plugin-studio/studio/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"prayer-walk-planner","scriptUrl":"./prayer-walk-planner/prayer-walk-planner.js","output":"doxa-maps/prayer-walk-planner/prayer-walk-planner.js","integrity":"sha384-F0+r4avX8xkXp0hBpU5EBPU0InMRCObIn2Ieh9HJNn1r2amk8/qHmJ68WuNfsirC","elements":["prayer-walk-planner"],"profiles":[{"profile":"prayer-walk-planner","file":"prayer-walk-planner.vue","description":"A simple polygon-drawing tool for planning prayer-walking routes.","element":"prayer-walk-planner","type":"single","isMap":true,"iframeUrl":"./prayer-walk-planner/prayer-walk-planner/index.html","scriptUrl":"./prayer-walk-planner/prayer-walk-planner.js","embed":{"iframe":"\u003ciframe src=\"./prayer-walk-planner/prayer-walk-planner/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./prayer-walk-planner/prayer-walk-planner.js\" integrity=\"sha384-F0+r4avX8xkXp0hBpU5EBPU0InMRCObIn2Ieh9HJNn1r2amk8/qHmJ68WuNfsirC\" crossorigin=\"anonymous\">\u003c/script>\n\u003cprayer-walk-planner profile-config='{\"profile\":\"prayer-walk-planner\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/prayer-walk-planner>"}}]},{"bundle":"regions-dashboard","scriptUrl":"./regions-dashboard/regions-dashboard.js","output":"doxa-maps/regions-dashboard/regions-dashboard.js","integrity":"sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix","elements":["regions-dashboard"],"composes":["regions-dashboard/regions-list","regions-dashboard/region-dashboards"],"profiles":[{"profile":"region-dashboards","file":"region-dashboards.vue","description":"The dashboard half of the Driver's 2-tab Regions element: given a region (or a","element":"regions-dashboard","type":"single","isMap":true,"iframeUrl":"./regions-dashboard/region-dashboards/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/region-dashboards/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"region-dashboards\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}},{"profile":"regions-list","file":"regions-list.vue","description":"A refactor of DX-life's /regions index page (app/pages/regions/index.vue) into","element":"regions-dashboard","type":"single","isMap":true,"iframeUrl":"./regions-dashboard/regions-list/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/regions-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"regions-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}},{"profile":"regions-mfe","file":"regions-mfe.vue","description":"The composite the Driver asked for: ONE element carrying the SELECT VIEW switcher","element":"regions-dashboard","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./regions-dashboard/regions-mfe/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/regions-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"regions-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}}]},{"bundle":"research-dashboard","scriptUrl":"./research-dashboard/research-dashboard.js","output":"doxa-maps/research-dashboard/research-dashboard.js","integrity":"sha384-VvOYWBcDd7NtnB1eveECKX88ZHIpGnOf79tVdCUqGZzXLgoZPc+oTTPIC3ajaYsn","elements":["research-dashboard-map"],"profiles":[{"profile":"research-dashboard","file":"research-dashboard.vue","description":"Coordinated-Multiple-Views research dashboard for 10/40-window UPGs (live pray.doxa.life): docked facet rail + map-as-hero + linked table/charts, brushing-and-linking over one in-memory store.","element":"research-dashboard-map","type":"monolithic","isMap":true,"iframeUrl":"./research-dashboard/research-dashboard/index.html","scriptUrl":"./research-dashboard/research-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./research-dashboard/research-dashboard/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./research-dashboard/research-dashboard.js\" integrity=\"sha384-VvOYWBcDd7NtnB1eveECKX88ZHIpGnOf79tVdCUqGZzXLgoZPc+oTTPIC3ajaYsn\" crossorigin=\"anonymous\">\u003c/script>\n\u003cresearch-dashboard-map profile-config='{\"profile\":\"research-dashboard\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/research-dashboard-map>"},"bundle":"research-dashboard"}]},{"bundle":"research-map-plus-grid","scriptUrl":"./research-map-plus-grid/research-map-plus-grid.js","output":"doxa-maps/research-map-plus-grid/research-map-plus-grid.js","integrity":"sha384-sOkaMV0UFr2uNXfoJpRvaD+gHD6xFlkmpR7MzEwwFdarYdid8aN9Nj1Y8TqQJuFo","elements":["research-map-plus-grid"],"composes":["doxa-research-map","people-groups-grid"],"profiles":[{"profile":"research-map-plus-grid","file":"research-map-plus-grid.vue","description":"The monolithic 7-tab research map (cap-3) on top, the People Groups grid beneath,","element":"research-map-plus-grid","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./research-map-plus-grid/research-map-plus-grid/index.html","scriptUrl":"./research-map-plus-grid/research-map-plus-grid.js","embed":{"iframe":"\u003ciframe src=\"./research-map-plus-grid/research-map-plus-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./research-map-plus-grid/research-map-plus-grid.js\" integrity=\"sha384-sOkaMV0UFr2uNXfoJpRvaD+gHD6xFlkmpR7MzEwwFdarYdid8aN9Nj1Y8TqQJuFo\" crossorigin=\"anonymous\">\u003c/script>\n\u003cresearch-map-plus-grid profile-config='{\"profile\":\"research-map-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/research-map-plus-grid>"},"instances":[{"id":"default","title":"default","apiBaseUrl":"","props":{"profile":"research-map-plus-grid"},"element":"research-map-plus-grid","iframeUrl":"./research-map-plus-grid/research-map-plus-grid/default/index.html","embed":{"iframe":"\u003ciframe src=\"./research-map-plus-grid/research-map-plus-grid/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"stack-demo","scriptUrl":"./stack-demo/stack-demo.js","output":"doxa-maps/stack-demo/stack-demo.js","integrity":"sha384-gnwM6s+puf1K60Nl7crQcC2QC+9BxwpkaTx4OepLZ8VUCraZc+aRlWpsb6nj6Gyf","elements":["stack-demo"],"composes":["research-dashboard-map","people-groups-grid"],"profiles":[{"profile":"stack-demo","file":"stack-demo.vue","description":"Groups TWO independent elements TOP-TO-BOTTOM so you can embed the pair on a page and","element":"stack-demo","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./stack-demo/stack-demo/index.html","scriptUrl":"./stack-demo/stack-demo.js","embed":{"iframe":"\u003ciframe src=\"./stack-demo/stack-demo/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./stack-demo/stack-demo.js\" integrity=\"sha384-gnwM6s+puf1K60Nl7crQcC2QC+9BxwpkaTx4OepLZ8VUCraZc+aRlWpsb6nj6Gyf\" crossorigin=\"anonymous\">\u003c/script>\n\u003cstack-demo profile-config='{\"profile\":\"stack-demo\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/stack-demo>"},"instances":[{"id":"pair","title":"pair","apiBaseUrl":"","props":{"profile":"stack-demo"},"element":"stack-demo","iframeUrl":"./stack-demo/stack-demo/pair/index.html","embed":{"iframe":"\u003ciframe src=\"./stack-demo/stack-demo/pair/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"template-bundle","scriptUrl":"./template-bundle/template-bundle.js","output":"doxa-maps/template-bundle/template-bundle.js","integrity":"sha384-k+G5UlkZ99QmuecCCWUrjz998JBJnQT3hsDG0A+IVmiX9F3CNswmHXXzYhjnUTDX","elements":["template-bundle"],"profiles":[{"profile":"template-map-a","file":"template-map-a.vue","description":"Minimal example profile A — a colored placeholder, no Mapbox or data.","element":"template-bundle","type":"single","isMap":false,"iframeUrl":"./template-bundle/template-map-a/index.html","scriptUrl":"./template-bundle/template-bundle.js","embed":{"iframe":"\u003ciframe src=\"./template-bundle/template-map-a/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./template-bundle/template-bundle.js\" integrity=\"sha384-k+G5UlkZ99QmuecCCWUrjz998JBJnQT3hsDG0A+IVmiX9F3CNswmHXXzYhjnUTDX\" crossorigin=\"anonymous\">\u003c/script>\n\u003ctemplate-bundle profile-config='{\"profile\":\"template-map-a\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/template-bundle>"},"bundle":"template-bundle"},{"profile":"template-map-b","file":"template-map-b.vue","description":"Minimal example profile B — a second profile in the same bundle.","element":"template-bundle","type":"single","isMap":false,"iframeUrl":"./template-bundle/template-map-b/index.html","scriptUrl":"./template-bundle/template-bundle.js","embed":{"iframe":"\u003ciframe src=\"./template-bundle/template-map-b/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./template-bundle/template-bundle.js\" integrity=\"sha384-k+G5UlkZ99QmuecCCWUrjz998JBJnQT3hsDG0A+IVmiX9F3CNswmHXXzYhjnUTDX\" crossorigin=\"anonymous\">\u003c/script>\n\u003ctemplate-bundle profile-config='{\"profile\":\"template-map-b\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/template-bundle>"},"bundle":"template-bundle"}]},{"bundle":"upg-neighbor","scriptUrl":"./upg-neighbor/upg-neighbor.js","output":"doxa-maps/upg-neighbor/upg-neighbor.js","integrity":"sha384-JDJr4qoVZuiSi/rvgdzeuUNrzf7vjPdyh/g8dg7X8RHkZk/Y+tYXIQ3gpEzrU07q","elements":["upg-neighbor"],"profiles":[{"profile":"upg-neighbor","file":"upg-neighbor.vue","description":"Rescues the three pre-bundler experimental maps that live inside the legacy","element":"upg-neighbor","type":"parameterized","isMap":false,"iframeUrl":"./upg-neighbor/upg-neighbor/index.html","scriptUrl":"./upg-neighbor/upg-neighbor.js","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./upg-neighbor/upg-neighbor.js\" integrity=\"sha384-JDJr4qoVZuiSi/rvgdzeuUNrzf7vjPdyh/g8dg7X8RHkZk/Y+tYXIQ3gpEzrU07q\" crossorigin=\"anonymous\">\u003c/script>\n\u003cupg-neighbor profile-config='{\"profile\":\"upg-neighbor\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/upg-neighbor>"},"instances":[{"id":"send-map","title":"Send Map (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"send-map","legacyTitle":"Send Map"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/send-map/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/send-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"upg-neighbors","title":"UPG Neighbors (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"upg-neighbors","legacyTitle":"UPG Neighbors"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/upg-neighbors/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/upg-neighbors/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"lang-cluster","title":"Language Clusters (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"lang-cluster","legacyTitle":"Language Clusters"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/lang-cluster/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/lang-cluster/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"bloom-cockpit","title":"Bloom Cockpit (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"bloom-cockpit","legacyTitle":"Bloom Cockpit"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/bloom-cockpit/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/bloom-cockpit/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"flower-mesh","title":"Flower Mesh (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"flower-mesh","legacyTitle":"Flower Mesh"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/flower-mesh/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/flower-mesh/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]}]}; \n\n" + "script": "\n\n" }, "bundle": "all-people-groups" } @@ -35,7 +35,7 @@ "bundle": "big-picture", "scriptUrl": "./big-picture/big-picture.js", "output": "doxa-maps/big-picture/big-picture.js", - "integrity": "sha384-voYmtWeACTFBJOOeqcbf5cuBKSjyskA89cjvm5qcvrx9IUFTAhLuICyRXUM6fL+Y", + "integrity": "sha384-v0b+aZ7TBxmgUIBBLdKEm6HzwjY3jAGyOFNsKeKCKY4EIRpiWRTcNLavAitHRt8h", "elements": [ "bp-big-picture", "bp-research-header", @@ -57,7 +57,7 @@ "scriptUrl": "./big-picture/big-picture.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "instances": [ { @@ -101,7 +101,7 @@ "bundle": "cities-internet", "scriptUrl": "./cities-internet/cities-internet.js", "output": "doxa-maps/cities-internet/cities-internet.js", - "integrity": "sha384-lF6OGT0FH7sBXnALLiAoji8TADE05n7yqqoortZAifVdH6fNJ4yQeRRwjT8oXq+V", + "integrity": "sha384-tNig8gXdCocWVKD5iXR6iRqiAr7msWFtcFKzYif0L0G5i/RM+HI+SO8oR5c6O+5R", "elements": [ "cities-internet-map" ], @@ -117,7 +117,7 @@ "scriptUrl": "./cities-internet/cities-internet.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -131,7 +131,7 @@ "scriptUrl": "./cities-internet/cities-internet.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -145,7 +145,7 @@ "scriptUrl": "./cities-internet/cities-internet.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } } ] @@ -154,7 +154,7 @@ "bundle": "country-posters", "scriptUrl": "./country-posters/country-posters.js", "output": "doxa-maps/country-posters/country-posters.js", - "integrity": "sha384-KCb+2VIX0x0RZlPudE1oeY64Wp7UPNmJo8Zx7EkADp5+BYHfB2KsRlzS6ssYZMIF", + "integrity": "sha384-LksOyBNdOcEFKZgo24HIYOYo/V/rrVy5weXVxrnzkJU9drI09SrvK+/Zz7PlFxha", "elements": [ "country-posters-map" ], @@ -174,7 +174,7 @@ "scriptUrl": "./country-posters/country-posters.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -188,21 +188,21 @@ "scriptUrl": "./country-posters/country-posters.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { "profile": "country-posters-mfe", "file": "country-posters-mfe.vue", - "description": "Country Posters as ONE two-tab element — the countries map and the printable", - "element": "country-posters-mfe", + "description": "", + "element": "country-posters-map", "type": "nested-elements-mfe", "isMap": true, "iframeUrl": "./country-posters/country-posters-mfe/index.html", "scriptUrl": "./country-posters/country-posters.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } } ] @@ -211,7 +211,7 @@ "bundle": "dashboard-plus-grid", "scriptUrl": "./dashboard-plus-grid/dashboard-plus-grid.js", "output": "doxa-maps/dashboard-plus-grid/dashboard-plus-grid.js", - "integrity": "sha384-KWYs/unuewlt9PJ4CC/VlyoghFmN4KtHqsweo68lJwUNL1g3FJ8VctASOYWAt91q", + "integrity": "sha384-YbJgljynZ4t3/Ro44oHQy9ihl9/5o7j4IKts8MNRfA73Cb5cyD7U52DklXjzpLpG", "elements": [ "dashboard-plus-grid" ], @@ -231,7 +231,7 @@ "scriptUrl": "./dashboard-plus-grid/dashboard-plus-grid.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "instances": [ { @@ -255,7 +255,7 @@ "bundle": "demo-map", "scriptUrl": "./demo-map/demo-map.js", "output": "doxa-maps/demo-map/demo-map.js", - "integrity": "sha384-2ItGdUG5OW9uHN4ldNF6To6hvTy3XGdFnJrJenyyqShBjIi2NgcyXTyhYu2mttHH", + "integrity": "sha384-QiUJUgeFn27tiHKVhAYtJuIWo+1z5xsCUP1Nj4m1H4cFUV3vUA7ADTP58Ky3oVtQ", "elements": [ "demo-map" ], @@ -271,7 +271,7 @@ "scriptUrl": "./demo-map/demo-map.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "instances": [ { @@ -298,7 +298,7 @@ "bundle": "doxa-maps-spa", "scriptUrl": "./doxa-maps-spa/doxa-maps-spa.js", "output": "doxa-maps/doxa-maps-spa/doxa-maps-spa.js", - "integrity": "sha384-1f+/rBSGo/1jyUmRmGg34CIU/PcGkB7M3jah1DO0ocb5O0zj81wpUemXcz4WAFz8", + "integrity": "sha384-Ce+DKsLgwfej+rgoWeaWFuMMbR3Y4H+8io/lVL+lQfX0O3iGKwDLf4remDkHGCrP", "elements": [ "doxa-maps-spa" ], @@ -322,7 +322,7 @@ "scriptUrl": "./doxa-maps-spa/doxa-maps-spa.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "instances": [ { @@ -349,7 +349,7 @@ "bundle": "doxa-research-map", "scriptUrl": "./doxa-research-map/doxa-research-map.js", "output": "doxa-maps/doxa-research-map/doxa-research-map.js", - "integrity": "sha384-ycDpVdTjizEUxzsO+lQpTagpdLenXlLnvFQ/juKcWeazo2Qvo1B1QYpDxykzA9Zp", + "integrity": "sha384-oecoezttPmpRe5GNG/Yko6IkEbtLjCD7PD7qghU1ZigprnfLKhbf0eBEiEbE24iR", "elements": [ "doxa-research-map" ], @@ -365,7 +365,7 @@ "scriptUrl": "./doxa-research-map/doxa-research-map.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "instances": [ { @@ -391,7 +391,7 @@ "bundle": "doxa-simple-map", "scriptUrl": "./doxa-simple-map/doxa-simple-map.js", "output": "doxa-maps/doxa-simple-map/doxa-simple-map.js", - "integrity": "sha384-8drw8bByutNX9KwjTP4nrgMqtlu7xgrqxK6ebWLh8VTWAYC39TQ3d/8qwBxhPJMC", + "integrity": "sha384-hzEui48BqpW8VhRthz3daMgAdw4w4M3gtBre4ce4sXuAmS+39pMRW9reNAvpFb+W", "elements": [ "doxa-map", "doxa-simple-map" @@ -408,7 +408,7 @@ "scriptUrl": "./doxa-simple-map/doxa-simple-map.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "instances": [ { @@ -591,7 +591,7 @@ "bundle": "gospel-resources", "scriptUrl": "./gospel-resources/gospel-resources.js", "output": "doxa-maps/gospel-resources/gospel-resources.js", - "integrity": "sha384-XgF3DvRZEHIzZxcUqixiOsEk5bh6vIpwP7Drf9fBYy9F9cB7bp3NP2G2E56pPGt0", + "integrity": "sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI", "elements": [ "gospel-resources-map" ], @@ -607,7 +607,7 @@ "scriptUrl": "./gospel-resources/gospel-resources.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -621,7 +621,7 @@ "scriptUrl": "./gospel-resources/gospel-resources.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -635,7 +635,7 @@ "scriptUrl": "./gospel-resources/gospel-resources.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -649,7 +649,7 @@ "scriptUrl": "./gospel-resources/gospel-resources.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } } ] @@ -658,7 +658,7 @@ "bundle": "my-upg-100-list", "scriptUrl": "./my-upg-100-list/my-upg-100-list.js", "output": "doxa-maps/my-upg-100-list/my-upg-100-list.js", - "integrity": "sha384-9MM9Wm9yP7JwtlWBL0+xuJ2yHwHD/trEHYrsk0kEKgR4pXXdTNguIE50TqRCUbK2", + "integrity": "sha384-VYXU1i1xnVyXAsxLHy565gD+tQp090jzfT6YPRJAYAKAmYIIqr1KqUtQZnO/zv0A", "elements": [ "my-upg-100-list-map" ], @@ -678,7 +678,7 @@ "scriptUrl": "./my-upg-100-list/my-upg-100-list.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -692,7 +692,7 @@ "scriptUrl": "./my-upg-100-list/my-upg-100-list.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -706,7 +706,7 @@ "scriptUrl": "./my-upg-100-list/my-upg-100-list.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } } ] @@ -913,7 +913,7 @@ "bundle": "research-dashboard", "scriptUrl": "./research-dashboard/research-dashboard.js", "output": "doxa-maps/research-dashboard/research-dashboard.js", - "integrity": "sha384-60D2NR4qeGMpN3QBUP2aTS2Ay90/Qqka2PiJQR12HoyewjpUeJXWDV3qihflLQGX", + "integrity": "sha384-VvOYWBcDd7NtnB1eveECKX88ZHIpGnOf79tVdCUqGZzXLgoZPc+oTTPIC3ajaYsn", "elements": [ "research-dashboard-map" ], @@ -929,7 +929,7 @@ "scriptUrl": "./research-dashboard/research-dashboard.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "bundle": "research-dashboard" } @@ -1027,7 +1027,7 @@ "bundle": "template-bundle", "scriptUrl": "./template-bundle/template-bundle.js", "output": "doxa-maps/template-bundle/template-bundle.js", - "integrity": "sha384-6SGiWbRI14LXEIhcKTQ3rZPX2ZLKlxaBBZkrnWx4zNsgG5J0l2MxdeI8Fbf0O5R3", + "integrity": "sha384-k+G5UlkZ99QmuecCCWUrjz998JBJnQT3hsDG0A+IVmiX9F3CNswmHXXzYhjnUTDX", "elements": [ "template-bundle" ], @@ -1043,7 +1043,7 @@ "scriptUrl": "./template-bundle/template-bundle.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "bundle": "template-bundle" }, @@ -1058,7 +1058,7 @@ "scriptUrl": "./template-bundle/template-bundle.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "bundle": "template-bundle" } @@ -1076,7 +1076,7 @@ { "profile": "upg-neighbor", "file": "upg-neighbor.vue", - "description": "Rescues the five pre-bundler experimental maps that live inside the legacy", + "description": "Rescues the three pre-bundler experimental maps that live inside the legacy", "element": "upg-neighbor", "type": "parameterized", "isMap": false, diff --git a/public/doxa-maps/my-upg-100-list/my-upg-100-list.js b/public/doxa-maps/my-upg-100-list/my-upg-100-list.js index 91ca4cb3e..d82dc0085 100644 --- a/public/doxa-maps/my-upg-100-list/my-upg-100-list.js +++ b/public/doxa-maps/my-upg-100-list/my-upg-100-list.js @@ -1,46 +1,46 @@ -(function(){"use strict";var bp;var cn=typeof document<"u"?document.currentScript:null;const zx="modulepreload",Hx=function(e){return"/"+e},Vx={},to=function(t,o,n){let a=Promise.resolve();function r(s){const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=s,window.dispatchEvent(i),!i.defaultPrevented)throw s}return a.then(s=>{for(const i of s||[])i.status==="rejected"&&r(i.reason);return t().catch(r)})};/** +(function(){"use strict";var _p;var cn=typeof document<"u"?document.currentScript:null;const Vx="modulepreload",Wx=function(e){return"/"+e},Yx={},to=function(t,o,n){let a=Promise.resolve();function r(s){const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=s,window.dispatchEvent(i),!i.defaultPrevented)throw s}return a.then(s=>{for(const i of s||[])i.status==="rejected"&&r(i.reason);return t().catch(r)})};/** * @vue/shared v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/function Pr(e){const t=Object.create(null);for(const o of e.split(","))t[o]=1;return o=>o in t}const et={},un=[],oo=()=>{},Ei=()=>!1,va=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),ka=e=>e.startsWith("onUpdate:"),dt=Object.assign,Mr=(e,t)=>{const o=e.indexOf(t);o>-1&&e.splice(o,1)},wp=Object.prototype.hasOwnProperty,Ve=(e,t)=>wp.call(e,t),xe=Array.isArray,No=e=>Fn(e)==="[object Map]",Wo=e=>Fn(e)==="[object Set]",Ci=e=>Fn(e)==="[object Date]",$e=e=>typeof e=="function",tt=e=>typeof e=="string",Gt=e=>typeof e=="symbol",Ye=e=>e!==null&&typeof e=="object",Li=e=>(Ye(e)||$e(e))&&$e(e.then)&&$e(e.catch),Ti=Object.prototype.toString,Fn=e=>Ti.call(e),xp=e=>Fn(e).slice(8,-1),wa=e=>Fn(e)==="[object Object]",xa=e=>tt(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Dn=Pr(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Aa=e=>{const t=Object.create(null);return o=>t[o]||(t[o]=e(o))},Ap=/-\w/g,_t=Aa(e=>e.replace(Ap,t=>t.slice(1).toUpperCase())),Sp=/\B([A-Z])/g,jt=Aa(e=>e.replace(Sp,"-$1").toLowerCase()),Sa=Aa(e=>e.charAt(0).toUpperCase()+e.slice(1)),Nr=Aa(e=>e?`on${Sa(e)}`:""),no=(e,t)=>!Object.is(e,t),$a=(e,...t)=>{for(let o=0;o{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:n,value:o})},Ea=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Mi=e=>{const t=tt(e)?Number(e):NaN;return isNaN(t)?e:t};let Ni;const Ca=()=>Ni||(Ni=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function rt(e){if(xe(e)){const t={};for(let o=0;o{if(o){const n=o.split(Ep);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function Ne(e){let t="";if(tt(e))t=e;else if(xe(e))for(let o=0;oRo(o,t))}const Oi=e=>!!(e&&e.__v_isRef===!0),pe=e=>tt(e)?e:e==null?"":xe(e)||Ye(e)&&(e.toString===Ti||!$e(e.toString))?Oi(e)?pe(e.value):JSON.stringify(e,Fi,2):String(e),Fi=(e,t)=>Oi(t)?Fi(e,t.value):No(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((o,[n,a],r)=>(o[Rr(n,r)+" =>"]=a,o),{})}:Wo(t)?{[`Set(${t.size})`]:[...t.values()].map(o=>Rr(o))}:Gt(t)?Rr(t):Ye(t)&&!xe(t)&&!wa(t)?String(t):t,Rr=(e,t="")=>{var o;return Gt(e)?`Symbol(${(o=e.description)!=null?o:t})`:e};/** +**/function Nr(e){const t=Object.create(null);for(const o of e.split(","))t[o]=1;return o=>o in t}const et={},un=[],oo=()=>{},Li=()=>!1,ka=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),wa=e=>e.startsWith("onUpdate:"),dt=Object.assign,Rr=(e,t)=>{const o=e.indexOf(t);o>-1&&e.splice(o,1)},Ap=Object.prototype.hasOwnProperty,Ve=(e,t)=>Ap.call(e,t),xe=Array.isArray,No=e=>Fn(e)==="[object Map]",Wo=e=>Fn(e)==="[object Set]",Ti=e=>Fn(e)==="[object Date]",$e=e=>typeof e=="function",tt=e=>typeof e=="string",Gt=e=>typeof e=="symbol",Ye=e=>e!==null&&typeof e=="object",Pi=e=>(Ye(e)||$e(e))&&$e(e.then)&&$e(e.catch),Mi=Object.prototype.toString,Fn=e=>Mi.call(e),Sp=e=>Fn(e).slice(8,-1),xa=e=>Fn(e)==="[object Object]",Aa=e=>tt(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Dn=Nr(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Sa=e=>{const t=Object.create(null);return o=>t[o]||(t[o]=e(o))},$p=/-\w/g,_t=Sa(e=>e.replace($p,t=>t.slice(1).toUpperCase())),Ep=/\B([A-Z])/g,jt=Sa(e=>e.replace(Ep,"-$1").toLowerCase()),$a=Sa(e=>e.charAt(0).toUpperCase()+e.slice(1)),Ir=Sa(e=>e?`on${$a(e)}`:""),no=(e,t)=>!Object.is(e,t),Ea=(e,...t)=>{for(let o=0;o{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:n,value:o})},Ca=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Ri=e=>{const t=tt(e)?Number(e):NaN;return isNaN(t)?e:t};let Ii;const La=()=>Ii||(Ii=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function rt(e){if(xe(e)){const t={};for(let o=0;o{if(o){const n=o.split(Lp);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function Ne(e){let t="";if(tt(e))t=e;else if(xe(e))for(let o=0;oRo(o,t))}const Di=e=>!!(e&&e.__v_isRef===!0),pe=e=>tt(e)?e:e==null?"":xe(e)||Ye(e)&&(e.toString===Mi||!$e(e.toString))?Di(e)?pe(e.value):JSON.stringify(e,Bi,2):String(e),Bi=(e,t)=>Di(t)?Bi(e,t.value):No(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((o,[n,a],r)=>(o[Or(n,r)+" =>"]=a,o),{})}:Wo(t)?{[`Set(${t.size})`]:[...t.values()].map(o=>Or(o))}:Gt(t)?Or(t):Ye(t)&&!xe(t)&&!xa(t)?String(t):t,Or=(e,t="")=>{var o;return Gt(e)?`Symbol(${(o=e.description)!=null?o:t})`:e};/** * @vue/reactivity v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let ht;class Di{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!t&&ht&&(ht.active?(this.parent=ht,this.index=(ht.scopes||(ht.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,o;if(this.scopes){const n=this.scopes.slice();for(t=0,o=n.length;t0&&--this._on===0){if(ht===this)ht=this.prevScope;else{let t=ht;for(;t;){if(t.prevScope===this){t.prevScope=this.prevScope;break}t=t.prevScope}}this.prevScope=void 0}}stop(t){if(this._active){this._active=!1;let o,n;for(o=0,n=this.effects.length;o0)return;if(Gn){let t=Gn;for(Gn=void 0;t;){const o=t.next;t.next=void 0,t.flags&=-9,t=o}}let e;for(;Bn;){let t=Bn;for(Bn=void 0;t;){const o=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(n){e||(e=n)}t=o}}if(e)throw e}function Ki(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function zi(e){let t,o=e.depsTail,n=o;for(;n;){const a=n.prevDep;n.version===-1?(n===o&&(o=a),Gr(n),Rp(n)):t=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=a}e.deps=t,e.depsTail=o}function Br(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Hi(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Hi(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===jn)||(e.globalVersion=jn,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Br(e))))return;e.flags|=2;const t=e.dep,o=ot,n=Yt;ot=e,Yt=!0;try{Ki(e);const a=e.fn(e._value);(t.version===0||no(a,e._value))&&(e.flags|=128,e._value=a,t.version++)}catch(a){throw t.version++,a}finally{ot=o,Yt=n,zi(e),e.flags&=-3}}function Gr(e,t=!1){const{dep:o,prevSub:n,nextSub:a}=e;if(n&&(n.nextSub=a,e.prevSub=void 0),a&&(a.prevSub=n,e.nextSub=void 0),o.subs===e&&(o.subs=n,!n&&o.computed)){o.computed.flags&=-5;for(let r=o.computed.deps;r;r=r.nextDep)Gr(r,!0)}!t&&!--o.sc&&o.map&&o.map.delete(o.key)}function Rp(e){const{prevDep:t,nextDep:o}=e;t&&(t.nextDep=o,e.prevDep=void 0),o&&(o.prevDep=t,e.nextDep=void 0)}let Yt=!0;const Vi=[];function ao(){Vi.push(Yt),Yt=!1}function ro(){const e=Vi.pop();Yt=e===void 0?!0:e}function Wi(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const o=ot;ot=void 0;try{t()}finally{ot=o}}}let jn=0;class Ip{constructor(t,o){this.sub=t,this.dep=o,this.version=o.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class jr{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!ot||!Yt||ot===this.computed)return;let o=this.activeLink;if(o===void 0||o.sub!==ot)o=this.activeLink=new Ip(ot,this),ot.deps?(o.prevDep=ot.depsTail,ot.depsTail.nextDep=o,ot.depsTail=o):ot.deps=ot.depsTail=o,Yi(o);else if(o.version===-1&&(o.version=this.version,o.nextDep)){const n=o.nextDep;n.prevDep=o.prevDep,o.prevDep&&(o.prevDep.nextDep=n),o.prevDep=ot.depsTail,o.nextDep=void 0,ot.depsTail.nextDep=o,ot.depsTail=o,ot.deps===o&&(ot.deps=n)}return o}trigger(t){this.version++,jn++,this.notify(t)}notify(t){Fr();try{for(let o=this.subs;o;o=o.prevSub)o.sub.notify()&&o.sub.dep.notify()}finally{Dr()}}}function Yi(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let n=t.deps;n;n=n.nextDep)Yi(n)}const o=e.dep.subs;o!==e&&(e.prevSub=o,o&&(o.nextSub=e)),e.dep.subs=e}}const La=new WeakMap,Yo=Symbol(""),Ur=Symbol(""),Un=Symbol("");function Pt(e,t,o){if(Yt&&ot){let n=La.get(e);n||La.set(e,n=new Map);let a=n.get(o);a||(n.set(o,a=new jr),a.map=n,a.key=o),a.track()}}function yo(e,t,o,n,a,r){const s=La.get(e);if(!s){jn++;return}const i=l=>{l&&l.trigger()};if(Fr(),t==="clear")s.forEach(i);else{const l=xe(e),u=l&&xa(o);if(l&&o==="length"){const c=Number(n);s.forEach((p,g)=>{(g==="length"||g===Un||!Gt(g)&&g>=c)&&i(p)})}else switch((o!==void 0||s.has(void 0))&&i(s.get(o)),u&&i(s.get(Un)),t){case"add":l?u&&i(s.get("length")):(i(s.get(Yo)),No(e)&&i(s.get(Ur)));break;case"delete":l||(i(s.get(Yo)),No(e)&&i(s.get(Ur)));break;case"set":No(e)&&i(s.get(Yo));break}}Dr()}function Op(e,t){const o=La.get(e);return o&&o.get(t)}function dn(e){const t=Be(e);return t===e?t:(Pt(t,"iterate",Un),Ut(e)?t:t.map(qt))}function Ta(e){return Pt(e=Be(e),"iterate",Un),e}function so(e,t){return ko(e)?gn(vo(e)?qt(t):t):qt(t)}const Fp={__proto__:null,[Symbol.iterator](){return Kr(this,Symbol.iterator,e=>so(this,e))},concat(...e){return dn(this).concat(...e.map(t=>xe(t)?dn(t):t))},entries(){return Kr(this,"entries",e=>(e[1]=so(this,e[1]),e))},every(e,t){return _o(this,"every",e,t,void 0,arguments)},filter(e,t){return _o(this,"filter",e,t,o=>o.map(n=>so(this,n)),arguments)},find(e,t){return _o(this,"find",e,t,o=>so(this,o),arguments)},findIndex(e,t){return _o(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return _o(this,"findLast",e,t,o=>so(this,o),arguments)},findLastIndex(e,t){return _o(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return _o(this,"forEach",e,t,void 0,arguments)},includes(...e){return zr(this,"includes",e)},indexOf(...e){return zr(this,"indexOf",e)},join(e){return dn(this).join(e)},lastIndexOf(...e){return zr(this,"lastIndexOf",e)},map(e,t){return _o(this,"map",e,t,void 0,arguments)},pop(){return Kn(this,"pop")},push(...e){return Kn(this,"push",e)},reduce(e,...t){return qi(this,"reduce",e,t)},reduceRight(e,...t){return qi(this,"reduceRight",e,t)},shift(){return Kn(this,"shift")},some(e,t){return _o(this,"some",e,t,void 0,arguments)},splice(...e){return Kn(this,"splice",e)},toReversed(){return dn(this).toReversed()},toSorted(e){return dn(this).toSorted(e)},toSpliced(...e){return dn(this).toSpliced(...e)},unshift(...e){return Kn(this,"unshift",e)},values(){return Kr(this,"values",e=>so(this,e))}};function Kr(e,t,o){const n=Ta(e),a=n[t]();return n!==e&&!Ut(e)&&(a._next=a.next,a.next=()=>{const r=a._next();return r.done||(r.value=o(r.value)),r}),a}const Dp=Array.prototype;function _o(e,t,o,n,a,r){const s=Ta(e),i=s!==e&&!Ut(e),l=s[t];if(l!==Dp[t]){const p=l.apply(e,r);return i?qt(p):p}let u=o;s!==e&&(i?u=function(p,g){return o.call(this,so(e,p),g,e)}:o.length>2&&(u=function(p,g){return o.call(this,p,g,e)}));const c=l.call(s,u,n);return i&&a?a(c):c}function qi(e,t,o,n){const a=Ta(e),r=a!==e&&!Ut(e);let s=o,i=!1;a!==e&&(r?(i=n.length===0,s=function(u,c,p){return i&&(i=!1,u=so(e,u)),o.call(this,u,so(e,c),p,e)}):o.length>3&&(s=function(u,c,p){return o.call(this,u,c,p,e)}));const l=a[t](s,...n);return i?so(e,l):l}function zr(e,t,o){const n=Be(e);Pt(n,"iterate",Un);const a=n[t](...o);return(a===-1||a===!1)&&Ia(o[0])?(o[0]=Be(o[0]),n[t](...o)):a}function Kn(e,t,o=[]){ao(),Fr();const n=Be(e)[t].apply(e,o);return Dr(),ro(),n}const Bp=Pr("__proto__,__v_isRef,__isVue"),Ji=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Gt));function Gp(e){Gt(e)||(e=String(e));const t=Be(this);return Pt(t,"has",e),t.hasOwnProperty(e)}class Xi{constructor(t=!1,o=!1){this._isReadonly=t,this._isShallow=o}get(t,o,n){if(o==="__v_skip")return t.__v_skip;const a=this._isReadonly,r=this._isShallow;if(o==="__v_isReactive")return!a;if(o==="__v_isReadonly")return a;if(o==="__v_isShallow")return r;if(o==="__v_raw")return n===(a?r?nl:ol:r?tl:el).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(n)?t:void 0;const s=xe(t);if(!a){let l;if(s&&(l=Fp[o]))return l;if(o==="hasOwnProperty")return Gp}const i=Reflect.get(t,o,st(t)?t:n);if((Gt(o)?Ji.has(o):Bp(o))||(a||Pt(t,"get",o),r))return i;if(st(i)){const l=s&&xa(o)?i:i.value;return a&&Ye(l)?Vr(l):l}return Ye(i)?a?Vr(i):pn(i):i}}class Zi extends Xi{constructor(t=!1){super(!1,t)}set(t,o,n,a){let r=t[o];const s=xe(t)&&xa(o);if(!this._isShallow){const u=ko(r);if(!Ut(n)&&!ko(n)&&(r=Be(r),n=Be(n)),!s&&st(r)&&!st(n))return u||(r.value=n),!0}const i=s?Number(o)e,Pa=e=>Reflect.getPrototypeOf(e);function Hp(e,t,o){return function(...n){const a=this.__v_raw,r=Be(a),s=No(r),i=e==="entries"||e===Symbol.iterator&&s,l=e==="keys"&&s,u=a[e](...n),c=o?Hr:t?gn:qt;return!t&&Pt(r,"iterate",l?Ur:Yo),dt(Object.create(u),{next(){const{value:p,done:g}=u.next();return g?{value:p,done:g}:{value:i?[c(p[0]),c(p[1])]:c(p),done:g}}})}}function Ma(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Vp(e,t){const o={get(a){const r=this.__v_raw,s=Be(r),i=Be(a);e||(no(a,i)&&Pt(s,"get",a),Pt(s,"get",i));const{has:l}=Pa(s),u=t?Hr:e?gn:qt;if(l.call(s,a))return u(r.get(a));if(l.call(s,i))return u(r.get(i));r!==s&&r.get(a)},get size(){const a=this.__v_raw;return!e&&Pt(Be(a),"iterate",Yo),a.size},has(a){const r=this.__v_raw,s=Be(r),i=Be(a);return e||(no(a,i)&&Pt(s,"has",a),Pt(s,"has",i)),a===i?r.has(a):r.has(a)||r.has(i)},forEach(a,r){const s=this,i=s.__v_raw,l=Be(i),u=t?Hr:e?gn:qt;return!e&&Pt(l,"iterate",Yo),i.forEach((c,p)=>a.call(r,u(c),u(p),s))}};return dt(o,e?{add:Ma("add"),set:Ma("set"),delete:Ma("delete"),clear:Ma("clear")}:{add(a){const r=Be(this),s=Pa(r),i=Be(a),l=!t&&!Ut(a)&&!ko(a)?i:a;return s.has.call(r,l)||no(a,l)&&s.has.call(r,a)||no(i,l)&&s.has.call(r,i)||(r.add(l),yo(r,"add",l,l)),this},set(a,r){!t&&!Ut(r)&&!ko(r)&&(r=Be(r));const s=Be(this),{has:i,get:l}=Pa(s);let u=i.call(s,a);u||(a=Be(a),u=i.call(s,a));const c=l.call(s,a);return s.set(a,r),u?no(r,c)&&yo(s,"set",a,r):yo(s,"add",a,r),this},delete(a){const r=Be(this),{has:s,get:i}=Pa(r);let l=s.call(r,a);l||(a=Be(a),l=s.call(r,a)),i&&i.call(r,a);const u=r.delete(a);return l&&yo(r,"delete",a,void 0),u},clear(){const a=Be(this),r=a.size!==0,s=a.clear();return r&&yo(a,"clear",void 0,void 0),s}}),["keys","values","entries",Symbol.iterator].forEach(a=>{o[a]=Hp(a,e,t)}),o}function Na(e,t){const o=Vp(e,t);return(n,a,r)=>a==="__v_isReactive"?!e:a==="__v_isReadonly"?e:a==="__v_raw"?n:Reflect.get(Ve(o,a)&&a in n?o:n,a,r)}const Wp={get:Na(!1,!1)},Yp={get:Na(!1,!0)},qp={get:Na(!0,!1)},Jp={get:Na(!0,!0)},el=new WeakMap,tl=new WeakMap,ol=new WeakMap,nl=new WeakMap;function Xp(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function pn(e){return ko(e)?e:Ra(e,!1,jp,Wp,el)}function Zp(e){return Ra(e,!1,Kp,Yp,tl)}function Vr(e){return Ra(e,!0,Up,qp,ol)}function Yx(e){return Ra(e,!0,zp,Jp,nl)}function Ra(e,t,o,n,a){if(!Ye(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const r=a.get(e);if(r)return r;const s=Xp(xp(e));if(s===0)return e;const i=new Proxy(e,s===2?n:o);return a.set(e,i),i}function vo(e){return ko(e)?vo(e.__v_raw):!!(e&&e.__v_isReactive)}function ko(e){return!!(e&&e.__v_isReadonly)}function Ut(e){return!!(e&&e.__v_isShallow)}function Ia(e){return e?!!e.__v_raw:!1}function Be(e){const t=e&&e.__v_raw;return t?Be(t):e}function qo(e){return!Ve(e,"__v_skip")&&Object.isExtensible(e)&&Pi(e,"__v_skip",!0),e}const qt=e=>Ye(e)?pn(e):e,gn=e=>Ye(e)?Vr(e):e;function st(e){return e?e.__v_isRef===!0:!1}function de(e){return al(e,!1)}function fn(e){return al(e,!0)}function al(e,t){return st(e)?e:new Qp(e,t)}class Qp{constructor(t,o){this.dep=new jr,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=o?t:Be(t),this._value=o?t:qt(t),this.__v_isShallow=o}get value(){return this.dep.track(),this._value}set value(t){const o=this._rawValue,n=this.__v_isShallow||Ut(t)||ko(t);t=n?t:Be(t),no(t,o)&&(this._rawValue=t,this._value=n?t:qt(t),this.dep.trigger())}}function _e(e){return st(e)?e.value:e}const eg={get:(e,t,o)=>t==="__v_raw"?e:_e(Reflect.get(e,t,o)),set:(e,t,o,n)=>{const a=e[t];return st(a)&&!st(o)?(a.value=o,!0):Reflect.set(e,t,o,n)}};function rl(e){return vo(e)?e:new Proxy(e,eg)}function tg(e){const t=xe(e)?new Array(e.length):{};for(const o in e)t[o]=sl(e,o);return t}class og{constructor(t,o,n){this._object=t,this._defaultValue=n,this.__v_isRef=!0,this._value=void 0,this._key=Gt(o)?o:String(o),this._raw=Be(t);let a=!0,r=t;if(!xe(t)||Gt(this._key)||!xa(this._key))do a=!Ia(r)||Ut(r);while(a&&(r=r.__v_raw));this._shallow=a}get value(){let t=this._object[this._key];return this._shallow&&(t=_e(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&st(this._raw[this._key])){const o=this._object[this._key];if(st(o)){o.value=t;return}}this._object[this._key]=t}get dep(){return Op(this._raw,this._key)}}class ng{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function ag(e,t,o){return st(e)?e:$e(e)?new ng(e):Ye(e)&&arguments.length>1?sl(e,t,o):de(e)}function sl(e,t,o){return new og(e,t,o)}class rg{constructor(t,o,n){this.fn=t,this.setter=o,this._value=void 0,this.dep=new jr(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=jn-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!o,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&ot!==this)return Ui(this,!0),!0}get value(){const t=this.dep.track();return Hi(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function sg(e,t,o=!1){let n,a;return $e(e)?n=e:(n=e.get,a=e.set),new rg(n,a,o)}const Oa={},Fa=new WeakMap;let Jo;function ig(e,t=!1,o=Jo){if(o){let n=Fa.get(o);n||Fa.set(o,n=[]),n.push(e)}}function lg(e,t,o=et){const{immediate:n,deep:a,once:r,scheduler:s,augmentJob:i,call:l}=o,u=v=>a?v:Ut(v)||a===!1||a===0?wo(v,1):wo(v);let c,p,g,k,w=!1,_=!1;if(st(e)?(p=()=>e.value,w=Ut(e)):vo(e)?(p=()=>u(e),w=!0):xe(e)?(_=!0,w=e.some(v=>vo(v)||Ut(v)),p=()=>e.map(v=>{if(st(v))return v.value;if(vo(v))return u(v);if($e(v))return l?l(v,2):v()})):$e(e)?t?p=l?()=>l(e,2):e:p=()=>{if(g){ao();try{g()}finally{ro()}}const v=Jo;Jo=c;try{return l?l(e,3,[k]):e(k)}finally{Jo=v}}:p=oo,t&&a){const v=p,x=a===!0?1/0:a;p=()=>wo(v(),x)}const d=Bi(),h=()=>{c.stop(),d&&d.active&&Mr(d.effects,c)};if(r&&t){const v=t;t=(...x)=>{const A=v(...x);return h(),A}}let f=_?new Array(e.length).fill(Oa):Oa;const m=v=>{if(!(!(c.flags&1)||!c.dirty&&!v))if(t){const x=c.run();if(v||a||w||(_?x.some((A,S)=>no(A,f[S])):no(x,f))){g&&g();const A=Jo;Jo=c;try{const S=[x,f===Oa?void 0:_&&f[0]===Oa?[]:f,k];f=x,l?l(t,3,S):t(...S)}finally{Jo=A}}}else c.run()};return i&&i(m),c=new Gi(p),c.scheduler=s?()=>s(m,!1):m,k=v=>ig(v,!1,c),g=c.onStop=()=>{const v=Fa.get(c);if(v){if(l)l(v,4);else for(const x of v)x();Fa.delete(c)}},t?n?m(!0):f=c.run():s?s(m.bind(null,!0),!0):c.run(),h.pause=c.pause.bind(c),h.resume=c.resume.bind(c),h.stop=h,h}function wo(e,t=1/0,o){if(t<=0||!Ye(e)||e.__v_skip||(o=o||new Map,(o.get(e)||0)>=t))return e;if(o.set(e,t),t--,st(e))wo(e.value,t,o);else if(xe(e))for(let n=0;n{wo(n,t,o)});else if(wa(e)){for(const n in e)wo(e[n],t,o);for(const n of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,n)&&wo(e[n],t,o)}return e}/** +**/let ht;class Gi{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!t&&ht&&(ht.active?(this.parent=ht,this.index=(ht.scopes||(ht.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,o;if(this.scopes){const n=this.scopes.slice();for(t=0,o=n.length;t0&&--this._on===0){if(ht===this)ht=this.prevScope;else{let t=ht;for(;t;){if(t.prevScope===this){t.prevScope=this.prevScope;break}t=t.prevScope}}this.prevScope=void 0}}stop(t){if(this._active){this._active=!1;let o,n;for(o=0,n=this.effects.length;o0)return;if(Gn){let t=Gn;for(Gn=void 0;t;){const o=t.next;t.next=void 0,t.flags&=-9,t=o}}let e;for(;Bn;){let t=Bn;for(Bn=void 0;t;){const o=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(n){e||(e=n)}t=o}}if(e)throw e}function Hi(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Vi(e){let t,o=e.depsTail,n=o;for(;n;){const a=n.prevDep;n.version===-1?(n===o&&(o=a),Ur(n),Op(n)):t=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=a}e.deps=t,e.depsTail=o}function jr(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Wi(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Wi(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===jn)||(e.globalVersion=jn,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!jr(e))))return;e.flags|=2;const t=e.dep,o=ot,n=Yt;ot=e,Yt=!0;try{Hi(e);const a=e.fn(e._value);(t.version===0||no(a,e._value))&&(e.flags|=128,e._value=a,t.version++)}catch(a){throw t.version++,a}finally{ot=o,Yt=n,Vi(e),e.flags&=-3}}function Ur(e,t=!1){const{dep:o,prevSub:n,nextSub:a}=e;if(n&&(n.nextSub=a,e.prevSub=void 0),a&&(a.prevSub=n,e.nextSub=void 0),o.subs===e&&(o.subs=n,!n&&o.computed)){o.computed.flags&=-5;for(let r=o.computed.deps;r;r=r.nextDep)Ur(r,!0)}!t&&!--o.sc&&o.map&&o.map.delete(o.key)}function Op(e){const{prevDep:t,nextDep:o}=e;t&&(t.nextDep=o,e.prevDep=void 0),o&&(o.prevDep=t,e.nextDep=void 0)}let Yt=!0;const Yi=[];function ao(){Yi.push(Yt),Yt=!1}function ro(){const e=Yi.pop();Yt=e===void 0?!0:e}function qi(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const o=ot;ot=void 0;try{t()}finally{ot=o}}}let jn=0;class Fp{constructor(t,o){this.sub=t,this.dep=o,this.version=o.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class Kr{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!ot||!Yt||ot===this.computed)return;let o=this.activeLink;if(o===void 0||o.sub!==ot)o=this.activeLink=new Fp(ot,this),ot.deps?(o.prevDep=ot.depsTail,ot.depsTail.nextDep=o,ot.depsTail=o):ot.deps=ot.depsTail=o,Ji(o);else if(o.version===-1&&(o.version=this.version,o.nextDep)){const n=o.nextDep;n.prevDep=o.prevDep,o.prevDep&&(o.prevDep.nextDep=n),o.prevDep=ot.depsTail,o.nextDep=void 0,ot.depsTail.nextDep=o,ot.depsTail=o,ot.deps===o&&(ot.deps=n)}return o}trigger(t){this.version++,jn++,this.notify(t)}notify(t){Br();try{for(let o=this.subs;o;o=o.prevSub)o.sub.notify()&&o.sub.dep.notify()}finally{Gr()}}}function Ji(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let n=t.deps;n;n=n.nextDep)Ji(n)}const o=e.dep.subs;o!==e&&(e.prevSub=o,o&&(o.nextSub=e)),e.dep.subs=e}}const Ta=new WeakMap,Yo=Symbol(""),zr=Symbol(""),Un=Symbol("");function Pt(e,t,o){if(Yt&&ot){let n=Ta.get(e);n||Ta.set(e,n=new Map);let a=n.get(o);a||(n.set(o,a=new Kr),a.map=n,a.key=o),a.track()}}function yo(e,t,o,n,a,r){const s=Ta.get(e);if(!s){jn++;return}const i=l=>{l&&l.trigger()};if(Br(),t==="clear")s.forEach(i);else{const l=xe(e),u=l&&Aa(o);if(l&&o==="length"){const c=Number(n);s.forEach((p,g)=>{(g==="length"||g===Un||!Gt(g)&&g>=c)&&i(p)})}else switch((o!==void 0||s.has(void 0))&&i(s.get(o)),u&&i(s.get(Un)),t){case"add":l?u&&i(s.get("length")):(i(s.get(Yo)),No(e)&&i(s.get(zr)));break;case"delete":l||(i(s.get(Yo)),No(e)&&i(s.get(zr)));break;case"set":No(e)&&i(s.get(Yo));break}}Gr()}function Dp(e,t){const o=Ta.get(e);return o&&o.get(t)}function dn(e){const t=Be(e);return t===e?t:(Pt(t,"iterate",Un),Ut(e)?t:t.map(qt))}function Pa(e){return Pt(e=Be(e),"iterate",Un),e}function so(e,t){return ko(e)?gn(vo(e)?qt(t):t):qt(t)}const Bp={__proto__:null,[Symbol.iterator](){return Hr(this,Symbol.iterator,e=>so(this,e))},concat(...e){return dn(this).concat(...e.map(t=>xe(t)?dn(t):t))},entries(){return Hr(this,"entries",e=>(e[1]=so(this,e[1]),e))},every(e,t){return _o(this,"every",e,t,void 0,arguments)},filter(e,t){return _o(this,"filter",e,t,o=>o.map(n=>so(this,n)),arguments)},find(e,t){return _o(this,"find",e,t,o=>so(this,o),arguments)},findIndex(e,t){return _o(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return _o(this,"findLast",e,t,o=>so(this,o),arguments)},findLastIndex(e,t){return _o(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return _o(this,"forEach",e,t,void 0,arguments)},includes(...e){return Vr(this,"includes",e)},indexOf(...e){return Vr(this,"indexOf",e)},join(e){return dn(this).join(e)},lastIndexOf(...e){return Vr(this,"lastIndexOf",e)},map(e,t){return _o(this,"map",e,t,void 0,arguments)},pop(){return Kn(this,"pop")},push(...e){return Kn(this,"push",e)},reduce(e,...t){return Xi(this,"reduce",e,t)},reduceRight(e,...t){return Xi(this,"reduceRight",e,t)},shift(){return Kn(this,"shift")},some(e,t){return _o(this,"some",e,t,void 0,arguments)},splice(...e){return Kn(this,"splice",e)},toReversed(){return dn(this).toReversed()},toSorted(e){return dn(this).toSorted(e)},toSpliced(...e){return dn(this).toSpliced(...e)},unshift(...e){return Kn(this,"unshift",e)},values(){return Hr(this,"values",e=>so(this,e))}};function Hr(e,t,o){const n=Pa(e),a=n[t]();return n!==e&&!Ut(e)&&(a._next=a.next,a.next=()=>{const r=a._next();return r.done||(r.value=o(r.value)),r}),a}const Gp=Array.prototype;function _o(e,t,o,n,a,r){const s=Pa(e),i=s!==e&&!Ut(e),l=s[t];if(l!==Gp[t]){const p=l.apply(e,r);return i?qt(p):p}let u=o;s!==e&&(i?u=function(p,g){return o.call(this,so(e,p),g,e)}:o.length>2&&(u=function(p,g){return o.call(this,p,g,e)}));const c=l.call(s,u,n);return i&&a?a(c):c}function Xi(e,t,o,n){const a=Pa(e),r=a!==e&&!Ut(e);let s=o,i=!1;a!==e&&(r?(i=n.length===0,s=function(u,c,p){return i&&(i=!1,u=so(e,u)),o.call(this,u,so(e,c),p,e)}):o.length>3&&(s=function(u,c,p){return o.call(this,u,c,p,e)}));const l=a[t](s,...n);return i?so(e,l):l}function Vr(e,t,o){const n=Be(e);Pt(n,"iterate",Un);const a=n[t](...o);return(a===-1||a===!1)&&Oa(o[0])?(o[0]=Be(o[0]),n[t](...o)):a}function Kn(e,t,o=[]){ao(),Br();const n=Be(e)[t].apply(e,o);return Gr(),ro(),n}const jp=Nr("__proto__,__v_isRef,__isVue"),Zi=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Gt));function Up(e){Gt(e)||(e=String(e));const t=Be(this);return Pt(t,"has",e),t.hasOwnProperty(e)}class Qi{constructor(t=!1,o=!1){this._isReadonly=t,this._isShallow=o}get(t,o,n){if(o==="__v_skip")return t.__v_skip;const a=this._isReadonly,r=this._isShallow;if(o==="__v_isReactive")return!a;if(o==="__v_isReadonly")return a;if(o==="__v_isShallow")return r;if(o==="__v_raw")return n===(a?r?rl:al:r?nl:ol).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(n)?t:void 0;const s=xe(t);if(!a){let l;if(s&&(l=Bp[o]))return l;if(o==="hasOwnProperty")return Up}const i=Reflect.get(t,o,st(t)?t:n);if((Gt(o)?Zi.has(o):jp(o))||(a||Pt(t,"get",o),r))return i;if(st(i)){const l=s&&Aa(o)?i:i.value;return a&&Ye(l)?Yr(l):l}return Ye(i)?a?Yr(i):pn(i):i}}class el extends Qi{constructor(t=!1){super(!1,t)}set(t,o,n,a){let r=t[o];const s=xe(t)&&Aa(o);if(!this._isShallow){const u=ko(r);if(!Ut(n)&&!ko(n)&&(r=Be(r),n=Be(n)),!s&&st(r)&&!st(n))return u||(r.value=n),!0}const i=s?Number(o)e,Ma=e=>Reflect.getPrototypeOf(e);function Wp(e,t,o){return function(...n){const a=this.__v_raw,r=Be(a),s=No(r),i=e==="entries"||e===Symbol.iterator&&s,l=e==="keys"&&s,u=a[e](...n),c=o?Wr:t?gn:qt;return!t&&Pt(r,"iterate",l?zr:Yo),dt(Object.create(u),{next(){const{value:p,done:g}=u.next();return g?{value:p,done:g}:{value:i?[c(p[0]),c(p[1])]:c(p),done:g}}})}}function Na(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Yp(e,t){const o={get(a){const r=this.__v_raw,s=Be(r),i=Be(a);e||(no(a,i)&&Pt(s,"get",a),Pt(s,"get",i));const{has:l}=Ma(s),u=t?Wr:e?gn:qt;if(l.call(s,a))return u(r.get(a));if(l.call(s,i))return u(r.get(i));r!==s&&r.get(a)},get size(){const a=this.__v_raw;return!e&&Pt(Be(a),"iterate",Yo),a.size},has(a){const r=this.__v_raw,s=Be(r),i=Be(a);return e||(no(a,i)&&Pt(s,"has",a),Pt(s,"has",i)),a===i?r.has(a):r.has(a)||r.has(i)},forEach(a,r){const s=this,i=s.__v_raw,l=Be(i),u=t?Wr:e?gn:qt;return!e&&Pt(l,"iterate",Yo),i.forEach((c,p)=>a.call(r,u(c),u(p),s))}};return dt(o,e?{add:Na("add"),set:Na("set"),delete:Na("delete"),clear:Na("clear")}:{add(a){const r=Be(this),s=Ma(r),i=Be(a),l=!t&&!Ut(a)&&!ko(a)?i:a;return s.has.call(r,l)||no(a,l)&&s.has.call(r,a)||no(i,l)&&s.has.call(r,i)||(r.add(l),yo(r,"add",l,l)),this},set(a,r){!t&&!Ut(r)&&!ko(r)&&(r=Be(r));const s=Be(this),{has:i,get:l}=Ma(s);let u=i.call(s,a);u||(a=Be(a),u=i.call(s,a));const c=l.call(s,a);return s.set(a,r),u?no(r,c)&&yo(s,"set",a,r):yo(s,"add",a,r),this},delete(a){const r=Be(this),{has:s,get:i}=Ma(r);let l=s.call(r,a);l||(a=Be(a),l=s.call(r,a)),i&&i.call(r,a);const u=r.delete(a);return l&&yo(r,"delete",a,void 0),u},clear(){const a=Be(this),r=a.size!==0,s=a.clear();return r&&yo(a,"clear",void 0,void 0),s}}),["keys","values","entries",Symbol.iterator].forEach(a=>{o[a]=Wp(a,e,t)}),o}function Ra(e,t){const o=Yp(e,t);return(n,a,r)=>a==="__v_isReactive"?!e:a==="__v_isReadonly"?e:a==="__v_raw"?n:Reflect.get(Ve(o,a)&&a in n?o:n,a,r)}const qp={get:Ra(!1,!1)},Jp={get:Ra(!1,!0)},Xp={get:Ra(!0,!1)},Zp={get:Ra(!0,!0)},ol=new WeakMap,nl=new WeakMap,al=new WeakMap,rl=new WeakMap;function Qp(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function pn(e){return ko(e)?e:Ia(e,!1,Kp,qp,ol)}function eg(e){return Ia(e,!1,Hp,Jp,nl)}function Yr(e){return Ia(e,!0,zp,Xp,al)}function Jx(e){return Ia(e,!0,Vp,Zp,rl)}function Ia(e,t,o,n,a){if(!Ye(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const r=a.get(e);if(r)return r;const s=Qp(Sp(e));if(s===0)return e;const i=new Proxy(e,s===2?n:o);return a.set(e,i),i}function vo(e){return ko(e)?vo(e.__v_raw):!!(e&&e.__v_isReactive)}function ko(e){return!!(e&&e.__v_isReadonly)}function Ut(e){return!!(e&&e.__v_isShallow)}function Oa(e){return e?!!e.__v_raw:!1}function Be(e){const t=e&&e.__v_raw;return t?Be(t):e}function qo(e){return!Ve(e,"__v_skip")&&Object.isExtensible(e)&&Ni(e,"__v_skip",!0),e}const qt=e=>Ye(e)?pn(e):e,gn=e=>Ye(e)?Yr(e):e;function st(e){return e?e.__v_isRef===!0:!1}function de(e){return sl(e,!1)}function fn(e){return sl(e,!0)}function sl(e,t){return st(e)?e:new tg(e,t)}class tg{constructor(t,o){this.dep=new Kr,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=o?t:Be(t),this._value=o?t:qt(t),this.__v_isShallow=o}get value(){return this.dep.track(),this._value}set value(t){const o=this._rawValue,n=this.__v_isShallow||Ut(t)||ko(t);t=n?t:Be(t),no(t,o)&&(this._rawValue=t,this._value=n?t:qt(t),this.dep.trigger())}}function _e(e){return st(e)?e.value:e}const og={get:(e,t,o)=>t==="__v_raw"?e:_e(Reflect.get(e,t,o)),set:(e,t,o,n)=>{const a=e[t];return st(a)&&!st(o)?(a.value=o,!0):Reflect.set(e,t,o,n)}};function il(e){return vo(e)?e:new Proxy(e,og)}function ng(e){const t=xe(e)?new Array(e.length):{};for(const o in e)t[o]=ll(e,o);return t}class ag{constructor(t,o,n){this._object=t,this._defaultValue=n,this.__v_isRef=!0,this._value=void 0,this._key=Gt(o)?o:String(o),this._raw=Be(t);let a=!0,r=t;if(!xe(t)||Gt(this._key)||!Aa(this._key))do a=!Oa(r)||Ut(r);while(a&&(r=r.__v_raw));this._shallow=a}get value(){let t=this._object[this._key];return this._shallow&&(t=_e(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&st(this._raw[this._key])){const o=this._object[this._key];if(st(o)){o.value=t;return}}this._object[this._key]=t}get dep(){return Dp(this._raw,this._key)}}class rg{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function sg(e,t,o){return st(e)?e:$e(e)?new rg(e):Ye(e)&&arguments.length>1?ll(e,t,o):de(e)}function ll(e,t,o){return new ag(e,t,o)}class ig{constructor(t,o,n){this.fn=t,this.setter=o,this._value=void 0,this.dep=new Kr(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=jn-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!o,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&ot!==this)return zi(this,!0),!0}get value(){const t=this.dep.track();return Wi(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function lg(e,t,o=!1){let n,a;return $e(e)?n=e:(n=e.get,a=e.set),new ig(n,a,o)}const Fa={},Da=new WeakMap;let Jo;function cg(e,t=!1,o=Jo){if(o){let n=Da.get(o);n||Da.set(o,n=[]),n.push(e)}}function ug(e,t,o=et){const{immediate:n,deep:a,once:r,scheduler:s,augmentJob:i,call:l}=o,u=k=>a?k:Ut(k)||a===!1||a===0?wo(k,1):wo(k);let c,p,g,w,b=!1,y=!1;if(st(e)?(p=()=>e.value,b=Ut(e)):vo(e)?(p=()=>u(e),b=!0):xe(e)?(y=!0,b=e.some(k=>vo(k)||Ut(k)),p=()=>e.map(k=>{if(st(k))return k.value;if(vo(k))return u(k);if($e(k))return l?l(k,2):k()})):$e(e)?t?p=l?()=>l(e,2):e:p=()=>{if(g){ao();try{g()}finally{ro()}}const k=Jo;Jo=c;try{return l?l(e,3,[w]):e(w)}finally{Jo=k}}:p=oo,t&&a){const k=p,x=a===!0?1/0:a;p=()=>wo(k(),x)}const d=ji(),h=()=>{c.stop(),d&&d.active&&Rr(d.effects,c)};if(r&&t){const k=t;t=(...x)=>{const A=k(...x);return h(),A}}let f=y?new Array(e.length).fill(Fa):Fa;const m=k=>{if(!(!(c.flags&1)||!c.dirty&&!k))if(t){const x=c.run();if(k||a||b||(y?x.some((A,S)=>no(A,f[S])):no(x,f))){g&&g();const A=Jo;Jo=c;try{const S=[x,f===Fa?void 0:y&&f[0]===Fa?[]:f,w];f=x,l?l(t,3,S):t(...S)}finally{Jo=A}}}else c.run()};return i&&i(m),c=new Ui(p),c.scheduler=s?()=>s(m,!1):m,w=k=>cg(k,!1,c),g=c.onStop=()=>{const k=Da.get(c);if(k){if(l)l(k,4);else for(const x of k)x();Da.delete(c)}},t?n?m(!0):f=c.run():s?s(m.bind(null,!0),!0):c.run(),h.pause=c.pause.bind(c),h.resume=c.resume.bind(c),h.stop=h,h}function wo(e,t=1/0,o){if(t<=0||!Ye(e)||e.__v_skip||(o=o||new Map,(o.get(e)||0)>=t))return e;if(o.set(e,t),t--,st(e))wo(e.value,t,o);else if(xe(e))for(let n=0;n{wo(n,t,o)});else if(xa(e)){for(const n in e)wo(e[n],t,o);for(const n of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,n)&&wo(e[n],t,o)}return e}/** * @vue/runtime-core v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/const zn=[];let Wr=!1;function qx(e,...t){if(Wr)return;Wr=!0,ao();const o=zn.length?zn[zn.length-1].component:null,n=o&&o.appContext.config.warnHandler,a=cg();if(n)hn(n,o,11,[e+t.map(r=>{var s,i;return(i=(s=r.toString)==null?void 0:s.call(r))!=null?i:JSON.stringify(r)}).join(""),o&&o.proxy,a.map(({vnode:r})=>`at <${sc(o,r.type)}>`).join(` +**/const zn=[];let qr=!1;function Xx(e,...t){if(qr)return;qr=!0,ao();const o=zn.length?zn[zn.length-1].component:null,n=o&&o.appContext.config.warnHandler,a=dg();if(n)hn(n,o,11,[e+t.map(r=>{var s,i;return(i=(s=r.toString)==null?void 0:s.call(r))!=null?i:JSON.stringify(r)}).join(""),o&&o.proxy,a.map(({vnode:r})=>`at <${lc(o,r.type)}>`).join(` `),a]);else{const r=[`[Vue warn]: ${e}`,...t];a.length&&r.push(` -`,...ug(a)),console.warn(...r)}ro(),Wr=!1}function cg(){let e=zn[zn.length-1];if(!e)return[];const t=[];for(;e;){const o=t[0];o&&o.vnode===e?o.recurseCount++:t.push({vnode:e,recurseCount:0});const n=e.component&&e.component.parent;e=n&&n.vnode}return t}function ug(e){const t=[];return e.forEach((o,n)=>{t.push(...n===0?[]:[` -`],...dg(o))}),t}function dg({vnode:e,recurseCount:t}){const o=t>0?`... (${t} recursive calls)`:"",n=e.component?e.component.parent==null:!1,a=` at <${sc(e.component,e.type,n)}`,r=">"+o;return e.props?[a,...pg(e.props),r]:[a+r]}function pg(e){const t=[],o=Object.keys(e);return o.slice(0,3).forEach(n=>{t.push(...il(n,e[n]))}),o.length>3&&t.push(" ..."),t}function il(e,t,o){return tt(t)?(t=JSON.stringify(t),o?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?o?t:[`${e}=${t}`]:st(t)?(t=il(e,Be(t.value),!0),o?t:[`${e}=Ref<`,t,">"]):$e(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=Be(t),o?t:[`${e}=`,t])}function hn(e,t,o,n){try{return n?e(...n):e()}catch(a){Hn(a,t,o)}}function Jt(e,t,o,n){if($e(e)){const a=hn(e,t,o,n);return a&&Li(a)&&a.catch(r=>{Hn(r,t,o)}),a}if(xe(e)){const a=[];for(let r=0;r>>1,a=Nt[n],r=Vn(a);r=Vn(o)?Nt.push(e):Nt.splice(fg(t),0,e),e.flags|=1,cl()}}function cl(){Da||(Da=ll.then(pl))}function hg(e){if(!xe(e))Io&&e.id===-1?Io.splice(bn+1,0,e):e.flags&1||(mn.push(e),e.flags|=1);else for(let t=0;tVn(o)-Vn(n));if(mn.length=0,Io){for(let o=0;oe.id==null?e.flags&2?-1:1/0:e.id;function pl(e){try{for(io=0;io{n._d&&Ja(-1);const r=Ba(t),s=Ao.length;let i;try{i=e(...a)}finally{for(let l=Ao.length;l>s;l--)us();Ba(r),n._d&&Ja(1)}return i};return n._n=!0,n._c=!0,n._d=!0,n}function fl(e,t){if($t===null)return e;const o=er($t),n=e.dirs||(e.dirs=[]);for(let a=0;a1)return o&&$e(t)?t.call(n&&n.proxy):t}}function mg(){return!!($o()||Qo)}const bg=Symbol.for("v-scx"),yg=()=>Fe(bg);function _g(e,t){return qr(e,null,t)}function ct(e,t,o){return qr(e,t,o)}function qr(e,t,o=et){const{immediate:n,deep:a,flush:r,once:s}=o,i=dt({},o),l=t&&n||!t&&r!=="post";let u;if(kn){if(r==="sync"){const k=yg();u=k.__watcherHandles||(k.__watcherHandles=[])}else if(!l){const k=()=>{};return k.stop=oo,k.resume=oo,k.pause=oo,k}}const c=Ct;i.call=(k,w,_)=>Jt(k,c,w,_);let p=!1;r==="post"?i.scheduler=k=>{It(k,c&&c.suspense)}:r!=="sync"&&(p=!0,i.scheduler=(k,w)=>{w?k():Yr(k)}),i.augmentJob=k=>{t&&(k.flags|=4),p&&(k.flags|=2,c&&(k.id=c.uid,k.i=c))};const g=lg(e,t,i);return kn&&(u?u.push(g):l&&g()),g}function vg(e,t,o){const n=this.proxy,a=tt(e)?e.includes(".")?hl(n,e):()=>n[e]:e.bind(n,n);let r;$e(t)?r=t:(r=t.handler,o=t);const s=na(this),i=qr(a,r.bind(n),o);return s(),i}function hl(e,t){const o=t.split(".");return()=>{let n=e;for(let a=0;ae.__isTeleport,Zo=e=>e&&(e.disabled||e.disabled===""),kg=e=>e&&(e.defer||e.defer===""),bl=e=>typeof SVGElement<"u"&&e instanceof SVGElement,yl=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,Jr=(e,t)=>{const o=e&&e.to;return tt(o)?t?t(o):null:o},wg={name:"Teleport",__isTeleport:!0,process(e,t,o,n,a,r,s,i,l,u){const{mc:c,pc:p,pbc:g,o:{insert:k,querySelector:w,createText:_,createComment:d,parentNode:h}}=u,f=Zo(t.props);let{dynamicChildren:m}=t;const v=(S,T,I)=>{S.shapeFlag&16&&c(S.children,T,I,a,r,s,i,l)},x=(S=t)=>{const T=Zo(S.props),I=S.target=Jr(S.props,w),H=Xr(I,S,_,k);I&&(s!=="svg"&&bl(I)?s="svg":s!=="mathml"&&yl(I)&&(s="mathml"),a&&a.isCE&&(a.ce._teleportTargets||(a.ce._teleportTargets=new Set)).add(I),T||(v(S,I,H),Wn(S,!1)))},A=S=>{const T=()=>{if(Oo.get(S)===T){if(Oo.delete(S),Zo(S.props)){const I=h(S.el)||o;v(S,I,S.anchor),Wn(S,!0)}x(S)}};Oo.set(S,T),It(T,r)};if(e==null){const S=t.el=_(""),T=t.anchor=_("");if(k(S,o,n),k(T,o,n),kg(t.props)||r&&r.pendingBranch){A(t);return}f&&(v(t,o,T),Wn(t,!0)),x()}else{t.el=e.el;const S=t.anchor=e.anchor,T=Oo.get(e);if(T){T.flags|=8,Oo.delete(e),A(t);return}t.targetStart=e.targetStart;const I=t.target=e.target,H=t.targetAnchor=e.targetAnchor,W=Zo(e.props),re=W?o:I,P=W?S:H;if(s==="svg"||bl(I)?s="svg":(s==="mathml"||yl(I))&&(s="mathml"),m?(g(e.dynamicChildren,m,re,a,r,s,i),cs(e,t,!0)):l||p(e,t,re,P,a,r,s,i,!1),f)W?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):ja(t,o,S,u,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const $=Jr(t.props,w);$&&(t.target=$,ja(t,$,null,u,0))}else W&&ja(t,I,H,u,1);Wn(t,f)}},remove(e,t,o,{um:n,o:{remove:a}},r){const{shapeFlag:s,children:i,anchor:l,targetStart:u,targetAnchor:c,target:p,props:g}=e,k=Zo(g),w=r||!k,_=Oo.get(e);if(_&&(_.flags|=8,Oo.delete(e)),p&&(a(u),a(c)),r&&a(l),!_&&(k||p)&&s&16)for(let d=0;d1){for(const o of e)if(o.type!==po){t=o;break}}return t}function _l(e){if(!za(e))return Ga(e.type)&&e.children?Sg(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:o}=e;if(o){if(t&16)return o[0];if(t&32&&$e(o.default))return o.default()}}function Qr(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const o=e.component.subTree;Qr(Ga(o.type)&&_l(o)||o,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Yn(e,t){return $e(e)?dt({name:e.name},t,{setup:e}):e}function es(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function vl(e,t){let o;return!!((o=Object.getOwnPropertyDescriptor(e,t))&&!o.configurable)}const Ua=new WeakMap;function qn(e,t,o,n,a=!1){if(xe(e)){e.forEach((_,d)=>qn(_,t&&(xe(t)?t[d]:t),o,n,a));return}if(yn(n)&&!a){n.shapeFlag&512&&n.type.__asyncResolved&&n.component.subTree.component&&qn(e,t,o,n.component.subTree);return}const r=n.shapeFlag&4?er(n.component):n.el,s=a?null:r,{i,r:l}=e,u=t&&t.r,c=i.refs===et?i.refs={}:i.refs,p=i.setupState,g=Be(p),k=p===et?Ei:_=>vl(c,_)?!1:Ve(g,_),w=(_,d)=>!(d&&vl(c,d));if(u!=null&&u!==l){if(kl(t),tt(u))c[u]=null,k(u)&&(p[u]=null);else if(st(u)){const _=t;w(u,_.k)&&(u.value=null),_.k&&(c[_.k]=null)}}if($e(l))hn(l,i,12,[s,c]);else{const _=tt(l),d=st(l);if(_||d){const h=()=>{if(e.f){const f=_?k(l)?p[l]:c[l]:w()||!e.k?l.value:c[e.k];if(a)xe(f)&&Mr(f,r);else if(xe(f))f.includes(r)||f.push(r);else if(_)c[l]=[r],k(l)&&(p[l]=c[l]);else{const m=[r];w(l,e.k)&&(l.value=m),e.k&&(c[e.k]=m)}}else _?(c[l]=s,k(l)&&(p[l]=s)):d&&(w(l,e.k)&&(l.value=s),e.k&&(c[e.k]=s))};if(s){const f=()=>{h(),Ua.delete(e)};f.id=-1,Ua.set(e,f),It(f,o)}else kl(e),h()}}}function kl(e){const t=Ua.get(e);t&&(t.flags|=8,Ua.delete(e))}const wl=e=>e.nodeType===8;Ca().requestIdleCallback,Ca().cancelIdleCallback;function $g(e,t){if(wl(e)&&e.data==="["){let o=1,n=e.nextSibling;for(;n;){if(n.nodeType===1){if(t(n)===!1)break}else if(wl(n))if(n.data==="]"){if(--o===0)break}else n.data==="["&&o++;n=n.nextSibling}}else t(e)}const yn=e=>!!e.type.__asyncLoader;function Eg(e){$e(e)&&(e={loader:e});const{loader:t,loadingComponent:o,errorComponent:n,delay:a=200,hydrate:r,timeout:s,suspensible:i=!0,onError:l}=e;let u=null,c,p=0;const g=()=>(p++,u=null,k()),k=()=>{let w;return u||(w=u=t().catch(_=>{if(_=_ instanceof Error?_:new Error(String(_)),l)return new Promise((d,h)=>{l(_,()=>d(g()),()=>h(_),p+1)});throw _}).then(_=>w!==u&&u?u:(_&&(_.__esModule||_[Symbol.toStringTag]==="Module")&&(_=_.default),c=_,_)))};return Yn({name:"AsyncComponentWrapper",__asyncLoader:k,__asyncHydrate(w,_,d){const h=w.isConnected;let f=!1;(_.bu||(_.bu=[])).push(()=>f=!0);const m=()=>{f||!w.parentNode||h&&!w.isConnected||d()},v=r?()=>{const x=r(m,A=>$g(w,A));x&&(_.bum||(_.bum=[])).push(x)}:m;c?v():k().then(()=>!_.isUnmounted&&v())},get __asyncResolved(){return c},setup(){const w=Ct;if(es(w),c)return()=>Ka(c,w);const _=x=>{u=null,Hn(x,w,13,!n)};if(i&&w.suspense||kn)return k().then(x=>()=>Ka(x,w)).catch(x=>(_(x),()=>n?We(n,{error:x}):null));const d=de(!1),h=de(),f=de(!!a);let m,v;return Va(()=>{m!=null&&clearTimeout(m),v!=null&&clearTimeout(v)}),a&&(v=setTimeout(()=>{w.isUnmounted||(f.value=!1)},a)),s!=null&&(m=setTimeout(()=>{if(!w.isUnmounted&&!d.value&&!h.value){const x=new Error(`Async component timed out after ${s}ms.`);_(x),h.value=x}},s)),k().then(()=>{w.isUnmounted||(d.value=!0,w.parent&&za(w.parent.vnode)&&w.parent.update())}).catch(x=>{if(w.isUnmounted){u=null;return}_(x),h.value=x}),()=>{if(d.value&&c)return Ka(c,w);if(h.value&&n)return We(n,{error:h.value});if(o&&!f.value)return Ka(o,w)}}})}function Ka(e,t){const{ref:o,props:n,children:a,ce:r}=t.vnode,s=We(e,n,a);return s.ref=o,s.ce=r,delete t.vnode.ce,s}const za=e=>e.type.__isKeepAlive;function Cg(e,t){xl(e,"a",t)}function Lg(e,t){xl(e,"da",t)}function xl(e,t,o=Ct){const n=e.__wdc||(e.__wdc=()=>{let a=o;for(;a;){if(a.isDeactivated)return;a=a.parent}return e()});if(Ha(t,n,o),o){let a=o.parent;for(;a&&a.parent;)za(a.parent.vnode)&&Tg(n,t,o,a),a=a.parent}}function Tg(e,t,o,n){const a=Ha(t,e,n,!0);Va(()=>{Mr(n[t],a)},o)}function Ha(e,t,o=Ct,n=!1){if(o){const a=o[e]||(o[e]=[]),r=t.__weh||(t.__weh=(...s)=>{ao();const i=na(o),l=Jt(t,o,e,s);return i(),ro(),l});return n?a.unshift(r):a.push(r),r}}const xo=e=>(t,o=Ct)=>{(!kn||e==="sp")&&Ha(e,(...n)=>t(...n),o)},Al=xo("bm"),co=xo("m"),Pg=xo("bu"),Mg=xo("u"),uo=xo("bum"),Va=xo("um"),Ng=xo("sp"),Rg=xo("rtg"),Ig=xo("rtc");function Og(e,t=Ct){Ha("ec",e,t)}const Fg="components",Sl=Symbol.for("v-ndc");function $l(e){return tt(e)?Dg(Fg,e,!1)||e:e||Sl}function Dg(e,t,o=!0,n=!1){const a=$t||Ct;if(a){const r=a.type;{const i=rc(r,!1);if(i&&(i===t||i===_t(t)||i===Sa(_t(t))))return r}const s=El(a[e]||r[e],t)||El(a.appContext[e],t);return!s&&n?r:s}}function El(e,t){return e&&(e[t]||e[_t(t)]||e[Sa(_t(t))])}function Et(e,t,o,n){let a;const r=o,s=xe(e);if(s||tt(e)){const i=s&&vo(e);let l=!1,u=!1;i&&(l=!Ut(e),u=ko(e),e=Ta(e)),a=new Array(e.length);for(let c=0,p=e.length;ct(i,l,void 0,r));else{const i=Object.keys(e);a=new Array(i.length);for(let l=0,u=i.length;l0;return t!=="default"&&(u.name=t),z(),pt(Pe,null,[We("slot",u,n)],c?-2:64)}let s=e[t];s&&s._c&&(s._d=!1);const i=Ao.length;z();let l;try{const u=s&&Cl(s(o)),c=o.key||r||u&&u.key;l=pt(Pe,{key:(c&&!Gt(c)?c:`_${t}`)+(!u&&n?"_fb":"")},u||(n?n():[]),u&&e._===1?64:-2)}catch(u){for(let c=Ao.length;c>i;c--)us();throw u}finally{s&&s._c&&(s._d=!0)}return!a&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),l}function Cl(e){return e.some(t=>ea(t)?!(t.type===po||t.type===Pe&&!Cl(t.children)):!0)?e:null}const ts=e=>e?oc(e)?er(e):ts(e.parent):null,Jn=dt(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>ts(e.parent),$root:e=>ts(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Ml(e),$forceUpdate:e=>e.f||(e.f=()=>{Yr(e.update)}),$nextTick:e=>e.n||(e.n=lo.bind(e.proxy)),$watch:e=>vg.bind(e)}),os=(e,t)=>e!==et&&!e.__isScriptSetup&&Ve(e,t),Bg={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:o,setupState:n,data:a,props:r,accessCache:s,type:i,appContext:l}=e;if(t[0]!=="$"){const g=s[t];if(g!==void 0)switch(g){case 1:return n[t];case 2:return a[t];case 4:return o[t];case 3:return r[t]}else{if(os(n,t))return s[t]=1,n[t];if(a!==et&&Ve(a,t))return s[t]=2,a[t];if(Ve(r,t))return s[t]=3,r[t];if(o!==et&&Ve(o,t))return s[t]=4,o[t];ns&&(s[t]=0)}}const u=Jn[t];let c,p;if(u)return t==="$attrs"&&Pt(e.attrs,"get",""),u(e);if((c=i.__cssModules)&&(c=c[t]))return c;if(o!==et&&Ve(o,t))return s[t]=4,o[t];if(p=l.config.globalProperties,Ve(p,t))return p[t]},set({_:e},t,o){const{data:n,setupState:a,ctx:r}=e;return os(a,t)?(a[t]=o,!0):n!==et&&Ve(n,t)?(n[t]=o,!0):Ve(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(r[t]=o,!0)},has({_:{data:e,setupState:t,accessCache:o,ctx:n,appContext:a,props:r,type:s}},i){let l;return!!(o[i]||e!==et&&i[0]!=="$"&&Ve(e,i)||os(t,i)||Ve(r,i)||Ve(n,i)||Ve(Jn,i)||Ve(a.config.globalProperties,i)||(l=s.__cssModules)&&l[i])},defineProperty(e,t,o){return o.get!=null?e._.accessCache[t]=0:Ve(o,"value")&&this.set(e,t,o.value,null),Reflect.defineProperty(e,t,o)}};function Ll(e){return xe(e)?e.reduce((t,o)=>(t[o]=null,t),{}):e}let ns=!0;function Gg(e){const t=Ml(e),o=e.proxy,n=e.ctx;ns=!1,t.beforeCreate&&Tl(t.beforeCreate,e,"bc");const{data:a,computed:r,methods:s,watch:i,provide:l,inject:u,created:c,beforeMount:p,mounted:g,beforeUpdate:k,updated:w,activated:_,deactivated:d,beforeDestroy:h,beforeUnmount:f,destroyed:m,unmounted:v,render:x,renderTracked:A,renderTriggered:S,errorCaptured:T,serverPrefetch:I,expose:H,inheritAttrs:W,components:re,directives:P,filters:$}=t;if(u&&jg(u,n,null),s)for(const N in s){const ne=s[N];$e(ne)&&(n[N]=ne.bind(o))}if(a){const N=a.call(o,o);Ye(N)&&(e.data=pn(N))}if(ns=!0,r)for(const N in r){const ne=r[N],ge=$e(ne)?ne.bind(o,o):$e(ne.get)?ne.get.bind(o,o):oo,L=!$e(ne)&&$e(ne.set)?ne.set.bind(o):oo,ae=te({get:ge,set:L});Object.defineProperty(n,N,{enumerable:!0,configurable:!0,get:()=>ae.value,set:ie=>ae.value=ie})}if(i)for(const N in i)Pl(i[N],n,o,N);if(l){const N=$e(l)?l.call(o):l;Reflect.ownKeys(N).forEach(ne=>{Ft(ne,N[ne])})}c&&Tl(c,e,"c");function C(N,ne){xe(ne)?ne.forEach(ge=>N(ge.bind(o))):ne&&N(ne.bind(o))}if(C(Al,p),C(co,g),C(Pg,k),C(Mg,w),C(Cg,_),C(Lg,d),C(Og,T),C(Ig,A),C(Rg,S),C(uo,f),C(Va,v),C(Ng,I),xe(H))if(H.length){const N=e.exposed||(e.exposed={});H.forEach(ne=>{Object.defineProperty(N,ne,{get:()=>o[ne],set:ge=>o[ne]=ge,enumerable:!0})})}else e.exposed||(e.exposed={});x&&e.render===oo&&(e.render=x),W!=null&&(e.inheritAttrs=W),re&&(e.components=re),P&&(e.directives=P),I&&es(e)}function jg(e,t,o=oo){xe(e)&&(e=as(e));for(const n in e){const a=e[n];let r;Ye(a)?"default"in a?r=Fe(a.from||n,a.default,!0):r=Fe(a.from||n):r=Fe(a),st(r)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>r.value,set:s=>r.value=s}):t[n]=r}}function Tl(e,t,o){Jt(xe(e)?e.map(n=>n.bind(t.proxy)):e.bind(t.proxy),t,o)}function Pl(e,t,o,n){let a=n.includes(".")?hl(o,n):()=>o[n];if(tt(e)){const r=t[e];$e(r)&&ct(a,r)}else if($e(e))ct(a,e.bind(o));else if(Ye(e))if(xe(e))e.forEach(r=>Pl(r,t,o,n));else{const r=$e(e.handler)?e.handler.bind(o):t[e.handler];$e(r)&&ct(a,r,e)}}function Ml(e){const t=e.type,{mixins:o,extends:n}=t,{mixins:a,optionsCache:r,config:{optionMergeStrategies:s}}=e.appContext,i=r.get(t);let l;return i?l=i:!a.length&&!o&&!n?l=t:(l={},a.length&&a.forEach(u=>Wa(l,u,s,!0)),Wa(l,t,s)),Ye(t)&&r.set(t,l),l}function Wa(e,t,o,n=!1){const{mixins:a,extends:r}=t;r&&Wa(e,r,o,!0),a&&a.forEach(s=>Wa(e,s,o,!0));for(const s in t)if(!(n&&s==="expose")){const i=Ug[s]||o&&o[s];e[s]=i?i(e[s],t[s]):t[s]}return e}const Ug={data:Nl,props:Rl,emits:Rl,methods:Xn,computed:Xn,beforeCreate:Rt,created:Rt,beforeMount:Rt,mounted:Rt,beforeUpdate:Rt,updated:Rt,beforeDestroy:Rt,beforeUnmount:Rt,destroyed:Rt,unmounted:Rt,activated:Rt,deactivated:Rt,errorCaptured:Rt,serverPrefetch:Rt,components:Xn,directives:Xn,watch:zg,provide:Nl,inject:Kg};function Nl(e,t){return t?e?function(){return dt($e(e)?e.call(this,this):e,$e(t)?t.call(this,this):t)}:t:e}function Kg(e,t){return Xn(as(e),as(t))}function as(e){if(xe(e)){const t={};for(let o=0;ot==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${_t(t)}Modifiers`]||e[`${jt(t)}Modifiers`];function Yg(e,t,...o){if(e.isUnmounted)return;const n=e.vnode.props||et;let a=o;const r=t.startsWith("update:"),s=r&&Wg(n,t.slice(7));s&&(s.trim&&(a=o.map(c=>tt(c)?c.trim():c)),s.number&&(a=a.map(Ea)));let i,l=n[i=Nr(t)]||n[i=Nr(_t(t))];!l&&r&&(l=n[i=Nr(jt(t))]),l&&Jt(l,e,6,a);const u=n[i+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[i])return;e.emitted[i]=!0,Jt(u,e,6,a)}}const qg=new WeakMap;function Ol(e,t,o=!1){const n=o?qg:t.emitsCache,a=n.get(e);if(a!==void 0)return a;const r=e.emits;let s={},i=!1;if(!$e(e)){const l=u=>{const c=Ol(u,t,!0);c&&(i=!0,dt(s,c))};!o&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!r&&!i?(Ye(e)&&n.set(e,null),null):(xe(r)?r.forEach(l=>s[l]=null):dt(s,r),Ye(e)&&n.set(e,s),s)}function Ya(e,t){return!e||!va(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),Ve(e,t[0].toLowerCase()+t.slice(1))||Ve(e,jt(t))||Ve(e,t))}function Jx(){}function Fl(e){const{type:t,vnode:o,proxy:n,withProxy:a,propsOptions:[r],slots:s,attrs:i,emit:l,render:u,renderCache:c,props:p,data:g,setupState:k,ctx:w,inheritAttrs:_}=e,d=Ba(e);let h,f;try{if(o.shapeFlag&4){const v=a||n,x=v;h=go(u.call(x,v,c,p,k,g,w)),f=i}else{const v=t;h=go(v.length>1?v(p,{attrs:i,slots:s,emit:l}):v(p,null)),f=t.props?i:Jg(i)}}catch(v){Ao.length=0,Hn(v,e,1),h=We(po)}let m=h;if(f&&_!==!1){const v=Object.keys(f),{shapeFlag:x}=m;v.length&&x&7&&(r&&v.some(ka)&&(f=Xg(f,r)),m=vn(m,f,!1,!0))}if(o.dirs&&(m=vn(m,null,!1,!0),m.dirs=m.dirs?m.dirs.concat(o.dirs):o.dirs),o.transition){const v=Ga(m.type)&&_l(m)||m;Qr(v,o.transition)}return h=m,Ba(d),h}const Jg=e=>{let t;for(const o in e)(o==="class"||o==="style"||va(o))&&((t||(t={}))[o]=e[o]);return t},Xg=(e,t)=>{const o={};for(const n in e)(!ka(n)||!(n.slice(9)in t))&&(o[n]=e[n]);return o};function Zg(e,t,o){const{props:n,children:a,component:r}=e,{props:s,children:i,patchFlag:l}=t,u=r.emitsOptions;if(t.dirs||t.transition)return!0;if(o&&l>=0){if(l&1024)return!0;if(l&16)return n?Dl(n,s,u):!!s;if(l&8){const c=t.dynamicProps;for(let p=0;pObject.create(Gl),Ul=e=>Object.getPrototypeOf(e)===Gl;function ef(e,t,o,n=!1){const a={},r=jl();e.propsDefaults=Object.create(null),Kl(e,t,a,r);for(const s in e.propsOptions[0])s in a||(a[s]=void 0);o?e.props=n?a:Zp(a):e.type.props?e.props=a:e.props=r,e.attrs=r}function tf(e,t,o,n){const{props:a,attrs:r,vnode:{patchFlag:s}}=e,i=Be(a),[l]=e.propsOptions;let u=!1;if((n||s>0)&&!(s&16)){if(s&8){const c=e.vnode.dynamicProps;for(let p=0;p{l=!0;const[g,k]=zl(p,t,!0);dt(s,g),k&&i.push(...k)};!o&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}if(!r&&!l)return Ye(e)&&n.set(e,un),un;if(xe(r))for(let c=0;ce==="_"||e==="_ctx"||e==="$stable",is=e=>xe(e)?e.map(go):[go(e)],nf=(e,t,o)=>{if(t._n)return t;const n=Vt((...a)=>is(t(...a)),o);return n._c=!1,n},Vl=(e,t,o)=>{const n=e._ctx;for(const a in e){if(ss(a))continue;const r=e[a];if($e(r))t[a]=nf(a,r,n);else if(r!=null){const s=is(r);t[a]=()=>s}}},Wl=(e,t)=>{const o=is(t);e.slots.default=()=>o},Yl=(e,t,o)=>{for(const n in t)(o||!ss(n))&&(e[n]=t[n])},af=(e,t,o)=>{const n=e.slots=jl();if(e.vnode.shapeFlag&32){const a=t._;a?(Yl(n,t,o),o&&Pi(n,"_",a,!0)):Vl(t,n)}else t&&Wl(e,t)},rf=(e,t,o)=>{const{vnode:n,slots:a}=e;let r=!0,s=et;if(n.shapeFlag&32){const i=t._;i?o&&i===1?r=!1:Yl(a,t,o):(r=!t.$stable,Vl(t,a)),s=t}else t&&(Wl(e,t),s={default:1});if(r)for(const i in a)!ss(i)&&s[i]==null&&delete a[i]},It=df;function sf(e){return lf(e)}function lf(e,t){const o=Ca();o.__VUE__=!0;const{insert:n,remove:a,patchProp:r,createElement:s,createText:i,createComment:l,setText:u,setElementText:c,parentNode:p,nextSibling:g,setScopeId:k=oo,insertStaticContent:w}=e,_=(E,F,O,K=null,X=null,J=null,Z=void 0,Q=null,b=!!F.dynamicChildren)=>{if(E===F)return;E&&!ta(E,F)&&(K=Oe(E),ie(E,X,J,!0),E=null),F.patchFlag===-2&&(b=!1,F.dynamicChildren=null);const{type:y,ref:B,shapeFlag:V}=F;switch(y){case Zn:d(E,F,O,K);break;case po:h(E,F,O,K);break;case qa:E==null&&f(F,O,K,Z);break;case Pe:re(E,F,O,K,X,J,Z,Q,b);break;default:V&1?x(E,F,O,K,X,J,Z,Q,b):V&6?P(E,F,O,K,X,J,Z,Q,b):(V&64||V&128)&&y.process(E,F,O,K,X,J,Z,Q,b,Xe)}B!=null&&X?qn(B,E&&E.ref,J,F||E,!F):B==null&&E&&E.ref!=null&&qn(E.ref,null,J,E,!0)},d=(E,F,O,K)=>{if(E==null)n(F.el=i(F.children),O,K);else{const X=F.el=E.el;F.children!==E.children&&u(X,F.children)}},h=(E,F,O,K)=>{E==null?n(F.el=l(F.children||""),O,K):F.el=E.el},f=(E,F,O,K)=>{[E.el,E.anchor]=w(E.children,F,O,K,E.el,E.anchor)},m=({el:E,anchor:F},O,K)=>{let X;for(;E&&E!==F;)X=g(E),n(E,O,K),E=X;n(F,O,K)},v=({el:E,anchor:F})=>{let O;for(;E&&E!==F;)O=g(E),a(E),E=O;a(F)},x=(E,F,O,K,X,J,Z,Q,b)=>{if(F.type==="svg"?Z="svg":F.type==="math"&&(Z="mathml"),E==null)A(F,O,K,X,J,Z,Q,b);else{const y=E.el&&E.el._isVueCE?E.el:null;try{y&&y._beginPatch(),I(E,F,X,J,Z,Q,b)}finally{y&&y._endPatch()}}},A=(E,F,O,K,X,J,Z,Q)=>{let b,y;const{props:B,shapeFlag:V,transition:ue,dirs:se}=E;if(b=E.el=s(E.type,J,B&&B.is,B),V&8?c(b,E.children):V&16&&T(E.children,b,null,K,X,ls(E,J),Z,Q),se&&Xo(E,null,K,"created"),S(b,E,E.scopeId,Z,K),B){for(const Y in B)Y!=="value"&&!Dn(Y)&&r(b,Y,null,B[Y],J,K);"value"in B&&r(b,"value",null,B.value,J),(y=B.onVnodeBeforeMount)&&fo(y,K,E)}se&&Xo(E,null,K,"beforeMount");const G=cf(X,ue);G&&ue.beforeEnter(b),n(b,F,O),((y=B&&B.onVnodeMounted)||G||se)&&It(()=>{try{y&&fo(y,K,E),G&&ue.enter(b),se&&Xo(E,null,K,"mounted")}finally{}},X)},S=(E,F,O,K,X)=>{if(O&&k(E,O),K)for(let J=0;J{for(let y=b;y{const Q=F.el=E.el;let{patchFlag:b,dynamicChildren:y,dirs:B}=F;b|=E.patchFlag&16;const V=E.props||et,ue=F.props||et;let se;if(O&&en(O,!1),(se=ue.onVnodeBeforeUpdate)&&fo(se,O,F,E),B&&Xo(F,E,O,"beforeUpdate"),O&&en(O,!0),y&&(!E.dynamicChildren||E.dynamicChildren.length!==y.length)&&(b=0,Z=!1,y=null),(V.innerHTML&&ue.innerHTML==null||V.textContent&&ue.textContent==null)&&c(Q,""),y?H(E.dynamicChildren,y,Q,O,K,ls(F,X),J):Z||ne(E,F,Q,null,O,K,ls(F,X),J,!1),b>0){if(b&16)W(Q,V,ue,O,X);else if(b&2&&V.class!==ue.class&&r(Q,"class",null,ue.class,X),b&4&&r(Q,"style",V.style,ue.style,X),b&8){const G=F.dynamicProps;for(let Y=0;Y{se&&fo(se,O,F,E),B&&Xo(F,E,O,"updated")},K)},H=(E,F,O,K,X,J,Z)=>{for(let Q=0;Q{if(F!==O){if(F!==et)for(const J in F)!Dn(J)&&!(J in O)&&r(E,J,F[J],null,X,K);for(const J in O){if(Dn(J))continue;const Z=O[J],Q=F[J];Z!==Q&&J!=="value"&&r(E,J,Q,Z,X,K)}"value"in O&&r(E,"value",F.value,O.value,X)}},re=(E,F,O,K,X,J,Z,Q,b)=>{const y=F.el=E?E.el:i(""),B=F.anchor=E?E.anchor:i("");let{patchFlag:V,dynamicChildren:ue,slotScopeIds:se}=F;se&&(Q=Q?Q.concat(se):se),E==null?(n(y,O,K),n(B,O,K),T(F.children||[],O,B,X,J,Z,Q,b)):V>0&&V&64&&ue&&E.dynamicChildren&&E.dynamicChildren.length===ue.length?(H(E.dynamicChildren,ue,O,X,J,Z,Q),(F.key!=null||X&&F===X.subTree)&&cs(E,F,!0)):ne(E,F,O,B,X,J,Z,Q,b)},P=(E,F,O,K,X,J,Z,Q,b)=>{F.slotScopeIds=Q,E==null?F.shapeFlag&512?X.ctx.activate(F,O,K,Z,b):$(F,O,K,X,J,Z,b):M(E,F,b)},$=(E,F,O,K,X,J,Z)=>{const Q=E.component=yf(E,K,X);if(za(E)&&(Q.ctx.renderer=Xe),_f(Q,!1,Z),Q.asyncDep){if(X&&X.registerDep(Q,C,Z),!E.el){const b=Q.subTree=We(po);h(null,b,F,O),E.placeholder=b.el}}else C(Q,E,F,O,X,J,Z)},M=(E,F,O)=>{const K=F.component=E.component;if(Zg(E,F,O))if(K.asyncDep&&!K.asyncResolved){N(K,F,O);return}else K.next=F,K.update();else F.el=E.el,K.vnode=F},C=(E,F,O,K,X,J,Z)=>{const Q=()=>{if(E.isMounted){let{next:V,bu:ue,u:se,parent:G,vnode:Y}=E;{const U=ql(E);if(U){V&&(V.el=Y.el,N(E,V,Z)),U.asyncDep.then(()=>{It(()=>{E.isUnmounted||y()},X)});return}}let me=V,Ae;en(E,!1),V?(V.el=Y.el,N(E,V,Z)):V=Y,ue&&$a(ue),(Ae=V.props&&V.props.onVnodeBeforeUpdate)&&fo(Ae,G,V,Y),en(E,!0);const Ge=Fl(E),D=E.subTree;E.subTree=Ge,_(D,Ge,p(D.el),Oe(D),E,X,J),V.el=Ge.el,me===null&&Qg(E,Ge.el),se&&It(se,X),(Ae=V.props&&V.props.onVnodeUpdated)&&It(()=>fo(Ae,G,V,Y),X)}else{let V;const{el:ue,props:se}=F,{bm:G,m:Y,parent:me,root:Ae,type:Ge}=E,D=yn(F);en(E,!1),G&&$a(G),!D&&(V=se&&se.onVnodeBeforeMount)&&fo(V,me,F),en(E,!0);{Ae.ce&&Ae.ce._hasShadowRoot()&&Ae.ce._injectChildStyle(Ge,E.parent?E.parent.type:void 0);const U=E.subTree=Fl(E);_(null,U,O,K,E,X,J),F.el=U.el}if(Y&&It(Y,X),!D&&(V=se&&se.onVnodeMounted)){const U=F;It(()=>fo(V,me,U),X)}(F.shapeFlag&256||me&&yn(me.vnode)&&me.vnode.shapeFlag&256)&&E.a&&It(E.a,X),E.isMounted=!0,F=O=K=null}};E.scope.on();const b=E.effect=new Gi(Q);E.scope.off();const y=E.update=b.run.bind(b),B=E.job=b.runIfDirty.bind(b);B.i=E,B.id=E.uid,b.scheduler=()=>Yr(B),en(E,!0),y()},N=(E,F,O)=>{F.component=E;const K=E.vnode.props;E.vnode=F,E.next=null,tf(E,F.props,K,O),rf(E,F.children,O),ao(),ul(E),ro()},ne=(E,F,O,K,X,J,Z,Q,b=!1)=>{const y=E&&E.children,B=E?E.shapeFlag:0,V=F.children,{patchFlag:ue,shapeFlag:se}=F;if(ue>0){if(ue&128){L(y,V,O,K,X,J,Z,Q,b);return}else if(ue&256){ge(y,V,O,K,X,J,Z,Q,b);return}}se&8?(B&16&&Re(y,X,J),V!==y&&c(O,V)):B&16?se&16?L(y,V,O,K,X,J,Z,Q,b):Re(y,X,J,!0):(B&8&&c(O,""),se&16&&T(V,O,K,X,J,Z,Q,b))},ge=(E,F,O,K,X,J,Z,Q,b)=>{E=E||un,F=F||un;const y=E.length,B=F.length,V=Math.min(y,B);let ue;for(ue=0;ueB?Re(E,X,J,!0,!1,V):T(F,O,K,X,J,Z,Q,b,V)},L=(E,F,O,K,X,J,Z,Q,b)=>{let y=0;const B=F.length;let V=E.length-1,ue=B-1;for(;y<=V&&y<=ue;){const se=E[y],G=F[y]=b?So(F[y]):go(F[y]);if(ta(se,G))_(se,G,O,null,X,J,Z,Q,b);else break;y++}for(;y<=V&&y<=ue;){const se=E[V],G=F[ue]=b?So(F[ue]):go(F[ue]);if(ta(se,G))_(se,G,O,null,X,J,Z,Q,b);else break;V--,ue--}if(y>V){if(y<=ue){const se=ue+1,G=seue)for(;y<=V;)ie(E[y],X,J,!0),y++;else{const se=y,G=y,Y=new Map;for(y=G;y<=ue;y++){const ke=F[y]=b?So(F[y]):go(F[y]);ke.key!=null&&Y.set(ke.key,y)}let me,Ae=0;const Ge=ue-G+1;let D=!1,U=0;const he=new Array(Ge);for(y=0;y=Ge){ie(ke,X,J,!0);continue}let je;if(ke.key!=null)je=Y.get(ke.key);else for(me=G;me<=ue;me++)if(he[me-G]===0&&ta(ke,F[me])){je=me;break}je===void 0?ie(ke,X,J,!0):(he[je-G]=y+1,je>=U?U=je:D=!0,_(ke,F[je],O,null,X,J,Z,Q,b),Ae++)}const ve=D?uf(he):un;for(me=ve.length-1,y=Ge-1;y>=0;y--){const ke=G+y,je=F[ke],Ce=F[ke+1],xt=ke+1{const{el:J,type:Z,transition:Q,children:b,shapeFlag:y}=E;if(y&6){ae(E.component.subTree,F,O,K);return}if(y&128){E.suspense.move(F,O,K);return}if(y&64){Z.move(E,F,O,Xe);return}if(Z===Pe){n(J,F,O);for(let V=0;VQ.enter(J),X));else{const{leave:V,delayLeave:ue,afterLeave:se}=Q,G=()=>{E.ctx.isUnmounted?a(J):n(J,F,O)},Y=()=>{const me=J._isLeaving||!!J[Zr];J._isLeaving&&J[Zr](!0),Q.persisted&&!me?G():V(J,()=>{G(),se&&se()})};ue?ue(J,G,Y):Y()}else n(J,F,O)},ie=(E,F,O,K=!1,X=!1)=>{const{type:J,props:Z,ref:Q,children:b,dynamicChildren:y,shapeFlag:B,patchFlag:V,dirs:ue,cacheIndex:se,memo:G}=E;if(V===-2&&(X=!1),Q!=null&&(ao(),qn(Q,null,O,E,!0),ro()),se!=null&&(F.renderCache[se]=void 0),B&256){F.ctx.deactivate(E);return}const Y=B&1&&ue,me=!yn(E);let Ae;if(me&&(Ae=Z&&Z.onVnodeBeforeUnmount)&&fo(Ae,F,E),B&6)Me(E.component,O,K);else{if(B&128){E.suspense.unmount(O,K);return}Y&&Xo(E,null,F,"beforeUnmount"),B&64?E.type.remove(E,F,O,Xe,K):y&&!y.hasOnce&&(J!==Pe||V>0&&V&64)?Re(y,F,O,!1,!0):(J===Pe&&V&384||!X&&B&16)&&Re(b,F,O),K&&le(E)}const Ge=G!=null&&se==null;(me&&(Ae=Z&&Z.onVnodeUnmounted)||Y||Ge)&&It(()=>{Ae&&fo(Ae,F,E),Y&&Xo(E,null,F,"unmounted"),Ge&&(E.el=null)},O)},le=E=>{const{type:F,el:O,anchor:K,transition:X}=E;if(F===Pe){we(O,K);return}if(F===qa){v(E);return}const J=()=>{a(O),X&&!X.persisted&&X.afterLeave&&X.afterLeave()};if(E.shapeFlag&1&&X&&!X.persisted){const{leave:Z,delayLeave:Q}=X,b=()=>Z(O,J);Q?Q(E.el,J,b):b()}else J()},we=(E,F)=>{let O;for(;E!==F;)O=g(E),a(E),E=O;a(F)},Me=(E,F,O)=>{const{bum:K,scope:X,job:J,subTree:Z,um:Q,m:b,a:y}=E;Jl(b),Jl(y),K&&$a(K),X.stop(),J&&(J.flags|=8,ie(Z,E,F,O)),Q&&It(Q,F),It(()=>{E.isUnmounted=!0},F)},Re=(E,F,O,K=!1,X=!1,J=0)=>{for(let Z=J;Z{if(E.shapeFlag&6)return Oe(E.component.subTree);if(E.shapeFlag&128)return E.suspense.next();const F=g(E.anchor||E.el),O=F&&F[ml];return O?g(O):F};let Ie=!1;const Je=(E,F,O)=>{let K;E==null?F._vnode&&(ie(F._vnode,null,null,!0),K=F._vnode.component):_(F._vnode||null,E,F,null,null,null,O),F._vnode=E,Ie||(Ie=!0,ul(K),dl(),Ie=!1)},Xe={p:_,um:ie,m:ae,r:le,mt:$,mc:T,pc:ne,pbc:H,n:Oe,o:e};return{render:Je,hydrate:void 0,createApp:Vg(Je)}}function ls({type:e,props:t},o){return o==="svg"&&e==="foreignObject"||o==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:o}function en({effect:e,job:t},o){o?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function cf(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function cs(e,t,o=!1){const n=e.children,a=t.children;if(xe(n)&&xe(a))for(let r=0;r>1,e[o[i]]0&&(t[n]=o[r-1]),o[r]=n)}}for(r=o.length,s=o[r-1];r-- >0;)o[r]=s,s=t[s];return o}function ql(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:ql(t)}function Jl(e){if(e)for(let t=0;te.__isSuspense;function df(e,t){t&&t.pendingBranch?xe(e)?t.effects.push(...e):t.effects.push(e):hg(e)}const Pe=Symbol.for("v-fgt"),Zn=Symbol.for("v-txt"),po=Symbol.for("v-cmt"),qa=Symbol.for("v-stc"),Ao=[];let Kt=null;function z(e=!1){Ao.push(Kt=e?null:[])}function us(){Ao.pop(),Kt=Ao[Ao.length-1]||null}let Qn=1;function Ja(e,t=!1){Qn+=e,e<0&&Kt&&t&&(Kt.hasOnce=!0)}function Ql(e){return e.dynamicChildren=Qn>0?Kt||un:null,us(),Qn>0&&Kt&&Kt.push(e),e}function ee(e,t,o,n,a,r){return Ql(R(e,t,o,n,a,r,!0))}function pt(e,t,o,n,a){return Ql(We(e,t,o,n,a,!0))}function ea(e){return e?e.__v_isVNode===!0:!1}function ta(e,t){return e.type===t.type&&e.key===t.key}const ec=({key:e})=>e??null,Xa=({ref:e,ref_key:t,ref_for:o})=>(typeof e=="number"&&(e=""+e),e!=null?tt(e)||st(e)||$e(e)?{i:$t,r:e,k:t,f:!!o}:e:null);function R(e,t=null,o=null,n=0,a=null,r=e===Pe?0:1,s=!1,i=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&ec(t),ref:t&&Xa(t),scopeId:gl,slotScopeIds:null,children:o,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:r,patchFlag:n,dynamicProps:a,dynamicChildren:null,appContext:null,ctx:$t};return i?(Za(l,o),r&128&&e.normalize(l)):o&&(l.shapeFlag|=tt(o)?8:16),Qn>0&&!s&&Kt&&(l.patchFlag>0||r&6)&&l.patchFlag!==32&&Kt.push(l),l}const We=pf;function pf(e,t=null,o=null,n=0,a=null,r=!1){if((!e||e===Sl)&&(e=po),ea(e)){const i=vn(e,t,!0);return o&&Za(i,o),Qn>0&&!r&&Kt&&(i.shapeFlag&6?Kt[Kt.indexOf(e)]=i:Kt.push(i)),i.patchFlag=-2,i}if(Sf(e)&&(e=e.__vccOpts),t){t=gf(t);let{class:i,style:l}=t;i&&!tt(i)&&(t.class=Ne(i)),Ye(l)&&(Ia(l)&&!xe(l)&&(l=dt({},l)),t.style=rt(l))}const s=tt(e)?1:Zl(e)?128:Ga(e)?64:Ye(e)?4:$e(e)?2:0;return R(e,t,o,n,a,s,r,!0)}function gf(e){return e?Ia(e)||Ul(e)?dt({},e):e:null}function vn(e,t,o=!1,n=!1){const{props:a,ref:r,patchFlag:s,children:i,transition:l}=e,u=t?hf(a||{},t):a,c={__v_isVNode:!0,__v_skip:!0,type:e.type,props:u,key:u&&ec(u),ref:t&&t.ref?o&&r?xe(r)?r.concat(Xa(t)):[r,Xa(t)]:Xa(t):r,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:i,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Pe?s===-1?16:s|16:s,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&vn(e.ssContent),ssFallback:e.ssFallback&&vn(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&n&&Qr(c,l.clone(c)),c}function mt(e=" ",t=0){return We(Zn,null,e,t)}function ff(e,t){const o=We(qa,null,e);return o.staticCount=t,o}function ye(e="",t=!1){return t?(z(),pt(po,null,e)):We(po,null,e)}function go(e){return e==null||typeof e=="boolean"?We(po):xe(e)?We(Pe,null,e.slice()):ea(e)?So(e):We(Zn,null,String(e))}function So(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:vn(e)}function Za(e,t){let o=0;const{shapeFlag:n}=e;if(t==null)t=null;else if(xe(t))o=16;else if(typeof t=="object")if(n&65){const a=t.default;a&&(a._c&&(a._d=!1),Za(e,a()),a._c&&(a._d=!0));return}else{o=32;const a=t._;!a&&!Ul(t)?t._ctx=$t:a===3&&$t&&($t.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if($e(t)){if(n&65){Za(e,{default:t});return}t={default:t,_ctx:$t},o=32}else t=String(t),n&64?(o=16,t=[mt(t)]):o=8;e.children=t,e.shapeFlag|=o}function hf(...e){const t={};for(let o=0;oCt||$t;let Qa,oa;{const e=Ca(),t=(o,n)=>{let a;return(a=e[o])||(a=e[o]=[]),a.push(n),r=>{a.length>1?a.forEach(s=>s(r)):a[0](r)}};Qa=t("__VUE_INSTANCE_SETTERS__",o=>Ct=o),oa=t("__VUE_SSR_SETTERS__",o=>kn=o)}const na=e=>{const t=Ct;return Qa(e),e.scope.on(),()=>{e.scope.off(),Qa(t)}},tc=()=>{Ct&&Ct.scope.off(),Qa(null)};function oc(e){return e.vnode.shapeFlag&4}let kn=!1;function _f(e,t=!1,o=!1){t&&oa(t);const{props:n,children:a}=e.vnode,r=oc(e);ef(e,n,r,t),af(e,a,o||t);const s=r?vf(e,t):void 0;return t&&oa(!1),s}function vf(e,t){const o=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Bg);const{setup:n}=o;if(n){ao();const a=e.setupContext=n.length>1?wf(e):null,r=na(e),s=hn(n,e,0,[e.props,a]),i=Li(s);if(ro(),r(),(i||e.sp)&&!yn(e)&&es(e),i){if(s.then(tc,tc),t)return s.then(l=>{oa(!0);try{nc(e,l,t)}finally{oa(!1)}}).catch(l=>{Hn(l,e,0)});e.asyncDep=s}else nc(e,s)}else ac(e)}function nc(e,t,o){$e(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:Ye(t)&&(e.setupState=rl(t)),ac(e)}function ac(e,t,o){const n=e.type;e.render||(e.render=n.render||oo);{const a=na(e);ao();try{Gg(e)}finally{ro(),a()}}}const kf={get(e,t){return Pt(e,"get",""),e[t]}};function wf(e){const t=o=>{e.exposed=o||{}};return{attrs:new Proxy(e.attrs,kf),slots:e.slots,emit:e.emit,expose:t}}function er(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(rl(qo(e.exposed)),{get(t,o){if(o in t)return t[o];if(o in Jn)return Jn[o](e)},has(t,o){return o in t||o in Jn}})):e.proxy}const xf=/(?:^|[-_])\w/g,Af=e=>e.replace(xf,t=>t.toUpperCase()).replace(/[-_]/g,"");function rc(e,t=!0){return $e(e)?e.displayName||e.name:e.name||t&&e.__name}function sc(e,t,o=!1){let n=rc(t);if(!n&&t.__file){const a=t.__file.match(/([^/\\]+)\.\w+$/);a&&(n=a[1])}if(!n&&e){const a=r=>{for(const s in r)if(r[s]===t)return s};n=a(e.components)||e.parent&&a(e.parent.type.components)||a(e.appContext.components)}return n?Af(n):o?"App":"Anonymous"}function Sf(e){return $e(e)&&"__vccOpts"in e}const te=(e,t)=>sg(e,t,kn);function ic(e,t,o){try{Ja(-1);const n=arguments.length;return n===2?Ye(t)&&!xe(t)?ea(t)?We(e,null,[t]):We(e,t):We(e,null,t):(n>3?o=Array.prototype.slice.call(arguments,2):n===3&&ea(o)&&(o=[o]),We(e,t,o))}finally{Ja(1)}}const $f="3.5.42";/** +`,...pg(a)),console.warn(...r)}ro(),qr=!1}function dg(){let e=zn[zn.length-1];if(!e)return[];const t=[];for(;e;){const o=t[0];o&&o.vnode===e?o.recurseCount++:t.push({vnode:e,recurseCount:0});const n=e.component&&e.component.parent;e=n&&n.vnode}return t}function pg(e){const t=[];return e.forEach((o,n)=>{t.push(...n===0?[]:[` +`],...gg(o))}),t}function gg({vnode:e,recurseCount:t}){const o=t>0?`... (${t} recursive calls)`:"",n=e.component?e.component.parent==null:!1,a=` at <${lc(e.component,e.type,n)}`,r=">"+o;return e.props?[a,...fg(e.props),r]:[a+r]}function fg(e){const t=[],o=Object.keys(e);return o.slice(0,3).forEach(n=>{t.push(...cl(n,e[n]))}),o.length>3&&t.push(" ..."),t}function cl(e,t,o){return tt(t)?(t=JSON.stringify(t),o?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?o?t:[`${e}=${t}`]:st(t)?(t=cl(e,Be(t.value),!0),o?t:[`${e}=Ref<`,t,">"]):$e(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=Be(t),o?t:[`${e}=`,t])}function hn(e,t,o,n){try{return n?e(...n):e()}catch(a){Hn(a,t,o)}}function Jt(e,t,o,n){if($e(e)){const a=hn(e,t,o,n);return a&&Pi(a)&&a.catch(r=>{Hn(r,t,o)}),a}if(xe(e)){const a=[];for(let r=0;r>>1,a=Nt[n],r=Vn(a);r=Vn(o)?Nt.push(e):Nt.splice(mg(t),0,e),e.flags|=1,dl()}}function dl(){Ba||(Ba=ul.then(fl))}function bg(e){if(!xe(e))Io&&e.id===-1?Io.splice(bn+1,0,e):e.flags&1||(mn.push(e),e.flags|=1);else for(let t=0;tVn(o)-Vn(n));if(mn.length=0,Io){for(let o=0;oe.id==null?e.flags&2?-1:1/0:e.id;function fl(e){try{for(io=0;io{n._d&&Xa(-1);const r=Ga(t),s=Ao.length;let i;try{i=e(...a)}finally{for(let l=Ao.length;l>s;l--)ps();Ga(r),n._d&&Xa(1)}return i};return n._n=!0,n._c=!0,n._d=!0,n}function ml(e,t){if($t===null)return e;const o=tr($t),n=e.dirs||(e.dirs=[]);for(let a=0;a1)return o&&$e(t)?t.call(n&&n.proxy):t}}function yg(){return!!($o()||Qo)}const _g=Symbol.for("v-scx"),vg=()=>Fe(_g);function kg(e,t){return Xr(e,null,t)}function ct(e,t,o){return Xr(e,t,o)}function Xr(e,t,o=et){const{immediate:n,deep:a,flush:r,once:s}=o,i=dt({},o),l=t&&n||!t&&r!=="post";let u;if(kn){if(r==="sync"){const w=vg();u=w.__watcherHandles||(w.__watcherHandles=[])}else if(!l){const w=()=>{};return w.stop=oo,w.resume=oo,w.pause=oo,w}}const c=Ct;i.call=(w,b,y)=>Jt(w,c,b,y);let p=!1;r==="post"?i.scheduler=w=>{It(w,c&&c.suspense)}:r!=="sync"&&(p=!0,i.scheduler=(w,b)=>{b?w():Jr(w)}),i.augmentJob=w=>{t&&(w.flags|=4),p&&(w.flags|=2,c&&(w.id=c.uid,w.i=c))};const g=ug(e,t,i);return kn&&(u?u.push(g):l&&g()),g}function wg(e,t,o){const n=this.proxy,a=tt(e)?e.includes(".")?bl(n,e):()=>n[e]:e.bind(n,n);let r;$e(t)?r=t:(r=t.handler,o=t);const s=na(this),i=Xr(a,r.bind(n),o);return s(),i}function bl(e,t){const o=t.split(".");return()=>{let n=e;for(let a=0;ae.__isTeleport,Zo=e=>e&&(e.disabled||e.disabled===""),xg=e=>e&&(e.defer||e.defer===""),_l=e=>typeof SVGElement<"u"&&e instanceof SVGElement,vl=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,Zr=(e,t)=>{const o=e&&e.to;return tt(o)?t?t(o):null:o},Ag={name:"Teleport",__isTeleport:!0,process(e,t,o,n,a,r,s,i,l,u){const{mc:c,pc:p,pbc:g,o:{insert:w,querySelector:b,createText:y,createComment:d,parentNode:h}}=u,f=Zo(t.props);let{dynamicChildren:m}=t;const k=(S,L,P)=>{S.shapeFlag&16&&c(S.children,L,P,a,r,s,i,l)},x=(S=t)=>{const L=Zo(S.props),P=S.target=Zr(S.props,b),z=Qr(P,S,y,w);P&&(s!=="svg"&&_l(P)?s="svg":s!=="mathml"&&vl(P)&&(s="mathml"),a&&a.isCE&&(a.ce._teleportTargets||(a.ce._teleportTargets=new Set)).add(P),L||(k(S,P,z),Wn(S,!1)))},A=S=>{const L=()=>{if(Oo.get(S)===L){if(Oo.delete(S),Zo(S.props)){const P=h(S.el)||o;k(S,P,S.anchor),Wn(S,!0)}x(S)}};Oo.set(S,L),It(L,r)};if(e==null){const S=t.el=y(""),L=t.anchor=y("");if(w(S,o,n),w(L,o,n),xg(t.props)||r&&r.pendingBranch){A(t);return}f&&(k(t,o,L),Wn(t,!0)),x()}else{t.el=e.el;const S=t.anchor=e.anchor,L=Oo.get(e);if(L){L.flags|=8,Oo.delete(e),A(t);return}t.targetStart=e.targetStart;const P=t.target=e.target,z=t.targetAnchor=e.targetAnchor,W=Zo(e.props),re=W?o:P,M=W?S:z;if(s==="svg"||_l(P)?s="svg":(s==="mathml"||vl(P))&&(s="mathml"),m?(g(e.dynamicChildren,m,re,a,r,s,i),ds(e,t,!0)):l||p(e,t,re,M,a,r,s,i,!1),f)W?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Ua(t,o,S,u,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const F=Zr(t.props,b);F&&(t.target=F,Ua(t,F,null,u,0))}else W&&Ua(t,P,z,u,1);Wn(t,f)}},remove(e,t,o,{um:n,o:{remove:a}},r){const{shapeFlag:s,children:i,anchor:l,targetStart:u,targetAnchor:c,target:p,props:g}=e,w=Zo(g),b=r||!w,y=Oo.get(e);if(y&&(y.flags|=8,Oo.delete(e)),p&&(a(u),a(c)),r&&a(l),!y&&(w||p)&&s&16)for(let d=0;d1){for(const o of e)if(o.type!==po){t=o;break}}return t}function kl(e){if(!Ha(e))return ja(e.type)&&e.children?Eg(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:o}=e;if(o){if(t&16)return o[0];if(t&32&&$e(o.default))return o.default()}}function ts(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const o=e.component.subTree;ts(ja(o.type)&&kl(o)||o,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Yn(e,t){return $e(e)?dt({name:e.name},t,{setup:e}):e}function os(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function wl(e,t){let o;return!!((o=Object.getOwnPropertyDescriptor(e,t))&&!o.configurable)}const Ka=new WeakMap;function qn(e,t,o,n,a=!1){if(xe(e)){e.forEach((y,d)=>qn(y,t&&(xe(t)?t[d]:t),o,n,a));return}if(yn(n)&&!a){n.shapeFlag&512&&n.type.__asyncResolved&&n.component.subTree.component&&qn(e,t,o,n.component.subTree);return}const r=n.shapeFlag&4?tr(n.component):n.el,s=a?null:r,{i,r:l}=e,u=t&&t.r,c=i.refs===et?i.refs={}:i.refs,p=i.setupState,g=Be(p),w=p===et?Li:y=>wl(c,y)?!1:Ve(g,y),b=(y,d)=>!(d&&wl(c,d));if(u!=null&&u!==l){if(xl(t),tt(u))c[u]=null,w(u)&&(p[u]=null);else if(st(u)){const y=t;b(u,y.k)&&(u.value=null),y.k&&(c[y.k]=null)}}if($e(l))hn(l,i,12,[s,c]);else{const y=tt(l),d=st(l);if(y||d){const h=()=>{if(e.f){const f=y?w(l)?p[l]:c[l]:b()||!e.k?l.value:c[e.k];if(a)xe(f)&&Rr(f,r);else if(xe(f))f.includes(r)||f.push(r);else if(y)c[l]=[r],w(l)&&(p[l]=c[l]);else{const m=[r];b(l,e.k)&&(l.value=m),e.k&&(c[e.k]=m)}}else y?(c[l]=s,w(l)&&(p[l]=s)):d&&(b(l,e.k)&&(l.value=s),e.k&&(c[e.k]=s))};if(s){const f=()=>{h(),Ka.delete(e)};f.id=-1,Ka.set(e,f),It(f,o)}else xl(e),h()}}}function xl(e){const t=Ka.get(e);t&&(t.flags|=8,Ka.delete(e))}const Al=e=>e.nodeType===8;La().requestIdleCallback,La().cancelIdleCallback;function Cg(e,t){if(Al(e)&&e.data==="["){let o=1,n=e.nextSibling;for(;n;){if(n.nodeType===1){if(t(n)===!1)break}else if(Al(n))if(n.data==="]"){if(--o===0)break}else n.data==="["&&o++;n=n.nextSibling}}else t(e)}const yn=e=>!!e.type.__asyncLoader;function Lg(e){$e(e)&&(e={loader:e});const{loader:t,loadingComponent:o,errorComponent:n,delay:a=200,hydrate:r,timeout:s,suspensible:i=!0,onError:l}=e;let u=null,c,p=0;const g=()=>(p++,u=null,w()),w=()=>{let b;return u||(b=u=t().catch(y=>{if(y=y instanceof Error?y:new Error(String(y)),l)return new Promise((d,h)=>{l(y,()=>d(g()),()=>h(y),p+1)});throw y}).then(y=>b!==u&&u?u:(y&&(y.__esModule||y[Symbol.toStringTag]==="Module")&&(y=y.default),c=y,y)))};return Yn({name:"AsyncComponentWrapper",__asyncLoader:w,__asyncHydrate(b,y,d){const h=b.isConnected;let f=!1;(y.bu||(y.bu=[])).push(()=>f=!0);const m=()=>{f||!b.parentNode||h&&!b.isConnected||d()},k=r?()=>{const x=r(m,A=>Cg(b,A));x&&(y.bum||(y.bum=[])).push(x)}:m;c?k():w().then(()=>!y.isUnmounted&&k())},get __asyncResolved(){return c},setup(){const b=Ct;if(os(b),c)return()=>za(c,b);const y=x=>{u=null,Hn(x,b,13,!n)};if(i&&b.suspense||kn)return w().then(x=>()=>za(x,b)).catch(x=>(y(x),()=>n?We(n,{error:x}):null));const d=de(!1),h=de(),f=de(!!a);let m,k;return Wa(()=>{m!=null&&clearTimeout(m),k!=null&&clearTimeout(k)}),a&&(k=setTimeout(()=>{b.isUnmounted||(f.value=!1)},a)),s!=null&&(m=setTimeout(()=>{if(!b.isUnmounted&&!d.value&&!h.value){const x=new Error(`Async component timed out after ${s}ms.`);y(x),h.value=x}},s)),w().then(()=>{b.isUnmounted||(d.value=!0,b.parent&&Ha(b.parent.vnode)&&b.parent.update())}).catch(x=>{if(b.isUnmounted){u=null;return}y(x),h.value=x}),()=>{if(d.value&&c)return za(c,b);if(h.value&&n)return We(n,{error:h.value});if(o&&!f.value)return za(o,b)}}})}function za(e,t){const{ref:o,props:n,children:a,ce:r}=t.vnode,s=We(e,n,a);return s.ref=o,s.ce=r,delete t.vnode.ce,s}const Ha=e=>e.type.__isKeepAlive;function Tg(e,t){Sl(e,"a",t)}function Pg(e,t){Sl(e,"da",t)}function Sl(e,t,o=Ct){const n=e.__wdc||(e.__wdc=()=>{let a=o;for(;a;){if(a.isDeactivated)return;a=a.parent}return e()});if(Va(t,n,o),o){let a=o.parent;for(;a&&a.parent;)Ha(a.parent.vnode)&&Mg(n,t,o,a),a=a.parent}}function Mg(e,t,o,n){const a=Va(t,e,n,!0);Wa(()=>{Rr(n[t],a)},o)}function Va(e,t,o=Ct,n=!1){if(o){const a=o[e]||(o[e]=[]),r=t.__weh||(t.__weh=(...s)=>{ao();const i=na(o),l=Jt(t,o,e,s);return i(),ro(),l});return n?a.unshift(r):a.push(r),r}}const xo=e=>(t,o=Ct)=>{(!kn||e==="sp")&&Va(e,(...n)=>t(...n),o)},$l=xo("bm"),co=xo("m"),Ng=xo("bu"),Rg=xo("u"),uo=xo("bum"),Wa=xo("um"),Ig=xo("sp"),Og=xo("rtg"),Fg=xo("rtc");function Dg(e,t=Ct){Va("ec",e,t)}const Bg="components",El=Symbol.for("v-ndc");function Cl(e){return tt(e)?Gg(Bg,e,!1)||e:e||El}function Gg(e,t,o=!0,n=!1){const a=$t||Ct;if(a){const r=a.type;{const i=ic(r,!1);if(i&&(i===t||i===_t(t)||i===$a(_t(t))))return r}const s=Ll(a[e]||r[e],t)||Ll(a.appContext[e],t);return!s&&n?r:s}}function Ll(e,t){return e&&(e[t]||e[_t(t)]||e[$a(_t(t))])}function Et(e,t,o,n){let a;const r=o,s=xe(e);if(s||tt(e)){const i=s&&vo(e);let l=!1,u=!1;i&&(l=!Ut(e),u=ko(e),e=Pa(e)),a=new Array(e.length);for(let c=0,p=e.length;ct(i,l,void 0,r));else{const i=Object.keys(e);a=new Array(i.length);for(let l=0,u=i.length;l0;return t!=="default"&&(u.name=t),H(),pt(Pe,null,[We("slot",u,n)],c?-2:64)}let s=e[t];s&&s._c&&(s._d=!1);const i=Ao.length;H();let l;try{const u=s&&Tl(s(o)),c=o.key||r||u&&u.key;l=pt(Pe,{key:(c&&!Gt(c)?c:`_${t}`)+(!u&&n?"_fb":"")},u||(n?n():[]),u&&e._===1?64:-2)}catch(u){for(let c=Ao.length;c>i;c--)ps();throw u}finally{s&&s._c&&(s._d=!0)}return!a&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),l}function Tl(e){return e.some(t=>ea(t)?!(t.type===po||t.type===Pe&&!Tl(t.children)):!0)?e:null}const ns=e=>e?ac(e)?tr(e):ns(e.parent):null,Jn=dt(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>ns(e.parent),$root:e=>ns(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Rl(e),$forceUpdate:e=>e.f||(e.f=()=>{Jr(e.update)}),$nextTick:e=>e.n||(e.n=lo.bind(e.proxy)),$watch:e=>wg.bind(e)}),as=(e,t)=>e!==et&&!e.__isScriptSetup&&Ve(e,t),jg={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:o,setupState:n,data:a,props:r,accessCache:s,type:i,appContext:l}=e;if(t[0]!=="$"){const g=s[t];if(g!==void 0)switch(g){case 1:return n[t];case 2:return a[t];case 4:return o[t];case 3:return r[t]}else{if(as(n,t))return s[t]=1,n[t];if(a!==et&&Ve(a,t))return s[t]=2,a[t];if(Ve(r,t))return s[t]=3,r[t];if(o!==et&&Ve(o,t))return s[t]=4,o[t];rs&&(s[t]=0)}}const u=Jn[t];let c,p;if(u)return t==="$attrs"&&Pt(e.attrs,"get",""),u(e);if((c=i.__cssModules)&&(c=c[t]))return c;if(o!==et&&Ve(o,t))return s[t]=4,o[t];if(p=l.config.globalProperties,Ve(p,t))return p[t]},set({_:e},t,o){const{data:n,setupState:a,ctx:r}=e;return as(a,t)?(a[t]=o,!0):n!==et&&Ve(n,t)?(n[t]=o,!0):Ve(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(r[t]=o,!0)},has({_:{data:e,setupState:t,accessCache:o,ctx:n,appContext:a,props:r,type:s}},i){let l;return!!(o[i]||e!==et&&i[0]!=="$"&&Ve(e,i)||as(t,i)||Ve(r,i)||Ve(n,i)||Ve(Jn,i)||Ve(a.config.globalProperties,i)||(l=s.__cssModules)&&l[i])},defineProperty(e,t,o){return o.get!=null?e._.accessCache[t]=0:Ve(o,"value")&&this.set(e,t,o.value,null),Reflect.defineProperty(e,t,o)}};function Pl(e){return xe(e)?e.reduce((t,o)=>(t[o]=null,t),{}):e}let rs=!0;function Ug(e){const t=Rl(e),o=e.proxy,n=e.ctx;rs=!1,t.beforeCreate&&Ml(t.beforeCreate,e,"bc");const{data:a,computed:r,methods:s,watch:i,provide:l,inject:u,created:c,beforeMount:p,mounted:g,beforeUpdate:w,updated:b,activated:y,deactivated:d,beforeDestroy:h,beforeUnmount:f,destroyed:m,unmounted:k,render:x,renderTracked:A,renderTriggered:S,errorCaptured:L,serverPrefetch:P,expose:z,inheritAttrs:W,components:re,directives:M,filters:F}=t;if(u&&Kg(u,n,null),s)for(const I in s){const ne=s[I];$e(ne)&&(n[I]=ne.bind(o))}if(a){const I=a.call(o,o);Ye(I)&&(e.data=pn(I))}if(rs=!0,r)for(const I in r){const ne=r[I],ge=$e(ne)?ne.bind(o,o):$e(ne.get)?ne.get.bind(o,o):oo,C=!$e(ne)&&$e(ne.set)?ne.set.bind(o):oo,ae=te({get:ge,set:C});Object.defineProperty(n,I,{enumerable:!0,configurable:!0,get:()=>ae.value,set:ie=>ae.value=ie})}if(i)for(const I in i)Nl(i[I],n,o,I);if(l){const I=$e(l)?l.call(o):l;Reflect.ownKeys(I).forEach(ne=>{Ft(ne,I[ne])})}c&&Ml(c,e,"c");function $(I,ne){xe(ne)?ne.forEach(ge=>I(ge.bind(o))):ne&&I(ne.bind(o))}if($($l,p),$(co,g),$(Ng,w),$(Rg,b),$(Tg,y),$(Pg,d),$(Dg,L),$(Fg,A),$(Og,S),$(uo,f),$(Wa,k),$(Ig,P),xe(z))if(z.length){const I=e.exposed||(e.exposed={});z.forEach(ne=>{Object.defineProperty(I,ne,{get:()=>o[ne],set:ge=>o[ne]=ge,enumerable:!0})})}else e.exposed||(e.exposed={});x&&e.render===oo&&(e.render=x),W!=null&&(e.inheritAttrs=W),re&&(e.components=re),M&&(e.directives=M),P&&os(e)}function Kg(e,t,o=oo){xe(e)&&(e=ss(e));for(const n in e){const a=e[n];let r;Ye(a)?"default"in a?r=Fe(a.from||n,a.default,!0):r=Fe(a.from||n):r=Fe(a),st(r)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>r.value,set:s=>r.value=s}):t[n]=r}}function Ml(e,t,o){Jt(xe(e)?e.map(n=>n.bind(t.proxy)):e.bind(t.proxy),t,o)}function Nl(e,t,o,n){let a=n.includes(".")?bl(o,n):()=>o[n];if(tt(e)){const r=t[e];$e(r)&&ct(a,r)}else if($e(e))ct(a,e.bind(o));else if(Ye(e))if(xe(e))e.forEach(r=>Nl(r,t,o,n));else{const r=$e(e.handler)?e.handler.bind(o):t[e.handler];$e(r)&&ct(a,r,e)}}function Rl(e){const t=e.type,{mixins:o,extends:n}=t,{mixins:a,optionsCache:r,config:{optionMergeStrategies:s}}=e.appContext,i=r.get(t);let l;return i?l=i:!a.length&&!o&&!n?l=t:(l={},a.length&&a.forEach(u=>Ya(l,u,s,!0)),Ya(l,t,s)),Ye(t)&&r.set(t,l),l}function Ya(e,t,o,n=!1){const{mixins:a,extends:r}=t;r&&Ya(e,r,o,!0),a&&a.forEach(s=>Ya(e,s,o,!0));for(const s in t)if(!(n&&s==="expose")){const i=zg[s]||o&&o[s];e[s]=i?i(e[s],t[s]):t[s]}return e}const zg={data:Il,props:Ol,emits:Ol,methods:Xn,computed:Xn,beforeCreate:Rt,created:Rt,beforeMount:Rt,mounted:Rt,beforeUpdate:Rt,updated:Rt,beforeDestroy:Rt,beforeUnmount:Rt,destroyed:Rt,unmounted:Rt,activated:Rt,deactivated:Rt,errorCaptured:Rt,serverPrefetch:Rt,components:Xn,directives:Xn,watch:Vg,provide:Il,inject:Hg};function Il(e,t){return t?e?function(){return dt($e(e)?e.call(this,this):e,$e(t)?t.call(this,this):t)}:t:e}function Hg(e,t){return Xn(ss(e),ss(t))}function ss(e){if(xe(e)){const t={};for(let o=0;ot==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${_t(t)}Modifiers`]||e[`${jt(t)}Modifiers`];function Jg(e,t,...o){if(e.isUnmounted)return;const n=e.vnode.props||et;let a=o;const r=t.startsWith("update:"),s=r&&qg(n,t.slice(7));s&&(s.trim&&(a=o.map(c=>tt(c)?c.trim():c)),s.number&&(a=a.map(Ca)));let i,l=n[i=Ir(t)]||n[i=Ir(_t(t))];!l&&r&&(l=n[i=Ir(jt(t))]),l&&Jt(l,e,6,a);const u=n[i+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[i])return;e.emitted[i]=!0,Jt(u,e,6,a)}}const Xg=new WeakMap;function Dl(e,t,o=!1){const n=o?Xg:t.emitsCache,a=n.get(e);if(a!==void 0)return a;const r=e.emits;let s={},i=!1;if(!$e(e)){const l=u=>{const c=Dl(u,t,!0);c&&(i=!0,dt(s,c))};!o&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!r&&!i?(Ye(e)&&n.set(e,null),null):(xe(r)?r.forEach(l=>s[l]=null):dt(s,r),Ye(e)&&n.set(e,s),s)}function qa(e,t){return!e||!ka(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),Ve(e,t[0].toLowerCase()+t.slice(1))||Ve(e,jt(t))||Ve(e,t))}function Zx(){}function Bl(e){const{type:t,vnode:o,proxy:n,withProxy:a,propsOptions:[r],slots:s,attrs:i,emit:l,render:u,renderCache:c,props:p,data:g,setupState:w,ctx:b,inheritAttrs:y}=e,d=Ga(e);let h,f;try{if(o.shapeFlag&4){const k=a||n,x=k;h=go(u.call(x,k,c,p,w,g,b)),f=i}else{const k=t;h=go(k.length>1?k(p,{attrs:i,slots:s,emit:l}):k(p,null)),f=t.props?i:Zg(i)}}catch(k){Ao.length=0,Hn(k,e,1),h=We(po)}let m=h;if(f&&y!==!1){const k=Object.keys(f),{shapeFlag:x}=m;k.length&&x&7&&(r&&k.some(wa)&&(f=Qg(f,r)),m=vn(m,f,!1,!0))}if(o.dirs&&(m=vn(m,null,!1,!0),m.dirs=m.dirs?m.dirs.concat(o.dirs):o.dirs),o.transition){const k=ja(m.type)&&kl(m)||m;ts(k,o.transition)}return h=m,Ga(d),h}const Zg=e=>{let t;for(const o in e)(o==="class"||o==="style"||ka(o))&&((t||(t={}))[o]=e[o]);return t},Qg=(e,t)=>{const o={};for(const n in e)(!wa(n)||!(n.slice(9)in t))&&(o[n]=e[n]);return o};function ef(e,t,o){const{props:n,children:a,component:r}=e,{props:s,children:i,patchFlag:l}=t,u=r.emitsOptions;if(t.dirs||t.transition)return!0;if(o&&l>=0){if(l&1024)return!0;if(l&16)return n?Gl(n,s,u):!!s;if(l&8){const c=t.dynamicProps;for(let p=0;pObject.create(Ul),zl=e=>Object.getPrototypeOf(e)===Ul;function of(e,t,o,n=!1){const a={},r=Kl();e.propsDefaults=Object.create(null),Hl(e,t,a,r);for(const s in e.propsOptions[0])s in a||(a[s]=void 0);o?e.props=n?a:eg(a):e.type.props?e.props=a:e.props=r,e.attrs=r}function nf(e,t,o,n){const{props:a,attrs:r,vnode:{patchFlag:s}}=e,i=Be(a),[l]=e.propsOptions;let u=!1;if((n||s>0)&&!(s&16)){if(s&8){const c=e.vnode.dynamicProps;for(let p=0;p{l=!0;const[g,w]=Vl(p,t,!0);dt(s,g),w&&i.push(...w)};!o&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}if(!r&&!l)return Ye(e)&&n.set(e,un),un;if(xe(r))for(let c=0;ce==="_"||e==="_ctx"||e==="$stable",cs=e=>xe(e)?e.map(go):[go(e)],rf=(e,t,o)=>{if(t._n)return t;const n=Vt((...a)=>cs(t(...a)),o);return n._c=!1,n},Yl=(e,t,o)=>{const n=e._ctx;for(const a in e){if(ls(a))continue;const r=e[a];if($e(r))t[a]=rf(a,r,n);else if(r!=null){const s=cs(r);t[a]=()=>s}}},ql=(e,t)=>{const o=cs(t);e.slots.default=()=>o},Jl=(e,t,o)=>{for(const n in t)(o||!ls(n))&&(e[n]=t[n])},sf=(e,t,o)=>{const n=e.slots=Kl();if(e.vnode.shapeFlag&32){const a=t._;a?(Jl(n,t,o),o&&Ni(n,"_",a,!0)):Yl(t,n)}else t&&ql(e,t)},lf=(e,t,o)=>{const{vnode:n,slots:a}=e;let r=!0,s=et;if(n.shapeFlag&32){const i=t._;i?o&&i===1?r=!1:Jl(a,t,o):(r=!t.$stable,Yl(t,a)),s=t}else t&&(ql(e,t),s={default:1});if(r)for(const i in a)!ls(i)&&s[i]==null&&delete a[i]},It=gf;function cf(e){return uf(e)}function uf(e,t){const o=La();o.__VUE__=!0;const{insert:n,remove:a,patchProp:r,createElement:s,createText:i,createComment:l,setText:u,setElementText:c,parentNode:p,nextSibling:g,setScopeId:w=oo,insertStaticContent:b}=e,y=(E,O,R,K=null,X=null,J=null,Z=void 0,Q=null,_=!!O.dynamicChildren)=>{if(E===O)return;E&&!ta(E,O)&&(K=Oe(E),ie(E,X,J,!0),E=null),O.patchFlag===-2&&(_=!1,O.dynamicChildren=null);const{type:v,ref:B,shapeFlag:V}=O;switch(v){case Zn:d(E,O,R,K);break;case po:h(E,O,R,K);break;case Ja:E==null&&f(O,R,K,Z);break;case Pe:re(E,O,R,K,X,J,Z,Q,_);break;default:V&1?x(E,O,R,K,X,J,Z,Q,_):V&6?M(E,O,R,K,X,J,Z,Q,_):(V&64||V&128)&&v.process(E,O,R,K,X,J,Z,Q,_,Xe)}B!=null&&X?qn(B,E&&E.ref,J,O||E,!O):B==null&&E&&E.ref!=null&&qn(E.ref,null,J,E,!0)},d=(E,O,R,K)=>{if(E==null)n(O.el=i(O.children),R,K);else{const X=O.el=E.el;O.children!==E.children&&u(X,O.children)}},h=(E,O,R,K)=>{E==null?n(O.el=l(O.children||""),R,K):O.el=E.el},f=(E,O,R,K)=>{[E.el,E.anchor]=b(E.children,O,R,K,E.el,E.anchor)},m=({el:E,anchor:O},R,K)=>{let X;for(;E&&E!==O;)X=g(E),n(E,R,K),E=X;n(O,R,K)},k=({el:E,anchor:O})=>{let R;for(;E&&E!==O;)R=g(E),a(E),E=R;a(O)},x=(E,O,R,K,X,J,Z,Q,_)=>{if(O.type==="svg"?Z="svg":O.type==="math"&&(Z="mathml"),E==null)A(O,R,K,X,J,Z,Q,_);else{const v=E.el&&E.el._isVueCE?E.el:null;try{v&&v._beginPatch(),P(E,O,X,J,Z,Q,_)}finally{v&&v._endPatch()}}},A=(E,O,R,K,X,J,Z,Q)=>{let _,v;const{props:B,shapeFlag:V,transition:ue,dirs:se}=E;if(_=E.el=s(E.type,J,B&&B.is,B),V&8?c(_,E.children):V&16&&L(E.children,_,null,K,X,us(E,J),Z,Q),se&&Xo(E,null,K,"created"),S(_,E,E.scopeId,Z,K),B){for(const Y in B)Y!=="value"&&!Dn(Y)&&r(_,Y,null,B[Y],J,K);"value"in B&&r(_,"value",null,B.value,J),(v=B.onVnodeBeforeMount)&&fo(v,K,E)}se&&Xo(E,null,K,"beforeMount");const G=df(X,ue);G&&ue.beforeEnter(_),n(_,O,R),((v=B&&B.onVnodeMounted)||G||se)&&It(()=>{try{v&&fo(v,K,E),G&&ue.enter(_),se&&Xo(E,null,K,"mounted")}finally{}},X)},S=(E,O,R,K,X)=>{if(R&&w(E,R),K)for(let J=0;J{for(let v=_;v{const Q=O.el=E.el;let{patchFlag:_,dynamicChildren:v,dirs:B}=O;_|=E.patchFlag&16;const V=E.props||et,ue=O.props||et;let se;if(R&&en(R,!1),(se=ue.onVnodeBeforeUpdate)&&fo(se,R,O,E),B&&Xo(O,E,R,"beforeUpdate"),R&&en(R,!0),v&&(!E.dynamicChildren||E.dynamicChildren.length!==v.length)&&(_=0,Z=!1,v=null),(V.innerHTML&&ue.innerHTML==null||V.textContent&&ue.textContent==null)&&c(Q,""),v?z(E.dynamicChildren,v,Q,R,K,us(O,X),J):Z||ne(E,O,Q,null,R,K,us(O,X),J,!1),_>0){if(_&16)W(Q,V,ue,R,X);else if(_&2&&V.class!==ue.class&&r(Q,"class",null,ue.class,X),_&4&&r(Q,"style",V.style,ue.style,X),_&8){const G=O.dynamicProps;for(let Y=0;Y{se&&fo(se,R,O,E),B&&Xo(O,E,R,"updated")},K)},z=(E,O,R,K,X,J,Z)=>{for(let Q=0;Q{if(O!==R){if(O!==et)for(const J in O)!Dn(J)&&!(J in R)&&r(E,J,O[J],null,X,K);for(const J in R){if(Dn(J))continue;const Z=R[J],Q=O[J];Z!==Q&&J!=="value"&&r(E,J,Q,Z,X,K)}"value"in R&&r(E,"value",O.value,R.value,X)}},re=(E,O,R,K,X,J,Z,Q,_)=>{const v=O.el=E?E.el:i(""),B=O.anchor=E?E.anchor:i("");let{patchFlag:V,dynamicChildren:ue,slotScopeIds:se}=O;se&&(Q=Q?Q.concat(se):se),E==null?(n(v,R,K),n(B,R,K),L(O.children||[],R,B,X,J,Z,Q,_)):V>0&&V&64&&ue&&E.dynamicChildren&&E.dynamicChildren.length===ue.length?(z(E.dynamicChildren,ue,R,X,J,Z,Q),(O.key!=null||X&&O===X.subTree)&&ds(E,O,!0)):ne(E,O,R,B,X,J,Z,Q,_)},M=(E,O,R,K,X,J,Z,Q,_)=>{O.slotScopeIds=Q,E==null?O.shapeFlag&512?X.ctx.activate(O,R,K,Z,_):F(O,R,K,X,J,Z,_):T(E,O,_)},F=(E,O,R,K,X,J,Z)=>{const Q=E.component=vf(E,K,X);if(Ha(E)&&(Q.ctx.renderer=Xe),kf(Q,!1,Z),Q.asyncDep){if(X&&X.registerDep(Q,$,Z),!E.el){const _=Q.subTree=We(po);h(null,_,O,R),E.placeholder=_.el}}else $(Q,E,O,R,X,J,Z)},T=(E,O,R)=>{const K=O.component=E.component;if(ef(E,O,R))if(K.asyncDep&&!K.asyncResolved){I(K,O,R);return}else K.next=O,K.update();else O.el=E.el,K.vnode=O},$=(E,O,R,K,X,J,Z)=>{const Q=()=>{if(E.isMounted){let{next:V,bu:ue,u:se,parent:G,vnode:Y}=E;{const U=Xl(E);if(U){V&&(V.el=Y.el,I(E,V,Z)),U.asyncDep.then(()=>{It(()=>{E.isUnmounted||v()},X)});return}}let me=V,Ae;en(E,!1),V?(V.el=Y.el,I(E,V,Z)):V=Y,ue&&Ea(ue),(Ae=V.props&&V.props.onVnodeBeforeUpdate)&&fo(Ae,G,V,Y),en(E,!0);const Ge=Bl(E),D=E.subTree;E.subTree=Ge,y(D,Ge,p(D.el),Oe(D),E,X,J),V.el=Ge.el,me===null&&tf(E,Ge.el),se&&It(se,X),(Ae=V.props&&V.props.onVnodeUpdated)&&It(()=>fo(Ae,G,V,Y),X)}else{let V;const{el:ue,props:se}=O,{bm:G,m:Y,parent:me,root:Ae,type:Ge}=E,D=yn(O);en(E,!1),G&&Ea(G),!D&&(V=se&&se.onVnodeBeforeMount)&&fo(V,me,O),en(E,!0);{Ae.ce&&Ae.ce._hasShadowRoot()&&Ae.ce._injectChildStyle(Ge,E.parent?E.parent.type:void 0);const U=E.subTree=Bl(E);y(null,U,R,K,E,X,J),O.el=U.el}if(Y&&It(Y,X),!D&&(V=se&&se.onVnodeMounted)){const U=O;It(()=>fo(V,me,U),X)}(O.shapeFlag&256||me&&yn(me.vnode)&&me.vnode.shapeFlag&256)&&E.a&&It(E.a,X),E.isMounted=!0,O=R=K=null}};E.scope.on();const _=E.effect=new Ui(Q);E.scope.off();const v=E.update=_.run.bind(_),B=E.job=_.runIfDirty.bind(_);B.i=E,B.id=E.uid,_.scheduler=()=>Jr(B),en(E,!0),v()},I=(E,O,R)=>{O.component=E;const K=E.vnode.props;E.vnode=O,E.next=null,nf(E,O.props,K,R),lf(E,O.children,R),ao(),pl(E),ro()},ne=(E,O,R,K,X,J,Z,Q,_=!1)=>{const v=E&&E.children,B=E?E.shapeFlag:0,V=O.children,{patchFlag:ue,shapeFlag:se}=O;if(ue>0){if(ue&128){C(v,V,R,K,X,J,Z,Q,_);return}else if(ue&256){ge(v,V,R,K,X,J,Z,Q,_);return}}se&8?(B&16&&Re(v,X,J),V!==v&&c(R,V)):B&16?se&16?C(v,V,R,K,X,J,Z,Q,_):Re(v,X,J,!0):(B&8&&c(R,""),se&16&&L(V,R,K,X,J,Z,Q,_))},ge=(E,O,R,K,X,J,Z,Q,_)=>{E=E||un,O=O||un;const v=E.length,B=O.length,V=Math.min(v,B);let ue;for(ue=0;ueB?Re(E,X,J,!0,!1,V):L(O,R,K,X,J,Z,Q,_,V)},C=(E,O,R,K,X,J,Z,Q,_)=>{let v=0;const B=O.length;let V=E.length-1,ue=B-1;for(;v<=V&&v<=ue;){const se=E[v],G=O[v]=_?So(O[v]):go(O[v]);if(ta(se,G))y(se,G,R,null,X,J,Z,Q,_);else break;v++}for(;v<=V&&v<=ue;){const se=E[V],G=O[ue]=_?So(O[ue]):go(O[ue]);if(ta(se,G))y(se,G,R,null,X,J,Z,Q,_);else break;V--,ue--}if(v>V){if(v<=ue){const se=ue+1,G=seue)for(;v<=V;)ie(E[v],X,J,!0),v++;else{const se=v,G=v,Y=new Map;for(v=G;v<=ue;v++){const ke=O[v]=_?So(O[v]):go(O[v]);ke.key!=null&&Y.set(ke.key,v)}let me,Ae=0;const Ge=ue-G+1;let D=!1,U=0;const he=new Array(Ge);for(v=0;v=Ge){ie(ke,X,J,!0);continue}let je;if(ke.key!=null)je=Y.get(ke.key);else for(me=G;me<=ue;me++)if(he[me-G]===0&&ta(ke,O[me])){je=me;break}je===void 0?ie(ke,X,J,!0):(he[je-G]=v+1,je>=U?U=je:D=!0,y(ke,O[je],R,null,X,J,Z,Q,_),Ae++)}const ve=D?pf(he):un;for(me=ve.length-1,v=Ge-1;v>=0;v--){const ke=G+v,je=O[ke],Ce=O[ke+1],xt=ke+1{const{el:J,type:Z,transition:Q,children:_,shapeFlag:v}=E;if(v&6){ae(E.component.subTree,O,R,K);return}if(v&128){E.suspense.move(O,R,K);return}if(v&64){Z.move(E,O,R,Xe);return}if(Z===Pe){n(J,O,R);for(let V=0;V<_.length;V++)ae(_[V],O,R,K);n(E.anchor,O,R);return}if(Z===Ja){m(E,O,R);return}if(K!==2&&v&1&&Q)if(K===0)Q.persisted&&!J[es]?n(J,O,R):(Q.beforeEnter(J),n(J,O,R),It(()=>Q.enter(J),X));else{const{leave:V,delayLeave:ue,afterLeave:se}=Q,G=()=>{E.ctx.isUnmounted?a(J):n(J,O,R)},Y=()=>{const me=J._isLeaving||!!J[es];J._isLeaving&&J[es](!0),Q.persisted&&!me?G():V(J,()=>{G(),se&&se()})};ue?ue(J,G,Y):Y()}else n(J,O,R)},ie=(E,O,R,K=!1,X=!1)=>{const{type:J,props:Z,ref:Q,children:_,dynamicChildren:v,shapeFlag:B,patchFlag:V,dirs:ue,cacheIndex:se,memo:G}=E;if(V===-2&&(X=!1),Q!=null&&(ao(),qn(Q,null,R,E,!0),ro()),se!=null&&(O.renderCache[se]=void 0),B&256){O.ctx.deactivate(E);return}const Y=B&1&&ue,me=!yn(E);let Ae;if(me&&(Ae=Z&&Z.onVnodeBeforeUnmount)&&fo(Ae,O,E),B&6)Me(E.component,R,K);else{if(B&128){E.suspense.unmount(R,K);return}Y&&Xo(E,null,O,"beforeUnmount"),B&64?E.type.remove(E,O,R,Xe,K):v&&!v.hasOnce&&(J!==Pe||V>0&&V&64)?Re(v,O,R,!1,!0):(J===Pe&&V&384||!X&&B&16)&&Re(_,O,R),K&&le(E)}const Ge=G!=null&&se==null;(me&&(Ae=Z&&Z.onVnodeUnmounted)||Y||Ge)&&It(()=>{Ae&&fo(Ae,O,E),Y&&Xo(E,null,O,"unmounted"),Ge&&(E.el=null)},R)},le=E=>{const{type:O,el:R,anchor:K,transition:X}=E;if(O===Pe){we(R,K);return}if(O===Ja){k(E);return}const J=()=>{a(R),X&&!X.persisted&&X.afterLeave&&X.afterLeave()};if(E.shapeFlag&1&&X&&!X.persisted){const{leave:Z,delayLeave:Q}=X,_=()=>Z(R,J);Q?Q(E.el,J,_):_()}else J()},we=(E,O)=>{let R;for(;E!==O;)R=g(E),a(E),E=R;a(O)},Me=(E,O,R)=>{const{bum:K,scope:X,job:J,subTree:Z,um:Q,m:_,a:v}=E;Zl(_),Zl(v),K&&Ea(K),X.stop(),J&&(J.flags|=8,ie(Z,E,O,R)),Q&&It(Q,O),It(()=>{E.isUnmounted=!0},O)},Re=(E,O,R,K=!1,X=!1,J=0)=>{for(let Z=J;Z{if(E.shapeFlag&6)return Oe(E.component.subTree);if(E.shapeFlag&128)return E.suspense.next();const O=g(E.anchor||E.el),R=O&&O[yl];return R?g(R):O};let Ie=!1;const Je=(E,O,R)=>{let K;E==null?O._vnode&&(ie(O._vnode,null,null,!0),K=O._vnode.component):y(O._vnode||null,E,O,null,null,null,R),O._vnode=E,Ie||(Ie=!0,pl(K),gl(),Ie=!1)},Xe={p:y,um:ie,m:ae,r:le,mt:F,mc:L,pc:ne,pbc:z,n:Oe,o:e};return{render:Je,hydrate:void 0,createApp:Yg(Je)}}function us({type:e,props:t},o){return o==="svg"&&e==="foreignObject"||o==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:o}function en({effect:e,job:t},o){o?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function df(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function ds(e,t,o=!1){const n=e.children,a=t.children;if(xe(n)&&xe(a))for(let r=0;r>1,e[o[i]]0&&(t[n]=o[r-1]),o[r]=n)}}for(r=o.length,s=o[r-1];r-- >0;)o[r]=s,s=t[s];return o}function Xl(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Xl(t)}function Zl(e){if(e)for(let t=0;te.__isSuspense;function gf(e,t){t&&t.pendingBranch?xe(e)?t.effects.push(...e):t.effects.push(e):bg(e)}const Pe=Symbol.for("v-fgt"),Zn=Symbol.for("v-txt"),po=Symbol.for("v-cmt"),Ja=Symbol.for("v-stc"),Ao=[];let Kt=null;function H(e=!1){Ao.push(Kt=e?null:[])}function ps(){Ao.pop(),Kt=Ao[Ao.length-1]||null}let Qn=1;function Xa(e,t=!1){Qn+=e,e<0&&Kt&&t&&(Kt.hasOnce=!0)}function tc(e){return e.dynamicChildren=Qn>0?Kt||un:null,ps(),Qn>0&&Kt&&Kt.push(e),e}function ee(e,t,o,n,a,r){return tc(N(e,t,o,n,a,r,!0))}function pt(e,t,o,n,a){return tc(We(e,t,o,n,a,!0))}function ea(e){return e?e.__v_isVNode===!0:!1}function ta(e,t){return e.type===t.type&&e.key===t.key}const oc=({key:e})=>e??null,Za=({ref:e,ref_key:t,ref_for:o})=>(typeof e=="number"&&(e=""+e),e!=null?tt(e)||st(e)||$e(e)?{i:$t,r:e,k:t,f:!!o}:e:null);function N(e,t=null,o=null,n=0,a=null,r=e===Pe?0:1,s=!1,i=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&oc(t),ref:t&&Za(t),scopeId:hl,slotScopeIds:null,children:o,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:r,patchFlag:n,dynamicProps:a,dynamicChildren:null,appContext:null,ctx:$t};return i?(Qa(l,o),r&128&&e.normalize(l)):o&&(l.shapeFlag|=tt(o)?8:16),Qn>0&&!s&&Kt&&(l.patchFlag>0||r&6)&&l.patchFlag!==32&&Kt.push(l),l}const We=ff;function ff(e,t=null,o=null,n=0,a=null,r=!1){if((!e||e===El)&&(e=po),ea(e)){const i=vn(e,t,!0);return o&&Qa(i,o),Qn>0&&!r&&Kt&&(i.shapeFlag&6?Kt[Kt.indexOf(e)]=i:Kt.push(i)),i.patchFlag=-2,i}if(Ef(e)&&(e=e.__vccOpts),t){t=hf(t);let{class:i,style:l}=t;i&&!tt(i)&&(t.class=Ne(i)),Ye(l)&&(Oa(l)&&!xe(l)&&(l=dt({},l)),t.style=rt(l))}const s=tt(e)?1:ec(e)?128:ja(e)?64:Ye(e)?4:$e(e)?2:0;return N(e,t,o,n,a,s,r,!0)}function hf(e){return e?Oa(e)||zl(e)?dt({},e):e:null}function vn(e,t,o=!1,n=!1){const{props:a,ref:r,patchFlag:s,children:i,transition:l}=e,u=t?bf(a||{},t):a,c={__v_isVNode:!0,__v_skip:!0,type:e.type,props:u,key:u&&oc(u),ref:t&&t.ref?o&&r?xe(r)?r.concat(Za(t)):[r,Za(t)]:Za(t):r,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:i,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Pe?s===-1?16:s|16:s,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&vn(e.ssContent),ssFallback:e.ssFallback&&vn(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&n&&ts(c,l.clone(c)),c}function mt(e=" ",t=0){return We(Zn,null,e,t)}function mf(e,t){const o=We(Ja,null,e);return o.staticCount=t,o}function ye(e="",t=!1){return t?(H(),pt(po,null,e)):We(po,null,e)}function go(e){return e==null||typeof e=="boolean"?We(po):xe(e)?We(Pe,null,e.slice()):ea(e)?So(e):We(Zn,null,String(e))}function So(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:vn(e)}function Qa(e,t){let o=0;const{shapeFlag:n}=e;if(t==null)t=null;else if(xe(t))o=16;else if(typeof t=="object")if(n&65){const a=t.default;a&&(a._c&&(a._d=!1),Qa(e,a()),a._c&&(a._d=!0));return}else{o=32;const a=t._;!a&&!zl(t)?t._ctx=$t:a===3&&$t&&($t.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if($e(t)){if(n&65){Qa(e,{default:t});return}t={default:t,_ctx:$t},o=32}else t=String(t),n&64?(o=16,t=[mt(t)]):o=8;e.children=t,e.shapeFlag|=o}function bf(...e){const t={};for(let o=0;oCt||$t;let er,oa;{const e=La(),t=(o,n)=>{let a;return(a=e[o])||(a=e[o]=[]),a.push(n),r=>{a.length>1?a.forEach(s=>s(r)):a[0](r)}};er=t("__VUE_INSTANCE_SETTERS__",o=>Ct=o),oa=t("__VUE_SSR_SETTERS__",o=>kn=o)}const na=e=>{const t=Ct;return er(e),e.scope.on(),()=>{e.scope.off(),er(t)}},nc=()=>{Ct&&Ct.scope.off(),er(null)};function ac(e){return e.vnode.shapeFlag&4}let kn=!1;function kf(e,t=!1,o=!1){t&&oa(t);const{props:n,children:a}=e.vnode,r=ac(e);of(e,n,r,t),sf(e,a,o||t);const s=r?wf(e,t):void 0;return t&&oa(!1),s}function wf(e,t){const o=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,jg);const{setup:n}=o;if(n){ao();const a=e.setupContext=n.length>1?Af(e):null,r=na(e),s=hn(n,e,0,[e.props,a]),i=Pi(s);if(ro(),r(),(i||e.sp)&&!yn(e)&&os(e),i){if(s.then(nc,nc),t)return s.then(l=>{oa(!0);try{rc(e,l,t)}finally{oa(!1)}}).catch(l=>{Hn(l,e,0)});e.asyncDep=s}else rc(e,s)}else sc(e)}function rc(e,t,o){$e(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:Ye(t)&&(e.setupState=il(t)),sc(e)}function sc(e,t,o){const n=e.type;e.render||(e.render=n.render||oo);{const a=na(e);ao();try{Ug(e)}finally{ro(),a()}}}const xf={get(e,t){return Pt(e,"get",""),e[t]}};function Af(e){const t=o=>{e.exposed=o||{}};return{attrs:new Proxy(e.attrs,xf),slots:e.slots,emit:e.emit,expose:t}}function tr(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(il(qo(e.exposed)),{get(t,o){if(o in t)return t[o];if(o in Jn)return Jn[o](e)},has(t,o){return o in t||o in Jn}})):e.proxy}const Sf=/(?:^|[-_])\w/g,$f=e=>e.replace(Sf,t=>t.toUpperCase()).replace(/[-_]/g,"");function ic(e,t=!0){return $e(e)?e.displayName||e.name:e.name||t&&e.__name}function lc(e,t,o=!1){let n=ic(t);if(!n&&t.__file){const a=t.__file.match(/([^/\\]+)\.\w+$/);a&&(n=a[1])}if(!n&&e){const a=r=>{for(const s in r)if(r[s]===t)return s};n=a(e.components)||e.parent&&a(e.parent.type.components)||a(e.appContext.components)}return n?$f(n):o?"App":"Anonymous"}function Ef(e){return $e(e)&&"__vccOpts"in e}const te=(e,t)=>lg(e,t,kn);function cc(e,t,o){try{Xa(-1);const n=arguments.length;return n===2?Ye(t)&&!xe(t)?ea(t)?We(e,null,[t]):We(e,t):We(e,null,t):(n>3?o=Array.prototype.slice.call(arguments,2):n===3&&ea(o)&&(o=[o]),We(e,t,o))}finally{Xa(1)}}const Cf="3.5.42";/** * @vue/runtime-dom v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let ds;const lc=typeof window<"u"&&window.trustedTypes;if(lc)try{ds=lc.createPolicy("vue",{createHTML:e=>e})}catch{}const cc=ds?e=>ds.createHTML(e):e=>e,Ef="http://www.w3.org/2000/svg",Cf="http://www.w3.org/1998/Math/MathML",Eo=typeof document<"u"?document:null,uc=Eo&&Eo.createElement("template"),Lf={insert:(e,t,o)=>{t.insertBefore(e,o||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,o,n)=>{const a=t==="svg"?Eo.createElementNS(Ef,e):t==="mathml"?Eo.createElementNS(Cf,e):o?Eo.createElement(e,{is:o}):Eo.createElement(e);return e==="select"&&n&&n.multiple!=null&&a.setAttribute("multiple",n.multiple),a},createText:e=>Eo.createTextNode(e),createComment:e=>Eo.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Eo.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,o,n,a,r){const s=o?o.previousSibling:t.lastChild;if(a&&(a===r||a.nextSibling))for(;t.insertBefore(a.cloneNode(!0),o),!(a===r||!(a=a.nextSibling)););else{uc.innerHTML=cc(n==="svg"?`${e}`:n==="mathml"?`${e}`:e);const i=uc.content;if(n==="svg"||n==="mathml"){const l=i.firstChild;for(;l.firstChild;)i.appendChild(l.firstChild);i.removeChild(l)}t.insertBefore(i,o)}return[s?s.nextSibling:t.firstChild,o?o.previousSibling:t.lastChild]}},Tf=Symbol("_vtc");function Pf(e,t,o){const n=e[Tf];n&&(t=(t?[t,...n]:[...n]).join(" ")),t==null?e.removeAttribute("class"):o?e.setAttribute("class",t):e.className=t}const dc=Symbol("_vod"),Mf=Symbol("_vsh"),Nf=Symbol(""),Rf=/(?:^|;)\s*display\s*:/;function If(e,t,o){const n=e.style,a=tt(o);let r=!1;if(o&&!a){if(t)if(tt(t))for(const s of t.split(";")){const i=s.slice(0,s.indexOf(":")).trim();o[i]==null&&aa(n,i,"")}else for(const s in t)o[s]==null&&aa(n,s,"");for(const s in o){s==="display"&&(r=!0);const i=o[s];i!=null?Ff(e,s,!tt(t)&&t?t[s]:void 0,i)||aa(n,s,i):aa(n,s,"")}}else if(a){if(t!==o){const s=n[Nf];s&&(o+=";"+s),n.cssText=o,r=Rf.test(o)}}else t&&e.removeAttribute("style");dc in e&&(e[dc]=r?n.display:"",e[Mf]&&(n.display="none"))}const tr=/\s*!important$/;function aa(e,t,o){if(xe(o))o.forEach(n=>aa(e,t,n));else if(o==null&&(o=""),t.startsWith("--"))tr.test(o)?e.setProperty(t,o.replace(tr,""),"important"):e.setProperty(t,o);else{const n=Of(e,t);tr.test(o)?e.setProperty(jt(n),o.replace(tr,""),"important"):e[n]=o}}const pc=["Webkit","Moz","ms"],ps={};function Of(e,t){const o=ps[t];if(o)return o;let n=_t(t);if(n!=="filter"&&n in e)return ps[t]=n;n=Sa(n);for(let a=0;ags||(Kf.then(()=>gs=0),gs=Date.now());function Hf(e,t){const o=n=>{if(!n._vts)n._vts=Date.now();else if(n._vts<=o.attached)return;const a=o.value;if(xe(a)){const r=n.stopImmediatePropagation;n.stopImmediatePropagation=()=>{r.call(n),n._stopped=!0};const s=a.slice(),i=[n];for(let l=0;le.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Vf=(e,t,o,n,a,r)=>{const s=a==="svg";t==="class"?Pf(e,n,s):t==="style"?If(e,o,n):va(t)?ka(t)||Bf(e,t,o,n,r):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Wf(e,t,n,s))?(hc(e,t,n),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&fc(e,t,n,s,r,t!=="value")):e._isVueCE&&(Yf(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!tt(n)))?hc(e,_t(t),n,r,t):(t==="true-value"?e._trueValue=n:t==="false-value"&&(e._falseValue=n),fc(e,t,n,s))};function Wf(e,t,o,n){if(n)return!!(t==="innerHTML"||t==="textContent"||t in e&&bc(t)&&$e(o));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const a=e.tagName;if(a==="IMG"||a==="VIDEO"||a==="CANVAS"||a==="SOURCE")return!1}return bc(t)&&tt(o)?!1:t in e}function Yf(e,t){const o=e._def.props;if(!o)return!1;const n=_t(t);return Array.isArray(o)?o.some(a=>_t(a)===n):Object.keys(o).some(a=>_t(a)===n)}const yc={};function qf(e,t,o){let n=Yn(e,t);wa(n)&&(n=dt({},n,t));class a extends fs{constructor(s){super(n,s,o)}}return a.def=n,a}const Jf=typeof HTMLElement<"u"?HTMLElement:class{};class fs extends Jf{constructor(t,o={},n=xc){super(),this._def=t,this._props=o,this._createApp=n,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._patching=!1,this._dirty=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._styleAnchors=new WeakMap,this._ob=null,this.shadowRoot&&n!==xc?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(dt({},t.shadowRootOptions,{mode:"open"})),this._root=this.shadowRoot):this._root=this}connectedCallback(){if(!this.isConnected)return;!this.shadowRoot&&!this._resolved&&this._parseSlots(),this._connected=!0;let t=this;for(;t=t&&(t.assignedSlot||t.parentNode||t.host);)if(t instanceof fs){this._parent=t;break}this._instance||(this._resolved?this._mount(this._def):t&&t._pendingResolve?this._pendingResolve=t._pendingResolve.then(()=>{if(this._pendingResolve=void 0,this.isConnected)return this._resolveDef()}):this._resolveDef())}_setParent(t=this._parent){t&&(this._instance.parent=t._instance,this._inheritParentContext(t))}_inheritParentContext(t=this._parent){t&&this._app&&Object.setPrototypeOf(this._app._context.provides,t._instance.provides)}disconnectedCallback(){this._connected=!1,lo(()=>{this._connected||(this._ob&&(this._ob.disconnect(),this._ob=null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null,this._teleportTargets&&(this._teleportTargets.clear(),this._teleportTargets=void 0))})}_processMutations(t){for(const o of t)this._setAttr(o.attributeName)}_resolveDef(){if(this._pendingResolve)return this._pendingResolve;for(let n=0;n{this._resolved=!0,this._pendingResolve=void 0;const{props:r,styles:s}=n;let i;if(r&&!xe(r))for(const l in r){const u=r[l];(u===Number||u&&u.type===Number)&&(l in this._props&&(this._props[l]=Mi(this._props[l])),(i||(i=Object.create(null)))[_t(l)]=!0)}this._numberProps=i,this._resolveProps(n),this.shadowRoot&&this._applyStyles(s),this._mount(n)},o=this._def.__asyncLoader;if(o)return this._pendingResolve=o().then(n=>{n.configureApp=this._def.configureApp,t(this._def=n,!0)}),this._pendingResolve;t(this._def)}_mount(t){this._app=this._createApp(t),this._inheritParentContext(),t.configureApp&&t.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);const o=this._instance&&this._instance.exposed;if(o)for(const n in o)Ve(this,n)||Object.defineProperty(this,n,{get:()=>_e(o[n])})}_resolveProps(t){const{props:o}=t,n=xe(o)?o:Object.keys(o||{});for(const a of Object.keys(this))a[0]!=="_"&&n.includes(a)&&this._setProp(a,this[a]);for(const a of n.map(_t))Object.defineProperty(this,a,{get(){return this._getProp(a)},set(r){this._setProp(a,r,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const o=this.hasAttribute(t);let n=o?this.getAttribute(t):yc;const a=_t(t);o&&this._numberProps&&this._numberProps[a]&&(n=Mi(n)),this._setProp(a,n,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,o,n=!0,a=!1){if(o!==this._props[t]&&(this._dirty=!0,o===yc?delete this._props[t]:(this._props[t]=o,t==="key"&&this._app&&(this._app._ceVNode.key=o)),a&&this._instance&&this._update(),n)){const r=this._ob;r&&(this._processMutations(r.takeRecords()),r.disconnect()),o===!0?this.setAttribute(jt(t),""):typeof o=="string"||typeof o=="number"?this.setAttribute(jt(t),o+""):o||this.removeAttribute(jt(t)),r&&r.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),rh(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const o=We(this._def,dt(t,this._props));return this._instance||(o.ce=n=>{this._instance=n,n.ce=this,n.isCE=!0;const a=(r,s)=>{this.dispatchEvent(new CustomEvent(r,wa(s[0])?dt({detail:s},s[0]):{detail:s}))};n.emit=(r,...s)=>{a(r,s),jt(r)!==r&&a(jt(r),s)},this._setParent()}),o}_applyStyles(t,o,n){if(!t)return;if(o){if(o===this._def||this._styleChildren.has(o))return;this._styleChildren.add(o)}const a=this._nonce,r=this.shadowRoot,s=n?this._getStyleAnchor(n)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(r);let i=null;for(let l=t.length-1;l>=0;l--){const u=document.createElement("style");a&&u.setAttribute("nonce",a),u.textContent=t[l],r.insertBefore(u,i||s),i=u,l===0&&(n||this._styleAnchors.set(this._def,u),o&&this._styleAnchors.set(o,u))}}_getStyleAnchor(t){if(!t)return null;const o=this._styleAnchors.get(t);return o&&o.parentNode===this.shadowRoot?o:(o&&this._styleAnchors.delete(t),null)}_getRootStyleInsertionAnchor(t){for(let o=0;o{const t=e.props["onUpdate:modelValue"]||!1;return xe(t)?o=>$a(t,o):t};function Xf(e){e.target.composing=!0}function _c(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const on=Symbol("_assign"),nr=Symbol("_initialValue");function hs(e,t,o){return t&&(e=e.trim()),o&&(e=Ea(e)),e}const Zf={created(e,{modifiers:{lazy:t,trim:o,number:n}},a){e.parentNode&&(e.type==="text"?e[nr]=e.defaultValue.replace(/[\r\n]/g,""):e.type==="textarea"&&(e[nr]=e.defaultValue.replace(/\r\n?/g,` -`))),e[on]=or(a);const r=n||a.props&&a.props.type==="number";tn(e,t?"change":"input",s=>{s.target.composing||e[on](hs(e.value,o,r))}),(o||r)&&tn(e,"change",()=>{e.value=hs(e.value,o,r)}),t||(tn(e,"compositionstart",Xf),tn(e,"compositionend",_c),tn(e,"change",_c))},mounted(e,{value:t,modifiers:{trim:o,number:n}}){const a=t??"",r=e[nr];delete e[nr],r!==void 0&&(e.type==="text"||e.type==="textarea")&&e.value!==r?e[on](hs(e.value,o,n)):e.value=a},beforeUpdate(e,{value:t,oldValue:o,modifiers:{lazy:n,trim:a,number:r}},s){if(e[on]=or(s),e.composing)return;const i=(r||e.type==="number")&&!/^0\d/.test(e.value)?Ea(e.value):e.value,l=t??"";if(i===l)return;const u=e.getRootNode();(u instanceof Document||u instanceof ShadowRoot)&&u.activeElement===e&&e.type!=="range"&&(n&&t===o||a&&e.value.trim()===l)||(e.value=l)}},Qf={deep:!0,created(e,{value:t,modifiers:{number:o}},n){e._modelValue=t,tn(e,"change",()=>{const a=Array.prototype.filter.call(e.options,l=>l.selected).map(l=>o?Ea(ar(l)):ar(l)),r=e.multiple,s=r?Wo(e._modelValue)?new Set(a):a:a[0],i=e._pendingValue=[r,r?xe(s)?a.slice():a:s];try{e[on](s)}finally{lo(()=>{e._pendingValue===i&&(e._pendingValue=void 0)})}}),e[on]=or(n)},mounted(e,{value:t}){vc(e,t)},beforeUpdate(e,{value:t},o){e._modelValue=t,e[on]=or(o)},updated(e,{value:t}){const o=e._pendingValue;e._pendingValue=void 0,(!o||o[0]!==e.multiple||!eh(t,o[1],o[0]))&&vc(e,t)}};function eh(e,t,o){if(!o||xe(e))return Ro(e,t);if(Wo(e)){if(e.size!==t.length)return!1;for(const n of t)if(!e.has(n))return!1;return!0}return!1}function vc(e,t){const o=e.multiple,n=xe(t);if(!(o&&!n&&!Wo(t))){for(let a=0,r=e.options.length;aString(u)===String(i)):s.selected=Mp(t,i)>-1}else s.selected=t.has(i);else if(Ro(ar(s),t)){e.selectedIndex!==a&&(e.selectedIndex=a);return}}!o&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function ar(e){return"_value"in e?e._value:e.value}const th=["ctrl","shift","alt","meta"],oh={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>th.some(o=>e[`${o}Key`]&&!t.includes(o))},vt=(e,t)=>{if(!e)return e;const o=e._withMods||(e._withMods={}),n=t.join(".");return o[n]||(o[n]=(a,...r)=>{for(let s=0;s{const o=e._withKeys||(e._withKeys={}),n=t.join(".");return o[n]||(o[n]=a=>{if(!("key"in a))return;const r=jt(a.key);if(t.some(s=>s===r||nh[s]===r))return e(a)})},ah=dt({patchProp:Vf},Lf);let kc;function wc(){return kc||(kc=sf(ah))}const rh=(...e)=>{wc().render(...e)},xc=(...e)=>{const t=wc().createApp(...e),{mount:o}=t;return t.mount=n=>{const a=ih(n);if(!a)return;const r=t._component;!$e(r)&&!r.render&&!r.template&&(r.template=a.innerHTML),a.nodeType===1&&(a.textContent="");const s=o(a,!1,sh(a));return a instanceof Element&&(a.removeAttribute("v-cloak"),a.setAttribute("data-v-app","")),s},t};function sh(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function ih(e){return tt(e)?document.querySelector(e):e}/*! +**/let gs;const uc=typeof window<"u"&&window.trustedTypes;if(uc)try{gs=uc.createPolicy("vue",{createHTML:e=>e})}catch{}const dc=gs?e=>gs.createHTML(e):e=>e,Lf="http://www.w3.org/2000/svg",Tf="http://www.w3.org/1998/Math/MathML",Eo=typeof document<"u"?document:null,pc=Eo&&Eo.createElement("template"),Pf={insert:(e,t,o)=>{t.insertBefore(e,o||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,o,n)=>{const a=t==="svg"?Eo.createElementNS(Lf,e):t==="mathml"?Eo.createElementNS(Tf,e):o?Eo.createElement(e,{is:o}):Eo.createElement(e);return e==="select"&&n&&n.multiple!=null&&a.setAttribute("multiple",n.multiple),a},createText:e=>Eo.createTextNode(e),createComment:e=>Eo.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Eo.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,o,n,a,r){const s=o?o.previousSibling:t.lastChild;if(a&&(a===r||a.nextSibling))for(;t.insertBefore(a.cloneNode(!0),o),!(a===r||!(a=a.nextSibling)););else{pc.innerHTML=dc(n==="svg"?`${e}`:n==="mathml"?`${e}`:e);const i=pc.content;if(n==="svg"||n==="mathml"){const l=i.firstChild;for(;l.firstChild;)i.appendChild(l.firstChild);i.removeChild(l)}t.insertBefore(i,o)}return[s?s.nextSibling:t.firstChild,o?o.previousSibling:t.lastChild]}},Mf=Symbol("_vtc");function Nf(e,t,o){const n=e[Mf];n&&(t=(t?[t,...n]:[...n]).join(" ")),t==null?e.removeAttribute("class"):o?e.setAttribute("class",t):e.className=t}const gc=Symbol("_vod"),Rf=Symbol("_vsh"),If=Symbol(""),Of=/(?:^|;)\s*display\s*:/;function Ff(e,t,o){const n=e.style,a=tt(o);let r=!1;if(o&&!a){if(t)if(tt(t))for(const s of t.split(";")){const i=s.slice(0,s.indexOf(":")).trim();o[i]==null&&aa(n,i,"")}else for(const s in t)o[s]==null&&aa(n,s,"");for(const s in o){s==="display"&&(r=!0);const i=o[s];i!=null?Bf(e,s,!tt(t)&&t?t[s]:void 0,i)||aa(n,s,i):aa(n,s,"")}}else if(a){if(t!==o){const s=n[If];s&&(o+=";"+s),n.cssText=o,r=Of.test(o)}}else t&&e.removeAttribute("style");gc in e&&(e[gc]=r?n.display:"",e[Rf]&&(n.display="none"))}const or=/\s*!important$/;function aa(e,t,o){if(xe(o))o.forEach(n=>aa(e,t,n));else if(o==null&&(o=""),t.startsWith("--"))or.test(o)?e.setProperty(t,o.replace(or,""),"important"):e.setProperty(t,o);else{const n=Df(e,t);or.test(o)?e.setProperty(jt(n),o.replace(or,""),"important"):e[n]=o}}const fc=["Webkit","Moz","ms"],fs={};function Df(e,t){const o=fs[t];if(o)return o;let n=_t(t);if(n!=="filter"&&n in e)return fs[t]=n;n=$a(n);for(let a=0;ahs||(Hf.then(()=>hs=0),hs=Date.now());function Wf(e,t){const o=n=>{if(!n._vts)n._vts=Date.now();else if(n._vts<=o.attached)return;const a=o.value;if(xe(a)){const r=n.stopImmediatePropagation;n.stopImmediatePropagation=()=>{r.call(n),n._stopped=!0};const s=a.slice(),i=[n];for(let l=0;le.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Yf=(e,t,o,n,a,r)=>{const s=a==="svg";t==="class"?Nf(e,n,s):t==="style"?Ff(e,o,n):ka(t)?wa(t)||jf(e,t,o,n,r):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):qf(e,t,n,s))?(bc(e,t,n),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&mc(e,t,n,s,r,t!=="value")):e._isVueCE&&(Jf(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!tt(n)))?bc(e,_t(t),n,r,t):(t==="true-value"?e._trueValue=n:t==="false-value"&&(e._falseValue=n),mc(e,t,n,s))};function qf(e,t,o,n){if(n)return!!(t==="innerHTML"||t==="textContent"||t in e&&_c(t)&&$e(o));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const a=e.tagName;if(a==="IMG"||a==="VIDEO"||a==="CANVAS"||a==="SOURCE")return!1}return _c(t)&&tt(o)?!1:t in e}function Jf(e,t){const o=e._def.props;if(!o)return!1;const n=_t(t);return Array.isArray(o)?o.some(a=>_t(a)===n):Object.keys(o).some(a=>_t(a)===n)}const vc={};function Xf(e,t,o){let n=Yn(e,t);xa(n)&&(n=dt({},n,t));class a extends ms{constructor(s){super(n,s,o)}}return a.def=n,a}const Zf=typeof HTMLElement<"u"?HTMLElement:class{};class ms extends Zf{constructor(t,o={},n=Sc){super(),this._def=t,this._props=o,this._createApp=n,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._patching=!1,this._dirty=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._styleAnchors=new WeakMap,this._ob=null,this.shadowRoot&&n!==Sc?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(dt({},t.shadowRootOptions,{mode:"open"})),this._root=this.shadowRoot):this._root=this}connectedCallback(){if(!this.isConnected)return;!this.shadowRoot&&!this._resolved&&this._parseSlots(),this._connected=!0;let t=this;for(;t=t&&(t.assignedSlot||t.parentNode||t.host);)if(t instanceof ms){this._parent=t;break}this._instance||(this._resolved?this._mount(this._def):t&&t._pendingResolve?this._pendingResolve=t._pendingResolve.then(()=>{if(this._pendingResolve=void 0,this.isConnected)return this._resolveDef()}):this._resolveDef())}_setParent(t=this._parent){t&&(this._instance.parent=t._instance,this._inheritParentContext(t))}_inheritParentContext(t=this._parent){t&&this._app&&Object.setPrototypeOf(this._app._context.provides,t._instance.provides)}disconnectedCallback(){this._connected=!1,lo(()=>{this._connected||(this._ob&&(this._ob.disconnect(),this._ob=null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null,this._teleportTargets&&(this._teleportTargets.clear(),this._teleportTargets=void 0))})}_processMutations(t){for(const o of t)this._setAttr(o.attributeName)}_resolveDef(){if(this._pendingResolve)return this._pendingResolve;for(let n=0;n{this._resolved=!0,this._pendingResolve=void 0;const{props:r,styles:s}=n;let i;if(r&&!xe(r))for(const l in r){const u=r[l];(u===Number||u&&u.type===Number)&&(l in this._props&&(this._props[l]=Ri(this._props[l])),(i||(i=Object.create(null)))[_t(l)]=!0)}this._numberProps=i,this._resolveProps(n),this.shadowRoot&&this._applyStyles(s),this._mount(n)},o=this._def.__asyncLoader;if(o)return this._pendingResolve=o().then(n=>{n.configureApp=this._def.configureApp,t(this._def=n,!0)}),this._pendingResolve;t(this._def)}_mount(t){this._app=this._createApp(t),this._inheritParentContext(),t.configureApp&&t.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);const o=this._instance&&this._instance.exposed;if(o)for(const n in o)Ve(this,n)||Object.defineProperty(this,n,{get:()=>_e(o[n])})}_resolveProps(t){const{props:o}=t,n=xe(o)?o:Object.keys(o||{});for(const a of Object.keys(this))a[0]!=="_"&&n.includes(a)&&this._setProp(a,this[a]);for(const a of n.map(_t))Object.defineProperty(this,a,{get(){return this._getProp(a)},set(r){this._setProp(a,r,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const o=this.hasAttribute(t);let n=o?this.getAttribute(t):vc;const a=_t(t);o&&this._numberProps&&this._numberProps[a]&&(n=Ri(n)),this._setProp(a,n,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,o,n=!0,a=!1){if(o!==this._props[t]&&(this._dirty=!0,o===vc?delete this._props[t]:(this._props[t]=o,t==="key"&&this._app&&(this._app._ceVNode.key=o)),a&&this._instance&&this._update(),n)){const r=this._ob;r&&(this._processMutations(r.takeRecords()),r.disconnect()),o===!0?this.setAttribute(jt(t),""):typeof o=="string"||typeof o=="number"?this.setAttribute(jt(t),o+""):o||this.removeAttribute(jt(t)),r&&r.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),ih(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const o=We(this._def,dt(t,this._props));return this._instance||(o.ce=n=>{this._instance=n,n.ce=this,n.isCE=!0;const a=(r,s)=>{this.dispatchEvent(new CustomEvent(r,xa(s[0])?dt({detail:s},s[0]):{detail:s}))};n.emit=(r,...s)=>{a(r,s),jt(r)!==r&&a(jt(r),s)},this._setParent()}),o}_applyStyles(t,o,n){if(!t)return;if(o){if(o===this._def||this._styleChildren.has(o))return;this._styleChildren.add(o)}const a=this._nonce,r=this.shadowRoot,s=n?this._getStyleAnchor(n)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(r);let i=null;for(let l=t.length-1;l>=0;l--){const u=document.createElement("style");a&&u.setAttribute("nonce",a),u.textContent=t[l],r.insertBefore(u,i||s),i=u,l===0&&(n||this._styleAnchors.set(this._def,u),o&&this._styleAnchors.set(o,u))}}_getStyleAnchor(t){if(!t)return null;const o=this._styleAnchors.get(t);return o&&o.parentNode===this.shadowRoot?o:(o&&this._styleAnchors.delete(t),null)}_getRootStyleInsertionAnchor(t){for(let o=0;o{const t=e.props["onUpdate:modelValue"]||!1;return xe(t)?o=>Ea(t,o):t};function Qf(e){e.target.composing=!0}function kc(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const on=Symbol("_assign"),ar=Symbol("_initialValue");function bs(e,t,o){return t&&(e=e.trim()),o&&(e=Ca(e)),e}const eh={created(e,{modifiers:{lazy:t,trim:o,number:n}},a){e.parentNode&&(e.type==="text"?e[ar]=e.defaultValue.replace(/[\r\n]/g,""):e.type==="textarea"&&(e[ar]=e.defaultValue.replace(/\r\n?/g,` +`))),e[on]=nr(a);const r=n||a.props&&a.props.type==="number";tn(e,t?"change":"input",s=>{s.target.composing||e[on](bs(e.value,o,r))}),(o||r)&&tn(e,"change",()=>{e.value=bs(e.value,o,r)}),t||(tn(e,"compositionstart",Qf),tn(e,"compositionend",kc),tn(e,"change",kc))},mounted(e,{value:t,modifiers:{trim:o,number:n}}){const a=t??"",r=e[ar];delete e[ar],r!==void 0&&(e.type==="text"||e.type==="textarea")&&e.value!==r?e[on](bs(e.value,o,n)):e.value=a},beforeUpdate(e,{value:t,oldValue:o,modifiers:{lazy:n,trim:a,number:r}},s){if(e[on]=nr(s),e.composing)return;const i=(r||e.type==="number")&&!/^0\d/.test(e.value)?Ca(e.value):e.value,l=t??"";if(i===l)return;const u=e.getRootNode();(u instanceof Document||u instanceof ShadowRoot)&&u.activeElement===e&&e.type!=="range"&&(n&&t===o||a&&e.value.trim()===l)||(e.value=l)}},th={deep:!0,created(e,{value:t,modifiers:{number:o}},n){e._modelValue=t,tn(e,"change",()=>{const a=Array.prototype.filter.call(e.options,l=>l.selected).map(l=>o?Ca(rr(l)):rr(l)),r=e.multiple,s=r?Wo(e._modelValue)?new Set(a):a:a[0],i=e._pendingValue=[r,r?xe(s)?a.slice():a:s];try{e[on](s)}finally{lo(()=>{e._pendingValue===i&&(e._pendingValue=void 0)})}}),e[on]=nr(n)},mounted(e,{value:t}){wc(e,t)},beforeUpdate(e,{value:t},o){e._modelValue=t,e[on]=nr(o)},updated(e,{value:t}){const o=e._pendingValue;e._pendingValue=void 0,(!o||o[0]!==e.multiple||!oh(t,o[1],o[0]))&&wc(e,t)}};function oh(e,t,o){if(!o||xe(e))return Ro(e,t);if(Wo(e)){if(e.size!==t.length)return!1;for(const n of t)if(!e.has(n))return!1;return!0}return!1}function wc(e,t){const o=e.multiple,n=xe(t);if(!(o&&!n&&!Wo(t))){for(let a=0,r=e.options.length;aString(u)===String(i)):s.selected=Rp(t,i)>-1}else s.selected=t.has(i);else if(Ro(rr(s),t)){e.selectedIndex!==a&&(e.selectedIndex=a);return}}!o&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function rr(e){return"_value"in e?e._value:e.value}const nh=["ctrl","shift","alt","meta"],ah={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>nh.some(o=>e[`${o}Key`]&&!t.includes(o))},vt=(e,t)=>{if(!e)return e;const o=e._withMods||(e._withMods={}),n=t.join(".");return o[n]||(o[n]=(a,...r)=>{for(let s=0;s{const o=e._withKeys||(e._withKeys={}),n=t.join(".");return o[n]||(o[n]=a=>{if(!("key"in a))return;const r=jt(a.key);if(t.some(s=>s===r||rh[s]===r))return e(a)})},sh=dt({patchProp:Yf},Pf);let xc;function Ac(){return xc||(xc=cf(sh))}const ih=(...e)=>{Ac().render(...e)},Sc=(...e)=>{const t=Ac().createApp(...e),{mount:o}=t;return t.mount=n=>{const a=ch(n);if(!a)return;const r=t._component;!$e(r)&&!r.render&&!r.template&&(r.template=a.innerHTML),a.nodeType===1&&(a.textContent="");const s=o(a,!1,lh(a));return a instanceof Element&&(a.removeAttribute("v-cloak"),a.setAttribute("data-v-app","")),s},t};function lh(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function ch(e){return tt(e)?document.querySelector(e):e}/*! * pinia v2.3.1 * (c) 2025 Eduardo San Martin Morote * @license MIT - */let Ac;const rr=e=>Ac=e,Sc=Symbol();function bs(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var ra;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(ra||(ra={}));function lh(){const e=Ir(!0),t=e.run(()=>de({}));let o=[],n=[];const a=qo({install(r){rr(a),a._a=r,r.provide(Sc,a),r.config.globalProperties.$pinia=a,n.forEach(s=>o.push(s)),n=[]},use(r){return this._a?o.push(r):n.push(r),this},_p:o,_a:null,_e:e,_s:new Map,state:t});return a}const $c=()=>{};function Ec(e,t,o,n=$c){e.push(t);const a=()=>{const r=e.indexOf(t);r>-1&&(e.splice(r,1),n())};return!o&&Bi()&&Np(a),a}function wn(e,...t){e.slice().forEach(o=>{o(...t)})}const ch=e=>e(),Cc=Symbol(),ys=Symbol();function _s(e,t){e instanceof Map&&t instanceof Map?t.forEach((o,n)=>e.set(n,o)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const o in t){if(!t.hasOwnProperty(o))continue;const n=t[o],a=e[o];bs(a)&&bs(n)&&e.hasOwnProperty(o)&&!st(n)&&!vo(n)?e[o]=_s(a,n):e[o]=n}return e}const uh=Symbol();function dh(e){return!bs(e)||!e.hasOwnProperty(uh)}const{assign:Fo}=Object;function ph(e){return!!(st(e)&&e.effect)}function gh(e,t,o,n){const{state:a,actions:r,getters:s}=t,i=o.state.value[e];let l;function u(){i||(o.state.value[e]=a?a():{});const c=tg(o.state.value[e]);return Fo(c,r,Object.keys(s||{}).reduce((p,g)=>(p[g]=qo(te(()=>{rr(o);const k=o._s.get(e);return s[g].call(k,k)})),p),{}))}return l=Lc(e,u,t,o,n,!0),l}function Lc(e,t,o={},n,a,r){let s;const i=Fo({actions:{}},o),l={deep:!0};let u,c,p=[],g=[],k;const w=n.state.value[e];!r&&!w&&(n.state.value[e]={});let _;function d(T){let I;u=c=!1,typeof T=="function"?(T(n.state.value[e]),I={type:ra.patchFunction,storeId:e,events:k}):(_s(n.state.value[e],T),I={type:ra.patchObject,payload:T,storeId:e,events:k});const H=_=Symbol();lo().then(()=>{_===H&&(u=!0)}),c=!0,wn(p,I,n.state.value[e])}const h=r?function(){const{state:I}=o,H=I?I():{};this.$patch(W=>{Fo(W,H)})}:$c;function f(){s.stop(),p=[],g=[],n._s.delete(e)}const m=(T,I="")=>{if(Cc in T)return T[ys]=I,T;const H=function(){rr(n);const W=Array.from(arguments),re=[],P=[];function $(N){re.push(N)}function M(N){P.push(N)}wn(g,{args:W,name:H[ys],store:x,after:$,onError:M});let C;try{C=T.apply(this&&this.$id===e?this:x,W)}catch(N){throw wn(P,N),N}return C instanceof Promise?C.then(N=>(wn(re,N),N)).catch(N=>(wn(P,N),Promise.reject(N))):(wn(re,C),C)};return H[Cc]=!0,H[ys]=I,H},v={_p:n,$id:e,$onAction:Ec.bind(null,g),$patch:d,$reset:h,$subscribe(T,I={}){const H=Ec(p,T,I.detached,()=>W()),W=s.run(()=>ct(()=>n.state.value[e],re=>{(I.flush==="sync"?c:u)&&T({storeId:e,type:ra.direct,events:k},re)},Fo({},l,I)));return H},$dispose:f},x=pn(v);n._s.set(e,x);const S=(n._a&&n._a.runWithContext||ch)(()=>n._e.run(()=>(s=Ir()).run(()=>t({action:m}))));for(const T in S){const I=S[T];if(st(I)&&!ph(I)||vo(I))r||(w&&dh(I)&&(st(I)?I.value=w[T]:_s(I,w[T])),n.state.value[e][T]=I);else if(typeof I=="function"){const H=m(I,T);S[T]=H,i.actions[T]=I}}return Fo(x,S),Fo(Be(x),S),Object.defineProperty(x,"$state",{get:()=>n.state.value[e],set:T=>{d(I=>{Fo(I,T)})}}),n._p.forEach(T=>{Fo(x,s.run(()=>T({store:x,app:n._a,pinia:n,options:i})))}),w&&r&&o.hydrate&&o.hydrate(x.$state,w),u=!0,c=!0,x}/*! #__NO_SIDE_EFFECTS__ */function vs(e,t,o){let n,a;const r=typeof t=="function";typeof e=="string"?(n=e,a=r?o:t):(a=e,n=e.id);function s(i,l){const u=mg();return i=i||(u?Fe(Sc,null):null),i&&rr(i),i=Ac,i._s.has(n)||(r?Lc(n,t,a,i):gh(n,a,i)),i._s.get(n)}return s.$id=n,s}const ks="__doxaMapToken",ws="doxa:map-token",Tc="__doxaMapTokenBridge",xn=()=>{if(typeof window>"u")return"";const e=window[ks];return typeof e=="string"?e:""};function Pc(e){if(typeof window>"u")return"";const t=typeof e=="string"?e.trim():"";if(!t||t===xn())return xn();window[ks]=t;try{window.dispatchEvent(new CustomEvent(ws,{detail:t}))}catch{}return t}function fh(){if(typeof window>"u"||window[Tc])return;const e=typeof window.MAP_TOKEN=="string"?window.MAP_TOKEN:"";e&&!xn()&&(window[ks]=e);try{Object.defineProperty(window,"MAP_TOKEN",{configurable:!0,get(){return xn()},set(t){Pc(t)}}),window[Tc]=!0}catch{}}function hh(){fh();const e=de(xn());if(typeof window<"u"){const t=()=>{e.value=xn()};window.addEventListener(ws,t);try{uo(()=>window.removeEventListener(ws,t))}catch{}}return e}function Mc(e){return Eg({loader:e,onError(t,o,n,a){a<=3?setTimeout(o,a*500):n()}})}const mh={backToLegend:"العودة إلى المفتاح",closeDetailView:"إغلاق عرض التفاصيل"},bh={prayForThem:"صلِّ من أجلهم",adoptThem:"تبنَّهم",moreInfo:"مزيد من المعلومات",zoomIn:"تكبير",zoomOut:"تصغير",switchToLightMode:"التبديل إلى الوضع الفاتح",switchToDarkMode:"التبديل إلى الوضع الداكن",resetView:"إعادة تعيين العرض",toggleFullscreen:"تبديل ملء الشاشة",aboutThisMap:"حول هذه الخريطة",closeMenu:"إغلاق القائمة",reloadMap:"إعادة تحميل الخريطة",showClusters:"إظهار المجموعات",clusterSettings:"إعدادات المجموعات",startAutoFly:"بدء الطيران التلقائي",stopFlight:"إيقاف الطيران",speedLabel:"السرعة:",speedOption:{slow:"بطيء",normal:"عادي",fast:"سريع"},shareEmbed:"مشاركة وتضمين"},yh={labels:{country:"الدولة:",population:"السكان:",language:"اللغة:",religion:"الديانة:",languageFamily:"العائلة اللغوية:",peopleCommitted:"ملتزمون بالصلاة:"},messages:{noDescription:"لا يوجد وصف متاح."}},_h={title:{prayer:"تقدم الصلاة",engagement:"تقدم الانخراط",adoption:"تقدم التبني",languageFamilies:"العائلات اللغوية",doxaRegions:"مناطق Doxa",affinityBlocs:"كتل القرابة",gospelResources:"موارد الإنجيل"},header:{collapsed:"وسيلة الإيضاح",peopleGroupFallback:"مجموعة الشعب"},prayer:{needsPrayer:"يحتاج إلى صلاة",hasPrayer:"لديه صلاة",fullPrayerCoverage:"تغطية صلاة كاملة"},progress:{title:"التقدم",covered:"{covered} من {total} مجموعة شعبية مغطاة بالصلاة · {pct}%",short:"{covered} من {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"يحتاج إلى انخراط",hasEngagement:"لديه انخراط"},adoption:{needsAdoption:"يحتاج إلى تبني",hasAdoption:"لديه تبني"},columns:{upgs:"UUPGs",population:"السكان",name:"الاسم"},footer:{total:"الإجمالي"},sortByUpgs:"ترتيب حسب UUPG",sortByPop:"ترتيب حسب السكان",colLabel:{religion:"ديانات UUPG",prayer:"حالة الصلاة",engagement:"حالة المشاركة",adoption:"حالة التبني",status:"الحالة"},titleBar:{legend:"مفتاح الخريطة",peopleGroups:"الشعوب",wagfRegions:"مناطق WAGF",languages:"اللغات"}},vh={menuComingSoon:"القائمة قادمة قريباً"},kh={clusterByRegion:"حسب منطقة Doxa",clusterByLanguageFamily:"حسب العائلة اللغوية",clusterByGospelResource:"حسب مورد الإنجيل"},wh={header:"دورة الصلاة الحالية",lap:"الدورة",upgs:"UUPGs",separator:" من "},xh={"%count% people groups in %countries% countries":"%count% مجموعة بشرية في %countries% دولة","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"تضم %region% %count% مجموعة بشرية في %countries% دولة. يشير لون كل نقطة إلى عدد الأشخاص الذين يصلّون من أجل تلك المجموعة البشرية.","1+ People Praying":"شخص واحد أو أكثر يصلّي","100+ People Praying":"أكثر من 100 شخص يصلّون",Adopted:"تم انتماؤه","Adoption Progress":"تقدُّم الإنتماء","All Regions":"جميع المناطق","Alternate Names":"الأسماء البديلة","Clear All":"مسح الكل",Countries:"الدول","Countries in this region":"الدول في هذه المنطقة",Country:"الدولة",Engaged:"مُنخرَط","Engagement Progress":"تقدُّم الانخراط","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"كل مجموعة بشرية غير مبشرة تتبناها كنيسة ملتزمة بالصلاة والعطاء والإرسال","Exact Search":"بحث دقيق","Find unreached people groups by region and country.":"ابحث عن المجموعات البشرية غير المُبلَّغة حسب المنطقة والدولة.","Full Profile":"الملف الشخصي الكامل",Goal:"الهدف","Hide Filters":"إخفاء المرشحات",Intercessors:"المتشفعين","Load More":"تحميل المزيد","Loading results...":"النتائج قيد التحميل...","Mobilize 100+ people praying daily for each DOXA people group":"حشد أكثر من 100 شخص للصلاة يوميًا من أجل كل مجموعة بشرية من مجموعات دوكسا","No One Praying":"لا أحد يصلّي","No options found":"لم يتم العثور على أي خيارات","No unengaged people groups by 2033":"الهدف هو القضاء على جميع الشعوب الغير مخدومة روحيا بحلول عام 2033","Not Adopted":"لم يتم انتماؤه",Other:"أخرى","Page Not Found":"الصفحة غير موجودة","People Group":"مجموعة بشرية","People Groups":"مجموعات بشرية","People committed to praying":"الأشخاص الذين التزموا بالصلاة",Population:"عدد السكان","Prayer Coverage":"التغطية المستمرة بالصلاة","Prayer coverage progress":"تقدم تغطية الصلاة",Regions:"المناطق",Religion:"الدين","Search names, country/continent, religions...":"إبحث عن الأسماء، الدولة/القارة، الأديان...","See %region% dashboard":"عرض لوحة معلومات %region%","See All":"عرض جميع العناصر",Select:"اختر","Show Filters":"إظهار عوامل التصفية","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"توجد %count% مجموعات بشرية في %country%. تحقق من الخريطة لمعرفة المجموعات البشرية الواقعة على حدود هذه الدولة أيضًا.",Total:"المجموع","Type to search...":"اكتب ما تريد البحث عنه...","Unengaged people groups":"الشعوب الغير متفاعلة","WAGF Block":"كتلة WAGF","WAGF Region":"منطقة WAGF","people groups adopted":"الشعوب المنتمية","people groups engaged":"مجموعات بشرية مُنخرِطة"},Ah={placeholder:"شعب، مكان، لغة، ديانة",labels:{people:"الشعب:",place:"المكان:",language:"اللغة:",religion:"الديانة:"},kinds:{people:"الشعب + الدولة",peopleGroup:"الشعب",bloc:"كتلة التقارب",cluster:"مجموعة شعوب",country:"الدولة",region:"المنطقة",family:"عائلة اللغة",languageKind:"اللغة",dialect:"اللهجة",religionKind:"الدين"}},Sh={prayer:"الصلاة",adoption:"التبني",engagement:"المشاركة","affinity-blocks":"الشعوب",regions:"المناطق",countries:"الدول","language-families":"اللغات",religion:"الأديان",family:"عائلة اللغة",language:"اللغة",dialect:"اللهجة/التنوع",bloc:"كتلة التقارب",cluster:"المجموعة",group:"الشعب",pgic:"الشعب في الدولة",region:"منطقة WAGF",block:"كتلة WAGF",country:"الدولة"},$h={backToLegend:"Zurück zur Legende",closeDetailView:"Detailansicht schließen"},Eh={prayForThem:"Für sie beten",adoptThem:"Sie adoptieren",moreInfo:"Mehr Infos",zoomIn:"Vergrößern",zoomOut:"Verkleinern",switchToLightMode:"Zum hellen Modus wechseln",switchToDarkMode:"Zum dunklen Modus wechseln",resetView:"Ansicht zurücksetzen",toggleFullscreen:"Vollbild umschalten",aboutThisMap:"Über diese Karte",closeMenu:"Menü schließen",reloadMap:"Karte neu laden",showClusters:"Cluster anzeigen",clusterSettings:"Cluster-Einstellungen",startAutoFly:"Auto-Flug starten",stopFlight:"Flug stoppen",speedLabel:"Geschwindigkeit:",speedOption:{slow:"Langsam",normal:"Normal",fast:"Schnell"},shareEmbed:"Teilen und einbetten"},Ch={labels:{country:"Land:",population:"Bevölkerung:",language:"Sprache:",religion:"Religion:",languageFamily:"Sprachfamilie:",peopleCommitted:"Zum Gebet verpflichtet:"},messages:{noDescription:"Keine Beschreibung verfügbar."}},Lh={title:{prayer:"Gebetsfortschritt",engagement:"Engagement-Fortschritt",adoption:"Adoptionsfortschritt",languageFamilies:"Sprachfamilien",doxaRegions:"Doxa-Regionen",affinityBlocs:"Affinitätsblöcke",gospelResources:"Evangeliumsressourcen"},header:{collapsed:"Legende",peopleGroupFallback:"Volksgruppe"},prayer:{needsPrayer:"Braucht Gebet",hasPrayer:"Hat Gebet",fullPrayerCoverage:"Vollständige Gebetsabdeckung"},progress:{title:"Fortschritt",covered:"{covered} von {total} Volksgruppen im Gebet abgedeckt · {pct}%",short:"{covered} von {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Braucht Engagement",hasEngagement:"Hat Engagement"},adoption:{needsAdoption:"Braucht Adoption",hasAdoption:"Hat Adoption"},columns:{upgs:"UUPGs",population:"Bevölkerung"},footer:{total:"Gesamt"}},Th={menuComingSoon:"Menü folgt in Kürze"},Ph={clusterByRegion:"Nach Doxa-Region",clusterByLanguageFamily:"Nach Sprachfamilie",clusterByGospelResource:"Nach Evangeliumsressource"},Mh={header:"AKTUELLE GEBETSRUNDE",lap:"Runde",upgs:"UUPGs",separator:" von "},Nh={"%count% people groups in %countries% countries":"%count% Volksgruppen in %countries% Ländern","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% hat %count% Volksgruppen in %countries% Ländern. Die Farbe jedes Punktes zeigt, wie viele Menschen für diese Volksgruppe beten.","1+ People Praying":"1+ Menschen beten","100+ People Praying":"100+ Menschen beten",Adopted:"Angenommen","Adoption Progress":"Adoptionsfortschritt","All Regions":"Alle Regionen","Alternate Names":"Alternative Namen","Clear All":"Alle löschen",Countries:"Länder","Countries in this region":"Länder in dieser Region",Country:"Land",Engaged:"Engagiert","Engagement Progress":"Engagement-Fortschritt","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Jede einzelne der völlig unerreichten Volksgruppen soll von einer Ortsgemeinde adoptiert werden, durch Beten, Geben und Senden","Exact Search":"Exakte Suche","Find unreached people groups by region and country.":"Finde unerreichte Volksgruppen nach Region und Land.","Full Profile":"Vollständiges Profil",Goal:"Ziel","Hide Filters":"Filter ausblenden",Intercessors:"Fürbitter","Load More":"Mehr laden","Loading results...":"Ergebnisse werden geladen...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilisiere 100+ Menschen, die täglich für jede DOXA-Volksgruppe beten","No One Praying":"Niemand betet","No options found":"Keine Standorte gefunden","No unengaged people groups by 2033":"Dass es bis 2033 keine völlig unerreichte Volksgruppe mehr gibt","Not Adopted":"noch nicht adoptiert",Other:"Andere","Page Not Found":"Seite nicht gefunden","People Group":"Personengruppe","People Groups":"Volksgruppen","People committed to praying":"Menschen, die sich dem Beten verpflichtet haben",Population:"Bevölkerung","Prayer Coverage":"Gebetsabdeckung","Prayer coverage progress":"Fortschritt der Gebetsabdeckung",Regions:"Regionen",Religion:"Primäre Religion","Search names, country/continent, religions...":"Suche nach Namen, Land/Kontinent, Religionen...","See %region% dashboard":"Dashboard anzeigen: %region%","See All":"Alle anzeigen",Select:"Auswählen","Show Filters":"Filter anzeigen","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"In %country% gibt es %count% Volksgruppen. Sieh auch auf der Karte nach den Volksgruppen an der Grenze dieses Landes.",Total:"Gesamt","Type to search...":"Geben Sie etwas ein, um danach zu suchen","Unengaged people groups":"Völlig unerreichte Volksgruppen","WAGF Block":"WAGF-Block","WAGF Region":"WAGF-Region","people groups adopted":"adoptierte Volksgruppen","people groups engaged":"engagierte Volksgruppen"},Rh={placeholder:"Volk, Ort, Sprache, Religion",labels:{people:"Volk:",place:"Ort:",language:"Sprache:",religion:"Religion:"},sections:{within:"Innerhalb {selection}",allData:"Alle DOXA-Daten"}},Ih={prayer:"Gebet",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Volksgruppen",regions:"Regionen",countries:"Länder","language-families":"Sprachen",religion:"Religionen",family:"Sprachfamilie",language:"Sprache",dialect:"Dialekt/Varietät",bloc:"Affinitätsblock",cluster:"Cluster",group:"Volksgruppe",pgic:"Volksgruppe im Land",region:"WAGF-Region",block:"WAGF-Block",country:"Land"},Oh={backToLegend:"Back to Legend",closeDetailView:"Close detail view"},Fh={prayForThem:"Pray for them",adoptThem:"Adopt",moreInfo:"More info",zoomIn:"Zoom in",zoomOut:"Zoom out",switchToLightMode:"Switch to light mode",switchToDarkMode:"Switch to dark mode",resetView:"Reset view",toggleFullscreen:"Toggle fullscreen",aboutThisMap:"About this map",closeMenu:"Close menu",reloadMap:"Reload Map",showClusters:"Show Clusters",clusterSettings:"Cluster Settings",startAutoFly:"Start Auto Fly",stopFlight:"Stop Flight",speedLabel:"Speed:",speedOption:{slow:"Slow",normal:"Normal",fast:"Fast"},shareEmbed:"Share & embed",shareSteps:["Embed this map on your site","Create a list of the websites in your city","Train them to embed it too","Train them to train others to embed it too","Multiply maps everywhere for Jesus!"],share:"Share"},Dh={labels:{country:"Country:",population:"Population:",language:"Language:",religion:"Religion:",languageFamily:"Language Family:",peopleCommitted:"Committed to pray:"},messages:{noDescription:"No description available."}},Bh={title:{prayer:"Prayer Progress",engagement:"Engagement Progress",adoption:"Adoption Progress",languageFamilies:"Language Families",doxaRegions:"Doxa Regions",affinityBlocs:"Affinity Blocks",gospelResources:"Gospel Resources"},header:{default:"Legend",collapsed:"Legend",peopleGroupFallback:"People Group"},prayer:{needsPrayer:"Needs Prayer",hasPrayer:"Has Prayer",fullPrayerCoverage:"Full Prayer Coverage"},progress:{title:"Progress",covered:"{covered} of {total} people groups covered in prayer · {pct}%",short:"{covered} of {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Unengaged",hasEngagement:"Engaged"},adoption:{needsAdoption:"Needs Adoption",hasAdoption:"Has Adoption"},columns:{upgs:"UUPGs",population:"Population",name:"Name"},footer:{total:"Total"},sortByUpgs:"Sort by UUPGs",sortByPop:"Sort by Population",colLabel:{religion:"UUPG Religions",prayer:"Prayer Status",engagement:"Engagement Status",adoption:"Adoption Status",status:"Status"},titleBar:{legend:"Legend",peopleGroups:"People Groups",wagfRegions:"WAGF Regions",languages:"Languages"}},Gh={menuComingSoon:"Menu coming soon"},jh={clusterByRegion:"By Doxa Region",clusterByLanguageFamily:"By Language Family",clusterByGospelResource:"By Gospel Resource"},Uh={country:{wagfRegion:"WAGF Region",wagfBlock:"WAGF Bloc",country:"Country",uupgCount:"UUPG Count"}},Kh={header:"CURRENT PRAYER LAP",lap:"Lap",upgs:"UUPGs",separator:" of "},zh={"%count% people groups in %countries% countries":"%count% people groups in %countries% countries","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.","1+ People Praying":"1+ People Praying","100+ People Praying":"100+ People Praying",Adopted:"Adopted","Adoption Progress":"Adoption Progress","All Regions":"All Regions","Alternate Names":"Alternate Names","Clear All":"Clear All",Countries:"Countries","Countries in this region":"Countries in this region",Country:"Country",Engaged:"Engaged","Engagement Progress":"Engagement Progress","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Every unengaged people group adopted by a church committed to prayer, giving, and sending","Exact Search":"Exact Search","Find unreached people groups by region and country.":"Find unreached people groups by region and country.","Full Profile":"Full Profile",Goal:"Goal","Hide Filters":"Hide Filters",Intercessors:"Intercessors","Load More":"Load More","Loading results...":"Loading results...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilize 100+ people praying daily for each DOXA people group","No One Praying":"No One Praying","No options found":"No options found","No unengaged people groups by 2033":"No unengaged people groups by 2033","Not Adopted":"Not Adopted",Other:"Other","Page Not Found":"Page Not Found","People Group":"People Group","People Groups":"People Groups","People committed to praying":"People committed to praying",Population:"Population","Prayer Coverage":"Prayer Coverage","Prayer coverage progress":"Prayer coverage progress",Regions:"Regions",Religion:"Religion","Search names, country/continent, religions...":"Search names, country/continent, religions...","See %region% dashboard":"See %region% dashboard","See All":"See All",Select:"Select","Show Filters":"Show Filters","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.",Total:"Total","Type to search...":"Type to search...","Unengaged people groups":"Unengaged people groups","WAGF Block":"WAGF Block","WAGF Region":"WAGF Region","people groups adopted":"people groups adopted","people groups engaged":"people groups engaged","View country posters":"View country posters","Hide country posters":"Hide country posters","No poster has been generated for this country yet.":"No poster has been generated for this country yet."},Hh={placeholder:"People, place, language, religion",labels:{people:"People:",place:"Place:",language:"Language:",religion:"Religion:"},kinds:{people:"People Group + Country",peopleGroup:"People Group",bloc:"Affinity Block",cluster:"People Cluster",country:"Country",region:"Region",family:"Language Family",languageKind:"Language",dialect:"Dialect",religionKind:"Religion"},sections:{within:"Within {selection}",allData:"All DOXA Data"}},Vh={prayer:"Prayer",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"People Groups (Affinity)",regions:"Regions",countries:"Countries","language-families":"Languages",religion:"Religions",family:"Lang Family",language:"Language",dialect:"Dialect/Variety",bloc:"Affinity Block",cluster:"Cluster",group:"People Group",pgic:"PG in Country",region:"WAGF Region",block:"WAGF Bloc",country:"Country"},Wh={backToLegend:"Volver a la leyenda",closeDetailView:"Cerrar vista de detalle"},Yh={prayForThem:"Ora por ellos",adoptThem:"Adóptalos",moreInfo:"Más información",zoomIn:"Acercar",zoomOut:"Alejar",switchToLightMode:"Cambiar a modo claro",switchToDarkMode:"Cambiar a modo oscuro",resetView:"Restablecer vista",toggleFullscreen:"Alternar pantalla completa",aboutThisMap:"Acerca de este mapa",closeMenu:"Cerrar menú",reloadMap:"Recargar mapa",showClusters:"Mostrar clústeres",clusterSettings:"Ajustes de clústeres",startAutoFly:"Iniciar vuelo automático",stopFlight:"Detener vuelo",speedLabel:"Velocidad:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Compartir e incrustar"},qh={labels:{country:"País:",population:"Población:",language:"Idioma:",religion:"Religión:",languageFamily:"Familia lingüística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"No hay descripción disponible."}},Jh={title:{prayer:"Progreso de oración",engagement:"Progreso de implicación",adoption:"Progreso de adopción",languageFamilies:"Familias lingüísticas",doxaRegions:"Regiones Doxa",affinityBlocs:"Bloques de afinidad",gospelResources:"Recursos del Evangelio"},header:{collapsed:"Leyenda",peopleGroupFallback:"Grupo de personas"},prayer:{needsPrayer:"Necesita oración",hasPrayer:"Tiene oración",fullPrayerCoverage:"Cobertura de oración completa"},progress:{title:"Progreso",covered:"{covered} de {total} grupos de personas cubiertos en oración · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesita implicación",hasEngagement:"Tiene implicación"},adoption:{needsAdoption:"Necesita adopción",hasAdoption:"Tiene adopción"},columns:{upgs:"UUPGs",population:"Población",name:"Nombre"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por población",colLabel:{religion:"Religiones UUPG",prayer:"Estado de oración",engagement:"Estado de compromiso",adoption:"Estado de adopción",status:"Estado"},titleBar:{legend:"Leyenda",peopleGroups:"Pueblos",wagfRegions:"Regiones WAGF",languages:"Idiomas"}},Xh={menuComingSoon:"Menú próximamente"},Zh={clusterByRegion:"Por región Doxa",clusterByLanguageFamily:"Por familia lingüística",clusterByGospelResource:"Por recurso del Evangelio"},Qh={header:"VUELTA DE ORACIÓN ACTUAL",lap:"Vuelta",upgs:"UUPGs",separator:" de "},em={"%count% people groups in %countries% countries":"%count% grupos étnicos en %countries% países","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% tiene %count% grupos étnicos en %countries% países. El color de cada punto indica cuántas personas oran por ese grupo étnico.","1+ People Praying":"1+ personas orando","100+ People Praying":"100+ personas orando",Adopted:"Aprobado","Adoption Progress":"Progreso de la adopción","All Regions":"Todas las regiones","Alternate Names":"Nombres alternativos","Clear All":"Borrar todo",Countries:"Países","Countries in this region":"Países de esta región",Country:"País",Engaged:"Comprometido","Engagement Progress":"Progreso del compromiso","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Cada grupo étnico no evangelizado adoptado por una iglesia comprometida con la oración, la ofrenda y el envío.","Exact Search":"Búsqueda exacta","Find unreached people groups by region and country.":"Encuentra grupos étnicos no alcanzados por región y país.","Full Profile":"Perfil completo",Goal:"Meta","Hide Filters":"Ocultar filtros",Intercessors:"Intercesores","Load More":"Cargar más","Loading results...":"Cargando resultados...","Mobilize 100+ people praying daily for each DOXA people group":"Movilizar a más de 100 personas que oren diariamente por cada grupo étnico DOXA.","No One Praying":"Nadie orando","No options found":"No se han encontrado opciones","No unengaged people groups by 2033":"No habrá grupos étnicos sin evangelizar para 2033","Not Adopted":"No adoptado",Other:"Otros","Page Not Found":"Página no encontrada","People Group":"Grupo Étnico","People Groups":"Grupos Étnicos","People committed to praying":"Personas comprometidas con la oración",Population:"Población","Prayer Coverage":"Cobertura de oración","Prayer coverage progress":"Progreso de la cobertura de oración",Regions:"Regiones",Religion:"Religión","Search names, country/continent, religions...":"Buscar nombres, país/continente, religiones...","See %region% dashboard":"Ver el panel de %region%","See All":"Ver todo",Select:"Seleccionar","Show Filters":"Mostrar filtros","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Hay %count% grupos étnicos en %country%. Consulta también el mapa para ver los grupos étnicos en la frontera de este país.",Total:"Total","Type to search...":"Escribe para buscar...","Unengaged people groups":"Grupos étnicos no comprometidos","WAGF Block":"Bloque WAGF","WAGF Region":"Región de la WAGF","people groups adopted":"grupos de personas adoptados","people groups engaged":"grupos étnicos comprometidos"},tm={placeholder:"Pueblo, lugar, idioma, religión",labels:{people:"Pueblo:",place:"Lugar:",language:"Idioma:",religion:"Religión:"},kinds:{people:"Pueblo + país",peopleGroup:"Pueblo",bloc:"Bloque de afinidad",cluster:"Clúster de pueblos",country:"País",region:"Región",family:"Familia lingüística",languageKind:"Idioma",dialect:"Dialecto",religionKind:"Religión"}},om={prayer:"Oración",adoption:"Adopción",engagement:"Compromiso","affinity-blocks":"Pueblos",regions:"Regiones",countries:"Países","language-families":"Idiomas",religion:"Religiones",family:"Familia lingüística",language:"Idioma",dialect:"Dialecto/Variedad",bloc:"Bloque de afinidad",cluster:"Clúster",group:"Pueblo",pgic:"Pueblo en país",region:"Región WAGF",block:"Bloque WAGF",country:"País"},nm={backToLegend:"Retour à la légende",closeDetailView:"Fermer la vue détaillée"},am={prayForThem:"Priez pour eux",adoptThem:"Adoptez-les",moreInfo:"Plus d'infos",zoomIn:"Zoom avant",zoomOut:"Zoom arrière",switchToLightMode:"Passer au mode clair",switchToDarkMode:"Passer au mode sombre",resetView:"Réinitialiser la vue",toggleFullscreen:"Basculer en plein écran",aboutThisMap:"À propos de cette carte",closeMenu:"Fermer le menu",reloadMap:"Recharger la carte",showClusters:"Afficher les clusters",clusterSettings:"Paramètres des clusters",startAutoFly:"Démarrer le vol auto",stopFlight:"Arrêter le vol",speedLabel:"Vitesse :",speedOption:{slow:"Lente",normal:"Normale",fast:"Rapide"},shareEmbed:"Partager et intégrer"},rm={labels:{country:"Pays :",population:"Population :",language:"Langue :",religion:"Religion :",languageFamily:"Famille de langues :",peopleCommitted:"Engagés à prier :"},messages:{noDescription:"Aucune description disponible."}},sm={title:{prayer:"Progression de la prière",engagement:"Progression de l'engagement",adoption:"Progression de l'adoption",languageFamilies:"Familles de langues",doxaRegions:"Régions Doxa",affinityBlocs:"Blocs d'affinité",gospelResources:"Ressources de l'Évangile"},header:{collapsed:"Légende",peopleGroupFallback:"Groupe de personnes"},prayer:{needsPrayer:"Besoin de prière",hasPrayer:"Prière en cours",fullPrayerCoverage:"Couverture de prière complète"},progress:{title:"Progression",covered:"{covered} sur {total} groupes de personnes couverts par la prière · {pct}%",short:"{covered} sur {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Besoin d'engagement",hasEngagement:"Engagement en cours"},adoption:{needsAdoption:"Besoin d'adoption",hasAdoption:"Adoption en cours"},columns:{upgs:"UUPGs",population:"Population",name:"Nom"},footer:{total:"Total"},sortByUpgs:"Trier par UUPG",sortByPop:"Trier par population",colLabel:{religion:"Religions UUPG",prayer:"Statut de prière",engagement:"Statut d'engagement",adoption:"Statut d'adoption",status:"Statut"},titleBar:{legend:"Légende",peopleGroups:"Peuples",wagfRegions:"Régions WAGF",languages:"Langues"}},im={menuComingSoon:"Menu bientôt disponible"},lm={clusterByRegion:"Par région Doxa",clusterByLanguageFamily:"Par famille de langues",clusterByGospelResource:"Par ressource de l'Évangile"},cm={country:{wagfRegion:"Région WAGF",wagfBlock:"Bloc WAGF",country:"Pays",uupgCount:"Nombre d'UUPG"}},um={header:"TOUR DE PRIÈRE ACTUEL",lap:"Tour",upgs:"UUPGs",separator:" sur "},dm={"%count% people groups in %countries% countries":"%count% peuples dans %countries% pays","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% compte %count% peuples répartis dans %countries% pays. La couleur de chaque point indique combien de personnes prient pour ce peuple.","1+ People Praying":"1+ personnes en prière","100+ People Praying":"100+ personnes en prière",Adopted:"Adopté","Adoption Progress":"Progrès de l'adoption","All Regions":"Toutes les régions","Alternate Names":"Autres noms","Clear All":"Tout effacer",Countries:"Pays","Countries in this region":"Pays de cette région",Country:"Pays",Engaged:"Engagé","Engagement Progress":"Progrès de l'engagement","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Chaque peuple non engagé adopté par une église locale engagée dans la prière, le don et l'envoi","Exact Search":"Recherche exacte","Find unreached people groups by region and country.":"Trouvez des peuples non atteints par région et par pays.","Full Profile":"Profil complet",Goal:"Objectif","Hide Filters":"Masquer les filtres",Intercessors:"Intercesseurs","Load More":"Afficher plus","Loading results...":"Chargement des résultats...","Mobilize 100+ people praying daily for each DOXA people group":"Mobiliser plus de 100 personnes priant chaque jour pour chaque peuple DOXA","No One Praying":"Personne ne prie","No options found":"Aucun lieu trouvé","No unengaged people groups by 2033":"Plus aucun peuple non engagé d'ici 2033","Not Adopted":"Non adopté",Other:"Autre","Page Not Found":"Page introuvable","People Group":"Peuple","People Groups":"Peuples","People committed to praying":"Personnes engagées dans la prière",Population:"Population","Prayer Coverage":"Couverture de prière","Prayer coverage progress":"Progression de la couverture de prière",Regions:"Régions",Religion:"Religion","Search names, country/continent, religions...":"Rechercher des noms, pays/continent, religions...","See %region% dashboard":"Voir le tableau de bord : %region%","See All":"Tout afficher",Select:"Sélectionner","Show Filters":"Afficher les filtres","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Il y a %count% peuples en %country%. Consultez la carte pour découvrir également les peuples situés à la frontière de ce pays.",Total:"Total","Type to search...":"Entrer votre recherche","Unengaged people groups":"Peuples non engagés","WAGF Block":"Bloc WAGF","WAGF Region":"Région WAGF","people groups adopted":"peuples adoptés","people groups engaged":"peuples engagés"},pm={placeholder:"Peuple, lieu, langue, religion",labels:{people:"Peuple :",place:"Lieu :",language:"Langue :",religion:"Religion :"},kinds:{people:"Peuple + pays",peopleGroup:"Peuple",bloc:"Bloc d'affinité",cluster:"Grappe de peuples",country:"Pays",region:"Région",family:"Famille linguistique",languageKind:"Langue",dialect:"Dialecte",religionKind:"Religion"}},gm={prayer:"Prière",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Peuples",regions:"Régions",countries:"Pays","language-families":"Langues",religion:"Religions",family:"Famille linguistique",language:"Langue",dialect:"Dialecte/Variété",bloc:"Bloc d'affinité",cluster:"Grappe",group:"Peuple",pgic:"Peuple dans le pays",region:"Région WAGF",block:"Bloc WAGF",country:"Pays"},fm={backToLegend:"लेजेंड पर वापस जाएं",closeDetailView:"विवरण दृश्य बंद करें"},hm={prayForThem:"उनके लिए प्रार्थना करें",adoptThem:"उन्हें गोद लें",moreInfo:"अधिक जानकारी",zoomIn:"ज़ूम इन",zoomOut:"ज़ूम आउट",switchToLightMode:"लाइट मोड पर जाएं",switchToDarkMode:"डार्क मोड पर जाएं",resetView:"दृश्य रीसेट करें",toggleFullscreen:"फ़ुलस्क्रीन टॉगल करें",aboutThisMap:"इस मानचित्र के बारे में",closeMenu:"मेनू बंद करें",reloadMap:"मानचित्र पुनः लोड करें",showClusters:"क्लस्टर दिखाएं",clusterSettings:"क्लस्टर सेटिंग्स",startAutoFly:"ऑटो फ्लाई शुरू करें",stopFlight:"उड़ान रोकें",speedLabel:"गति:",speedOption:{slow:"धीमी",normal:"सामान्य",fast:"तेज़"},shareEmbed:"साझा करें और एम्बेड करें"},mm={labels:{country:"देश:",population:"जनसंख्या:",language:"भाषा:",religion:"धर्म:",languageFamily:"भाषा परिवार:",peopleCommitted:"प्रार्थना के लिए प्रतिबद्ध:"},messages:{noDescription:"कोई विवरण उपलब्ध नहीं है।"}},bm={title:{prayer:"प्रार्थना प्रगति",engagement:"सहभागिता प्रगति",adoption:"गोद लेने की प्रगति",languageFamilies:"भाषा परिवार",doxaRegions:"Doxa क्षेत्र",affinityBlocs:"समानता समूह",gospelResources:"सुसमाचार संसाधन"},header:{collapsed:"किंवदंती",peopleGroupFallback:"जनजाति समूह"},prayer:{needsPrayer:"प्रार्थना चाहिए",hasPrayer:"प्रार्थना है",fullPrayerCoverage:"पूर्ण प्रार्थना कवरेज"},progress:{title:"प्रगति",covered:"{total} में से {covered} जनजाति समूह प्रार्थना में कवर · {pct}%",short:"{total} में से {covered} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"सहभागिता चाहिए",hasEngagement:"सहभागिता है"},adoption:{needsAdoption:"गोद लेना चाहिए",hasAdoption:"गोद लिया गया"},columns:{upgs:"UUPGs",population:"जनसंख्या"},footer:{total:"कुल"}},ym={menuComingSoon:"मेनू शीघ्र आ रहा है"},_m={clusterByRegion:"Doxa क्षेत्र के अनुसार",clusterByLanguageFamily:"भाषा परिवार के अनुसार",clusterByGospelResource:"सुसमाचार संसाधन के अनुसार"},vm={header:"वर्तमान प्रार्थना चक्र",lap:"चक्र",upgs:"UUPGs",separator:" में से "},km={"%count% people groups in %countries% countries":"%countries% देशों में %count% लोगों के समूह","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% में %countries% देशों में %count% लोगों के समूह हैं। प्रत्येक बिंदु का रंग दर्शाता है कि उस लोगों के समूह के लिए कितने लोग प्रार्थना कर रहे हैं।","1+ People Praying":"1+ लोग प्रार्थना कर रहे हैं","100+ People Praying":"100+ लोग प्रार्थना कर रहे हैं",Adopted:"दत्तक लिया गया","Adoption Progress":"दत्तक ग्रहण की प्रगति","All Regions":"सभी क्षेत्र","Alternate Names":"वैकल्पिक नाम","Clear All":"सभी साफ़ करें",Countries:"देश","Countries in this region":"इस क्षेत्र के देश",Country:"देश",Engaged:"प्रवेशित","Engagement Progress":"प्रवेश की प्रगति","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"प्रत्येक असंलग्न जनसमूह जिसे प्रार्थना, दान और भेजने के लिए प्रतिबद्ध एक चर्च ने अपनाया है।","Exact Search":"सटीक खोज","Find unreached people groups by region and country.":"क्षेत्र और देश के अनुसार अगम्य लोगों के समूह खोजें।","Full Profile":"पूर्ण प्रोफ़ाइल",Goal:"लक्ष्य","Hide Filters":"फ़िल्टर छिपाएँ",Intercessors:"मध्यस्थ","Load More":"और लोड करें","Loading results...":"परिणाम लोड हो रहे हैं..।","Mobilize 100+ people praying daily for each DOXA people group":"प्रत्येक DOXA जनसमूह के लिए प्रतिदिन प्रार्थना करने हेतु 100+ लोगों को सक्रिय करें।","No One Praying":"कोई प्रार्थना नहीं कर रहा","No options found":"कोई विकल्प नहीं मिला","No unengaged people groups by 2033":"2033 तक कोई भी संलग्न न किया गया जनसमूह नहीं रहेगा।","Not Adopted":"दत्तक नहीं लिया गया",Other:"अन्य","Page Not Found":"पृष्ठ नहीं मिला","People Group":"लोगों का समूह","People Groups":"लोगों के समूह","People committed to praying":"प्रार्थना के लिए प्रतिबद्ध लोग",Population:"जनसँख्या","Prayer Coverage":"प्रार्थना कवरेज","Prayer coverage progress":"प्रार्थना कवरेज की प्रगति",Regions:"क्षेत्र",Religion:"धर्म","Search names, country/continent, religions...":"नाम, देश/महाद्वीप, धर्म खोजें..।","See %region% dashboard":"%region% डैशबोर्ड देखें","See All":"सभी देखें",Select:"चयन/छंटनी","Show Filters":"फ़िल्टर दिखाएँ","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"%country% में %count% लोगों के समूह हैं। इस देश की सीमा पर स्थित लोगों के समूहों के लिए मानचित्र भी देखें।",Total:"संपूर्ण","Type to search...":"खोजने के लिए टाइप करें..।","Unengaged people groups":"अनलग्न लोगों के समूह","WAGF Block":"WAGF ब्लॉक","WAGF Region":"डब्ल्यूएजीएफ क्षेत्र","people groups adopted":"लोगों के समूहों ने अपनाया","people groups engaged":"प्रवेशित लोगों के समूह"},wm={placeholder:"लोग, स्थान, भाषा, धर्म",labels:{people:"लोग:",place:"स्थान:",language:"भाषा:",religion:"धर्म:"}},xm={backToLegend:"Torna alla legenda",closeDetailView:"Chiudi vista dettaglio"},Am={prayForThem:"Prega per loro",adoptThem:"Adottali",moreInfo:"Più informazioni",zoomIn:"Ingrandisci",zoomOut:"Riduci",switchToLightMode:"Passa alla modalità chiara",switchToDarkMode:"Passa alla modalità scura",resetView:"Reimposta vista",toggleFullscreen:"Attiva/disattiva schermo intero",aboutThisMap:"Informazioni su questa mappa",closeMenu:"Chiudi menu",reloadMap:"Ricarica mappa",showClusters:"Mostra cluster",clusterSettings:"Impostazioni cluster",startAutoFly:"Avvia volo automatico",stopFlight:"Ferma volo",speedLabel:"Velocità:",speedOption:{slow:"Lenta",normal:"Normale",fast:"Veloce"},shareEmbed:"Condividi e incorpora"},Sm={labels:{country:"Paese:",population:"Popolazione:",language:"Lingua:",religion:"Religione:",languageFamily:"Famiglia linguistica:",peopleCommitted:"Impegnati a pregare:"},messages:{noDescription:"Nessuna descrizione disponibile."}},$m={title:{prayer:"Avanzamento della preghiera",engagement:"Avanzamento dell'impegno",adoption:"Avanzamento dell'adozione",languageFamilies:"Famiglie linguistiche",doxaRegions:"Regioni Doxa",affinityBlocs:"Blocchi di affinità",gospelResources:"Risorse del Vangelo"},header:{collapsed:"Legenda",peopleGroupFallback:"Gruppo di persone"},prayer:{needsPrayer:"Necessita preghiera",hasPrayer:"Ha preghiera",fullPrayerCoverage:"Copertura di preghiera completa"},progress:{title:"Avanzamento",covered:"{covered} di {total} gruppi di persone coperti dalla preghiera · {pct}%",short:"{covered} di {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necessita impegno",hasEngagement:"Ha impegno"},adoption:{needsAdoption:"Necessita adozione",hasAdoption:"Ha adozione"},columns:{upgs:"UUPGs",population:"Popolazione"},footer:{total:"Totale"}},Em={menuComingSoon:"Menu in arrivo"},Cm={clusterByRegion:"Per regione Doxa",clusterByLanguageFamily:"Per famiglia linguistica",clusterByGospelResource:"Per risorsa del Vangelo"},Lm={header:"GIRO DI PREGHIERA ATTUALE",lap:"Giro",upgs:"UUPGs",separator:" di "},Tm={placeholder:"Popolo, luogo, lingua, religione",labels:{people:"Popolo:",place:"Luogo:",language:"Lingua:",religion:"Religione:"}},Pm={backToLegend:"Voltar à legenda",closeDetailView:"Fechar vista de detalhe"},Mm={prayForThem:"Ore por eles",adoptThem:"Adote-os",moreInfo:"Mais informações",zoomIn:"Ampliar",zoomOut:"Reduzir",switchToLightMode:"Mudar para modo claro",switchToDarkMode:"Mudar para modo escuro",resetView:"Repor vista",toggleFullscreen:"Alternar ecrã inteiro",aboutThisMap:"Sobre este mapa",closeMenu:"Fechar menu",reloadMap:"Recarregar mapa",showClusters:"Mostrar clusters",clusterSettings:"Definições de clusters",startAutoFly:"Iniciar voo automático",stopFlight:"Parar voo",speedLabel:"Velocidade:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Partilhar e incorporar"},Nm={labels:{country:"País:",population:"População:",language:"Língua:",religion:"Religião:",languageFamily:"Família linguística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"Sem descrição disponível."}},Rm={title:{prayer:"Progresso da oração",engagement:"Progresso do envolvimento",adoption:"Progresso da adoção",languageFamilies:"Famílias linguísticas",doxaRegions:"Regiões Doxa",affinityBlocs:"Blocos de afinidade",gospelResources:"Recursos do Evangelho"},header:{collapsed:"Legenda",peopleGroupFallback:"Grupo de pessoas"},prayer:{needsPrayer:"Precisa de oração",hasPrayer:"Tem oração",fullPrayerCoverage:"Cobertura de oração completa"},progress:{title:"Progresso",covered:"{covered} de {total} grupos de pessoas cobertos em oração · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Precisa de envolvimento",hasEngagement:"Tem envolvimento"},adoption:{needsAdoption:"Precisa de adoção",hasAdoption:"Tem adoção"},columns:{upgs:"UUPGs",population:"População",name:"Nome"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por população",colLabel:{religion:"Religiões UUPG",prayer:"Status de oração",engagement:"Status de engajamento",adoption:"Status de adoção",status:"Status"},titleBar:{legend:"Legenda",peopleGroups:"Povos",wagfRegions:"Regiões WAGF",languages:"Idiomas"}},Im={menuComingSoon:"Menu em breve"},Om={clusterByRegion:"Por região Doxa",clusterByLanguageFamily:"Por família linguística",clusterByGospelResource:"Por recurso do Evangelho"},Fm={header:"VOLTA DE ORAÇÃO ATUAL",lap:"Volta",upgs:"UUPGs",separator:" de "},Dm={"%count% people groups in %countries% countries":"%count% grupos étnicos em %countries% países","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% tem %count% grupos étnicos em %countries% países. A cor de cada ponto indica quantas pessoas oram por esse grupo étnico.","1+ People Praying":"1+ pessoas orando","100+ People Praying":"100+ pessoas orando",Adopted:"Aprovado","Adoption Progress":"Progresso da adoção","All Regions":"Todas as regiões","Alternate Names":"Nomes alternativos","Clear All":"Limpar tudo",Countries:"Países","Countries in this region":"Países desta região",Country:"País",Engaged:"Engajado","Engagement Progress":"Progresso do engajamento","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Cada grupo étnico não engajado adotado por uma igreja comprometida com a oração, contribuição e o envio","Exact Search":"Pesquisa exata","Find unreached people groups by region and country.":"Encontre grupos étnicos não alcançados por região e país.","Full Profile":"Perfil completo",Goal:"Meta","Hide Filters":"Ocultar filtros",Intercessors:"Intercessores","Load More":"Carregar mais","Loading results...":"A carregar resultados...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilizar mais de 100 pessoas para orar diariamente por cada grupo étnico DOXA","No One Praying":"Ninguém orando","No options found":"Não foram encontradas opções","No unengaged people groups by 2033":"Nenhum grupo étnico não engajado até 2033","Not Adopted":"Não adotado",Other:"Outros","Page Not Found":"Página não encontrada","People Group":"Grupo étnico","People Groups":"Grupos étnicos","People committed to praying":"Pessoas comprometidas com a oração",Population:"Aplicação","Prayer Coverage":"Cobertura de oração","Prayer coverage progress":"Progresso da cobertura de oração",Regions:"Regiões",Religion:"Religião","Search names, country/continent, religions...":"Busque nomes, país/continente, religiões...","See %region% dashboard":"Ver o painel: %region%","See All":"Ver tudo",Select:"Selecionar","Show Filters":"Mostrar filtros","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Existem %count% grupos étnicos em %country%. Verifique no mapa também os grupos étnicos na fronteira deste país.",Total:"Total","Type to search...":"Digite para pesquisar...","Unengaged people groups":"Grupos étnicos não engajados","WAGF Block":"Bloco WAGF","WAGF Region":"Região da WAGF","people groups adopted":"grupos étnicos adotados","people groups engaged":"grupos étnicos engajados"},Bm={placeholder:"Povo, local, língua, religião",labels:{people:"Povo:",place:"Local:",language:"Língua:",religion:"Religião:"},kinds:{people:"Povo + país",peopleGroup:"Povo",bloc:"Bloco de afinidade",cluster:"Agrupamento de povos",country:"País",region:"Região",family:"Família linguística",languageKind:"Idioma",dialect:"Dialeto",religionKind:"Religião"}},Gm={prayer:"Oração",adoption:"Adoção",engagement:"Engajamento","affinity-blocks":"Povos",regions:"Regiões",countries:"Países","language-families":"Idiomas",religion:"Religiões",family:"Família linguística",language:"Idioma",dialect:"Dialeto/Variedade",bloc:"Bloco de afinidade",cluster:"Agrupamento",group:"Povo",pgic:"Povo no país",region:"Região WAGF",block:"Bloco WAGF",country:"País"},jm={backToLegend:"Înapoi la legendă",closeDetailView:"Închide vizualizarea detaliată"},Um={prayForThem:"Roagă-te pentru ei",adoptThem:"Adoptă-i",moreInfo:"Mai multe informații",zoomIn:"Mărește",zoomOut:"Micșorează",switchToLightMode:"Comută la modul luminos",switchToDarkMode:"Comută la modul întunecat",resetView:"Resetează vizualizarea",toggleFullscreen:"Comută ecran complet",aboutThisMap:"Despre această hartă",closeMenu:"Închide meniul",reloadMap:"Reîncarcă harta",showClusters:"Arată clusterele",clusterSettings:"Setări clustere",startAutoFly:"Pornește zborul automat",stopFlight:"Oprește zborul",speedLabel:"Viteză:",speedOption:{slow:"Lent",normal:"Normal",fast:"Rapid"},shareEmbed:"Partajează și încorporează"},Km={labels:{country:"Țară:",population:"Populație:",language:"Limbă:",religion:"Religie:",languageFamily:"Familie de limbi:",peopleCommitted:"Angajați să se roage:"},messages:{noDescription:"Nicio descriere disponibilă."}},zm={title:{prayer:"Progresul rugăciunii",engagement:"Progresul implicării",adoption:"Progresul adopției",languageFamilies:"Familii de limbi",doxaRegions:"Regiuni Doxa",affinityBlocs:"Blocuri de afinitate",gospelResources:"Resurse ale Evangheliei"},header:{collapsed:"Legendă",peopleGroupFallback:"Grup de popoare"},prayer:{needsPrayer:"Necesită rugăciune",hasPrayer:"Are rugăciune",fullPrayerCoverage:"Acoperire completă de rugăciune"},progress:{title:"Progres",covered:"{covered} din {total} grupuri de popoare acoperite în rugăciune · {pct}%",short:"{covered} din {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesită implicare",hasEngagement:"Are implicare"},adoption:{needsAdoption:"Necesită adopție",hasAdoption:"Are adopție"},columns:{upgs:"UUPGs",population:"Populație"},footer:{total:"Total"}},Hm={menuComingSoon:"Meniu în curând"},Vm={clusterByRegion:"După regiune Doxa",clusterByLanguageFamily:"După familia de limbi",clusterByGospelResource:"După resursa Evangheliei"},Wm={header:"TURUL DE RUGĂCIUNE CURENT",lap:"Tur",upgs:"UUPGs",separator:" din "},Ym={placeholder:"Popor, loc, limbă, religie",labels:{people:"Popor:",place:"Loc:",language:"Limbă:",religion:"Religie:"}},qm={backToLegend:"Назад к легенде",closeDetailView:"Закрыть подробный вид"},Jm={prayForThem:"Молитесь о них",adoptThem:"Усыновите их",moreInfo:"Подробнее",zoomIn:"Приблизить",zoomOut:"Отдалить",switchToLightMode:"Переключить на светлый режим",switchToDarkMode:"Переключить на тёмный режим",resetView:"Сбросить вид",toggleFullscreen:"Полноэкранный режим",aboutThisMap:"Об этой карте",closeMenu:"Закрыть меню",reloadMap:"Перезагрузить карту",showClusters:"Показать кластеры",clusterSettings:"Настройки кластеров",startAutoFly:"Начать авто-полёт",stopFlight:"Остановить полёт",speedLabel:"Скорость:",speedOption:{slow:"Медленно",normal:"Нормально",fast:"Быстро"},shareEmbed:"Поделиться и встроить"},Xm={labels:{country:"Страна:",population:"Население:",language:"Язык:",religion:"Религия:",languageFamily:"Языковая семья:",peopleCommitted:"Обязались молиться:"},messages:{noDescription:"Описание недоступно."}},Zm={title:{prayer:"Прогресс молитвы",engagement:"Прогресс вовлечённости",adoption:"Прогресс усыновления",languageFamilies:"Языковые семьи",doxaRegions:"Регионы Doxa",affinityBlocs:"Блоки родства",gospelResources:"Евангельские ресурсы"},header:{collapsed:"Условные обозначения",peopleGroupFallback:"Народная группа"},prayer:{needsPrayer:"Нуждается в молитве",hasPrayer:"Есть молитва",fullPrayerCoverage:"Полное молитвенное покрытие"},progress:{title:"Прогресс",covered:"{covered} из {total} народных групп охвачены молитвой · {pct}%",short:"{covered} из {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Нуждается в вовлечённости",hasEngagement:"Есть вовлечённость"},adoption:{needsAdoption:"Нуждается в усыновлении",hasAdoption:"Есть усыновление"},columns:{upgs:"UUPGs",population:"Население",name:"Название"},footer:{total:"Всего"},sortByUpgs:"Сортировать по UUPG",sortByPop:"Сортировать по населению",colLabel:{religion:"Религии UUPG",prayer:"Статус молитвы",engagement:"Статус вовлечённости",adoption:"Статус усыновления",status:"Статус"},titleBar:{legend:"Легенда",peopleGroups:"Народы",wagfRegions:"Регионы WAGF",languages:"Языки"}},Qm={menuComingSoon:"Меню скоро появится"},eb={clusterByRegion:"По региону Doxa",clusterByLanguageFamily:"По языковой семье",clusterByGospelResource:"По евангельскому ресурсу"},tb={header:"ТЕКУЩИЙ КРУГ МОЛИТВЫ",lap:"Круг",upgs:"UUPGs",separator:" из "},ob={"%count% people groups in %countries% countries":"%count% групп людей в %countries% странах","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"В регионе %region% — %count% групп людей в %countries% странах. Цвет каждой точки показывает, сколько человек молится за эту группу людей.","1+ People Praying":"1+ человек молится","100+ People Praying":"100+ человек молятся",Adopted:"Принято","Adoption Progress":"Прогресс принятия","All Regions":"Все регионы","Alternate Names":"Альтернативные названия","Clear All":"Очистить всё",Countries:"Страны","Countries in this region":"Страны этого региона",Country:"Страна",Engaged:"Вовлечённый","Engagement Progress":"Прогресс вовлечения","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Каждая незадействованная народность принята церковью, приверженной молитве, пожертвованиям и посылке миссионеров","Exact Search":"Точный поиск","Find unreached people groups by region and country.":"Найдите недостигнутые группы людей по регионам и странам.","Full Profile":"Полный профиль",Goal:"Цель","Hide Filters":"Скрыть фильтры",Intercessors:"Ходатаи","Load More":"Загрузить еще","Loading results...":"Загрузка результатов...","Mobilize 100+ people praying daily for each DOXA people group":"Мобилизуйте 100+ человек для ежедневной молитвы за каждую народность DOXA","No One Praying":"Никто не молится","No options found":"Вариантов не найдено","No unengaged people groups by 2033":"К 2033 году не останется незадействованных народов","Not Adopted":"Не принято",Other:"Другое","Page Not Found":"Страница не найдена","People Group":"Группа людей","People Groups":"Группы людей","People committed to praying":"Люди, посвятившие себя молитве",Population:"Население","Prayer Coverage":"Молитвенное покрытие","Prayer coverage progress":"Прогресс молитвенного покрытия",Regions:"Регионы",Religion:"Религия","Search names, country/continent, religions...":"Поиск по именам, странам/континентам, религиям...","See %region% dashboard":"Открыть панель: %region%","See All":"Смотреть все",Select:"Выбрать","Show Filters":"Показать фильтры","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Страна %country% насчитывает %count% групп людей. Проверьте также на карте группы людей, расположенные вдоль границ этой страны.",Total:"Итого","Type to search...":"Введите текст для поиска...","Unengaged people groups":"Невовлечённые группы людей","WAGF Block":"Блок WAGF","WAGF Region":"Регион WAGF","people groups adopted":"принятые группы людей","people groups engaged":"вовлечённые группы людей"},nb={placeholder:"Народ, место, язык, религия",labels:{people:"Народ:",place:"Место:",language:"Язык:",religion:"Религия:"},kinds:{people:"Народ + страна",peopleGroup:"Народ",bloc:"Блок родства",cluster:"Кластер народов",country:"Страна",region:"Регион",family:"Языковая семья",languageKind:"Язык",dialect:"Диалект",religionKind:"Религия"}},ab={prayer:"Молитва",adoption:"Усыновление",engagement:"Вовлечённость","affinity-blocks":"Народы",regions:"Регионы",countries:"Страны","language-families":"Языки",religion:"Религии",family:"Языковая семья",language:"Язык",dialect:"Диалект/вариант",bloc:"Блок родства",cluster:"Кластер",group:"Народ",pgic:"Народ в стране",region:"Регион WAGF",block:"Блок WAGF",country:"Страна"},rb={backToLegend:"返回图例",closeDetailView:"关闭详情视图"},sb={prayForThem:"为他们祷告",adoptThem:"认领他们",moreInfo:"更多信息",zoomIn:"放大",zoomOut:"缩小",switchToLightMode:"切换至浅色模式",switchToDarkMode:"切换至深色模式",resetView:"重置视图",toggleFullscreen:"切换全屏",aboutThisMap:"关于此地图",closeMenu:"关闭菜单",reloadMap:"重新加载地图",showClusters:"显示聚类",clusterSettings:"聚类设置",startAutoFly:"开始自动飞行",stopFlight:"停止飞行",speedLabel:"速度:",speedOption:{slow:"慢",normal:"正常",fast:"快"},shareEmbed:"分享与嵌入"},ib={labels:{country:"国家:",population:"人口:",language:"语言:",religion:"宗教:",languageFamily:"语系:",peopleCommitted:"承诺祷告人数:"},messages:{noDescription:"暂无描述。"}},lb={title:{prayer:"祷告进度",engagement:"参与进度",adoption:"认领进度",languageFamilies:"语系",doxaRegions:"Doxa 区域",affinityBlocs:"亲缘板块",gospelResources:"福音资源"},header:{collapsed:"图例",peopleGroupFallback:"民族群体"},prayer:{needsPrayer:"需要祷告",hasPrayer:"已有祷告",fullPrayerCoverage:"全面祷告覆盖"},progress:{title:"进度",covered:"{total} 个民族群体中已有 {covered} 个被祷告覆盖 · {pct}%",short:"{covered} / {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"需要参与",hasEngagement:"已有参与"},adoption:{needsAdoption:"需要认领",hasAdoption:"已有认领"},columns:{upgs:"UUPGs",population:"人口"},footer:{total:"总计"}},cb={menuComingSoon:"菜单即将推出"},ub={clusterByRegion:"按 Doxa 区域",clusterByLanguageFamily:"按语系",clusterByGospelResource:"按福音资源"},db={header:"当前祷告轮次",lap:"第",upgs:"UUPGs",separator:" / "},pb={placeholder:"民族、地点、语言、宗教",labels:{people:"民族:",place:"地点:",language:"语言:",religion:"宗教:"}};/*! + */let $c;const sr=e=>$c=e,Ec=Symbol();function _s(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var ra;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(ra||(ra={}));function uh(){const e=Fr(!0),t=e.run(()=>de({}));let o=[],n=[];const a=qo({install(r){sr(a),a._a=r,r.provide(Ec,a),r.config.globalProperties.$pinia=a,n.forEach(s=>o.push(s)),n=[]},use(r){return this._a?o.push(r):n.push(r),this},_p:o,_a:null,_e:e,_s:new Map,state:t});return a}const Cc=()=>{};function Lc(e,t,o,n=Cc){e.push(t);const a=()=>{const r=e.indexOf(t);r>-1&&(e.splice(r,1),n())};return!o&&ji()&&Ip(a),a}function wn(e,...t){e.slice().forEach(o=>{o(...t)})}const dh=e=>e(),Tc=Symbol(),vs=Symbol();function ks(e,t){e instanceof Map&&t instanceof Map?t.forEach((o,n)=>e.set(n,o)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const o in t){if(!t.hasOwnProperty(o))continue;const n=t[o],a=e[o];_s(a)&&_s(n)&&e.hasOwnProperty(o)&&!st(n)&&!vo(n)?e[o]=ks(a,n):e[o]=n}return e}const ph=Symbol();function gh(e){return!_s(e)||!e.hasOwnProperty(ph)}const{assign:Fo}=Object;function fh(e){return!!(st(e)&&e.effect)}function hh(e,t,o,n){const{state:a,actions:r,getters:s}=t,i=o.state.value[e];let l;function u(){i||(o.state.value[e]=a?a():{});const c=ng(o.state.value[e]);return Fo(c,r,Object.keys(s||{}).reduce((p,g)=>(p[g]=qo(te(()=>{sr(o);const w=o._s.get(e);return s[g].call(w,w)})),p),{}))}return l=Pc(e,u,t,o,n,!0),l}function Pc(e,t,o={},n,a,r){let s;const i=Fo({actions:{}},o),l={deep:!0};let u,c,p=[],g=[],w;const b=n.state.value[e];!r&&!b&&(n.state.value[e]={});let y;function d(L){let P;u=c=!1,typeof L=="function"?(L(n.state.value[e]),P={type:ra.patchFunction,storeId:e,events:w}):(ks(n.state.value[e],L),P={type:ra.patchObject,payload:L,storeId:e,events:w});const z=y=Symbol();lo().then(()=>{y===z&&(u=!0)}),c=!0,wn(p,P,n.state.value[e])}const h=r?function(){const{state:P}=o,z=P?P():{};this.$patch(W=>{Fo(W,z)})}:Cc;function f(){s.stop(),p=[],g=[],n._s.delete(e)}const m=(L,P="")=>{if(Tc in L)return L[vs]=P,L;const z=function(){sr(n);const W=Array.from(arguments),re=[],M=[];function F(I){re.push(I)}function T(I){M.push(I)}wn(g,{args:W,name:z[vs],store:x,after:F,onError:T});let $;try{$=L.apply(this&&this.$id===e?this:x,W)}catch(I){throw wn(M,I),I}return $ instanceof Promise?$.then(I=>(wn(re,I),I)).catch(I=>(wn(M,I),Promise.reject(I))):(wn(re,$),$)};return z[Tc]=!0,z[vs]=P,z},k={_p:n,$id:e,$onAction:Lc.bind(null,g),$patch:d,$reset:h,$subscribe(L,P={}){const z=Lc(p,L,P.detached,()=>W()),W=s.run(()=>ct(()=>n.state.value[e],re=>{(P.flush==="sync"?c:u)&&L({storeId:e,type:ra.direct,events:w},re)},Fo({},l,P)));return z},$dispose:f},x=pn(k);n._s.set(e,x);const S=(n._a&&n._a.runWithContext||dh)(()=>n._e.run(()=>(s=Fr()).run(()=>t({action:m}))));for(const L in S){const P=S[L];if(st(P)&&!fh(P)||vo(P))r||(b&&gh(P)&&(st(P)?P.value=b[L]:ks(P,b[L])),n.state.value[e][L]=P);else if(typeof P=="function"){const z=m(P,L);S[L]=z,i.actions[L]=P}}return Fo(x,S),Fo(Be(x),S),Object.defineProperty(x,"$state",{get:()=>n.state.value[e],set:L=>{d(P=>{Fo(P,L)})}}),n._p.forEach(L=>{Fo(x,s.run(()=>L({store:x,app:n._a,pinia:n,options:i})))}),b&&r&&o.hydrate&&o.hydrate(x.$state,b),u=!0,c=!0,x}/*! #__NO_SIDE_EFFECTS__ */function ws(e,t,o){let n,a;const r=typeof t=="function";typeof e=="string"?(n=e,a=r?o:t):(a=e,n=e.id);function s(i,l){const u=yg();return i=i||(u?Fe(Ec,null):null),i&&sr(i),i=$c,i._s.has(n)||(r?Pc(n,t,a,i):hh(n,a,i)),i._s.get(n)}return s.$id=n,s}const xs="__doxaMapToken",As="doxa:map-token",Mc="__doxaMapTokenBridge",xn=()=>{if(typeof window>"u")return"";const e=window[xs];return typeof e=="string"?e:""};function Nc(e){if(typeof window>"u")return"";const t=typeof e=="string"?e.trim():"";if(!t||t===xn())return xn();window[xs]=t;try{window.dispatchEvent(new CustomEvent(As,{detail:t}))}catch{}return t}function mh(){if(typeof window>"u"||window[Mc])return;const e=typeof window.MAP_TOKEN=="string"?window.MAP_TOKEN:"";e&&!xn()&&(window[xs]=e);try{Object.defineProperty(window,"MAP_TOKEN",{configurable:!0,get(){return xn()},set(t){Nc(t)}}),window[Mc]=!0}catch{}}function bh(){mh();const e=de(xn());if(typeof window<"u"){const t=()=>{e.value=xn()};window.addEventListener(As,t);try{uo(()=>window.removeEventListener(As,t))}catch{}}return e}function Rc(e){return Lg({loader:e,onError(t,o,n,a){a<=3?setTimeout(o,a*500):n()}})}const yh={backToLegend:"العودة إلى المفتاح",closeDetailView:"إغلاق عرض التفاصيل"},_h={prayForThem:"صلِّ من أجلهم",adoptThem:"تبنَّهم",moreInfo:"مزيد من المعلومات",zoomIn:"تكبير",zoomOut:"تصغير",switchToLightMode:"التبديل إلى الوضع الفاتح",switchToDarkMode:"التبديل إلى الوضع الداكن",resetView:"إعادة تعيين العرض",toggleFullscreen:"تبديل ملء الشاشة",aboutThisMap:"حول هذه الخريطة",closeMenu:"إغلاق القائمة",reloadMap:"إعادة تحميل الخريطة",showClusters:"إظهار المجموعات",clusterSettings:"إعدادات المجموعات",startAutoFly:"بدء الطيران التلقائي",stopFlight:"إيقاف الطيران",speedLabel:"السرعة:",speedOption:{slow:"بطيء",normal:"عادي",fast:"سريع"},shareEmbed:"مشاركة وتضمين"},vh={labels:{country:"الدولة:",population:"السكان:",language:"اللغة:",religion:"الديانة:",languageFamily:"العائلة اللغوية:",peopleCommitted:"ملتزمون بالصلاة:"},messages:{noDescription:"لا يوجد وصف متاح."}},kh={title:{prayer:"تقدم الصلاة",engagement:"تقدم الانخراط",adoption:"تقدم التبني",languageFamilies:"العائلات اللغوية",doxaRegions:"مناطق Doxa",affinityBlocs:"كتل القرابة",gospelResources:"موارد الإنجيل"},header:{collapsed:"وسيلة الإيضاح",peopleGroupFallback:"مجموعة الشعب"},prayer:{needsPrayer:"يحتاج إلى صلاة",hasPrayer:"لديه صلاة",fullPrayerCoverage:"تغطية صلاة كاملة"},progress:{title:"التقدم",covered:"{covered} من {total} مجموعة شعبية مغطاة بالصلاة · {pct}%",short:"{covered} من {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"يحتاج إلى انخراط",hasEngagement:"لديه انخراط"},adoption:{needsAdoption:"يحتاج إلى تبني",hasAdoption:"لديه تبني"},columns:{upgs:"UUPGs",population:"السكان",name:"الاسم"},footer:{total:"الإجمالي"},sortByUpgs:"ترتيب حسب UUPG",sortByPop:"ترتيب حسب السكان",colLabel:{religion:"ديانات UUPG",prayer:"حالة الصلاة",engagement:"حالة المشاركة",adoption:"حالة التبني",status:"الحالة"},titleBar:{legend:"مفتاح الخريطة",peopleGroups:"الشعوب",wagfRegions:"مناطق WAGF",languages:"اللغات"}},wh={menuComingSoon:"القائمة قادمة قريباً"},xh={clusterByRegion:"حسب منطقة Doxa",clusterByLanguageFamily:"حسب العائلة اللغوية",clusterByGospelResource:"حسب مورد الإنجيل"},Ah={header:"دورة الصلاة الحالية",lap:"الدورة",upgs:"UUPGs",separator:" من "},Sh={"%count% people groups in %countries% countries":"%count% مجموعة بشرية في %countries% دولة","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"تضم %region% %count% مجموعة بشرية في %countries% دولة. يشير لون كل نقطة إلى عدد الأشخاص الذين يصلّون من أجل تلك المجموعة البشرية.","1+ People Praying":"شخص واحد أو أكثر يصلّي","100+ People Praying":"أكثر من 100 شخص يصلّون",Adopted:"تم انتماؤه","Adoption Progress":"تقدُّم الإنتماء","All Regions":"جميع المناطق","Alternate Names":"الأسماء البديلة","Clear All":"مسح الكل",Countries:"الدول","Countries in this region":"الدول في هذه المنطقة",Country:"الدولة",Engaged:"مُنخرَط","Engagement Progress":"تقدُّم الانخراط","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"كل مجموعة بشرية غير مبشرة تتبناها كنيسة ملتزمة بالصلاة والعطاء والإرسال","Exact Search":"بحث دقيق","Find unreached people groups by region and country.":"ابحث عن المجموعات البشرية غير المُبلَّغة حسب المنطقة والدولة.","Full Profile":"الملف الشخصي الكامل",Goal:"الهدف","Hide Filters":"إخفاء المرشحات",Intercessors:"المتشفعين","Load More":"تحميل المزيد","Loading results...":"النتائج قيد التحميل...","Mobilize 100+ people praying daily for each DOXA people group":"حشد أكثر من 100 شخص للصلاة يوميًا من أجل كل مجموعة بشرية من مجموعات دوكسا","No One Praying":"لا أحد يصلّي","No options found":"لم يتم العثور على أي خيارات","No unengaged people groups by 2033":"الهدف هو القضاء على جميع الشعوب الغير مخدومة روحيا بحلول عام 2033","Not Adopted":"لم يتم انتماؤه",Other:"أخرى","Page Not Found":"الصفحة غير موجودة","People Group":"مجموعة بشرية","People Groups":"مجموعات بشرية","People committed to praying":"الأشخاص الذين التزموا بالصلاة",Population:"عدد السكان","Prayer Coverage":"التغطية المستمرة بالصلاة","Prayer coverage progress":"تقدم تغطية الصلاة",Regions:"المناطق",Religion:"الدين","Search names, country/continent, religions...":"إبحث عن الأسماء، الدولة/القارة، الأديان...","See %region% dashboard":"عرض لوحة معلومات %region%","See All":"عرض جميع العناصر",Select:"اختر","Show Filters":"إظهار عوامل التصفية","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"توجد %count% مجموعات بشرية في %country%. تحقق من الخريطة لمعرفة المجموعات البشرية الواقعة على حدود هذه الدولة أيضًا.",Total:"المجموع","Type to search...":"اكتب ما تريد البحث عنه...","Unengaged people groups":"الشعوب الغير متفاعلة","WAGF Block":"كتلة WAGF","WAGF Region":"منطقة WAGF","people groups adopted":"الشعوب المنتمية","people groups engaged":"مجموعات بشرية مُنخرِطة"},$h={placeholder:"شعب، مكان، لغة، ديانة",labels:{people:"الشعب:",place:"المكان:",language:"اللغة:",religion:"الديانة:"},kinds:{people:"الشعب + الدولة",peopleGroup:"الشعب",bloc:"كتلة التقارب",cluster:"مجموعة شعوب",country:"الدولة",region:"المنطقة",family:"عائلة اللغة",languageKind:"اللغة",dialect:"اللهجة",religionKind:"الدين"}},Eh={prayer:"الصلاة",adoption:"التبني",engagement:"المشاركة","affinity-blocks":"الشعوب",regions:"المناطق",countries:"الدول","language-families":"اللغات",religion:"الأديان",family:"عائلة اللغة",language:"اللغة",dialect:"اللهجة/التنوع",bloc:"كتلة التقارب",cluster:"المجموعة",group:"الشعب",pgic:"الشعب في الدولة",region:"منطقة WAGF",block:"كتلة WAGF",country:"الدولة"},Ch={backToLegend:"Zurück zur Legende",closeDetailView:"Detailansicht schließen"},Lh={prayForThem:"Für sie beten",adoptThem:"Sie adoptieren",moreInfo:"Mehr Infos",zoomIn:"Vergrößern",zoomOut:"Verkleinern",switchToLightMode:"Zum hellen Modus wechseln",switchToDarkMode:"Zum dunklen Modus wechseln",resetView:"Ansicht zurücksetzen",toggleFullscreen:"Vollbild umschalten",aboutThisMap:"Über diese Karte",closeMenu:"Menü schließen",reloadMap:"Karte neu laden",showClusters:"Cluster anzeigen",clusterSettings:"Cluster-Einstellungen",startAutoFly:"Auto-Flug starten",stopFlight:"Flug stoppen",speedLabel:"Geschwindigkeit:",speedOption:{slow:"Langsam",normal:"Normal",fast:"Schnell"},shareEmbed:"Teilen und einbetten"},Th={labels:{country:"Land:",population:"Bevölkerung:",language:"Sprache:",religion:"Religion:",languageFamily:"Sprachfamilie:",peopleCommitted:"Zum Gebet verpflichtet:"},messages:{noDescription:"Keine Beschreibung verfügbar."}},Ph={title:{prayer:"Gebetsfortschritt",engagement:"Engagement-Fortschritt",adoption:"Adoptionsfortschritt",languageFamilies:"Sprachfamilien",doxaRegions:"Doxa-Regionen",affinityBlocs:"Affinitätsblöcke",gospelResources:"Evangeliumsressourcen"},header:{collapsed:"Legende",peopleGroupFallback:"Volksgruppe"},prayer:{needsPrayer:"Braucht Gebet",hasPrayer:"Hat Gebet",fullPrayerCoverage:"Vollständige Gebetsabdeckung"},progress:{title:"Fortschritt",covered:"{covered} von {total} Volksgruppen im Gebet abgedeckt · {pct}%",short:"{covered} von {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Braucht Engagement",hasEngagement:"Hat Engagement"},adoption:{needsAdoption:"Braucht Adoption",hasAdoption:"Hat Adoption"},columns:{upgs:"UUPGs",population:"Bevölkerung"},footer:{total:"Gesamt"}},Mh={menuComingSoon:"Menü folgt in Kürze"},Nh={clusterByRegion:"Nach Doxa-Region",clusterByLanguageFamily:"Nach Sprachfamilie",clusterByGospelResource:"Nach Evangeliumsressource"},Rh={header:"AKTUELLE GEBETSRUNDE",lap:"Runde",upgs:"UUPGs",separator:" von "},Ih={"%count% people groups in %countries% countries":"%count% Volksgruppen in %countries% Ländern","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% hat %count% Volksgruppen in %countries% Ländern. Die Farbe jedes Punktes zeigt, wie viele Menschen für diese Volksgruppe beten.","1+ People Praying":"1+ Menschen beten","100+ People Praying":"100+ Menschen beten",Adopted:"Angenommen","Adoption Progress":"Adoptionsfortschritt","All Regions":"Alle Regionen","Alternate Names":"Alternative Namen","Clear All":"Alle löschen",Countries:"Länder","Countries in this region":"Länder in dieser Region",Country:"Land",Engaged:"Engagiert","Engagement Progress":"Engagement-Fortschritt","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Jede einzelne der völlig unerreichten Volksgruppen soll von einer Ortsgemeinde adoptiert werden, durch Beten, Geben und Senden","Exact Search":"Exakte Suche","Find unreached people groups by region and country.":"Finde unerreichte Volksgruppen nach Region und Land.","Full Profile":"Vollständiges Profil",Goal:"Ziel","Hide Filters":"Filter ausblenden",Intercessors:"Fürbitter","Load More":"Mehr laden","Loading results...":"Ergebnisse werden geladen...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilisiere 100+ Menschen, die täglich für jede DOXA-Volksgruppe beten","No One Praying":"Niemand betet","No options found":"Keine Standorte gefunden","No unengaged people groups by 2033":"Dass es bis 2033 keine völlig unerreichte Volksgruppe mehr gibt","Not Adopted":"noch nicht adoptiert",Other:"Andere","Page Not Found":"Seite nicht gefunden","People Group":"Personengruppe","People Groups":"Volksgruppen","People committed to praying":"Menschen, die sich dem Beten verpflichtet haben",Population:"Bevölkerung","Prayer Coverage":"Gebetsabdeckung","Prayer coverage progress":"Fortschritt der Gebetsabdeckung",Regions:"Regionen",Religion:"Primäre Religion","Search names, country/continent, religions...":"Suche nach Namen, Land/Kontinent, Religionen...","See %region% dashboard":"Dashboard anzeigen: %region%","See All":"Alle anzeigen",Select:"Auswählen","Show Filters":"Filter anzeigen","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"In %country% gibt es %count% Volksgruppen. Sieh auch auf der Karte nach den Volksgruppen an der Grenze dieses Landes.",Total:"Gesamt","Type to search...":"Geben Sie etwas ein, um danach zu suchen","Unengaged people groups":"Völlig unerreichte Volksgruppen","WAGF Block":"WAGF-Block","WAGF Region":"WAGF-Region","people groups adopted":"adoptierte Volksgruppen","people groups engaged":"engagierte Volksgruppen"},Oh={placeholder:"Volk, Ort, Sprache, Religion",labels:{people:"Volk:",place:"Ort:",language:"Sprache:",religion:"Religion:"},sections:{within:"Innerhalb {selection}",allData:"Alle DOXA-Daten"}},Fh={prayer:"Gebet",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Volksgruppen",regions:"Regionen",countries:"Länder","language-families":"Sprachen",religion:"Religionen",family:"Sprachfamilie",language:"Sprache",dialect:"Dialekt/Varietät",bloc:"Affinitätsblock",cluster:"Cluster",group:"Volksgruppe",pgic:"Volksgruppe im Land",region:"WAGF-Region",block:"WAGF-Block",country:"Land"},Dh={backToLegend:"Back to Legend",closeDetailView:"Close detail view"},Bh={prayForThem:"Pray for them",adoptThem:"Adopt",moreInfo:"More info",zoomIn:"Zoom in",zoomOut:"Zoom out",switchToLightMode:"Switch to light mode",switchToDarkMode:"Switch to dark mode",resetView:"Reset view",toggleFullscreen:"Toggle fullscreen",aboutThisMap:"About this map",closeMenu:"Close menu",reloadMap:"Reload Map",showClusters:"Show Clusters",clusterSettings:"Cluster Settings",startAutoFly:"Start Auto Fly",stopFlight:"Stop Flight",speedLabel:"Speed:",speedOption:{slow:"Slow",normal:"Normal",fast:"Fast"},shareEmbed:"Share & embed",shareSteps:["Embed this map on your site","Create a list of the websites in your city","Train them to embed it too","Train them to train others to embed it too","Multiply maps everywhere for Jesus!"],share:"Share"},Gh={labels:{country:"Country:",population:"Population:",language:"Language:",religion:"Religion:",languageFamily:"Language Family:",peopleCommitted:"Committed to pray:"},messages:{noDescription:"No description available."}},jh={title:{prayer:"Prayer Progress",engagement:"Engagement Progress",adoption:"Adoption Progress",languageFamilies:"Language Families",doxaRegions:"Doxa Regions",affinityBlocs:"Affinity Blocks",gospelResources:"Gospel Resources"},header:{default:"Legend",collapsed:"Legend",peopleGroupFallback:"People Group"},prayer:{needsPrayer:"Needs Prayer",hasPrayer:"Has Prayer",fullPrayerCoverage:"Full Prayer Coverage"},progress:{title:"Progress",covered:"{covered} of {total} people groups covered in prayer · {pct}%",short:"{covered} of {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Unengaged",hasEngagement:"Engaged"},adoption:{needsAdoption:"Needs Adoption",hasAdoption:"Has Adoption"},columns:{upgs:"UUPGs",population:"Population",name:"Name"},footer:{total:"Total"},sortByUpgs:"Sort by UUPGs",sortByPop:"Sort by Population",colLabel:{religion:"UUPG Religions",prayer:"Prayer Status",engagement:"Engagement Status",adoption:"Adoption Status",status:"Status"},titleBar:{legend:"Legend",peopleGroups:"People Groups",wagfRegions:"WAGF Regions",languages:"Languages"}},Uh={menuComingSoon:"Menu coming soon"},Kh={clusterByRegion:"By Doxa Region",clusterByLanguageFamily:"By Language Family",clusterByGospelResource:"By Gospel Resource"},zh={country:{wagfRegion:"WAGF Region",wagfBlock:"WAGF Bloc",country:"Country",uupgCount:"UUPG Count"}},Hh={header:"CURRENT PRAYER LAP",lap:"Lap",upgs:"UUPGs",separator:" of "},Vh={"%count% people groups in %countries% countries":"%count% people groups in %countries% countries","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.","1+ People Praying":"1+ People Praying","100+ People Praying":"100+ People Praying",Adopted:"Adopted","Adoption Progress":"Adoption Progress","All Regions":"All Regions","Alternate Names":"Alternate Names","Clear All":"Clear All",Countries:"Countries","Countries in this region":"Countries in this region",Country:"Country",Engaged:"Engaged","Engagement Progress":"Engagement Progress","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Every unengaged people group adopted by a church committed to prayer, giving, and sending","Exact Search":"Exact Search","Find unreached people groups by region and country.":"Find unreached people groups by region and country.","Full Profile":"Full Profile",Goal:"Goal","Hide Filters":"Hide Filters",Intercessors:"Intercessors","Load More":"Load More","Loading results...":"Loading results...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilize 100+ people praying daily for each DOXA people group","No One Praying":"No One Praying","No options found":"No options found","No unengaged people groups by 2033":"No unengaged people groups by 2033","Not Adopted":"Not Adopted",Other:"Other","Page Not Found":"Page Not Found","People Group":"People Group","People Groups":"People Groups","People committed to praying":"People committed to praying",Population:"Population","Prayer Coverage":"Prayer Coverage","Prayer coverage progress":"Prayer coverage progress",Regions:"Regions",Religion:"Religion","Search names, country/continent, religions...":"Search names, country/continent, religions...","See %region% dashboard":"See %region% dashboard","See All":"See All",Select:"Select","Show Filters":"Show Filters","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.",Total:"Total","Type to search...":"Type to search...","Unengaged people groups":"Unengaged people groups","WAGF Block":"WAGF Block","WAGF Region":"WAGF Region","people groups adopted":"people groups adopted","people groups engaged":"people groups engaged","View country posters":"View country posters","Hide country posters":"Hide country posters","No poster has been generated for this country yet.":"No poster has been generated for this country yet."},Wh={placeholder:"People, place, language, religion",labels:{people:"People:",place:"Place:",language:"Language:",religion:"Religion:"},kinds:{people:"People Group + Country",peopleGroup:"People Group",bloc:"Affinity Block",cluster:"People Cluster",country:"Country",region:"Region",family:"Language Family",languageKind:"Language",dialect:"Dialect",religionKind:"Religion"},sections:{within:"Within {selection}",allData:"All DOXA Data"}},Yh={prayer:"Prayer",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"People Groups (Affinity)",regions:"Regions",countries:"Countries","language-families":"Languages",religion:"Religions",family:"Lang Family",language:"Language",dialect:"Dialect/Variety",bloc:"Affinity Block",cluster:"Cluster",group:"People Group",pgic:"PG in Country",region:"WAGF Region",block:"WAGF Bloc",country:"Country"},qh={backToLegend:"Volver a la leyenda",closeDetailView:"Cerrar vista de detalle"},Jh={prayForThem:"Ora por ellos",adoptThem:"Adóptalos",moreInfo:"Más información",zoomIn:"Acercar",zoomOut:"Alejar",switchToLightMode:"Cambiar a modo claro",switchToDarkMode:"Cambiar a modo oscuro",resetView:"Restablecer vista",toggleFullscreen:"Alternar pantalla completa",aboutThisMap:"Acerca de este mapa",closeMenu:"Cerrar menú",reloadMap:"Recargar mapa",showClusters:"Mostrar clústeres",clusterSettings:"Ajustes de clústeres",startAutoFly:"Iniciar vuelo automático",stopFlight:"Detener vuelo",speedLabel:"Velocidad:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Compartir e incrustar"},Xh={labels:{country:"País:",population:"Población:",language:"Idioma:",religion:"Religión:",languageFamily:"Familia lingüística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"No hay descripción disponible."}},Zh={title:{prayer:"Progreso de oración",engagement:"Progreso de implicación",adoption:"Progreso de adopción",languageFamilies:"Familias lingüísticas",doxaRegions:"Regiones Doxa",affinityBlocs:"Bloques de afinidad",gospelResources:"Recursos del Evangelio"},header:{collapsed:"Leyenda",peopleGroupFallback:"Grupo de personas"},prayer:{needsPrayer:"Necesita oración",hasPrayer:"Tiene oración",fullPrayerCoverage:"Cobertura de oración completa"},progress:{title:"Progreso",covered:"{covered} de {total} grupos de personas cubiertos en oración · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesita implicación",hasEngagement:"Tiene implicación"},adoption:{needsAdoption:"Necesita adopción",hasAdoption:"Tiene adopción"},columns:{upgs:"UUPGs",population:"Población",name:"Nombre"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por población",colLabel:{religion:"Religiones UUPG",prayer:"Estado de oración",engagement:"Estado de compromiso",adoption:"Estado de adopción",status:"Estado"},titleBar:{legend:"Leyenda",peopleGroups:"Pueblos",wagfRegions:"Regiones WAGF",languages:"Idiomas"}},Qh={menuComingSoon:"Menú próximamente"},em={clusterByRegion:"Por región Doxa",clusterByLanguageFamily:"Por familia lingüística",clusterByGospelResource:"Por recurso del Evangelio"},tm={header:"VUELTA DE ORACIÓN ACTUAL",lap:"Vuelta",upgs:"UUPGs",separator:" de "},om={"%count% people groups in %countries% countries":"%count% grupos étnicos en %countries% países","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% tiene %count% grupos étnicos en %countries% países. El color de cada punto indica cuántas personas oran por ese grupo étnico.","1+ People Praying":"1+ personas orando","100+ People Praying":"100+ personas orando",Adopted:"Aprobado","Adoption Progress":"Progreso de la adopción","All Regions":"Todas las regiones","Alternate Names":"Nombres alternativos","Clear All":"Borrar todo",Countries:"Países","Countries in this region":"Países de esta región",Country:"País",Engaged:"Comprometido","Engagement Progress":"Progreso del compromiso","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Cada grupo étnico no evangelizado adoptado por una iglesia comprometida con la oración, la ofrenda y el envío.","Exact Search":"Búsqueda exacta","Find unreached people groups by region and country.":"Encuentra grupos étnicos no alcanzados por región y país.","Full Profile":"Perfil completo",Goal:"Meta","Hide Filters":"Ocultar filtros",Intercessors:"Intercesores","Load More":"Cargar más","Loading results...":"Cargando resultados...","Mobilize 100+ people praying daily for each DOXA people group":"Movilizar a más de 100 personas que oren diariamente por cada grupo étnico DOXA.","No One Praying":"Nadie orando","No options found":"No se han encontrado opciones","No unengaged people groups by 2033":"No habrá grupos étnicos sin evangelizar para 2033","Not Adopted":"No adoptado",Other:"Otros","Page Not Found":"Página no encontrada","People Group":"Grupo Étnico","People Groups":"Grupos Étnicos","People committed to praying":"Personas comprometidas con la oración",Population:"Población","Prayer Coverage":"Cobertura de oración","Prayer coverage progress":"Progreso de la cobertura de oración",Regions:"Regiones",Religion:"Religión","Search names, country/continent, religions...":"Buscar nombres, país/continente, religiones...","See %region% dashboard":"Ver el panel de %region%","See All":"Ver todo",Select:"Seleccionar","Show Filters":"Mostrar filtros","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Hay %count% grupos étnicos en %country%. Consulta también el mapa para ver los grupos étnicos en la frontera de este país.",Total:"Total","Type to search...":"Escribe para buscar...","Unengaged people groups":"Grupos étnicos no comprometidos","WAGF Block":"Bloque WAGF","WAGF Region":"Región de la WAGF","people groups adopted":"grupos de personas adoptados","people groups engaged":"grupos étnicos comprometidos"},nm={placeholder:"Pueblo, lugar, idioma, religión",labels:{people:"Pueblo:",place:"Lugar:",language:"Idioma:",religion:"Religión:"},kinds:{people:"Pueblo + país",peopleGroup:"Pueblo",bloc:"Bloque de afinidad",cluster:"Clúster de pueblos",country:"País",region:"Región",family:"Familia lingüística",languageKind:"Idioma",dialect:"Dialecto",religionKind:"Religión"}},am={prayer:"Oración",adoption:"Adopción",engagement:"Compromiso","affinity-blocks":"Pueblos",regions:"Regiones",countries:"Países","language-families":"Idiomas",religion:"Religiones",family:"Familia lingüística",language:"Idioma",dialect:"Dialecto/Variedad",bloc:"Bloque de afinidad",cluster:"Clúster",group:"Pueblo",pgic:"Pueblo en país",region:"Región WAGF",block:"Bloque WAGF",country:"País"},rm={backToLegend:"Retour à la légende",closeDetailView:"Fermer la vue détaillée"},sm={prayForThem:"Priez pour eux",adoptThem:"Adoptez-les",moreInfo:"Plus d'infos",zoomIn:"Zoom avant",zoomOut:"Zoom arrière",switchToLightMode:"Passer au mode clair",switchToDarkMode:"Passer au mode sombre",resetView:"Réinitialiser la vue",toggleFullscreen:"Basculer en plein écran",aboutThisMap:"À propos de cette carte",closeMenu:"Fermer le menu",reloadMap:"Recharger la carte",showClusters:"Afficher les clusters",clusterSettings:"Paramètres des clusters",startAutoFly:"Démarrer le vol auto",stopFlight:"Arrêter le vol",speedLabel:"Vitesse :",speedOption:{slow:"Lente",normal:"Normale",fast:"Rapide"},shareEmbed:"Partager et intégrer"},im={labels:{country:"Pays :",population:"Population :",language:"Langue :",religion:"Religion :",languageFamily:"Famille de langues :",peopleCommitted:"Engagés à prier :"},messages:{noDescription:"Aucune description disponible."}},lm={title:{prayer:"Progression de la prière",engagement:"Progression de l'engagement",adoption:"Progression de l'adoption",languageFamilies:"Familles de langues",doxaRegions:"Régions Doxa",affinityBlocs:"Blocs d'affinité",gospelResources:"Ressources de l'Évangile"},header:{collapsed:"Légende",peopleGroupFallback:"Groupe de personnes"},prayer:{needsPrayer:"Besoin de prière",hasPrayer:"Prière en cours",fullPrayerCoverage:"Couverture de prière complète"},progress:{title:"Progression",covered:"{covered} sur {total} groupes de personnes couverts par la prière · {pct}%",short:"{covered} sur {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Besoin d'engagement",hasEngagement:"Engagement en cours"},adoption:{needsAdoption:"Besoin d'adoption",hasAdoption:"Adoption en cours"},columns:{upgs:"UUPGs",population:"Population",name:"Nom"},footer:{total:"Total"},sortByUpgs:"Trier par UUPG",sortByPop:"Trier par population",colLabel:{religion:"Religions UUPG",prayer:"Statut de prière",engagement:"Statut d'engagement",adoption:"Statut d'adoption",status:"Statut"},titleBar:{legend:"Légende",peopleGroups:"Peuples",wagfRegions:"Régions WAGF",languages:"Langues"}},cm={menuComingSoon:"Menu bientôt disponible"},um={clusterByRegion:"Par région Doxa",clusterByLanguageFamily:"Par famille de langues",clusterByGospelResource:"Par ressource de l'Évangile"},dm={country:{wagfRegion:"Région WAGF",wagfBlock:"Bloc WAGF",country:"Pays",uupgCount:"Nombre d'UUPG"}},pm={header:"TOUR DE PRIÈRE ACTUEL",lap:"Tour",upgs:"UUPGs",separator:" sur "},gm={"%count% people groups in %countries% countries":"%count% peuples dans %countries% pays","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% compte %count% peuples répartis dans %countries% pays. La couleur de chaque point indique combien de personnes prient pour ce peuple.","1+ People Praying":"1+ personnes en prière","100+ People Praying":"100+ personnes en prière",Adopted:"Adopté","Adoption Progress":"Progrès de l'adoption","All Regions":"Toutes les régions","Alternate Names":"Autres noms","Clear All":"Tout effacer",Countries:"Pays","Countries in this region":"Pays de cette région",Country:"Pays",Engaged:"Engagé","Engagement Progress":"Progrès de l'engagement","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Chaque peuple non engagé adopté par une église locale engagée dans la prière, le don et l'envoi","Exact Search":"Recherche exacte","Find unreached people groups by region and country.":"Trouvez des peuples non atteints par région et par pays.","Full Profile":"Profil complet",Goal:"Objectif","Hide Filters":"Masquer les filtres",Intercessors:"Intercesseurs","Load More":"Afficher plus","Loading results...":"Chargement des résultats...","Mobilize 100+ people praying daily for each DOXA people group":"Mobiliser plus de 100 personnes priant chaque jour pour chaque peuple DOXA","No One Praying":"Personne ne prie","No options found":"Aucun lieu trouvé","No unengaged people groups by 2033":"Plus aucun peuple non engagé d'ici 2033","Not Adopted":"Non adopté",Other:"Autre","Page Not Found":"Page introuvable","People Group":"Peuple","People Groups":"Peuples","People committed to praying":"Personnes engagées dans la prière",Population:"Population","Prayer Coverage":"Couverture de prière","Prayer coverage progress":"Progression de la couverture de prière",Regions:"Régions",Religion:"Religion","Search names, country/continent, religions...":"Rechercher des noms, pays/continent, religions...","See %region% dashboard":"Voir le tableau de bord : %region%","See All":"Tout afficher",Select:"Sélectionner","Show Filters":"Afficher les filtres","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Il y a %count% peuples en %country%. Consultez la carte pour découvrir également les peuples situés à la frontière de ce pays.",Total:"Total","Type to search...":"Entrer votre recherche","Unengaged people groups":"Peuples non engagés","WAGF Block":"Bloc WAGF","WAGF Region":"Région WAGF","people groups adopted":"peuples adoptés","people groups engaged":"peuples engagés"},fm={placeholder:"Peuple, lieu, langue, religion",labels:{people:"Peuple :",place:"Lieu :",language:"Langue :",religion:"Religion :"},kinds:{people:"Peuple + pays",peopleGroup:"Peuple",bloc:"Bloc d'affinité",cluster:"Grappe de peuples",country:"Pays",region:"Région",family:"Famille linguistique",languageKind:"Langue",dialect:"Dialecte",religionKind:"Religion"}},hm={prayer:"Prière",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Peuples",regions:"Régions",countries:"Pays","language-families":"Langues",religion:"Religions",family:"Famille linguistique",language:"Langue",dialect:"Dialecte/Variété",bloc:"Bloc d'affinité",cluster:"Grappe",group:"Peuple",pgic:"Peuple dans le pays",region:"Région WAGF",block:"Bloc WAGF",country:"Pays"},mm={backToLegend:"लेजेंड पर वापस जाएं",closeDetailView:"विवरण दृश्य बंद करें"},bm={prayForThem:"उनके लिए प्रार्थना करें",adoptThem:"उन्हें गोद लें",moreInfo:"अधिक जानकारी",zoomIn:"ज़ूम इन",zoomOut:"ज़ूम आउट",switchToLightMode:"लाइट मोड पर जाएं",switchToDarkMode:"डार्क मोड पर जाएं",resetView:"दृश्य रीसेट करें",toggleFullscreen:"फ़ुलस्क्रीन टॉगल करें",aboutThisMap:"इस मानचित्र के बारे में",closeMenu:"मेनू बंद करें",reloadMap:"मानचित्र पुनः लोड करें",showClusters:"क्लस्टर दिखाएं",clusterSettings:"क्लस्टर सेटिंग्स",startAutoFly:"ऑटो फ्लाई शुरू करें",stopFlight:"उड़ान रोकें",speedLabel:"गति:",speedOption:{slow:"धीमी",normal:"सामान्य",fast:"तेज़"},shareEmbed:"साझा करें और एम्बेड करें"},ym={labels:{country:"देश:",population:"जनसंख्या:",language:"भाषा:",religion:"धर्म:",languageFamily:"भाषा परिवार:",peopleCommitted:"प्रार्थना के लिए प्रतिबद्ध:"},messages:{noDescription:"कोई विवरण उपलब्ध नहीं है।"}},_m={title:{prayer:"प्रार्थना प्रगति",engagement:"सहभागिता प्रगति",adoption:"गोद लेने की प्रगति",languageFamilies:"भाषा परिवार",doxaRegions:"Doxa क्षेत्र",affinityBlocs:"समानता समूह",gospelResources:"सुसमाचार संसाधन"},header:{collapsed:"किंवदंती",peopleGroupFallback:"जनजाति समूह"},prayer:{needsPrayer:"प्रार्थना चाहिए",hasPrayer:"प्रार्थना है",fullPrayerCoverage:"पूर्ण प्रार्थना कवरेज"},progress:{title:"प्रगति",covered:"{total} में से {covered} जनजाति समूह प्रार्थना में कवर · {pct}%",short:"{total} में से {covered} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"सहभागिता चाहिए",hasEngagement:"सहभागिता है"},adoption:{needsAdoption:"गोद लेना चाहिए",hasAdoption:"गोद लिया गया"},columns:{upgs:"UUPGs",population:"जनसंख्या"},footer:{total:"कुल"}},vm={menuComingSoon:"मेनू शीघ्र आ रहा है"},km={clusterByRegion:"Doxa क्षेत्र के अनुसार",clusterByLanguageFamily:"भाषा परिवार के अनुसार",clusterByGospelResource:"सुसमाचार संसाधन के अनुसार"},wm={header:"वर्तमान प्रार्थना चक्र",lap:"चक्र",upgs:"UUPGs",separator:" में से "},xm={"%count% people groups in %countries% countries":"%countries% देशों में %count% लोगों के समूह","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% में %countries% देशों में %count% लोगों के समूह हैं। प्रत्येक बिंदु का रंग दर्शाता है कि उस लोगों के समूह के लिए कितने लोग प्रार्थना कर रहे हैं।","1+ People Praying":"1+ लोग प्रार्थना कर रहे हैं","100+ People Praying":"100+ लोग प्रार्थना कर रहे हैं",Adopted:"दत्तक लिया गया","Adoption Progress":"दत्तक ग्रहण की प्रगति","All Regions":"सभी क्षेत्र","Alternate Names":"वैकल्पिक नाम","Clear All":"सभी साफ़ करें",Countries:"देश","Countries in this region":"इस क्षेत्र के देश",Country:"देश",Engaged:"प्रवेशित","Engagement Progress":"प्रवेश की प्रगति","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"प्रत्येक असंलग्न जनसमूह जिसे प्रार्थना, दान और भेजने के लिए प्रतिबद्ध एक चर्च ने अपनाया है।","Exact Search":"सटीक खोज","Find unreached people groups by region and country.":"क्षेत्र और देश के अनुसार अगम्य लोगों के समूह खोजें।","Full Profile":"पूर्ण प्रोफ़ाइल",Goal:"लक्ष्य","Hide Filters":"फ़िल्टर छिपाएँ",Intercessors:"मध्यस्थ","Load More":"और लोड करें","Loading results...":"परिणाम लोड हो रहे हैं..।","Mobilize 100+ people praying daily for each DOXA people group":"प्रत्येक DOXA जनसमूह के लिए प्रतिदिन प्रार्थना करने हेतु 100+ लोगों को सक्रिय करें।","No One Praying":"कोई प्रार्थना नहीं कर रहा","No options found":"कोई विकल्प नहीं मिला","No unengaged people groups by 2033":"2033 तक कोई भी संलग्न न किया गया जनसमूह नहीं रहेगा।","Not Adopted":"दत्तक नहीं लिया गया",Other:"अन्य","Page Not Found":"पृष्ठ नहीं मिला","People Group":"लोगों का समूह","People Groups":"लोगों के समूह","People committed to praying":"प्रार्थना के लिए प्रतिबद्ध लोग",Population:"जनसँख्या","Prayer Coverage":"प्रार्थना कवरेज","Prayer coverage progress":"प्रार्थना कवरेज की प्रगति",Regions:"क्षेत्र",Religion:"धर्म","Search names, country/continent, religions...":"नाम, देश/महाद्वीप, धर्म खोजें..।","See %region% dashboard":"%region% डैशबोर्ड देखें","See All":"सभी देखें",Select:"चयन/छंटनी","Show Filters":"फ़िल्टर दिखाएँ","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"%country% में %count% लोगों के समूह हैं। इस देश की सीमा पर स्थित लोगों के समूहों के लिए मानचित्र भी देखें।",Total:"संपूर्ण","Type to search...":"खोजने के लिए टाइप करें..।","Unengaged people groups":"अनलग्न लोगों के समूह","WAGF Block":"WAGF ब्लॉक","WAGF Region":"डब्ल्यूएजीएफ क्षेत्र","people groups adopted":"लोगों के समूहों ने अपनाया","people groups engaged":"प्रवेशित लोगों के समूह"},Am={placeholder:"लोग, स्थान, भाषा, धर्म",labels:{people:"लोग:",place:"स्थान:",language:"भाषा:",religion:"धर्म:"}},Sm={backToLegend:"Torna alla legenda",closeDetailView:"Chiudi vista dettaglio"},$m={prayForThem:"Prega per loro",adoptThem:"Adottali",moreInfo:"Più informazioni",zoomIn:"Ingrandisci",zoomOut:"Riduci",switchToLightMode:"Passa alla modalità chiara",switchToDarkMode:"Passa alla modalità scura",resetView:"Reimposta vista",toggleFullscreen:"Attiva/disattiva schermo intero",aboutThisMap:"Informazioni su questa mappa",closeMenu:"Chiudi menu",reloadMap:"Ricarica mappa",showClusters:"Mostra cluster",clusterSettings:"Impostazioni cluster",startAutoFly:"Avvia volo automatico",stopFlight:"Ferma volo",speedLabel:"Velocità:",speedOption:{slow:"Lenta",normal:"Normale",fast:"Veloce"},shareEmbed:"Condividi e incorpora"},Em={labels:{country:"Paese:",population:"Popolazione:",language:"Lingua:",religion:"Religione:",languageFamily:"Famiglia linguistica:",peopleCommitted:"Impegnati a pregare:"},messages:{noDescription:"Nessuna descrizione disponibile."}},Cm={title:{prayer:"Avanzamento della preghiera",engagement:"Avanzamento dell'impegno",adoption:"Avanzamento dell'adozione",languageFamilies:"Famiglie linguistiche",doxaRegions:"Regioni Doxa",affinityBlocs:"Blocchi di affinità",gospelResources:"Risorse del Vangelo"},header:{collapsed:"Legenda",peopleGroupFallback:"Gruppo di persone"},prayer:{needsPrayer:"Necessita preghiera",hasPrayer:"Ha preghiera",fullPrayerCoverage:"Copertura di preghiera completa"},progress:{title:"Avanzamento",covered:"{covered} di {total} gruppi di persone coperti dalla preghiera · {pct}%",short:"{covered} di {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necessita impegno",hasEngagement:"Ha impegno"},adoption:{needsAdoption:"Necessita adozione",hasAdoption:"Ha adozione"},columns:{upgs:"UUPGs",population:"Popolazione"},footer:{total:"Totale"}},Lm={menuComingSoon:"Menu in arrivo"},Tm={clusterByRegion:"Per regione Doxa",clusterByLanguageFamily:"Per famiglia linguistica",clusterByGospelResource:"Per risorsa del Vangelo"},Pm={header:"GIRO DI PREGHIERA ATTUALE",lap:"Giro",upgs:"UUPGs",separator:" di "},Mm={placeholder:"Popolo, luogo, lingua, religione",labels:{people:"Popolo:",place:"Luogo:",language:"Lingua:",religion:"Religione:"}},Nm={backToLegend:"Voltar à legenda",closeDetailView:"Fechar vista de detalhe"},Rm={prayForThem:"Ore por eles",adoptThem:"Adote-os",moreInfo:"Mais informações",zoomIn:"Ampliar",zoomOut:"Reduzir",switchToLightMode:"Mudar para modo claro",switchToDarkMode:"Mudar para modo escuro",resetView:"Repor vista",toggleFullscreen:"Alternar ecrã inteiro",aboutThisMap:"Sobre este mapa",closeMenu:"Fechar menu",reloadMap:"Recarregar mapa",showClusters:"Mostrar clusters",clusterSettings:"Definições de clusters",startAutoFly:"Iniciar voo automático",stopFlight:"Parar voo",speedLabel:"Velocidade:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Partilhar e incorporar"},Im={labels:{country:"País:",population:"População:",language:"Língua:",religion:"Religião:",languageFamily:"Família linguística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"Sem descrição disponível."}},Om={title:{prayer:"Progresso da oração",engagement:"Progresso do envolvimento",adoption:"Progresso da adoção",languageFamilies:"Famílias linguísticas",doxaRegions:"Regiões Doxa",affinityBlocs:"Blocos de afinidade",gospelResources:"Recursos do Evangelho"},header:{collapsed:"Legenda",peopleGroupFallback:"Grupo de pessoas"},prayer:{needsPrayer:"Precisa de oração",hasPrayer:"Tem oração",fullPrayerCoverage:"Cobertura de oração completa"},progress:{title:"Progresso",covered:"{covered} de {total} grupos de pessoas cobertos em oração · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Precisa de envolvimento",hasEngagement:"Tem envolvimento"},adoption:{needsAdoption:"Precisa de adoção",hasAdoption:"Tem adoção"},columns:{upgs:"UUPGs",population:"População",name:"Nome"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por população",colLabel:{religion:"Religiões UUPG",prayer:"Status de oração",engagement:"Status de engajamento",adoption:"Status de adoção",status:"Status"},titleBar:{legend:"Legenda",peopleGroups:"Povos",wagfRegions:"Regiões WAGF",languages:"Idiomas"}},Fm={menuComingSoon:"Menu em breve"},Dm={clusterByRegion:"Por região Doxa",clusterByLanguageFamily:"Por família linguística",clusterByGospelResource:"Por recurso do Evangelho"},Bm={header:"VOLTA DE ORAÇÃO ATUAL",lap:"Volta",upgs:"UUPGs",separator:" de "},Gm={"%count% people groups in %countries% countries":"%count% grupos étnicos em %countries% países","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% tem %count% grupos étnicos em %countries% países. A cor de cada ponto indica quantas pessoas oram por esse grupo étnico.","1+ People Praying":"1+ pessoas orando","100+ People Praying":"100+ pessoas orando",Adopted:"Aprovado","Adoption Progress":"Progresso da adoção","All Regions":"Todas as regiões","Alternate Names":"Nomes alternativos","Clear All":"Limpar tudo",Countries:"Países","Countries in this region":"Países desta região",Country:"País",Engaged:"Engajado","Engagement Progress":"Progresso do engajamento","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Cada grupo étnico não engajado adotado por uma igreja comprometida com a oração, contribuição e o envio","Exact Search":"Pesquisa exata","Find unreached people groups by region and country.":"Encontre grupos étnicos não alcançados por região e país.","Full Profile":"Perfil completo",Goal:"Meta","Hide Filters":"Ocultar filtros",Intercessors:"Intercessores","Load More":"Carregar mais","Loading results...":"A carregar resultados...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilizar mais de 100 pessoas para orar diariamente por cada grupo étnico DOXA","No One Praying":"Ninguém orando","No options found":"Não foram encontradas opções","No unengaged people groups by 2033":"Nenhum grupo étnico não engajado até 2033","Not Adopted":"Não adotado",Other:"Outros","Page Not Found":"Página não encontrada","People Group":"Grupo étnico","People Groups":"Grupos étnicos","People committed to praying":"Pessoas comprometidas com a oração",Population:"Aplicação","Prayer Coverage":"Cobertura de oração","Prayer coverage progress":"Progresso da cobertura de oração",Regions:"Regiões",Religion:"Religião","Search names, country/continent, religions...":"Busque nomes, país/continente, religiões...","See %region% dashboard":"Ver o painel: %region%","See All":"Ver tudo",Select:"Selecionar","Show Filters":"Mostrar filtros","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Existem %count% grupos étnicos em %country%. Verifique no mapa também os grupos étnicos na fronteira deste país.",Total:"Total","Type to search...":"Digite para pesquisar...","Unengaged people groups":"Grupos étnicos não engajados","WAGF Block":"Bloco WAGF","WAGF Region":"Região da WAGF","people groups adopted":"grupos étnicos adotados","people groups engaged":"grupos étnicos engajados"},jm={placeholder:"Povo, local, língua, religião",labels:{people:"Povo:",place:"Local:",language:"Língua:",religion:"Religião:"},kinds:{people:"Povo + país",peopleGroup:"Povo",bloc:"Bloco de afinidade",cluster:"Agrupamento de povos",country:"País",region:"Região",family:"Família linguística",languageKind:"Idioma",dialect:"Dialeto",religionKind:"Religião"}},Um={prayer:"Oração",adoption:"Adoção",engagement:"Engajamento","affinity-blocks":"Povos",regions:"Regiões",countries:"Países","language-families":"Idiomas",religion:"Religiões",family:"Família linguística",language:"Idioma",dialect:"Dialeto/Variedade",bloc:"Bloco de afinidade",cluster:"Agrupamento",group:"Povo",pgic:"Povo no país",region:"Região WAGF",block:"Bloco WAGF",country:"País"},Km={backToLegend:"Înapoi la legendă",closeDetailView:"Închide vizualizarea detaliată"},zm={prayForThem:"Roagă-te pentru ei",adoptThem:"Adoptă-i",moreInfo:"Mai multe informații",zoomIn:"Mărește",zoomOut:"Micșorează",switchToLightMode:"Comută la modul luminos",switchToDarkMode:"Comută la modul întunecat",resetView:"Resetează vizualizarea",toggleFullscreen:"Comută ecran complet",aboutThisMap:"Despre această hartă",closeMenu:"Închide meniul",reloadMap:"Reîncarcă harta",showClusters:"Arată clusterele",clusterSettings:"Setări clustere",startAutoFly:"Pornește zborul automat",stopFlight:"Oprește zborul",speedLabel:"Viteză:",speedOption:{slow:"Lent",normal:"Normal",fast:"Rapid"},shareEmbed:"Partajează și încorporează"},Hm={labels:{country:"Țară:",population:"Populație:",language:"Limbă:",religion:"Religie:",languageFamily:"Familie de limbi:",peopleCommitted:"Angajați să se roage:"},messages:{noDescription:"Nicio descriere disponibilă."}},Vm={title:{prayer:"Progresul rugăciunii",engagement:"Progresul implicării",adoption:"Progresul adopției",languageFamilies:"Familii de limbi",doxaRegions:"Regiuni Doxa",affinityBlocs:"Blocuri de afinitate",gospelResources:"Resurse ale Evangheliei"},header:{collapsed:"Legendă",peopleGroupFallback:"Grup de popoare"},prayer:{needsPrayer:"Necesită rugăciune",hasPrayer:"Are rugăciune",fullPrayerCoverage:"Acoperire completă de rugăciune"},progress:{title:"Progres",covered:"{covered} din {total} grupuri de popoare acoperite în rugăciune · {pct}%",short:"{covered} din {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesită implicare",hasEngagement:"Are implicare"},adoption:{needsAdoption:"Necesită adopție",hasAdoption:"Are adopție"},columns:{upgs:"UUPGs",population:"Populație"},footer:{total:"Total"}},Wm={menuComingSoon:"Meniu în curând"},Ym={clusterByRegion:"După regiune Doxa",clusterByLanguageFamily:"După familia de limbi",clusterByGospelResource:"După resursa Evangheliei"},qm={header:"TURUL DE RUGĂCIUNE CURENT",lap:"Tur",upgs:"UUPGs",separator:" din "},Jm={placeholder:"Popor, loc, limbă, religie",labels:{people:"Popor:",place:"Loc:",language:"Limbă:",religion:"Religie:"}},Xm={backToLegend:"Назад к легенде",closeDetailView:"Закрыть подробный вид"},Zm={prayForThem:"Молитесь о них",adoptThem:"Усыновите их",moreInfo:"Подробнее",zoomIn:"Приблизить",zoomOut:"Отдалить",switchToLightMode:"Переключить на светлый режим",switchToDarkMode:"Переключить на тёмный режим",resetView:"Сбросить вид",toggleFullscreen:"Полноэкранный режим",aboutThisMap:"Об этой карте",closeMenu:"Закрыть меню",reloadMap:"Перезагрузить карту",showClusters:"Показать кластеры",clusterSettings:"Настройки кластеров",startAutoFly:"Начать авто-полёт",stopFlight:"Остановить полёт",speedLabel:"Скорость:",speedOption:{slow:"Медленно",normal:"Нормально",fast:"Быстро"},shareEmbed:"Поделиться и встроить"},Qm={labels:{country:"Страна:",population:"Население:",language:"Язык:",religion:"Религия:",languageFamily:"Языковая семья:",peopleCommitted:"Обязались молиться:"},messages:{noDescription:"Описание недоступно."}},eb={title:{prayer:"Прогресс молитвы",engagement:"Прогресс вовлечённости",adoption:"Прогресс усыновления",languageFamilies:"Языковые семьи",doxaRegions:"Регионы Doxa",affinityBlocs:"Блоки родства",gospelResources:"Евангельские ресурсы"},header:{collapsed:"Условные обозначения",peopleGroupFallback:"Народная группа"},prayer:{needsPrayer:"Нуждается в молитве",hasPrayer:"Есть молитва",fullPrayerCoverage:"Полное молитвенное покрытие"},progress:{title:"Прогресс",covered:"{covered} из {total} народных групп охвачены молитвой · {pct}%",short:"{covered} из {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Нуждается в вовлечённости",hasEngagement:"Есть вовлечённость"},adoption:{needsAdoption:"Нуждается в усыновлении",hasAdoption:"Есть усыновление"},columns:{upgs:"UUPGs",population:"Население",name:"Название"},footer:{total:"Всего"},sortByUpgs:"Сортировать по UUPG",sortByPop:"Сортировать по населению",colLabel:{religion:"Религии UUPG",prayer:"Статус молитвы",engagement:"Статус вовлечённости",adoption:"Статус усыновления",status:"Статус"},titleBar:{legend:"Легенда",peopleGroups:"Народы",wagfRegions:"Регионы WAGF",languages:"Языки"}},tb={menuComingSoon:"Меню скоро появится"},ob={clusterByRegion:"По региону Doxa",clusterByLanguageFamily:"По языковой семье",clusterByGospelResource:"По евангельскому ресурсу"},nb={header:"ТЕКУЩИЙ КРУГ МОЛИТВЫ",lap:"Круг",upgs:"UUPGs",separator:" из "},ab={"%count% people groups in %countries% countries":"%count% групп людей в %countries% странах","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"В регионе %region% — %count% групп людей в %countries% странах. Цвет каждой точки показывает, сколько человек молится за эту группу людей.","1+ People Praying":"1+ человек молится","100+ People Praying":"100+ человек молятся",Adopted:"Принято","Adoption Progress":"Прогресс принятия","All Regions":"Все регионы","Alternate Names":"Альтернативные названия","Clear All":"Очистить всё",Countries:"Страны","Countries in this region":"Страны этого региона",Country:"Страна",Engaged:"Вовлечённый","Engagement Progress":"Прогресс вовлечения","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Каждая незадействованная народность принята церковью, приверженной молитве, пожертвованиям и посылке миссионеров","Exact Search":"Точный поиск","Find unreached people groups by region and country.":"Найдите недостигнутые группы людей по регионам и странам.","Full Profile":"Полный профиль",Goal:"Цель","Hide Filters":"Скрыть фильтры",Intercessors:"Ходатаи","Load More":"Загрузить еще","Loading results...":"Загрузка результатов...","Mobilize 100+ people praying daily for each DOXA people group":"Мобилизуйте 100+ человек для ежедневной молитвы за каждую народность DOXA","No One Praying":"Никто не молится","No options found":"Вариантов не найдено","No unengaged people groups by 2033":"К 2033 году не останется незадействованных народов","Not Adopted":"Не принято",Other:"Другое","Page Not Found":"Страница не найдена","People Group":"Группа людей","People Groups":"Группы людей","People committed to praying":"Люди, посвятившие себя молитве",Population:"Население","Prayer Coverage":"Молитвенное покрытие","Prayer coverage progress":"Прогресс молитвенного покрытия",Regions:"Регионы",Religion:"Религия","Search names, country/continent, religions...":"Поиск по именам, странам/континентам, религиям...","See %region% dashboard":"Открыть панель: %region%","See All":"Смотреть все",Select:"Выбрать","Show Filters":"Показать фильтры","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Страна %country% насчитывает %count% групп людей. Проверьте также на карте группы людей, расположенные вдоль границ этой страны.",Total:"Итого","Type to search...":"Введите текст для поиска...","Unengaged people groups":"Невовлечённые группы людей","WAGF Block":"Блок WAGF","WAGF Region":"Регион WAGF","people groups adopted":"принятые группы людей","people groups engaged":"вовлечённые группы людей"},rb={placeholder:"Народ, место, язык, религия",labels:{people:"Народ:",place:"Место:",language:"Язык:",religion:"Религия:"},kinds:{people:"Народ + страна",peopleGroup:"Народ",bloc:"Блок родства",cluster:"Кластер народов",country:"Страна",region:"Регион",family:"Языковая семья",languageKind:"Язык",dialect:"Диалект",religionKind:"Религия"}},sb={prayer:"Молитва",adoption:"Усыновление",engagement:"Вовлечённость","affinity-blocks":"Народы",regions:"Регионы",countries:"Страны","language-families":"Языки",religion:"Религии",family:"Языковая семья",language:"Язык",dialect:"Диалект/вариант",bloc:"Блок родства",cluster:"Кластер",group:"Народ",pgic:"Народ в стране",region:"Регион WAGF",block:"Блок WAGF",country:"Страна"},ib={backToLegend:"返回图例",closeDetailView:"关闭详情视图"},lb={prayForThem:"为他们祷告",adoptThem:"认领他们",moreInfo:"更多信息",zoomIn:"放大",zoomOut:"缩小",switchToLightMode:"切换至浅色模式",switchToDarkMode:"切换至深色模式",resetView:"重置视图",toggleFullscreen:"切换全屏",aboutThisMap:"关于此地图",closeMenu:"关闭菜单",reloadMap:"重新加载地图",showClusters:"显示聚类",clusterSettings:"聚类设置",startAutoFly:"开始自动飞行",stopFlight:"停止飞行",speedLabel:"速度:",speedOption:{slow:"慢",normal:"正常",fast:"快"},shareEmbed:"分享与嵌入"},cb={labels:{country:"国家:",population:"人口:",language:"语言:",religion:"宗教:",languageFamily:"语系:",peopleCommitted:"承诺祷告人数:"},messages:{noDescription:"暂无描述。"}},ub={title:{prayer:"祷告进度",engagement:"参与进度",adoption:"认领进度",languageFamilies:"语系",doxaRegions:"Doxa 区域",affinityBlocs:"亲缘板块",gospelResources:"福音资源"},header:{collapsed:"图例",peopleGroupFallback:"民族群体"},prayer:{needsPrayer:"需要祷告",hasPrayer:"已有祷告",fullPrayerCoverage:"全面祷告覆盖"},progress:{title:"进度",covered:"{total} 个民族群体中已有 {covered} 个被祷告覆盖 · {pct}%",short:"{covered} / {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"需要参与",hasEngagement:"已有参与"},adoption:{needsAdoption:"需要认领",hasAdoption:"已有认领"},columns:{upgs:"UUPGs",population:"人口"},footer:{total:"总计"}},db={menuComingSoon:"菜单即将推出"},pb={clusterByRegion:"按 Doxa 区域",clusterByLanguageFamily:"按语系",clusterByGospelResource:"按福音资源"},gb={header:"当前祷告轮次",lap:"第",upgs:"UUPGs",separator:" / "},fb={placeholder:"民族、地点、语言、宗教",labels:{people:"民族:",place:"地点:",language:"语言:",religion:"宗教:"}};/*! * shared v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function gb(e,t){typeof console<"u"&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const sr=typeof window<"u",Do=(e,t=!1)=>t?Symbol.for(e):Symbol(e),fb=(e,t,o)=>hb({l:e,k:t,s:o}),hb=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),gt=e=>typeof e=="number"&&isFinite(e),mb=e=>Fc(e)==="[object Date]",Bo=e=>Fc(e)==="[object RegExp]",ir=e=>Le(e)&&Object.keys(e).length===0,Lt=Object.assign,bb=Object.create,Qe=(e=null)=>bb(e);let Nc;const Co=()=>Nc||(Nc=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:Qe());function Rc(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function Ic(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function yb(e){return e=e.replace(/(\w+)\s*=\s*"([^"]*)"/g,(n,a,r)=>`${a}="${Ic(r)}"`),e=e.replace(/(\w+)\s*=\s*'([^']*)'/g,(n,a,r)=>`${a}='${Ic(r)}'`),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(e)&&(e=e.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach(n=>{e=e.replace(n,"$1javascript:")}),e}const _b=Object.prototype.hasOwnProperty;function Xt(e,t){return _b.call(e,t)}const it=Array.isArray,nt=e=>typeof e=="function",fe=e=>typeof e=="string",De=e=>typeof e=="boolean",He=e=>e!==null&&typeof e=="object",vb=e=>He(e)&&nt(e.then)&&nt(e.catch),Oc=Object.prototype.toString,Fc=e=>Oc.call(e),Le=e=>{if(!He(e))return!1;const t=Object.getPrototypeOf(e);return t===null||t.constructor===Object},kb=e=>e==null?"":it(e)||Le(e)&&e.toString===Oc?JSON.stringify(e,null,2):String(e);function wb(e,t=""){return e.reduce((o,n,a)=>a===0?o+n:o+t+n,"")}function lr(e){let t=e;return()=>++t}const cr=e=>!He(e)||it(e);function ur(e,t){if(cr(e)||cr(t))throw new Error("Invalid value");const o=[{src:e,des:t}];for(;o.length;){const{src:n,des:a}=o.pop();Object.keys(n).forEach(r=>{r!=="__proto__"&&(He(n[r])&&!He(a[r])&&(a[r]=Array.isArray(n[r])?[]:Qe()),cr(a[r])||cr(n[r])?a[r]=n[r]:o.push({src:n[r],des:a[r]}))})}}/*! + */function hb(e,t){typeof console<"u"&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const ir=typeof window<"u",Do=(e,t=!1)=>t?Symbol.for(e):Symbol(e),mb=(e,t,o)=>bb({l:e,k:t,s:o}),bb=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),gt=e=>typeof e=="number"&&isFinite(e),yb=e=>Bc(e)==="[object Date]",Bo=e=>Bc(e)==="[object RegExp]",lr=e=>Le(e)&&Object.keys(e).length===0,Lt=Object.assign,_b=Object.create,Qe=(e=null)=>_b(e);let Ic;const Co=()=>Ic||(Ic=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:Qe());function Oc(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function Fc(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function vb(e){return e=e.replace(/(\w+)\s*=\s*"([^"]*)"/g,(n,a,r)=>`${a}="${Fc(r)}"`),e=e.replace(/(\w+)\s*=\s*'([^']*)'/g,(n,a,r)=>`${a}='${Fc(r)}'`),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(e)&&(e=e.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach(n=>{e=e.replace(n,"$1javascript:")}),e}const kb=Object.prototype.hasOwnProperty;function Xt(e,t){return kb.call(e,t)}const it=Array.isArray,nt=e=>typeof e=="function",fe=e=>typeof e=="string",De=e=>typeof e=="boolean",He=e=>e!==null&&typeof e=="object",wb=e=>He(e)&&nt(e.then)&&nt(e.catch),Dc=Object.prototype.toString,Bc=e=>Dc.call(e),Le=e=>{if(!He(e))return!1;const t=Object.getPrototypeOf(e);return t===null||t.constructor===Object},xb=e=>e==null?"":it(e)||Le(e)&&e.toString===Dc?JSON.stringify(e,null,2):String(e);function Ab(e,t=""){return e.reduce((o,n,a)=>a===0?o+n:o+t+n,"")}function cr(e){let t=e;return()=>++t}const ur=e=>!He(e)||it(e);function dr(e,t){if(ur(e)||ur(t))throw new Error("Invalid value");const o=[{src:e,des:t}];for(;o.length;){const{src:n,des:a}=o.pop();Object.keys(n).forEach(r=>{r!=="__proto__"&&(He(n[r])&&!He(a[r])&&(a[r]=Array.isArray(n[r])?[]:Qe()),ur(a[r])||ur(n[r])?a[r]=n[r]:o.push({src:n[r],des:a[r]}))})}}/*! * message-compiler v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function xb(e,t,o){return{line:e,column:t,offset:o}}function dr(e,t,o){return{start:e,end:t}}const Ab=/\{([0-9a-zA-Z]+)\}/g;function Dc(e,...t){return t.length===1&&Sb(t[0])&&(t=t[0]),(!t||!t.hasOwnProperty)&&(t={}),e.replace(Ab,(o,n)=>t.hasOwnProperty(n)?t[n]:"")}const Bc=Object.assign,Gc=e=>typeof e=="string",Sb=e=>e!==null&&typeof e=="object";function jc(e,t=""){return e.reduce((o,n,a)=>a===0?o+n:o+t+n,"")}const xs={USE_MODULO_SYNTAX:1,__EXTEND_POINT__:2},$b={[xs.USE_MODULO_SYNTAX]:"Use modulo before '{{0}}'."};function Eb(e,t,...o){const n=Dc($b[e],...o||[]),a={message:String(n),code:e};return t&&(a.location=t),a}const Se={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16,__EXTEND_POINT__:17},Cb={[Se.EXPECTED_TOKEN]:"Expected token: '{0}'",[Se.INVALID_TOKEN_IN_PLACEHOLDER]:"Invalid token in placeholder: '{0}'",[Se.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER]:"Unterminated single quote in placeholder",[Se.UNKNOWN_ESCAPE_SEQUENCE]:"Unknown escape sequence: \\{0}",[Se.INVALID_UNICODE_ESCAPE_SEQUENCE]:"Invalid unicode escape sequence: {0}",[Se.UNBALANCED_CLOSING_BRACE]:"Unbalanced closing brace",[Se.UNTERMINATED_CLOSING_BRACE]:"Unterminated closing brace",[Se.EMPTY_PLACEHOLDER]:"Empty placeholder",[Se.NOT_ALLOW_NEST_PLACEHOLDER]:"Not allowed nest placeholder",[Se.INVALID_LINKED_FORMAT]:"Invalid linked format",[Se.MUST_HAVE_MESSAGES_IN_PLURAL]:"Plural must have messages",[Se.UNEXPECTED_EMPTY_LINKED_MODIFIER]:"Unexpected empty linked modifier",[Se.UNEXPECTED_EMPTY_LINKED_KEY]:"Unexpected empty linked key",[Se.UNEXPECTED_LEXICAL_ANALYSIS]:"Unexpected lexical analysis in token: '{0}'",[Se.UNHANDLED_CODEGEN_NODE_TYPE]:"unhandled codegen node type: '{0}'",[Se.UNHANDLED_MINIFIER_NODE_TYPE]:"unhandled mimifier node type: '{0}'"};function An(e,t,o={}){const{domain:n,messages:a,args:r}=o,s=Dc((a||Cb)[e]||"",...r||[]),i=new SyntaxError(String(s));return i.code=e,t&&(i.location=t),i.domain=n,i}function Lb(e){throw e}const Lo=" ",Tb="\r",Ot=` -`,Pb="\u2028",Mb="\u2029";function Nb(e){const t=e;let o=0,n=1,a=1,r=0;const s=S=>t[S]===Tb&&t[S+1]===Ot,i=S=>t[S]===Ot,l=S=>t[S]===Mb,u=S=>t[S]===Pb,c=S=>s(S)||i(S)||l(S)||u(S),p=()=>o,g=()=>n,k=()=>a,w=()=>r,_=S=>s(S)||l(S)||u(S)?Ot:t[S],d=()=>_(o),h=()=>_(o+r);function f(){return r=0,c(o)&&(n++,a=0),s(o)&&o++,o++,a++,t[o]}function m(){return s(o+r)&&r++,r++,t[o+r]}function v(){o=0,n=1,a=1,r=0}function x(S=0){r=S}function A(){const S=o+r;for(;S!==o;)f();r=0}return{index:p,line:g,column:k,peekOffset:w,charAt:_,currentChar:d,currentPeek:h,next:f,peek:m,reset:v,resetPeek:x,skipToPeek:A}}const Go=void 0,Rb=".",Uc="'",Ib="tokenizer";function Ob(e,t={}){const o=t.location!==!1,n=Nb(e),a=()=>n.index(),r=()=>xb(n.line(),n.column(),n.index()),s=r(),i=a(),l={currentType:14,offset:i,startLoc:s,endLoc:s,lastType:14,lastOffset:i,lastStartLoc:s,lastEndLoc:s,braceNest:0,inLinked:!1,text:""},u=()=>l,{onError:c}=t;function p(b,y,B,...V){const ue=u();if(y.column+=B,y.offset+=B,c){const se=o?dr(ue.startLoc,y):null,G=An(b,se,{domain:Ib,args:V});c(G)}}function g(b,y,B){b.endLoc=r(),b.currentType=y;const V={type:y};return o&&(V.loc=dr(b.startLoc,b.endLoc)),B!=null&&(V.value=B),V}const k=b=>g(b,14);function w(b,y){return b.currentChar()===y?(b.next(),y):(p(Se.EXPECTED_TOKEN,r(),0,y),"")}function _(b){let y="";for(;b.currentPeek()===Lo||b.currentPeek()===Ot;)y+=b.currentPeek(),b.peek();return y}function d(b){const y=_(b);return b.skipToPeek(),y}function h(b){if(b===Go)return!1;const y=b.charCodeAt(0);return y>=97&&y<=122||y>=65&&y<=90||y===95}function f(b){if(b===Go)return!1;const y=b.charCodeAt(0);return y>=48&&y<=57}function m(b,y){const{currentType:B}=y;if(B!==2)return!1;_(b);const V=h(b.currentPeek());return b.resetPeek(),V}function v(b,y){const{currentType:B}=y;if(B!==2)return!1;_(b);const V=b.currentPeek()==="-"?b.peek():b.currentPeek(),ue=f(V);return b.resetPeek(),ue}function x(b,y){const{currentType:B}=y;if(B!==2)return!1;_(b);const V=b.currentPeek()===Uc;return b.resetPeek(),V}function A(b,y){const{currentType:B}=y;if(B!==8)return!1;_(b);const V=b.currentPeek()===".";return b.resetPeek(),V}function S(b,y){const{currentType:B}=y;if(B!==9)return!1;_(b);const V=h(b.currentPeek());return b.resetPeek(),V}function T(b,y){const{currentType:B}=y;if(!(B===8||B===12))return!1;_(b);const V=b.currentPeek()===":";return b.resetPeek(),V}function I(b,y){const{currentType:B}=y;if(B!==10)return!1;const V=()=>{const se=b.currentPeek();return se==="{"?h(b.peek()):se==="@"||se==="%"||se==="|"||se===":"||se==="."||se===Lo||!se?!1:se===Ot?(b.peek(),V()):re(b,!1)},ue=V();return b.resetPeek(),ue}function H(b){_(b);const y=b.currentPeek()==="|";return b.resetPeek(),y}function W(b){const y=_(b),B=b.currentPeek()==="%"&&b.peek()==="{";return b.resetPeek(),{isModulo:B,hasSpace:y.length>0}}function re(b,y=!0){const B=(ue=!1,se="",G=!1)=>{const Y=b.currentPeek();return Y==="{"?se==="%"?!1:ue:Y==="@"||!Y?se==="%"?!0:ue:Y==="%"?(b.peek(),B(ue,"%",!0)):Y==="|"?se==="%"||G?!0:!(se===Lo||se===Ot):Y===Lo?(b.peek(),B(!0,Lo,G)):Y===Ot?(b.peek(),B(!0,Ot,G)):!0},V=B();return y&&b.resetPeek(),V}function P(b,y){const B=b.currentChar();return B===Go?Go:y(B)?(b.next(),B):null}function $(b){const y=b.charCodeAt(0);return y>=97&&y<=122||y>=65&&y<=90||y>=48&&y<=57||y===95||y===36}function M(b){return P(b,$)}function C(b){const y=b.charCodeAt(0);return y>=97&&y<=122||y>=65&&y<=90||y>=48&&y<=57||y===95||y===36||y===45}function N(b){return P(b,C)}function ne(b){const y=b.charCodeAt(0);return y>=48&&y<=57}function ge(b){return P(b,ne)}function L(b){const y=b.charCodeAt(0);return y>=48&&y<=57||y>=65&&y<=70||y>=97&&y<=102}function ae(b){return P(b,L)}function ie(b){let y="",B="";for(;y=ge(b);)B+=y;return B}function le(b){d(b);const y=b.currentChar();return y!=="%"&&p(Se.EXPECTED_TOKEN,r(),0,y),b.next(),"%"}function we(b){let y="";for(;;){const B=b.currentChar();if(B==="{"||B==="}"||B==="@"||B==="|"||!B)break;if(B==="%")if(re(b))y+=B,b.next();else break;else if(B===Lo||B===Ot)if(re(b))y+=B,b.next();else{if(H(b))break;y+=B,b.next()}else y+=B,b.next()}return y}function Me(b){d(b);let y="",B="";for(;y=N(b);)B+=y;return b.currentChar()===Go&&p(Se.UNTERMINATED_CLOSING_BRACE,r(),0),B}function Re(b){d(b);let y="";return b.currentChar()==="-"?(b.next(),y+=`-${ie(b)}`):y+=ie(b),b.currentChar()===Go&&p(Se.UNTERMINATED_CLOSING_BRACE,r(),0),y}function Oe(b){return b!==Uc&&b!==Ot}function Ie(b){d(b),w(b,"'");let y="",B="";for(;y=P(b,Oe);)y==="\\"?B+=Je(b):B+=y;const V=b.currentChar();return V===Ot||V===Go?(p(Se.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,r(),0),V===Ot&&(b.next(),w(b,"'")),B):(w(b,"'"),B)}function Je(b){const y=b.currentChar();switch(y){case"\\":case"'":return b.next(),`\\${y}`;case"u":return Xe(b,y,4);case"U":return Xe(b,y,6);default:return p(Se.UNKNOWN_ESCAPE_SEQUENCE,r(),0,y),""}}function Xe(b,y,B){w(b,y);let V="";for(let ue=0;ue{const V=b.currentChar();return V==="{"||V==="%"||V==="@"||V==="|"||V==="("||V===")"||!V||V===Lo?B:(B+=V,b.next(),y(B))};return y("")}function K(b){d(b);const y=w(b,"|");return d(b),y}function X(b,y){let B=null;switch(b.currentChar()){case"{":return y.braceNest>=1&&p(Se.NOT_ALLOW_NEST_PLACEHOLDER,r(),0),b.next(),B=g(y,2,"{"),d(b),y.braceNest++,B;case"}":return y.braceNest>0&&y.currentType===2&&p(Se.EMPTY_PLACEHOLDER,r(),0),b.next(),B=g(y,3,"}"),y.braceNest--,y.braceNest>0&&d(b),y.inLinked&&y.braceNest===0&&(y.inLinked=!1),B;case"@":return y.braceNest>0&&p(Se.UNTERMINATED_CLOSING_BRACE,r(),0),B=J(b,y)||k(y),y.braceNest=0,B;default:{let ue=!0,se=!0,G=!0;if(H(b))return y.braceNest>0&&p(Se.UNTERMINATED_CLOSING_BRACE,r(),0),B=g(y,1,K(b)),y.braceNest=0,y.inLinked=!1,B;if(y.braceNest>0&&(y.currentType===5||y.currentType===6||y.currentType===7))return p(Se.UNTERMINATED_CLOSING_BRACE,r(),0),y.braceNest=0,Z(b,y);if(ue=m(b,y))return B=g(y,5,Me(b)),d(b),B;if(se=v(b,y))return B=g(y,6,Re(b)),d(b),B;if(G=x(b,y))return B=g(y,7,Ie(b)),d(b),B;if(!ue&&!se&&!G)return B=g(y,13,E(b)),p(Se.INVALID_TOKEN_IN_PLACEHOLDER,r(),0,B.value),d(b),B;break}}return B}function J(b,y){const{currentType:B}=y;let V=null;const ue=b.currentChar();switch((B===8||B===9||B===12||B===10)&&(ue===Ot||ue===Lo)&&p(Se.INVALID_LINKED_FORMAT,r(),0),ue){case"@":return b.next(),V=g(y,8,"@"),y.inLinked=!0,V;case".":return d(b),b.next(),g(y,9,".");case":":return d(b),b.next(),g(y,10,":");default:return H(b)?(V=g(y,1,K(b)),y.braceNest=0,y.inLinked=!1,V):A(b,y)||T(b,y)?(d(b),J(b,y)):S(b,y)?(d(b),g(y,12,F(b))):I(b,y)?(d(b),ue==="{"?X(b,y)||V:g(y,11,O(b))):(B===8&&p(Se.INVALID_LINKED_FORMAT,r(),0),y.braceNest=0,y.inLinked=!1,Z(b,y))}}function Z(b,y){let B={type:14};if(y.braceNest>0)return X(b,y)||k(y);if(y.inLinked)return J(b,y)||k(y);switch(b.currentChar()){case"{":return X(b,y)||k(y);case"}":return p(Se.UNBALANCED_CLOSING_BRACE,r(),0),b.next(),g(y,3,"}");case"@":return J(b,y)||k(y);default:{if(H(b))return B=g(y,1,K(b)),y.braceNest=0,y.inLinked=!1,B;const{isModulo:ue,hasSpace:se}=W(b);if(ue)return se?g(y,0,we(b)):g(y,4,le(b));if(re(b))return g(y,0,we(b));break}}return B}function Q(){const{currentType:b,offset:y,startLoc:B,endLoc:V}=l;return l.lastType=b,l.lastOffset=y,l.lastStartLoc=B,l.lastEndLoc=V,l.offset=a(),l.startLoc=r(),n.currentChar()===Go?g(l,14):Z(n,l)}return{nextToken:Q,currentOffset:a,currentPosition:r,context:u}}const Fb="parser",Db=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function Bb(e,t,o){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const n=parseInt(t||o,16);return n<=55295||n>=57344?String.fromCodePoint(n):"�"}}}function Gb(e={}){const t=e.location!==!1,{onError:o,onWarn:n}=e;function a(m,v,x,A,...S){const T=m.currentPosition();if(T.offset+=A,T.column+=A,o){const I=t?dr(x,T):null,H=An(v,I,{domain:Fb,args:S});o(H)}}function r(m,v,x,A,...S){const T=m.currentPosition();if(T.offset+=A,T.column+=A,n){const I=t?dr(x,T):null;n(Eb(v,I,S))}}function s(m,v,x){const A={type:m};return t&&(A.start=v,A.end=v,A.loc={start:x,end:x}),A}function i(m,v,x,A){t&&(m.end=v,m.loc&&(m.loc.end=x))}function l(m,v){const x=m.context(),A=s(3,x.offset,x.startLoc);return A.value=v,i(A,m.currentOffset(),m.currentPosition()),A}function u(m,v){const x=m.context(),{lastOffset:A,lastStartLoc:S}=x,T=s(5,A,S);return T.index=parseInt(v,10),m.nextToken(),i(T,m.currentOffset(),m.currentPosition()),T}function c(m,v,x){const A=m.context(),{lastOffset:S,lastStartLoc:T}=A,I=s(4,S,T);return I.key=v,x===!0&&(I.modulo=!0),m.nextToken(),i(I,m.currentOffset(),m.currentPosition()),I}function p(m,v){const x=m.context(),{lastOffset:A,lastStartLoc:S}=x,T=s(9,A,S);return T.value=v.replace(Db,Bb),m.nextToken(),i(T,m.currentOffset(),m.currentPosition()),T}function g(m){const v=m.nextToken(),x=m.context(),{lastOffset:A,lastStartLoc:S}=x,T=s(8,A,S);return v.type!==12?(a(m,Se.UNEXPECTED_EMPTY_LINKED_MODIFIER,x.lastStartLoc,0),T.value="",i(T,A,S),{nextConsumeToken:v,node:T}):(v.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,x.lastStartLoc,0,Zt(v)),T.value=v.value||"",i(T,m.currentOffset(),m.currentPosition()),{node:T})}function k(m,v){const x=m.context(),A=s(7,x.offset,x.startLoc);return A.value=v,i(A,m.currentOffset(),m.currentPosition()),A}function w(m){const v=m.context(),x=s(6,v.offset,v.startLoc);let A=m.nextToken();if(A.type===9){const S=g(m);x.modifier=S.node,A=S.nextConsumeToken||m.nextToken()}switch(A.type!==10&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,v.lastStartLoc,0,Zt(A)),A=m.nextToken(),A.type===2&&(A=m.nextToken()),A.type){case 11:A.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,v.lastStartLoc,0,Zt(A)),x.key=k(m,A.value||"");break;case 5:A.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,v.lastStartLoc,0,Zt(A)),x.key=c(m,A.value||"");break;case 6:A.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,v.lastStartLoc,0,Zt(A)),x.key=u(m,A.value||"");break;case 7:A.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,v.lastStartLoc,0,Zt(A)),x.key=p(m,A.value||"");break;default:{a(m,Se.UNEXPECTED_EMPTY_LINKED_KEY,v.lastStartLoc,0);const S=m.context(),T=s(7,S.offset,S.startLoc);return T.value="",i(T,S.offset,S.startLoc),x.key=T,i(x,S.offset,S.startLoc),{nextConsumeToken:A,node:x}}}return i(x,m.currentOffset(),m.currentPosition()),{node:x}}function _(m){const v=m.context(),x=v.currentType===1?m.currentOffset():v.offset,A=v.currentType===1?v.endLoc:v.startLoc,S=s(2,x,A);S.items=[];let T=null,I=null;do{const re=T||m.nextToken();switch(T=null,re.type){case 0:re.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,v.lastStartLoc,0,Zt(re)),S.items.push(l(m,re.value||""));break;case 6:re.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,v.lastStartLoc,0,Zt(re)),S.items.push(u(m,re.value||""));break;case 4:I=!0;break;case 5:re.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,v.lastStartLoc,0,Zt(re)),S.items.push(c(m,re.value||"",!!I)),I&&(r(m,xs.USE_MODULO_SYNTAX,v.lastStartLoc,0,Zt(re)),I=null);break;case 7:re.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,v.lastStartLoc,0,Zt(re)),S.items.push(p(m,re.value||""));break;case 8:{const P=w(m);S.items.push(P.node),T=P.nextConsumeToken||null;break}}}while(v.currentType!==14&&v.currentType!==1);const H=v.currentType===1?v.lastOffset:m.currentOffset(),W=v.currentType===1?v.lastEndLoc:m.currentPosition();return i(S,H,W),S}function d(m,v,x,A){const S=m.context();let T=A.items.length===0;const I=s(1,v,x);I.cases=[],I.cases.push(A);do{const H=_(m);T||(T=H.items.length===0),I.cases.push(H)}while(S.currentType!==14);return T&&a(m,Se.MUST_HAVE_MESSAGES_IN_PLURAL,x,0),i(I,m.currentOffset(),m.currentPosition()),I}function h(m){const v=m.context(),{offset:x,startLoc:A}=v,S=_(m);return v.currentType===14?S:d(m,x,A,S)}function f(m){const v=Ob(m,Bc({},e)),x=v.context(),A=s(0,x.offset,x.startLoc);return t&&A.loc&&(A.loc.source=m),A.body=h(v),e.onCacheKey&&(A.cacheKey=e.onCacheKey(m)),x.currentType!==14&&a(v,Se.UNEXPECTED_LEXICAL_ANALYSIS,x.lastStartLoc,0,m[x.offset]||""),i(A,v.currentOffset(),v.currentPosition()),A}return{parse:f}}function Zt(e){if(e.type===14)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function jb(e,t={}){const o={ast:e,helpers:new Set};return{context:()=>o,helper:r=>(o.helpers.add(r),r)}}function Kc(e,t){for(let o=0;ozc(o)),e}function zc(e){if(e.items.length===1){const t=e.items[0];(t.type===3||t.type===9)&&(e.static=t.value,delete t.value)}else{const t=[];for(let o=0;os;function l(_,d){s.code+=_}function u(_,d=!0){const h=d?n:"";l(a?h+" ".repeat(_):h)}function c(_=!0){const d=++s.indentLevel;_&&u(d)}function p(_=!0){const d=--s.indentLevel;_&&u(d)}function g(){u(s.indentLevel)}return{context:i,push:l,indent:c,deindent:p,newline:g,helper:_=>`_${_}`,needIndent:()=>s.needIndent}}function Wb(e,t){const{helper:o}=e;e.push(`${o("linked")}(`),$n(e,t.key),t.modifier?(e.push(", "),$n(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function Yb(e,t){const{helper:o,needIndent:n}=e;e.push(`${o("normalize")}([`),e.indent(n());const a=t.items.length;for(let r=0;r1){e.push(`${o("plural")}([`),e.indent(n());const a=t.cases.length;for(let r=0;r{const o=Gc(t.mode)?t.mode:"normal",n=Gc(t.filename)?t.filename:"message.intl";t.sourceMap;const a=t.breakLineCode!=null?t.breakLineCode:o==="arrow"?";":` -`,r=t.needIndent?t.needIndent:o!=="arrow",s=e.helpers||[],i=Vb(e,{filename:n,breakLineCode:a,needIndent:r});i.push(o==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),i.indent(r),s.length>0&&(i.push(`const { ${jc(s.map(c=>`${c}: _${c}`),", ")} } = ctx`),i.newline()),i.push("return "),$n(i,e),i.deindent(r),i.push("}"),delete e.helpers;const{code:l,map:u}=i.context();return{ast:e,code:l,map:u?u.toJSON():void 0}};function Zb(e,t={}){const o=Bc({},t),n=!!o.jit,a=!!o.minify,r=o.optimize==null?!0:o.optimize,i=Gb(o).parse(e);return n?(r&&Kb(i),a&&Sn(i),{ast:i,code:""}):(Ub(i,o),Xb(i,o))}/*! + */function Sb(e,t,o){return{line:e,column:t,offset:o}}function pr(e,t,o){return{start:e,end:t}}const $b=/\{([0-9a-zA-Z]+)\}/g;function Gc(e,...t){return t.length===1&&Eb(t[0])&&(t=t[0]),(!t||!t.hasOwnProperty)&&(t={}),e.replace($b,(o,n)=>t.hasOwnProperty(n)?t[n]:"")}const jc=Object.assign,Uc=e=>typeof e=="string",Eb=e=>e!==null&&typeof e=="object";function Kc(e,t=""){return e.reduce((o,n,a)=>a===0?o+n:o+t+n,"")}const Ss={USE_MODULO_SYNTAX:1,__EXTEND_POINT__:2},Cb={[Ss.USE_MODULO_SYNTAX]:"Use modulo before '{{0}}'."};function Lb(e,t,...o){const n=Gc(Cb[e],...o||[]),a={message:String(n),code:e};return t&&(a.location=t),a}const Se={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16,__EXTEND_POINT__:17},Tb={[Se.EXPECTED_TOKEN]:"Expected token: '{0}'",[Se.INVALID_TOKEN_IN_PLACEHOLDER]:"Invalid token in placeholder: '{0}'",[Se.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER]:"Unterminated single quote in placeholder",[Se.UNKNOWN_ESCAPE_SEQUENCE]:"Unknown escape sequence: \\{0}",[Se.INVALID_UNICODE_ESCAPE_SEQUENCE]:"Invalid unicode escape sequence: {0}",[Se.UNBALANCED_CLOSING_BRACE]:"Unbalanced closing brace",[Se.UNTERMINATED_CLOSING_BRACE]:"Unterminated closing brace",[Se.EMPTY_PLACEHOLDER]:"Empty placeholder",[Se.NOT_ALLOW_NEST_PLACEHOLDER]:"Not allowed nest placeholder",[Se.INVALID_LINKED_FORMAT]:"Invalid linked format",[Se.MUST_HAVE_MESSAGES_IN_PLURAL]:"Plural must have messages",[Se.UNEXPECTED_EMPTY_LINKED_MODIFIER]:"Unexpected empty linked modifier",[Se.UNEXPECTED_EMPTY_LINKED_KEY]:"Unexpected empty linked key",[Se.UNEXPECTED_LEXICAL_ANALYSIS]:"Unexpected lexical analysis in token: '{0}'",[Se.UNHANDLED_CODEGEN_NODE_TYPE]:"unhandled codegen node type: '{0}'",[Se.UNHANDLED_MINIFIER_NODE_TYPE]:"unhandled mimifier node type: '{0}'"};function An(e,t,o={}){const{domain:n,messages:a,args:r}=o,s=Gc((a||Tb)[e]||"",...r||[]),i=new SyntaxError(String(s));return i.code=e,t&&(i.location=t),i.domain=n,i}function Pb(e){throw e}const Lo=" ",Mb="\r",Ot=` +`,Nb="\u2028",Rb="\u2029";function Ib(e){const t=e;let o=0,n=1,a=1,r=0;const s=S=>t[S]===Mb&&t[S+1]===Ot,i=S=>t[S]===Ot,l=S=>t[S]===Rb,u=S=>t[S]===Nb,c=S=>s(S)||i(S)||l(S)||u(S),p=()=>o,g=()=>n,w=()=>a,b=()=>r,y=S=>s(S)||l(S)||u(S)?Ot:t[S],d=()=>y(o),h=()=>y(o+r);function f(){return r=0,c(o)&&(n++,a=0),s(o)&&o++,o++,a++,t[o]}function m(){return s(o+r)&&r++,r++,t[o+r]}function k(){o=0,n=1,a=1,r=0}function x(S=0){r=S}function A(){const S=o+r;for(;S!==o;)f();r=0}return{index:p,line:g,column:w,peekOffset:b,charAt:y,currentChar:d,currentPeek:h,next:f,peek:m,reset:k,resetPeek:x,skipToPeek:A}}const Go=void 0,Ob=".",zc="'",Fb="tokenizer";function Db(e,t={}){const o=t.location!==!1,n=Ib(e),a=()=>n.index(),r=()=>Sb(n.line(),n.column(),n.index()),s=r(),i=a(),l={currentType:14,offset:i,startLoc:s,endLoc:s,lastType:14,lastOffset:i,lastStartLoc:s,lastEndLoc:s,braceNest:0,inLinked:!1,text:""},u=()=>l,{onError:c}=t;function p(_,v,B,...V){const ue=u();if(v.column+=B,v.offset+=B,c){const se=o?pr(ue.startLoc,v):null,G=An(_,se,{domain:Fb,args:V});c(G)}}function g(_,v,B){_.endLoc=r(),_.currentType=v;const V={type:v};return o&&(V.loc=pr(_.startLoc,_.endLoc)),B!=null&&(V.value=B),V}const w=_=>g(_,14);function b(_,v){return _.currentChar()===v?(_.next(),v):(p(Se.EXPECTED_TOKEN,r(),0,v),"")}function y(_){let v="";for(;_.currentPeek()===Lo||_.currentPeek()===Ot;)v+=_.currentPeek(),_.peek();return v}function d(_){const v=y(_);return _.skipToPeek(),v}function h(_){if(_===Go)return!1;const v=_.charCodeAt(0);return v>=97&&v<=122||v>=65&&v<=90||v===95}function f(_){if(_===Go)return!1;const v=_.charCodeAt(0);return v>=48&&v<=57}function m(_,v){const{currentType:B}=v;if(B!==2)return!1;y(_);const V=h(_.currentPeek());return _.resetPeek(),V}function k(_,v){const{currentType:B}=v;if(B!==2)return!1;y(_);const V=_.currentPeek()==="-"?_.peek():_.currentPeek(),ue=f(V);return _.resetPeek(),ue}function x(_,v){const{currentType:B}=v;if(B!==2)return!1;y(_);const V=_.currentPeek()===zc;return _.resetPeek(),V}function A(_,v){const{currentType:B}=v;if(B!==8)return!1;y(_);const V=_.currentPeek()===".";return _.resetPeek(),V}function S(_,v){const{currentType:B}=v;if(B!==9)return!1;y(_);const V=h(_.currentPeek());return _.resetPeek(),V}function L(_,v){const{currentType:B}=v;if(!(B===8||B===12))return!1;y(_);const V=_.currentPeek()===":";return _.resetPeek(),V}function P(_,v){const{currentType:B}=v;if(B!==10)return!1;const V=()=>{const se=_.currentPeek();return se==="{"?h(_.peek()):se==="@"||se==="%"||se==="|"||se===":"||se==="."||se===Lo||!se?!1:se===Ot?(_.peek(),V()):re(_,!1)},ue=V();return _.resetPeek(),ue}function z(_){y(_);const v=_.currentPeek()==="|";return _.resetPeek(),v}function W(_){const v=y(_),B=_.currentPeek()==="%"&&_.peek()==="{";return _.resetPeek(),{isModulo:B,hasSpace:v.length>0}}function re(_,v=!0){const B=(ue=!1,se="",G=!1)=>{const Y=_.currentPeek();return Y==="{"?se==="%"?!1:ue:Y==="@"||!Y?se==="%"?!0:ue:Y==="%"?(_.peek(),B(ue,"%",!0)):Y==="|"?se==="%"||G?!0:!(se===Lo||se===Ot):Y===Lo?(_.peek(),B(!0,Lo,G)):Y===Ot?(_.peek(),B(!0,Ot,G)):!0},V=B();return v&&_.resetPeek(),V}function M(_,v){const B=_.currentChar();return B===Go?Go:v(B)?(_.next(),B):null}function F(_){const v=_.charCodeAt(0);return v>=97&&v<=122||v>=65&&v<=90||v>=48&&v<=57||v===95||v===36}function T(_){return M(_,F)}function $(_){const v=_.charCodeAt(0);return v>=97&&v<=122||v>=65&&v<=90||v>=48&&v<=57||v===95||v===36||v===45}function I(_){return M(_,$)}function ne(_){const v=_.charCodeAt(0);return v>=48&&v<=57}function ge(_){return M(_,ne)}function C(_){const v=_.charCodeAt(0);return v>=48&&v<=57||v>=65&&v<=70||v>=97&&v<=102}function ae(_){return M(_,C)}function ie(_){let v="",B="";for(;v=ge(_);)B+=v;return B}function le(_){d(_);const v=_.currentChar();return v!=="%"&&p(Se.EXPECTED_TOKEN,r(),0,v),_.next(),"%"}function we(_){let v="";for(;;){const B=_.currentChar();if(B==="{"||B==="}"||B==="@"||B==="|"||!B)break;if(B==="%")if(re(_))v+=B,_.next();else break;else if(B===Lo||B===Ot)if(re(_))v+=B,_.next();else{if(z(_))break;v+=B,_.next()}else v+=B,_.next()}return v}function Me(_){d(_);let v="",B="";for(;v=I(_);)B+=v;return _.currentChar()===Go&&p(Se.UNTERMINATED_CLOSING_BRACE,r(),0),B}function Re(_){d(_);let v="";return _.currentChar()==="-"?(_.next(),v+=`-${ie(_)}`):v+=ie(_),_.currentChar()===Go&&p(Se.UNTERMINATED_CLOSING_BRACE,r(),0),v}function Oe(_){return _!==zc&&_!==Ot}function Ie(_){d(_),b(_,"'");let v="",B="";for(;v=M(_,Oe);)v==="\\"?B+=Je(_):B+=v;const V=_.currentChar();return V===Ot||V===Go?(p(Se.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,r(),0),V===Ot&&(_.next(),b(_,"'")),B):(b(_,"'"),B)}function Je(_){const v=_.currentChar();switch(v){case"\\":case"'":return _.next(),`\\${v}`;case"u":return Xe(_,v,4);case"U":return Xe(_,v,6);default:return p(Se.UNKNOWN_ESCAPE_SEQUENCE,r(),0,v),""}}function Xe(_,v,B){b(_,v);let V="";for(let ue=0;ue{const V=_.currentChar();return V==="{"||V==="%"||V==="@"||V==="|"||V==="("||V===")"||!V||V===Lo?B:(B+=V,_.next(),v(B))};return v("")}function K(_){d(_);const v=b(_,"|");return d(_),v}function X(_,v){let B=null;switch(_.currentChar()){case"{":return v.braceNest>=1&&p(Se.NOT_ALLOW_NEST_PLACEHOLDER,r(),0),_.next(),B=g(v,2,"{"),d(_),v.braceNest++,B;case"}":return v.braceNest>0&&v.currentType===2&&p(Se.EMPTY_PLACEHOLDER,r(),0),_.next(),B=g(v,3,"}"),v.braceNest--,v.braceNest>0&&d(_),v.inLinked&&v.braceNest===0&&(v.inLinked=!1),B;case"@":return v.braceNest>0&&p(Se.UNTERMINATED_CLOSING_BRACE,r(),0),B=J(_,v)||w(v),v.braceNest=0,B;default:{let ue=!0,se=!0,G=!0;if(z(_))return v.braceNest>0&&p(Se.UNTERMINATED_CLOSING_BRACE,r(),0),B=g(v,1,K(_)),v.braceNest=0,v.inLinked=!1,B;if(v.braceNest>0&&(v.currentType===5||v.currentType===6||v.currentType===7))return p(Se.UNTERMINATED_CLOSING_BRACE,r(),0),v.braceNest=0,Z(_,v);if(ue=m(_,v))return B=g(v,5,Me(_)),d(_),B;if(se=k(_,v))return B=g(v,6,Re(_)),d(_),B;if(G=x(_,v))return B=g(v,7,Ie(_)),d(_),B;if(!ue&&!se&&!G)return B=g(v,13,E(_)),p(Se.INVALID_TOKEN_IN_PLACEHOLDER,r(),0,B.value),d(_),B;break}}return B}function J(_,v){const{currentType:B}=v;let V=null;const ue=_.currentChar();switch((B===8||B===9||B===12||B===10)&&(ue===Ot||ue===Lo)&&p(Se.INVALID_LINKED_FORMAT,r(),0),ue){case"@":return _.next(),V=g(v,8,"@"),v.inLinked=!0,V;case".":return d(_),_.next(),g(v,9,".");case":":return d(_),_.next(),g(v,10,":");default:return z(_)?(V=g(v,1,K(_)),v.braceNest=0,v.inLinked=!1,V):A(_,v)||L(_,v)?(d(_),J(_,v)):S(_,v)?(d(_),g(v,12,O(_))):P(_,v)?(d(_),ue==="{"?X(_,v)||V:g(v,11,R(_))):(B===8&&p(Se.INVALID_LINKED_FORMAT,r(),0),v.braceNest=0,v.inLinked=!1,Z(_,v))}}function Z(_,v){let B={type:14};if(v.braceNest>0)return X(_,v)||w(v);if(v.inLinked)return J(_,v)||w(v);switch(_.currentChar()){case"{":return X(_,v)||w(v);case"}":return p(Se.UNBALANCED_CLOSING_BRACE,r(),0),_.next(),g(v,3,"}");case"@":return J(_,v)||w(v);default:{if(z(_))return B=g(v,1,K(_)),v.braceNest=0,v.inLinked=!1,B;const{isModulo:ue,hasSpace:se}=W(_);if(ue)return se?g(v,0,we(_)):g(v,4,le(_));if(re(_))return g(v,0,we(_));break}}return B}function Q(){const{currentType:_,offset:v,startLoc:B,endLoc:V}=l;return l.lastType=_,l.lastOffset=v,l.lastStartLoc=B,l.lastEndLoc=V,l.offset=a(),l.startLoc=r(),n.currentChar()===Go?g(l,14):Z(n,l)}return{nextToken:Q,currentOffset:a,currentPosition:r,context:u}}const Bb="parser",Gb=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function jb(e,t,o){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const n=parseInt(t||o,16);return n<=55295||n>=57344?String.fromCodePoint(n):"�"}}}function Ub(e={}){const t=e.location!==!1,{onError:o,onWarn:n}=e;function a(m,k,x,A,...S){const L=m.currentPosition();if(L.offset+=A,L.column+=A,o){const P=t?pr(x,L):null,z=An(k,P,{domain:Bb,args:S});o(z)}}function r(m,k,x,A,...S){const L=m.currentPosition();if(L.offset+=A,L.column+=A,n){const P=t?pr(x,L):null;n(Lb(k,P,S))}}function s(m,k,x){const A={type:m};return t&&(A.start=k,A.end=k,A.loc={start:x,end:x}),A}function i(m,k,x,A){t&&(m.end=k,m.loc&&(m.loc.end=x))}function l(m,k){const x=m.context(),A=s(3,x.offset,x.startLoc);return A.value=k,i(A,m.currentOffset(),m.currentPosition()),A}function u(m,k){const x=m.context(),{lastOffset:A,lastStartLoc:S}=x,L=s(5,A,S);return L.index=parseInt(k,10),m.nextToken(),i(L,m.currentOffset(),m.currentPosition()),L}function c(m,k,x){const A=m.context(),{lastOffset:S,lastStartLoc:L}=A,P=s(4,S,L);return P.key=k,x===!0&&(P.modulo=!0),m.nextToken(),i(P,m.currentOffset(),m.currentPosition()),P}function p(m,k){const x=m.context(),{lastOffset:A,lastStartLoc:S}=x,L=s(9,A,S);return L.value=k.replace(Gb,jb),m.nextToken(),i(L,m.currentOffset(),m.currentPosition()),L}function g(m){const k=m.nextToken(),x=m.context(),{lastOffset:A,lastStartLoc:S}=x,L=s(8,A,S);return k.type!==12?(a(m,Se.UNEXPECTED_EMPTY_LINKED_MODIFIER,x.lastStartLoc,0),L.value="",i(L,A,S),{nextConsumeToken:k,node:L}):(k.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,x.lastStartLoc,0,Zt(k)),L.value=k.value||"",i(L,m.currentOffset(),m.currentPosition()),{node:L})}function w(m,k){const x=m.context(),A=s(7,x.offset,x.startLoc);return A.value=k,i(A,m.currentOffset(),m.currentPosition()),A}function b(m){const k=m.context(),x=s(6,k.offset,k.startLoc);let A=m.nextToken();if(A.type===9){const S=g(m);x.modifier=S.node,A=S.nextConsumeToken||m.nextToken()}switch(A.type!==10&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Zt(A)),A=m.nextToken(),A.type===2&&(A=m.nextToken()),A.type){case 11:A.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Zt(A)),x.key=w(m,A.value||"");break;case 5:A.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Zt(A)),x.key=c(m,A.value||"");break;case 6:A.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Zt(A)),x.key=u(m,A.value||"");break;case 7:A.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Zt(A)),x.key=p(m,A.value||"");break;default:{a(m,Se.UNEXPECTED_EMPTY_LINKED_KEY,k.lastStartLoc,0);const S=m.context(),L=s(7,S.offset,S.startLoc);return L.value="",i(L,S.offset,S.startLoc),x.key=L,i(x,S.offset,S.startLoc),{nextConsumeToken:A,node:x}}}return i(x,m.currentOffset(),m.currentPosition()),{node:x}}function y(m){const k=m.context(),x=k.currentType===1?m.currentOffset():k.offset,A=k.currentType===1?k.endLoc:k.startLoc,S=s(2,x,A);S.items=[];let L=null,P=null;do{const re=L||m.nextToken();switch(L=null,re.type){case 0:re.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Zt(re)),S.items.push(l(m,re.value||""));break;case 6:re.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Zt(re)),S.items.push(u(m,re.value||""));break;case 4:P=!0;break;case 5:re.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Zt(re)),S.items.push(c(m,re.value||"",!!P)),P&&(r(m,Ss.USE_MODULO_SYNTAX,k.lastStartLoc,0,Zt(re)),P=null);break;case 7:re.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Zt(re)),S.items.push(p(m,re.value||""));break;case 8:{const M=b(m);S.items.push(M.node),L=M.nextConsumeToken||null;break}}}while(k.currentType!==14&&k.currentType!==1);const z=k.currentType===1?k.lastOffset:m.currentOffset(),W=k.currentType===1?k.lastEndLoc:m.currentPosition();return i(S,z,W),S}function d(m,k,x,A){const S=m.context();let L=A.items.length===0;const P=s(1,k,x);P.cases=[],P.cases.push(A);do{const z=y(m);L||(L=z.items.length===0),P.cases.push(z)}while(S.currentType!==14);return L&&a(m,Se.MUST_HAVE_MESSAGES_IN_PLURAL,x,0),i(P,m.currentOffset(),m.currentPosition()),P}function h(m){const k=m.context(),{offset:x,startLoc:A}=k,S=y(m);return k.currentType===14?S:d(m,x,A,S)}function f(m){const k=Db(m,jc({},e)),x=k.context(),A=s(0,x.offset,x.startLoc);return t&&A.loc&&(A.loc.source=m),A.body=h(k),e.onCacheKey&&(A.cacheKey=e.onCacheKey(m)),x.currentType!==14&&a(k,Se.UNEXPECTED_LEXICAL_ANALYSIS,x.lastStartLoc,0,m[x.offset]||""),i(A,k.currentOffset(),k.currentPosition()),A}return{parse:f}}function Zt(e){if(e.type===14)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function Kb(e,t={}){const o={ast:e,helpers:new Set};return{context:()=>o,helper:r=>(o.helpers.add(r),r)}}function Hc(e,t){for(let o=0;oVc(o)),e}function Vc(e){if(e.items.length===1){const t=e.items[0];(t.type===3||t.type===9)&&(e.static=t.value,delete t.value)}else{const t=[];for(let o=0;os;function l(y,d){s.code+=y}function u(y,d=!0){const h=d?n:"";l(a?h+" ".repeat(y):h)}function c(y=!0){const d=++s.indentLevel;y&&u(d)}function p(y=!0){const d=--s.indentLevel;y&&u(d)}function g(){u(s.indentLevel)}return{context:i,push:l,indent:c,deindent:p,newline:g,helper:y=>`_${y}`,needIndent:()=>s.needIndent}}function qb(e,t){const{helper:o}=e;e.push(`${o("linked")}(`),$n(e,t.key),t.modifier?(e.push(", "),$n(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function Jb(e,t){const{helper:o,needIndent:n}=e;e.push(`${o("normalize")}([`),e.indent(n());const a=t.items.length;for(let r=0;r1){e.push(`${o("plural")}([`),e.indent(n());const a=t.cases.length;for(let r=0;r{const o=Uc(t.mode)?t.mode:"normal",n=Uc(t.filename)?t.filename:"message.intl";t.sourceMap;const a=t.breakLineCode!=null?t.breakLineCode:o==="arrow"?";":` +`,r=t.needIndent?t.needIndent:o!=="arrow",s=e.helpers||[],i=Yb(e,{filename:n,breakLineCode:a,needIndent:r});i.push(o==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),i.indent(r),s.length>0&&(i.push(`const { ${Kc(s.map(c=>`${c}: _${c}`),", ")} } = ctx`),i.newline()),i.push("return "),$n(i,e),i.deindent(r),i.push("}"),delete e.helpers;const{code:l,map:u}=i.context();return{ast:e,code:l,map:u?u.toJSON():void 0}};function ey(e,t={}){const o=jc({},t),n=!!o.jit,a=!!o.minify,r=o.optimize==null?!0:o.optimize,i=Ub(o).parse(e);return n?(r&&Hb(i),a&&Sn(i),{ast:i,code:""}):(zb(i,o),Qb(i,o))}/*! * core-base v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function Qb(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Co().__INTLIFY_PROD_DEVTOOLS__=!1),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(Co().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(Co().__INTLIFY_DROP_MESSAGE_COMPILER__=!1)}function ho(e){return He(e)&&Ss(e)===0&&(Xt(e,"b")||Xt(e,"body"))}const Hc=["b","body"];function ey(e){return jo(e,Hc)}const Vc=["c","cases"];function ty(e){return jo(e,Vc,[])}const Wc=["s","static"];function oy(e){return jo(e,Wc)}const Yc=["i","items"];function ny(e){return jo(e,Yc,[])}const qc=["t","type"];function Ss(e){return jo(e,qc)}const Jc=["v","value"];function pr(e,t){const o=jo(e,Jc);if(o!=null)return o;throw sa(t)}const Xc=["m","modifier"];function ay(e){return jo(e,Xc)}const Zc=["k","key"];function ry(e){const t=jo(e,Zc);if(t)return t;throw sa(6)}function jo(e,t,o){for(let n=0;n{s===void 0?s=i:s+=i},g[1]=()=>{s!==void 0&&(t.push(s),s=void 0)},g[2]=()=>{g[0](),a++},g[3]=()=>{if(a>0)a--,n=4,g[0]();else{if(a=0,s===void 0||(s=uy(s),s===!1))return!1;g[1]()}};function k(){const w=e[o+1];if(n===5&&w==="'"||n===6&&w==='"')return o++,i="\\"+w,g[0](),!0}for(;n!==null;)if(o++,r=e[o],!(r==="\\"&&k())){if(l=cy(r),p=Uo[n],u=p[l]||p.l||8,u===8||(n=u[0],u[1]!==void 0&&(c=g[u[1]],c&&(i=r,c()===!1))))return;if(n===7)return t}}const eu=new Map;function py(e,t){return He(e)?e[t]:null}function gy(e,t){if(!He(e))return null;let o=eu.get(t);if(o||(o=dy(t),o&&eu.set(t,o)),!o)return null;const n=o.length;let a=e,r=0;for(;re,hy=e=>"",my="text",by=e=>e.length===0?"":wb(e),yy=kb;function tu(e,t){return e=Math.abs(e),t===2?e?e>1?1:0:1:e?Math.min(e,2):0}function _y(e){const t=gt(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(gt(e.named.count)||gt(e.named.n))?gt(e.named.count)?e.named.count:gt(e.named.n)?e.named.n:t:t}function vy(e,t){t.count||(t.count=e),t.n||(t.n=e)}function ky(e={}){const t=e.locale,o=_y(e),n=He(e.pluralRules)&&fe(t)&&nt(e.pluralRules[t])?e.pluralRules[t]:tu,a=He(e.pluralRules)&&fe(t)&&nt(e.pluralRules[t])?tu:void 0,r=h=>h[n(o,h.length,a)],s=e.list||[],i=h=>s[h],l=e.named||Qe();gt(e.pluralIndex)&&vy(o,l);const u=h=>l[h];function c(h){const f=nt(e.messages)?e.messages(h):He(e.messages)?e.messages[h]:!1;return f||(e.parent?e.parent.message(h):hy)}const p=h=>e.modifiers?e.modifiers[h]:fy,g=Le(e.processor)&&nt(e.processor.normalize)?e.processor.normalize:by,k=Le(e.processor)&&nt(e.processor.interpolate)?e.processor.interpolate:yy,w=Le(e.processor)&&fe(e.processor.type)?e.processor.type:my,d={list:i,named:u,plural:r,linked:(h,...f)=>{const[m,v]=f;let x="text",A="";f.length===1?He(m)?(A=m.modifier||A,x=m.type||x):fe(m)&&(A=m||A):f.length===2&&(fe(m)&&(A=m||A),fe(v)&&(x=v||x));const S=c(h)(d),T=x==="vnode"&&it(S)&&A?S[0]:S;return A?p(A)(T,x):T},message:c,type:w,interpolate:k,normalize:g,values:Lt(Qe(),s,l)};return d}let ia=null;function wy(e){ia=e}function xy(e,t,o){ia&&ia.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:o})}const Ay=Sy("function:translate");function Sy(e){return t=>ia&&ia.emit(e,t)}const $y=xs.__EXTEND_POINT__,nn=lr($y),Ey={FALLBACK_TO_TRANSLATE:nn(),CANNOT_FORMAT_NUMBER:nn(),FALLBACK_TO_NUMBER_FORMAT:nn(),CANNOT_FORMAT_DATE:nn(),FALLBACK_TO_DATE_FORMAT:nn(),EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:nn(),__EXTEND_POINT__:nn()},ou=Se.__EXTEND_POINT__,an=lr(ou),Qt={INVALID_ARGUMENT:ou,INVALID_DATE_ARGUMENT:an(),INVALID_ISO_DATE_ARGUMENT:an(),NOT_SUPPORT_NON_STRING_MESSAGE:an(),NOT_SUPPORT_LOCALE_PROMISE_VALUE:an(),NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:an(),NOT_SUPPORT_LOCALE_TYPE:an(),__EXTEND_POINT__:an()};function mo(e){return An(e,null,void 0)}function $s(e,t){return t.locale!=null?nu(t.locale):nu(e.locale)}let Es;function nu(e){if(fe(e))return e;if(nt(e)){if(e.resolvedOnce&&Es!=null)return Es;if(e.constructor.name==="Function"){const t=e();if(vb(t))throw mo(Qt.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return Es=t}else throw mo(Qt.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw mo(Qt.NOT_SUPPORT_LOCALE_TYPE)}function Cy(e,t,o){return[...new Set([o,...it(t)?t:He(t)?Object.keys(t):fe(t)?[t]:[o]])]}function au(e,t,o){const n=fe(o)?o:En,a=e;a.__localeChainCache||(a.__localeChainCache=new Map);let r=a.__localeChainCache.get(n);if(!r){r=[];let s=[o];for(;it(s);)s=ru(r,s,t);const i=it(t)||!Le(t)?t:t.default?t.default:null;s=fe(i)?[i]:i,it(s)&&ru(r,s,!1),a.__localeChainCache.set(n,r)}return r}function ru(e,t,o){let n=!0;for(let a=0;a`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function My(){return{upper:(e,t)=>t==="text"&&fe(e)?e.toUpperCase():t==="vnode"&&He(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>t==="text"&&fe(e)?e.toLowerCase():t==="vnode"&&He(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>t==="text"&&fe(e)?iu(e):t==="vnode"&&He(e)&&"__v_isVNode"in e?iu(e.children):e}}let lu;function cu(e){lu=e}let uu;function Ny(e){uu=e}let du;function Ry(e){du=e}let pu=null;const Iy=e=>{pu=e},Oy=()=>pu;let gu=null;const fu=e=>{gu=e},Fy=()=>gu;let hu=0;function Dy(e={}){const t=nt(e.onWarn)?e.onWarn:gb,o=fe(e.version)?e.version:Py,n=fe(e.locale)||nt(e.locale)?e.locale:En,a=nt(n)?En:n,r=it(e.fallbackLocale)||Le(e.fallbackLocale)||fe(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:a,s=Le(e.messages)?e.messages:Cs(a),i=Le(e.datetimeFormats)?e.datetimeFormats:Cs(a),l=Le(e.numberFormats)?e.numberFormats:Cs(a),u=Lt(Qe(),e.modifiers,My()),c=e.pluralRules||Qe(),p=nt(e.missing)?e.missing:null,g=De(e.missingWarn)||Bo(e.missingWarn)?e.missingWarn:!0,k=De(e.fallbackWarn)||Bo(e.fallbackWarn)?e.fallbackWarn:!0,w=!!e.fallbackFormat,_=!!e.unresolving,d=nt(e.postTranslation)?e.postTranslation:null,h=Le(e.processor)?e.processor:null,f=De(e.warnHtmlMessage)?e.warnHtmlMessage:!0,m=!!e.escapeParameter,v=nt(e.messageCompiler)?e.messageCompiler:lu,x=nt(e.messageResolver)?e.messageResolver:uu||py,A=nt(e.localeFallbacker)?e.localeFallbacker:du||Cy,S=He(e.fallbackContext)?e.fallbackContext:void 0,T=e,I=He(T.__datetimeFormatters)?T.__datetimeFormatters:new Map,H=He(T.__numberFormatters)?T.__numberFormatters:new Map,W=He(T.__meta)?T.__meta:{};hu++;const re={version:o,cid:hu,locale:n,fallbackLocale:r,messages:s,modifiers:u,pluralRules:c,missing:p,missingWarn:g,fallbackWarn:k,fallbackFormat:w,unresolving:_,postTranslation:d,processor:h,warnHtmlMessage:f,escapeParameter:m,messageCompiler:v,messageResolver:x,localeFallbacker:A,fallbackContext:S,onWarn:t,__meta:W};return re.datetimeFormats=i,re.numberFormats=l,re.__datetimeFormatters=I,re.__numberFormatters=H,__INTLIFY_PROD_DEVTOOLS__&&xy(re,o,W),re}const Cs=e=>({[e]:Qe()});function Ls(e,t,o,n,a){const{missing:r,onWarn:s}=e;if(r!==null){const i=r(e,o,t,a);return fe(i)?i:t}else return t}function la(e,t,o){const n=e;n.__localeChainCache=new Map,e.localeFallbacker(e,o,t)}function By(e,t){return e===t?!1:e.split("-")[0]===t.split("-")[0]}function Gy(e,t){const o=t.indexOf(e);if(o===-1)return!1;for(let n=o+1;njy(o,e)}function jy(e,t){const o=ey(t);if(o==null)throw sa(0);if(Ss(o)===1){const r=ty(o);return e.plural(r.reduce((s,i)=>[...s,mu(e,i)],[]))}else return mu(e,o)}function mu(e,t){const o=oy(t);if(o!=null)return e.type==="text"?o:e.normalize([o]);{const n=ny(t).reduce((a,r)=>[...a,Ps(e,r)],[]);return e.normalize(n)}}function Ps(e,t){const o=Ss(t);switch(o){case 3:return pr(t,o);case 9:return pr(t,o);case 4:{const n=t;if(Xt(n,"k")&&n.k)return e.interpolate(e.named(n.k));if(Xt(n,"key")&&n.key)return e.interpolate(e.named(n.key));throw sa(o)}case 5:{const n=t;if(Xt(n,"i")&>(n.i))return e.interpolate(e.list(n.i));if(Xt(n,"index")&>(n.index))return e.interpolate(e.list(n.index));throw sa(o)}case 6:{const n=t,a=ay(n),r=ry(n);return e.linked(Ps(e,r),a?Ps(e,a):void 0,e.type)}case 7:return pr(t,o);case 8:return pr(t,o);default:throw new Error(`unhandled node on format message part: ${o}`)}}const bu=e=>e;let Cn=Qe();function yu(e,t={}){let o=!1;const n=t.onError||Lb;return t.onError=a=>{o=!0,n(a)},{...Zb(e,t),detectError:o}}const Uy=(e,t)=>{if(!fe(e))throw mo(Qt.NOT_SUPPORT_NON_STRING_MESSAGE);{De(t.warnHtmlMessage)&&t.warnHtmlMessage;const n=(t.onCacheKey||bu)(e),a=Cn[n];if(a)return a;const{code:r,detectError:s}=yu(e,t),i=new Function(`return ${r}`)();return s?i:Cn[n]=i}};function Ky(e,t){if(__INTLIFY_JIT_COMPILATION__&&!__INTLIFY_DROP_MESSAGE_COMPILER__&&fe(e)){De(t.warnHtmlMessage)&&t.warnHtmlMessage;const n=(t.onCacheKey||bu)(e),a=Cn[n];if(a)return a;const{ast:r,detectError:s}=yu(e,{...t,location:!1,jit:!0}),i=Ts(r);return s?i:Cn[n]=i}else{const o=e.cacheKey;if(o){const n=Cn[o];return n||(Cn[o]=Ts(e))}else return Ts(e)}}const _u=()=>"",Wt=e=>nt(e);function vu(e,...t){const{fallbackFormat:o,postTranslation:n,unresolving:a,messageCompiler:r,fallbackLocale:s,messages:i}=e,[l,u]=Ms(...t),c=De(u.missingWarn)?u.missingWarn:e.missingWarn,p=De(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn,g=De(u.escapeParameter)?u.escapeParameter:e.escapeParameter,k=!!u.resolvedMessage,w=fe(u.default)||De(u.default)?De(u.default)?r?l:()=>l:u.default:o?r?l:()=>l:"",_=o||w!=="",d=$s(e,u);g&&zy(u);let[h,f,m]=k?[l,d,i[d]||Qe()]:ku(e,l,d,s,p,c),v=h,x=l;if(!k&&!(fe(v)||ho(v)||Wt(v))&&_&&(v=w,x=v),!k&&(!(fe(v)||ho(v)||Wt(v))||!fe(f)))return a?gr:l;let A=!1;const S=()=>{A=!0},T=Wt(v)?v:wu(e,l,f,v,x,S);if(A)return v;const I=Wy(e,f,m,u),H=ky(I),W=Hy(e,T,H);let re=n?n(W,l):W;if(g&&fe(re)&&(re=yb(re)),__INTLIFY_PROD_DEVTOOLS__){const P={timestamp:Date.now(),key:fe(l)?l:Wt(v)?v.key:"",locale:f||(Wt(v)?v.locale:""),format:fe(v)?v:Wt(v)?v.source:"",message:re};P.meta=Lt({},e.__meta,Oy()||{}),Ay(P)}return re}function zy(e){it(e.list)?e.list=e.list.map(t=>fe(t)?Rc(t):t):He(e.named)&&Object.keys(e.named).forEach(t=>{fe(e.named[t])&&(e.named[t]=Rc(e.named[t]))})}function ku(e,t,o,n,a,r){const{messages:s,onWarn:i,messageResolver:l,localeFallbacker:u}=e,c=u(e,n,o);let p=Qe(),g,k=null;const w="translate";for(let _=0;_n;return u.locale=o,u.key=t,u}const l=s(n,Vy(e,o,a,n,i,r));return l.locale=o,l.key=t,l.source=n,l}function Hy(e,t,o){return t(o)}function Ms(...e){const[t,o,n]=e,a=Qe();if(!fe(t)&&!gt(t)&&!Wt(t)&&!ho(t))throw mo(Qt.INVALID_ARGUMENT);const r=gt(t)?String(t):(Wt(t),t);return gt(o)?a.plural=o:fe(o)?a.default=o:Le(o)&&!ir(o)?a.named=o:it(o)&&(a.list=o),gt(n)?a.plural=n:fe(n)?a.default=n:Le(n)&&Lt(a,n),[r,a]}function Vy(e,t,o,n,a,r){return{locale:t,key:o,warnHtmlMessage:a,onError:s=>{throw r&&r(s),s},onCacheKey:s=>fb(t,o,s)}}function Wy(e,t,o,n){const{modifiers:a,pluralRules:r,messageResolver:s,fallbackLocale:i,fallbackWarn:l,missingWarn:u,fallbackContext:c}=e,g={locale:t,modifiers:a,pluralRules:r,messages:k=>{let w=s(o,k);if(w==null&&c){const[,,_]=ku(c,k,t,i,l,u);w=s(_,k)}if(fe(w)||ho(w)){let _=!1;const h=wu(e,k,t,w,k,()=>{_=!0});return _?_u:h}else return Wt(w)?w:_u}};return e.processor&&(g.processor=e.processor),n.list&&(g.list=n.list),n.named&&(g.named=n.named),gt(n.plural)&&(g.pluralIndex=n.plural),g}function xu(e,...t){const{datetimeFormats:o,unresolving:n,fallbackLocale:a,onWarn:r,localeFallbacker:s}=e,{__datetimeFormatters:i}=e,[l,u,c,p]=Ns(...t),g=De(c.missingWarn)?c.missingWarn:e.missingWarn;De(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn;const k=!!c.part,w=$s(e,c),_=s(e,a,w);if(!fe(l)||l==="")return new Intl.DateTimeFormat(w,p).format(u);let d={},h,f=null;const m="datetime format";for(let A=0;A<_.length&&(h=_[A],d=o[h]||{},f=d[l],!Le(f));A++)Ls(e,l,h,g,m);if(!Le(f)||!fe(h))return n?gr:l;let v=`${h}__${l}`;ir(p)||(v=`${v}__${JSON.stringify(p)}`);let x=i.get(v);return x||(x=new Intl.DateTimeFormat(h,Lt({},f,p)),i.set(v,x)),k?x.formatToParts(u):x.format(u)}const Au=["localeMatcher","weekday","era","year","month","day","hour","minute","second","timeZoneName","formatMatcher","hour12","timeZone","dateStyle","timeStyle","calendar","dayPeriod","numberingSystem","hourCycle","fractionalSecondDigits"];function Ns(...e){const[t,o,n,a]=e,r=Qe();let s=Qe(),i;if(fe(t)){const l=t.match(/(\d{4}-\d{2}-\d{2})(T|\s)?(.*)/);if(!l)throw mo(Qt.INVALID_ISO_DATE_ARGUMENT);const u=l[3]?l[3].trim().startsWith("T")?`${l[1].trim()}${l[3].trim()}`:`${l[1].trim()}T${l[3].trim()}`:l[1].trim();i=new Date(u);try{i.toISOString()}catch{throw mo(Qt.INVALID_ISO_DATE_ARGUMENT)}}else if(mb(t)){if(isNaN(t.getTime()))throw mo(Qt.INVALID_DATE_ARGUMENT);i=t}else if(gt(t))i=t;else throw mo(Qt.INVALID_ARGUMENT);return fe(o)?r.key=o:Le(o)&&Object.keys(o).forEach(l=>{Au.includes(l)?s[l]=o[l]:r[l]=o[l]}),fe(n)?r.locale=n:Le(n)&&(s=n),Le(a)&&(s=a),[r.key||"",i,r,s]}function Su(e,t,o){const n=e;for(const a in o){const r=`${t}__${a}`;n.__datetimeFormatters.has(r)&&n.__datetimeFormatters.delete(r)}}function $u(e,...t){const{numberFormats:o,unresolving:n,fallbackLocale:a,onWarn:r,localeFallbacker:s}=e,{__numberFormatters:i}=e,[l,u,c,p]=Rs(...t),g=De(c.missingWarn)?c.missingWarn:e.missingWarn;De(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn;const k=!!c.part,w=$s(e,c),_=s(e,a,w);if(!fe(l)||l==="")return new Intl.NumberFormat(w,p).format(u);let d={},h,f=null;const m="number format";for(let A=0;A<_.length&&(h=_[A],d=o[h]||{},f=d[l],!Le(f));A++)Ls(e,l,h,g,m);if(!Le(f)||!fe(h))return n?gr:l;let v=`${h}__${l}`;ir(p)||(v=`${v}__${JSON.stringify(p)}`);let x=i.get(v);return x||(x=new Intl.NumberFormat(h,Lt({},f,p)),i.set(v,x)),k?x.formatToParts(u):x.format(u)}const Eu=["localeMatcher","style","currency","currencyDisplay","currencySign","useGrouping","minimumIntegerDigits","minimumFractionDigits","maximumFractionDigits","minimumSignificantDigits","maximumSignificantDigits","compactDisplay","notation","signDisplay","unit","unitDisplay","roundingMode","roundingPriority","roundingIncrement","trailingZeroDisplay"];function Rs(...e){const[t,o,n,a]=e,r=Qe();let s=Qe();if(!gt(t))throw mo(Qt.INVALID_ARGUMENT);const i=t;return fe(o)?r.key=o:Le(o)&&Object.keys(o).forEach(l=>{Eu.includes(l)?s[l]=o[l]:r[l]=o[l]}),fe(n)?r.locale=n:Le(n)&&(s=n),Le(a)&&(s=a),[r.key||"",i,r,s]}function Cu(e,t,o){const n=e;for(const a in o){const r=`${t}__${a}`;n.__numberFormatters.has(r)&&n.__numberFormatters.delete(r)}}Qb();/*! + */function ty(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Co().__INTLIFY_PROD_DEVTOOLS__=!1),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(Co().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(Co().__INTLIFY_DROP_MESSAGE_COMPILER__=!1)}function ho(e){return He(e)&&Es(e)===0&&(Xt(e,"b")||Xt(e,"body"))}const Wc=["b","body"];function oy(e){return jo(e,Wc)}const Yc=["c","cases"];function ny(e){return jo(e,Yc,[])}const qc=["s","static"];function ay(e){return jo(e,qc)}const Jc=["i","items"];function ry(e){return jo(e,Jc,[])}const Xc=["t","type"];function Es(e){return jo(e,Xc)}const Zc=["v","value"];function gr(e,t){const o=jo(e,Zc);if(o!=null)return o;throw sa(t)}const Qc=["m","modifier"];function sy(e){return jo(e,Qc)}const eu=["k","key"];function iy(e){const t=jo(e,eu);if(t)return t;throw sa(6)}function jo(e,t,o){for(let n=0;n{s===void 0?s=i:s+=i},g[1]=()=>{s!==void 0&&(t.push(s),s=void 0)},g[2]=()=>{g[0](),a++},g[3]=()=>{if(a>0)a--,n=4,g[0]();else{if(a=0,s===void 0||(s=py(s),s===!1))return!1;g[1]()}};function w(){const b=e[o+1];if(n===5&&b==="'"||n===6&&b==='"')return o++,i="\\"+b,g[0](),!0}for(;n!==null;)if(o++,r=e[o],!(r==="\\"&&w())){if(l=dy(r),p=Uo[n],u=p[l]||p.l||8,u===8||(n=u[0],u[1]!==void 0&&(c=g[u[1]],c&&(i=r,c()===!1))))return;if(n===7)return t}}const ou=new Map;function fy(e,t){return He(e)?e[t]:null}function hy(e,t){if(!He(e))return null;let o=ou.get(t);if(o||(o=gy(t),o&&ou.set(t,o)),!o)return null;const n=o.length;let a=e,r=0;for(;re,by=e=>"",yy="text",_y=e=>e.length===0?"":Ab(e),vy=xb;function nu(e,t){return e=Math.abs(e),t===2?e?e>1?1:0:1:e?Math.min(e,2):0}function ky(e){const t=gt(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(gt(e.named.count)||gt(e.named.n))?gt(e.named.count)?e.named.count:gt(e.named.n)?e.named.n:t:t}function wy(e,t){t.count||(t.count=e),t.n||(t.n=e)}function xy(e={}){const t=e.locale,o=ky(e),n=He(e.pluralRules)&&fe(t)&&nt(e.pluralRules[t])?e.pluralRules[t]:nu,a=He(e.pluralRules)&&fe(t)&&nt(e.pluralRules[t])?nu:void 0,r=h=>h[n(o,h.length,a)],s=e.list||[],i=h=>s[h],l=e.named||Qe();gt(e.pluralIndex)&&wy(o,l);const u=h=>l[h];function c(h){const f=nt(e.messages)?e.messages(h):He(e.messages)?e.messages[h]:!1;return f||(e.parent?e.parent.message(h):by)}const p=h=>e.modifiers?e.modifiers[h]:my,g=Le(e.processor)&&nt(e.processor.normalize)?e.processor.normalize:_y,w=Le(e.processor)&&nt(e.processor.interpolate)?e.processor.interpolate:vy,b=Le(e.processor)&&fe(e.processor.type)?e.processor.type:yy,d={list:i,named:u,plural:r,linked:(h,...f)=>{const[m,k]=f;let x="text",A="";f.length===1?He(m)?(A=m.modifier||A,x=m.type||x):fe(m)&&(A=m||A):f.length===2&&(fe(m)&&(A=m||A),fe(k)&&(x=k||x));const S=c(h)(d),L=x==="vnode"&&it(S)&&A?S[0]:S;return A?p(A)(L,x):L},message:c,type:b,interpolate:w,normalize:g,values:Lt(Qe(),s,l)};return d}let ia=null;function Ay(e){ia=e}function Sy(e,t,o){ia&&ia.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:o})}const $y=Ey("function:translate");function Ey(e){return t=>ia&&ia.emit(e,t)}const Cy=Ss.__EXTEND_POINT__,nn=cr(Cy),Ly={FALLBACK_TO_TRANSLATE:nn(),CANNOT_FORMAT_NUMBER:nn(),FALLBACK_TO_NUMBER_FORMAT:nn(),CANNOT_FORMAT_DATE:nn(),FALLBACK_TO_DATE_FORMAT:nn(),EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:nn(),__EXTEND_POINT__:nn()},au=Se.__EXTEND_POINT__,an=cr(au),Qt={INVALID_ARGUMENT:au,INVALID_DATE_ARGUMENT:an(),INVALID_ISO_DATE_ARGUMENT:an(),NOT_SUPPORT_NON_STRING_MESSAGE:an(),NOT_SUPPORT_LOCALE_PROMISE_VALUE:an(),NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:an(),NOT_SUPPORT_LOCALE_TYPE:an(),__EXTEND_POINT__:an()};function mo(e){return An(e,null,void 0)}function Cs(e,t){return t.locale!=null?ru(t.locale):ru(e.locale)}let Ls;function ru(e){if(fe(e))return e;if(nt(e)){if(e.resolvedOnce&&Ls!=null)return Ls;if(e.constructor.name==="Function"){const t=e();if(wb(t))throw mo(Qt.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return Ls=t}else throw mo(Qt.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw mo(Qt.NOT_SUPPORT_LOCALE_TYPE)}function Ty(e,t,o){return[...new Set([o,...it(t)?t:He(t)?Object.keys(t):fe(t)?[t]:[o]])]}function su(e,t,o){const n=fe(o)?o:En,a=e;a.__localeChainCache||(a.__localeChainCache=new Map);let r=a.__localeChainCache.get(n);if(!r){r=[];let s=[o];for(;it(s);)s=iu(r,s,t);const i=it(t)||!Le(t)?t:t.default?t.default:null;s=fe(i)?[i]:i,it(s)&&iu(r,s,!1),a.__localeChainCache.set(n,r)}return r}function iu(e,t,o){let n=!0;for(let a=0;a`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function Ry(){return{upper:(e,t)=>t==="text"&&fe(e)?e.toUpperCase():t==="vnode"&&He(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>t==="text"&&fe(e)?e.toLowerCase():t==="vnode"&&He(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>t==="text"&&fe(e)?cu(e):t==="vnode"&&He(e)&&"__v_isVNode"in e?cu(e.children):e}}let uu;function du(e){uu=e}let pu;function Iy(e){pu=e}let gu;function Oy(e){gu=e}let fu=null;const Fy=e=>{fu=e},Dy=()=>fu;let hu=null;const mu=e=>{hu=e},By=()=>hu;let bu=0;function Gy(e={}){const t=nt(e.onWarn)?e.onWarn:hb,o=fe(e.version)?e.version:Ny,n=fe(e.locale)||nt(e.locale)?e.locale:En,a=nt(n)?En:n,r=it(e.fallbackLocale)||Le(e.fallbackLocale)||fe(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:a,s=Le(e.messages)?e.messages:Ts(a),i=Le(e.datetimeFormats)?e.datetimeFormats:Ts(a),l=Le(e.numberFormats)?e.numberFormats:Ts(a),u=Lt(Qe(),e.modifiers,Ry()),c=e.pluralRules||Qe(),p=nt(e.missing)?e.missing:null,g=De(e.missingWarn)||Bo(e.missingWarn)?e.missingWarn:!0,w=De(e.fallbackWarn)||Bo(e.fallbackWarn)?e.fallbackWarn:!0,b=!!e.fallbackFormat,y=!!e.unresolving,d=nt(e.postTranslation)?e.postTranslation:null,h=Le(e.processor)?e.processor:null,f=De(e.warnHtmlMessage)?e.warnHtmlMessage:!0,m=!!e.escapeParameter,k=nt(e.messageCompiler)?e.messageCompiler:uu,x=nt(e.messageResolver)?e.messageResolver:pu||fy,A=nt(e.localeFallbacker)?e.localeFallbacker:gu||Ty,S=He(e.fallbackContext)?e.fallbackContext:void 0,L=e,P=He(L.__datetimeFormatters)?L.__datetimeFormatters:new Map,z=He(L.__numberFormatters)?L.__numberFormatters:new Map,W=He(L.__meta)?L.__meta:{};bu++;const re={version:o,cid:bu,locale:n,fallbackLocale:r,messages:s,modifiers:u,pluralRules:c,missing:p,missingWarn:g,fallbackWarn:w,fallbackFormat:b,unresolving:y,postTranslation:d,processor:h,warnHtmlMessage:f,escapeParameter:m,messageCompiler:k,messageResolver:x,localeFallbacker:A,fallbackContext:S,onWarn:t,__meta:W};return re.datetimeFormats=i,re.numberFormats=l,re.__datetimeFormatters=P,re.__numberFormatters=z,__INTLIFY_PROD_DEVTOOLS__&&Sy(re,o,W),re}const Ts=e=>({[e]:Qe()});function Ps(e,t,o,n,a){const{missing:r,onWarn:s}=e;if(r!==null){const i=r(e,o,t,a);return fe(i)?i:t}else return t}function la(e,t,o){const n=e;n.__localeChainCache=new Map,e.localeFallbacker(e,o,t)}function jy(e,t){return e===t?!1:e.split("-")[0]===t.split("-")[0]}function Uy(e,t){const o=t.indexOf(e);if(o===-1)return!1;for(let n=o+1;nKy(o,e)}function Ky(e,t){const o=oy(t);if(o==null)throw sa(0);if(Es(o)===1){const r=ny(o);return e.plural(r.reduce((s,i)=>[...s,yu(e,i)],[]))}else return yu(e,o)}function yu(e,t){const o=ay(t);if(o!=null)return e.type==="text"?o:e.normalize([o]);{const n=ry(t).reduce((a,r)=>[...a,Ns(e,r)],[]);return e.normalize(n)}}function Ns(e,t){const o=Es(t);switch(o){case 3:return gr(t,o);case 9:return gr(t,o);case 4:{const n=t;if(Xt(n,"k")&&n.k)return e.interpolate(e.named(n.k));if(Xt(n,"key")&&n.key)return e.interpolate(e.named(n.key));throw sa(o)}case 5:{const n=t;if(Xt(n,"i")&>(n.i))return e.interpolate(e.list(n.i));if(Xt(n,"index")&>(n.index))return e.interpolate(e.list(n.index));throw sa(o)}case 6:{const n=t,a=sy(n),r=iy(n);return e.linked(Ns(e,r),a?Ns(e,a):void 0,e.type)}case 7:return gr(t,o);case 8:return gr(t,o);default:throw new Error(`unhandled node on format message part: ${o}`)}}const _u=e=>e;let Cn=Qe();function vu(e,t={}){let o=!1;const n=t.onError||Pb;return t.onError=a=>{o=!0,n(a)},{...ey(e,t),detectError:o}}const zy=(e,t)=>{if(!fe(e))throw mo(Qt.NOT_SUPPORT_NON_STRING_MESSAGE);{De(t.warnHtmlMessage)&&t.warnHtmlMessage;const n=(t.onCacheKey||_u)(e),a=Cn[n];if(a)return a;const{code:r,detectError:s}=vu(e,t),i=new Function(`return ${r}`)();return s?i:Cn[n]=i}};function Hy(e,t){if(__INTLIFY_JIT_COMPILATION__&&!__INTLIFY_DROP_MESSAGE_COMPILER__&&fe(e)){De(t.warnHtmlMessage)&&t.warnHtmlMessage;const n=(t.onCacheKey||_u)(e),a=Cn[n];if(a)return a;const{ast:r,detectError:s}=vu(e,{...t,location:!1,jit:!0}),i=Ms(r);return s?i:Cn[n]=i}else{const o=e.cacheKey;if(o){const n=Cn[o];return n||(Cn[o]=Ms(e))}else return Ms(e)}}const ku=()=>"",Wt=e=>nt(e);function wu(e,...t){const{fallbackFormat:o,postTranslation:n,unresolving:a,messageCompiler:r,fallbackLocale:s,messages:i}=e,[l,u]=Rs(...t),c=De(u.missingWarn)?u.missingWarn:e.missingWarn,p=De(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn,g=De(u.escapeParameter)?u.escapeParameter:e.escapeParameter,w=!!u.resolvedMessage,b=fe(u.default)||De(u.default)?De(u.default)?r?l:()=>l:u.default:o?r?l:()=>l:"",y=o||b!=="",d=Cs(e,u);g&&Vy(u);let[h,f,m]=w?[l,d,i[d]||Qe()]:xu(e,l,d,s,p,c),k=h,x=l;if(!w&&!(fe(k)||ho(k)||Wt(k))&&y&&(k=b,x=k),!w&&(!(fe(k)||ho(k)||Wt(k))||!fe(f)))return a?fr:l;let A=!1;const S=()=>{A=!0},L=Wt(k)?k:Au(e,l,f,k,x,S);if(A)return k;const P=qy(e,f,m,u),z=xy(P),W=Wy(e,L,z);let re=n?n(W,l):W;if(g&&fe(re)&&(re=vb(re)),__INTLIFY_PROD_DEVTOOLS__){const M={timestamp:Date.now(),key:fe(l)?l:Wt(k)?k.key:"",locale:f||(Wt(k)?k.locale:""),format:fe(k)?k:Wt(k)?k.source:"",message:re};M.meta=Lt({},e.__meta,Dy()||{}),$y(M)}return re}function Vy(e){it(e.list)?e.list=e.list.map(t=>fe(t)?Oc(t):t):He(e.named)&&Object.keys(e.named).forEach(t=>{fe(e.named[t])&&(e.named[t]=Oc(e.named[t]))})}function xu(e,t,o,n,a,r){const{messages:s,onWarn:i,messageResolver:l,localeFallbacker:u}=e,c=u(e,n,o);let p=Qe(),g,w=null;const b="translate";for(let y=0;yn;return u.locale=o,u.key=t,u}const l=s(n,Yy(e,o,a,n,i,r));return l.locale=o,l.key=t,l.source=n,l}function Wy(e,t,o){return t(o)}function Rs(...e){const[t,o,n]=e,a=Qe();if(!fe(t)&&!gt(t)&&!Wt(t)&&!ho(t))throw mo(Qt.INVALID_ARGUMENT);const r=gt(t)?String(t):(Wt(t),t);return gt(o)?a.plural=o:fe(o)?a.default=o:Le(o)&&!lr(o)?a.named=o:it(o)&&(a.list=o),gt(n)?a.plural=n:fe(n)?a.default=n:Le(n)&&Lt(a,n),[r,a]}function Yy(e,t,o,n,a,r){return{locale:t,key:o,warnHtmlMessage:a,onError:s=>{throw r&&r(s),s},onCacheKey:s=>mb(t,o,s)}}function qy(e,t,o,n){const{modifiers:a,pluralRules:r,messageResolver:s,fallbackLocale:i,fallbackWarn:l,missingWarn:u,fallbackContext:c}=e,g={locale:t,modifiers:a,pluralRules:r,messages:w=>{let b=s(o,w);if(b==null&&c){const[,,y]=xu(c,w,t,i,l,u);b=s(y,w)}if(fe(b)||ho(b)){let y=!1;const h=Au(e,w,t,b,w,()=>{y=!0});return y?ku:h}else return Wt(b)?b:ku}};return e.processor&&(g.processor=e.processor),n.list&&(g.list=n.list),n.named&&(g.named=n.named),gt(n.plural)&&(g.pluralIndex=n.plural),g}function Su(e,...t){const{datetimeFormats:o,unresolving:n,fallbackLocale:a,onWarn:r,localeFallbacker:s}=e,{__datetimeFormatters:i}=e,[l,u,c,p]=Is(...t),g=De(c.missingWarn)?c.missingWarn:e.missingWarn;De(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn;const w=!!c.part,b=Cs(e,c),y=s(e,a,b);if(!fe(l)||l==="")return new Intl.DateTimeFormat(b,p).format(u);let d={},h,f=null;const m="datetime format";for(let A=0;A{$u.includes(l)?s[l]=o[l]:r[l]=o[l]}),fe(n)?r.locale=n:Le(n)&&(s=n),Le(a)&&(s=a),[r.key||"",i,r,s]}function Eu(e,t,o){const n=e;for(const a in o){const r=`${t}__${a}`;n.__datetimeFormatters.has(r)&&n.__datetimeFormatters.delete(r)}}function Cu(e,...t){const{numberFormats:o,unresolving:n,fallbackLocale:a,onWarn:r,localeFallbacker:s}=e,{__numberFormatters:i}=e,[l,u,c,p]=Os(...t),g=De(c.missingWarn)?c.missingWarn:e.missingWarn;De(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn;const w=!!c.part,b=Cs(e,c),y=s(e,a,b);if(!fe(l)||l==="")return new Intl.NumberFormat(b,p).format(u);let d={},h,f=null;const m="number format";for(let A=0;A{Lu.includes(l)?s[l]=o[l]:r[l]=o[l]}),fe(n)?r.locale=n:Le(n)&&(s=n),Le(a)&&(s=a),[r.key||"",i,r,s]}function Tu(e,t,o){const n=e;for(const a in o){const r=`${t}__${a}`;n.__numberFormatters.has(r)&&n.__numberFormatters.delete(r)}}ty();/*! * vue-i18n v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */const Yy="9.14.5";function qy(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(Co().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(Co().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(Co().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(Co().__INTLIFY_DROP_MESSAGE_COMPILER__=!1),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Co().__INTLIFY_PROD_DEVTOOLS__=!1)}const Jy=Ey.__EXTEND_POINT__,To=lr(Jy);To(),To(),To(),To(),To(),To(),To(),To(),To();const Lu=Qt.__EXTEND_POINT__,Dt=lr(Lu),bt={UNEXPECTED_RETURN_TYPE:Lu,INVALID_ARGUMENT:Dt(),MUST_BE_CALL_SETUP_TOP:Dt(),NOT_INSTALLED:Dt(),NOT_AVAILABLE_IN_LEGACY_MODE:Dt(),REQUIRED_VALUE:Dt(),INVALID_VALUE:Dt(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:Dt(),NOT_INSTALLED_WITH_PROVIDE:Dt(),UNEXPECTED_ERROR:Dt(),NOT_COMPATIBLE_LEGACY_VUE_I18N:Dt(),BRIDGE_SUPPORT_VUE_2_ONLY:Dt(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:Dt(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:Dt(),__EXTEND_POINT__:Dt()};function kt(e,...t){return An(e,null,void 0)}const Is=Do("__translateVNode"),Os=Do("__datetimeParts"),Fs=Do("__numberParts"),Tu=Do("__setPluralRules"),Pu=Do("__injectWithOption"),Ds=Do("__dispose");function ca(e){if(!He(e)||ho(e))return e;for(const t in e)if(Xt(e,t))if(!t.includes("."))He(e[t])&&ca(e[t]);else{const o=t.split("."),n=o.length-1;let a=e,r=!1;for(let s=0;s{if("locale"in i&&"resource"in i){const{locale:l,resource:u}=i;l?(s[l]=s[l]||Qe(),ur(u,s[l])):ur(u,s)}else fe(i)&&ur(JSON.parse(i),s)}),a==null&&r)for(const i in s)Xt(s,i)&&ca(s[i]);return s}function Mu(e){return e.type}function Nu(e,t,o){let n=He(t.messages)?t.messages:Qe();"__i18nGlobal"in o&&(n=fr(e.locale.value,{messages:n,__i18n:o.__i18nGlobal}));const a=Object.keys(n);a.length&&a.forEach(r=>{e.mergeLocaleMessage(r,n[r])});{if(He(t.datetimeFormats)){const r=Object.keys(t.datetimeFormats);r.length&&r.forEach(s=>{e.mergeDateTimeFormat(s,t.datetimeFormats[s])})}if(He(t.numberFormats)){const r=Object.keys(t.numberFormats);r.length&&r.forEach(s=>{e.mergeNumberFormat(s,t.numberFormats[s])})}}}function Ru(e){return We(Zn,null,e,0)}const Iu="__INTLIFY_META__",Ou=()=>[],Xy=()=>!1;let Fu=0;function Du(e){return(t,o,n,a)=>e(o,n,$o()||void 0,a)}const Zy=()=>{const e=$o();let t=null;return e&&(t=Mu(e)[Iu])?{[Iu]:t}:null};function Bs(e={},t){const{__root:o,__injectWithOption:n}=e,a=o===void 0,r=e.flatJson,s=sr?de:fn,i=!!e.translateExistCompatible;let l=De(e.inheritLocale)?e.inheritLocale:!0;const u=s(o&&l?o.locale.value:fe(e.locale)?e.locale:En),c=s(o&&l?o.fallbackLocale.value:fe(e.fallbackLocale)||it(e.fallbackLocale)||Le(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:u.value),p=s(fr(u.value,e)),g=s(Le(e.datetimeFormats)?e.datetimeFormats:{[u.value]:{}}),k=s(Le(e.numberFormats)?e.numberFormats:{[u.value]:{}});let w=o?o.missingWarn:De(e.missingWarn)||Bo(e.missingWarn)?e.missingWarn:!0,_=o?o.fallbackWarn:De(e.fallbackWarn)||Bo(e.fallbackWarn)?e.fallbackWarn:!0,d=o?o.fallbackRoot:De(e.fallbackRoot)?e.fallbackRoot:!0,h=!!e.fallbackFormat,f=nt(e.missing)?e.missing:null,m=nt(e.missing)?Du(e.missing):null,v=nt(e.postTranslation)?e.postTranslation:null,x=o?o.warnHtmlMessage:De(e.warnHtmlMessage)?e.warnHtmlMessage:!0,A=!!e.escapeParameter;const S=o?o.modifiers:Le(e.modifiers)?e.modifiers:{};let T=e.pluralRules||o&&o.pluralRules,I;I=(()=>{a&&fu(null);const G={version:Yy,locale:u.value,fallbackLocale:c.value,messages:p.value,modifiers:S,pluralRules:T,missing:m===null?void 0:m,missingWarn:w,fallbackWarn:_,fallbackFormat:h,unresolving:!0,postTranslation:v===null?void 0:v,warnHtmlMessage:x,escapeParameter:A,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};G.datetimeFormats=g.value,G.numberFormats=k.value,G.__datetimeFormatters=Le(I)?I.__datetimeFormatters:void 0,G.__numberFormatters=Le(I)?I.__numberFormatters:void 0;const Y=Dy(G);return a&&fu(Y),Y})(),la(I,u.value,c.value);function W(){return[u.value,c.value,p.value,g.value,k.value]}const re=te({get:()=>u.value,set:G=>{u.value=G,I.locale=u.value}}),P=te({get:()=>c.value,set:G=>{c.value=G,I.fallbackLocale=c.value,la(I,u.value,G)}}),$=te(()=>p.value),M=te(()=>g.value),C=te(()=>k.value);function N(){return nt(v)?v:null}function ne(G){v=G,I.postTranslation=G}function ge(){return f}function L(G){G!==null&&(m=Du(G)),f=G,I.missing=m}const ae=(G,Y,me,Ae,Ge,D)=>{W();let U;try{__INTLIFY_PROD_DEVTOOLS__,a||(I.fallbackContext=o?Fy():void 0),U=G(I)}finally{__INTLIFY_PROD_DEVTOOLS__,a||(I.fallbackContext=void 0)}if(me!=="translate exists"&>(U)&&U===gr||me==="translate exists"&&!U){const[he,ve]=Y();return o&&d?Ae(o):Ge(he)}else{if(D(U))return U;throw kt(bt.UNEXPECTED_RETURN_TYPE)}};function ie(...G){return ae(Y=>Reflect.apply(vu,null,[Y,...G]),()=>Ms(...G),"translate",Y=>Reflect.apply(Y.t,Y,[...G]),Y=>Y,Y=>fe(Y))}function le(...G){const[Y,me,Ae]=G;if(Ae&&!He(Ae))throw kt(bt.INVALID_ARGUMENT);return ie(Y,me,Lt({resolvedMessage:!0},Ae||{}))}function we(...G){return ae(Y=>Reflect.apply(xu,null,[Y,...G]),()=>Ns(...G),"datetime format",Y=>Reflect.apply(Y.d,Y,[...G]),()=>su,Y=>fe(Y))}function Me(...G){return ae(Y=>Reflect.apply($u,null,[Y,...G]),()=>Rs(...G),"number format",Y=>Reflect.apply(Y.n,Y,[...G]),()=>su,Y=>fe(Y))}function Re(G){return G.map(Y=>fe(Y)||gt(Y)||De(Y)?Ru(String(Y)):Y)}const Ie={normalize:Re,interpolate:G=>G,type:"vnode"};function Je(...G){return ae(Y=>{let me;const Ae=Y;try{Ae.processor=Ie,me=Reflect.apply(vu,null,[Ae,...G])}finally{Ae.processor=null}return me},()=>Ms(...G),"translate",Y=>Y[Is](...G),Y=>[Ru(Y)],Y=>it(Y))}function Xe(...G){return ae(Y=>Reflect.apply($u,null,[Y,...G]),()=>Rs(...G),"number format",Y=>Y[Fs](...G),Ou,Y=>fe(Y)||it(Y))}function ft(...G){return ae(Y=>Reflect.apply(xu,null,[Y,...G]),()=>Ns(...G),"datetime format",Y=>Y[Os](...G),Ou,Y=>fe(Y)||it(Y))}function E(G){T=G,I.pluralRules=T}function F(G,Y){return ae(()=>{if(!G)return!1;const me=fe(Y)?Y:u.value,Ae=X(me),Ge=I.messageResolver(Ae,G);return i?Ge!=null:ho(Ge)||Wt(Ge)||fe(Ge)},()=>[G],"translate exists",me=>Reflect.apply(me.te,me,[G,Y]),Xy,me=>De(me))}function O(G){let Y=null;const me=au(I,c.value,u.value);for(let Ae=0;Ae{l&&(u.value=G,I.locale=G,la(I,u.value,c.value))}),ct(o.fallbackLocale,G=>{l&&(c.value=G,I.fallbackLocale=G,la(I,u.value,c.value))}));const se={id:Fu,locale:re,fallbackLocale:P,get inheritLocale(){return l},set inheritLocale(G){l=G,G&&o&&(u.value=o.locale.value,c.value=o.fallbackLocale.value,la(I,u.value,c.value))},get availableLocales(){return Object.keys(p.value).sort()},messages:$,get modifiers(){return S},get pluralRules(){return T||{}},get isGlobal(){return a},get missingWarn(){return w},set missingWarn(G){w=G,I.missingWarn=w},get fallbackWarn(){return _},set fallbackWarn(G){_=G,I.fallbackWarn=_},get fallbackRoot(){return d},set fallbackRoot(G){d=G},get fallbackFormat(){return h},set fallbackFormat(G){h=G,I.fallbackFormat=h},get warnHtmlMessage(){return x},set warnHtmlMessage(G){x=G,I.warnHtmlMessage=G},get escapeParameter(){return A},set escapeParameter(G){A=G,I.escapeParameter=G},t:ie,getLocaleMessage:X,setLocaleMessage:J,mergeLocaleMessage:Z,getPostTranslationHandler:N,setPostTranslationHandler:ne,getMissingHandler:ge,setMissingHandler:L,[Tu]:E};return se.datetimeFormats=M,se.numberFormats=C,se.rt=le,se.te=F,se.tm=K,se.d=we,se.n=Me,se.getDateTimeFormat=Q,se.setDateTimeFormat=b,se.mergeDateTimeFormat=y,se.getNumberFormat=B,se.setNumberFormat=V,se.mergeNumberFormat=ue,se[Pu]=n,se[Is]=Je,se[Os]=ft,se[Fs]=Xe,se}function Qy(e){const t=fe(e.locale)?e.locale:En,o=fe(e.fallbackLocale)||it(e.fallbackLocale)||Le(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:t,n=nt(e.missing)?e.missing:void 0,a=De(e.silentTranslationWarn)||Bo(e.silentTranslationWarn)?!e.silentTranslationWarn:!0,r=De(e.silentFallbackWarn)||Bo(e.silentFallbackWarn)?!e.silentFallbackWarn:!0,s=De(e.fallbackRoot)?e.fallbackRoot:!0,i=!!e.formatFallbackMessages,l=Le(e.modifiers)?e.modifiers:{},u=e.pluralizationRules,c=nt(e.postTranslation)?e.postTranslation:void 0,p=fe(e.warnHtmlInMessage)?e.warnHtmlInMessage!=="off":!0,g=!!e.escapeParameterHtml,k=De(e.sync)?e.sync:!0;let w=e.messages;if(Le(e.sharedMessages)){const A=e.sharedMessages;w=Object.keys(A).reduce((T,I)=>{const H=T[I]||(T[I]={});return Lt(H,A[I]),T},w||{})}const{__i18n:_,__root:d,__injectWithOption:h}=e,f=e.datetimeFormats,m=e.numberFormats,v=e.flatJson,x=e.translateExistCompatible;return{locale:t,fallbackLocale:o,messages:w,flatJson:v,datetimeFormats:f,numberFormats:m,missing:n,missingWarn:a,fallbackWarn:r,fallbackRoot:s,fallbackFormat:i,modifiers:l,pluralRules:u,postTranslation:c,warnHtmlMessage:p,escapeParameter:g,messageResolver:e.messageResolver,inheritLocale:k,translateExistCompatible:x,__i18n:_,__root:d,__injectWithOption:h}}function Gs(e={},t){{const o=Bs(Qy(e)),{__extender:n}=e,a={id:o.id,get locale(){return o.locale.value},set locale(r){o.locale.value=r},get fallbackLocale(){return o.fallbackLocale.value},set fallbackLocale(r){o.fallbackLocale.value=r},get messages(){return o.messages.value},get datetimeFormats(){return o.datetimeFormats.value},get numberFormats(){return o.numberFormats.value},get availableLocales(){return o.availableLocales},get formatter(){return{interpolate(){return[]}}},set formatter(r){},get missing(){return o.getMissingHandler()},set missing(r){o.setMissingHandler(r)},get silentTranslationWarn(){return De(o.missingWarn)?!o.missingWarn:o.missingWarn},set silentTranslationWarn(r){o.missingWarn=De(r)?!r:r},get silentFallbackWarn(){return De(o.fallbackWarn)?!o.fallbackWarn:o.fallbackWarn},set silentFallbackWarn(r){o.fallbackWarn=De(r)?!r:r},get modifiers(){return o.modifiers},get formatFallbackMessages(){return o.fallbackFormat},set formatFallbackMessages(r){o.fallbackFormat=r},get postTranslation(){return o.getPostTranslationHandler()},set postTranslation(r){o.setPostTranslationHandler(r)},get sync(){return o.inheritLocale},set sync(r){o.inheritLocale=r},get warnHtmlInMessage(){return o.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(r){o.warnHtmlMessage=r!=="off"},get escapeParameterHtml(){return o.escapeParameter},set escapeParameterHtml(r){o.escapeParameter=r},get preserveDirectiveContent(){return!0},set preserveDirectiveContent(r){},get pluralizationRules(){return o.pluralRules||{}},__composer:o,t(...r){const[s,i,l]=r,u={};let c=null,p=null;if(!fe(s))throw kt(bt.INVALID_ARGUMENT);const g=s;return fe(i)?u.locale=i:it(i)?c=i:Le(i)&&(p=i),it(l)?c=l:Le(l)&&(p=l),Reflect.apply(o.t,o,[g,c||p||{},u])},rt(...r){return Reflect.apply(o.rt,o,[...r])},tc(...r){const[s,i,l]=r,u={plural:1};let c=null,p=null;if(!fe(s))throw kt(bt.INVALID_ARGUMENT);const g=s;return fe(i)?u.locale=i:gt(i)?u.plural=i:it(i)?c=i:Le(i)&&(p=i),fe(l)?u.locale=l:it(l)?c=l:Le(l)&&(p=l),Reflect.apply(o.t,o,[g,c||p||{},u])},te(r,s){return o.te(r,s)},tm(r){return o.tm(r)},getLocaleMessage(r){return o.getLocaleMessage(r)},setLocaleMessage(r,s){o.setLocaleMessage(r,s)},mergeLocaleMessage(r,s){o.mergeLocaleMessage(r,s)},d(...r){return Reflect.apply(o.d,o,[...r])},getDateTimeFormat(r){return o.getDateTimeFormat(r)},setDateTimeFormat(r,s){o.setDateTimeFormat(r,s)},mergeDateTimeFormat(r,s){o.mergeDateTimeFormat(r,s)},n(...r){return Reflect.apply(o.n,o,[...r])},getNumberFormat(r){return o.getNumberFormat(r)},setNumberFormat(r,s){o.setNumberFormat(r,s)},mergeNumberFormat(r,s){o.mergeNumberFormat(r,s)},getChoiceIndex(r,s){return-1}};return a.__extender=n,a}}const js={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function e0({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((n,a)=>[...n,...a.type===Pe?a.children:[a]],[]):t.reduce((o,n)=>{const a=e[n];return a&&(o[n]=a()),o},Qe())}function Bu(e){return Pe}const Gu=Yn({name:"i18n-t",props:Lt({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>gt(e)||!isNaN(e)}},js),setup(e,t){const{slots:o,attrs:n}=t,a=e.i18n||yt({useScope:e.scope,__useComponent:!0});return()=>{const r=Object.keys(o).filter(p=>p!=="_"),s=Qe();e.locale&&(s.locale=e.locale),e.plural!==void 0&&(s.plural=fe(e.plural)?+e.plural:e.plural);const i=e0(t,r),l=a[Is](e.keypath,i,s),u=Lt(Qe(),n),c=fe(e.tag)||He(e.tag)?e.tag:Bu();return ic(c,u,l)}}});function t0(e){return it(e)&&!fe(e[0])}function ju(e,t,o,n){const{slots:a,attrs:r}=t;return()=>{const s={part:!0};let i=Qe();e.locale&&(s.locale=e.locale),fe(e.format)?s.key=e.format:He(e.format)&&(fe(e.format.key)&&(s.key=e.format.key),i=Object.keys(e.format).reduce((g,k)=>o.includes(k)?Lt(Qe(),g,{[k]:e.format[k]}):g,Qe()));const l=n(e.value,s,i);let u=[s.key];it(l)?u=l.map((g,k)=>{const w=a[g.type],_=w?w({[g.type]:g.value,index:k,parts:l}):[g.value];return t0(_)&&(_[0].key=`${g.type}-${k}`),_}):fe(l)&&(u=[l]);const c=Lt(Qe(),r),p=fe(e.tag)||He(e.tag)?e.tag:Bu();return ic(p,c,u)}}const Uu=Yn({name:"i18n-n",props:Lt({value:{type:Number,required:!0},format:{type:[String,Object]}},js),setup(e,t){const o=e.i18n||yt({useScope:e.scope,__useComponent:!0});return ju(e,t,Eu,(...n)=>o[Fs](...n))}}),Ku=Yn({name:"i18n-d",props:Lt({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},js),setup(e,t){const o=e.i18n||yt({useScope:e.scope,__useComponent:!0});return ju(e,t,Au,(...n)=>o[Os](...n))}});function o0(e,t){const o=e;if(e.mode==="composition")return o.__getInstance(t)||e.global;{const n=o.__getInstance(t);return n!=null?n.__composer:e.global.__composer}}function n0(e){const t=s=>{const{instance:i,modifiers:l,value:u}=s;if(!i||!i.$)throw kt(bt.UNEXPECTED_ERROR);const c=o0(e,i.$),p=zu(u);return[Reflect.apply(c.t,c,[...Hu(p)]),c]};return{created:(s,i)=>{const[l,u]=t(i);sr&&e.global===u&&(s.__i18nWatcher=ct(u.locale,()=>{i.instance&&i.instance.$forceUpdate()})),s.__composer=u,s.textContent=l},unmounted:s=>{sr&&s.__i18nWatcher&&(s.__i18nWatcher(),s.__i18nWatcher=void 0,delete s.__i18nWatcher),s.__composer&&(s.__composer=void 0,delete s.__composer)},beforeUpdate:(s,{value:i})=>{if(s.__composer){const l=s.__composer,u=zu(i);s.textContent=Reflect.apply(l.t,l,[...Hu(u)])}},getSSRProps:s=>{const[i]=t(s);return{textContent:i}}}}function zu(e){if(fe(e))return{path:e};if(Le(e)){if(!("path"in e))throw kt(bt.REQUIRED_VALUE,"path");return e}else throw kt(bt.INVALID_VALUE)}function Hu(e){const{path:t,locale:o,args:n,choice:a,plural:r}=e,s={},i=n||{};return fe(o)&&(s.locale=o),gt(a)&&(s.plural=a),gt(r)&&(s.plural=r),[t,i,s]}function a0(e,t,...o){const n=Le(o[0])?o[0]:{},a=!!n.useI18nComponentName;(De(n.globalInstall)?n.globalInstall:!0)&&([a?"i18n":Gu.name,"I18nT"].forEach(s=>e.component(s,Gu)),[Uu.name,"I18nN"].forEach(s=>e.component(s,Uu)),[Ku.name,"I18nD"].forEach(s=>e.component(s,Ku))),e.directive("t",n0(t))}function r0(e,t,o){return{beforeCreate(){const n=$o();if(!n)throw kt(bt.UNEXPECTED_ERROR);const a=this.$options;if(a.i18n){const r=a.i18n;if(a.__i18n&&(r.__i18n=a.__i18n),r.__root=t,this===this.$root)this.$i18n=Vu(e,r);else{r.__injectWithOption=!0,r.__extender=o.__vueI18nExtend,this.$i18n=Gs(r);const s=this.$i18n;s.__extender&&(s.__disposer=s.__extender(this.$i18n))}}else if(a.__i18n)if(this===this.$root)this.$i18n=Vu(e,a);else{this.$i18n=Gs({__i18n:a.__i18n,__injectWithOption:!0,__extender:o.__vueI18nExtend,__root:t});const r=this.$i18n;r.__extender&&(r.__disposer=r.__extender(this.$i18n))}else this.$i18n=e;a.__i18nGlobal&&Nu(t,a,a),this.$t=(...r)=>this.$i18n.t(...r),this.$rt=(...r)=>this.$i18n.rt(...r),this.$tc=(...r)=>this.$i18n.tc(...r),this.$te=(r,s)=>this.$i18n.te(r,s),this.$d=(...r)=>this.$i18n.d(...r),this.$n=(...r)=>this.$i18n.n(...r),this.$tm=r=>this.$i18n.tm(r),o.__setInstance(n,this.$i18n)},mounted(){},unmounted(){const n=$o();if(!n)throw kt(bt.UNEXPECTED_ERROR);const a=this.$i18n;delete this.$t,delete this.$rt,delete this.$tc,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,a.__disposer&&(a.__disposer(),delete a.__disposer,delete a.__extender),o.__deleteInstance(n),delete this.$i18n}}}function Vu(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[Tu](t.pluralizationRules||e.pluralizationRules);const o=fr(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(o).forEach(n=>e.mergeLocaleMessage(n,o[n])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(n=>e.mergeDateTimeFormat(n,t.datetimeFormats[n])),t.numberFormats&&Object.keys(t.numberFormats).forEach(n=>e.mergeNumberFormat(n,t.numberFormats[n])),e}const s0=Do("global-vue-i18n");function i0(e={},t){const o=__VUE_I18N_LEGACY_API__&&De(e.legacy)?e.legacy:__VUE_I18N_LEGACY_API__,n=De(e.globalInjection)?e.globalInjection:!0,a=__VUE_I18N_LEGACY_API__&&o?!!e.allowComposition:!0,r=new Map,[s,i]=l0(e,o),l=Do("");function u(g){return r.get(g)||null}function c(g,k){r.set(g,k)}function p(g){r.delete(g)}{const g={get mode(){return __VUE_I18N_LEGACY_API__&&o?"legacy":"composition"},get allowComposition(){return a},async install(k,...w){if(k.__VUE_I18N_SYMBOL__=l,k.provide(k.__VUE_I18N_SYMBOL__,g),Le(w[0])){const h=w[0];g.__composerExtend=h.__composerExtend,g.__vueI18nExtend=h.__vueI18nExtend}let _=null;!o&&n&&(_=b0(k,g.global)),__VUE_I18N_FULL_INSTALL__&&a0(k,g,...w),__VUE_I18N_LEGACY_API__&&o&&k.mixin(r0(i,i.__composer,g));const d=k.unmount;k.unmount=()=>{_&&_(),g.dispose(),d()}},get global(){return i},dispose(){s.stop()},__instances:r,__getInstance:u,__setInstance:c,__deleteInstance:p};return g}}function yt(e={}){const t=$o();if(t==null)throw kt(bt.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw kt(bt.NOT_INSTALLED);const o=c0(t),n=d0(o),a=Mu(t),r=u0(e,a);if(__VUE_I18N_LEGACY_API__&&o.mode==="legacy"&&!e.__useComponent){if(!o.allowComposition)throw kt(bt.NOT_AVAILABLE_IN_LEGACY_MODE);return h0(t,r,n,e)}if(r==="global")return Nu(n,e,a),n;if(r==="parent"){let l=p0(o,t,e.__useComponent);return l==null&&(l=n),l}const s=o;let i=s.__getInstance(t);if(i==null){const l=Lt({},e);"__i18n"in a&&(l.__i18n=a.__i18n),n&&(l.__root=n),i=Bs(l),s.__composerExtend&&(i[Ds]=s.__composerExtend(i)),f0(s,t,i),s.__setInstance(t,i)}return i}function l0(e,t,o){const n=Ir();{const a=__VUE_I18N_LEGACY_API__&&t?n.run(()=>Gs(e)):n.run(()=>Bs(e));if(a==null)throw kt(bt.UNEXPECTED_ERROR);return[n,a]}}function c0(e){{const t=Fe(e.isCE?s0:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw kt(e.isCE?bt.NOT_INSTALLED_WITH_PROVIDE:bt.UNEXPECTED_ERROR);return t}}function u0(e,t){return ir(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function d0(e){return e.mode==="composition"?e.global:e.global.__composer}function p0(e,t,o=!1){let n=null;const a=t.root;let r=g0(t,o);for(;r!=null;){const s=e;if(e.mode==="composition")n=s.__getInstance(r);else if(__VUE_I18N_LEGACY_API__){const i=s.__getInstance(r);i!=null&&(n=i.__composer,o&&n&&!n[Pu]&&(n=null))}if(n!=null||a===r)break;r=r.parent}return n}function g0(e,t=!1){return e==null?null:t&&e.vnode.ctx||e.parent}function f0(e,t,o){co(()=>{},t),Va(()=>{const n=o;e.__deleteInstance(t);const a=n[Ds];a&&(a(),delete n[Ds])},t)}function h0(e,t,o,n={}){const a=t==="local",r=fn(null);if(a&&e.proxy&&!(e.proxy.$options.i18n||e.proxy.$options.__i18n))throw kt(bt.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const s=De(n.inheritLocale)?n.inheritLocale:!fe(n.locale),i=de(!a||s?o.locale.value:fe(n.locale)?n.locale:En),l=de(!a||s?o.fallbackLocale.value:fe(n.fallbackLocale)||it(n.fallbackLocale)||Le(n.fallbackLocale)||n.fallbackLocale===!1?n.fallbackLocale:i.value),u=de(fr(i.value,n)),c=de(Le(n.datetimeFormats)?n.datetimeFormats:{[i.value]:{}}),p=de(Le(n.numberFormats)?n.numberFormats:{[i.value]:{}}),g=a?o.missingWarn:De(n.missingWarn)||Bo(n.missingWarn)?n.missingWarn:!0,k=a?o.fallbackWarn:De(n.fallbackWarn)||Bo(n.fallbackWarn)?n.fallbackWarn:!0,w=a?o.fallbackRoot:De(n.fallbackRoot)?n.fallbackRoot:!0,_=!!n.fallbackFormat,d=nt(n.missing)?n.missing:null,h=nt(n.postTranslation)?n.postTranslation:null,f=a?o.warnHtmlMessage:De(n.warnHtmlMessage)?n.warnHtmlMessage:!0,m=!!n.escapeParameter,v=a?o.modifiers:Le(n.modifiers)?n.modifiers:{},x=n.pluralRules||a&&o.pluralRules;function A(){return[i.value,l.value,u.value,c.value,p.value]}const S=te({get:()=>r.value?r.value.locale.value:i.value,set:O=>{r.value&&(r.value.locale.value=O),i.value=O}}),T=te({get:()=>r.value?r.value.fallbackLocale.value:l.value,set:O=>{r.value&&(r.value.fallbackLocale.value=O),l.value=O}}),I=te(()=>r.value?r.value.messages.value:u.value),H=te(()=>c.value),W=te(()=>p.value);function re(){return r.value?r.value.getPostTranslationHandler():h}function P(O){r.value&&r.value.setPostTranslationHandler(O)}function $(){return r.value?r.value.getMissingHandler():d}function M(O){r.value&&r.value.setMissingHandler(O)}function C(O){return A(),O()}function N(...O){return r.value?C(()=>Reflect.apply(r.value.t,null,[...O])):C(()=>"")}function ne(...O){return r.value?Reflect.apply(r.value.rt,null,[...O]):""}function ge(...O){return r.value?C(()=>Reflect.apply(r.value.d,null,[...O])):C(()=>"")}function L(...O){return r.value?C(()=>Reflect.apply(r.value.n,null,[...O])):C(()=>"")}function ae(O){return r.value?r.value.tm(O):{}}function ie(O,K){return r.value?r.value.te(O,K):!1}function le(O){return r.value?r.value.getLocaleMessage(O):{}}function we(O,K){r.value&&(r.value.setLocaleMessage(O,K),u.value[O]=K)}function Me(O,K){r.value&&r.value.mergeLocaleMessage(O,K)}function Re(O){return r.value?r.value.getDateTimeFormat(O):{}}function Oe(O,K){r.value&&(r.value.setDateTimeFormat(O,K),c.value[O]=K)}function Ie(O,K){r.value&&r.value.mergeDateTimeFormat(O,K)}function Je(O){return r.value?r.value.getNumberFormat(O):{}}function Xe(O,K){r.value&&(r.value.setNumberFormat(O,K),p.value[O]=K)}function ft(O,K){r.value&&r.value.mergeNumberFormat(O,K)}const E={get id(){return r.value?r.value.id:-1},locale:S,fallbackLocale:T,messages:I,datetimeFormats:H,numberFormats:W,get inheritLocale(){return r.value?r.value.inheritLocale:s},set inheritLocale(O){r.value&&(r.value.inheritLocale=O)},get availableLocales(){return r.value?r.value.availableLocales:Object.keys(u.value)},get modifiers(){return r.value?r.value.modifiers:v},get pluralRules(){return r.value?r.value.pluralRules:x},get isGlobal(){return r.value?r.value.isGlobal:!1},get missingWarn(){return r.value?r.value.missingWarn:g},set missingWarn(O){r.value&&(r.value.missingWarn=O)},get fallbackWarn(){return r.value?r.value.fallbackWarn:k},set fallbackWarn(O){r.value&&(r.value.missingWarn=O)},get fallbackRoot(){return r.value?r.value.fallbackRoot:w},set fallbackRoot(O){r.value&&(r.value.fallbackRoot=O)},get fallbackFormat(){return r.value?r.value.fallbackFormat:_},set fallbackFormat(O){r.value&&(r.value.fallbackFormat=O)},get warnHtmlMessage(){return r.value?r.value.warnHtmlMessage:f},set warnHtmlMessage(O){r.value&&(r.value.warnHtmlMessage=O)},get escapeParameter(){return r.value?r.value.escapeParameter:m},set escapeParameter(O){r.value&&(r.value.escapeParameter=O)},t:N,getPostTranslationHandler:re,setPostTranslationHandler:P,getMissingHandler:$,setMissingHandler:M,rt:ne,d:ge,n:L,tm:ae,te:ie,getLocaleMessage:le,setLocaleMessage:we,mergeLocaleMessage:Me,getDateTimeFormat:Re,setDateTimeFormat:Oe,mergeDateTimeFormat:Ie,getNumberFormat:Je,setNumberFormat:Xe,mergeNumberFormat:ft};function F(O){O.locale.value=i.value,O.fallbackLocale.value=l.value,Object.keys(u.value).forEach(K=>{O.mergeLocaleMessage(K,u.value[K])}),Object.keys(c.value).forEach(K=>{O.mergeDateTimeFormat(K,c.value[K])}),Object.keys(p.value).forEach(K=>{O.mergeNumberFormat(K,p.value[K])}),O.escapeParameter=m,O.fallbackFormat=_,O.fallbackRoot=w,O.fallbackWarn=k,O.missingWarn=g,O.warnHtmlMessage=f}return Al(()=>{if(e.proxy==null||e.proxy.$i18n==null)throw kt(bt.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const O=r.value=e.proxy.$i18n.__composer;t==="global"?(i.value=O.locale.value,l.value=O.fallbackLocale.value,u.value=O.messages.value,c.value=O.datetimeFormats.value,p.value=O.numberFormats.value):a&&F(O)}),E}const m0=["locale","fallbackLocale","availableLocales"],Wu=["t","rt","d","n","tm","te"];function b0(e,t){const o=Object.create(null);return m0.forEach(a=>{const r=Object.getOwnPropertyDescriptor(t,a);if(!r)throw kt(bt.UNEXPECTED_ERROR);const s=st(r.value)?{get(){return r.value.value},set(i){r.value.value=i}}:{get(){return r.get&&r.get()}};Object.defineProperty(o,a,s)}),e.config.globalProperties.$i18n=o,Wu.forEach(a=>{const r=Object.getOwnPropertyDescriptor(t,a);if(!r||!r.value)throw kt(bt.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${a}`,r)}),()=>{delete e.config.globalProperties.$i18n,Wu.forEach(a=>{delete e.config.globalProperties[`$${a}`]})}}if(qy(),__INTLIFY_JIT_COMPILATION__?cu(Ky):cu(Uy),Ny(gy),Ry(au),__INTLIFY_PROD_DEVTOOLS__){const e=Co();e.__INTLIFY__=!0,wy(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const y0=Object.assign({"./locales/ar/aria.json":mh,"./locales/ar/buttons.json":bh,"./locales/ar/detail.json":yh,"./locales/ar/legend.json":_h,"./locales/ar/messages.json":vh,"./locales/ar/options.json":kh,"./locales/ar/prayerLaps.json":wh,"./locales/ar/regions.json":xh,"./locales/ar/search.json":Ah,"./locales/ar/tabs.json":Sh,"./locales/de/aria.json":$h,"./locales/de/buttons.json":Eh,"./locales/de/detail.json":Ch,"./locales/de/legend.json":Lh,"./locales/de/messages.json":Th,"./locales/de/options.json":Ph,"./locales/de/prayerLaps.json":Mh,"./locales/de/regions.json":Nh,"./locales/de/search.json":Rh,"./locales/de/tabs.json":Ih,"./locales/en/aria.json":Oh,"./locales/en/buttons.json":Fh,"./locales/en/detail.json":Dh,"./locales/en/legend.json":Bh,"./locales/en/messages.json":Gh,"./locales/en/options.json":jh,"./locales/en/popup.json":Uh,"./locales/en/prayerLaps.json":Kh,"./locales/en/regions.json":zh,"./locales/en/search.json":Hh,"./locales/en/tabs.json":Vh,"./locales/es/aria.json":Wh,"./locales/es/buttons.json":Yh,"./locales/es/detail.json":qh,"./locales/es/legend.json":Jh,"./locales/es/messages.json":Xh,"./locales/es/options.json":Zh,"./locales/es/prayerLaps.json":Qh,"./locales/es/regions.json":em,"./locales/es/search.json":tm,"./locales/es/tabs.json":om,"./locales/fr/aria.json":nm,"./locales/fr/buttons.json":am,"./locales/fr/detail.json":rm,"./locales/fr/legend.json":sm,"./locales/fr/messages.json":im,"./locales/fr/options.json":lm,"./locales/fr/popup.json":cm,"./locales/fr/prayerLaps.json":um,"./locales/fr/regions.json":dm,"./locales/fr/search.json":pm,"./locales/fr/tabs.json":gm,"./locales/hi/aria.json":fm,"./locales/hi/buttons.json":hm,"./locales/hi/detail.json":mm,"./locales/hi/legend.json":bm,"./locales/hi/messages.json":ym,"./locales/hi/options.json":_m,"./locales/hi/prayerLaps.json":vm,"./locales/hi/regions.json":km,"./locales/hi/search.json":wm,"./locales/it/aria.json":xm,"./locales/it/buttons.json":Am,"./locales/it/detail.json":Sm,"./locales/it/legend.json":$m,"./locales/it/messages.json":Em,"./locales/it/options.json":Cm,"./locales/it/prayerLaps.json":Lm,"./locales/it/search.json":Tm,"./locales/pt/aria.json":Pm,"./locales/pt/buttons.json":Mm,"./locales/pt/detail.json":Nm,"./locales/pt/legend.json":Rm,"./locales/pt/messages.json":Im,"./locales/pt/options.json":Om,"./locales/pt/prayerLaps.json":Fm,"./locales/pt/regions.json":Dm,"./locales/pt/search.json":Bm,"./locales/pt/tabs.json":Gm,"./locales/ro/aria.json":jm,"./locales/ro/buttons.json":Um,"./locales/ro/detail.json":Km,"./locales/ro/legend.json":zm,"./locales/ro/messages.json":Hm,"./locales/ro/options.json":Vm,"./locales/ro/prayerLaps.json":Wm,"./locales/ro/search.json":Ym,"./locales/ru/aria.json":qm,"./locales/ru/buttons.json":Jm,"./locales/ru/detail.json":Xm,"./locales/ru/legend.json":Zm,"./locales/ru/messages.json":Qm,"./locales/ru/options.json":eb,"./locales/ru/prayerLaps.json":tb,"./locales/ru/regions.json":ob,"./locales/ru/search.json":nb,"./locales/ru/tabs.json":ab,"./locales/zh/aria.json":rb,"./locales/zh/buttons.json":sb,"./locales/zh/detail.json":ib,"./locales/zh/legend.json":lb,"./locales/zh/messages.json":cb,"./locales/zh/options.json":ub,"./locales/zh/prayerLaps.json":db,"./locales/zh/search.json":pb}),ua={};for(const[e,t]of Object.entries(y0)){const o=e.match(/\.\/locales\/([^/]+)\/([^/]+)\.json$/);if(!o)continue;const[,n,a]=o;ua[n]??(ua[n]={}),ua[n][a]=t}const Yu=["ar","de","en","es","fr","hi","it","pt","ro","ru","zh"];function _0(){var o;const t=(((o=document==null?void 0:document.documentElement)==null?void 0:o.lang)||"").split("-")[0].toLowerCase();return Yu.includes(t)?t:"en"}function v0(){return i0({legacy:!1,globalInjection:!0,locale:_0(),fallbackLocale:"en",messages:ua,missingWarn:!1,fallbackWarn:!1})}function wt(e,t){const o=t||k0(e);co(()=>{var i;const n=$o();if(!n)return;const a=(i=n.proxy)==null?void 0:i.$el;if(!a)return;const r=a.getRootNode();if(!(r instanceof ShadowRoot)||r.querySelector(`style[data-shadow-styles="${o}"]`))return;const s=document.createElement("style");s.setAttribute("data-shadow-styles",o),s.textContent=e,r.appendChild(s)})}function k0(e){let t=0;for(let o=0;o(t==null?void 0:t.theme)==="dark"),a=te(()=>{var d;return((d=o==null?void 0:o.value)==null?void 0:d.pinHintLabel)||"Tap a coloured dot — someone still needs prayer"}),r=de(!1),s=de(null);let i=null,l=null,u=null,c=null,p=null;function g(){r.value=!1}function k(d,h){var m;let f=d==null?void 0:d.parentElement;for(let v=0;f&&v<12;v++,f=f.parentElement){if(f===h||(m=f.classList)!=null&&m.contains("profile-loader"))return null;let x="";try{x=getComputedStyle(f).position}catch{}if(x&&x!=="static"){const A=f.getBoundingClientRect();if(A.height>=120&&A.width>=160)return f}}return null}function w(){const d=s.value;if(d)try{d.style.removeProperty("--pin-hint-lift");const h=d.getBoundingClientRect();if(!h.height)return;const f=Math.round(h.bottom-window.innerHeight);f>0&&d.style.setProperty("--pin-hint-lift",f+8+"px")}catch{}}function _(d){const h=s.value;if(!h||!(d!=null&&d.querySelector))return;let f=0;try{const v=d.querySelector(".mapboxgl-ctrl-bottom-right .mapboxgl-ctrl-attrib, .mapboxgl-ctrl-bottom-right .doxa-attribution, .doxa-attribution");if(v){const x=v.getBoundingClientRect(),A=h.parentElement,S=A?A.getBoundingClientRect():null;if(f=S?Math.max(x.height||0,S.bottom-x.top):x.height||0,p!==v&&typeof ResizeObserver<"u"){if(u)try{u.disconnect()}catch{}p=v,u=new ResizeObserver(()=>_(d)),u.observe(v)}}}catch{}const m=Math.min(Math.max(Math.ceil(f)||20,20),72);h.style.setProperty("--pin-hint-attrib-clear",m+"px"),w()}return co(()=>{var m,v,x;const d=$o(),h=(x=(v=(m=d==null?void 0:d.proxy)==null?void 0:m.$el)==null?void 0:v.getRootNode)==null?void 0:x.call(v);if(!h||typeof h.querySelector!="function")return;let f=0;i=setInterval(()=>{f++;const A=h.querySelector("canvas");A?(clearInterval(i),i=null,r.value=!0,lo(()=>{const S=k(A,h),T=s.value;if(S&&T&&T.parentElement!==S)try{S.appendChild(T),l=S}catch{}_(h),w();try{const I=s.value&&s.value.offsetParent||null;if(I&&typeof ResizeObserver<"u"){if(c)try{c.disconnect()}catch{}c=new ResizeObserver(()=>w()),c.observe(I)}}catch{}})):f>40&&(clearInterval(i),i=null)},300)}),uo(()=>{var d;if(i&&clearInterval(i),u){try{u.disconnect()}catch{}u=null}if(p=null,c){try{c.disconnect()}catch{}c=null}if(l&&((d=s.value)==null?void 0:d.parentElement)===l)try{l.removeChild(s.value)}catch{}l=null}),wt(` + */const Jy="9.14.5";function Xy(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(Co().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(Co().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(Co().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(Co().__INTLIFY_DROP_MESSAGE_COMPILER__=!1),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Co().__INTLIFY_PROD_DEVTOOLS__=!1)}const Zy=Ly.__EXTEND_POINT__,To=cr(Zy);To(),To(),To(),To(),To(),To(),To(),To(),To();const Pu=Qt.__EXTEND_POINT__,Dt=cr(Pu),bt={UNEXPECTED_RETURN_TYPE:Pu,INVALID_ARGUMENT:Dt(),MUST_BE_CALL_SETUP_TOP:Dt(),NOT_INSTALLED:Dt(),NOT_AVAILABLE_IN_LEGACY_MODE:Dt(),REQUIRED_VALUE:Dt(),INVALID_VALUE:Dt(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:Dt(),NOT_INSTALLED_WITH_PROVIDE:Dt(),UNEXPECTED_ERROR:Dt(),NOT_COMPATIBLE_LEGACY_VUE_I18N:Dt(),BRIDGE_SUPPORT_VUE_2_ONLY:Dt(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:Dt(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:Dt(),__EXTEND_POINT__:Dt()};function kt(e,...t){return An(e,null,void 0)}const Fs=Do("__translateVNode"),Ds=Do("__datetimeParts"),Bs=Do("__numberParts"),Mu=Do("__setPluralRules"),Nu=Do("__injectWithOption"),Gs=Do("__dispose");function ca(e){if(!He(e)||ho(e))return e;for(const t in e)if(Xt(e,t))if(!t.includes("."))He(e[t])&&ca(e[t]);else{const o=t.split("."),n=o.length-1;let a=e,r=!1;for(let s=0;s{if("locale"in i&&"resource"in i){const{locale:l,resource:u}=i;l?(s[l]=s[l]||Qe(),dr(u,s[l])):dr(u,s)}else fe(i)&&dr(JSON.parse(i),s)}),a==null&&r)for(const i in s)Xt(s,i)&&ca(s[i]);return s}function Ru(e){return e.type}function Iu(e,t,o){let n=He(t.messages)?t.messages:Qe();"__i18nGlobal"in o&&(n=hr(e.locale.value,{messages:n,__i18n:o.__i18nGlobal}));const a=Object.keys(n);a.length&&a.forEach(r=>{e.mergeLocaleMessage(r,n[r])});{if(He(t.datetimeFormats)){const r=Object.keys(t.datetimeFormats);r.length&&r.forEach(s=>{e.mergeDateTimeFormat(s,t.datetimeFormats[s])})}if(He(t.numberFormats)){const r=Object.keys(t.numberFormats);r.length&&r.forEach(s=>{e.mergeNumberFormat(s,t.numberFormats[s])})}}}function Ou(e){return We(Zn,null,e,0)}const Fu="__INTLIFY_META__",Du=()=>[],Qy=()=>!1;let Bu=0;function Gu(e){return(t,o,n,a)=>e(o,n,$o()||void 0,a)}const e0=()=>{const e=$o();let t=null;return e&&(t=Ru(e)[Fu])?{[Fu]:t}:null};function js(e={},t){const{__root:o,__injectWithOption:n}=e,a=o===void 0,r=e.flatJson,s=ir?de:fn,i=!!e.translateExistCompatible;let l=De(e.inheritLocale)?e.inheritLocale:!0;const u=s(o&&l?o.locale.value:fe(e.locale)?e.locale:En),c=s(o&&l?o.fallbackLocale.value:fe(e.fallbackLocale)||it(e.fallbackLocale)||Le(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:u.value),p=s(hr(u.value,e)),g=s(Le(e.datetimeFormats)?e.datetimeFormats:{[u.value]:{}}),w=s(Le(e.numberFormats)?e.numberFormats:{[u.value]:{}});let b=o?o.missingWarn:De(e.missingWarn)||Bo(e.missingWarn)?e.missingWarn:!0,y=o?o.fallbackWarn:De(e.fallbackWarn)||Bo(e.fallbackWarn)?e.fallbackWarn:!0,d=o?o.fallbackRoot:De(e.fallbackRoot)?e.fallbackRoot:!0,h=!!e.fallbackFormat,f=nt(e.missing)?e.missing:null,m=nt(e.missing)?Gu(e.missing):null,k=nt(e.postTranslation)?e.postTranslation:null,x=o?o.warnHtmlMessage:De(e.warnHtmlMessage)?e.warnHtmlMessage:!0,A=!!e.escapeParameter;const S=o?o.modifiers:Le(e.modifiers)?e.modifiers:{};let L=e.pluralRules||o&&o.pluralRules,P;P=(()=>{a&&mu(null);const G={version:Jy,locale:u.value,fallbackLocale:c.value,messages:p.value,modifiers:S,pluralRules:L,missing:m===null?void 0:m,missingWarn:b,fallbackWarn:y,fallbackFormat:h,unresolving:!0,postTranslation:k===null?void 0:k,warnHtmlMessage:x,escapeParameter:A,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};G.datetimeFormats=g.value,G.numberFormats=w.value,G.__datetimeFormatters=Le(P)?P.__datetimeFormatters:void 0,G.__numberFormatters=Le(P)?P.__numberFormatters:void 0;const Y=Gy(G);return a&&mu(Y),Y})(),la(P,u.value,c.value);function W(){return[u.value,c.value,p.value,g.value,w.value]}const re=te({get:()=>u.value,set:G=>{u.value=G,P.locale=u.value}}),M=te({get:()=>c.value,set:G=>{c.value=G,P.fallbackLocale=c.value,la(P,u.value,G)}}),F=te(()=>p.value),T=te(()=>g.value),$=te(()=>w.value);function I(){return nt(k)?k:null}function ne(G){k=G,P.postTranslation=G}function ge(){return f}function C(G){G!==null&&(m=Gu(G)),f=G,P.missing=m}const ae=(G,Y,me,Ae,Ge,D)=>{W();let U;try{__INTLIFY_PROD_DEVTOOLS__,a||(P.fallbackContext=o?By():void 0),U=G(P)}finally{__INTLIFY_PROD_DEVTOOLS__,a||(P.fallbackContext=void 0)}if(me!=="translate exists"&>(U)&&U===fr||me==="translate exists"&&!U){const[he,ve]=Y();return o&&d?Ae(o):Ge(he)}else{if(D(U))return U;throw kt(bt.UNEXPECTED_RETURN_TYPE)}};function ie(...G){return ae(Y=>Reflect.apply(wu,null,[Y,...G]),()=>Rs(...G),"translate",Y=>Reflect.apply(Y.t,Y,[...G]),Y=>Y,Y=>fe(Y))}function le(...G){const[Y,me,Ae]=G;if(Ae&&!He(Ae))throw kt(bt.INVALID_ARGUMENT);return ie(Y,me,Lt({resolvedMessage:!0},Ae||{}))}function we(...G){return ae(Y=>Reflect.apply(Su,null,[Y,...G]),()=>Is(...G),"datetime format",Y=>Reflect.apply(Y.d,Y,[...G]),()=>lu,Y=>fe(Y))}function Me(...G){return ae(Y=>Reflect.apply(Cu,null,[Y,...G]),()=>Os(...G),"number format",Y=>Reflect.apply(Y.n,Y,[...G]),()=>lu,Y=>fe(Y))}function Re(G){return G.map(Y=>fe(Y)||gt(Y)||De(Y)?Ou(String(Y)):Y)}const Ie={normalize:Re,interpolate:G=>G,type:"vnode"};function Je(...G){return ae(Y=>{let me;const Ae=Y;try{Ae.processor=Ie,me=Reflect.apply(wu,null,[Ae,...G])}finally{Ae.processor=null}return me},()=>Rs(...G),"translate",Y=>Y[Fs](...G),Y=>[Ou(Y)],Y=>it(Y))}function Xe(...G){return ae(Y=>Reflect.apply(Cu,null,[Y,...G]),()=>Os(...G),"number format",Y=>Y[Bs](...G),Du,Y=>fe(Y)||it(Y))}function ft(...G){return ae(Y=>Reflect.apply(Su,null,[Y,...G]),()=>Is(...G),"datetime format",Y=>Y[Ds](...G),Du,Y=>fe(Y)||it(Y))}function E(G){L=G,P.pluralRules=L}function O(G,Y){return ae(()=>{if(!G)return!1;const me=fe(Y)?Y:u.value,Ae=X(me),Ge=P.messageResolver(Ae,G);return i?Ge!=null:ho(Ge)||Wt(Ge)||fe(Ge)},()=>[G],"translate exists",me=>Reflect.apply(me.te,me,[G,Y]),Qy,me=>De(me))}function R(G){let Y=null;const me=su(P,c.value,u.value);for(let Ae=0;Ae{l&&(u.value=G,P.locale=G,la(P,u.value,c.value))}),ct(o.fallbackLocale,G=>{l&&(c.value=G,P.fallbackLocale=G,la(P,u.value,c.value))}));const se={id:Bu,locale:re,fallbackLocale:M,get inheritLocale(){return l},set inheritLocale(G){l=G,G&&o&&(u.value=o.locale.value,c.value=o.fallbackLocale.value,la(P,u.value,c.value))},get availableLocales(){return Object.keys(p.value).sort()},messages:F,get modifiers(){return S},get pluralRules(){return L||{}},get isGlobal(){return a},get missingWarn(){return b},set missingWarn(G){b=G,P.missingWarn=b},get fallbackWarn(){return y},set fallbackWarn(G){y=G,P.fallbackWarn=y},get fallbackRoot(){return d},set fallbackRoot(G){d=G},get fallbackFormat(){return h},set fallbackFormat(G){h=G,P.fallbackFormat=h},get warnHtmlMessage(){return x},set warnHtmlMessage(G){x=G,P.warnHtmlMessage=G},get escapeParameter(){return A},set escapeParameter(G){A=G,P.escapeParameter=G},t:ie,getLocaleMessage:X,setLocaleMessage:J,mergeLocaleMessage:Z,getPostTranslationHandler:I,setPostTranslationHandler:ne,getMissingHandler:ge,setMissingHandler:C,[Mu]:E};return se.datetimeFormats=T,se.numberFormats=$,se.rt=le,se.te=O,se.tm=K,se.d=we,se.n=Me,se.getDateTimeFormat=Q,se.setDateTimeFormat=_,se.mergeDateTimeFormat=v,se.getNumberFormat=B,se.setNumberFormat=V,se.mergeNumberFormat=ue,se[Nu]=n,se[Fs]=Je,se[Ds]=ft,se[Bs]=Xe,se}function t0(e){const t=fe(e.locale)?e.locale:En,o=fe(e.fallbackLocale)||it(e.fallbackLocale)||Le(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:t,n=nt(e.missing)?e.missing:void 0,a=De(e.silentTranslationWarn)||Bo(e.silentTranslationWarn)?!e.silentTranslationWarn:!0,r=De(e.silentFallbackWarn)||Bo(e.silentFallbackWarn)?!e.silentFallbackWarn:!0,s=De(e.fallbackRoot)?e.fallbackRoot:!0,i=!!e.formatFallbackMessages,l=Le(e.modifiers)?e.modifiers:{},u=e.pluralizationRules,c=nt(e.postTranslation)?e.postTranslation:void 0,p=fe(e.warnHtmlInMessage)?e.warnHtmlInMessage!=="off":!0,g=!!e.escapeParameterHtml,w=De(e.sync)?e.sync:!0;let b=e.messages;if(Le(e.sharedMessages)){const A=e.sharedMessages;b=Object.keys(A).reduce((L,P)=>{const z=L[P]||(L[P]={});return Lt(z,A[P]),L},b||{})}const{__i18n:y,__root:d,__injectWithOption:h}=e,f=e.datetimeFormats,m=e.numberFormats,k=e.flatJson,x=e.translateExistCompatible;return{locale:t,fallbackLocale:o,messages:b,flatJson:k,datetimeFormats:f,numberFormats:m,missing:n,missingWarn:a,fallbackWarn:r,fallbackRoot:s,fallbackFormat:i,modifiers:l,pluralRules:u,postTranslation:c,warnHtmlMessage:p,escapeParameter:g,messageResolver:e.messageResolver,inheritLocale:w,translateExistCompatible:x,__i18n:y,__root:d,__injectWithOption:h}}function Us(e={},t){{const o=js(t0(e)),{__extender:n}=e,a={id:o.id,get locale(){return o.locale.value},set locale(r){o.locale.value=r},get fallbackLocale(){return o.fallbackLocale.value},set fallbackLocale(r){o.fallbackLocale.value=r},get messages(){return o.messages.value},get datetimeFormats(){return o.datetimeFormats.value},get numberFormats(){return o.numberFormats.value},get availableLocales(){return o.availableLocales},get formatter(){return{interpolate(){return[]}}},set formatter(r){},get missing(){return o.getMissingHandler()},set missing(r){o.setMissingHandler(r)},get silentTranslationWarn(){return De(o.missingWarn)?!o.missingWarn:o.missingWarn},set silentTranslationWarn(r){o.missingWarn=De(r)?!r:r},get silentFallbackWarn(){return De(o.fallbackWarn)?!o.fallbackWarn:o.fallbackWarn},set silentFallbackWarn(r){o.fallbackWarn=De(r)?!r:r},get modifiers(){return o.modifiers},get formatFallbackMessages(){return o.fallbackFormat},set formatFallbackMessages(r){o.fallbackFormat=r},get postTranslation(){return o.getPostTranslationHandler()},set postTranslation(r){o.setPostTranslationHandler(r)},get sync(){return o.inheritLocale},set sync(r){o.inheritLocale=r},get warnHtmlInMessage(){return o.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(r){o.warnHtmlMessage=r!=="off"},get escapeParameterHtml(){return o.escapeParameter},set escapeParameterHtml(r){o.escapeParameter=r},get preserveDirectiveContent(){return!0},set preserveDirectiveContent(r){},get pluralizationRules(){return o.pluralRules||{}},__composer:o,t(...r){const[s,i,l]=r,u={};let c=null,p=null;if(!fe(s))throw kt(bt.INVALID_ARGUMENT);const g=s;return fe(i)?u.locale=i:it(i)?c=i:Le(i)&&(p=i),it(l)?c=l:Le(l)&&(p=l),Reflect.apply(o.t,o,[g,c||p||{},u])},rt(...r){return Reflect.apply(o.rt,o,[...r])},tc(...r){const[s,i,l]=r,u={plural:1};let c=null,p=null;if(!fe(s))throw kt(bt.INVALID_ARGUMENT);const g=s;return fe(i)?u.locale=i:gt(i)?u.plural=i:it(i)?c=i:Le(i)&&(p=i),fe(l)?u.locale=l:it(l)?c=l:Le(l)&&(p=l),Reflect.apply(o.t,o,[g,c||p||{},u])},te(r,s){return o.te(r,s)},tm(r){return o.tm(r)},getLocaleMessage(r){return o.getLocaleMessage(r)},setLocaleMessage(r,s){o.setLocaleMessage(r,s)},mergeLocaleMessage(r,s){o.mergeLocaleMessage(r,s)},d(...r){return Reflect.apply(o.d,o,[...r])},getDateTimeFormat(r){return o.getDateTimeFormat(r)},setDateTimeFormat(r,s){o.setDateTimeFormat(r,s)},mergeDateTimeFormat(r,s){o.mergeDateTimeFormat(r,s)},n(...r){return Reflect.apply(o.n,o,[...r])},getNumberFormat(r){return o.getNumberFormat(r)},setNumberFormat(r,s){o.setNumberFormat(r,s)},mergeNumberFormat(r,s){o.mergeNumberFormat(r,s)},getChoiceIndex(r,s){return-1}};return a.__extender=n,a}}const Ks={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function o0({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((n,a)=>[...n,...a.type===Pe?a.children:[a]],[]):t.reduce((o,n)=>{const a=e[n];return a&&(o[n]=a()),o},Qe())}function ju(e){return Pe}const Uu=Yn({name:"i18n-t",props:Lt({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>gt(e)||!isNaN(e)}},Ks),setup(e,t){const{slots:o,attrs:n}=t,a=e.i18n||yt({useScope:e.scope,__useComponent:!0});return()=>{const r=Object.keys(o).filter(p=>p!=="_"),s=Qe();e.locale&&(s.locale=e.locale),e.plural!==void 0&&(s.plural=fe(e.plural)?+e.plural:e.plural);const i=o0(t,r),l=a[Fs](e.keypath,i,s),u=Lt(Qe(),n),c=fe(e.tag)||He(e.tag)?e.tag:ju();return cc(c,u,l)}}});function n0(e){return it(e)&&!fe(e[0])}function Ku(e,t,o,n){const{slots:a,attrs:r}=t;return()=>{const s={part:!0};let i=Qe();e.locale&&(s.locale=e.locale),fe(e.format)?s.key=e.format:He(e.format)&&(fe(e.format.key)&&(s.key=e.format.key),i=Object.keys(e.format).reduce((g,w)=>o.includes(w)?Lt(Qe(),g,{[w]:e.format[w]}):g,Qe()));const l=n(e.value,s,i);let u=[s.key];it(l)?u=l.map((g,w)=>{const b=a[g.type],y=b?b({[g.type]:g.value,index:w,parts:l}):[g.value];return n0(y)&&(y[0].key=`${g.type}-${w}`),y}):fe(l)&&(u=[l]);const c=Lt(Qe(),r),p=fe(e.tag)||He(e.tag)?e.tag:ju();return cc(p,c,u)}}const zu=Yn({name:"i18n-n",props:Lt({value:{type:Number,required:!0},format:{type:[String,Object]}},Ks),setup(e,t){const o=e.i18n||yt({useScope:e.scope,__useComponent:!0});return Ku(e,t,Lu,(...n)=>o[Bs](...n))}}),Hu=Yn({name:"i18n-d",props:Lt({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},Ks),setup(e,t){const o=e.i18n||yt({useScope:e.scope,__useComponent:!0});return Ku(e,t,$u,(...n)=>o[Ds](...n))}});function a0(e,t){const o=e;if(e.mode==="composition")return o.__getInstance(t)||e.global;{const n=o.__getInstance(t);return n!=null?n.__composer:e.global.__composer}}function r0(e){const t=s=>{const{instance:i,modifiers:l,value:u}=s;if(!i||!i.$)throw kt(bt.UNEXPECTED_ERROR);const c=a0(e,i.$),p=Vu(u);return[Reflect.apply(c.t,c,[...Wu(p)]),c]};return{created:(s,i)=>{const[l,u]=t(i);ir&&e.global===u&&(s.__i18nWatcher=ct(u.locale,()=>{i.instance&&i.instance.$forceUpdate()})),s.__composer=u,s.textContent=l},unmounted:s=>{ir&&s.__i18nWatcher&&(s.__i18nWatcher(),s.__i18nWatcher=void 0,delete s.__i18nWatcher),s.__composer&&(s.__composer=void 0,delete s.__composer)},beforeUpdate:(s,{value:i})=>{if(s.__composer){const l=s.__composer,u=Vu(i);s.textContent=Reflect.apply(l.t,l,[...Wu(u)])}},getSSRProps:s=>{const[i]=t(s);return{textContent:i}}}}function Vu(e){if(fe(e))return{path:e};if(Le(e)){if(!("path"in e))throw kt(bt.REQUIRED_VALUE,"path");return e}else throw kt(bt.INVALID_VALUE)}function Wu(e){const{path:t,locale:o,args:n,choice:a,plural:r}=e,s={},i=n||{};return fe(o)&&(s.locale=o),gt(a)&&(s.plural=a),gt(r)&&(s.plural=r),[t,i,s]}function s0(e,t,...o){const n=Le(o[0])?o[0]:{},a=!!n.useI18nComponentName;(De(n.globalInstall)?n.globalInstall:!0)&&([a?"i18n":Uu.name,"I18nT"].forEach(s=>e.component(s,Uu)),[zu.name,"I18nN"].forEach(s=>e.component(s,zu)),[Hu.name,"I18nD"].forEach(s=>e.component(s,Hu))),e.directive("t",r0(t))}function i0(e,t,o){return{beforeCreate(){const n=$o();if(!n)throw kt(bt.UNEXPECTED_ERROR);const a=this.$options;if(a.i18n){const r=a.i18n;if(a.__i18n&&(r.__i18n=a.__i18n),r.__root=t,this===this.$root)this.$i18n=Yu(e,r);else{r.__injectWithOption=!0,r.__extender=o.__vueI18nExtend,this.$i18n=Us(r);const s=this.$i18n;s.__extender&&(s.__disposer=s.__extender(this.$i18n))}}else if(a.__i18n)if(this===this.$root)this.$i18n=Yu(e,a);else{this.$i18n=Us({__i18n:a.__i18n,__injectWithOption:!0,__extender:o.__vueI18nExtend,__root:t});const r=this.$i18n;r.__extender&&(r.__disposer=r.__extender(this.$i18n))}else this.$i18n=e;a.__i18nGlobal&&Iu(t,a,a),this.$t=(...r)=>this.$i18n.t(...r),this.$rt=(...r)=>this.$i18n.rt(...r),this.$tc=(...r)=>this.$i18n.tc(...r),this.$te=(r,s)=>this.$i18n.te(r,s),this.$d=(...r)=>this.$i18n.d(...r),this.$n=(...r)=>this.$i18n.n(...r),this.$tm=r=>this.$i18n.tm(r),o.__setInstance(n,this.$i18n)},mounted(){},unmounted(){const n=$o();if(!n)throw kt(bt.UNEXPECTED_ERROR);const a=this.$i18n;delete this.$t,delete this.$rt,delete this.$tc,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,a.__disposer&&(a.__disposer(),delete a.__disposer,delete a.__extender),o.__deleteInstance(n),delete this.$i18n}}}function Yu(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[Mu](t.pluralizationRules||e.pluralizationRules);const o=hr(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(o).forEach(n=>e.mergeLocaleMessage(n,o[n])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(n=>e.mergeDateTimeFormat(n,t.datetimeFormats[n])),t.numberFormats&&Object.keys(t.numberFormats).forEach(n=>e.mergeNumberFormat(n,t.numberFormats[n])),e}const l0=Do("global-vue-i18n");function c0(e={},t){const o=__VUE_I18N_LEGACY_API__&&De(e.legacy)?e.legacy:__VUE_I18N_LEGACY_API__,n=De(e.globalInjection)?e.globalInjection:!0,a=__VUE_I18N_LEGACY_API__&&o?!!e.allowComposition:!0,r=new Map,[s,i]=u0(e,o),l=Do("");function u(g){return r.get(g)||null}function c(g,w){r.set(g,w)}function p(g){r.delete(g)}{const g={get mode(){return __VUE_I18N_LEGACY_API__&&o?"legacy":"composition"},get allowComposition(){return a},async install(w,...b){if(w.__VUE_I18N_SYMBOL__=l,w.provide(w.__VUE_I18N_SYMBOL__,g),Le(b[0])){const h=b[0];g.__composerExtend=h.__composerExtend,g.__vueI18nExtend=h.__vueI18nExtend}let y=null;!o&&n&&(y=_0(w,g.global)),__VUE_I18N_FULL_INSTALL__&&s0(w,g,...b),__VUE_I18N_LEGACY_API__&&o&&w.mixin(i0(i,i.__composer,g));const d=w.unmount;w.unmount=()=>{y&&y(),g.dispose(),d()}},get global(){return i},dispose(){s.stop()},__instances:r,__getInstance:u,__setInstance:c,__deleteInstance:p};return g}}function yt(e={}){const t=$o();if(t==null)throw kt(bt.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw kt(bt.NOT_INSTALLED);const o=d0(t),n=g0(o),a=Ru(t),r=p0(e,a);if(__VUE_I18N_LEGACY_API__&&o.mode==="legacy"&&!e.__useComponent){if(!o.allowComposition)throw kt(bt.NOT_AVAILABLE_IN_LEGACY_MODE);return b0(t,r,n,e)}if(r==="global")return Iu(n,e,a),n;if(r==="parent"){let l=f0(o,t,e.__useComponent);return l==null&&(l=n),l}const s=o;let i=s.__getInstance(t);if(i==null){const l=Lt({},e);"__i18n"in a&&(l.__i18n=a.__i18n),n&&(l.__root=n),i=js(l),s.__composerExtend&&(i[Gs]=s.__composerExtend(i)),m0(s,t,i),s.__setInstance(t,i)}return i}function u0(e,t,o){const n=Fr();{const a=__VUE_I18N_LEGACY_API__&&t?n.run(()=>Us(e)):n.run(()=>js(e));if(a==null)throw kt(bt.UNEXPECTED_ERROR);return[n,a]}}function d0(e){{const t=Fe(e.isCE?l0:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw kt(e.isCE?bt.NOT_INSTALLED_WITH_PROVIDE:bt.UNEXPECTED_ERROR);return t}}function p0(e,t){return lr(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function g0(e){return e.mode==="composition"?e.global:e.global.__composer}function f0(e,t,o=!1){let n=null;const a=t.root;let r=h0(t,o);for(;r!=null;){const s=e;if(e.mode==="composition")n=s.__getInstance(r);else if(__VUE_I18N_LEGACY_API__){const i=s.__getInstance(r);i!=null&&(n=i.__composer,o&&n&&!n[Nu]&&(n=null))}if(n!=null||a===r)break;r=r.parent}return n}function h0(e,t=!1){return e==null?null:t&&e.vnode.ctx||e.parent}function m0(e,t,o){co(()=>{},t),Wa(()=>{const n=o;e.__deleteInstance(t);const a=n[Gs];a&&(a(),delete n[Gs])},t)}function b0(e,t,o,n={}){const a=t==="local",r=fn(null);if(a&&e.proxy&&!(e.proxy.$options.i18n||e.proxy.$options.__i18n))throw kt(bt.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const s=De(n.inheritLocale)?n.inheritLocale:!fe(n.locale),i=de(!a||s?o.locale.value:fe(n.locale)?n.locale:En),l=de(!a||s?o.fallbackLocale.value:fe(n.fallbackLocale)||it(n.fallbackLocale)||Le(n.fallbackLocale)||n.fallbackLocale===!1?n.fallbackLocale:i.value),u=de(hr(i.value,n)),c=de(Le(n.datetimeFormats)?n.datetimeFormats:{[i.value]:{}}),p=de(Le(n.numberFormats)?n.numberFormats:{[i.value]:{}}),g=a?o.missingWarn:De(n.missingWarn)||Bo(n.missingWarn)?n.missingWarn:!0,w=a?o.fallbackWarn:De(n.fallbackWarn)||Bo(n.fallbackWarn)?n.fallbackWarn:!0,b=a?o.fallbackRoot:De(n.fallbackRoot)?n.fallbackRoot:!0,y=!!n.fallbackFormat,d=nt(n.missing)?n.missing:null,h=nt(n.postTranslation)?n.postTranslation:null,f=a?o.warnHtmlMessage:De(n.warnHtmlMessage)?n.warnHtmlMessage:!0,m=!!n.escapeParameter,k=a?o.modifiers:Le(n.modifiers)?n.modifiers:{},x=n.pluralRules||a&&o.pluralRules;function A(){return[i.value,l.value,u.value,c.value,p.value]}const S=te({get:()=>r.value?r.value.locale.value:i.value,set:R=>{r.value&&(r.value.locale.value=R),i.value=R}}),L=te({get:()=>r.value?r.value.fallbackLocale.value:l.value,set:R=>{r.value&&(r.value.fallbackLocale.value=R),l.value=R}}),P=te(()=>r.value?r.value.messages.value:u.value),z=te(()=>c.value),W=te(()=>p.value);function re(){return r.value?r.value.getPostTranslationHandler():h}function M(R){r.value&&r.value.setPostTranslationHandler(R)}function F(){return r.value?r.value.getMissingHandler():d}function T(R){r.value&&r.value.setMissingHandler(R)}function $(R){return A(),R()}function I(...R){return r.value?$(()=>Reflect.apply(r.value.t,null,[...R])):$(()=>"")}function ne(...R){return r.value?Reflect.apply(r.value.rt,null,[...R]):""}function ge(...R){return r.value?$(()=>Reflect.apply(r.value.d,null,[...R])):$(()=>"")}function C(...R){return r.value?$(()=>Reflect.apply(r.value.n,null,[...R])):$(()=>"")}function ae(R){return r.value?r.value.tm(R):{}}function ie(R,K){return r.value?r.value.te(R,K):!1}function le(R){return r.value?r.value.getLocaleMessage(R):{}}function we(R,K){r.value&&(r.value.setLocaleMessage(R,K),u.value[R]=K)}function Me(R,K){r.value&&r.value.mergeLocaleMessage(R,K)}function Re(R){return r.value?r.value.getDateTimeFormat(R):{}}function Oe(R,K){r.value&&(r.value.setDateTimeFormat(R,K),c.value[R]=K)}function Ie(R,K){r.value&&r.value.mergeDateTimeFormat(R,K)}function Je(R){return r.value?r.value.getNumberFormat(R):{}}function Xe(R,K){r.value&&(r.value.setNumberFormat(R,K),p.value[R]=K)}function ft(R,K){r.value&&r.value.mergeNumberFormat(R,K)}const E={get id(){return r.value?r.value.id:-1},locale:S,fallbackLocale:L,messages:P,datetimeFormats:z,numberFormats:W,get inheritLocale(){return r.value?r.value.inheritLocale:s},set inheritLocale(R){r.value&&(r.value.inheritLocale=R)},get availableLocales(){return r.value?r.value.availableLocales:Object.keys(u.value)},get modifiers(){return r.value?r.value.modifiers:k},get pluralRules(){return r.value?r.value.pluralRules:x},get isGlobal(){return r.value?r.value.isGlobal:!1},get missingWarn(){return r.value?r.value.missingWarn:g},set missingWarn(R){r.value&&(r.value.missingWarn=R)},get fallbackWarn(){return r.value?r.value.fallbackWarn:w},set fallbackWarn(R){r.value&&(r.value.missingWarn=R)},get fallbackRoot(){return r.value?r.value.fallbackRoot:b},set fallbackRoot(R){r.value&&(r.value.fallbackRoot=R)},get fallbackFormat(){return r.value?r.value.fallbackFormat:y},set fallbackFormat(R){r.value&&(r.value.fallbackFormat=R)},get warnHtmlMessage(){return r.value?r.value.warnHtmlMessage:f},set warnHtmlMessage(R){r.value&&(r.value.warnHtmlMessage=R)},get escapeParameter(){return r.value?r.value.escapeParameter:m},set escapeParameter(R){r.value&&(r.value.escapeParameter=R)},t:I,getPostTranslationHandler:re,setPostTranslationHandler:M,getMissingHandler:F,setMissingHandler:T,rt:ne,d:ge,n:C,tm:ae,te:ie,getLocaleMessage:le,setLocaleMessage:we,mergeLocaleMessage:Me,getDateTimeFormat:Re,setDateTimeFormat:Oe,mergeDateTimeFormat:Ie,getNumberFormat:Je,setNumberFormat:Xe,mergeNumberFormat:ft};function O(R){R.locale.value=i.value,R.fallbackLocale.value=l.value,Object.keys(u.value).forEach(K=>{R.mergeLocaleMessage(K,u.value[K])}),Object.keys(c.value).forEach(K=>{R.mergeDateTimeFormat(K,c.value[K])}),Object.keys(p.value).forEach(K=>{R.mergeNumberFormat(K,p.value[K])}),R.escapeParameter=m,R.fallbackFormat=y,R.fallbackRoot=b,R.fallbackWarn=w,R.missingWarn=g,R.warnHtmlMessage=f}return $l(()=>{if(e.proxy==null||e.proxy.$i18n==null)throw kt(bt.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const R=r.value=e.proxy.$i18n.__composer;t==="global"?(i.value=R.locale.value,l.value=R.fallbackLocale.value,u.value=R.messages.value,c.value=R.datetimeFormats.value,p.value=R.numberFormats.value):a&&O(R)}),E}const y0=["locale","fallbackLocale","availableLocales"],qu=["t","rt","d","n","tm","te"];function _0(e,t){const o=Object.create(null);return y0.forEach(a=>{const r=Object.getOwnPropertyDescriptor(t,a);if(!r)throw kt(bt.UNEXPECTED_ERROR);const s=st(r.value)?{get(){return r.value.value},set(i){r.value.value=i}}:{get(){return r.get&&r.get()}};Object.defineProperty(o,a,s)}),e.config.globalProperties.$i18n=o,qu.forEach(a=>{const r=Object.getOwnPropertyDescriptor(t,a);if(!r||!r.value)throw kt(bt.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${a}`,r)}),()=>{delete e.config.globalProperties.$i18n,qu.forEach(a=>{delete e.config.globalProperties[`$${a}`]})}}if(Xy(),__INTLIFY_JIT_COMPILATION__?du(Hy):du(zy),Iy(hy),Oy(su),__INTLIFY_PROD_DEVTOOLS__){const e=Co();e.__INTLIFY__=!0,Ay(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const v0=Object.assign({"./locales/ar/aria.json":yh,"./locales/ar/buttons.json":_h,"./locales/ar/detail.json":vh,"./locales/ar/legend.json":kh,"./locales/ar/messages.json":wh,"./locales/ar/options.json":xh,"./locales/ar/prayerLaps.json":Ah,"./locales/ar/regions.json":Sh,"./locales/ar/search.json":$h,"./locales/ar/tabs.json":Eh,"./locales/de/aria.json":Ch,"./locales/de/buttons.json":Lh,"./locales/de/detail.json":Th,"./locales/de/legend.json":Ph,"./locales/de/messages.json":Mh,"./locales/de/options.json":Nh,"./locales/de/prayerLaps.json":Rh,"./locales/de/regions.json":Ih,"./locales/de/search.json":Oh,"./locales/de/tabs.json":Fh,"./locales/en/aria.json":Dh,"./locales/en/buttons.json":Bh,"./locales/en/detail.json":Gh,"./locales/en/legend.json":jh,"./locales/en/messages.json":Uh,"./locales/en/options.json":Kh,"./locales/en/popup.json":zh,"./locales/en/prayerLaps.json":Hh,"./locales/en/regions.json":Vh,"./locales/en/search.json":Wh,"./locales/en/tabs.json":Yh,"./locales/es/aria.json":qh,"./locales/es/buttons.json":Jh,"./locales/es/detail.json":Xh,"./locales/es/legend.json":Zh,"./locales/es/messages.json":Qh,"./locales/es/options.json":em,"./locales/es/prayerLaps.json":tm,"./locales/es/regions.json":om,"./locales/es/search.json":nm,"./locales/es/tabs.json":am,"./locales/fr/aria.json":rm,"./locales/fr/buttons.json":sm,"./locales/fr/detail.json":im,"./locales/fr/legend.json":lm,"./locales/fr/messages.json":cm,"./locales/fr/options.json":um,"./locales/fr/popup.json":dm,"./locales/fr/prayerLaps.json":pm,"./locales/fr/regions.json":gm,"./locales/fr/search.json":fm,"./locales/fr/tabs.json":hm,"./locales/hi/aria.json":mm,"./locales/hi/buttons.json":bm,"./locales/hi/detail.json":ym,"./locales/hi/legend.json":_m,"./locales/hi/messages.json":vm,"./locales/hi/options.json":km,"./locales/hi/prayerLaps.json":wm,"./locales/hi/regions.json":xm,"./locales/hi/search.json":Am,"./locales/it/aria.json":Sm,"./locales/it/buttons.json":$m,"./locales/it/detail.json":Em,"./locales/it/legend.json":Cm,"./locales/it/messages.json":Lm,"./locales/it/options.json":Tm,"./locales/it/prayerLaps.json":Pm,"./locales/it/search.json":Mm,"./locales/pt/aria.json":Nm,"./locales/pt/buttons.json":Rm,"./locales/pt/detail.json":Im,"./locales/pt/legend.json":Om,"./locales/pt/messages.json":Fm,"./locales/pt/options.json":Dm,"./locales/pt/prayerLaps.json":Bm,"./locales/pt/regions.json":Gm,"./locales/pt/search.json":jm,"./locales/pt/tabs.json":Um,"./locales/ro/aria.json":Km,"./locales/ro/buttons.json":zm,"./locales/ro/detail.json":Hm,"./locales/ro/legend.json":Vm,"./locales/ro/messages.json":Wm,"./locales/ro/options.json":Ym,"./locales/ro/prayerLaps.json":qm,"./locales/ro/search.json":Jm,"./locales/ru/aria.json":Xm,"./locales/ru/buttons.json":Zm,"./locales/ru/detail.json":Qm,"./locales/ru/legend.json":eb,"./locales/ru/messages.json":tb,"./locales/ru/options.json":ob,"./locales/ru/prayerLaps.json":nb,"./locales/ru/regions.json":ab,"./locales/ru/search.json":rb,"./locales/ru/tabs.json":sb,"./locales/zh/aria.json":ib,"./locales/zh/buttons.json":lb,"./locales/zh/detail.json":cb,"./locales/zh/legend.json":ub,"./locales/zh/messages.json":db,"./locales/zh/options.json":pb,"./locales/zh/prayerLaps.json":gb,"./locales/zh/search.json":fb}),ua={};for(const[e,t]of Object.entries(v0)){const o=e.match(/\.\/locales\/([^/]+)\/([^/]+)\.json$/);if(!o)continue;const[,n,a]=o;ua[n]??(ua[n]={}),ua[n][a]=t}const Ju=["ar","de","en","es","fr","hi","it","pt","ro","ru","zh"];function k0(){var o;const t=(((o=document==null?void 0:document.documentElement)==null?void 0:o.lang)||"").split("-")[0].toLowerCase();return Ju.includes(t)?t:"en"}function w0(){return c0({legacy:!1,globalInjection:!0,locale:k0(),fallbackLocale:"en",messages:ua,missingWarn:!1,fallbackWarn:!1})}function wt(e,t){const o=t||x0(e);co(()=>{var i;const n=$o();if(!n)return;const a=(i=n.proxy)==null?void 0:i.$el;if(!a)return;const r=a.getRootNode();if(!(r instanceof ShadowRoot)||r.querySelector(`style[data-shadow-styles="${o}"]`))return;const s=document.createElement("style");s.setAttribute("data-shadow-styles",o),s.textContent=e,r.appendChild(s)})}function x0(e){let t=0;for(let o=0;o(t==null?void 0:t.theme)==="dark"),a=te(()=>{var d;return((d=o==null?void 0:o.value)==null?void 0:d.pinHintLabel)||"Tap a coloured dot — someone still needs prayer"}),r=de(!1),s=de(null);let i=null,l=null,u=null,c=null,p=null;function g(){r.value=!1}function w(d,h){var m;let f=d==null?void 0:d.parentElement;for(let k=0;f&&k<12;k++,f=f.parentElement){if(f===h||(m=f.classList)!=null&&m.contains("profile-loader"))return null;let x="";try{x=getComputedStyle(f).position}catch{}if(x&&x!=="static"){const A=f.getBoundingClientRect();if(A.height>=120&&A.width>=160)return f}}return null}function b(){const d=s.value;if(d)try{d.style.removeProperty("--pin-hint-lift");const h=d.getBoundingClientRect();if(!h.height)return;const f=Math.round(h.bottom-window.innerHeight);f>0&&d.style.setProperty("--pin-hint-lift",f+8+"px")}catch{}}function y(d){const h=s.value;if(!h||!(d!=null&&d.querySelector))return;let f=0;try{const k=d.querySelector(".mapboxgl-ctrl-bottom-right .mapboxgl-ctrl-attrib, .mapboxgl-ctrl-bottom-right .doxa-attribution, .doxa-attribution");if(k){const x=k.getBoundingClientRect(),A=h.parentElement,S=A?A.getBoundingClientRect():null;if(f=S?Math.max(x.height||0,S.bottom-x.top):x.height||0,p!==k&&typeof ResizeObserver<"u"){if(u)try{u.disconnect()}catch{}p=k,u=new ResizeObserver(()=>y(d)),u.observe(k)}}}catch{}const m=Math.min(Math.max(Math.ceil(f)||20,20),72);h.style.setProperty("--pin-hint-attrib-clear",m+"px"),b()}return co(()=>{var m,k,x;const d=$o(),h=(x=(k=(m=d==null?void 0:d.proxy)==null?void 0:m.$el)==null?void 0:k.getRootNode)==null?void 0:x.call(k);if(!h||typeof h.querySelector!="function")return;let f=0;i=setInterval(()=>{f++;const A=h.querySelector("canvas");A?(clearInterval(i),i=null,r.value=!0,lo(()=>{const S=w(A,h),L=s.value;if(S&&L&&L.parentElement!==S)try{S.appendChild(L),l=S}catch{}y(h),b();try{const P=s.value&&s.value.offsetParent||null;if(P&&typeof ResizeObserver<"u"){if(c)try{c.disconnect()}catch{}c=new ResizeObserver(()=>b()),c.observe(P)}}catch{}})):f>40&&(clearInterval(i),i=null)},300)}),uo(()=>{var d;if(i&&clearInterval(i),u){try{u.disconnect()}catch{}u=null}if(p=null,c){try{c.disconnect()}catch{}c=null}if(l&&((d=s.value)==null?void 0:d.parentElement)===l)try{l.removeChild(s.value)}catch{}l=null}),wt(` .pin-hint { position: absolute; left: 50%; bottom: calc(var(--pin-hint-attrib-clear, 20px) + 12px + var(--pin-hint-lift, 0px)); transform: translateX(-50%); z-index: 2147482000; pointer-events: none; @@ -69,7 +69,7 @@ @media (prefers-reduced-motion: reduce) { .pin-hint, .pin-hint-pill, .pin-hint-dot::after { animation: none !important; } } -`,"pin-hint"),(d,h)=>r.value?(z(),ee("div",{key:0,ref_key:"hintEl",ref:s,class:Ne(["pin-hint",{dark:n.value}]),role:"status"},[R("span",w0,[h[0]||(h[0]=R("span",{class:"pin-hint-dot","aria-hidden":"true"},null,-1)),mt(" "+pe(a.value)+" ",1),R("button",{class:"pin-hint-x",type:"button","aria-label":"Dismiss hint",onClick:g},"×")])],2)):ye("",!0)}},A0=!1;let S0=0;const $0=vs("ui",{state:()=>({_storeInstanceId:++S0,theme:"light",colorScheme:"default",reducedMotion:!1,highContrast:!1,activeTab:"doxa-regions",sidebarCollapsed:!1,mobileMenuOpen:!1,legendState:"collapsed",_customLegendHeight:null,searchMode:!1,hamburgerMenuOpen:!1,legendMode:"prayer",prayerFilter:null,engagementFilter:null,adoptionFilter:null,religionFilter:null,selectedPeopleGroup:null,breakpoint:"desktop",windowSize:{width:window.innerWidth,height:window.innerHeight},toasts:[],nextToastId:1,toastDuration:5e3,openModals:[],modalData:new Map,isGlobalLoading:!1,globalLoadingMessage:"Loading...",loadingStates:new Map,interactionHistory:[],maxHistoryLength:20,keyboardShortcutsEnabled:!0,screenReaderAnnouncement:"",focusTrapActive:!1,debugMode:!1,showPerformanceOverlay:!1}),getters:{isDarkTheme:e=>!1,isMobile:e=>e.breakpoint==="mobile",isTablet:e=>e.breakpoint==="tablet",isDesktop:e=>e.breakpoint==="desktop"||e.breakpoint==="wide",legendHeight:e=>e._customLegendHeight?e._customLegendHeight:e.legendState==="collapsed"?"48px":e.legendState==="open"?"30%":e.legendState==="fullyOpen"?"calc(100% - 80px)":"48px",caretRotation:e=>e.legendState==="collapsed"?0:90,showPullTab:e=>e.legendState==="open"||e.legendState==="fullyOpen",getToastsByType:e=>t=>e.toasts.filter(o=>o.type===t),hasOpenModal:e=>e.openModals.length>0,topModal:e=>e.openModals.length===0?null:e.openModals[e.openModals.length-1],isModalOpen:e=>t=>e.openModals.includes(t),isAnyLoading:e=>e.isGlobalLoading||e.loadingStates.size>0,isLoading:e=>t=>e.loadingStates.get(t)||!1},actions:{setTheme(e){if(!["light","dark","auto"].includes(e))return;e="light",this.theme=e;const o=this.isDarkTheme;document.documentElement.setAttribute("data-theme",o?"dark":"light");try{localStorage.setItem("theme",e)}catch{}},toggleTheme(){const e=this.theme==="light"?"dark":"light";this.setTheme(e)},setColorScheme(e){this.colorScheme=e,document.documentElement.setAttribute("data-color-scheme",e)},toggleReducedMotion(){this.reducedMotion=!this.reducedMotion,document.documentElement.setAttribute("data-reduced-motion",this.reducedMotion)},toggleHighContrast(){this.highContrast=!this.highContrast,document.documentElement.setAttribute("data-high-contrast",this.highContrast)},setActiveTab(e){this.activeTab=e,this.addToHistory({type:"tab-change",tabId:e,timestamp:Date.now()})},toggleSidebar(){this.sidebarCollapsed=!this.sidebarCollapsed},openMobileMenu(){this.mobileMenuOpen=!0},closeMobileMenu(){this.mobileMenuOpen=!1},setLegendMode(e){["prayer","detail"].includes(e)&&(this.legendMode=e)},setPrayerFilter(e){[null,"noPrayer","hasPrayer","fullPrayer"].includes(e)&&(this.prayerFilter=e)},setEngagementFilter(e){[null,"notEngaged","hasEngagement"].includes(e)&&(this.engagementFilter=e)},setAdoptionFilter(e){[null,"notAdopted","hasAdoption"].includes(e)&&(this.adoptionFilter=e)},setReligionFilter(e){[null,"C","M","H","B","E","J","S","N","O","U"].includes(e)&&(this.religionFilter=e)},selectPeopleGroup(e){this.selectedPeopleGroup=e,e?(this._legendStateBeforeDetail=this.legendState,this.legendState="open",this._customLegendHeight=null,this.setLegendMode("detail")):(this.legendState=this._legendStateBeforeDetail||"open",this._customLegendHeight=null,this.setLegendMode("prayer"))},setLegendState(e){["collapsed","open","fullyOpen"].includes(e)&&(this.legendState=e)},toggleSearchMode(){this.searchMode=!this.searchMode},setSearchMode(e){this.searchMode=e},toggleHamburgerMenu(){this.hamburgerMenuOpen=!this.hamburgerMenuOpen},updateBreakpoint(e){let t;e<768?t="mobile":e<1024?t="tablet":e<1920?t="desktop":t="wide",t!==this.breakpoint&&(this.breakpoint=t)},updateWindowSize(e,t){this.windowSize.width=e,this.windowSize.height=t,this.updateBreakpoint(e)},showToast(e){const{message:t,type:o="info",duration:n=this.toastDuration,action:a=null,persistent:r=!1}=e,s={id:this.nextToastId++,message:t,type:o,duration:n,action:a,persistent:r,createdAt:Date.now()};return this.toasts.push(s),!r&&n>0&&setTimeout(()=>{this.removeToast(s.id)},n),s.id},showSuccess(e,t={}){return this.showToast({message:e,type:"success",...t})},showError(e,t={}){return this.showToast({message:e,type:"error",duration:7e3,...t})},showWarning(e,t={}){return this.showToast({message:e,type:"warning",...t})},showInfo(e,t={}){return this.showToast({message:e,type:"info",...t})},removeToast(e){const t=this.toasts.findIndex(o=>o.id===e);t!==-1&&this.toasts.splice(t,1)},clearAllToasts(){this.toasts=[]},openModal(e,t={}){this.openModals.includes(e)||(this.openModals.push(e),this.modalData.set(e,t),this.focusTrapActive=!0)},closeModal(e=null){if(e){const t=this.openModals.indexOf(e);t!==-1&&(this.openModals.splice(t,1),this.modalData.delete(e))}else{const t=this.openModals.pop();t&&this.modalData.delete(t)}this.openModals.length===0&&(this.focusTrapActive=!1)},closeAllModals(){this.openModals=[],this.modalData.clear(),this.focusTrapActive=!1},getModalData(e){return this.modalData.get(e)},showGlobalLoading(e="Loading..."){this.isGlobalLoading=!0,this.globalLoadingMessage=e},hideGlobalLoading(){this.isGlobalLoading=!1},setLoading(e,t=!0){t?this.loadingStates.set(e,!0):this.loadingStates.delete(e)},addToHistory(e){this.interactionHistory.push(e),this.interactionHistory.length>this.maxHistoryLength&&this.interactionHistory.shift()},clearHistory(){this.interactionHistory=[]},announce(e,t="polite"){this.screenReaderAnnouncement=e,setTimeout(()=>{this.screenReaderAnnouncement===e&&(this.screenReaderAnnouncement="")},1e3)},toggleKeyboardShortcuts(){this.keyboardShortcutsEnabled=!this.keyboardShortcutsEnabled},toggleDebugMode(){this.debugMode=!this.debugMode},togglePerformanceOverlay(){this.showPerformanceOverlay=!this.showPerformanceOverlay},toggleLegend(){this.legendState==="fullyOpen"?this.legendState="open":this.legendState==="open"?this.legendState="collapsed":this.legendState="open",this._customLegendHeight=null},openLegend(){this.legendState="open",this._customLegendHeight=null},fullyOpenLegend(){this.legendState="fullyOpen",this._customLegendHeight=null},collapseLegend(){this.legendState="collapsed",this._customLegendHeight=null},setLegendHeight(e){this._customLegendHeight=e},handleLegendItemClick(){this.legendState==="fullyOpen"&&(this.legendState="open")},enableSearchMode(){this.searchMode=!0},disableSearchMode(){this.searchMode=!1},toggleHamburgerMenu(){this.hamburgerMenuOpen=!this.hamburgerMenuOpen},openHamburgerMenu(){this.hamburgerMenuOpen=!0},closeHamburgerMenu(){this.hamburgerMenuOpen=!1},init(){let e=null;try{e=localStorage.getItem("theme")}catch{}e&&this.setTheme(e),new ResizeObserver(o=>{for(const n of o)this.updateWindowSize(n.contentRect.width,n.contentRect.height)}).observe(document.documentElement),window.matchMedia&&(window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",o=>{this.theme==="auto"&&document.documentElement.setAttribute("data-theme",o.matches?"dark":"light")}),window.matchMedia("(prefers-reduced-motion: reduce)").addEventListener("change",o=>{this.reducedMotion=o.matches,document.documentElement.setAttribute("data-reduced-motion",o.matches)}))}}}),E0=vs("map",{state:()=>({maps:{},activeMapId:null,selectedRegion:null,selectedFamily:null,selectedAffinityBlock:null,selectedLanguage:null,selectedDialect:null,activeLegendTab:"family",selectedResource:null,selectedPeopleGroup:null,selectedPinIds:[],globalFilters:{},searchQuery:"",autoFly:{isActive:!1,speed:1,interval:5e3,currentIndex:0,items:[],timerId:null},guidedTour:{isActive:!1,currentStep:0,steps:[]},showClusters:!1,clusterMode:"region",clusterFilterProperty:null,clusterFilterValue:null,flySpeed:"normal",fullscreenMapId:null,preferences:{theme:"light",defaultMapStyle:"streets",enableAnimations:!0,autoSavePreferences:!0}}),getters:{getMapById:e=>t=>e.maps[t],activeMap:e=>e.activeMapId?e.maps[e.activeMapId]:null,hasMap:e=>t=>t in e.maps,allMapIds:e=>Object.keys(e.maps),hasSelection:e=>!!(e.selectedRegion||e.selectedFamily||e.selectedAffinityBlock||e.selectedPeopleGroup),isAutoFlying:e=>e.autoFly.isActive,isGuidedTourActive:e=>e.guidedTour.isActive,isMapFullscreen:e=>t=>e.fullscreenMapId===t},actions:{registerMap(e,t,o={}){let n=1.5;o.zoom!==void 0?n=o.zoom:t&&typeof t.getZoom=="function"&&(n=t.getZoom());let a=[0,0];if(o.center)a=o.center;else if(t&&typeof t.getCenter=="function"){const r=t.getCenter();r&&(a=[r.lng,r.lat])}this.maps[e]={instance:t,config:o,isReady:!1,zoom:n,center:a,registeredAt:Date.now()},this.activeMapId||(this.activeMapId=e)},setMapReady(e){const t=this.maps[e];t&&(t.isReady=!0)},updateMapState(e,t){const o=this.maps[e];o&&Object.assign(o,t)},unregisterMap(e){if(delete this.maps[e],this.activeMapId===e){const t=this.allMapIds;this.activeMapId=t.length>0?t[0]:null}},setActiveMap(e){e in this.maps&&(this.activeMapId=e)},selectRegion(e){this.selectedFamily=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedRegion=e},selectFamily(e){this.selectedRegion=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedLanguage=null,this.selectedDialect=null,this.selectedFamily=e},setActiveLegendTab(e){this.activeLegendTab=e},selectLanguage(e){this.selectedRegion=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedFamily=null,this.selectedDialect=null,this.selectedLanguage=e},selectDialect(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedLanguage=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedDialect=e},selectAffinityBlock(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedPeopleGroup=null,this.selectedAffinityBlock=e},selectPeopleGroup(e){this.selectedPeopleGroup=e},selectResource(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedResource===e?this.selectedResource=null:this.selectedResource=e},clearSelections(){this.selectedRegion=null,this.selectedFamily=null,this.selectedLanguage=null,this.selectedDialect=null,this.selectedAffinityBlock=null,this.selectedResource=null,this.selectedPeopleGroup=null,this.selectedPinIds=[],this.showClusters=!1,this.clusterMode="region"},setSelectedPinIds(e){this.selectedPinIds=e||[]},setFilter(e,t){this.globalFilters[e]=t},removeFilter(e){delete this.globalFilters[e]},clearFilters(){this.globalFilters={},this.searchQuery=""},setSearchQuery(e){this.searchQuery=e},startAutoFly(e,t=1){this.stopAutoFly(),this.autoFly.isActive=!0,this.autoFly.speed=t,this.autoFly.items=e,this.autoFly.currentIndex=0},stopAutoFly(){this.autoFly.timerId&&(clearInterval(this.autoFly.timerId),this.autoFly.timerId=null),this.autoFly.isActive=!1,this.autoFly.currentIndex=0},setAutoFlySpeed(e){this.autoFly.speed=Math.max(.5,Math.min(2,e))},nextAutoFlyItem(){if(!this.autoFly.isActive||this.autoFly.items.length===0)return;this.autoFly.currentIndex=(this.autoFly.currentIndex+1)%this.autoFly.items.length;const e=this.autoFly.items[this.autoFly.currentIndex];e.type==="region"?this.selectRegion(e):e.type==="family"&&this.selectFamily(e)},toggleClusters(e){typeof e=="boolean"?this.showClusters=e:this.showClusters=!this.showClusters},setClusterMode(e){["region","language-family","affinity-block","mst","resource"].includes(e)&&(this.clusterMode=e)},setClusterFilter(e,t){this.clusterFilterProperty=e||null,this.clusterFilterValue=t||null},clearClusterFilter(){this.clusterFilterProperty=null,this.clusterFilterValue=null},setFlySpeed(e){["slow","normal","fast"].includes(e)&&(this.flySpeed=e)},setSelectedFamily(e){this.selectFamily(e)},clearSelectedFamily(){this.selectFamily(null)},setSelectedRegion(e){this.selectRegion(e)},clearSelectedRegion(){this.selectRegion(null)},clearSelectedResource(){this.selectResource(null)},clearSelectedLanguage(){this.selectLanguage(null)},clearSelectedDialect(){this.selectDialect(null)},toggleFullscreen(e){this.fullscreenMapId===e?this.fullscreenMapId=null:this.fullscreenMapId=e},loadPreferences(){try{const e=localStorage.getItem("mapUserPreferences");if(e){const t=JSON.parse(e);this.preferences={...this.preferences,...t}}}catch(e){console.error("[mapStore] Failed to load preferences:",e)}},savePreferences(){try{localStorage.setItem("mapUserPreferences",JSON.stringify(this.preferences))}catch(e){console.error("[mapStore] Failed to save preferences:",e)}},setPreference(e,t){this.preferences[e]=t,this.preferences.autoSavePreferences&&this.savePreferences()}}}),C0=vs("data",{state:()=>({sources:{},loadingStates:{}}),actions:{async load(e,t){if(!this.sources[e]){this.loadingStates[e]={isLoading:!0,error:null};try{const o=await t();this.sources[e]=qo({features:o,timestamp:Date.now()}),this.loadingStates[e]={isLoading:!1,error:null}}catch(o){console.error(`[dataStore] Failed to load source "${e}":`,o),this.loadingStates[e]={isLoading:!1,error:o}}}},clearSource(e){delete this.sources[e],delete this.loadingStates[e]},cacheSourceData(e,t){this.sources[e]=qo({features:t.normalizedData||[],timestamp:t.timestamp||Date.now()})},hasSourceData(e){return!!this.sources[e]},getSourceData(e){return this.sources[e]?{normalizedData:this.sources[e].features}:null}},getters:{getData:e=>t=>{var o;return((o=e.sources[t])==null?void 0:o.features)??null},isLoading:e=>t=>{var o;return((o=e.loadingStates[t])==null?void 0:o.isLoading)??!1},getError:e=>t=>{var o;return((o=e.loadingStates[t])==null?void 0:o.error)??null}}}),da={_meta:{_comment:"Single source of truth for data-source connections across all doxa-maps bundles.",_comment_token:"Mapbox access token is fetched at runtime from window.MAP_TOKEN_URL (same modular pattern as window.MAP_APP_API_URL). Not hardcoded to any host — set mapboxTokenUrl below or override window.MAP_TOKEN_URL on the host page.",mapboxTokenUrl:"window.MAP_TOKEN_URL"},activeSource:"pray-tools",sources:{"pray-tools":{id:"pray-tools",name:"Prayer.Tools API",type:"rest-api",description:"pray.doxa.life live API — people-group prayer, engagement, and adoption data. Base URL read from window.MAP_APP_API_URL or VITE_API_BASE_URL at runtime.",endpoints:{bulk:"/api/people-groups/list",detail:"/api/people-groups/detail/{slug}",statistics:"/api/people-groups/statistics"},queryParams:{lang:"en"},defaultFields:["slug","name","latitude","longitude","wagf_region","wagf_block","wagf_member","rop1","imb_reg_of_people_2","imb_reg_of_people_25","imb_reg_of_people_3","country_code","religion","population","has_photo","image_url","people_praying","people_committed","adopted_by_churches","engagement_status","imb_gsec","primary_language","imb_language_family","imb_language_class","imb_language_speakers"],pollFields:["slug","people_praying"],pollInterval:3e5,fallbackSourceId:null,fieldMappings:{uniqueId:"slug",slug:"slug",name:"name",latitude:"latitude",longitude:"longitude",wagfRegion:"wagf_region",doxaRegion:"wagf_region",wagfBlock:"wagf_block",wagfMember:"wagf_member",affinityBlock:"rop1",countryIso:"country_code",religion:"religion",religionCode:"religion",population:"population",hasPhoto:"has_photo",imageUrl:"image_url",photoUrl:"image_url",peoplePraying:"people_praying",peopleCommitted:"people_committed",engagementStatus:"engagement_status",adoptionStatus:"adopted_by_churches",language:"primary_language",cluster:"imb_reg_of_people_2",peopleGroup:"imb_reg_of_people_25",peopleGroupCountry:"imb_reg_of_people_3",languageFamily:"imb_language_family",languageClass:"imb_language_class",languageSpeakers:"imb_language_speakers"},imageConfig:{useField:"imageUrl",fallbackField:null,fallbackUrlTemplate:null,placeholderUrl:"https://www.peoplegroups.org/images/pgphotosearch/NoImageAvailable_search.jpg",useSvgPlaceholder:!0}},"doxa-csv":{id:"doxa-csv",name:"DOXA People Groups CSV",type:"csv",path:"assets/data/Joshua-project-ids-Doxa-1439.csv",description:"People groups dataset from DOXA / Joshua Project",fieldMappings:{uniqueId:"ROP3",peopleGroupId:"ROP3",countryCode:"ROG",peopleId3:"PeopleID3",name:"Name",displayName:"NmDisp",alternateName:"NmAlt",description:"PeopleDesc",locationDescription:"LocationDe",country:"Ctry",countryIso:"ISOalpha3",region:"Regn",subRegion:"RegnSub",wagfRegion:"WAGF Region",doxaRegion:"WAGF Region",wagfBlock:"WAGF BLOCK",affinityBloc:"Affbloc",affinityBlock:"ROP1",affinityCode:"AffCd",affinityName:"Aff",peopleCluster:"PplClstr",ethneName:"Ethne",latitude:"Latitude",longitude:"Longitude",population:"Pop",populationClass:"PopCls",status:"Status",engagementStatus:"EngStat",evangelicalLevel:"EvngLvl",gsec:"GSEC",gsecBrief:"GSECbrf",gsecLong:"GSEClng",spiScore:"SPI",spiDescription:"SPIdesc",language:"Lang",languageCode:"ROL",languageFamily:"LangFamily",religion:"Rlgn",religionCode:"ROR",religionDescription:"RORdesc",religionBase:"RlgnBs",religionDiv:"RlgnDiv",bible:"Bible",jesusFilm:"Jesus",radio:"Radio",gospel:"Gospel",audio:"Audio",stories:"Stories",resourcesTotal:"ResTot",bibleLevel:"LvlBible",yearPublished:"YrPub",photoCredit:"PicCrdt",photoUrl:"PicURL",hasPhoto:"Photo",isIndigenous:"Indigenous"},imageConfig:{useField:"photoUrl",fallbackField:"peopleId3",fallbackUrlTemplate:"https://joshuaproject.net/assets/media/profiles/photos/p{peopleId3}.jpg",placeholderUrl:"https://www.peoplegroups.org/images/pgphotosearch/NoImageAvailable_search.jpg"}}},systemFields:{uniqueId:{description:"Unique identifier per row (slug for API, ROP3+ROG for CSV)",required:!0},peopleGroupId:{description:"People group ID — same group can appear in multiple countries",required:!0},name:{description:"People group display name",required:!0},latitude:{description:"Latitude coordinate for map pin",required:!0},longitude:{description:"Longitude coordinate for map pin",required:!0},engagementStatus:{description:"Boolean — true if engaged_status = 'engaged'",required:!1},adoptionStatus:{description:"Boolean — true if adopted_by_churches > 0",required:!1},peoplePraying:{description:"Number of people currently praying for this group — from pray-tools API",required:!1},peopleCommitted:{description:"Raw count of committed workers for this group — source of engagementStatus",required:!1},languageFamily:{description:"Language family name",required:!1},religion:{description:"Primary religion",required:!1},population:{description:"Population count",required:!1},doxaRegion:{description:"WAGF/DOXA region name",required:!1},photoUrl:{description:"URL to people group photo",required:!1},description:{description:"People group description text",required:!1}}},L0=".profile-loader[data-v-ba19fc13]{border-radius:var(--map-radius-corners, var(--map-radius, 0px));width:100%;height:100%;min-height:var(--profile-min-h, 100dvh);position:relative}.profile-error[data-v-ba19fc13]{padding:1rem;background:#fff3cd;border:1px solid #ffc107;border-radius:4px;font-family:monospace;font-size:13px}",Ln=(e,t)=>{const o=e.__vccOpts||e;for(const[n,a]of t)o[n]=a;return o},T0={class:"profile-loader"},P0={key:0,class:"profile-error"},M0={key:1,class:"profile-error"},N0=Ln({__name:"ProfileLoader",props:{profileConfig:{type:String,default:""}},setup(e){var x;const o=e,n=Fe("profileConfig",null),a=te(()=>{var S;if(!o.profileConfig)return null;let A;try{A=JSON.parse(o.profileConfig)}catch{return console.error("[ProfileLoader] Invalid profile-config JSON:",o.profileConfig),null}if(A&&A.assetsBase===void 0){const T=(S=n==null?void 0:n.value)==null?void 0:S.assetsBase;typeof T=="string"&&T&&(A.assetsBase=T)}return A}),r=te(()=>{var A;return((A=a.value)==null?void 0:A.profile)||null}),s=hh(),i=te(()=>{var S;const A=(S=a.value)==null?void 0:S.tk;return typeof A=="string"&&A?A:s.value||""});ct(()=>{var A;return(A=a.value)==null?void 0:A.tk},A=>{typeof A=="string"&&A&&Pc(A)},{immediate:!0});const l=te(()=>{var A;return((A=a.value)==null?void 0:A.dataSource)||da.activeSource}),u=te(()=>{var A;return((A=a.value)==null?void 0:A.colorSet)||"default"}),c=te(()=>!1),p=te(()=>{var A;return((A=a.value)==null?void 0:A.pinHint)!==!1}),g=te(()=>{var S,T;const A=(((S=a.value)==null?void 0:S.locale)||((T=a.value)==null?void 0:T.lang)||"").split("-")[0].toLowerCase();return Yu.includes(A)?A:""}),k=Fe("appI18n",null);_g(()=>{g.value&&k&&(k.global.locale.value=g.value)});const w=te(()=>{var A,S;return g.value||((S=(A=k==null?void 0:k.global)==null?void 0:A.locale)==null?void 0:S.value)||"en"}),_=te(()=>{var A;return((A=a.value)==null?void 0:A.instanceId)||"doxa-map-"+Math.random().toString(36).slice(2,9)}),d=Fe("profileModules",null);if(!d)throw new Error('[ProfileLoader] No profileModules provided. Bundle entry must `app.provide("profileModules", import.meta.glob("./*.vue"))`');const h=te(()=>{if(!r.value)return null;const A=`./${r.value}.vue`;return d[A]?Mc(d[A]):(console.error(`[ProfileLoader] Profile not found: "${r.value}". Available:`,Object.keys(d)),null)});Ft("mapboxToken",i),Ft("dataSource",l),Ft("colorSet",u),Ft("profileConfig",a),Ft("instanceId",_),Ft("lang",w);const f=$0(),m=E0(),v=C0();try{const A=typeof localStorage<"u"?localStorage.getItem("theme"):null;A&&((x=f.setTheme)==null||x.call(f,A))}catch{}return Ft("uiStore",f),Ft("mapStore",m),Ft("dataStore",v),(A,S)=>(z(),ee("div",T0,[a.value?h.value?(z(),pt($l(h.value),{key:2})):(z(),ee("div",M0,[R("p",null,[S[1]||(S[1]=mt("⚠️ Profile ",-1)),R("strong",null,'"'+pe(r.value)+'"',1),S[2]||(S[2]=mt(" not found.",-1))])])):(z(),ee("div",P0,[...S[0]||(S[0]=[R("p",null,[mt("⚠️ "),R("strong",null,"doxa-map"),mt(": missing or invalid "),R("code",null,"profile-config"),mt(" prop.")],-1),R("p",null,[mt("Example: "),R("code",null,`profile-config='{"profile":"example-map","tk":"pk.eyJ..."}'`)],-1)])])),h.value&&c.value?(z(),pt($l(_e(null)),{key:3})):ye("",!0),h.value&&p.value?(z(),pt(x0,{key:4})):ye("",!0)]))}},[["styles",[L0]],["__scopeId","data-v-ba19fc13"]]),R0=Object.assign({"./poster-wall.vue":()=>to(()=>Promise.resolve().then(()=>h_),void 0),"./upg-100-list.vue":()=>to(()=>Promise.resolve().then(()=>qw),void 0),"./upg-100-mfe.vue":()=>to(()=>Promise.resolve().then(()=>Sx),void 0)});if(typeof window<"u"&&((bp=window.mapboxgl)!=null&&bp.setRTLTextPlugin))try{window.mapboxgl.setRTLTextPlugin("https://api.mapbox.com/mapbox-gl-js/plugins/mapbox-gl-rtl-text/v0.3.0/mapbox-gl-rtl-text.js",null,!0)}catch{}function I0(){return qf(N0,{configureApp(e){e.use(lh()),e.use(v0()),e.provide("profileModules",R0)}})}const O0=I0();typeof customElements<"u"&&(customElements.get("my-upg-100-list-map")||customElements.define("my-upg-100-list-map",O0));function F0(e){const t=(e==null?void 0:e.parentElement)||e;if(!t||!t.ownerDocument)return{x:0,y:0};const o=t.ownerDocument.createElement("div");o.style.cssText="position:fixed;top:0;left:0;width:0;height:0;pointer-events:none;opacity:0",t.appendChild(o);const n=o.getBoundingClientRect();return o.remove(),{x:n.left,y:n.top}}function qu(e){const t=de(null),o=fn({position:"fixed",inset:"0"}),n=()=>{var c,p;const r=t.value;if(!r)return;const s=F0(r),i=r.ownerDocument||(typeof document<"u"?document:null),l=((c=i==null?void 0:i.documentElement)==null?void 0:c.clientWidth)||0,u=((p=i==null?void 0:i.documentElement)==null?void 0:p.clientHeight)||0;o.value={position:"fixed",top:`${-s.y}px`,left:`${-s.x}px`,right:"auto",bottom:"auto",width:`${l}px`,height:`${u}px`,boxSizing:"border-box"}};ct(e,r=>{r&&requestAnimationFrame(()=>{n(),requestAnimationFrame(n)})},{flush:"post"});const a=()=>{e.value&&n()};return typeof window<"u"&&window.addEventListener("resize",a),uo(()=>{typeof window<"u"&&window.removeEventListener("resize",a)}),{scrimRef:t,scrimStyle:o}}const Ju=[{id:"west-africa",label:"West Africa",count:118,selector:{type:"wagf_block",value:"west_africa"},bbox:[-21.3926,4.2189,27.2705,17.4735]},{id:"sudan",label:"Sudan",count:105,selector:{type:"country_code",value:"SDN"},bbox:[20.1672,9.0707,39.723,20.499]},{id:"brazil",label:"Brazil",count:103,selector:{type:"country_code",value:"BRA"},bbox:[-77.9152,-25.4802,-32.2913,7.3352]},{id:"east-africa",label:"East Africa",count:96,selector:{type:"wagf_block",value:"east_africa"},bbox:[22.3455,-14.3059,47.7947,20.0984]},{id:"laos",label:"Laos",count:95,selector:{type:"country_code",value:"LAO"},bbox:[99.8741,13.6759,108.2843,23.2186]},{id:"middle-east-core",label:"Middle East Core",count:71,selector:{type:"country_codes",values:["IRN","YEM","IRQ","OMN","SYR","LBN","PSE","QAT","SAU","JOR","BHR","ARE","KWT"]},bbox:[31.1468,9.3265,63.7915,42.0085]},{id:"andean-caribbean",label:"Andean + Caribbean",count:63,selector:{type:"country_codes",values:["COL","PER","VEN","ECU","BOL","PRY","PAN","CUB","SUR","ATG","ABW","BHS","BRB","CYM","CUW","GRD","JAM","LCA","SXM","TCA","VCT","GUY"]},bbox:[-85.7034,-31.2233,-51.7537,31.0655]},{id:"central-africa",label:"Central Africa",count:61,selector:{type:"wagf_block",value:"central_africa"},bbox:[.6063,-11.2806,32.2325,15.7303]},{id:"europe",label:"Europe",count:55,selector:{type:"wagf_region",value:"europe"},bbox:[-42.2659,-27.2213,168.5645,85]},{id:"oceania-indonesia",label:"Oceania + Indonesia",count:53,selector:{type:"union",selectors:[{type:"wagf_region",value:"oceania"},{type:"country_code",value:"IDN"}]},bbox:[83.9392,-43.091,-136.017,21.4266]},{id:"mainland-se-asia-philippines",label:"Mainland SE Asia + Philippines",count:50,selector:{type:"country_codes",values:["VNM","MYS","THA","MMR","BRN","KHM","PHL"]},bbox:[88.6434,.084,129.7854,26.789]},{id:"maghreb-egypt",label:"Maghreb + Egypt",count:47,selector:{type:"country_codes",values:["DZA","LBY","MAR","MRT","ESH","EGY","TUN"]},bbox:[-21.8716,14.0878,37.0339,39.1426]},{id:"southern-africa-islands",label:"Southern Africa + Islands of East Africa",count:39,selector:{type:"union",selectors:[{type:"wagf_block",value:"southern_africa"},{type:"wagf_block",value:"islands_of_east_africa"}]},bbox:[.638,-38.0929,63.5885,4.4534]}],Xu=[{id:"asia-india-rajasthan",label:"Northwest India",count:116,selector:{type:"pg_slugs",values:["arain-dogri","arain-punjabi","badi-marwari","bania-dogri","bania-kashmiri","baret","bargi","bhand-kashmiri","bhojki","bhopa","bhutta","bomba","brukpa","budhan","campa","cejara","chadwa","cheintz","chheepi","chobdar","chopan","chungar","cudigar","dadupanthi","damami","daoli","daule","dhaki","dhobi-dogri","dhola","dhyar","dokhpa","domal","dosali","gagra","galwan","ganz","gardi","ghihara","gorkun","gosain-kangri","gosain-rajasthani","gurru","hadi","hajjam-haryanvi","hajjam-kashmiri","hesi","hiranbaj","kawoj","khadim","kharol","khatik-chambeali","khatik-punjabi","kraal","kriyagar","kucband","lakhera-haryanvi","laskari","lohar-dogri","malaneese","mangnyar-muslims","manhas","manjygur-muslims","masku","moghol-dogri","moghol-marwari","mogia","mon-india","murhid","nagbansi-dogri","nagda","nai-mewari","najjar","namdagur","naqqas","nar","nicar","nyaria","pajabgar","pakhimara","pangwal-buddhists","pangwala","pinjara-punjabi","pohul","purig-pa","racband","rajkumhar","rajpurohit","ratal","rath","rehar","runwalas","sain","sanchia","sanhai","sansoi","santia","saraogi","sayyid-pahari","seok","shaksaz","shikari","shina-india","singiwala","sofi","sorgars","sudhan","sunga","swangla","tak","thavi","usta","van-baoriya","ved","vijabargiya","waza"]},bbox:[69.9484,22.3586,79.972,35.9424],provinceLabel:"Rājasthān + Haryāna + Himāchal Pradesh + Jammu and Kashmīr + Punjab + Chandīgarh + Ladākh"},{id:"asia-india-andhra-pradesh",label:"South-Central India",count:107,selector:{type:"pg_slugs",values:["accukattavandlu","aguru","aiyarakulu","andhra-vaisnawa","ansari-momin-telugu","arakala","are-bondili","are-kapu","are-katika","atollu","attagara","bandollu","bania-agarwal-telegu","bayita-kammara","berad","bhatrajulu","bhondari","bindla","bolla","budakukkala","cakketakare","camadollu","cippollu","cundollu","dammali","dasari","gandalla","gandla","gangireddula","ganta-sayebulu","garadi","gavara","godagali","godari","gosangi","guddi-eluguwallu","gurika","hajjam-telugu","hatgar","jains-telugu","jakkula","jandra","jethi","kachi","kaikali","karnam","karnibhakthulu","katipamula","khatik-telugu","kommu-dasari","konda-kammara","kuliya","kurakula","lakkamari-kapu","madiga-dasu","majjula","mala-masti","malis","mandula","manna-dhora","matangi","medari","mitha-ayyalavar","moghal-telugu","mondivogula","muchi-chamar","muli","musti-chenchu","nagavamsam","nakhasa","neyyala","ontaris","padigarajulu","pagativeshagallu","paky","pambala","pamidi","pamula","pancaratra-srivaisnavas-brahmans","pariki-muggula","patkars","rajannalu","reddi-dora","reddika","runjalavallu","sadaru","sadhu-chetty","sakunapaksollu","samayavallu","saradagallu","senapathi","silavantulu","sindhollu","swakulasali-koshti","tamboli-telugu","thogataveera-kshatriya","tirugatigantla","tolakari","udupula","uppara","vaikhanasa-brahmans","verra-musti","vipravinodulu","yata","yatagiri","yatla","yite"]},bbox:[76.462,12.5091,84.8294,19.785],provinceLabel:"Andhra Pradesh + Telangāna"},{id:"asia-india-odisha",label:"East India",count:88,selector:{type:"pg_slugs",values:["badhai-chhattisgarhi","baha-i","bairagi-chhattisgarhi","bairagi-odia","bangti","banka","bargah","bari-odia","bauti","bavuri","beldar-chhattisgarhi","bhangi-chhattisgarhi","bharewa","bharia-bhumia-chhattisgarhi","bhattra-bhatri","bhoi-odia","bhunjia","bondo","brahman-jyoti","candhai-maru","chaikwa","chatarkheya","cherua","citrakar","daitapati","damla","darji-odia","dhakad-halbi","dhera","didayi","dom-chhattisgarhi","eneti-dora","ghadwa","ghantarghada","ghogia","ghusuria","godra","gosain-chhattisgarhi","guna","irika","janughanta","jogi-halbi","jogi-odia","kachchi-alia","kalal-sadri","kamila","kapasiya","kasar-odia","khadura","khairwar-chhattisgarhi","khandwal","khati-odia","khatik-chhattisgarhi","kobari","kol-chhattisgarhi","koraga","kuda","kuli","kurunga","kusta","liari","maghia","mahuria","malia","markande-kanjia","mundapotta","munnewar","nai-odia","naksia","noliya","oriya","panara","pando","panka-odia","parenga","radhi","rana","sabakhia","samasi","sanei","sayyid-chhattisgarhi","sayyid-odia","sinduria","son-koli","suda","thanapati","tharua","tula-vina"]},bbox:[80.3325,17.5357,87.6538,23.9578],provinceLabel:"Odisha + Chhattīsgarh"},{id:"asia-india-gujarat",label:"West India",count:90,selector:{type:"pg_slugs",values:["agaria","agri","anjana-patel-gujarati","bafan","bairagi-gujarati","baloch","bamcha","banjania","barot","barthari","bhodala","borpi","caki","champta","cunara","dafer","dangasiya","dasnami-bawa","depala","dudhwala","gadhai","galiara","garmatan","garvi","gavli","ghantiya","golarana","gosain-gujarati","hajjam-gujarati","halaypotra","hingora","hingorza","jat-muslim","juneja","kahar-gujarati","kamalia","kambodia-bhagat","kapadi","kasar-gujarati","kasbati","kathi","ker","khalpa","khaskeli","khatik-gujarati","langa","machhiyara","majothi","makrani","mandali-muslims","mer","mir","miyana","moghol-gujarati","mujavar","muslim-khatri","muslim-lakhera","muslim-patel","mutwa","narsinghpura","nayak-muslims","node","padhar","panar","paradhi","patanwadia","patni-jamat","patni-vankars","pomla","rathodia","raysipotra","royma","sagar","sandhai-muslims","saranias","sayyid-gujarati","shravan","siddi","sompura-salat","tai","targala","theba","tirgar","turi-barot","vadi","vahivanca-barot","vayati","vyapari","wagheri","wandharo"]},bbox:[68.1752,20.1033,74.3448,24.7906],provinceLabel:"Gujarāt"},{id:"asia-india-karnataka",label:"Southwest India",count:86,selector:{type:"pg_slugs",values:["adiyan","agasa","ansari-momin-kannada","arasu","ayri","bagga","baira","balasantoshi","bandi","bania-kannada","bania-konkani","batada","bayil-kammara","bayil-pattar","bellara","bestha","chaptegar","charodi","chenna-dasar","dombi-dasa","durga-murga","gabit","galada-kokani","ganti-chores","gatti","gauli","ghadi","godda","gomantak-maratha","gond-kannada","gudikara","guraw","hajjam-kannada","halleer","harkantra","hasalaru","helawa","holeya-dasari","jatigar","jaweri","jogi-telugu","jogi-tulu","khakar","kolari","komara-panta","koosa","koraga-korra","kottari","koyava","kudiya","kudubi","kummara-kumbara","kurahina-setti","ladar","maila","malaikudi","maleru","manser","meda","mhalo","mith-gauda","mogaveera","mundala","nadors","nai-kannada","nairy","natua","nawaiyat","padarthis","padiyar","pambada","pattegar","pendar","pinjara-kannada","rachavar","raddi","rajapuri","raneyar","raval","raya-rawat","sapalyas","sayyid-kannada","soligaru","sudir","thammadi","vilyagaras"]},bbox:[73.2695,11.4418,78.7305,18.4466],provinceLabel:"Karnātaka + Goa"},{id:"asia-india-kerala",label:"Malabar Coast",count:78,selector:{type:"pg_slugs",values:["allar","ambalavasi","anthur-nair","arayavati","ayyanavar","bakuda","bania-malayalam","bowis-mogeyar","cakkala","cakkyar-nambiyar","chakkiyar","chamar-muchi-malayalam","chengazhi-nambiar","cingatanmar","dheevara","erawallan","ezhavathi","ilayatu","indo-french","indo-vietnamese","kakkalan","kalanadies","kalladi","kallattu-kurup","karimpalan","kavara","kavuthiyan","kidaran","kocu-wellan","kollan","kootan","kumar-kshatriya","kummara-kusuvan","kunduvadian","kurukkal","laccadive","malai-pandaram","malayalar","maran-nairs","marasari","mavilan","moger-malayalam","moothan","mukkari","musari","muttatu","nalkadaya","nambutiris","narsanna","nasuvan","nayadi","otans","padannan","palakad-tandans","pandithar","pathinaickans","pathiyan","pisaroti","poduval","pulisari","puspakan-unni","reddi","samanthan","sonavar","thachanad-moopan","tiyattunni","urindavan","vadugan","valinjiyar","vetan","vettalaikarans","vettiyan","vilkurup","visavan","wainadan-cetti","wainadan-kader","wainadan-pulayan","wayanad-pathiyan"]},bbox:[72.8992,7.9875,80.5765,13.0102],provinceLabel:"Kerala + Puducherry + Lakshadweep"},{id:"asia-india-tamil-nadu",label:"Southeast India + Andaman Islands",count:73,selector:{type:"pg_slugs",values:["alavan","andamanese","ansari-momin-tamil","anuppan","aranadan","baig","bhatu-andamani","bondili","brahmin-andamani","cekkala","chamar-muchi-tamil","chayakkaran","coorgi-andamanese","dasa-palanjika","dayare","dhobi-tamil","gangawar","great-andamanese","gudugudupandi","gurukkal","jains-tamil","jarawas","jati-pillai","kambalattan","kambar","kannada-naicker","kannada-saineegar","karaiyar","karlar","karna-sale","katesar","kattiakaran","kayalar","kepmari","koliyan","kongu-vaisnawa","kongu-vellala-gounder","kota","krishnavaka","kudumi","kuluvan","kummara-kummari","kunnuva-vellalar","malai-vellala","maleyan","maniyattikkaran","mudugar","nakkala","namdeo-maratha","nanjil-mudali","onge","pannadi","panniandi","parkavakulam","parvatarajakulam","pattanavan","perumkollar","salivahanam","savalakkarar","sayyid-tamil","semman","senaithalaivar","sentinelese","siviar","tambiran","telengi","tholuva-naicker","thoraiyar","tondman","uppillian","urikkar-naicker","vellaiyan-kuppam-padaiyaci","vettaikkaran"]},bbox:[74.7588,7.4577,94.7701,13.968],provinceLabel:"Tamil Nādu + Andaman and Nicobar Islands"},{id:"asia-india-madhya-pradesh",label:"Central India",count:88,selector:{type:"pg_slugs",values:["anjana","attar-saibulu","baharupi","banchada","baraua","barda","bari-hindi","bari-marathi","basudeva","berar","bhanumati","bharwad","bhoi-marathi","bhurtia","chari","chitari","citrakathi","dhawad","dhed","dom-marathi","gachha","garodi","garpagari","gondhali","gopal","hajjam-hindi","hardas","hatkar","jadam","jains-hindi","jhadi","kachchi-kushwaha","kachera-bagheli","kaghzi","kandera","kapewar","kasar-hindi","kasikapadi","kathar","kharvi","khatik-marathi","kokaniz","kolhati","kudimahan","ladia","ladsi","lahangir","lajjhar","lodha-marathi","lonar","mana","manbhav","mankar","mitna","mondiwar","muskhan","muslim-gond","muslim-kachera","nahal","naikpod","naita","namdeo","nandiwala","naoda","nat-bagheli","neeli","nema","nilkanth","pangul","phularis","pinjara-marathi","pochammalollu","prabhu-patane","rujjhar","sagharias","sahi","sais","sanghar","sarodi","sikligar","sisgars","soria","sutar-mistry","takari","velip","waidu","yelmar","zamral"]},bbox:[69.6832,14.969,83.1757,26.995],provinceLabel:"Madhya Pradesh + Mahārāshtra + Dādra and Nagar Haveli and Damān and Diu"},{id:"asia-india-uttarakhand",label:"North India + Nepal",count:92,selector:{type:"pg_slugs",values:["ahmadiya","anwal","arain-kannauji","badhik","badi","balahar","banpar","bargala","bargujar","bhuiyar","bisati","camma","charwaha","chaudangsi","dhamin","dhekaro","gadhia","gadihar","gandharv","habura","hijra","hindu-santarash","jadupetia","jains-maithili","jarkhandi-hajjam","jarkhandi-julaha","jharkhandi-nai","jimdar","jogi-angika","kadar","kankali","khangar-bundeli","khatbune","kuthliya-bora","modaks","mujavir","mukeri","nagbansi","nalband","pankhiya","patari","puran","putliwale","rai-bhat-muslims","rajdhop","raji-india","rastogi","rave","sahisia","sayyid-garhwali","sheikhzade","shershabadia","sukiyar","tagewale","thakurai","tikulhara","tilli","turuk-pasi","baniya","barae","bhand","bhediyar","bodo","byangsi","chidmar","churaute","dhobi","dhunia","dura","gangai","gyasumdoba","halkhor","haluwai","jaine","kaike","kamar","kanu","kayastha","lodha","makalu-sherpa","mali","mallah","marwadi","nurang","pahari-nagarkotis","puma","rajbhar","raji-nepal","shaikh-bhojpuri","sudhi","surel","tseku"]},extraCountryCodes:["NPL"],bbox:[76.0644,22.1727,88.8858,31.2428],adm0:["NPL"],provinces:["Uttarākhand","Uttar Pradesh","Bihār","Jhārkhand","Delhi"],provinceLabel:"North India + Nepal"},{id:"asia-india-west-bengal",label:"Northeast India + Bangladesh + Bhutan",count:87,selector:{type:"pg_slugs",values:["aiton","angarok","ansari-momin-bengali","bagti","baida","baisya","bajandar","banai","banik-bania","barua","bhakta","bhalla","bhujel","bilaspuri","byadh","chamar-assamese","chunari","dalu-india","dhal-kstriya","dhimal","ghazi","hajjam-assamese","hajjam-bengali","haluadas","jains-bengali","kakmara","kanda","kapuria","kasar-bengali","khairwar-bengali","khalifa","khamba","khamyang","khatik-bengali","khowa","koiren","kumhar-assamese","kurol","lois","mahisyadas","malakar","man","maria-muslims","matak","mirshikar","momba","mukhi","na","nai-assamese","namasudra-assamese","paharia","pangans","pinjara-dhunia-bengali","sabar","saha","serdukpen","shabdakar","siyalgar","sudra-das","sunuwar","sutradhar","taiphake","tamboli-bengali","teli-assamese","thanga","tripuri-kumhar","tripuri-namasudra","turun","yakha","yatibi","zakhrin","brokkat","chali","dalu-bangladesh","deaf-bhutanese","doya","dzalakha","gongduk","koda","kurtop","lakha","lunape","matpa","nupbi","nyenpa","ole","ushoi"]},extraCountryCodes:["BGD","BTN"],bbox:[84.6438,21.028,98.3478,29.4168],provinceLabel:"West Bengal + Sikkim + Meghālaya + Assam + Arunāchal Pradesh + Manipur + Tripura + Bangladesh + Bhutan",adm0:["BGD","BTN"]},{id:"asia-china-yunnan-province",label:"Southern China",count:109,selector:{type:"pg_slugs",values:["a-ou","ai-cham","akeu","aling","alu","angku","ani","aoka","apu","baonuo","beidongnuo","bit-china","black-thai","bugan","buyang","cai","changpao","chesu","dianbao","diao","doupo","eastern-samadu","eastern-xiangxi-miao","ga-mong","gao","gelao","guaigun","ha-li","hagei","hongjin-tai","hu","huishui-miao","jiamao-li","jiasou","jino","khmu","kong-ge","kucong","laba","labapo","laowu","lati-china","lawu","liang-e","linghua","liping-baheng","liude","liujia","longjia","lu","lupanshui-miao","mang-china","manmet","mashan-miao","meifu-li","mengwu","mishaba-laluo","mo","mosuo","mozhihei","muda","muzi","naheng","nanjingren","northern-awu","northern-dong","northern-muji","numao","palyu","panxian-nasu","pingdi-yao","popei","pubiao","puman","pusha","qanu","qiubei-zhuang","qixingmin","rao","rumai-de-ang","sanda","sanqiao","shenzhou","sichuan-mongols","ta-er","tagu","tai-lu","tai-pong","tulao","tusu","wenma-zhuang","western-gaisu","western-samadu","wopu","wunai","xi","xialusi","xiaoliangshan-nosu","xijima","xinping-lalu","xuzhang-lalu","ya","yanghuang","yerong","yizi","youmai","younuo-bunu","yunnan-mongol","yunnan-shui"]},bbox:[96.3204,17.3374,113.2066,29.9169],provinceLabel:"Yunnan Province + Guizhou Province + Guangxi Zhuang Autonomous Region + Hunan Province + Hainan Province",provinces:["Yunnan Province","Guizhou Province","Guangxi Zhuang Autonomous Region","Hunan Province","Hainan Province"]},{id:"asia-china-tibet-autonomous-region",label:"Mainland China + Mongolia",count:53,selector:{type:"pg_slugs",values:["adi","ainu-china","alxa-mongols","bogar-lhoba","bogol","boyu-tibetans","bunan","buryat","butuo-nosu","cona-monba","darang-deng","enger-yugur","ersu","geman-deng","heishui","henan-mongols","keji","kyrgyz","luzu","manyak","medog-monba","miguba","ming","minyak","naju","namuyi","nghari-tibetans","olot","ongkor","puroik","saman","saragh-yugur","sarikoli-tajiks","shixing","suodi-nosu","tongren-bonan","uzbeks","wakhi-china","western-xibe","wutun","yidu-lhoba","yinuo-nosu","za"]},extraCountryCodes:["MNG","PRK","JPN"],bbox:[69.2237,24.2385,130.4094,51.3865],provinceLabel:"Tibet Autonomous Region + Sichuan Province + Xinjiang Uyghur Autonomous Region + Gansu Province + Inner Mongolia Autonomous Region + Qinghai Province + Heilongjiang Province + Mongolia + Japan + North Korea",provinces:["Tibet Autonomous Region","Sichuan Province","Xinjiang Uyghur Autonomous Region","Gansu Province","Inner Mongolia Autonomous Region","Qinghai Province","Heilongjiang Province"],adm0:["MNG"]}],Zu=[{id:"uncovered-scatter",label:"Scattered / Diaspora",count:8,contiguous:!1,contiguityExempt:!0,flag:"allowed non-contiguous bucket (S5-D3) — diaspora/island/micro-territory strays + 2 unstamped CHN border PGs",selector:{type:"country_codes",values:["AND","CCK","GUF","USA"]},extra_slugs:["jing","pana-china"],bbox:[-150.7534,-18.855,123.4288,50.0639]},{id:"uncovered-nas-a",label:"Central Asia + Pakistan",count:55,contiguous:!0,contiguityExempt:!1,flag:"NAS-A real frontier zone (09b-asia-contiguity-v2 N-D6): MERGE of the former uncovered-sa-west (AFG+PAK) + uncovered-central-asia (AZE/KGZ/TJK/UZB) into ONE zone owning BOTH the legend count AND the ADM0 render coverage. AFG-PAK-UZB-TJK-KGZ form one contiguous land-border core; AZE is the flagged Caspian-separated near-member (S5-D2). KAZ stays deaf-only (its only PG is deaf-kazakhstanis). Target coverage 55 (design directive; uncovered coverage counts are carried through, not recomputable from admin-membership — NOTE-COUNT). ID kept in the uncovered-* family (NOT asia-frontier-nas-a) because zone-geometry.isAsiaZone() routes any asia-*-prefixed id down the ADM1 listId path — an asia-* id would resolve 0 ADM0 polys and render NOTHING. uncovered-* keeps it on the country_codes/ADM0 render path; re-prefixing is the render-layer's NEXT slice, not this one.",selector:{type:"country_codes",values:["AFG","AZE","KGZ","PAK","TJK","UZB"]},bbox:[42.6538,23.2204,79.3424,44.9954],provinceLabel:"Pakistan + Afghanistan + Uzbekistan + Tajikistan + Kyrgyzstan + Kazakhstan + Azerbaijan"}],D0=cn&&cn.tagName.toUpperCase()==="SCRIPT"&&cn.src||new URL("my-upg-100-list.js",document.baseURI).href,Ko=e=>String(e||"").trim().replace(/\/+$/,"");function Qu(){try{const t=String(D0||"").split(/[?#]/)[0].match(/^(.*)\/([^/]+)\/([^/]+)\.js$/);return!t||t[2]!==t[3]?null:t[1]||null}catch{return null}}function B0(e){const t=e==null?void 0:e.embedBaseUrl;if(typeof t=="string"&&t.trim())return Ko(t);if(typeof window<"u"){const o=window.MAP_EMBED_BASE_URL;if(typeof o=="string"&&o.trim())return Ko(o)}return Ko(Qu()||"")}function hr(e){const t=e==null?void 0:e.assetsBase;if(typeof t=="string"&&t.trim()){const n=Ko(t);if(/^https?:\/\//i.test(n)||n.startsWith("/"))return n}const o=Ko((e==null?void 0:e.treeBase)||"")||Ko(Qu()||"");if(o)try{const n=typeof document<"u"?document.baseURI:void 0;return Ko(new URL(o+"/../assets",n).href)}catch{return Ko(o.replace(/\/[^/]*$/,"")+"/assets")}return"./assets"}function G0({shareUrl:e,embedPath:t,profileConfig:o}={}){const n=o||null,a=typeof window<"u",r=e||(n==null?void 0:n.shareUrl);if(typeof r=="string"&&r.trim())return r.trim();const s=String(t||(n==null?void 0:n.shareEmbedPath)||"").trim();if(s){if(/^https?:\/\//i.test(s))return s;if(s.startsWith("/"))return a?window.location.origin+s:s;const i=B0(n),l=s.replace(/^\.\//,"");if(i)return i+"/"+l;if(typeof document<"u")try{return new URL(l,document.baseURI).href}catch{}return l}return a?window.location.origin+window.location.pathname:""}const j0=["country_code","wagf_region","wagf_block","primary_language","religion"];function U0(e){return e==null?{value:null,label:null}:typeof e=="object"?{value:e.value??null,label:e.label??null}:{value:e,label:null}}function K0(e){if(e==null||typeof e!="object")return e;const t={...e};for(const o of j0)if(o in t){const{value:n,label:a}=U0(t[o]);t[o]=n,a!=null&&(t[`${o}_label`]=a)}return t}function mr(e){return Array.isArray(e)?e.map(K0):[]}function br(e){return Array.isArray(e)?e:e&&typeof e=="object"?e.posts||e.data||e.records||e.results||e.items||[]:[]}function Tn(e){return e==null||typeof e!="object"?null:e.slug??null}function ed(e){return typeof e=="string"&&e.toLowerCase().includes("deaf")}function z0(e){const t=e==null?null:e.rop1;return t==null?null:typeof t=="object"?t.value??null:t}function Pn(e,t){const o=new Set;if(e==null||typeof e!="object"||typeof e.type!="string")throw new Error(`selector-evaluator: malformed selector (expected an object with a string \`type\`), got: ${JSON.stringify(e)}`);const n=Array.isArray(t)?t:[];switch(e.type){case"country_code":{const a=e.value;for(const r of n)if(r&&r.country_code===a){const s=Tn(r);s!=null&&o.add(s)}return o}case"country_codes":{const a=new Set(Array.isArray(e.values)?e.values:[]);for(const r of n)if(r&&a.has(r.country_code)){const s=Tn(r);s!=null&&o.add(s)}return o}case"wagf_block":{const a=e.value;for(const r of n)if(r&&r.wagf_block===a){const s=Tn(r);s!=null&&o.add(s)}return o}case"wagf_region":{const a=e.value;for(const r of n)if(r&&r.wagf_region===a){const s=Tn(r);s!=null&&o.add(s)}return o}case"union":{const a=Array.isArray(e.selectors)?e.selectors:[];for(const r of a){const s=Pn(r,n);for(const i of s)o.add(i)}return o}case"deaf_predicate":{const a=new Set(Array.isArray(e.regions)?e.regions:[]);for(const r of n){if(!r)continue;if((ed(r.slug)||ed(r.name))&&a.has(r.wagf_region)){const i=Tn(r);i!=null&&o.add(i)}}return o}case"affinity_bloc":{const a=e.rop1;for(const r of n)if(r&&z0(r)===a){const s=Tn(r);s!=null&&o.add(s)}return o}default:throw new Error(`selector-evaluator: unknown selector type "${e.type}" (supported: country_code, country_codes, wagf_block, wagf_region, union, deaf_predicate, affinity_bloc)`)}}const td=Object.freeze(Object.defineProperty({__proto__:null,default:Pn,evaluate:Pn},Symbol.toStringTag,{value:"Module"})),H0={class:"sec-head"},V0={class:"sec-name"},W0={class:"sec-count"},Y0={class:"grid"},q0=["data-list-id"],J0=["aria-label","onClick"],X0={class:"hcount"},Z0={class:"main"},Q0=["src","alt","title","onClick","onKeydown","onError"],e_={key:1,class:"ph"},t_={class:"ph-label"},o_={key:0,class:"ph-count"},n_={class:"tape pfs"},a_=["onClick","aria-label"],r_=["onClick","aria-label"],s_=["onClick","aria-label"],i_=["value"],l_={class:"modal",role:"dialog","aria-live":"polite"},c_={class:"modal-kind"},u_={class:"modal-title"},d_={class:"modal-err"},p_={class:"modal-soon"},g_={class:"bar"},f_={class:"modal-phase"},h_=Object.freeze(Object.defineProperty({__proto__:null,default:{__name:"poster-wall",setup(e){const t={lists:Ju,asia_lists:Xu,uncovered_lists:Zu},o=Fe("profileConfig",de(null)),n=te(()=>{var $;return(($=o.value)==null?void 0:$.instanceId)||"upg-100-wall"}),a=te(()=>{var $;return(($=o.value)==null?void 0:$.isDark)===!0}),r=te(()=>hr(o.value)),s=$=>`${r.value}/posters/${$}.webp`,i=typeof window<"u"&&window.MAP_APP_API_URL||void 0||"",l={"west-africa":"Africa",sudan:"Africa","east-africa":"Africa","central-africa":"Africa","southern-africa-islands":"Africa","maghreb-egypt":"Middle East","middle-east-core":"Middle East","uncovered-nas-a":"Central Asia",laos:"Southeast Asia + Oceania","oceania-indonesia":"Southeast Asia + Oceania","mainland-se-asia-philippines":"Southeast Asia + Oceania",brazil:"Americas","andean-caribbean":"Americas","uncovered-scatter":"Americas",europe:"Europe"},u=$=>l[$]?l[$]:$.startsWith("asia-india-")?"India":$.startsWith("asia-china-")?"China + Mongolia":"Other",c=te(()=>[...t.lists||[],...t.asia_lists||[],...t.uncovered_lists||[]].filter($=>$&&$.id)),p=te(()=>{const $=new Map;for(const M of c.value){const C=u(M.id);$.has(C)||$.set(C,[]),$.get(C).push(M)}return[...$.entries()].map(([M,C])=>({name:M,items:C.slice().sort((N,ne)=>(ne.count||0)-(N.count||0)),total:C.reduce((N,ne)=>N+(ne.count||0),0)})).sort((M,C)=>C.total-M.total)}),g=de(null);function k($){const M=g.value===$.id;g.value=M?null:$.id,window.dispatchEvent(new CustomEvent("doxa-upg-100-list:show-on-map",{detail:{instanceId:n.value,listId:M?null:$.id,label:M?null:$.label}}))}const w=$=>`${r.value}/previews/${$}.webp`,_=de({}),d=de(null),h=[{id:"poker",label:"Card 2.5 × 3.5 in"},{id:"pokerLandscape",label:"Card 3.5 × 2.5 in (landscape)"},{id:"postcard",label:"Postcard 4 × 6 in"},{id:"postcardLandscape",label:"Postcard 6 × 4 in (landscape)"},{id:"a6",label:"A6 105 × 148 mm"}],f=de("poker"),{locale:m}=yt();function v(){const $=m&&(m.value??m);return typeof $=="string"&&$||"en"}const{scrimRef:x,scrimStyle:A}=qu(d);function S($,M,{autoprint:C=!1}={}){const N=document.createElement("iframe");N.setAttribute("aria-hidden","true"),N.style.cssText="position:fixed;right:0;bottom:0;width:1px;height:1px;opacity:0;border:0",document.body.appendChild(N);const ne=N.contentDocument;if(!ne)return N.remove(),null;ne.open(),ne.write(M),C&&ne.write(' - + - + - + - + - + - + + window.FORGE.manifest = {"schema":"doxa-maps-manifest@1","generatedFrom":"plugin-designs/*/*.vue","embedBase":".","bundleCount":22,"profileCount":34,"bundles":[{"bundle":"all-people-groups","scriptUrl":"./all-people-groups/all-people-groups.js","output":"doxa-maps/all-people-groups/all-people-groups.js","integrity":"sha384-R42WaDgwpLQcS2xBY+w+VgqpnTlojkRR3jqMq56IOaLn2MmuDoYwtXysc9CMN58c","elements":["all-people-groups"],"profiles":[{"profile":"all-people-groups","file":"all-people-groups.vue","description":"All 12,379 people groups (peoplegroups.org) in four colors — reached,","element":"all-people-groups","type":"single","isMap":true,"iframeUrl":"./all-people-groups/all-people-groups/index.html","scriptUrl":"./all-people-groups/all-people-groups.js","embed":{"iframe":"\u003ciframe src=\"./all-people-groups/all-people-groups/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./all-people-groups/all-people-groups.js\" integrity=\"sha384-R42WaDgwpLQcS2xBY+w+VgqpnTlojkRR3jqMq56IOaLn2MmuDoYwtXysc9CMN58c\" crossorigin=\"anonymous\">\u003c/script>\n\u003call-people-groups profile-config='{\"profile\":\"all-people-groups\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/all-people-groups>"},"bundle":"all-people-groups"}]},{"bundle":"big-picture","scriptUrl":"./big-picture/big-picture.js","output":"doxa-maps/big-picture/big-picture.js","integrity":"sha384-voYmtWeACTFBJOOeqcbf5cuBKSjyskA89cjvm5qcvrx9IUFTAhLuICyRXUM6fL+Y","elements":["bp-big-picture","bp-research-header","people-groups-grid"],"composes":["bp-research-header","people-groups-grid"],"profiles":[{"profile":"big-picture","file":"big-picture.vue","description":"The Cat-4 composite that PAIRS the two real capability elements of the","element":"bp-big-picture","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./big-picture/big-picture/index.html","scriptUrl":"./big-picture/big-picture.js","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./big-picture/big-picture.js\" integrity=\"sha384-voYmtWeACTFBJOOeqcbf5cuBKSjyskA89cjvm5qcvrx9IUFTAhLuICyRXUM6fL+Y\" crossorigin=\"anonymous\">\u003c/script>\n\u003cbp-big-picture profile-config='{\"profile\":\"big-picture\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/bp-big-picture>"},"instances":[{"id":"big-picture","title":"Big Picture — research header ↔ people-groups grid (composite)","apiBaseUrl":"","props":{"profile":"big-picture","provider":"maplibre","instanceId":"bp-big-picture"},"element":"bp-big-picture","iframeUrl":"./big-picture/big-picture/big-picture/index.html","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/big-picture/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"frontier","title":"Big Picture — frontier accent","apiBaseUrl":"","props":{"profile":"big-picture","provider":"maplibre","instanceId":"bp-big-picture-frontier","accent":"#22d3ee","title":"Big Picture — Frontier Focus"},"element":"bp-big-picture","iframeUrl":"./big-picture/big-picture/frontier/index.html","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/frontier/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"big-picture"}]},{"bundle":"cities-internet","scriptUrl":"./cities-internet/cities-internet.js","output":"doxa-maps/cities-internet/cities-internet.js","integrity":"sha384-lF6OGT0FH7sBXnALLiAoji8TADE05n7yqqoortZAifVdH6fNJ4yQeRRwjT8oXq+V","elements":["cities-internet-map"],"profiles":[{"profile":"connectivity-list","file":"connectivity-list.vue","description":"Countries where DX people groups live, grouped by region, showing measured internet penetration","element":"cities-internet-map","type":"single","isMap":false,"iframeUrl":"./cities-internet/connectivity-list/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/connectivity-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-lF6OGT0FH7sBXnALLiAoji8TADE05n7yqqoortZAifVdH6fNJ4yQeRRwjT8oXq+V\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"connectivity-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}},{"profile":"connectivity-map","file":"connectivity-map.vue","description":"Every country shaded by measured internet penetration, with its named carriers and dominant","element":"cities-internet-map","type":"single","isMap":true,"iframeUrl":"./cities-internet/connectivity-map/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/connectivity-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-lF6OGT0FH7sBXnALLiAoji8TADE05n7yqqoortZAifVdH6fNJ4yQeRRwjT8oXq+V\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"connectivity-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}},{"profile":"data-tables","file":"data-tables.vue","description":"Four validated research tables, one tab each, with sortable and filterable columns, CSV and JSON","element":"cities-internet-map","type":"single","isMap":false,"iframeUrl":"./cities-internet/data-tables/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-lF6OGT0FH7sBXnALLiAoji8TADE05n7yqqoortZAifVdH6fNJ4yQeRRwjT8oXq+V\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}}]},{"bundle":"country-posters","scriptUrl":"./country-posters/country-posters.js","output":"doxa-maps/country-posters/country-posters.js","integrity":"sha384-MpUL/82/3klzGisdJDdX7UQ6z/9ZX9r6GZzoKohNHeokCEtq9bPAwqHIPTupp8DG","elements":["country-posters-map"],"composes":["country-posters/country-poster-wall","country-posters/countries-map"],"profiles":[{"profile":"countries-map","file":"countries-map.vue","description":"The researcher's workbench retargeted from people groups to COUNTRIES — region","element":"country-posters-map","type":"single","isMap":true,"iframeUrl":"./country-posters/countries-map/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/countries-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-MpUL/82/3klzGisdJDdX7UQ6z/9ZX9r6GZzoKohNHeokCEtq9bPAwqHIPTupp8DG\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"countries-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}},{"profile":"country-poster-wall","file":"country-poster-wall.vue","description":"One printable card per country, grouped into COLLAPSIBLE regional sections so the","element":"country-posters-map","type":"single","isMap":false,"iframeUrl":"./country-posters/country-poster-wall/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/country-poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-MpUL/82/3klzGisdJDdX7UQ6z/9ZX9r6GZzoKohNHeokCEtq9bPAwqHIPTupp8DG\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"country-poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}},{"profile":"country-posters-mfe","file":"country-posters-mfe.vue","description":"Country Posters as ONE two-tab element — the countries map and the printable","element":"country-posters-mfe","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./country-posters/country-posters-mfe/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/country-posters-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-MpUL/82/3klzGisdJDdX7UQ6z/9ZX9r6GZzoKohNHeokCEtq9bPAwqHIPTupp8DG\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"country-posters-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}}]},{"bundle":"dashboard-plus-grid","scriptUrl":"./dashboard-plus-grid/dashboard-plus-grid.js","output":"doxa-maps/dashboard-plus-grid/dashboard-plus-grid.js","integrity":"sha384-KWYs/unuewlt9PJ4CC/VlyoghFmN4KtHqsweo68lJwUNL1g3FJ8VctASOYWAt91q","elements":["dashboard-plus-grid"],"composes":["research-dashboard","people-groups-grid"],"profiles":[{"profile":"dashboard-plus-grid","file":"dashboard-plus-grid.vue","description":"Both children are IMPORTED DIRECTLY (compiled into this ONE bundle — no runtime bundle","element":"dashboard-plus-grid","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./dashboard-plus-grid/dashboard-plus-grid/index.html","scriptUrl":"./dashboard-plus-grid/dashboard-plus-grid.js","embed":{"iframe":"\u003ciframe src=\"./dashboard-plus-grid/dashboard-plus-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./dashboard-plus-grid/dashboard-plus-grid.js\" integrity=\"sha384-KWYs/unuewlt9PJ4CC/VlyoghFmN4KtHqsweo68lJwUNL1g3FJ8VctASOYWAt91q\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdashboard-plus-grid profile-config='{\"profile\":\"dashboard-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/dashboard-plus-grid>"},"instances":[{"id":"default","title":"default","apiBaseUrl":"","props":{"profile":"dashboard-plus-grid"},"element":"dashboard-plus-grid","iframeUrl":"./dashboard-plus-grid/dashboard-plus-grid/default/index.html","embed":{"iframe":"\u003ciframe src=\"./dashboard-plus-grid/dashboard-plus-grid/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"demo-map","scriptUrl":"./demo-map/demo-map.js","output":"doxa-maps/demo-map/demo-map.js","integrity":"sha384-2ItGdUG5OW9uHN4ldNF6To6hvTy3XGdFnJrJenyyqShBjIi2NgcyXTyhYu2mttHH","elements":["demo-map"],"profiles":[{"profile":"demo-map","file":"demo-map.vue","description":"Simple two-tab demo map. Tab 1 colors pins by religion (shared","element":"demo-map","type":"parameterized","isMap":true,"iframeUrl":"./demo-map/demo-map/index.html","scriptUrl":"./demo-map/demo-map.js","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./demo-map/demo-map.js\" integrity=\"sha384-2ItGdUG5OW9uHN4ldNF6To6hvTy3XGdFnJrJenyyqShBjIi2NgcyXTyhYu2mttHH\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdemo-map profile-config='{\"profile\":\"demo-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/demo-map>"},"instances":[{"id":"maplibre","title":"Demo map — MapLibre (token-free)","apiBaseUrl":"","props":{"profile":"demo-map","provider":"maplibre","instanceId":"demo-maplibre"},"element":"demo-map","iframeUrl":"./demo-map/demo-map/maplibre/index.html","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/maplibre/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"demo-map"}]},{"bundle":"doxa-maps-spa","scriptUrl":"./doxa-maps-spa/doxa-maps-spa.js","output":"doxa-maps/doxa-maps-spa/doxa-maps-spa.js","integrity":"sha384-1f+/rBSGo/1jyUmRmGg34CIU/PcGkB7M3jah1DO0ocb5O0zj81wpUemXcz4WAFz8","elements":["doxa-maps-spa"],"composes":["bp-big-picture","doxa-research-map","doxa-simple-map","cities-internet-map","gospel-resources-map","my-upg-100-list-map"],"profiles":[{"profile":"doxa-maps-spa","file":"doxa-maps-spa.vue","description":"The DX-maps app itself: one element whose vertical-tab rail nests every other","element":"doxa-maps-spa","type":"nested-mfe-spa","isMap":false,"iframeUrl":"./doxa-maps-spa/doxa-maps-spa/index.html","scriptUrl":"./doxa-maps-spa/doxa-maps-spa.js","embed":{"iframe":"\u003ciframe src=\"./doxa-maps-spa/doxa-maps-spa/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-maps-spa/doxa-maps-spa.js\" integrity=\"sha384-1f+/rBSGo/1jyUmRmGg34CIU/PcGkB7M3jah1DO0ocb5O0zj81wpUemXcz4WAFz8\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-maps-spa profile-config='{\"profile\":\"doxa-maps-spa\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-maps-spa>"},"instances":[{"id":"app","title":"DX-Maps SPA — Big Picture + every research map (app-shell)","apiBaseUrl":"","props":{"profile":"doxa-maps-spa","provider":"maplibre","instanceId":"doxa-maps-spa-app","title":"DX-Maps"},"element":"doxa-maps-spa","iframeUrl":"./doxa-maps-spa/doxa-maps-spa/app/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-maps-spa/doxa-maps-spa/app/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-research-map","scriptUrl":"./doxa-research-map/doxa-research-map.js","output":"doxa-maps/doxa-research-map/doxa-research-map.js","integrity":"sha384-ycDpVdTjizEUxzsO+lQpTagpdLenXlLnvFQ/juKcWeazo2Qvo1B1QYpDxykzA9Zp","elements":["doxa-research-map"],"profiles":[{"profile":"research-map","file":"research-map.vue","description":"The researcher's workbench: every piece a missiologist, demographer or","element":"doxa-research-map","type":"monolithic","isMap":true,"iframeUrl":"./doxa-research-map/research-map/index.html","scriptUrl":"./doxa-research-map/doxa-research-map.js","embed":{"iframe":"\u003ciframe src=\"./doxa-research-map/research-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-research-map/doxa-research-map.js\" integrity=\"sha384-ycDpVdTjizEUxzsO+lQpTagpdLenXlLnvFQ/juKcWeazo2Qvo1B1QYpDxykzA9Zp\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-research-map profile-config='{\"profile\":\"research-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-research-map>"},"instances":[{"id":"maplibre","title":"Research map — MapLibre (token-free, no search bar)","apiBaseUrl":"","props":{"profile":"research-map","provider":"maplibre","instanceId":"research-map-maplibre"},"element":"doxa-research-map","iframeUrl":"./doxa-research-map/research-map/maplibre/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-research-map/research-map/maplibre/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-simple-map","scriptUrl":"./doxa-simple-map/doxa-simple-map.js","output":"doxa-maps/doxa-simple-map/doxa-simple-map.js","integrity":"sha384-8drw8bByutNX9KwjTP4nrgMqtlu7xgrqxK6ebWLh8VTWAYC39TQ3d/8qwBxhPJMC","elements":["doxa-map","doxa-simple-map"],"profiles":[{"profile":"doxa-simple-map","file":"doxa-simple-map.vue","description":"The simple world map, shipped as three presets off ONE prop table —","element":"doxa-map","type":"parameterized","isMap":true,"iframeUrl":"./doxa-simple-map/doxa-simple-map/index.html","scriptUrl":"./doxa-simple-map/doxa-simple-map.js","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-simple-map/doxa-simple-map.js\" integrity=\"sha384-8drw8bByutNX9KwjTP4nrgMqtlu7xgrqxK6ebWLh8VTWAYC39TQ3d/8qwBxhPJMC\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-map profile-config='{\"profile\":\"doxa-simple-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-map>"},"instances":[{"id":"prayer","title":"Prayer Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-prayer","dataSource":"pray-tools","tabs":[{"id":"prayer","colorStrategy":"prayer","legend":"prayer","popup":"prayer"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/prayer/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/prayer/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"engagement","title":"Engagement Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-engagement","dataSource":"pray-tools","tabs":[{"id":"engagement","colorStrategy":"engagement","legend":"engagement","popup":"engagement"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/engagement/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/engagement/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"adoption","title":"Adoption Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-adoption","dataSource":"pray-tools","tabs":[{"id":"adoption","colorStrategy":"adoption","legend":"adoption","popup":"adoption"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/adoption/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/adoption/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-vision-card","scriptUrl":"./doxa-vision-card/doxa-vision-card.js","output":"doxa-maps/doxa-vision-card/doxa-vision-card.js","integrity":"sha384-2mza3cltN5LQQIrlENG/IVL6Icd9zzcFve3E8R8VWuCdYOGW9uGKFvxcbu6eFfwn","elements":["doxa-vision-card"],"profiles":[{"profile":"doxa-vision-card","file":"doxa-vision-card.vue","description":"The Capability-1 example: ONE folder -> ONE bundle -> ONE element.","element":"doxa-vision-card","type":"parameterized","isMap":false,"iframeUrl":"./doxa-vision-card/doxa-vision-card/index.html","scriptUrl":"./doxa-vision-card/doxa-vision-card.js","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-vision-card/doxa-vision-card.js\" integrity=\"sha384-2mza3cltN5LQQIrlENG/IVL6Icd9zzcFve3E8R8VWuCdYOGW9uGKFvxcbu6eFfwn\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-vision-card profile-config='{\"profile\":\"doxa-vision-card\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-vision-card>"},"instances":[{"id":"default","title":"Vision card — reach at a glance","apiBaseUrl":"","props":{"profile":"doxa-vision-card","provider":"maplibre","instanceId":"vision-card-default"},"element":"doxa-vision-card","iframeUrl":"./doxa-vision-card/doxa-vision-card/default/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"frontier","title":"Vision card — frontier accent","apiBaseUrl":"","props":{"profile":"doxa-vision-card","provider":"maplibre","instanceId":"vision-card-frontier","accent":"#22d3ee","title":"The last frontier of the gospel.","tagline":"Frontier people groups — where fewer than one in a thousand follow Jesus.","stats":[{"value":"1,910","label":"Frontier groups","note":"under 0.1% believers"},{"value":"2.1B","label":"People","note":"living in frontier settings"},{"value":"0.1%","label":"Christian","note":"or fewer, in each group"}]},"element":"doxa-vision-card","iframeUrl":"./doxa-vision-card/doxa-vision-card/frontier/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/frontier/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"doxa-vision-card"}]},{"bundle":"golden-path-check","scriptUrl":"./golden-path-check/golden-path-check.js","output":"doxa-maps/golden-path-check/golden-path-check.js","integrity":"sha384-1V/sT5SkV0U9yTCK9ELIOFfU1ZIJkInIF6nG3UllJ4dxax3RsEAupSGLJEFK6e14","elements":["golden-path-check"],"profiles":[{"profile":"golden-path-check","file":"golden-path-check.vue","description":"A live self-test of the develop-a-plugin-and-see-it-live path: it reads the built","element":"golden-path-check","type":"single","isMap":false,"iframeUrl":"./golden-path-check/golden-path-check/index.html","scriptUrl":"./golden-path-check/golden-path-check.js","embed":{"iframe":"\u003ciframe src=\"./golden-path-check/golden-path-check/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./golden-path-check/golden-path-check.js\" integrity=\"sha384-1V/sT5SkV0U9yTCK9ELIOFfU1ZIJkInIF6nG3UllJ4dxax3RsEAupSGLJEFK6e14\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgolden-path-check profile-config='{\"profile\":\"golden-path-check\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/golden-path-check>"}}]},{"bundle":"gospel-resources","scriptUrl":"./gospel-resources/gospel-resources.js","output":"doxa-maps/gospel-resources/gospel-resources.js","integrity":"sha384-XgF3DvRZEHIzZxcUqixiOsEk5bh6vIpwP7Drf9fBYy9F9cB7bp3NP2G2E56pPGt0","elements":["gospel-resources-map"],"profiles":[{"profile":"charts","file":"charts.vue","description":"The gap by LANGUAGE (ISO 639-3) rather than by people group — because one translation serves every","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/charts/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/charts/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-XgF3DvRZEHIzZxcUqixiOsEk5bh6vIpwP7Drf9fBYy9F9cB7bp3NP2G2E56pPGt0\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"charts\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"data-tables","file":"data-tables.vue","description":"Two validated tables: what resources exist per people group, and whether that access is keeping","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/data-tables/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-XgF3DvRZEHIzZxcUqixiOsEk5bh6vIpwP7Drf9fBYy9F9cB7bp3NP2G2E56pPGt0\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"resources-list","file":"resources-list.vue","description":"Which DX people groups have scripture in their own language, and which have none. The zero-resource","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/resources-list/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/resources-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-XgF3DvRZEHIzZxcUqixiOsEk5bh6vIpwP7Drf9fBYy9F9cB7bp3NP2G2E56pPGt0\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"resources-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"resources-map","file":"resources-map.vue","description":"Every country shaded by how much of its unengaged population has NO gospel resource in their own","element":"gospel-resources-map","type":"single","isMap":true,"iframeUrl":"./gospel-resources/resources-map/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/resources-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-XgF3DvRZEHIzZxcUqixiOsEk5bh6vIpwP7Drf9fBYy9F9cB7bp3NP2G2E56pPGt0\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"resources-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}}]},{"bundle":"my-upg-100-list","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","output":"doxa-maps/my-upg-100-list/my-upg-100-list.js","integrity":"sha384-VYXU1i1xnVyXAsxLHy565gD+tQp090jzfT6YPRJAYAKAmYIIqr1KqUtQZnO/zv0A","elements":["my-upg-100-list-map"],"composes":["my-upg-100-list/upg-100-list","my-upg-100-list/poster-wall"],"profiles":[{"profile":"poster-wall","file":"poster-wall.vue","description":"A wall of printable poster cards, one per 100-list entry, each with a \"Show on map\" action that","element":"my-upg-100-list-map","type":"single","isMap":true,"iframeUrl":"./my-upg-100-list/poster-wall/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-VYXU1i1xnVyXAsxLHy565gD+tQp090jzfT6YPRJAYAKAmYIIqr1KqUtQZnO/zv0A\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}},{"profile":"upg-100-list","file":"upg-100-list.vue","description":"A personal unreached-people-groups list painted as true boundary polygons —","element":"my-upg-100-list-map","type":"single","isMap":true,"iframeUrl":"./my-upg-100-list/upg-100-list/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/upg-100-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-VYXU1i1xnVyXAsxLHy565gD+tQp090jzfT6YPRJAYAKAmYIIqr1KqUtQZnO/zv0A\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"upg-100-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}},{"profile":"upg-100-mfe","file":"upg-100-mfe.vue","description":"The standalone, shareable and embeddable composite of the my-upg-100-list family — it nests the map","element":"my-upg-100-list-map","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./my-upg-100-list/upg-100-mfe/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/upg-100-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-VYXU1i1xnVyXAsxLHy565gD+tQp090jzfT6YPRJAYAKAmYIIqr1KqUtQZnO/zv0A\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"upg-100-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}}]},{"bundle":"people-groups-grid","scriptUrl":"./people-groups-grid/people-groups-grid.js","output":"doxa-maps/people-groups-grid/people-groups-grid.js","integrity":"sha384-ss5PmeSkKuxafBwvxZG3r7roP0OB/oVGwFbfrHnydEhjbtrlB4eisdsPXEyCJF37","elements":["people-groups-grid"],"profiles":[{"profile":"people-groups-grid","file":"people-groups-grid.vue","description":"The people-groups grid as an owned custom element: card list, search and four","element":"people-groups-grid","type":"parameterized","isMap":false,"iframeUrl":"./people-groups-grid/people-groups-grid/index.html","scriptUrl":"./people-groups-grid/people-groups-grid.js","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./people-groups-grid/people-groups-grid.js\" integrity=\"sha384-ss5PmeSkKuxafBwvxZG3r7roP0OB/oVGwFbfrHnydEhjbtrlB4eisdsPXEyCJF37\" crossorigin=\"anonymous\">\u003c/script>\n\u003cpeople-groups-grid profile-config='{\"profile\":\"people-groups-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/people-groups-grid>"},"instances":[{"id":"people-groups-grid","title":"People Groups Grid — standalone (own search + 4 dropdowns)","apiBaseUrl":"","props":{"profile":"people-groups-grid","provider":"maplibre","instanceId":"people-groups-grid","pray-base-url":"https://pray.doxa.life"},"element":"people-groups-grid","iframeUrl":"./people-groups-grid/people-groups-grid/people-groups-grid/index.html","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/people-groups-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"driven","title":"People Groups Grid — externally driven (controls off, props/events)","apiBaseUrl":"","props":{"profile":"people-groups-grid","provider":"maplibre","instanceId":"people-groups-grid-driven","pray-base-url":"https://pray.doxa.life","show-search":"false","show-filters":"false"},"element":"people-groups-grid","iframeUrl":"./people-groups-grid/people-groups-grid/driven/index.html","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/driven/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"plugin-studio","scriptUrl":"./plugin-studio/plugin-studio.js","output":"doxa-maps/plugin-studio/plugin-studio.js","integrity":"sha384-2RlLFRU2XdjBN7w+FPguj8INgj57JFg4IFT2AmdefGnR9QQLehbiiAffV45LcsFH","elements":["plugin-studio"],"composes":["bp-big-picture","people-groups-grid","doxa-research-map","doxa-simple-map","cities-internet-map","gospel-resources-map","my-upg-100-list-map","doxa-vision-card","all-people-groups","research-dashboard"],"profiles":[{"profile":"plugin-studio","file":"plugin-studio.vue","description":"The developer's viewing surface: a sidebar that is the composability ladder","element":"plugin-studio","type":"nested-mfe-spa","isMap":false,"iframeUrl":"./plugin-studio/plugin-studio/index.html","scriptUrl":"./plugin-studio/plugin-studio.js","embed":{"iframe":"\u003ciframe src=\"./plugin-studio/plugin-studio/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./plugin-studio/plugin-studio.js\" integrity=\"sha384-2RlLFRU2XdjBN7w+FPguj8INgj57JFg4IFT2AmdefGnR9QQLehbiiAffV45LcsFH\" crossorigin=\"anonymous\">\u003c/script>\n\u003cplugin-studio profile-config='{\"profile\":\"plugin-studio\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/plugin-studio>"},"instances":[{"id":"studio","title":"Plugin Studio — every element by capability 5 -> 1 (developer studio)","apiBaseUrl":"","props":{"profile":"plugin-studio","provider":"maplibre","instanceId":"plugin-studio","title":"Plugin Studio"},"element":"plugin-studio","iframeUrl":"./plugin-studio/plugin-studio/studio/index.html","embed":{"iframe":"\u003ciframe src=\"./plugin-studio/plugin-studio/studio/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"prayer-walk-planner","scriptUrl":"./prayer-walk-planner/prayer-walk-planner.js","output":"doxa-maps/prayer-walk-planner/prayer-walk-planner.js","integrity":"sha384-F0+r4avX8xkXp0hBpU5EBPU0InMRCObIn2Ieh9HJNn1r2amk8/qHmJ68WuNfsirC","elements":["prayer-walk-planner"],"profiles":[{"profile":"prayer-walk-planner","file":"prayer-walk-planner.vue","description":"A simple polygon-drawing tool for planning prayer-walking routes.","element":"prayer-walk-planner","type":"single","isMap":true,"iframeUrl":"./prayer-walk-planner/prayer-walk-planner/index.html","scriptUrl":"./prayer-walk-planner/prayer-walk-planner.js","embed":{"iframe":"\u003ciframe src=\"./prayer-walk-planner/prayer-walk-planner/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./prayer-walk-planner/prayer-walk-planner.js\" integrity=\"sha384-F0+r4avX8xkXp0hBpU5EBPU0InMRCObIn2Ieh9HJNn1r2amk8/qHmJ68WuNfsirC\" crossorigin=\"anonymous\">\u003c/script>\n\u003cprayer-walk-planner profile-config='{\"profile\":\"prayer-walk-planner\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/prayer-walk-planner>"}}]},{"bundle":"regions-dashboard","scriptUrl":"./regions-dashboard/regions-dashboard.js","output":"doxa-maps/regions-dashboard/regions-dashboard.js","integrity":"sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix","elements":["regions-dashboard"],"composes":["regions-dashboard/regions-list","regions-dashboard/region-dashboards"],"profiles":[{"profile":"region-dashboards","file":"region-dashboards.vue","description":"The dashboard half of the Driver's 2-tab Regions element: given a region (or a","element":"regions-dashboard","type":"single","isMap":true,"iframeUrl":"./regions-dashboard/region-dashboards/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/region-dashboards/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"region-dashboards\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}},{"profile":"regions-list","file":"regions-list.vue","description":"A refactor of DX-life's /regions index page (app/pages/regions/index.vue) into","element":"regions-dashboard","type":"single","isMap":true,"iframeUrl":"./regions-dashboard/regions-list/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/regions-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"regions-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}},{"profile":"regions-mfe","file":"regions-mfe.vue","description":"The composite the Driver asked for: ONE element carrying the SELECT VIEW switcher","element":"regions-dashboard","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./regions-dashboard/regions-mfe/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/regions-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"regions-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}}]},{"bundle":"research-dashboard","scriptUrl":"./research-dashboard/research-dashboard.js","output":"doxa-maps/research-dashboard/research-dashboard.js","integrity":"sha384-60D2NR4qeGMpN3QBUP2aTS2Ay90/Qqka2PiJQR12HoyewjpUeJXWDV3qihflLQGX","elements":["research-dashboard-map"],"profiles":[{"profile":"research-dashboard","file":"research-dashboard.vue","description":"Coordinated-Multiple-Views research dashboard for 10/40-window UPGs (live pray.doxa.life): docked facet rail + map-as-hero + linked table/charts, brushing-and-linking over one in-memory store.","element":"research-dashboard-map","type":"monolithic","isMap":true,"iframeUrl":"./research-dashboard/research-dashboard/index.html","scriptUrl":"./research-dashboard/research-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./research-dashboard/research-dashboard/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./research-dashboard/research-dashboard.js\" integrity=\"sha384-60D2NR4qeGMpN3QBUP2aTS2Ay90/Qqka2PiJQR12HoyewjpUeJXWDV3qihflLQGX\" crossorigin=\"anonymous\">\u003c/script>\n\u003cresearch-dashboard-map profile-config='{\"profile\":\"research-dashboard\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/research-dashboard-map>"},"bundle":"research-dashboard"}]},{"bundle":"research-map-plus-grid","scriptUrl":"./research-map-plus-grid/research-map-plus-grid.js","output":"doxa-maps/research-map-plus-grid/research-map-plus-grid.js","integrity":"sha384-sOkaMV0UFr2uNXfoJpRvaD+gHD6xFlkmpR7MzEwwFdarYdid8aN9Nj1Y8TqQJuFo","elements":["research-map-plus-grid"],"composes":["doxa-research-map","people-groups-grid"],"profiles":[{"profile":"research-map-plus-grid","file":"research-map-plus-grid.vue","description":"The monolithic 7-tab research map (cap-3) on top, the People Groups grid beneath,","element":"research-map-plus-grid","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./research-map-plus-grid/research-map-plus-grid/index.html","scriptUrl":"./research-map-plus-grid/research-map-plus-grid.js","embed":{"iframe":"\u003ciframe src=\"./research-map-plus-grid/research-map-plus-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./research-map-plus-grid/research-map-plus-grid.js\" integrity=\"sha384-sOkaMV0UFr2uNXfoJpRvaD+gHD6xFlkmpR7MzEwwFdarYdid8aN9Nj1Y8TqQJuFo\" crossorigin=\"anonymous\">\u003c/script>\n\u003cresearch-map-plus-grid profile-config='{\"profile\":\"research-map-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/research-map-plus-grid>"},"instances":[{"id":"default","title":"default","apiBaseUrl":"","props":{"profile":"research-map-plus-grid"},"element":"research-map-plus-grid","iframeUrl":"./research-map-plus-grid/research-map-plus-grid/default/index.html","embed":{"iframe":"\u003ciframe src=\"./research-map-plus-grid/research-map-plus-grid/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"stack-demo","scriptUrl":"./stack-demo/stack-demo.js","output":"doxa-maps/stack-demo/stack-demo.js","integrity":"sha384-gnwM6s+puf1K60Nl7crQcC2QC+9BxwpkaTx4OepLZ8VUCraZc+aRlWpsb6nj6Gyf","elements":["stack-demo"],"composes":["research-dashboard-map","people-groups-grid"],"profiles":[{"profile":"stack-demo","file":"stack-demo.vue","description":"Groups TWO independent elements TOP-TO-BOTTOM so you can embed the pair on a page and","element":"stack-demo","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./stack-demo/stack-demo/index.html","scriptUrl":"./stack-demo/stack-demo.js","embed":{"iframe":"\u003ciframe src=\"./stack-demo/stack-demo/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./stack-demo/stack-demo.js\" integrity=\"sha384-gnwM6s+puf1K60Nl7crQcC2QC+9BxwpkaTx4OepLZ8VUCraZc+aRlWpsb6nj6Gyf\" crossorigin=\"anonymous\">\u003c/script>\n\u003cstack-demo profile-config='{\"profile\":\"stack-demo\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/stack-demo>"},"instances":[{"id":"pair","title":"pair","apiBaseUrl":"","props":{"profile":"stack-demo"},"element":"stack-demo","iframeUrl":"./stack-demo/stack-demo/pair/index.html","embed":{"iframe":"\u003ciframe src=\"./stack-demo/stack-demo/pair/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"template-bundle","scriptUrl":"./template-bundle/template-bundle.js","output":"doxa-maps/template-bundle/template-bundle.js","integrity":"sha384-6SGiWbRI14LXEIhcKTQ3rZPX2ZLKlxaBBZkrnWx4zNsgG5J0l2MxdeI8Fbf0O5R3","elements":["template-bundle"],"profiles":[{"profile":"template-map-a","file":"template-map-a.vue","description":"Minimal example profile A — a colored placeholder, no Mapbox or data.","element":"template-bundle","type":"single","isMap":false,"iframeUrl":"./template-bundle/template-map-a/index.html","scriptUrl":"./template-bundle/template-bundle.js","embed":{"iframe":"\u003ciframe src=\"./template-bundle/template-map-a/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./template-bundle/template-bundle.js\" integrity=\"sha384-6SGiWbRI14LXEIhcKTQ3rZPX2ZLKlxaBBZkrnWx4zNsgG5J0l2MxdeI8Fbf0O5R3\" crossorigin=\"anonymous\">\u003c/script>\n\u003ctemplate-bundle profile-config='{\"profile\":\"template-map-a\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/template-bundle>"},"bundle":"template-bundle"},{"profile":"template-map-b","file":"template-map-b.vue","description":"Minimal example profile B — a second profile in the same bundle.","element":"template-bundle","type":"single","isMap":false,"iframeUrl":"./template-bundle/template-map-b/index.html","scriptUrl":"./template-bundle/template-bundle.js","embed":{"iframe":"\u003ciframe src=\"./template-bundle/template-map-b/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./template-bundle/template-bundle.js\" integrity=\"sha384-6SGiWbRI14LXEIhcKTQ3rZPX2ZLKlxaBBZkrnWx4zNsgG5J0l2MxdeI8Fbf0O5R3\" crossorigin=\"anonymous\">\u003c/script>\n\u003ctemplate-bundle profile-config='{\"profile\":\"template-map-b\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/template-bundle>"},"bundle":"template-bundle"}]},{"bundle":"upg-neighbor","scriptUrl":"./upg-neighbor/upg-neighbor.js","output":"doxa-maps/upg-neighbor/upg-neighbor.js","integrity":"sha384-JDJr4qoVZuiSi/rvgdzeuUNrzf7vjPdyh/g8dg7X8RHkZk/Y+tYXIQ3gpEzrU07q","elements":["upg-neighbor"],"profiles":[{"profile":"upg-neighbor","file":"upg-neighbor.vue","description":"Rescues the five pre-bundler experimental maps that live inside the legacy","element":"upg-neighbor","type":"parameterized","isMap":false,"iframeUrl":"./upg-neighbor/upg-neighbor/index.html","scriptUrl":"./upg-neighbor/upg-neighbor.js","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./upg-neighbor/upg-neighbor.js\" integrity=\"sha384-JDJr4qoVZuiSi/rvgdzeuUNrzf7vjPdyh/g8dg7X8RHkZk/Y+tYXIQ3gpEzrU07q\" crossorigin=\"anonymous\">\u003c/script>\n\u003cupg-neighbor profile-config='{\"profile\":\"upg-neighbor\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/upg-neighbor>"},"instances":[{"id":"send-map","title":"Send Map (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"send-map","legacyTitle":"Send Map"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/send-map/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/send-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"upg-neighbors","title":"UPG Neighbors (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"upg-neighbors","legacyTitle":"UPG Neighbors"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/upg-neighbors/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/upg-neighbors/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"lang-cluster","title":"Language Clusters (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"lang-cluster","legacyTitle":"Language Clusters"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/lang-cluster/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/lang-cluster/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"bloom-cockpit","title":"Bloom Cockpit (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"bloom-cockpit","legacyTitle":"Bloom Cockpit"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/bloom-cockpit/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/bloom-cockpit/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"flower-mesh","title":"Flower Mesh (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"flower-mesh","legacyTitle":"Flower Mesh"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/flower-mesh/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/flower-mesh/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]}]}; \n\n" + "script": "\n\n" }, "bundle": "all-people-groups" } @@ -35,7 +35,7 @@ "bundle": "big-picture", "scriptUrl": "./big-picture/big-picture.js", "output": "doxa-maps/big-picture/big-picture.js", - "integrity": "sha384-v0b+aZ7TBxmgUIBBLdKEm6HzwjY3jAGyOFNsKeKCKY4EIRpiWRTcNLavAitHRt8h", + "integrity": "sha384-voYmtWeACTFBJOOeqcbf5cuBKSjyskA89cjvm5qcvrx9IUFTAhLuICyRXUM6fL+Y", "elements": [ "bp-big-picture", "bp-research-header", @@ -57,7 +57,7 @@ "scriptUrl": "./big-picture/big-picture.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "instances": [ { @@ -101,7 +101,7 @@ "bundle": "cities-internet", "scriptUrl": "./cities-internet/cities-internet.js", "output": "doxa-maps/cities-internet/cities-internet.js", - "integrity": "sha384-tNig8gXdCocWVKD5iXR6iRqiAr7msWFtcFKzYif0L0G5i/RM+HI+SO8oR5c6O+5R", + "integrity": "sha384-lF6OGT0FH7sBXnALLiAoji8TADE05n7yqqoortZAifVdH6fNJ4yQeRRwjT8oXq+V", "elements": [ "cities-internet-map" ], @@ -117,7 +117,7 @@ "scriptUrl": "./cities-internet/cities-internet.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -131,7 +131,7 @@ "scriptUrl": "./cities-internet/cities-internet.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -145,7 +145,7 @@ "scriptUrl": "./cities-internet/cities-internet.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } } ] @@ -154,7 +154,7 @@ "bundle": "country-posters", "scriptUrl": "./country-posters/country-posters.js", "output": "doxa-maps/country-posters/country-posters.js", - "integrity": "sha384-LksOyBNdOcEFKZgo24HIYOYo/V/rrVy5weXVxrnzkJU9drI09SrvK+/Zz7PlFxha", + "integrity": "sha384-MpUL/82/3klzGisdJDdX7UQ6z/9ZX9r6GZzoKohNHeokCEtq9bPAwqHIPTupp8DG", "elements": [ "country-posters-map" ], @@ -174,7 +174,7 @@ "scriptUrl": "./country-posters/country-posters.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -188,21 +188,21 @@ "scriptUrl": "./country-posters/country-posters.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { "profile": "country-posters-mfe", "file": "country-posters-mfe.vue", - "description": "", - "element": "country-posters-map", + "description": "Country Posters as ONE two-tab element — the countries map and the printable", + "element": "country-posters-mfe", "type": "nested-elements-mfe", "isMap": true, "iframeUrl": "./country-posters/country-posters-mfe/index.html", "scriptUrl": "./country-posters/country-posters.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } } ] @@ -211,7 +211,7 @@ "bundle": "dashboard-plus-grid", "scriptUrl": "./dashboard-plus-grid/dashboard-plus-grid.js", "output": "doxa-maps/dashboard-plus-grid/dashboard-plus-grid.js", - "integrity": "sha384-YbJgljynZ4t3/Ro44oHQy9ihl9/5o7j4IKts8MNRfA73Cb5cyD7U52DklXjzpLpG", + "integrity": "sha384-KWYs/unuewlt9PJ4CC/VlyoghFmN4KtHqsweo68lJwUNL1g3FJ8VctASOYWAt91q", "elements": [ "dashboard-plus-grid" ], @@ -231,7 +231,7 @@ "scriptUrl": "./dashboard-plus-grid/dashboard-plus-grid.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "instances": [ { @@ -255,7 +255,7 @@ "bundle": "demo-map", "scriptUrl": "./demo-map/demo-map.js", "output": "doxa-maps/demo-map/demo-map.js", - "integrity": "sha384-QiUJUgeFn27tiHKVhAYtJuIWo+1z5xsCUP1Nj4m1H4cFUV3vUA7ADTP58Ky3oVtQ", + "integrity": "sha384-2ItGdUG5OW9uHN4ldNF6To6hvTy3XGdFnJrJenyyqShBjIi2NgcyXTyhYu2mttHH", "elements": [ "demo-map" ], @@ -271,7 +271,7 @@ "scriptUrl": "./demo-map/demo-map.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "instances": [ { @@ -298,7 +298,7 @@ "bundle": "doxa-maps-spa", "scriptUrl": "./doxa-maps-spa/doxa-maps-spa.js", "output": "doxa-maps/doxa-maps-spa/doxa-maps-spa.js", - "integrity": "sha384-Ce+DKsLgwfej+rgoWeaWFuMMbR3Y4H+8io/lVL+lQfX0O3iGKwDLf4remDkHGCrP", + "integrity": "sha384-1f+/rBSGo/1jyUmRmGg34CIU/PcGkB7M3jah1DO0ocb5O0zj81wpUemXcz4WAFz8", "elements": [ "doxa-maps-spa" ], @@ -322,7 +322,7 @@ "scriptUrl": "./doxa-maps-spa/doxa-maps-spa.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "instances": [ { @@ -349,7 +349,7 @@ "bundle": "doxa-research-map", "scriptUrl": "./doxa-research-map/doxa-research-map.js", "output": "doxa-maps/doxa-research-map/doxa-research-map.js", - "integrity": "sha384-oecoezttPmpRe5GNG/Yko6IkEbtLjCD7PD7qghU1ZigprnfLKhbf0eBEiEbE24iR", + "integrity": "sha384-ycDpVdTjizEUxzsO+lQpTagpdLenXlLnvFQ/juKcWeazo2Qvo1B1QYpDxykzA9Zp", "elements": [ "doxa-research-map" ], @@ -365,7 +365,7 @@ "scriptUrl": "./doxa-research-map/doxa-research-map.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "instances": [ { @@ -391,7 +391,7 @@ "bundle": "doxa-simple-map", "scriptUrl": "./doxa-simple-map/doxa-simple-map.js", "output": "doxa-maps/doxa-simple-map/doxa-simple-map.js", - "integrity": "sha384-hzEui48BqpW8VhRthz3daMgAdw4w4M3gtBre4ce4sXuAmS+39pMRW9reNAvpFb+W", + "integrity": "sha384-8drw8bByutNX9KwjTP4nrgMqtlu7xgrqxK6ebWLh8VTWAYC39TQ3d/8qwBxhPJMC", "elements": [ "doxa-map", "doxa-simple-map" @@ -408,7 +408,7 @@ "scriptUrl": "./doxa-simple-map/doxa-simple-map.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "instances": [ { @@ -591,7 +591,7 @@ "bundle": "gospel-resources", "scriptUrl": "./gospel-resources/gospel-resources.js", "output": "doxa-maps/gospel-resources/gospel-resources.js", - "integrity": "sha384-4pOAnuuOovcKXSQANV9jnLu1ExxiwQMuC4aU5MtAsd959tYmdUj05u4tT57Z/rKI", + "integrity": "sha384-XgF3DvRZEHIzZxcUqixiOsEk5bh6vIpwP7Drf9fBYy9F9cB7bp3NP2G2E56pPGt0", "elements": [ "gospel-resources-map" ], @@ -607,7 +607,7 @@ "scriptUrl": "./gospel-resources/gospel-resources.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -621,7 +621,7 @@ "scriptUrl": "./gospel-resources/gospel-resources.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -635,7 +635,7 @@ "scriptUrl": "./gospel-resources/gospel-resources.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -649,7 +649,7 @@ "scriptUrl": "./gospel-resources/gospel-resources.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } } ] @@ -913,7 +913,7 @@ "bundle": "research-dashboard", "scriptUrl": "./research-dashboard/research-dashboard.js", "output": "doxa-maps/research-dashboard/research-dashboard.js", - "integrity": "sha384-VvOYWBcDd7NtnB1eveECKX88ZHIpGnOf79tVdCUqGZzXLgoZPc+oTTPIC3ajaYsn", + "integrity": "sha384-60D2NR4qeGMpN3QBUP2aTS2Ay90/Qqka2PiJQR12HoyewjpUeJXWDV3qihflLQGX", "elements": [ "research-dashboard-map" ], @@ -929,7 +929,7 @@ "scriptUrl": "./research-dashboard/research-dashboard.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "bundle": "research-dashboard" } @@ -1027,7 +1027,7 @@ "bundle": "template-bundle", "scriptUrl": "./template-bundle/template-bundle.js", "output": "doxa-maps/template-bundle/template-bundle.js", - "integrity": "sha384-k+G5UlkZ99QmuecCCWUrjz998JBJnQT3hsDG0A+IVmiX9F3CNswmHXXzYhjnUTDX", + "integrity": "sha384-6SGiWbRI14LXEIhcKTQ3rZPX2ZLKlxaBBZkrnWx4zNsgG5J0l2MxdeI8Fbf0O5R3", "elements": [ "template-bundle" ], @@ -1043,7 +1043,7 @@ "scriptUrl": "./template-bundle/template-bundle.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "bundle": "template-bundle" }, @@ -1058,7 +1058,7 @@ "scriptUrl": "./template-bundle/template-bundle.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" }, "bundle": "template-bundle" } @@ -1076,7 +1076,7 @@ { "profile": "upg-neighbor", "file": "upg-neighbor.vue", - "description": "Rescues the three pre-bundler experimental maps that live inside the legacy", + "description": "Rescues the five pre-bundler experimental maps that live inside the legacy", "element": "upg-neighbor", "type": "parameterized", "isMap": false, From e263991dc546bea73d90fc605b15e8f5dba6d5be Mon Sep 17 00:00:00 2001 From: doxa-maps-88655c70 <88627970+doxa-maps-88655c70@users.noreply.github.com> Date: Thu, 24 Sep 2026 05:10:17 +0000 Subject: [PATCH 09/11] test(deck): click the REAL button and read what it prints MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Every other packet/card gate drives the RENDERERS. This one drives the UI: it finds the Card Deck button in the shadow root, clicks it, and captures the document that reaches the print frame. That is the only path proving the wiring — records provider, stock picker, language, shared composable, print frame — is connected end to end. A renderer can be perfect while the button calling it passes the wrong stock, or nothing at all. ⚠ It intercepts the printed HTML rather than reading the iframe back. openPrintFrame calls window.print(), which BLOCKS in headless Chromium, and the frame self-removes on afterprint — reading it back measures a frame that has already gone and reports 0 cards for a correct deck. Measured through the real UI: 116 cards at 2.5in 3.5in with 116 QR codes, and 3.5in 2.5in when the stock picker is switched to landscape. Confirmed to fail on a wrong expected page size. Also updates the share policy: country-posters moves from 'own-button' to 'header'. Its two-tab MFE now owns sharing, exactly as my-upg-100-list's does — the gate caught the bundle briefly carrying two affordances after the MFE landed, which is the regression it was written for. --- internal/check-deck-click.mjs | 99 +++++++++++++++++++++++++++++++++ internal/check-share-policy.mjs | 2 +- package.json | 1 + 3 files changed, 101 insertions(+), 1 deletion(-) create mode 100644 internal/check-deck-click.mjs diff --git a/internal/check-deck-click.mjs b/internal/check-deck-click.mjs new file mode 100644 index 000000000..b9d3a80a6 --- /dev/null +++ b/internal/check-deck-click.mjs @@ -0,0 +1,99 @@ +// check-deck-click — click the REAL Card Deck button and read what it prints. +// +// Every other packet/card gate drives the RENDERERS directly. This one drives the +// UI: it finds the button in the shadow root, clicks it, and captures the document +// that reaches the print frame. That is the only path that proves the wiring — +// records provider, stock picker, language, shared composable, print frame — is +// connected end to end. A renderer can be perfect while the button that calls it +// passes the wrong stock, or nothing at all. +// +// ⚠ IT INTERCEPTS THE PRINTED HTML rather than reading the iframe back. +// openPrintFrame calls window.print(), which BLOCKS in headless Chromium, and the +// frame self-removes on afterprint — reading it back measures a frame that has +// already gone and reports 0 cards for a correct deck. +// +// Usage: node internal/check-deck-click.mjs [stockId] [expectedPage] +import { chromium } from 'playwright' + +const URL_ = process.argv[2] +if (!URL_) { console.error('usage: check-deck-click.mjs [stock] [expectedPage]'); process.exit(2) } +const STOCK = process.argv[3] || '' +const EXPECT_PAGE = process.argv[4] || (STOCK === 'pokerLandscape' ? '3.5in 2.5in' : '2.5in 3.5in') + +const b = await chromium.launch({ args: ['--use-gl=swiftshader', '--enable-unsafe-swiftshader'] }) +const pg = await b.newPage({ viewport: { width: 1280, height: 1000 } }) +const errs = [] +pg.on('pageerror', (e) => errs.push(String(e).slice(0, 140))) +await pg.goto(URL_, { waitUntil: 'load', timeout: 45000 }) +await pg.waitForTimeout(9000) + +await pg.evaluate(() => { + window.__printed = '' + const real = document.createElement.bind(document) + document.createElement = (t) => { + const el = real(t) + if (t === 'iframe') { + Object.defineProperty(el, 'contentDocument', { + get: () => ({ open() {}, close() {}, write(h) { window.__printed += h } }), + }) + Object.defineProperty(el, 'contentWindow', { + get: () => ({ addEventListener() {}, focus() {}, print() {} }), + }) + } + return el + } +}) + +const r = await pg.evaluate(async (stock) => { + const host = [...document.querySelectorAll('*')] + .find((e) => e.shadowRoot && e.shadowRoot.querySelector('.pbtn')) + if (!host) return { error: 'no poster wall found on this page' } + const sr = host.shadowRoot + const btns = [...sr.querySelectorAll('.pbtn')] + const deck = btns.find((x) => /card deck/i.test(x.textContent)) + if (!deck) return { error: 'no Card Deck button', buttons: btns.map((x) => x.textContent.trim()) } + if (stock) { + const sel = sr.querySelector('.pstock') + if (!sel) return { error: 'no card-stock picker to drive' } + sel.value = stock + sel.dispatchEvent(new Event('change', { bubbles: true })) + await new Promise((res) => setTimeout(res, 400)) + } + deck.click() + await new Promise((res) => setTimeout(res, 9000)) + const doc = new DOMParser().parseFromString(window.__printed, 'text/html') + return { + cards: doc.querySelectorAll('.card').length, + qrs: doc.querySelectorAll('.qr svg').length, + imgs: doc.querySelectorAll('img.ph').length, + page: (window.__printed.match(/@page\{size:([^;}]*)/) || [])[1] || '', + } +}, STOCK) +await b.close() + +if (r.error) { + console.error(`DECK-CLICK: FAIL — ${r.error}` + + (r.buttons ? ` (buttons present: ${r.buttons.join(' | ')})` : '')) + process.exit(1) +} + +const fails = [] +if (!r.cards) fails.push('the click printed no cards at all — the button is not wired to the renderer') +if (r.page.trim() !== EXPECT_PAGE) { + fails.push(`@page size is "${r.page.trim()}", expected "${EXPECT_PAGE}"` + + (STOCK ? ' — the stock picker is not reaching the renderer' : '')) +} +if (r.qrs !== r.cards) fails.push(`${r.qrs} QR code(s) for ${r.cards} cards`) +if (errs.length) fails.push(`${errs.length} page error(s): ${errs[0]}`) + +console.log(` stock : ${STOCK || '(default)'}`) +console.log(` cards printed : ${r.cards} (${r.imgs} portraits, ${r.qrs} QR codes)`) +console.log(` @page size : ${r.page.trim()} (want ${EXPECT_PAGE})`) +console.log(` page errors : ${errs.length}`) + +if (fails.length) { + console.error(`\nDECK-CLICK: FAIL — ${fails.length} problem(s)`) + for (const f of fails) console.error(' - ' + f) + process.exit(1) +} +console.log(`\nDECK-CLICK: PASS — the real button printed ${r.cards} cards at ${r.page.trim()}.`) diff --git a/internal/check-share-policy.mjs b/internal/check-share-policy.mjs index 70ca86d36..5a86565e1 100644 --- a/internal/check-share-policy.mjs +++ b/internal/check-share-policy.mjs @@ -45,7 +45,7 @@ const DESIGNS = join(REPO, 'plugin-designs') const POLICY = { 'doxa-simple-map': 'own-button', // Prayer Progress — the embed flagship 'doxa-research-map': 'own-button', - 'country-posters': 'own-button', + 'country-posters': 'header', // country-posters-mfe header owns it 'cities-internet': 'own-button', 'gospel-resources': 'own-button', 'demo-map': 'own-button', diff --git a/package.json b/package.json index c033b877a..fa6e02008 100644 --- a/package.json +++ b/package.json @@ -57,6 +57,7 @@ "build:unlocked": "bun run gates:pre && bun run library-index && bun run check:library-index && bun run clean && bun run token && bun run build:bundles && bun run tree && bun run gates:post && bun run gallery", "check:card-deck": "node internal/check-card-deck.mjs", "check:poster-raster": "node internal/check-poster-raster.mjs", + "check:deck-click": "node internal/check-deck-click.mjs", "check:poster-prints": "node internal/check-poster-prints.mjs", "check:provider-switch": "node internal/check-provider-switch.mjs", "check:mfe-two-tab": "node internal/check-mfe-two-tab.mjs", From a0910bcdef1d054b833afc1e7573a09b577d1bed Mon Sep 17 00:00:00 2001 From: doxa-maps-88655c70 <88627970+doxa-maps-88655c70@users.noreply.github.com> Date: Thu, 24 Sep 2026 05:22:06 +0000 Subject: [PATCH 10/11] refactor(packet): the legend's packet export uses the shared action MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Continues the consolidation. The card deck moved to usePosterPrints last tick; the PACKET export in upg-100-list.vue was still a second hand-maintained copy of the same shape — its own renderer import, its own strings fetch, its own language resolution. Two copies of one fact drift. printPacket now lives in the composable, so the browser export and the build-time generator share one renderer AND one calling convention. What stays in the bundle is what genuinely cannot be shared: packetRecords who is in this list — the people-groups API, the selector evaluator, and the pg_slugs special case that 12 of the 27 lists need (the evaluator intentionally THROWS on that type) packetMapSvg where this bundle's posters are served from. Absent is fine: the packet prints a cover without the map rather than failing ⚠ AND THE MIGRATION WOULD HAVE MADE THE PACKET PRINT SILENTLY. The composable reports through its own exportState; this profile has no HUD for that and shows `status` instead — exportState appears ZERO times in the file. Without a bridge there would be no "building…", and a failure would vanish with nothing said: the mechanism working while the feedback does not, which is the exact trap the wall consolidation hit from the other direction. A watcher now maps the composable's phases onto `status`. Verified: check:poster-prints drives the shared action and asserts the packet's SHAPE — 4 sheets for 2 groups (map + people page + points + wheel), 12 wheel segments, Mark 5:1-20 present — not merely that bytes were produced. Confirmed to fail before acceptance by removing the wheel page (3 sheets, 0 segments). The build-time generator still passes check:packet-render at 8/8, and check:deck-click still prints 116 cards through the real button. --- library/composables/usePosterPrints.js | 34 +++- .../my-upg-100-list/upg-100-list.vue | 146 +++++++++-------- public/doxa-maps/index.html | 2 +- public/doxa-maps/manifest.json | 8 +- .../my-upg-100-list/my-upg-100-list.js | 150 +++++++++--------- .../my-upg-100-list/poster-wall/index.html | 2 +- .../my-upg-100-list/upg-100-list/index.html | 2 +- .../my-upg-100-list/upg-100-mfe/index.html | 2 +- 8 files changed, 197 insertions(+), 149 deletions(-) diff --git a/library/composables/usePosterPrints.js b/library/composables/usePosterPrints.js index 34741dfc8..bffb6c9cb 100644 --- a/library/composables/usePosterPrints.js +++ b/library/composables/usePosterPrints.js @@ -164,5 +164,37 @@ export function usePosterPrints(opts = {}) { } catch (e) { fail(item, kind, e); } } - return { exportState, dismiss, printPoster, printList, printCardDeck }; + // ── 4. THE PRAYER PACKET ────────────────────────────────────────────────── + // The full booklet: map one-pager, people groups 20-per-page with photos, the 12 + // prayer points, the prayer wheel. Shares the renderer with the build-time + // generator (library/packet/packet-render.js), so a printed packet and a + // generated one cannot diverge. + // + // The MAP PAGE is optional by design: `mapSvg` is supplied by the caller because + // only the bundle knows where its posters are served from. If it cannot be + // fetched the packet still prints — a cover without the map beats no packet. + async function printPacket(item, { mapSvg = '' } = {}) { + if (busy()) return; + const kind = 'Prayer Packet'; + set(item, kind, 'fetch', 'fetching people groups', 30); + try { + const data = await rows(item); + const [{ createPacketRenderer }, strings] = await Promise.all([ + import('../packet/packet-render.js'), + opts.strings ? opts.strings() : import('../scripts/posters/packet-strings.json').then((m) => m.default || m), + ]); + const R = createPacketRenderer({ strings, lang: lang() }); + // Photos stay as URLs. The Node generator base64-inlines them so its file is + // self-contained offline; in a browser the print frame fetches them, and + // inlining ~95 images client-side would stall the tab for no gain. + const photos = new Map( + data.filter((g) => g.image_url).map((g) => [g.slug, g.image_url]), + ); + set(item, kind, 'render', `printing ${data.length} people groups`, 70); + openPrintFrame(R.buildPacket(item, data, photos, mapSvg), { autoprint: true }); + done(item, kind); + } catch (e) { fail(item, kind, e); } + } + + return { exportState, dismiss, printPoster, printList, printCardDeck, printPacket }; } diff --git a/plugin-designs/my-upg-100-list/upg-100-list.vue b/plugin-designs/my-upg-100-list/upg-100-list.vue index bddb06665..a80d046b8 100644 --- a/plugin-designs/my-upg-100-list/upg-100-list.vue +++ b/plugin-designs/my-upg-100-list/upg-100-list.vue @@ -81,7 +81,7 @@ import { useI18n } from 'vue-i18n' // The in-place print helper: a hidden same-page iframe, NOT window.open(). A popup // is blockable and drops the user out of the map; the iframe opens the print dialog // right here. Shared so the packet, the poster and the card deck all print the same way. -import { openPrintFrame } from '@map/composables/printInPlace.js' +import { usePosterPrints } from '@map/composables/usePosterPrints.js' import { buildLegendNodes, leafZones } from './data/legend-tree.js' import { resolveAllZones } from './data/zone-geometry.js' // slice 09b-9 §3 (L18/L29 FIX): the per-zone color OVERRIDE map. zone-colors.json @@ -344,10 +344,10 @@ const API_BASE = (typeof window !== 'undefined' && window.MAP_APP_API_URL) || import.meta.env.VITE_API_BASE_URL || '' -// Prayer-packet printing (legend Export > Prayer packet). openPrintFrame is the -// SHARED in-place print helper — a hidden same-page iframe, so the dialog opens in -// this tab rather than a popup a browser may block. The packet's locale follows the -// app's, so a reader gets it in their own language. +// Prayer-packet printing (legend Export > Prayer packet). The ACTION lives in the +// shared usePosterPrints composable — it prints through a hidden same-page iframe, +// so the dialog opens in this tab rather than a popup a browser may block. The +// packet's locale follows the app's, so a reader gets it in their own language. const { locale: packetLocale } = useI18n() const DEAF_COUNT = 123 @@ -1132,68 +1132,84 @@ async function onLegendExport(kind) { // Build and print a zone's prayer packet without leaving the page. // PAGE ORDER IS THE PRODUCT SPEC: map · people groups 20/page with photos · // 12 prayer points · prayer wheel. -let packetBusy = false; -async function printPrayerPacket(zoneId) { - if (packetBusy) return; // a second click must not open a second job - packetBusy = true; - try { - const zone = allLists().find((z) => z.id === zoneId); - if (!zone) throw new Error(`no list "${zoneId}"`); - status.value = 'Building the prayer packet…'; +// ── THE PRAYER PACKET: the SHARED action ──────────────────────────────────── +// This was a second hand-maintained copy of the packet print — its own renderer +// import, its own strings fetch, its own language resolution — beside the card +// deck's, which was consolidated first. Two copies of one fact drift. +// +// It now delegates to library/composables/usePosterPrints.js. What stays HERE is +// what genuinely cannot be shared: resolving which people groups are in a list +// (the people-groups API, the selector evaluator, and the pg_slugs special case +// that 12 of the 27 lists need), and where this bundle's posters are served from. +const packetPrints = usePosterPrints({ + records: (zone) => packetRecords(zone), + lang: () => packetLang(), + label: (zone) => zone?.label || zone?.id || '', +}); - if (!API_BASE) throw new Error('no API configured'); - const fields = 'slug,name,country_code,population,religion,image_url'; - const resp = await fetch(`${API_BASE}/api/people-groups/list?fields=${fields}&lang=${packetLang()}`, - { cache: 'no-store' }); - if (!resp.ok) throw new Error(`people-groups fetch failed (${resp.status})`); - const records = normalizeRecords(extractRecords(await resp.json())); - - // ⚠ pg_slugs BYPASSES the shared evaluator — it intentionally THROWS on that - // type, and 12 of the 27 lists use it. Same special-case the map and the poster - // wall already apply, so all three agree about who is in a list. - let slugs; - if (zone.selector && zone.selector.type === 'pg_slugs') { - slugs = new Set(zone.selector.values || []); - } else { - const { evaluate } = await import('./data/selector-evaluator.js'); - slugs = new Set(evaluate(zone.selector, records)); // evaluate returns a Set - } - const groups = records.filter((r) => slugs.has(r.slug)) - .sort((a, b) => String(a.name).localeCompare(String(b.name), packetLang())); - if (!groups.length) throw new Error('that list resolved to no people groups'); - - // Photos stay as URLs here. The Node generator base64-inlines them so its file - // is self-contained offline; in a browser the print frame can fetch them, and - // inlining 95 images client-side would stall the tab for no gain. - const photos = new Map(groups.filter((g) => g.image_url).map((g) => [g.slug, g.image_url])); - - const [{ createPacketRenderer }, strings] = await Promise.all([ - import('@map/packet/packet-render.js'), - import('@map/scripts/posters/packet-strings.json').then((m) => m.default || m), - ]); - const R = createPacketRenderer({ strings, lang: packetLang() }); - - // The map page takes the poster's . If it cannot be fetched the packet - // still prints — a cover without the map beats no packet at all. - let mapSvg = ''; - try { - const base = resolveAssetsBase(profileConfig.value); - const html = await (await fetch(`${base}/posters/${zoneId}.html`, { cache: 'force-cache' })).text(); - const svg = html.match(//); - if (svg) mapSvg = `` - + `
${svg[0]}
`; - } catch { /* cover page without the map */ } - - status.value = `Printing ${groups.length} people groups…`; - openPrintFrame(R.buildPacket(zone, groups, photos, mapSvg), { autoprint: true }); - status.value = ''; - } catch (err) { - status.value = `Packet failed: ${err && err.message ? err.message : err}`; - setTimeout(() => { status.value = ''; }, 4000); - } finally { - packetBusy = false; +// ⚠ BRIDGE THE PROGRESS BACK TO THE SURFACE THIS MAP ACTUALLY SHOWS. +// The composable reports through its own exportState; this profile has no HUD for +// that and displays `status` instead. Without this watcher the packet would print +// SILENTLY — no "building…", and a failure would vanish with nothing said — which +// is the mechanism working while the feedback does not. +watch(packetPrints.exportState, (st) => { + if (!st) { if (/packet/i.test(status.value)) status.value = ''; return; } + if (st.phase === 'error') { + status.value = `Packet failed: ${st.message}`; + setTimeout(() => { if (status.value.startsWith('Packet failed')) status.value = ''; }, 4000); + return; } + status.value = st.phase === 'done' ? '' : `${st.message}…`; +}); + +// BUNDLE-SPECIFIC: who is in this list. ⚠ pg_slugs BYPASSES the shared evaluator — +// it intentionally THROWS on that type, and 12 of the 27 lists use it. Same +// special-case the map and the poster wall apply, so all three agree about +// membership. +async function packetRecords(zone) { + if (!API_BASE) throw new Error('no API configured'); + const fields = 'slug,name,country_code,population,religion,image_url'; + const resp = await fetch(`${API_BASE}/api/people-groups/list?fields=${fields}&lang=${packetLang()}`, + { cache: 'no-store' }); + if (!resp.ok) throw new Error(`people-groups fetch failed (${resp.status})`); + const records = normalizeRecords(extractRecords(await resp.json())); + let slugs; + if (zone.selector && zone.selector.type === 'pg_slugs') { + slugs = new Set(zone.selector.values || []); + } else { + const { evaluate } = await import('./data/selector-evaluator.js'); + slugs = new Set(evaluate(zone.selector, records)); // evaluate returns a Set + } + return records.filter((r) => slugs.has(r.slug)) + .sort((a, b) => String(a.name).localeCompare(String(b.name), packetLang())); +} + +// BUNDLE-SPECIFIC: the map page's , lifted from this bundle's own poster. +// Absent is fine — the packet prints a cover without the map rather than failing. +async function packetMapSvg(zoneId, R) { + try { + const base = resolveAssetsBase(profileConfig.value); + const html = await (await fetch(`${base}/posters/${zoneId}.html`, { cache: 'force-cache' })).text(); + const svg = html.match(//); + if (!svg) return ''; + return `` + + `
${svg[0]}
`; + } catch { return ''; } +} + +async function printPrayerPacket(zoneId) { + const zone = allLists().find((z) => z.id === zoneId); + if (!zone) return; + // The map svg needs the renderer's own mapCss/W, so it is resolved here and + // handed in rather than fetched inside the shared action, which knows nothing + // about where this bundle serves its posters. + const [{ createPacketRenderer }, strings] = await Promise.all([ + import('@map/packet/packet-render.js'), + import('@map/scripts/posters/packet-strings.json').then((m) => m.default || m), + ]); + const R = createPacketRenderer({ strings, lang: packetLang() }); + await packetPrints.printPacket(zone, { mapSvg: await packetMapSvg(zoneId, R) }); } // Every list across all three cluster buckets, flattened. diff --git a/public/doxa-maps/index.html b/public/doxa-maps/index.html index 2a9e411ad..b3452b68c 100644 --- a/public/doxa-maps/index.html +++ b/public/doxa-maps/index.html @@ -130,7 +130,7 @@ header.top .sub { margin-top: 3px; font: 12px/1.4 var(--sans); color: var(--mut) + window.FORGE.manifest = {"schema":"doxa-maps-manifest@1","generatedFrom":"plugin-designs/*/*.vue","embedBase":".","bundleCount":22,"profileCount":34,"bundles":[{"bundle":"all-people-groups","scriptUrl":"./all-people-groups/all-people-groups.js","output":"doxa-maps/all-people-groups/all-people-groups.js","integrity":"sha384-R42WaDgwpLQcS2xBY+w+VgqpnTlojkRR3jqMq56IOaLn2MmuDoYwtXysc9CMN58c","elements":["all-people-groups"],"profiles":[{"profile":"all-people-groups","file":"all-people-groups.vue","description":"All 12,379 people groups (peoplegroups.org) in four colors — reached,","element":"all-people-groups","type":"single","isMap":true,"iframeUrl":"./all-people-groups/all-people-groups/index.html","scriptUrl":"./all-people-groups/all-people-groups.js","embed":{"iframe":"\u003ciframe src=\"./all-people-groups/all-people-groups/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./all-people-groups/all-people-groups.js\" integrity=\"sha384-R42WaDgwpLQcS2xBY+w+VgqpnTlojkRR3jqMq56IOaLn2MmuDoYwtXysc9CMN58c\" crossorigin=\"anonymous\">\u003c/script>\n\u003call-people-groups profile-config='{\"profile\":\"all-people-groups\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/all-people-groups>"},"bundle":"all-people-groups"}]},{"bundle":"big-picture","scriptUrl":"./big-picture/big-picture.js","output":"doxa-maps/big-picture/big-picture.js","integrity":"sha384-voYmtWeACTFBJOOeqcbf5cuBKSjyskA89cjvm5qcvrx9IUFTAhLuICyRXUM6fL+Y","elements":["bp-big-picture","bp-research-header","people-groups-grid"],"composes":["bp-research-header","people-groups-grid"],"profiles":[{"profile":"big-picture","file":"big-picture.vue","description":"The Cat-4 composite that PAIRS the two real capability elements of the","element":"bp-big-picture","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./big-picture/big-picture/index.html","scriptUrl":"./big-picture/big-picture.js","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./big-picture/big-picture.js\" integrity=\"sha384-voYmtWeACTFBJOOeqcbf5cuBKSjyskA89cjvm5qcvrx9IUFTAhLuICyRXUM6fL+Y\" crossorigin=\"anonymous\">\u003c/script>\n\u003cbp-big-picture profile-config='{\"profile\":\"big-picture\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/bp-big-picture>"},"instances":[{"id":"big-picture","title":"Big Picture — research header ↔ people-groups grid (composite)","apiBaseUrl":"","props":{"profile":"big-picture","provider":"maplibre","instanceId":"bp-big-picture"},"element":"bp-big-picture","iframeUrl":"./big-picture/big-picture/big-picture/index.html","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/big-picture/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"frontier","title":"Big Picture — frontier accent","apiBaseUrl":"","props":{"profile":"big-picture","provider":"maplibre","instanceId":"bp-big-picture-frontier","accent":"#22d3ee","title":"Big Picture — Frontier Focus"},"element":"bp-big-picture","iframeUrl":"./big-picture/big-picture/frontier/index.html","embed":{"iframe":"\u003ciframe src=\"./big-picture/big-picture/frontier/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"big-picture"}]},{"bundle":"cities-internet","scriptUrl":"./cities-internet/cities-internet.js","output":"doxa-maps/cities-internet/cities-internet.js","integrity":"sha384-lF6OGT0FH7sBXnALLiAoji8TADE05n7yqqoortZAifVdH6fNJ4yQeRRwjT8oXq+V","elements":["cities-internet-map"],"profiles":[{"profile":"connectivity-list","file":"connectivity-list.vue","description":"Countries where DX people groups live, grouped by region, showing measured internet penetration","element":"cities-internet-map","type":"single","isMap":false,"iframeUrl":"./cities-internet/connectivity-list/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/connectivity-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-lF6OGT0FH7sBXnALLiAoji8TADE05n7yqqoortZAifVdH6fNJ4yQeRRwjT8oXq+V\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"connectivity-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}},{"profile":"connectivity-map","file":"connectivity-map.vue","description":"Every country shaded by measured internet penetration, with its named carriers and dominant","element":"cities-internet-map","type":"single","isMap":true,"iframeUrl":"./cities-internet/connectivity-map/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/connectivity-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-lF6OGT0FH7sBXnALLiAoji8TADE05n7yqqoortZAifVdH6fNJ4yQeRRwjT8oXq+V\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"connectivity-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}},{"profile":"data-tables","file":"data-tables.vue","description":"Four validated research tables, one tab each, with sortable and filterable columns, CSV and JSON","element":"cities-internet-map","type":"single","isMap":false,"iframeUrl":"./cities-internet/data-tables/index.html","scriptUrl":"./cities-internet/cities-internet.js","embed":{"iframe":"\u003ciframe src=\"./cities-internet/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-lF6OGT0FH7sBXnALLiAoji8TADE05n7yqqoortZAifVdH6fNJ4yQeRRwjT8oXq+V\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccities-internet-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/cities-internet-map>"}}]},{"bundle":"country-posters","scriptUrl":"./country-posters/country-posters.js","output":"doxa-maps/country-posters/country-posters.js","integrity":"sha384-MpUL/82/3klzGisdJDdX7UQ6z/9ZX9r6GZzoKohNHeokCEtq9bPAwqHIPTupp8DG","elements":["country-posters-map"],"composes":["country-posters/country-poster-wall","country-posters/countries-map"],"profiles":[{"profile":"countries-map","file":"countries-map.vue","description":"The researcher's workbench retargeted from people groups to COUNTRIES — region","element":"country-posters-map","type":"single","isMap":true,"iframeUrl":"./country-posters/countries-map/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/countries-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-MpUL/82/3klzGisdJDdX7UQ6z/9ZX9r6GZzoKohNHeokCEtq9bPAwqHIPTupp8DG\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"countries-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}},{"profile":"country-poster-wall","file":"country-poster-wall.vue","description":"One printable card per country, grouped into COLLAPSIBLE regional sections so the","element":"country-posters-map","type":"single","isMap":false,"iframeUrl":"./country-posters/country-poster-wall/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/country-poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-MpUL/82/3klzGisdJDdX7UQ6z/9ZX9r6GZzoKohNHeokCEtq9bPAwqHIPTupp8DG\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"country-poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}},{"profile":"country-posters-mfe","file":"country-posters-mfe.vue","description":"Country Posters as ONE two-tab element — the countries map and the printable","element":"country-posters-mfe","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./country-posters/country-posters-mfe/index.html","scriptUrl":"./country-posters/country-posters.js","embed":{"iframe":"\u003ciframe src=\"./country-posters/country-posters-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./country-posters/country-posters.js\" integrity=\"sha384-MpUL/82/3klzGisdJDdX7UQ6z/9ZX9r6GZzoKohNHeokCEtq9bPAwqHIPTupp8DG\" crossorigin=\"anonymous\">\u003c/script>\n\u003ccountry-posters-map profile-config='{\"profile\":\"country-posters-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/country-posters-map>"}}]},{"bundle":"dashboard-plus-grid","scriptUrl":"./dashboard-plus-grid/dashboard-plus-grid.js","output":"doxa-maps/dashboard-plus-grid/dashboard-plus-grid.js","integrity":"sha384-KWYs/unuewlt9PJ4CC/VlyoghFmN4KtHqsweo68lJwUNL1g3FJ8VctASOYWAt91q","elements":["dashboard-plus-grid"],"composes":["research-dashboard","people-groups-grid"],"profiles":[{"profile":"dashboard-plus-grid","file":"dashboard-plus-grid.vue","description":"Both children are IMPORTED DIRECTLY (compiled into this ONE bundle — no runtime bundle","element":"dashboard-plus-grid","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./dashboard-plus-grid/dashboard-plus-grid/index.html","scriptUrl":"./dashboard-plus-grid/dashboard-plus-grid.js","embed":{"iframe":"\u003ciframe src=\"./dashboard-plus-grid/dashboard-plus-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./dashboard-plus-grid/dashboard-plus-grid.js\" integrity=\"sha384-KWYs/unuewlt9PJ4CC/VlyoghFmN4KtHqsweo68lJwUNL1g3FJ8VctASOYWAt91q\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdashboard-plus-grid profile-config='{\"profile\":\"dashboard-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/dashboard-plus-grid>"},"instances":[{"id":"default","title":"default","apiBaseUrl":"","props":{"profile":"dashboard-plus-grid"},"element":"dashboard-plus-grid","iframeUrl":"./dashboard-plus-grid/dashboard-plus-grid/default/index.html","embed":{"iframe":"\u003ciframe src=\"./dashboard-plus-grid/dashboard-plus-grid/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"demo-map","scriptUrl":"./demo-map/demo-map.js","output":"doxa-maps/demo-map/demo-map.js","integrity":"sha384-2ItGdUG5OW9uHN4ldNF6To6hvTy3XGdFnJrJenyyqShBjIi2NgcyXTyhYu2mttHH","elements":["demo-map"],"profiles":[{"profile":"demo-map","file":"demo-map.vue","description":"Simple two-tab demo map. Tab 1 colors pins by religion (shared","element":"demo-map","type":"parameterized","isMap":true,"iframeUrl":"./demo-map/demo-map/index.html","scriptUrl":"./demo-map/demo-map.js","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./demo-map/demo-map.js\" integrity=\"sha384-2ItGdUG5OW9uHN4ldNF6To6hvTy3XGdFnJrJenyyqShBjIi2NgcyXTyhYu2mttHH\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdemo-map profile-config='{\"profile\":\"demo-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/demo-map>"},"instances":[{"id":"maplibre","title":"Demo map — MapLibre (token-free)","apiBaseUrl":"","props":{"profile":"demo-map","provider":"maplibre","instanceId":"demo-maplibre"},"element":"demo-map","iframeUrl":"./demo-map/demo-map/maplibre/index.html","embed":{"iframe":"\u003ciframe src=\"./demo-map/demo-map/maplibre/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"demo-map"}]},{"bundle":"doxa-maps-spa","scriptUrl":"./doxa-maps-spa/doxa-maps-spa.js","output":"doxa-maps/doxa-maps-spa/doxa-maps-spa.js","integrity":"sha384-1f+/rBSGo/1jyUmRmGg34CIU/PcGkB7M3jah1DO0ocb5O0zj81wpUemXcz4WAFz8","elements":["doxa-maps-spa"],"composes":["bp-big-picture","doxa-research-map","doxa-simple-map","cities-internet-map","gospel-resources-map","my-upg-100-list-map"],"profiles":[{"profile":"doxa-maps-spa","file":"doxa-maps-spa.vue","description":"The DX-maps app itself: one element whose vertical-tab rail nests every other","element":"doxa-maps-spa","type":"nested-mfe-spa","isMap":false,"iframeUrl":"./doxa-maps-spa/doxa-maps-spa/index.html","scriptUrl":"./doxa-maps-spa/doxa-maps-spa.js","embed":{"iframe":"\u003ciframe src=\"./doxa-maps-spa/doxa-maps-spa/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-maps-spa/doxa-maps-spa.js\" integrity=\"sha384-1f+/rBSGo/1jyUmRmGg34CIU/PcGkB7M3jah1DO0ocb5O0zj81wpUemXcz4WAFz8\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-maps-spa profile-config='{\"profile\":\"doxa-maps-spa\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-maps-spa>"},"instances":[{"id":"app","title":"DX-Maps SPA — Big Picture + every research map (app-shell)","apiBaseUrl":"","props":{"profile":"doxa-maps-spa","provider":"maplibre","instanceId":"doxa-maps-spa-app","title":"DX-Maps"},"element":"doxa-maps-spa","iframeUrl":"./doxa-maps-spa/doxa-maps-spa/app/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-maps-spa/doxa-maps-spa/app/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-research-map","scriptUrl":"./doxa-research-map/doxa-research-map.js","output":"doxa-maps/doxa-research-map/doxa-research-map.js","integrity":"sha384-ycDpVdTjizEUxzsO+lQpTagpdLenXlLnvFQ/juKcWeazo2Qvo1B1QYpDxykzA9Zp","elements":["doxa-research-map"],"profiles":[{"profile":"research-map","file":"research-map.vue","description":"The researcher's workbench: every piece a missiologist, demographer or","element":"doxa-research-map","type":"monolithic","isMap":true,"iframeUrl":"./doxa-research-map/research-map/index.html","scriptUrl":"./doxa-research-map/doxa-research-map.js","embed":{"iframe":"\u003ciframe src=\"./doxa-research-map/research-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-research-map/doxa-research-map.js\" integrity=\"sha384-ycDpVdTjizEUxzsO+lQpTagpdLenXlLnvFQ/juKcWeazo2Qvo1B1QYpDxykzA9Zp\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-research-map profile-config='{\"profile\":\"research-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-research-map>"},"instances":[{"id":"maplibre","title":"Research map — MapLibre (token-free, no search bar)","apiBaseUrl":"","props":{"profile":"research-map","provider":"maplibre","instanceId":"research-map-maplibre"},"element":"doxa-research-map","iframeUrl":"./doxa-research-map/research-map/maplibre/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-research-map/research-map/maplibre/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-simple-map","scriptUrl":"./doxa-simple-map/doxa-simple-map.js","output":"doxa-maps/doxa-simple-map/doxa-simple-map.js","integrity":"sha384-8drw8bByutNX9KwjTP4nrgMqtlu7xgrqxK6ebWLh8VTWAYC39TQ3d/8qwBxhPJMC","elements":["doxa-map","doxa-simple-map"],"profiles":[{"profile":"doxa-simple-map","file":"doxa-simple-map.vue","description":"The simple world map, shipped as three presets off ONE prop table —","element":"doxa-map","type":"parameterized","isMap":true,"iframeUrl":"./doxa-simple-map/doxa-simple-map/index.html","scriptUrl":"./doxa-simple-map/doxa-simple-map.js","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-simple-map/doxa-simple-map.js\" integrity=\"sha384-8drw8bByutNX9KwjTP4nrgMqtlu7xgrqxK6ebWLh8VTWAYC39TQ3d/8qwBxhPJMC\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-map profile-config='{\"profile\":\"doxa-simple-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-map>"},"instances":[{"id":"prayer","title":"Prayer Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-prayer","dataSource":"pray-tools","tabs":[{"id":"prayer","colorStrategy":"prayer","legend":"prayer","popup":"prayer"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/prayer/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/prayer/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"engagement","title":"Engagement Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-engagement","dataSource":"pray-tools","tabs":[{"id":"engagement","colorStrategy":"engagement","legend":"engagement","popup":"engagement"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/engagement/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/engagement/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"adoption","title":"Adoption Map","apiBaseUrl":"https://pray.doxa.life","props":{"profile":"doxa-simple-map","instanceId":"embed-adoption","dataSource":"pray-tools","tabs":[{"id":"adoption","colorStrategy":"adoption","legend":"adoption","popup":"adoption"}]},"element":"doxa-map","iframeUrl":"./doxa-simple-map/doxa-simple-map/adoption/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-simple-map/doxa-simple-map/adoption/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"doxa-vision-card","scriptUrl":"./doxa-vision-card/doxa-vision-card.js","output":"doxa-maps/doxa-vision-card/doxa-vision-card.js","integrity":"sha384-2mza3cltN5LQQIrlENG/IVL6Icd9zzcFve3E8R8VWuCdYOGW9uGKFvxcbu6eFfwn","elements":["doxa-vision-card"],"profiles":[{"profile":"doxa-vision-card","file":"doxa-vision-card.vue","description":"The Capability-1 example: ONE folder -> ONE bundle -> ONE element.","element":"doxa-vision-card","type":"parameterized","isMap":false,"iframeUrl":"./doxa-vision-card/doxa-vision-card/index.html","scriptUrl":"./doxa-vision-card/doxa-vision-card.js","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./doxa-vision-card/doxa-vision-card.js\" integrity=\"sha384-2mza3cltN5LQQIrlENG/IVL6Icd9zzcFve3E8R8VWuCdYOGW9uGKFvxcbu6eFfwn\" crossorigin=\"anonymous\">\u003c/script>\n\u003cdoxa-vision-card profile-config='{\"profile\":\"doxa-vision-card\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/doxa-vision-card>"},"instances":[{"id":"default","title":"Vision card — reach at a glance","apiBaseUrl":"","props":{"profile":"doxa-vision-card","provider":"maplibre","instanceId":"vision-card-default"},"element":"doxa-vision-card","iframeUrl":"./doxa-vision-card/doxa-vision-card/default/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"frontier","title":"Vision card — frontier accent","apiBaseUrl":"","props":{"profile":"doxa-vision-card","provider":"maplibre","instanceId":"vision-card-frontier","accent":"#22d3ee","title":"The last frontier of the gospel.","tagline":"Frontier people groups — where fewer than one in a thousand follow Jesus.","stats":[{"value":"1,910","label":"Frontier groups","note":"under 0.1% believers"},{"value":"2.1B","label":"People","note":"living in frontier settings"},{"value":"0.1%","label":"Christian","note":"or fewer, in each group"}]},"element":"doxa-vision-card","iframeUrl":"./doxa-vision-card/doxa-vision-card/frontier/index.html","embed":{"iframe":"\u003ciframe src=\"./doxa-vision-card/doxa-vision-card/frontier/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}],"bundle":"doxa-vision-card"}]},{"bundle":"golden-path-check","scriptUrl":"./golden-path-check/golden-path-check.js","output":"doxa-maps/golden-path-check/golden-path-check.js","integrity":"sha384-1V/sT5SkV0U9yTCK9ELIOFfU1ZIJkInIF6nG3UllJ4dxax3RsEAupSGLJEFK6e14","elements":["golden-path-check"],"profiles":[{"profile":"golden-path-check","file":"golden-path-check.vue","description":"A live self-test of the develop-a-plugin-and-see-it-live path: it reads the built","element":"golden-path-check","type":"single","isMap":false,"iframeUrl":"./golden-path-check/golden-path-check/index.html","scriptUrl":"./golden-path-check/golden-path-check.js","embed":{"iframe":"\u003ciframe src=\"./golden-path-check/golden-path-check/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./golden-path-check/golden-path-check.js\" integrity=\"sha384-1V/sT5SkV0U9yTCK9ELIOFfU1ZIJkInIF6nG3UllJ4dxax3RsEAupSGLJEFK6e14\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgolden-path-check profile-config='{\"profile\":\"golden-path-check\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/golden-path-check>"}}]},{"bundle":"gospel-resources","scriptUrl":"./gospel-resources/gospel-resources.js","output":"doxa-maps/gospel-resources/gospel-resources.js","integrity":"sha384-XgF3DvRZEHIzZxcUqixiOsEk5bh6vIpwP7Drf9fBYy9F9cB7bp3NP2G2E56pPGt0","elements":["gospel-resources-map"],"profiles":[{"profile":"charts","file":"charts.vue","description":"The gap by LANGUAGE (ISO 639-3) rather than by people group — because one translation serves every","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/charts/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/charts/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-XgF3DvRZEHIzZxcUqixiOsEk5bh6vIpwP7Drf9fBYy9F9cB7bp3NP2G2E56pPGt0\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"charts\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"data-tables","file":"data-tables.vue","description":"Two validated tables: what resources exist per people group, and whether that access is keeping","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/data-tables/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-XgF3DvRZEHIzZxcUqixiOsEk5bh6vIpwP7Drf9fBYy9F9cB7bp3NP2G2E56pPGt0\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"resources-list","file":"resources-list.vue","description":"Which DX people groups have scripture in their own language, and which have none. The zero-resource","element":"gospel-resources-map","type":"single","isMap":false,"iframeUrl":"./gospel-resources/resources-list/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/resources-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-XgF3DvRZEHIzZxcUqixiOsEk5bh6vIpwP7Drf9fBYy9F9cB7bp3NP2G2E56pPGt0\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"resources-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}},{"profile":"resources-map","file":"resources-map.vue","description":"Every country shaded by how much of its unengaged population has NO gospel resource in their own","element":"gospel-resources-map","type":"single","isMap":true,"iframeUrl":"./gospel-resources/resources-map/index.html","scriptUrl":"./gospel-resources/gospel-resources.js","embed":{"iframe":"\u003ciframe src=\"./gospel-resources/resources-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-XgF3DvRZEHIzZxcUqixiOsEk5bh6vIpwP7Drf9fBYy9F9cB7bp3NP2G2E56pPGt0\" crossorigin=\"anonymous\">\u003c/script>\n\u003cgospel-resources-map profile-config='{\"profile\":\"resources-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/gospel-resources-map>"}}]},{"bundle":"my-upg-100-list","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","output":"doxa-maps/my-upg-100-list/my-upg-100-list.js","integrity":"sha384-Ej+g06Za6ycJVU7jiduRD2BxYmc5BVxj+CgbSilao4zU2CvutTxaX910/k6p033g","elements":["my-upg-100-list-map"],"composes":["my-upg-100-list/upg-100-list","my-upg-100-list/poster-wall"],"profiles":[{"profile":"poster-wall","file":"poster-wall.vue","description":"A wall of printable poster cards, one per 100-list entry, each with a \"Show on map\" action that","element":"my-upg-100-list-map","type":"single","isMap":true,"iframeUrl":"./my-upg-100-list/poster-wall/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-Ej+g06Za6ycJVU7jiduRD2BxYmc5BVxj+CgbSilao4zU2CvutTxaX910/k6p033g\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}},{"profile":"upg-100-list","file":"upg-100-list.vue","description":"A personal unreached-people-groups list painted as true boundary polygons —","element":"my-upg-100-list-map","type":"single","isMap":true,"iframeUrl":"./my-upg-100-list/upg-100-list/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/upg-100-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-Ej+g06Za6ycJVU7jiduRD2BxYmc5BVxj+CgbSilao4zU2CvutTxaX910/k6p033g\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"upg-100-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}},{"profile":"upg-100-mfe","file":"upg-100-mfe.vue","description":"The standalone, shareable and embeddable composite of the my-upg-100-list family — it nests the map","element":"my-upg-100-list-map","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./my-upg-100-list/upg-100-mfe/index.html","scriptUrl":"./my-upg-100-list/my-upg-100-list.js","embed":{"iframe":"\u003ciframe src=\"./my-upg-100-list/upg-100-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-Ej+g06Za6ycJVU7jiduRD2BxYmc5BVxj+CgbSilao4zU2CvutTxaX910/k6p033g\" crossorigin=\"anonymous\">\u003c/script>\n\u003cmy-upg-100-list-map profile-config='{\"profile\":\"upg-100-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/my-upg-100-list-map>"}}]},{"bundle":"people-groups-grid","scriptUrl":"./people-groups-grid/people-groups-grid.js","output":"doxa-maps/people-groups-grid/people-groups-grid.js","integrity":"sha384-ss5PmeSkKuxafBwvxZG3r7roP0OB/oVGwFbfrHnydEhjbtrlB4eisdsPXEyCJF37","elements":["people-groups-grid"],"profiles":[{"profile":"people-groups-grid","file":"people-groups-grid.vue","description":"The people-groups grid as an owned custom element: card list, search and four","element":"people-groups-grid","type":"parameterized","isMap":false,"iframeUrl":"./people-groups-grid/people-groups-grid/index.html","scriptUrl":"./people-groups-grid/people-groups-grid.js","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./people-groups-grid/people-groups-grid.js\" integrity=\"sha384-ss5PmeSkKuxafBwvxZG3r7roP0OB/oVGwFbfrHnydEhjbtrlB4eisdsPXEyCJF37\" crossorigin=\"anonymous\">\u003c/script>\n\u003cpeople-groups-grid profile-config='{\"profile\":\"people-groups-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/people-groups-grid>"},"instances":[{"id":"people-groups-grid","title":"People Groups Grid — standalone (own search + 4 dropdowns)","apiBaseUrl":"","props":{"profile":"people-groups-grid","provider":"maplibre","instanceId":"people-groups-grid","pray-base-url":"https://pray.doxa.life"},"element":"people-groups-grid","iframeUrl":"./people-groups-grid/people-groups-grid/people-groups-grid/index.html","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/people-groups-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"driven","title":"People Groups Grid — externally driven (controls off, props/events)","apiBaseUrl":"","props":{"profile":"people-groups-grid","provider":"maplibre","instanceId":"people-groups-grid-driven","pray-base-url":"https://pray.doxa.life","show-search":"false","show-filters":"false"},"element":"people-groups-grid","iframeUrl":"./people-groups-grid/people-groups-grid/driven/index.html","embed":{"iframe":"\u003ciframe src=\"./people-groups-grid/people-groups-grid/driven/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"plugin-studio","scriptUrl":"./plugin-studio/plugin-studio.js","output":"doxa-maps/plugin-studio/plugin-studio.js","integrity":"sha384-2RlLFRU2XdjBN7w+FPguj8INgj57JFg4IFT2AmdefGnR9QQLehbiiAffV45LcsFH","elements":["plugin-studio"],"composes":["bp-big-picture","people-groups-grid","doxa-research-map","doxa-simple-map","cities-internet-map","gospel-resources-map","my-upg-100-list-map","doxa-vision-card","all-people-groups","research-dashboard"],"profiles":[{"profile":"plugin-studio","file":"plugin-studio.vue","description":"The developer's viewing surface: a sidebar that is the composability ladder","element":"plugin-studio","type":"nested-mfe-spa","isMap":false,"iframeUrl":"./plugin-studio/plugin-studio/index.html","scriptUrl":"./plugin-studio/plugin-studio.js","embed":{"iframe":"\u003ciframe src=\"./plugin-studio/plugin-studio/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./plugin-studio/plugin-studio.js\" integrity=\"sha384-2RlLFRU2XdjBN7w+FPguj8INgj57JFg4IFT2AmdefGnR9QQLehbiiAffV45LcsFH\" crossorigin=\"anonymous\">\u003c/script>\n\u003cplugin-studio profile-config='{\"profile\":\"plugin-studio\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/plugin-studio>"},"instances":[{"id":"studio","title":"Plugin Studio — every element by capability 5 -> 1 (developer studio)","apiBaseUrl":"","props":{"profile":"plugin-studio","provider":"maplibre","instanceId":"plugin-studio","title":"Plugin Studio"},"element":"plugin-studio","iframeUrl":"./plugin-studio/plugin-studio/studio/index.html","embed":{"iframe":"\u003ciframe src=\"./plugin-studio/plugin-studio/studio/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"prayer-walk-planner","scriptUrl":"./prayer-walk-planner/prayer-walk-planner.js","output":"doxa-maps/prayer-walk-planner/prayer-walk-planner.js","integrity":"sha384-F0+r4avX8xkXp0hBpU5EBPU0InMRCObIn2Ieh9HJNn1r2amk8/qHmJ68WuNfsirC","elements":["prayer-walk-planner"],"profiles":[{"profile":"prayer-walk-planner","file":"prayer-walk-planner.vue","description":"A simple polygon-drawing tool for planning prayer-walking routes.","element":"prayer-walk-planner","type":"single","isMap":true,"iframeUrl":"./prayer-walk-planner/prayer-walk-planner/index.html","scriptUrl":"./prayer-walk-planner/prayer-walk-planner.js","embed":{"iframe":"\u003ciframe src=\"./prayer-walk-planner/prayer-walk-planner/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./prayer-walk-planner/prayer-walk-planner.js\" integrity=\"sha384-F0+r4avX8xkXp0hBpU5EBPU0InMRCObIn2Ieh9HJNn1r2amk8/qHmJ68WuNfsirC\" crossorigin=\"anonymous\">\u003c/script>\n\u003cprayer-walk-planner profile-config='{\"profile\":\"prayer-walk-planner\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/prayer-walk-planner>"}}]},{"bundle":"regions-dashboard","scriptUrl":"./regions-dashboard/regions-dashboard.js","output":"doxa-maps/regions-dashboard/regions-dashboard.js","integrity":"sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix","elements":["regions-dashboard"],"composes":["regions-dashboard/regions-list","regions-dashboard/region-dashboards"],"profiles":[{"profile":"region-dashboards","file":"region-dashboards.vue","description":"The dashboard half of the Driver's 2-tab Regions element: given a region (or a","element":"regions-dashboard","type":"single","isMap":true,"iframeUrl":"./regions-dashboard/region-dashboards/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/region-dashboards/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"region-dashboards\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}},{"profile":"regions-list","file":"regions-list.vue","description":"A refactor of DX-life's /regions index page (app/pages/regions/index.vue) into","element":"regions-dashboard","type":"single","isMap":true,"iframeUrl":"./regions-dashboard/regions-list/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/regions-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"regions-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}},{"profile":"regions-mfe","file":"regions-mfe.vue","description":"The composite the Driver asked for: ONE element carrying the SELECT VIEW switcher","element":"regions-dashboard","type":"nested-elements-mfe","isMap":true,"iframeUrl":"./regions-dashboard/regions-mfe/index.html","scriptUrl":"./regions-dashboard/regions-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./regions-dashboard/regions-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-tj7QLhUCvAluRlp9Bp2ddjbXLcknRx2v1nMotvvY8XKImLplx6WkSdHh5MQC1Rix\" crossorigin=\"anonymous\">\u003c/script>\n\u003cregions-dashboard profile-config='{\"profile\":\"regions-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/regions-dashboard>"}}]},{"bundle":"research-dashboard","scriptUrl":"./research-dashboard/research-dashboard.js","output":"doxa-maps/research-dashboard/research-dashboard.js","integrity":"sha384-60D2NR4qeGMpN3QBUP2aTS2Ay90/Qqka2PiJQR12HoyewjpUeJXWDV3qihflLQGX","elements":["research-dashboard-map"],"profiles":[{"profile":"research-dashboard","file":"research-dashboard.vue","description":"Coordinated-Multiple-Views research dashboard for 10/40-window UPGs (live pray.doxa.life): docked facet rail + map-as-hero + linked table/charts, brushing-and-linking over one in-memory store.","element":"research-dashboard-map","type":"monolithic","isMap":true,"iframeUrl":"./research-dashboard/research-dashboard/index.html","scriptUrl":"./research-dashboard/research-dashboard.js","embed":{"iframe":"\u003ciframe src=\"./research-dashboard/research-dashboard/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./research-dashboard/research-dashboard.js\" integrity=\"sha384-60D2NR4qeGMpN3QBUP2aTS2Ay90/Qqka2PiJQR12HoyewjpUeJXWDV3qihflLQGX\" crossorigin=\"anonymous\">\u003c/script>\n\u003cresearch-dashboard-map profile-config='{\"profile\":\"research-dashboard\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/research-dashboard-map>"},"bundle":"research-dashboard"}]},{"bundle":"research-map-plus-grid","scriptUrl":"./research-map-plus-grid/research-map-plus-grid.js","output":"doxa-maps/research-map-plus-grid/research-map-plus-grid.js","integrity":"sha384-sOkaMV0UFr2uNXfoJpRvaD+gHD6xFlkmpR7MzEwwFdarYdid8aN9Nj1Y8TqQJuFo","elements":["research-map-plus-grid"],"composes":["doxa-research-map","people-groups-grid"],"profiles":[{"profile":"research-map-plus-grid","file":"research-map-plus-grid.vue","description":"The monolithic 7-tab research map (cap-3) on top, the People Groups grid beneath,","element":"research-map-plus-grid","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./research-map-plus-grid/research-map-plus-grid/index.html","scriptUrl":"./research-map-plus-grid/research-map-plus-grid.js","embed":{"iframe":"\u003ciframe src=\"./research-map-plus-grid/research-map-plus-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./research-map-plus-grid/research-map-plus-grid.js\" integrity=\"sha384-sOkaMV0UFr2uNXfoJpRvaD+gHD6xFlkmpR7MzEwwFdarYdid8aN9Nj1Y8TqQJuFo\" crossorigin=\"anonymous\">\u003c/script>\n\u003cresearch-map-plus-grid profile-config='{\"profile\":\"research-map-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/research-map-plus-grid>"},"instances":[{"id":"default","title":"default","apiBaseUrl":"","props":{"profile":"research-map-plus-grid"},"element":"research-map-plus-grid","iframeUrl":"./research-map-plus-grid/research-map-plus-grid/default/index.html","embed":{"iframe":"\u003ciframe src=\"./research-map-plus-grid/research-map-plus-grid/default/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"stack-demo","scriptUrl":"./stack-demo/stack-demo.js","output":"doxa-maps/stack-demo/stack-demo.js","integrity":"sha384-gnwM6s+puf1K60Nl7crQcC2QC+9BxwpkaTx4OepLZ8VUCraZc+aRlWpsb6nj6Gyf","elements":["stack-demo"],"composes":["research-dashboard-map","people-groups-grid"],"profiles":[{"profile":"stack-demo","file":"stack-demo.vue","description":"Groups TWO independent elements TOP-TO-BOTTOM so you can embed the pair on a page and","element":"stack-demo","type":"nested-elements-mfe","isMap":false,"iframeUrl":"./stack-demo/stack-demo/index.html","scriptUrl":"./stack-demo/stack-demo.js","embed":{"iframe":"\u003ciframe src=\"./stack-demo/stack-demo/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./stack-demo/stack-demo.js\" integrity=\"sha384-gnwM6s+puf1K60Nl7crQcC2QC+9BxwpkaTx4OepLZ8VUCraZc+aRlWpsb6nj6Gyf\" crossorigin=\"anonymous\">\u003c/script>\n\u003cstack-demo profile-config='{\"profile\":\"stack-demo\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/stack-demo>"},"instances":[{"id":"pair","title":"pair","apiBaseUrl":"","props":{"profile":"stack-demo"},"element":"stack-demo","iframeUrl":"./stack-demo/stack-demo/pair/index.html","embed":{"iframe":"\u003ciframe src=\"./stack-demo/stack-demo/pair/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]},{"bundle":"template-bundle","scriptUrl":"./template-bundle/template-bundle.js","output":"doxa-maps/template-bundle/template-bundle.js","integrity":"sha384-6SGiWbRI14LXEIhcKTQ3rZPX2ZLKlxaBBZkrnWx4zNsgG5J0l2MxdeI8Fbf0O5R3","elements":["template-bundle"],"profiles":[{"profile":"template-map-a","file":"template-map-a.vue","description":"Minimal example profile A — a colored placeholder, no Mapbox or data.","element":"template-bundle","type":"single","isMap":false,"iframeUrl":"./template-bundle/template-map-a/index.html","scriptUrl":"./template-bundle/template-bundle.js","embed":{"iframe":"\u003ciframe src=\"./template-bundle/template-map-a/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./template-bundle/template-bundle.js\" integrity=\"sha384-6SGiWbRI14LXEIhcKTQ3rZPX2ZLKlxaBBZkrnWx4zNsgG5J0l2MxdeI8Fbf0O5R3\" crossorigin=\"anonymous\">\u003c/script>\n\u003ctemplate-bundle profile-config='{\"profile\":\"template-map-a\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/template-bundle>"},"bundle":"template-bundle"},{"profile":"template-map-b","file":"template-map-b.vue","description":"Minimal example profile B — a second profile in the same bundle.","element":"template-bundle","type":"single","isMap":false,"iframeUrl":"./template-bundle/template-map-b/index.html","scriptUrl":"./template-bundle/template-bundle.js","embed":{"iframe":"\u003ciframe src=\"./template-bundle/template-map-b/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./template-bundle/template-bundle.js\" integrity=\"sha384-6SGiWbRI14LXEIhcKTQ3rZPX2ZLKlxaBBZkrnWx4zNsgG5J0l2MxdeI8Fbf0O5R3\" crossorigin=\"anonymous\">\u003c/script>\n\u003ctemplate-bundle profile-config='{\"profile\":\"template-map-b\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/template-bundle>"},"bundle":"template-bundle"}]},{"bundle":"upg-neighbor","scriptUrl":"./upg-neighbor/upg-neighbor.js","output":"doxa-maps/upg-neighbor/upg-neighbor.js","integrity":"sha384-JDJr4qoVZuiSi/rvgdzeuUNrzf7vjPdyh/g8dg7X8RHkZk/Y+tYXIQ3gpEzrU07q","elements":["upg-neighbor"],"profiles":[{"profile":"upg-neighbor","file":"upg-neighbor.vue","description":"Rescues the five pre-bundler experimental maps that live inside the legacy","element":"upg-neighbor","type":"parameterized","isMap":false,"iframeUrl":"./upg-neighbor/upg-neighbor/index.html","scriptUrl":"./upg-neighbor/upg-neighbor.js","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>","script":"\u003cscript>window.MAP_APP_API_URL=\"https://pray.doxa.life\";\u003c/script>\n\u003cscript src=\"./upg-neighbor/upg-neighbor.js\" integrity=\"sha384-JDJr4qoVZuiSi/rvgdzeuUNrzf7vjPdyh/g8dg7X8RHkZk/Y+tYXIQ3gpEzrU07q\" crossorigin=\"anonymous\">\u003c/script>\n\u003cupg-neighbor profile-config='{\"profile\":\"upg-neighbor\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'>\u003c/upg-neighbor>"},"instances":[{"id":"send-map","title":"Send Map (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"send-map","legacyTitle":"Send Map"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/send-map/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/send-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"upg-neighbors","title":"UPG Neighbors (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"upg-neighbors","legacyTitle":"UPG Neighbors"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/upg-neighbors/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/upg-neighbors/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"lang-cluster","title":"Language Clusters (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"lang-cluster","legacyTitle":"Language Clusters"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/lang-cluster/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/lang-cluster/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"bloom-cockpit","title":"Bloom Cockpit (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"bloom-cockpit","legacyTitle":"Bloom Cockpit"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/bloom-cockpit/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/bloom-cockpit/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}},{"id":"flower-mesh","title":"Flower Mesh (legacy)","apiBaseUrl":"","props":{"profile":"upg-neighbor","legacyElement":"flower-mesh","legacyTitle":"Flower Mesh"},"element":"upg-neighbor","iframeUrl":"./upg-neighbor/upg-neighbor/flower-mesh/index.html","embed":{"iframe":"\u003ciframe src=\"./upg-neighbor/upg-neighbor/flower-mesh/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen>\u003c/iframe>"}}]}]}]}; \n\n" + "script": "\n\n" } }, { @@ -692,7 +692,7 @@ "scriptUrl": "./my-upg-100-list/my-upg-100-list.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } }, { @@ -706,7 +706,7 @@ "scriptUrl": "./my-upg-100-list/my-upg-100-list.js", "embed": { "iframe": "", - "script": "\n\n" + "script": "\n\n" } } ] diff --git a/public/doxa-maps/my-upg-100-list/my-upg-100-list.js b/public/doxa-maps/my-upg-100-list/my-upg-100-list.js index d82dc0085..bf1d120b6 100644 --- a/public/doxa-maps/my-upg-100-list/my-upg-100-list.js +++ b/public/doxa-maps/my-upg-100-list/my-upg-100-list.js @@ -1,46 +1,46 @@ -(function(){"use strict";var _p;var cn=typeof document<"u"?document.currentScript:null;const Vx="modulepreload",Wx=function(e){return"/"+e},Yx={},to=function(t,o,n){let a=Promise.resolve();function r(s){const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=s,window.dispatchEvent(i),!i.defaultPrevented)throw s}return a.then(s=>{for(const i of s||[])i.status==="rejected"&&r(i.reason);return t().catch(r)})};/** +(function(){"use strict";var xp;var ln=typeof document<"u"?document.currentScript:null;const Yx="modulepreload",qx=function(e){return"/"+e},Jx={},Kt=function(t,o,n){let a=Promise.resolve();function r(s){const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=s,window.dispatchEvent(i),!i.defaultPrevented)throw s}return a.then(s=>{for(const i of s||[])i.status==="rejected"&&r(i.reason);return t().catch(r)})};/** * @vue/shared v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/function Nr(e){const t=Object.create(null);for(const o of e.split(","))t[o]=1;return o=>o in t}const et={},un=[],oo=()=>{},Li=()=>!1,ka=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),wa=e=>e.startsWith("onUpdate:"),dt=Object.assign,Rr=(e,t)=>{const o=e.indexOf(t);o>-1&&e.splice(o,1)},Ap=Object.prototype.hasOwnProperty,Ve=(e,t)=>Ap.call(e,t),xe=Array.isArray,No=e=>Fn(e)==="[object Map]",Wo=e=>Fn(e)==="[object Set]",Ti=e=>Fn(e)==="[object Date]",$e=e=>typeof e=="function",tt=e=>typeof e=="string",Gt=e=>typeof e=="symbol",Ye=e=>e!==null&&typeof e=="object",Pi=e=>(Ye(e)||$e(e))&&$e(e.then)&&$e(e.catch),Mi=Object.prototype.toString,Fn=e=>Mi.call(e),Sp=e=>Fn(e).slice(8,-1),xa=e=>Fn(e)==="[object Object]",Aa=e=>tt(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Dn=Nr(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Sa=e=>{const t=Object.create(null);return o=>t[o]||(t[o]=e(o))},$p=/-\w/g,_t=Sa(e=>e.replace($p,t=>t.slice(1).toUpperCase())),Ep=/\B([A-Z])/g,jt=Sa(e=>e.replace(Ep,"-$1").toLowerCase()),$a=Sa(e=>e.charAt(0).toUpperCase()+e.slice(1)),Ir=Sa(e=>e?`on${$a(e)}`:""),no=(e,t)=>!Object.is(e,t),Ea=(e,...t)=>{for(let o=0;o{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:n,value:o})},Ca=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Ri=e=>{const t=tt(e)?Number(e):NaN;return isNaN(t)?e:t};let Ii;const La=()=>Ii||(Ii=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function rt(e){if(xe(e)){const t={};for(let o=0;o{if(o){const n=o.split(Lp);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function Ne(e){let t="";if(tt(e))t=e;else if(xe(e))for(let o=0;oRo(o,t))}const Di=e=>!!(e&&e.__v_isRef===!0),pe=e=>tt(e)?e:e==null?"":xe(e)||Ye(e)&&(e.toString===Mi||!$e(e.toString))?Di(e)?pe(e.value):JSON.stringify(e,Bi,2):String(e),Bi=(e,t)=>Di(t)?Bi(e,t.value):No(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((o,[n,a],r)=>(o[Or(n,r)+" =>"]=a,o),{})}:Wo(t)?{[`Set(${t.size})`]:[...t.values()].map(o=>Or(o))}:Gt(t)?Or(t):Ye(t)&&!xe(t)&&!xa(t)?String(t):t,Or=(e,t="")=>{var o;return Gt(e)?`Symbol(${(o=e.description)!=null?o:t})`:e};/** +**/function Rr(e){const t=Object.create(null);for(const o of e.split(","))t[o]=1;return o=>o in t}const Ze={},cn=[],eo=()=>{},Mi=()=>!1,ka=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),wa=e=>e.startsWith("onUpdate:"),lt=Object.assign,Ir=(e,t)=>{const o=e.indexOf(t);o>-1&&e.splice(o,1)},Cp=Object.prototype.hasOwnProperty,ze=(e,t)=>Cp.call(e,t),xe=Array.isArray,Mo=e=>Fn(e)==="[object Map]",Vo=e=>Fn(e)==="[object Set]",Ni=e=>Fn(e)==="[object Date]",Ee=e=>typeof e=="function",Qe=e=>typeof e=="string",Dt=e=>typeof e=="symbol",Ye=e=>e!==null&&typeof e=="object",Ri=e=>(Ye(e)||Ee(e))&&Ee(e.then)&&Ee(e.catch),Ii=Object.prototype.toString,Fn=e=>Ii.call(e),Lp=e=>Fn(e).slice(8,-1),xa=e=>Fn(e)==="[object Object]",Aa=e=>Qe(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Dn=Rr(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Sa=e=>{const t=Object.create(null);return o=>t[o]||(t[o]=e(o))},Tp=/-\w/g,_t=Sa(e=>e.replace(Tp,t=>t.slice(1).toUpperCase())),Pp=/\B([A-Z])/g,Bt=Sa(e=>e.replace(Pp,"-$1").toLowerCase()),$a=Sa(e=>e.charAt(0).toUpperCase()+e.slice(1)),Or=Sa(e=>e?`on${$a(e)}`:""),to=(e,t)=>!Object.is(e,t),Ea=(e,...t)=>{for(let o=0;o{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:n,value:o})},Ca=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Fi=e=>{const t=Qe(e)?Number(e):NaN;return isNaN(t)?e:t};let Di;const La=()=>Di||(Di=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function nt(e){if(xe(e)){const t={};for(let o=0;o{if(o){const n=o.split(Np);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function Ne(e){let t="";if(Qe(e))t=e;else if(xe(e))for(let o=0;oNo(o,t))}const ji=e=>!!(e&&e.__v_isRef===!0),pe=e=>Qe(e)?e:e==null?"":xe(e)||Ye(e)&&(e.toString===Ii||!Ee(e.toString))?ji(e)?pe(e.value):JSON.stringify(e,Ui,2):String(e),Ui=(e,t)=>ji(t)?Ui(e,t.value):Mo(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((o,[n,a],r)=>(o[Fr(n,r)+" =>"]=a,o),{})}:Vo(t)?{[`Set(${t.size})`]:[...t.values()].map(o=>Fr(o))}:Dt(t)?Fr(t):Ye(t)&&!xe(t)&&!xa(t)?String(t):t,Fr=(e,t="")=>{var o;return Dt(e)?`Symbol(${(o=e.description)!=null?o:t})`:e};/** * @vue/reactivity v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let ht;class Gi{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!t&&ht&&(ht.active?(this.parent=ht,this.index=(ht.scopes||(ht.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,o;if(this.scopes){const n=this.scopes.slice();for(t=0,o=n.length;t0&&--this._on===0){if(ht===this)ht=this.prevScope;else{let t=ht;for(;t;){if(t.prevScope===this){t.prevScope=this.prevScope;break}t=t.prevScope}}this.prevScope=void 0}}stop(t){if(this._active){this._active=!1;let o,n;for(o=0,n=this.effects.length;o0)return;if(Gn){let t=Gn;for(Gn=void 0;t;){const o=t.next;t.next=void 0,t.flags&=-9,t=o}}let e;for(;Bn;){let t=Bn;for(Bn=void 0;t;){const o=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(n){e||(e=n)}t=o}}if(e)throw e}function Hi(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Vi(e){let t,o=e.depsTail,n=o;for(;n;){const a=n.prevDep;n.version===-1?(n===o&&(o=a),Ur(n),Op(n)):t=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=a}e.deps=t,e.depsTail=o}function jr(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Wi(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Wi(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===jn)||(e.globalVersion=jn,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!jr(e))))return;e.flags|=2;const t=e.dep,o=ot,n=Yt;ot=e,Yt=!0;try{Hi(e);const a=e.fn(e._value);(t.version===0||no(a,e._value))&&(e.flags|=128,e._value=a,t.version++)}catch(a){throw t.version++,a}finally{ot=o,Yt=n,Vi(e),e.flags&=-3}}function Ur(e,t=!1){const{dep:o,prevSub:n,nextSub:a}=e;if(n&&(n.nextSub=a,e.prevSub=void 0),a&&(a.prevSub=n,e.nextSub=void 0),o.subs===e&&(o.subs=n,!n&&o.computed)){o.computed.flags&=-5;for(let r=o.computed.deps;r;r=r.nextDep)Ur(r,!0)}!t&&!--o.sc&&o.map&&o.map.delete(o.key)}function Op(e){const{prevDep:t,nextDep:o}=e;t&&(t.nextDep=o,e.prevDep=void 0),o&&(o.prevDep=t,e.nextDep=void 0)}let Yt=!0;const Yi=[];function ao(){Yi.push(Yt),Yt=!1}function ro(){const e=Yi.pop();Yt=e===void 0?!0:e}function qi(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const o=ot;ot=void 0;try{t()}finally{ot=o}}}let jn=0;class Fp{constructor(t,o){this.sub=t,this.dep=o,this.version=o.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class Kr{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!ot||!Yt||ot===this.computed)return;let o=this.activeLink;if(o===void 0||o.sub!==ot)o=this.activeLink=new Fp(ot,this),ot.deps?(o.prevDep=ot.depsTail,ot.depsTail.nextDep=o,ot.depsTail=o):ot.deps=ot.depsTail=o,Ji(o);else if(o.version===-1&&(o.version=this.version,o.nextDep)){const n=o.nextDep;n.prevDep=o.prevDep,o.prevDep&&(o.prevDep.nextDep=n),o.prevDep=ot.depsTail,o.nextDep=void 0,ot.depsTail.nextDep=o,ot.depsTail=o,ot.deps===o&&(ot.deps=n)}return o}trigger(t){this.version++,jn++,this.notify(t)}notify(t){Br();try{for(let o=this.subs;o;o=o.prevSub)o.sub.notify()&&o.sub.dep.notify()}finally{Gr()}}}function Ji(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let n=t.deps;n;n=n.nextDep)Ji(n)}const o=e.dep.subs;o!==e&&(e.prevSub=o,o&&(o.nextSub=e)),e.dep.subs=e}}const Ta=new WeakMap,Yo=Symbol(""),zr=Symbol(""),Un=Symbol("");function Pt(e,t,o){if(Yt&&ot){let n=Ta.get(e);n||Ta.set(e,n=new Map);let a=n.get(o);a||(n.set(o,a=new Kr),a.map=n,a.key=o),a.track()}}function yo(e,t,o,n,a,r){const s=Ta.get(e);if(!s){jn++;return}const i=l=>{l&&l.trigger()};if(Br(),t==="clear")s.forEach(i);else{const l=xe(e),u=l&&Aa(o);if(l&&o==="length"){const c=Number(n);s.forEach((p,g)=>{(g==="length"||g===Un||!Gt(g)&&g>=c)&&i(p)})}else switch((o!==void 0||s.has(void 0))&&i(s.get(o)),u&&i(s.get(Un)),t){case"add":l?u&&i(s.get("length")):(i(s.get(Yo)),No(e)&&i(s.get(zr)));break;case"delete":l||(i(s.get(Yo)),No(e)&&i(s.get(zr)));break;case"set":No(e)&&i(s.get(Yo));break}}Gr()}function Dp(e,t){const o=Ta.get(e);return o&&o.get(t)}function dn(e){const t=Be(e);return t===e?t:(Pt(t,"iterate",Un),Ut(e)?t:t.map(qt))}function Pa(e){return Pt(e=Be(e),"iterate",Un),e}function so(e,t){return ko(e)?gn(vo(e)?qt(t):t):qt(t)}const Bp={__proto__:null,[Symbol.iterator](){return Hr(this,Symbol.iterator,e=>so(this,e))},concat(...e){return dn(this).concat(...e.map(t=>xe(t)?dn(t):t))},entries(){return Hr(this,"entries",e=>(e[1]=so(this,e[1]),e))},every(e,t){return _o(this,"every",e,t,void 0,arguments)},filter(e,t){return _o(this,"filter",e,t,o=>o.map(n=>so(this,n)),arguments)},find(e,t){return _o(this,"find",e,t,o=>so(this,o),arguments)},findIndex(e,t){return _o(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return _o(this,"findLast",e,t,o=>so(this,o),arguments)},findLastIndex(e,t){return _o(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return _o(this,"forEach",e,t,void 0,arguments)},includes(...e){return Vr(this,"includes",e)},indexOf(...e){return Vr(this,"indexOf",e)},join(e){return dn(this).join(e)},lastIndexOf(...e){return Vr(this,"lastIndexOf",e)},map(e,t){return _o(this,"map",e,t,void 0,arguments)},pop(){return Kn(this,"pop")},push(...e){return Kn(this,"push",e)},reduce(e,...t){return Xi(this,"reduce",e,t)},reduceRight(e,...t){return Xi(this,"reduceRight",e,t)},shift(){return Kn(this,"shift")},some(e,t){return _o(this,"some",e,t,void 0,arguments)},splice(...e){return Kn(this,"splice",e)},toReversed(){return dn(this).toReversed()},toSorted(e){return dn(this).toSorted(e)},toSpliced(...e){return dn(this).toSpliced(...e)},unshift(...e){return Kn(this,"unshift",e)},values(){return Hr(this,"values",e=>so(this,e))}};function Hr(e,t,o){const n=Pa(e),a=n[t]();return n!==e&&!Ut(e)&&(a._next=a.next,a.next=()=>{const r=a._next();return r.done||(r.value=o(r.value)),r}),a}const Gp=Array.prototype;function _o(e,t,o,n,a,r){const s=Pa(e),i=s!==e&&!Ut(e),l=s[t];if(l!==Gp[t]){const p=l.apply(e,r);return i?qt(p):p}let u=o;s!==e&&(i?u=function(p,g){return o.call(this,so(e,p),g,e)}:o.length>2&&(u=function(p,g){return o.call(this,p,g,e)}));const c=l.call(s,u,n);return i&&a?a(c):c}function Xi(e,t,o,n){const a=Pa(e),r=a!==e&&!Ut(e);let s=o,i=!1;a!==e&&(r?(i=n.length===0,s=function(u,c,p){return i&&(i=!1,u=so(e,u)),o.call(this,u,so(e,c),p,e)}):o.length>3&&(s=function(u,c,p){return o.call(this,u,c,p,e)}));const l=a[t](s,...n);return i?so(e,l):l}function Vr(e,t,o){const n=Be(e);Pt(n,"iterate",Un);const a=n[t](...o);return(a===-1||a===!1)&&Oa(o[0])?(o[0]=Be(o[0]),n[t](...o)):a}function Kn(e,t,o=[]){ao(),Br();const n=Be(e)[t].apply(e,o);return Gr(),ro(),n}const jp=Nr("__proto__,__v_isRef,__isVue"),Zi=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Gt));function Up(e){Gt(e)||(e=String(e));const t=Be(this);return Pt(t,"has",e),t.hasOwnProperty(e)}class Qi{constructor(t=!1,o=!1){this._isReadonly=t,this._isShallow=o}get(t,o,n){if(o==="__v_skip")return t.__v_skip;const a=this._isReadonly,r=this._isShallow;if(o==="__v_isReactive")return!a;if(o==="__v_isReadonly")return a;if(o==="__v_isShallow")return r;if(o==="__v_raw")return n===(a?r?rl:al:r?nl:ol).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(n)?t:void 0;const s=xe(t);if(!a){let l;if(s&&(l=Bp[o]))return l;if(o==="hasOwnProperty")return Up}const i=Reflect.get(t,o,st(t)?t:n);if((Gt(o)?Zi.has(o):jp(o))||(a||Pt(t,"get",o),r))return i;if(st(i)){const l=s&&Aa(o)?i:i.value;return a&&Ye(l)?Yr(l):l}return Ye(i)?a?Yr(i):pn(i):i}}class el extends Qi{constructor(t=!1){super(!1,t)}set(t,o,n,a){let r=t[o];const s=xe(t)&&Aa(o);if(!this._isShallow){const u=ko(r);if(!Ut(n)&&!ko(n)&&(r=Be(r),n=Be(n)),!s&&st(r)&&!st(n))return u||(r.value=n),!0}const i=s?Number(o)e,Ma=e=>Reflect.getPrototypeOf(e);function Wp(e,t,o){return function(...n){const a=this.__v_raw,r=Be(a),s=No(r),i=e==="entries"||e===Symbol.iterator&&s,l=e==="keys"&&s,u=a[e](...n),c=o?Wr:t?gn:qt;return!t&&Pt(r,"iterate",l?zr:Yo),dt(Object.create(u),{next(){const{value:p,done:g}=u.next();return g?{value:p,done:g}:{value:i?[c(p[0]),c(p[1])]:c(p),done:g}}})}}function Na(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Yp(e,t){const o={get(a){const r=this.__v_raw,s=Be(r),i=Be(a);e||(no(a,i)&&Pt(s,"get",a),Pt(s,"get",i));const{has:l}=Ma(s),u=t?Wr:e?gn:qt;if(l.call(s,a))return u(r.get(a));if(l.call(s,i))return u(r.get(i));r!==s&&r.get(a)},get size(){const a=this.__v_raw;return!e&&Pt(Be(a),"iterate",Yo),a.size},has(a){const r=this.__v_raw,s=Be(r),i=Be(a);return e||(no(a,i)&&Pt(s,"has",a),Pt(s,"has",i)),a===i?r.has(a):r.has(a)||r.has(i)},forEach(a,r){const s=this,i=s.__v_raw,l=Be(i),u=t?Wr:e?gn:qt;return!e&&Pt(l,"iterate",Yo),i.forEach((c,p)=>a.call(r,u(c),u(p),s))}};return dt(o,e?{add:Na("add"),set:Na("set"),delete:Na("delete"),clear:Na("clear")}:{add(a){const r=Be(this),s=Ma(r),i=Be(a),l=!t&&!Ut(a)&&!ko(a)?i:a;return s.has.call(r,l)||no(a,l)&&s.has.call(r,a)||no(i,l)&&s.has.call(r,i)||(r.add(l),yo(r,"add",l,l)),this},set(a,r){!t&&!Ut(r)&&!ko(r)&&(r=Be(r));const s=Be(this),{has:i,get:l}=Ma(s);let u=i.call(s,a);u||(a=Be(a),u=i.call(s,a));const c=l.call(s,a);return s.set(a,r),u?no(r,c)&&yo(s,"set",a,r):yo(s,"add",a,r),this},delete(a){const r=Be(this),{has:s,get:i}=Ma(r);let l=s.call(r,a);l||(a=Be(a),l=s.call(r,a)),i&&i.call(r,a);const u=r.delete(a);return l&&yo(r,"delete",a,void 0),u},clear(){const a=Be(this),r=a.size!==0,s=a.clear();return r&&yo(a,"clear",void 0,void 0),s}}),["keys","values","entries",Symbol.iterator].forEach(a=>{o[a]=Wp(a,e,t)}),o}function Ra(e,t){const o=Yp(e,t);return(n,a,r)=>a==="__v_isReactive"?!e:a==="__v_isReadonly"?e:a==="__v_raw"?n:Reflect.get(Ve(o,a)&&a in n?o:n,a,r)}const qp={get:Ra(!1,!1)},Jp={get:Ra(!1,!0)},Xp={get:Ra(!0,!1)},Zp={get:Ra(!0,!0)},ol=new WeakMap,nl=new WeakMap,al=new WeakMap,rl=new WeakMap;function Qp(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function pn(e){return ko(e)?e:Ia(e,!1,Kp,qp,ol)}function eg(e){return Ia(e,!1,Hp,Jp,nl)}function Yr(e){return Ia(e,!0,zp,Xp,al)}function Jx(e){return Ia(e,!0,Vp,Zp,rl)}function Ia(e,t,o,n,a){if(!Ye(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const r=a.get(e);if(r)return r;const s=Qp(Sp(e));if(s===0)return e;const i=new Proxy(e,s===2?n:o);return a.set(e,i),i}function vo(e){return ko(e)?vo(e.__v_raw):!!(e&&e.__v_isReactive)}function ko(e){return!!(e&&e.__v_isReadonly)}function Ut(e){return!!(e&&e.__v_isShallow)}function Oa(e){return e?!!e.__v_raw:!1}function Be(e){const t=e&&e.__v_raw;return t?Be(t):e}function qo(e){return!Ve(e,"__v_skip")&&Object.isExtensible(e)&&Ni(e,"__v_skip",!0),e}const qt=e=>Ye(e)?pn(e):e,gn=e=>Ye(e)?Yr(e):e;function st(e){return e?e.__v_isRef===!0:!1}function de(e){return sl(e,!1)}function fn(e){return sl(e,!0)}function sl(e,t){return st(e)?e:new tg(e,t)}class tg{constructor(t,o){this.dep=new Kr,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=o?t:Be(t),this._value=o?t:qt(t),this.__v_isShallow=o}get value(){return this.dep.track(),this._value}set value(t){const o=this._rawValue,n=this.__v_isShallow||Ut(t)||ko(t);t=n?t:Be(t),no(t,o)&&(this._rawValue=t,this._value=n?t:qt(t),this.dep.trigger())}}function _e(e){return st(e)?e.value:e}const og={get:(e,t,o)=>t==="__v_raw"?e:_e(Reflect.get(e,t,o)),set:(e,t,o,n)=>{const a=e[t];return st(a)&&!st(o)?(a.value=o,!0):Reflect.set(e,t,o,n)}};function il(e){return vo(e)?e:new Proxy(e,og)}function ng(e){const t=xe(e)?new Array(e.length):{};for(const o in e)t[o]=ll(e,o);return t}class ag{constructor(t,o,n){this._object=t,this._defaultValue=n,this.__v_isRef=!0,this._value=void 0,this._key=Gt(o)?o:String(o),this._raw=Be(t);let a=!0,r=t;if(!xe(t)||Gt(this._key)||!Aa(this._key))do a=!Oa(r)||Ut(r);while(a&&(r=r.__v_raw));this._shallow=a}get value(){let t=this._object[this._key];return this._shallow&&(t=_e(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&st(this._raw[this._key])){const o=this._object[this._key];if(st(o)){o.value=t;return}}this._object[this._key]=t}get dep(){return Dp(this._raw,this._key)}}class rg{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function sg(e,t,o){return st(e)?e:$e(e)?new rg(e):Ye(e)&&arguments.length>1?ll(e,t,o):de(e)}function ll(e,t,o){return new ag(e,t,o)}class ig{constructor(t,o,n){this.fn=t,this.setter=o,this._value=void 0,this.dep=new Kr(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=jn-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!o,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&ot!==this)return zi(this,!0),!0}get value(){const t=this.dep.track();return Wi(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function lg(e,t,o=!1){let n,a;return $e(e)?n=e:(n=e.get,a=e.set),new ig(n,a,o)}const Fa={},Da=new WeakMap;let Jo;function cg(e,t=!1,o=Jo){if(o){let n=Da.get(o);n||Da.set(o,n=[]),n.push(e)}}function ug(e,t,o=et){const{immediate:n,deep:a,once:r,scheduler:s,augmentJob:i,call:l}=o,u=k=>a?k:Ut(k)||a===!1||a===0?wo(k,1):wo(k);let c,p,g,w,b=!1,y=!1;if(st(e)?(p=()=>e.value,b=Ut(e)):vo(e)?(p=()=>u(e),b=!0):xe(e)?(y=!0,b=e.some(k=>vo(k)||Ut(k)),p=()=>e.map(k=>{if(st(k))return k.value;if(vo(k))return u(k);if($e(k))return l?l(k,2):k()})):$e(e)?t?p=l?()=>l(e,2):e:p=()=>{if(g){ao();try{g()}finally{ro()}}const k=Jo;Jo=c;try{return l?l(e,3,[w]):e(w)}finally{Jo=k}}:p=oo,t&&a){const k=p,x=a===!0?1/0:a;p=()=>wo(k(),x)}const d=ji(),h=()=>{c.stop(),d&&d.active&&Rr(d.effects,c)};if(r&&t){const k=t;t=(...x)=>{const A=k(...x);return h(),A}}let f=y?new Array(e.length).fill(Fa):Fa;const m=k=>{if(!(!(c.flags&1)||!c.dirty&&!k))if(t){const x=c.run();if(k||a||b||(y?x.some((A,S)=>no(A,f[S])):no(x,f))){g&&g();const A=Jo;Jo=c;try{const S=[x,f===Fa?void 0:y&&f[0]===Fa?[]:f,w];f=x,l?l(t,3,S):t(...S)}finally{Jo=A}}}else c.run()};return i&&i(m),c=new Ui(p),c.scheduler=s?()=>s(m,!1):m,w=k=>cg(k,!1,c),g=c.onStop=()=>{const k=Da.get(c);if(k){if(l)l(k,4);else for(const x of k)x();Da.delete(c)}},t?n?m(!0):f=c.run():s?s(m.bind(null,!0),!0):c.run(),h.pause=c.pause.bind(c),h.resume=c.resume.bind(c),h.stop=h,h}function wo(e,t=1/0,o){if(t<=0||!Ye(e)||e.__v_skip||(o=o||new Map,(o.get(e)||0)>=t))return e;if(o.set(e,t),t--,st(e))wo(e.value,t,o);else if(xe(e))for(let n=0;n{wo(n,t,o)});else if(xa(e)){for(const n in e)wo(e[n],t,o);for(const n of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,n)&&wo(e[n],t,o)}return e}/** +**/let ht;class Ki{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this._warnOnRun=!0,this.__v_skip=!0,!t&&ht&&(ht.active?(this.parent=ht,this.index=(ht.scopes||(ht.scopes=[])).push(this)-1):(this._active=!1,this._warnOnRun=!1))}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,o;if(this.scopes){const n=this.scopes.slice();for(t=0,o=n.length;t0&&--this._on===0){if(ht===this)ht=this.prevScope;else{let t=ht;for(;t;){if(t.prevScope===this){t.prevScope=this.prevScope;break}t=t.prevScope}}this.prevScope=void 0}}stop(t){if(this._active){this._active=!1;let o,n;for(o=0,n=this.effects.length;o0)return;if(Gn){let t=Gn;for(Gn=void 0;t;){const o=t.next;t.next=void 0,t.flags&=-9,t=o}}let e;for(;Bn;){let t=Bn;for(Bn=void 0;t;){const o=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(n){e||(e=n)}t=o}}if(e)throw e}function Yi(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function qi(e){let t,o=e.depsTail,n=o;for(;n;){const a=n.prevDep;n.version===-1?(n===o&&(o=a),Kr(n),Gp(n)):t=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=a}e.deps=t,e.depsTail=o}function Ur(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(Ji(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function Ji(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===jn)||(e.globalVersion=jn,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Ur(e))))return;e.flags|=2;const t=e.dep,o=et,n=Wt;et=e,Wt=!0;try{Yi(e);const a=e.fn(e._value);(t.version===0||to(a,e._value))&&(e.flags|=128,e._value=a,t.version++)}catch(a){throw t.version++,a}finally{et=o,Wt=n,qi(e),e.flags&=-3}}function Kr(e,t=!1){const{dep:o,prevSub:n,nextSub:a}=e;if(n&&(n.nextSub=a,e.prevSub=void 0),a&&(a.prevSub=n,e.nextSub=void 0),o.subs===e&&(o.subs=n,!n&&o.computed)){o.computed.flags&=-5;for(let r=o.computed.deps;r;r=r.nextDep)Kr(r,!0)}!t&&!--o.sc&&o.map&&o.map.delete(o.key)}function Gp(e){const{prevDep:t,nextDep:o}=e;t&&(t.nextDep=o,e.prevDep=void 0),o&&(o.prevDep=t,e.nextDep=void 0)}let Wt=!0;const Xi=[];function oo(){Xi.push(Wt),Wt=!1}function no(){const e=Xi.pop();Wt=e===void 0?!0:e}function Zi(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const o=et;et=void 0;try{t()}finally{et=o}}}let jn=0;class jp{constructor(t,o){this.sub=t,this.dep=o,this.version=o.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class zr{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!et||!Wt||et===this.computed)return;let o=this.activeLink;if(o===void 0||o.sub!==et)o=this.activeLink=new jp(et,this),et.deps?(o.prevDep=et.depsTail,et.depsTail.nextDep=o,et.depsTail=o):et.deps=et.depsTail=o,Qi(o);else if(o.version===-1&&(o.version=this.version,o.nextDep)){const n=o.nextDep;n.prevDep=o.prevDep,o.prevDep&&(o.prevDep.nextDep=n),o.prevDep=et.depsTail,o.nextDep=void 0,et.depsTail.nextDep=o,et.depsTail=o,et.deps===o&&(et.deps=n)}return o}trigger(t){this.version++,jn++,this.notify(t)}notify(t){Gr();try{for(let o=this.subs;o;o=o.prevSub)o.sub.notify()&&o.sub.dep.notify()}finally{jr()}}}function Qi(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let n=t.deps;n;n=n.nextDep)Qi(n)}const o=e.dep.subs;o!==e&&(e.prevSub=o,o&&(o.nextSub=e)),e.dep.subs=e}}const Ta=new WeakMap,Wo=Symbol(""),Hr=Symbol(""),Un=Symbol("");function Tt(e,t,o){if(Wt&&et){let n=Ta.get(e);n||Ta.set(e,n=new Map);let a=n.get(o);a||(n.set(o,a=new zr),a.map=n,a.key=o),a.track()}}function bo(e,t,o,n,a,r){const s=Ta.get(e);if(!s){jn++;return}const i=l=>{l&&l.trigger()};if(Gr(),t==="clear")s.forEach(i);else{const l=xe(e),u=l&&Aa(o);if(l&&o==="length"){const c=Number(n);s.forEach((p,f)=>{(f==="length"||f===Un||!Dt(f)&&f>=c)&&i(p)})}else switch((o!==void 0||s.has(void 0))&&i(s.get(o)),u&&i(s.get(Un)),t){case"add":l?u&&i(s.get("length")):(i(s.get(Wo)),Mo(e)&&i(s.get(Hr)));break;case"delete":l||(i(s.get(Wo)),Mo(e)&&i(s.get(Hr)));break;case"set":Mo(e)&&i(s.get(Wo));break}}jr()}function Up(e,t){const o=Ta.get(e);return o&&o.get(t)}function un(e){const t=Be(e);return t===e?t:(Tt(t,"iterate",Un),Gt(e)?t:t.map(Yt))}function Pa(e){return Tt(e=Be(e),"iterate",Un),e}function ao(e,t){return vo(e)?pn(_o(e)?Yt(t):t):Yt(t)}const Kp={__proto__:null,[Symbol.iterator](){return Vr(this,Symbol.iterator,e=>ao(this,e))},concat(...e){return un(this).concat(...e.map(t=>xe(t)?un(t):t))},entries(){return Vr(this,"entries",e=>(e[1]=ao(this,e[1]),e))},every(e,t){return yo(this,"every",e,t,void 0,arguments)},filter(e,t){return yo(this,"filter",e,t,o=>o.map(n=>ao(this,n)),arguments)},find(e,t){return yo(this,"find",e,t,o=>ao(this,o),arguments)},findIndex(e,t){return yo(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return yo(this,"findLast",e,t,o=>ao(this,o),arguments)},findLastIndex(e,t){return yo(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return yo(this,"forEach",e,t,void 0,arguments)},includes(...e){return Wr(this,"includes",e)},indexOf(...e){return Wr(this,"indexOf",e)},join(e){return un(this).join(e)},lastIndexOf(...e){return Wr(this,"lastIndexOf",e)},map(e,t){return yo(this,"map",e,t,void 0,arguments)},pop(){return Kn(this,"pop")},push(...e){return Kn(this,"push",e)},reduce(e,...t){return el(this,"reduce",e,t)},reduceRight(e,...t){return el(this,"reduceRight",e,t)},shift(){return Kn(this,"shift")},some(e,t){return yo(this,"some",e,t,void 0,arguments)},splice(...e){return Kn(this,"splice",e)},toReversed(){return un(this).toReversed()},toSorted(e){return un(this).toSorted(e)},toSpliced(...e){return un(this).toSpliced(...e)},unshift(...e){return Kn(this,"unshift",e)},values(){return Vr(this,"values",e=>ao(this,e))}};function Vr(e,t,o){const n=Pa(e),a=n[t]();return n!==e&&!Gt(e)&&(a._next=a.next,a.next=()=>{const r=a._next();return r.done||(r.value=o(r.value)),r}),a}const zp=Array.prototype;function yo(e,t,o,n,a,r){const s=Pa(e),i=s!==e&&!Gt(e),l=s[t];if(l!==zp[t]){const p=l.apply(e,r);return i?Yt(p):p}let u=o;s!==e&&(i?u=function(p,f){return o.call(this,ao(e,p),f,e)}:o.length>2&&(u=function(p,f){return o.call(this,p,f,e)}));const c=l.call(s,u,n);return i&&a?a(c):c}function el(e,t,o,n){const a=Pa(e),r=a!==e&&!Gt(e);let s=o,i=!1;a!==e&&(r?(i=n.length===0,s=function(u,c,p){return i&&(i=!1,u=ao(e,u)),o.call(this,u,ao(e,c),p,e)}):o.length>3&&(s=function(u,c,p){return o.call(this,u,c,p,e)}));const l=a[t](s,...n);return i?ao(e,l):l}function Wr(e,t,o){const n=Be(e);Tt(n,"iterate",Un);const a=n[t](...o);return(a===-1||a===!1)&&Oa(o[0])?(o[0]=Be(o[0]),n[t](...o)):a}function Kn(e,t,o=[]){oo(),Gr();const n=Be(e)[t].apply(e,o);return jr(),no(),n}const Hp=Rr("__proto__,__v_isRef,__isVue"),tl=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Dt));function Vp(e){Dt(e)||(e=String(e));const t=Be(this);return Tt(t,"has",e),t.hasOwnProperty(e)}class ol{constructor(t=!1,o=!1){this._isReadonly=t,this._isShallow=o}get(t,o,n){if(o==="__v_skip")return t.__v_skip;const a=this._isReadonly,r=this._isShallow;if(o==="__v_isReactive")return!a;if(o==="__v_isReadonly")return a;if(o==="__v_isShallow")return r;if(o==="__v_raw")return n===(a?r?ll:il:r?sl:rl).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(n)?t:void 0;const s=xe(t);if(!a){let l;if(s&&(l=Kp[o]))return l;if(o==="hasOwnProperty")return Vp}const i=Reflect.get(t,o,at(t)?t:n);if((Dt(o)?tl.has(o):Hp(o))||(a||Tt(t,"get",o),r))return i;if(at(i)){const l=s&&Aa(o)?i:i.value;return a&&Ye(l)?qr(l):l}return Ye(i)?a?qr(i):dn(i):i}}class nl extends ol{constructor(t=!1){super(!1,t)}set(t,o,n,a){let r=t[o];const s=xe(t)&&Aa(o);if(!this._isShallow){const u=vo(r);if(!Gt(n)&&!vo(n)&&(r=Be(r),n=Be(n)),!s&&at(r)&&!at(n))return u||(r.value=n),!0}const i=s?Number(o)e,Ma=e=>Reflect.getPrototypeOf(e);function Xp(e,t,o){return function(...n){const a=this.__v_raw,r=Be(a),s=Mo(r),i=e==="entries"||e===Symbol.iterator&&s,l=e==="keys"&&s,u=a[e](...n),c=o?Yr:t?pn:Yt;return!t&&Tt(r,"iterate",l?Hr:Wo),lt(Object.create(u),{next(){const{value:p,done:f}=u.next();return f?{value:p,done:f}:{value:i?[c(p[0]),c(p[1])]:c(p),done:f}}})}}function Na(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Zp(e,t){const o={get(a){const r=this.__v_raw,s=Be(r),i=Be(a);e||(to(a,i)&&Tt(s,"get",a),Tt(s,"get",i));const{has:l}=Ma(s),u=t?Yr:e?pn:Yt;if(l.call(s,a))return u(r.get(a));if(l.call(s,i))return u(r.get(i));r!==s&&r.get(a)},get size(){const a=this.__v_raw;return!e&&Tt(Be(a),"iterate",Wo),a.size},has(a){const r=this.__v_raw,s=Be(r),i=Be(a);return e||(to(a,i)&&Tt(s,"has",a),Tt(s,"has",i)),a===i?r.has(a):r.has(a)||r.has(i)},forEach(a,r){const s=this,i=s.__v_raw,l=Be(i),u=t?Yr:e?pn:Yt;return!e&&Tt(l,"iterate",Wo),i.forEach((c,p)=>a.call(r,u(c),u(p),s))}};return lt(o,e?{add:Na("add"),set:Na("set"),delete:Na("delete"),clear:Na("clear")}:{add(a){const r=Be(this),s=Ma(r),i=Be(a),l=!t&&!Gt(a)&&!vo(a)?i:a;return s.has.call(r,l)||to(a,l)&&s.has.call(r,a)||to(i,l)&&s.has.call(r,i)||(r.add(l),bo(r,"add",l,l)),this},set(a,r){!t&&!Gt(r)&&!vo(r)&&(r=Be(r));const s=Be(this),{has:i,get:l}=Ma(s);let u=i.call(s,a);u||(a=Be(a),u=i.call(s,a));const c=l.call(s,a);return s.set(a,r),u?to(r,c)&&bo(s,"set",a,r):bo(s,"add",a,r),this},delete(a){const r=Be(this),{has:s,get:i}=Ma(r);let l=s.call(r,a);l||(a=Be(a),l=s.call(r,a)),i&&i.call(r,a);const u=r.delete(a);return l&&bo(r,"delete",a,void 0),u},clear(){const a=Be(this),r=a.size!==0,s=a.clear();return r&&bo(a,"clear",void 0,void 0),s}}),["keys","values","entries",Symbol.iterator].forEach(a=>{o[a]=Xp(a,e,t)}),o}function Ra(e,t){const o=Zp(e,t);return(n,a,r)=>a==="__v_isReactive"?!e:a==="__v_isReadonly"?e:a==="__v_raw"?n:Reflect.get(ze(o,a)&&a in n?o:n,a,r)}const Qp={get:Ra(!1,!1)},eg={get:Ra(!1,!0)},tg={get:Ra(!0,!1)},og={get:Ra(!0,!0)},rl=new WeakMap,sl=new WeakMap,il=new WeakMap,ll=new WeakMap;function ng(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function dn(e){return vo(e)?e:Ia(e,!1,Wp,Qp,rl)}function ag(e){return Ia(e,!1,qp,eg,sl)}function qr(e){return Ia(e,!0,Yp,tg,il)}function Zx(e){return Ia(e,!0,Jp,og,ll)}function Ia(e,t,o,n,a){if(!Ye(e)||e.__v_raw&&!(t&&e.__v_isReactive)||e.__v_skip||!Object.isExtensible(e))return e;const r=a.get(e);if(r)return r;const s=ng(Lp(e));if(s===0)return e;const i=new Proxy(e,s===2?n:o);return a.set(e,i),i}function _o(e){return vo(e)?_o(e.__v_raw):!!(e&&e.__v_isReactive)}function vo(e){return!!(e&&e.__v_isReadonly)}function Gt(e){return!!(e&&e.__v_isShallow)}function Oa(e){return e?!!e.__v_raw:!1}function Be(e){const t=e&&e.__v_raw;return t?Be(t):e}function Yo(e){return!ze(e,"__v_skip")&&Object.isExtensible(e)&&Oi(e,"__v_skip",!0),e}const Yt=e=>Ye(e)?dn(e):e,pn=e=>Ye(e)?qr(e):e;function at(e){return e?e.__v_isRef===!0:!1}function de(e){return cl(e,!1)}function gn(e){return cl(e,!0)}function cl(e,t){return at(e)?e:new rg(e,t)}class rg{constructor(t,o){this.dep=new zr,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=o?t:Be(t),this._value=o?t:Yt(t),this.__v_isShallow=o}get value(){return this.dep.track(),this._value}set value(t){const o=this._rawValue,n=this.__v_isShallow||Gt(t)||vo(t);t=n?t:Be(t),to(t,o)&&(this._rawValue=t,this._value=n?t:Yt(t),this.dep.trigger())}}function _e(e){return at(e)?e.value:e}const sg={get:(e,t,o)=>t==="__v_raw"?e:_e(Reflect.get(e,t,o)),set:(e,t,o,n)=>{const a=e[t];return at(a)&&!at(o)?(a.value=o,!0):Reflect.set(e,t,o,n)}};function ul(e){return _o(e)?e:new Proxy(e,sg)}function ig(e){const t=xe(e)?new Array(e.length):{};for(const o in e)t[o]=dl(e,o);return t}class lg{constructor(t,o,n){this._object=t,this._defaultValue=n,this.__v_isRef=!0,this._value=void 0,this._key=Dt(o)?o:String(o),this._raw=Be(t);let a=!0,r=t;if(!xe(t)||Dt(this._key)||!Aa(this._key))do a=!Oa(r)||Gt(r);while(a&&(r=r.__v_raw));this._shallow=a}get value(){let t=this._object[this._key];return this._shallow&&(t=_e(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&at(this._raw[this._key])){const o=this._object[this._key];if(at(o)){o.value=t;return}}this._object[this._key]=t}get dep(){return Up(this._raw,this._key)}}class cg{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function ug(e,t,o){return at(e)?e:Ee(e)?new cg(e):Ye(e)&&arguments.length>1?dl(e,t,o):de(e)}function dl(e,t,o){return new lg(e,t,o)}class dg{constructor(t,o,n){this.fn=t,this.setter=o,this._value=void 0,this.dep=new zr(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=jn-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!o,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&et!==this)return Wi(this,!0),!0}get value(){const t=this.dep.track();return Ji(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function pg(e,t,o=!1){let n,a;return Ee(e)?n=e:(n=e.get,a=e.set),new dg(n,a,o)}const Fa={},Da=new WeakMap;let qo;function gg(e,t=!1,o=qo){if(o){let n=Da.get(o);n||Da.set(o,n=[]),n.push(e)}}function fg(e,t,o=Ze){const{immediate:n,deep:a,once:r,scheduler:s,augmentJob:i,call:l}=o,u=_=>a?_:Gt(_)||a===!1||a===0?ko(_,1):ko(_);let c,p,f,k,w=!1,m=!1;if(at(e)?(p=()=>e.value,w=Gt(e)):_o(e)?(p=()=>u(e),w=!0):xe(e)?(m=!0,w=e.some(_=>_o(_)||Gt(_)),p=()=>e.map(_=>{if(at(_))return _.value;if(_o(_))return u(_);if(Ee(_))return l?l(_,2):_()})):Ee(e)?t?p=l?()=>l(e,2):e:p=()=>{if(f){oo();try{f()}finally{no()}}const _=qo;qo=c;try{return l?l(e,3,[k]):e(k)}finally{qo=_}}:p=eo,t&&a){const _=p,x=a===!0?1/0:a;p=()=>ko(_(),x)}const d=zi(),g=()=>{c.stop(),d&&d.active&&Ir(d.effects,c)};if(r&&t){const _=t;t=(...x)=>{const A=_(...x);return g(),A}}let h=m?new Array(e.length).fill(Fa):Fa;const b=_=>{if(!(!(c.flags&1)||!c.dirty&&!_))if(t){const x=c.run();if(_||a||w||(m?x.some((A,S)=>to(A,h[S])):to(x,h))){f&&f();const A=qo;qo=c;try{const S=[x,h===Fa?void 0:m&&h[0]===Fa?[]:h,k];h=x,l?l(t,3,S):t(...S)}finally{qo=A}}}else c.run()};return i&&i(b),c=new Hi(p),c.scheduler=s?()=>s(b,!1):b,k=_=>gg(_,!1,c),f=c.onStop=()=>{const _=Da.get(c);if(_){if(l)l(_,4);else for(const x of _)x();Da.delete(c)}},t?n?b(!0):h=c.run():s?s(b.bind(null,!0),!0):c.run(),g.pause=c.pause.bind(c),g.resume=c.resume.bind(c),g.stop=g,g}function ko(e,t=1/0,o){if(t<=0||!Ye(e)||e.__v_skip||(o=o||new Map,(o.get(e)||0)>=t))return e;if(o.set(e,t),t--,at(e))ko(e.value,t,o);else if(xe(e))for(let n=0;n{ko(n,t,o)});else if(xa(e)){for(const n in e)ko(e[n],t,o);for(const n of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,n)&&ko(e[n],t,o)}return e}/** * @vue/runtime-core v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/const zn=[];let qr=!1;function Xx(e,...t){if(qr)return;qr=!0,ao();const o=zn.length?zn[zn.length-1].component:null,n=o&&o.appContext.config.warnHandler,a=dg();if(n)hn(n,o,11,[e+t.map(r=>{var s,i;return(i=(s=r.toString)==null?void 0:s.call(r))!=null?i:JSON.stringify(r)}).join(""),o&&o.proxy,a.map(({vnode:r})=>`at <${lc(o,r.type)}>`).join(` +**/const zn=[];let Jr=!1;function Qx(e,...t){if(Jr)return;Jr=!0,oo();const o=zn.length?zn[zn.length-1].component:null,n=o&&o.appContext.config.warnHandler,a=hg();if(n)fn(n,o,11,[e+t.map(r=>{var s,i;return(i=(s=r.toString)==null?void 0:s.call(r))!=null?i:JSON.stringify(r)}).join(""),o&&o.proxy,a.map(({vnode:r})=>`at <${dc(o,r.type)}>`).join(` `),a]);else{const r=[`[Vue warn]: ${e}`,...t];a.length&&r.push(` -`,...pg(a)),console.warn(...r)}ro(),qr=!1}function dg(){let e=zn[zn.length-1];if(!e)return[];const t=[];for(;e;){const o=t[0];o&&o.vnode===e?o.recurseCount++:t.push({vnode:e,recurseCount:0});const n=e.component&&e.component.parent;e=n&&n.vnode}return t}function pg(e){const t=[];return e.forEach((o,n)=>{t.push(...n===0?[]:[` -`],...gg(o))}),t}function gg({vnode:e,recurseCount:t}){const o=t>0?`... (${t} recursive calls)`:"",n=e.component?e.component.parent==null:!1,a=` at <${lc(e.component,e.type,n)}`,r=">"+o;return e.props?[a,...fg(e.props),r]:[a+r]}function fg(e){const t=[],o=Object.keys(e);return o.slice(0,3).forEach(n=>{t.push(...cl(n,e[n]))}),o.length>3&&t.push(" ..."),t}function cl(e,t,o){return tt(t)?(t=JSON.stringify(t),o?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?o?t:[`${e}=${t}`]:st(t)?(t=cl(e,Be(t.value),!0),o?t:[`${e}=Ref<`,t,">"]):$e(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=Be(t),o?t:[`${e}=`,t])}function hn(e,t,o,n){try{return n?e(...n):e()}catch(a){Hn(a,t,o)}}function Jt(e,t,o,n){if($e(e)){const a=hn(e,t,o,n);return a&&Pi(a)&&a.catch(r=>{Hn(r,t,o)}),a}if(xe(e)){const a=[];for(let r=0;r>>1,a=Nt[n],r=Vn(a);r=Vn(o)?Nt.push(e):Nt.splice(mg(t),0,e),e.flags|=1,dl()}}function dl(){Ba||(Ba=ul.then(fl))}function bg(e){if(!xe(e))Io&&e.id===-1?Io.splice(bn+1,0,e):e.flags&1||(mn.push(e),e.flags|=1);else for(let t=0;tVn(o)-Vn(n));if(mn.length=0,Io){for(let o=0;oe.id==null?e.flags&2?-1:1/0:e.id;function fl(e){try{for(io=0;io{n._d&&Xa(-1);const r=Ga(t),s=Ao.length;let i;try{i=e(...a)}finally{for(let l=Ao.length;l>s;l--)ps();Ga(r),n._d&&Xa(1)}return i};return n._n=!0,n._c=!0,n._d=!0,n}function ml(e,t){if($t===null)return e;const o=tr($t),n=e.dirs||(e.dirs=[]);for(let a=0;a1)return o&&$e(t)?t.call(n&&n.proxy):t}}function yg(){return!!($o()||Qo)}const _g=Symbol.for("v-scx"),vg=()=>Fe(_g);function kg(e,t){return Xr(e,null,t)}function ct(e,t,o){return Xr(e,t,o)}function Xr(e,t,o=et){const{immediate:n,deep:a,flush:r,once:s}=o,i=dt({},o),l=t&&n||!t&&r!=="post";let u;if(kn){if(r==="sync"){const w=vg();u=w.__watcherHandles||(w.__watcherHandles=[])}else if(!l){const w=()=>{};return w.stop=oo,w.resume=oo,w.pause=oo,w}}const c=Ct;i.call=(w,b,y)=>Jt(w,c,b,y);let p=!1;r==="post"?i.scheduler=w=>{It(w,c&&c.suspense)}:r!=="sync"&&(p=!0,i.scheduler=(w,b)=>{b?w():Jr(w)}),i.augmentJob=w=>{t&&(w.flags|=4),p&&(w.flags|=2,c&&(w.id=c.uid,w.i=c))};const g=ug(e,t,i);return kn&&(u?u.push(g):l&&g()),g}function wg(e,t,o){const n=this.proxy,a=tt(e)?e.includes(".")?bl(n,e):()=>n[e]:e.bind(n,n);let r;$e(t)?r=t:(r=t.handler,o=t);const s=na(this),i=Xr(a,r.bind(n),o);return s(),i}function bl(e,t){const o=t.split(".");return()=>{let n=e;for(let a=0;ae.__isTeleport,Zo=e=>e&&(e.disabled||e.disabled===""),xg=e=>e&&(e.defer||e.defer===""),_l=e=>typeof SVGElement<"u"&&e instanceof SVGElement,vl=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,Zr=(e,t)=>{const o=e&&e.to;return tt(o)?t?t(o):null:o},Ag={name:"Teleport",__isTeleport:!0,process(e,t,o,n,a,r,s,i,l,u){const{mc:c,pc:p,pbc:g,o:{insert:w,querySelector:b,createText:y,createComment:d,parentNode:h}}=u,f=Zo(t.props);let{dynamicChildren:m}=t;const k=(S,L,P)=>{S.shapeFlag&16&&c(S.children,L,P,a,r,s,i,l)},x=(S=t)=>{const L=Zo(S.props),P=S.target=Zr(S.props,b),z=Qr(P,S,y,w);P&&(s!=="svg"&&_l(P)?s="svg":s!=="mathml"&&vl(P)&&(s="mathml"),a&&a.isCE&&(a.ce._teleportTargets||(a.ce._teleportTargets=new Set)).add(P),L||(k(S,P,z),Wn(S,!1)))},A=S=>{const L=()=>{if(Oo.get(S)===L){if(Oo.delete(S),Zo(S.props)){const P=h(S.el)||o;k(S,P,S.anchor),Wn(S,!0)}x(S)}};Oo.set(S,L),It(L,r)};if(e==null){const S=t.el=y(""),L=t.anchor=y("");if(w(S,o,n),w(L,o,n),xg(t.props)||r&&r.pendingBranch){A(t);return}f&&(k(t,o,L),Wn(t,!0)),x()}else{t.el=e.el;const S=t.anchor=e.anchor,L=Oo.get(e);if(L){L.flags|=8,Oo.delete(e),A(t);return}t.targetStart=e.targetStart;const P=t.target=e.target,z=t.targetAnchor=e.targetAnchor,W=Zo(e.props),re=W?o:P,M=W?S:z;if(s==="svg"||_l(P)?s="svg":(s==="mathml"||vl(P))&&(s="mathml"),m?(g(e.dynamicChildren,m,re,a,r,s,i),ds(e,t,!0)):l||p(e,t,re,M,a,r,s,i,!1),f)W?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Ua(t,o,S,u,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const F=Zr(t.props,b);F&&(t.target=F,Ua(t,F,null,u,0))}else W&&Ua(t,P,z,u,1);Wn(t,f)}},remove(e,t,o,{um:n,o:{remove:a}},r){const{shapeFlag:s,children:i,anchor:l,targetStart:u,targetAnchor:c,target:p,props:g}=e,w=Zo(g),b=r||!w,y=Oo.get(e);if(y&&(y.flags|=8,Oo.delete(e)),p&&(a(u),a(c)),r&&a(l),!y&&(w||p)&&s&16)for(let d=0;d1){for(const o of e)if(o.type!==po){t=o;break}}return t}function kl(e){if(!Ha(e))return ja(e.type)&&e.children?Eg(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:o}=e;if(o){if(t&16)return o[0];if(t&32&&$e(o.default))return o.default()}}function ts(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const o=e.component.subTree;ts(ja(o.type)&&kl(o)||o,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Yn(e,t){return $e(e)?dt({name:e.name},t,{setup:e}):e}function os(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function wl(e,t){let o;return!!((o=Object.getOwnPropertyDescriptor(e,t))&&!o.configurable)}const Ka=new WeakMap;function qn(e,t,o,n,a=!1){if(xe(e)){e.forEach((y,d)=>qn(y,t&&(xe(t)?t[d]:t),o,n,a));return}if(yn(n)&&!a){n.shapeFlag&512&&n.type.__asyncResolved&&n.component.subTree.component&&qn(e,t,o,n.component.subTree);return}const r=n.shapeFlag&4?tr(n.component):n.el,s=a?null:r,{i,r:l}=e,u=t&&t.r,c=i.refs===et?i.refs={}:i.refs,p=i.setupState,g=Be(p),w=p===et?Li:y=>wl(c,y)?!1:Ve(g,y),b=(y,d)=>!(d&&wl(c,d));if(u!=null&&u!==l){if(xl(t),tt(u))c[u]=null,w(u)&&(p[u]=null);else if(st(u)){const y=t;b(u,y.k)&&(u.value=null),y.k&&(c[y.k]=null)}}if($e(l))hn(l,i,12,[s,c]);else{const y=tt(l),d=st(l);if(y||d){const h=()=>{if(e.f){const f=y?w(l)?p[l]:c[l]:b()||!e.k?l.value:c[e.k];if(a)xe(f)&&Rr(f,r);else if(xe(f))f.includes(r)||f.push(r);else if(y)c[l]=[r],w(l)&&(p[l]=c[l]);else{const m=[r];b(l,e.k)&&(l.value=m),e.k&&(c[e.k]=m)}}else y?(c[l]=s,w(l)&&(p[l]=s)):d&&(b(l,e.k)&&(l.value=s),e.k&&(c[e.k]=s))};if(s){const f=()=>{h(),Ka.delete(e)};f.id=-1,Ka.set(e,f),It(f,o)}else xl(e),h()}}}function xl(e){const t=Ka.get(e);t&&(t.flags|=8,Ka.delete(e))}const Al=e=>e.nodeType===8;La().requestIdleCallback,La().cancelIdleCallback;function Cg(e,t){if(Al(e)&&e.data==="["){let o=1,n=e.nextSibling;for(;n;){if(n.nodeType===1){if(t(n)===!1)break}else if(Al(n))if(n.data==="]"){if(--o===0)break}else n.data==="["&&o++;n=n.nextSibling}}else t(e)}const yn=e=>!!e.type.__asyncLoader;function Lg(e){$e(e)&&(e={loader:e});const{loader:t,loadingComponent:o,errorComponent:n,delay:a=200,hydrate:r,timeout:s,suspensible:i=!0,onError:l}=e;let u=null,c,p=0;const g=()=>(p++,u=null,w()),w=()=>{let b;return u||(b=u=t().catch(y=>{if(y=y instanceof Error?y:new Error(String(y)),l)return new Promise((d,h)=>{l(y,()=>d(g()),()=>h(y),p+1)});throw y}).then(y=>b!==u&&u?u:(y&&(y.__esModule||y[Symbol.toStringTag]==="Module")&&(y=y.default),c=y,y)))};return Yn({name:"AsyncComponentWrapper",__asyncLoader:w,__asyncHydrate(b,y,d){const h=b.isConnected;let f=!1;(y.bu||(y.bu=[])).push(()=>f=!0);const m=()=>{f||!b.parentNode||h&&!b.isConnected||d()},k=r?()=>{const x=r(m,A=>Cg(b,A));x&&(y.bum||(y.bum=[])).push(x)}:m;c?k():w().then(()=>!y.isUnmounted&&k())},get __asyncResolved(){return c},setup(){const b=Ct;if(os(b),c)return()=>za(c,b);const y=x=>{u=null,Hn(x,b,13,!n)};if(i&&b.suspense||kn)return w().then(x=>()=>za(x,b)).catch(x=>(y(x),()=>n?We(n,{error:x}):null));const d=de(!1),h=de(),f=de(!!a);let m,k;return Wa(()=>{m!=null&&clearTimeout(m),k!=null&&clearTimeout(k)}),a&&(k=setTimeout(()=>{b.isUnmounted||(f.value=!1)},a)),s!=null&&(m=setTimeout(()=>{if(!b.isUnmounted&&!d.value&&!h.value){const x=new Error(`Async component timed out after ${s}ms.`);y(x),h.value=x}},s)),w().then(()=>{b.isUnmounted||(d.value=!0,b.parent&&Ha(b.parent.vnode)&&b.parent.update())}).catch(x=>{if(b.isUnmounted){u=null;return}y(x),h.value=x}),()=>{if(d.value&&c)return za(c,b);if(h.value&&n)return We(n,{error:h.value});if(o&&!f.value)return za(o,b)}}})}function za(e,t){const{ref:o,props:n,children:a,ce:r}=t.vnode,s=We(e,n,a);return s.ref=o,s.ce=r,delete t.vnode.ce,s}const Ha=e=>e.type.__isKeepAlive;function Tg(e,t){Sl(e,"a",t)}function Pg(e,t){Sl(e,"da",t)}function Sl(e,t,o=Ct){const n=e.__wdc||(e.__wdc=()=>{let a=o;for(;a;){if(a.isDeactivated)return;a=a.parent}return e()});if(Va(t,n,o),o){let a=o.parent;for(;a&&a.parent;)Ha(a.parent.vnode)&&Mg(n,t,o,a),a=a.parent}}function Mg(e,t,o,n){const a=Va(t,e,n,!0);Wa(()=>{Rr(n[t],a)},o)}function Va(e,t,o=Ct,n=!1){if(o){const a=o[e]||(o[e]=[]),r=t.__weh||(t.__weh=(...s)=>{ao();const i=na(o),l=Jt(t,o,e,s);return i(),ro(),l});return n?a.unshift(r):a.push(r),r}}const xo=e=>(t,o=Ct)=>{(!kn||e==="sp")&&Va(e,(...n)=>t(...n),o)},$l=xo("bm"),co=xo("m"),Ng=xo("bu"),Rg=xo("u"),uo=xo("bum"),Wa=xo("um"),Ig=xo("sp"),Og=xo("rtg"),Fg=xo("rtc");function Dg(e,t=Ct){Va("ec",e,t)}const Bg="components",El=Symbol.for("v-ndc");function Cl(e){return tt(e)?Gg(Bg,e,!1)||e:e||El}function Gg(e,t,o=!0,n=!1){const a=$t||Ct;if(a){const r=a.type;{const i=ic(r,!1);if(i&&(i===t||i===_t(t)||i===$a(_t(t))))return r}const s=Ll(a[e]||r[e],t)||Ll(a.appContext[e],t);return!s&&n?r:s}}function Ll(e,t){return e&&(e[t]||e[_t(t)]||e[$a(_t(t))])}function Et(e,t,o,n){let a;const r=o,s=xe(e);if(s||tt(e)){const i=s&&vo(e);let l=!1,u=!1;i&&(l=!Ut(e),u=ko(e),e=Pa(e)),a=new Array(e.length);for(let c=0,p=e.length;ct(i,l,void 0,r));else{const i=Object.keys(e);a=new Array(i.length);for(let l=0,u=i.length;l0;return t!=="default"&&(u.name=t),H(),pt(Pe,null,[We("slot",u,n)],c?-2:64)}let s=e[t];s&&s._c&&(s._d=!1);const i=Ao.length;H();let l;try{const u=s&&Tl(s(o)),c=o.key||r||u&&u.key;l=pt(Pe,{key:(c&&!Gt(c)?c:`_${t}`)+(!u&&n?"_fb":"")},u||(n?n():[]),u&&e._===1?64:-2)}catch(u){for(let c=Ao.length;c>i;c--)ps();throw u}finally{s&&s._c&&(s._d=!0)}return!a&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),l}function Tl(e){return e.some(t=>ea(t)?!(t.type===po||t.type===Pe&&!Tl(t.children)):!0)?e:null}const ns=e=>e?ac(e)?tr(e):ns(e.parent):null,Jn=dt(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>ns(e.parent),$root:e=>ns(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Rl(e),$forceUpdate:e=>e.f||(e.f=()=>{Jr(e.update)}),$nextTick:e=>e.n||(e.n=lo.bind(e.proxy)),$watch:e=>wg.bind(e)}),as=(e,t)=>e!==et&&!e.__isScriptSetup&&Ve(e,t),jg={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:o,setupState:n,data:a,props:r,accessCache:s,type:i,appContext:l}=e;if(t[0]!=="$"){const g=s[t];if(g!==void 0)switch(g){case 1:return n[t];case 2:return a[t];case 4:return o[t];case 3:return r[t]}else{if(as(n,t))return s[t]=1,n[t];if(a!==et&&Ve(a,t))return s[t]=2,a[t];if(Ve(r,t))return s[t]=3,r[t];if(o!==et&&Ve(o,t))return s[t]=4,o[t];rs&&(s[t]=0)}}const u=Jn[t];let c,p;if(u)return t==="$attrs"&&Pt(e.attrs,"get",""),u(e);if((c=i.__cssModules)&&(c=c[t]))return c;if(o!==et&&Ve(o,t))return s[t]=4,o[t];if(p=l.config.globalProperties,Ve(p,t))return p[t]},set({_:e},t,o){const{data:n,setupState:a,ctx:r}=e;return as(a,t)?(a[t]=o,!0):n!==et&&Ve(n,t)?(n[t]=o,!0):Ve(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(r[t]=o,!0)},has({_:{data:e,setupState:t,accessCache:o,ctx:n,appContext:a,props:r,type:s}},i){let l;return!!(o[i]||e!==et&&i[0]!=="$"&&Ve(e,i)||as(t,i)||Ve(r,i)||Ve(n,i)||Ve(Jn,i)||Ve(a.config.globalProperties,i)||(l=s.__cssModules)&&l[i])},defineProperty(e,t,o){return o.get!=null?e._.accessCache[t]=0:Ve(o,"value")&&this.set(e,t,o.value,null),Reflect.defineProperty(e,t,o)}};function Pl(e){return xe(e)?e.reduce((t,o)=>(t[o]=null,t),{}):e}let rs=!0;function Ug(e){const t=Rl(e),o=e.proxy,n=e.ctx;rs=!1,t.beforeCreate&&Ml(t.beforeCreate,e,"bc");const{data:a,computed:r,methods:s,watch:i,provide:l,inject:u,created:c,beforeMount:p,mounted:g,beforeUpdate:w,updated:b,activated:y,deactivated:d,beforeDestroy:h,beforeUnmount:f,destroyed:m,unmounted:k,render:x,renderTracked:A,renderTriggered:S,errorCaptured:L,serverPrefetch:P,expose:z,inheritAttrs:W,components:re,directives:M,filters:F}=t;if(u&&Kg(u,n,null),s)for(const I in s){const ne=s[I];$e(ne)&&(n[I]=ne.bind(o))}if(a){const I=a.call(o,o);Ye(I)&&(e.data=pn(I))}if(rs=!0,r)for(const I in r){const ne=r[I],ge=$e(ne)?ne.bind(o,o):$e(ne.get)?ne.get.bind(o,o):oo,C=!$e(ne)&&$e(ne.set)?ne.set.bind(o):oo,ae=te({get:ge,set:C});Object.defineProperty(n,I,{enumerable:!0,configurable:!0,get:()=>ae.value,set:ie=>ae.value=ie})}if(i)for(const I in i)Nl(i[I],n,o,I);if(l){const I=$e(l)?l.call(o):l;Reflect.ownKeys(I).forEach(ne=>{Ft(ne,I[ne])})}c&&Ml(c,e,"c");function $(I,ne){xe(ne)?ne.forEach(ge=>I(ge.bind(o))):ne&&I(ne.bind(o))}if($($l,p),$(co,g),$(Ng,w),$(Rg,b),$(Tg,y),$(Pg,d),$(Dg,L),$(Fg,A),$(Og,S),$(uo,f),$(Wa,k),$(Ig,P),xe(z))if(z.length){const I=e.exposed||(e.exposed={});z.forEach(ne=>{Object.defineProperty(I,ne,{get:()=>o[ne],set:ge=>o[ne]=ge,enumerable:!0})})}else e.exposed||(e.exposed={});x&&e.render===oo&&(e.render=x),W!=null&&(e.inheritAttrs=W),re&&(e.components=re),M&&(e.directives=M),P&&os(e)}function Kg(e,t,o=oo){xe(e)&&(e=ss(e));for(const n in e){const a=e[n];let r;Ye(a)?"default"in a?r=Fe(a.from||n,a.default,!0):r=Fe(a.from||n):r=Fe(a),st(r)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>r.value,set:s=>r.value=s}):t[n]=r}}function Ml(e,t,o){Jt(xe(e)?e.map(n=>n.bind(t.proxy)):e.bind(t.proxy),t,o)}function Nl(e,t,o,n){let a=n.includes(".")?bl(o,n):()=>o[n];if(tt(e)){const r=t[e];$e(r)&&ct(a,r)}else if($e(e))ct(a,e.bind(o));else if(Ye(e))if(xe(e))e.forEach(r=>Nl(r,t,o,n));else{const r=$e(e.handler)?e.handler.bind(o):t[e.handler];$e(r)&&ct(a,r,e)}}function Rl(e){const t=e.type,{mixins:o,extends:n}=t,{mixins:a,optionsCache:r,config:{optionMergeStrategies:s}}=e.appContext,i=r.get(t);let l;return i?l=i:!a.length&&!o&&!n?l=t:(l={},a.length&&a.forEach(u=>Ya(l,u,s,!0)),Ya(l,t,s)),Ye(t)&&r.set(t,l),l}function Ya(e,t,o,n=!1){const{mixins:a,extends:r}=t;r&&Ya(e,r,o,!0),a&&a.forEach(s=>Ya(e,s,o,!0));for(const s in t)if(!(n&&s==="expose")){const i=zg[s]||o&&o[s];e[s]=i?i(e[s],t[s]):t[s]}return e}const zg={data:Il,props:Ol,emits:Ol,methods:Xn,computed:Xn,beforeCreate:Rt,created:Rt,beforeMount:Rt,mounted:Rt,beforeUpdate:Rt,updated:Rt,beforeDestroy:Rt,beforeUnmount:Rt,destroyed:Rt,unmounted:Rt,activated:Rt,deactivated:Rt,errorCaptured:Rt,serverPrefetch:Rt,components:Xn,directives:Xn,watch:Vg,provide:Il,inject:Hg};function Il(e,t){return t?e?function(){return dt($e(e)?e.call(this,this):e,$e(t)?t.call(this,this):t)}:t:e}function Hg(e,t){return Xn(ss(e),ss(t))}function ss(e){if(xe(e)){const t={};for(let o=0;ot==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${_t(t)}Modifiers`]||e[`${jt(t)}Modifiers`];function Jg(e,t,...o){if(e.isUnmounted)return;const n=e.vnode.props||et;let a=o;const r=t.startsWith("update:"),s=r&&qg(n,t.slice(7));s&&(s.trim&&(a=o.map(c=>tt(c)?c.trim():c)),s.number&&(a=a.map(Ca)));let i,l=n[i=Ir(t)]||n[i=Ir(_t(t))];!l&&r&&(l=n[i=Ir(jt(t))]),l&&Jt(l,e,6,a);const u=n[i+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[i])return;e.emitted[i]=!0,Jt(u,e,6,a)}}const Xg=new WeakMap;function Dl(e,t,o=!1){const n=o?Xg:t.emitsCache,a=n.get(e);if(a!==void 0)return a;const r=e.emits;let s={},i=!1;if(!$e(e)){const l=u=>{const c=Dl(u,t,!0);c&&(i=!0,dt(s,c))};!o&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!r&&!i?(Ye(e)&&n.set(e,null),null):(xe(r)?r.forEach(l=>s[l]=null):dt(s,r),Ye(e)&&n.set(e,s),s)}function qa(e,t){return!e||!ka(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),Ve(e,t[0].toLowerCase()+t.slice(1))||Ve(e,jt(t))||Ve(e,t))}function Zx(){}function Bl(e){const{type:t,vnode:o,proxy:n,withProxy:a,propsOptions:[r],slots:s,attrs:i,emit:l,render:u,renderCache:c,props:p,data:g,setupState:w,ctx:b,inheritAttrs:y}=e,d=Ga(e);let h,f;try{if(o.shapeFlag&4){const k=a||n,x=k;h=go(u.call(x,k,c,p,w,g,b)),f=i}else{const k=t;h=go(k.length>1?k(p,{attrs:i,slots:s,emit:l}):k(p,null)),f=t.props?i:Zg(i)}}catch(k){Ao.length=0,Hn(k,e,1),h=We(po)}let m=h;if(f&&y!==!1){const k=Object.keys(f),{shapeFlag:x}=m;k.length&&x&7&&(r&&k.some(wa)&&(f=Qg(f,r)),m=vn(m,f,!1,!0))}if(o.dirs&&(m=vn(m,null,!1,!0),m.dirs=m.dirs?m.dirs.concat(o.dirs):o.dirs),o.transition){const k=ja(m.type)&&kl(m)||m;ts(k,o.transition)}return h=m,Ga(d),h}const Zg=e=>{let t;for(const o in e)(o==="class"||o==="style"||ka(o))&&((t||(t={}))[o]=e[o]);return t},Qg=(e,t)=>{const o={};for(const n in e)(!wa(n)||!(n.slice(9)in t))&&(o[n]=e[n]);return o};function ef(e,t,o){const{props:n,children:a,component:r}=e,{props:s,children:i,patchFlag:l}=t,u=r.emitsOptions;if(t.dirs||t.transition)return!0;if(o&&l>=0){if(l&1024)return!0;if(l&16)return n?Gl(n,s,u):!!s;if(l&8){const c=t.dynamicProps;for(let p=0;pObject.create(Ul),zl=e=>Object.getPrototypeOf(e)===Ul;function of(e,t,o,n=!1){const a={},r=Kl();e.propsDefaults=Object.create(null),Hl(e,t,a,r);for(const s in e.propsOptions[0])s in a||(a[s]=void 0);o?e.props=n?a:eg(a):e.type.props?e.props=a:e.props=r,e.attrs=r}function nf(e,t,o,n){const{props:a,attrs:r,vnode:{patchFlag:s}}=e,i=Be(a),[l]=e.propsOptions;let u=!1;if((n||s>0)&&!(s&16)){if(s&8){const c=e.vnode.dynamicProps;for(let p=0;p{l=!0;const[g,w]=Vl(p,t,!0);dt(s,g),w&&i.push(...w)};!o&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}if(!r&&!l)return Ye(e)&&n.set(e,un),un;if(xe(r))for(let c=0;ce==="_"||e==="_ctx"||e==="$stable",cs=e=>xe(e)?e.map(go):[go(e)],rf=(e,t,o)=>{if(t._n)return t;const n=Vt((...a)=>cs(t(...a)),o);return n._c=!1,n},Yl=(e,t,o)=>{const n=e._ctx;for(const a in e){if(ls(a))continue;const r=e[a];if($e(r))t[a]=rf(a,r,n);else if(r!=null){const s=cs(r);t[a]=()=>s}}},ql=(e,t)=>{const o=cs(t);e.slots.default=()=>o},Jl=(e,t,o)=>{for(const n in t)(o||!ls(n))&&(e[n]=t[n])},sf=(e,t,o)=>{const n=e.slots=Kl();if(e.vnode.shapeFlag&32){const a=t._;a?(Jl(n,t,o),o&&Ni(n,"_",a,!0)):Yl(t,n)}else t&&ql(e,t)},lf=(e,t,o)=>{const{vnode:n,slots:a}=e;let r=!0,s=et;if(n.shapeFlag&32){const i=t._;i?o&&i===1?r=!1:Jl(a,t,o):(r=!t.$stable,Yl(t,a)),s=t}else t&&(ql(e,t),s={default:1});if(r)for(const i in a)!ls(i)&&s[i]==null&&delete a[i]},It=gf;function cf(e){return uf(e)}function uf(e,t){const o=La();o.__VUE__=!0;const{insert:n,remove:a,patchProp:r,createElement:s,createText:i,createComment:l,setText:u,setElementText:c,parentNode:p,nextSibling:g,setScopeId:w=oo,insertStaticContent:b}=e,y=(E,O,R,K=null,X=null,J=null,Z=void 0,Q=null,_=!!O.dynamicChildren)=>{if(E===O)return;E&&!ta(E,O)&&(K=Oe(E),ie(E,X,J,!0),E=null),O.patchFlag===-2&&(_=!1,O.dynamicChildren=null);const{type:v,ref:B,shapeFlag:V}=O;switch(v){case Zn:d(E,O,R,K);break;case po:h(E,O,R,K);break;case Ja:E==null&&f(O,R,K,Z);break;case Pe:re(E,O,R,K,X,J,Z,Q,_);break;default:V&1?x(E,O,R,K,X,J,Z,Q,_):V&6?M(E,O,R,K,X,J,Z,Q,_):(V&64||V&128)&&v.process(E,O,R,K,X,J,Z,Q,_,Xe)}B!=null&&X?qn(B,E&&E.ref,J,O||E,!O):B==null&&E&&E.ref!=null&&qn(E.ref,null,J,E,!0)},d=(E,O,R,K)=>{if(E==null)n(O.el=i(O.children),R,K);else{const X=O.el=E.el;O.children!==E.children&&u(X,O.children)}},h=(E,O,R,K)=>{E==null?n(O.el=l(O.children||""),R,K):O.el=E.el},f=(E,O,R,K)=>{[E.el,E.anchor]=b(E.children,O,R,K,E.el,E.anchor)},m=({el:E,anchor:O},R,K)=>{let X;for(;E&&E!==O;)X=g(E),n(E,R,K),E=X;n(O,R,K)},k=({el:E,anchor:O})=>{let R;for(;E&&E!==O;)R=g(E),a(E),E=R;a(O)},x=(E,O,R,K,X,J,Z,Q,_)=>{if(O.type==="svg"?Z="svg":O.type==="math"&&(Z="mathml"),E==null)A(O,R,K,X,J,Z,Q,_);else{const v=E.el&&E.el._isVueCE?E.el:null;try{v&&v._beginPatch(),P(E,O,X,J,Z,Q,_)}finally{v&&v._endPatch()}}},A=(E,O,R,K,X,J,Z,Q)=>{let _,v;const{props:B,shapeFlag:V,transition:ue,dirs:se}=E;if(_=E.el=s(E.type,J,B&&B.is,B),V&8?c(_,E.children):V&16&&L(E.children,_,null,K,X,us(E,J),Z,Q),se&&Xo(E,null,K,"created"),S(_,E,E.scopeId,Z,K),B){for(const Y in B)Y!=="value"&&!Dn(Y)&&r(_,Y,null,B[Y],J,K);"value"in B&&r(_,"value",null,B.value,J),(v=B.onVnodeBeforeMount)&&fo(v,K,E)}se&&Xo(E,null,K,"beforeMount");const G=df(X,ue);G&&ue.beforeEnter(_),n(_,O,R),((v=B&&B.onVnodeMounted)||G||se)&&It(()=>{try{v&&fo(v,K,E),G&&ue.enter(_),se&&Xo(E,null,K,"mounted")}finally{}},X)},S=(E,O,R,K,X)=>{if(R&&w(E,R),K)for(let J=0;J{for(let v=_;v{const Q=O.el=E.el;let{patchFlag:_,dynamicChildren:v,dirs:B}=O;_|=E.patchFlag&16;const V=E.props||et,ue=O.props||et;let se;if(R&&en(R,!1),(se=ue.onVnodeBeforeUpdate)&&fo(se,R,O,E),B&&Xo(O,E,R,"beforeUpdate"),R&&en(R,!0),v&&(!E.dynamicChildren||E.dynamicChildren.length!==v.length)&&(_=0,Z=!1,v=null),(V.innerHTML&&ue.innerHTML==null||V.textContent&&ue.textContent==null)&&c(Q,""),v?z(E.dynamicChildren,v,Q,R,K,us(O,X),J):Z||ne(E,O,Q,null,R,K,us(O,X),J,!1),_>0){if(_&16)W(Q,V,ue,R,X);else if(_&2&&V.class!==ue.class&&r(Q,"class",null,ue.class,X),_&4&&r(Q,"style",V.style,ue.style,X),_&8){const G=O.dynamicProps;for(let Y=0;Y{se&&fo(se,R,O,E),B&&Xo(O,E,R,"updated")},K)},z=(E,O,R,K,X,J,Z)=>{for(let Q=0;Q{if(O!==R){if(O!==et)for(const J in O)!Dn(J)&&!(J in R)&&r(E,J,O[J],null,X,K);for(const J in R){if(Dn(J))continue;const Z=R[J],Q=O[J];Z!==Q&&J!=="value"&&r(E,J,Q,Z,X,K)}"value"in R&&r(E,"value",O.value,R.value,X)}},re=(E,O,R,K,X,J,Z,Q,_)=>{const v=O.el=E?E.el:i(""),B=O.anchor=E?E.anchor:i("");let{patchFlag:V,dynamicChildren:ue,slotScopeIds:se}=O;se&&(Q=Q?Q.concat(se):se),E==null?(n(v,R,K),n(B,R,K),L(O.children||[],R,B,X,J,Z,Q,_)):V>0&&V&64&&ue&&E.dynamicChildren&&E.dynamicChildren.length===ue.length?(z(E.dynamicChildren,ue,R,X,J,Z,Q),(O.key!=null||X&&O===X.subTree)&&ds(E,O,!0)):ne(E,O,R,B,X,J,Z,Q,_)},M=(E,O,R,K,X,J,Z,Q,_)=>{O.slotScopeIds=Q,E==null?O.shapeFlag&512?X.ctx.activate(O,R,K,Z,_):F(O,R,K,X,J,Z,_):T(E,O,_)},F=(E,O,R,K,X,J,Z)=>{const Q=E.component=vf(E,K,X);if(Ha(E)&&(Q.ctx.renderer=Xe),kf(Q,!1,Z),Q.asyncDep){if(X&&X.registerDep(Q,$,Z),!E.el){const _=Q.subTree=We(po);h(null,_,O,R),E.placeholder=_.el}}else $(Q,E,O,R,X,J,Z)},T=(E,O,R)=>{const K=O.component=E.component;if(ef(E,O,R))if(K.asyncDep&&!K.asyncResolved){I(K,O,R);return}else K.next=O,K.update();else O.el=E.el,K.vnode=O},$=(E,O,R,K,X,J,Z)=>{const Q=()=>{if(E.isMounted){let{next:V,bu:ue,u:se,parent:G,vnode:Y}=E;{const U=Xl(E);if(U){V&&(V.el=Y.el,I(E,V,Z)),U.asyncDep.then(()=>{It(()=>{E.isUnmounted||v()},X)});return}}let me=V,Ae;en(E,!1),V?(V.el=Y.el,I(E,V,Z)):V=Y,ue&&Ea(ue),(Ae=V.props&&V.props.onVnodeBeforeUpdate)&&fo(Ae,G,V,Y),en(E,!0);const Ge=Bl(E),D=E.subTree;E.subTree=Ge,y(D,Ge,p(D.el),Oe(D),E,X,J),V.el=Ge.el,me===null&&tf(E,Ge.el),se&&It(se,X),(Ae=V.props&&V.props.onVnodeUpdated)&&It(()=>fo(Ae,G,V,Y),X)}else{let V;const{el:ue,props:se}=O,{bm:G,m:Y,parent:me,root:Ae,type:Ge}=E,D=yn(O);en(E,!1),G&&Ea(G),!D&&(V=se&&se.onVnodeBeforeMount)&&fo(V,me,O),en(E,!0);{Ae.ce&&Ae.ce._hasShadowRoot()&&Ae.ce._injectChildStyle(Ge,E.parent?E.parent.type:void 0);const U=E.subTree=Bl(E);y(null,U,R,K,E,X,J),O.el=U.el}if(Y&&It(Y,X),!D&&(V=se&&se.onVnodeMounted)){const U=O;It(()=>fo(V,me,U),X)}(O.shapeFlag&256||me&&yn(me.vnode)&&me.vnode.shapeFlag&256)&&E.a&&It(E.a,X),E.isMounted=!0,O=R=K=null}};E.scope.on();const _=E.effect=new Ui(Q);E.scope.off();const v=E.update=_.run.bind(_),B=E.job=_.runIfDirty.bind(_);B.i=E,B.id=E.uid,_.scheduler=()=>Jr(B),en(E,!0),v()},I=(E,O,R)=>{O.component=E;const K=E.vnode.props;E.vnode=O,E.next=null,nf(E,O.props,K,R),lf(E,O.children,R),ao(),pl(E),ro()},ne=(E,O,R,K,X,J,Z,Q,_=!1)=>{const v=E&&E.children,B=E?E.shapeFlag:0,V=O.children,{patchFlag:ue,shapeFlag:se}=O;if(ue>0){if(ue&128){C(v,V,R,K,X,J,Z,Q,_);return}else if(ue&256){ge(v,V,R,K,X,J,Z,Q,_);return}}se&8?(B&16&&Re(v,X,J),V!==v&&c(R,V)):B&16?se&16?C(v,V,R,K,X,J,Z,Q,_):Re(v,X,J,!0):(B&8&&c(R,""),se&16&&L(V,R,K,X,J,Z,Q,_))},ge=(E,O,R,K,X,J,Z,Q,_)=>{E=E||un,O=O||un;const v=E.length,B=O.length,V=Math.min(v,B);let ue;for(ue=0;ueB?Re(E,X,J,!0,!1,V):L(O,R,K,X,J,Z,Q,_,V)},C=(E,O,R,K,X,J,Z,Q,_)=>{let v=0;const B=O.length;let V=E.length-1,ue=B-1;for(;v<=V&&v<=ue;){const se=E[v],G=O[v]=_?So(O[v]):go(O[v]);if(ta(se,G))y(se,G,R,null,X,J,Z,Q,_);else break;v++}for(;v<=V&&v<=ue;){const se=E[V],G=O[ue]=_?So(O[ue]):go(O[ue]);if(ta(se,G))y(se,G,R,null,X,J,Z,Q,_);else break;V--,ue--}if(v>V){if(v<=ue){const se=ue+1,G=seue)for(;v<=V;)ie(E[v],X,J,!0),v++;else{const se=v,G=v,Y=new Map;for(v=G;v<=ue;v++){const ke=O[v]=_?So(O[v]):go(O[v]);ke.key!=null&&Y.set(ke.key,v)}let me,Ae=0;const Ge=ue-G+1;let D=!1,U=0;const he=new Array(Ge);for(v=0;v=Ge){ie(ke,X,J,!0);continue}let je;if(ke.key!=null)je=Y.get(ke.key);else for(me=G;me<=ue;me++)if(he[me-G]===0&&ta(ke,O[me])){je=me;break}je===void 0?ie(ke,X,J,!0):(he[je-G]=v+1,je>=U?U=je:D=!0,y(ke,O[je],R,null,X,J,Z,Q,_),Ae++)}const ve=D?pf(he):un;for(me=ve.length-1,v=Ge-1;v>=0;v--){const ke=G+v,je=O[ke],Ce=O[ke+1],xt=ke+1{const{el:J,type:Z,transition:Q,children:_,shapeFlag:v}=E;if(v&6){ae(E.component.subTree,O,R,K);return}if(v&128){E.suspense.move(O,R,K);return}if(v&64){Z.move(E,O,R,Xe);return}if(Z===Pe){n(J,O,R);for(let V=0;V<_.length;V++)ae(_[V],O,R,K);n(E.anchor,O,R);return}if(Z===Ja){m(E,O,R);return}if(K!==2&&v&1&&Q)if(K===0)Q.persisted&&!J[es]?n(J,O,R):(Q.beforeEnter(J),n(J,O,R),It(()=>Q.enter(J),X));else{const{leave:V,delayLeave:ue,afterLeave:se}=Q,G=()=>{E.ctx.isUnmounted?a(J):n(J,O,R)},Y=()=>{const me=J._isLeaving||!!J[es];J._isLeaving&&J[es](!0),Q.persisted&&!me?G():V(J,()=>{G(),se&&se()})};ue?ue(J,G,Y):Y()}else n(J,O,R)},ie=(E,O,R,K=!1,X=!1)=>{const{type:J,props:Z,ref:Q,children:_,dynamicChildren:v,shapeFlag:B,patchFlag:V,dirs:ue,cacheIndex:se,memo:G}=E;if(V===-2&&(X=!1),Q!=null&&(ao(),qn(Q,null,R,E,!0),ro()),se!=null&&(O.renderCache[se]=void 0),B&256){O.ctx.deactivate(E);return}const Y=B&1&&ue,me=!yn(E);let Ae;if(me&&(Ae=Z&&Z.onVnodeBeforeUnmount)&&fo(Ae,O,E),B&6)Me(E.component,R,K);else{if(B&128){E.suspense.unmount(R,K);return}Y&&Xo(E,null,O,"beforeUnmount"),B&64?E.type.remove(E,O,R,Xe,K):v&&!v.hasOnce&&(J!==Pe||V>0&&V&64)?Re(v,O,R,!1,!0):(J===Pe&&V&384||!X&&B&16)&&Re(_,O,R),K&&le(E)}const Ge=G!=null&&se==null;(me&&(Ae=Z&&Z.onVnodeUnmounted)||Y||Ge)&&It(()=>{Ae&&fo(Ae,O,E),Y&&Xo(E,null,O,"unmounted"),Ge&&(E.el=null)},R)},le=E=>{const{type:O,el:R,anchor:K,transition:X}=E;if(O===Pe){we(R,K);return}if(O===Ja){k(E);return}const J=()=>{a(R),X&&!X.persisted&&X.afterLeave&&X.afterLeave()};if(E.shapeFlag&1&&X&&!X.persisted){const{leave:Z,delayLeave:Q}=X,_=()=>Z(R,J);Q?Q(E.el,J,_):_()}else J()},we=(E,O)=>{let R;for(;E!==O;)R=g(E),a(E),E=R;a(O)},Me=(E,O,R)=>{const{bum:K,scope:X,job:J,subTree:Z,um:Q,m:_,a:v}=E;Zl(_),Zl(v),K&&Ea(K),X.stop(),J&&(J.flags|=8,ie(Z,E,O,R)),Q&&It(Q,O),It(()=>{E.isUnmounted=!0},O)},Re=(E,O,R,K=!1,X=!1,J=0)=>{for(let Z=J;Z{if(E.shapeFlag&6)return Oe(E.component.subTree);if(E.shapeFlag&128)return E.suspense.next();const O=g(E.anchor||E.el),R=O&&O[yl];return R?g(R):O};let Ie=!1;const Je=(E,O,R)=>{let K;E==null?O._vnode&&(ie(O._vnode,null,null,!0),K=O._vnode.component):y(O._vnode||null,E,O,null,null,null,R),O._vnode=E,Ie||(Ie=!0,pl(K),gl(),Ie=!1)},Xe={p:y,um:ie,m:ae,r:le,mt:F,mc:L,pc:ne,pbc:z,n:Oe,o:e};return{render:Je,hydrate:void 0,createApp:Yg(Je)}}function us({type:e,props:t},o){return o==="svg"&&e==="foreignObject"||o==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:o}function en({effect:e,job:t},o){o?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function df(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function ds(e,t,o=!1){const n=e.children,a=t.children;if(xe(n)&&xe(a))for(let r=0;r>1,e[o[i]]0&&(t[n]=o[r-1]),o[r]=n)}}for(r=o.length,s=o[r-1];r-- >0;)o[r]=s,s=t[s];return o}function Xl(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:Xl(t)}function Zl(e){if(e)for(let t=0;te.__isSuspense;function gf(e,t){t&&t.pendingBranch?xe(e)?t.effects.push(...e):t.effects.push(e):bg(e)}const Pe=Symbol.for("v-fgt"),Zn=Symbol.for("v-txt"),po=Symbol.for("v-cmt"),Ja=Symbol.for("v-stc"),Ao=[];let Kt=null;function H(e=!1){Ao.push(Kt=e?null:[])}function ps(){Ao.pop(),Kt=Ao[Ao.length-1]||null}let Qn=1;function Xa(e,t=!1){Qn+=e,e<0&&Kt&&t&&(Kt.hasOnce=!0)}function tc(e){return e.dynamicChildren=Qn>0?Kt||un:null,ps(),Qn>0&&Kt&&Kt.push(e),e}function ee(e,t,o,n,a,r){return tc(N(e,t,o,n,a,r,!0))}function pt(e,t,o,n,a){return tc(We(e,t,o,n,a,!0))}function ea(e){return e?e.__v_isVNode===!0:!1}function ta(e,t){return e.type===t.type&&e.key===t.key}const oc=({key:e})=>e??null,Za=({ref:e,ref_key:t,ref_for:o})=>(typeof e=="number"&&(e=""+e),e!=null?tt(e)||st(e)||$e(e)?{i:$t,r:e,k:t,f:!!o}:e:null);function N(e,t=null,o=null,n=0,a=null,r=e===Pe?0:1,s=!1,i=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&oc(t),ref:t&&Za(t),scopeId:hl,slotScopeIds:null,children:o,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:r,patchFlag:n,dynamicProps:a,dynamicChildren:null,appContext:null,ctx:$t};return i?(Qa(l,o),r&128&&e.normalize(l)):o&&(l.shapeFlag|=tt(o)?8:16),Qn>0&&!s&&Kt&&(l.patchFlag>0||r&6)&&l.patchFlag!==32&&Kt.push(l),l}const We=ff;function ff(e,t=null,o=null,n=0,a=null,r=!1){if((!e||e===El)&&(e=po),ea(e)){const i=vn(e,t,!0);return o&&Qa(i,o),Qn>0&&!r&&Kt&&(i.shapeFlag&6?Kt[Kt.indexOf(e)]=i:Kt.push(i)),i.patchFlag=-2,i}if(Ef(e)&&(e=e.__vccOpts),t){t=hf(t);let{class:i,style:l}=t;i&&!tt(i)&&(t.class=Ne(i)),Ye(l)&&(Oa(l)&&!xe(l)&&(l=dt({},l)),t.style=rt(l))}const s=tt(e)?1:ec(e)?128:ja(e)?64:Ye(e)?4:$e(e)?2:0;return N(e,t,o,n,a,s,r,!0)}function hf(e){return e?Oa(e)||zl(e)?dt({},e):e:null}function vn(e,t,o=!1,n=!1){const{props:a,ref:r,patchFlag:s,children:i,transition:l}=e,u=t?bf(a||{},t):a,c={__v_isVNode:!0,__v_skip:!0,type:e.type,props:u,key:u&&oc(u),ref:t&&t.ref?o&&r?xe(r)?r.concat(Za(t)):[r,Za(t)]:Za(t):r,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:i,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Pe?s===-1?16:s|16:s,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&vn(e.ssContent),ssFallback:e.ssFallback&&vn(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&n&&ts(c,l.clone(c)),c}function mt(e=" ",t=0){return We(Zn,null,e,t)}function mf(e,t){const o=We(Ja,null,e);return o.staticCount=t,o}function ye(e="",t=!1){return t?(H(),pt(po,null,e)):We(po,null,e)}function go(e){return e==null||typeof e=="boolean"?We(po):xe(e)?We(Pe,null,e.slice()):ea(e)?So(e):We(Zn,null,String(e))}function So(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:vn(e)}function Qa(e,t){let o=0;const{shapeFlag:n}=e;if(t==null)t=null;else if(xe(t))o=16;else if(typeof t=="object")if(n&65){const a=t.default;a&&(a._c&&(a._d=!1),Qa(e,a()),a._c&&(a._d=!0));return}else{o=32;const a=t._;!a&&!zl(t)?t._ctx=$t:a===3&&$t&&($t.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if($e(t)){if(n&65){Qa(e,{default:t});return}t={default:t,_ctx:$t},o=32}else t=String(t),n&64?(o=16,t=[mt(t)]):o=8;e.children=t,e.shapeFlag|=o}function bf(...e){const t={};for(let o=0;oCt||$t;let er,oa;{const e=La(),t=(o,n)=>{let a;return(a=e[o])||(a=e[o]=[]),a.push(n),r=>{a.length>1?a.forEach(s=>s(r)):a[0](r)}};er=t("__VUE_INSTANCE_SETTERS__",o=>Ct=o),oa=t("__VUE_SSR_SETTERS__",o=>kn=o)}const na=e=>{const t=Ct;return er(e),e.scope.on(),()=>{e.scope.off(),er(t)}},nc=()=>{Ct&&Ct.scope.off(),er(null)};function ac(e){return e.vnode.shapeFlag&4}let kn=!1;function kf(e,t=!1,o=!1){t&&oa(t);const{props:n,children:a}=e.vnode,r=ac(e);of(e,n,r,t),sf(e,a,o||t);const s=r?wf(e,t):void 0;return t&&oa(!1),s}function wf(e,t){const o=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,jg);const{setup:n}=o;if(n){ao();const a=e.setupContext=n.length>1?Af(e):null,r=na(e),s=hn(n,e,0,[e.props,a]),i=Pi(s);if(ro(),r(),(i||e.sp)&&!yn(e)&&os(e),i){if(s.then(nc,nc),t)return s.then(l=>{oa(!0);try{rc(e,l,t)}finally{oa(!1)}}).catch(l=>{Hn(l,e,0)});e.asyncDep=s}else rc(e,s)}else sc(e)}function rc(e,t,o){$e(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:Ye(t)&&(e.setupState=il(t)),sc(e)}function sc(e,t,o){const n=e.type;e.render||(e.render=n.render||oo);{const a=na(e);ao();try{Ug(e)}finally{ro(),a()}}}const xf={get(e,t){return Pt(e,"get",""),e[t]}};function Af(e){const t=o=>{e.exposed=o||{}};return{attrs:new Proxy(e.attrs,xf),slots:e.slots,emit:e.emit,expose:t}}function tr(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(il(qo(e.exposed)),{get(t,o){if(o in t)return t[o];if(o in Jn)return Jn[o](e)},has(t,o){return o in t||o in Jn}})):e.proxy}const Sf=/(?:^|[-_])\w/g,$f=e=>e.replace(Sf,t=>t.toUpperCase()).replace(/[-_]/g,"");function ic(e,t=!0){return $e(e)?e.displayName||e.name:e.name||t&&e.__name}function lc(e,t,o=!1){let n=ic(t);if(!n&&t.__file){const a=t.__file.match(/([^/\\]+)\.\w+$/);a&&(n=a[1])}if(!n&&e){const a=r=>{for(const s in r)if(r[s]===t)return s};n=a(e.components)||e.parent&&a(e.parent.type.components)||a(e.appContext.components)}return n?$f(n):o?"App":"Anonymous"}function Ef(e){return $e(e)&&"__vccOpts"in e}const te=(e,t)=>lg(e,t,kn);function cc(e,t,o){try{Xa(-1);const n=arguments.length;return n===2?Ye(t)&&!xe(t)?ea(t)?We(e,null,[t]):We(e,t):We(e,null,t):(n>3?o=Array.prototype.slice.call(arguments,2):n===3&&ea(o)&&(o=[o]),We(e,t,o))}finally{Xa(1)}}const Cf="3.5.42";/** +`,...mg(a)),console.warn(...r)}no(),Jr=!1}function hg(){let e=zn[zn.length-1];if(!e)return[];const t=[];for(;e;){const o=t[0];o&&o.vnode===e?o.recurseCount++:t.push({vnode:e,recurseCount:0});const n=e.component&&e.component.parent;e=n&&n.vnode}return t}function mg(e){const t=[];return e.forEach((o,n)=>{t.push(...n===0?[]:[` +`],...bg(o))}),t}function bg({vnode:e,recurseCount:t}){const o=t>0?`... (${t} recursive calls)`:"",n=e.component?e.component.parent==null:!1,a=` at <${dc(e.component,e.type,n)}`,r=">"+o;return e.props?[a,...yg(e.props),r]:[a+r]}function yg(e){const t=[],o=Object.keys(e);return o.slice(0,3).forEach(n=>{t.push(...pl(n,e[n]))}),o.length>3&&t.push(" ..."),t}function pl(e,t,o){return Qe(t)?(t=JSON.stringify(t),o?t:[`${e}=${t}`]):typeof t=="number"||typeof t=="boolean"||t==null?o?t:[`${e}=${t}`]:at(t)?(t=pl(e,Be(t.value),!0),o?t:[`${e}=Ref<`,t,">"]):Ee(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=Be(t),o?t:[`${e}=`,t])}function fn(e,t,o,n){try{return n?e(...n):e()}catch(a){Hn(a,t,o)}}function qt(e,t,o,n){if(Ee(e)){const a=fn(e,t,o,n);return a&&Ri(a)&&a.catch(r=>{Hn(r,t,o)}),a}if(xe(e)){const a=[];for(let r=0;r>>1,a=Mt[n],r=Vn(a);r=Vn(o)?Mt.push(e):Mt.splice(vg(t),0,e),e.flags|=1,fl()}}function fl(){Ba||(Ba=gl.then(bl))}function kg(e){if(!xe(e))Ro&&e.id===-1?Ro.splice(mn+1,0,e):e.flags&1||(hn.push(e),e.flags|=1);else for(let t=0;tVn(o)-Vn(n));if(hn.length=0,Ro){for(let o=0;oe.id==null?e.flags&2?-1:1/0:e.id;function bl(e){try{for(ro=0;ro{n._d&&Xa(-1);const r=Ga(t),s=xo.length;let i;try{i=e(...a)}finally{for(let l=xo.length;l>s;l--)gs();Ga(r),n._d&&Xa(1)}return i};return n._n=!0,n._c=!0,n._d=!0,n}function _l(e,t){if(St===null)return e;const o=tr(St),n=e.dirs||(e.dirs=[]);for(let a=0;a1)return o&&Ee(t)?t.call(n&&n.proxy):t}}function wg(){return!!(So()||Zo)}const xg=Symbol.for("v-scx"),Ag=()=>Fe(xg);function Sg(e,t){return Zr(e,null,t)}function it(e,t,o){return Zr(e,t,o)}function Zr(e,t,o=Ze){const{immediate:n,deep:a,flush:r,once:s}=o,i=lt({},o),l=t&&n||!t&&r!=="post";let u;if(vn){if(r==="sync"){const k=Ag();u=k.__watcherHandles||(k.__watcherHandles=[])}else if(!l){const k=()=>{};return k.stop=eo,k.resume=eo,k.pause=eo,k}}const c=Et;i.call=(k,w,m)=>qt(k,c,w,m);let p=!1;r==="post"?i.scheduler=k=>{Rt(k,c&&c.suspense)}:r!=="sync"&&(p=!0,i.scheduler=(k,w)=>{w?k():Xr(k)}),i.augmentJob=k=>{t&&(k.flags|=4),p&&(k.flags|=2,c&&(k.id=c.uid,k.i=c))};const f=fg(e,t,i);return vn&&(u?u.push(f):l&&f()),f}function $g(e,t,o){const n=this.proxy,a=Qe(e)?e.includes(".")?vl(n,e):()=>n[e]:e.bind(n,n);let r;Ee(t)?r=t:(r=t.handler,o=t);const s=na(this),i=Zr(a,r.bind(n),o);return s(),i}function vl(e,t){const o=t.split(".");return()=>{let n=e;for(let a=0;ae.__isTeleport,Xo=e=>e&&(e.disabled||e.disabled===""),Eg=e=>e&&(e.defer||e.defer===""),wl=e=>typeof SVGElement<"u"&&e instanceof SVGElement,xl=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,Qr=(e,t)=>{const o=e&&e.to;return Qe(o)?t?t(o):null:o},Cg={name:"Teleport",__isTeleport:!0,process(e,t,o,n,a,r,s,i,l,u){const{mc:c,pc:p,pbc:f,o:{insert:k,querySelector:w,createText:m,createComment:d,parentNode:g}}=u,h=Xo(t.props);let{dynamicChildren:b}=t;const _=(S,L,T)=>{S.shapeFlag&16&&c(S.children,L,T,a,r,s,i,l)},x=(S=t)=>{const L=Xo(S.props),T=S.target=Qr(S.props,w),z=es(T,S,m,k);T&&(s!=="svg"&&wl(T)?s="svg":s!=="mathml"&&xl(T)&&(s="mathml"),a&&a.isCE&&(a.ce._teleportTargets||(a.ce._teleportTargets=new Set)).add(T),L||(_(S,T,z),Wn(S,!1)))},A=S=>{const L=()=>{if(Io.get(S)===L){if(Io.delete(S),Xo(S.props)){const T=g(S.el)||o;_(S,T,S.anchor),Wn(S,!0)}x(S)}};Io.set(S,L),Rt(L,r)};if(e==null){const S=t.el=m(""),L=t.anchor=m("");if(k(S,o,n),k(L,o,n),Eg(t.props)||r&&r.pendingBranch){A(t);return}h&&(_(t,o,L),Wn(t,!0)),x()}else{t.el=e.el;const S=t.anchor=e.anchor,L=Io.get(e);if(L){L.flags|=8,Io.delete(e),A(t);return}t.targetStart=e.targetStart;const T=t.target=e.target,z=t.targetAnchor=e.targetAnchor,Y=Xo(e.props),re=Y?o:T,M=Y?S:z;if(s==="svg"||wl(T)?s="svg":(s==="mathml"||xl(T))&&(s="mathml"),b?(f(e.dynamicChildren,b,re,a,r,s,i),ps(e,t,!0)):l||p(e,t,re,M,a,r,s,i,!1),h)Y?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Ua(t,o,S,u,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const F=Qr(t.props,w);F&&(t.target=F,Ua(t,F,null,u,0))}else Y&&Ua(t,T,z,u,1);Wn(t,h)}},remove(e,t,o,{um:n,o:{remove:a}},r){const{shapeFlag:s,children:i,anchor:l,targetStart:u,targetAnchor:c,target:p,props:f}=e,k=Xo(f),w=r||!k,m=Io.get(e);if(m&&(m.flags|=8,Io.delete(e)),p&&(a(u),a(c)),r&&a(l),!m&&(k||p)&&s&16)for(let d=0;d1){for(const o of e)if(o.type!==co){t=o;break}}return t}function Al(e){if(!Ha(e))return ja(e.type)&&e.children?Pg(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:o}=e;if(o){if(t&16)return o[0];if(t&32&&Ee(o.default))return o.default()}}function os(e,t){if(e.shapeFlag&6&&e.component){e.transition=t;const o=e.component.subTree;os(ja(o.type)&&Al(o)||o,t)}else e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Yn(e,t){return Ee(e)?lt({name:e.name},t,{setup:e}):e}function ns(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Sl(e,t){let o;return!!((o=Object.getOwnPropertyDescriptor(e,t))&&!o.configurable)}const Ka=new WeakMap;function qn(e,t,o,n,a=!1){if(xe(e)){e.forEach((m,d)=>qn(m,t&&(xe(t)?t[d]:t),o,n,a));return}if(bn(n)&&!a){n.shapeFlag&512&&n.type.__asyncResolved&&n.component.subTree.component&&qn(e,t,o,n.component.subTree);return}const r=n.shapeFlag&4?tr(n.component):n.el,s=a?null:r,{i,r:l}=e,u=t&&t.r,c=i.refs===Ze?i.refs={}:i.refs,p=i.setupState,f=Be(p),k=p===Ze?Mi:m=>Sl(c,m)?!1:ze(f,m),w=(m,d)=>!(d&&Sl(c,d));if(u!=null&&u!==l){if($l(t),Qe(u))c[u]=null,k(u)&&(p[u]=null);else if(at(u)){const m=t;w(u,m.k)&&(u.value=null),m.k&&(c[m.k]=null)}}if(Ee(l))fn(l,i,12,[s,c]);else{const m=Qe(l),d=at(l);if(m||d){const g=()=>{if(e.f){const h=m?k(l)?p[l]:c[l]:w()||!e.k?l.value:c[e.k];if(a)xe(h)&&Ir(h,r);else if(xe(h))h.includes(r)||h.push(r);else if(m)c[l]=[r],k(l)&&(p[l]=c[l]);else{const b=[r];w(l,e.k)&&(l.value=b),e.k&&(c[e.k]=b)}}else m?(c[l]=s,k(l)&&(p[l]=s)):d&&(w(l,e.k)&&(l.value=s),e.k&&(c[e.k]=s))};if(s){const h=()=>{g(),Ka.delete(e)};h.id=-1,Ka.set(e,h),Rt(h,o)}else $l(e),g()}}}function $l(e){const t=Ka.get(e);t&&(t.flags|=8,Ka.delete(e))}const El=e=>e.nodeType===8;La().requestIdleCallback,La().cancelIdleCallback;function Mg(e,t){if(El(e)&&e.data==="["){let o=1,n=e.nextSibling;for(;n;){if(n.nodeType===1){if(t(n)===!1)break}else if(El(n))if(n.data==="]"){if(--o===0)break}else n.data==="["&&o++;n=n.nextSibling}}else t(e)}const bn=e=>!!e.type.__asyncLoader;function Ng(e){Ee(e)&&(e={loader:e});const{loader:t,loadingComponent:o,errorComponent:n,delay:a=200,hydrate:r,timeout:s,suspensible:i=!0,onError:l}=e;let u=null,c,p=0;const f=()=>(p++,u=null,k()),k=()=>{let w;return u||(w=u=t().catch(m=>{if(m=m instanceof Error?m:new Error(String(m)),l)return new Promise((d,g)=>{l(m,()=>d(f()),()=>g(m),p+1)});throw m}).then(m=>w!==u&&u?u:(m&&(m.__esModule||m[Symbol.toStringTag]==="Module")&&(m=m.default),c=m,m)))};return Yn({name:"AsyncComponentWrapper",__asyncLoader:k,__asyncHydrate(w,m,d){const g=w.isConnected;let h=!1;(m.bu||(m.bu=[])).push(()=>h=!0);const b=()=>{h||!w.parentNode||g&&!w.isConnected||d()},_=r?()=>{const x=r(b,A=>Mg(w,A));x&&(m.bum||(m.bum=[])).push(x)}:b;c?_():k().then(()=>!m.isUnmounted&&_())},get __asyncResolved(){return c},setup(){const w=Et;if(ns(w),c)return()=>za(c,w);const m=x=>{u=null,Hn(x,w,13,!n)};if(i&&w.suspense||vn)return k().then(x=>()=>za(x,w)).catch(x=>(m(x),()=>n?He(n,{error:x}):null));const d=de(!1),g=de(),h=de(!!a);let b,_;return Wa(()=>{b!=null&&clearTimeout(b),_!=null&&clearTimeout(_)}),a&&(_=setTimeout(()=>{w.isUnmounted||(h.value=!1)},a)),s!=null&&(b=setTimeout(()=>{if(!w.isUnmounted&&!d.value&&!g.value){const x=new Error(`Async component timed out after ${s}ms.`);m(x),g.value=x}},s)),k().then(()=>{w.isUnmounted||(d.value=!0,w.parent&&Ha(w.parent.vnode)&&w.parent.update())}).catch(x=>{if(w.isUnmounted){u=null;return}m(x),g.value=x}),()=>{if(d.value&&c)return za(c,w);if(g.value&&n)return He(n,{error:g.value});if(o&&!h.value)return za(o,w)}}})}function za(e,t){const{ref:o,props:n,children:a,ce:r}=t.vnode,s=He(e,n,a);return s.ref=o,s.ce=r,delete t.vnode.ce,s}const Ha=e=>e.type.__isKeepAlive;function Rg(e,t){Cl(e,"a",t)}function Ig(e,t){Cl(e,"da",t)}function Cl(e,t,o=Et){const n=e.__wdc||(e.__wdc=()=>{let a=o;for(;a;){if(a.isDeactivated)return;a=a.parent}return e()});if(Va(t,n,o),o){let a=o.parent;for(;a&&a.parent;)Ha(a.parent.vnode)&&Og(n,t,o,a),a=a.parent}}function Og(e,t,o,n){const a=Va(t,e,n,!0);Wa(()=>{Ir(n[t],a)},o)}function Va(e,t,o=Et,n=!1){if(o){const a=o[e]||(o[e]=[]),r=t.__weh||(t.__weh=(...s)=>{oo();const i=na(o),l=qt(t,o,e,s);return i(),no(),l});return n?a.unshift(r):a.push(r),r}}const wo=e=>(t,o=Et)=>{(!vn||e==="sp")&&Va(e,(...n)=>t(...n),o)},Ll=wo("bm"),io=wo("m"),Fg=wo("bu"),Dg=wo("u"),lo=wo("bum"),Wa=wo("um"),Bg=wo("sp"),Gg=wo("rtg"),jg=wo("rtc");function Ug(e,t=Et){Va("ec",e,t)}const Kg="components",Tl=Symbol.for("v-ndc");function Pl(e){return Qe(e)?zg(Kg,e,!1)||e:e||Tl}function zg(e,t,o=!0,n=!1){const a=St||Et;if(a){const r=a.type;{const i=uc(r,!1);if(i&&(i===t||i===_t(t)||i===$a(_t(t))))return r}const s=Ml(a[e]||r[e],t)||Ml(a.appContext[e],t);return!s&&n?r:s}}function Ml(e,t){return e&&(e[t]||e[_t(t)]||e[$a(_t(t))])}function $t(e,t,o,n){let a;const r=o,s=xe(e);if(s||Qe(e)){const i=s&&_o(e);let l=!1,u=!1;i&&(l=!Gt(e),u=vo(e),e=Pa(e)),a=new Array(e.length);for(let c=0,p=e.length;ct(i,l,void 0,r));else{const i=Object.keys(e);a=new Array(i.length);for(let l=0,u=i.length;l0;return t!=="default"&&(u.name=t),V(),dt(Pe,null,[He("slot",u,n)],c?-2:64)}let s=e[t];s&&s._c&&(s._d=!1);const i=xo.length;V();let l;try{const u=s&&Nl(s(o)),c=o.key||r||u&&u.key;l=dt(Pe,{key:(c&&!Dt(c)?c:`_${t}`)+(!u&&n?"_fb":"")},u||(n?n():[]),u&&e._===1?64:-2)}catch(u){for(let c=xo.length;c>i;c--)gs();throw u}finally{s&&s._c&&(s._d=!0)}return!a&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),l}function Nl(e){return e.some(t=>ea(t)?!(t.type===co||t.type===Pe&&!Nl(t.children)):!0)?e:null}const as=e=>e?ic(e)?tr(e):as(e.parent):null,Jn=lt(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>as(e.parent),$root:e=>as(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Fl(e),$forceUpdate:e=>e.f||(e.f=()=>{Xr(e.update)}),$nextTick:e=>e.n||(e.n=so.bind(e.proxy)),$watch:e=>$g.bind(e)}),rs=(e,t)=>e!==Ze&&!e.__isScriptSetup&&ze(e,t),Hg={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:o,setupState:n,data:a,props:r,accessCache:s,type:i,appContext:l}=e;if(t[0]!=="$"){const f=s[t];if(f!==void 0)switch(f){case 1:return n[t];case 2:return a[t];case 4:return o[t];case 3:return r[t]}else{if(rs(n,t))return s[t]=1,n[t];if(a!==Ze&&ze(a,t))return s[t]=2,a[t];if(ze(r,t))return s[t]=3,r[t];if(o!==Ze&&ze(o,t))return s[t]=4,o[t];ss&&(s[t]=0)}}const u=Jn[t];let c,p;if(u)return t==="$attrs"&&Tt(e.attrs,"get",""),u(e);if((c=i.__cssModules)&&(c=c[t]))return c;if(o!==Ze&&ze(o,t))return s[t]=4,o[t];if(p=l.config.globalProperties,ze(p,t))return p[t]},set({_:e},t,o){const{data:n,setupState:a,ctx:r}=e;return rs(a,t)?(a[t]=o,!0):n!==Ze&&ze(n,t)?(n[t]=o,!0):ze(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(r[t]=o,!0)},has({_:{data:e,setupState:t,accessCache:o,ctx:n,appContext:a,props:r,type:s}},i){let l;return!!(o[i]||e!==Ze&&i[0]!=="$"&&ze(e,i)||rs(t,i)||ze(r,i)||ze(n,i)||ze(Jn,i)||ze(a.config.globalProperties,i)||(l=s.__cssModules)&&l[i])},defineProperty(e,t,o){return o.get!=null?e._.accessCache[t]=0:ze(o,"value")&&this.set(e,t,o.value,null),Reflect.defineProperty(e,t,o)}};function Rl(e){return xe(e)?e.reduce((t,o)=>(t[o]=null,t),{}):e}let ss=!0;function Vg(e){const t=Fl(e),o=e.proxy,n=e.ctx;ss=!1,t.beforeCreate&&Il(t.beforeCreate,e,"bc");const{data:a,computed:r,methods:s,watch:i,provide:l,inject:u,created:c,beforeMount:p,mounted:f,beforeUpdate:k,updated:w,activated:m,deactivated:d,beforeDestroy:g,beforeUnmount:h,destroyed:b,unmounted:_,render:x,renderTracked:A,renderTriggered:S,errorCaptured:L,serverPrefetch:T,expose:z,inheritAttrs:Y,components:re,directives:M,filters:F}=t;if(u&&Wg(u,n,null),s)for(const I in s){const ne=s[I];Ee(ne)&&(n[I]=ne.bind(o))}if(a){const I=a.call(o,o);Ye(I)&&(e.data=dn(I))}if(ss=!0,r)for(const I in r){const ne=r[I],ge=Ee(ne)?ne.bind(o,o):Ee(ne.get)?ne.get.bind(o,o):eo,C=!Ee(ne)&&Ee(ne.set)?ne.set.bind(o):eo,ae=oe({get:ge,set:C});Object.defineProperty(n,I,{enumerable:!0,configurable:!0,get:()=>ae.value,set:ie=>ae.value=ie})}if(i)for(const I in i)Ol(i[I],n,o,I);if(l){const I=Ee(l)?l.call(o):l;Reflect.ownKeys(I).forEach(ne=>{Ot(ne,I[ne])})}c&&Il(c,e,"c");function $(I,ne){xe(ne)?ne.forEach(ge=>I(ge.bind(o))):ne&&I(ne.bind(o))}if($(Ll,p),$(io,f),$(Fg,k),$(Dg,w),$(Rg,m),$(Ig,d),$(Ug,L),$(jg,A),$(Gg,S),$(lo,h),$(Wa,_),$(Bg,T),xe(z))if(z.length){const I=e.exposed||(e.exposed={});z.forEach(ne=>{Object.defineProperty(I,ne,{get:()=>o[ne],set:ge=>o[ne]=ge,enumerable:!0})})}else e.exposed||(e.exposed={});x&&e.render===eo&&(e.render=x),Y!=null&&(e.inheritAttrs=Y),re&&(e.components=re),M&&(e.directives=M),T&&ns(e)}function Wg(e,t,o=eo){xe(e)&&(e=is(e));for(const n in e){const a=e[n];let r;Ye(a)?"default"in a?r=Fe(a.from||n,a.default,!0):r=Fe(a.from||n):r=Fe(a),at(r)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>r.value,set:s=>r.value=s}):t[n]=r}}function Il(e,t,o){qt(xe(e)?e.map(n=>n.bind(t.proxy)):e.bind(t.proxy),t,o)}function Ol(e,t,o,n){let a=n.includes(".")?vl(o,n):()=>o[n];if(Qe(e)){const r=t[e];Ee(r)&&it(a,r)}else if(Ee(e))it(a,e.bind(o));else if(Ye(e))if(xe(e))e.forEach(r=>Ol(r,t,o,n));else{const r=Ee(e.handler)?e.handler.bind(o):t[e.handler];Ee(r)&&it(a,r,e)}}function Fl(e){const t=e.type,{mixins:o,extends:n}=t,{mixins:a,optionsCache:r,config:{optionMergeStrategies:s}}=e.appContext,i=r.get(t);let l;return i?l=i:!a.length&&!o&&!n?l=t:(l={},a.length&&a.forEach(u=>Ya(l,u,s,!0)),Ya(l,t,s)),Ye(t)&&r.set(t,l),l}function Ya(e,t,o,n=!1){const{mixins:a,extends:r}=t;r&&Ya(e,r,o,!0),a&&a.forEach(s=>Ya(e,s,o,!0));for(const s in t)if(!(n&&s==="expose")){const i=Yg[s]||o&&o[s];e[s]=i?i(e[s],t[s]):t[s]}return e}const Yg={data:Dl,props:Bl,emits:Bl,methods:Xn,computed:Xn,beforeCreate:Nt,created:Nt,beforeMount:Nt,mounted:Nt,beforeUpdate:Nt,updated:Nt,beforeDestroy:Nt,beforeUnmount:Nt,destroyed:Nt,unmounted:Nt,activated:Nt,deactivated:Nt,errorCaptured:Nt,serverPrefetch:Nt,components:Xn,directives:Xn,watch:Jg,provide:Dl,inject:qg};function Dl(e,t){return t?e?function(){return lt(Ee(e)?e.call(this,this):e,Ee(t)?t.call(this,this):t)}:t:e}function qg(e,t){return Xn(is(e),is(t))}function is(e){if(xe(e)){const t={};for(let o=0;ot==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${_t(t)}Modifiers`]||e[`${Bt(t)}Modifiers`];function ef(e,t,...o){if(e.isUnmounted)return;const n=e.vnode.props||Ze;let a=o;const r=t.startsWith("update:"),s=r&&Qg(n,t.slice(7));s&&(s.trim&&(a=o.map(c=>Qe(c)?c.trim():c)),s.number&&(a=a.map(Ca)));let i,l=n[i=Or(t)]||n[i=Or(_t(t))];!l&&r&&(l=n[i=Or(Bt(t))]),l&&qt(l,e,6,a);const u=n[i+"Once"];if(u){if(!e.emitted)e.emitted={};else if(e.emitted[i])return;e.emitted[i]=!0,qt(u,e,6,a)}}const tf=new WeakMap;function jl(e,t,o=!1){const n=o?tf:t.emitsCache,a=n.get(e);if(a!==void 0)return a;const r=e.emits;let s={},i=!1;if(!Ee(e)){const l=u=>{const c=jl(u,t,!0);c&&(i=!0,lt(s,c))};!o&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!r&&!i?(Ye(e)&&n.set(e,null),null):(xe(r)?r.forEach(l=>s[l]=null):lt(s,r),Ye(e)&&n.set(e,s),s)}function qa(e,t){return!e||!ka(t)?!1:(t=t.slice(2),t=t==="Once"?t:t.replace(/Once$/,""),ze(e,t[0].toLowerCase()+t.slice(1))||ze(e,Bt(t))||ze(e,t))}function eA(){}function Ul(e){const{type:t,vnode:o,proxy:n,withProxy:a,propsOptions:[r],slots:s,attrs:i,emit:l,render:u,renderCache:c,props:p,data:f,setupState:k,ctx:w,inheritAttrs:m}=e,d=Ga(e);let g,h;try{if(o.shapeFlag&4){const _=a||n,x=_;g=uo(u.call(x,_,c,p,k,f,w)),h=i}else{const _=t;g=uo(_.length>1?_(p,{attrs:i,slots:s,emit:l}):_(p,null)),h=t.props?i:of(i)}}catch(_){xo.length=0,Hn(_,e,1),g=He(co)}let b=g;if(h&&m!==!1){const _=Object.keys(h),{shapeFlag:x}=b;_.length&&x&7&&(r&&_.some(wa)&&(h=nf(h,r)),b=_n(b,h,!1,!0))}if(o.dirs&&(b=_n(b,null,!1,!0),b.dirs=b.dirs?b.dirs.concat(o.dirs):o.dirs),o.transition){const _=ja(b.type)&&Al(b)||b;os(_,o.transition)}return g=b,Ga(d),g}const of=e=>{let t;for(const o in e)(o==="class"||o==="style"||ka(o))&&((t||(t={}))[o]=e[o]);return t},nf=(e,t)=>{const o={};for(const n in e)(!wa(n)||!(n.slice(9)in t))&&(o[n]=e[n]);return o};function af(e,t,o){const{props:n,children:a,component:r}=e,{props:s,children:i,patchFlag:l}=t,u=r.emitsOptions;if(t.dirs||t.transition)return!0;if(o&&l>=0){if(l&1024)return!0;if(l&16)return n?Kl(n,s,u):!!s;if(l&8){const c=t.dynamicProps;for(let p=0;pObject.create(Hl),Wl=e=>Object.getPrototypeOf(e)===Hl;function sf(e,t,o,n=!1){const a={},r=Vl();e.propsDefaults=Object.create(null),Yl(e,t,a,r);for(const s in e.propsOptions[0])s in a||(a[s]=void 0);o?e.props=n?a:ag(a):e.type.props?e.props=a:e.props=r,e.attrs=r}function lf(e,t,o,n){const{props:a,attrs:r,vnode:{patchFlag:s}}=e,i=Be(a),[l]=e.propsOptions;let u=!1;if((n||s>0)&&!(s&16)){if(s&8){const c=e.vnode.dynamicProps;for(let p=0;p{l=!0;const[f,k]=ql(p,t,!0);lt(s,f),k&&i.push(...k)};!o&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}if(!r&&!l)return Ye(e)&&n.set(e,cn),cn;if(xe(r))for(let c=0;ce==="_"||e==="_ctx"||e==="$stable",us=e=>xe(e)?e.map(uo):[uo(e)],uf=(e,t,o)=>{if(t._n)return t;const n=zt((...a)=>us(t(...a)),o);return n._c=!1,n},Xl=(e,t,o)=>{const n=e._ctx;for(const a in e){if(cs(a))continue;const r=e[a];if(Ee(r))t[a]=uf(a,r,n);else if(r!=null){const s=us(r);t[a]=()=>s}}},Zl=(e,t)=>{const o=us(t);e.slots.default=()=>o},Ql=(e,t,o)=>{for(const n in t)(o||!cs(n))&&(e[n]=t[n])},df=(e,t,o)=>{const n=e.slots=Vl();if(e.vnode.shapeFlag&32){const a=t._;a?(Ql(n,t,o),o&&Oi(n,"_",a,!0)):Xl(t,n)}else t&&Zl(e,t)},pf=(e,t,o)=>{const{vnode:n,slots:a}=e;let r=!0,s=Ze;if(n.shapeFlag&32){const i=t._;i?o&&i===1?r=!1:Ql(a,t,o):(r=!t.$stable,Xl(t,a)),s=t}else t&&(Zl(e,t),s={default:1});if(r)for(const i in a)!cs(i)&&s[i]==null&&delete a[i]},Rt=bf;function gf(e){return ff(e)}function ff(e,t){const o=La();o.__VUE__=!0;const{insert:n,remove:a,patchProp:r,createElement:s,createText:i,createComment:l,setText:u,setElementText:c,parentNode:p,nextSibling:f,setScopeId:k=eo,insertStaticContent:w}=e,m=(E,O,R,H=null,X=null,J=null,Z=void 0,ee=null,y=!!O.dynamicChildren)=>{if(E===O)return;E&&!ta(E,O)&&(H=Oe(E),ie(E,X,J,!0),E=null),O.patchFlag===-2&&(y=!1,O.dynamicChildren=null);const{type:v,ref:B,shapeFlag:W}=O;switch(v){case Zn:d(E,O,R,H);break;case co:g(E,O,R,H);break;case Ja:E==null&&h(O,R,H,Z);break;case Pe:re(E,O,R,H,X,J,Z,ee,y);break;default:W&1?x(E,O,R,H,X,J,Z,ee,y):W&6?M(E,O,R,H,X,J,Z,ee,y):(W&64||W&128)&&v.process(E,O,R,H,X,J,Z,ee,y,Je)}B!=null&&X?qn(B,E&&E.ref,J,O||E,!O):B==null&&E&&E.ref!=null&&qn(E.ref,null,J,E,!0)},d=(E,O,R,H)=>{if(E==null)n(O.el=i(O.children),R,H);else{const X=O.el=E.el;O.children!==E.children&&u(X,O.children)}},g=(E,O,R,H)=>{E==null?n(O.el=l(O.children||""),R,H):O.el=E.el},h=(E,O,R,H)=>{[E.el,E.anchor]=w(E.children,O,R,H,E.el,E.anchor)},b=({el:E,anchor:O},R,H)=>{let X;for(;E&&E!==O;)X=f(E),n(E,R,H),E=X;n(O,R,H)},_=({el:E,anchor:O})=>{let R;for(;E&&E!==O;)R=f(E),a(E),E=R;a(O)},x=(E,O,R,H,X,J,Z,ee,y)=>{if(O.type==="svg"?Z="svg":O.type==="math"&&(Z="mathml"),E==null)A(O,R,H,X,J,Z,ee,y);else{const v=E.el&&E.el._isVueCE?E.el:null;try{v&&v._beginPatch(),T(E,O,X,J,Z,ee,y)}finally{v&&v._endPatch()}}},A=(E,O,R,H,X,J,Z,ee)=>{let y,v;const{props:B,shapeFlag:W,transition:ue,dirs:se}=E;if(y=E.el=s(E.type,J,B&&B.is,B),W&8?c(y,E.children):W&16&&L(E.children,y,null,H,X,ds(E,J),Z,ee),se&&Jo(E,null,H,"created"),S(y,E,E.scopeId,Z,H),B){for(const q in B)q!=="value"&&!Dn(q)&&r(y,q,null,B[q],J,H);"value"in B&&r(y,"value",null,B.value,J),(v=B.onVnodeBeforeMount)&&po(v,H,E)}se&&Jo(E,null,H,"beforeMount");const G=hf(X,ue);G&&ue.beforeEnter(y),n(y,O,R),((v=B&&B.onVnodeMounted)||G||se)&&Rt(()=>{try{v&&po(v,H,E),G&&ue.enter(y),se&&Jo(E,null,H,"mounted")}finally{}},X)},S=(E,O,R,H,X)=>{if(R&&k(E,R),H)for(let J=0;J{for(let v=y;v{const ee=O.el=E.el;let{patchFlag:y,dynamicChildren:v,dirs:B}=O;y|=E.patchFlag&16;const W=E.props||Ze,ue=O.props||Ze;let se;if(R&&Qo(R,!1),(se=ue.onVnodeBeforeUpdate)&&po(se,R,O,E),B&&Jo(O,E,R,"beforeUpdate"),R&&Qo(R,!0),v&&(!E.dynamicChildren||E.dynamicChildren.length!==v.length)&&(y=0,Z=!1,v=null),(W.innerHTML&&ue.innerHTML==null||W.textContent&&ue.textContent==null)&&c(ee,""),v?z(E.dynamicChildren,v,ee,R,H,ds(O,X),J):Z||ne(E,O,ee,null,R,H,ds(O,X),J,!1),y>0){if(y&16)Y(ee,W,ue,R,X);else if(y&2&&W.class!==ue.class&&r(ee,"class",null,ue.class,X),y&4&&r(ee,"style",W.style,ue.style,X),y&8){const G=O.dynamicProps;for(let q=0;q{se&&po(se,R,O,E),B&&Jo(O,E,R,"updated")},H)},z=(E,O,R,H,X,J,Z)=>{for(let ee=0;ee{if(O!==R){if(O!==Ze)for(const J in O)!Dn(J)&&!(J in R)&&r(E,J,O[J],null,X,H);for(const J in R){if(Dn(J))continue;const Z=R[J],ee=O[J];Z!==ee&&J!=="value"&&r(E,J,ee,Z,X,H)}"value"in R&&r(E,"value",O.value,R.value,X)}},re=(E,O,R,H,X,J,Z,ee,y)=>{const v=O.el=E?E.el:i(""),B=O.anchor=E?E.anchor:i("");let{patchFlag:W,dynamicChildren:ue,slotScopeIds:se}=O;se&&(ee=ee?ee.concat(se):se),E==null?(n(v,R,H),n(B,R,H),L(O.children||[],R,B,X,J,Z,ee,y)):W>0&&W&64&&ue&&E.dynamicChildren&&E.dynamicChildren.length===ue.length?(z(E.dynamicChildren,ue,R,X,J,Z,ee),(O.key!=null||X&&O===X.subTree)&&ps(E,O,!0)):ne(E,O,R,B,X,J,Z,ee,y)},M=(E,O,R,H,X,J,Z,ee,y)=>{O.slotScopeIds=ee,E==null?O.shapeFlag&512?X.ctx.activate(O,R,H,Z,y):F(O,R,H,X,J,Z,y):P(E,O,y)},F=(E,O,R,H,X,J,Z)=>{const ee=E.component=Af(E,H,X);if(Ha(E)&&(ee.ctx.renderer=Je),Sf(ee,!1,Z),ee.asyncDep){if(X&&X.registerDep(ee,$,Z),!E.el){const y=ee.subTree=He(co);g(null,y,O,R),E.placeholder=y.el}}else $(ee,E,O,R,X,J,Z)},P=(E,O,R)=>{const H=O.component=E.component;if(af(E,O,R))if(H.asyncDep&&!H.asyncResolved){I(H,O,R);return}else H.next=O,H.update();else O.el=E.el,H.vnode=O},$=(E,O,R,H,X,J,Z)=>{const ee=()=>{if(E.isMounted){let{next:W,bu:ue,u:se,parent:G,vnode:q}=E;{const K=ec(E);if(K){W&&(W.el=q.el,I(E,W,Z)),K.asyncDep.then(()=>{Rt(()=>{E.isUnmounted||v()},X)});return}}let me=W,Ae;Qo(E,!1),W?(W.el=q.el,I(E,W,Z)):W=q,ue&&Ea(ue),(Ae=W.props&&W.props.onVnodeBeforeUpdate)&&po(Ae,G,W,q),Qo(E,!0);const Ge=Ul(E),D=E.subTree;E.subTree=Ge,m(D,Ge,p(D.el),Oe(D),E,X,J),W.el=Ge.el,me===null&&rf(E,Ge.el),se&&Rt(se,X),(Ae=W.props&&W.props.onVnodeUpdated)&&Rt(()=>po(Ae,G,W,q),X)}else{let W;const{el:ue,props:se}=O,{bm:G,m:q,parent:me,root:Ae,type:Ge}=E,D=bn(O);Qo(E,!1),G&&Ea(G),!D&&(W=se&&se.onVnodeBeforeMount)&&po(W,me,O),Qo(E,!0);{Ae.ce&&Ae.ce._hasShadowRoot()&&Ae.ce._injectChildStyle(Ge,E.parent?E.parent.type:void 0);const K=E.subTree=Ul(E);m(null,K,R,H,E,X,J),O.el=K.el}if(q&&Rt(q,X),!D&&(W=se&&se.onVnodeMounted)){const K=O;Rt(()=>po(W,me,K),X)}(O.shapeFlag&256||me&&bn(me.vnode)&&me.vnode.shapeFlag&256)&&E.a&&Rt(E.a,X),E.isMounted=!0,O=R=H=null}};E.scope.on();const y=E.effect=new Hi(ee);E.scope.off();const v=E.update=y.run.bind(y),B=E.job=y.runIfDirty.bind(y);B.i=E,B.id=E.uid,y.scheduler=()=>Xr(B),Qo(E,!0),v()},I=(E,O,R)=>{O.component=E;const H=E.vnode.props;E.vnode=O,E.next=null,lf(E,O.props,H,R),pf(E,O.children,R),oo(),hl(E),no()},ne=(E,O,R,H,X,J,Z,ee,y=!1)=>{const v=E&&E.children,B=E?E.shapeFlag:0,W=O.children,{patchFlag:ue,shapeFlag:se}=O;if(ue>0){if(ue&128){C(v,W,R,H,X,J,Z,ee,y);return}else if(ue&256){ge(v,W,R,H,X,J,Z,ee,y);return}}se&8?(B&16&&Re(v,X,J),W!==v&&c(R,W)):B&16?se&16?C(v,W,R,H,X,J,Z,ee,y):Re(v,X,J,!0):(B&8&&c(R,""),se&16&&L(W,R,H,X,J,Z,ee,y))},ge=(E,O,R,H,X,J,Z,ee,y)=>{E=E||cn,O=O||cn;const v=E.length,B=O.length,W=Math.min(v,B);let ue;for(ue=0;ueB?Re(E,X,J,!0,!1,W):L(O,R,H,X,J,Z,ee,y,W)},C=(E,O,R,H,X,J,Z,ee,y)=>{let v=0;const B=O.length;let W=E.length-1,ue=B-1;for(;v<=W&&v<=ue;){const se=E[v],G=O[v]=y?Ao(O[v]):uo(O[v]);if(ta(se,G))m(se,G,R,null,X,J,Z,ee,y);else break;v++}for(;v<=W&&v<=ue;){const se=E[W],G=O[ue]=y?Ao(O[ue]):uo(O[ue]);if(ta(se,G))m(se,G,R,null,X,J,Z,ee,y);else break;W--,ue--}if(v>W){if(v<=ue){const se=ue+1,G=seue)for(;v<=W;)ie(E[v],X,J,!0),v++;else{const se=v,G=v,q=new Map;for(v=G;v<=ue;v++){const ke=O[v]=y?Ao(O[v]):uo(O[v]);ke.key!=null&&q.set(ke.key,v)}let me,Ae=0;const Ge=ue-G+1;let D=!1,K=0;const he=new Array(Ge);for(v=0;v=Ge){ie(ke,X,J,!0);continue}let je;if(ke.key!=null)je=q.get(ke.key);else for(me=G;me<=ue;me++)if(he[me-G]===0&&ta(ke,O[me])){je=me;break}je===void 0?ie(ke,X,J,!0):(he[je-G]=v+1,je>=K?K=je:D=!0,m(ke,O[je],R,null,X,J,Z,ee,y),Ae++)}const ve=D?mf(he):cn;for(me=ve.length-1,v=Ge-1;v>=0;v--){const ke=G+v,je=O[ke],Te=O[ke+1],xt=ke+1{const{el:J,type:Z,transition:ee,children:y,shapeFlag:v}=E;if(v&6){ae(E.component.subTree,O,R,H);return}if(v&128){E.suspense.move(O,R,H);return}if(v&64){Z.move(E,O,R,Je);return}if(Z===Pe){n(J,O,R);for(let W=0;Wee.enter(J),X));else{const{leave:W,delayLeave:ue,afterLeave:se}=ee,G=()=>{E.ctx.isUnmounted?a(J):n(J,O,R)},q=()=>{const me=J._isLeaving||!!J[ts];J._isLeaving&&J[ts](!0),ee.persisted&&!me?G():W(J,()=>{G(),se&&se()})};ue?ue(J,G,q):q()}else n(J,O,R)},ie=(E,O,R,H=!1,X=!1)=>{const{type:J,props:Z,ref:ee,children:y,dynamicChildren:v,shapeFlag:B,patchFlag:W,dirs:ue,cacheIndex:se,memo:G}=E;if(W===-2&&(X=!1),ee!=null&&(oo(),qn(ee,null,R,E,!0),no()),se!=null&&(O.renderCache[se]=void 0),B&256){O.ctx.deactivate(E);return}const q=B&1&&ue,me=!bn(E);let Ae;if(me&&(Ae=Z&&Z.onVnodeBeforeUnmount)&&po(Ae,O,E),B&6)Me(E.component,R,H);else{if(B&128){E.suspense.unmount(R,H);return}q&&Jo(E,null,O,"beforeUnmount"),B&64?E.type.remove(E,O,R,Je,H):v&&!v.hasOnce&&(J!==Pe||W>0&&W&64)?Re(v,O,R,!1,!0):(J===Pe&&W&384||!X&&B&16)&&Re(y,O,R),H&&ce(E)}const Ge=G!=null&&se==null;(me&&(Ae=Z&&Z.onVnodeUnmounted)||q||Ge)&&Rt(()=>{Ae&&po(Ae,O,E),q&&Jo(E,null,O,"unmounted"),Ge&&(E.el=null)},R)},ce=E=>{const{type:O,el:R,anchor:H,transition:X}=E;if(O===Pe){we(R,H);return}if(O===Ja){_(E);return}const J=()=>{a(R),X&&!X.persisted&&X.afterLeave&&X.afterLeave()};if(E.shapeFlag&1&&X&&!X.persisted){const{leave:Z,delayLeave:ee}=X,y=()=>Z(R,J);ee?ee(E.el,J,y):y()}else J()},we=(E,O)=>{let R;for(;E!==O;)R=f(E),a(E),E=R;a(O)},Me=(E,O,R)=>{const{bum:H,scope:X,job:J,subTree:Z,um:ee,m:y,a:v}=E;tc(y),tc(v),H&&Ea(H),X.stop(),J&&(J.flags|=8,ie(Z,E,O,R)),ee&&Rt(ee,O),Rt(()=>{E.isUnmounted=!0},O)},Re=(E,O,R,H=!1,X=!1,J=0)=>{for(let Z=J;Z{if(E.shapeFlag&6)return Oe(E.component.subTree);if(E.shapeFlag&128)return E.suspense.next();const O=f(E.anchor||E.el),R=O&&O[kl];return R?f(R):O};let Ie=!1;const qe=(E,O,R)=>{let H;E==null?O._vnode&&(ie(O._vnode,null,null,!0),H=O._vnode.component):m(O._vnode||null,E,O,null,null,null,R),O._vnode=E,Ie||(Ie=!0,hl(H),ml(),Ie=!1)},Je={p:m,um:ie,m:ae,r:ce,mt:F,mc:L,pc:ne,pbc:z,n:Oe,o:e};return{render:qe,hydrate:void 0,createApp:Zg(qe)}}function ds({type:e,props:t},o){return o==="svg"&&e==="foreignObject"||o==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:o}function Qo({effect:e,job:t},o){o?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function hf(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function ps(e,t,o=!1){const n=e.children,a=t.children;if(xe(n)&&xe(a))for(let r=0;r>1,e[o[i]]0&&(t[n]=o[r-1]),o[r]=n)}}for(r=o.length,s=o[r-1];r-- >0;)o[r]=s,s=t[s];return o}function ec(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:ec(t)}function tc(e){if(e)for(let t=0;te.__isSuspense;function bf(e,t){t&&t.pendingBranch?xe(e)?t.effects.push(...e):t.effects.push(e):kg(e)}const Pe=Symbol.for("v-fgt"),Zn=Symbol.for("v-txt"),co=Symbol.for("v-cmt"),Ja=Symbol.for("v-stc"),xo=[];let jt=null;function V(e=!1){xo.push(jt=e?null:[])}function gs(){xo.pop(),jt=xo[xo.length-1]||null}let Qn=1;function Xa(e,t=!1){Qn+=e,e<0&&jt&&t&&(jt.hasOnce=!0)}function ac(e){return e.dynamicChildren=Qn>0?jt||cn:null,gs(),Qn>0&&jt&&jt.push(e),e}function te(e,t,o,n,a,r){return ac(N(e,t,o,n,a,r,!0))}function dt(e,t,o,n,a){return ac(He(e,t,o,n,a,!0))}function ea(e){return e?e.__v_isVNode===!0:!1}function ta(e,t){return e.type===t.type&&e.key===t.key}const rc=({key:e})=>e??null,Za=({ref:e,ref_key:t,ref_for:o})=>(typeof e=="number"&&(e=""+e),e!=null?Qe(e)||at(e)||Ee(e)?{i:St,r:e,k:t,f:!!o}:e:null);function N(e,t=null,o=null,n=0,a=null,r=e===Pe?0:1,s=!1,i=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&rc(t),ref:t&&Za(t),scopeId:yl,slotScopeIds:null,children:o,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:r,patchFlag:n,dynamicProps:a,dynamicChildren:null,appContext:null,ctx:St};return i?(Qa(l,o),r&128&&e.normalize(l)):o&&(l.shapeFlag|=Qe(o)?8:16),Qn>0&&!s&&jt&&(l.patchFlag>0||r&6)&&l.patchFlag!==32&&jt.push(l),l}const He=yf;function yf(e,t=null,o=null,n=0,a=null,r=!1){if((!e||e===Tl)&&(e=co),ea(e)){const i=_n(e,t,!0);return o&&Qa(i,o),Qn>0&&!r&&jt&&(i.shapeFlag&6?jt[jt.indexOf(e)]=i:jt.push(i)),i.patchFlag=-2,i}if(Pf(e)&&(e=e.__vccOpts),t){t=_f(t);let{class:i,style:l}=t;i&&!Qe(i)&&(t.class=Ne(i)),Ye(l)&&(Oa(l)&&!xe(l)&&(l=lt({},l)),t.style=nt(l))}const s=Qe(e)?1:nc(e)?128:ja(e)?64:Ye(e)?4:Ee(e)?2:0;return N(e,t,o,n,a,s,r,!0)}function _f(e){return e?Oa(e)||Wl(e)?lt({},e):e:null}function _n(e,t,o=!1,n=!1){const{props:a,ref:r,patchFlag:s,children:i,transition:l}=e,u=t?kf(a||{},t):a,c={__v_isVNode:!0,__v_skip:!0,type:e.type,props:u,key:u&&rc(u),ref:t&&t.ref?o&&r?xe(r)?r.concat(Za(t)):[r,Za(t)]:Za(t):r,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:i,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Pe?s===-1?16:s|16:s,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&_n(e.ssContent),ssFallback:e.ssFallback&&_n(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&n&&os(c,l.clone(c)),c}function mt(e=" ",t=0){return He(Zn,null,e,t)}function vf(e,t){const o=He(Ja,null,e);return o.staticCount=t,o}function ye(e="",t=!1){return t?(V(),dt(co,null,e)):He(co,null,e)}function uo(e){return e==null||typeof e=="boolean"?He(co):xe(e)?He(Pe,null,e.slice()):ea(e)?Ao(e):He(Zn,null,String(e))}function Ao(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:_n(e)}function Qa(e,t){let o=0;const{shapeFlag:n}=e;if(t==null)t=null;else if(xe(t))o=16;else if(typeof t=="object")if(n&65){const a=t.default;a&&(a._c&&(a._d=!1),Qa(e,a()),a._c&&(a._d=!0));return}else{o=32;const a=t._;!a&&!Wl(t)?t._ctx=St:a===3&&St&&(St.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else if(Ee(t)){if(n&65){Qa(e,{default:t});return}t={default:t,_ctx:St},o=32}else t=String(t),n&64?(o=16,t=[mt(t)]):o=8;e.children=t,e.shapeFlag|=o}function kf(...e){const t={};for(let o=0;oEt||St;let er,oa;{const e=La(),t=(o,n)=>{let a;return(a=e[o])||(a=e[o]=[]),a.push(n),r=>{a.length>1?a.forEach(s=>s(r)):a[0](r)}};er=t("__VUE_INSTANCE_SETTERS__",o=>Et=o),oa=t("__VUE_SSR_SETTERS__",o=>vn=o)}const na=e=>{const t=Et;return er(e),e.scope.on(),()=>{e.scope.off(),er(t)}},sc=()=>{Et&&Et.scope.off(),er(null)};function ic(e){return e.vnode.shapeFlag&4}let vn=!1;function Sf(e,t=!1,o=!1){t&&oa(t);const{props:n,children:a}=e.vnode,r=ic(e);sf(e,n,r,t),df(e,a,o||t);const s=r?$f(e,t):void 0;return t&&oa(!1),s}function $f(e,t){const o=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Hg);const{setup:n}=o;if(n){oo();const a=e.setupContext=n.length>1?Cf(e):null,r=na(e),s=fn(n,e,0,[e.props,a]),i=Ri(s);if(no(),r(),(i||e.sp)&&!bn(e)&&ns(e),i){if(s.then(sc,sc),t)return s.then(l=>{oa(!0);try{lc(e,l,t)}finally{oa(!1)}}).catch(l=>{Hn(l,e,0)});e.asyncDep=s}else lc(e,s)}else cc(e)}function lc(e,t,o){Ee(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:Ye(t)&&(e.setupState=ul(t)),cc(e)}function cc(e,t,o){const n=e.type;e.render||(e.render=n.render||eo);{const a=na(e);oo();try{Vg(e)}finally{no(),a()}}}const Ef={get(e,t){return Tt(e,"get",""),e[t]}};function Cf(e){const t=o=>{e.exposed=o||{}};return{attrs:new Proxy(e.attrs,Ef),slots:e.slots,emit:e.emit,expose:t}}function tr(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(ul(Yo(e.exposed)),{get(t,o){if(o in t)return t[o];if(o in Jn)return Jn[o](e)},has(t,o){return o in t||o in Jn}})):e.proxy}const Lf=/(?:^|[-_])\w/g,Tf=e=>e.replace(Lf,t=>t.toUpperCase()).replace(/[-_]/g,"");function uc(e,t=!0){return Ee(e)?e.displayName||e.name:e.name||t&&e.__name}function dc(e,t,o=!1){let n=uc(t);if(!n&&t.__file){const a=t.__file.match(/([^/\\]+)\.\w+$/);a&&(n=a[1])}if(!n&&e){const a=r=>{for(const s in r)if(r[s]===t)return s};n=a(e.components)||e.parent&&a(e.parent.type.components)||a(e.appContext.components)}return n?Tf(n):o?"App":"Anonymous"}function Pf(e){return Ee(e)&&"__vccOpts"in e}const oe=(e,t)=>pg(e,t,vn);function pc(e,t,o){try{Xa(-1);const n=arguments.length;return n===2?Ye(t)&&!xe(t)?ea(t)?He(e,null,[t]):He(e,t):He(e,null,t):(n>3?o=Array.prototype.slice.call(arguments,2):n===3&&ea(o)&&(o=[o]),He(e,t,o))}finally{Xa(1)}}const Mf="3.5.42";/** * @vue/runtime-dom v3.5.42 * (c) 2018-present Yuxi (Evan) You and Vue contributors * @license MIT -**/let gs;const uc=typeof window<"u"&&window.trustedTypes;if(uc)try{gs=uc.createPolicy("vue",{createHTML:e=>e})}catch{}const dc=gs?e=>gs.createHTML(e):e=>e,Lf="http://www.w3.org/2000/svg",Tf="http://www.w3.org/1998/Math/MathML",Eo=typeof document<"u"?document:null,pc=Eo&&Eo.createElement("template"),Pf={insert:(e,t,o)=>{t.insertBefore(e,o||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,o,n)=>{const a=t==="svg"?Eo.createElementNS(Lf,e):t==="mathml"?Eo.createElementNS(Tf,e):o?Eo.createElement(e,{is:o}):Eo.createElement(e);return e==="select"&&n&&n.multiple!=null&&a.setAttribute("multiple",n.multiple),a},createText:e=>Eo.createTextNode(e),createComment:e=>Eo.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>Eo.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,o,n,a,r){const s=o?o.previousSibling:t.lastChild;if(a&&(a===r||a.nextSibling))for(;t.insertBefore(a.cloneNode(!0),o),!(a===r||!(a=a.nextSibling)););else{pc.innerHTML=dc(n==="svg"?`${e}`:n==="mathml"?`${e}`:e);const i=pc.content;if(n==="svg"||n==="mathml"){const l=i.firstChild;for(;l.firstChild;)i.appendChild(l.firstChild);i.removeChild(l)}t.insertBefore(i,o)}return[s?s.nextSibling:t.firstChild,o?o.previousSibling:t.lastChild]}},Mf=Symbol("_vtc");function Nf(e,t,o){const n=e[Mf];n&&(t=(t?[t,...n]:[...n]).join(" ")),t==null?e.removeAttribute("class"):o?e.setAttribute("class",t):e.className=t}const gc=Symbol("_vod"),Rf=Symbol("_vsh"),If=Symbol(""),Of=/(?:^|;)\s*display\s*:/;function Ff(e,t,o){const n=e.style,a=tt(o);let r=!1;if(o&&!a){if(t)if(tt(t))for(const s of t.split(";")){const i=s.slice(0,s.indexOf(":")).trim();o[i]==null&&aa(n,i,"")}else for(const s in t)o[s]==null&&aa(n,s,"");for(const s in o){s==="display"&&(r=!0);const i=o[s];i!=null?Bf(e,s,!tt(t)&&t?t[s]:void 0,i)||aa(n,s,i):aa(n,s,"")}}else if(a){if(t!==o){const s=n[If];s&&(o+=";"+s),n.cssText=o,r=Of.test(o)}}else t&&e.removeAttribute("style");gc in e&&(e[gc]=r?n.display:"",e[Rf]&&(n.display="none"))}const or=/\s*!important$/;function aa(e,t,o){if(xe(o))o.forEach(n=>aa(e,t,n));else if(o==null&&(o=""),t.startsWith("--"))or.test(o)?e.setProperty(t,o.replace(or,""),"important"):e.setProperty(t,o);else{const n=Df(e,t);or.test(o)?e.setProperty(jt(n),o.replace(or,""),"important"):e[n]=o}}const fc=["Webkit","Moz","ms"],fs={};function Df(e,t){const o=fs[t];if(o)return o;let n=_t(t);if(n!=="filter"&&n in e)return fs[t]=n;n=$a(n);for(let a=0;ahs||(Hf.then(()=>hs=0),hs=Date.now());function Wf(e,t){const o=n=>{if(!n._vts)n._vts=Date.now();else if(n._vts<=o.attached)return;const a=o.value;if(xe(a)){const r=n.stopImmediatePropagation;n.stopImmediatePropagation=()=>{r.call(n),n._stopped=!0};const s=a.slice(),i=[n];for(let l=0;le.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Yf=(e,t,o,n,a,r)=>{const s=a==="svg";t==="class"?Nf(e,n,s):t==="style"?Ff(e,o,n):ka(t)?wa(t)||jf(e,t,o,n,r):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):qf(e,t,n,s))?(bc(e,t,n),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&mc(e,t,n,s,r,t!=="value")):e._isVueCE&&(Jf(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!tt(n)))?bc(e,_t(t),n,r,t):(t==="true-value"?e._trueValue=n:t==="false-value"&&(e._falseValue=n),mc(e,t,n,s))};function qf(e,t,o,n){if(n)return!!(t==="innerHTML"||t==="textContent"||t in e&&_c(t)&&$e(o));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const a=e.tagName;if(a==="IMG"||a==="VIDEO"||a==="CANVAS"||a==="SOURCE")return!1}return _c(t)&&tt(o)?!1:t in e}function Jf(e,t){const o=e._def.props;if(!o)return!1;const n=_t(t);return Array.isArray(o)?o.some(a=>_t(a)===n):Object.keys(o).some(a=>_t(a)===n)}const vc={};function Xf(e,t,o){let n=Yn(e,t);xa(n)&&(n=dt({},n,t));class a extends ms{constructor(s){super(n,s,o)}}return a.def=n,a}const Zf=typeof HTMLElement<"u"?HTMLElement:class{};class ms extends Zf{constructor(t,o={},n=Sc){super(),this._def=t,this._props=o,this._createApp=n,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._patching=!1,this._dirty=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._styleAnchors=new WeakMap,this._ob=null,this.shadowRoot&&n!==Sc?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(dt({},t.shadowRootOptions,{mode:"open"})),this._root=this.shadowRoot):this._root=this}connectedCallback(){if(!this.isConnected)return;!this.shadowRoot&&!this._resolved&&this._parseSlots(),this._connected=!0;let t=this;for(;t=t&&(t.assignedSlot||t.parentNode||t.host);)if(t instanceof ms){this._parent=t;break}this._instance||(this._resolved?this._mount(this._def):t&&t._pendingResolve?this._pendingResolve=t._pendingResolve.then(()=>{if(this._pendingResolve=void 0,this.isConnected)return this._resolveDef()}):this._resolveDef())}_setParent(t=this._parent){t&&(this._instance.parent=t._instance,this._inheritParentContext(t))}_inheritParentContext(t=this._parent){t&&this._app&&Object.setPrototypeOf(this._app._context.provides,t._instance.provides)}disconnectedCallback(){this._connected=!1,lo(()=>{this._connected||(this._ob&&(this._ob.disconnect(),this._ob=null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null,this._teleportTargets&&(this._teleportTargets.clear(),this._teleportTargets=void 0))})}_processMutations(t){for(const o of t)this._setAttr(o.attributeName)}_resolveDef(){if(this._pendingResolve)return this._pendingResolve;for(let n=0;n{this._resolved=!0,this._pendingResolve=void 0;const{props:r,styles:s}=n;let i;if(r&&!xe(r))for(const l in r){const u=r[l];(u===Number||u&&u.type===Number)&&(l in this._props&&(this._props[l]=Ri(this._props[l])),(i||(i=Object.create(null)))[_t(l)]=!0)}this._numberProps=i,this._resolveProps(n),this.shadowRoot&&this._applyStyles(s),this._mount(n)},o=this._def.__asyncLoader;if(o)return this._pendingResolve=o().then(n=>{n.configureApp=this._def.configureApp,t(this._def=n,!0)}),this._pendingResolve;t(this._def)}_mount(t){this._app=this._createApp(t),this._inheritParentContext(),t.configureApp&&t.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);const o=this._instance&&this._instance.exposed;if(o)for(const n in o)Ve(this,n)||Object.defineProperty(this,n,{get:()=>_e(o[n])})}_resolveProps(t){const{props:o}=t,n=xe(o)?o:Object.keys(o||{});for(const a of Object.keys(this))a[0]!=="_"&&n.includes(a)&&this._setProp(a,this[a]);for(const a of n.map(_t))Object.defineProperty(this,a,{get(){return this._getProp(a)},set(r){this._setProp(a,r,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const o=this.hasAttribute(t);let n=o?this.getAttribute(t):vc;const a=_t(t);o&&this._numberProps&&this._numberProps[a]&&(n=Ri(n)),this._setProp(a,n,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,o,n=!0,a=!1){if(o!==this._props[t]&&(this._dirty=!0,o===vc?delete this._props[t]:(this._props[t]=o,t==="key"&&this._app&&(this._app._ceVNode.key=o)),a&&this._instance&&this._update(),n)){const r=this._ob;r&&(this._processMutations(r.takeRecords()),r.disconnect()),o===!0?this.setAttribute(jt(t),""):typeof o=="string"||typeof o=="number"?this.setAttribute(jt(t),o+""):o||this.removeAttribute(jt(t)),r&&r.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),ih(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const o=We(this._def,dt(t,this._props));return this._instance||(o.ce=n=>{this._instance=n,n.ce=this,n.isCE=!0;const a=(r,s)=>{this.dispatchEvent(new CustomEvent(r,xa(s[0])?dt({detail:s},s[0]):{detail:s}))};n.emit=(r,...s)=>{a(r,s),jt(r)!==r&&a(jt(r),s)},this._setParent()}),o}_applyStyles(t,o,n){if(!t)return;if(o){if(o===this._def||this._styleChildren.has(o))return;this._styleChildren.add(o)}const a=this._nonce,r=this.shadowRoot,s=n?this._getStyleAnchor(n)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(r);let i=null;for(let l=t.length-1;l>=0;l--){const u=document.createElement("style");a&&u.setAttribute("nonce",a),u.textContent=t[l],r.insertBefore(u,i||s),i=u,l===0&&(n||this._styleAnchors.set(this._def,u),o&&this._styleAnchors.set(o,u))}}_getStyleAnchor(t){if(!t)return null;const o=this._styleAnchors.get(t);return o&&o.parentNode===this.shadowRoot?o:(o&&this._styleAnchors.delete(t),null)}_getRootStyleInsertionAnchor(t){for(let o=0;o{const t=e.props["onUpdate:modelValue"]||!1;return xe(t)?o=>Ea(t,o):t};function Qf(e){e.target.composing=!0}function kc(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const on=Symbol("_assign"),ar=Symbol("_initialValue");function bs(e,t,o){return t&&(e=e.trim()),o&&(e=Ca(e)),e}const eh={created(e,{modifiers:{lazy:t,trim:o,number:n}},a){e.parentNode&&(e.type==="text"?e[ar]=e.defaultValue.replace(/[\r\n]/g,""):e.type==="textarea"&&(e[ar]=e.defaultValue.replace(/\r\n?/g,` -`))),e[on]=nr(a);const r=n||a.props&&a.props.type==="number";tn(e,t?"change":"input",s=>{s.target.composing||e[on](bs(e.value,o,r))}),(o||r)&&tn(e,"change",()=>{e.value=bs(e.value,o,r)}),t||(tn(e,"compositionstart",Qf),tn(e,"compositionend",kc),tn(e,"change",kc))},mounted(e,{value:t,modifiers:{trim:o,number:n}}){const a=t??"",r=e[ar];delete e[ar],r!==void 0&&(e.type==="text"||e.type==="textarea")&&e.value!==r?e[on](bs(e.value,o,n)):e.value=a},beforeUpdate(e,{value:t,oldValue:o,modifiers:{lazy:n,trim:a,number:r}},s){if(e[on]=nr(s),e.composing)return;const i=(r||e.type==="number")&&!/^0\d/.test(e.value)?Ca(e.value):e.value,l=t??"";if(i===l)return;const u=e.getRootNode();(u instanceof Document||u instanceof ShadowRoot)&&u.activeElement===e&&e.type!=="range"&&(n&&t===o||a&&e.value.trim()===l)||(e.value=l)}},th={deep:!0,created(e,{value:t,modifiers:{number:o}},n){e._modelValue=t,tn(e,"change",()=>{const a=Array.prototype.filter.call(e.options,l=>l.selected).map(l=>o?Ca(rr(l)):rr(l)),r=e.multiple,s=r?Wo(e._modelValue)?new Set(a):a:a[0],i=e._pendingValue=[r,r?xe(s)?a.slice():a:s];try{e[on](s)}finally{lo(()=>{e._pendingValue===i&&(e._pendingValue=void 0)})}}),e[on]=nr(n)},mounted(e,{value:t}){wc(e,t)},beforeUpdate(e,{value:t},o){e._modelValue=t,e[on]=nr(o)},updated(e,{value:t}){const o=e._pendingValue;e._pendingValue=void 0,(!o||o[0]!==e.multiple||!oh(t,o[1],o[0]))&&wc(e,t)}};function oh(e,t,o){if(!o||xe(e))return Ro(e,t);if(Wo(e)){if(e.size!==t.length)return!1;for(const n of t)if(!e.has(n))return!1;return!0}return!1}function wc(e,t){const o=e.multiple,n=xe(t);if(!(o&&!n&&!Wo(t))){for(let a=0,r=e.options.length;aString(u)===String(i)):s.selected=Rp(t,i)>-1}else s.selected=t.has(i);else if(Ro(rr(s),t)){e.selectedIndex!==a&&(e.selectedIndex=a);return}}!o&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function rr(e){return"_value"in e?e._value:e.value}const nh=["ctrl","shift","alt","meta"],ah={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>nh.some(o=>e[`${o}Key`]&&!t.includes(o))},vt=(e,t)=>{if(!e)return e;const o=e._withMods||(e._withMods={}),n=t.join(".");return o[n]||(o[n]=(a,...r)=>{for(let s=0;s{const o=e._withKeys||(e._withKeys={}),n=t.join(".");return o[n]||(o[n]=a=>{if(!("key"in a))return;const r=jt(a.key);if(t.some(s=>s===r||rh[s]===r))return e(a)})},sh=dt({patchProp:Yf},Pf);let xc;function Ac(){return xc||(xc=cf(sh))}const ih=(...e)=>{Ac().render(...e)},Sc=(...e)=>{const t=Ac().createApp(...e),{mount:o}=t;return t.mount=n=>{const a=ch(n);if(!a)return;const r=t._component;!$e(r)&&!r.render&&!r.template&&(r.template=a.innerHTML),a.nodeType===1&&(a.textContent="");const s=o(a,!1,lh(a));return a instanceof Element&&(a.removeAttribute("v-cloak"),a.setAttribute("data-v-app","")),s},t};function lh(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function ch(e){return tt(e)?document.querySelector(e):e}/*! +**/let fs;const gc=typeof window<"u"&&window.trustedTypes;if(gc)try{fs=gc.createPolicy("vue",{createHTML:e=>e})}catch{}const fc=fs?e=>fs.createHTML(e):e=>e,Nf="http://www.w3.org/2000/svg",Rf="http://www.w3.org/1998/Math/MathML",$o=typeof document<"u"?document:null,hc=$o&&$o.createElement("template"),If={insert:(e,t,o)=>{t.insertBefore(e,o||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,o,n)=>{const a=t==="svg"?$o.createElementNS(Nf,e):t==="mathml"?$o.createElementNS(Rf,e):o?$o.createElement(e,{is:o}):$o.createElement(e);return e==="select"&&n&&n.multiple!=null&&a.setAttribute("multiple",n.multiple),a},createText:e=>$o.createTextNode(e),createComment:e=>$o.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>$o.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,o,n,a,r){const s=o?o.previousSibling:t.lastChild;if(a&&(a===r||a.nextSibling))for(;t.insertBefore(a.cloneNode(!0),o),!(a===r||!(a=a.nextSibling)););else{hc.innerHTML=fc(n==="svg"?`${e}`:n==="mathml"?`${e}`:e);const i=hc.content;if(n==="svg"||n==="mathml"){const l=i.firstChild;for(;l.firstChild;)i.appendChild(l.firstChild);i.removeChild(l)}t.insertBefore(i,o)}return[s?s.nextSibling:t.firstChild,o?o.previousSibling:t.lastChild]}},Of=Symbol("_vtc");function Ff(e,t,o){const n=e[Of];n&&(t=(t?[t,...n]:[...n]).join(" ")),t==null?e.removeAttribute("class"):o?e.setAttribute("class",t):e.className=t}const mc=Symbol("_vod"),Df=Symbol("_vsh"),Bf=Symbol(""),Gf=/(?:^|;)\s*display\s*:/;function jf(e,t,o){const n=e.style,a=Qe(o);let r=!1;if(o&&!a){if(t)if(Qe(t))for(const s of t.split(";")){const i=s.slice(0,s.indexOf(":")).trim();o[i]==null&&aa(n,i,"")}else for(const s in t)o[s]==null&&aa(n,s,"");for(const s in o){s==="display"&&(r=!0);const i=o[s];i!=null?Kf(e,s,!Qe(t)&&t?t[s]:void 0,i)||aa(n,s,i):aa(n,s,"")}}else if(a){if(t!==o){const s=n[Bf];s&&(o+=";"+s),n.cssText=o,r=Gf.test(o)}}else t&&e.removeAttribute("style");mc in e&&(e[mc]=r?n.display:"",e[Df]&&(n.display="none"))}const or=/\s*!important$/;function aa(e,t,o){if(xe(o))o.forEach(n=>aa(e,t,n));else if(o==null&&(o=""),t.startsWith("--"))or.test(o)?e.setProperty(t,o.replace(or,""),"important"):e.setProperty(t,o);else{const n=Uf(e,t);or.test(o)?e.setProperty(Bt(n),o.replace(or,""),"important"):e[n]=o}}const bc=["Webkit","Moz","ms"],hs={};function Uf(e,t){const o=hs[t];if(o)return o;let n=_t(t);if(n!=="filter"&&n in e)return hs[t]=n;n=$a(n);for(let a=0;ams||(qf.then(()=>ms=0),ms=Date.now());function Xf(e,t){const o=n=>{if(!n._vts)n._vts=Date.now();else if(n._vts<=o.attached)return;const a=o.value;if(xe(a)){const r=n.stopImmediatePropagation;n.stopImmediatePropagation=()=>{r.call(n),n._stopped=!0};const s=a.slice(),i=[n];for(let l=0;le.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Zf=(e,t,o,n,a,r)=>{const s=a==="svg";t==="class"?Ff(e,n,s):t==="style"?jf(e,o,n):ka(t)?wa(t)||Hf(e,t,o,n,r):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Qf(e,t,n,s))?(vc(e,t,n),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&_c(e,t,n,s,r,t!=="value")):e._isVueCE&&(eh(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!Qe(n)))?vc(e,_t(t),n,r,t):(t==="true-value"?e._trueValue=n:t==="false-value"&&(e._falseValue=n),_c(e,t,n,s))};function Qf(e,t,o,n){if(n)return!!(t==="innerHTML"||t==="textContent"||t in e&&wc(t)&&Ee(o));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const a=e.tagName;if(a==="IMG"||a==="VIDEO"||a==="CANVAS"||a==="SOURCE")return!1}return wc(t)&&Qe(o)?!1:t in e}function eh(e,t){const o=e._def.props;if(!o)return!1;const n=_t(t);return Array.isArray(o)?o.some(a=>_t(a)===n):Object.keys(o).some(a=>_t(a)===n)}const xc={};function th(e,t,o){let n=Yn(e,t);xa(n)&&(n=lt({},n,t));class a extends bs{constructor(s){super(n,s,o)}}return a.def=n,a}const oh=typeof HTMLElement<"u"?HTMLElement:class{};class bs extends oh{constructor(t,o={},n=Cc){super(),this._def=t,this._props=o,this._createApp=n,this._isVueCE=!0,this._instance=null,this._app=null,this._nonce=this._def.nonce,this._connected=!1,this._resolved=!1,this._patching=!1,this._dirty=!1,this._numberProps=null,this._styleChildren=new WeakSet,this._styleAnchors=new WeakMap,this._ob=null,this.shadowRoot&&n!==Cc?this._root=this.shadowRoot:t.shadowRoot!==!1?(this.attachShadow(lt({},t.shadowRootOptions,{mode:"open"})),this._root=this.shadowRoot):this._root=this}connectedCallback(){if(!this.isConnected)return;!this.shadowRoot&&!this._resolved&&this._parseSlots(),this._connected=!0;let t=this;for(;t=t&&(t.assignedSlot||t.parentNode||t.host);)if(t instanceof bs){this._parent=t;break}this._instance||(this._resolved?this._mount(this._def):t&&t._pendingResolve?this._pendingResolve=t._pendingResolve.then(()=>{if(this._pendingResolve=void 0,this.isConnected)return this._resolveDef()}):this._resolveDef())}_setParent(t=this._parent){t&&(this._instance.parent=t._instance,this._inheritParentContext(t))}_inheritParentContext(t=this._parent){t&&this._app&&Object.setPrototypeOf(this._app._context.provides,t._instance.provides)}disconnectedCallback(){this._connected=!1,so(()=>{this._connected||(this._ob&&(this._ob.disconnect(),this._ob=null),this._app&&this._app.unmount(),this._instance&&(this._instance.ce=void 0),this._app=this._instance=null,this._teleportTargets&&(this._teleportTargets.clear(),this._teleportTargets=void 0))})}_processMutations(t){for(const o of t)this._setAttr(o.attributeName)}_resolveDef(){if(this._pendingResolve)return this._pendingResolve;for(let n=0;n{this._resolved=!0,this._pendingResolve=void 0;const{props:r,styles:s}=n;let i;if(r&&!xe(r))for(const l in r){const u=r[l];(u===Number||u&&u.type===Number)&&(l in this._props&&(this._props[l]=Fi(this._props[l])),(i||(i=Object.create(null)))[_t(l)]=!0)}this._numberProps=i,this._resolveProps(n),this.shadowRoot&&this._applyStyles(s),this._mount(n)},o=this._def.__asyncLoader;if(o)return this._pendingResolve=o().then(n=>{n.configureApp=this._def.configureApp,t(this._def=n,!0)}),this._pendingResolve;t(this._def)}_mount(t){this._app=this._createApp(t),this._inheritParentContext(),t.configureApp&&t.configureApp(this._app),this._app._ceVNode=this._createVNode(),this._app.mount(this._root);const o=this._instance&&this._instance.exposed;if(o)for(const n in o)ze(this,n)||Object.defineProperty(this,n,{get:()=>_e(o[n])})}_resolveProps(t){const{props:o}=t,n=xe(o)?o:Object.keys(o||{});for(const a of Object.keys(this))a[0]!=="_"&&n.includes(a)&&this._setProp(a,this[a]);for(const a of n.map(_t))Object.defineProperty(this,a,{get(){return this._getProp(a)},set(r){this._setProp(a,r,!0,!this._patching)}})}_setAttr(t){if(t.startsWith("data-v-"))return;const o=this.hasAttribute(t);let n=o?this.getAttribute(t):xc;const a=_t(t);o&&this._numberProps&&this._numberProps[a]&&(n=Fi(n)),this._setProp(a,n,!1,!0)}_getProp(t){return this._props[t]}_setProp(t,o,n=!0,a=!1){if(o!==this._props[t]&&(this._dirty=!0,o===xc?delete this._props[t]:(this._props[t]=o,t==="key"&&this._app&&(this._app._ceVNode.key=o)),a&&this._instance&&this._update(),n)){const r=this._ob;r&&(this._processMutations(r.takeRecords()),r.disconnect()),o===!0?this.setAttribute(Bt(t),""):typeof o=="string"||typeof o=="number"?this.setAttribute(Bt(t),o+""):o||this.removeAttribute(Bt(t)),r&&r.observe(this,{attributes:!0})}}_update(){const t=this._createVNode();this._app&&(t.appContext=this._app._context),dh(t,this._root)}_createVNode(){const t={};this.shadowRoot||(t.onVnodeMounted=t.onVnodeUpdated=this._renderSlots.bind(this));const o=He(this._def,lt(t,this._props));return this._instance||(o.ce=n=>{this._instance=n,n.ce=this,n.isCE=!0;const a=(r,s)=>{this.dispatchEvent(new CustomEvent(r,xa(s[0])?lt({detail:s},s[0]):{detail:s}))};n.emit=(r,...s)=>{a(r,s),Bt(r)!==r&&a(Bt(r),s)},this._setParent()}),o}_applyStyles(t,o,n){if(!t)return;if(o){if(o===this._def||this._styleChildren.has(o))return;this._styleChildren.add(o)}const a=this._nonce,r=this.shadowRoot,s=n?this._getStyleAnchor(n)||this._getStyleAnchor(this._def):this._getRootStyleInsertionAnchor(r);let i=null;for(let l=t.length-1;l>=0;l--){const u=document.createElement("style");a&&u.setAttribute("nonce",a),u.textContent=t[l],r.insertBefore(u,i||s),i=u,l===0&&(n||this._styleAnchors.set(this._def,u),o&&this._styleAnchors.set(o,u))}}_getStyleAnchor(t){if(!t)return null;const o=this._styleAnchors.get(t);return o&&o.parentNode===this.shadowRoot?o:(o&&this._styleAnchors.delete(t),null)}_getRootStyleInsertionAnchor(t){for(let o=0;o{const t=e.props["onUpdate:modelValue"]||!1;return xe(t)?o=>Ea(t,o):t};function nh(e){e.target.composing=!0}function Ac(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const tn=Symbol("_assign"),ar=Symbol("_initialValue");function ys(e,t,o){return t&&(e=e.trim()),o&&(e=Ca(e)),e}const ah={created(e,{modifiers:{lazy:t,trim:o,number:n}},a){e.parentNode&&(e.type==="text"?e[ar]=e.defaultValue.replace(/[\r\n]/g,""):e.type==="textarea"&&(e[ar]=e.defaultValue.replace(/\r\n?/g,` +`))),e[tn]=nr(a);const r=n||a.props&&a.props.type==="number";en(e,t?"change":"input",s=>{s.target.composing||e[tn](ys(e.value,o,r))}),(o||r)&&en(e,"change",()=>{e.value=ys(e.value,o,r)}),t||(en(e,"compositionstart",nh),en(e,"compositionend",Ac),en(e,"change",Ac))},mounted(e,{value:t,modifiers:{trim:o,number:n}}){const a=t??"",r=e[ar];delete e[ar],r!==void 0&&(e.type==="text"||e.type==="textarea")&&e.value!==r?e[tn](ys(e.value,o,n)):e.value=a},beforeUpdate(e,{value:t,oldValue:o,modifiers:{lazy:n,trim:a,number:r}},s){if(e[tn]=nr(s),e.composing)return;const i=(r||e.type==="number")&&!/^0\d/.test(e.value)?Ca(e.value):e.value,l=t??"";if(i===l)return;const u=e.getRootNode();(u instanceof Document||u instanceof ShadowRoot)&&u.activeElement===e&&e.type!=="range"&&(n&&t===o||a&&e.value.trim()===l)||(e.value=l)}},rh={deep:!0,created(e,{value:t,modifiers:{number:o}},n){e._modelValue=t,en(e,"change",()=>{const a=Array.prototype.filter.call(e.options,l=>l.selected).map(l=>o?Ca(rr(l)):rr(l)),r=e.multiple,s=r?Vo(e._modelValue)?new Set(a):a:a[0],i=e._pendingValue=[r,r?xe(s)?a.slice():a:s];try{e[tn](s)}finally{so(()=>{e._pendingValue===i&&(e._pendingValue=void 0)})}}),e[tn]=nr(n)},mounted(e,{value:t}){Sc(e,t)},beforeUpdate(e,{value:t},o){e._modelValue=t,e[tn]=nr(o)},updated(e,{value:t}){const o=e._pendingValue;e._pendingValue=void 0,(!o||o[0]!==e.multiple||!sh(t,o[1],o[0]))&&Sc(e,t)}};function sh(e,t,o){if(!o||xe(e))return No(e,t);if(Vo(e)){if(e.size!==t.length)return!1;for(const n of t)if(!e.has(n))return!1;return!0}return!1}function Sc(e,t){const o=e.multiple,n=xe(t);if(!(o&&!n&&!Vo(t))){for(let a=0,r=e.options.length;aString(u)===String(i)):s.selected=Dp(t,i)>-1}else s.selected=t.has(i);else if(No(rr(s),t)){e.selectedIndex!==a&&(e.selectedIndex=a);return}}!o&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function rr(e){return"_value"in e?e._value:e.value}const ih=["ctrl","shift","alt","meta"],lh={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>ih.some(o=>e[`${o}Key`]&&!t.includes(o))},vt=(e,t)=>{if(!e)return e;const o=e._withMods||(e._withMods={}),n=t.join(".");return o[n]||(o[n]=(a,...r)=>{for(let s=0;s{const o=e._withKeys||(e._withKeys={}),n=t.join(".");return o[n]||(o[n]=a=>{if(!("key"in a))return;const r=Bt(a.key);if(t.some(s=>s===r||ch[s]===r))return e(a)})},uh=lt({patchProp:Zf},If);let $c;function Ec(){return $c||($c=gf(uh))}const dh=(...e)=>{Ec().render(...e)},Cc=(...e)=>{const t=Ec().createApp(...e),{mount:o}=t;return t.mount=n=>{const a=gh(n);if(!a)return;const r=t._component;!Ee(r)&&!r.render&&!r.template&&(r.template=a.innerHTML),a.nodeType===1&&(a.textContent="");const s=o(a,!1,ph(a));return a instanceof Element&&(a.removeAttribute("v-cloak"),a.setAttribute("data-v-app","")),s},t};function ph(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function gh(e){return Qe(e)?document.querySelector(e):e}/*! * pinia v2.3.1 * (c) 2025 Eduardo San Martin Morote * @license MIT - */let $c;const sr=e=>$c=e,Ec=Symbol();function _s(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var ra;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(ra||(ra={}));function uh(){const e=Fr(!0),t=e.run(()=>de({}));let o=[],n=[];const a=qo({install(r){sr(a),a._a=r,r.provide(Ec,a),r.config.globalProperties.$pinia=a,n.forEach(s=>o.push(s)),n=[]},use(r){return this._a?o.push(r):n.push(r),this},_p:o,_a:null,_e:e,_s:new Map,state:t});return a}const Cc=()=>{};function Lc(e,t,o,n=Cc){e.push(t);const a=()=>{const r=e.indexOf(t);r>-1&&(e.splice(r,1),n())};return!o&&ji()&&Ip(a),a}function wn(e,...t){e.slice().forEach(o=>{o(...t)})}const dh=e=>e(),Tc=Symbol(),vs=Symbol();function ks(e,t){e instanceof Map&&t instanceof Map?t.forEach((o,n)=>e.set(n,o)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const o in t){if(!t.hasOwnProperty(o))continue;const n=t[o],a=e[o];_s(a)&&_s(n)&&e.hasOwnProperty(o)&&!st(n)&&!vo(n)?e[o]=ks(a,n):e[o]=n}return e}const ph=Symbol();function gh(e){return!_s(e)||!e.hasOwnProperty(ph)}const{assign:Fo}=Object;function fh(e){return!!(st(e)&&e.effect)}function hh(e,t,o,n){const{state:a,actions:r,getters:s}=t,i=o.state.value[e];let l;function u(){i||(o.state.value[e]=a?a():{});const c=ng(o.state.value[e]);return Fo(c,r,Object.keys(s||{}).reduce((p,g)=>(p[g]=qo(te(()=>{sr(o);const w=o._s.get(e);return s[g].call(w,w)})),p),{}))}return l=Pc(e,u,t,o,n,!0),l}function Pc(e,t,o={},n,a,r){let s;const i=Fo({actions:{}},o),l={deep:!0};let u,c,p=[],g=[],w;const b=n.state.value[e];!r&&!b&&(n.state.value[e]={});let y;function d(L){let P;u=c=!1,typeof L=="function"?(L(n.state.value[e]),P={type:ra.patchFunction,storeId:e,events:w}):(ks(n.state.value[e],L),P={type:ra.patchObject,payload:L,storeId:e,events:w});const z=y=Symbol();lo().then(()=>{y===z&&(u=!0)}),c=!0,wn(p,P,n.state.value[e])}const h=r?function(){const{state:P}=o,z=P?P():{};this.$patch(W=>{Fo(W,z)})}:Cc;function f(){s.stop(),p=[],g=[],n._s.delete(e)}const m=(L,P="")=>{if(Tc in L)return L[vs]=P,L;const z=function(){sr(n);const W=Array.from(arguments),re=[],M=[];function F(I){re.push(I)}function T(I){M.push(I)}wn(g,{args:W,name:z[vs],store:x,after:F,onError:T});let $;try{$=L.apply(this&&this.$id===e?this:x,W)}catch(I){throw wn(M,I),I}return $ instanceof Promise?$.then(I=>(wn(re,I),I)).catch(I=>(wn(M,I),Promise.reject(I))):(wn(re,$),$)};return z[Tc]=!0,z[vs]=P,z},k={_p:n,$id:e,$onAction:Lc.bind(null,g),$patch:d,$reset:h,$subscribe(L,P={}){const z=Lc(p,L,P.detached,()=>W()),W=s.run(()=>ct(()=>n.state.value[e],re=>{(P.flush==="sync"?c:u)&&L({storeId:e,type:ra.direct,events:w},re)},Fo({},l,P)));return z},$dispose:f},x=pn(k);n._s.set(e,x);const S=(n._a&&n._a.runWithContext||dh)(()=>n._e.run(()=>(s=Fr()).run(()=>t({action:m}))));for(const L in S){const P=S[L];if(st(P)&&!fh(P)||vo(P))r||(b&&gh(P)&&(st(P)?P.value=b[L]:ks(P,b[L])),n.state.value[e][L]=P);else if(typeof P=="function"){const z=m(P,L);S[L]=z,i.actions[L]=P}}return Fo(x,S),Fo(Be(x),S),Object.defineProperty(x,"$state",{get:()=>n.state.value[e],set:L=>{d(P=>{Fo(P,L)})}}),n._p.forEach(L=>{Fo(x,s.run(()=>L({store:x,app:n._a,pinia:n,options:i})))}),b&&r&&o.hydrate&&o.hydrate(x.$state,b),u=!0,c=!0,x}/*! #__NO_SIDE_EFFECTS__ */function ws(e,t,o){let n,a;const r=typeof t=="function";typeof e=="string"?(n=e,a=r?o:t):(a=e,n=e.id);function s(i,l){const u=yg();return i=i||(u?Fe(Ec,null):null),i&&sr(i),i=$c,i._s.has(n)||(r?Pc(n,t,a,i):hh(n,a,i)),i._s.get(n)}return s.$id=n,s}const xs="__doxaMapToken",As="doxa:map-token",Mc="__doxaMapTokenBridge",xn=()=>{if(typeof window>"u")return"";const e=window[xs];return typeof e=="string"?e:""};function Nc(e){if(typeof window>"u")return"";const t=typeof e=="string"?e.trim():"";if(!t||t===xn())return xn();window[xs]=t;try{window.dispatchEvent(new CustomEvent(As,{detail:t}))}catch{}return t}function mh(){if(typeof window>"u"||window[Mc])return;const e=typeof window.MAP_TOKEN=="string"?window.MAP_TOKEN:"";e&&!xn()&&(window[xs]=e);try{Object.defineProperty(window,"MAP_TOKEN",{configurable:!0,get(){return xn()},set(t){Nc(t)}}),window[Mc]=!0}catch{}}function bh(){mh();const e=de(xn());if(typeof window<"u"){const t=()=>{e.value=xn()};window.addEventListener(As,t);try{uo(()=>window.removeEventListener(As,t))}catch{}}return e}function Rc(e){return Lg({loader:e,onError(t,o,n,a){a<=3?setTimeout(o,a*500):n()}})}const yh={backToLegend:"العودة إلى المفتاح",closeDetailView:"إغلاق عرض التفاصيل"},_h={prayForThem:"صلِّ من أجلهم",adoptThem:"تبنَّهم",moreInfo:"مزيد من المعلومات",zoomIn:"تكبير",zoomOut:"تصغير",switchToLightMode:"التبديل إلى الوضع الفاتح",switchToDarkMode:"التبديل إلى الوضع الداكن",resetView:"إعادة تعيين العرض",toggleFullscreen:"تبديل ملء الشاشة",aboutThisMap:"حول هذه الخريطة",closeMenu:"إغلاق القائمة",reloadMap:"إعادة تحميل الخريطة",showClusters:"إظهار المجموعات",clusterSettings:"إعدادات المجموعات",startAutoFly:"بدء الطيران التلقائي",stopFlight:"إيقاف الطيران",speedLabel:"السرعة:",speedOption:{slow:"بطيء",normal:"عادي",fast:"سريع"},shareEmbed:"مشاركة وتضمين"},vh={labels:{country:"الدولة:",population:"السكان:",language:"اللغة:",religion:"الديانة:",languageFamily:"العائلة اللغوية:",peopleCommitted:"ملتزمون بالصلاة:"},messages:{noDescription:"لا يوجد وصف متاح."}},kh={title:{prayer:"تقدم الصلاة",engagement:"تقدم الانخراط",adoption:"تقدم التبني",languageFamilies:"العائلات اللغوية",doxaRegions:"مناطق Doxa",affinityBlocs:"كتل القرابة",gospelResources:"موارد الإنجيل"},header:{collapsed:"وسيلة الإيضاح",peopleGroupFallback:"مجموعة الشعب"},prayer:{needsPrayer:"يحتاج إلى صلاة",hasPrayer:"لديه صلاة",fullPrayerCoverage:"تغطية صلاة كاملة"},progress:{title:"التقدم",covered:"{covered} من {total} مجموعة شعبية مغطاة بالصلاة · {pct}%",short:"{covered} من {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"يحتاج إلى انخراط",hasEngagement:"لديه انخراط"},adoption:{needsAdoption:"يحتاج إلى تبني",hasAdoption:"لديه تبني"},columns:{upgs:"UUPGs",population:"السكان",name:"الاسم"},footer:{total:"الإجمالي"},sortByUpgs:"ترتيب حسب UUPG",sortByPop:"ترتيب حسب السكان",colLabel:{religion:"ديانات UUPG",prayer:"حالة الصلاة",engagement:"حالة المشاركة",adoption:"حالة التبني",status:"الحالة"},titleBar:{legend:"مفتاح الخريطة",peopleGroups:"الشعوب",wagfRegions:"مناطق WAGF",languages:"اللغات"}},wh={menuComingSoon:"القائمة قادمة قريباً"},xh={clusterByRegion:"حسب منطقة Doxa",clusterByLanguageFamily:"حسب العائلة اللغوية",clusterByGospelResource:"حسب مورد الإنجيل"},Ah={header:"دورة الصلاة الحالية",lap:"الدورة",upgs:"UUPGs",separator:" من "},Sh={"%count% people groups in %countries% countries":"%count% مجموعة بشرية في %countries% دولة","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"تضم %region% %count% مجموعة بشرية في %countries% دولة. يشير لون كل نقطة إلى عدد الأشخاص الذين يصلّون من أجل تلك المجموعة البشرية.","1+ People Praying":"شخص واحد أو أكثر يصلّي","100+ People Praying":"أكثر من 100 شخص يصلّون",Adopted:"تم انتماؤه","Adoption Progress":"تقدُّم الإنتماء","All Regions":"جميع المناطق","Alternate Names":"الأسماء البديلة","Clear All":"مسح الكل",Countries:"الدول","Countries in this region":"الدول في هذه المنطقة",Country:"الدولة",Engaged:"مُنخرَط","Engagement Progress":"تقدُّم الانخراط","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"كل مجموعة بشرية غير مبشرة تتبناها كنيسة ملتزمة بالصلاة والعطاء والإرسال","Exact Search":"بحث دقيق","Find unreached people groups by region and country.":"ابحث عن المجموعات البشرية غير المُبلَّغة حسب المنطقة والدولة.","Full Profile":"الملف الشخصي الكامل",Goal:"الهدف","Hide Filters":"إخفاء المرشحات",Intercessors:"المتشفعين","Load More":"تحميل المزيد","Loading results...":"النتائج قيد التحميل...","Mobilize 100+ people praying daily for each DOXA people group":"حشد أكثر من 100 شخص للصلاة يوميًا من أجل كل مجموعة بشرية من مجموعات دوكسا","No One Praying":"لا أحد يصلّي","No options found":"لم يتم العثور على أي خيارات","No unengaged people groups by 2033":"الهدف هو القضاء على جميع الشعوب الغير مخدومة روحيا بحلول عام 2033","Not Adopted":"لم يتم انتماؤه",Other:"أخرى","Page Not Found":"الصفحة غير موجودة","People Group":"مجموعة بشرية","People Groups":"مجموعات بشرية","People committed to praying":"الأشخاص الذين التزموا بالصلاة",Population:"عدد السكان","Prayer Coverage":"التغطية المستمرة بالصلاة","Prayer coverage progress":"تقدم تغطية الصلاة",Regions:"المناطق",Religion:"الدين","Search names, country/continent, religions...":"إبحث عن الأسماء، الدولة/القارة، الأديان...","See %region% dashboard":"عرض لوحة معلومات %region%","See All":"عرض جميع العناصر",Select:"اختر","Show Filters":"إظهار عوامل التصفية","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"توجد %count% مجموعات بشرية في %country%. تحقق من الخريطة لمعرفة المجموعات البشرية الواقعة على حدود هذه الدولة أيضًا.",Total:"المجموع","Type to search...":"اكتب ما تريد البحث عنه...","Unengaged people groups":"الشعوب الغير متفاعلة","WAGF Block":"كتلة WAGF","WAGF Region":"منطقة WAGF","people groups adopted":"الشعوب المنتمية","people groups engaged":"مجموعات بشرية مُنخرِطة"},$h={placeholder:"شعب، مكان، لغة، ديانة",labels:{people:"الشعب:",place:"المكان:",language:"اللغة:",religion:"الديانة:"},kinds:{people:"الشعب + الدولة",peopleGroup:"الشعب",bloc:"كتلة التقارب",cluster:"مجموعة شعوب",country:"الدولة",region:"المنطقة",family:"عائلة اللغة",languageKind:"اللغة",dialect:"اللهجة",religionKind:"الدين"}},Eh={prayer:"الصلاة",adoption:"التبني",engagement:"المشاركة","affinity-blocks":"الشعوب",regions:"المناطق",countries:"الدول","language-families":"اللغات",religion:"الأديان",family:"عائلة اللغة",language:"اللغة",dialect:"اللهجة/التنوع",bloc:"كتلة التقارب",cluster:"المجموعة",group:"الشعب",pgic:"الشعب في الدولة",region:"منطقة WAGF",block:"كتلة WAGF",country:"الدولة"},Ch={backToLegend:"Zurück zur Legende",closeDetailView:"Detailansicht schließen"},Lh={prayForThem:"Für sie beten",adoptThem:"Sie adoptieren",moreInfo:"Mehr Infos",zoomIn:"Vergrößern",zoomOut:"Verkleinern",switchToLightMode:"Zum hellen Modus wechseln",switchToDarkMode:"Zum dunklen Modus wechseln",resetView:"Ansicht zurücksetzen",toggleFullscreen:"Vollbild umschalten",aboutThisMap:"Über diese Karte",closeMenu:"Menü schließen",reloadMap:"Karte neu laden",showClusters:"Cluster anzeigen",clusterSettings:"Cluster-Einstellungen",startAutoFly:"Auto-Flug starten",stopFlight:"Flug stoppen",speedLabel:"Geschwindigkeit:",speedOption:{slow:"Langsam",normal:"Normal",fast:"Schnell"},shareEmbed:"Teilen und einbetten"},Th={labels:{country:"Land:",population:"Bevölkerung:",language:"Sprache:",religion:"Religion:",languageFamily:"Sprachfamilie:",peopleCommitted:"Zum Gebet verpflichtet:"},messages:{noDescription:"Keine Beschreibung verfügbar."}},Ph={title:{prayer:"Gebetsfortschritt",engagement:"Engagement-Fortschritt",adoption:"Adoptionsfortschritt",languageFamilies:"Sprachfamilien",doxaRegions:"Doxa-Regionen",affinityBlocs:"Affinitätsblöcke",gospelResources:"Evangeliumsressourcen"},header:{collapsed:"Legende",peopleGroupFallback:"Volksgruppe"},prayer:{needsPrayer:"Braucht Gebet",hasPrayer:"Hat Gebet",fullPrayerCoverage:"Vollständige Gebetsabdeckung"},progress:{title:"Fortschritt",covered:"{covered} von {total} Volksgruppen im Gebet abgedeckt · {pct}%",short:"{covered} von {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Braucht Engagement",hasEngagement:"Hat Engagement"},adoption:{needsAdoption:"Braucht Adoption",hasAdoption:"Hat Adoption"},columns:{upgs:"UUPGs",population:"Bevölkerung"},footer:{total:"Gesamt"}},Mh={menuComingSoon:"Menü folgt in Kürze"},Nh={clusterByRegion:"Nach Doxa-Region",clusterByLanguageFamily:"Nach Sprachfamilie",clusterByGospelResource:"Nach Evangeliumsressource"},Rh={header:"AKTUELLE GEBETSRUNDE",lap:"Runde",upgs:"UUPGs",separator:" von "},Ih={"%count% people groups in %countries% countries":"%count% Volksgruppen in %countries% Ländern","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% hat %count% Volksgruppen in %countries% Ländern. Die Farbe jedes Punktes zeigt, wie viele Menschen für diese Volksgruppe beten.","1+ People Praying":"1+ Menschen beten","100+ People Praying":"100+ Menschen beten",Adopted:"Angenommen","Adoption Progress":"Adoptionsfortschritt","All Regions":"Alle Regionen","Alternate Names":"Alternative Namen","Clear All":"Alle löschen",Countries:"Länder","Countries in this region":"Länder in dieser Region",Country:"Land",Engaged:"Engagiert","Engagement Progress":"Engagement-Fortschritt","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Jede einzelne der völlig unerreichten Volksgruppen soll von einer Ortsgemeinde adoptiert werden, durch Beten, Geben und Senden","Exact Search":"Exakte Suche","Find unreached people groups by region and country.":"Finde unerreichte Volksgruppen nach Region und Land.","Full Profile":"Vollständiges Profil",Goal:"Ziel","Hide Filters":"Filter ausblenden",Intercessors:"Fürbitter","Load More":"Mehr laden","Loading results...":"Ergebnisse werden geladen...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilisiere 100+ Menschen, die täglich für jede DOXA-Volksgruppe beten","No One Praying":"Niemand betet","No options found":"Keine Standorte gefunden","No unengaged people groups by 2033":"Dass es bis 2033 keine völlig unerreichte Volksgruppe mehr gibt","Not Adopted":"noch nicht adoptiert",Other:"Andere","Page Not Found":"Seite nicht gefunden","People Group":"Personengruppe","People Groups":"Volksgruppen","People committed to praying":"Menschen, die sich dem Beten verpflichtet haben",Population:"Bevölkerung","Prayer Coverage":"Gebetsabdeckung","Prayer coverage progress":"Fortschritt der Gebetsabdeckung",Regions:"Regionen",Religion:"Primäre Religion","Search names, country/continent, religions...":"Suche nach Namen, Land/Kontinent, Religionen...","See %region% dashboard":"Dashboard anzeigen: %region%","See All":"Alle anzeigen",Select:"Auswählen","Show Filters":"Filter anzeigen","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"In %country% gibt es %count% Volksgruppen. Sieh auch auf der Karte nach den Volksgruppen an der Grenze dieses Landes.",Total:"Gesamt","Type to search...":"Geben Sie etwas ein, um danach zu suchen","Unengaged people groups":"Völlig unerreichte Volksgruppen","WAGF Block":"WAGF-Block","WAGF Region":"WAGF-Region","people groups adopted":"adoptierte Volksgruppen","people groups engaged":"engagierte Volksgruppen"},Oh={placeholder:"Volk, Ort, Sprache, Religion",labels:{people:"Volk:",place:"Ort:",language:"Sprache:",religion:"Religion:"},sections:{within:"Innerhalb {selection}",allData:"Alle DOXA-Daten"}},Fh={prayer:"Gebet",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Volksgruppen",regions:"Regionen",countries:"Länder","language-families":"Sprachen",religion:"Religionen",family:"Sprachfamilie",language:"Sprache",dialect:"Dialekt/Varietät",bloc:"Affinitätsblock",cluster:"Cluster",group:"Volksgruppe",pgic:"Volksgruppe im Land",region:"WAGF-Region",block:"WAGF-Block",country:"Land"},Dh={backToLegend:"Back to Legend",closeDetailView:"Close detail view"},Bh={prayForThem:"Pray for them",adoptThem:"Adopt",moreInfo:"More info",zoomIn:"Zoom in",zoomOut:"Zoom out",switchToLightMode:"Switch to light mode",switchToDarkMode:"Switch to dark mode",resetView:"Reset view",toggleFullscreen:"Toggle fullscreen",aboutThisMap:"About this map",closeMenu:"Close menu",reloadMap:"Reload Map",showClusters:"Show Clusters",clusterSettings:"Cluster Settings",startAutoFly:"Start Auto Fly",stopFlight:"Stop Flight",speedLabel:"Speed:",speedOption:{slow:"Slow",normal:"Normal",fast:"Fast"},shareEmbed:"Share & embed",shareSteps:["Embed this map on your site","Create a list of the websites in your city","Train them to embed it too","Train them to train others to embed it too","Multiply maps everywhere for Jesus!"],share:"Share"},Gh={labels:{country:"Country:",population:"Population:",language:"Language:",religion:"Religion:",languageFamily:"Language Family:",peopleCommitted:"Committed to pray:"},messages:{noDescription:"No description available."}},jh={title:{prayer:"Prayer Progress",engagement:"Engagement Progress",adoption:"Adoption Progress",languageFamilies:"Language Families",doxaRegions:"Doxa Regions",affinityBlocs:"Affinity Blocks",gospelResources:"Gospel Resources"},header:{default:"Legend",collapsed:"Legend",peopleGroupFallback:"People Group"},prayer:{needsPrayer:"Needs Prayer",hasPrayer:"Has Prayer",fullPrayerCoverage:"Full Prayer Coverage"},progress:{title:"Progress",covered:"{covered} of {total} people groups covered in prayer · {pct}%",short:"{covered} of {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Unengaged",hasEngagement:"Engaged"},adoption:{needsAdoption:"Needs Adoption",hasAdoption:"Has Adoption"},columns:{upgs:"UUPGs",population:"Population",name:"Name"},footer:{total:"Total"},sortByUpgs:"Sort by UUPGs",sortByPop:"Sort by Population",colLabel:{religion:"UUPG Religions",prayer:"Prayer Status",engagement:"Engagement Status",adoption:"Adoption Status",status:"Status"},titleBar:{legend:"Legend",peopleGroups:"People Groups",wagfRegions:"WAGF Regions",languages:"Languages"}},Uh={menuComingSoon:"Menu coming soon"},Kh={clusterByRegion:"By Doxa Region",clusterByLanguageFamily:"By Language Family",clusterByGospelResource:"By Gospel Resource"},zh={country:{wagfRegion:"WAGF Region",wagfBlock:"WAGF Bloc",country:"Country",uupgCount:"UUPG Count"}},Hh={header:"CURRENT PRAYER LAP",lap:"Lap",upgs:"UUPGs",separator:" of "},Vh={"%count% people groups in %countries% countries":"%count% people groups in %countries% countries","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.","1+ People Praying":"1+ People Praying","100+ People Praying":"100+ People Praying",Adopted:"Adopted","Adoption Progress":"Adoption Progress","All Regions":"All Regions","Alternate Names":"Alternate Names","Clear All":"Clear All",Countries:"Countries","Countries in this region":"Countries in this region",Country:"Country",Engaged:"Engaged","Engagement Progress":"Engagement Progress","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Every unengaged people group adopted by a church committed to prayer, giving, and sending","Exact Search":"Exact Search","Find unreached people groups by region and country.":"Find unreached people groups by region and country.","Full Profile":"Full Profile",Goal:"Goal","Hide Filters":"Hide Filters",Intercessors:"Intercessors","Load More":"Load More","Loading results...":"Loading results...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilize 100+ people praying daily for each DOXA people group","No One Praying":"No One Praying","No options found":"No options found","No unengaged people groups by 2033":"No unengaged people groups by 2033","Not Adopted":"Not Adopted",Other:"Other","Page Not Found":"Page Not Found","People Group":"People Group","People Groups":"People Groups","People committed to praying":"People committed to praying",Population:"Population","Prayer Coverage":"Prayer Coverage","Prayer coverage progress":"Prayer coverage progress",Regions:"Regions",Religion:"Religion","Search names, country/continent, religions...":"Search names, country/continent, religions...","See %region% dashboard":"See %region% dashboard","See All":"See All",Select:"Select","Show Filters":"Show Filters","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.",Total:"Total","Type to search...":"Type to search...","Unengaged people groups":"Unengaged people groups","WAGF Block":"WAGF Block","WAGF Region":"WAGF Region","people groups adopted":"people groups adopted","people groups engaged":"people groups engaged","View country posters":"View country posters","Hide country posters":"Hide country posters","No poster has been generated for this country yet.":"No poster has been generated for this country yet."},Wh={placeholder:"People, place, language, religion",labels:{people:"People:",place:"Place:",language:"Language:",religion:"Religion:"},kinds:{people:"People Group + Country",peopleGroup:"People Group",bloc:"Affinity Block",cluster:"People Cluster",country:"Country",region:"Region",family:"Language Family",languageKind:"Language",dialect:"Dialect",religionKind:"Religion"},sections:{within:"Within {selection}",allData:"All DOXA Data"}},Yh={prayer:"Prayer",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"People Groups (Affinity)",regions:"Regions",countries:"Countries","language-families":"Languages",religion:"Religions",family:"Lang Family",language:"Language",dialect:"Dialect/Variety",bloc:"Affinity Block",cluster:"Cluster",group:"People Group",pgic:"PG in Country",region:"WAGF Region",block:"WAGF Bloc",country:"Country"},qh={backToLegend:"Volver a la leyenda",closeDetailView:"Cerrar vista de detalle"},Jh={prayForThem:"Ora por ellos",adoptThem:"Adóptalos",moreInfo:"Más información",zoomIn:"Acercar",zoomOut:"Alejar",switchToLightMode:"Cambiar a modo claro",switchToDarkMode:"Cambiar a modo oscuro",resetView:"Restablecer vista",toggleFullscreen:"Alternar pantalla completa",aboutThisMap:"Acerca de este mapa",closeMenu:"Cerrar menú",reloadMap:"Recargar mapa",showClusters:"Mostrar clústeres",clusterSettings:"Ajustes de clústeres",startAutoFly:"Iniciar vuelo automático",stopFlight:"Detener vuelo",speedLabel:"Velocidad:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Compartir e incrustar"},Xh={labels:{country:"País:",population:"Población:",language:"Idioma:",religion:"Religión:",languageFamily:"Familia lingüística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"No hay descripción disponible."}},Zh={title:{prayer:"Progreso de oración",engagement:"Progreso de implicación",adoption:"Progreso de adopción",languageFamilies:"Familias lingüísticas",doxaRegions:"Regiones Doxa",affinityBlocs:"Bloques de afinidad",gospelResources:"Recursos del Evangelio"},header:{collapsed:"Leyenda",peopleGroupFallback:"Grupo de personas"},prayer:{needsPrayer:"Necesita oración",hasPrayer:"Tiene oración",fullPrayerCoverage:"Cobertura de oración completa"},progress:{title:"Progreso",covered:"{covered} de {total} grupos de personas cubiertos en oración · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesita implicación",hasEngagement:"Tiene implicación"},adoption:{needsAdoption:"Necesita adopción",hasAdoption:"Tiene adopción"},columns:{upgs:"UUPGs",population:"Población",name:"Nombre"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por población",colLabel:{religion:"Religiones UUPG",prayer:"Estado de oración",engagement:"Estado de compromiso",adoption:"Estado de adopción",status:"Estado"},titleBar:{legend:"Leyenda",peopleGroups:"Pueblos",wagfRegions:"Regiones WAGF",languages:"Idiomas"}},Qh={menuComingSoon:"Menú próximamente"},em={clusterByRegion:"Por región Doxa",clusterByLanguageFamily:"Por familia lingüística",clusterByGospelResource:"Por recurso del Evangelio"},tm={header:"VUELTA DE ORACIÓN ACTUAL",lap:"Vuelta",upgs:"UUPGs",separator:" de "},om={"%count% people groups in %countries% countries":"%count% grupos étnicos en %countries% países","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% tiene %count% grupos étnicos en %countries% países. El color de cada punto indica cuántas personas oran por ese grupo étnico.","1+ People Praying":"1+ personas orando","100+ People Praying":"100+ personas orando",Adopted:"Aprobado","Adoption Progress":"Progreso de la adopción","All Regions":"Todas las regiones","Alternate Names":"Nombres alternativos","Clear All":"Borrar todo",Countries:"Países","Countries in this region":"Países de esta región",Country:"País",Engaged:"Comprometido","Engagement Progress":"Progreso del compromiso","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Cada grupo étnico no evangelizado adoptado por una iglesia comprometida con la oración, la ofrenda y el envío.","Exact Search":"Búsqueda exacta","Find unreached people groups by region and country.":"Encuentra grupos étnicos no alcanzados por región y país.","Full Profile":"Perfil completo",Goal:"Meta","Hide Filters":"Ocultar filtros",Intercessors:"Intercesores","Load More":"Cargar más","Loading results...":"Cargando resultados...","Mobilize 100+ people praying daily for each DOXA people group":"Movilizar a más de 100 personas que oren diariamente por cada grupo étnico DOXA.","No One Praying":"Nadie orando","No options found":"No se han encontrado opciones","No unengaged people groups by 2033":"No habrá grupos étnicos sin evangelizar para 2033","Not Adopted":"No adoptado",Other:"Otros","Page Not Found":"Página no encontrada","People Group":"Grupo Étnico","People Groups":"Grupos Étnicos","People committed to praying":"Personas comprometidas con la oración",Population:"Población","Prayer Coverage":"Cobertura de oración","Prayer coverage progress":"Progreso de la cobertura de oración",Regions:"Regiones",Religion:"Religión","Search names, country/continent, religions...":"Buscar nombres, país/continente, religiones...","See %region% dashboard":"Ver el panel de %region%","See All":"Ver todo",Select:"Seleccionar","Show Filters":"Mostrar filtros","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Hay %count% grupos étnicos en %country%. Consulta también el mapa para ver los grupos étnicos en la frontera de este país.",Total:"Total","Type to search...":"Escribe para buscar...","Unengaged people groups":"Grupos étnicos no comprometidos","WAGF Block":"Bloque WAGF","WAGF Region":"Región de la WAGF","people groups adopted":"grupos de personas adoptados","people groups engaged":"grupos étnicos comprometidos"},nm={placeholder:"Pueblo, lugar, idioma, religión",labels:{people:"Pueblo:",place:"Lugar:",language:"Idioma:",religion:"Religión:"},kinds:{people:"Pueblo + país",peopleGroup:"Pueblo",bloc:"Bloque de afinidad",cluster:"Clúster de pueblos",country:"País",region:"Región",family:"Familia lingüística",languageKind:"Idioma",dialect:"Dialecto",religionKind:"Religión"}},am={prayer:"Oración",adoption:"Adopción",engagement:"Compromiso","affinity-blocks":"Pueblos",regions:"Regiones",countries:"Países","language-families":"Idiomas",religion:"Religiones",family:"Familia lingüística",language:"Idioma",dialect:"Dialecto/Variedad",bloc:"Bloque de afinidad",cluster:"Clúster",group:"Pueblo",pgic:"Pueblo en país",region:"Región WAGF",block:"Bloque WAGF",country:"País"},rm={backToLegend:"Retour à la légende",closeDetailView:"Fermer la vue détaillée"},sm={prayForThem:"Priez pour eux",adoptThem:"Adoptez-les",moreInfo:"Plus d'infos",zoomIn:"Zoom avant",zoomOut:"Zoom arrière",switchToLightMode:"Passer au mode clair",switchToDarkMode:"Passer au mode sombre",resetView:"Réinitialiser la vue",toggleFullscreen:"Basculer en plein écran",aboutThisMap:"À propos de cette carte",closeMenu:"Fermer le menu",reloadMap:"Recharger la carte",showClusters:"Afficher les clusters",clusterSettings:"Paramètres des clusters",startAutoFly:"Démarrer le vol auto",stopFlight:"Arrêter le vol",speedLabel:"Vitesse :",speedOption:{slow:"Lente",normal:"Normale",fast:"Rapide"},shareEmbed:"Partager et intégrer"},im={labels:{country:"Pays :",population:"Population :",language:"Langue :",religion:"Religion :",languageFamily:"Famille de langues :",peopleCommitted:"Engagés à prier :"},messages:{noDescription:"Aucune description disponible."}},lm={title:{prayer:"Progression de la prière",engagement:"Progression de l'engagement",adoption:"Progression de l'adoption",languageFamilies:"Familles de langues",doxaRegions:"Régions Doxa",affinityBlocs:"Blocs d'affinité",gospelResources:"Ressources de l'Évangile"},header:{collapsed:"Légende",peopleGroupFallback:"Groupe de personnes"},prayer:{needsPrayer:"Besoin de prière",hasPrayer:"Prière en cours",fullPrayerCoverage:"Couverture de prière complète"},progress:{title:"Progression",covered:"{covered} sur {total} groupes de personnes couverts par la prière · {pct}%",short:"{covered} sur {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Besoin d'engagement",hasEngagement:"Engagement en cours"},adoption:{needsAdoption:"Besoin d'adoption",hasAdoption:"Adoption en cours"},columns:{upgs:"UUPGs",population:"Population",name:"Nom"},footer:{total:"Total"},sortByUpgs:"Trier par UUPG",sortByPop:"Trier par population",colLabel:{religion:"Religions UUPG",prayer:"Statut de prière",engagement:"Statut d'engagement",adoption:"Statut d'adoption",status:"Statut"},titleBar:{legend:"Légende",peopleGroups:"Peuples",wagfRegions:"Régions WAGF",languages:"Langues"}},cm={menuComingSoon:"Menu bientôt disponible"},um={clusterByRegion:"Par région Doxa",clusterByLanguageFamily:"Par famille de langues",clusterByGospelResource:"Par ressource de l'Évangile"},dm={country:{wagfRegion:"Région WAGF",wagfBlock:"Bloc WAGF",country:"Pays",uupgCount:"Nombre d'UUPG"}},pm={header:"TOUR DE PRIÈRE ACTUEL",lap:"Tour",upgs:"UUPGs",separator:" sur "},gm={"%count% people groups in %countries% countries":"%count% peuples dans %countries% pays","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% compte %count% peuples répartis dans %countries% pays. La couleur de chaque point indique combien de personnes prient pour ce peuple.","1+ People Praying":"1+ personnes en prière","100+ People Praying":"100+ personnes en prière",Adopted:"Adopté","Adoption Progress":"Progrès de l'adoption","All Regions":"Toutes les régions","Alternate Names":"Autres noms","Clear All":"Tout effacer",Countries:"Pays","Countries in this region":"Pays de cette région",Country:"Pays",Engaged:"Engagé","Engagement Progress":"Progrès de l'engagement","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Chaque peuple non engagé adopté par une église locale engagée dans la prière, le don et l'envoi","Exact Search":"Recherche exacte","Find unreached people groups by region and country.":"Trouvez des peuples non atteints par région et par pays.","Full Profile":"Profil complet",Goal:"Objectif","Hide Filters":"Masquer les filtres",Intercessors:"Intercesseurs","Load More":"Afficher plus","Loading results...":"Chargement des résultats...","Mobilize 100+ people praying daily for each DOXA people group":"Mobiliser plus de 100 personnes priant chaque jour pour chaque peuple DOXA","No One Praying":"Personne ne prie","No options found":"Aucun lieu trouvé","No unengaged people groups by 2033":"Plus aucun peuple non engagé d'ici 2033","Not Adopted":"Non adopté",Other:"Autre","Page Not Found":"Page introuvable","People Group":"Peuple","People Groups":"Peuples","People committed to praying":"Personnes engagées dans la prière",Population:"Population","Prayer Coverage":"Couverture de prière","Prayer coverage progress":"Progression de la couverture de prière",Regions:"Régions",Religion:"Religion","Search names, country/continent, religions...":"Rechercher des noms, pays/continent, religions...","See %region% dashboard":"Voir le tableau de bord : %region%","See All":"Tout afficher",Select:"Sélectionner","Show Filters":"Afficher les filtres","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Il y a %count% peuples en %country%. Consultez la carte pour découvrir également les peuples situés à la frontière de ce pays.",Total:"Total","Type to search...":"Entrer votre recherche","Unengaged people groups":"Peuples non engagés","WAGF Block":"Bloc WAGF","WAGF Region":"Région WAGF","people groups adopted":"peuples adoptés","people groups engaged":"peuples engagés"},fm={placeholder:"Peuple, lieu, langue, religion",labels:{people:"Peuple :",place:"Lieu :",language:"Langue :",religion:"Religion :"},kinds:{people:"Peuple + pays",peopleGroup:"Peuple",bloc:"Bloc d'affinité",cluster:"Grappe de peuples",country:"Pays",region:"Région",family:"Famille linguistique",languageKind:"Langue",dialect:"Dialecte",religionKind:"Religion"}},hm={prayer:"Prière",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Peuples",regions:"Régions",countries:"Pays","language-families":"Langues",religion:"Religions",family:"Famille linguistique",language:"Langue",dialect:"Dialecte/Variété",bloc:"Bloc d'affinité",cluster:"Grappe",group:"Peuple",pgic:"Peuple dans le pays",region:"Région WAGF",block:"Bloc WAGF",country:"Pays"},mm={backToLegend:"लेजेंड पर वापस जाएं",closeDetailView:"विवरण दृश्य बंद करें"},bm={prayForThem:"उनके लिए प्रार्थना करें",adoptThem:"उन्हें गोद लें",moreInfo:"अधिक जानकारी",zoomIn:"ज़ूम इन",zoomOut:"ज़ूम आउट",switchToLightMode:"लाइट मोड पर जाएं",switchToDarkMode:"डार्क मोड पर जाएं",resetView:"दृश्य रीसेट करें",toggleFullscreen:"फ़ुलस्क्रीन टॉगल करें",aboutThisMap:"इस मानचित्र के बारे में",closeMenu:"मेनू बंद करें",reloadMap:"मानचित्र पुनः लोड करें",showClusters:"क्लस्टर दिखाएं",clusterSettings:"क्लस्टर सेटिंग्स",startAutoFly:"ऑटो फ्लाई शुरू करें",stopFlight:"उड़ान रोकें",speedLabel:"गति:",speedOption:{slow:"धीमी",normal:"सामान्य",fast:"तेज़"},shareEmbed:"साझा करें और एम्बेड करें"},ym={labels:{country:"देश:",population:"जनसंख्या:",language:"भाषा:",religion:"धर्म:",languageFamily:"भाषा परिवार:",peopleCommitted:"प्रार्थना के लिए प्रतिबद्ध:"},messages:{noDescription:"कोई विवरण उपलब्ध नहीं है।"}},_m={title:{prayer:"प्रार्थना प्रगति",engagement:"सहभागिता प्रगति",adoption:"गोद लेने की प्रगति",languageFamilies:"भाषा परिवार",doxaRegions:"Doxa क्षेत्र",affinityBlocs:"समानता समूह",gospelResources:"सुसमाचार संसाधन"},header:{collapsed:"किंवदंती",peopleGroupFallback:"जनजाति समूह"},prayer:{needsPrayer:"प्रार्थना चाहिए",hasPrayer:"प्रार्थना है",fullPrayerCoverage:"पूर्ण प्रार्थना कवरेज"},progress:{title:"प्रगति",covered:"{total} में से {covered} जनजाति समूह प्रार्थना में कवर · {pct}%",short:"{total} में से {covered} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"सहभागिता चाहिए",hasEngagement:"सहभागिता है"},adoption:{needsAdoption:"गोद लेना चाहिए",hasAdoption:"गोद लिया गया"},columns:{upgs:"UUPGs",population:"जनसंख्या"},footer:{total:"कुल"}},vm={menuComingSoon:"मेनू शीघ्र आ रहा है"},km={clusterByRegion:"Doxa क्षेत्र के अनुसार",clusterByLanguageFamily:"भाषा परिवार के अनुसार",clusterByGospelResource:"सुसमाचार संसाधन के अनुसार"},wm={header:"वर्तमान प्रार्थना चक्र",lap:"चक्र",upgs:"UUPGs",separator:" में से "},xm={"%count% people groups in %countries% countries":"%countries% देशों में %count% लोगों के समूह","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% में %countries% देशों में %count% लोगों के समूह हैं। प्रत्येक बिंदु का रंग दर्शाता है कि उस लोगों के समूह के लिए कितने लोग प्रार्थना कर रहे हैं।","1+ People Praying":"1+ लोग प्रार्थना कर रहे हैं","100+ People Praying":"100+ लोग प्रार्थना कर रहे हैं",Adopted:"दत्तक लिया गया","Adoption Progress":"दत्तक ग्रहण की प्रगति","All Regions":"सभी क्षेत्र","Alternate Names":"वैकल्पिक नाम","Clear All":"सभी साफ़ करें",Countries:"देश","Countries in this region":"इस क्षेत्र के देश",Country:"देश",Engaged:"प्रवेशित","Engagement Progress":"प्रवेश की प्रगति","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"प्रत्येक असंलग्न जनसमूह जिसे प्रार्थना, दान और भेजने के लिए प्रतिबद्ध एक चर्च ने अपनाया है।","Exact Search":"सटीक खोज","Find unreached people groups by region and country.":"क्षेत्र और देश के अनुसार अगम्य लोगों के समूह खोजें।","Full Profile":"पूर्ण प्रोफ़ाइल",Goal:"लक्ष्य","Hide Filters":"फ़िल्टर छिपाएँ",Intercessors:"मध्यस्थ","Load More":"और लोड करें","Loading results...":"परिणाम लोड हो रहे हैं..।","Mobilize 100+ people praying daily for each DOXA people group":"प्रत्येक DOXA जनसमूह के लिए प्रतिदिन प्रार्थना करने हेतु 100+ लोगों को सक्रिय करें।","No One Praying":"कोई प्रार्थना नहीं कर रहा","No options found":"कोई विकल्प नहीं मिला","No unengaged people groups by 2033":"2033 तक कोई भी संलग्न न किया गया जनसमूह नहीं रहेगा।","Not Adopted":"दत्तक नहीं लिया गया",Other:"अन्य","Page Not Found":"पृष्ठ नहीं मिला","People Group":"लोगों का समूह","People Groups":"लोगों के समूह","People committed to praying":"प्रार्थना के लिए प्रतिबद्ध लोग",Population:"जनसँख्या","Prayer Coverage":"प्रार्थना कवरेज","Prayer coverage progress":"प्रार्थना कवरेज की प्रगति",Regions:"क्षेत्र",Religion:"धर्म","Search names, country/continent, religions...":"नाम, देश/महाद्वीप, धर्म खोजें..।","See %region% dashboard":"%region% डैशबोर्ड देखें","See All":"सभी देखें",Select:"चयन/छंटनी","Show Filters":"फ़िल्टर दिखाएँ","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"%country% में %count% लोगों के समूह हैं। इस देश की सीमा पर स्थित लोगों के समूहों के लिए मानचित्र भी देखें।",Total:"संपूर्ण","Type to search...":"खोजने के लिए टाइप करें..।","Unengaged people groups":"अनलग्न लोगों के समूह","WAGF Block":"WAGF ब्लॉक","WAGF Region":"डब्ल्यूएजीएफ क्षेत्र","people groups adopted":"लोगों के समूहों ने अपनाया","people groups engaged":"प्रवेशित लोगों के समूह"},Am={placeholder:"लोग, स्थान, भाषा, धर्म",labels:{people:"लोग:",place:"स्थान:",language:"भाषा:",religion:"धर्म:"}},Sm={backToLegend:"Torna alla legenda",closeDetailView:"Chiudi vista dettaglio"},$m={prayForThem:"Prega per loro",adoptThem:"Adottali",moreInfo:"Più informazioni",zoomIn:"Ingrandisci",zoomOut:"Riduci",switchToLightMode:"Passa alla modalità chiara",switchToDarkMode:"Passa alla modalità scura",resetView:"Reimposta vista",toggleFullscreen:"Attiva/disattiva schermo intero",aboutThisMap:"Informazioni su questa mappa",closeMenu:"Chiudi menu",reloadMap:"Ricarica mappa",showClusters:"Mostra cluster",clusterSettings:"Impostazioni cluster",startAutoFly:"Avvia volo automatico",stopFlight:"Ferma volo",speedLabel:"Velocità:",speedOption:{slow:"Lenta",normal:"Normale",fast:"Veloce"},shareEmbed:"Condividi e incorpora"},Em={labels:{country:"Paese:",population:"Popolazione:",language:"Lingua:",religion:"Religione:",languageFamily:"Famiglia linguistica:",peopleCommitted:"Impegnati a pregare:"},messages:{noDescription:"Nessuna descrizione disponibile."}},Cm={title:{prayer:"Avanzamento della preghiera",engagement:"Avanzamento dell'impegno",adoption:"Avanzamento dell'adozione",languageFamilies:"Famiglie linguistiche",doxaRegions:"Regioni Doxa",affinityBlocs:"Blocchi di affinità",gospelResources:"Risorse del Vangelo"},header:{collapsed:"Legenda",peopleGroupFallback:"Gruppo di persone"},prayer:{needsPrayer:"Necessita preghiera",hasPrayer:"Ha preghiera",fullPrayerCoverage:"Copertura di preghiera completa"},progress:{title:"Avanzamento",covered:"{covered} di {total} gruppi di persone coperti dalla preghiera · {pct}%",short:"{covered} di {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necessita impegno",hasEngagement:"Ha impegno"},adoption:{needsAdoption:"Necessita adozione",hasAdoption:"Ha adozione"},columns:{upgs:"UUPGs",population:"Popolazione"},footer:{total:"Totale"}},Lm={menuComingSoon:"Menu in arrivo"},Tm={clusterByRegion:"Per regione Doxa",clusterByLanguageFamily:"Per famiglia linguistica",clusterByGospelResource:"Per risorsa del Vangelo"},Pm={header:"GIRO DI PREGHIERA ATTUALE",lap:"Giro",upgs:"UUPGs",separator:" di "},Mm={placeholder:"Popolo, luogo, lingua, religione",labels:{people:"Popolo:",place:"Luogo:",language:"Lingua:",religion:"Religione:"}},Nm={backToLegend:"Voltar à legenda",closeDetailView:"Fechar vista de detalhe"},Rm={prayForThem:"Ore por eles",adoptThem:"Adote-os",moreInfo:"Mais informações",zoomIn:"Ampliar",zoomOut:"Reduzir",switchToLightMode:"Mudar para modo claro",switchToDarkMode:"Mudar para modo escuro",resetView:"Repor vista",toggleFullscreen:"Alternar ecrã inteiro",aboutThisMap:"Sobre este mapa",closeMenu:"Fechar menu",reloadMap:"Recarregar mapa",showClusters:"Mostrar clusters",clusterSettings:"Definições de clusters",startAutoFly:"Iniciar voo automático",stopFlight:"Parar voo",speedLabel:"Velocidade:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Partilhar e incorporar"},Im={labels:{country:"País:",population:"População:",language:"Língua:",religion:"Religião:",languageFamily:"Família linguística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"Sem descrição disponível."}},Om={title:{prayer:"Progresso da oração",engagement:"Progresso do envolvimento",adoption:"Progresso da adoção",languageFamilies:"Famílias linguísticas",doxaRegions:"Regiões Doxa",affinityBlocs:"Blocos de afinidade",gospelResources:"Recursos do Evangelho"},header:{collapsed:"Legenda",peopleGroupFallback:"Grupo de pessoas"},prayer:{needsPrayer:"Precisa de oração",hasPrayer:"Tem oração",fullPrayerCoverage:"Cobertura de oração completa"},progress:{title:"Progresso",covered:"{covered} de {total} grupos de pessoas cobertos em oração · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Precisa de envolvimento",hasEngagement:"Tem envolvimento"},adoption:{needsAdoption:"Precisa de adoção",hasAdoption:"Tem adoção"},columns:{upgs:"UUPGs",population:"População",name:"Nome"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por população",colLabel:{religion:"Religiões UUPG",prayer:"Status de oração",engagement:"Status de engajamento",adoption:"Status de adoção",status:"Status"},titleBar:{legend:"Legenda",peopleGroups:"Povos",wagfRegions:"Regiões WAGF",languages:"Idiomas"}},Fm={menuComingSoon:"Menu em breve"},Dm={clusterByRegion:"Por região Doxa",clusterByLanguageFamily:"Por família linguística",clusterByGospelResource:"Por recurso do Evangelho"},Bm={header:"VOLTA DE ORAÇÃO ATUAL",lap:"Volta",upgs:"UUPGs",separator:" de "},Gm={"%count% people groups in %countries% countries":"%count% grupos étnicos em %countries% países","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% tem %count% grupos étnicos em %countries% países. A cor de cada ponto indica quantas pessoas oram por esse grupo étnico.","1+ People Praying":"1+ pessoas orando","100+ People Praying":"100+ pessoas orando",Adopted:"Aprovado","Adoption Progress":"Progresso da adoção","All Regions":"Todas as regiões","Alternate Names":"Nomes alternativos","Clear All":"Limpar tudo",Countries:"Países","Countries in this region":"Países desta região",Country:"País",Engaged:"Engajado","Engagement Progress":"Progresso do engajamento","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Cada grupo étnico não engajado adotado por uma igreja comprometida com a oração, contribuição e o envio","Exact Search":"Pesquisa exata","Find unreached people groups by region and country.":"Encontre grupos étnicos não alcançados por região e país.","Full Profile":"Perfil completo",Goal:"Meta","Hide Filters":"Ocultar filtros",Intercessors:"Intercessores","Load More":"Carregar mais","Loading results...":"A carregar resultados...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilizar mais de 100 pessoas para orar diariamente por cada grupo étnico DOXA","No One Praying":"Ninguém orando","No options found":"Não foram encontradas opções","No unengaged people groups by 2033":"Nenhum grupo étnico não engajado até 2033","Not Adopted":"Não adotado",Other:"Outros","Page Not Found":"Página não encontrada","People Group":"Grupo étnico","People Groups":"Grupos étnicos","People committed to praying":"Pessoas comprometidas com a oração",Population:"Aplicação","Prayer Coverage":"Cobertura de oração","Prayer coverage progress":"Progresso da cobertura de oração",Regions:"Regiões",Religion:"Religião","Search names, country/continent, religions...":"Busque nomes, país/continente, religiões...","See %region% dashboard":"Ver o painel: %region%","See All":"Ver tudo",Select:"Selecionar","Show Filters":"Mostrar filtros","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Existem %count% grupos étnicos em %country%. Verifique no mapa também os grupos étnicos na fronteira deste país.",Total:"Total","Type to search...":"Digite para pesquisar...","Unengaged people groups":"Grupos étnicos não engajados","WAGF Block":"Bloco WAGF","WAGF Region":"Região da WAGF","people groups adopted":"grupos étnicos adotados","people groups engaged":"grupos étnicos engajados"},jm={placeholder:"Povo, local, língua, religião",labels:{people:"Povo:",place:"Local:",language:"Língua:",religion:"Religião:"},kinds:{people:"Povo + país",peopleGroup:"Povo",bloc:"Bloco de afinidade",cluster:"Agrupamento de povos",country:"País",region:"Região",family:"Família linguística",languageKind:"Idioma",dialect:"Dialeto",religionKind:"Religião"}},Um={prayer:"Oração",adoption:"Adoção",engagement:"Engajamento","affinity-blocks":"Povos",regions:"Regiões",countries:"Países","language-families":"Idiomas",religion:"Religiões",family:"Família linguística",language:"Idioma",dialect:"Dialeto/Variedade",bloc:"Bloco de afinidade",cluster:"Agrupamento",group:"Povo",pgic:"Povo no país",region:"Região WAGF",block:"Bloco WAGF",country:"País"},Km={backToLegend:"Înapoi la legendă",closeDetailView:"Închide vizualizarea detaliată"},zm={prayForThem:"Roagă-te pentru ei",adoptThem:"Adoptă-i",moreInfo:"Mai multe informații",zoomIn:"Mărește",zoomOut:"Micșorează",switchToLightMode:"Comută la modul luminos",switchToDarkMode:"Comută la modul întunecat",resetView:"Resetează vizualizarea",toggleFullscreen:"Comută ecran complet",aboutThisMap:"Despre această hartă",closeMenu:"Închide meniul",reloadMap:"Reîncarcă harta",showClusters:"Arată clusterele",clusterSettings:"Setări clustere",startAutoFly:"Pornește zborul automat",stopFlight:"Oprește zborul",speedLabel:"Viteză:",speedOption:{slow:"Lent",normal:"Normal",fast:"Rapid"},shareEmbed:"Partajează și încorporează"},Hm={labels:{country:"Țară:",population:"Populație:",language:"Limbă:",religion:"Religie:",languageFamily:"Familie de limbi:",peopleCommitted:"Angajați să se roage:"},messages:{noDescription:"Nicio descriere disponibilă."}},Vm={title:{prayer:"Progresul rugăciunii",engagement:"Progresul implicării",adoption:"Progresul adopției",languageFamilies:"Familii de limbi",doxaRegions:"Regiuni Doxa",affinityBlocs:"Blocuri de afinitate",gospelResources:"Resurse ale Evangheliei"},header:{collapsed:"Legendă",peopleGroupFallback:"Grup de popoare"},prayer:{needsPrayer:"Necesită rugăciune",hasPrayer:"Are rugăciune",fullPrayerCoverage:"Acoperire completă de rugăciune"},progress:{title:"Progres",covered:"{covered} din {total} grupuri de popoare acoperite în rugăciune · {pct}%",short:"{covered} din {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesită implicare",hasEngagement:"Are implicare"},adoption:{needsAdoption:"Necesită adopție",hasAdoption:"Are adopție"},columns:{upgs:"UUPGs",population:"Populație"},footer:{total:"Total"}},Wm={menuComingSoon:"Meniu în curând"},Ym={clusterByRegion:"După regiune Doxa",clusterByLanguageFamily:"După familia de limbi",clusterByGospelResource:"După resursa Evangheliei"},qm={header:"TURUL DE RUGĂCIUNE CURENT",lap:"Tur",upgs:"UUPGs",separator:" din "},Jm={placeholder:"Popor, loc, limbă, religie",labels:{people:"Popor:",place:"Loc:",language:"Limbă:",religion:"Religie:"}},Xm={backToLegend:"Назад к легенде",closeDetailView:"Закрыть подробный вид"},Zm={prayForThem:"Молитесь о них",adoptThem:"Усыновите их",moreInfo:"Подробнее",zoomIn:"Приблизить",zoomOut:"Отдалить",switchToLightMode:"Переключить на светлый режим",switchToDarkMode:"Переключить на тёмный режим",resetView:"Сбросить вид",toggleFullscreen:"Полноэкранный режим",aboutThisMap:"Об этой карте",closeMenu:"Закрыть меню",reloadMap:"Перезагрузить карту",showClusters:"Показать кластеры",clusterSettings:"Настройки кластеров",startAutoFly:"Начать авто-полёт",stopFlight:"Остановить полёт",speedLabel:"Скорость:",speedOption:{slow:"Медленно",normal:"Нормально",fast:"Быстро"},shareEmbed:"Поделиться и встроить"},Qm={labels:{country:"Страна:",population:"Население:",language:"Язык:",religion:"Религия:",languageFamily:"Языковая семья:",peopleCommitted:"Обязались молиться:"},messages:{noDescription:"Описание недоступно."}},eb={title:{prayer:"Прогресс молитвы",engagement:"Прогресс вовлечённости",adoption:"Прогресс усыновления",languageFamilies:"Языковые семьи",doxaRegions:"Регионы Doxa",affinityBlocs:"Блоки родства",gospelResources:"Евангельские ресурсы"},header:{collapsed:"Условные обозначения",peopleGroupFallback:"Народная группа"},prayer:{needsPrayer:"Нуждается в молитве",hasPrayer:"Есть молитва",fullPrayerCoverage:"Полное молитвенное покрытие"},progress:{title:"Прогресс",covered:"{covered} из {total} народных групп охвачены молитвой · {pct}%",short:"{covered} из {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Нуждается в вовлечённости",hasEngagement:"Есть вовлечённость"},adoption:{needsAdoption:"Нуждается в усыновлении",hasAdoption:"Есть усыновление"},columns:{upgs:"UUPGs",population:"Население",name:"Название"},footer:{total:"Всего"},sortByUpgs:"Сортировать по UUPG",sortByPop:"Сортировать по населению",colLabel:{religion:"Религии UUPG",prayer:"Статус молитвы",engagement:"Статус вовлечённости",adoption:"Статус усыновления",status:"Статус"},titleBar:{legend:"Легенда",peopleGroups:"Народы",wagfRegions:"Регионы WAGF",languages:"Языки"}},tb={menuComingSoon:"Меню скоро появится"},ob={clusterByRegion:"По региону Doxa",clusterByLanguageFamily:"По языковой семье",clusterByGospelResource:"По евангельскому ресурсу"},nb={header:"ТЕКУЩИЙ КРУГ МОЛИТВЫ",lap:"Круг",upgs:"UUPGs",separator:" из "},ab={"%count% people groups in %countries% countries":"%count% групп людей в %countries% странах","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"В регионе %region% — %count% групп людей в %countries% странах. Цвет каждой точки показывает, сколько человек молится за эту группу людей.","1+ People Praying":"1+ человек молится","100+ People Praying":"100+ человек молятся",Adopted:"Принято","Adoption Progress":"Прогресс принятия","All Regions":"Все регионы","Alternate Names":"Альтернативные названия","Clear All":"Очистить всё",Countries:"Страны","Countries in this region":"Страны этого региона",Country:"Страна",Engaged:"Вовлечённый","Engagement Progress":"Прогресс вовлечения","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Каждая незадействованная народность принята церковью, приверженной молитве, пожертвованиям и посылке миссионеров","Exact Search":"Точный поиск","Find unreached people groups by region and country.":"Найдите недостигнутые группы людей по регионам и странам.","Full Profile":"Полный профиль",Goal:"Цель","Hide Filters":"Скрыть фильтры",Intercessors:"Ходатаи","Load More":"Загрузить еще","Loading results...":"Загрузка результатов...","Mobilize 100+ people praying daily for each DOXA people group":"Мобилизуйте 100+ человек для ежедневной молитвы за каждую народность DOXA","No One Praying":"Никто не молится","No options found":"Вариантов не найдено","No unengaged people groups by 2033":"К 2033 году не останется незадействованных народов","Not Adopted":"Не принято",Other:"Другое","Page Not Found":"Страница не найдена","People Group":"Группа людей","People Groups":"Группы людей","People committed to praying":"Люди, посвятившие себя молитве",Population:"Население","Prayer Coverage":"Молитвенное покрытие","Prayer coverage progress":"Прогресс молитвенного покрытия",Regions:"Регионы",Religion:"Религия","Search names, country/continent, religions...":"Поиск по именам, странам/континентам, религиям...","See %region% dashboard":"Открыть панель: %region%","See All":"Смотреть все",Select:"Выбрать","Show Filters":"Показать фильтры","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Страна %country% насчитывает %count% групп людей. Проверьте также на карте группы людей, расположенные вдоль границ этой страны.",Total:"Итого","Type to search...":"Введите текст для поиска...","Unengaged people groups":"Невовлечённые группы людей","WAGF Block":"Блок WAGF","WAGF Region":"Регион WAGF","people groups adopted":"принятые группы людей","people groups engaged":"вовлечённые группы людей"},rb={placeholder:"Народ, место, язык, религия",labels:{people:"Народ:",place:"Место:",language:"Язык:",religion:"Религия:"},kinds:{people:"Народ + страна",peopleGroup:"Народ",bloc:"Блок родства",cluster:"Кластер народов",country:"Страна",region:"Регион",family:"Языковая семья",languageKind:"Язык",dialect:"Диалект",religionKind:"Религия"}},sb={prayer:"Молитва",adoption:"Усыновление",engagement:"Вовлечённость","affinity-blocks":"Народы",regions:"Регионы",countries:"Страны","language-families":"Языки",religion:"Религии",family:"Языковая семья",language:"Язык",dialect:"Диалект/вариант",bloc:"Блок родства",cluster:"Кластер",group:"Народ",pgic:"Народ в стране",region:"Регион WAGF",block:"Блок WAGF",country:"Страна"},ib={backToLegend:"返回图例",closeDetailView:"关闭详情视图"},lb={prayForThem:"为他们祷告",adoptThem:"认领他们",moreInfo:"更多信息",zoomIn:"放大",zoomOut:"缩小",switchToLightMode:"切换至浅色模式",switchToDarkMode:"切换至深色模式",resetView:"重置视图",toggleFullscreen:"切换全屏",aboutThisMap:"关于此地图",closeMenu:"关闭菜单",reloadMap:"重新加载地图",showClusters:"显示聚类",clusterSettings:"聚类设置",startAutoFly:"开始自动飞行",stopFlight:"停止飞行",speedLabel:"速度:",speedOption:{slow:"慢",normal:"正常",fast:"快"},shareEmbed:"分享与嵌入"},cb={labels:{country:"国家:",population:"人口:",language:"语言:",religion:"宗教:",languageFamily:"语系:",peopleCommitted:"承诺祷告人数:"},messages:{noDescription:"暂无描述。"}},ub={title:{prayer:"祷告进度",engagement:"参与进度",adoption:"认领进度",languageFamilies:"语系",doxaRegions:"Doxa 区域",affinityBlocs:"亲缘板块",gospelResources:"福音资源"},header:{collapsed:"图例",peopleGroupFallback:"民族群体"},prayer:{needsPrayer:"需要祷告",hasPrayer:"已有祷告",fullPrayerCoverage:"全面祷告覆盖"},progress:{title:"进度",covered:"{total} 个民族群体中已有 {covered} 个被祷告覆盖 · {pct}%",short:"{covered} / {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"需要参与",hasEngagement:"已有参与"},adoption:{needsAdoption:"需要认领",hasAdoption:"已有认领"},columns:{upgs:"UUPGs",population:"人口"},footer:{total:"总计"}},db={menuComingSoon:"菜单即将推出"},pb={clusterByRegion:"按 Doxa 区域",clusterByLanguageFamily:"按语系",clusterByGospelResource:"按福音资源"},gb={header:"当前祷告轮次",lap:"第",upgs:"UUPGs",separator:" / "},fb={placeholder:"民族、地点、语言、宗教",labels:{people:"民族:",place:"地点:",language:"语言:",religion:"宗教:"}};/*! + */let Lc;const sr=e=>Lc=e,Tc=Symbol();function vs(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var ra;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(ra||(ra={}));function fh(){const e=Dr(!0),t=e.run(()=>de({}));let o=[],n=[];const a=Yo({install(r){sr(a),a._a=r,r.provide(Tc,a),r.config.globalProperties.$pinia=a,n.forEach(s=>o.push(s)),n=[]},use(r){return this._a?o.push(r):n.push(r),this},_p:o,_a:null,_e:e,_s:new Map,state:t});return a}const Pc=()=>{};function Mc(e,t,o,n=Pc){e.push(t);const a=()=>{const r=e.indexOf(t);r>-1&&(e.splice(r,1),n())};return!o&&zi()&&Bp(a),a}function kn(e,...t){e.slice().forEach(o=>{o(...t)})}const hh=e=>e(),Nc=Symbol(),ks=Symbol();function ws(e,t){e instanceof Map&&t instanceof Map?t.forEach((o,n)=>e.set(n,o)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const o in t){if(!t.hasOwnProperty(o))continue;const n=t[o],a=e[o];vs(a)&&vs(n)&&e.hasOwnProperty(o)&&!at(n)&&!_o(n)?e[o]=ws(a,n):e[o]=n}return e}const mh=Symbol();function bh(e){return!vs(e)||!e.hasOwnProperty(mh)}const{assign:Oo}=Object;function yh(e){return!!(at(e)&&e.effect)}function _h(e,t,o,n){const{state:a,actions:r,getters:s}=t,i=o.state.value[e];let l;function u(){i||(o.state.value[e]=a?a():{});const c=ig(o.state.value[e]);return Oo(c,r,Object.keys(s||{}).reduce((p,f)=>(p[f]=Yo(oe(()=>{sr(o);const k=o._s.get(e);return s[f].call(k,k)})),p),{}))}return l=Rc(e,u,t,o,n,!0),l}function Rc(e,t,o={},n,a,r){let s;const i=Oo({actions:{}},o),l={deep:!0};let u,c,p=[],f=[],k;const w=n.state.value[e];!r&&!w&&(n.state.value[e]={});let m;function d(L){let T;u=c=!1,typeof L=="function"?(L(n.state.value[e]),T={type:ra.patchFunction,storeId:e,events:k}):(ws(n.state.value[e],L),T={type:ra.patchObject,payload:L,storeId:e,events:k});const z=m=Symbol();so().then(()=>{m===z&&(u=!0)}),c=!0,kn(p,T,n.state.value[e])}const g=r?function(){const{state:T}=o,z=T?T():{};this.$patch(Y=>{Oo(Y,z)})}:Pc;function h(){s.stop(),p=[],f=[],n._s.delete(e)}const b=(L,T="")=>{if(Nc in L)return L[ks]=T,L;const z=function(){sr(n);const Y=Array.from(arguments),re=[],M=[];function F(I){re.push(I)}function P(I){M.push(I)}kn(f,{args:Y,name:z[ks],store:x,after:F,onError:P});let $;try{$=L.apply(this&&this.$id===e?this:x,Y)}catch(I){throw kn(M,I),I}return $ instanceof Promise?$.then(I=>(kn(re,I),I)).catch(I=>(kn(M,I),Promise.reject(I))):(kn(re,$),$)};return z[Nc]=!0,z[ks]=T,z},_={_p:n,$id:e,$onAction:Mc.bind(null,f),$patch:d,$reset:g,$subscribe(L,T={}){const z=Mc(p,L,T.detached,()=>Y()),Y=s.run(()=>it(()=>n.state.value[e],re=>{(T.flush==="sync"?c:u)&&L({storeId:e,type:ra.direct,events:k},re)},Oo({},l,T)));return z},$dispose:h},x=dn(_);n._s.set(e,x);const S=(n._a&&n._a.runWithContext||hh)(()=>n._e.run(()=>(s=Dr()).run(()=>t({action:b}))));for(const L in S){const T=S[L];if(at(T)&&!yh(T)||_o(T))r||(w&&bh(T)&&(at(T)?T.value=w[L]:ws(T,w[L])),n.state.value[e][L]=T);else if(typeof T=="function"){const z=b(T,L);S[L]=z,i.actions[L]=T}}return Oo(x,S),Oo(Be(x),S),Object.defineProperty(x,"$state",{get:()=>n.state.value[e],set:L=>{d(T=>{Oo(T,L)})}}),n._p.forEach(L=>{Oo(x,s.run(()=>L({store:x,app:n._a,pinia:n,options:i})))}),w&&r&&o.hydrate&&o.hydrate(x.$state,w),u=!0,c=!0,x}/*! #__NO_SIDE_EFFECTS__ */function xs(e,t,o){let n,a;const r=typeof t=="function";typeof e=="string"?(n=e,a=r?o:t):(a=e,n=e.id);function s(i,l){const u=wg();return i=i||(u?Fe(Tc,null):null),i&&sr(i),i=Lc,i._s.has(n)||(r?Rc(n,t,a,i):_h(n,a,i)),i._s.get(n)}return s.$id=n,s}const As="__doxaMapToken",Ss="doxa:map-token",Ic="__doxaMapTokenBridge",wn=()=>{if(typeof window>"u")return"";const e=window[As];return typeof e=="string"?e:""};function Oc(e){if(typeof window>"u")return"";const t=typeof e=="string"?e.trim():"";if(!t||t===wn())return wn();window[As]=t;try{window.dispatchEvent(new CustomEvent(Ss,{detail:t}))}catch{}return t}function vh(){if(typeof window>"u"||window[Ic])return;const e=typeof window.MAP_TOKEN=="string"?window.MAP_TOKEN:"";e&&!wn()&&(window[As]=e);try{Object.defineProperty(window,"MAP_TOKEN",{configurable:!0,get(){return wn()},set(t){Oc(t)}}),window[Ic]=!0}catch{}}function kh(){vh();const e=de(wn());if(typeof window<"u"){const t=()=>{e.value=wn()};window.addEventListener(Ss,t);try{lo(()=>window.removeEventListener(Ss,t))}catch{}}return e}function Fc(e){return Ng({loader:e,onError(t,o,n,a){a<=3?setTimeout(o,a*500):n()}})}const wh={backToLegend:"العودة إلى المفتاح",closeDetailView:"إغلاق عرض التفاصيل"},xh={prayForThem:"صلِّ من أجلهم",adoptThem:"تبنَّهم",moreInfo:"مزيد من المعلومات",zoomIn:"تكبير",zoomOut:"تصغير",switchToLightMode:"التبديل إلى الوضع الفاتح",switchToDarkMode:"التبديل إلى الوضع الداكن",resetView:"إعادة تعيين العرض",toggleFullscreen:"تبديل ملء الشاشة",aboutThisMap:"حول هذه الخريطة",closeMenu:"إغلاق القائمة",reloadMap:"إعادة تحميل الخريطة",showClusters:"إظهار المجموعات",clusterSettings:"إعدادات المجموعات",startAutoFly:"بدء الطيران التلقائي",stopFlight:"إيقاف الطيران",speedLabel:"السرعة:",speedOption:{slow:"بطيء",normal:"عادي",fast:"سريع"},shareEmbed:"مشاركة وتضمين"},Ah={labels:{country:"الدولة:",population:"السكان:",language:"اللغة:",religion:"الديانة:",languageFamily:"العائلة اللغوية:",peopleCommitted:"ملتزمون بالصلاة:"},messages:{noDescription:"لا يوجد وصف متاح."}},Sh={title:{prayer:"تقدم الصلاة",engagement:"تقدم الانخراط",adoption:"تقدم التبني",languageFamilies:"العائلات اللغوية",doxaRegions:"مناطق Doxa",affinityBlocs:"كتل القرابة",gospelResources:"موارد الإنجيل"},header:{collapsed:"وسيلة الإيضاح",peopleGroupFallback:"مجموعة الشعب"},prayer:{needsPrayer:"يحتاج إلى صلاة",hasPrayer:"لديه صلاة",fullPrayerCoverage:"تغطية صلاة كاملة"},progress:{title:"التقدم",covered:"{covered} من {total} مجموعة شعبية مغطاة بالصلاة · {pct}%",short:"{covered} من {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"يحتاج إلى انخراط",hasEngagement:"لديه انخراط"},adoption:{needsAdoption:"يحتاج إلى تبني",hasAdoption:"لديه تبني"},columns:{upgs:"UUPGs",population:"السكان",name:"الاسم"},footer:{total:"الإجمالي"},sortByUpgs:"ترتيب حسب UUPG",sortByPop:"ترتيب حسب السكان",colLabel:{religion:"ديانات UUPG",prayer:"حالة الصلاة",engagement:"حالة المشاركة",adoption:"حالة التبني",status:"الحالة"},titleBar:{legend:"مفتاح الخريطة",peopleGroups:"الشعوب",wagfRegions:"مناطق WAGF",languages:"اللغات"}},$h={menuComingSoon:"القائمة قادمة قريباً"},Eh={clusterByRegion:"حسب منطقة Doxa",clusterByLanguageFamily:"حسب العائلة اللغوية",clusterByGospelResource:"حسب مورد الإنجيل"},Ch={header:"دورة الصلاة الحالية",lap:"الدورة",upgs:"UUPGs",separator:" من "},Lh={"%count% people groups in %countries% countries":"%count% مجموعة بشرية في %countries% دولة","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"تضم %region% %count% مجموعة بشرية في %countries% دولة. يشير لون كل نقطة إلى عدد الأشخاص الذين يصلّون من أجل تلك المجموعة البشرية.","1+ People Praying":"شخص واحد أو أكثر يصلّي","100+ People Praying":"أكثر من 100 شخص يصلّون",Adopted:"تم انتماؤه","Adoption Progress":"تقدُّم الإنتماء","All Regions":"جميع المناطق","Alternate Names":"الأسماء البديلة","Clear All":"مسح الكل",Countries:"الدول","Countries in this region":"الدول في هذه المنطقة",Country:"الدولة",Engaged:"مُنخرَط","Engagement Progress":"تقدُّم الانخراط","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"كل مجموعة بشرية غير مبشرة تتبناها كنيسة ملتزمة بالصلاة والعطاء والإرسال","Exact Search":"بحث دقيق","Find unreached people groups by region and country.":"ابحث عن المجموعات البشرية غير المُبلَّغة حسب المنطقة والدولة.","Full Profile":"الملف الشخصي الكامل",Goal:"الهدف","Hide Filters":"إخفاء المرشحات",Intercessors:"المتشفعين","Load More":"تحميل المزيد","Loading results...":"النتائج قيد التحميل...","Mobilize 100+ people praying daily for each DOXA people group":"حشد أكثر من 100 شخص للصلاة يوميًا من أجل كل مجموعة بشرية من مجموعات دوكسا","No One Praying":"لا أحد يصلّي","No options found":"لم يتم العثور على أي خيارات","No unengaged people groups by 2033":"الهدف هو القضاء على جميع الشعوب الغير مخدومة روحيا بحلول عام 2033","Not Adopted":"لم يتم انتماؤه",Other:"أخرى","Page Not Found":"الصفحة غير موجودة","People Group":"مجموعة بشرية","People Groups":"مجموعات بشرية","People committed to praying":"الأشخاص الذين التزموا بالصلاة",Population:"عدد السكان","Prayer Coverage":"التغطية المستمرة بالصلاة","Prayer coverage progress":"تقدم تغطية الصلاة",Regions:"المناطق",Religion:"الدين","Search names, country/continent, religions...":"إبحث عن الأسماء، الدولة/القارة، الأديان...","See %region% dashboard":"عرض لوحة معلومات %region%","See All":"عرض جميع العناصر",Select:"اختر","Show Filters":"إظهار عوامل التصفية","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"توجد %count% مجموعات بشرية في %country%. تحقق من الخريطة لمعرفة المجموعات البشرية الواقعة على حدود هذه الدولة أيضًا.",Total:"المجموع","Type to search...":"اكتب ما تريد البحث عنه...","Unengaged people groups":"الشعوب الغير متفاعلة","WAGF Block":"كتلة WAGF","WAGF Region":"منطقة WAGF","people groups adopted":"الشعوب المنتمية","people groups engaged":"مجموعات بشرية مُنخرِطة"},Th={placeholder:"شعب، مكان، لغة، ديانة",labels:{people:"الشعب:",place:"المكان:",language:"اللغة:",religion:"الديانة:"},kinds:{people:"الشعب + الدولة",peopleGroup:"الشعب",bloc:"كتلة التقارب",cluster:"مجموعة شعوب",country:"الدولة",region:"المنطقة",family:"عائلة اللغة",languageKind:"اللغة",dialect:"اللهجة",religionKind:"الدين"}},Ph={prayer:"الصلاة",adoption:"التبني",engagement:"المشاركة","affinity-blocks":"الشعوب",regions:"المناطق",countries:"الدول","language-families":"اللغات",religion:"الأديان",family:"عائلة اللغة",language:"اللغة",dialect:"اللهجة/التنوع",bloc:"كتلة التقارب",cluster:"المجموعة",group:"الشعب",pgic:"الشعب في الدولة",region:"منطقة WAGF",block:"كتلة WAGF",country:"الدولة"},Mh={backToLegend:"Zurück zur Legende",closeDetailView:"Detailansicht schließen"},Nh={prayForThem:"Für sie beten",adoptThem:"Sie adoptieren",moreInfo:"Mehr Infos",zoomIn:"Vergrößern",zoomOut:"Verkleinern",switchToLightMode:"Zum hellen Modus wechseln",switchToDarkMode:"Zum dunklen Modus wechseln",resetView:"Ansicht zurücksetzen",toggleFullscreen:"Vollbild umschalten",aboutThisMap:"Über diese Karte",closeMenu:"Menü schließen",reloadMap:"Karte neu laden",showClusters:"Cluster anzeigen",clusterSettings:"Cluster-Einstellungen",startAutoFly:"Auto-Flug starten",stopFlight:"Flug stoppen",speedLabel:"Geschwindigkeit:",speedOption:{slow:"Langsam",normal:"Normal",fast:"Schnell"},shareEmbed:"Teilen und einbetten"},Rh={labels:{country:"Land:",population:"Bevölkerung:",language:"Sprache:",religion:"Religion:",languageFamily:"Sprachfamilie:",peopleCommitted:"Zum Gebet verpflichtet:"},messages:{noDescription:"Keine Beschreibung verfügbar."}},Ih={title:{prayer:"Gebetsfortschritt",engagement:"Engagement-Fortschritt",adoption:"Adoptionsfortschritt",languageFamilies:"Sprachfamilien",doxaRegions:"Doxa-Regionen",affinityBlocs:"Affinitätsblöcke",gospelResources:"Evangeliumsressourcen"},header:{collapsed:"Legende",peopleGroupFallback:"Volksgruppe"},prayer:{needsPrayer:"Braucht Gebet",hasPrayer:"Hat Gebet",fullPrayerCoverage:"Vollständige Gebetsabdeckung"},progress:{title:"Fortschritt",covered:"{covered} von {total} Volksgruppen im Gebet abgedeckt · {pct}%",short:"{covered} von {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Braucht Engagement",hasEngagement:"Hat Engagement"},adoption:{needsAdoption:"Braucht Adoption",hasAdoption:"Hat Adoption"},columns:{upgs:"UUPGs",population:"Bevölkerung"},footer:{total:"Gesamt"}},Oh={menuComingSoon:"Menü folgt in Kürze"},Fh={clusterByRegion:"Nach Doxa-Region",clusterByLanguageFamily:"Nach Sprachfamilie",clusterByGospelResource:"Nach Evangeliumsressource"},Dh={header:"AKTUELLE GEBETSRUNDE",lap:"Runde",upgs:"UUPGs",separator:" von "},Bh={"%count% people groups in %countries% countries":"%count% Volksgruppen in %countries% Ländern","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% hat %count% Volksgruppen in %countries% Ländern. Die Farbe jedes Punktes zeigt, wie viele Menschen für diese Volksgruppe beten.","1+ People Praying":"1+ Menschen beten","100+ People Praying":"100+ Menschen beten",Adopted:"Angenommen","Adoption Progress":"Adoptionsfortschritt","All Regions":"Alle Regionen","Alternate Names":"Alternative Namen","Clear All":"Alle löschen",Countries:"Länder","Countries in this region":"Länder in dieser Region",Country:"Land",Engaged:"Engagiert","Engagement Progress":"Engagement-Fortschritt","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Jede einzelne der völlig unerreichten Volksgruppen soll von einer Ortsgemeinde adoptiert werden, durch Beten, Geben und Senden","Exact Search":"Exakte Suche","Find unreached people groups by region and country.":"Finde unerreichte Volksgruppen nach Region und Land.","Full Profile":"Vollständiges Profil",Goal:"Ziel","Hide Filters":"Filter ausblenden",Intercessors:"Fürbitter","Load More":"Mehr laden","Loading results...":"Ergebnisse werden geladen...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilisiere 100+ Menschen, die täglich für jede DOXA-Volksgruppe beten","No One Praying":"Niemand betet","No options found":"Keine Standorte gefunden","No unengaged people groups by 2033":"Dass es bis 2033 keine völlig unerreichte Volksgruppe mehr gibt","Not Adopted":"noch nicht adoptiert",Other:"Andere","Page Not Found":"Seite nicht gefunden","People Group":"Personengruppe","People Groups":"Volksgruppen","People committed to praying":"Menschen, die sich dem Beten verpflichtet haben",Population:"Bevölkerung","Prayer Coverage":"Gebetsabdeckung","Prayer coverage progress":"Fortschritt der Gebetsabdeckung",Regions:"Regionen",Religion:"Primäre Religion","Search names, country/continent, religions...":"Suche nach Namen, Land/Kontinent, Religionen...","See %region% dashboard":"Dashboard anzeigen: %region%","See All":"Alle anzeigen",Select:"Auswählen","Show Filters":"Filter anzeigen","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"In %country% gibt es %count% Volksgruppen. Sieh auch auf der Karte nach den Volksgruppen an der Grenze dieses Landes.",Total:"Gesamt","Type to search...":"Geben Sie etwas ein, um danach zu suchen","Unengaged people groups":"Völlig unerreichte Volksgruppen","WAGF Block":"WAGF-Block","WAGF Region":"WAGF-Region","people groups adopted":"adoptierte Volksgruppen","people groups engaged":"engagierte Volksgruppen"},Gh={placeholder:"Volk, Ort, Sprache, Religion",labels:{people:"Volk:",place:"Ort:",language:"Sprache:",religion:"Religion:"},sections:{within:"Innerhalb {selection}",allData:"Alle DOXA-Daten"}},jh={prayer:"Gebet",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Volksgruppen",regions:"Regionen",countries:"Länder","language-families":"Sprachen",religion:"Religionen",family:"Sprachfamilie",language:"Sprache",dialect:"Dialekt/Varietät",bloc:"Affinitätsblock",cluster:"Cluster",group:"Volksgruppe",pgic:"Volksgruppe im Land",region:"WAGF-Region",block:"WAGF-Block",country:"Land"},Uh={backToLegend:"Back to Legend",closeDetailView:"Close detail view"},Kh={prayForThem:"Pray for them",adoptThem:"Adopt",moreInfo:"More info",zoomIn:"Zoom in",zoomOut:"Zoom out",switchToLightMode:"Switch to light mode",switchToDarkMode:"Switch to dark mode",resetView:"Reset view",toggleFullscreen:"Toggle fullscreen",aboutThisMap:"About this map",closeMenu:"Close menu",reloadMap:"Reload Map",showClusters:"Show Clusters",clusterSettings:"Cluster Settings",startAutoFly:"Start Auto Fly",stopFlight:"Stop Flight",speedLabel:"Speed:",speedOption:{slow:"Slow",normal:"Normal",fast:"Fast"},shareEmbed:"Share & embed",shareSteps:["Embed this map on your site","Create a list of the websites in your city","Train them to embed it too","Train them to train others to embed it too","Multiply maps everywhere for Jesus!"],share:"Share"},zh={labels:{country:"Country:",population:"Population:",language:"Language:",religion:"Religion:",languageFamily:"Language Family:",peopleCommitted:"Committed to pray:"},messages:{noDescription:"No description available."}},Hh={title:{prayer:"Prayer Progress",engagement:"Engagement Progress",adoption:"Adoption Progress",languageFamilies:"Language Families",doxaRegions:"Doxa Regions",affinityBlocs:"Affinity Blocks",gospelResources:"Gospel Resources"},header:{default:"Legend",collapsed:"Legend",peopleGroupFallback:"People Group"},prayer:{needsPrayer:"Needs Prayer",hasPrayer:"Has Prayer",fullPrayerCoverage:"Full Prayer Coverage"},progress:{title:"Progress",covered:"{covered} of {total} people groups covered in prayer · {pct}%",short:"{covered} of {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Unengaged",hasEngagement:"Engaged"},adoption:{needsAdoption:"Needs Adoption",hasAdoption:"Has Adoption"},columns:{upgs:"UUPGs",population:"Population",name:"Name"},footer:{total:"Total"},sortByUpgs:"Sort by UUPGs",sortByPop:"Sort by Population",colLabel:{religion:"UUPG Religions",prayer:"Prayer Status",engagement:"Engagement Status",adoption:"Adoption Status",status:"Status"},titleBar:{legend:"Legend",peopleGroups:"People Groups",wagfRegions:"WAGF Regions",languages:"Languages"}},Vh={menuComingSoon:"Menu coming soon"},Wh={clusterByRegion:"By Doxa Region",clusterByLanguageFamily:"By Language Family",clusterByGospelResource:"By Gospel Resource"},Yh={country:{wagfRegion:"WAGF Region",wagfBlock:"WAGF Bloc",country:"Country",uupgCount:"UUPG Count"}},qh={header:"CURRENT PRAYER LAP",lap:"Lap",upgs:"UUPGs",separator:" of "},Jh={"%count% people groups in %countries% countries":"%count% people groups in %countries% countries","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.","1+ People Praying":"1+ People Praying","100+ People Praying":"100+ People Praying",Adopted:"Adopted","Adoption Progress":"Adoption Progress","All Regions":"All Regions","Alternate Names":"Alternate Names","Clear All":"Clear All",Countries:"Countries","Countries in this region":"Countries in this region",Country:"Country",Engaged:"Engaged","Engagement Progress":"Engagement Progress","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Every unengaged people group adopted by a church committed to prayer, giving, and sending","Exact Search":"Exact Search","Find unreached people groups by region and country.":"Find unreached people groups by region and country.","Full Profile":"Full Profile",Goal:"Goal","Hide Filters":"Hide Filters",Intercessors:"Intercessors","Load More":"Load More","Loading results...":"Loading results...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilize 100+ people praying daily for each DOXA people group","No One Praying":"No One Praying","No options found":"No options found","No unengaged people groups by 2033":"No unengaged people groups by 2033","Not Adopted":"Not Adopted",Other:"Other","Page Not Found":"Page Not Found","People Group":"People Group","People Groups":"People Groups","People committed to praying":"People committed to praying",Population:"Population","Prayer Coverage":"Prayer Coverage","Prayer coverage progress":"Prayer coverage progress",Regions:"Regions",Religion:"Religion","Search names, country/continent, religions...":"Search names, country/continent, religions...","See %region% dashboard":"See %region% dashboard","See All":"See All",Select:"Select","Show Filters":"Show Filters","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.",Total:"Total","Type to search...":"Type to search...","Unengaged people groups":"Unengaged people groups","WAGF Block":"WAGF Block","WAGF Region":"WAGF Region","people groups adopted":"people groups adopted","people groups engaged":"people groups engaged","View country posters":"View country posters","Hide country posters":"Hide country posters","No poster has been generated for this country yet.":"No poster has been generated for this country yet."},Xh={placeholder:"People, place, language, religion",labels:{people:"People:",place:"Place:",language:"Language:",religion:"Religion:"},kinds:{people:"People Group + Country",peopleGroup:"People Group",bloc:"Affinity Block",cluster:"People Cluster",country:"Country",region:"Region",family:"Language Family",languageKind:"Language",dialect:"Dialect",religionKind:"Religion"},sections:{within:"Within {selection}",allData:"All DOXA Data"}},Zh={prayer:"Prayer",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"People Groups (Affinity)",regions:"Regions",countries:"Countries","language-families":"Languages",religion:"Religions",family:"Lang Family",language:"Language",dialect:"Dialect/Variety",bloc:"Affinity Block",cluster:"Cluster",group:"People Group",pgic:"PG in Country",region:"WAGF Region",block:"WAGF Bloc",country:"Country"},Qh={backToLegend:"Volver a la leyenda",closeDetailView:"Cerrar vista de detalle"},em={prayForThem:"Ora por ellos",adoptThem:"Adóptalos",moreInfo:"Más información",zoomIn:"Acercar",zoomOut:"Alejar",switchToLightMode:"Cambiar a modo claro",switchToDarkMode:"Cambiar a modo oscuro",resetView:"Restablecer vista",toggleFullscreen:"Alternar pantalla completa",aboutThisMap:"Acerca de este mapa",closeMenu:"Cerrar menú",reloadMap:"Recargar mapa",showClusters:"Mostrar clústeres",clusterSettings:"Ajustes de clústeres",startAutoFly:"Iniciar vuelo automático",stopFlight:"Detener vuelo",speedLabel:"Velocidad:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Compartir e incrustar"},tm={labels:{country:"País:",population:"Población:",language:"Idioma:",religion:"Religión:",languageFamily:"Familia lingüística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"No hay descripción disponible."}},om={title:{prayer:"Progreso de oración",engagement:"Progreso de implicación",adoption:"Progreso de adopción",languageFamilies:"Familias lingüísticas",doxaRegions:"Regiones Doxa",affinityBlocs:"Bloques de afinidad",gospelResources:"Recursos del Evangelio"},header:{collapsed:"Leyenda",peopleGroupFallback:"Grupo de personas"},prayer:{needsPrayer:"Necesita oración",hasPrayer:"Tiene oración",fullPrayerCoverage:"Cobertura de oración completa"},progress:{title:"Progreso",covered:"{covered} de {total} grupos de personas cubiertos en oración · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesita implicación",hasEngagement:"Tiene implicación"},adoption:{needsAdoption:"Necesita adopción",hasAdoption:"Tiene adopción"},columns:{upgs:"UUPGs",population:"Población",name:"Nombre"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por población",colLabel:{religion:"Religiones UUPG",prayer:"Estado de oración",engagement:"Estado de compromiso",adoption:"Estado de adopción",status:"Estado"},titleBar:{legend:"Leyenda",peopleGroups:"Pueblos",wagfRegions:"Regiones WAGF",languages:"Idiomas"}},nm={menuComingSoon:"Menú próximamente"},am={clusterByRegion:"Por región Doxa",clusterByLanguageFamily:"Por familia lingüística",clusterByGospelResource:"Por recurso del Evangelio"},rm={header:"VUELTA DE ORACIÓN ACTUAL",lap:"Vuelta",upgs:"UUPGs",separator:" de "},sm={"%count% people groups in %countries% countries":"%count% grupos étnicos en %countries% países","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% tiene %count% grupos étnicos en %countries% países. El color de cada punto indica cuántas personas oran por ese grupo étnico.","1+ People Praying":"1+ personas orando","100+ People Praying":"100+ personas orando",Adopted:"Aprobado","Adoption Progress":"Progreso de la adopción","All Regions":"Todas las regiones","Alternate Names":"Nombres alternativos","Clear All":"Borrar todo",Countries:"Países","Countries in this region":"Países de esta región",Country:"País",Engaged:"Comprometido","Engagement Progress":"Progreso del compromiso","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Cada grupo étnico no evangelizado adoptado por una iglesia comprometida con la oración, la ofrenda y el envío.","Exact Search":"Búsqueda exacta","Find unreached people groups by region and country.":"Encuentra grupos étnicos no alcanzados por región y país.","Full Profile":"Perfil completo",Goal:"Meta","Hide Filters":"Ocultar filtros",Intercessors:"Intercesores","Load More":"Cargar más","Loading results...":"Cargando resultados...","Mobilize 100+ people praying daily for each DOXA people group":"Movilizar a más de 100 personas que oren diariamente por cada grupo étnico DOXA.","No One Praying":"Nadie orando","No options found":"No se han encontrado opciones","No unengaged people groups by 2033":"No habrá grupos étnicos sin evangelizar para 2033","Not Adopted":"No adoptado",Other:"Otros","Page Not Found":"Página no encontrada","People Group":"Grupo Étnico","People Groups":"Grupos Étnicos","People committed to praying":"Personas comprometidas con la oración",Population:"Población","Prayer Coverage":"Cobertura de oración","Prayer coverage progress":"Progreso de la cobertura de oración",Regions:"Regiones",Religion:"Religión","Search names, country/continent, religions...":"Buscar nombres, país/continente, religiones...","See %region% dashboard":"Ver el panel de %region%","See All":"Ver todo",Select:"Seleccionar","Show Filters":"Mostrar filtros","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Hay %count% grupos étnicos en %country%. Consulta también el mapa para ver los grupos étnicos en la frontera de este país.",Total:"Total","Type to search...":"Escribe para buscar...","Unengaged people groups":"Grupos étnicos no comprometidos","WAGF Block":"Bloque WAGF","WAGF Region":"Región de la WAGF","people groups adopted":"grupos de personas adoptados","people groups engaged":"grupos étnicos comprometidos"},im={placeholder:"Pueblo, lugar, idioma, religión",labels:{people:"Pueblo:",place:"Lugar:",language:"Idioma:",religion:"Religión:"},kinds:{people:"Pueblo + país",peopleGroup:"Pueblo",bloc:"Bloque de afinidad",cluster:"Clúster de pueblos",country:"País",region:"Región",family:"Familia lingüística",languageKind:"Idioma",dialect:"Dialecto",religionKind:"Religión"}},lm={prayer:"Oración",adoption:"Adopción",engagement:"Compromiso","affinity-blocks":"Pueblos",regions:"Regiones",countries:"Países","language-families":"Idiomas",religion:"Religiones",family:"Familia lingüística",language:"Idioma",dialect:"Dialecto/Variedad",bloc:"Bloque de afinidad",cluster:"Clúster",group:"Pueblo",pgic:"Pueblo en país",region:"Región WAGF",block:"Bloque WAGF",country:"País"},cm={backToLegend:"Retour à la légende",closeDetailView:"Fermer la vue détaillée"},um={prayForThem:"Priez pour eux",adoptThem:"Adoptez-les",moreInfo:"Plus d'infos",zoomIn:"Zoom avant",zoomOut:"Zoom arrière",switchToLightMode:"Passer au mode clair",switchToDarkMode:"Passer au mode sombre",resetView:"Réinitialiser la vue",toggleFullscreen:"Basculer en plein écran",aboutThisMap:"À propos de cette carte",closeMenu:"Fermer le menu",reloadMap:"Recharger la carte",showClusters:"Afficher les clusters",clusterSettings:"Paramètres des clusters",startAutoFly:"Démarrer le vol auto",stopFlight:"Arrêter le vol",speedLabel:"Vitesse :",speedOption:{slow:"Lente",normal:"Normale",fast:"Rapide"},shareEmbed:"Partager et intégrer"},dm={labels:{country:"Pays :",population:"Population :",language:"Langue :",religion:"Religion :",languageFamily:"Famille de langues :",peopleCommitted:"Engagés à prier :"},messages:{noDescription:"Aucune description disponible."}},pm={title:{prayer:"Progression de la prière",engagement:"Progression de l'engagement",adoption:"Progression de l'adoption",languageFamilies:"Familles de langues",doxaRegions:"Régions Doxa",affinityBlocs:"Blocs d'affinité",gospelResources:"Ressources de l'Évangile"},header:{collapsed:"Légende",peopleGroupFallback:"Groupe de personnes"},prayer:{needsPrayer:"Besoin de prière",hasPrayer:"Prière en cours",fullPrayerCoverage:"Couverture de prière complète"},progress:{title:"Progression",covered:"{covered} sur {total} groupes de personnes couverts par la prière · {pct}%",short:"{covered} sur {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Besoin d'engagement",hasEngagement:"Engagement en cours"},adoption:{needsAdoption:"Besoin d'adoption",hasAdoption:"Adoption en cours"},columns:{upgs:"UUPGs",population:"Population",name:"Nom"},footer:{total:"Total"},sortByUpgs:"Trier par UUPG",sortByPop:"Trier par population",colLabel:{religion:"Religions UUPG",prayer:"Statut de prière",engagement:"Statut d'engagement",adoption:"Statut d'adoption",status:"Statut"},titleBar:{legend:"Légende",peopleGroups:"Peuples",wagfRegions:"Régions WAGF",languages:"Langues"}},gm={menuComingSoon:"Menu bientôt disponible"},fm={clusterByRegion:"Par région Doxa",clusterByLanguageFamily:"Par famille de langues",clusterByGospelResource:"Par ressource de l'Évangile"},hm={country:{wagfRegion:"Région WAGF",wagfBlock:"Bloc WAGF",country:"Pays",uupgCount:"Nombre d'UUPG"}},mm={header:"TOUR DE PRIÈRE ACTUEL",lap:"Tour",upgs:"UUPGs",separator:" sur "},bm={"%count% people groups in %countries% countries":"%count% peuples dans %countries% pays","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% compte %count% peuples répartis dans %countries% pays. La couleur de chaque point indique combien de personnes prient pour ce peuple.","1+ People Praying":"1+ personnes en prière","100+ People Praying":"100+ personnes en prière",Adopted:"Adopté","Adoption Progress":"Progrès de l'adoption","All Regions":"Toutes les régions","Alternate Names":"Autres noms","Clear All":"Tout effacer",Countries:"Pays","Countries in this region":"Pays de cette région",Country:"Pays",Engaged:"Engagé","Engagement Progress":"Progrès de l'engagement","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Chaque peuple non engagé adopté par une église locale engagée dans la prière, le don et l'envoi","Exact Search":"Recherche exacte","Find unreached people groups by region and country.":"Trouvez des peuples non atteints par région et par pays.","Full Profile":"Profil complet",Goal:"Objectif","Hide Filters":"Masquer les filtres",Intercessors:"Intercesseurs","Load More":"Afficher plus","Loading results...":"Chargement des résultats...","Mobilize 100+ people praying daily for each DOXA people group":"Mobiliser plus de 100 personnes priant chaque jour pour chaque peuple DOXA","No One Praying":"Personne ne prie","No options found":"Aucun lieu trouvé","No unengaged people groups by 2033":"Plus aucun peuple non engagé d'ici 2033","Not Adopted":"Non adopté",Other:"Autre","Page Not Found":"Page introuvable","People Group":"Peuple","People Groups":"Peuples","People committed to praying":"Personnes engagées dans la prière",Population:"Population","Prayer Coverage":"Couverture de prière","Prayer coverage progress":"Progression de la couverture de prière",Regions:"Régions",Religion:"Religion","Search names, country/continent, religions...":"Rechercher des noms, pays/continent, religions...","See %region% dashboard":"Voir le tableau de bord : %region%","See All":"Tout afficher",Select:"Sélectionner","Show Filters":"Afficher les filtres","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Il y a %count% peuples en %country%. Consultez la carte pour découvrir également les peuples situés à la frontière de ce pays.",Total:"Total","Type to search...":"Entrer votre recherche","Unengaged people groups":"Peuples non engagés","WAGF Block":"Bloc WAGF","WAGF Region":"Région WAGF","people groups adopted":"peuples adoptés","people groups engaged":"peuples engagés"},ym={placeholder:"Peuple, lieu, langue, religion",labels:{people:"Peuple :",place:"Lieu :",language:"Langue :",religion:"Religion :"},kinds:{people:"Peuple + pays",peopleGroup:"Peuple",bloc:"Bloc d'affinité",cluster:"Grappe de peuples",country:"Pays",region:"Région",family:"Famille linguistique",languageKind:"Langue",dialect:"Dialecte",religionKind:"Religion"}},_m={prayer:"Prière",adoption:"Adoption",engagement:"Engagement","affinity-blocks":"Peuples",regions:"Régions",countries:"Pays","language-families":"Langues",religion:"Religions",family:"Famille linguistique",language:"Langue",dialect:"Dialecte/Variété",bloc:"Bloc d'affinité",cluster:"Grappe",group:"Peuple",pgic:"Peuple dans le pays",region:"Région WAGF",block:"Bloc WAGF",country:"Pays"},vm={backToLegend:"लेजेंड पर वापस जाएं",closeDetailView:"विवरण दृश्य बंद करें"},km={prayForThem:"उनके लिए प्रार्थना करें",adoptThem:"उन्हें गोद लें",moreInfo:"अधिक जानकारी",zoomIn:"ज़ूम इन",zoomOut:"ज़ूम आउट",switchToLightMode:"लाइट मोड पर जाएं",switchToDarkMode:"डार्क मोड पर जाएं",resetView:"दृश्य रीसेट करें",toggleFullscreen:"फ़ुलस्क्रीन टॉगल करें",aboutThisMap:"इस मानचित्र के बारे में",closeMenu:"मेनू बंद करें",reloadMap:"मानचित्र पुनः लोड करें",showClusters:"क्लस्टर दिखाएं",clusterSettings:"क्लस्टर सेटिंग्स",startAutoFly:"ऑटो फ्लाई शुरू करें",stopFlight:"उड़ान रोकें",speedLabel:"गति:",speedOption:{slow:"धीमी",normal:"सामान्य",fast:"तेज़"},shareEmbed:"साझा करें और एम्बेड करें"},wm={labels:{country:"देश:",population:"जनसंख्या:",language:"भाषा:",religion:"धर्म:",languageFamily:"भाषा परिवार:",peopleCommitted:"प्रार्थना के लिए प्रतिबद्ध:"},messages:{noDescription:"कोई विवरण उपलब्ध नहीं है।"}},xm={title:{prayer:"प्रार्थना प्रगति",engagement:"सहभागिता प्रगति",adoption:"गोद लेने की प्रगति",languageFamilies:"भाषा परिवार",doxaRegions:"Doxa क्षेत्र",affinityBlocs:"समानता समूह",gospelResources:"सुसमाचार संसाधन"},header:{collapsed:"किंवदंती",peopleGroupFallback:"जनजाति समूह"},prayer:{needsPrayer:"प्रार्थना चाहिए",hasPrayer:"प्रार्थना है",fullPrayerCoverage:"पूर्ण प्रार्थना कवरेज"},progress:{title:"प्रगति",covered:"{total} में से {covered} जनजाति समूह प्रार्थना में कवर · {pct}%",short:"{total} में से {covered} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"सहभागिता चाहिए",hasEngagement:"सहभागिता है"},adoption:{needsAdoption:"गोद लेना चाहिए",hasAdoption:"गोद लिया गया"},columns:{upgs:"UUPGs",population:"जनसंख्या"},footer:{total:"कुल"}},Am={menuComingSoon:"मेनू शीघ्र आ रहा है"},Sm={clusterByRegion:"Doxa क्षेत्र के अनुसार",clusterByLanguageFamily:"भाषा परिवार के अनुसार",clusterByGospelResource:"सुसमाचार संसाधन के अनुसार"},$m={header:"वर्तमान प्रार्थना चक्र",lap:"चक्र",upgs:"UUPGs",separator:" में से "},Em={"%count% people groups in %countries% countries":"%countries% देशों में %count% लोगों के समूह","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% में %countries% देशों में %count% लोगों के समूह हैं। प्रत्येक बिंदु का रंग दर्शाता है कि उस लोगों के समूह के लिए कितने लोग प्रार्थना कर रहे हैं।","1+ People Praying":"1+ लोग प्रार्थना कर रहे हैं","100+ People Praying":"100+ लोग प्रार्थना कर रहे हैं",Adopted:"दत्तक लिया गया","Adoption Progress":"दत्तक ग्रहण की प्रगति","All Regions":"सभी क्षेत्र","Alternate Names":"वैकल्पिक नाम","Clear All":"सभी साफ़ करें",Countries:"देश","Countries in this region":"इस क्षेत्र के देश",Country:"देश",Engaged:"प्रवेशित","Engagement Progress":"प्रवेश की प्रगति","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"प्रत्येक असंलग्न जनसमूह जिसे प्रार्थना, दान और भेजने के लिए प्रतिबद्ध एक चर्च ने अपनाया है।","Exact Search":"सटीक खोज","Find unreached people groups by region and country.":"क्षेत्र और देश के अनुसार अगम्य लोगों के समूह खोजें।","Full Profile":"पूर्ण प्रोफ़ाइल",Goal:"लक्ष्य","Hide Filters":"फ़िल्टर छिपाएँ",Intercessors:"मध्यस्थ","Load More":"और लोड करें","Loading results...":"परिणाम लोड हो रहे हैं..।","Mobilize 100+ people praying daily for each DOXA people group":"प्रत्येक DOXA जनसमूह के लिए प्रतिदिन प्रार्थना करने हेतु 100+ लोगों को सक्रिय करें।","No One Praying":"कोई प्रार्थना नहीं कर रहा","No options found":"कोई विकल्प नहीं मिला","No unengaged people groups by 2033":"2033 तक कोई भी संलग्न न किया गया जनसमूह नहीं रहेगा।","Not Adopted":"दत्तक नहीं लिया गया",Other:"अन्य","Page Not Found":"पृष्ठ नहीं मिला","People Group":"लोगों का समूह","People Groups":"लोगों के समूह","People committed to praying":"प्रार्थना के लिए प्रतिबद्ध लोग",Population:"जनसँख्या","Prayer Coverage":"प्रार्थना कवरेज","Prayer coverage progress":"प्रार्थना कवरेज की प्रगति",Regions:"क्षेत्र",Religion:"धर्म","Search names, country/continent, religions...":"नाम, देश/महाद्वीप, धर्म खोजें..।","See %region% dashboard":"%region% डैशबोर्ड देखें","See All":"सभी देखें",Select:"चयन/छंटनी","Show Filters":"फ़िल्टर दिखाएँ","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"%country% में %count% लोगों के समूह हैं। इस देश की सीमा पर स्थित लोगों के समूहों के लिए मानचित्र भी देखें।",Total:"संपूर्ण","Type to search...":"खोजने के लिए टाइप करें..।","Unengaged people groups":"अनलग्न लोगों के समूह","WAGF Block":"WAGF ब्लॉक","WAGF Region":"डब्ल्यूएजीएफ क्षेत्र","people groups adopted":"लोगों के समूहों ने अपनाया","people groups engaged":"प्रवेशित लोगों के समूह"},Cm={placeholder:"लोग, स्थान, भाषा, धर्म",labels:{people:"लोग:",place:"स्थान:",language:"भाषा:",religion:"धर्म:"}},Lm={backToLegend:"Torna alla legenda",closeDetailView:"Chiudi vista dettaglio"},Tm={prayForThem:"Prega per loro",adoptThem:"Adottali",moreInfo:"Più informazioni",zoomIn:"Ingrandisci",zoomOut:"Riduci",switchToLightMode:"Passa alla modalità chiara",switchToDarkMode:"Passa alla modalità scura",resetView:"Reimposta vista",toggleFullscreen:"Attiva/disattiva schermo intero",aboutThisMap:"Informazioni su questa mappa",closeMenu:"Chiudi menu",reloadMap:"Ricarica mappa",showClusters:"Mostra cluster",clusterSettings:"Impostazioni cluster",startAutoFly:"Avvia volo automatico",stopFlight:"Ferma volo",speedLabel:"Velocità:",speedOption:{slow:"Lenta",normal:"Normale",fast:"Veloce"},shareEmbed:"Condividi e incorpora"},Pm={labels:{country:"Paese:",population:"Popolazione:",language:"Lingua:",religion:"Religione:",languageFamily:"Famiglia linguistica:",peopleCommitted:"Impegnati a pregare:"},messages:{noDescription:"Nessuna descrizione disponibile."}},Mm={title:{prayer:"Avanzamento della preghiera",engagement:"Avanzamento dell'impegno",adoption:"Avanzamento dell'adozione",languageFamilies:"Famiglie linguistiche",doxaRegions:"Regioni Doxa",affinityBlocs:"Blocchi di affinità",gospelResources:"Risorse del Vangelo"},header:{collapsed:"Legenda",peopleGroupFallback:"Gruppo di persone"},prayer:{needsPrayer:"Necessita preghiera",hasPrayer:"Ha preghiera",fullPrayerCoverage:"Copertura di preghiera completa"},progress:{title:"Avanzamento",covered:"{covered} di {total} gruppi di persone coperti dalla preghiera · {pct}%",short:"{covered} di {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necessita impegno",hasEngagement:"Ha impegno"},adoption:{needsAdoption:"Necessita adozione",hasAdoption:"Ha adozione"},columns:{upgs:"UUPGs",population:"Popolazione"},footer:{total:"Totale"}},Nm={menuComingSoon:"Menu in arrivo"},Rm={clusterByRegion:"Per regione Doxa",clusterByLanguageFamily:"Per famiglia linguistica",clusterByGospelResource:"Per risorsa del Vangelo"},Im={header:"GIRO DI PREGHIERA ATTUALE",lap:"Giro",upgs:"UUPGs",separator:" di "},Om={placeholder:"Popolo, luogo, lingua, religione",labels:{people:"Popolo:",place:"Luogo:",language:"Lingua:",religion:"Religione:"}},Fm={backToLegend:"Voltar à legenda",closeDetailView:"Fechar vista de detalhe"},Dm={prayForThem:"Ore por eles",adoptThem:"Adote-os",moreInfo:"Mais informações",zoomIn:"Ampliar",zoomOut:"Reduzir",switchToLightMode:"Mudar para modo claro",switchToDarkMode:"Mudar para modo escuro",resetView:"Repor vista",toggleFullscreen:"Alternar ecrã inteiro",aboutThisMap:"Sobre este mapa",closeMenu:"Fechar menu",reloadMap:"Recarregar mapa",showClusters:"Mostrar clusters",clusterSettings:"Definições de clusters",startAutoFly:"Iniciar voo automático",stopFlight:"Parar voo",speedLabel:"Velocidade:",speedOption:{slow:"Lenta",normal:"Normal",fast:"Rápida"},shareEmbed:"Partilhar e incorporar"},Bm={labels:{country:"País:",population:"População:",language:"Língua:",religion:"Religião:",languageFamily:"Família linguística:",peopleCommitted:"Comprometidos a orar:"},messages:{noDescription:"Sem descrição disponível."}},Gm={title:{prayer:"Progresso da oração",engagement:"Progresso do envolvimento",adoption:"Progresso da adoção",languageFamilies:"Famílias linguísticas",doxaRegions:"Regiões Doxa",affinityBlocs:"Blocos de afinidade",gospelResources:"Recursos do Evangelho"},header:{collapsed:"Legenda",peopleGroupFallback:"Grupo de pessoas"},prayer:{needsPrayer:"Precisa de oração",hasPrayer:"Tem oração",fullPrayerCoverage:"Cobertura de oração completa"},progress:{title:"Progresso",covered:"{covered} de {total} grupos de pessoas cobertos em oração · {pct}%",short:"{covered} de {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Precisa de envolvimento",hasEngagement:"Tem envolvimento"},adoption:{needsAdoption:"Precisa de adoção",hasAdoption:"Tem adoção"},columns:{upgs:"UUPGs",population:"População",name:"Nome"},footer:{total:"Total"},sortByUpgs:"Ordenar por UUPG",sortByPop:"Ordenar por população",colLabel:{religion:"Religiões UUPG",prayer:"Status de oração",engagement:"Status de engajamento",adoption:"Status de adoção",status:"Status"},titleBar:{legend:"Legenda",peopleGroups:"Povos",wagfRegions:"Regiões WAGF",languages:"Idiomas"}},jm={menuComingSoon:"Menu em breve"},Um={clusterByRegion:"Por região Doxa",clusterByLanguageFamily:"Por família linguística",clusterByGospelResource:"Por recurso do Evangelho"},Km={header:"VOLTA DE ORAÇÃO ATUAL",lap:"Volta",upgs:"UUPGs",separator:" de "},zm={"%count% people groups in %countries% countries":"%count% grupos étnicos em %countries% países","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"%region% tem %count% grupos étnicos em %countries% países. A cor de cada ponto indica quantas pessoas oram por esse grupo étnico.","1+ People Praying":"1+ pessoas orando","100+ People Praying":"100+ pessoas orando",Adopted:"Aprovado","Adoption Progress":"Progresso da adoção","All Regions":"Todas as regiões","Alternate Names":"Nomes alternativos","Clear All":"Limpar tudo",Countries:"Países","Countries in this region":"Países desta região",Country:"País",Engaged:"Engajado","Engagement Progress":"Progresso do engajamento","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Cada grupo étnico não engajado adotado por uma igreja comprometida com a oração, contribuição e o envio","Exact Search":"Pesquisa exata","Find unreached people groups by region and country.":"Encontre grupos étnicos não alcançados por região e país.","Full Profile":"Perfil completo",Goal:"Meta","Hide Filters":"Ocultar filtros",Intercessors:"Intercessores","Load More":"Carregar mais","Loading results...":"A carregar resultados...","Mobilize 100+ people praying daily for each DOXA people group":"Mobilizar mais de 100 pessoas para orar diariamente por cada grupo étnico DOXA","No One Praying":"Ninguém orando","No options found":"Não foram encontradas opções","No unengaged people groups by 2033":"Nenhum grupo étnico não engajado até 2033","Not Adopted":"Não adotado",Other:"Outros","Page Not Found":"Página não encontrada","People Group":"Grupo étnico","People Groups":"Grupos étnicos","People committed to praying":"Pessoas comprometidas com a oração",Population:"Aplicação","Prayer Coverage":"Cobertura de oração","Prayer coverage progress":"Progresso da cobertura de oração",Regions:"Regiões",Religion:"Religião","Search names, country/continent, religions...":"Busque nomes, país/continente, religiões...","See %region% dashboard":"Ver o painel: %region%","See All":"Ver tudo",Select:"Selecionar","Show Filters":"Mostrar filtros","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Existem %count% grupos étnicos em %country%. Verifique no mapa também os grupos étnicos na fronteira deste país.",Total:"Total","Type to search...":"Digite para pesquisar...","Unengaged people groups":"Grupos étnicos não engajados","WAGF Block":"Bloco WAGF","WAGF Region":"Região da WAGF","people groups adopted":"grupos étnicos adotados","people groups engaged":"grupos étnicos engajados"},Hm={placeholder:"Povo, local, língua, religião",labels:{people:"Povo:",place:"Local:",language:"Língua:",religion:"Religião:"},kinds:{people:"Povo + país",peopleGroup:"Povo",bloc:"Bloco de afinidade",cluster:"Agrupamento de povos",country:"País",region:"Região",family:"Família linguística",languageKind:"Idioma",dialect:"Dialeto",religionKind:"Religião"}},Vm={prayer:"Oração",adoption:"Adoção",engagement:"Engajamento","affinity-blocks":"Povos",regions:"Regiões",countries:"Países","language-families":"Idiomas",religion:"Religiões",family:"Família linguística",language:"Idioma",dialect:"Dialeto/Variedade",bloc:"Bloco de afinidade",cluster:"Agrupamento",group:"Povo",pgic:"Povo no país",region:"Região WAGF",block:"Bloco WAGF",country:"País"},Wm={backToLegend:"Înapoi la legendă",closeDetailView:"Închide vizualizarea detaliată"},Ym={prayForThem:"Roagă-te pentru ei",adoptThem:"Adoptă-i",moreInfo:"Mai multe informații",zoomIn:"Mărește",zoomOut:"Micșorează",switchToLightMode:"Comută la modul luminos",switchToDarkMode:"Comută la modul întunecat",resetView:"Resetează vizualizarea",toggleFullscreen:"Comută ecran complet",aboutThisMap:"Despre această hartă",closeMenu:"Închide meniul",reloadMap:"Reîncarcă harta",showClusters:"Arată clusterele",clusterSettings:"Setări clustere",startAutoFly:"Pornește zborul automat",stopFlight:"Oprește zborul",speedLabel:"Viteză:",speedOption:{slow:"Lent",normal:"Normal",fast:"Rapid"},shareEmbed:"Partajează și încorporează"},qm={labels:{country:"Țară:",population:"Populație:",language:"Limbă:",religion:"Religie:",languageFamily:"Familie de limbi:",peopleCommitted:"Angajați să se roage:"},messages:{noDescription:"Nicio descriere disponibilă."}},Jm={title:{prayer:"Progresul rugăciunii",engagement:"Progresul implicării",adoption:"Progresul adopției",languageFamilies:"Familii de limbi",doxaRegions:"Regiuni Doxa",affinityBlocs:"Blocuri de afinitate",gospelResources:"Resurse ale Evangheliei"},header:{collapsed:"Legendă",peopleGroupFallback:"Grup de popoare"},prayer:{needsPrayer:"Necesită rugăciune",hasPrayer:"Are rugăciune",fullPrayerCoverage:"Acoperire completă de rugăciune"},progress:{title:"Progres",covered:"{covered} din {total} grupuri de popoare acoperite în rugăciune · {pct}%",short:"{covered} din {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Necesită implicare",hasEngagement:"Are implicare"},adoption:{needsAdoption:"Necesită adopție",hasAdoption:"Are adopție"},columns:{upgs:"UUPGs",population:"Populație"},footer:{total:"Total"}},Xm={menuComingSoon:"Meniu în curând"},Zm={clusterByRegion:"După regiune Doxa",clusterByLanguageFamily:"După familia de limbi",clusterByGospelResource:"După resursa Evangheliei"},Qm={header:"TURUL DE RUGĂCIUNE CURENT",lap:"Tur",upgs:"UUPGs",separator:" din "},eb={placeholder:"Popor, loc, limbă, religie",labels:{people:"Popor:",place:"Loc:",language:"Limbă:",religion:"Religie:"}},tb={backToLegend:"Назад к легенде",closeDetailView:"Закрыть подробный вид"},ob={prayForThem:"Молитесь о них",adoptThem:"Усыновите их",moreInfo:"Подробнее",zoomIn:"Приблизить",zoomOut:"Отдалить",switchToLightMode:"Переключить на светлый режим",switchToDarkMode:"Переключить на тёмный режим",resetView:"Сбросить вид",toggleFullscreen:"Полноэкранный режим",aboutThisMap:"Об этой карте",closeMenu:"Закрыть меню",reloadMap:"Перезагрузить карту",showClusters:"Показать кластеры",clusterSettings:"Настройки кластеров",startAutoFly:"Начать авто-полёт",stopFlight:"Остановить полёт",speedLabel:"Скорость:",speedOption:{slow:"Медленно",normal:"Нормально",fast:"Быстро"},shareEmbed:"Поделиться и встроить"},nb={labels:{country:"Страна:",population:"Население:",language:"Язык:",religion:"Религия:",languageFamily:"Языковая семья:",peopleCommitted:"Обязались молиться:"},messages:{noDescription:"Описание недоступно."}},ab={title:{prayer:"Прогресс молитвы",engagement:"Прогресс вовлечённости",adoption:"Прогресс усыновления",languageFamilies:"Языковые семьи",doxaRegions:"Регионы Doxa",affinityBlocs:"Блоки родства",gospelResources:"Евангельские ресурсы"},header:{collapsed:"Условные обозначения",peopleGroupFallback:"Народная группа"},prayer:{needsPrayer:"Нуждается в молитве",hasPrayer:"Есть молитва",fullPrayerCoverage:"Полное молитвенное покрытие"},progress:{title:"Прогресс",covered:"{covered} из {total} народных групп охвачены молитвой · {pct}%",short:"{covered} из {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"Нуждается в вовлечённости",hasEngagement:"Есть вовлечённость"},adoption:{needsAdoption:"Нуждается в усыновлении",hasAdoption:"Есть усыновление"},columns:{upgs:"UUPGs",population:"Население",name:"Название"},footer:{total:"Всего"},sortByUpgs:"Сортировать по UUPG",sortByPop:"Сортировать по населению",colLabel:{religion:"Религии UUPG",prayer:"Статус молитвы",engagement:"Статус вовлечённости",adoption:"Статус усыновления",status:"Статус"},titleBar:{legend:"Легенда",peopleGroups:"Народы",wagfRegions:"Регионы WAGF",languages:"Языки"}},rb={menuComingSoon:"Меню скоро появится"},sb={clusterByRegion:"По региону Doxa",clusterByLanguageFamily:"По языковой семье",clusterByGospelResource:"По евангельскому ресурсу"},ib={header:"ТЕКУЩИЙ КРУГ МОЛИТВЫ",lap:"Круг",upgs:"UUPGs",separator:" из "},lb={"%count% people groups in %countries% countries":"%count% групп людей в %countries% странах","%region% has %count% people groups across %countries% countries. Each pin is coloured by how many people are praying for that people group.":"В регионе %region% — %count% групп людей в %countries% странах. Цвет каждой точки показывает, сколько человек молится за эту группу людей.","1+ People Praying":"1+ человек молится","100+ People Praying":"100+ человек молятся",Adopted:"Принято","Adoption Progress":"Прогресс принятия","All Regions":"Все регионы","Alternate Names":"Альтернативные названия","Clear All":"Очистить всё",Countries:"Страны","Countries in this region":"Страны этого региона",Country:"Страна",Engaged:"Вовлечённый","Engagement Progress":"Прогресс вовлечения","Every unengaged people group adopted by a church committed to prayer, giving, and sending":"Каждая незадействованная народность принята церковью, приверженной молитве, пожертвованиям и посылке миссионеров","Exact Search":"Точный поиск","Find unreached people groups by region and country.":"Найдите недостигнутые группы людей по регионам и странам.","Full Profile":"Полный профиль",Goal:"Цель","Hide Filters":"Скрыть фильтры",Intercessors:"Ходатаи","Load More":"Загрузить еще","Loading results...":"Загрузка результатов...","Mobilize 100+ people praying daily for each DOXA people group":"Мобилизуйте 100+ человек для ежедневной молитвы за каждую народность DOXA","No One Praying":"Никто не молится","No options found":"Вариантов не найдено","No unengaged people groups by 2033":"К 2033 году не останется незадействованных народов","Not Adopted":"Не принято",Other:"Другое","Page Not Found":"Страница не найдена","People Group":"Группа людей","People Groups":"Группы людей","People committed to praying":"Люди, посвятившие себя молитве",Population:"Население","Prayer Coverage":"Молитвенное покрытие","Prayer coverage progress":"Прогресс молитвенного покрытия",Regions:"Регионы",Religion:"Религия","Search names, country/continent, religions...":"Поиск по именам, странам/континентам, религиям...","See %region% dashboard":"Открыть панель: %region%","See All":"Смотреть все",Select:"Выбрать","Show Filters":"Показать фильтры","There are %count% people groups in %country%. Check the map for the people groups on the border of this country as well.":"Страна %country% насчитывает %count% групп людей. Проверьте также на карте группы людей, расположенные вдоль границ этой страны.",Total:"Итого","Type to search...":"Введите текст для поиска...","Unengaged people groups":"Невовлечённые группы людей","WAGF Block":"Блок WAGF","WAGF Region":"Регион WAGF","people groups adopted":"принятые группы людей","people groups engaged":"вовлечённые группы людей"},cb={placeholder:"Народ, место, язык, религия",labels:{people:"Народ:",place:"Место:",language:"Язык:",religion:"Религия:"},kinds:{people:"Народ + страна",peopleGroup:"Народ",bloc:"Блок родства",cluster:"Кластер народов",country:"Страна",region:"Регион",family:"Языковая семья",languageKind:"Язык",dialect:"Диалект",religionKind:"Религия"}},ub={prayer:"Молитва",adoption:"Усыновление",engagement:"Вовлечённость","affinity-blocks":"Народы",regions:"Регионы",countries:"Страны","language-families":"Языки",religion:"Религии",family:"Языковая семья",language:"Язык",dialect:"Диалект/вариант",bloc:"Блок родства",cluster:"Кластер",group:"Народ",pgic:"Народ в стране",region:"Регион WAGF",block:"Блок WAGF",country:"Страна"},db={backToLegend:"返回图例",closeDetailView:"关闭详情视图"},pb={prayForThem:"为他们祷告",adoptThem:"认领他们",moreInfo:"更多信息",zoomIn:"放大",zoomOut:"缩小",switchToLightMode:"切换至浅色模式",switchToDarkMode:"切换至深色模式",resetView:"重置视图",toggleFullscreen:"切换全屏",aboutThisMap:"关于此地图",closeMenu:"关闭菜单",reloadMap:"重新加载地图",showClusters:"显示聚类",clusterSettings:"聚类设置",startAutoFly:"开始自动飞行",stopFlight:"停止飞行",speedLabel:"速度:",speedOption:{slow:"慢",normal:"正常",fast:"快"},shareEmbed:"分享与嵌入"},gb={labels:{country:"国家:",population:"人口:",language:"语言:",religion:"宗教:",languageFamily:"语系:",peopleCommitted:"承诺祷告人数:"},messages:{noDescription:"暂无描述。"}},fb={title:{prayer:"祷告进度",engagement:"参与进度",adoption:"认领进度",languageFamilies:"语系",doxaRegions:"Doxa 区域",affinityBlocs:"亲缘板块",gospelResources:"福音资源"},header:{collapsed:"图例",peopleGroupFallback:"民族群体"},prayer:{needsPrayer:"需要祷告",hasPrayer:"已有祷告",fullPrayerCoverage:"全面祷告覆盖"},progress:{title:"进度",covered:"{total} 个民族群体中已有 {covered} 个被祷告覆盖 · {pct}%",short:"{covered} / {total} · {pct}%",segment:"{label} · {count} · {pct}%"},engagement:{needsEngagement:"需要参与",hasEngagement:"已有参与"},adoption:{needsAdoption:"需要认领",hasAdoption:"已有认领"},columns:{upgs:"UUPGs",population:"人口"},footer:{total:"总计"}},hb={menuComingSoon:"菜单即将推出"},mb={clusterByRegion:"按 Doxa 区域",clusterByLanguageFamily:"按语系",clusterByGospelResource:"按福音资源"},bb={header:"当前祷告轮次",lap:"第",upgs:"UUPGs",separator:" / "},yb={placeholder:"民族、地点、语言、宗教",labels:{people:"民族:",place:"地点:",language:"语言:",religion:"宗教:"}};/*! * shared v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function hb(e,t){typeof console<"u"&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const ir=typeof window<"u",Do=(e,t=!1)=>t?Symbol.for(e):Symbol(e),mb=(e,t,o)=>bb({l:e,k:t,s:o}),bb=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),gt=e=>typeof e=="number"&&isFinite(e),yb=e=>Bc(e)==="[object Date]",Bo=e=>Bc(e)==="[object RegExp]",lr=e=>Le(e)&&Object.keys(e).length===0,Lt=Object.assign,_b=Object.create,Qe=(e=null)=>_b(e);let Ic;const Co=()=>Ic||(Ic=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:Qe());function Oc(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function Fc(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function vb(e){return e=e.replace(/(\w+)\s*=\s*"([^"]*)"/g,(n,a,r)=>`${a}="${Fc(r)}"`),e=e.replace(/(\w+)\s*=\s*'([^']*)'/g,(n,a,r)=>`${a}='${Fc(r)}'`),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(e)&&(e=e.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach(n=>{e=e.replace(n,"$1javascript:")}),e}const kb=Object.prototype.hasOwnProperty;function Xt(e,t){return kb.call(e,t)}const it=Array.isArray,nt=e=>typeof e=="function",fe=e=>typeof e=="string",De=e=>typeof e=="boolean",He=e=>e!==null&&typeof e=="object",wb=e=>He(e)&&nt(e.then)&&nt(e.catch),Dc=Object.prototype.toString,Bc=e=>Dc.call(e),Le=e=>{if(!He(e))return!1;const t=Object.getPrototypeOf(e);return t===null||t.constructor===Object},xb=e=>e==null?"":it(e)||Le(e)&&e.toString===Dc?JSON.stringify(e,null,2):String(e);function Ab(e,t=""){return e.reduce((o,n,a)=>a===0?o+n:o+t+n,"")}function cr(e){let t=e;return()=>++t}const ur=e=>!He(e)||it(e);function dr(e,t){if(ur(e)||ur(t))throw new Error("Invalid value");const o=[{src:e,des:t}];for(;o.length;){const{src:n,des:a}=o.pop();Object.keys(n).forEach(r=>{r!=="__proto__"&&(He(n[r])&&!He(a[r])&&(a[r]=Array.isArray(n[r])?[]:Qe()),ur(a[r])||ur(n[r])?a[r]=n[r]:o.push({src:n[r],des:a[r]}))})}}/*! + */function _b(e,t){typeof console<"u"&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const ir=typeof window<"u",Fo=(e,t=!1)=>t?Symbol.for(e):Symbol(e),vb=(e,t,o)=>kb({l:e,k:t,s:o}),kb=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),pt=e=>typeof e=="number"&&isFinite(e),wb=e=>Uc(e)==="[object Date]",Do=e=>Uc(e)==="[object RegExp]",lr=e=>Le(e)&&Object.keys(e).length===0,Ct=Object.assign,xb=Object.create,Xe=(e=null)=>xb(e);let Dc;const Eo=()=>Dc||(Dc=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:Xe());function Bc(e){return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/").replace(/=/g,"=")}function Gc(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function Ab(e){return e=e.replace(/(\w+)\s*=\s*"([^"]*)"/g,(n,a,r)=>`${a}="${Gc(r)}"`),e=e.replace(/(\w+)\s*=\s*'([^']*)'/g,(n,a,r)=>`${a}='${Gc(r)}'`),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(e)&&(e=e.replace(/(\s+)(on)(\w+\s*=)/gi,"$1on$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach(n=>{e=e.replace(n,"$1javascript:")}),e}const Sb=Object.prototype.hasOwnProperty;function Jt(e,t){return Sb.call(e,t)}const rt=Array.isArray,tt=e=>typeof e=="function",fe=e=>typeof e=="string",De=e=>typeof e=="boolean",Ke=e=>e!==null&&typeof e=="object",$b=e=>Ke(e)&&tt(e.then)&&tt(e.catch),jc=Object.prototype.toString,Uc=e=>jc.call(e),Le=e=>{if(!Ke(e))return!1;const t=Object.getPrototypeOf(e);return t===null||t.constructor===Object},Eb=e=>e==null?"":rt(e)||Le(e)&&e.toString===jc?JSON.stringify(e,null,2):String(e);function Cb(e,t=""){return e.reduce((o,n,a)=>a===0?o+n:o+t+n,"")}function cr(e){let t=e;return()=>++t}const ur=e=>!Ke(e)||rt(e);function dr(e,t){if(ur(e)||ur(t))throw new Error("Invalid value");const o=[{src:e,des:t}];for(;o.length;){const{src:n,des:a}=o.pop();Object.keys(n).forEach(r=>{r!=="__proto__"&&(Ke(n[r])&&!Ke(a[r])&&(a[r]=Array.isArray(n[r])?[]:Xe()),ur(a[r])||ur(n[r])?a[r]=n[r]:o.push({src:n[r],des:a[r]}))})}}/*! * message-compiler v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function Sb(e,t,o){return{line:e,column:t,offset:o}}function pr(e,t,o){return{start:e,end:t}}const $b=/\{([0-9a-zA-Z]+)\}/g;function Gc(e,...t){return t.length===1&&Eb(t[0])&&(t=t[0]),(!t||!t.hasOwnProperty)&&(t={}),e.replace($b,(o,n)=>t.hasOwnProperty(n)?t[n]:"")}const jc=Object.assign,Uc=e=>typeof e=="string",Eb=e=>e!==null&&typeof e=="object";function Kc(e,t=""){return e.reduce((o,n,a)=>a===0?o+n:o+t+n,"")}const Ss={USE_MODULO_SYNTAX:1,__EXTEND_POINT__:2},Cb={[Ss.USE_MODULO_SYNTAX]:"Use modulo before '{{0}}'."};function Lb(e,t,...o){const n=Gc(Cb[e],...o||[]),a={message:String(n),code:e};return t&&(a.location=t),a}const Se={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16,__EXTEND_POINT__:17},Tb={[Se.EXPECTED_TOKEN]:"Expected token: '{0}'",[Se.INVALID_TOKEN_IN_PLACEHOLDER]:"Invalid token in placeholder: '{0}'",[Se.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER]:"Unterminated single quote in placeholder",[Se.UNKNOWN_ESCAPE_SEQUENCE]:"Unknown escape sequence: \\{0}",[Se.INVALID_UNICODE_ESCAPE_SEQUENCE]:"Invalid unicode escape sequence: {0}",[Se.UNBALANCED_CLOSING_BRACE]:"Unbalanced closing brace",[Se.UNTERMINATED_CLOSING_BRACE]:"Unterminated closing brace",[Se.EMPTY_PLACEHOLDER]:"Empty placeholder",[Se.NOT_ALLOW_NEST_PLACEHOLDER]:"Not allowed nest placeholder",[Se.INVALID_LINKED_FORMAT]:"Invalid linked format",[Se.MUST_HAVE_MESSAGES_IN_PLURAL]:"Plural must have messages",[Se.UNEXPECTED_EMPTY_LINKED_MODIFIER]:"Unexpected empty linked modifier",[Se.UNEXPECTED_EMPTY_LINKED_KEY]:"Unexpected empty linked key",[Se.UNEXPECTED_LEXICAL_ANALYSIS]:"Unexpected lexical analysis in token: '{0}'",[Se.UNHANDLED_CODEGEN_NODE_TYPE]:"unhandled codegen node type: '{0}'",[Se.UNHANDLED_MINIFIER_NODE_TYPE]:"unhandled mimifier node type: '{0}'"};function An(e,t,o={}){const{domain:n,messages:a,args:r}=o,s=Gc((a||Tb)[e]||"",...r||[]),i=new SyntaxError(String(s));return i.code=e,t&&(i.location=t),i.domain=n,i}function Pb(e){throw e}const Lo=" ",Mb="\r",Ot=` -`,Nb="\u2028",Rb="\u2029";function Ib(e){const t=e;let o=0,n=1,a=1,r=0;const s=S=>t[S]===Mb&&t[S+1]===Ot,i=S=>t[S]===Ot,l=S=>t[S]===Rb,u=S=>t[S]===Nb,c=S=>s(S)||i(S)||l(S)||u(S),p=()=>o,g=()=>n,w=()=>a,b=()=>r,y=S=>s(S)||l(S)||u(S)?Ot:t[S],d=()=>y(o),h=()=>y(o+r);function f(){return r=0,c(o)&&(n++,a=0),s(o)&&o++,o++,a++,t[o]}function m(){return s(o+r)&&r++,r++,t[o+r]}function k(){o=0,n=1,a=1,r=0}function x(S=0){r=S}function A(){const S=o+r;for(;S!==o;)f();r=0}return{index:p,line:g,column:w,peekOffset:b,charAt:y,currentChar:d,currentPeek:h,next:f,peek:m,reset:k,resetPeek:x,skipToPeek:A}}const Go=void 0,Ob=".",zc="'",Fb="tokenizer";function Db(e,t={}){const o=t.location!==!1,n=Ib(e),a=()=>n.index(),r=()=>Sb(n.line(),n.column(),n.index()),s=r(),i=a(),l={currentType:14,offset:i,startLoc:s,endLoc:s,lastType:14,lastOffset:i,lastStartLoc:s,lastEndLoc:s,braceNest:0,inLinked:!1,text:""},u=()=>l,{onError:c}=t;function p(_,v,B,...V){const ue=u();if(v.column+=B,v.offset+=B,c){const se=o?pr(ue.startLoc,v):null,G=An(_,se,{domain:Fb,args:V});c(G)}}function g(_,v,B){_.endLoc=r(),_.currentType=v;const V={type:v};return o&&(V.loc=pr(_.startLoc,_.endLoc)),B!=null&&(V.value=B),V}const w=_=>g(_,14);function b(_,v){return _.currentChar()===v?(_.next(),v):(p(Se.EXPECTED_TOKEN,r(),0,v),"")}function y(_){let v="";for(;_.currentPeek()===Lo||_.currentPeek()===Ot;)v+=_.currentPeek(),_.peek();return v}function d(_){const v=y(_);return _.skipToPeek(),v}function h(_){if(_===Go)return!1;const v=_.charCodeAt(0);return v>=97&&v<=122||v>=65&&v<=90||v===95}function f(_){if(_===Go)return!1;const v=_.charCodeAt(0);return v>=48&&v<=57}function m(_,v){const{currentType:B}=v;if(B!==2)return!1;y(_);const V=h(_.currentPeek());return _.resetPeek(),V}function k(_,v){const{currentType:B}=v;if(B!==2)return!1;y(_);const V=_.currentPeek()==="-"?_.peek():_.currentPeek(),ue=f(V);return _.resetPeek(),ue}function x(_,v){const{currentType:B}=v;if(B!==2)return!1;y(_);const V=_.currentPeek()===zc;return _.resetPeek(),V}function A(_,v){const{currentType:B}=v;if(B!==8)return!1;y(_);const V=_.currentPeek()===".";return _.resetPeek(),V}function S(_,v){const{currentType:B}=v;if(B!==9)return!1;y(_);const V=h(_.currentPeek());return _.resetPeek(),V}function L(_,v){const{currentType:B}=v;if(!(B===8||B===12))return!1;y(_);const V=_.currentPeek()===":";return _.resetPeek(),V}function P(_,v){const{currentType:B}=v;if(B!==10)return!1;const V=()=>{const se=_.currentPeek();return se==="{"?h(_.peek()):se==="@"||se==="%"||se==="|"||se===":"||se==="."||se===Lo||!se?!1:se===Ot?(_.peek(),V()):re(_,!1)},ue=V();return _.resetPeek(),ue}function z(_){y(_);const v=_.currentPeek()==="|";return _.resetPeek(),v}function W(_){const v=y(_),B=_.currentPeek()==="%"&&_.peek()==="{";return _.resetPeek(),{isModulo:B,hasSpace:v.length>0}}function re(_,v=!0){const B=(ue=!1,se="",G=!1)=>{const Y=_.currentPeek();return Y==="{"?se==="%"?!1:ue:Y==="@"||!Y?se==="%"?!0:ue:Y==="%"?(_.peek(),B(ue,"%",!0)):Y==="|"?se==="%"||G?!0:!(se===Lo||se===Ot):Y===Lo?(_.peek(),B(!0,Lo,G)):Y===Ot?(_.peek(),B(!0,Ot,G)):!0},V=B();return v&&_.resetPeek(),V}function M(_,v){const B=_.currentChar();return B===Go?Go:v(B)?(_.next(),B):null}function F(_){const v=_.charCodeAt(0);return v>=97&&v<=122||v>=65&&v<=90||v>=48&&v<=57||v===95||v===36}function T(_){return M(_,F)}function $(_){const v=_.charCodeAt(0);return v>=97&&v<=122||v>=65&&v<=90||v>=48&&v<=57||v===95||v===36||v===45}function I(_){return M(_,$)}function ne(_){const v=_.charCodeAt(0);return v>=48&&v<=57}function ge(_){return M(_,ne)}function C(_){const v=_.charCodeAt(0);return v>=48&&v<=57||v>=65&&v<=70||v>=97&&v<=102}function ae(_){return M(_,C)}function ie(_){let v="",B="";for(;v=ge(_);)B+=v;return B}function le(_){d(_);const v=_.currentChar();return v!=="%"&&p(Se.EXPECTED_TOKEN,r(),0,v),_.next(),"%"}function we(_){let v="";for(;;){const B=_.currentChar();if(B==="{"||B==="}"||B==="@"||B==="|"||!B)break;if(B==="%")if(re(_))v+=B,_.next();else break;else if(B===Lo||B===Ot)if(re(_))v+=B,_.next();else{if(z(_))break;v+=B,_.next()}else v+=B,_.next()}return v}function Me(_){d(_);let v="",B="";for(;v=I(_);)B+=v;return _.currentChar()===Go&&p(Se.UNTERMINATED_CLOSING_BRACE,r(),0),B}function Re(_){d(_);let v="";return _.currentChar()==="-"?(_.next(),v+=`-${ie(_)}`):v+=ie(_),_.currentChar()===Go&&p(Se.UNTERMINATED_CLOSING_BRACE,r(),0),v}function Oe(_){return _!==zc&&_!==Ot}function Ie(_){d(_),b(_,"'");let v="",B="";for(;v=M(_,Oe);)v==="\\"?B+=Je(_):B+=v;const V=_.currentChar();return V===Ot||V===Go?(p(Se.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,r(),0),V===Ot&&(_.next(),b(_,"'")),B):(b(_,"'"),B)}function Je(_){const v=_.currentChar();switch(v){case"\\":case"'":return _.next(),`\\${v}`;case"u":return Xe(_,v,4);case"U":return Xe(_,v,6);default:return p(Se.UNKNOWN_ESCAPE_SEQUENCE,r(),0,v),""}}function Xe(_,v,B){b(_,v);let V="";for(let ue=0;ue{const V=_.currentChar();return V==="{"||V==="%"||V==="@"||V==="|"||V==="("||V===")"||!V||V===Lo?B:(B+=V,_.next(),v(B))};return v("")}function K(_){d(_);const v=b(_,"|");return d(_),v}function X(_,v){let B=null;switch(_.currentChar()){case"{":return v.braceNest>=1&&p(Se.NOT_ALLOW_NEST_PLACEHOLDER,r(),0),_.next(),B=g(v,2,"{"),d(_),v.braceNest++,B;case"}":return v.braceNest>0&&v.currentType===2&&p(Se.EMPTY_PLACEHOLDER,r(),0),_.next(),B=g(v,3,"}"),v.braceNest--,v.braceNest>0&&d(_),v.inLinked&&v.braceNest===0&&(v.inLinked=!1),B;case"@":return v.braceNest>0&&p(Se.UNTERMINATED_CLOSING_BRACE,r(),0),B=J(_,v)||w(v),v.braceNest=0,B;default:{let ue=!0,se=!0,G=!0;if(z(_))return v.braceNest>0&&p(Se.UNTERMINATED_CLOSING_BRACE,r(),0),B=g(v,1,K(_)),v.braceNest=0,v.inLinked=!1,B;if(v.braceNest>0&&(v.currentType===5||v.currentType===6||v.currentType===7))return p(Se.UNTERMINATED_CLOSING_BRACE,r(),0),v.braceNest=0,Z(_,v);if(ue=m(_,v))return B=g(v,5,Me(_)),d(_),B;if(se=k(_,v))return B=g(v,6,Re(_)),d(_),B;if(G=x(_,v))return B=g(v,7,Ie(_)),d(_),B;if(!ue&&!se&&!G)return B=g(v,13,E(_)),p(Se.INVALID_TOKEN_IN_PLACEHOLDER,r(),0,B.value),d(_),B;break}}return B}function J(_,v){const{currentType:B}=v;let V=null;const ue=_.currentChar();switch((B===8||B===9||B===12||B===10)&&(ue===Ot||ue===Lo)&&p(Se.INVALID_LINKED_FORMAT,r(),0),ue){case"@":return _.next(),V=g(v,8,"@"),v.inLinked=!0,V;case".":return d(_),_.next(),g(v,9,".");case":":return d(_),_.next(),g(v,10,":");default:return z(_)?(V=g(v,1,K(_)),v.braceNest=0,v.inLinked=!1,V):A(_,v)||L(_,v)?(d(_),J(_,v)):S(_,v)?(d(_),g(v,12,O(_))):P(_,v)?(d(_),ue==="{"?X(_,v)||V:g(v,11,R(_))):(B===8&&p(Se.INVALID_LINKED_FORMAT,r(),0),v.braceNest=0,v.inLinked=!1,Z(_,v))}}function Z(_,v){let B={type:14};if(v.braceNest>0)return X(_,v)||w(v);if(v.inLinked)return J(_,v)||w(v);switch(_.currentChar()){case"{":return X(_,v)||w(v);case"}":return p(Se.UNBALANCED_CLOSING_BRACE,r(),0),_.next(),g(v,3,"}");case"@":return J(_,v)||w(v);default:{if(z(_))return B=g(v,1,K(_)),v.braceNest=0,v.inLinked=!1,B;const{isModulo:ue,hasSpace:se}=W(_);if(ue)return se?g(v,0,we(_)):g(v,4,le(_));if(re(_))return g(v,0,we(_));break}}return B}function Q(){const{currentType:_,offset:v,startLoc:B,endLoc:V}=l;return l.lastType=_,l.lastOffset=v,l.lastStartLoc=B,l.lastEndLoc=V,l.offset=a(),l.startLoc=r(),n.currentChar()===Go?g(l,14):Z(n,l)}return{nextToken:Q,currentOffset:a,currentPosition:r,context:u}}const Bb="parser",Gb=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function jb(e,t,o){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const n=parseInt(t||o,16);return n<=55295||n>=57344?String.fromCodePoint(n):"�"}}}function Ub(e={}){const t=e.location!==!1,{onError:o,onWarn:n}=e;function a(m,k,x,A,...S){const L=m.currentPosition();if(L.offset+=A,L.column+=A,o){const P=t?pr(x,L):null,z=An(k,P,{domain:Bb,args:S});o(z)}}function r(m,k,x,A,...S){const L=m.currentPosition();if(L.offset+=A,L.column+=A,n){const P=t?pr(x,L):null;n(Lb(k,P,S))}}function s(m,k,x){const A={type:m};return t&&(A.start=k,A.end=k,A.loc={start:x,end:x}),A}function i(m,k,x,A){t&&(m.end=k,m.loc&&(m.loc.end=x))}function l(m,k){const x=m.context(),A=s(3,x.offset,x.startLoc);return A.value=k,i(A,m.currentOffset(),m.currentPosition()),A}function u(m,k){const x=m.context(),{lastOffset:A,lastStartLoc:S}=x,L=s(5,A,S);return L.index=parseInt(k,10),m.nextToken(),i(L,m.currentOffset(),m.currentPosition()),L}function c(m,k,x){const A=m.context(),{lastOffset:S,lastStartLoc:L}=A,P=s(4,S,L);return P.key=k,x===!0&&(P.modulo=!0),m.nextToken(),i(P,m.currentOffset(),m.currentPosition()),P}function p(m,k){const x=m.context(),{lastOffset:A,lastStartLoc:S}=x,L=s(9,A,S);return L.value=k.replace(Gb,jb),m.nextToken(),i(L,m.currentOffset(),m.currentPosition()),L}function g(m){const k=m.nextToken(),x=m.context(),{lastOffset:A,lastStartLoc:S}=x,L=s(8,A,S);return k.type!==12?(a(m,Se.UNEXPECTED_EMPTY_LINKED_MODIFIER,x.lastStartLoc,0),L.value="",i(L,A,S),{nextConsumeToken:k,node:L}):(k.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,x.lastStartLoc,0,Zt(k)),L.value=k.value||"",i(L,m.currentOffset(),m.currentPosition()),{node:L})}function w(m,k){const x=m.context(),A=s(7,x.offset,x.startLoc);return A.value=k,i(A,m.currentOffset(),m.currentPosition()),A}function b(m){const k=m.context(),x=s(6,k.offset,k.startLoc);let A=m.nextToken();if(A.type===9){const S=g(m);x.modifier=S.node,A=S.nextConsumeToken||m.nextToken()}switch(A.type!==10&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Zt(A)),A=m.nextToken(),A.type===2&&(A=m.nextToken()),A.type){case 11:A.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Zt(A)),x.key=w(m,A.value||"");break;case 5:A.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Zt(A)),x.key=c(m,A.value||"");break;case 6:A.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Zt(A)),x.key=u(m,A.value||"");break;case 7:A.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Zt(A)),x.key=p(m,A.value||"");break;default:{a(m,Se.UNEXPECTED_EMPTY_LINKED_KEY,k.lastStartLoc,0);const S=m.context(),L=s(7,S.offset,S.startLoc);return L.value="",i(L,S.offset,S.startLoc),x.key=L,i(x,S.offset,S.startLoc),{nextConsumeToken:A,node:x}}}return i(x,m.currentOffset(),m.currentPosition()),{node:x}}function y(m){const k=m.context(),x=k.currentType===1?m.currentOffset():k.offset,A=k.currentType===1?k.endLoc:k.startLoc,S=s(2,x,A);S.items=[];let L=null,P=null;do{const re=L||m.nextToken();switch(L=null,re.type){case 0:re.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Zt(re)),S.items.push(l(m,re.value||""));break;case 6:re.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Zt(re)),S.items.push(u(m,re.value||""));break;case 4:P=!0;break;case 5:re.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Zt(re)),S.items.push(c(m,re.value||"",!!P)),P&&(r(m,Ss.USE_MODULO_SYNTAX,k.lastStartLoc,0,Zt(re)),P=null);break;case 7:re.value==null&&a(m,Se.UNEXPECTED_LEXICAL_ANALYSIS,k.lastStartLoc,0,Zt(re)),S.items.push(p(m,re.value||""));break;case 8:{const M=b(m);S.items.push(M.node),L=M.nextConsumeToken||null;break}}}while(k.currentType!==14&&k.currentType!==1);const z=k.currentType===1?k.lastOffset:m.currentOffset(),W=k.currentType===1?k.lastEndLoc:m.currentPosition();return i(S,z,W),S}function d(m,k,x,A){const S=m.context();let L=A.items.length===0;const P=s(1,k,x);P.cases=[],P.cases.push(A);do{const z=y(m);L||(L=z.items.length===0),P.cases.push(z)}while(S.currentType!==14);return L&&a(m,Se.MUST_HAVE_MESSAGES_IN_PLURAL,x,0),i(P,m.currentOffset(),m.currentPosition()),P}function h(m){const k=m.context(),{offset:x,startLoc:A}=k,S=y(m);return k.currentType===14?S:d(m,x,A,S)}function f(m){const k=Db(m,jc({},e)),x=k.context(),A=s(0,x.offset,x.startLoc);return t&&A.loc&&(A.loc.source=m),A.body=h(k),e.onCacheKey&&(A.cacheKey=e.onCacheKey(m)),x.currentType!==14&&a(k,Se.UNEXPECTED_LEXICAL_ANALYSIS,x.lastStartLoc,0,m[x.offset]||""),i(A,k.currentOffset(),k.currentPosition()),A}return{parse:f}}function Zt(e){if(e.type===14)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function Kb(e,t={}){const o={ast:e,helpers:new Set};return{context:()=>o,helper:r=>(o.helpers.add(r),r)}}function Hc(e,t){for(let o=0;oVc(o)),e}function Vc(e){if(e.items.length===1){const t=e.items[0];(t.type===3||t.type===9)&&(e.static=t.value,delete t.value)}else{const t=[];for(let o=0;os;function l(y,d){s.code+=y}function u(y,d=!0){const h=d?n:"";l(a?h+" ".repeat(y):h)}function c(y=!0){const d=++s.indentLevel;y&&u(d)}function p(y=!0){const d=--s.indentLevel;y&&u(d)}function g(){u(s.indentLevel)}return{context:i,push:l,indent:c,deindent:p,newline:g,helper:y=>`_${y}`,needIndent:()=>s.needIndent}}function qb(e,t){const{helper:o}=e;e.push(`${o("linked")}(`),$n(e,t.key),t.modifier?(e.push(", "),$n(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function Jb(e,t){const{helper:o,needIndent:n}=e;e.push(`${o("normalize")}([`),e.indent(n());const a=t.items.length;for(let r=0;r1){e.push(`${o("plural")}([`),e.indent(n());const a=t.cases.length;for(let r=0;r{const o=Uc(t.mode)?t.mode:"normal",n=Uc(t.filename)?t.filename:"message.intl";t.sourceMap;const a=t.breakLineCode!=null?t.breakLineCode:o==="arrow"?";":` -`,r=t.needIndent?t.needIndent:o!=="arrow",s=e.helpers||[],i=Yb(e,{filename:n,breakLineCode:a,needIndent:r});i.push(o==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),i.indent(r),s.length>0&&(i.push(`const { ${Kc(s.map(c=>`${c}: _${c}`),", ")} } = ctx`),i.newline()),i.push("return "),$n(i,e),i.deindent(r),i.push("}"),delete e.helpers;const{code:l,map:u}=i.context();return{ast:e,code:l,map:u?u.toJSON():void 0}};function ey(e,t={}){const o=jc({},t),n=!!o.jit,a=!!o.minify,r=o.optimize==null?!0:o.optimize,i=Ub(o).parse(e);return n?(r&&Hb(i),a&&Sn(i),{ast:i,code:""}):(zb(i,o),Qb(i,o))}/*! + */function Lb(e,t,o){return{line:e,column:t,offset:o}}function pr(e,t,o){return{start:e,end:t}}const Tb=/\{([0-9a-zA-Z]+)\}/g;function Kc(e,...t){return t.length===1&&Pb(t[0])&&(t=t[0]),(!t||!t.hasOwnProperty)&&(t={}),e.replace(Tb,(o,n)=>t.hasOwnProperty(n)?t[n]:"")}const zc=Object.assign,Hc=e=>typeof e=="string",Pb=e=>e!==null&&typeof e=="object";function Vc(e,t=""){return e.reduce((o,n,a)=>a===0?o+n:o+t+n,"")}const $s={USE_MODULO_SYNTAX:1,__EXTEND_POINT__:2},Mb={[$s.USE_MODULO_SYNTAX]:"Use modulo before '{{0}}'."};function Nb(e,t,...o){const n=Kc(Mb[e],...o||[]),a={message:String(n),code:e};return t&&(a.location=t),a}const Se={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14,UNHANDLED_CODEGEN_NODE_TYPE:15,UNHANDLED_MINIFIER_NODE_TYPE:16,__EXTEND_POINT__:17},Rb={[Se.EXPECTED_TOKEN]:"Expected token: '{0}'",[Se.INVALID_TOKEN_IN_PLACEHOLDER]:"Invalid token in placeholder: '{0}'",[Se.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER]:"Unterminated single quote in placeholder",[Se.UNKNOWN_ESCAPE_SEQUENCE]:"Unknown escape sequence: \\{0}",[Se.INVALID_UNICODE_ESCAPE_SEQUENCE]:"Invalid unicode escape sequence: {0}",[Se.UNBALANCED_CLOSING_BRACE]:"Unbalanced closing brace",[Se.UNTERMINATED_CLOSING_BRACE]:"Unterminated closing brace",[Se.EMPTY_PLACEHOLDER]:"Empty placeholder",[Se.NOT_ALLOW_NEST_PLACEHOLDER]:"Not allowed nest placeholder",[Se.INVALID_LINKED_FORMAT]:"Invalid linked format",[Se.MUST_HAVE_MESSAGES_IN_PLURAL]:"Plural must have messages",[Se.UNEXPECTED_EMPTY_LINKED_MODIFIER]:"Unexpected empty linked modifier",[Se.UNEXPECTED_EMPTY_LINKED_KEY]:"Unexpected empty linked key",[Se.UNEXPECTED_LEXICAL_ANALYSIS]:"Unexpected lexical analysis in token: '{0}'",[Se.UNHANDLED_CODEGEN_NODE_TYPE]:"unhandled codegen node type: '{0}'",[Se.UNHANDLED_MINIFIER_NODE_TYPE]:"unhandled mimifier node type: '{0}'"};function xn(e,t,o={}){const{domain:n,messages:a,args:r}=o,s=Kc((a||Rb)[e]||"",...r||[]),i=new SyntaxError(String(s));return i.code=e,t&&(i.location=t),i.domain=n,i}function Ib(e){throw e}const Co=" ",Ob="\r",It=` +`,Fb="\u2028",Db="\u2029";function Bb(e){const t=e;let o=0,n=1,a=1,r=0;const s=S=>t[S]===Ob&&t[S+1]===It,i=S=>t[S]===It,l=S=>t[S]===Db,u=S=>t[S]===Fb,c=S=>s(S)||i(S)||l(S)||u(S),p=()=>o,f=()=>n,k=()=>a,w=()=>r,m=S=>s(S)||l(S)||u(S)?It:t[S],d=()=>m(o),g=()=>m(o+r);function h(){return r=0,c(o)&&(n++,a=0),s(o)&&o++,o++,a++,t[o]}function b(){return s(o+r)&&r++,r++,t[o+r]}function _(){o=0,n=1,a=1,r=0}function x(S=0){r=S}function A(){const S=o+r;for(;S!==o;)h();r=0}return{index:p,line:f,column:k,peekOffset:w,charAt:m,currentChar:d,currentPeek:g,next:h,peek:b,reset:_,resetPeek:x,skipToPeek:A}}const Bo=void 0,Gb=".",Wc="'",jb="tokenizer";function Ub(e,t={}){const o=t.location!==!1,n=Bb(e),a=()=>n.index(),r=()=>Lb(n.line(),n.column(),n.index()),s=r(),i=a(),l={currentType:14,offset:i,startLoc:s,endLoc:s,lastType:14,lastOffset:i,lastStartLoc:s,lastEndLoc:s,braceNest:0,inLinked:!1,text:""},u=()=>l,{onError:c}=t;function p(y,v,B,...W){const ue=u();if(v.column+=B,v.offset+=B,c){const se=o?pr(ue.startLoc,v):null,G=xn(y,se,{domain:jb,args:W});c(G)}}function f(y,v,B){y.endLoc=r(),y.currentType=v;const W={type:v};return o&&(W.loc=pr(y.startLoc,y.endLoc)),B!=null&&(W.value=B),W}const k=y=>f(y,14);function w(y,v){return y.currentChar()===v?(y.next(),v):(p(Se.EXPECTED_TOKEN,r(),0,v),"")}function m(y){let v="";for(;y.currentPeek()===Co||y.currentPeek()===It;)v+=y.currentPeek(),y.peek();return v}function d(y){const v=m(y);return y.skipToPeek(),v}function g(y){if(y===Bo)return!1;const v=y.charCodeAt(0);return v>=97&&v<=122||v>=65&&v<=90||v===95}function h(y){if(y===Bo)return!1;const v=y.charCodeAt(0);return v>=48&&v<=57}function b(y,v){const{currentType:B}=v;if(B!==2)return!1;m(y);const W=g(y.currentPeek());return y.resetPeek(),W}function _(y,v){const{currentType:B}=v;if(B!==2)return!1;m(y);const W=y.currentPeek()==="-"?y.peek():y.currentPeek(),ue=h(W);return y.resetPeek(),ue}function x(y,v){const{currentType:B}=v;if(B!==2)return!1;m(y);const W=y.currentPeek()===Wc;return y.resetPeek(),W}function A(y,v){const{currentType:B}=v;if(B!==8)return!1;m(y);const W=y.currentPeek()===".";return y.resetPeek(),W}function S(y,v){const{currentType:B}=v;if(B!==9)return!1;m(y);const W=g(y.currentPeek());return y.resetPeek(),W}function L(y,v){const{currentType:B}=v;if(!(B===8||B===12))return!1;m(y);const W=y.currentPeek()===":";return y.resetPeek(),W}function T(y,v){const{currentType:B}=v;if(B!==10)return!1;const W=()=>{const se=y.currentPeek();return se==="{"?g(y.peek()):se==="@"||se==="%"||se==="|"||se===":"||se==="."||se===Co||!se?!1:se===It?(y.peek(),W()):re(y,!1)},ue=W();return y.resetPeek(),ue}function z(y){m(y);const v=y.currentPeek()==="|";return y.resetPeek(),v}function Y(y){const v=m(y),B=y.currentPeek()==="%"&&y.peek()==="{";return y.resetPeek(),{isModulo:B,hasSpace:v.length>0}}function re(y,v=!0){const B=(ue=!1,se="",G=!1)=>{const q=y.currentPeek();return q==="{"?se==="%"?!1:ue:q==="@"||!q?se==="%"?!0:ue:q==="%"?(y.peek(),B(ue,"%",!0)):q==="|"?se==="%"||G?!0:!(se===Co||se===It):q===Co?(y.peek(),B(!0,Co,G)):q===It?(y.peek(),B(!0,It,G)):!0},W=B();return v&&y.resetPeek(),W}function M(y,v){const B=y.currentChar();return B===Bo?Bo:v(B)?(y.next(),B):null}function F(y){const v=y.charCodeAt(0);return v>=97&&v<=122||v>=65&&v<=90||v>=48&&v<=57||v===95||v===36}function P(y){return M(y,F)}function $(y){const v=y.charCodeAt(0);return v>=97&&v<=122||v>=65&&v<=90||v>=48&&v<=57||v===95||v===36||v===45}function I(y){return M(y,$)}function ne(y){const v=y.charCodeAt(0);return v>=48&&v<=57}function ge(y){return M(y,ne)}function C(y){const v=y.charCodeAt(0);return v>=48&&v<=57||v>=65&&v<=70||v>=97&&v<=102}function ae(y){return M(y,C)}function ie(y){let v="",B="";for(;v=ge(y);)B+=v;return B}function ce(y){d(y);const v=y.currentChar();return v!=="%"&&p(Se.EXPECTED_TOKEN,r(),0,v),y.next(),"%"}function we(y){let v="";for(;;){const B=y.currentChar();if(B==="{"||B==="}"||B==="@"||B==="|"||!B)break;if(B==="%")if(re(y))v+=B,y.next();else break;else if(B===Co||B===It)if(re(y))v+=B,y.next();else{if(z(y))break;v+=B,y.next()}else v+=B,y.next()}return v}function Me(y){d(y);let v="",B="";for(;v=I(y);)B+=v;return y.currentChar()===Bo&&p(Se.UNTERMINATED_CLOSING_BRACE,r(),0),B}function Re(y){d(y);let v="";return y.currentChar()==="-"?(y.next(),v+=`-${ie(y)}`):v+=ie(y),y.currentChar()===Bo&&p(Se.UNTERMINATED_CLOSING_BRACE,r(),0),v}function Oe(y){return y!==Wc&&y!==It}function Ie(y){d(y),w(y,"'");let v="",B="";for(;v=M(y,Oe);)v==="\\"?B+=qe(y):B+=v;const W=y.currentChar();return W===It||W===Bo?(p(Se.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,r(),0),W===It&&(y.next(),w(y,"'")),B):(w(y,"'"),B)}function qe(y){const v=y.currentChar();switch(v){case"\\":case"'":return y.next(),`\\${v}`;case"u":return Je(y,v,4);case"U":return Je(y,v,6);default:return p(Se.UNKNOWN_ESCAPE_SEQUENCE,r(),0,v),""}}function Je(y,v,B){w(y,v);let W="";for(let ue=0;ue{const W=y.currentChar();return W==="{"||W==="%"||W==="@"||W==="|"||W==="("||W===")"||!W||W===Co?B:(B+=W,y.next(),v(B))};return v("")}function H(y){d(y);const v=w(y,"|");return d(y),v}function X(y,v){let B=null;switch(y.currentChar()){case"{":return v.braceNest>=1&&p(Se.NOT_ALLOW_NEST_PLACEHOLDER,r(),0),y.next(),B=f(v,2,"{"),d(y),v.braceNest++,B;case"}":return v.braceNest>0&&v.currentType===2&&p(Se.EMPTY_PLACEHOLDER,r(),0),y.next(),B=f(v,3,"}"),v.braceNest--,v.braceNest>0&&d(y),v.inLinked&&v.braceNest===0&&(v.inLinked=!1),B;case"@":return v.braceNest>0&&p(Se.UNTERMINATED_CLOSING_BRACE,r(),0),B=J(y,v)||k(v),v.braceNest=0,B;default:{let ue=!0,se=!0,G=!0;if(z(y))return v.braceNest>0&&p(Se.UNTERMINATED_CLOSING_BRACE,r(),0),B=f(v,1,H(y)),v.braceNest=0,v.inLinked=!1,B;if(v.braceNest>0&&(v.currentType===5||v.currentType===6||v.currentType===7))return p(Se.UNTERMINATED_CLOSING_BRACE,r(),0),v.braceNest=0,Z(y,v);if(ue=b(y,v))return B=f(v,5,Me(y)),d(y),B;if(se=_(y,v))return B=f(v,6,Re(y)),d(y),B;if(G=x(y,v))return B=f(v,7,Ie(y)),d(y),B;if(!ue&&!se&&!G)return B=f(v,13,E(y)),p(Se.INVALID_TOKEN_IN_PLACEHOLDER,r(),0,B.value),d(y),B;break}}return B}function J(y,v){const{currentType:B}=v;let W=null;const ue=y.currentChar();switch((B===8||B===9||B===12||B===10)&&(ue===It||ue===Co)&&p(Se.INVALID_LINKED_FORMAT,r(),0),ue){case"@":return y.next(),W=f(v,8,"@"),v.inLinked=!0,W;case".":return d(y),y.next(),f(v,9,".");case":":return d(y),y.next(),f(v,10,":");default:return z(y)?(W=f(v,1,H(y)),v.braceNest=0,v.inLinked=!1,W):A(y,v)||L(y,v)?(d(y),J(y,v)):S(y,v)?(d(y),f(v,12,O(y))):T(y,v)?(d(y),ue==="{"?X(y,v)||W:f(v,11,R(y))):(B===8&&p(Se.INVALID_LINKED_FORMAT,r(),0),v.braceNest=0,v.inLinked=!1,Z(y,v))}}function Z(y,v){let B={type:14};if(v.braceNest>0)return X(y,v)||k(v);if(v.inLinked)return J(y,v)||k(v);switch(y.currentChar()){case"{":return X(y,v)||k(v);case"}":return p(Se.UNBALANCED_CLOSING_BRACE,r(),0),y.next(),f(v,3,"}");case"@":return J(y,v)||k(v);default:{if(z(y))return B=f(v,1,H(y)),v.braceNest=0,v.inLinked=!1,B;const{isModulo:ue,hasSpace:se}=Y(y);if(ue)return se?f(v,0,we(y)):f(v,4,ce(y));if(re(y))return f(v,0,we(y));break}}return B}function ee(){const{currentType:y,offset:v,startLoc:B,endLoc:W}=l;return l.lastType=y,l.lastOffset=v,l.lastStartLoc=B,l.lastEndLoc=W,l.offset=a(),l.startLoc=r(),n.currentChar()===Bo?f(l,14):Z(n,l)}return{nextToken:ee,currentOffset:a,currentPosition:r,context:u}}const Kb="parser",zb=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function Hb(e,t,o){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const n=parseInt(t||o,16);return n<=55295||n>=57344?String.fromCodePoint(n):"�"}}}function Vb(e={}){const t=e.location!==!1,{onError:o,onWarn:n}=e;function a(b,_,x,A,...S){const L=b.currentPosition();if(L.offset+=A,L.column+=A,o){const T=t?pr(x,L):null,z=xn(_,T,{domain:Kb,args:S});o(z)}}function r(b,_,x,A,...S){const L=b.currentPosition();if(L.offset+=A,L.column+=A,n){const T=t?pr(x,L):null;n(Nb(_,T,S))}}function s(b,_,x){const A={type:b};return t&&(A.start=_,A.end=_,A.loc={start:x,end:x}),A}function i(b,_,x,A){t&&(b.end=_,b.loc&&(b.loc.end=x))}function l(b,_){const x=b.context(),A=s(3,x.offset,x.startLoc);return A.value=_,i(A,b.currentOffset(),b.currentPosition()),A}function u(b,_){const x=b.context(),{lastOffset:A,lastStartLoc:S}=x,L=s(5,A,S);return L.index=parseInt(_,10),b.nextToken(),i(L,b.currentOffset(),b.currentPosition()),L}function c(b,_,x){const A=b.context(),{lastOffset:S,lastStartLoc:L}=A,T=s(4,S,L);return T.key=_,x===!0&&(T.modulo=!0),b.nextToken(),i(T,b.currentOffset(),b.currentPosition()),T}function p(b,_){const x=b.context(),{lastOffset:A,lastStartLoc:S}=x,L=s(9,A,S);return L.value=_.replace(zb,Hb),b.nextToken(),i(L,b.currentOffset(),b.currentPosition()),L}function f(b){const _=b.nextToken(),x=b.context(),{lastOffset:A,lastStartLoc:S}=x,L=s(8,A,S);return _.type!==12?(a(b,Se.UNEXPECTED_EMPTY_LINKED_MODIFIER,x.lastStartLoc,0),L.value="",i(L,A,S),{nextConsumeToken:_,node:L}):(_.value==null&&a(b,Se.UNEXPECTED_LEXICAL_ANALYSIS,x.lastStartLoc,0,Xt(_)),L.value=_.value||"",i(L,b.currentOffset(),b.currentPosition()),{node:L})}function k(b,_){const x=b.context(),A=s(7,x.offset,x.startLoc);return A.value=_,i(A,b.currentOffset(),b.currentPosition()),A}function w(b){const _=b.context(),x=s(6,_.offset,_.startLoc);let A=b.nextToken();if(A.type===9){const S=f(b);x.modifier=S.node,A=S.nextConsumeToken||b.nextToken()}switch(A.type!==10&&a(b,Se.UNEXPECTED_LEXICAL_ANALYSIS,_.lastStartLoc,0,Xt(A)),A=b.nextToken(),A.type===2&&(A=b.nextToken()),A.type){case 11:A.value==null&&a(b,Se.UNEXPECTED_LEXICAL_ANALYSIS,_.lastStartLoc,0,Xt(A)),x.key=k(b,A.value||"");break;case 5:A.value==null&&a(b,Se.UNEXPECTED_LEXICAL_ANALYSIS,_.lastStartLoc,0,Xt(A)),x.key=c(b,A.value||"");break;case 6:A.value==null&&a(b,Se.UNEXPECTED_LEXICAL_ANALYSIS,_.lastStartLoc,0,Xt(A)),x.key=u(b,A.value||"");break;case 7:A.value==null&&a(b,Se.UNEXPECTED_LEXICAL_ANALYSIS,_.lastStartLoc,0,Xt(A)),x.key=p(b,A.value||"");break;default:{a(b,Se.UNEXPECTED_EMPTY_LINKED_KEY,_.lastStartLoc,0);const S=b.context(),L=s(7,S.offset,S.startLoc);return L.value="",i(L,S.offset,S.startLoc),x.key=L,i(x,S.offset,S.startLoc),{nextConsumeToken:A,node:x}}}return i(x,b.currentOffset(),b.currentPosition()),{node:x}}function m(b){const _=b.context(),x=_.currentType===1?b.currentOffset():_.offset,A=_.currentType===1?_.endLoc:_.startLoc,S=s(2,x,A);S.items=[];let L=null,T=null;do{const re=L||b.nextToken();switch(L=null,re.type){case 0:re.value==null&&a(b,Se.UNEXPECTED_LEXICAL_ANALYSIS,_.lastStartLoc,0,Xt(re)),S.items.push(l(b,re.value||""));break;case 6:re.value==null&&a(b,Se.UNEXPECTED_LEXICAL_ANALYSIS,_.lastStartLoc,0,Xt(re)),S.items.push(u(b,re.value||""));break;case 4:T=!0;break;case 5:re.value==null&&a(b,Se.UNEXPECTED_LEXICAL_ANALYSIS,_.lastStartLoc,0,Xt(re)),S.items.push(c(b,re.value||"",!!T)),T&&(r(b,$s.USE_MODULO_SYNTAX,_.lastStartLoc,0,Xt(re)),T=null);break;case 7:re.value==null&&a(b,Se.UNEXPECTED_LEXICAL_ANALYSIS,_.lastStartLoc,0,Xt(re)),S.items.push(p(b,re.value||""));break;case 8:{const M=w(b);S.items.push(M.node),L=M.nextConsumeToken||null;break}}}while(_.currentType!==14&&_.currentType!==1);const z=_.currentType===1?_.lastOffset:b.currentOffset(),Y=_.currentType===1?_.lastEndLoc:b.currentPosition();return i(S,z,Y),S}function d(b,_,x,A){const S=b.context();let L=A.items.length===0;const T=s(1,_,x);T.cases=[],T.cases.push(A);do{const z=m(b);L||(L=z.items.length===0),T.cases.push(z)}while(S.currentType!==14);return L&&a(b,Se.MUST_HAVE_MESSAGES_IN_PLURAL,x,0),i(T,b.currentOffset(),b.currentPosition()),T}function g(b){const _=b.context(),{offset:x,startLoc:A}=_,S=m(b);return _.currentType===14?S:d(b,x,A,S)}function h(b){const _=Ub(b,zc({},e)),x=_.context(),A=s(0,x.offset,x.startLoc);return t&&A.loc&&(A.loc.source=b),A.body=g(_),e.onCacheKey&&(A.cacheKey=e.onCacheKey(b)),x.currentType!==14&&a(_,Se.UNEXPECTED_LEXICAL_ANALYSIS,x.lastStartLoc,0,b[x.offset]||""),i(A,_.currentOffset(),_.currentPosition()),A}return{parse:h}}function Xt(e){if(e.type===14)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function Wb(e,t={}){const o={ast:e,helpers:new Set};return{context:()=>o,helper:r=>(o.helpers.add(r),r)}}function Yc(e,t){for(let o=0;oqc(o)),e}function qc(e){if(e.items.length===1){const t=e.items[0];(t.type===3||t.type===9)&&(e.static=t.value,delete t.value)}else{const t=[];for(let o=0;os;function l(m,d){s.code+=m}function u(m,d=!0){const g=d?n:"";l(a?g+" ".repeat(m):g)}function c(m=!0){const d=++s.indentLevel;m&&u(d)}function p(m=!0){const d=--s.indentLevel;m&&u(d)}function f(){u(s.indentLevel)}return{context:i,push:l,indent:c,deindent:p,newline:f,helper:m=>`_${m}`,needIndent:()=>s.needIndent}}function Qb(e,t){const{helper:o}=e;e.push(`${o("linked")}(`),Sn(e,t.key),t.modifier?(e.push(", "),Sn(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function ey(e,t){const{helper:o,needIndent:n}=e;e.push(`${o("normalize")}([`),e.indent(n());const a=t.items.length;for(let r=0;r1){e.push(`${o("plural")}([`),e.indent(n());const a=t.cases.length;for(let r=0;r{const o=Hc(t.mode)?t.mode:"normal",n=Hc(t.filename)?t.filename:"message.intl";t.sourceMap;const a=t.breakLineCode!=null?t.breakLineCode:o==="arrow"?";":` +`,r=t.needIndent?t.needIndent:o!=="arrow",s=e.helpers||[],i=Zb(e,{filename:n,breakLineCode:a,needIndent:r});i.push(o==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),i.indent(r),s.length>0&&(i.push(`const { ${Vc(s.map(c=>`${c}: _${c}`),", ")} } = ctx`),i.newline()),i.push("return "),Sn(i,e),i.deindent(r),i.push("}"),delete e.helpers;const{code:l,map:u}=i.context();return{ast:e,code:l,map:u?u.toJSON():void 0}};function ay(e,t={}){const o=zc({},t),n=!!o.jit,a=!!o.minify,r=o.optimize==null?!0:o.optimize,i=Vb(o).parse(e);return n?(r&&qb(i),a&&An(i),{ast:i,code:""}):(Yb(i,o),ny(i,o))}/*! * core-base v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */function ty(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Co().__INTLIFY_PROD_DEVTOOLS__=!1),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(Co().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(Co().__INTLIFY_DROP_MESSAGE_COMPILER__=!1)}function ho(e){return He(e)&&Es(e)===0&&(Xt(e,"b")||Xt(e,"body"))}const Wc=["b","body"];function oy(e){return jo(e,Wc)}const Yc=["c","cases"];function ny(e){return jo(e,Yc,[])}const qc=["s","static"];function ay(e){return jo(e,qc)}const Jc=["i","items"];function ry(e){return jo(e,Jc,[])}const Xc=["t","type"];function Es(e){return jo(e,Xc)}const Zc=["v","value"];function gr(e,t){const o=jo(e,Zc);if(o!=null)return o;throw sa(t)}const Qc=["m","modifier"];function sy(e){return jo(e,Qc)}const eu=["k","key"];function iy(e){const t=jo(e,eu);if(t)return t;throw sa(6)}function jo(e,t,o){for(let n=0;n{s===void 0?s=i:s+=i},g[1]=()=>{s!==void 0&&(t.push(s),s=void 0)},g[2]=()=>{g[0](),a++},g[3]=()=>{if(a>0)a--,n=4,g[0]();else{if(a=0,s===void 0||(s=py(s),s===!1))return!1;g[1]()}};function w(){const b=e[o+1];if(n===5&&b==="'"||n===6&&b==='"')return o++,i="\\"+b,g[0](),!0}for(;n!==null;)if(o++,r=e[o],!(r==="\\"&&w())){if(l=dy(r),p=Uo[n],u=p[l]||p.l||8,u===8||(n=u[0],u[1]!==void 0&&(c=g[u[1]],c&&(i=r,c()===!1))))return;if(n===7)return t}}const ou=new Map;function fy(e,t){return He(e)?e[t]:null}function hy(e,t){if(!He(e))return null;let o=ou.get(t);if(o||(o=gy(t),o&&ou.set(t,o)),!o)return null;const n=o.length;let a=e,r=0;for(;re,by=e=>"",yy="text",_y=e=>e.length===0?"":Ab(e),vy=xb;function nu(e,t){return e=Math.abs(e),t===2?e?e>1?1:0:1:e?Math.min(e,2):0}function ky(e){const t=gt(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(gt(e.named.count)||gt(e.named.n))?gt(e.named.count)?e.named.count:gt(e.named.n)?e.named.n:t:t}function wy(e,t){t.count||(t.count=e),t.n||(t.n=e)}function xy(e={}){const t=e.locale,o=ky(e),n=He(e.pluralRules)&&fe(t)&&nt(e.pluralRules[t])?e.pluralRules[t]:nu,a=He(e.pluralRules)&&fe(t)&&nt(e.pluralRules[t])?nu:void 0,r=h=>h[n(o,h.length,a)],s=e.list||[],i=h=>s[h],l=e.named||Qe();gt(e.pluralIndex)&&wy(o,l);const u=h=>l[h];function c(h){const f=nt(e.messages)?e.messages(h):He(e.messages)?e.messages[h]:!1;return f||(e.parent?e.parent.message(h):by)}const p=h=>e.modifiers?e.modifiers[h]:my,g=Le(e.processor)&&nt(e.processor.normalize)?e.processor.normalize:_y,w=Le(e.processor)&&nt(e.processor.interpolate)?e.processor.interpolate:vy,b=Le(e.processor)&&fe(e.processor.type)?e.processor.type:yy,d={list:i,named:u,plural:r,linked:(h,...f)=>{const[m,k]=f;let x="text",A="";f.length===1?He(m)?(A=m.modifier||A,x=m.type||x):fe(m)&&(A=m||A):f.length===2&&(fe(m)&&(A=m||A),fe(k)&&(x=k||x));const S=c(h)(d),L=x==="vnode"&&it(S)&&A?S[0]:S;return A?p(A)(L,x):L},message:c,type:b,interpolate:w,normalize:g,values:Lt(Qe(),s,l)};return d}let ia=null;function Ay(e){ia=e}function Sy(e,t,o){ia&&ia.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:o})}const $y=Ey("function:translate");function Ey(e){return t=>ia&&ia.emit(e,t)}const Cy=Ss.__EXTEND_POINT__,nn=cr(Cy),Ly={FALLBACK_TO_TRANSLATE:nn(),CANNOT_FORMAT_NUMBER:nn(),FALLBACK_TO_NUMBER_FORMAT:nn(),CANNOT_FORMAT_DATE:nn(),FALLBACK_TO_DATE_FORMAT:nn(),EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:nn(),__EXTEND_POINT__:nn()},au=Se.__EXTEND_POINT__,an=cr(au),Qt={INVALID_ARGUMENT:au,INVALID_DATE_ARGUMENT:an(),INVALID_ISO_DATE_ARGUMENT:an(),NOT_SUPPORT_NON_STRING_MESSAGE:an(),NOT_SUPPORT_LOCALE_PROMISE_VALUE:an(),NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:an(),NOT_SUPPORT_LOCALE_TYPE:an(),__EXTEND_POINT__:an()};function mo(e){return An(e,null,void 0)}function Cs(e,t){return t.locale!=null?ru(t.locale):ru(e.locale)}let Ls;function ru(e){if(fe(e))return e;if(nt(e)){if(e.resolvedOnce&&Ls!=null)return Ls;if(e.constructor.name==="Function"){const t=e();if(wb(t))throw mo(Qt.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return Ls=t}else throw mo(Qt.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw mo(Qt.NOT_SUPPORT_LOCALE_TYPE)}function Ty(e,t,o){return[...new Set([o,...it(t)?t:He(t)?Object.keys(t):fe(t)?[t]:[o]])]}function su(e,t,o){const n=fe(o)?o:En,a=e;a.__localeChainCache||(a.__localeChainCache=new Map);let r=a.__localeChainCache.get(n);if(!r){r=[];let s=[o];for(;it(s);)s=iu(r,s,t);const i=it(t)||!Le(t)?t:t.default?t.default:null;s=fe(i)?[i]:i,it(s)&&iu(r,s,!1),a.__localeChainCache.set(n,r)}return r}function iu(e,t,o){let n=!0;for(let a=0;a`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function Ry(){return{upper:(e,t)=>t==="text"&&fe(e)?e.toUpperCase():t==="vnode"&&He(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>t==="text"&&fe(e)?e.toLowerCase():t==="vnode"&&He(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>t==="text"&&fe(e)?cu(e):t==="vnode"&&He(e)&&"__v_isVNode"in e?cu(e.children):e}}let uu;function du(e){uu=e}let pu;function Iy(e){pu=e}let gu;function Oy(e){gu=e}let fu=null;const Fy=e=>{fu=e},Dy=()=>fu;let hu=null;const mu=e=>{hu=e},By=()=>hu;let bu=0;function Gy(e={}){const t=nt(e.onWarn)?e.onWarn:hb,o=fe(e.version)?e.version:Ny,n=fe(e.locale)||nt(e.locale)?e.locale:En,a=nt(n)?En:n,r=it(e.fallbackLocale)||Le(e.fallbackLocale)||fe(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:a,s=Le(e.messages)?e.messages:Ts(a),i=Le(e.datetimeFormats)?e.datetimeFormats:Ts(a),l=Le(e.numberFormats)?e.numberFormats:Ts(a),u=Lt(Qe(),e.modifiers,Ry()),c=e.pluralRules||Qe(),p=nt(e.missing)?e.missing:null,g=De(e.missingWarn)||Bo(e.missingWarn)?e.missingWarn:!0,w=De(e.fallbackWarn)||Bo(e.fallbackWarn)?e.fallbackWarn:!0,b=!!e.fallbackFormat,y=!!e.unresolving,d=nt(e.postTranslation)?e.postTranslation:null,h=Le(e.processor)?e.processor:null,f=De(e.warnHtmlMessage)?e.warnHtmlMessage:!0,m=!!e.escapeParameter,k=nt(e.messageCompiler)?e.messageCompiler:uu,x=nt(e.messageResolver)?e.messageResolver:pu||fy,A=nt(e.localeFallbacker)?e.localeFallbacker:gu||Ty,S=He(e.fallbackContext)?e.fallbackContext:void 0,L=e,P=He(L.__datetimeFormatters)?L.__datetimeFormatters:new Map,z=He(L.__numberFormatters)?L.__numberFormatters:new Map,W=He(L.__meta)?L.__meta:{};bu++;const re={version:o,cid:bu,locale:n,fallbackLocale:r,messages:s,modifiers:u,pluralRules:c,missing:p,missingWarn:g,fallbackWarn:w,fallbackFormat:b,unresolving:y,postTranslation:d,processor:h,warnHtmlMessage:f,escapeParameter:m,messageCompiler:k,messageResolver:x,localeFallbacker:A,fallbackContext:S,onWarn:t,__meta:W};return re.datetimeFormats=i,re.numberFormats=l,re.__datetimeFormatters=P,re.__numberFormatters=z,__INTLIFY_PROD_DEVTOOLS__&&Sy(re,o,W),re}const Ts=e=>({[e]:Qe()});function Ps(e,t,o,n,a){const{missing:r,onWarn:s}=e;if(r!==null){const i=r(e,o,t,a);return fe(i)?i:t}else return t}function la(e,t,o){const n=e;n.__localeChainCache=new Map,e.localeFallbacker(e,o,t)}function jy(e,t){return e===t?!1:e.split("-")[0]===t.split("-")[0]}function Uy(e,t){const o=t.indexOf(e);if(o===-1)return!1;for(let n=o+1;nKy(o,e)}function Ky(e,t){const o=oy(t);if(o==null)throw sa(0);if(Es(o)===1){const r=ny(o);return e.plural(r.reduce((s,i)=>[...s,yu(e,i)],[]))}else return yu(e,o)}function yu(e,t){const o=ay(t);if(o!=null)return e.type==="text"?o:e.normalize([o]);{const n=ry(t).reduce((a,r)=>[...a,Ns(e,r)],[]);return e.normalize(n)}}function Ns(e,t){const o=Es(t);switch(o){case 3:return gr(t,o);case 9:return gr(t,o);case 4:{const n=t;if(Xt(n,"k")&&n.k)return e.interpolate(e.named(n.k));if(Xt(n,"key")&&n.key)return e.interpolate(e.named(n.key));throw sa(o)}case 5:{const n=t;if(Xt(n,"i")&>(n.i))return e.interpolate(e.list(n.i));if(Xt(n,"index")&>(n.index))return e.interpolate(e.list(n.index));throw sa(o)}case 6:{const n=t,a=sy(n),r=iy(n);return e.linked(Ns(e,r),a?Ns(e,a):void 0,e.type)}case 7:return gr(t,o);case 8:return gr(t,o);default:throw new Error(`unhandled node on format message part: ${o}`)}}const _u=e=>e;let Cn=Qe();function vu(e,t={}){let o=!1;const n=t.onError||Pb;return t.onError=a=>{o=!0,n(a)},{...ey(e,t),detectError:o}}const zy=(e,t)=>{if(!fe(e))throw mo(Qt.NOT_SUPPORT_NON_STRING_MESSAGE);{De(t.warnHtmlMessage)&&t.warnHtmlMessage;const n=(t.onCacheKey||_u)(e),a=Cn[n];if(a)return a;const{code:r,detectError:s}=vu(e,t),i=new Function(`return ${r}`)();return s?i:Cn[n]=i}};function Hy(e,t){if(__INTLIFY_JIT_COMPILATION__&&!__INTLIFY_DROP_MESSAGE_COMPILER__&&fe(e)){De(t.warnHtmlMessage)&&t.warnHtmlMessage;const n=(t.onCacheKey||_u)(e),a=Cn[n];if(a)return a;const{ast:r,detectError:s}=vu(e,{...t,location:!1,jit:!0}),i=Ms(r);return s?i:Cn[n]=i}else{const o=e.cacheKey;if(o){const n=Cn[o];return n||(Cn[o]=Ms(e))}else return Ms(e)}}const ku=()=>"",Wt=e=>nt(e);function wu(e,...t){const{fallbackFormat:o,postTranslation:n,unresolving:a,messageCompiler:r,fallbackLocale:s,messages:i}=e,[l,u]=Rs(...t),c=De(u.missingWarn)?u.missingWarn:e.missingWarn,p=De(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn,g=De(u.escapeParameter)?u.escapeParameter:e.escapeParameter,w=!!u.resolvedMessage,b=fe(u.default)||De(u.default)?De(u.default)?r?l:()=>l:u.default:o?r?l:()=>l:"",y=o||b!=="",d=Cs(e,u);g&&Vy(u);let[h,f,m]=w?[l,d,i[d]||Qe()]:xu(e,l,d,s,p,c),k=h,x=l;if(!w&&!(fe(k)||ho(k)||Wt(k))&&y&&(k=b,x=k),!w&&(!(fe(k)||ho(k)||Wt(k))||!fe(f)))return a?fr:l;let A=!1;const S=()=>{A=!0},L=Wt(k)?k:Au(e,l,f,k,x,S);if(A)return k;const P=qy(e,f,m,u),z=xy(P),W=Wy(e,L,z);let re=n?n(W,l):W;if(g&&fe(re)&&(re=vb(re)),__INTLIFY_PROD_DEVTOOLS__){const M={timestamp:Date.now(),key:fe(l)?l:Wt(k)?k.key:"",locale:f||(Wt(k)?k.locale:""),format:fe(k)?k:Wt(k)?k.source:"",message:re};M.meta=Lt({},e.__meta,Dy()||{}),$y(M)}return re}function Vy(e){it(e.list)?e.list=e.list.map(t=>fe(t)?Oc(t):t):He(e.named)&&Object.keys(e.named).forEach(t=>{fe(e.named[t])&&(e.named[t]=Oc(e.named[t]))})}function xu(e,t,o,n,a,r){const{messages:s,onWarn:i,messageResolver:l,localeFallbacker:u}=e,c=u(e,n,o);let p=Qe(),g,w=null;const b="translate";for(let y=0;yn;return u.locale=o,u.key=t,u}const l=s(n,Yy(e,o,a,n,i,r));return l.locale=o,l.key=t,l.source=n,l}function Wy(e,t,o){return t(o)}function Rs(...e){const[t,o,n]=e,a=Qe();if(!fe(t)&&!gt(t)&&!Wt(t)&&!ho(t))throw mo(Qt.INVALID_ARGUMENT);const r=gt(t)?String(t):(Wt(t),t);return gt(o)?a.plural=o:fe(o)?a.default=o:Le(o)&&!lr(o)?a.named=o:it(o)&&(a.list=o),gt(n)?a.plural=n:fe(n)?a.default=n:Le(n)&&Lt(a,n),[r,a]}function Yy(e,t,o,n,a,r){return{locale:t,key:o,warnHtmlMessage:a,onError:s=>{throw r&&r(s),s},onCacheKey:s=>mb(t,o,s)}}function qy(e,t,o,n){const{modifiers:a,pluralRules:r,messageResolver:s,fallbackLocale:i,fallbackWarn:l,missingWarn:u,fallbackContext:c}=e,g={locale:t,modifiers:a,pluralRules:r,messages:w=>{let b=s(o,w);if(b==null&&c){const[,,y]=xu(c,w,t,i,l,u);b=s(y,w)}if(fe(b)||ho(b)){let y=!1;const h=Au(e,w,t,b,w,()=>{y=!0});return y?ku:h}else return Wt(b)?b:ku}};return e.processor&&(g.processor=e.processor),n.list&&(g.list=n.list),n.named&&(g.named=n.named),gt(n.plural)&&(g.pluralIndex=n.plural),g}function Su(e,...t){const{datetimeFormats:o,unresolving:n,fallbackLocale:a,onWarn:r,localeFallbacker:s}=e,{__datetimeFormatters:i}=e,[l,u,c,p]=Is(...t),g=De(c.missingWarn)?c.missingWarn:e.missingWarn;De(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn;const w=!!c.part,b=Cs(e,c),y=s(e,a,b);if(!fe(l)||l==="")return new Intl.DateTimeFormat(b,p).format(u);let d={},h,f=null;const m="datetime format";for(let A=0;A{$u.includes(l)?s[l]=o[l]:r[l]=o[l]}),fe(n)?r.locale=n:Le(n)&&(s=n),Le(a)&&(s=a),[r.key||"",i,r,s]}function Eu(e,t,o){const n=e;for(const a in o){const r=`${t}__${a}`;n.__datetimeFormatters.has(r)&&n.__datetimeFormatters.delete(r)}}function Cu(e,...t){const{numberFormats:o,unresolving:n,fallbackLocale:a,onWarn:r,localeFallbacker:s}=e,{__numberFormatters:i}=e,[l,u,c,p]=Os(...t),g=De(c.missingWarn)?c.missingWarn:e.missingWarn;De(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn;const w=!!c.part,b=Cs(e,c),y=s(e,a,b);if(!fe(l)||l==="")return new Intl.NumberFormat(b,p).format(u);let d={},h,f=null;const m="number format";for(let A=0;A{Lu.includes(l)?s[l]=o[l]:r[l]=o[l]}),fe(n)?r.locale=n:Le(n)&&(s=n),Le(a)&&(s=a),[r.key||"",i,r,s]}function Tu(e,t,o){const n=e;for(const a in o){const r=`${t}__${a}`;n.__numberFormatters.has(r)&&n.__numberFormatters.delete(r)}}ty();/*! + */function ry(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Eo().__INTLIFY_PROD_DEVTOOLS__=!1),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(Eo().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(Eo().__INTLIFY_DROP_MESSAGE_COMPILER__=!1)}function go(e){return Ke(e)&&Cs(e)===0&&(Jt(e,"b")||Jt(e,"body"))}const Jc=["b","body"];function sy(e){return Go(e,Jc)}const Xc=["c","cases"];function iy(e){return Go(e,Xc,[])}const Zc=["s","static"];function ly(e){return Go(e,Zc)}const Qc=["i","items"];function cy(e){return Go(e,Qc,[])}const eu=["t","type"];function Cs(e){return Go(e,eu)}const tu=["v","value"];function gr(e,t){const o=Go(e,tu);if(o!=null)return o;throw sa(t)}const ou=["m","modifier"];function uy(e){return Go(e,ou)}const nu=["k","key"];function dy(e){const t=Go(e,nu);if(t)return t;throw sa(6)}function Go(e,t,o){for(let n=0;n{s===void 0?s=i:s+=i},f[1]=()=>{s!==void 0&&(t.push(s),s=void 0)},f[2]=()=>{f[0](),a++},f[3]=()=>{if(a>0)a--,n=4,f[0]();else{if(a=0,s===void 0||(s=my(s),s===!1))return!1;f[1]()}};function k(){const w=e[o+1];if(n===5&&w==="'"||n===6&&w==='"')return o++,i="\\"+w,f[0](),!0}for(;n!==null;)if(o++,r=e[o],!(r==="\\"&&k())){if(l=hy(r),p=jo[n],u=p[l]||p.l||8,u===8||(n=u[0],u[1]!==void 0&&(c=f[u[1]],c&&(i=r,c()===!1))))return;if(n===7)return t}}const ru=new Map;function yy(e,t){return Ke(e)?e[t]:null}function _y(e,t){if(!Ke(e))return null;let o=ru.get(t);if(o||(o=by(t),o&&ru.set(t,o)),!o)return null;const n=o.length;let a=e,r=0;for(;re,ky=e=>"",wy="text",xy=e=>e.length===0?"":Cb(e),Ay=Eb;function su(e,t){return e=Math.abs(e),t===2?e?e>1?1:0:1:e?Math.min(e,2):0}function Sy(e){const t=pt(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(pt(e.named.count)||pt(e.named.n))?pt(e.named.count)?e.named.count:pt(e.named.n)?e.named.n:t:t}function $y(e,t){t.count||(t.count=e),t.n||(t.n=e)}function Ey(e={}){const t=e.locale,o=Sy(e),n=Ke(e.pluralRules)&&fe(t)&&tt(e.pluralRules[t])?e.pluralRules[t]:su,a=Ke(e.pluralRules)&&fe(t)&&tt(e.pluralRules[t])?su:void 0,r=g=>g[n(o,g.length,a)],s=e.list||[],i=g=>s[g],l=e.named||Xe();pt(e.pluralIndex)&&$y(o,l);const u=g=>l[g];function c(g){const h=tt(e.messages)?e.messages(g):Ke(e.messages)?e.messages[g]:!1;return h||(e.parent?e.parent.message(g):ky)}const p=g=>e.modifiers?e.modifiers[g]:vy,f=Le(e.processor)&&tt(e.processor.normalize)?e.processor.normalize:xy,k=Le(e.processor)&&tt(e.processor.interpolate)?e.processor.interpolate:Ay,w=Le(e.processor)&&fe(e.processor.type)?e.processor.type:wy,d={list:i,named:u,plural:r,linked:(g,...h)=>{const[b,_]=h;let x="text",A="";h.length===1?Ke(b)?(A=b.modifier||A,x=b.type||x):fe(b)&&(A=b||A):h.length===2&&(fe(b)&&(A=b||A),fe(_)&&(x=_||x));const S=c(g)(d),L=x==="vnode"&&rt(S)&&A?S[0]:S;return A?p(A)(L,x):L},message:c,type:w,interpolate:k,normalize:f,values:Ct(Xe(),s,l)};return d}let ia=null;function Cy(e){ia=e}function Ly(e,t,o){ia&&ia.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:o})}const Ty=Py("function:translate");function Py(e){return t=>ia&&ia.emit(e,t)}const My=$s.__EXTEND_POINT__,on=cr(My),Ny={FALLBACK_TO_TRANSLATE:on(),CANNOT_FORMAT_NUMBER:on(),FALLBACK_TO_NUMBER_FORMAT:on(),CANNOT_FORMAT_DATE:on(),FALLBACK_TO_DATE_FORMAT:on(),EXPERIMENTAL_CUSTOM_MESSAGE_COMPILER:on(),__EXTEND_POINT__:on()},iu=Se.__EXTEND_POINT__,nn=cr(iu),Zt={INVALID_ARGUMENT:iu,INVALID_DATE_ARGUMENT:nn(),INVALID_ISO_DATE_ARGUMENT:nn(),NOT_SUPPORT_NON_STRING_MESSAGE:nn(),NOT_SUPPORT_LOCALE_PROMISE_VALUE:nn(),NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:nn(),NOT_SUPPORT_LOCALE_TYPE:nn(),__EXTEND_POINT__:nn()};function fo(e){return xn(e,null,void 0)}function Ls(e,t){return t.locale!=null?lu(t.locale):lu(e.locale)}let Ts;function lu(e){if(fe(e))return e;if(tt(e)){if(e.resolvedOnce&&Ts!=null)return Ts;if(e.constructor.name==="Function"){const t=e();if($b(t))throw fo(Zt.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return Ts=t}else throw fo(Zt.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw fo(Zt.NOT_SUPPORT_LOCALE_TYPE)}function Ry(e,t,o){return[...new Set([o,...rt(t)?t:Ke(t)?Object.keys(t):fe(t)?[t]:[o]])]}function cu(e,t,o){const n=fe(o)?o:$n,a=e;a.__localeChainCache||(a.__localeChainCache=new Map);let r=a.__localeChainCache.get(n);if(!r){r=[];let s=[o];for(;rt(s);)s=uu(r,s,t);const i=rt(t)||!Le(t)?t:t.default?t.default:null;s=fe(i)?[i]:i,rt(s)&&uu(r,s,!1),a.__localeChainCache.set(n,r)}return r}function uu(e,t,o){let n=!0;for(let a=0;a`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function Dy(){return{upper:(e,t)=>t==="text"&&fe(e)?e.toUpperCase():t==="vnode"&&Ke(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>t==="text"&&fe(e)?e.toLowerCase():t==="vnode"&&Ke(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>t==="text"&&fe(e)?pu(e):t==="vnode"&&Ke(e)&&"__v_isVNode"in e?pu(e.children):e}}let gu;function fu(e){gu=e}let hu;function By(e){hu=e}let mu;function Gy(e){mu=e}let bu=null;const jy=e=>{bu=e},Uy=()=>bu;let yu=null;const _u=e=>{yu=e},Ky=()=>yu;let vu=0;function zy(e={}){const t=tt(e.onWarn)?e.onWarn:_b,o=fe(e.version)?e.version:Fy,n=fe(e.locale)||tt(e.locale)?e.locale:$n,a=tt(n)?$n:n,r=rt(e.fallbackLocale)||Le(e.fallbackLocale)||fe(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:a,s=Le(e.messages)?e.messages:Ps(a),i=Le(e.datetimeFormats)?e.datetimeFormats:Ps(a),l=Le(e.numberFormats)?e.numberFormats:Ps(a),u=Ct(Xe(),e.modifiers,Dy()),c=e.pluralRules||Xe(),p=tt(e.missing)?e.missing:null,f=De(e.missingWarn)||Do(e.missingWarn)?e.missingWarn:!0,k=De(e.fallbackWarn)||Do(e.fallbackWarn)?e.fallbackWarn:!0,w=!!e.fallbackFormat,m=!!e.unresolving,d=tt(e.postTranslation)?e.postTranslation:null,g=Le(e.processor)?e.processor:null,h=De(e.warnHtmlMessage)?e.warnHtmlMessage:!0,b=!!e.escapeParameter,_=tt(e.messageCompiler)?e.messageCompiler:gu,x=tt(e.messageResolver)?e.messageResolver:hu||yy,A=tt(e.localeFallbacker)?e.localeFallbacker:mu||Ry,S=Ke(e.fallbackContext)?e.fallbackContext:void 0,L=e,T=Ke(L.__datetimeFormatters)?L.__datetimeFormatters:new Map,z=Ke(L.__numberFormatters)?L.__numberFormatters:new Map,Y=Ke(L.__meta)?L.__meta:{};vu++;const re={version:o,cid:vu,locale:n,fallbackLocale:r,messages:s,modifiers:u,pluralRules:c,missing:p,missingWarn:f,fallbackWarn:k,fallbackFormat:w,unresolving:m,postTranslation:d,processor:g,warnHtmlMessage:h,escapeParameter:b,messageCompiler:_,messageResolver:x,localeFallbacker:A,fallbackContext:S,onWarn:t,__meta:Y};return re.datetimeFormats=i,re.numberFormats=l,re.__datetimeFormatters=T,re.__numberFormatters=z,__INTLIFY_PROD_DEVTOOLS__&&Ly(re,o,Y),re}const Ps=e=>({[e]:Xe()});function Ms(e,t,o,n,a){const{missing:r,onWarn:s}=e;if(r!==null){const i=r(e,o,t,a);return fe(i)?i:t}else return t}function la(e,t,o){const n=e;n.__localeChainCache=new Map,e.localeFallbacker(e,o,t)}function Hy(e,t){return e===t?!1:e.split("-")[0]===t.split("-")[0]}function Vy(e,t){const o=t.indexOf(e);if(o===-1)return!1;for(let n=o+1;nWy(o,e)}function Wy(e,t){const o=sy(t);if(o==null)throw sa(0);if(Cs(o)===1){const r=iy(o);return e.plural(r.reduce((s,i)=>[...s,ku(e,i)],[]))}else return ku(e,o)}function ku(e,t){const o=ly(t);if(o!=null)return e.type==="text"?o:e.normalize([o]);{const n=cy(t).reduce((a,r)=>[...a,Rs(e,r)],[]);return e.normalize(n)}}function Rs(e,t){const o=Cs(t);switch(o){case 3:return gr(t,o);case 9:return gr(t,o);case 4:{const n=t;if(Jt(n,"k")&&n.k)return e.interpolate(e.named(n.k));if(Jt(n,"key")&&n.key)return e.interpolate(e.named(n.key));throw sa(o)}case 5:{const n=t;if(Jt(n,"i")&&pt(n.i))return e.interpolate(e.list(n.i));if(Jt(n,"index")&&pt(n.index))return e.interpolate(e.list(n.index));throw sa(o)}case 6:{const n=t,a=uy(n),r=dy(n);return e.linked(Rs(e,r),a?Rs(e,a):void 0,e.type)}case 7:return gr(t,o);case 8:return gr(t,o);default:throw new Error(`unhandled node on format message part: ${o}`)}}const wu=e=>e;let En=Xe();function xu(e,t={}){let o=!1;const n=t.onError||Ib;return t.onError=a=>{o=!0,n(a)},{...ay(e,t),detectError:o}}const Yy=(e,t)=>{if(!fe(e))throw fo(Zt.NOT_SUPPORT_NON_STRING_MESSAGE);{De(t.warnHtmlMessage)&&t.warnHtmlMessage;const n=(t.onCacheKey||wu)(e),a=En[n];if(a)return a;const{code:r,detectError:s}=xu(e,t),i=new Function(`return ${r}`)();return s?i:En[n]=i}};function qy(e,t){if(__INTLIFY_JIT_COMPILATION__&&!__INTLIFY_DROP_MESSAGE_COMPILER__&&fe(e)){De(t.warnHtmlMessage)&&t.warnHtmlMessage;const n=(t.onCacheKey||wu)(e),a=En[n];if(a)return a;const{ast:r,detectError:s}=xu(e,{...t,location:!1,jit:!0}),i=Ns(r);return s?i:En[n]=i}else{const o=e.cacheKey;if(o){const n=En[o];return n||(En[o]=Ns(e))}else return Ns(e)}}const Au=()=>"",Ht=e=>tt(e);function Su(e,...t){const{fallbackFormat:o,postTranslation:n,unresolving:a,messageCompiler:r,fallbackLocale:s,messages:i}=e,[l,u]=Is(...t),c=De(u.missingWarn)?u.missingWarn:e.missingWarn,p=De(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn,f=De(u.escapeParameter)?u.escapeParameter:e.escapeParameter,k=!!u.resolvedMessage,w=fe(u.default)||De(u.default)?De(u.default)?r?l:()=>l:u.default:o?r?l:()=>l:"",m=o||w!=="",d=Ls(e,u);f&&Jy(u);let[g,h,b]=k?[l,d,i[d]||Xe()]:$u(e,l,d,s,p,c),_=g,x=l;if(!k&&!(fe(_)||go(_)||Ht(_))&&m&&(_=w,x=_),!k&&(!(fe(_)||go(_)||Ht(_))||!fe(h)))return a?fr:l;let A=!1;const S=()=>{A=!0},L=Ht(_)?_:Eu(e,l,h,_,x,S);if(A)return _;const T=Qy(e,h,b,u),z=Ey(T),Y=Xy(e,L,z);let re=n?n(Y,l):Y;if(f&&fe(re)&&(re=Ab(re)),__INTLIFY_PROD_DEVTOOLS__){const M={timestamp:Date.now(),key:fe(l)?l:Ht(_)?_.key:"",locale:h||(Ht(_)?_.locale:""),format:fe(_)?_:Ht(_)?_.source:"",message:re};M.meta=Ct({},e.__meta,Uy()||{}),Ty(M)}return re}function Jy(e){rt(e.list)?e.list=e.list.map(t=>fe(t)?Bc(t):t):Ke(e.named)&&Object.keys(e.named).forEach(t=>{fe(e.named[t])&&(e.named[t]=Bc(e.named[t]))})}function $u(e,t,o,n,a,r){const{messages:s,onWarn:i,messageResolver:l,localeFallbacker:u}=e,c=u(e,n,o);let p=Xe(),f,k=null;const w="translate";for(let m=0;mn;return u.locale=o,u.key=t,u}const l=s(n,Zy(e,o,a,n,i,r));return l.locale=o,l.key=t,l.source=n,l}function Xy(e,t,o){return t(o)}function Is(...e){const[t,o,n]=e,a=Xe();if(!fe(t)&&!pt(t)&&!Ht(t)&&!go(t))throw fo(Zt.INVALID_ARGUMENT);const r=pt(t)?String(t):(Ht(t),t);return pt(o)?a.plural=o:fe(o)?a.default=o:Le(o)&&!lr(o)?a.named=o:rt(o)&&(a.list=o),pt(n)?a.plural=n:fe(n)?a.default=n:Le(n)&&Ct(a,n),[r,a]}function Zy(e,t,o,n,a,r){return{locale:t,key:o,warnHtmlMessage:a,onError:s=>{throw r&&r(s),s},onCacheKey:s=>vb(t,o,s)}}function Qy(e,t,o,n){const{modifiers:a,pluralRules:r,messageResolver:s,fallbackLocale:i,fallbackWarn:l,missingWarn:u,fallbackContext:c}=e,f={locale:t,modifiers:a,pluralRules:r,messages:k=>{let w=s(o,k);if(w==null&&c){const[,,m]=$u(c,k,t,i,l,u);w=s(m,k)}if(fe(w)||go(w)){let m=!1;const g=Eu(e,k,t,w,k,()=>{m=!0});return m?Au:g}else return Ht(w)?w:Au}};return e.processor&&(f.processor=e.processor),n.list&&(f.list=n.list),n.named&&(f.named=n.named),pt(n.plural)&&(f.pluralIndex=n.plural),f}function Cu(e,...t){const{datetimeFormats:o,unresolving:n,fallbackLocale:a,onWarn:r,localeFallbacker:s}=e,{__datetimeFormatters:i}=e,[l,u,c,p]=Os(...t),f=De(c.missingWarn)?c.missingWarn:e.missingWarn;De(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn;const k=!!c.part,w=Ls(e,c),m=s(e,a,w);if(!fe(l)||l==="")return new Intl.DateTimeFormat(w,p).format(u);let d={},g,h=null;const b="datetime format";for(let A=0;A{Lu.includes(l)?s[l]=o[l]:r[l]=o[l]}),fe(n)?r.locale=n:Le(n)&&(s=n),Le(a)&&(s=a),[r.key||"",i,r,s]}function Tu(e,t,o){const n=e;for(const a in o){const r=`${t}__${a}`;n.__datetimeFormatters.has(r)&&n.__datetimeFormatters.delete(r)}}function Pu(e,...t){const{numberFormats:o,unresolving:n,fallbackLocale:a,onWarn:r,localeFallbacker:s}=e,{__numberFormatters:i}=e,[l,u,c,p]=Fs(...t),f=De(c.missingWarn)?c.missingWarn:e.missingWarn;De(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn;const k=!!c.part,w=Ls(e,c),m=s(e,a,w);if(!fe(l)||l==="")return new Intl.NumberFormat(w,p).format(u);let d={},g,h=null;const b="number format";for(let A=0;A{Mu.includes(l)?s[l]=o[l]:r[l]=o[l]}),fe(n)?r.locale=n:Le(n)&&(s=n),Le(a)&&(s=a),[r.key||"",i,r,s]}function Nu(e,t,o){const n=e;for(const a in o){const r=`${t}__${a}`;n.__numberFormatters.has(r)&&n.__numberFormatters.delete(r)}}ry();/*! * vue-i18n v9.14.5 * (c) 2025 kazuya kawaguchi * Released under the MIT License. - */const Jy="9.14.5";function Xy(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(Co().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(Co().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(Co().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(Co().__INTLIFY_DROP_MESSAGE_COMPILER__=!1),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Co().__INTLIFY_PROD_DEVTOOLS__=!1)}const Zy=Ly.__EXTEND_POINT__,To=cr(Zy);To(),To(),To(),To(),To(),To(),To(),To(),To();const Pu=Qt.__EXTEND_POINT__,Dt=cr(Pu),bt={UNEXPECTED_RETURN_TYPE:Pu,INVALID_ARGUMENT:Dt(),MUST_BE_CALL_SETUP_TOP:Dt(),NOT_INSTALLED:Dt(),NOT_AVAILABLE_IN_LEGACY_MODE:Dt(),REQUIRED_VALUE:Dt(),INVALID_VALUE:Dt(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:Dt(),NOT_INSTALLED_WITH_PROVIDE:Dt(),UNEXPECTED_ERROR:Dt(),NOT_COMPATIBLE_LEGACY_VUE_I18N:Dt(),BRIDGE_SUPPORT_VUE_2_ONLY:Dt(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:Dt(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:Dt(),__EXTEND_POINT__:Dt()};function kt(e,...t){return An(e,null,void 0)}const Fs=Do("__translateVNode"),Ds=Do("__datetimeParts"),Bs=Do("__numberParts"),Mu=Do("__setPluralRules"),Nu=Do("__injectWithOption"),Gs=Do("__dispose");function ca(e){if(!He(e)||ho(e))return e;for(const t in e)if(Xt(e,t))if(!t.includes("."))He(e[t])&&ca(e[t]);else{const o=t.split("."),n=o.length-1;let a=e,r=!1;for(let s=0;s{if("locale"in i&&"resource"in i){const{locale:l,resource:u}=i;l?(s[l]=s[l]||Qe(),dr(u,s[l])):dr(u,s)}else fe(i)&&dr(JSON.parse(i),s)}),a==null&&r)for(const i in s)Xt(s,i)&&ca(s[i]);return s}function Ru(e){return e.type}function Iu(e,t,o){let n=He(t.messages)?t.messages:Qe();"__i18nGlobal"in o&&(n=hr(e.locale.value,{messages:n,__i18n:o.__i18nGlobal}));const a=Object.keys(n);a.length&&a.forEach(r=>{e.mergeLocaleMessage(r,n[r])});{if(He(t.datetimeFormats)){const r=Object.keys(t.datetimeFormats);r.length&&r.forEach(s=>{e.mergeDateTimeFormat(s,t.datetimeFormats[s])})}if(He(t.numberFormats)){const r=Object.keys(t.numberFormats);r.length&&r.forEach(s=>{e.mergeNumberFormat(s,t.numberFormats[s])})}}}function Ou(e){return We(Zn,null,e,0)}const Fu="__INTLIFY_META__",Du=()=>[],Qy=()=>!1;let Bu=0;function Gu(e){return(t,o,n,a)=>e(o,n,$o()||void 0,a)}const e0=()=>{const e=$o();let t=null;return e&&(t=Ru(e)[Fu])?{[Fu]:t}:null};function js(e={},t){const{__root:o,__injectWithOption:n}=e,a=o===void 0,r=e.flatJson,s=ir?de:fn,i=!!e.translateExistCompatible;let l=De(e.inheritLocale)?e.inheritLocale:!0;const u=s(o&&l?o.locale.value:fe(e.locale)?e.locale:En),c=s(o&&l?o.fallbackLocale.value:fe(e.fallbackLocale)||it(e.fallbackLocale)||Le(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:u.value),p=s(hr(u.value,e)),g=s(Le(e.datetimeFormats)?e.datetimeFormats:{[u.value]:{}}),w=s(Le(e.numberFormats)?e.numberFormats:{[u.value]:{}});let b=o?o.missingWarn:De(e.missingWarn)||Bo(e.missingWarn)?e.missingWarn:!0,y=o?o.fallbackWarn:De(e.fallbackWarn)||Bo(e.fallbackWarn)?e.fallbackWarn:!0,d=o?o.fallbackRoot:De(e.fallbackRoot)?e.fallbackRoot:!0,h=!!e.fallbackFormat,f=nt(e.missing)?e.missing:null,m=nt(e.missing)?Gu(e.missing):null,k=nt(e.postTranslation)?e.postTranslation:null,x=o?o.warnHtmlMessage:De(e.warnHtmlMessage)?e.warnHtmlMessage:!0,A=!!e.escapeParameter;const S=o?o.modifiers:Le(e.modifiers)?e.modifiers:{};let L=e.pluralRules||o&&o.pluralRules,P;P=(()=>{a&&mu(null);const G={version:Jy,locale:u.value,fallbackLocale:c.value,messages:p.value,modifiers:S,pluralRules:L,missing:m===null?void 0:m,missingWarn:b,fallbackWarn:y,fallbackFormat:h,unresolving:!0,postTranslation:k===null?void 0:k,warnHtmlMessage:x,escapeParameter:A,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};G.datetimeFormats=g.value,G.numberFormats=w.value,G.__datetimeFormatters=Le(P)?P.__datetimeFormatters:void 0,G.__numberFormatters=Le(P)?P.__numberFormatters:void 0;const Y=Gy(G);return a&&mu(Y),Y})(),la(P,u.value,c.value);function W(){return[u.value,c.value,p.value,g.value,w.value]}const re=te({get:()=>u.value,set:G=>{u.value=G,P.locale=u.value}}),M=te({get:()=>c.value,set:G=>{c.value=G,P.fallbackLocale=c.value,la(P,u.value,G)}}),F=te(()=>p.value),T=te(()=>g.value),$=te(()=>w.value);function I(){return nt(k)?k:null}function ne(G){k=G,P.postTranslation=G}function ge(){return f}function C(G){G!==null&&(m=Gu(G)),f=G,P.missing=m}const ae=(G,Y,me,Ae,Ge,D)=>{W();let U;try{__INTLIFY_PROD_DEVTOOLS__,a||(P.fallbackContext=o?By():void 0),U=G(P)}finally{__INTLIFY_PROD_DEVTOOLS__,a||(P.fallbackContext=void 0)}if(me!=="translate exists"&>(U)&&U===fr||me==="translate exists"&&!U){const[he,ve]=Y();return o&&d?Ae(o):Ge(he)}else{if(D(U))return U;throw kt(bt.UNEXPECTED_RETURN_TYPE)}};function ie(...G){return ae(Y=>Reflect.apply(wu,null,[Y,...G]),()=>Rs(...G),"translate",Y=>Reflect.apply(Y.t,Y,[...G]),Y=>Y,Y=>fe(Y))}function le(...G){const[Y,me,Ae]=G;if(Ae&&!He(Ae))throw kt(bt.INVALID_ARGUMENT);return ie(Y,me,Lt({resolvedMessage:!0},Ae||{}))}function we(...G){return ae(Y=>Reflect.apply(Su,null,[Y,...G]),()=>Is(...G),"datetime format",Y=>Reflect.apply(Y.d,Y,[...G]),()=>lu,Y=>fe(Y))}function Me(...G){return ae(Y=>Reflect.apply(Cu,null,[Y,...G]),()=>Os(...G),"number format",Y=>Reflect.apply(Y.n,Y,[...G]),()=>lu,Y=>fe(Y))}function Re(G){return G.map(Y=>fe(Y)||gt(Y)||De(Y)?Ou(String(Y)):Y)}const Ie={normalize:Re,interpolate:G=>G,type:"vnode"};function Je(...G){return ae(Y=>{let me;const Ae=Y;try{Ae.processor=Ie,me=Reflect.apply(wu,null,[Ae,...G])}finally{Ae.processor=null}return me},()=>Rs(...G),"translate",Y=>Y[Fs](...G),Y=>[Ou(Y)],Y=>it(Y))}function Xe(...G){return ae(Y=>Reflect.apply(Cu,null,[Y,...G]),()=>Os(...G),"number format",Y=>Y[Bs](...G),Du,Y=>fe(Y)||it(Y))}function ft(...G){return ae(Y=>Reflect.apply(Su,null,[Y,...G]),()=>Is(...G),"datetime format",Y=>Y[Ds](...G),Du,Y=>fe(Y)||it(Y))}function E(G){L=G,P.pluralRules=L}function O(G,Y){return ae(()=>{if(!G)return!1;const me=fe(Y)?Y:u.value,Ae=X(me),Ge=P.messageResolver(Ae,G);return i?Ge!=null:ho(Ge)||Wt(Ge)||fe(Ge)},()=>[G],"translate exists",me=>Reflect.apply(me.te,me,[G,Y]),Qy,me=>De(me))}function R(G){let Y=null;const me=su(P,c.value,u.value);for(let Ae=0;Ae{l&&(u.value=G,P.locale=G,la(P,u.value,c.value))}),ct(o.fallbackLocale,G=>{l&&(c.value=G,P.fallbackLocale=G,la(P,u.value,c.value))}));const se={id:Bu,locale:re,fallbackLocale:M,get inheritLocale(){return l},set inheritLocale(G){l=G,G&&o&&(u.value=o.locale.value,c.value=o.fallbackLocale.value,la(P,u.value,c.value))},get availableLocales(){return Object.keys(p.value).sort()},messages:F,get modifiers(){return S},get pluralRules(){return L||{}},get isGlobal(){return a},get missingWarn(){return b},set missingWarn(G){b=G,P.missingWarn=b},get fallbackWarn(){return y},set fallbackWarn(G){y=G,P.fallbackWarn=y},get fallbackRoot(){return d},set fallbackRoot(G){d=G},get fallbackFormat(){return h},set fallbackFormat(G){h=G,P.fallbackFormat=h},get warnHtmlMessage(){return x},set warnHtmlMessage(G){x=G,P.warnHtmlMessage=G},get escapeParameter(){return A},set escapeParameter(G){A=G,P.escapeParameter=G},t:ie,getLocaleMessage:X,setLocaleMessage:J,mergeLocaleMessage:Z,getPostTranslationHandler:I,setPostTranslationHandler:ne,getMissingHandler:ge,setMissingHandler:C,[Mu]:E};return se.datetimeFormats=T,se.numberFormats=$,se.rt=le,se.te=O,se.tm=K,se.d=we,se.n=Me,se.getDateTimeFormat=Q,se.setDateTimeFormat=_,se.mergeDateTimeFormat=v,se.getNumberFormat=B,se.setNumberFormat=V,se.mergeNumberFormat=ue,se[Nu]=n,se[Fs]=Je,se[Ds]=ft,se[Bs]=Xe,se}function t0(e){const t=fe(e.locale)?e.locale:En,o=fe(e.fallbackLocale)||it(e.fallbackLocale)||Le(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:t,n=nt(e.missing)?e.missing:void 0,a=De(e.silentTranslationWarn)||Bo(e.silentTranslationWarn)?!e.silentTranslationWarn:!0,r=De(e.silentFallbackWarn)||Bo(e.silentFallbackWarn)?!e.silentFallbackWarn:!0,s=De(e.fallbackRoot)?e.fallbackRoot:!0,i=!!e.formatFallbackMessages,l=Le(e.modifiers)?e.modifiers:{},u=e.pluralizationRules,c=nt(e.postTranslation)?e.postTranslation:void 0,p=fe(e.warnHtmlInMessage)?e.warnHtmlInMessage!=="off":!0,g=!!e.escapeParameterHtml,w=De(e.sync)?e.sync:!0;let b=e.messages;if(Le(e.sharedMessages)){const A=e.sharedMessages;b=Object.keys(A).reduce((L,P)=>{const z=L[P]||(L[P]={});return Lt(z,A[P]),L},b||{})}const{__i18n:y,__root:d,__injectWithOption:h}=e,f=e.datetimeFormats,m=e.numberFormats,k=e.flatJson,x=e.translateExistCompatible;return{locale:t,fallbackLocale:o,messages:b,flatJson:k,datetimeFormats:f,numberFormats:m,missing:n,missingWarn:a,fallbackWarn:r,fallbackRoot:s,fallbackFormat:i,modifiers:l,pluralRules:u,postTranslation:c,warnHtmlMessage:p,escapeParameter:g,messageResolver:e.messageResolver,inheritLocale:w,translateExistCompatible:x,__i18n:y,__root:d,__injectWithOption:h}}function Us(e={},t){{const o=js(t0(e)),{__extender:n}=e,a={id:o.id,get locale(){return o.locale.value},set locale(r){o.locale.value=r},get fallbackLocale(){return o.fallbackLocale.value},set fallbackLocale(r){o.fallbackLocale.value=r},get messages(){return o.messages.value},get datetimeFormats(){return o.datetimeFormats.value},get numberFormats(){return o.numberFormats.value},get availableLocales(){return o.availableLocales},get formatter(){return{interpolate(){return[]}}},set formatter(r){},get missing(){return o.getMissingHandler()},set missing(r){o.setMissingHandler(r)},get silentTranslationWarn(){return De(o.missingWarn)?!o.missingWarn:o.missingWarn},set silentTranslationWarn(r){o.missingWarn=De(r)?!r:r},get silentFallbackWarn(){return De(o.fallbackWarn)?!o.fallbackWarn:o.fallbackWarn},set silentFallbackWarn(r){o.fallbackWarn=De(r)?!r:r},get modifiers(){return o.modifiers},get formatFallbackMessages(){return o.fallbackFormat},set formatFallbackMessages(r){o.fallbackFormat=r},get postTranslation(){return o.getPostTranslationHandler()},set postTranslation(r){o.setPostTranslationHandler(r)},get sync(){return o.inheritLocale},set sync(r){o.inheritLocale=r},get warnHtmlInMessage(){return o.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(r){o.warnHtmlMessage=r!=="off"},get escapeParameterHtml(){return o.escapeParameter},set escapeParameterHtml(r){o.escapeParameter=r},get preserveDirectiveContent(){return!0},set preserveDirectiveContent(r){},get pluralizationRules(){return o.pluralRules||{}},__composer:o,t(...r){const[s,i,l]=r,u={};let c=null,p=null;if(!fe(s))throw kt(bt.INVALID_ARGUMENT);const g=s;return fe(i)?u.locale=i:it(i)?c=i:Le(i)&&(p=i),it(l)?c=l:Le(l)&&(p=l),Reflect.apply(o.t,o,[g,c||p||{},u])},rt(...r){return Reflect.apply(o.rt,o,[...r])},tc(...r){const[s,i,l]=r,u={plural:1};let c=null,p=null;if(!fe(s))throw kt(bt.INVALID_ARGUMENT);const g=s;return fe(i)?u.locale=i:gt(i)?u.plural=i:it(i)?c=i:Le(i)&&(p=i),fe(l)?u.locale=l:it(l)?c=l:Le(l)&&(p=l),Reflect.apply(o.t,o,[g,c||p||{},u])},te(r,s){return o.te(r,s)},tm(r){return o.tm(r)},getLocaleMessage(r){return o.getLocaleMessage(r)},setLocaleMessage(r,s){o.setLocaleMessage(r,s)},mergeLocaleMessage(r,s){o.mergeLocaleMessage(r,s)},d(...r){return Reflect.apply(o.d,o,[...r])},getDateTimeFormat(r){return o.getDateTimeFormat(r)},setDateTimeFormat(r,s){o.setDateTimeFormat(r,s)},mergeDateTimeFormat(r,s){o.mergeDateTimeFormat(r,s)},n(...r){return Reflect.apply(o.n,o,[...r])},getNumberFormat(r){return o.getNumberFormat(r)},setNumberFormat(r,s){o.setNumberFormat(r,s)},mergeNumberFormat(r,s){o.mergeNumberFormat(r,s)},getChoiceIndex(r,s){return-1}};return a.__extender=n,a}}const Ks={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function o0({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((n,a)=>[...n,...a.type===Pe?a.children:[a]],[]):t.reduce((o,n)=>{const a=e[n];return a&&(o[n]=a()),o},Qe())}function ju(e){return Pe}const Uu=Yn({name:"i18n-t",props:Lt({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>gt(e)||!isNaN(e)}},Ks),setup(e,t){const{slots:o,attrs:n}=t,a=e.i18n||yt({useScope:e.scope,__useComponent:!0});return()=>{const r=Object.keys(o).filter(p=>p!=="_"),s=Qe();e.locale&&(s.locale=e.locale),e.plural!==void 0&&(s.plural=fe(e.plural)?+e.plural:e.plural);const i=o0(t,r),l=a[Fs](e.keypath,i,s),u=Lt(Qe(),n),c=fe(e.tag)||He(e.tag)?e.tag:ju();return cc(c,u,l)}}});function n0(e){return it(e)&&!fe(e[0])}function Ku(e,t,o,n){const{slots:a,attrs:r}=t;return()=>{const s={part:!0};let i=Qe();e.locale&&(s.locale=e.locale),fe(e.format)?s.key=e.format:He(e.format)&&(fe(e.format.key)&&(s.key=e.format.key),i=Object.keys(e.format).reduce((g,w)=>o.includes(w)?Lt(Qe(),g,{[w]:e.format[w]}):g,Qe()));const l=n(e.value,s,i);let u=[s.key];it(l)?u=l.map((g,w)=>{const b=a[g.type],y=b?b({[g.type]:g.value,index:w,parts:l}):[g.value];return n0(y)&&(y[0].key=`${g.type}-${w}`),y}):fe(l)&&(u=[l]);const c=Lt(Qe(),r),p=fe(e.tag)||He(e.tag)?e.tag:ju();return cc(p,c,u)}}const zu=Yn({name:"i18n-n",props:Lt({value:{type:Number,required:!0},format:{type:[String,Object]}},Ks),setup(e,t){const o=e.i18n||yt({useScope:e.scope,__useComponent:!0});return Ku(e,t,Lu,(...n)=>o[Bs](...n))}}),Hu=Yn({name:"i18n-d",props:Lt({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},Ks),setup(e,t){const o=e.i18n||yt({useScope:e.scope,__useComponent:!0});return Ku(e,t,$u,(...n)=>o[Ds](...n))}});function a0(e,t){const o=e;if(e.mode==="composition")return o.__getInstance(t)||e.global;{const n=o.__getInstance(t);return n!=null?n.__composer:e.global.__composer}}function r0(e){const t=s=>{const{instance:i,modifiers:l,value:u}=s;if(!i||!i.$)throw kt(bt.UNEXPECTED_ERROR);const c=a0(e,i.$),p=Vu(u);return[Reflect.apply(c.t,c,[...Wu(p)]),c]};return{created:(s,i)=>{const[l,u]=t(i);ir&&e.global===u&&(s.__i18nWatcher=ct(u.locale,()=>{i.instance&&i.instance.$forceUpdate()})),s.__composer=u,s.textContent=l},unmounted:s=>{ir&&s.__i18nWatcher&&(s.__i18nWatcher(),s.__i18nWatcher=void 0,delete s.__i18nWatcher),s.__composer&&(s.__composer=void 0,delete s.__composer)},beforeUpdate:(s,{value:i})=>{if(s.__composer){const l=s.__composer,u=Vu(i);s.textContent=Reflect.apply(l.t,l,[...Wu(u)])}},getSSRProps:s=>{const[i]=t(s);return{textContent:i}}}}function Vu(e){if(fe(e))return{path:e};if(Le(e)){if(!("path"in e))throw kt(bt.REQUIRED_VALUE,"path");return e}else throw kt(bt.INVALID_VALUE)}function Wu(e){const{path:t,locale:o,args:n,choice:a,plural:r}=e,s={},i=n||{};return fe(o)&&(s.locale=o),gt(a)&&(s.plural=a),gt(r)&&(s.plural=r),[t,i,s]}function s0(e,t,...o){const n=Le(o[0])?o[0]:{},a=!!n.useI18nComponentName;(De(n.globalInstall)?n.globalInstall:!0)&&([a?"i18n":Uu.name,"I18nT"].forEach(s=>e.component(s,Uu)),[zu.name,"I18nN"].forEach(s=>e.component(s,zu)),[Hu.name,"I18nD"].forEach(s=>e.component(s,Hu))),e.directive("t",r0(t))}function i0(e,t,o){return{beforeCreate(){const n=$o();if(!n)throw kt(bt.UNEXPECTED_ERROR);const a=this.$options;if(a.i18n){const r=a.i18n;if(a.__i18n&&(r.__i18n=a.__i18n),r.__root=t,this===this.$root)this.$i18n=Yu(e,r);else{r.__injectWithOption=!0,r.__extender=o.__vueI18nExtend,this.$i18n=Us(r);const s=this.$i18n;s.__extender&&(s.__disposer=s.__extender(this.$i18n))}}else if(a.__i18n)if(this===this.$root)this.$i18n=Yu(e,a);else{this.$i18n=Us({__i18n:a.__i18n,__injectWithOption:!0,__extender:o.__vueI18nExtend,__root:t});const r=this.$i18n;r.__extender&&(r.__disposer=r.__extender(this.$i18n))}else this.$i18n=e;a.__i18nGlobal&&Iu(t,a,a),this.$t=(...r)=>this.$i18n.t(...r),this.$rt=(...r)=>this.$i18n.rt(...r),this.$tc=(...r)=>this.$i18n.tc(...r),this.$te=(r,s)=>this.$i18n.te(r,s),this.$d=(...r)=>this.$i18n.d(...r),this.$n=(...r)=>this.$i18n.n(...r),this.$tm=r=>this.$i18n.tm(r),o.__setInstance(n,this.$i18n)},mounted(){},unmounted(){const n=$o();if(!n)throw kt(bt.UNEXPECTED_ERROR);const a=this.$i18n;delete this.$t,delete this.$rt,delete this.$tc,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,a.__disposer&&(a.__disposer(),delete a.__disposer,delete a.__extender),o.__deleteInstance(n),delete this.$i18n}}}function Yu(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[Mu](t.pluralizationRules||e.pluralizationRules);const o=hr(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(o).forEach(n=>e.mergeLocaleMessage(n,o[n])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(n=>e.mergeDateTimeFormat(n,t.datetimeFormats[n])),t.numberFormats&&Object.keys(t.numberFormats).forEach(n=>e.mergeNumberFormat(n,t.numberFormats[n])),e}const l0=Do("global-vue-i18n");function c0(e={},t){const o=__VUE_I18N_LEGACY_API__&&De(e.legacy)?e.legacy:__VUE_I18N_LEGACY_API__,n=De(e.globalInjection)?e.globalInjection:!0,a=__VUE_I18N_LEGACY_API__&&o?!!e.allowComposition:!0,r=new Map,[s,i]=u0(e,o),l=Do("");function u(g){return r.get(g)||null}function c(g,w){r.set(g,w)}function p(g){r.delete(g)}{const g={get mode(){return __VUE_I18N_LEGACY_API__&&o?"legacy":"composition"},get allowComposition(){return a},async install(w,...b){if(w.__VUE_I18N_SYMBOL__=l,w.provide(w.__VUE_I18N_SYMBOL__,g),Le(b[0])){const h=b[0];g.__composerExtend=h.__composerExtend,g.__vueI18nExtend=h.__vueI18nExtend}let y=null;!o&&n&&(y=_0(w,g.global)),__VUE_I18N_FULL_INSTALL__&&s0(w,g,...b),__VUE_I18N_LEGACY_API__&&o&&w.mixin(i0(i,i.__composer,g));const d=w.unmount;w.unmount=()=>{y&&y(),g.dispose(),d()}},get global(){return i},dispose(){s.stop()},__instances:r,__getInstance:u,__setInstance:c,__deleteInstance:p};return g}}function yt(e={}){const t=$o();if(t==null)throw kt(bt.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw kt(bt.NOT_INSTALLED);const o=d0(t),n=g0(o),a=Ru(t),r=p0(e,a);if(__VUE_I18N_LEGACY_API__&&o.mode==="legacy"&&!e.__useComponent){if(!o.allowComposition)throw kt(bt.NOT_AVAILABLE_IN_LEGACY_MODE);return b0(t,r,n,e)}if(r==="global")return Iu(n,e,a),n;if(r==="parent"){let l=f0(o,t,e.__useComponent);return l==null&&(l=n),l}const s=o;let i=s.__getInstance(t);if(i==null){const l=Lt({},e);"__i18n"in a&&(l.__i18n=a.__i18n),n&&(l.__root=n),i=js(l),s.__composerExtend&&(i[Gs]=s.__composerExtend(i)),m0(s,t,i),s.__setInstance(t,i)}return i}function u0(e,t,o){const n=Fr();{const a=__VUE_I18N_LEGACY_API__&&t?n.run(()=>Us(e)):n.run(()=>js(e));if(a==null)throw kt(bt.UNEXPECTED_ERROR);return[n,a]}}function d0(e){{const t=Fe(e.isCE?l0:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw kt(e.isCE?bt.NOT_INSTALLED_WITH_PROVIDE:bt.UNEXPECTED_ERROR);return t}}function p0(e,t){return lr(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function g0(e){return e.mode==="composition"?e.global:e.global.__composer}function f0(e,t,o=!1){let n=null;const a=t.root;let r=h0(t,o);for(;r!=null;){const s=e;if(e.mode==="composition")n=s.__getInstance(r);else if(__VUE_I18N_LEGACY_API__){const i=s.__getInstance(r);i!=null&&(n=i.__composer,o&&n&&!n[Nu]&&(n=null))}if(n!=null||a===r)break;r=r.parent}return n}function h0(e,t=!1){return e==null?null:t&&e.vnode.ctx||e.parent}function m0(e,t,o){co(()=>{},t),Wa(()=>{const n=o;e.__deleteInstance(t);const a=n[Gs];a&&(a(),delete n[Gs])},t)}function b0(e,t,o,n={}){const a=t==="local",r=fn(null);if(a&&e.proxy&&!(e.proxy.$options.i18n||e.proxy.$options.__i18n))throw kt(bt.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const s=De(n.inheritLocale)?n.inheritLocale:!fe(n.locale),i=de(!a||s?o.locale.value:fe(n.locale)?n.locale:En),l=de(!a||s?o.fallbackLocale.value:fe(n.fallbackLocale)||it(n.fallbackLocale)||Le(n.fallbackLocale)||n.fallbackLocale===!1?n.fallbackLocale:i.value),u=de(hr(i.value,n)),c=de(Le(n.datetimeFormats)?n.datetimeFormats:{[i.value]:{}}),p=de(Le(n.numberFormats)?n.numberFormats:{[i.value]:{}}),g=a?o.missingWarn:De(n.missingWarn)||Bo(n.missingWarn)?n.missingWarn:!0,w=a?o.fallbackWarn:De(n.fallbackWarn)||Bo(n.fallbackWarn)?n.fallbackWarn:!0,b=a?o.fallbackRoot:De(n.fallbackRoot)?n.fallbackRoot:!0,y=!!n.fallbackFormat,d=nt(n.missing)?n.missing:null,h=nt(n.postTranslation)?n.postTranslation:null,f=a?o.warnHtmlMessage:De(n.warnHtmlMessage)?n.warnHtmlMessage:!0,m=!!n.escapeParameter,k=a?o.modifiers:Le(n.modifiers)?n.modifiers:{},x=n.pluralRules||a&&o.pluralRules;function A(){return[i.value,l.value,u.value,c.value,p.value]}const S=te({get:()=>r.value?r.value.locale.value:i.value,set:R=>{r.value&&(r.value.locale.value=R),i.value=R}}),L=te({get:()=>r.value?r.value.fallbackLocale.value:l.value,set:R=>{r.value&&(r.value.fallbackLocale.value=R),l.value=R}}),P=te(()=>r.value?r.value.messages.value:u.value),z=te(()=>c.value),W=te(()=>p.value);function re(){return r.value?r.value.getPostTranslationHandler():h}function M(R){r.value&&r.value.setPostTranslationHandler(R)}function F(){return r.value?r.value.getMissingHandler():d}function T(R){r.value&&r.value.setMissingHandler(R)}function $(R){return A(),R()}function I(...R){return r.value?$(()=>Reflect.apply(r.value.t,null,[...R])):$(()=>"")}function ne(...R){return r.value?Reflect.apply(r.value.rt,null,[...R]):""}function ge(...R){return r.value?$(()=>Reflect.apply(r.value.d,null,[...R])):$(()=>"")}function C(...R){return r.value?$(()=>Reflect.apply(r.value.n,null,[...R])):$(()=>"")}function ae(R){return r.value?r.value.tm(R):{}}function ie(R,K){return r.value?r.value.te(R,K):!1}function le(R){return r.value?r.value.getLocaleMessage(R):{}}function we(R,K){r.value&&(r.value.setLocaleMessage(R,K),u.value[R]=K)}function Me(R,K){r.value&&r.value.mergeLocaleMessage(R,K)}function Re(R){return r.value?r.value.getDateTimeFormat(R):{}}function Oe(R,K){r.value&&(r.value.setDateTimeFormat(R,K),c.value[R]=K)}function Ie(R,K){r.value&&r.value.mergeDateTimeFormat(R,K)}function Je(R){return r.value?r.value.getNumberFormat(R):{}}function Xe(R,K){r.value&&(r.value.setNumberFormat(R,K),p.value[R]=K)}function ft(R,K){r.value&&r.value.mergeNumberFormat(R,K)}const E={get id(){return r.value?r.value.id:-1},locale:S,fallbackLocale:L,messages:P,datetimeFormats:z,numberFormats:W,get inheritLocale(){return r.value?r.value.inheritLocale:s},set inheritLocale(R){r.value&&(r.value.inheritLocale=R)},get availableLocales(){return r.value?r.value.availableLocales:Object.keys(u.value)},get modifiers(){return r.value?r.value.modifiers:k},get pluralRules(){return r.value?r.value.pluralRules:x},get isGlobal(){return r.value?r.value.isGlobal:!1},get missingWarn(){return r.value?r.value.missingWarn:g},set missingWarn(R){r.value&&(r.value.missingWarn=R)},get fallbackWarn(){return r.value?r.value.fallbackWarn:w},set fallbackWarn(R){r.value&&(r.value.missingWarn=R)},get fallbackRoot(){return r.value?r.value.fallbackRoot:b},set fallbackRoot(R){r.value&&(r.value.fallbackRoot=R)},get fallbackFormat(){return r.value?r.value.fallbackFormat:y},set fallbackFormat(R){r.value&&(r.value.fallbackFormat=R)},get warnHtmlMessage(){return r.value?r.value.warnHtmlMessage:f},set warnHtmlMessage(R){r.value&&(r.value.warnHtmlMessage=R)},get escapeParameter(){return r.value?r.value.escapeParameter:m},set escapeParameter(R){r.value&&(r.value.escapeParameter=R)},t:I,getPostTranslationHandler:re,setPostTranslationHandler:M,getMissingHandler:F,setMissingHandler:T,rt:ne,d:ge,n:C,tm:ae,te:ie,getLocaleMessage:le,setLocaleMessage:we,mergeLocaleMessage:Me,getDateTimeFormat:Re,setDateTimeFormat:Oe,mergeDateTimeFormat:Ie,getNumberFormat:Je,setNumberFormat:Xe,mergeNumberFormat:ft};function O(R){R.locale.value=i.value,R.fallbackLocale.value=l.value,Object.keys(u.value).forEach(K=>{R.mergeLocaleMessage(K,u.value[K])}),Object.keys(c.value).forEach(K=>{R.mergeDateTimeFormat(K,c.value[K])}),Object.keys(p.value).forEach(K=>{R.mergeNumberFormat(K,p.value[K])}),R.escapeParameter=m,R.fallbackFormat=y,R.fallbackRoot=b,R.fallbackWarn=w,R.missingWarn=g,R.warnHtmlMessage=f}return $l(()=>{if(e.proxy==null||e.proxy.$i18n==null)throw kt(bt.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const R=r.value=e.proxy.$i18n.__composer;t==="global"?(i.value=R.locale.value,l.value=R.fallbackLocale.value,u.value=R.messages.value,c.value=R.datetimeFormats.value,p.value=R.numberFormats.value):a&&O(R)}),E}const y0=["locale","fallbackLocale","availableLocales"],qu=["t","rt","d","n","tm","te"];function _0(e,t){const o=Object.create(null);return y0.forEach(a=>{const r=Object.getOwnPropertyDescriptor(t,a);if(!r)throw kt(bt.UNEXPECTED_ERROR);const s=st(r.value)?{get(){return r.value.value},set(i){r.value.value=i}}:{get(){return r.get&&r.get()}};Object.defineProperty(o,a,s)}),e.config.globalProperties.$i18n=o,qu.forEach(a=>{const r=Object.getOwnPropertyDescriptor(t,a);if(!r||!r.value)throw kt(bt.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${a}`,r)}),()=>{delete e.config.globalProperties.$i18n,qu.forEach(a=>{delete e.config.globalProperties[`$${a}`]})}}if(Xy(),__INTLIFY_JIT_COMPILATION__?du(Hy):du(zy),Iy(hy),Oy(su),__INTLIFY_PROD_DEVTOOLS__){const e=Co();e.__INTLIFY__=!0,Ay(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const v0=Object.assign({"./locales/ar/aria.json":yh,"./locales/ar/buttons.json":_h,"./locales/ar/detail.json":vh,"./locales/ar/legend.json":kh,"./locales/ar/messages.json":wh,"./locales/ar/options.json":xh,"./locales/ar/prayerLaps.json":Ah,"./locales/ar/regions.json":Sh,"./locales/ar/search.json":$h,"./locales/ar/tabs.json":Eh,"./locales/de/aria.json":Ch,"./locales/de/buttons.json":Lh,"./locales/de/detail.json":Th,"./locales/de/legend.json":Ph,"./locales/de/messages.json":Mh,"./locales/de/options.json":Nh,"./locales/de/prayerLaps.json":Rh,"./locales/de/regions.json":Ih,"./locales/de/search.json":Oh,"./locales/de/tabs.json":Fh,"./locales/en/aria.json":Dh,"./locales/en/buttons.json":Bh,"./locales/en/detail.json":Gh,"./locales/en/legend.json":jh,"./locales/en/messages.json":Uh,"./locales/en/options.json":Kh,"./locales/en/popup.json":zh,"./locales/en/prayerLaps.json":Hh,"./locales/en/regions.json":Vh,"./locales/en/search.json":Wh,"./locales/en/tabs.json":Yh,"./locales/es/aria.json":qh,"./locales/es/buttons.json":Jh,"./locales/es/detail.json":Xh,"./locales/es/legend.json":Zh,"./locales/es/messages.json":Qh,"./locales/es/options.json":em,"./locales/es/prayerLaps.json":tm,"./locales/es/regions.json":om,"./locales/es/search.json":nm,"./locales/es/tabs.json":am,"./locales/fr/aria.json":rm,"./locales/fr/buttons.json":sm,"./locales/fr/detail.json":im,"./locales/fr/legend.json":lm,"./locales/fr/messages.json":cm,"./locales/fr/options.json":um,"./locales/fr/popup.json":dm,"./locales/fr/prayerLaps.json":pm,"./locales/fr/regions.json":gm,"./locales/fr/search.json":fm,"./locales/fr/tabs.json":hm,"./locales/hi/aria.json":mm,"./locales/hi/buttons.json":bm,"./locales/hi/detail.json":ym,"./locales/hi/legend.json":_m,"./locales/hi/messages.json":vm,"./locales/hi/options.json":km,"./locales/hi/prayerLaps.json":wm,"./locales/hi/regions.json":xm,"./locales/hi/search.json":Am,"./locales/it/aria.json":Sm,"./locales/it/buttons.json":$m,"./locales/it/detail.json":Em,"./locales/it/legend.json":Cm,"./locales/it/messages.json":Lm,"./locales/it/options.json":Tm,"./locales/it/prayerLaps.json":Pm,"./locales/it/search.json":Mm,"./locales/pt/aria.json":Nm,"./locales/pt/buttons.json":Rm,"./locales/pt/detail.json":Im,"./locales/pt/legend.json":Om,"./locales/pt/messages.json":Fm,"./locales/pt/options.json":Dm,"./locales/pt/prayerLaps.json":Bm,"./locales/pt/regions.json":Gm,"./locales/pt/search.json":jm,"./locales/pt/tabs.json":Um,"./locales/ro/aria.json":Km,"./locales/ro/buttons.json":zm,"./locales/ro/detail.json":Hm,"./locales/ro/legend.json":Vm,"./locales/ro/messages.json":Wm,"./locales/ro/options.json":Ym,"./locales/ro/prayerLaps.json":qm,"./locales/ro/search.json":Jm,"./locales/ru/aria.json":Xm,"./locales/ru/buttons.json":Zm,"./locales/ru/detail.json":Qm,"./locales/ru/legend.json":eb,"./locales/ru/messages.json":tb,"./locales/ru/options.json":ob,"./locales/ru/prayerLaps.json":nb,"./locales/ru/regions.json":ab,"./locales/ru/search.json":rb,"./locales/ru/tabs.json":sb,"./locales/zh/aria.json":ib,"./locales/zh/buttons.json":lb,"./locales/zh/detail.json":cb,"./locales/zh/legend.json":ub,"./locales/zh/messages.json":db,"./locales/zh/options.json":pb,"./locales/zh/prayerLaps.json":gb,"./locales/zh/search.json":fb}),ua={};for(const[e,t]of Object.entries(v0)){const o=e.match(/\.\/locales\/([^/]+)\/([^/]+)\.json$/);if(!o)continue;const[,n,a]=o;ua[n]??(ua[n]={}),ua[n][a]=t}const Ju=["ar","de","en","es","fr","hi","it","pt","ro","ru","zh"];function k0(){var o;const t=(((o=document==null?void 0:document.documentElement)==null?void 0:o.lang)||"").split("-")[0].toLowerCase();return Ju.includes(t)?t:"en"}function w0(){return c0({legacy:!1,globalInjection:!0,locale:k0(),fallbackLocale:"en",messages:ua,missingWarn:!1,fallbackWarn:!1})}function wt(e,t){const o=t||x0(e);co(()=>{var i;const n=$o();if(!n)return;const a=(i=n.proxy)==null?void 0:i.$el;if(!a)return;const r=a.getRootNode();if(!(r instanceof ShadowRoot)||r.querySelector(`style[data-shadow-styles="${o}"]`))return;const s=document.createElement("style");s.setAttribute("data-shadow-styles",o),s.textContent=e,r.appendChild(s)})}function x0(e){let t=0;for(let o=0;o(t==null?void 0:t.theme)==="dark"),a=te(()=>{var d;return((d=o==null?void 0:o.value)==null?void 0:d.pinHintLabel)||"Tap a coloured dot — someone still needs prayer"}),r=de(!1),s=de(null);let i=null,l=null,u=null,c=null,p=null;function g(){r.value=!1}function w(d,h){var m;let f=d==null?void 0:d.parentElement;for(let k=0;f&&k<12;k++,f=f.parentElement){if(f===h||(m=f.classList)!=null&&m.contains("profile-loader"))return null;let x="";try{x=getComputedStyle(f).position}catch{}if(x&&x!=="static"){const A=f.getBoundingClientRect();if(A.height>=120&&A.width>=160)return f}}return null}function b(){const d=s.value;if(d)try{d.style.removeProperty("--pin-hint-lift");const h=d.getBoundingClientRect();if(!h.height)return;const f=Math.round(h.bottom-window.innerHeight);f>0&&d.style.setProperty("--pin-hint-lift",f+8+"px")}catch{}}function y(d){const h=s.value;if(!h||!(d!=null&&d.querySelector))return;let f=0;try{const k=d.querySelector(".mapboxgl-ctrl-bottom-right .mapboxgl-ctrl-attrib, .mapboxgl-ctrl-bottom-right .doxa-attribution, .doxa-attribution");if(k){const x=k.getBoundingClientRect(),A=h.parentElement,S=A?A.getBoundingClientRect():null;if(f=S?Math.max(x.height||0,S.bottom-x.top):x.height||0,p!==k&&typeof ResizeObserver<"u"){if(u)try{u.disconnect()}catch{}p=k,u=new ResizeObserver(()=>y(d)),u.observe(k)}}}catch{}const m=Math.min(Math.max(Math.ceil(f)||20,20),72);h.style.setProperty("--pin-hint-attrib-clear",m+"px"),b()}return co(()=>{var m,k,x;const d=$o(),h=(x=(k=(m=d==null?void 0:d.proxy)==null?void 0:m.$el)==null?void 0:k.getRootNode)==null?void 0:x.call(k);if(!h||typeof h.querySelector!="function")return;let f=0;i=setInterval(()=>{f++;const A=h.querySelector("canvas");A?(clearInterval(i),i=null,r.value=!0,lo(()=>{const S=w(A,h),L=s.value;if(S&&L&&L.parentElement!==S)try{S.appendChild(L),l=S}catch{}y(h),b();try{const P=s.value&&s.value.offsetParent||null;if(P&&typeof ResizeObserver<"u"){if(c)try{c.disconnect()}catch{}c=new ResizeObserver(()=>b()),c.observe(P)}}catch{}})):f>40&&(clearInterval(i),i=null)},300)}),uo(()=>{var d;if(i&&clearInterval(i),u){try{u.disconnect()}catch{}u=null}if(p=null,c){try{c.disconnect()}catch{}c=null}if(l&&((d=s.value)==null?void 0:d.parentElement)===l)try{l.removeChild(s.value)}catch{}l=null}),wt(` + */const e0="9.14.5";function t0(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(Eo().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(Eo().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_JIT_COMPILATION__!="boolean"&&(Eo().__INTLIFY_JIT_COMPILATION__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(Eo().__INTLIFY_DROP_MESSAGE_COMPILER__=!1),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(Eo().__INTLIFY_PROD_DEVTOOLS__=!1)}const o0=Ny.__EXTEND_POINT__,Lo=cr(o0);Lo(),Lo(),Lo(),Lo(),Lo(),Lo(),Lo(),Lo(),Lo();const Ru=Zt.__EXTEND_POINT__,Ft=cr(Ru),bt={UNEXPECTED_RETURN_TYPE:Ru,INVALID_ARGUMENT:Ft(),MUST_BE_CALL_SETUP_TOP:Ft(),NOT_INSTALLED:Ft(),NOT_AVAILABLE_IN_LEGACY_MODE:Ft(),REQUIRED_VALUE:Ft(),INVALID_VALUE:Ft(),CANNOT_SETUP_VUE_DEVTOOLS_PLUGIN:Ft(),NOT_INSTALLED_WITH_PROVIDE:Ft(),UNEXPECTED_ERROR:Ft(),NOT_COMPATIBLE_LEGACY_VUE_I18N:Ft(),BRIDGE_SUPPORT_VUE_2_ONLY:Ft(),MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION:Ft(),NOT_AVAILABLE_COMPOSITION_IN_LEGACY:Ft(),__EXTEND_POINT__:Ft()};function kt(e,...t){return xn(e,null,void 0)}const Ds=Fo("__translateVNode"),Bs=Fo("__datetimeParts"),Gs=Fo("__numberParts"),Iu=Fo("__setPluralRules"),Ou=Fo("__injectWithOption"),js=Fo("__dispose");function ca(e){if(!Ke(e)||go(e))return e;for(const t in e)if(Jt(e,t))if(!t.includes("."))Ke(e[t])&&ca(e[t]);else{const o=t.split("."),n=o.length-1;let a=e,r=!1;for(let s=0;s{if("locale"in i&&"resource"in i){const{locale:l,resource:u}=i;l?(s[l]=s[l]||Xe(),dr(u,s[l])):dr(u,s)}else fe(i)&&dr(JSON.parse(i),s)}),a==null&&r)for(const i in s)Jt(s,i)&&ca(s[i]);return s}function Fu(e){return e.type}function Du(e,t,o){let n=Ke(t.messages)?t.messages:Xe();"__i18nGlobal"in o&&(n=hr(e.locale.value,{messages:n,__i18n:o.__i18nGlobal}));const a=Object.keys(n);a.length&&a.forEach(r=>{e.mergeLocaleMessage(r,n[r])});{if(Ke(t.datetimeFormats)){const r=Object.keys(t.datetimeFormats);r.length&&r.forEach(s=>{e.mergeDateTimeFormat(s,t.datetimeFormats[s])})}if(Ke(t.numberFormats)){const r=Object.keys(t.numberFormats);r.length&&r.forEach(s=>{e.mergeNumberFormat(s,t.numberFormats[s])})}}}function Bu(e){return He(Zn,null,e,0)}const Gu="__INTLIFY_META__",ju=()=>[],n0=()=>!1;let Uu=0;function Ku(e){return(t,o,n,a)=>e(o,n,So()||void 0,a)}const a0=()=>{const e=So();let t=null;return e&&(t=Fu(e)[Gu])?{[Gu]:t}:null};function Us(e={},t){const{__root:o,__injectWithOption:n}=e,a=o===void 0,r=e.flatJson,s=ir?de:gn,i=!!e.translateExistCompatible;let l=De(e.inheritLocale)?e.inheritLocale:!0;const u=s(o&&l?o.locale.value:fe(e.locale)?e.locale:$n),c=s(o&&l?o.fallbackLocale.value:fe(e.fallbackLocale)||rt(e.fallbackLocale)||Le(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:u.value),p=s(hr(u.value,e)),f=s(Le(e.datetimeFormats)?e.datetimeFormats:{[u.value]:{}}),k=s(Le(e.numberFormats)?e.numberFormats:{[u.value]:{}});let w=o?o.missingWarn:De(e.missingWarn)||Do(e.missingWarn)?e.missingWarn:!0,m=o?o.fallbackWarn:De(e.fallbackWarn)||Do(e.fallbackWarn)?e.fallbackWarn:!0,d=o?o.fallbackRoot:De(e.fallbackRoot)?e.fallbackRoot:!0,g=!!e.fallbackFormat,h=tt(e.missing)?e.missing:null,b=tt(e.missing)?Ku(e.missing):null,_=tt(e.postTranslation)?e.postTranslation:null,x=o?o.warnHtmlMessage:De(e.warnHtmlMessage)?e.warnHtmlMessage:!0,A=!!e.escapeParameter;const S=o?o.modifiers:Le(e.modifiers)?e.modifiers:{};let L=e.pluralRules||o&&o.pluralRules,T;T=(()=>{a&&_u(null);const G={version:e0,locale:u.value,fallbackLocale:c.value,messages:p.value,modifiers:S,pluralRules:L,missing:b===null?void 0:b,missingWarn:w,fallbackWarn:m,fallbackFormat:g,unresolving:!0,postTranslation:_===null?void 0:_,warnHtmlMessage:x,escapeParameter:A,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};G.datetimeFormats=f.value,G.numberFormats=k.value,G.__datetimeFormatters=Le(T)?T.__datetimeFormatters:void 0,G.__numberFormatters=Le(T)?T.__numberFormatters:void 0;const q=zy(G);return a&&_u(q),q})(),la(T,u.value,c.value);function Y(){return[u.value,c.value,p.value,f.value,k.value]}const re=oe({get:()=>u.value,set:G=>{u.value=G,T.locale=u.value}}),M=oe({get:()=>c.value,set:G=>{c.value=G,T.fallbackLocale=c.value,la(T,u.value,G)}}),F=oe(()=>p.value),P=oe(()=>f.value),$=oe(()=>k.value);function I(){return tt(_)?_:null}function ne(G){_=G,T.postTranslation=G}function ge(){return h}function C(G){G!==null&&(b=Ku(G)),h=G,T.missing=b}const ae=(G,q,me,Ae,Ge,D)=>{Y();let K;try{__INTLIFY_PROD_DEVTOOLS__,a||(T.fallbackContext=o?Ky():void 0),K=G(T)}finally{__INTLIFY_PROD_DEVTOOLS__,a||(T.fallbackContext=void 0)}if(me!=="translate exists"&&pt(K)&&K===fr||me==="translate exists"&&!K){const[he,ve]=q();return o&&d?Ae(o):Ge(he)}else{if(D(K))return K;throw kt(bt.UNEXPECTED_RETURN_TYPE)}};function ie(...G){return ae(q=>Reflect.apply(Su,null,[q,...G]),()=>Is(...G),"translate",q=>Reflect.apply(q.t,q,[...G]),q=>q,q=>fe(q))}function ce(...G){const[q,me,Ae]=G;if(Ae&&!Ke(Ae))throw kt(bt.INVALID_ARGUMENT);return ie(q,me,Ct({resolvedMessage:!0},Ae||{}))}function we(...G){return ae(q=>Reflect.apply(Cu,null,[q,...G]),()=>Os(...G),"datetime format",q=>Reflect.apply(q.d,q,[...G]),()=>du,q=>fe(q))}function Me(...G){return ae(q=>Reflect.apply(Pu,null,[q,...G]),()=>Fs(...G),"number format",q=>Reflect.apply(q.n,q,[...G]),()=>du,q=>fe(q))}function Re(G){return G.map(q=>fe(q)||pt(q)||De(q)?Bu(String(q)):q)}const Ie={normalize:Re,interpolate:G=>G,type:"vnode"};function qe(...G){return ae(q=>{let me;const Ae=q;try{Ae.processor=Ie,me=Reflect.apply(Su,null,[Ae,...G])}finally{Ae.processor=null}return me},()=>Is(...G),"translate",q=>q[Ds](...G),q=>[Bu(q)],q=>rt(q))}function Je(...G){return ae(q=>Reflect.apply(Pu,null,[q,...G]),()=>Fs(...G),"number format",q=>q[Gs](...G),ju,q=>fe(q)||rt(q))}function ft(...G){return ae(q=>Reflect.apply(Cu,null,[q,...G]),()=>Os(...G),"datetime format",q=>q[Bs](...G),ju,q=>fe(q)||rt(q))}function E(G){L=G,T.pluralRules=L}function O(G,q){return ae(()=>{if(!G)return!1;const me=fe(q)?q:u.value,Ae=X(me),Ge=T.messageResolver(Ae,G);return i?Ge!=null:go(Ge)||Ht(Ge)||fe(Ge)},()=>[G],"translate exists",me=>Reflect.apply(me.te,me,[G,q]),n0,me=>De(me))}function R(G){let q=null;const me=cu(T,c.value,u.value);for(let Ae=0;Ae{l&&(u.value=G,T.locale=G,la(T,u.value,c.value))}),it(o.fallbackLocale,G=>{l&&(c.value=G,T.fallbackLocale=G,la(T,u.value,c.value))}));const se={id:Uu,locale:re,fallbackLocale:M,get inheritLocale(){return l},set inheritLocale(G){l=G,G&&o&&(u.value=o.locale.value,c.value=o.fallbackLocale.value,la(T,u.value,c.value))},get availableLocales(){return Object.keys(p.value).sort()},messages:F,get modifiers(){return S},get pluralRules(){return L||{}},get isGlobal(){return a},get missingWarn(){return w},set missingWarn(G){w=G,T.missingWarn=w},get fallbackWarn(){return m},set fallbackWarn(G){m=G,T.fallbackWarn=m},get fallbackRoot(){return d},set fallbackRoot(G){d=G},get fallbackFormat(){return g},set fallbackFormat(G){g=G,T.fallbackFormat=g},get warnHtmlMessage(){return x},set warnHtmlMessage(G){x=G,T.warnHtmlMessage=G},get escapeParameter(){return A},set escapeParameter(G){A=G,T.escapeParameter=G},t:ie,getLocaleMessage:X,setLocaleMessage:J,mergeLocaleMessage:Z,getPostTranslationHandler:I,setPostTranslationHandler:ne,getMissingHandler:ge,setMissingHandler:C,[Iu]:E};return se.datetimeFormats=P,se.numberFormats=$,se.rt=ce,se.te=O,se.tm=H,se.d=we,se.n=Me,se.getDateTimeFormat=ee,se.setDateTimeFormat=y,se.mergeDateTimeFormat=v,se.getNumberFormat=B,se.setNumberFormat=W,se.mergeNumberFormat=ue,se[Ou]=n,se[Ds]=qe,se[Bs]=ft,se[Gs]=Je,se}function r0(e){const t=fe(e.locale)?e.locale:$n,o=fe(e.fallbackLocale)||rt(e.fallbackLocale)||Le(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:t,n=tt(e.missing)?e.missing:void 0,a=De(e.silentTranslationWarn)||Do(e.silentTranslationWarn)?!e.silentTranslationWarn:!0,r=De(e.silentFallbackWarn)||Do(e.silentFallbackWarn)?!e.silentFallbackWarn:!0,s=De(e.fallbackRoot)?e.fallbackRoot:!0,i=!!e.formatFallbackMessages,l=Le(e.modifiers)?e.modifiers:{},u=e.pluralizationRules,c=tt(e.postTranslation)?e.postTranslation:void 0,p=fe(e.warnHtmlInMessage)?e.warnHtmlInMessage!=="off":!0,f=!!e.escapeParameterHtml,k=De(e.sync)?e.sync:!0;let w=e.messages;if(Le(e.sharedMessages)){const A=e.sharedMessages;w=Object.keys(A).reduce((L,T)=>{const z=L[T]||(L[T]={});return Ct(z,A[T]),L},w||{})}const{__i18n:m,__root:d,__injectWithOption:g}=e,h=e.datetimeFormats,b=e.numberFormats,_=e.flatJson,x=e.translateExistCompatible;return{locale:t,fallbackLocale:o,messages:w,flatJson:_,datetimeFormats:h,numberFormats:b,missing:n,missingWarn:a,fallbackWarn:r,fallbackRoot:s,fallbackFormat:i,modifiers:l,pluralRules:u,postTranslation:c,warnHtmlMessage:p,escapeParameter:f,messageResolver:e.messageResolver,inheritLocale:k,translateExistCompatible:x,__i18n:m,__root:d,__injectWithOption:g}}function Ks(e={},t){{const o=Us(r0(e)),{__extender:n}=e,a={id:o.id,get locale(){return o.locale.value},set locale(r){o.locale.value=r},get fallbackLocale(){return o.fallbackLocale.value},set fallbackLocale(r){o.fallbackLocale.value=r},get messages(){return o.messages.value},get datetimeFormats(){return o.datetimeFormats.value},get numberFormats(){return o.numberFormats.value},get availableLocales(){return o.availableLocales},get formatter(){return{interpolate(){return[]}}},set formatter(r){},get missing(){return o.getMissingHandler()},set missing(r){o.setMissingHandler(r)},get silentTranslationWarn(){return De(o.missingWarn)?!o.missingWarn:o.missingWarn},set silentTranslationWarn(r){o.missingWarn=De(r)?!r:r},get silentFallbackWarn(){return De(o.fallbackWarn)?!o.fallbackWarn:o.fallbackWarn},set silentFallbackWarn(r){o.fallbackWarn=De(r)?!r:r},get modifiers(){return o.modifiers},get formatFallbackMessages(){return o.fallbackFormat},set formatFallbackMessages(r){o.fallbackFormat=r},get postTranslation(){return o.getPostTranslationHandler()},set postTranslation(r){o.setPostTranslationHandler(r)},get sync(){return o.inheritLocale},set sync(r){o.inheritLocale=r},get warnHtmlInMessage(){return o.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(r){o.warnHtmlMessage=r!=="off"},get escapeParameterHtml(){return o.escapeParameter},set escapeParameterHtml(r){o.escapeParameter=r},get preserveDirectiveContent(){return!0},set preserveDirectiveContent(r){},get pluralizationRules(){return o.pluralRules||{}},__composer:o,t(...r){const[s,i,l]=r,u={};let c=null,p=null;if(!fe(s))throw kt(bt.INVALID_ARGUMENT);const f=s;return fe(i)?u.locale=i:rt(i)?c=i:Le(i)&&(p=i),rt(l)?c=l:Le(l)&&(p=l),Reflect.apply(o.t,o,[f,c||p||{},u])},rt(...r){return Reflect.apply(o.rt,o,[...r])},tc(...r){const[s,i,l]=r,u={plural:1};let c=null,p=null;if(!fe(s))throw kt(bt.INVALID_ARGUMENT);const f=s;return fe(i)?u.locale=i:pt(i)?u.plural=i:rt(i)?c=i:Le(i)&&(p=i),fe(l)?u.locale=l:rt(l)?c=l:Le(l)&&(p=l),Reflect.apply(o.t,o,[f,c||p||{},u])},te(r,s){return o.te(r,s)},tm(r){return o.tm(r)},getLocaleMessage(r){return o.getLocaleMessage(r)},setLocaleMessage(r,s){o.setLocaleMessage(r,s)},mergeLocaleMessage(r,s){o.mergeLocaleMessage(r,s)},d(...r){return Reflect.apply(o.d,o,[...r])},getDateTimeFormat(r){return o.getDateTimeFormat(r)},setDateTimeFormat(r,s){o.setDateTimeFormat(r,s)},mergeDateTimeFormat(r,s){o.mergeDateTimeFormat(r,s)},n(...r){return Reflect.apply(o.n,o,[...r])},getNumberFormat(r){return o.getNumberFormat(r)},setNumberFormat(r,s){o.setNumberFormat(r,s)},mergeNumberFormat(r,s){o.mergeNumberFormat(r,s)},getChoiceIndex(r,s){return-1}};return a.__extender=n,a}}const zs={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function s0({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((n,a)=>[...n,...a.type===Pe?a.children:[a]],[]):t.reduce((o,n)=>{const a=e[n];return a&&(o[n]=a()),o},Xe())}function zu(e){return Pe}const Hu=Yn({name:"i18n-t",props:Ct({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>pt(e)||!isNaN(e)}},zs),setup(e,t){const{slots:o,attrs:n}=t,a=e.i18n||yt({useScope:e.scope,__useComponent:!0});return()=>{const r=Object.keys(o).filter(p=>p!=="_"),s=Xe();e.locale&&(s.locale=e.locale),e.plural!==void 0&&(s.plural=fe(e.plural)?+e.plural:e.plural);const i=s0(t,r),l=a[Ds](e.keypath,i,s),u=Ct(Xe(),n),c=fe(e.tag)||Ke(e.tag)?e.tag:zu();return pc(c,u,l)}}});function i0(e){return rt(e)&&!fe(e[0])}function Vu(e,t,o,n){const{slots:a,attrs:r}=t;return()=>{const s={part:!0};let i=Xe();e.locale&&(s.locale=e.locale),fe(e.format)?s.key=e.format:Ke(e.format)&&(fe(e.format.key)&&(s.key=e.format.key),i=Object.keys(e.format).reduce((f,k)=>o.includes(k)?Ct(Xe(),f,{[k]:e.format[k]}):f,Xe()));const l=n(e.value,s,i);let u=[s.key];rt(l)?u=l.map((f,k)=>{const w=a[f.type],m=w?w({[f.type]:f.value,index:k,parts:l}):[f.value];return i0(m)&&(m[0].key=`${f.type}-${k}`),m}):fe(l)&&(u=[l]);const c=Ct(Xe(),r),p=fe(e.tag)||Ke(e.tag)?e.tag:zu();return pc(p,c,u)}}const Wu=Yn({name:"i18n-n",props:Ct({value:{type:Number,required:!0},format:{type:[String,Object]}},zs),setup(e,t){const o=e.i18n||yt({useScope:e.scope,__useComponent:!0});return Vu(e,t,Mu,(...n)=>o[Gs](...n))}}),Yu=Yn({name:"i18n-d",props:Ct({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},zs),setup(e,t){const o=e.i18n||yt({useScope:e.scope,__useComponent:!0});return Vu(e,t,Lu,(...n)=>o[Bs](...n))}});function l0(e,t){const o=e;if(e.mode==="composition")return o.__getInstance(t)||e.global;{const n=o.__getInstance(t);return n!=null?n.__composer:e.global.__composer}}function c0(e){const t=s=>{const{instance:i,modifiers:l,value:u}=s;if(!i||!i.$)throw kt(bt.UNEXPECTED_ERROR);const c=l0(e,i.$),p=qu(u);return[Reflect.apply(c.t,c,[...Ju(p)]),c]};return{created:(s,i)=>{const[l,u]=t(i);ir&&e.global===u&&(s.__i18nWatcher=it(u.locale,()=>{i.instance&&i.instance.$forceUpdate()})),s.__composer=u,s.textContent=l},unmounted:s=>{ir&&s.__i18nWatcher&&(s.__i18nWatcher(),s.__i18nWatcher=void 0,delete s.__i18nWatcher),s.__composer&&(s.__composer=void 0,delete s.__composer)},beforeUpdate:(s,{value:i})=>{if(s.__composer){const l=s.__composer,u=qu(i);s.textContent=Reflect.apply(l.t,l,[...Ju(u)])}},getSSRProps:s=>{const[i]=t(s);return{textContent:i}}}}function qu(e){if(fe(e))return{path:e};if(Le(e)){if(!("path"in e))throw kt(bt.REQUIRED_VALUE,"path");return e}else throw kt(bt.INVALID_VALUE)}function Ju(e){const{path:t,locale:o,args:n,choice:a,plural:r}=e,s={},i=n||{};return fe(o)&&(s.locale=o),pt(a)&&(s.plural=a),pt(r)&&(s.plural=r),[t,i,s]}function u0(e,t,...o){const n=Le(o[0])?o[0]:{},a=!!n.useI18nComponentName;(De(n.globalInstall)?n.globalInstall:!0)&&([a?"i18n":Hu.name,"I18nT"].forEach(s=>e.component(s,Hu)),[Wu.name,"I18nN"].forEach(s=>e.component(s,Wu)),[Yu.name,"I18nD"].forEach(s=>e.component(s,Yu))),e.directive("t",c0(t))}function d0(e,t,o){return{beforeCreate(){const n=So();if(!n)throw kt(bt.UNEXPECTED_ERROR);const a=this.$options;if(a.i18n){const r=a.i18n;if(a.__i18n&&(r.__i18n=a.__i18n),r.__root=t,this===this.$root)this.$i18n=Xu(e,r);else{r.__injectWithOption=!0,r.__extender=o.__vueI18nExtend,this.$i18n=Ks(r);const s=this.$i18n;s.__extender&&(s.__disposer=s.__extender(this.$i18n))}}else if(a.__i18n)if(this===this.$root)this.$i18n=Xu(e,a);else{this.$i18n=Ks({__i18n:a.__i18n,__injectWithOption:!0,__extender:o.__vueI18nExtend,__root:t});const r=this.$i18n;r.__extender&&(r.__disposer=r.__extender(this.$i18n))}else this.$i18n=e;a.__i18nGlobal&&Du(t,a,a),this.$t=(...r)=>this.$i18n.t(...r),this.$rt=(...r)=>this.$i18n.rt(...r),this.$tc=(...r)=>this.$i18n.tc(...r),this.$te=(r,s)=>this.$i18n.te(r,s),this.$d=(...r)=>this.$i18n.d(...r),this.$n=(...r)=>this.$i18n.n(...r),this.$tm=r=>this.$i18n.tm(r),o.__setInstance(n,this.$i18n)},mounted(){},unmounted(){const n=So();if(!n)throw kt(bt.UNEXPECTED_ERROR);const a=this.$i18n;delete this.$t,delete this.$rt,delete this.$tc,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,a.__disposer&&(a.__disposer(),delete a.__disposer,delete a.__extender),o.__deleteInstance(n),delete this.$i18n}}}function Xu(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[Iu](t.pluralizationRules||e.pluralizationRules);const o=hr(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(o).forEach(n=>e.mergeLocaleMessage(n,o[n])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(n=>e.mergeDateTimeFormat(n,t.datetimeFormats[n])),t.numberFormats&&Object.keys(t.numberFormats).forEach(n=>e.mergeNumberFormat(n,t.numberFormats[n])),e}const p0=Fo("global-vue-i18n");function g0(e={},t){const o=__VUE_I18N_LEGACY_API__&&De(e.legacy)?e.legacy:__VUE_I18N_LEGACY_API__,n=De(e.globalInjection)?e.globalInjection:!0,a=__VUE_I18N_LEGACY_API__&&o?!!e.allowComposition:!0,r=new Map,[s,i]=f0(e,o),l=Fo("");function u(f){return r.get(f)||null}function c(f,k){r.set(f,k)}function p(f){r.delete(f)}{const f={get mode(){return __VUE_I18N_LEGACY_API__&&o?"legacy":"composition"},get allowComposition(){return a},async install(k,...w){if(k.__VUE_I18N_SYMBOL__=l,k.provide(k.__VUE_I18N_SYMBOL__,f),Le(w[0])){const g=w[0];f.__composerExtend=g.__composerExtend,f.__vueI18nExtend=g.__vueI18nExtend}let m=null;!o&&n&&(m=x0(k,f.global)),__VUE_I18N_FULL_INSTALL__&&u0(k,f,...w),__VUE_I18N_LEGACY_API__&&o&&k.mixin(d0(i,i.__composer,f));const d=k.unmount;k.unmount=()=>{m&&m(),f.dispose(),d()}},get global(){return i},dispose(){s.stop()},__instances:r,__getInstance:u,__setInstance:c,__deleteInstance:p};return f}}function yt(e={}){const t=So();if(t==null)throw kt(bt.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw kt(bt.NOT_INSTALLED);const o=h0(t),n=b0(o),a=Fu(t),r=m0(e,a);if(__VUE_I18N_LEGACY_API__&&o.mode==="legacy"&&!e.__useComponent){if(!o.allowComposition)throw kt(bt.NOT_AVAILABLE_IN_LEGACY_MODE);return k0(t,r,n,e)}if(r==="global")return Du(n,e,a),n;if(r==="parent"){let l=y0(o,t,e.__useComponent);return l==null&&(l=n),l}const s=o;let i=s.__getInstance(t);if(i==null){const l=Ct({},e);"__i18n"in a&&(l.__i18n=a.__i18n),n&&(l.__root=n),i=Us(l),s.__composerExtend&&(i[js]=s.__composerExtend(i)),v0(s,t,i),s.__setInstance(t,i)}return i}function f0(e,t,o){const n=Dr();{const a=__VUE_I18N_LEGACY_API__&&t?n.run(()=>Ks(e)):n.run(()=>Us(e));if(a==null)throw kt(bt.UNEXPECTED_ERROR);return[n,a]}}function h0(e){{const t=Fe(e.isCE?p0:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw kt(e.isCE?bt.NOT_INSTALLED_WITH_PROVIDE:bt.UNEXPECTED_ERROR);return t}}function m0(e,t){return lr(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function b0(e){return e.mode==="composition"?e.global:e.global.__composer}function y0(e,t,o=!1){let n=null;const a=t.root;let r=_0(t,o);for(;r!=null;){const s=e;if(e.mode==="composition")n=s.__getInstance(r);else if(__VUE_I18N_LEGACY_API__){const i=s.__getInstance(r);i!=null&&(n=i.__composer,o&&n&&!n[Ou]&&(n=null))}if(n!=null||a===r)break;r=r.parent}return n}function _0(e,t=!1){return e==null?null:t&&e.vnode.ctx||e.parent}function v0(e,t,o){io(()=>{},t),Wa(()=>{const n=o;e.__deleteInstance(t);const a=n[js];a&&(a(),delete n[js])},t)}function k0(e,t,o,n={}){const a=t==="local",r=gn(null);if(a&&e.proxy&&!(e.proxy.$options.i18n||e.proxy.$options.__i18n))throw kt(bt.MUST_DEFINE_I18N_OPTION_IN_ALLOW_COMPOSITION);const s=De(n.inheritLocale)?n.inheritLocale:!fe(n.locale),i=de(!a||s?o.locale.value:fe(n.locale)?n.locale:$n),l=de(!a||s?o.fallbackLocale.value:fe(n.fallbackLocale)||rt(n.fallbackLocale)||Le(n.fallbackLocale)||n.fallbackLocale===!1?n.fallbackLocale:i.value),u=de(hr(i.value,n)),c=de(Le(n.datetimeFormats)?n.datetimeFormats:{[i.value]:{}}),p=de(Le(n.numberFormats)?n.numberFormats:{[i.value]:{}}),f=a?o.missingWarn:De(n.missingWarn)||Do(n.missingWarn)?n.missingWarn:!0,k=a?o.fallbackWarn:De(n.fallbackWarn)||Do(n.fallbackWarn)?n.fallbackWarn:!0,w=a?o.fallbackRoot:De(n.fallbackRoot)?n.fallbackRoot:!0,m=!!n.fallbackFormat,d=tt(n.missing)?n.missing:null,g=tt(n.postTranslation)?n.postTranslation:null,h=a?o.warnHtmlMessage:De(n.warnHtmlMessage)?n.warnHtmlMessage:!0,b=!!n.escapeParameter,_=a?o.modifiers:Le(n.modifiers)?n.modifiers:{},x=n.pluralRules||a&&o.pluralRules;function A(){return[i.value,l.value,u.value,c.value,p.value]}const S=oe({get:()=>r.value?r.value.locale.value:i.value,set:R=>{r.value&&(r.value.locale.value=R),i.value=R}}),L=oe({get:()=>r.value?r.value.fallbackLocale.value:l.value,set:R=>{r.value&&(r.value.fallbackLocale.value=R),l.value=R}}),T=oe(()=>r.value?r.value.messages.value:u.value),z=oe(()=>c.value),Y=oe(()=>p.value);function re(){return r.value?r.value.getPostTranslationHandler():g}function M(R){r.value&&r.value.setPostTranslationHandler(R)}function F(){return r.value?r.value.getMissingHandler():d}function P(R){r.value&&r.value.setMissingHandler(R)}function $(R){return A(),R()}function I(...R){return r.value?$(()=>Reflect.apply(r.value.t,null,[...R])):$(()=>"")}function ne(...R){return r.value?Reflect.apply(r.value.rt,null,[...R]):""}function ge(...R){return r.value?$(()=>Reflect.apply(r.value.d,null,[...R])):$(()=>"")}function C(...R){return r.value?$(()=>Reflect.apply(r.value.n,null,[...R])):$(()=>"")}function ae(R){return r.value?r.value.tm(R):{}}function ie(R,H){return r.value?r.value.te(R,H):!1}function ce(R){return r.value?r.value.getLocaleMessage(R):{}}function we(R,H){r.value&&(r.value.setLocaleMessage(R,H),u.value[R]=H)}function Me(R,H){r.value&&r.value.mergeLocaleMessage(R,H)}function Re(R){return r.value?r.value.getDateTimeFormat(R):{}}function Oe(R,H){r.value&&(r.value.setDateTimeFormat(R,H),c.value[R]=H)}function Ie(R,H){r.value&&r.value.mergeDateTimeFormat(R,H)}function qe(R){return r.value?r.value.getNumberFormat(R):{}}function Je(R,H){r.value&&(r.value.setNumberFormat(R,H),p.value[R]=H)}function ft(R,H){r.value&&r.value.mergeNumberFormat(R,H)}const E={get id(){return r.value?r.value.id:-1},locale:S,fallbackLocale:L,messages:T,datetimeFormats:z,numberFormats:Y,get inheritLocale(){return r.value?r.value.inheritLocale:s},set inheritLocale(R){r.value&&(r.value.inheritLocale=R)},get availableLocales(){return r.value?r.value.availableLocales:Object.keys(u.value)},get modifiers(){return r.value?r.value.modifiers:_},get pluralRules(){return r.value?r.value.pluralRules:x},get isGlobal(){return r.value?r.value.isGlobal:!1},get missingWarn(){return r.value?r.value.missingWarn:f},set missingWarn(R){r.value&&(r.value.missingWarn=R)},get fallbackWarn(){return r.value?r.value.fallbackWarn:k},set fallbackWarn(R){r.value&&(r.value.missingWarn=R)},get fallbackRoot(){return r.value?r.value.fallbackRoot:w},set fallbackRoot(R){r.value&&(r.value.fallbackRoot=R)},get fallbackFormat(){return r.value?r.value.fallbackFormat:m},set fallbackFormat(R){r.value&&(r.value.fallbackFormat=R)},get warnHtmlMessage(){return r.value?r.value.warnHtmlMessage:h},set warnHtmlMessage(R){r.value&&(r.value.warnHtmlMessage=R)},get escapeParameter(){return r.value?r.value.escapeParameter:b},set escapeParameter(R){r.value&&(r.value.escapeParameter=R)},t:I,getPostTranslationHandler:re,setPostTranslationHandler:M,getMissingHandler:F,setMissingHandler:P,rt:ne,d:ge,n:C,tm:ae,te:ie,getLocaleMessage:ce,setLocaleMessage:we,mergeLocaleMessage:Me,getDateTimeFormat:Re,setDateTimeFormat:Oe,mergeDateTimeFormat:Ie,getNumberFormat:qe,setNumberFormat:Je,mergeNumberFormat:ft};function O(R){R.locale.value=i.value,R.fallbackLocale.value=l.value,Object.keys(u.value).forEach(H=>{R.mergeLocaleMessage(H,u.value[H])}),Object.keys(c.value).forEach(H=>{R.mergeDateTimeFormat(H,c.value[H])}),Object.keys(p.value).forEach(H=>{R.mergeNumberFormat(H,p.value[H])}),R.escapeParameter=b,R.fallbackFormat=m,R.fallbackRoot=w,R.fallbackWarn=k,R.missingWarn=f,R.warnHtmlMessage=h}return Ll(()=>{if(e.proxy==null||e.proxy.$i18n==null)throw kt(bt.NOT_AVAILABLE_COMPOSITION_IN_LEGACY);const R=r.value=e.proxy.$i18n.__composer;t==="global"?(i.value=R.locale.value,l.value=R.fallbackLocale.value,u.value=R.messages.value,c.value=R.datetimeFormats.value,p.value=R.numberFormats.value):a&&O(R)}),E}const w0=["locale","fallbackLocale","availableLocales"],Zu=["t","rt","d","n","tm","te"];function x0(e,t){const o=Object.create(null);return w0.forEach(a=>{const r=Object.getOwnPropertyDescriptor(t,a);if(!r)throw kt(bt.UNEXPECTED_ERROR);const s=at(r.value)?{get(){return r.value.value},set(i){r.value.value=i}}:{get(){return r.get&&r.get()}};Object.defineProperty(o,a,s)}),e.config.globalProperties.$i18n=o,Zu.forEach(a=>{const r=Object.getOwnPropertyDescriptor(t,a);if(!r||!r.value)throw kt(bt.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${a}`,r)}),()=>{delete e.config.globalProperties.$i18n,Zu.forEach(a=>{delete e.config.globalProperties[`$${a}`]})}}if(t0(),__INTLIFY_JIT_COMPILATION__?fu(qy):fu(Yy),By(_y),Gy(cu),__INTLIFY_PROD_DEVTOOLS__){const e=Eo();e.__INTLIFY__=!0,Cy(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const A0=Object.assign({"./locales/ar/aria.json":wh,"./locales/ar/buttons.json":xh,"./locales/ar/detail.json":Ah,"./locales/ar/legend.json":Sh,"./locales/ar/messages.json":$h,"./locales/ar/options.json":Eh,"./locales/ar/prayerLaps.json":Ch,"./locales/ar/regions.json":Lh,"./locales/ar/search.json":Th,"./locales/ar/tabs.json":Ph,"./locales/de/aria.json":Mh,"./locales/de/buttons.json":Nh,"./locales/de/detail.json":Rh,"./locales/de/legend.json":Ih,"./locales/de/messages.json":Oh,"./locales/de/options.json":Fh,"./locales/de/prayerLaps.json":Dh,"./locales/de/regions.json":Bh,"./locales/de/search.json":Gh,"./locales/de/tabs.json":jh,"./locales/en/aria.json":Uh,"./locales/en/buttons.json":Kh,"./locales/en/detail.json":zh,"./locales/en/legend.json":Hh,"./locales/en/messages.json":Vh,"./locales/en/options.json":Wh,"./locales/en/popup.json":Yh,"./locales/en/prayerLaps.json":qh,"./locales/en/regions.json":Jh,"./locales/en/search.json":Xh,"./locales/en/tabs.json":Zh,"./locales/es/aria.json":Qh,"./locales/es/buttons.json":em,"./locales/es/detail.json":tm,"./locales/es/legend.json":om,"./locales/es/messages.json":nm,"./locales/es/options.json":am,"./locales/es/prayerLaps.json":rm,"./locales/es/regions.json":sm,"./locales/es/search.json":im,"./locales/es/tabs.json":lm,"./locales/fr/aria.json":cm,"./locales/fr/buttons.json":um,"./locales/fr/detail.json":dm,"./locales/fr/legend.json":pm,"./locales/fr/messages.json":gm,"./locales/fr/options.json":fm,"./locales/fr/popup.json":hm,"./locales/fr/prayerLaps.json":mm,"./locales/fr/regions.json":bm,"./locales/fr/search.json":ym,"./locales/fr/tabs.json":_m,"./locales/hi/aria.json":vm,"./locales/hi/buttons.json":km,"./locales/hi/detail.json":wm,"./locales/hi/legend.json":xm,"./locales/hi/messages.json":Am,"./locales/hi/options.json":Sm,"./locales/hi/prayerLaps.json":$m,"./locales/hi/regions.json":Em,"./locales/hi/search.json":Cm,"./locales/it/aria.json":Lm,"./locales/it/buttons.json":Tm,"./locales/it/detail.json":Pm,"./locales/it/legend.json":Mm,"./locales/it/messages.json":Nm,"./locales/it/options.json":Rm,"./locales/it/prayerLaps.json":Im,"./locales/it/search.json":Om,"./locales/pt/aria.json":Fm,"./locales/pt/buttons.json":Dm,"./locales/pt/detail.json":Bm,"./locales/pt/legend.json":Gm,"./locales/pt/messages.json":jm,"./locales/pt/options.json":Um,"./locales/pt/prayerLaps.json":Km,"./locales/pt/regions.json":zm,"./locales/pt/search.json":Hm,"./locales/pt/tabs.json":Vm,"./locales/ro/aria.json":Wm,"./locales/ro/buttons.json":Ym,"./locales/ro/detail.json":qm,"./locales/ro/legend.json":Jm,"./locales/ro/messages.json":Xm,"./locales/ro/options.json":Zm,"./locales/ro/prayerLaps.json":Qm,"./locales/ro/search.json":eb,"./locales/ru/aria.json":tb,"./locales/ru/buttons.json":ob,"./locales/ru/detail.json":nb,"./locales/ru/legend.json":ab,"./locales/ru/messages.json":rb,"./locales/ru/options.json":sb,"./locales/ru/prayerLaps.json":ib,"./locales/ru/regions.json":lb,"./locales/ru/search.json":cb,"./locales/ru/tabs.json":ub,"./locales/zh/aria.json":db,"./locales/zh/buttons.json":pb,"./locales/zh/detail.json":gb,"./locales/zh/legend.json":fb,"./locales/zh/messages.json":hb,"./locales/zh/options.json":mb,"./locales/zh/prayerLaps.json":bb,"./locales/zh/search.json":yb}),ua={};for(const[e,t]of Object.entries(A0)){const o=e.match(/\.\/locales\/([^/]+)\/([^/]+)\.json$/);if(!o)continue;const[,n,a]=o;ua[n]??(ua[n]={}),ua[n][a]=t}const Qu=["ar","de","en","es","fr","hi","it","pt","ro","ru","zh"];function S0(){var o;const t=(((o=document==null?void 0:document.documentElement)==null?void 0:o.lang)||"").split("-")[0].toLowerCase();return Qu.includes(t)?t:"en"}function $0(){return g0({legacy:!1,globalInjection:!0,locale:S0(),fallbackLocale:"en",messages:ua,missingWarn:!1,fallbackWarn:!1})}function wt(e,t){const o=t||E0(e);io(()=>{var i;const n=So();if(!n)return;const a=(i=n.proxy)==null?void 0:i.$el;if(!a)return;const r=a.getRootNode();if(!(r instanceof ShadowRoot)||r.querySelector(`style[data-shadow-styles="${o}"]`))return;const s=document.createElement("style");s.setAttribute("data-shadow-styles",o),s.textContent=e,r.appendChild(s)})}function E0(e){let t=0;for(let o=0;o(t==null?void 0:t.theme)==="dark"),a=oe(()=>{var d;return((d=o==null?void 0:o.value)==null?void 0:d.pinHintLabel)||"Tap a coloured dot — someone still needs prayer"}),r=de(!1),s=de(null);let i=null,l=null,u=null,c=null,p=null;function f(){r.value=!1}function k(d,g){var b;let h=d==null?void 0:d.parentElement;for(let _=0;h&&_<12;_++,h=h.parentElement){if(h===g||(b=h.classList)!=null&&b.contains("profile-loader"))return null;let x="";try{x=getComputedStyle(h).position}catch{}if(x&&x!=="static"){const A=h.getBoundingClientRect();if(A.height>=120&&A.width>=160)return h}}return null}function w(){const d=s.value;if(d)try{d.style.removeProperty("--pin-hint-lift");const g=d.getBoundingClientRect();if(!g.height)return;const h=Math.round(g.bottom-window.innerHeight);h>0&&d.style.setProperty("--pin-hint-lift",h+8+"px")}catch{}}function m(d){const g=s.value;if(!g||!(d!=null&&d.querySelector))return;let h=0;try{const _=d.querySelector(".mapboxgl-ctrl-bottom-right .mapboxgl-ctrl-attrib, .mapboxgl-ctrl-bottom-right .doxa-attribution, .doxa-attribution");if(_){const x=_.getBoundingClientRect(),A=g.parentElement,S=A?A.getBoundingClientRect():null;if(h=S?Math.max(x.height||0,S.bottom-x.top):x.height||0,p!==_&&typeof ResizeObserver<"u"){if(u)try{u.disconnect()}catch{}p=_,u=new ResizeObserver(()=>m(d)),u.observe(_)}}}catch{}const b=Math.min(Math.max(Math.ceil(h)||20,20),72);g.style.setProperty("--pin-hint-attrib-clear",b+"px"),w()}return io(()=>{var b,_,x;const d=So(),g=(x=(_=(b=d==null?void 0:d.proxy)==null?void 0:b.$el)==null?void 0:_.getRootNode)==null?void 0:x.call(_);if(!g||typeof g.querySelector!="function")return;let h=0;i=setInterval(()=>{h++;const A=g.querySelector("canvas");A?(clearInterval(i),i=null,r.value=!0,so(()=>{const S=k(A,g),L=s.value;if(S&&L&&L.parentElement!==S)try{S.appendChild(L),l=S}catch{}m(g),w();try{const T=s.value&&s.value.offsetParent||null;if(T&&typeof ResizeObserver<"u"){if(c)try{c.disconnect()}catch{}c=new ResizeObserver(()=>w()),c.observe(T)}}catch{}})):h>40&&(clearInterval(i),i=null)},300)}),lo(()=>{var d;if(i&&clearInterval(i),u){try{u.disconnect()}catch{}u=null}if(p=null,c){try{c.disconnect()}catch{}c=null}if(l&&((d=s.value)==null?void 0:d.parentElement)===l)try{l.removeChild(s.value)}catch{}l=null}),wt(` .pin-hint { position: absolute; left: 50%; bottom: calc(var(--pin-hint-attrib-clear, 20px) + 12px + var(--pin-hint-lift, 0px)); transform: translateX(-50%); z-index: 2147482000; pointer-events: none; @@ -69,7 +69,7 @@ @media (prefers-reduced-motion: reduce) { .pin-hint, .pin-hint-pill, .pin-hint-dot::after { animation: none !important; } } -`,"pin-hint"),(d,h)=>r.value?(H(),ee("div",{key:0,ref_key:"hintEl",ref:s,class:Ne(["pin-hint",{dark:n.value}]),role:"status"},[N("span",A0,[h[0]||(h[0]=N("span",{class:"pin-hint-dot","aria-hidden":"true"},null,-1)),mt(" "+pe(a.value)+" ",1),N("button",{class:"pin-hint-x",type:"button","aria-label":"Dismiss hint",onClick:g},"×")])],2)):ye("",!0)}},$0=!1;let E0=0;const C0=ws("ui",{state:()=>({_storeInstanceId:++E0,theme:"light",colorScheme:"default",reducedMotion:!1,highContrast:!1,activeTab:"doxa-regions",sidebarCollapsed:!1,mobileMenuOpen:!1,legendState:"collapsed",_customLegendHeight:null,searchMode:!1,hamburgerMenuOpen:!1,legendMode:"prayer",prayerFilter:null,engagementFilter:null,adoptionFilter:null,religionFilter:null,selectedPeopleGroup:null,breakpoint:"desktop",windowSize:{width:window.innerWidth,height:window.innerHeight},toasts:[],nextToastId:1,toastDuration:5e3,openModals:[],modalData:new Map,isGlobalLoading:!1,globalLoadingMessage:"Loading...",loadingStates:new Map,interactionHistory:[],maxHistoryLength:20,keyboardShortcutsEnabled:!0,screenReaderAnnouncement:"",focusTrapActive:!1,debugMode:!1,showPerformanceOverlay:!1}),getters:{isDarkTheme:e=>!1,isMobile:e=>e.breakpoint==="mobile",isTablet:e=>e.breakpoint==="tablet",isDesktop:e=>e.breakpoint==="desktop"||e.breakpoint==="wide",legendHeight:e=>e._customLegendHeight?e._customLegendHeight:e.legendState==="collapsed"?"48px":e.legendState==="open"?"30%":e.legendState==="fullyOpen"?"calc(100% - 80px)":"48px",caretRotation:e=>e.legendState==="collapsed"?0:90,showPullTab:e=>e.legendState==="open"||e.legendState==="fullyOpen",getToastsByType:e=>t=>e.toasts.filter(o=>o.type===t),hasOpenModal:e=>e.openModals.length>0,topModal:e=>e.openModals.length===0?null:e.openModals[e.openModals.length-1],isModalOpen:e=>t=>e.openModals.includes(t),isAnyLoading:e=>e.isGlobalLoading||e.loadingStates.size>0,isLoading:e=>t=>e.loadingStates.get(t)||!1},actions:{setTheme(e){if(!["light","dark","auto"].includes(e))return;e="light",this.theme=e;const o=this.isDarkTheme;document.documentElement.setAttribute("data-theme",o?"dark":"light");try{localStorage.setItem("theme",e)}catch{}},toggleTheme(){const e=this.theme==="light"?"dark":"light";this.setTheme(e)},setColorScheme(e){this.colorScheme=e,document.documentElement.setAttribute("data-color-scheme",e)},toggleReducedMotion(){this.reducedMotion=!this.reducedMotion,document.documentElement.setAttribute("data-reduced-motion",this.reducedMotion)},toggleHighContrast(){this.highContrast=!this.highContrast,document.documentElement.setAttribute("data-high-contrast",this.highContrast)},setActiveTab(e){this.activeTab=e,this.addToHistory({type:"tab-change",tabId:e,timestamp:Date.now()})},toggleSidebar(){this.sidebarCollapsed=!this.sidebarCollapsed},openMobileMenu(){this.mobileMenuOpen=!0},closeMobileMenu(){this.mobileMenuOpen=!1},setLegendMode(e){["prayer","detail"].includes(e)&&(this.legendMode=e)},setPrayerFilter(e){[null,"noPrayer","hasPrayer","fullPrayer"].includes(e)&&(this.prayerFilter=e)},setEngagementFilter(e){[null,"notEngaged","hasEngagement"].includes(e)&&(this.engagementFilter=e)},setAdoptionFilter(e){[null,"notAdopted","hasAdoption"].includes(e)&&(this.adoptionFilter=e)},setReligionFilter(e){[null,"C","M","H","B","E","J","S","N","O","U"].includes(e)&&(this.religionFilter=e)},selectPeopleGroup(e){this.selectedPeopleGroup=e,e?(this._legendStateBeforeDetail=this.legendState,this.legendState="open",this._customLegendHeight=null,this.setLegendMode("detail")):(this.legendState=this._legendStateBeforeDetail||"open",this._customLegendHeight=null,this.setLegendMode("prayer"))},setLegendState(e){["collapsed","open","fullyOpen"].includes(e)&&(this.legendState=e)},toggleSearchMode(){this.searchMode=!this.searchMode},setSearchMode(e){this.searchMode=e},toggleHamburgerMenu(){this.hamburgerMenuOpen=!this.hamburgerMenuOpen},updateBreakpoint(e){let t;e<768?t="mobile":e<1024?t="tablet":e<1920?t="desktop":t="wide",t!==this.breakpoint&&(this.breakpoint=t)},updateWindowSize(e,t){this.windowSize.width=e,this.windowSize.height=t,this.updateBreakpoint(e)},showToast(e){const{message:t,type:o="info",duration:n=this.toastDuration,action:a=null,persistent:r=!1}=e,s={id:this.nextToastId++,message:t,type:o,duration:n,action:a,persistent:r,createdAt:Date.now()};return this.toasts.push(s),!r&&n>0&&setTimeout(()=>{this.removeToast(s.id)},n),s.id},showSuccess(e,t={}){return this.showToast({message:e,type:"success",...t})},showError(e,t={}){return this.showToast({message:e,type:"error",duration:7e3,...t})},showWarning(e,t={}){return this.showToast({message:e,type:"warning",...t})},showInfo(e,t={}){return this.showToast({message:e,type:"info",...t})},removeToast(e){const t=this.toasts.findIndex(o=>o.id===e);t!==-1&&this.toasts.splice(t,1)},clearAllToasts(){this.toasts=[]},openModal(e,t={}){this.openModals.includes(e)||(this.openModals.push(e),this.modalData.set(e,t),this.focusTrapActive=!0)},closeModal(e=null){if(e){const t=this.openModals.indexOf(e);t!==-1&&(this.openModals.splice(t,1),this.modalData.delete(e))}else{const t=this.openModals.pop();t&&this.modalData.delete(t)}this.openModals.length===0&&(this.focusTrapActive=!1)},closeAllModals(){this.openModals=[],this.modalData.clear(),this.focusTrapActive=!1},getModalData(e){return this.modalData.get(e)},showGlobalLoading(e="Loading..."){this.isGlobalLoading=!0,this.globalLoadingMessage=e},hideGlobalLoading(){this.isGlobalLoading=!1},setLoading(e,t=!0){t?this.loadingStates.set(e,!0):this.loadingStates.delete(e)},addToHistory(e){this.interactionHistory.push(e),this.interactionHistory.length>this.maxHistoryLength&&this.interactionHistory.shift()},clearHistory(){this.interactionHistory=[]},announce(e,t="polite"){this.screenReaderAnnouncement=e,setTimeout(()=>{this.screenReaderAnnouncement===e&&(this.screenReaderAnnouncement="")},1e3)},toggleKeyboardShortcuts(){this.keyboardShortcutsEnabled=!this.keyboardShortcutsEnabled},toggleDebugMode(){this.debugMode=!this.debugMode},togglePerformanceOverlay(){this.showPerformanceOverlay=!this.showPerformanceOverlay},toggleLegend(){this.legendState==="fullyOpen"?this.legendState="open":this.legendState==="open"?this.legendState="collapsed":this.legendState="open",this._customLegendHeight=null},openLegend(){this.legendState="open",this._customLegendHeight=null},fullyOpenLegend(){this.legendState="fullyOpen",this._customLegendHeight=null},collapseLegend(){this.legendState="collapsed",this._customLegendHeight=null},setLegendHeight(e){this._customLegendHeight=e},handleLegendItemClick(){this.legendState==="fullyOpen"&&(this.legendState="open")},enableSearchMode(){this.searchMode=!0},disableSearchMode(){this.searchMode=!1},toggleHamburgerMenu(){this.hamburgerMenuOpen=!this.hamburgerMenuOpen},openHamburgerMenu(){this.hamburgerMenuOpen=!0},closeHamburgerMenu(){this.hamburgerMenuOpen=!1},init(){let e=null;try{e=localStorage.getItem("theme")}catch{}e&&this.setTheme(e),new ResizeObserver(o=>{for(const n of o)this.updateWindowSize(n.contentRect.width,n.contentRect.height)}).observe(document.documentElement),window.matchMedia&&(window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",o=>{this.theme==="auto"&&document.documentElement.setAttribute("data-theme",o.matches?"dark":"light")}),window.matchMedia("(prefers-reduced-motion: reduce)").addEventListener("change",o=>{this.reducedMotion=o.matches,document.documentElement.setAttribute("data-reduced-motion",o.matches)}))}}}),L0=ws("map",{state:()=>({maps:{},activeMapId:null,selectedRegion:null,selectedFamily:null,selectedAffinityBlock:null,selectedLanguage:null,selectedDialect:null,activeLegendTab:"family",selectedResource:null,selectedPeopleGroup:null,selectedPinIds:[],globalFilters:{},searchQuery:"",autoFly:{isActive:!1,speed:1,interval:5e3,currentIndex:0,items:[],timerId:null},guidedTour:{isActive:!1,currentStep:0,steps:[]},showClusters:!1,clusterMode:"region",clusterFilterProperty:null,clusterFilterValue:null,flySpeed:"normal",fullscreenMapId:null,preferences:{theme:"light",defaultMapStyle:"streets",enableAnimations:!0,autoSavePreferences:!0}}),getters:{getMapById:e=>t=>e.maps[t],activeMap:e=>e.activeMapId?e.maps[e.activeMapId]:null,hasMap:e=>t=>t in e.maps,allMapIds:e=>Object.keys(e.maps),hasSelection:e=>!!(e.selectedRegion||e.selectedFamily||e.selectedAffinityBlock||e.selectedPeopleGroup),isAutoFlying:e=>e.autoFly.isActive,isGuidedTourActive:e=>e.guidedTour.isActive,isMapFullscreen:e=>t=>e.fullscreenMapId===t},actions:{registerMap(e,t,o={}){let n=1.5;o.zoom!==void 0?n=o.zoom:t&&typeof t.getZoom=="function"&&(n=t.getZoom());let a=[0,0];if(o.center)a=o.center;else if(t&&typeof t.getCenter=="function"){const r=t.getCenter();r&&(a=[r.lng,r.lat])}this.maps[e]={instance:t,config:o,isReady:!1,zoom:n,center:a,registeredAt:Date.now()},this.activeMapId||(this.activeMapId=e)},setMapReady(e){const t=this.maps[e];t&&(t.isReady=!0)},updateMapState(e,t){const o=this.maps[e];o&&Object.assign(o,t)},unregisterMap(e){if(delete this.maps[e],this.activeMapId===e){const t=this.allMapIds;this.activeMapId=t.length>0?t[0]:null}},setActiveMap(e){e in this.maps&&(this.activeMapId=e)},selectRegion(e){this.selectedFamily=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedRegion=e},selectFamily(e){this.selectedRegion=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedLanguage=null,this.selectedDialect=null,this.selectedFamily=e},setActiveLegendTab(e){this.activeLegendTab=e},selectLanguage(e){this.selectedRegion=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedFamily=null,this.selectedDialect=null,this.selectedLanguage=e},selectDialect(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedLanguage=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedDialect=e},selectAffinityBlock(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedPeopleGroup=null,this.selectedAffinityBlock=e},selectPeopleGroup(e){this.selectedPeopleGroup=e},selectResource(e){this.selectedRegion=null,this.selectedFamily=null,this.selectedAffinityBlock=null,this.selectedPeopleGroup=null,this.selectedResource===e?this.selectedResource=null:this.selectedResource=e},clearSelections(){this.selectedRegion=null,this.selectedFamily=null,this.selectedLanguage=null,this.selectedDialect=null,this.selectedAffinityBlock=null,this.selectedResource=null,this.selectedPeopleGroup=null,this.selectedPinIds=[],this.showClusters=!1,this.clusterMode="region"},setSelectedPinIds(e){this.selectedPinIds=e||[]},setFilter(e,t){this.globalFilters[e]=t},removeFilter(e){delete this.globalFilters[e]},clearFilters(){this.globalFilters={},this.searchQuery=""},setSearchQuery(e){this.searchQuery=e},startAutoFly(e,t=1){this.stopAutoFly(),this.autoFly.isActive=!0,this.autoFly.speed=t,this.autoFly.items=e,this.autoFly.currentIndex=0},stopAutoFly(){this.autoFly.timerId&&(clearInterval(this.autoFly.timerId),this.autoFly.timerId=null),this.autoFly.isActive=!1,this.autoFly.currentIndex=0},setAutoFlySpeed(e){this.autoFly.speed=Math.max(.5,Math.min(2,e))},nextAutoFlyItem(){if(!this.autoFly.isActive||this.autoFly.items.length===0)return;this.autoFly.currentIndex=(this.autoFly.currentIndex+1)%this.autoFly.items.length;const e=this.autoFly.items[this.autoFly.currentIndex];e.type==="region"?this.selectRegion(e):e.type==="family"&&this.selectFamily(e)},toggleClusters(e){typeof e=="boolean"?this.showClusters=e:this.showClusters=!this.showClusters},setClusterMode(e){["region","language-family","affinity-block","mst","resource"].includes(e)&&(this.clusterMode=e)},setClusterFilter(e,t){this.clusterFilterProperty=e||null,this.clusterFilterValue=t||null},clearClusterFilter(){this.clusterFilterProperty=null,this.clusterFilterValue=null},setFlySpeed(e){["slow","normal","fast"].includes(e)&&(this.flySpeed=e)},setSelectedFamily(e){this.selectFamily(e)},clearSelectedFamily(){this.selectFamily(null)},setSelectedRegion(e){this.selectRegion(e)},clearSelectedRegion(){this.selectRegion(null)},clearSelectedResource(){this.selectResource(null)},clearSelectedLanguage(){this.selectLanguage(null)},clearSelectedDialect(){this.selectDialect(null)},toggleFullscreen(e){this.fullscreenMapId===e?this.fullscreenMapId=null:this.fullscreenMapId=e},loadPreferences(){try{const e=localStorage.getItem("mapUserPreferences");if(e){const t=JSON.parse(e);this.preferences={...this.preferences,...t}}}catch(e){console.error("[mapStore] Failed to load preferences:",e)}},savePreferences(){try{localStorage.setItem("mapUserPreferences",JSON.stringify(this.preferences))}catch(e){console.error("[mapStore] Failed to save preferences:",e)}},setPreference(e,t){this.preferences[e]=t,this.preferences.autoSavePreferences&&this.savePreferences()}}}),T0=ws("data",{state:()=>({sources:{},loadingStates:{}}),actions:{async load(e,t){if(!this.sources[e]){this.loadingStates[e]={isLoading:!0,error:null};try{const o=await t();this.sources[e]=qo({features:o,timestamp:Date.now()}),this.loadingStates[e]={isLoading:!1,error:null}}catch(o){console.error(`[dataStore] Failed to load source "${e}":`,o),this.loadingStates[e]={isLoading:!1,error:o}}}},clearSource(e){delete this.sources[e],delete this.loadingStates[e]},cacheSourceData(e,t){this.sources[e]=qo({features:t.normalizedData||[],timestamp:t.timestamp||Date.now()})},hasSourceData(e){return!!this.sources[e]},getSourceData(e){return this.sources[e]?{normalizedData:this.sources[e].features}:null}},getters:{getData:e=>t=>{var o;return((o=e.sources[t])==null?void 0:o.features)??null},isLoading:e=>t=>{var o;return((o=e.loadingStates[t])==null?void 0:o.isLoading)??!1},getError:e=>t=>{var o;return((o=e.loadingStates[t])==null?void 0:o.error)??null}}}),da={_meta:{_comment:"Single source of truth for data-source connections across all doxa-maps bundles.",_comment_token:"Mapbox access token is fetched at runtime from window.MAP_TOKEN_URL (same modular pattern as window.MAP_APP_API_URL). Not hardcoded to any host — set mapboxTokenUrl below or override window.MAP_TOKEN_URL on the host page.",mapboxTokenUrl:"window.MAP_TOKEN_URL"},activeSource:"pray-tools",sources:{"pray-tools":{id:"pray-tools",name:"Prayer.Tools API",type:"rest-api",description:"pray.doxa.life live API — people-group prayer, engagement, and adoption data. Base URL read from window.MAP_APP_API_URL or VITE_API_BASE_URL at runtime.",endpoints:{bulk:"/api/people-groups/list",detail:"/api/people-groups/detail/{slug}",statistics:"/api/people-groups/statistics"},queryParams:{lang:"en"},defaultFields:["slug","name","latitude","longitude","wagf_region","wagf_block","wagf_member","rop1","imb_reg_of_people_2","imb_reg_of_people_25","imb_reg_of_people_3","country_code","religion","population","has_photo","image_url","people_praying","people_committed","adopted_by_churches","engagement_status","imb_gsec","primary_language","imb_language_family","imb_language_class","imb_language_speakers"],pollFields:["slug","people_praying"],pollInterval:3e5,fallbackSourceId:null,fieldMappings:{uniqueId:"slug",slug:"slug",name:"name",latitude:"latitude",longitude:"longitude",wagfRegion:"wagf_region",doxaRegion:"wagf_region",wagfBlock:"wagf_block",wagfMember:"wagf_member",affinityBlock:"rop1",countryIso:"country_code",religion:"religion",religionCode:"religion",population:"population",hasPhoto:"has_photo",imageUrl:"image_url",photoUrl:"image_url",peoplePraying:"people_praying",peopleCommitted:"people_committed",engagementStatus:"engagement_status",adoptionStatus:"adopted_by_churches",language:"primary_language",cluster:"imb_reg_of_people_2",peopleGroup:"imb_reg_of_people_25",peopleGroupCountry:"imb_reg_of_people_3",languageFamily:"imb_language_family",languageClass:"imb_language_class",languageSpeakers:"imb_language_speakers"},imageConfig:{useField:"imageUrl",fallbackField:null,fallbackUrlTemplate:null,placeholderUrl:"https://www.peoplegroups.org/images/pgphotosearch/NoImageAvailable_search.jpg",useSvgPlaceholder:!0}},"doxa-csv":{id:"doxa-csv",name:"DOXA People Groups CSV",type:"csv",path:"assets/data/Joshua-project-ids-Doxa-1439.csv",description:"People groups dataset from DOXA / Joshua Project",fieldMappings:{uniqueId:"ROP3",peopleGroupId:"ROP3",countryCode:"ROG",peopleId3:"PeopleID3",name:"Name",displayName:"NmDisp",alternateName:"NmAlt",description:"PeopleDesc",locationDescription:"LocationDe",country:"Ctry",countryIso:"ISOalpha3",region:"Regn",subRegion:"RegnSub",wagfRegion:"WAGF Region",doxaRegion:"WAGF Region",wagfBlock:"WAGF BLOCK",affinityBloc:"Affbloc",affinityBlock:"ROP1",affinityCode:"AffCd",affinityName:"Aff",peopleCluster:"PplClstr",ethneName:"Ethne",latitude:"Latitude",longitude:"Longitude",population:"Pop",populationClass:"PopCls",status:"Status",engagementStatus:"EngStat",evangelicalLevel:"EvngLvl",gsec:"GSEC",gsecBrief:"GSECbrf",gsecLong:"GSEClng",spiScore:"SPI",spiDescription:"SPIdesc",language:"Lang",languageCode:"ROL",languageFamily:"LangFamily",religion:"Rlgn",religionCode:"ROR",religionDescription:"RORdesc",religionBase:"RlgnBs",religionDiv:"RlgnDiv",bible:"Bible",jesusFilm:"Jesus",radio:"Radio",gospel:"Gospel",audio:"Audio",stories:"Stories",resourcesTotal:"ResTot",bibleLevel:"LvlBible",yearPublished:"YrPub",photoCredit:"PicCrdt",photoUrl:"PicURL",hasPhoto:"Photo",isIndigenous:"Indigenous"},imageConfig:{useField:"photoUrl",fallbackField:"peopleId3",fallbackUrlTemplate:"https://joshuaproject.net/assets/media/profiles/photos/p{peopleId3}.jpg",placeholderUrl:"https://www.peoplegroups.org/images/pgphotosearch/NoImageAvailable_search.jpg"}}},systemFields:{uniqueId:{description:"Unique identifier per row (slug for API, ROP3+ROG for CSV)",required:!0},peopleGroupId:{description:"People group ID — same group can appear in multiple countries",required:!0},name:{description:"People group display name",required:!0},latitude:{description:"Latitude coordinate for map pin",required:!0},longitude:{description:"Longitude coordinate for map pin",required:!0},engagementStatus:{description:"Boolean — true if engaged_status = 'engaged'",required:!1},adoptionStatus:{description:"Boolean — true if adopted_by_churches > 0",required:!1},peoplePraying:{description:"Number of people currently praying for this group — from pray-tools API",required:!1},peopleCommitted:{description:"Raw count of committed workers for this group — source of engagementStatus",required:!1},languageFamily:{description:"Language family name",required:!1},religion:{description:"Primary religion",required:!1},population:{description:"Population count",required:!1},doxaRegion:{description:"WAGF/DOXA region name",required:!1},photoUrl:{description:"URL to people group photo",required:!1},description:{description:"People group description text",required:!1}}},P0=".profile-loader[data-v-ba19fc13]{border-radius:var(--map-radius-corners, var(--map-radius, 0px));width:100%;height:100%;min-height:var(--profile-min-h, 100dvh);position:relative}.profile-error[data-v-ba19fc13]{padding:1rem;background:#fff3cd;border:1px solid #ffc107;border-radius:4px;font-family:monospace;font-size:13px}",Ln=(e,t)=>{const o=e.__vccOpts||e;for(const[n,a]of t)o[n]=a;return o},M0={class:"profile-loader"},N0={key:0,class:"profile-error"},R0={key:1,class:"profile-error"},I0=Ln({__name:"ProfileLoader",props:{profileConfig:{type:String,default:""}},setup(e){var x;const o=e,n=Fe("profileConfig",null),a=te(()=>{var S;if(!o.profileConfig)return null;let A;try{A=JSON.parse(o.profileConfig)}catch{return console.error("[ProfileLoader] Invalid profile-config JSON:",o.profileConfig),null}if(A&&A.assetsBase===void 0){const L=(S=n==null?void 0:n.value)==null?void 0:S.assetsBase;typeof L=="string"&&L&&(A.assetsBase=L)}return A}),r=te(()=>{var A;return((A=a.value)==null?void 0:A.profile)||null}),s=bh(),i=te(()=>{var S;const A=(S=a.value)==null?void 0:S.tk;return typeof A=="string"&&A?A:s.value||""});ct(()=>{var A;return(A=a.value)==null?void 0:A.tk},A=>{typeof A=="string"&&A&&Nc(A)},{immediate:!0});const l=te(()=>{var A;return((A=a.value)==null?void 0:A.dataSource)||da.activeSource}),u=te(()=>{var A;return((A=a.value)==null?void 0:A.colorSet)||"default"}),c=te(()=>!1),p=te(()=>{var A;return((A=a.value)==null?void 0:A.pinHint)!==!1}),g=te(()=>{var S,L;const A=(((S=a.value)==null?void 0:S.locale)||((L=a.value)==null?void 0:L.lang)||"").split("-")[0].toLowerCase();return Ju.includes(A)?A:""}),w=Fe("appI18n",null);kg(()=>{g.value&&w&&(w.global.locale.value=g.value)});const b=te(()=>{var A,S;return g.value||((S=(A=w==null?void 0:w.global)==null?void 0:A.locale)==null?void 0:S.value)||"en"}),y=te(()=>{var A;return((A=a.value)==null?void 0:A.instanceId)||"doxa-map-"+Math.random().toString(36).slice(2,9)}),d=Fe("profileModules",null);if(!d)throw new Error('[ProfileLoader] No profileModules provided. Bundle entry must `app.provide("profileModules", import.meta.glob("./*.vue"))`');const h=te(()=>{if(!r.value)return null;const A=`./${r.value}.vue`;return d[A]?Rc(d[A]):(console.error(`[ProfileLoader] Profile not found: "${r.value}". Available:`,Object.keys(d)),null)});Ft("mapboxToken",i),Ft("dataSource",l),Ft("colorSet",u),Ft("profileConfig",a),Ft("instanceId",y),Ft("lang",b);const f=C0(),m=L0(),k=T0();try{const A=typeof localStorage<"u"?localStorage.getItem("theme"):null;A&&((x=f.setTheme)==null||x.call(f,A))}catch{}return Ft("uiStore",f),Ft("mapStore",m),Ft("dataStore",k),(A,S)=>(H(),ee("div",M0,[a.value?h.value?(H(),pt(Cl(h.value),{key:2})):(H(),ee("div",R0,[N("p",null,[S[1]||(S[1]=mt("⚠️ Profile ",-1)),N("strong",null,'"'+pe(r.value)+'"',1),S[2]||(S[2]=mt(" not found.",-1))])])):(H(),ee("div",N0,[...S[0]||(S[0]=[N("p",null,[mt("⚠️ "),N("strong",null,"doxa-map"),mt(": missing or invalid "),N("code",null,"profile-config"),mt(" prop.")],-1),N("p",null,[mt("Example: "),N("code",null,`profile-config='{"profile":"example-map","tk":"pk.eyJ..."}'`)],-1)])])),h.value&&c.value?(H(),pt(Cl(_e(null)),{key:3})):ye("",!0),h.value&&p.value?(H(),pt(S0,{key:4})):ye("",!0)]))}},[["styles",[P0]],["__scopeId","data-v-ba19fc13"]]),O0=Object.assign({"./poster-wall.vue":()=>to(()=>Promise.resolve().then(()=>y_),void 0),"./upg-100-list.vue":()=>to(()=>Promise.resolve().then(()=>Xw),void 0),"./upg-100-mfe.vue":()=>to(()=>Promise.resolve().then(()=>Ex),void 0)});if(typeof window<"u"&&((_p=window.mapboxgl)!=null&&_p.setRTLTextPlugin))try{window.mapboxgl.setRTLTextPlugin("https://api.mapbox.com/mapbox-gl-js/plugins/mapbox-gl-rtl-text/v0.3.0/mapbox-gl-rtl-text.js",null,!0)}catch{}function F0(){return Xf(I0,{configureApp(e){e.use(uh()),e.use(w0()),e.provide("profileModules",O0)}})}const D0=F0();typeof customElements<"u"&&(customElements.get("my-upg-100-list-map")||customElements.define("my-upg-100-list-map",D0));function pa(e,{autoprint:t=!1}={}){const o=document.createElement("iframe");o.setAttribute("aria-hidden","true"),o.style.cssText="position:fixed;right:0;bottom:0;width:1px;height:1px;opacity:0;border:0",document.body.appendChild(o);const n=o.contentDocument;if(!n)return o.remove(),null;n.open(),n.write(e),t&&n.write(' - + - + - +