Rebuild regions-dashboard after resolving artifact conflicts

This commit is contained in:
Doxa Maps 2026-09-25 23:39:33 +00:00
commit d8a9811a4e
96 changed files with 20567 additions and 1133 deletions

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,102 @@
#!/usr/bin/env node
/**
* check-dev-assets — under the DEV SERVER, every plugin reaches the shared asset pool.
*
* WHY (2026-09-25, reported from a laptop running `bun run dev`): under the Plugin Studio, Big Picture,
* Regions, UPG-100 (and its posters), Cities with Internet and Gospel drew with NO boundary polygons.
* The built tree was fine, and every gate measured the built tree. In dev, a plugin that falls back to
* the page-relative './assets' on a /__leaf/<bundle>/<profile> page asked for /__leaf/<bundle>/assets/…,
* which the dev server answered with the leaf's own HTML at HTTP 200: JSON.parse failed, and the map
* drew with no polygons, previews, fonts or tables. One cause, four faces.
*
* WHAT IS ASSERTED, on a dev server whose identity is printed first:
* HTTP boundaries/, previews/, fonts/, images/ and tables/ each resolve (200, not HTML) at every
* prefix a dev page can produce: /assets/, /__plugin-gallery/assets/, /<tree>/assets/,
* /__leaf/<bundle>/assets/ and /__leaf/<bundle>/<profile>/assets/.
* LEAVES every leaf of the seven studio maps (Big Picture, Simple Research, Regions, UPG-100, Prayer
* Progress, Cities, Gospel): its dev page hands the element assetsBase "/assets" (as a built
* leaf hands "../../assets"); a boundary file and a table under THAT base answer 200 with bytes
* that JSON.parse, and a bogus file under it is a real 404, not HTML.
* HEADLESS by project rule (browsers are one agent's, on this machine): whether each map then DRAWS
* its polygons is a visual check, handed over as "needs eyes".
*
* USAGE node internal/check-dev-assets.mjs [--url http://127.0.0.1:5190]
* Without --url it starts a SHORT-LIVED dev server for THIS checkout on a free port and stops it.
* EXIT 0 pass · 1 an asset does not resolve · 75 not measured.
*/
import { spawn, spawnSync } from 'node:child_process'
import { createServer } from 'node:http'
import { resolve, dirname } from 'node:path'
import { fileURLToPath } from 'node:url'
import { TREE_NAME } from './_tree-name.mjs'
const ROOT = resolve(dirname(fileURLToPath(import.meta.url)), '..')
const argv = process.argv.slice(2)
const arg = (k, d) => { const i = argv.indexOf(k); return i >= 0 && argv[i + 1] ? argv[i + 1] : d }
const MAP_BUNDLES = ['dashboard-plus-grid', 'doxa-research-map', 'regions-dashboard', 'my-upg-100-list', 'doxa-simple-map', 'cities-internet', 'gospel-resources']
const JSON_SAMPLES = ['boundaries/world-adm0.geojson', 'tables/country-connectivity.json']
const SAMPLES = ['boundaries/world-adm0.geojson', 'previews/andean-caribbean.webp', 'fonts/bebas-neue/bebas-neue-latin.woff2', 'images/worldmap.svg', 'tables/arclight-index.json']
let BASE = arg('--url', ''), dev = null
const stop = () => { if (dev) { try { process.kill(-dev.pid) } catch { try { dev.kill() } catch { /* gone */ } } } }
if (!BASE) {
const port = await new Promise((ok) => { const s = createServer().listen(0, '127.0.0.1', () => { const n = s.address().port; s.close(() => ok(n)) }) })
dev = spawn('bun', ['x', 'vite', '--port', String(port), '--strictPort', '--host', '127.0.0.1'], { cwd: ROOT, stdio: 'ignore', detached: true })
BASE = `http://127.0.0.1:${port}`
let up = false
for (let i = 0; i < 120 && !up; i++) { await new Promise((r) => setTimeout(r, 500)); up = await fetch(BASE + '/').then((r) => r.ok).catch(() => false) }
if (!up) { stop(); console.log(`DEV-ASSETS: NOT MEASURED — the dev server did not come up on ${BASE}`); process.exit(75) }
const sha = spawnSync('git', ['rev-parse', '--short', 'HEAD'], { cwd: ROOT, encoding: 'utf8' }).stdout.trim()
const dirty = spawnSync('git', ['status', '--porcelain', '--', 'library', 'plugin-designs', 'internal', 'vite.config.js'], { cwd: ROOT, encoding: 'utf8' }).stdout.trim()
console.log(`DEV-ASSETS: measuring a dev server started for THIS checkout — ${ROOT} @ ${sha}${dirty ? ' + uncommitted changes' : ''} on ${BASE}`)
} else {
const id = await fetch(BASE + '/__dev-sha').then((r) => (r.ok ? r.text() : '')).catch(() => '')
console.log(`DEV-ASSETS: measuring ${BASE}${id ? ` — serving ${id.trim()}` : ' — (it does not report which commit it serves)'}`)
}
let bad = 0
try {
// ── HTTP ──
const prefixes = ['/assets/', '/__plugin-gallery/assets/', `/${TREE_NAME}/assets/`, '/__leaf/regions-dashboard/assets/', '/__leaf/my-upg-100-list/upg-100-list/assets/']
for (const p of prefixes) {
const res = []
for (const s of SAMPLES) {
const r = await fetch(BASE + p + s).catch(() => null)
const ct = r ? r.headers.get('content-type') || '' : ''
const ok = r && r.status === 200 && !/text\/html/.test(ct)
if (!ok) { bad++; res.push(`${s.split('/')[0]} ${r ? r.status : 'ERR'}${/html/.test(ct) ? ' (HTML)' : ''}`) }
}
console.log(` ${res.length ? 'FAIL' : 'ok '} ${p.padEnd(44)} ${res.length ? res.join(', ') : SAMPLES.map((s) => s.split('/')[0]).join(' ') + ' all 200'}`)
}
// ── EVERY LEAF OF THE SEVEN MAPS: the base its page hands the element serves REAL, parseable data ──
// (bytes + JSON.parse, never an HTML fallback), and a bogus path under the same base is a real 404.
const reg = await fetch(BASE + '/__plugin-gallery/registry.json').then((r) => r.json()).catch(() => [])
const leaves = []
for (const b of reg) if (MAP_BUNDLES.includes(b.bundle)) for (const it of b.items || []) leaves.push(`/__leaf/${b.bundle}/${it.profile}`)
if (leaves.length < MAP_BUNDLES.length) { bad++; console.log(` FAIL registry lists ${leaves.length} leaves for the ${MAP_BUNDLES.length} map bundles`) }
for (const leaf of leaves) {
const html = await fetch(BASE + leaf).then((r) => r.text()).catch(() => '')
const m = /profile-config='([^']*)'/.exec(html)
let base = ''
try { base = JSON.parse(m[1]).assetsBase || '' } catch { /* no config */ }
const out = []
let ok = base === '/assets'
if (!ok) out.push(`assetsBase ${JSON.stringify(base)}`)
const at = (f) => base ? BASE + base + '/' + f : new URL('assets/' + f, BASE + leaf).href
for (const f of JSON_SAMPLES) {
const r = await fetch(at(f)).catch(() => null)
const body = r ? await r.text() : ''
let parsed = false
try { JSON.parse(body); parsed = true } catch { /* not JSON */ }
if (!r || r.status !== 200 || !parsed) { ok = false; out.push(`${f} ${r ? r.status : 'ERR'}${parsed ? '' : ' NOT JSON'}`) } else out.push(`${f.split('/').pop()} ${body.length} B`)
}
const ctl = await fetch(at('boundaries/no-such-file.geojson')).catch(() => null)
if (!ctl || ctl.status !== 404) { ok = false; out.push(`bogus path ${ctl ? ctl.status : 'ERR'} (want 404)`) }
if (!ok) bad++
console.log(` ${ok ? 'ok ' : 'FAIL'} ${leaf.padEnd(52)} assetsBase ${base || '(none)'}: ${out.join(', ')}${ok ? ', bogus 404' : ''}`)
}
} finally { stop() }
if (bad) { console.log(`DEV-ASSETS: FAIL — ${bad} check(s): the dev server does not hand every plugin the asset pool.`); process.exit(1) }
console.log('DEV-ASSETS: PASS — the pool resolves at every prefix a dev page can produce, and dev leaves hand it to their element.')

View file

@ -106,7 +106,18 @@ try {
const sr = document.querySelector('gospel-resources-map')?.shadowRoot
if (!sr) return []
const out = new Set()
/* ═══ A TABLE CELL IS DATA, NOT CHROME — fifth correction ════════════════════════
/* ═══ SETTLED: ORGANISATION AND PRODUCT NAMES STAY ENGLISH ═══════════════════════
* Ruled 2026-09-25, not inferred here: proper nouns are published as proper nouns in a
* localised product, exactly as res.bibleStories (Open Bible Stories, unfoldingWord)
* and res.scriptureEarth are already exempted in check-i18n-never-translated. Scope of
* the ruling is the Source column and product names ONLY.
* It is a VERDICT, not a bookmark — nothing here is waiting on anyone.
* Note what it does NOT cover: res.jesusFilm still has to render translated where it is
* used as a resource-type LABEL, and does. The structural rule below is what lets both
* be true at once — the same words are a name in a Source cell and a label in the
* chrome, and only the position tells them apart.
*
* ═══ A TABLE CELL IS DATA, NOT CHROME — fifth correction ════════════════════════
* This gate's own heading says it reads the CHROME. Table cells are the data, and
* judging them produced two false findings that were each a real English string
* sitting exactly where it belongs:
@ -172,10 +183,33 @@ try {
looking for a rendering bug that did not exist. */
if (!labels.length) { unmeasured.push(leaf + ' ' + lc + ': the walk collected no labels'); continue }
const labelSet = new Set(labels)
/* ═══ AN INTERPOLATED STRING NEVER EQUALS ITS CATALOGUE ENTRY ════════════════════
* Whole-label equality is the right unit for a fixed label and blind to a sentence
* carrying a number: the catalogue holds "Across all {n} languages in the corpus." and
* the screen shows "Across all 5,067 languages in the corpus." Those are never equal, so
* three chart subtitles could have shipped untranslated in eleven locales with this gate
* reporting PASS — coverage I would have claimed and not had.
* So a placeholder becomes a wildcard and the comparison is by pattern. Everything else
* is still compared by equality, which is what keeps a word inside a sentence from
* impersonating a label. */
const PLACEHOLDER = /\{\w+\}/
const asPattern = (str) => new RegExp('^' + str.split(/\{\w+\}/)
.map((part) => part.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')).join('.{1,40}') + '$')
const someLabelMatches = (str) => {
const re = asPattern(str)
for (const l of labelSet) if (re.test(l)) return true
return false
}
for (const [key, e] of Object.entries(en)) {
const t = loc[key]
if (!t || t === e) continue
compared++
if (PLACEHOLDER.test(e)) {
if (someLabelMatches(e) && !someLabelMatches(t)) {
leaks.push(leaf + ' ' + lc + ' ' + key + ': an interpolated label reads English "' + e.slice(0, 40) + '"')
}
continue
}
if (labelSet.has(e) && !labelSet.has(t)) leaks.push(leaf + ' ' + lc + ' ' + key + ': a label reads English "' + e.slice(0, 40) + '"')
}
}

View file

@ -44,6 +44,10 @@ const POISON = process.argv.includes('--poison')
// them their own drifting copy of the pan-first logic and the poison arm, which are the two parts
// that took corrections to get right. The leaf is the only thing that differs.
// node internal/check-gospel-rtl-shaping.mjs [--poison] [--leaf <TREE_NAME>/<bundle>/<profile>/index.html]
//
// ⚠ AND THE DEFAULT READS THE TREE NAME RATHER THAN SPELLING IT. The tree was renamed
// doxa-maps -> dx-maps; a default of "doxa-maps/..." 404s, and a probe reporting "0 problems"
// against a 404 reads exactly like success. The build config is the one place that knows.
const leafArg = process.argv.indexOf('--leaf')
const LEAF = (leafArg > -1 && process.argv[leafArg + 1])
|| process.env.RTL_SHAPE_LEAF

View file

@ -255,8 +255,19 @@ export function autoSpaDevPlugin(token = '') {
// <tree>/assets/* too: a plugin nested in a cap-5 shell resolves its assets against the tree base
// the shell hands it (plugin-studio passes /__plugin-gallery/), exactly as it would against
// <tree>/assets in the built tree. Only /assets/ was served, so every nested data table 404'd.
//
// ★ AND ANY /__leaf/…/assets/* (2026-09-25, reported from a laptop dev server: no boundary polygons
// on Big Picture, Regions, UPG-100, Cities, Gospel). A dev leaf page is /__leaf/<bundle>/<profile>,
// and a plugin that falls back to the PAGE-RELATIVE './assets' asks for /__leaf/<bundle>/assets/…
// — which the leaf route below answered with its own HTML at HTTP 200. JSON.parse then failed and
// the map drew with no polygons, no previews, no tables. The built leaf never hits this: its page
// hands the element assetsBase "../../assets". Serving the pool at every such prefix makes the
// page-relative default resolve in dev exactly as it does in the tree (/<tree>/assets included).
const leafAsset = /^\/__leaf\/(?:[^/]+\/){0,3}assets\//.exec(path)
const assetPrefix = path.startsWith('/assets/') ? '/assets/'
: path.startsWith('/__plugin-gallery/assets/') ? '/__plugin-gallery/assets/' : ''
: path.startsWith('/__plugin-gallery/assets/') ? '/__plugin-gallery/assets/'
: path.startsWith(`/${treeName}/assets/`) ? `/${treeName}/assets/`
: leafAsset ? leafAsset[0] : ''
if (assetPrefix) {
let rel = ''
try { rel = decodeURIComponent(path.slice(assetPrefix.length)) } catch { rel = '' }
@ -303,7 +314,9 @@ export function autoSpaDevPlugin(token = '') {
const apiBase = leafCfg.apiBaseUrl || ''
// profile-config carries the same shape the built leaves pass, so a profile/instance
// renders the SAME view here as in production rather than the bundle's default.
const pc = JSON.stringify(instance ? { profile, instanceId: instance } : { profile })
// assetsBase too, as the built leaf's BASE_CONFIG carries it ("../../assets" there; root-absolute
// here, because a /__leaf/ URL's depth differs from the tree's and the pool is served at /assets).
const pc = JSON.stringify(instance ? { profile, instanceId: instance, assetsBase: '/assets' } : { profile, assetsBase: '/assets' })
// The composition tier of THIS profile, read from the same discovery the gallery uses.
// `nested-elements-mfe` (cap-4) is the StackLayout scroll-stack tier — see the style note
// below. An unknown profile falls through to the fixed-viewport leaf, the safe default.

View file

@ -214,6 +214,15 @@ try {
if (!ALLOWED.test(u)) bad.push(`${c} -> ${u}`)
}
}
/* ★ THE SUN BLOCK IS A THIRD PLACE URLS LIVE (2026-09-25). The Deaf bridge is carried as a
single top-level object rather than per-language under codes[], because SUN is one signed
language for all of them — so the loop above cannot see it. Scanned here the moment it was
added, rather than discovered later the way the access table was. */
for (const u of [idx.sun?.scripture?.u, idx.sun?.stories?.u, idx.sun?.about]) {
if (!u) continue
scanned++
if (!ALLOWED.test(u)) bad.push(`sun -> ${u}`)
}
if (!scanned) fails.push('pin index carries no links at all — this check would pass vacuously')
if (bad.length) fails.push(`${bad.length} link(s) on an unscreened publisher (e.g. ${bad[0]})`)
linkCount = scanned

View file

@ -168,6 +168,15 @@
"keyScripture": "الكتاب المقدس",
"keyFilmStories": "الفيلم / القصص",
"keyAudioEtc": "صوتيات / عرض / تدريب",
"unresolvedCode": "رمز خارج ISO 639-3 — غير محسوم، لم يُقَس"
"unresolvedCode": "رمز خارج ISO 639-3 — غير محسوم، لم يُقَس",
"c1Title": "ما الذي وُجد، بحسب نوع المورد",
"c1Sub": "عبر جميع اللغات البالغة {n} في مجموعة البيانات. كل عمود يَعُدّ اللغات، لا الشعوب.",
"c1Unit": "لغات وُجد فيها المورد ضمن المصادر التي جرى البحث فيها",
"c2Title": "أكبر التجمعات السكانية التي لم يُعثر لها على شيء",
"c2Sub": "اللغات الـ{n} التي لا يوجد لها كتاب مقدس ولا فيلم في المصادر التي جرى البحث فيها، مرتَّبة بحسب عدد سكان الشعوب التي تتحدثها.",
"c2Unit": "أشخاص في الشعوب التي هذه لغتها الأساسية — لا المتحدثين بها عمومًا",
"c3Title": "البلدان الأكثر لغاتٍ غير مخدومة",
"c3Sub": "البلدان الـ{n} الأكثر لغاتٍ لم يُعثر لها على شيء. طول العمود هو كل لغة موجودة في ذلك البلد.",
"c3Unit": "لغات موجودة في البلد (اللغة العابرة للحدود تُحتسب في كل بلد)"
}
}

View file

@ -168,6 +168,15 @@
"keyScripture": "Bibeltext",
"keyFilmStories": "Film / Geschichten",
"keyAudioEtc": "Audio / Präsentation / Schulung",
"unresolvedCode": "Code außerhalb ISO 639-3 — ungeklärt, nicht gemessen"
"unresolvedCode": "Code außerhalb ISO 639-3 — ungeklärt, nicht gemessen",
"c1Title": "Was GEFUNDEN wurde, nach Ressourcentyp",
"c1Sub": "Über alle {n} Sprachen im Datenbestand. Jeder Balken zählt SPRACHEN, nicht Volksgruppen.",
"c1Unit": "Sprachen, in denen die Ressource in den geprüften Quellen gefunden wurde",
"c2Title": "Größte Bevölkerungen ohne jeden Fund",
"c2Sub": "Die {n} Sprachen ohne Bibeltext und ohne Film in den geprüften Quellen, sortiert nach der Bevölkerung der Volksgruppen, die sie sprechen.",
"c2Unit": "Menschen in den Volksgruppen, deren PRIMÄRE Sprache dies ist — nicht Sprecher der Sprache",
"c3Title": "Länder mit den meisten unversorgten Sprachen",
"c3Sub": "Die {n} Länder mit den meisten Sprachen, für die nichts gefunden wurde. Die Balkenlänge ist jede im Land vorhandene Sprache.",
"c3Unit": "im Land vorhandene Sprachen (eine grenzüberschreitende Sprache zählt in jedem Land)"
}
}

View file

@ -168,6 +168,15 @@
"keyScripture": "scripture",
"keyFilmStories": "film / stories",
"keyAudioEtc": "audio / presentation / training",
"unresolvedCode": "code outside ISO 639-3 — unresolved, not measured"
"unresolvedCode": "code outside ISO 639-3 — unresolved, not measured",
"c1Title": "What was FOUND, by resource type",
"c1Sub": "Across all {n} languages in the corpus. Each bar counts LANGUAGES, not people groups.",
"c1Unit": "languages where the resource was found in the pools checked",
"c2Title": "Largest populations with nothing found",
"c2Sub": "The {n} languages with no scripture and no film in the pools checked, ranked by the population of the people groups who speak them.",
"c2Unit": "people in the people groups whose PRIMARY language this is — not speakers of the language",
"c3Title": "Countries with the most unserved languages",
"c3Sub": "The {n} countries with the most languages that have nothing found. Bar length is every language present in that country.",
"c3Unit": "languages present in the country (a cross-border language counts in each)"
}
}

View file

@ -168,6 +168,15 @@
"keyScripture": "escrituras",
"keyFilmStories": "película / historias",
"keyAudioEtc": "audio / presentación / formación",
"unresolvedCode": "código fuera de ISO 639-3 — sin resolver, no medido"
"unresolvedCode": "código fuera de ISO 639-3 — sin resolver, no medido",
"c1Title": "Qué se ENCONTRÓ, por tipo de recurso",
"c1Sub": "En las {n} lenguas del conjunto de datos. Cada barra cuenta LENGUAS, no etnias.",
"c1Unit": "lenguas en las que se encontró el recurso en las fuentes consultadas",
"c2Title": "Mayores poblaciones sin nada encontrado",
"c2Sub": "Las {n} lenguas sin escrituras ni película en las fuentes consultadas, ordenadas por la población de las etnias que las hablan.",
"c2Unit": "personas en las etnias cuya lengua PRINCIPAL es esta — no hablantes de la lengua",
"c3Title": "Países con más lenguas desatendidas",
"c3Sub": "Los {n} países con más lenguas sin nada encontrado. La longitud de la barra es cada lengua presente en ese país.",
"c3Unit": "lenguas presentes en el país (una lengua transfronteriza cuenta en cada uno)"
}
}

View file

@ -168,6 +168,15 @@
"keyScripture": "écritures",
"keyFilmStories": "film / histoires",
"keyAudioEtc": "audio / présentation / formation",
"unresolvedCode": "code hors ISO 639-3 — non résolu, non mesuré"
"unresolvedCode": "code hors ISO 639-3 — non résolu, non mesuré",
"c1Title": "Ce qui a été TROUVÉ, par type de ressource",
"c1Sub": "Sur l'ensemble des {n} langues du corpus. Chaque barre compte des LANGUES, pas des peuples.",
"c1Unit": "langues où la ressource a été trouvée dans les sources consultées",
"c2Title": "Populations les plus nombreuses sans rien de trouvé",
"c2Sub": "Les {n} langues sans Écritures ni film dans les sources consultées, classées selon la population des peuples qui les parlent.",
"c2Unit": "personnes dans les peuples dont c'est la langue PRINCIPALE — non les locuteurs de la langue",
"c3Title": "Pays comptant le plus de langues non desservies",
"c3Sub": "Les {n} pays comptant le plus de langues sans rien de trouvé. La longueur de la barre correspond à chaque langue présente dans ce pays.",
"c3Unit": "langues présentes dans le pays (une langue transfrontalière compte dans chacun)"
}
}

View file

@ -168,6 +168,15 @@
"keyScripture": "पवित्र शास्त्र",
"keyFilmStories": "फ़िल्म / कहानियाँ",
"keyAudioEtc": "ऑडियो / प्रस्तुति / प्रशिक्षण",
"unresolvedCode": "ISO 639-3 से बाहर कोड — अनसुलझा, मापा नहीं गया"
"unresolvedCode": "ISO 639-3 से बाहर कोड — अनसुलझा, मापा नहीं गया",
"c1Title": "क्या मिला, संसाधन के प्रकार के अनुसार",
"c1Sub": "डेटा की सभी {n} भाषाओं में। हर बार भाषाओं की गिनती करता है, जनसमूहों की नहीं।",
"c1Unit": "भाषाएँ जिनमें जाँचे गए स्रोतों में संसाधन मिला",
"c2Title": "सबसे बड़ी आबादी जिनके लिए कुछ नहीं मिला",
"c2Sub": "{n} भाषाएँ जिनके लिए जाँचे गए स्रोतों में न पवित्र शास्त्र है न फ़िल्म, उन्हें बोलने वाले जनसमूहों की आबादी के क्रम में।",
"c2Unit": "उन जनसमूहों के लोग जिनकी मुख्य भाषा यही है — भाषा के सभी वक्ता नहीं",
"c3Title": "सबसे अधिक असेवित भाषाओं वाले देश",
"c3Sub": "{n} देश जिनमें सबसे अधिक भाषाओं के लिए कुछ नहीं मिला। बार की लंबाई उस देश में मौजूद हर भाषा है।",
"c3Unit": "देश में मौजूद भाषाएँ (सीमा-पार भाषा हर देश में गिनी जाती है)"
}
}

View file

@ -168,6 +168,15 @@
"keyScripture": "scritture",
"keyFilmStories": "film / storie",
"keyAudioEtc": "audio / presentazione / formazione",
"unresolvedCode": "codice fuori ISO 639-3 — non risolto, non misurato"
"unresolvedCode": "codice fuori ISO 639-3 — non risolto, non misurato",
"c1Title": "Che cosa è stato TROVATO, per tipo di risorsa",
"c1Sub": "Su tutte le {n} lingue del corpus. Ogni barra conta LINGUE, non gruppi etnici.",
"c1Unit": "lingue in cui la risorsa è stata trovata nelle fonti controllate",
"c2Title": "Popolazioni più numerose senza nulla trovato",
"c2Sub": "Le {n} lingue senza Scritture né film nelle fonti controllate, ordinate per la popolazione dei gruppi che le parlano.",
"c2Unit": "persone nei gruppi la cui lingua PRINCIPALE è questa — non i parlanti della lingua",
"c3Title": "Paesi con più lingue non servite",
"c3Sub": "I {n} paesi con più lingue per cui non è stato trovato nulla. La lunghezza della barra è ogni lingua presente in quel paese.",
"c3Unit": "lingue presenti nel paese (una lingua transfrontaliera conta in ciascuno)"
}
}

View file

@ -168,6 +168,15 @@
"keyScripture": "escrituras",
"keyFilmStories": "filme / histórias",
"keyAudioEtc": "áudio / apresentação / treinamento",
"unresolvedCode": "código fora da ISO 639-3 — não resolvido, não medido"
"unresolvedCode": "código fora da ISO 639-3 — não resolvido, não medido",
"c1Title": "O que foi ENCONTRADO, por tipo de recurso",
"c1Sub": "Em todas as {n} línguas do conjunto de dados. Cada barra conta LÍNGUAS, não etnias.",
"c1Unit": "línguas em que o recurso foi encontrado nas fontes consultadas",
"c2Title": "Maiores populações sem nada encontrado",
"c2Sub": "As {n} línguas sem Escrituras e sem filme nas fontes consultadas, ordenadas pela população das etnias que as falam.",
"c2Unit": "pessoas nas etnias cuja língua PRINCIPAL é esta — não falantes da língua",
"c3Title": "Países com mais línguas desatendidas",
"c3Sub": "Os {n} países com mais línguas sem nada encontrado. O comprimento da barra é cada língua presente nesse país.",
"c3Unit": "línguas presentes no país (uma língua transfronteiriça conta em cada um)"
}
}

View file

@ -168,6 +168,15 @@
"keyScripture": "scripturi",
"keyFilmStories": "film / povestiri",
"keyAudioEtc": "audio / prezentare / instruire",
"unresolvedCode": "cod în afara ISO 639-3 — nerezolvat, nemăsurat"
"unresolvedCode": "cod în afara ISO 639-3 — nerezolvat, nemăsurat",
"c1Title": "Ce s-a GĂSIT, după tipul resursei",
"c1Sub": "Pe toate cele {n} limbi din setul de date. Fiecare bară numără LIMBI, nu grupuri etnice.",
"c1Unit": "limbi în care resursa a fost găsită în sursele verificate",
"c2Title": "Cele mai mari populații fără nimic găsit",
"c2Sub": "Cele {n} limbi fără Scripturi și fără film în sursele verificate, ordonate după populația grupurilor care le vorbesc.",
"c2Unit": "persoane din grupurile a căror limbă PRINCIPALĂ este aceasta — nu vorbitorii limbii",
"c3Title": "Țări cu cele mai multe limbi neservite",
"c3Sub": "Cele {n} țări cu cele mai multe limbi pentru care nu s-a găsit nimic. Lungimea barei este fiecare limbă prezentă în acea țară.",
"c3Unit": "limbi prezente în țară (o limbă transfrontalieră se numără în fiecare)"
}
}

View file

@ -168,6 +168,15 @@
"keyScripture": "писание",
"keyFilmStories": "фильм / истории",
"keyAudioEtc": "аудио / презентация / обучение",
"unresolvedCode": "код вне ISO 639-3 — не определён, не измерен"
"unresolvedCode": "код вне ISO 639-3 — не определён, не измерен",
"c1Title": "Что НАЙДЕНО, по типу ресурса",
"c1Sub": "По всем {n} языкам в наборе данных. Каждый столбец считает ЯЗЫКИ, а не народы.",
"c1Unit": "языки, в которых ресурс найден в проверенных источниках",
"c2Title": "Самые многочисленные народы, для которых ничего не найдено",
"c2Sub": "{n} языков, для которых в проверенных источниках нет ни Писания, ни фильма, упорядоченные по численности говорящих на них народов.",
"c2Unit": "люди в народах, для которых это ОСНОВНОЙ язык, — не все говорящие на нём",
"c3Title": "Страны с наибольшим числом неохваченных языков",
"c3Sub": "{n} стран с наибольшим числом языков, для которых ничего не найдено. Длина столбца — каждый язык, присутствующий в этой стране.",
"c3Unit": "языки, присутствующие в стране (трансграничный язык считается в каждой)"
}
}

View file

@ -168,6 +168,15 @@
"keyScripture": "圣经",
"keyFilmStories": "影片 / 故事",
"keyAudioEtc": "音频 / 简介 / 训练",
"unresolvedCode": "ISO 639-3 之外的代码 — 未确定,未测量"
"unresolvedCode": "ISO 639-3 之外的代码 — 未确定,未测量",
"c1Title": "按资源类型统计已找到的内容",
"c1Sub": "涵盖数据中全部 {n} 种语言。每个条形统计的是语言,不是族群。",
"c1Unit": "在已检索的资源库中找到该资源的语言",
"c2Title": "一无所获的最大人口",
"c2Sub": "在已检索的资源库中既无圣经也无影片的 {n} 种语言,按使用这些语言的族群人口排序。",
"c2Unit": "以该语言为主要语言的族群人口 — 不是该语言的全部使用者",
"c3Title": "未得服事语言最多的国家",
"c3Sub": "一无所获语言最多的 {n} 个国家。条形长度为该国存在的全部语言。",
"c3Unit": "该国存在的语言(跨境语言在每个国家各计一次)"
}
}

View file

@ -110,7 +110,8 @@ export function resolveEmbedBase(profileConfig) {
* 3. bundleTreeRoot() + '/../assets' — derived from this bundle's own script URL, so a tree
* dropped on any host resolves correctly with no configuration at all.
* 4. './assets' — the historical default; correct on a leaf page and
* the only sane answer when nothing above is knowable (dev ESM, a hand-written host).
* the only sane answer when nothing above is knowable (a hand-written host). Under the dev
* server it is '/assets', where the dev server serves the pool.
*
* @param {object|null} [profileConfig] the parsed profile-config (already unref'd)
* @returns {string}
@ -156,6 +157,10 @@ export function resolveAssetsBase(profileConfig) {
}
}
// Under the dev server (Vite: import.meta.env.DEV; false in every build) the pool is served at the
// ROOT, /assets, and a dev page's own URL (/__leaf/<bundle>/<profile>) is not tree-shaped, so the
// page-relative default missed it. The built tree keeps './assets' (position-independent).
if (import.meta.env && import.meta.env.DEV) return '/assets'
return './assets'
}

View file

@ -42,6 +42,7 @@
"check:deck-click": "node internal/check-deck-click.mjs",
"check:dep-names": "node internal/check-dependency-names.mjs",
"check:descriptions": "node internal/check-profile-descriptions.mjs",
"check:dev-assets": "node internal/check-dev-assets.mjs",
"check:doc-scripts": "node internal/check-doc-quotes-scripts.mjs",
"check:doc-scripts:self-test": "node internal/check-doc-quotes-scripts.mjs --self-test",
"check:done-evidence": "node internal/check-done-evidence.mjs",

View file

@ -55,10 +55,22 @@ import { useShadowStyles } from '@map/composables/useShadowStyles.js'
and the shipped English catalogue is the fallback rather than a broken key. */
const enLookup = (key) =>
String(key).replace(/^gospel\./, '').split('.').reduce((o, k) => (o == null ? o : o[k]), EN_MESSAGES.gospel || {})
let tr = (key) => enLookup(key) ?? String(key)
/* ★ NUMBERS ARRIVE AS PARAMETERS, NEVER CONCATENATED. The subtitles carry a count, and a
sentence built by gluing a number between two fragments cannot be translated — word order
differs and several of these locales put the number where English does not. The catalogue
holds the whole sentence with a {n} placeholder instead.
THE FALLBACK HAS TO INTERPOLATE TOO. Without it a host that never installed i18n would render
the placeholder literally — "Across all {n} languages" on screen — which is worse than the
English sentence the fallback exists to protect. */
const interpolate = (str, params) =>
params ? String(str).replace(/\{(\w+)\}/g, (m, k) => (params[k] != null ? params[k] : m)) : str
let tr = (key, params) => interpolate(enLookup(key) ?? String(key), params)
try {
const i18n = useI18n()
tr = (key) => { const v = i18n.t(key); return v === key ? (enLookup(key) ?? key) : v }
tr = (key, params) => {
const v = params ? i18n.t(key, params) : i18n.t(key)
return v === key ? interpolate(enLookup(key) ?? key, params) : v
}
} catch (_) { /* no i18n on this host */ }
@ -457,9 +469,9 @@ useShadowStyles(
v-if="active === 'coverage'"
:series="coverage"
:is-dark="isDark"
title="What was FOUND, by resource type"
:subtitle="`Across all ${fmt(nLang)} languages in the corpus. Each bar counts LANGUAGES, not people groups.`"
unit="languages where the resource was found in the pools checked"
:title="tr('gospel.charts.c1Title')"
:subtitle="tr('gospel.charts.c1Sub', { n: fmt(nLang) })"
:unit="tr('gospel.charts.c1Unit')"
:max="nLang"
:legend="[
{ label: tr('gospel.charts.keyScripture'), color: C.scripture },
@ -477,9 +489,9 @@ useShadowStyles(
v-else-if="active === 'gap'"
:series="topNone"
:is-dark="isDark"
title="Largest populations with nothing found"
:subtitle="`The ${TOP_N} languages with no scripture and no film in the pools checked, ranked by the population of the people groups who speak them.`"
unit="people in the people groups whose PRIMARY language this is — not speakers of the language"
:title="tr('gospel.charts.c2Title')"
:subtitle="tr('gospel.charts.c2Sub', { n: TOP_N })"
:unit="tr('gospel.charts.c2Unit')"
:legend="[
{ label: tr('gospel.charts.noResourceInPools'), color: C.none },
{ label: tr('gospel.charts.unresolvedCode'), color: C.unresolved },
@ -495,9 +507,9 @@ useShadowStyles(
v-else
:series="byCountry"
:is-dark="isDark"
title="Countries with the most unserved languages"
:subtitle="`The ${TOP_N} countries with the most languages that have nothing found. Bar length is every language present in that country.`"
unit="languages present in the country (a cross-border language counts in each)"
:title="tr('gospel.charts.c3Title')"
:subtitle="tr('gospel.charts.c3Sub', { n: TOP_N })"
:unit="tr('gospel.charts.c3Unit')"
:legend="[
{ label: tr('gospel.charts.nothingInPoolsLower'), color: C.none },
{ label: tr('gospel.charts.aResourceFound'), color: C.found },

View file

@ -203,6 +203,10 @@ const doxaTotal = ref(0) // every group on Doxa's roster, placed or not
const doxaUnplaced = ref(0) // on the roster, no coordinates in this build yet
const doxaByCountry = shallowRef({})
const pinCodes = ref({})
/* SUN — one signed language with Scripture in it, for Deaf groups whose own sign language has
nothing. Carried in the pin index beside the spoken bridges so the sheet and the access table
cannot disagree. */
const pinSun = ref(null)
const pinBridges = ref({}) // '<iso639-3>|<ISO3 country>' -> the in-country bridge, if any
/* Declared beside pinBridges. The previous edit USED this ref without declaring it —
a silent string replace that matched nothing — and the ReferenceError died inside the
@ -571,12 +575,20 @@ const signTally = computed(() => {
const pinTally = computed(() => {
const t = [0, 0, 0]
let hnr = 0
/* How many of the groups with NOTHING have somewhere to start anyway — a curated bridge, a
language their country actually speaks, or SUN for a Deaf group. Counted in the same pass
as the tiers, from the same rows, so the two numbers cannot drift apart. */
let wayIn = 0
for (const r of pinRows.value) {
t[r[6]]++
const c = pinCodes.value[r[4]]
if (r[6] !== 0 && c && canHear(c) && !hasTextScripture(c)) hnr++
if (r[6] === 0) {
const key = `${r[4]}|${r[3]}`
if (pinBridges.value[key] || pinCandidates.value[key] || (c && c.sg === 1 && pinSun.value)) wayIn++
}
}
return { none: t[0], partial: t[1], both: t[2], hnr, linked: t[1] + t[2], total: pinRows.value.length }
return { none: t[0], partial: t[1], both: t[2], hnr, linked: t[1] + t[2], total: pinRows.value.length, wayIn }
})
async function ensurePeopleGroups() {
@ -751,6 +763,34 @@ const groupsForCountry = computed(() => {
const withResources = computed(() => groupsForCountry.value.filter(hasAny))
const withoutResources = computed(() => groupsForCountry.value.filter((r) => !hasAny(r)))
/**
* ═══ THE COUNTRY'S GAP LIST SHOULD SAY WHERE TO START ═════════════════════════════════════
*
* The rows under "No resource found" carried a name, a language and a population, and nothing
* else — so the one thing a mobiliser opened the country for, "what do I do about these?",
* took one click per group. 369 of the 370 groups with nothing now have a way in, and it was
* reachable only by opening each pin in turn.
*
* TEXT, NOT A LINK, and structurally it could not be otherwise: these rows are <button>
* drill-ins and HTML forbids an anchor inside a button — the parser hoists it out and it stops
* being a link, which is why the rows that DO have resources are plain containers instead. The
* row opens the group sheet, and the sheet carries the bridge's real links.
*
* It names the bridge and nothing more. Saying "Bambara" here does not claim Bambara reaches
* this group — that is the local question the sheet spells out — but it does turn a list of
* dead ends into a list with a first move against each one.
*/
const wayInFor = (g) => {
const iso3 = selected.value?.iso3 || ''
const code = g.iso639_3 || ''
if (!code || !iso3) return ''
const c = pinCodes.value[code]
if (c && c.sg === 1) return pinSun.value ? 'SUN (signed)' : ''
const key = `${code}|${iso3}`
const b = pinBridges.value[key] || pinCandidates.value[key]
return b ? b.l : ''
}
// The header must count the SAME set the list below it shows. It used to read
// gospel-by-country.json, which is built from the curated 2,106-record subset, so after
// the list moved to the pins the card contradicted itself inside one view: "People
@ -850,6 +890,7 @@ async function load() {
pinCodes.value = pinData.codes || {}
pinBridges.value = pinData.bridges || {}
pinCandidates.value = pinData.bridgeCandidates || {}
pinSun.value = pinData.sun || null
/* Same seven-slot shape the rest of this file already speaks, so narrowing the roster
changes WHICH pins exist and nothing about how they are drawn, clicked or filtered. */
@ -1135,6 +1176,70 @@ const fmt = (n) => (Number(n) || 0).toLocaleString()
// The table lives on a SIBLING page, so "see all of these" is a URL. Built here rather
// than inline in the template so the group link and the country link cannot drift apart.
/**
* ═══ A BRIDGE NOBODY CAN FOLLOW IS NOT A WAY IN ═══════════════════════════════════════════
*
* Both bridge panels below NAMED a language and stopped there. For a group with nothing, the
* only link on the sheet was "Every resource in <their own language>" — which is, by
* definition, the empty table. MEASURED by clicking a gap pin: Syenara Senufo offered five
* "none found" chips, named Minianka as the way in, and the one thing to click led to nothing.
* So the sheet told a mobiliser where to go and then made them go and find it themselves.
*
* Nothing new has to be fetched. Both bridge records already carry the bridge's ISO 639-3
* code, and the pin index already holds that language's own verified links — Minianka is
* ebible.org/myk/ and jesusfilm.org/watch/jesus/minianka, on the same screened publishers and
* through the same doctrine scan as every other link here. The data was one lookup away.
*
* Joined on the CODE, never the name, for the reason the whole index is built that way.
*/
const bridgeResources = (b) => {
if (!b || !b.c) return null
const c = pinCodes.value[b.c]
if (!c) return null
/* ⚠ c.s IS NOT THE ONLY PLACE A READABLE SCRIPTURE LIVES, and reading only it lost the very
language this fix exists for: Bambara's text Bible is carried on the Faith Comes By Hearing
record (au.m names the media it holds), so the panel offered Bambara the film alone while a
full 66-book text sat one field away. Same field-list-goes-stale shape as the build script,
so the fallback is spelled out here rather than assumed. */
const fcbhText = c.au && /text/.test(c.au.m || '') ? c.au : null
return {
iso: b.c,
language: c.l || b.l || '',
scripture_url: c.s || (fcbhText ? fcbhText.u : ''),
scripture_title: c.sv || (fcbhText ? fcbhText.n : ''),
film_url: c.f || '',
film_title: c.fT || '',
}
}
/**
* The Deaf way in, for a group that has nothing filmed in its own sign language.
*
* WHY IT IS OFFERED ONLY WHEN THERE IS NOTHING. A group that already has Scripture in its own
* sign language does not need to learn a second one, and saying otherwise would read as a
* recommendation to leave their own language behind. Same rule the spoken bridges follow.
*
* It is a BRIDGE and says so: SUN has to be learned, and it closes no gap in their own language.
*/
const deafBridge = computed(() => {
const g = selectedGroup.value
if (!g || !g.is_sign || !pinSun.value) return null
const hasSomething = g.scripture_url || g.film_url || g.audio || g.bible_video ||
g.gospel_audio || g.scripture_earth
if (hasSomething) return null
const key = String(g.countries || '').toLowerCase().replace(/[^a-z]/g, '')
return { ...pinSun.value, organisation: pinSun.value.byCountry?.[key] || '' }
})
/* Resolved once per selection rather than on every reference in the template. */
const curatedBridgeRes = computed(() => bridgeResources(selectedGroup.value?.bridge))
const candidateBridgeRes = computed(() => bridgeResources(selectedGroup.value?.bridge_candidate))
/* The runner-up on a near-tie is named in the sentence above, so it needs links for exactly the
reason the primary does: a bridge nobody can follow is not a way in. Naming two languages and
linking one would make the second look like the lesser option when the whole point is that the
map will not choose between them. */
const altBridgeRes = computed(() => bridgeResources(selectedGroup.value?.bridge_candidate?.alt))
const tableLink = (q) => {
const p = new URLSearchParams({ tab: 'links', ...q })
return `../data-tables/index.html?${p.toString()}`
@ -1210,6 +1315,10 @@ useShadowStyles(
'padding:3px 8px;border-radius:6px;cursor:pointer;margin-left:4px;min-height:24px}' +
'.gm-pinkey-h{font-size:14px;font-weight:600;margin-bottom:4px}' +
'.gm-caveat{margin-top:5px;font-size:13.5px;opacity:.72;line-height:1.4}' +
/* Quiet enough that the gap itself still reads first: the row is about what is MISSING, and
the way in is the footnote to it, not the headline. */
'.gm-pg-way{display:block;font-size:12.5px;color:#3b463d;opacity:.8;margin-top:2px}' +
'.is-dark .gm-pg-way{color:#d1d4cd}' +
'.gm-prose-note{opacity:.9;font-weight:600}' +
// DETAIL: a bottom sheet on a phone, a corner card on desktop.
// ON A PHONE THE SHEET IS THE PAGE, and the shared pin hint sits on top of it. The hint
@ -1445,6 +1554,19 @@ useShadowStyles(
<i class="gm-dot" :style="{ background: PIN_COLOR[0] }"></i>{{ t('gospel.legend.tier0') }}
<b>{{ fmt(pinTally.none) }}</b>
</button>
<!-- ═══ THE NUMBER BESIDE THE GAP IS THE ONE A MOBILISER CAME FOR ══════════════════
"370 with nothing found" is where the map used to stop, and it reads as a wall.
Every one of those groups now has somewhere to start — a curated bridge, a
language their own country speaks, or SUN for a Deaf group — and none of that was
visible without opening 370 pins one at a time.
It says "a way in", not "reached": a bridge has to be learnt, it is not Scripture
in their language, and the gap the red dot marks is unchanged. Counted from the
same rows as the number above it. English prose, like the rest of this block. -->
<p v-if="pinTally.none && pinTally.wayIn" class="gm-caveat" dir="ltr" style="margin:2px 0 0">
<b>{{ fmt(pinTally.wayIn) }} of those {{ fmt(pinTally.none) }}</b> have a possible way
in — a bridge language, or SUN for a Deaf group. Tap one to see it. A way in is not
the gospel in their own language; the gap is unchanged.
</p>
<!-- Not a colour, so it carries no dot: this cuts ACROSS the three tiers rather
than naming one of them. It is the translation-priority question. -->
<button type="button" class="gm-key gm-kbtn wide" :class="{ on: pinFilter === 'hnr' }"
@ -1826,6 +1948,22 @@ useShadowStyles(
<template v-else>the JESUS Film</template>.
<br><em>Bridge strength: {{ selectedGroup.bridge.st }}.</em> A second language is a
way in, not a translation — the gap in their own language is unchanged.
<!-- THE LINKS THAT MAKE IT FOLLOWABLE. Same chips, same publishers and the same
doctrine scan as the group's own resources above; only the language differs.
Rendered only when the index actually holds a URL, so a named bridge with
nothing behind it stays a name rather than becoming a dead chip. -->
<div v-if="curatedBridgeRes && (curatedBridgeRes.scripture_url || curatedBridgeRes.film_url)" class="gm-chips">
<a v-if="curatedBridgeRes.scripture_url" class="gm-chip ok wrap"
:href="curatedBridgeRes.scripture_url" target="_blank" rel="noopener">
{{ curatedBridgeRes.language }} · {{ curatedBridgeRes.scripture_title || t('gospel.res.scripture') }} ↗</a>
<a v-if="curatedBridgeRes.film_url" class="gm-chip ok wrap"
:href="curatedBridgeRes.film_url" target="_blank" rel="noopener">
{{ curatedBridgeRes.language }} · {{ curatedBridgeRes.film_title || t('gospel.res.jesusFilm') }} ↗</a>
<a class="gm-chip wrap"
:href="tableLink({ iso: curatedBridgeRes.iso, label: curatedBridgeRes.language })">
{{ t('gospel.sheet.everyResource') }} {{ curatedBridgeRes.language }} →</a>
</div>
</div>
<!-- THE WEAKER CASE, and it says so on its face. No curated bridge exists for this
group, but their country does have a language carrying Scripture and the film.
@ -1839,13 +1977,59 @@ useShadowStyles(
&& !selectedGroup.audio && !selectedGroup.gospel_audio && !selectedGroup.scripture_earth"
class="gm-sign" style="border-left-color:#d1d4cd" dir="ltr">
<b>Possibly a way in — worth checking locally.</b>
<br>Nothing was found in {{ selectedGroup.language || 'their language' }}. The largest
language in this country that does have Scripture and the JESUS Film is
<b>{{ selectedGroup.bridge_candidate.l }}</b>, spoken by
{{ selectedGroup.bridge_candidate.n }} people group<template v-if="selectedGroup.bridge_candidate.n !== 1">s</template>
here ({{ selectedGroup.bridge_candidate.pct }}% of this country's mapped population).
<br>Nothing was found in {{ selectedGroup.language || 'their language' }}.
<!-- TWO DIFFERENT DENOMINATORS, SAID PLAINLY. A CLDR candidate's percentage is a
share of the COUNTRY, which is what a reader assumes a percentage means. The
fallback's is a share of the PINNED population — a much smaller and invisible
denominator — so it is never printed as a bare percentage. -->
<template v-if="selectedGroup.bridge_candidate.src === 'cldr'">
<b>{{ selectedGroup.bridge_candidate.l }}</b> is spoken by
{{ selectedGroup.bridge_candidate.pct }}% of this country<template
v-if="selectedGroup.bridge_candidate.official"> and is an official language</template>,
and has Scripture and the JESUS Film.
<!-- A tie is not a ranking. Where a second language is within five points, both
are named rather than one being chosen by a rule the reader cannot see. -->
<template v-if="selectedGroup.bridge_candidate.alt">
So is <b>{{ selectedGroup.bridge_candidate.alt.l }}</b>, at
{{ selectedGroup.bridge_candidate.alt.pct }}%<template
v-if="selectedGroup.bridge_candidate.alt.official"> and official</template> —
the two are close enough that this map will not choose between them.
</template>
<div v-if="altBridgeRes && (altBridgeRes.scripture_url || altBridgeRes.film_url)" class="gm-chips">
<a v-if="altBridgeRes.scripture_url" class="gm-chip ok wrap"
:href="altBridgeRes.scripture_url" target="_blank" rel="noopener">
{{ altBridgeRes.language }} · {{ altBridgeRes.scripture_title || t('gospel.res.scripture') }} ↗</a>
<a v-if="altBridgeRes.film_url" class="gm-chip ok wrap"
:href="altBridgeRes.film_url" target="_blank" rel="noopener">
{{ altBridgeRes.language }} · {{ altBridgeRes.film_title || t('gospel.res.jesusFilm') }} ↗</a>
<a class="gm-chip wrap" :href="tableLink({ iso: altBridgeRes.iso, label: altBridgeRes.language })">
{{ t('gospel.sheet.everyResource') }} {{ altBridgeRes.language }} →</a>
</div>
</template>
<template v-else>
The largest language among the people groups mapped here that does have Scripture
and the JESUS Film is <b>{{ selectedGroup.bridge_candidate.l }}</b>, spoken by
{{ selectedGroup.bridge_candidate.n }} of them. That is a count of THIS MAP's
groups, not of the country — no published figure for the country was available.
</template>
<br><em>Not ranked and not recommended</em> — whether it actually reaches this group
is a local question, and the gap in their own language is unchanged.
<!-- THE LINKS THAT MAKE IT FOLLOWABLE. Same chips, same publishers and the same
doctrine scan as the group's own resources above; only the language differs.
Rendered only when the index actually holds a URL, so a named bridge with
nothing behind it stays a name rather than becoming a dead chip. -->
<div v-if="candidateBridgeRes && (candidateBridgeRes.scripture_url || candidateBridgeRes.film_url)" class="gm-chips">
<a v-if="candidateBridgeRes.scripture_url" class="gm-chip ok wrap"
:href="candidateBridgeRes.scripture_url" target="_blank" rel="noopener">
{{ candidateBridgeRes.language }} · {{ candidateBridgeRes.scripture_title || t('gospel.res.scripture') }} ↗</a>
<a v-if="candidateBridgeRes.film_url" class="gm-chip ok wrap"
:href="candidateBridgeRes.film_url" target="_blank" rel="noopener">
{{ candidateBridgeRes.language }} · {{ candidateBridgeRes.film_title || t('gospel.res.jesusFilm') }} ↗</a>
<a class="gm-chip wrap"
:href="tableLink({ iso: candidateBridgeRes.iso, label: candidateBridgeRes.language })">
{{ t('gospel.sheet.everyResource') }} {{ candidateBridgeRes.language }} →</a>
</div>
</div>
<p v-if="selectedGroup.scripture_title || selectedGroup.scripture_scope" class="gm-scope">
@ -1892,6 +2076,38 @@ useShadowStyles(
Society</b> and <b>DOOR International</b>, both of which need a key or an
agreement — this gap closes by asking them, not by searching harder.
</p>
<!-- ═══ AND HERE IS THE ONE WAY IN THAT EXISTS TODAY ════════════════════════════
The paragraph above explains the gap honestly and then leaves a mobiliser with
nothing to do, which for 93 groups and 17.5 million people is every Deaf group
on this map. A spoken bridge cannot reach them, so they were the only population
here with nothing AND no way in — structurally, not by bad luck.
SUN is a signed language built to be learnt ACROSS sign languages, with Scripture
in it. It is a bridge in the same sense the spoken ones are: it has to be learnt,
and it is no substitute for Scripture in their own sign language — which is why
it changes no tier and sits below the gap rather than closing it. -->
<div v-if="deafBridge" class="gm-sign" style="border-left-color:#92b195" dir="ltr">
<b>There is one signed language with Scripture in it.</b>
<br><b>SUN</b> is built to be learnt across sign languages rather than being tied to
one country, so it can be learnt by a Deaf community whose own sign language has
nothing. Published by {{ deafBridge.publisher }}.
<br><em>A bridge, not a translation</em> — it has to be learnt, and the gap in their
own sign language is unchanged.
<div class="gm-chips">
<a v-if="deafBridge.scripture" class="gm-chip ok wrap"
:href="deafBridge.scripture.u" target="_blank" rel="noopener">{{ deafBridge.scripture.t }} ↗</a>
<a v-if="deafBridge.stories" class="gm-chip ok wrap"
:href="deafBridge.stories.u" target="_blank" rel="noopener">{{ deafBridge.stories.t }} ↗</a>
<a v-if="deafBridge.about" class="gm-chip wrap"
:href="deafBridge.about" target="_blank" rel="noopener">About SUN ↗</a>
</div>
<!-- A named local partner is the difference between a resource and somebody to
call, so it is shown only where SUN itself says the work is already running. -->
<p v-if="deafBridge.organisation" class="gm-note" style="margin:6px 0 0">
SUN is already being taught in {{ selectedGroup.countries }} by
<b>{{ deafBridge.organisation }}</b>.
</p>
</div>
</div>
<!-- THE MAP'S OWN PROMPT, ANSWERED. Its toast has always said "someone still needs
@ -2059,6 +2275,7 @@ useShadowStyles(
{{ g.language }}<code class="gm-code">{{ g.iso639_3 || 'no code' }}</code>
· {{ fmt(g.population) }} people
</span>
<span v-if="wayInFor(g)" class="gm-pg-way">way in: {{ wayInFor(g) }}</span>
</button>
<div v-if="withoutResources.length > shown" class="gm-more">
Showing {{ shown }} of {{ withoutResources.length }}.

View file

@ -760,6 +760,26 @@ for (const p of slim) {
* reason GRN is skipped for them above.
*/
const bridgeCandidates = {}
/**
* ONE definition of "this language has a readable Scripture", used by both pickers below.
*
* ⚠ WRITTEN OUT TWICE FIRST, AND THE SECOND COPY WAS A FIELD SHORT — it checked s, se and d and
* forgot that Faith Comes By Hearing carries TEXT on the audio record (au.m says so). MEASURED:
* Bambara has the JESUS Film and a 66-book FCBH text Bible, and was filtered out of Mali's
* bridge candidates for lack of Scripture, handing the recommendation to French. Bambara is
* Mali's vehicular language. That is the field-list-goes-stale bug the surfaces gate exists for,
* reproduced inside a build script where no gate was watching.
*/
const hasReadableScripture = (c) =>
!!c && (!!c.s || !!c.se || !!(c.au && /text/.test(c.au.m || '')) ||
(c.d || []).some((d) => !/^Open Bible Stories/.test(d.s || '')))
/* What each country actually speaks, with each language's share OF THE COUNTRY. Absent input is
not fatal: every candidate then falls back to the pinned-population proxy, as before. */
let countryLangs = {}
try {
countryLangs = JSON.parse(readFileSync(resolve(REPO, 'data/tables/country-languages.json'), 'utf8')).byCountry || {}
} catch { /* no CLDR table in this tree */ }
{
const pool = {}
const cpop = {}
@ -773,7 +793,7 @@ const bridgeCandidates = {}
const slot = (e[code] ||= { n: 0, pop: 0, l: c.l || '', s: false, f: false })
slot.n += 1
slot.pop += pop
slot.s = slot.s || !!c.s || !!c.se || (c.d || []).some((d) => !/^Open Bible Stories/.test(d.s || ''))
slot.s = slot.s || hasReadableScripture(c)
slot.f = slot.f || !!c.f
}
for (const p of pins) {
@ -782,6 +802,42 @@ const bridgeCandidates = {}
if (codes[code] && codes[code].sg === 1) continue
const key = `${code}|${iso3}`
if (bridges[key] || bridgeCandidates[key]) continue
/* ═══ ASK WHAT THE COUNTRY SPEAKS, NOT WHAT THE UNREACHED SPEAK ═══════════════════════
* The pin-derived pick below answers "the biggest language among Doxa's UNREACHED groups
* here", which is not the language a community shares with its neighbours. For Syenara
* Senufo in Mali it proposed Minianka — one people group — while Mali's vehicular language
* is Bambara at 46% of the country. CLDR is asked first, and only it can supply a share OF
* THE COUNTRY, which is the denominator a reader assumes when they see a percentage.
* Still filtered by what this index can actually offer: a bridge with no Scripture and no
* film behind it is a name, not a way in. */
const spoken = (countryLangs[iso3] || [])
.filter((x) => x.c !== code && codes[x.c] && !!codes[x.c].f && hasReadableScripture(codes[x.c]))
/* Official status breaks a tie between equal shares — Mali's French and Bambara are both
46% — because the official one is the likelier second language to already be taught. */
const ranked = spoken.sort((a, b) => (b.pct - a.pct) || (b.official - a.official))
const cldrBest = ranked[0]
if (cldrBest) {
/* ⚠ WHEN TWO LANGUAGES ARE TIED, PICKING ONE IS AN EDITORIAL ACT, NOT A MEASUREMENT.
* Mali is exactly this: French 46% and official, Bambara 46% and not. French is the
* administrative language, Bambara is what people actually share in a market or a
* village, and which one bridges better depends on whether the reader is handing over
* a booklet or starting a conversation. The panel already says the choice is a local
* question; so where a runner-up is within five points, BOTH are shipped and the reader
* decides. A tie-break here would have quietly answered a question nobody asked it. */
const alt = ranked[1] && (cldrBest.pct - ranked[1].pct) <= 5 ? ranked[1] : null
bridgeCandidates[key] = {
l: codes[cldrBest.c]?.l || cldrBest.l,
c: cldrBest.c,
pct: cldrBest.pct,
official: cldrBest.official,
src: 'cldr',
...(alt ? { alt: { l: codes[alt.c]?.l || alt.l, c: alt.c, pct: alt.pct, official: alt.official } } : {}),
}
continue
}
/* FALLBACK, and it says so on the row. CLDR lists no language here that this index can
offer, so the old proxy is better than nothing — but its percentage is a share of the
PINNED population, a different denominator, and the surfaces read `src` to say which. */
const best = Object.entries(pool[iso3] || {})
.filter(([cc, s]) => cc !== code && s.s && s.f)
.sort((a, b) => b[1].pop - a[1].pop)[0]
@ -790,12 +846,47 @@ const bridgeCandidates = {}
bridgeCandidates[key] = {
l: best[1].l, c: best[0], n: best[1].n,
pct: tot ? Math.round((1000 * best[1].pop) / tot) / 10 : 0,
src: 'pins',
}
}
}
/**
* ═══ THE DEAF BRIDGE TRAVELS WITH THE INDEX ═══════════════════════════════════════════════
*
* SUN reached the access table and the CSV first, and the MAP — the surface a mobiliser
* actually opens — still showed Deaf groups a panel that explained their situation and offered
* no way out of it. That is the largest population on this map with nothing: 93 groups, 17.5
* million people.
*
* Carried here rather than fetched by the leaf, for the same reason the bridges are: one
* source, so the sheet and the table cannot disagree about what exists. It is a single small
* object, not a per-language join — SUN is ONE signed language for all of them, which is the
* whole point of it.
*
* Absent input is not fatal: the map simply shows what it showed before.
*/
let sun = null
try {
const raw = JSON.parse(readFileSync(resolve(REPO, 'data/tables/sun-deaf-index.json'), 'utf8'))
const pick = (k) => (raw.resources || []).find((r) => r.key === k)
const scripture = pick('new_testament') || (raw.resources || [])[0]
sun = {
publisher: raw.meta?.publisher || '',
scripture: scripture ? { u: scripture.url, t: scripture.label } : null,
stories: (() => { const r = pick('bible_stories'); return r ? { u: r.url, t: r.label } : null })(),
about: (() => { const r = pick('home'); return r ? r.url : '' })(),
/* Country -> the local Deaf church or organisation already teaching it. A named partner is
the difference between a resource and somebody to call. */
byCountry: Object.fromEntries((raw.projects || []).map((p) => [
String(p.country || '').toLowerCase().replace(/[^a-z]/g, ''), p.organisation,
])),
}
} catch { /* no SUN index in this tree: the Deaf panel stays as it was */ }
const out = {
sun,
bridges,
bridgeCandidates,
_note: 'Generated by scripts/build-people-group-pins.mjs. pins=[name,lat,lng,iso3,code,pop,tier]; URLs live in codes[] by ISO 639-3. No URL is invented here.',

View file

@ -0,0 +1,123 @@
/**
* fetch-country-languages.mjs — which languages are actually SPOKEN in a country, and by what
* share of it.
*
* WHY THIS EXISTS. The bridge CANDIDATE — the "possibly a way in" offered to a group with
* nothing — was chosen from Doxa's own pins: the language with the largest pinned population in
* that country that has Scripture and the film. Doxa's roster is 2,107 UNREACHED groups, so that
* is the biggest language among the unreached, which is not the language a community actually
* shares with its neighbours. Measured: for Syenara Senufo in Mali it proposed MINIANKA, one
* people group. Mali's actual vehicular language is Bambara, spoken by most of the country.
*
* Worse, the number shipped beside it read "8.8% of this country's mapped population" — a share
* of Doxa's unreached PINS, which a reader will take for a share of the country. A percentage
* measured against a denominator nobody can see is not a caveat, it is a wrong number.
*
* WHAT THIS USES. CLDR's territoryInfo, which carries, per territory, each language's share of
* the population and whether it is official. That is the published answer to "what is spoken
* here", maintained by Unicode, and it is the right denominator: the country.
*
* ⚠ PINNED, NOT `main`. cldr-json's main branch moves; a bridge recommendation changing because
* an upstream branch advanced is not something anyone would think to look for.
*
* THE JOIN. CLDR speaks BCP-47, this build speaks ISO 639-3, and the two meet through the Part1
* column of SIL's own iso-639-3 table — 184 languages carry a 639-1 code. A CLDR tag with no
* 639-3 equivalent is dropped rather than guessed; a guess here would put a language in a
* country on no authority at all.
*/
import { writeFileSync } from 'node:fs'
import { resolve, dirname } from 'node:path'
import { fileURLToPath } from 'node:url'
const HERE = dirname(fileURLToPath(import.meta.url))
const REPO = resolve(HERE, '../../..')
const OUT = resolve(REPO, 'data/tables/country-languages.json')
const UA = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0 Safari/537.36'
const CLDR = 'https://cdn.jsdelivr.net/npm/cldr-core@46.0.0/supplemental/territoryInfo.json'
const ISO = 'https://iso639-3.sil.org/sites/iso639-3/files/downloads/iso-639-3.tab'
/* Keyed by ISO3 on the way out, so the pin builder joins on the code it already has. The
mapping comes from the SAME pinned CLDR release as the language data, rather than a second
host with its own release cycle. */
const CODES = 'https://cdn.jsdelivr.net/npm/cldr-core@46.0.0/supplemental/codeMappings.json'
const get = async (url) => {
const r = await fetch(url, { headers: { 'user-agent': UA }, signal: AbortSignal.timeout(90000) })
if (!r.ok) throw new Error(`${url} -> ${r.status}`)
return r.text()
}
/* Part1 (639-1) -> Id (639-3), plus the reference name, from SIL's own table. */
const tab = await get(ISO)
const toIso3 = {}
const refName = {}
for (const line of tab.split('\n').slice(1)) {
const f = line.split('\t')
if (f.length < 7) continue
const [id, , , part1, , , name] = f
if (!id) continue
refName[id] = (name || '').trim()
if (part1 && part1.trim()) toIso3[part1.trim()] = id.trim()
}
const codeMap = JSON.parse(await get(CODES)).supplemental.codeMappings
const alpha3 = {}
for (const [terr, v] of Object.entries(codeMap)) {
if (/^[A-Z]{2}$/.test(terr) && v && v._alpha3) alpha3[terr] = v._alpha3
}
const cldr = JSON.parse(await get(CLDR)).supplemental.territoryInfo
const byCountry = {}
let dropped = 0
let noAlpha3 = 0
for (const [terr, info] of Object.entries(cldr)) {
/* Two-letter territories only: CLDR also carries numeric macro-regions like 001 (World),
which are not countries and would put "spoken in the World" into a bridge recommendation. */
if (!/^[A-Z]{2}$/.test(terr)) continue
const langs = []
for (const [tag, lp] of Object.entries(info.languagePopulation || {})) {
/* A tag like en_GB or zh_Hans carries a script or region; the base language is what a
speaker shares with a neighbour, so it is taken and the variant dropped. */
const base = tag.split(/[-_]/)[0]
const iso3 = toIso3[base] || (base.length === 3 ? base : null)
if (!iso3) { dropped++; continue }
const pct = Number(lp._populationPercent)
if (!Number.isFinite(pct)) continue
langs.push({
c: iso3,
l: refName[iso3] || base,
pct: Math.round(pct * 10) / 10,
official: !!lp._officialStatus,
})
}
if (!langs.length) continue
/* Largest share first: that is the order a reader would want to judge a bridge in. */
langs.sort((a, b) => b.pct - a.pct)
const key = alpha3[terr]
if (!key) { noAlpha3++; continue }
byCountry[key] = langs
}
const countries = Object.keys(byCountry).length
if (countries < 150) {
console.error(`COUNTRY-LANGUAGES: REFUSING TO WRITE — only ${countries} countries parsed.`)
console.error(' A thin file would silently narrow every bridge recommendation that reads it.')
process.exitCode = 1
} else {
writeFileSync(OUT, `${JSON.stringify({
meta: {
title: 'Languages spoken per country, with each share of the country',
sources: [CLDR, ISO],
generated: new Date().toISOString().slice(0, 10),
countries,
note: 'CLDR territoryInfo joined to ISO 639-3 through SIL\'s Part1 column. Percentages are ' +
'of the COUNTRY\'s population, which is the denominator a reader assumes. A CLDR tag ' +
'with no ISO 639-3 equivalent is dropped, never guessed.',
cldr_tags_dropped_no_iso639_3: dropped,
territories_dropped_no_alpha3: noAlpha3,
},
byCountry,
}, null, 1)}\n`)
console.log(`country-languages: ${countries} countries (keyed by ISO3), ${dropped} CLDR tag(s) dropped for having no ISO 639-3, ${noAlpha3} territory(ies) with no alpha-3`)
console.log(`wrote ${OUT}`)
}

File diff suppressed because one or more lines are too long

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <all-people-groups> custom element. -->
<script src="../all-people-groups.js" integrity="sha384-hVWmJUfcmDvVx9RfLXMsJYA5Dd5TiBhLNzwAZtto5JQDW5siH5PJTd/5xWEGHCMA" crossorigin="anonymous"></script>
<script src="../all-people-groups.js" integrity="sha384-Fk1cAFe2MbBsG2gfJQc2QNoG8CySIPOn0GWATpJ1uBlH51zspyobkOkzWAAXhn3H" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -37,7 +37,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <bp-big-picture> custom element. -->
<script src="../../big-picture.js" integrity="sha384-CaUw4BXi2ILBm6z80vT65HC5TSuDBz4pDGLJkTudRnUTQ0+erjMyPI59vIIwqkgo" crossorigin="anonymous"></script>
<script src="../../big-picture.js" integrity="sha384-pmc+jltlmIQtPfiI/n9rmjWAZlRd3SVPkTUjJpbv8BNAKC+S6PHyS9Z4YqeIwolQ" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -37,7 +37,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <bp-big-picture> custom element. -->
<script src="../../big-picture.js" integrity="sha384-CaUw4BXi2ILBm6z80vT65HC5TSuDBz4pDGLJkTudRnUTQ0+erjMyPI59vIIwqkgo" crossorigin="anonymous"></script>
<script src="../../big-picture.js" integrity="sha384-pmc+jltlmIQtPfiI/n9rmjWAZlRd3SVPkTUjJpbv8BNAKC+S6PHyS9Z4YqeIwolQ" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -37,7 +37,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <bp-big-picture> custom element. -->
<script src="../big-picture.js" integrity="sha384-CaUw4BXi2ILBm6z80vT65HC5TSuDBz4pDGLJkTudRnUTQ0+erjMyPI59vIIwqkgo" crossorigin="anonymous"></script>
<script src="../big-picture.js" integrity="sha384-pmc+jltlmIQtPfiI/n9rmjWAZlRd3SVPkTUjJpbv8BNAKC+S6PHyS9Z4YqeIwolQ" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

File diff suppressed because one or more lines are too long

View file

@ -26,7 +26,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <cities-internet-map> custom element. -->
<script src="../cities-internet.js" integrity="sha384-W33t3yGdG/uWHVWWqezPkJjFDX+9DzWfcWX8k8/9pLvFzj3WgAzorPCLXHp7nn/w" crossorigin="anonymous"></script>
<script src="../cities-internet.js" integrity="sha384-rGZtmnXJNSJwdxwKqNsG3ATtfDLSMPsPtF7QwR8kjUZIZOz/l0hDTNMWLbaE5Ayq" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <cities-internet-map> custom element. -->
<script src="../cities-internet.js" integrity="sha384-W33t3yGdG/uWHVWWqezPkJjFDX+9DzWfcWX8k8/9pLvFzj3WgAzorPCLXHp7nn/w" crossorigin="anonymous"></script>
<script src="../cities-internet.js" integrity="sha384-rGZtmnXJNSJwdxwKqNsG3ATtfDLSMPsPtF7QwR8kjUZIZOz/l0hDTNMWLbaE5Ayq" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -26,7 +26,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <cities-internet-map> custom element. -->
<script src="../cities-internet.js" integrity="sha384-W33t3yGdG/uWHVWWqezPkJjFDX+9DzWfcWX8k8/9pLvFzj3WgAzorPCLXHp7nn/w" crossorigin="anonymous"></script>
<script src="../cities-internet.js" integrity="sha384-rGZtmnXJNSJwdxwKqNsG3ATtfDLSMPsPtF7QwR8kjUZIZOz/l0hDTNMWLbaE5Ayq" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <country-posters-map> custom element. -->
<script src="../country-posters.js" integrity="sha384-KtF4c17Xk0HixYcvWc2mk2Sga0ew+QVYsEo9GMOMPgzX4PAdKcuzbroMgjKu9TPG" crossorigin="anonymous"></script>
<script src="../country-posters.js" integrity="sha384-Qk/vQqU8IjKhxJLq5rZ4ccJSQTFGWGyERKNUlzviZe2x1ifcRBbmu+gPNRbD3nuK" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -26,7 +26,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <country-posters-map> custom element. -->
<script src="../country-posters.js" integrity="sha384-KtF4c17Xk0HixYcvWc2mk2Sga0ew+QVYsEo9GMOMPgzX4PAdKcuzbroMgjKu9TPG" crossorigin="anonymous"></script>
<script src="../country-posters.js" integrity="sha384-Qk/vQqU8IjKhxJLq5rZ4ccJSQTFGWGyERKNUlzviZe2x1ifcRBbmu+gPNRbD3nuK" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -40,7 +40,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <country-posters-map> custom element. -->
<script src="../country-posters.js" integrity="sha384-KtF4c17Xk0HixYcvWc2mk2Sga0ew+QVYsEo9GMOMPgzX4PAdKcuzbroMgjKu9TPG" crossorigin="anonymous"></script>
<script src="../country-posters.js" integrity="sha384-Qk/vQqU8IjKhxJLq5rZ4ccJSQTFGWGyERKNUlzviZe2x1ifcRBbmu+gPNRbD3nuK" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -40,7 +40,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <dashboard-plus-grid> custom element. -->
<script src="../../dashboard-plus-grid.js" integrity="sha384-/E4UhCPqZAn+gwwHuwkLrLgbfrTwGp8x6tgsdDo/pqDHttv0z7Ln7r7wfPYSHSAU" crossorigin="anonymous"></script>
<script src="../../dashboard-plus-grid.js" integrity="sha384-L6zSKq1tvgdy6CLFedrkA+q9WdLdEtnwe2JCSZBHikYv82IakJTX4kRfkKe9ENIY" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -40,7 +40,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <dashboard-plus-grid> custom element. -->
<script src="../dashboard-plus-grid.js" integrity="sha384-/E4UhCPqZAn+gwwHuwkLrLgbfrTwGp8x6tgsdDo/pqDHttv0z7Ln7r7wfPYSHSAU" crossorigin="anonymous"></script>
<script src="../dashboard-plus-grid.js" integrity="sha384-L6zSKq1tvgdy6CLFedrkA+q9WdLdEtnwe2JCSZBHikYv82IakJTX4kRfkKe9ENIY" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

File diff suppressed because one or more lines are too long

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <demo-map> custom element. -->
<script src="../demo-map.js" integrity="sha384-B9GTF53Kly+NAnwh7X9H2eiXIp2Gr/tatFhWfyi8OQdqB8iQerjl2635eRWBTmpc" crossorigin="anonymous"></script>
<script src="../demo-map.js" integrity="sha384-pQboGJuKCps0vTF6EI1gPDLlyZuLoDZTpH3HbbV7ROXstB6UmAVdvrzDk4K0uh4G" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -27,7 +27,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <demo-map> custom element. -->
<script src="../../demo-map.js" integrity="sha384-B9GTF53Kly+NAnwh7X9H2eiXIp2Gr/tatFhWfyi8OQdqB8iQerjl2635eRWBTmpc" crossorigin="anonymous"></script>
<script src="../../demo-map.js" integrity="sha384-pQboGJuKCps0vTF6EI1gPDLlyZuLoDZTpH3HbbV7ROXstB6UmAVdvrzDk4K0uh4G" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -13,7 +13,7 @@
"bundle": "all-people-groups",
"scriptUrl": "./all-people-groups/all-people-groups.js",
"output": "dx-maps/all-people-groups/all-people-groups.js",
"integrity": "sha384-hVWmJUfcmDvVx9RfLXMsJYA5Dd5TiBhLNzwAZtto5JQDW5siH5PJTd/5xWEGHCMA",
"integrity": "sha384-Fk1cAFe2MbBsG2gfJQc2QNoG8CySIPOn0GWATpJ1uBlH51zspyobkOkzWAAXhn3H",
"elements": [
"all-people-groups"
],
@ -29,7 +29,7 @@
"scriptUrl": "./all-people-groups/all-people-groups.js",
"embed": {
"iframe": "<iframe src=\"./all-people-groups/all-people-groups/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./all-people-groups/all-people-groups.js\" integrity=\"sha384-hVWmJUfcmDvVx9RfLXMsJYA5Dd5TiBhLNzwAZtto5JQDW5siH5PJTd/5xWEGHCMA\" crossorigin=\"anonymous\"></script>\n<all-people-groups profile-config='{\"profile\":\"all-people-groups\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></all-people-groups>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./all-people-groups/all-people-groups.js\" integrity=\"sha384-Fk1cAFe2MbBsG2gfJQc2QNoG8CySIPOn0GWATpJ1uBlH51zspyobkOkzWAAXhn3H\" crossorigin=\"anonymous\"></script>\n<all-people-groups profile-config='{\"profile\":\"all-people-groups\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></all-people-groups>"
},
"bundle": "all-people-groups"
}
@ -39,7 +39,7 @@
"bundle": "big-picture",
"scriptUrl": "./big-picture/big-picture.js",
"output": "dx-maps/big-picture/big-picture.js",
"integrity": "sha384-CaUw4BXi2ILBm6z80vT65HC5TSuDBz4pDGLJkTudRnUTQ0+erjMyPI59vIIwqkgo",
"integrity": "sha384-pmc+jltlmIQtPfiI/n9rmjWAZlRd3SVPkTUjJpbv8BNAKC+S6PHyS9Z4YqeIwolQ",
"elements": [
"bp-big-picture",
"bp-research-header",
@ -61,7 +61,7 @@
"scriptUrl": "./big-picture/big-picture.js",
"embed": {
"iframe": "<iframe src=\"./big-picture/big-picture/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./big-picture/big-picture.js\" integrity=\"sha384-CaUw4BXi2ILBm6z80vT65HC5TSuDBz4pDGLJkTudRnUTQ0+erjMyPI59vIIwqkgo\" crossorigin=\"anonymous\"></script>\n<bp-big-picture profile-config='{\"profile\":\"big-picture\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></bp-big-picture>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./big-picture/big-picture.js\" integrity=\"sha384-pmc+jltlmIQtPfiI/n9rmjWAZlRd3SVPkTUjJpbv8BNAKC+S6PHyS9Z4YqeIwolQ\" crossorigin=\"anonymous\"></script>\n<bp-big-picture profile-config='{\"profile\":\"big-picture\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></bp-big-picture>"
},
"instances": [
{
@ -105,7 +105,7 @@
"bundle": "cities-internet",
"scriptUrl": "./cities-internet/cities-internet.js",
"output": "dx-maps/cities-internet/cities-internet.js",
"integrity": "sha384-W33t3yGdG/uWHVWWqezPkJjFDX+9DzWfcWX8k8/9pLvFzj3WgAzorPCLXHp7nn/w",
"integrity": "sha384-rGZtmnXJNSJwdxwKqNsG3ATtfDLSMPsPtF7QwR8kjUZIZOz/l0hDTNMWLbaE5Ayq",
"elements": [
"cities-internet-map"
],
@ -121,7 +121,7 @@
"scriptUrl": "./cities-internet/cities-internet.js",
"embed": {
"iframe": "<iframe src=\"./cities-internet/connectivity-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-W33t3yGdG/uWHVWWqezPkJjFDX+9DzWfcWX8k8/9pLvFzj3WgAzorPCLXHp7nn/w\" crossorigin=\"anonymous\"></script>\n<cities-internet-map profile-config='{\"profile\":\"connectivity-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></cities-internet-map>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-rGZtmnXJNSJwdxwKqNsG3ATtfDLSMPsPtF7QwR8kjUZIZOz/l0hDTNMWLbaE5Ayq\" crossorigin=\"anonymous\"></script>\n<cities-internet-map profile-config='{\"profile\":\"connectivity-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></cities-internet-map>"
}
},
{
@ -135,7 +135,7 @@
"scriptUrl": "./cities-internet/cities-internet.js",
"embed": {
"iframe": "<iframe src=\"./cities-internet/connectivity-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-W33t3yGdG/uWHVWWqezPkJjFDX+9DzWfcWX8k8/9pLvFzj3WgAzorPCLXHp7nn/w\" crossorigin=\"anonymous\"></script>\n<cities-internet-map profile-config='{\"profile\":\"connectivity-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></cities-internet-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-rGZtmnXJNSJwdxwKqNsG3ATtfDLSMPsPtF7QwR8kjUZIZOz/l0hDTNMWLbaE5Ayq\" crossorigin=\"anonymous\"></script>\n<cities-internet-map profile-config='{\"profile\":\"connectivity-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></cities-internet-map>"
}
},
{
@ -149,7 +149,7 @@
"scriptUrl": "./cities-internet/cities-internet.js",
"embed": {
"iframe": "<iframe src=\"./cities-internet/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-W33t3yGdG/uWHVWWqezPkJjFDX+9DzWfcWX8k8/9pLvFzj3WgAzorPCLXHp7nn/w\" crossorigin=\"anonymous\"></script>\n<cities-internet-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></cities-internet-map>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-rGZtmnXJNSJwdxwKqNsG3ATtfDLSMPsPtF7QwR8kjUZIZOz/l0hDTNMWLbaE5Ayq\" crossorigin=\"anonymous\"></script>\n<cities-internet-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></cities-internet-map>"
}
}
]
@ -158,7 +158,7 @@
"bundle": "country-posters",
"scriptUrl": "./country-posters/country-posters.js",
"output": "dx-maps/country-posters/country-posters.js",
"integrity": "sha384-KtF4c17Xk0HixYcvWc2mk2Sga0ew+QVYsEo9GMOMPgzX4PAdKcuzbroMgjKu9TPG",
"integrity": "sha384-Qk/vQqU8IjKhxJLq5rZ4ccJSQTFGWGyERKNUlzviZe2x1ifcRBbmu+gPNRbD3nuK",
"elements": [
"country-posters-map"
],
@ -178,7 +178,7 @@
"scriptUrl": "./country-posters/country-posters.js",
"embed": {
"iframe": "<iframe src=\"./country-posters/countries-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./country-posters/country-posters.js\" integrity=\"sha384-KtF4c17Xk0HixYcvWc2mk2Sga0ew+QVYsEo9GMOMPgzX4PAdKcuzbroMgjKu9TPG\" crossorigin=\"anonymous\"></script>\n<country-posters-map profile-config='{\"profile\":\"countries-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></country-posters-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./country-posters/country-posters.js\" integrity=\"sha384-Qk/vQqU8IjKhxJLq5rZ4ccJSQTFGWGyERKNUlzviZe2x1ifcRBbmu+gPNRbD3nuK\" crossorigin=\"anonymous\"></script>\n<country-posters-map profile-config='{\"profile\":\"countries-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></country-posters-map>"
}
},
{
@ -192,7 +192,7 @@
"scriptUrl": "./country-posters/country-posters.js",
"embed": {
"iframe": "<iframe src=\"./country-posters/country-poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./country-posters/country-posters.js\" integrity=\"sha384-KtF4c17Xk0HixYcvWc2mk2Sga0ew+QVYsEo9GMOMPgzX4PAdKcuzbroMgjKu9TPG\" crossorigin=\"anonymous\"></script>\n<country-posters-map profile-config='{\"profile\":\"country-poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></country-posters-map>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./country-posters/country-posters.js\" integrity=\"sha384-Qk/vQqU8IjKhxJLq5rZ4ccJSQTFGWGyERKNUlzviZe2x1ifcRBbmu+gPNRbD3nuK\" crossorigin=\"anonymous\"></script>\n<country-posters-map profile-config='{\"profile\":\"country-poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></country-posters-map>"
}
},
{
@ -206,7 +206,7 @@
"scriptUrl": "./country-posters/country-posters.js",
"embed": {
"iframe": "<iframe src=\"./country-posters/country-posters-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./country-posters/country-posters.js\" integrity=\"sha384-KtF4c17Xk0HixYcvWc2mk2Sga0ew+QVYsEo9GMOMPgzX4PAdKcuzbroMgjKu9TPG\" crossorigin=\"anonymous\"></script>\n<country-posters-map profile-config='{\"profile\":\"country-posters-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></country-posters-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./country-posters/country-posters.js\" integrity=\"sha384-Qk/vQqU8IjKhxJLq5rZ4ccJSQTFGWGyERKNUlzviZe2x1ifcRBbmu+gPNRbD3nuK\" crossorigin=\"anonymous\"></script>\n<country-posters-map profile-config='{\"profile\":\"country-posters-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></country-posters-map>"
}
}
]
@ -215,7 +215,7 @@
"bundle": "dashboard-plus-grid",
"scriptUrl": "./dashboard-plus-grid/dashboard-plus-grid.js",
"output": "dx-maps/dashboard-plus-grid/dashboard-plus-grid.js",
"integrity": "sha384-/E4UhCPqZAn+gwwHuwkLrLgbfrTwGp8x6tgsdDo/pqDHttv0z7Ln7r7wfPYSHSAU",
"integrity": "sha384-L6zSKq1tvgdy6CLFedrkA+q9WdLdEtnwe2JCSZBHikYv82IakJTX4kRfkKe9ENIY",
"elements": [
"dashboard-plus-grid"
],
@ -235,7 +235,7 @@
"scriptUrl": "./dashboard-plus-grid/dashboard-plus-grid.js",
"embed": {
"iframe": "<iframe src=\"./dashboard-plus-grid/dashboard-plus-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./dashboard-plus-grid/dashboard-plus-grid.js\" integrity=\"sha384-/E4UhCPqZAn+gwwHuwkLrLgbfrTwGp8x6tgsdDo/pqDHttv0z7Ln7r7wfPYSHSAU\" crossorigin=\"anonymous\"></script>\n<dashboard-plus-grid profile-config='{\"profile\":\"dashboard-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></dashboard-plus-grid>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./dashboard-plus-grid/dashboard-plus-grid.js\" integrity=\"sha384-L6zSKq1tvgdy6CLFedrkA+q9WdLdEtnwe2JCSZBHikYv82IakJTX4kRfkKe9ENIY\" crossorigin=\"anonymous\"></script>\n<dashboard-plus-grid profile-config='{\"profile\":\"dashboard-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></dashboard-plus-grid>"
},
"instances": [
{
@ -259,7 +259,7 @@
"bundle": "demo-map",
"scriptUrl": "./demo-map/demo-map.js",
"output": "dx-maps/demo-map/demo-map.js",
"integrity": "sha384-B9GTF53Kly+NAnwh7X9H2eiXIp2Gr/tatFhWfyi8OQdqB8iQerjl2635eRWBTmpc",
"integrity": "sha384-pQboGJuKCps0vTF6EI1gPDLlyZuLoDZTpH3HbbV7ROXstB6UmAVdvrzDk4K0uh4G",
"elements": [
"demo-map"
],
@ -275,7 +275,7 @@
"scriptUrl": "./demo-map/demo-map.js",
"embed": {
"iframe": "<iframe src=\"./demo-map/demo-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./demo-map/demo-map.js\" integrity=\"sha384-B9GTF53Kly+NAnwh7X9H2eiXIp2Gr/tatFhWfyi8OQdqB8iQerjl2635eRWBTmpc\" crossorigin=\"anonymous\"></script>\n<demo-map profile-config='{\"profile\":\"demo-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></demo-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./demo-map/demo-map.js\" integrity=\"sha384-pQboGJuKCps0vTF6EI1gPDLlyZuLoDZTpH3HbbV7ROXstB6UmAVdvrzDk4K0uh4G\" crossorigin=\"anonymous\"></script>\n<demo-map profile-config='{\"profile\":\"demo-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></demo-map>"
},
"instances": [
{
@ -354,7 +354,7 @@
"bundle": "doxa-research-map",
"scriptUrl": "./doxa-research-map/doxa-research-map.js",
"output": "dx-maps/doxa-research-map/doxa-research-map.js",
"integrity": "sha384-mDbpT8KH1ZCrzzy+6imms4GTbbNEQob6QPmN5Ic8B91dFwoohdQId7LN25h1Su/r",
"integrity": "sha384-N3gXkdDxxB9NTvUTGajmPBFLpGwKNe1Z0IjT7LspYBMDBmVxGSmsWg72WRyGAhyg",
"elements": [
"doxa-research-map"
],
@ -370,7 +370,7 @@
"scriptUrl": "./doxa-research-map/doxa-research-map.js",
"embed": {
"iframe": "<iframe src=\"./doxa-research-map/research-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./doxa-research-map/doxa-research-map.js\" integrity=\"sha384-mDbpT8KH1ZCrzzy+6imms4GTbbNEQob6QPmN5Ic8B91dFwoohdQId7LN25h1Su/r\" crossorigin=\"anonymous\"></script>\n<doxa-research-map profile-config='{\"profile\":\"research-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></doxa-research-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./doxa-research-map/doxa-research-map.js\" integrity=\"sha384-N3gXkdDxxB9NTvUTGajmPBFLpGwKNe1Z0IjT7LspYBMDBmVxGSmsWg72WRyGAhyg\" crossorigin=\"anonymous\"></script>\n<doxa-research-map profile-config='{\"profile\":\"research-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></doxa-research-map>"
},
"instances": [
{
@ -396,7 +396,7 @@
"bundle": "doxa-simple-map",
"scriptUrl": "./doxa-simple-map/doxa-simple-map.js",
"output": "dx-maps/doxa-simple-map/doxa-simple-map.js",
"integrity": "sha384-WsIV9Fm9rPNo2A9e3lavYZvhImkiGl1gUVZdmxiLzt2S3ZTLh3haZDG++0pYoAx+",
"integrity": "sha384-i2FnC9KrSn/cnEHqCtaXIWMZKEKMWOp54vyhAMGD3zE4sZUIg1g/j3Smz5ocfUkh",
"elements": [
"doxa-map",
"doxa-simple-map"
@ -413,7 +413,7 @@
"scriptUrl": "./doxa-simple-map/doxa-simple-map.js",
"embed": {
"iframe": "<iframe src=\"./doxa-simple-map/doxa-simple-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./doxa-simple-map/doxa-simple-map.js\" integrity=\"sha384-WsIV9Fm9rPNo2A9e3lavYZvhImkiGl1gUVZdmxiLzt2S3ZTLh3haZDG++0pYoAx+\" crossorigin=\"anonymous\"></script>\n<doxa-map profile-config='{\"profile\":\"doxa-simple-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></doxa-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./doxa-simple-map/doxa-simple-map.js\" integrity=\"sha384-i2FnC9KrSn/cnEHqCtaXIWMZKEKMWOp54vyhAMGD3zE4sZUIg1g/j3Smz5ocfUkh\" crossorigin=\"anonymous\"></script>\n<doxa-map profile-config='{\"profile\":\"doxa-simple-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></doxa-map>"
},
"instances": [
{
@ -579,7 +579,7 @@
"bundle": "gospel-resources",
"scriptUrl": "./gospel-resources/gospel-resources.js",
"output": "dx-maps/gospel-resources/gospel-resources.js",
"integrity": "sha384-e8fVkQLYt1CmQJcdTAxPz8aMlM7w8TfzEpV5MZ3ZXVSnJ13TH+mB+GSHxibjFx/y",
"integrity": "sha384-t3yOm+SFRl+f76jNfvUMMCoQzemnJVtag23epn54Vla/wPHj4xfyYsBC1uYcvmHT",
"elements": [
"gospel-resources-map"
],
@ -599,7 +599,7 @@
"scriptUrl": "./gospel-resources/gospel-resources.js",
"embed": {
"iframe": "<iframe src=\"./gospel-resources/charts/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-e8fVkQLYt1CmQJcdTAxPz8aMlM7w8TfzEpV5MZ3ZXVSnJ13TH+mB+GSHxibjFx/y\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"charts\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-t3yOm+SFRl+f76jNfvUMMCoQzemnJVtag23epn54Vla/wPHj4xfyYsBC1uYcvmHT\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"charts\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
}
},
{
@ -613,7 +613,7 @@
"scriptUrl": "./gospel-resources/gospel-resources.js",
"embed": {
"iframe": "<iframe src=\"./gospel-resources/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-e8fVkQLYt1CmQJcdTAxPz8aMlM7w8TfzEpV5MZ3ZXVSnJ13TH+mB+GSHxibjFx/y\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-t3yOm+SFRl+f76jNfvUMMCoQzemnJVtag23epn54Vla/wPHj4xfyYsBC1uYcvmHT\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
}
},
{
@ -627,7 +627,7 @@
"scriptUrl": "./gospel-resources/gospel-resources.js",
"embed": {
"iframe": "<iframe src=\"./gospel-resources/gospel-dashboard/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-e8fVkQLYt1CmQJcdTAxPz8aMlM7w8TfzEpV5MZ3ZXVSnJ13TH+mB+GSHxibjFx/y\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"gospel-dashboard\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-t3yOm+SFRl+f76jNfvUMMCoQzemnJVtag23epn54Vla/wPHj4xfyYsBC1uYcvmHT\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"gospel-dashboard\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
}
},
{
@ -641,7 +641,7 @@
"scriptUrl": "./gospel-resources/gospel-resources.js",
"embed": {
"iframe": "<iframe src=\"./gospel-resources/resources-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-e8fVkQLYt1CmQJcdTAxPz8aMlM7w8TfzEpV5MZ3ZXVSnJ13TH+mB+GSHxibjFx/y\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"resources-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-t3yOm+SFRl+f76jNfvUMMCoQzemnJVtag23epn54Vla/wPHj4xfyYsBC1uYcvmHT\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"resources-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
}
},
{
@ -655,7 +655,7 @@
"scriptUrl": "./gospel-resources/gospel-resources.js",
"embed": {
"iframe": "<iframe src=\"./gospel-resources/resources-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-e8fVkQLYt1CmQJcdTAxPz8aMlM7w8TfzEpV5MZ3ZXVSnJ13TH+mB+GSHxibjFx/y\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"resources-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-t3yOm+SFRl+f76jNfvUMMCoQzemnJVtag23epn54Vla/wPHj4xfyYsBC1uYcvmHT\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"resources-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
}
}
]
@ -664,7 +664,7 @@
"bundle": "my-upg-100-list",
"scriptUrl": "./my-upg-100-list/my-upg-100-list.js",
"output": "dx-maps/my-upg-100-list/my-upg-100-list.js",
"integrity": "sha384-E2LWHzMGZQ8jt+E+jYmE4FQsphkFL7xwhBVKxoNp2V6rPg4PRwUWpCmbPWLQqCa4",
"integrity": "sha384-9T0q3d1bM52U2LvFYndlObd2Z+lH6aR07MzBErTR4aKfMwLD8ZMnuHN7WIc7pU3q",
"elements": [
"my-upg-100-list-map"
],
@ -684,7 +684,7 @@
"scriptUrl": "./my-upg-100-list/my-upg-100-list.js",
"embed": {
"iframe": "<iframe src=\"./my-upg-100-list/poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-E2LWHzMGZQ8jt+E+jYmE4FQsphkFL7xwhBVKxoNp2V6rPg4PRwUWpCmbPWLQqCa4\" crossorigin=\"anonymous\"></script>\n<my-upg-100-list-map profile-config='{\"profile\":\"poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></my-upg-100-list-map>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-9T0q3d1bM52U2LvFYndlObd2Z+lH6aR07MzBErTR4aKfMwLD8ZMnuHN7WIc7pU3q\" crossorigin=\"anonymous\"></script>\n<my-upg-100-list-map profile-config='{\"profile\":\"poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></my-upg-100-list-map>"
}
},
{
@ -698,7 +698,7 @@
"scriptUrl": "./my-upg-100-list/my-upg-100-list.js",
"embed": {
"iframe": "<iframe 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></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-E2LWHzMGZQ8jt+E+jYmE4FQsphkFL7xwhBVKxoNp2V6rPg4PRwUWpCmbPWLQqCa4\" crossorigin=\"anonymous\"></script>\n<my-upg-100-list-map profile-config='{\"profile\":\"upg-100-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></my-upg-100-list-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-9T0q3d1bM52U2LvFYndlObd2Z+lH6aR07MzBErTR4aKfMwLD8ZMnuHN7WIc7pU3q\" crossorigin=\"anonymous\"></script>\n<my-upg-100-list-map profile-config='{\"profile\":\"upg-100-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></my-upg-100-list-map>"
}
},
{
@ -712,7 +712,7 @@
"scriptUrl": "./my-upg-100-list/my-upg-100-list.js",
"embed": {
"iframe": "<iframe 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></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-E2LWHzMGZQ8jt+E+jYmE4FQsphkFL7xwhBVKxoNp2V6rPg4PRwUWpCmbPWLQqCa4\" crossorigin=\"anonymous\"></script>\n<my-upg-100-list-map profile-config='{\"profile\":\"upg-100-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></my-upg-100-list-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-9T0q3d1bM52U2LvFYndlObd2Z+lH6aR07MzBErTR4aKfMwLD8ZMnuHN7WIc7pU3q\" crossorigin=\"anonymous\"></script>\n<my-upg-100-list-map profile-config='{\"profile\":\"upg-100-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></my-upg-100-list-map>"
}
}
]
@ -721,7 +721,7 @@
"bundle": "people-groups-grid",
"scriptUrl": "./people-groups-grid/people-groups-grid.js",
"output": "dx-maps/people-groups-grid/people-groups-grid.js",
"integrity": "sha384-P36N4rI/QkK68QpPw1OHfxGIYeYfpr+1tX8Bxve+B98JfWFajRYKQeaRi5TgPVCU",
"integrity": "sha384-NxK7wM4VhKnvgdeGmcwCcPGvNkQq4dZRXDkh8eUWhtcEuz4s7EFeQQjxA1PciJVt",
"elements": [
"people-groups-grid"
],
@ -737,7 +737,7 @@
"scriptUrl": "./people-groups-grid/people-groups-grid.js",
"embed": {
"iframe": "<iframe src=\"./people-groups-grid/people-groups-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./people-groups-grid/people-groups-grid.js\" integrity=\"sha384-P36N4rI/QkK68QpPw1OHfxGIYeYfpr+1tX8Bxve+B98JfWFajRYKQeaRi5TgPVCU\" crossorigin=\"anonymous\"></script>\n<people-groups-grid profile-config='{\"profile\":\"people-groups-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></people-groups-grid>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./people-groups-grid/people-groups-grid.js\" integrity=\"sha384-NxK7wM4VhKnvgdeGmcwCcPGvNkQq4dZRXDkh8eUWhtcEuz4s7EFeQQjxA1PciJVt\" crossorigin=\"anonymous\"></script>\n<people-groups-grid profile-config='{\"profile\":\"people-groups-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></people-groups-grid>"
},
"instances": [
{
@ -837,7 +837,7 @@
"bundle": "pplr-data-maps",
"scriptUrl": "./pplr-data-maps/pplr-data-maps.js",
"output": "dx-maps/pplr-data-maps/pplr-data-maps.js",
"integrity": "sha384-se+fOEjiPb2yPm7oAXcq7NmlZIF1/MiWtzDAEJcu5bRwv8Zq5kM5yWG1JJu8StYU",
"integrity": "sha384-nMEYoH17y92xbERsRYP3x9sroR//lz8NvipOQvUfV8zV40pJ7DmW0avOm7sARD82",
"elements": [
"pplr-data-maps"
],
@ -853,7 +853,7 @@
"scriptUrl": "./pplr-data-maps/pplr-data-maps.js",
"embed": {
"iframe": "<iframe src=\"./pplr-data-maps/pplr-data-maps/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./pplr-data-maps/pplr-data-maps.js\" integrity=\"sha384-se+fOEjiPb2yPm7oAXcq7NmlZIF1/MiWtzDAEJcu5bRwv8Zq5kM5yWG1JJu8StYU\" crossorigin=\"anonymous\"></script>\n<pplr-data-maps profile-config='{\"profile\":\"pplr-data-maps\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></pplr-data-maps>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./pplr-data-maps/pplr-data-maps.js\" integrity=\"sha384-nMEYoH17y92xbERsRYP3x9sroR//lz8NvipOQvUfV8zV40pJ7DmW0avOm7sARD82\" crossorigin=\"anonymous\"></script>\n<pplr-data-maps profile-config='{\"profile\":\"pplr-data-maps\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></pplr-data-maps>"
},
"bundle": "pplr-data-maps"
}
@ -863,7 +863,7 @@
"bundle": "prayer-walk-planner",
"scriptUrl": "./prayer-walk-planner/prayer-walk-planner.js",
"output": "dx-maps/prayer-walk-planner/prayer-walk-planner.js",
"integrity": "sha384-R/ybjDe8VDmUbk7hl3Q6KApwLKwSs/8/zkzQVASWM9EpT5TwJpCxoLS33GSV9F8u",
"integrity": "sha384-YZUFcXft7eTGJMY4I1FRak276dwfkSNFe6ylcWfRXJAmXWC39CCktE9qmNaZWSKB",
"elements": [
"prayer-walk-planner"
],
@ -879,7 +879,7 @@
"scriptUrl": "./prayer-walk-planner/prayer-walk-planner.js",
"embed": {
"iframe": "<iframe src=\"./prayer-walk-planner/prayer-walk-planner/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./prayer-walk-planner/prayer-walk-planner.js\" integrity=\"sha384-R/ybjDe8VDmUbk7hl3Q6KApwLKwSs/8/zkzQVASWM9EpT5TwJpCxoLS33GSV9F8u\" crossorigin=\"anonymous\"></script>\n<prayer-walk-planner profile-config='{\"profile\":\"prayer-walk-planner\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></prayer-walk-planner>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./prayer-walk-planner/prayer-walk-planner.js\" integrity=\"sha384-YZUFcXft7eTGJMY4I1FRak276dwfkSNFe6ylcWfRXJAmXWC39CCktE9qmNaZWSKB\" crossorigin=\"anonymous\"></script>\n<prayer-walk-planner profile-config='{\"profile\":\"prayer-walk-planner\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></prayer-walk-planner>"
}
}
]
@ -888,7 +888,7 @@
"bundle": "regions-dashboard",
"scriptUrl": "./regions-dashboard/regions-dashboard.js",
"output": "dx-maps/regions-dashboard/regions-dashboard.js",
"integrity": "sha384-BEqUFdE3NYEuMoaTaCG6UxUM69+kq+y3L3jDmAjg5MLlDBoLbTtWGiwG5oWSckdI",
"integrity": "sha384-0VXlux60qvoDiJCNedP6W33hhrWeghLzYSBkR8zK7bblXC74i4XL14Gsw+b/Z0la",
"elements": [
"regions-dashboard"
],
@ -908,7 +908,7 @@
"scriptUrl": "./regions-dashboard/regions-dashboard.js",
"embed": {
"iframe": "<iframe src=\"./regions-dashboard/region-dashboards/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-BEqUFdE3NYEuMoaTaCG6UxUM69+kq+y3L3jDmAjg5MLlDBoLbTtWGiwG5oWSckdI\" crossorigin=\"anonymous\"></script>\n<regions-dashboard profile-config='{\"profile\":\"region-dashboards\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></regions-dashboard>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-0VXlux60qvoDiJCNedP6W33hhrWeghLzYSBkR8zK7bblXC74i4XL14Gsw+b/Z0la\" crossorigin=\"anonymous\"></script>\n<regions-dashboard profile-config='{\"profile\":\"region-dashboards\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></regions-dashboard>"
}
},
{
@ -922,7 +922,7 @@
"scriptUrl": "./regions-dashboard/regions-dashboard.js",
"embed": {
"iframe": "<iframe src=\"./regions-dashboard/regions-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-BEqUFdE3NYEuMoaTaCG6UxUM69+kq+y3L3jDmAjg5MLlDBoLbTtWGiwG5oWSckdI\" crossorigin=\"anonymous\"></script>\n<regions-dashboard profile-config='{\"profile\":\"regions-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></regions-dashboard>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-0VXlux60qvoDiJCNedP6W33hhrWeghLzYSBkR8zK7bblXC74i4XL14Gsw+b/Z0la\" crossorigin=\"anonymous\"></script>\n<regions-dashboard profile-config='{\"profile\":\"regions-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></regions-dashboard>"
}
},
{
@ -936,7 +936,7 @@
"scriptUrl": "./regions-dashboard/regions-dashboard.js",
"embed": {
"iframe": "<iframe src=\"./regions-dashboard/regions-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-BEqUFdE3NYEuMoaTaCG6UxUM69+kq+y3L3jDmAjg5MLlDBoLbTtWGiwG5oWSckdI\" crossorigin=\"anonymous\"></script>\n<regions-dashboard profile-config='{\"profile\":\"regions-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></regions-dashboard>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-0VXlux60qvoDiJCNedP6W33hhrWeghLzYSBkR8zK7bblXC74i4XL14Gsw+b/Z0la\" crossorigin=\"anonymous\"></script>\n<regions-dashboard profile-config='{\"profile\":\"regions-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></regions-dashboard>"
}
}
]
@ -945,7 +945,7 @@
"bundle": "research-dashboard",
"scriptUrl": "./research-dashboard/research-dashboard.js",
"output": "dx-maps/research-dashboard/research-dashboard.js",
"integrity": "sha384-MLRjfoMdomG0I69I1CphdXkmzB517LQaljgcT4wnDvxVJwfPnjG5JwQnmnPxWl3M",
"integrity": "sha384-qWWWrFhA8lGOVnjlGbE0uOx4QbLMsxgf17CxAlMS9E+tUur1KA2dsrG22mEkYAeO",
"elements": [
"research-dashboard-map"
],
@ -961,7 +961,7 @@
"scriptUrl": "./research-dashboard/research-dashboard.js",
"embed": {
"iframe": "<iframe src=\"./research-dashboard/research-dashboard/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./research-dashboard/research-dashboard.js\" integrity=\"sha384-MLRjfoMdomG0I69I1CphdXkmzB517LQaljgcT4wnDvxVJwfPnjG5JwQnmnPxWl3M\" crossorigin=\"anonymous\"></script>\n<research-dashboard-map profile-config='{\"profile\":\"research-dashboard\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></research-dashboard-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./research-dashboard/research-dashboard.js\" integrity=\"sha384-qWWWrFhA8lGOVnjlGbE0uOx4QbLMsxgf17CxAlMS9E+tUur1KA2dsrG22mEkYAeO\" crossorigin=\"anonymous\"></script>\n<research-dashboard-map profile-config='{\"profile\":\"research-dashboard\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></research-dashboard-map>"
},
"bundle": "research-dashboard"
}
@ -971,7 +971,7 @@
"bundle": "research-map-plus-grid",
"scriptUrl": "./research-map-plus-grid/research-map-plus-grid.js",
"output": "dx-maps/research-map-plus-grid/research-map-plus-grid.js",
"integrity": "sha384-XOGLrOs4KZCfyXMDB8SIkx3wrxUfxk84xJkHsYSvZ83GXFjvb4ut8FT89zCgbTg5",
"integrity": "sha384-N12PTsk2HVN2Uh9nhF1R74uZ8+YO1nz92CqD+wlWhq5D+dKdaGy7BUr5QwaHg9C2",
"elements": [
"research-map-plus-grid"
],
@ -991,7 +991,7 @@
"scriptUrl": "./research-map-plus-grid/research-map-plus-grid.js",
"embed": {
"iframe": "<iframe 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></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./research-map-plus-grid/research-map-plus-grid.js\" integrity=\"sha384-XOGLrOs4KZCfyXMDB8SIkx3wrxUfxk84xJkHsYSvZ83GXFjvb4ut8FT89zCgbTg5\" crossorigin=\"anonymous\"></script>\n<research-map-plus-grid profile-config='{\"profile\":\"research-map-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></research-map-plus-grid>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./research-map-plus-grid/research-map-plus-grid.js\" integrity=\"sha384-N12PTsk2HVN2Uh9nhF1R74uZ8+YO1nz92CqD+wlWhq5D+dKdaGy7BUr5QwaHg9C2\" crossorigin=\"anonymous\"></script>\n<research-map-plus-grid profile-config='{\"profile\":\"research-map-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></research-map-plus-grid>"
},
"instances": [
{
@ -1059,7 +1059,7 @@
"bundle": "upg-neighbor",
"scriptUrl": "./upg-neighbor/upg-neighbor.js",
"output": "dx-maps/upg-neighbor/upg-neighbor.js",
"integrity": "sha384-62lGVmSvukYKgTsw3XfHSRtglRFrYNrYXtXH3jd5eQ2TMzMqGijpl793c57dPS/t",
"integrity": "sha384-ArOZYD+KcSsac8vqA8qrGCOfIzwg1ggx7pd9JvmitYUsQdyBRM6NAj0RDyUm72qV",
"elements": [
"upg-neighbor"
],
@ -1075,7 +1075,7 @@
"scriptUrl": "./upg-neighbor/upg-neighbor.js",
"embed": {
"iframe": "<iframe src=\"./upg-neighbor/upg-neighbor/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./upg-neighbor/upg-neighbor.js\" integrity=\"sha384-62lGVmSvukYKgTsw3XfHSRtglRFrYNrYXtXH3jd5eQ2TMzMqGijpl793c57dPS/t\" crossorigin=\"anonymous\"></script>\n<upg-neighbor profile-config='{\"profile\":\"upg-neighbor\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></upg-neighbor>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./upg-neighbor/upg-neighbor.js\" integrity=\"sha384-ArOZYD+KcSsac8vqA8qrGCOfIzwg1ggx7pd9JvmitYUsQdyBRM6NAj0RDyUm72qV\" crossorigin=\"anonymous\"></script>\n<upg-neighbor profile-config='{\"profile\":\"upg-neighbor\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></upg-neighbor>"
},
"instances": [
{
@ -1157,7 +1157,7 @@
"bundle": "wall-of-people-groups",
"scriptUrl": "./wall-of-people-groups/wall-of-people-groups.js",
"output": "dx-maps/wall-of-people-groups/wall-of-people-groups.js",
"integrity": "sha384-yYtnyEkdcQYTrFMVg4InzswR+ySsojVAksN0e6asWQKMLxER+aYdV36btprHrmds",
"integrity": "sha384-sXhpZYTHbVs5SvTcH8/oAaqN9bWazW5NzlhEpqkk127lciRKE+8xT0gQviFP+KRx",
"elements": [
"wall-of-people-groups"
],
@ -1173,7 +1173,7 @@
"scriptUrl": "./wall-of-people-groups/wall-of-people-groups.js",
"embed": {
"iframe": "<iframe src=\"./wall-of-people-groups/wall-of-people-groups/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./wall-of-people-groups/wall-of-people-groups.js\" integrity=\"sha384-yYtnyEkdcQYTrFMVg4InzswR+ySsojVAksN0e6asWQKMLxER+aYdV36btprHrmds\" crossorigin=\"anonymous\"></script>\n<wall-of-people-groups profile-config='{\"profile\":\"wall-of-people-groups\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></wall-of-people-groups>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./wall-of-people-groups/wall-of-people-groups.js\" integrity=\"sha384-sXhpZYTHbVs5SvTcH8/oAaqN9bWazW5NzlhEpqkk127lciRKE+8xT0gQviFP+KRx\" crossorigin=\"anonymous\"></script>\n<wall-of-people-groups profile-config='{\"profile\":\"wall-of-people-groups\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></wall-of-people-groups>"
},
"bundle": "wall-of-people-groups"
}

File diff suppressed because one or more lines are too long

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <doxa-research-map> custom element. -->
<script src="../doxa-research-map.js" integrity="sha384-mDbpT8KH1ZCrzzy+6imms4GTbbNEQob6QPmN5Ic8B91dFwoohdQId7LN25h1Su/r" crossorigin="anonymous"></script>
<script src="../doxa-research-map.js" integrity="sha384-N3gXkdDxxB9NTvUTGajmPBFLpGwKNe1Z0IjT7LspYBMDBmVxGSmsWg72WRyGAhyg" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -27,7 +27,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <doxa-research-map> custom element. -->
<script src="../../doxa-research-map.js" integrity="sha384-mDbpT8KH1ZCrzzy+6imms4GTbbNEQob6QPmN5Ic8B91dFwoohdQId7LN25h1Su/r" crossorigin="anonymous"></script>
<script src="../../doxa-research-map.js" integrity="sha384-N3gXkdDxxB9NTvUTGajmPBFLpGwKNe1Z0IjT7LspYBMDBmVxGSmsWg72WRyGAhyg" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

File diff suppressed because one or more lines are too long

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <doxa-map> custom element. -->
<script src="../../doxa-simple-map.js" integrity="sha384-WsIV9Fm9rPNo2A9e3lavYZvhImkiGl1gUVZdmxiLzt2S3ZTLh3haZDG++0pYoAx+" crossorigin="anonymous"></script>
<script src="../../doxa-simple-map.js" integrity="sha384-i2FnC9KrSn/cnEHqCtaXIWMZKEKMWOp54vyhAMGD3zE4sZUIg1g/j3Smz5ocfUkh" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <doxa-map> custom element. -->
<script src="../../doxa-simple-map.js" integrity="sha384-WsIV9Fm9rPNo2A9e3lavYZvhImkiGl1gUVZdmxiLzt2S3ZTLh3haZDG++0pYoAx+" crossorigin="anonymous"></script>
<script src="../../doxa-simple-map.js" integrity="sha384-i2FnC9KrSn/cnEHqCtaXIWMZKEKMWOp54vyhAMGD3zE4sZUIg1g/j3Smz5ocfUkh" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <doxa-map> custom element. -->
<script src="../doxa-simple-map.js" integrity="sha384-WsIV9Fm9rPNo2A9e3lavYZvhImkiGl1gUVZdmxiLzt2S3ZTLh3haZDG++0pYoAx+" crossorigin="anonymous"></script>
<script src="../doxa-simple-map.js" integrity="sha384-i2FnC9KrSn/cnEHqCtaXIWMZKEKMWOp54vyhAMGD3zE4sZUIg1g/j3Smz5ocfUkh" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <doxa-map> custom element. -->
<script src="../../doxa-simple-map.js" integrity="sha384-WsIV9Fm9rPNo2A9e3lavYZvhImkiGl1gUVZdmxiLzt2S3ZTLh3haZDG++0pYoAx+" crossorigin="anonymous"></script>
<script src="../../doxa-simple-map.js" integrity="sha384-i2FnC9KrSn/cnEHqCtaXIWMZKEKMWOp54vyhAMGD3zE4sZUIg1g/j3Smz5ocfUkh" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -26,7 +26,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <gospel-resources-map> custom element. -->
<script src="../gospel-resources.js" integrity="sha384-e8fVkQLYt1CmQJcdTAxPz8aMlM7w8TfzEpV5MZ3ZXVSnJ13TH+mB+GSHxibjFx/y" crossorigin="anonymous"></script>
<script src="../gospel-resources.js" integrity="sha384-t3yOm+SFRl+f76jNfvUMMCoQzemnJVtag23epn54Vla/wPHj4xfyYsBC1uYcvmHT" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -26,7 +26,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <gospel-resources-map> custom element. -->
<script src="../gospel-resources.js" integrity="sha384-e8fVkQLYt1CmQJcdTAxPz8aMlM7w8TfzEpV5MZ3ZXVSnJ13TH+mB+GSHxibjFx/y" crossorigin="anonymous"></script>
<script src="../gospel-resources.js" integrity="sha384-t3yOm+SFRl+f76jNfvUMMCoQzemnJVtag23epn54Vla/wPHj4xfyYsBC1uYcvmHT" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -40,7 +40,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <gospel-resources-map> custom element. -->
<script src="../gospel-resources.js" integrity="sha384-e8fVkQLYt1CmQJcdTAxPz8aMlM7w8TfzEpV5MZ3ZXVSnJ13TH+mB+GSHxibjFx/y" crossorigin="anonymous"></script>
<script src="../gospel-resources.js" integrity="sha384-t3yOm+SFRl+f76jNfvUMMCoQzemnJVtag23epn54Vla/wPHj4xfyYsBC1uYcvmHT" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

File diff suppressed because one or more lines are too long

View file

@ -26,7 +26,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <gospel-resources-map> custom element. -->
<script src="../gospel-resources.js" integrity="sha384-e8fVkQLYt1CmQJcdTAxPz8aMlM7w8TfzEpV5MZ3ZXVSnJ13TH+mB+GSHxibjFx/y" crossorigin="anonymous"></script>
<script src="../gospel-resources.js" integrity="sha384-t3yOm+SFRl+f76jNfvUMMCoQzemnJVtag23epn54Vla/wPHj4xfyYsBC1uYcvmHT" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <gospel-resources-map> custom element. -->
<script src="../gospel-resources.js" integrity="sha384-e8fVkQLYt1CmQJcdTAxPz8aMlM7w8TfzEpV5MZ3ZXVSnJ13TH+mB+GSHxibjFx/y" crossorigin="anonymous"></script>
<script src="../gospel-resources.js" integrity="sha384-t3yOm+SFRl+f76jNfvUMMCoQzemnJVtag23epn54Vla/wPHj4xfyYsBC1uYcvmHT" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

File diff suppressed because one or more lines are too long

View file

@ -13,7 +13,7 @@
"bundle": "all-people-groups",
"scriptUrl": "./all-people-groups/all-people-groups.js",
"output": "dx-maps/all-people-groups/all-people-groups.js",
"integrity": "sha384-hVWmJUfcmDvVx9RfLXMsJYA5Dd5TiBhLNzwAZtto5JQDW5siH5PJTd/5xWEGHCMA",
"integrity": "sha384-Fk1cAFe2MbBsG2gfJQc2QNoG8CySIPOn0GWATpJ1uBlH51zspyobkOkzWAAXhn3H",
"elements": [
"all-people-groups"
],
@ -29,7 +29,7 @@
"scriptUrl": "./all-people-groups/all-people-groups.js",
"embed": {
"iframe": "<iframe src=\"./all-people-groups/all-people-groups/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./all-people-groups/all-people-groups.js\" integrity=\"sha384-hVWmJUfcmDvVx9RfLXMsJYA5Dd5TiBhLNzwAZtto5JQDW5siH5PJTd/5xWEGHCMA\" crossorigin=\"anonymous\"></script>\n<all-people-groups profile-config='{\"profile\":\"all-people-groups\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></all-people-groups>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./all-people-groups/all-people-groups.js\" integrity=\"sha384-Fk1cAFe2MbBsG2gfJQc2QNoG8CySIPOn0GWATpJ1uBlH51zspyobkOkzWAAXhn3H\" crossorigin=\"anonymous\"></script>\n<all-people-groups profile-config='{\"profile\":\"all-people-groups\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></all-people-groups>"
},
"bundle": "all-people-groups"
}
@ -39,7 +39,7 @@
"bundle": "big-picture",
"scriptUrl": "./big-picture/big-picture.js",
"output": "dx-maps/big-picture/big-picture.js",
"integrity": "sha384-CaUw4BXi2ILBm6z80vT65HC5TSuDBz4pDGLJkTudRnUTQ0+erjMyPI59vIIwqkgo",
"integrity": "sha384-pmc+jltlmIQtPfiI/n9rmjWAZlRd3SVPkTUjJpbv8BNAKC+S6PHyS9Z4YqeIwolQ",
"elements": [
"bp-big-picture",
"bp-research-header",
@ -61,7 +61,7 @@
"scriptUrl": "./big-picture/big-picture.js",
"embed": {
"iframe": "<iframe src=\"./big-picture/big-picture/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./big-picture/big-picture.js\" integrity=\"sha384-CaUw4BXi2ILBm6z80vT65HC5TSuDBz4pDGLJkTudRnUTQ0+erjMyPI59vIIwqkgo\" crossorigin=\"anonymous\"></script>\n<bp-big-picture profile-config='{\"profile\":\"big-picture\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></bp-big-picture>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./big-picture/big-picture.js\" integrity=\"sha384-pmc+jltlmIQtPfiI/n9rmjWAZlRd3SVPkTUjJpbv8BNAKC+S6PHyS9Z4YqeIwolQ\" crossorigin=\"anonymous\"></script>\n<bp-big-picture profile-config='{\"profile\":\"big-picture\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></bp-big-picture>"
},
"instances": [
{
@ -105,7 +105,7 @@
"bundle": "cities-internet",
"scriptUrl": "./cities-internet/cities-internet.js",
"output": "dx-maps/cities-internet/cities-internet.js",
"integrity": "sha384-W33t3yGdG/uWHVWWqezPkJjFDX+9DzWfcWX8k8/9pLvFzj3WgAzorPCLXHp7nn/w",
"integrity": "sha384-rGZtmnXJNSJwdxwKqNsG3ATtfDLSMPsPtF7QwR8kjUZIZOz/l0hDTNMWLbaE5Ayq",
"elements": [
"cities-internet-map"
],
@ -121,7 +121,7 @@
"scriptUrl": "./cities-internet/cities-internet.js",
"embed": {
"iframe": "<iframe src=\"./cities-internet/connectivity-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-W33t3yGdG/uWHVWWqezPkJjFDX+9DzWfcWX8k8/9pLvFzj3WgAzorPCLXHp7nn/w\" crossorigin=\"anonymous\"></script>\n<cities-internet-map profile-config='{\"profile\":\"connectivity-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></cities-internet-map>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-rGZtmnXJNSJwdxwKqNsG3ATtfDLSMPsPtF7QwR8kjUZIZOz/l0hDTNMWLbaE5Ayq\" crossorigin=\"anonymous\"></script>\n<cities-internet-map profile-config='{\"profile\":\"connectivity-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></cities-internet-map>"
}
},
{
@ -135,7 +135,7 @@
"scriptUrl": "./cities-internet/cities-internet.js",
"embed": {
"iframe": "<iframe src=\"./cities-internet/connectivity-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-W33t3yGdG/uWHVWWqezPkJjFDX+9DzWfcWX8k8/9pLvFzj3WgAzorPCLXHp7nn/w\" crossorigin=\"anonymous\"></script>\n<cities-internet-map profile-config='{\"profile\":\"connectivity-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></cities-internet-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-rGZtmnXJNSJwdxwKqNsG3ATtfDLSMPsPtF7QwR8kjUZIZOz/l0hDTNMWLbaE5Ayq\" crossorigin=\"anonymous\"></script>\n<cities-internet-map profile-config='{\"profile\":\"connectivity-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></cities-internet-map>"
}
},
{
@ -149,7 +149,7 @@
"scriptUrl": "./cities-internet/cities-internet.js",
"embed": {
"iframe": "<iframe src=\"./cities-internet/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-W33t3yGdG/uWHVWWqezPkJjFDX+9DzWfcWX8k8/9pLvFzj3WgAzorPCLXHp7nn/w\" crossorigin=\"anonymous\"></script>\n<cities-internet-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></cities-internet-map>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-rGZtmnXJNSJwdxwKqNsG3ATtfDLSMPsPtF7QwR8kjUZIZOz/l0hDTNMWLbaE5Ayq\" crossorigin=\"anonymous\"></script>\n<cities-internet-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></cities-internet-map>"
}
}
]
@ -158,7 +158,7 @@
"bundle": "country-posters",
"scriptUrl": "./country-posters/country-posters.js",
"output": "dx-maps/country-posters/country-posters.js",
"integrity": "sha384-KtF4c17Xk0HixYcvWc2mk2Sga0ew+QVYsEo9GMOMPgzX4PAdKcuzbroMgjKu9TPG",
"integrity": "sha384-Qk/vQqU8IjKhxJLq5rZ4ccJSQTFGWGyERKNUlzviZe2x1ifcRBbmu+gPNRbD3nuK",
"elements": [
"country-posters-map"
],
@ -178,7 +178,7 @@
"scriptUrl": "./country-posters/country-posters.js",
"embed": {
"iframe": "<iframe src=\"./country-posters/countries-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./country-posters/country-posters.js\" integrity=\"sha384-KtF4c17Xk0HixYcvWc2mk2Sga0ew+QVYsEo9GMOMPgzX4PAdKcuzbroMgjKu9TPG\" crossorigin=\"anonymous\"></script>\n<country-posters-map profile-config='{\"profile\":\"countries-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></country-posters-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./country-posters/country-posters.js\" integrity=\"sha384-Qk/vQqU8IjKhxJLq5rZ4ccJSQTFGWGyERKNUlzviZe2x1ifcRBbmu+gPNRbD3nuK\" crossorigin=\"anonymous\"></script>\n<country-posters-map profile-config='{\"profile\":\"countries-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></country-posters-map>"
}
},
{
@ -192,7 +192,7 @@
"scriptUrl": "./country-posters/country-posters.js",
"embed": {
"iframe": "<iframe src=\"./country-posters/country-poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./country-posters/country-posters.js\" integrity=\"sha384-KtF4c17Xk0HixYcvWc2mk2Sga0ew+QVYsEo9GMOMPgzX4PAdKcuzbroMgjKu9TPG\" crossorigin=\"anonymous\"></script>\n<country-posters-map profile-config='{\"profile\":\"country-poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></country-posters-map>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./country-posters/country-posters.js\" integrity=\"sha384-Qk/vQqU8IjKhxJLq5rZ4ccJSQTFGWGyERKNUlzviZe2x1ifcRBbmu+gPNRbD3nuK\" crossorigin=\"anonymous\"></script>\n<country-posters-map profile-config='{\"profile\":\"country-poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></country-posters-map>"
}
},
{
@ -206,7 +206,7 @@
"scriptUrl": "./country-posters/country-posters.js",
"embed": {
"iframe": "<iframe src=\"./country-posters/country-posters-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./country-posters/country-posters.js\" integrity=\"sha384-KtF4c17Xk0HixYcvWc2mk2Sga0ew+QVYsEo9GMOMPgzX4PAdKcuzbroMgjKu9TPG\" crossorigin=\"anonymous\"></script>\n<country-posters-map profile-config='{\"profile\":\"country-posters-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></country-posters-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./country-posters/country-posters.js\" integrity=\"sha384-Qk/vQqU8IjKhxJLq5rZ4ccJSQTFGWGyERKNUlzviZe2x1ifcRBbmu+gPNRbD3nuK\" crossorigin=\"anonymous\"></script>\n<country-posters-map profile-config='{\"profile\":\"country-posters-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></country-posters-map>"
}
}
]
@ -215,7 +215,7 @@
"bundle": "dashboard-plus-grid",
"scriptUrl": "./dashboard-plus-grid/dashboard-plus-grid.js",
"output": "dx-maps/dashboard-plus-grid/dashboard-plus-grid.js",
"integrity": "sha384-/E4UhCPqZAn+gwwHuwkLrLgbfrTwGp8x6tgsdDo/pqDHttv0z7Ln7r7wfPYSHSAU",
"integrity": "sha384-L6zSKq1tvgdy6CLFedrkA+q9WdLdEtnwe2JCSZBHikYv82IakJTX4kRfkKe9ENIY",
"elements": [
"dashboard-plus-grid"
],
@ -235,7 +235,7 @@
"scriptUrl": "./dashboard-plus-grid/dashboard-plus-grid.js",
"embed": {
"iframe": "<iframe src=\"./dashboard-plus-grid/dashboard-plus-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./dashboard-plus-grid/dashboard-plus-grid.js\" integrity=\"sha384-/E4UhCPqZAn+gwwHuwkLrLgbfrTwGp8x6tgsdDo/pqDHttv0z7Ln7r7wfPYSHSAU\" crossorigin=\"anonymous\"></script>\n<dashboard-plus-grid profile-config='{\"profile\":\"dashboard-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></dashboard-plus-grid>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./dashboard-plus-grid/dashboard-plus-grid.js\" integrity=\"sha384-L6zSKq1tvgdy6CLFedrkA+q9WdLdEtnwe2JCSZBHikYv82IakJTX4kRfkKe9ENIY\" crossorigin=\"anonymous\"></script>\n<dashboard-plus-grid profile-config='{\"profile\":\"dashboard-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></dashboard-plus-grid>"
},
"instances": [
{
@ -259,7 +259,7 @@
"bundle": "demo-map",
"scriptUrl": "./demo-map/demo-map.js",
"output": "dx-maps/demo-map/demo-map.js",
"integrity": "sha384-B9GTF53Kly+NAnwh7X9H2eiXIp2Gr/tatFhWfyi8OQdqB8iQerjl2635eRWBTmpc",
"integrity": "sha384-pQboGJuKCps0vTF6EI1gPDLlyZuLoDZTpH3HbbV7ROXstB6UmAVdvrzDk4K0uh4G",
"elements": [
"demo-map"
],
@ -275,7 +275,7 @@
"scriptUrl": "./demo-map/demo-map.js",
"embed": {
"iframe": "<iframe src=\"./demo-map/demo-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./demo-map/demo-map.js\" integrity=\"sha384-B9GTF53Kly+NAnwh7X9H2eiXIp2Gr/tatFhWfyi8OQdqB8iQerjl2635eRWBTmpc\" crossorigin=\"anonymous\"></script>\n<demo-map profile-config='{\"profile\":\"demo-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></demo-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./demo-map/demo-map.js\" integrity=\"sha384-pQboGJuKCps0vTF6EI1gPDLlyZuLoDZTpH3HbbV7ROXstB6UmAVdvrzDk4K0uh4G\" crossorigin=\"anonymous\"></script>\n<demo-map profile-config='{\"profile\":\"demo-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></demo-map>"
},
"instances": [
{
@ -354,7 +354,7 @@
"bundle": "doxa-research-map",
"scriptUrl": "./doxa-research-map/doxa-research-map.js",
"output": "dx-maps/doxa-research-map/doxa-research-map.js",
"integrity": "sha384-mDbpT8KH1ZCrzzy+6imms4GTbbNEQob6QPmN5Ic8B91dFwoohdQId7LN25h1Su/r",
"integrity": "sha384-N3gXkdDxxB9NTvUTGajmPBFLpGwKNe1Z0IjT7LspYBMDBmVxGSmsWg72WRyGAhyg",
"elements": [
"doxa-research-map"
],
@ -370,7 +370,7 @@
"scriptUrl": "./doxa-research-map/doxa-research-map.js",
"embed": {
"iframe": "<iframe src=\"./doxa-research-map/research-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./doxa-research-map/doxa-research-map.js\" integrity=\"sha384-mDbpT8KH1ZCrzzy+6imms4GTbbNEQob6QPmN5Ic8B91dFwoohdQId7LN25h1Su/r\" crossorigin=\"anonymous\"></script>\n<doxa-research-map profile-config='{\"profile\":\"research-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></doxa-research-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./doxa-research-map/doxa-research-map.js\" integrity=\"sha384-N3gXkdDxxB9NTvUTGajmPBFLpGwKNe1Z0IjT7LspYBMDBmVxGSmsWg72WRyGAhyg\" crossorigin=\"anonymous\"></script>\n<doxa-research-map profile-config='{\"profile\":\"research-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></doxa-research-map>"
},
"instances": [
{
@ -396,7 +396,7 @@
"bundle": "doxa-simple-map",
"scriptUrl": "./doxa-simple-map/doxa-simple-map.js",
"output": "dx-maps/doxa-simple-map/doxa-simple-map.js",
"integrity": "sha384-WsIV9Fm9rPNo2A9e3lavYZvhImkiGl1gUVZdmxiLzt2S3ZTLh3haZDG++0pYoAx+",
"integrity": "sha384-i2FnC9KrSn/cnEHqCtaXIWMZKEKMWOp54vyhAMGD3zE4sZUIg1g/j3Smz5ocfUkh",
"elements": [
"doxa-map",
"doxa-simple-map"
@ -413,7 +413,7 @@
"scriptUrl": "./doxa-simple-map/doxa-simple-map.js",
"embed": {
"iframe": "<iframe src=\"./doxa-simple-map/doxa-simple-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./doxa-simple-map/doxa-simple-map.js\" integrity=\"sha384-WsIV9Fm9rPNo2A9e3lavYZvhImkiGl1gUVZdmxiLzt2S3ZTLh3haZDG++0pYoAx+\" crossorigin=\"anonymous\"></script>\n<doxa-map profile-config='{\"profile\":\"doxa-simple-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></doxa-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./doxa-simple-map/doxa-simple-map.js\" integrity=\"sha384-i2FnC9KrSn/cnEHqCtaXIWMZKEKMWOp54vyhAMGD3zE4sZUIg1g/j3Smz5ocfUkh\" crossorigin=\"anonymous\"></script>\n<doxa-map profile-config='{\"profile\":\"doxa-simple-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></doxa-map>"
},
"instances": [
{
@ -579,7 +579,7 @@
"bundle": "gospel-resources",
"scriptUrl": "./gospel-resources/gospel-resources.js",
"output": "dx-maps/gospel-resources/gospel-resources.js",
"integrity": "sha384-e8fVkQLYt1CmQJcdTAxPz8aMlM7w8TfzEpV5MZ3ZXVSnJ13TH+mB+GSHxibjFx/y",
"integrity": "sha384-t3yOm+SFRl+f76jNfvUMMCoQzemnJVtag23epn54Vla/wPHj4xfyYsBC1uYcvmHT",
"elements": [
"gospel-resources-map"
],
@ -599,7 +599,7 @@
"scriptUrl": "./gospel-resources/gospel-resources.js",
"embed": {
"iframe": "<iframe src=\"./gospel-resources/charts/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-e8fVkQLYt1CmQJcdTAxPz8aMlM7w8TfzEpV5MZ3ZXVSnJ13TH+mB+GSHxibjFx/y\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"charts\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-t3yOm+SFRl+f76jNfvUMMCoQzemnJVtag23epn54Vla/wPHj4xfyYsBC1uYcvmHT\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"charts\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
}
},
{
@ -613,7 +613,7 @@
"scriptUrl": "./gospel-resources/gospel-resources.js",
"embed": {
"iframe": "<iframe src=\"./gospel-resources/data-tables/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-e8fVkQLYt1CmQJcdTAxPz8aMlM7w8TfzEpV5MZ3ZXVSnJ13TH+mB+GSHxibjFx/y\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-t3yOm+SFRl+f76jNfvUMMCoQzemnJVtag23epn54Vla/wPHj4xfyYsBC1uYcvmHT\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"data-tables\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
}
},
{
@ -627,7 +627,7 @@
"scriptUrl": "./gospel-resources/gospel-resources.js",
"embed": {
"iframe": "<iframe src=\"./gospel-resources/gospel-dashboard/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-e8fVkQLYt1CmQJcdTAxPz8aMlM7w8TfzEpV5MZ3ZXVSnJ13TH+mB+GSHxibjFx/y\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"gospel-dashboard\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-t3yOm+SFRl+f76jNfvUMMCoQzemnJVtag23epn54Vla/wPHj4xfyYsBC1uYcvmHT\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"gospel-dashboard\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
}
},
{
@ -641,7 +641,7 @@
"scriptUrl": "./gospel-resources/gospel-resources.js",
"embed": {
"iframe": "<iframe src=\"./gospel-resources/resources-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-e8fVkQLYt1CmQJcdTAxPz8aMlM7w8TfzEpV5MZ3ZXVSnJ13TH+mB+GSHxibjFx/y\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"resources-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-t3yOm+SFRl+f76jNfvUMMCoQzemnJVtag23epn54Vla/wPHj4xfyYsBC1uYcvmHT\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"resources-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
}
},
{
@ -655,7 +655,7 @@
"scriptUrl": "./gospel-resources/gospel-resources.js",
"embed": {
"iframe": "<iframe src=\"./gospel-resources/resources-map/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-e8fVkQLYt1CmQJcdTAxPz8aMlM7w8TfzEpV5MZ3ZXVSnJ13TH+mB+GSHxibjFx/y\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"resources-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-t3yOm+SFRl+f76jNfvUMMCoQzemnJVtag23epn54Vla/wPHj4xfyYsBC1uYcvmHT\" crossorigin=\"anonymous\"></script>\n<gospel-resources-map profile-config='{\"profile\":\"resources-map\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-resources-map>"
}
}
]
@ -664,7 +664,7 @@
"bundle": "my-upg-100-list",
"scriptUrl": "./my-upg-100-list/my-upg-100-list.js",
"output": "dx-maps/my-upg-100-list/my-upg-100-list.js",
"integrity": "sha384-E2LWHzMGZQ8jt+E+jYmE4FQsphkFL7xwhBVKxoNp2V6rPg4PRwUWpCmbPWLQqCa4",
"integrity": "sha384-9T0q3d1bM52U2LvFYndlObd2Z+lH6aR07MzBErTR4aKfMwLD8ZMnuHN7WIc7pU3q",
"elements": [
"my-upg-100-list-map"
],
@ -684,7 +684,7 @@
"scriptUrl": "./my-upg-100-list/my-upg-100-list.js",
"embed": {
"iframe": "<iframe src=\"./my-upg-100-list/poster-wall/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-E2LWHzMGZQ8jt+E+jYmE4FQsphkFL7xwhBVKxoNp2V6rPg4PRwUWpCmbPWLQqCa4\" crossorigin=\"anonymous\"></script>\n<my-upg-100-list-map profile-config='{\"profile\":\"poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></my-upg-100-list-map>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-9T0q3d1bM52U2LvFYndlObd2Z+lH6aR07MzBErTR4aKfMwLD8ZMnuHN7WIc7pU3q\" crossorigin=\"anonymous\"></script>\n<my-upg-100-list-map profile-config='{\"profile\":\"poster-wall\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></my-upg-100-list-map>"
}
},
{
@ -698,7 +698,7 @@
"scriptUrl": "./my-upg-100-list/my-upg-100-list.js",
"embed": {
"iframe": "<iframe 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></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-E2LWHzMGZQ8jt+E+jYmE4FQsphkFL7xwhBVKxoNp2V6rPg4PRwUWpCmbPWLQqCa4\" crossorigin=\"anonymous\"></script>\n<my-upg-100-list-map profile-config='{\"profile\":\"upg-100-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></my-upg-100-list-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-9T0q3d1bM52U2LvFYndlObd2Z+lH6aR07MzBErTR4aKfMwLD8ZMnuHN7WIc7pU3q\" crossorigin=\"anonymous\"></script>\n<my-upg-100-list-map profile-config='{\"profile\":\"upg-100-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></my-upg-100-list-map>"
}
},
{
@ -712,7 +712,7 @@
"scriptUrl": "./my-upg-100-list/my-upg-100-list.js",
"embed": {
"iframe": "<iframe 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></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-E2LWHzMGZQ8jt+E+jYmE4FQsphkFL7xwhBVKxoNp2V6rPg4PRwUWpCmbPWLQqCa4\" crossorigin=\"anonymous\"></script>\n<my-upg-100-list-map profile-config='{\"profile\":\"upg-100-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></my-upg-100-list-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./my-upg-100-list/my-upg-100-list.js\" integrity=\"sha384-9T0q3d1bM52U2LvFYndlObd2Z+lH6aR07MzBErTR4aKfMwLD8ZMnuHN7WIc7pU3q\" crossorigin=\"anonymous\"></script>\n<my-upg-100-list-map profile-config='{\"profile\":\"upg-100-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></my-upg-100-list-map>"
}
}
]
@ -721,7 +721,7 @@
"bundle": "people-groups-grid",
"scriptUrl": "./people-groups-grid/people-groups-grid.js",
"output": "dx-maps/people-groups-grid/people-groups-grid.js",
"integrity": "sha384-P36N4rI/QkK68QpPw1OHfxGIYeYfpr+1tX8Bxve+B98JfWFajRYKQeaRi5TgPVCU",
"integrity": "sha384-NxK7wM4VhKnvgdeGmcwCcPGvNkQq4dZRXDkh8eUWhtcEuz4s7EFeQQjxA1PciJVt",
"elements": [
"people-groups-grid"
],
@ -737,7 +737,7 @@
"scriptUrl": "./people-groups-grid/people-groups-grid.js",
"embed": {
"iframe": "<iframe src=\"./people-groups-grid/people-groups-grid/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./people-groups-grid/people-groups-grid.js\" integrity=\"sha384-P36N4rI/QkK68QpPw1OHfxGIYeYfpr+1tX8Bxve+B98JfWFajRYKQeaRi5TgPVCU\" crossorigin=\"anonymous\"></script>\n<people-groups-grid profile-config='{\"profile\":\"people-groups-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></people-groups-grid>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./people-groups-grid/people-groups-grid.js\" integrity=\"sha384-NxK7wM4VhKnvgdeGmcwCcPGvNkQq4dZRXDkh8eUWhtcEuz4s7EFeQQjxA1PciJVt\" crossorigin=\"anonymous\"></script>\n<people-groups-grid profile-config='{\"profile\":\"people-groups-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></people-groups-grid>"
},
"instances": [
{
@ -837,7 +837,7 @@
"bundle": "pplr-data-maps",
"scriptUrl": "./pplr-data-maps/pplr-data-maps.js",
"output": "dx-maps/pplr-data-maps/pplr-data-maps.js",
"integrity": "sha384-se+fOEjiPb2yPm7oAXcq7NmlZIF1/MiWtzDAEJcu5bRwv8Zq5kM5yWG1JJu8StYU",
"integrity": "sha384-nMEYoH17y92xbERsRYP3x9sroR//lz8NvipOQvUfV8zV40pJ7DmW0avOm7sARD82",
"elements": [
"pplr-data-maps"
],
@ -853,7 +853,7 @@
"scriptUrl": "./pplr-data-maps/pplr-data-maps.js",
"embed": {
"iframe": "<iframe src=\"./pplr-data-maps/pplr-data-maps/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./pplr-data-maps/pplr-data-maps.js\" integrity=\"sha384-se+fOEjiPb2yPm7oAXcq7NmlZIF1/MiWtzDAEJcu5bRwv8Zq5kM5yWG1JJu8StYU\" crossorigin=\"anonymous\"></script>\n<pplr-data-maps profile-config='{\"profile\":\"pplr-data-maps\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></pplr-data-maps>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./pplr-data-maps/pplr-data-maps.js\" integrity=\"sha384-nMEYoH17y92xbERsRYP3x9sroR//lz8NvipOQvUfV8zV40pJ7DmW0avOm7sARD82\" crossorigin=\"anonymous\"></script>\n<pplr-data-maps profile-config='{\"profile\":\"pplr-data-maps\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></pplr-data-maps>"
},
"bundle": "pplr-data-maps"
}
@ -863,7 +863,7 @@
"bundle": "prayer-walk-planner",
"scriptUrl": "./prayer-walk-planner/prayer-walk-planner.js",
"output": "dx-maps/prayer-walk-planner/prayer-walk-planner.js",
"integrity": "sha384-R/ybjDe8VDmUbk7hl3Q6KApwLKwSs/8/zkzQVASWM9EpT5TwJpCxoLS33GSV9F8u",
"integrity": "sha384-YZUFcXft7eTGJMY4I1FRak276dwfkSNFe6ylcWfRXJAmXWC39CCktE9qmNaZWSKB",
"elements": [
"prayer-walk-planner"
],
@ -879,7 +879,7 @@
"scriptUrl": "./prayer-walk-planner/prayer-walk-planner.js",
"embed": {
"iframe": "<iframe src=\"./prayer-walk-planner/prayer-walk-planner/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./prayer-walk-planner/prayer-walk-planner.js\" integrity=\"sha384-R/ybjDe8VDmUbk7hl3Q6KApwLKwSs/8/zkzQVASWM9EpT5TwJpCxoLS33GSV9F8u\" crossorigin=\"anonymous\"></script>\n<prayer-walk-planner profile-config='{\"profile\":\"prayer-walk-planner\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></prayer-walk-planner>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./prayer-walk-planner/prayer-walk-planner.js\" integrity=\"sha384-YZUFcXft7eTGJMY4I1FRak276dwfkSNFe6ylcWfRXJAmXWC39CCktE9qmNaZWSKB\" crossorigin=\"anonymous\"></script>\n<prayer-walk-planner profile-config='{\"profile\":\"prayer-walk-planner\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></prayer-walk-planner>"
}
}
]
@ -888,7 +888,7 @@
"bundle": "regions-dashboard",
"scriptUrl": "./regions-dashboard/regions-dashboard.js",
"output": "dx-maps/regions-dashboard/regions-dashboard.js",
"integrity": "sha384-BEqUFdE3NYEuMoaTaCG6UxUM69+kq+y3L3jDmAjg5MLlDBoLbTtWGiwG5oWSckdI",
"integrity": "sha384-0VXlux60qvoDiJCNedP6W33hhrWeghLzYSBkR8zK7bblXC74i4XL14Gsw+b/Z0la",
"elements": [
"regions-dashboard"
],
@ -908,7 +908,7 @@
"scriptUrl": "./regions-dashboard/regions-dashboard.js",
"embed": {
"iframe": "<iframe src=\"./regions-dashboard/region-dashboards/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-BEqUFdE3NYEuMoaTaCG6UxUM69+kq+y3L3jDmAjg5MLlDBoLbTtWGiwG5oWSckdI\" crossorigin=\"anonymous\"></script>\n<regions-dashboard profile-config='{\"profile\":\"region-dashboards\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></regions-dashboard>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-0VXlux60qvoDiJCNedP6W33hhrWeghLzYSBkR8zK7bblXC74i4XL14Gsw+b/Z0la\" crossorigin=\"anonymous\"></script>\n<regions-dashboard profile-config='{\"profile\":\"region-dashboards\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></regions-dashboard>"
}
},
{
@ -922,7 +922,7 @@
"scriptUrl": "./regions-dashboard/regions-dashboard.js",
"embed": {
"iframe": "<iframe src=\"./regions-dashboard/regions-list/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-BEqUFdE3NYEuMoaTaCG6UxUM69+kq+y3L3jDmAjg5MLlDBoLbTtWGiwG5oWSckdI\" crossorigin=\"anonymous\"></script>\n<regions-dashboard profile-config='{\"profile\":\"regions-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></regions-dashboard>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-0VXlux60qvoDiJCNedP6W33hhrWeghLzYSBkR8zK7bblXC74i4XL14Gsw+b/Z0la\" crossorigin=\"anonymous\"></script>\n<regions-dashboard profile-config='{\"profile\":\"regions-list\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></regions-dashboard>"
}
},
{
@ -936,7 +936,7 @@
"scriptUrl": "./regions-dashboard/regions-dashboard.js",
"embed": {
"iframe": "<iframe src=\"./regions-dashboard/regions-mfe/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-BEqUFdE3NYEuMoaTaCG6UxUM69+kq+y3L3jDmAjg5MLlDBoLbTtWGiwG5oWSckdI\" crossorigin=\"anonymous\"></script>\n<regions-dashboard profile-config='{\"profile\":\"regions-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></regions-dashboard>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-0VXlux60qvoDiJCNedP6W33hhrWeghLzYSBkR8zK7bblXC74i4XL14Gsw+b/Z0la\" crossorigin=\"anonymous\"></script>\n<regions-dashboard profile-config='{\"profile\":\"regions-mfe\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></regions-dashboard>"
}
}
]
@ -945,7 +945,7 @@
"bundle": "research-dashboard",
"scriptUrl": "./research-dashboard/research-dashboard.js",
"output": "dx-maps/research-dashboard/research-dashboard.js",
"integrity": "sha384-MLRjfoMdomG0I69I1CphdXkmzB517LQaljgcT4wnDvxVJwfPnjG5JwQnmnPxWl3M",
"integrity": "sha384-qWWWrFhA8lGOVnjlGbE0uOx4QbLMsxgf17CxAlMS9E+tUur1KA2dsrG22mEkYAeO",
"elements": [
"research-dashboard-map"
],
@ -961,7 +961,7 @@
"scriptUrl": "./research-dashboard/research-dashboard.js",
"embed": {
"iframe": "<iframe src=\"./research-dashboard/research-dashboard/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./research-dashboard/research-dashboard.js\" integrity=\"sha384-MLRjfoMdomG0I69I1CphdXkmzB517LQaljgcT4wnDvxVJwfPnjG5JwQnmnPxWl3M\" crossorigin=\"anonymous\"></script>\n<research-dashboard-map profile-config='{\"profile\":\"research-dashboard\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></research-dashboard-map>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./research-dashboard/research-dashboard.js\" integrity=\"sha384-qWWWrFhA8lGOVnjlGbE0uOx4QbLMsxgf17CxAlMS9E+tUur1KA2dsrG22mEkYAeO\" crossorigin=\"anonymous\"></script>\n<research-dashboard-map profile-config='{\"profile\":\"research-dashboard\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></research-dashboard-map>"
},
"bundle": "research-dashboard"
}
@ -971,7 +971,7 @@
"bundle": "research-map-plus-grid",
"scriptUrl": "./research-map-plus-grid/research-map-plus-grid.js",
"output": "dx-maps/research-map-plus-grid/research-map-plus-grid.js",
"integrity": "sha384-XOGLrOs4KZCfyXMDB8SIkx3wrxUfxk84xJkHsYSvZ83GXFjvb4ut8FT89zCgbTg5",
"integrity": "sha384-N12PTsk2HVN2Uh9nhF1R74uZ8+YO1nz92CqD+wlWhq5D+dKdaGy7BUr5QwaHg9C2",
"elements": [
"research-map-plus-grid"
],
@ -991,7 +991,7 @@
"scriptUrl": "./research-map-plus-grid/research-map-plus-grid.js",
"embed": {
"iframe": "<iframe 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></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./research-map-plus-grid/research-map-plus-grid.js\" integrity=\"sha384-XOGLrOs4KZCfyXMDB8SIkx3wrxUfxk84xJkHsYSvZ83GXFjvb4ut8FT89zCgbTg5\" crossorigin=\"anonymous\"></script>\n<research-map-plus-grid profile-config='{\"profile\":\"research-map-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></research-map-plus-grid>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./research-map-plus-grid/research-map-plus-grid.js\" integrity=\"sha384-N12PTsk2HVN2Uh9nhF1R74uZ8+YO1nz92CqD+wlWhq5D+dKdaGy7BUr5QwaHg9C2\" crossorigin=\"anonymous\"></script>\n<research-map-plus-grid profile-config='{\"profile\":\"research-map-plus-grid\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></research-map-plus-grid>"
},
"instances": [
{
@ -1059,7 +1059,7 @@
"bundle": "upg-neighbor",
"scriptUrl": "./upg-neighbor/upg-neighbor.js",
"output": "dx-maps/upg-neighbor/upg-neighbor.js",
"integrity": "sha384-62lGVmSvukYKgTsw3XfHSRtglRFrYNrYXtXH3jd5eQ2TMzMqGijpl793c57dPS/t",
"integrity": "sha384-ArOZYD+KcSsac8vqA8qrGCOfIzwg1ggx7pd9JvmitYUsQdyBRM6NAj0RDyUm72qV",
"elements": [
"upg-neighbor"
],
@ -1075,7 +1075,7 @@
"scriptUrl": "./upg-neighbor/upg-neighbor.js",
"embed": {
"iframe": "<iframe src=\"./upg-neighbor/upg-neighbor/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./upg-neighbor/upg-neighbor.js\" integrity=\"sha384-62lGVmSvukYKgTsw3XfHSRtglRFrYNrYXtXH3jd5eQ2TMzMqGijpl793c57dPS/t\" crossorigin=\"anonymous\"></script>\n<upg-neighbor profile-config='{\"profile\":\"upg-neighbor\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></upg-neighbor>"
"script": "<!-- Mapbox engine, fetched early; remove this line if you set \"provider\":\"maplibre\" -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./upg-neighbor/upg-neighbor.js\" integrity=\"sha384-ArOZYD+KcSsac8vqA8qrGCOfIzwg1ggx7pd9JvmitYUsQdyBRM6NAj0RDyUm72qV\" crossorigin=\"anonymous\"></script>\n<upg-neighbor profile-config='{\"profile\":\"upg-neighbor\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></upg-neighbor>"
},
"instances": [
{
@ -1157,7 +1157,7 @@
"bundle": "wall-of-people-groups",
"scriptUrl": "./wall-of-people-groups/wall-of-people-groups.js",
"output": "dx-maps/wall-of-people-groups/wall-of-people-groups.js",
"integrity": "sha384-yYtnyEkdcQYTrFMVg4InzswR+ySsojVAksN0e6asWQKMLxER+aYdV36btprHrmds",
"integrity": "sha384-sXhpZYTHbVs5SvTcH8/oAaqN9bWazW5NzlhEpqkk127lciRKE+8xT0gQviFP+KRx",
"elements": [
"wall-of-people-groups"
],
@ -1173,7 +1173,7 @@
"scriptUrl": "./wall-of-people-groups/wall-of-people-groups.js",
"embed": {
"iframe": "<iframe src=\"./wall-of-people-groups/wall-of-people-groups/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./wall-of-people-groups/wall-of-people-groups.js\" integrity=\"sha384-yYtnyEkdcQYTrFMVg4InzswR+ySsojVAksN0e6asWQKMLxER+aYdV36btprHrmds\" crossorigin=\"anonymous\"></script>\n<wall-of-people-groups profile-config='{\"profile\":\"wall-of-people-groups\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></wall-of-people-groups>"
"script": "<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./wall-of-people-groups/wall-of-people-groups.js\" integrity=\"sha384-sXhpZYTHbVs5SvTcH8/oAaqN9bWazW5NzlhEpqkk127lciRKE+8xT0gQviFP+KRx\" crossorigin=\"anonymous\"></script>\n<wall-of-people-groups profile-config='{\"profile\":\"wall-of-people-groups\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></wall-of-people-groups>"
},
"bundle": "wall-of-people-groups"
}

File diff suppressed because one or more lines are too long

View file

@ -26,7 +26,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <my-upg-100-list-map> custom element. -->
<script src="../my-upg-100-list.js" integrity="sha384-E2LWHzMGZQ8jt+E+jYmE4FQsphkFL7xwhBVKxoNp2V6rPg4PRwUWpCmbPWLQqCa4" crossorigin="anonymous"></script>
<script src="../my-upg-100-list.js" integrity="sha384-9T0q3d1bM52U2LvFYndlObd2Z+lH6aR07MzBErTR4aKfMwLD8ZMnuHN7WIc7pU3q" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <my-upg-100-list-map> custom element. -->
<script src="../my-upg-100-list.js" integrity="sha384-E2LWHzMGZQ8jt+E+jYmE4FQsphkFL7xwhBVKxoNp2V6rPg4PRwUWpCmbPWLQqCa4" crossorigin="anonymous"></script>
<script src="../my-upg-100-list.js" integrity="sha384-9T0q3d1bM52U2LvFYndlObd2Z+lH6aR07MzBErTR4aKfMwLD8ZMnuHN7WIc7pU3q" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -40,7 +40,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <my-upg-100-list-map> custom element. -->
<script src="../my-upg-100-list.js" integrity="sha384-E2LWHzMGZQ8jt+E+jYmE4FQsphkFL7xwhBVKxoNp2V6rPg4PRwUWpCmbPWLQqCa4" crossorigin="anonymous"></script>
<script src="../my-upg-100-list.js" integrity="sha384-9T0q3d1bM52U2LvFYndlObd2Z+lH6aR07MzBErTR4aKfMwLD8ZMnuHN7WIc7pU3q" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

File diff suppressed because one or more lines are too long

View file

@ -26,7 +26,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <people-groups-grid> custom element. -->
<script src="../../people-groups-grid.js" integrity="sha384-P36N4rI/QkK68QpPw1OHfxGIYeYfpr+1tX8Bxve+B98JfWFajRYKQeaRi5TgPVCU" crossorigin="anonymous"></script>
<script src="../../people-groups-grid.js" integrity="sha384-NxK7wM4VhKnvgdeGmcwCcPGvNkQq4dZRXDkh8eUWhtcEuz4s7EFeQQjxA1PciJVt" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -26,7 +26,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <people-groups-grid> custom element. -->
<script src="../people-groups-grid.js" integrity="sha384-P36N4rI/QkK68QpPw1OHfxGIYeYfpr+1tX8Bxve+B98JfWFajRYKQeaRi5TgPVCU" crossorigin="anonymous"></script>
<script src="../people-groups-grid.js" integrity="sha384-NxK7wM4VhKnvgdeGmcwCcPGvNkQq4dZRXDkh8eUWhtcEuz4s7EFeQQjxA1PciJVt" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -26,7 +26,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <people-groups-grid> custom element. -->
<script src="../../people-groups-grid.js" integrity="sha384-P36N4rI/QkK68QpPw1OHfxGIYeYfpr+1tX8Bxve+B98JfWFajRYKQeaRi5TgPVCU" crossorigin="anonymous"></script>
<script src="../../people-groups-grid.js" integrity="sha384-NxK7wM4VhKnvgdeGmcwCcPGvNkQq4dZRXDkh8eUWhtcEuz4s7EFeQQjxA1PciJVt" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

File diff suppressed because one or more lines are too long

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <pplr-data-maps> custom element. -->
<script src="../pplr-data-maps.js" integrity="sha384-se+fOEjiPb2yPm7oAXcq7NmlZIF1/MiWtzDAEJcu5bRwv8Zq5kM5yWG1JJu8StYU" crossorigin="anonymous"></script>
<script src="../pplr-data-maps.js" integrity="sha384-nMEYoH17y92xbERsRYP3x9sroR//lz8NvipOQvUfV8zV40pJ7DmW0avOm7sARD82" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

File diff suppressed because one or more lines are too long

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <prayer-walk-planner> custom element. -->
<script src="../prayer-walk-planner.js" integrity="sha384-R/ybjDe8VDmUbk7hl3Q6KApwLKwSs/8/zkzQVASWM9EpT5TwJpCxoLS33GSV9F8u" crossorigin="anonymous"></script>
<script src="../prayer-walk-planner.js" integrity="sha384-YZUFcXft7eTGJMY4I1FRak276dwfkSNFe6ylcWfRXJAmXWC39CCktE9qmNaZWSKB" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <regions-dashboard> custom element. -->
<script src="../regions-dashboard.js" integrity="sha384-BEqUFdE3NYEuMoaTaCG6UxUM69+kq+y3L3jDmAjg5MLlDBoLbTtWGiwG5oWSckdI" crossorigin="anonymous"></script>
<script src="../regions-dashboard.js" integrity="sha384-0VXlux60qvoDiJCNedP6W33hhrWeghLzYSBkR8zK7bblXC74i4XL14Gsw+b/Z0la" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

File diff suppressed because one or more lines are too long

View file

@ -26,7 +26,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <regions-dashboard> custom element. -->
<script src="../regions-dashboard.js" integrity="sha384-BEqUFdE3NYEuMoaTaCG6UxUM69+kq+y3L3jDmAjg5MLlDBoLbTtWGiwG5oWSckdI" crossorigin="anonymous"></script>
<script src="../regions-dashboard.js" integrity="sha384-0VXlux60qvoDiJCNedP6W33hhrWeghLzYSBkR8zK7bblXC74i4XL14Gsw+b/Z0la" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -40,7 +40,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <regions-dashboard> custom element. -->
<script src="../regions-dashboard.js" integrity="sha384-BEqUFdE3NYEuMoaTaCG6UxUM69+kq+y3L3jDmAjg5MLlDBoLbTtWGiwG5oWSckdI" crossorigin="anonymous"></script>
<script src="../regions-dashboard.js" integrity="sha384-0VXlux60qvoDiJCNedP6W33hhrWeghLzYSBkR8zK7bblXC74i4XL14Gsw+b/Z0la" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

File diff suppressed because one or more lines are too long

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <research-dashboard-map> custom element. -->
<script src="../research-dashboard.js" integrity="sha384-MLRjfoMdomG0I69I1CphdXkmzB517LQaljgcT4wnDvxVJwfPnjG5JwQnmnPxWl3M" crossorigin="anonymous"></script>
<script src="../research-dashboard.js" integrity="sha384-qWWWrFhA8lGOVnjlGbE0uOx4QbLMsxgf17CxAlMS9E+tUur1KA2dsrG22mEkYAeO" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

File diff suppressed because one or more lines are too long

View file

@ -37,7 +37,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <research-map-plus-grid> custom element. -->
<script src="../../research-map-plus-grid.js" integrity="sha384-XOGLrOs4KZCfyXMDB8SIkx3wrxUfxk84xJkHsYSvZ83GXFjvb4ut8FT89zCgbTg5" crossorigin="anonymous"></script>
<script src="../../research-map-plus-grid.js" integrity="sha384-N12PTsk2HVN2Uh9nhF1R74uZ8+YO1nz92CqD+wlWhq5D+dKdaGy7BUr5QwaHg9C2" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -37,7 +37,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <research-map-plus-grid> custom element. -->
<script src="../research-map-plus-grid.js" integrity="sha384-XOGLrOs4KZCfyXMDB8SIkx3wrxUfxk84xJkHsYSvZ83GXFjvb4ut8FT89zCgbTg5" crossorigin="anonymous"></script>
<script src="../research-map-plus-grid.js" integrity="sha384-N12PTsk2HVN2Uh9nhF1R74uZ8+YO1nz92CqD+wlWhq5D+dKdaGy7BUr5QwaHg9C2" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <upg-neighbor> custom element. -->
<script src="../../upg-neighbor.js" integrity="sha384-62lGVmSvukYKgTsw3XfHSRtglRFrYNrYXtXH3jd5eQ2TMzMqGijpl793c57dPS/t" crossorigin="anonymous"></script>
<script src="../../upg-neighbor.js" integrity="sha384-ArOZYD+KcSsac8vqA8qrGCOfIzwg1ggx7pd9JvmitYUsQdyBRM6NAj0RDyUm72qV" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <upg-neighbor> custom element. -->
<script src="../../upg-neighbor.js" integrity="sha384-62lGVmSvukYKgTsw3XfHSRtglRFrYNrYXtXH3jd5eQ2TMzMqGijpl793c57dPS/t" crossorigin="anonymous"></script>
<script src="../../upg-neighbor.js" integrity="sha384-ArOZYD+KcSsac8vqA8qrGCOfIzwg1ggx7pd9JvmitYUsQdyBRM6NAj0RDyUm72qV" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <upg-neighbor> custom element. -->
<script src="../upg-neighbor.js" integrity="sha384-62lGVmSvukYKgTsw3XfHSRtglRFrYNrYXtXH3jd5eQ2TMzMqGijpl793c57dPS/t" crossorigin="anonymous"></script>
<script src="../upg-neighbor.js" integrity="sha384-ArOZYD+KcSsac8vqA8qrGCOfIzwg1ggx7pd9JvmitYUsQdyBRM6NAj0RDyUm72qV" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <upg-neighbor> custom element. -->
<script src="../../upg-neighbor.js" integrity="sha384-62lGVmSvukYKgTsw3XfHSRtglRFrYNrYXtXH3jd5eQ2TMzMqGijpl793c57dPS/t" crossorigin="anonymous"></script>
<script src="../../upg-neighbor.js" integrity="sha384-ArOZYD+KcSsac8vqA8qrGCOfIzwg1ggx7pd9JvmitYUsQdyBRM6NAj0RDyUm72qV" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <upg-neighbor> custom element. -->
<script src="../../upg-neighbor.js" integrity="sha384-62lGVmSvukYKgTsw3XfHSRtglRFrYNrYXtXH3jd5eQ2TMzMqGijpl793c57dPS/t" crossorigin="anonymous"></script>
<script src="../../upg-neighbor.js" integrity="sha384-ArOZYD+KcSsac8vqA8qrGCOfIzwg1ggx7pd9JvmitYUsQdyBRM6NAj0RDyUm72qV" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

View file

@ -29,7 +29,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <upg-neighbor> custom element. -->
<script src="../../upg-neighbor.js" integrity="sha384-62lGVmSvukYKgTsw3XfHSRtglRFrYNrYXtXH3jd5eQ2TMzMqGijpl793c57dPS/t" crossorigin="anonymous"></script>
<script src="../../upg-neighbor.js" integrity="sha384-ArOZYD+KcSsac8vqA8qrGCOfIzwg1ggx7pd9JvmitYUsQdyBRM6NAj0RDyUm72qV" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order:

File diff suppressed because one or more lines are too long

View file

@ -26,7 +26,7 @@
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
<!-- Bundle IIFE — registers the <wall-of-people-groups> custom element. -->
<script src="../wall-of-people-groups.js" integrity="sha384-yYtnyEkdcQYTrFMVg4InzswR+ySsojVAksN0e6asWQKMLxER+aYdV36btprHrmds" crossorigin="anonymous"></script>
<script src="../wall-of-people-groups.js" integrity="sha384-sXhpZYTHbVs5SvTcH8/oAaqN9bWazW5NzlhEpqkk127lciRKE+8xT0gQviFP+KRx" crossorigin="anonymous"></script>
<script>
// Mapbox token resolution — the A3 ladder, in precedence order: