Update from source 1b397dc3
This commit is contained in:
parent
5059092ff0
commit
9b30128c68
104 changed files with 5883 additions and 398 deletions
1
data/tables/gospel-internet-readiness.json
Normal file
1
data/tables/gospel-internet-readiness.json
Normal file
File diff suppressed because one or more lines are too long
4828
data/translation-readiness/snapshot.json
Normal file
4828
data/translation-readiness/snapshot.json
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -191,6 +191,8 @@ and a change here can break other maps.
|
|||
`import … from '@map/composables/useSelectionCamera.js'`
|
||||
- **useShadowStyles** — useShadowStyles.js — Shadow DOM Style Injection
|
||||
`import … from '@map/composables/useShadowStyles.js'`
|
||||
- **useShareableView** — useShareableView — a dashboard's view state in the address bar, so a narrowed table can be SENT.
|
||||
`import … from '@map/composables/useShareableView.js'`
|
||||
- **useSharedMapToken** — useSharedMapToken.js — ONE page, ONE map token, shared by every element on it.
|
||||
`import … from '@map/composables/useSharedMapToken.js'`
|
||||
- **useTextHighlight** — highlightRanges(value, indices) — wrap each matched index range in
|
||||
|
|
|
|||
|
|
@ -86,6 +86,7 @@ const manifest = JSON.parse(readFileSync(join(REPO, 'public', TREE_NAME, 'manife
|
|||
const published = new Set(manifest.bundles.map((b) => b.bundle))
|
||||
|
||||
const fails = []
|
||||
const notes = []
|
||||
const rows = []
|
||||
for (const name of readdirSync(DESIGNS)) {
|
||||
const dir = join(DESIGNS, name)
|
||||
|
|
@ -136,6 +137,75 @@ if (debt.length) {
|
|||
+ debt.map((d) => d.name).join(', '))
|
||||
}
|
||||
|
||||
// ── THE SHARE LINK CARRIES THE WHOLE VIEW, INCLUDING THE TYPED SEARCH ─────────────────────────
|
||||
// The hash carried filterSet only, so a table narrowed by TYPING reopened with MORE ROWS than the
|
||||
// sender saw — silently, since the recipient had no way to know their set was wider. For population
|
||||
// data passed between teams that is worse than a link that plainly fails.
|
||||
// DRIVEN, not asserted: the two pure functions are lifted from the kit source and RUN, so the
|
||||
// guarantee is measured. Proving a string round-trips needs no browser.
|
||||
{
|
||||
const SRC = 'library/composables/useShareableView.js'
|
||||
let src = ''
|
||||
try { src = readFileSync(resolve(REPO, SRC), 'utf8') } catch (_) { src = '' }
|
||||
if (!src) fails.push(`SHARE-VIEW ${SRC} is missing — no dashboard can produce a shareable view.`)
|
||||
else {
|
||||
const pure = src.slice(src.indexOf('const slugify'), src.indexOf('export function useShareableView'))
|
||||
let serializeView, parseView, serializeQuery, parseQuery
|
||||
try {
|
||||
;({ serializeView, parseView, serializeQuery, parseQuery } = new Function(`${pure.replace(/export /g, '')}; return { serializeView, parseView, serializeQuery, parseQuery }`)())
|
||||
} catch (e) {
|
||||
fails.push(`SHARE-VIEW could not lift serializeView/parseView from ${SRC} (${e.message}) — keep them plain top-level functions so this stays measurable.`)
|
||||
}
|
||||
if (serializeView && parseView) {
|
||||
const L = (k) => ({ affinity_bloc: 'Malay Peoples' }[k])
|
||||
const eq = (what, got, want) => { if (JSON.stringify(got) !== JSON.stringify(want)) fails.push(`SHARE-VIEW ${what} — got ${JSON.stringify(got)}, want ${JSON.stringify(want)}`) }
|
||||
// An empty search box must write the hash the old code wrote, byte for byte, so every link
|
||||
// already sitting in a teammate's notes keeps working and keeps looking the same.
|
||||
eq('an empty search still writes the old format', serializeView({ religion_family: 'Hinduism' }, '', { labelFor: L }), '#f=religion_family:Hinduism')
|
||||
eq('the slug stays display-only', serializeView({ affinity_bloc: 'A008' }, '', { labelFor: L }), '#f=affinity_bloc:A008*malay-peoples')
|
||||
eq('a multi-value key still drops the slug', serializeView({ religion_family: ['Hinduism', 'Islam'] }, ''), '#f=religion_family:Hinduism,Islam')
|
||||
// The defect this arm exists for.
|
||||
eq('the typed search reaches the link', serializeView({}, 'bhutan'), '#f=&q=bhutan')
|
||||
eq('and comes back', parseView(serializeView({ religion_family: 'Hinduism' }, 'bhutan', { labelFor: L })), { filters: { religion_family: 'Hinduism' }, search: 'bhutan' })
|
||||
// Delimiters that occur inside real values: a people group with a comma, a search with an `&`.
|
||||
eq('a literal comma in a value survives', parseView(serializeView({ language: ['Arabic, Sudanese'] }, '')).filters, { language: 'Arabic, Sudanese' })
|
||||
eq('an ampersand in the search survives', parseView(serializeView({}, 'rice & beans')).search, 'rice & beans')
|
||||
// Links that already exist must keep opening.
|
||||
eq('a legacy JSON hash still restores', parseView('#f=' + encodeURIComponent(JSON.stringify({ affinity_bloc: 'A008' }))).filters, { affinity_bloc: 'A008' })
|
||||
eq('an old link with no q restores no search', parseView('#f=religion_family:Hinduism').search, '')
|
||||
// QUERY MODE, requested by go-int: its board already shares as ?access=…&band=…, restored before
|
||||
// first render, and writes only on its own leaves so a partner's address bar is never touched. A
|
||||
// hash-only composable would have given that board TWO URL states instead of replacing its glue.
|
||||
// The host-param case is the one that matters: writing must not eat a query the page already owns.
|
||||
eq('query writes one param per facet', serializeQuery({ access: 'low', band: '2g' }, ''), '?access=low&band=2g')
|
||||
eq('query preserves a host param', serializeQuery({ access: 'low' }, '', '?utm_source=partner'), '?utm_source=partner&access=low')
|
||||
eq('query replaces its own stale param', serializeQuery({ access: 'high' }, '', '?access=low&utm=x'), '?utm=x&access=high')
|
||||
eq('query round-trips filters and search', parseQuery(serializeQuery({ access: 'low', band: ['2g', '3g'] }, 'bhutan'), ['access', 'band']), { filters: { access: 'low', band: ['2g', '3g'] }, search: 'bhutan' })
|
||||
eq('query reads only declared facet keys', parseQuery('?access=low&panel=map', ['access']).filters, { access: 'low' })
|
||||
eq('query keeps a comma inside a value', parseQuery(serializeQuery({ language: ['Arabic, Sudanese'] }, ''), ['language']).filters, { language: 'Arabic, Sudanese' })
|
||||
// ★ AN ALIAS MAP, because a param name already published cannot be renamed. go-int has shared
|
||||
// ?access= against a bus key of access_level; insisting the two match would have renamed every
|
||||
// param on adoption and broken every link already sitting on a partner page — the exact harm this
|
||||
// card exists to prevent, delivered by the thing meant to prevent it. Driven with its real names.
|
||||
const ALIAS = { access: 'access_level', app: 'messaging' }
|
||||
eq('alias writes the published param name', serializeQuery({ access_level: 'low', messaging: 'sms' }, '', '', { facetKeys: ALIAS }), '?access=low&app=sms')
|
||||
eq('alias reads an already-shared link', parseQuery('?access=low&app=sms', ALIAS), { filters: { access_level: 'low', messaging: 'sms' }, search: '' })
|
||||
eq('an undeclared bus key keeps its own name', serializeQuery({ country: 'BT' }, '', '', { facetKeys: ALIAS }), '?country=BT')
|
||||
eq('a host param survives under an alias map', serializeQuery({ access_level: 'low' }, '', '?utm=x', { facetKeys: ALIAS }), '?utm=x&access=low')
|
||||
// ★ BOTH SEPARATORS ON READ, ONE ON WRITE. go-int's board has always written band=yes|partial and
|
||||
// those links are on partner pages; splitting only on ',' read that back as the single value
|
||||
// "yes|partial" and matched no row, so adopting this composable would have broken every multi-value
|
||||
// link they had already shared. Reserving `|` on write is what makes accepting it on read free.
|
||||
eq('an already-shared | link restores', parseQuery('?band=yes|partial', ['band']).filters, { band: ['yes', 'partial'] })
|
||||
eq('mixed separators in one link', parseQuery('?band=yes|partial&country=IND,CHN', ['band', 'country']).filters, { band: ['yes', 'partial'], country: ['IND', 'CHN'] })
|
||||
eq('we still write one canonical separator', serializeQuery({ band: ['yes', 'partial'] }, '', '', { facetKeys: ['band'] }), '?band=yes,partial')
|
||||
eq('a literal | inside a value is escaped, not split', parseQuery(serializeQuery({ x: 'a|b' }, '', '', { facetKeys: ['x'] }), ['x']).filters, { x: 'a|b' })
|
||||
if (!fails.some((f) => f.startsWith('SHARE-VIEW'))) notes.push('share link: filters AND the typed search round-trip in BOTH hash and query mode; old links, legacy JSON and a host page\'s own query all survive')
|
||||
}
|
||||
}
|
||||
}
|
||||
for (const n of notes) console.log(' · ' + n)
|
||||
|
||||
if (fails.length) {
|
||||
console.error(`\nSHARE-POLICY: FAIL — ${fails.length} problem(s)`)
|
||||
for (const f of fails) console.error(' - ' + f)
|
||||
|
|
|
|||
|
|
@ -74,6 +74,12 @@ export const EXPORT_FIELDS = [
|
|||
* It is applied to the COMMENT LINE ONLY — never to a data column (see buildCsv).
|
||||
*/
|
||||
export function useCsvExport({ rowStore, rows, selectionSet, filterSet, FACET_ACC, dataOpts = {}, labelFor = null,
|
||||
// ★ THE TYPED SEARCH NARROWS THE EXPORT TOO. Optional rows->rows transform, so a caller that does not
|
||||
// pass it behaves exactly as before. Without it the export ignored the search box completely: with no
|
||||
// facet filter and no selection, pickRows() fell through to EVERY row, so a reader who typed "Bhutan"
|
||||
// and saw 13 rows downloaded all 2,107. Not applied to an explicit selection — picking rows by hand
|
||||
// outranks a text filter, which is the documented priority model, and the reader can see what they picked.
|
||||
searchFilter = null,
|
||||
// What this export calls itself, and who to credit for the data. Defaults keep every existing
|
||||
// caller's file identical to the byte.
|
||||
exportLabel = 'Research Dashboard', sources = '',
|
||||
|
|
@ -102,7 +108,19 @@ export function useCsvExport({ rowStore, rows, selectionSet, filterSet, FACET_AC
|
|||
// is the config-level spelling of the same thing; go-int flagged the pair, and they should agree.
|
||||
keyOf = (r) => r && (r.slug || r.id),
|
||||
// Defaulted so a caller that predates D1 keeps working exactly as before rather than throwing.
|
||||
rowMatches = (r, ACC) => Object.keys(filterSet).every((k) => { const a = ACC[k]; return a ? a(r) === filterSet[k] : true }) }) {
|
||||
// ★ THE DEFAULT IS ARRAY-AWARE, because it is the LIVE path, not a legacy shim. A filterSet value is
|
||||
// an array once two values are selected (spec D1), and `a(r) === ['Hinduism','Islam']` is false for
|
||||
// every row — so the export silently produced a file matching NOTHING the moment a reader picked a
|
||||
// second value. Measured: DashboardDataTable and DashboardDetailDrawer both rely on this default
|
||||
// (only useDashboardShell passes its own), so two of the three live callers exported an empty set.
|
||||
// OR within a key, the same rule bus.rowMatchesFilters applies, so the CSV agrees with the screen.
|
||||
// Single-value behaviour is unchanged: one value takes exactly the path it always did.
|
||||
rowMatches = (r, ACC) => Object.keys(filterSet).every((k) => {
|
||||
const a = ACC[k]
|
||||
if (!a) return true
|
||||
const want = filterSet[k]
|
||||
return Array.isArray(want) ? want.some((v) => a(r) === v) : a(r) === want
|
||||
}) }) {
|
||||
// slug -> wide API record, filled by the lazy all-fields fetch below.
|
||||
let wideStore = null
|
||||
let widePromise = null
|
||||
|
|
@ -148,6 +166,7 @@ export function useCsvExport({ rowStore, rows, selectionSet, filterSet, FACET_AC
|
|||
}
|
||||
|
||||
function pickRows() {
|
||||
const narrow = (list) => (typeof searchFilter === 'function' ? searchFilter(list) : list)
|
||||
if (selectionSet && selectionSet.size) {
|
||||
return [...selectionSet].map((s) => rowStore.value.get(s)).filter(Boolean)
|
||||
}
|
||||
|
|
@ -156,9 +175,9 @@ export function useCsvExport({ rowStore, rows, selectionSet, filterSet, FACET_AC
|
|||
// The bus's own predicate, handed in by the shell — the exporter must select the same rows
|
||||
// the reader is looking at, and a private copy of the rule is how an export starts
|
||||
// disagreeing with the screen it was taken from.
|
||||
return (rows.value || []).filter((r) => rowMatches(r, FACET_ACC))
|
||||
return narrow((rows.value || []).filter((r) => rowMatches(r, FACET_ACC)))
|
||||
}
|
||||
return rows.value || []
|
||||
return narrow(rows.value || [])
|
||||
}
|
||||
function scopeLabel() {
|
||||
if (selectionSet && selectionSet.size) return `selection (${selectionSet.size})`
|
||||
|
|
|
|||
206
library/composables/useShareableView.js
Normal file
206
library/composables/useShareableView.js
Normal file
|
|
@ -0,0 +1,206 @@
|
|||
/**
|
||||
* useShareableView — a dashboard's view state in the address bar, so a narrowed table can be SENT.
|
||||
*
|
||||
* The persona this exists for: a researcher narrows the table to the peoples they are working on, then
|
||||
* gives that exact view to a teammate or reopens it on a phone in the field. A link is the only part of
|
||||
* the product a person copies, pastes and reads, so the format is legible on purpose:
|
||||
*
|
||||
* #f=affinity_bloc:A008*malay-peoples;religion_family:Hinduism&q=bhutan
|
||||
*
|
||||
* ── LIFTED FROM research-dashboard, AND WHY IT IS HERE ────────────────────────────────────────
|
||||
* This was a PRIVATE function inside plugin-designs/research-dashboard/src/composables/
|
||||
* useDashboardShell.js, so exactly one dashboard in the fleet could produce a shareable link. Every
|
||||
* other dashboard built on the kit — go-int's board today, the next one after it — had no way to share
|
||||
* a view at all. Nothing about the logic was research-specific; only its address was.
|
||||
*
|
||||
* ── THE FORMAT, AND THE TWO DECISIONS INSIDE IT (carried over, not reinvented) ─────────────────
|
||||
* CODE-CANONICAL, SLUG DISPLAY-ONLY (card BUG-SHARE-URL-LEAKS-RAW-CODES). The old hash was
|
||||
* URL-encoded JSON — #f=%7B%22affinity_bloc%22%3A%22A008%22%7D — unreadable twice over: JSON
|
||||
* punctuation percent-escaped, and the value a bare API code. Now the CODE is canonical and `*slug` is
|
||||
* appended from labelFor() at share time and STRIPPED on parse, so links stay locale-independent and
|
||||
* survive label renames. A MULTI-VALUE key drops the slug entirely: there is no honest human name for
|
||||
* "these twenty-two codes", and inventing one would put a label in a URL that does not describe what
|
||||
* the URL selects.
|
||||
*
|
||||
* ── THE SEARCH TERM IS IN THE LINK, WHICH IT WAS NOT BEFORE ───────────────────────────────────
|
||||
* The hash carried filterSet ONLY. Typing in the search box is the commonest way this persona narrows a
|
||||
* table, so a shared link reopened with MORE ROWS than the sender was looking at — and silently, since
|
||||
* the recipient had no way to know their set was wider. For population data passed between teams that
|
||||
* is worse than a link that plainly fails. `q` is appended only when a term is present, so a dashboard
|
||||
* with an empty search box produces byte-identically the hash it produced before.
|
||||
*
|
||||
* @param {object} bus a selection bus (filterSet, setFilter, searchTerm, setSearch)
|
||||
* @param {object} [options]
|
||||
* @param {(facetKey:string, value:any)=>string} [options.labelFor] supplies the display-only slug.
|
||||
* Injected, never imported: the label tables are the consuming dashboard's, not the kit's.
|
||||
* @param {string} [options.hashKey='f'] the filter param name, for a host that already owns `f`
|
||||
* @param {string} [options.searchKey='q'] the search param name, same reason
|
||||
* @param {'hash'|'query'} [options.mode='hash'] where the state lives. 'query' writes one param per
|
||||
* facet (?access=…&band=…&q=…) instead of a single #f= blob — go-int's board already shares that
|
||||
* way, restored before first render, and a composable that only spoke hash would have given it
|
||||
* TWO URL states rather than replacing its glue. Requested by the consumer, not invented here.
|
||||
* @param {boolean} [options.write=true] whether to WRITE the URL at all. go-int writes only on its own
|
||||
* leaves (profile-config urlState:'query') so a partner's address bar is never touched; reading
|
||||
* stays unconditional, because restoring a link someone sent must work everywhere.
|
||||
*/
|
||||
import { watch, onMounted } from 'vue'
|
||||
|
||||
const slugify = (s) => String(s ?? '').toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/^-+|-+$/g, '').slice(0, 40)
|
||||
// Minimal escaping, maximal legibility: reserve our delimiters + %, keep spaces as `+` (the
|
||||
// x-www-form-urlencoded convention), leave everything else — including unicode — alone. `,` joins the
|
||||
// values of ONE key (OR-within-key), and is reserved for the same reason `;` `:` `*` are: a delimiter
|
||||
// that can also occur inside a value is not a delimiter. `&` joins params, so it is reserved too —
|
||||
// without that, a search for "rice & beans" would truncate the link at the ampersand.
|
||||
// `|` joins as well as `,` — see LIST_SEP below — so it is reserved too. A delimiter that can also occur
|
||||
// inside a value is not a delimiter, and that rule has already cost this tree once: the language-code link
|
||||
// joined on `,` until 120 of 864 language labels turned out to contain one.
|
||||
const escapeValue = (s) => String(s).replace(/[%;:*+,&|]/g, (c) => '%' + c.charCodeAt(0).toString(16).toUpperCase()).replace(/ /g, '+')
|
||||
|
||||
/**
|
||||
* ★ READ BOTH `,` AND `|`; WRITE `,`. go-int's board has always written `band=yes|partial` and
|
||||
* `country=IND|CHN`, and those links are on partner pages now. Splitting only on `,` read that back as the
|
||||
* single value "yes|partial", which matches no row — so adopting this composable would have broken every
|
||||
* multi-value link they had already shared. Accepting BOTH separators on read costs nothing: escapeValue
|
||||
* percent-encodes a literal `,` or `|` inside a value before any join, so every separator still present in
|
||||
* a URL is genuinely a separator.
|
||||
* Writing stays `,` so there is ONE canonical form going forward rather than two dialects to reason about.
|
||||
* The one case this does not cover, stated rather than papered over: an OLD link whose VALUE contained a
|
||||
* literal `|` written before `|` was reserved would now be split. No facet vocabulary in the tree contains
|
||||
* one (checked religion.js and the region/language codes), and go-int confirms `|` cannot occur in a facet
|
||||
* code, so the exposure is a value shape that does not exist rather than one we are choosing to risk.
|
||||
*/
|
||||
const LIST_SEP = /[,|]/
|
||||
const unescapeValue = (s) => { try { return decodeURIComponent(String(s).replace(/\+/g, '%20')) } catch (_) { return String(s).replace(/\+/g, ' ') } }
|
||||
|
||||
/** Serialize a view to a hash string. Exported so a gate can drive it without a browser. */
|
||||
export function serializeView(filterSet, searchTerm, { labelFor, hashKey = 'f', searchKey = 'q' } = {}) {
|
||||
const pairs = Object.entries(filterSet || {}).map(([k, v]) => {
|
||||
if (Array.isArray(v)) return k + ':' + v.map(escapeValue).join(',')
|
||||
const label = typeof labelFor === 'function' ? labelFor(k, v) : null
|
||||
const slug = label && String(label) !== String(v) ? slugify(label) : ''
|
||||
return k + ':' + escapeValue(v) + (slug ? '*' + slug : '')
|
||||
})
|
||||
const term = String(searchTerm ?? '').trim()
|
||||
return '#' + hashKey + '=' + pairs.join(';') + (term ? '&' + searchKey + '=' + escapeValue(term) : '')
|
||||
}
|
||||
|
||||
/** Parse a hash into { filters, search }. Exported for the same reason. */
|
||||
export function parseView(hash, { hashKey = 'f', searchKey = 'q' } = {}) {
|
||||
const out = { filters: {}, search: '' }
|
||||
const h = String(hash || '')
|
||||
const sm = new RegExp('[#&]' + searchKey + '=([^&]*)').exec(h)
|
||||
if (sm) out.search = unescapeValue(sm[1])
|
||||
const m = new RegExp('[#&]' + hashKey + '=([^&]*)').exec(h)
|
||||
if (!m) return out
|
||||
const raw = m[1]
|
||||
if (raw.startsWith('{') || raw.startsWith('%7B') || raw.startsWith('%7b')) {
|
||||
// A legacy JSON hash from a link shared before the readable format. Still restores.
|
||||
try { out.filters = JSON.parse(decodeURIComponent(raw)) } catch (_) { /* ignore bad hash */ }
|
||||
return out
|
||||
}
|
||||
for (const pair of raw.split(';')) {
|
||||
const i = pair.indexOf(':')
|
||||
if (i < 1) continue
|
||||
const key = pair.slice(0, i)
|
||||
const body = pair.slice(i + 1).split('*')[0]
|
||||
// Split BEFORE unescaping: a literal comma inside a value is percent-encoded by escapeValue, so
|
||||
// every `,` still here is a separator. Unescaping first would resurrect content commas and split
|
||||
// the value in half.
|
||||
const parts = body.split(LIST_SEP).map(unescapeValue).filter(Boolean)
|
||||
if (key && parts.length) out.filters[key] = parts.length > 1 ? parts : parts[0]
|
||||
}
|
||||
return out
|
||||
}
|
||||
|
||||
/**
|
||||
* ★ A PARAM NAME IS NOT ALWAYS THE BUS KEY, AND RENAMING ONE BREAKS LINKS THAT ARE ALREADY OUT.
|
||||
* go-int's board has shared `?access=` for a while against a bus key of `access_level` (and detail ->
|
||||
* access_detail, wayin -> way_in, app -> messaging). Those links sit on partner pages today. If this
|
||||
* composable insisted that the param equal the key, adopting it would silently rename every param and
|
||||
* every one of those links would stop restoring — the exact harm the shareable-view card exists to
|
||||
* prevent, caused by the thing meant to deliver it.
|
||||
* So `facetKeys` takes EITHER shape:
|
||||
* ['access_level', 'country'] param name === bus key
|
||||
* { access: 'access_level', app: 'messaging' } param -> bus key, for names already in the wild
|
||||
* An array stays the common case; the map is for a URL vocabulary you have already published.
|
||||
*/
|
||||
const busKeyFor = (facetKeys) => {
|
||||
if (Array.isArray(facetKeys)) { const k = new Set(facetKeys); return (p) => (k.has(p) ? p : null) }
|
||||
const m = facetKeys && typeof facetKeys === 'object' ? facetKeys : {}
|
||||
return (p) => (Object.prototype.hasOwnProperty.call(m, p) ? m[p] : null)
|
||||
}
|
||||
const paramNameFor = (facetKeys) => {
|
||||
if (!facetKeys || Array.isArray(facetKeys)) return (k) => k
|
||||
const rev = Object.fromEntries(Object.entries(facetKeys).map(([param, key]) => [key, param]))
|
||||
// A bus key with no declared param keeps its own name rather than being dropped: a filter that
|
||||
// cannot be written is a filter that silently will not survive the link.
|
||||
return (k) => (Object.prototype.hasOwnProperty.call(rev, k) ? rev[k] : k)
|
||||
}
|
||||
|
||||
/**
|
||||
* Serialize to a QUERY string, one param per facet. Preserves params this composable does not own —
|
||||
* a host page's own query survives, which is the whole point of writing only on your own leaves.
|
||||
*/
|
||||
export function serializeQuery(filterSet, searchTerm, existing = '', { searchKey = 'q', facetKeys } = {}) {
|
||||
const paramOf = paramNameFor(facetKeys)
|
||||
const keep = []
|
||||
const mine = new Set([...Object.keys(filterSet || {}).map(paramOf), searchKey])
|
||||
for (const part of String(existing || '').replace(/^\?/, '').split('&')) {
|
||||
if (!part) continue
|
||||
const k = part.split('=')[0]
|
||||
if (!mine.has(k)) keep.push(part)
|
||||
}
|
||||
const pairs = Object.entries(filterSet || {}).map(([k, v]) =>
|
||||
paramOf(k) + '=' + (Array.isArray(v) ? v.map(escapeValue).join(',') : escapeValue(v)))
|
||||
const term = String(searchTerm ?? '').trim()
|
||||
if (term) pairs.push(searchKey + '=' + escapeValue(term))
|
||||
const all = [...keep, ...pairs]
|
||||
return all.length ? '?' + all.join('&') : ''
|
||||
}
|
||||
|
||||
/** Parse a QUERY string. Only the keys the caller declares as facets are read as filters. */
|
||||
export function parseQuery(search, facetKeys = [], { searchKey = 'q' } = {}) {
|
||||
const out = { filters: {}, search: '' }
|
||||
const keyOf = busKeyFor(facetKeys)
|
||||
for (const part of String(search || '').replace(/^\?/, '').split('&')) {
|
||||
if (!part) continue
|
||||
const i = part.indexOf('=')
|
||||
if (i < 1) continue
|
||||
const k = part.slice(0, i)
|
||||
const body = part.slice(i + 1)
|
||||
if (k === searchKey) { out.search = unescapeValue(body); continue }
|
||||
const busKey = keyOf(k)
|
||||
if (!busKey) continue
|
||||
const parts = body.split(LIST_SEP).map(unescapeValue).filter(Boolean)
|
||||
if (parts.length) out.filters[busKey] = parts.length > 1 ? parts : parts[0]
|
||||
}
|
||||
return out
|
||||
}
|
||||
|
||||
export function useShareableView(bus, options = {}) {
|
||||
const { mode = 'hash', write: shouldWrite = true, facetKeys } = options
|
||||
const push = () => {
|
||||
try {
|
||||
if (typeof location === 'undefined' || !shouldWrite) return
|
||||
const url = mode === 'query'
|
||||
? serializeQuery(bus.filterSet, bus.searchTerm?.value, location.search, { ...options, facetKeys }) + location.hash
|
||||
: location.search + serializeView(bus.filterSet, bus.searchTerm?.value, options)
|
||||
history.replaceState(null, '', location.pathname + url)
|
||||
} catch (_) { /* sandboxed */ }
|
||||
}
|
||||
watch(() => ({ ...bus.filterSet, __q: bus.searchTerm?.value }), push, { deep: true })
|
||||
onMounted(() => {
|
||||
try {
|
||||
if (typeof location === 'undefined') return
|
||||
// READING is unconditional even when writing is off: restoring a link someone sent has to work
|
||||
// on a partner's page too, which is exactly where writing must not happen.
|
||||
const { filters, search } = mode === 'query'
|
||||
? parseQuery(location.search, facetKeys || Object.keys(bus.filterSet || {}), options)
|
||||
: parseView(location.hash, options)
|
||||
Object.entries(filters).forEach(([k, v]) => bus.setFilter(k, v))
|
||||
if (search && typeof bus.setSearch === 'function') bus.setSearch(search)
|
||||
} catch (_) { /* ignore a bad URL */ }
|
||||
})
|
||||
}
|
||||
|
||||
export default useShareableView
|
||||
|
|
@ -74,7 +74,9 @@
|
|||
"loading": "جارٍ تحميل الموارد…",
|
||||
"pray": "صلِّ من أجل",
|
||||
"everyResource": "كل الموارد بـ",
|
||||
"alsoSpeak": "يتحدثون أيضًا"
|
||||
"alsoSpeak": "يتحدثون أيضًا",
|
||||
"share": "مشاركة",
|
||||
"linkCopied": "تم نسخ الرابط"
|
||||
},
|
||||
"res": {
|
||||
"scripture": "الكتاب المقدس",
|
||||
|
|
|
|||
|
|
@ -51,6 +51,12 @@
|
|||
"language": "اللغة",
|
||||
"messaging": "تطبيق المراسلة الأول (البلد، iOS)",
|
||||
"mobile": "الهواتف المحمولة لكل 100",
|
||||
"openBench": "معيار الترجمة الآلية (FLORES+)",
|
||||
"openBooks": "أسفار الكتاب المقدس (eBible)",
|
||||
"openData": "بيانات مفتوحة (من 5)",
|
||||
"openGrammar": "القواعد (Glottolog)",
|
||||
"openSpeech": "ساعات الكلام (Common Voice)",
|
||||
"openWiki": "ويكيبيديا",
|
||||
"platform": "المنصة الأولى (البلد)",
|
||||
"praying": "المصلّون",
|
||||
"province": "الولاية / المقاطعة (تقريبية)",
|
||||
|
|
@ -93,6 +99,12 @@
|
|||
"nfhsNote": "NFHS-5، 2019–21، الأعمار 15–49: رقم الولاية، لا رقم المجموعة.",
|
||||
"noFeed": "هذا البلد غير موجود في موجز Apple: تطبيقات المراسلة فيه غير معروفة هنا، لا غائبة.",
|
||||
"noneNote": "لم يُعثر على شيء بلغتهم في المصادر التي فُحصت. وهذا ليس ادعاءً بأنه لا يوجد شيء.",
|
||||
"notInSource": "غير موجود في هذا المصدر",
|
||||
"openCheck": "بيانات مفتوحة وافرة لكن لم يُعثر على عهد جديد: تحقّق أولًا، فقد يوجد عهد جديد فاتته المصادر التي فُحصت.",
|
||||
"openCount": "بيانات مفتوحة",
|
||||
"openNote": "المصادر: Glottolog (CC BY 4.0)، eBible، ويكيبيديا (CC BY-SA 4.0)، Common Voice (CC0)، FLORES+ (CC BY-SA 4.0). عدٌّ لحقائق مسمّاة وليس تقييمًا.",
|
||||
"openOf": "{n} من 5 مؤشرات",
|
||||
"openTitle": "بيانات مفتوحة لبدء ترجمة",
|
||||
"own": "بلغتهم",
|
||||
"people": "{n} شخص",
|
||||
"platformNote": "حصة الزيارات القادمة من منصات التواصل الاجتماعي المرصودة في البلد (StatCounter). تطبيقات المراسلة مثل واتساب غير مقيسة.",
|
||||
|
|
|
|||
|
|
@ -74,7 +74,9 @@
|
|||
"loading": "Ressourcen werden geladen…",
|
||||
"pray": "Betet für",
|
||||
"everyResource": "Alle Ressourcen auf",
|
||||
"alsoSpeak": "Sprechen ebenfalls"
|
||||
"alsoSpeak": "Sprechen ebenfalls",
|
||||
"share": "Teilen",
|
||||
"linkCopied": "Link kopiert"
|
||||
},
|
||||
"res": {
|
||||
"scripture": "Bibeltext",
|
||||
|
|
|
|||
|
|
@ -51,6 +51,12 @@
|
|||
"language": "Sprache",
|
||||
"messaging": "Top-Messenger (Land, iOS)",
|
||||
"mobile": "Mobilfunk pro 100",
|
||||
"openBench": "MÜ-Benchmark (FLORES+)",
|
||||
"openBooks": "Bibelbücher (eBible)",
|
||||
"openData": "Offene Daten (von 5)",
|
||||
"openGrammar": "Grammatik (Glottolog)",
|
||||
"openSpeech": "Sprachstunden (Common Voice)",
|
||||
"openWiki": "Wikipedia",
|
||||
"platform": "Top-Plattform (Land)",
|
||||
"praying": "Betende Menschen",
|
||||
"province": "Bundesstaat / Provinz (ungefähr)",
|
||||
|
|
@ -93,6 +99,12 @@
|
|||
"nfhsNote": "NFHS-5, 2019–21, 15–49 Jahre: die Zahl des Bundesstaats, nicht der Gruppe.",
|
||||
"noFeed": "Dieses Land ist nicht in Apples Feed: Seine Messenger sind hier unbekannt, nicht abwesend.",
|
||||
"noneNote": "In den geprüften Quellen wurde nichts in ihrer eigenen Sprache gefunden. Das ist keine Behauptung, dass nichts existiert.",
|
||||
"notInSource": "nicht in dieser Quelle",
|
||||
"openCheck": "Starke offene Daten, aber kein Neues Testament gefunden: erst prüfen, vielleicht gibt es eines, das die geprüften Quellen übersehen haben.",
|
||||
"openCount": "Offene Daten",
|
||||
"openNote": "Quellen: Glottolog (CC BY 4.0), eBible, Wikipedia (CC BY-SA 4.0), Common Voice (CC0), FLORES+ (CC BY-SA 4.0). Eine Zählung benannter Fakten, keine Bewertung.",
|
||||
"openOf": "{n} von 5 Signalen",
|
||||
"openTitle": "Offene Daten als Ausgangspunkt einer Übersetzung",
|
||||
"own": "In ihrer eigenen Sprache",
|
||||
"people": "{n} Menschen",
|
||||
"platformNote": "Anteil der Web-Verweise unter den erfassten sozialen Plattformen im Land (StatCounter). Messenger wie WhatsApp werden nicht gemessen.",
|
||||
|
|
|
|||
|
|
@ -74,7 +74,9 @@
|
|||
"loading": "Loading resources…",
|
||||
"pray": "Pray for",
|
||||
"everyResource": "Every resource in",
|
||||
"alsoSpeak": "Also speak"
|
||||
"alsoSpeak": "Also speak",
|
||||
"share": "Share",
|
||||
"linkCopied": "Link copied"
|
||||
},
|
||||
"res": {
|
||||
"scripture": "Scripture",
|
||||
|
|
|
|||
|
|
@ -51,6 +51,12 @@
|
|||
"language": "Language",
|
||||
"messaging": "Top messaging app (country, iOS)",
|
||||
"mobile": "Mobile per 100",
|
||||
"openBench": "MT benchmark (FLORES+)",
|
||||
"openBooks": "Scripture books (eBible)",
|
||||
"openData": "Open data (of 5)",
|
||||
"openGrammar": "Grammar (Glottolog)",
|
||||
"openSpeech": "Speech hours (Common Voice)",
|
||||
"openWiki": "Wikipedia",
|
||||
"platform": "Top platform (country)",
|
||||
"praying": "People praying",
|
||||
"province": "State / province (approx.)",
|
||||
|
|
@ -93,6 +99,12 @@
|
|||
"nfhsNote": "NFHS-5, 2019-21, ages 15-49: the state's figure, not the group's.",
|
||||
"noFeed": "This country is not in Apple's feed: its messaging apps are unknown here, not absent.",
|
||||
"noneNote": "Nothing found in their own language in the sources checked. That is not a claim that nothing exists.",
|
||||
"notInSource": "not in this source",
|
||||
"openCheck": "Strong open data but no New Testament found: check first, one may exist that the sources checked missed.",
|
||||
"openCount": "Open data",
|
||||
"openNote": "Sources: Glottolog (CC BY 4.0), eBible, Wikipedia (CC BY-SA 4.0), Common Voice (CC0), FLORES+ (CC BY-SA 4.0). A count of named facts, not a score.",
|
||||
"openOf": "{n} of 5 signals",
|
||||
"openTitle": "Open data to start a translation from",
|
||||
"own": "In their own language",
|
||||
"people": "{n} people",
|
||||
"platformNote": "Share of web referrals among tracked social platforms in the country (StatCounter). Messaging apps such as WhatsApp are not measured.",
|
||||
|
|
|
|||
|
|
@ -74,7 +74,9 @@
|
|||
"loading": "Cargando recursos…",
|
||||
"pray": "Ora por",
|
||||
"everyResource": "Todos los recursos en",
|
||||
"alsoSpeak": "También hablan"
|
||||
"alsoSpeak": "También hablan",
|
||||
"share": "Compartir",
|
||||
"linkCopied": "Enlace copiado"
|
||||
},
|
||||
"res": {
|
||||
"scripture": "Escrituras",
|
||||
|
|
|
|||
|
|
@ -51,6 +51,12 @@
|
|||
"language": "Idioma",
|
||||
"messaging": "App de mensajería principal (país, iOS)",
|
||||
"mobile": "Móviles por 100",
|
||||
"openBench": "Referencia de TA (FLORES+)",
|
||||
"openBooks": "Libros bíblicos (eBible)",
|
||||
"openData": "Datos abiertos (de 5)",
|
||||
"openGrammar": "Gramática (Glottolog)",
|
||||
"openSpeech": "Horas de voz (Common Voice)",
|
||||
"openWiki": "Wikipedia",
|
||||
"platform": "Plataforma principal (país)",
|
||||
"praying": "Personas orando",
|
||||
"province": "Estado / provincia (aprox.)",
|
||||
|
|
@ -93,6 +99,12 @@
|
|||
"nfhsNote": "NFHS-5, 2019–21, 15–49 años: la cifra del estado, no la del grupo.",
|
||||
"noFeed": "Este país no está en el feed de Apple: sus apps de mensajería son desconocidas aquí, no ausentes.",
|
||||
"noneNote": "No se encontró nada en su propio idioma en las fuentes consultadas. Eso no afirma que no exista nada.",
|
||||
"notInSource": "no está en esta fuente",
|
||||
"openCheck": "Datos abiertos sólidos pero sin Nuevo Testamento encontrado: verifique primero, quizá exista uno que las fuentes no encontraron.",
|
||||
"openCount": "Datos abiertos",
|
||||
"openNote": "Fuentes: Glottolog (CC BY 4.0), eBible, Wikipedia (CC BY-SA 4.0), Common Voice (CC0), FLORES+ (CC BY-SA 4.0). Un recuento de hechos con nombre, no una puntuación.",
|
||||
"openOf": "{n} de 5 señales",
|
||||
"openTitle": "Datos abiertos para empezar una traducción",
|
||||
"own": "En su propio idioma",
|
||||
"people": "{n} personas",
|
||||
"platformNote": "Proporción de visitas web desde las redes sociales registradas en el país (StatCounter). No se miden apps de mensajería como WhatsApp.",
|
||||
|
|
|
|||
|
|
@ -74,7 +74,9 @@
|
|||
"loading": "Chargement des ressources…",
|
||||
"pray": "Priez pour",
|
||||
"everyResource": "Toutes les ressources en",
|
||||
"alsoSpeak": "Parlent aussi"
|
||||
"alsoSpeak": "Parlent aussi",
|
||||
"share": "Partager",
|
||||
"linkCopied": "Lien copié"
|
||||
},
|
||||
"res": {
|
||||
"scripture": "Écritures",
|
||||
|
|
|
|||
|
|
@ -51,6 +51,12 @@
|
|||
"language": "Langue",
|
||||
"messaging": "Messagerie principale (pays, iOS)",
|
||||
"mobile": "Mobile pour 100",
|
||||
"openBench": "Référence TA (FLORES+)",
|
||||
"openBooks": "Livres bibliques (eBible)",
|
||||
"openData": "Données ouvertes (sur 5)",
|
||||
"openGrammar": "Grammaire (Glottolog)",
|
||||
"openSpeech": "Heures de parole (Common Voice)",
|
||||
"openWiki": "Wikipédia",
|
||||
"platform": "Plateforme principale (pays)",
|
||||
"praying": "Personnes qui prient",
|
||||
"province": "État / province (approx.)",
|
||||
|
|
@ -93,6 +99,12 @@
|
|||
"nfhsNote": "NFHS-5, 2019–21, 15–49 ans : le chiffre de l’État, pas celui du groupe.",
|
||||
"noFeed": "Ce pays n’est pas dans le flux d’Apple : ses messageries sont inconnues ici, pas absentes.",
|
||||
"noneNote": "Rien n’a été trouvé dans leur propre langue dans les sources consultées. Cela ne veut pas dire que rien n’existe.",
|
||||
"notInSource": "absent de cette source",
|
||||
"openCheck": "Données ouvertes solides mais aucun Nouveau Testament trouvé : vérifiez d’abord, il en existe peut-être un que les sources ont manqué.",
|
||||
"openCount": "Données ouvertes",
|
||||
"openNote": "Sources : Glottolog (CC BY 4.0), eBible, Wikipédia (CC BY-SA 4.0), Common Voice (CC0), FLORES+ (CC BY-SA 4.0). Un décompte de faits nommés, pas une note.",
|
||||
"openOf": "{n} signaux sur 5",
|
||||
"openTitle": "Données ouvertes pour commencer une traduction",
|
||||
"own": "Dans leur propre langue",
|
||||
"people": "{n} personnes",
|
||||
"platformNote": "Part des visites web venant des réseaux sociaux suivis dans le pays (StatCounter). Les messageries comme WhatsApp ne sont pas mesurées.",
|
||||
|
|
|
|||
|
|
@ -74,7 +74,9 @@
|
|||
"loading": "संसाधन लोड हो रहे हैं…",
|
||||
"pray": "के लिए प्रार्थना करें",
|
||||
"everyResource": "में सभी संसाधन",
|
||||
"alsoSpeak": "यह भी बोलते हैं"
|
||||
"alsoSpeak": "यह भी बोलते हैं",
|
||||
"share": "साझा करें",
|
||||
"linkCopied": "लिंक कॉपी हो गया"
|
||||
},
|
||||
"res": {
|
||||
"scripture": "पवित्र शास्त्र",
|
||||
|
|
|
|||
|
|
@ -51,6 +51,12 @@
|
|||
"language": "भाषा",
|
||||
"messaging": "प्रमुख मैसेजिंग ऐप (देश, iOS)",
|
||||
"mobile": "प्रति 100 मोबाइल",
|
||||
"openBench": "MT बेंचमार्क (FLORES+)",
|
||||
"openBooks": "पवित्र शास्त्र की पुस्तकें (eBible)",
|
||||
"openData": "खुला डेटा (5 में से)",
|
||||
"openGrammar": "व्याकरण (Glottolog)",
|
||||
"openSpeech": "वाणी के घंटे (Common Voice)",
|
||||
"openWiki": "विकिपीडिया",
|
||||
"platform": "प्रमुख प्लेटफ़ॉर्म (देश)",
|
||||
"praying": "प्रार्थना करने वाले",
|
||||
"province": "राज्य / प्रांत (अनुमानित)",
|
||||
|
|
@ -93,6 +99,12 @@
|
|||
"nfhsNote": "NFHS-5, 2019–21, 15–49 वर्ष: यह राज्य का आंकड़ा है, समूह का नहीं।",
|
||||
"noFeed": "यह देश Apple की फ़ीड में नहीं है: यहाँ इसके मैसेजिंग ऐप अज्ञात हैं, अनुपस्थित नहीं।",
|
||||
"noneNote": "जाँचे गए स्रोतों में उनकी अपनी भाषा में कुछ नहीं मिला। इसका मतलब यह नहीं कि कुछ भी मौजूद नहीं है।",
|
||||
"notInSource": "इस स्रोत में नहीं",
|
||||
"openCheck": "खुला डेटा भरपूर है पर नया नियम नहीं मिला: पहले जाँचें, हो सकता है कोई हो जो स्रोतों से छूट गया।",
|
||||
"openCount": "खुला डेटा",
|
||||
"openNote": "स्रोत: Glottolog (CC BY 4.0), eBible, विकिपीडिया (CC BY-SA 4.0), Common Voice (CC0), FLORES+ (CC BY-SA 4.0)। नामित तथ्यों की गिनती, कोई अंक नहीं।",
|
||||
"openOf": "5 में से {n} संकेत",
|
||||
"openTitle": "अनुवाद शुरू करने के लिए खुला डेटा",
|
||||
"own": "उनकी अपनी भाषा में",
|
||||
"people": "{n} लोग",
|
||||
"platformNote": "देश में ट्रैक किए गए सोशल प्लेटफ़ॉर्म से आने वाले वेब ट्रैफ़िक का हिस्सा (StatCounter)। WhatsApp जैसे मैसेजिंग ऐप मापे नहीं जाते।",
|
||||
|
|
|
|||
|
|
@ -74,7 +74,9 @@
|
|||
"loading": "Caricamento risorse…",
|
||||
"pray": "Prega per",
|
||||
"everyResource": "Tutte le risorse in",
|
||||
"alsoSpeak": "Parlano anche"
|
||||
"alsoSpeak": "Parlano anche",
|
||||
"share": "Condividi",
|
||||
"linkCopied": "Link copiato"
|
||||
},
|
||||
"res": {
|
||||
"scripture": "Scritture",
|
||||
|
|
|
|||
|
|
@ -51,6 +51,12 @@
|
|||
"language": "Lingua",
|
||||
"messaging": "App di messaggistica principale (paese, iOS)",
|
||||
"mobile": "Cellulari per 100",
|
||||
"openBench": "Benchmark TA (FLORES+)",
|
||||
"openBooks": "Libri biblici (eBible)",
|
||||
"openData": "Dati aperti (su 5)",
|
||||
"openGrammar": "Grammatica (Glottolog)",
|
||||
"openSpeech": "Ore di parlato (Common Voice)",
|
||||
"openWiki": "Wikipedia",
|
||||
"platform": "Piattaforma principale (paese)",
|
||||
"praying": "Persone che pregano",
|
||||
"province": "Stato / provincia (approssimativo)",
|
||||
|
|
@ -93,6 +99,12 @@
|
|||
"nfhsNote": "NFHS-5, 2019–21, 15–49 anni: il dato dello stato, non del gruppo.",
|
||||
"noFeed": "Questo paese non è nel feed di Apple: le sue app di messaggistica qui sono sconosciute, non assenti.",
|
||||
"noneNote": "Nelle fonti consultate non è stato trovato niente nella loro lingua. Non significa che non esista nulla.",
|
||||
"notInSource": "non in questa fonte",
|
||||
"openCheck": "Dati aperti solidi ma nessun Nuovo Testamento trovato: verificate prima, potrebbe esisterne uno che le fonti non hanno trovato.",
|
||||
"openCount": "Dati aperti",
|
||||
"openNote": "Fonti: Glottolog (CC BY 4.0), eBible, Wikipedia (CC BY-SA 4.0), Common Voice (CC0), FLORES+ (CC BY-SA 4.0). Un conteggio di fatti nominati, non un punteggio.",
|
||||
"openOf": "{n} segnali su 5",
|
||||
"openTitle": "Dati aperti da cui iniziare una traduzione",
|
||||
"own": "Nella propria lingua",
|
||||
"people": "{n} persone",
|
||||
"platformNote": "Quota di visite web provenienti dalle piattaforme social monitorate nel paese (StatCounter). Le app di messaggistica come WhatsApp non sono misurate.",
|
||||
|
|
|
|||
|
|
@ -74,7 +74,9 @@
|
|||
"loading": "Carregando recursos…",
|
||||
"pray": "Ore por",
|
||||
"everyResource": "Todos os recursos em",
|
||||
"alsoSpeak": "Também falam"
|
||||
"alsoSpeak": "Também falam",
|
||||
"share": "Partilhar",
|
||||
"linkCopied": "Link copiado"
|
||||
},
|
||||
"res": {
|
||||
"scripture": "Escrituras",
|
||||
|
|
|
|||
|
|
@ -51,6 +51,12 @@
|
|||
"language": "Língua",
|
||||
"messaging": "App de mensagens principal (país, iOS)",
|
||||
"mobile": "Celulares por 100",
|
||||
"openBench": "Referência de TA (FLORES+)",
|
||||
"openBooks": "Livros bíblicos (eBible)",
|
||||
"openData": "Dados abertos (de 5)",
|
||||
"openGrammar": "Gramática (Glottolog)",
|
||||
"openSpeech": "Horas de fala (Common Voice)",
|
||||
"openWiki": "Wikipédia",
|
||||
"platform": "Principal plataforma (país)",
|
||||
"praying": "Pessoas orando",
|
||||
"province": "Estado / província (aprox.)",
|
||||
|
|
@ -93,6 +99,12 @@
|
|||
"nfhsNote": "NFHS-5, 2019–21, 15–49 anos: o número do estado, não do grupo.",
|
||||
"noFeed": "Este país não está no feed da Apple: seus apps de mensagens são desconhecidos aqui, não ausentes.",
|
||||
"noneNote": "Nada foi encontrado na própria língua nas fontes verificadas. Isso não afirma que nada exista.",
|
||||
"notInSource": "não está nesta fonte",
|
||||
"openCheck": "Dados abertos fortes mas nenhum Novo Testamento encontrado: verifique antes, pode existir um que as fontes não encontraram.",
|
||||
"openCount": "Dados abertos",
|
||||
"openNote": "Fontes: Glottolog (CC BY 4.0), eBible, Wikipédia (CC BY-SA 4.0), Common Voice (CC0), FLORES+ (CC BY-SA 4.0). Uma contagem de fatos nomeados, não uma nota.",
|
||||
"openOf": "{n} de 5 sinais",
|
||||
"openTitle": "Dados abertos para começar uma tradução",
|
||||
"own": "Na própria língua",
|
||||
"people": "{n} pessoas",
|
||||
"platformNote": "Parcela de acessos web vindos das redes sociais monitoradas no país (StatCounter). Aplicativos de mensagem como o WhatsApp não são medidos.",
|
||||
|
|
|
|||
|
|
@ -74,7 +74,9 @@
|
|||
"loading": "Se încarcă resursele…",
|
||||
"pray": "Roagă-te pentru",
|
||||
"everyResource": "Toate resursele în",
|
||||
"alsoSpeak": "Vorbesc și"
|
||||
"alsoSpeak": "Vorbesc și",
|
||||
"share": "Distribuie",
|
||||
"linkCopied": "Link copiat"
|
||||
},
|
||||
"res": {
|
||||
"scripture": "Scripturi",
|
||||
|
|
|
|||
|
|
@ -51,6 +51,12 @@
|
|||
"language": "Limbă",
|
||||
"messaging": "Aplicația de mesagerie principală (țară, iOS)",
|
||||
"mobile": "Mobile la 100",
|
||||
"openBench": "Reper TA (FLORES+)",
|
||||
"openBooks": "Cărți biblice (eBible)",
|
||||
"openData": "Date deschise (din 5)",
|
||||
"openGrammar": "Gramatică (Glottolog)",
|
||||
"openSpeech": "Ore de vorbire (Common Voice)",
|
||||
"openWiki": "Wikipedia",
|
||||
"platform": "Platforma principală (țară)",
|
||||
"praying": "Oameni care se roagă",
|
||||
"province": "Stat / provincie (aprox.)",
|
||||
|
|
@ -93,6 +99,12 @@
|
|||
"nfhsNote": "NFHS-5, 2019–21, 15–49 ani: cifra statului, nu a grupului.",
|
||||
"noFeed": "Această țară nu este în fluxul Apple: aplicațiile sale de mesagerie sunt necunoscute aici, nu absente.",
|
||||
"noneNote": "Nu s-a găsit nimic în propria lor limbă în sursele verificate. Asta nu înseamnă că nu există nimic.",
|
||||
"notInSource": "nu apare în această sursă",
|
||||
"openCheck": "Date deschise solide, dar niciun Nou Testament găsit: verificați întâi, poate există unul pe care sursele l-au ratat.",
|
||||
"openCount": "Date deschise",
|
||||
"openNote": "Surse: Glottolog (CC BY 4.0), eBible, Wikipedia (CC BY-SA 4.0), Common Voice (CC0), FLORES+ (CC BY-SA 4.0). O numărătoare de fapte numite, nu un scor.",
|
||||
"openOf": "{n} din 5 semnale",
|
||||
"openTitle": "Date deschise pentru a începe o traducere",
|
||||
"own": "În propria lor limbă",
|
||||
"people": "{n} oameni",
|
||||
"platformNote": "Ponderea vizitelor web venite de la platformele sociale urmărite în țară (StatCounter). Aplicațiile de mesagerie precum WhatsApp nu sunt măsurate.",
|
||||
|
|
|
|||
|
|
@ -74,7 +74,9 @@
|
|||
"loading": "Загрузка ресурсов…",
|
||||
"pray": "Молитесь о",
|
||||
"everyResource": "Все ресурсы на",
|
||||
"alsoSpeak": "Также говорят на"
|
||||
"alsoSpeak": "Также говорят на",
|
||||
"share": "Поделиться",
|
||||
"linkCopied": "Ссылка скопирована"
|
||||
},
|
||||
"res": {
|
||||
"scripture": "Писание",
|
||||
|
|
|
|||
|
|
@ -51,6 +51,12 @@
|
|||
"language": "Язык",
|
||||
"messaging": "Главный мессенджер (страна, iOS)",
|
||||
"mobile": "Мобильных на 100",
|
||||
"openBench": "Бенчмарк МП (FLORES+)",
|
||||
"openBooks": "Книги Писания (eBible)",
|
||||
"openData": "Открытые данные (из 5)",
|
||||
"openGrammar": "Грамматика (Glottolog)",
|
||||
"openSpeech": "Часы речи (Common Voice)",
|
||||
"openWiki": "Википедия",
|
||||
"platform": "Главная платформа (страна)",
|
||||
"praying": "Молящихся",
|
||||
"province": "Штат / провинция (прибл.)",
|
||||
|
|
@ -93,6 +99,12 @@
|
|||
"nfhsNote": "NFHS-5, 2019–21, 15–49 лет: показатель штата, а не группы.",
|
||||
"noFeed": "Этой страны нет в ленте Apple: её мессенджеры здесь неизвестны, а не отсутствуют.",
|
||||
"noneNote": "В проверенных источниках на их родном языке ничего не найдено. Это не утверждение, что ничего не существует.",
|
||||
"notInSource": "нет в этом источнике",
|
||||
"openCheck": "Много открытых данных, но Новый Завет не найден: сначала проверьте, возможно, он есть, но источники его пропустили.",
|
||||
"openCount": "Открытые данные",
|
||||
"openNote": "Источники: Glottolog (CC BY 4.0), eBible, Википедия (CC BY-SA 4.0), Common Voice (CC0), FLORES+ (CC BY-SA 4.0). Подсчёт названных фактов, а не оценка.",
|
||||
"openOf": "сигналов: {n} из 5",
|
||||
"openTitle": "Открытые данные для начала перевода",
|
||||
"own": "На их родном языке",
|
||||
"people": "{n} чел.",
|
||||
"platformNote": "Доля веб-переходов из отслеживаемых соцсетей в стране (StatCounter). Мессенджеры вроде WhatsApp не измеряются.",
|
||||
|
|
|
|||
|
|
@ -74,7 +74,9 @@
|
|||
"loading": "正在加载资源…",
|
||||
"pray": "为其代祷:",
|
||||
"everyResource": "所有资源 —",
|
||||
"alsoSpeak": "同样使用"
|
||||
"alsoSpeak": "同样使用",
|
||||
"share": "分享",
|
||||
"linkCopied": "链接已复制"
|
||||
},
|
||||
"res": {
|
||||
"scripture": "圣经",
|
||||
|
|
|
|||
|
|
@ -51,6 +51,12 @@
|
|||
"language": "语言",
|
||||
"messaging": "最主要的通讯应用(国家,iOS)",
|
||||
"mobile": "每百人移动用户",
|
||||
"openBench": "机器翻译基准(FLORES+)",
|
||||
"openBooks": "圣经书卷(eBible)",
|
||||
"openData": "开放数据(共 5 项)",
|
||||
"openGrammar": "语法(Glottolog)",
|
||||
"openSpeech": "语音时长(Common Voice)",
|
||||
"openWiki": "维基百科",
|
||||
"platform": "主要平台(国家)",
|
||||
"praying": "代祷人数",
|
||||
"province": "邦 / 省(大约)",
|
||||
|
|
@ -93,6 +99,12 @@
|
|||
"nfhsNote": "NFHS-5,2019–21,15–49 岁:这是该邦的数字,不是族群的数字。",
|
||||
"noFeed": "该国不在苹果的数据源中:这里不知道它的通讯应用,并不表示没有。",
|
||||
"noneNote": "在已查阅的来源中未找到他们母语的任何资源。这并不表示不存在任何资源。",
|
||||
"notInSource": "不在此来源中",
|
||||
"openCheck": "开放数据充足但未找到新约:请先核实,可能已有新约而所查来源遗漏了。",
|
||||
"openCount": "开放数据",
|
||||
"openNote": "来源:Glottolog(CC BY 4.0)、eBible、维基百科(CC BY-SA 4.0)、Common Voice(CC0)、FLORES+(CC BY-SA 4.0)。这是具名事实的计数,不是评分。",
|
||||
"openOf": "5 项中的 {n} 项",
|
||||
"openTitle": "可作为翻译起点的开放数据",
|
||||
"own": "以他们的母语",
|
||||
"people": "{n} 人",
|
||||
"platformNote": "该国已追踪社交平台带来的网页流量占比(StatCounter)。WhatsApp 等即时通讯应用未被统计。",
|
||||
|
|
|
|||
|
|
@ -0,0 +1,103 @@
|
|||
#!/usr/bin/env node
|
||||
/**
|
||||
* build-translation-readiness.mjs — per roster language, the OPEN data a translation team could start
|
||||
* from, read from the committed snapshot (fetch-translation-readiness.mjs) and eBible's index. No live
|
||||
* fetch, no invented score: five named signals, each with its value and source, and the COUNT of the
|
||||
* five that are present (a count of named facts, not a weighting).
|
||||
*
|
||||
* grammar Glottolog MED: the most extensive description (grammar / sketch / text-or-dictionary);
|
||||
* present when the level is better than "word list or less"
|
||||
* scripture eBible: canonical books found (partial Scripture counts; a full NT is the board's green)
|
||||
* wikipedia a language Wikipedia exists (open written text)
|
||||
* speech Common Voice validated hours > 0 (open speech)
|
||||
* benchmark the language is in FLORES+ (machine-translation evaluation)
|
||||
*
|
||||
* Mapping is explicit (ISO 639-3 <-> Glottocode via the tree snapshot; 639-1 via SIL in the fetcher), and
|
||||
* the report counts, for the languages with no New Testament, how many could not be mapped to Glottolog
|
||||
* (their grammar signal is then UNKNOWN, not "none").
|
||||
* Outputs data/tables/gospel-internet-readiness.json (+ the public copy). `--check` compares.
|
||||
*/
|
||||
import { readFileSync, 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 T = (f) => JSON.parse(readFileSync(resolve(REPO, 'data/tables', f), 'utf8'))
|
||||
const CHECK = process.argv.includes('--check')
|
||||
|
||||
const snap = JSON.parse(readFileSync(resolve(REPO, 'data/translation-readiness/snapshot.json'), 'utf8'))
|
||||
const tree = T('gospel-internet-tree.json')
|
||||
const gi = T('gospel-internet.json')
|
||||
const ebible = T('ebible-index.json').codes || {}
|
||||
const glotto = JSON.parse(readFileSync(resolve(REPO, 'data/glottolog/glottolog-subset.json'), 'utf8'))
|
||||
const inGlottolog = new Set(glotto.languoids.filter((l) => l.iso).map((l) => l.iso))
|
||||
|
||||
const byIso = new Map()
|
||||
for (const r of gi.rows) {
|
||||
const e = byIso.get(r.iso639_3) || { iso: r.iso639_3, language: r.language, groups: 0, people: 0 }
|
||||
e.groups++; e.people += Number(r.population) || 0
|
||||
byIso.set(r.iso639_3, e)
|
||||
}
|
||||
const stOf = new Map(tree.nodes.filter((n) => n.iso && n.st).map((n) => [n.iso, n.st]))
|
||||
|
||||
const rows = []
|
||||
for (const e of byIso.values()) {
|
||||
const m = snap.med[e.iso]
|
||||
const eb = ebible[e.iso]
|
||||
const books = eb ? Number(eb.books) || 0 : 0
|
||||
const row = {
|
||||
iso: e.iso, language: e.language, groups: e.groups, people: e.people,
|
||||
nt: stOf.get(e.iso) === 'g',
|
||||
grammar_level: m ? m.level : null, // 0 long grammar .. 4 word list or less
|
||||
grammar: m ? snap.med_codes[m.level] : (inGlottolog.has(e.iso) ? '' : null), // null = not in Glottolog: unknown
|
||||
scripture_books: books,
|
||||
wikipedia: snap.wikipedia[e.iso] || '',
|
||||
speech_hours: snap.commonVoice[e.iso] || 0,
|
||||
benchmark: (snap.flores[e.iso] || []).join(' '),
|
||||
}
|
||||
row.signals = [row.grammar_level !== null && row.grammar_level < 4, books > 0, !!row.wikipedia, row.speech_hours > 0, !!row.benchmark].filter(Boolean).length
|
||||
rows.push(row)
|
||||
}
|
||||
rows.sort((a, b) => a.iso.localeCompare(b.iso))
|
||||
|
||||
const noNt = rows.filter((r) => !r.nt)
|
||||
const count = (f) => noNt.filter(f).length
|
||||
const coverage = {
|
||||
languages: rows.length, without_new_testament: noNt.length,
|
||||
not_in_glottolog: count((r) => r.grammar === null),
|
||||
signal: { grammar: count((r) => r.grammar_level !== null && r.grammar_level < 4), scripture: count((r) => r.scripture_books > 0),
|
||||
wikipedia: count((r) => !!r.wikipedia), speech: count((r) => r.speech_hours > 0), benchmark: count((r) => !!r.benchmark) },
|
||||
by_signal_count: noNt.reduce((m, r) => { m[r.signals] = (m[r.signals] || 0) + 1; return m }, {}),
|
||||
source_codes_unmapped: snap.unmapped,
|
||||
}
|
||||
const doc = {
|
||||
meta: {
|
||||
title: 'Translation readiness: the open data each language has, for a team starting a translation',
|
||||
generated_by: 'plugin-designs/gospel-internet/scripts/build-translation-readiness.mjs',
|
||||
snapshot: snap.fetched,
|
||||
sources: { ...snap.sources, ebible: { name: 'eBible.org translation catalogue (books per language)', licence: 'per translation, as eBible lists it' } },
|
||||
signals: {
|
||||
grammar: 'Glottolog MED better than "word list or less" (a grammar, sketch, text or dictionary)',
|
||||
scripture: 'eBible: at least one canonical book found (partial Scripture)',
|
||||
wikipedia: 'an open language Wikipedia exists',
|
||||
speech: 'Mozilla Common Voice: validated hours > 0',
|
||||
benchmark: 'the language is in FLORES+ (MT evaluation)',
|
||||
},
|
||||
no_score: 'signals = how many of the five named facts are present. It is a count, not a weighting or a prediction.',
|
||||
unknown: 'grammar is null where the language is not in Glottolog (IMB private codes): unknown, never "none"',
|
||||
coverage,
|
||||
},
|
||||
rows,
|
||||
}
|
||||
const body = JSON.stringify(doc) + '\n'
|
||||
const OUTS = ['data/tables', 'public/dx-maps/assets/tables'].map((d) => resolve(REPO, d, 'gospel-internet-readiness.json'))
|
||||
if (CHECK) {
|
||||
let same = true
|
||||
for (const o of OUTS) { try { if (readFileSync(o, 'utf8') !== body) same = false } catch { same = false } }
|
||||
console.log(same ? 'ok readiness table is current' : 'FAIL readiness table is stale: re-run the builder'); if (!same) process.exitCode = 1
|
||||
} else {
|
||||
for (const o of OUTS) writeFileSync(o, body)
|
||||
console.log('ok wrote gospel-internet-readiness.json:', rows.length, 'languages')
|
||||
}
|
||||
console.log(JSON.stringify(coverage))
|
||||
|
|
@ -48,7 +48,7 @@ const get = (lc, key) => {
|
|||
// SETTLED, not deferred: the correct word in that language IS the English spelling. Each is a decision,
|
||||
// listed by locale and key so a new identical string is still caught.
|
||||
const SAME_ON_PURPOSE = new Set(['fr:res.source', 'fr:res.type', 'ro:tree.dialect', 'fr:facet.religion',
|
||||
'de:facet.region', 'de:facet.religion', 'de:tree.poster', 'it:tree.poster', 'ro:tree.poster'])
|
||||
'de:facet.region', 'de:facet.religion', 'de:tree.poster', 'it:tree.poster', 'ro:tree.poster', 'de:col.openWiki', 'es:col.openWiki', 'it:col.openWiki', 'ro:col.openWiki'])
|
||||
|
||||
let fails = 0
|
||||
if (keys.size < 100) { console.log(`NOT MEASURED: read only ${keys.size} keys (expected 100+); the parser is broken, not the bundle`); process.exitCode = 75 }
|
||||
|
|
|
|||
|
|
@ -141,6 +141,19 @@ for (const n of ix.nodes) if (!n.p) { const x = scZero.get(n.id); gy += x.g + x.
|
|||
ok(gy === 0, `with only zero-access groups in scope, no family counts a green or yellow language (${gy})`)
|
||||
bus.clearFilters()
|
||||
|
||||
// 11. translation readiness: current against its snapshot, every roster language present, the no-NT set is
|
||||
// the tree's, the 31 codes Glottolog lacks read as UNKNOWN (null) not "none", and the signal count is a
|
||||
// recount of the five named facts (no hidden weighting)
|
||||
let rcur = true
|
||||
try { execFileSync('node', [resolve(HERE, 'build-translation-readiness.mjs'), '--check'], { stdio: 'pipe' }) } catch { rcur = false }
|
||||
ok(rcur, 'the readiness table is what its builder makes from the committed snapshot')
|
||||
const rd = JSON.parse(readFileSync(resolve(REPO, 'data/tables/gospel-internet-readiness.json'), 'utf8'))
|
||||
ok(rd.rows.length === langsOnBoard.size, `readiness covers every roster language (${rd.rows.length})`)
|
||||
ok(rd.rows.filter((r) => !r.nt).length === tot.y + tot.r, `its no-New-Testament set is the tree's (${rd.rows.filter((r) => !r.nt).length} == ${tot.y + tot.r})`)
|
||||
ok(rd.meta.coverage.not_in_glottolog === 31 && rd.rows.filter((r) => r.grammar === null).length === 31, 'the 31 codes Glottolog lacks read as unknown (null), never "none"')
|
||||
const recount = (r) => [r.grammar_level !== null && r.grammar_level < 4, r.scripture_books > 0, !!r.wikipedia, r.speech_hours > 0, !!r.benchmark].filter(Boolean).length
|
||||
ok(rd.rows.every((r) => r.signals === recount(r)) && !POISON, 'every signal count is a recount of the five named facts')
|
||||
|
||||
// 8. safety: no engagement / who-works-where field in the shipped data
|
||||
const cols = doc.meta.columns || []
|
||||
const banned = cols.filter((c) => /engage|worker|team|agenc|missionar/i.test(c))
|
||||
|
|
|
|||
|
|
@ -0,0 +1,102 @@
|
|||
#!/usr/bin/env node
|
||||
/**
|
||||
* fetch-translation-readiness.mjs — a DATED SNAPSHOT of the open language data an AI or Bible-translation
|
||||
* team could start from, for the languages our people groups speak. Run by hand; the board and its
|
||||
* builder read ONLY the committed snapshot (no live fetch at runtime). Card BUILD-TRANSLATION-READINESS-VIEW.
|
||||
*
|
||||
* Four open sources, each stored with its URL, licence and fetch date:
|
||||
* Glottolog 5.x "most extensive description" (MED) per languoid CC BY 4.0
|
||||
* Wikimedia the language Wikipedias (sitematrix), open editions CC BY-SA 4.0 (the text)
|
||||
* Common Voice validated speech hours per locale (Mozilla) CC0 1.0
|
||||
* FLORES+ the MT benchmark's languages (OLDI, Hugging Face) CC BY-SA 4.0
|
||||
* plus SIL's ISO 639-3 code table, used ONLY to map 2-letter codes (ISO 639-1) to ISO 639-3.
|
||||
* (Partial Scripture comes from eBible's index, already in data/tables, and is read by the builder.)
|
||||
*
|
||||
* Codes are mapped EXPLICITLY and every code that cannot be mapped is COUNTED and listed, never dropped
|
||||
* silently (dx-shepherd's guard 3).
|
||||
* Writes data/translation-readiness/snapshot.json. Refuses a much smaller snapshot than the last one.
|
||||
*/
|
||||
import { readFileSync, writeFileSync, mkdirSync, existsSync } 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/translation-readiness/snapshot.json')
|
||||
const today = new Date().toISOString().slice(0, 10)
|
||||
|
||||
const SRC = {
|
||||
glottolog: { url: 'https://raw.githubusercontent.com/glottolog/glottolog-cldf/master/cldf/values.csv', licence: 'CC BY 4.0', name: 'Glottolog (CLDF): most extensive description (MED)' },
|
||||
sil: { url: 'https://iso639-3.sil.org/sites/iso639-3/files/downloads/iso-639-3.tab', licence: 'SIL ISO 639-3 code tables (free to use)', name: 'SIL ISO 639-3 code table' },
|
||||
wikipedia: { url: 'https://meta.wikimedia.org/w/api.php?action=sitematrix&format=json&smtype=language&smlangprop=code|site', licence: 'CC BY-SA 4.0 (Wikipedia text)', name: 'Wikimedia sitematrix: language Wikipedias' },
|
||||
commonVoice: { url: 'https://commonvoice.mozilla.org/api/v1/stats/languages', licence: 'CC0 1.0', name: 'Mozilla Common Voice: validated hours per locale' },
|
||||
flores: { url: 'https://huggingface.co/api/datasets/openlanguagedata/flores_plus/tree/main/dev', licence: 'CC BY-SA 4.0', name: 'FLORES+ (OLDI) MT benchmark languages' },
|
||||
}
|
||||
const text = async (u) => { const r = await fetch(u, { headers: { 'User-Agent': 'dx-maps readiness snapshot (open data)' } }); if (!r.ok) throw new Error(`${u} HTTP ${r.status}`); return r.text() }
|
||||
|
||||
// our languoids: every roster ISO code and its Glottolog id (from the committed tree snapshot)
|
||||
const glotto = JSON.parse(readFileSync(resolve(REPO, 'data/glottolog/glottolog-subset.json'), 'utf8'))
|
||||
const ourIds = new Map(glotto.languoids.filter((l) => l.iso).map((l) => [l.id, l.iso]))
|
||||
|
||||
// 1. MED for our languoids only (values.csv is ~20 MB; the snapshot keeps a few hundred rows)
|
||||
const med = {}
|
||||
for (const line of (await text(SRC.glottolog.url)).split('\n')) {
|
||||
if (!line.includes(',med,')) continue
|
||||
const [, lang, param, value, code] = line.split(',')
|
||||
if (param === 'med' && ourIds.has(lang)) med[ourIds.get(lang)] = { level: Number(value), code }
|
||||
}
|
||||
|
||||
// 2. SIL: ISO 639-1 -> ISO 639-3, and the set of valid 639-3 codes
|
||||
const part1 = {}
|
||||
const valid = new Set()
|
||||
for (const row of (await text(SRC.sil.url)).split('\n').slice(1)) {
|
||||
const c = row.split('\t')
|
||||
if (!c[0]) continue
|
||||
valid.add(c[0])
|
||||
if (c[3]) part1[c[3]] = c[0]
|
||||
}
|
||||
const toIso3 = (code) => { const b = String(code || '').toLowerCase().split(/[-_]/)[0]; return valid.has(b) ? b : part1[b] || '' }
|
||||
|
||||
// 3. Wikipedia editions (open ones), mapped to ISO 639-3
|
||||
const sm = JSON.parse(await text(SRC.wikipedia.url)).sitematrix || {}
|
||||
const wikipedia = {}
|
||||
const wikiUnmapped = []
|
||||
for (const [k, v] of Object.entries(sm)) {
|
||||
if (k === 'count' || !v || !v.site) continue
|
||||
const wp = v.site.find((s) => s.code === 'wiki' && !('closed' in s))
|
||||
if (!wp) continue
|
||||
const iso = toIso3(v.code)
|
||||
if (iso) wikipedia[iso] = v.code; else wikiUnmapped.push(v.code)
|
||||
}
|
||||
|
||||
// 4. Common Voice validated hours, mapped to ISO 639-3
|
||||
const commonVoice = {}
|
||||
const cvUnmapped = []
|
||||
for (const l of JSON.parse(await text(SRC.commonVoice.url))) {
|
||||
if (!(l.validatedHours > 0)) continue
|
||||
const iso = toIso3(l.locale)
|
||||
if (iso) commonVoice[iso] = Math.max(commonVoice[iso] || 0, l.validatedHours); else cvUnmapped.push(l.locale)
|
||||
}
|
||||
|
||||
// 5. FLORES+ languages (lang_Script), ISO 639-3 is the first part
|
||||
const flores = {}
|
||||
for (const m of (await text(SRC.flores.url)).matchAll(/dev\/([a-z]{3})_([A-Z][a-z]{3})\.jsonl/g)) (flores[m[1]] ||= []).push(m[2])
|
||||
|
||||
const doc = {
|
||||
fetched: today,
|
||||
sources: Object.fromEntries(Object.entries(SRC).map(([k, v]) => [k, { ...v, fetched: today }])),
|
||||
med_codes: { 0: 'long grammar (300+ pages)', 1: 'grammar', 2: 'grammar sketch', 3: 'text, phonology, dictionary or a New Testament', 4: 'word list or less' },
|
||||
med, wikipedia, commonVoice, flores,
|
||||
unmapped: { wikipedia: wikiUnmapped.sort(), commonVoice: cvUnmapped.sort() },
|
||||
counts: { med: Object.keys(med).length, wikipedia: Object.keys(wikipedia).length, commonVoice: Object.keys(commonVoice).length, flores: Object.keys(flores).length,
|
||||
wikipedia_unmapped: wikiUnmapped.length, commonVoice_unmapped: cvUnmapped.length },
|
||||
}
|
||||
if (existsSync(OUT)) {
|
||||
const prev = JSON.parse(readFileSync(OUT, 'utf8'))
|
||||
for (const k of ['med', 'wikipedia', 'commonVoice', 'flores']) {
|
||||
if (doc.counts[k] < 0.9 * (prev.counts?.[k] || 0)) { console.error(`REFUSING: ${k} dropped from ${prev.counts[k]} to ${doc.counts[k]} (a bad fetch?)`); process.exit(1) }
|
||||
}
|
||||
}
|
||||
mkdirSync(dirname(OUT), { recursive: true })
|
||||
writeFileSync(OUT, JSON.stringify(doc, null, 1) + '\n')
|
||||
console.log('ok', OUT.replace(REPO + '/', ''), JSON.stringify(doc.counts))
|
||||
|
|
@ -34,6 +34,14 @@ export function buildColumns(T) {
|
|||
{ key: 'internet_band', header: 'internet_band', label: T('gospelInternet.col.band', 'Internet band'), w: 115, show: (r) => band(r.internet_band), swatch: true },
|
||||
{ key: 'state_internet_women', header: 'state_internet_women_pct', label: T('gospelInternet.col.stateWomen', 'State online: women'), w: 130, num: true, hidden: true, show: (r) => pct(r.state_internet_women) },
|
||||
{ key: 'state_internet_men', header: 'state_internet_men_pct', label: T('gospelInternet.col.stateMen', 'State online: men'), w: 130, num: true, hidden: true, show: (r) => pct(r.state_internet_men) },
|
||||
// translation readiness: how many of five named OPEN data signals the language has (a count, not a score)
|
||||
{ key: 'open_data', header: 'open_data_signals_of_5', label: T('gospelInternet.col.openData', 'Open data (of 5)'), w: 120, num: true,
|
||||
show: (r) => (r.open_data == null ? '' : r.open_data.toLocaleString()) },
|
||||
{ key: 'open_grammar', header: 'grammar_glottolog_med', label: T('gospelInternet.col.openGrammar', 'Grammar (Glottolog)'), w: 170, hidden: true },
|
||||
{ key: 'open_scripture_books', header: 'scripture_books_ebible', label: T('gospelInternet.col.openBooks', 'Scripture books (eBible)'), w: 130, num: true, hidden: true },
|
||||
{ key: 'open_wikipedia', header: 'wikipedia_edition', label: T('gospelInternet.col.openWiki', 'Wikipedia'), w: 100, hidden: true },
|
||||
{ key: 'open_speech_hours', header: 'speech_hours_common_voice', label: T('gospelInternet.col.openSpeech', 'Speech hours (Common Voice)'), w: 150, num: true, hidden: true },
|
||||
{ key: 'open_benchmark', header: 'mt_benchmark_flores', label: T('gospelInternet.col.openBench', 'MT benchmark (FLORES+)'), w: 150, hidden: true },
|
||||
{ key: 'top_messaging_app', header: 'top_messaging_app_country_ios', label: T('gospelInternet.col.messaging', 'Top messaging app (country, iOS)'), w: 170 },
|
||||
{ key: 'top_platform', header: 'top_social_platform_country', label: T('gospelInternet.col.platform', 'Top platform (country)'), w: 140 },
|
||||
{ key: 'mobile_per_100', header: 'mobile_subscriptions_per_100', label: T('gospelInternet.col.mobile', 'Mobile per 100'), w: 110, num: true, hidden: true },
|
||||
|
|
|
|||
|
|
@ -69,6 +69,24 @@ const sections = computed(() => {
|
|||
plat.push({ label: T('gospelInternet.drawer.messaging', 'Messaging apps (iOS downloads)'), text: T('gospelInternet.charts.notMeasured', 'Not measured'), note: T('gospelInternet.drawer.noFeed', 'This country is not in Apple\'s feed: its messaging apps are unknown here, not absent.') })
|
||||
}
|
||||
if (pc && pc.social.length) plat.push({ label: T('gospelInternet.drawer.social', 'Social platforms (web referrals)'), text: pc.social.map((x) => `${x.platform} ${n(x.pct)}%`).join(' · '), note: T('gospelInternet.drawer.platformNote', 'Share of web referrals among tracked social platforms in the country (StatCounter). Messaging apps such as WhatsApp are not measured.') })
|
||||
// Open data to start a translation from: five named, cited signals (no score). The last line is the
|
||||
// honesty the data needs: strong open data and no New Testament FOUND often means one exists that the
|
||||
// sources checked missed.
|
||||
const rd = board.readiness.value.byIso.get(g.iso639_3)
|
||||
const openLines = []
|
||||
const openLinks = []
|
||||
if (rd) {
|
||||
openLines.push({ label: T('gospelInternet.drawer.openCount', 'Open data'), text: T('gospelInternet.drawer.openOf', '{n} of 5 signals', { n: n(rd.signals) }) })
|
||||
openLines.push({ label: T('gospelInternet.col.openGrammar', 'Grammar (Glottolog)'), text: rd.grammar === null ? T('gospelInternet.drawer.notInSource', 'not in this source') : (rd.grammar || '—') })
|
||||
openLines.push({ label: T('gospelInternet.col.openBooks', 'Scripture books (eBible)'), text: n(rd.scripture_books) || '0' })
|
||||
openLines.push({ label: T('gospelInternet.col.openSpeech', 'Speech hours (Common Voice)'), text: rd.speech_hours ? n(rd.speech_hours) : '0' })
|
||||
openLines.push({ label: T('gospelInternet.col.openBench', 'MT benchmark (FLORES+)'), text: rd.benchmark || '—' })
|
||||
if (rd.wikipedia) openLinks.push({ label: T('gospelInternet.col.openWiki', 'Wikipedia') + ' (' + rd.wikipedia + ')', href: safeHref(`https://${rd.wikipedia}.wikipedia.org/`) })
|
||||
if (rd.grammar !== null && g.iso639_3) openLinks.push({ label: 'Glottolog', href: safeHref(`https://glottolog.org/glottolog?iso=${g.iso639_3}`) })
|
||||
}
|
||||
const openNote = rd && !rd.nt && rd.signals >= 3
|
||||
? T('gospelInternet.drawer.openCheck', 'Strong open data but no New Testament found: check first, one may exist that the sources checked missed.')
|
||||
: T('gospelInternet.drawer.openNote', 'Sources: Glottolog (CC BY 4.0), eBible, Wikipedia (CC BY-SA 4.0), Common Voice (CC0), FLORES+ (CC BY-SA 4.0). A count of named facts, not a score.')
|
||||
return [
|
||||
{ id: 'own', title: T('gospelInternet.drawer.own', 'In their own language'),
|
||||
lead: { dot: g.access_detail, text: label(T, 'detail', g.access_detail) },
|
||||
|
|
@ -79,6 +97,7 @@ const sections = computed(() => {
|
|||
note: wayLines.length ? T('gospelInternet.drawer.wayNote', 'A neighbouring language, not a recommendation: whether a group speaks it is a question for someone on the ground.') : '' },
|
||||
{ id: 'conn', title: T('gospelInternet.drawer.conn', 'Connectivity'), lines: conn, links: [] },
|
||||
{ id: 'platforms', title: T('gospelInternet.drawer.platforms', 'Platforms in the country'), lines: plat, links: [] },
|
||||
{ id: 'open', title: T('gospelInternet.drawer.openTitle', 'Open data to start a translation from'), lines: openLines, links: openLinks.filter((l) => l.href), note: rd ? openNote : '' },
|
||||
].filter((s) => s.lines.length || s.links.length || s.lead)
|
||||
})
|
||||
|
||||
|
|
|
|||
|
|
@ -359,6 +359,7 @@ useShadowStyles(
|
|||
<span>{{ T('gospelInternet.tree.languagesHere', 'languages here') }}</span>
|
||||
</div>
|
||||
<div v-else-if="card.n.st" class="gtr-c"><span class="gtr-dot" :style="{ background: TREE_COLOR[card.n.st] }"></span>{{ T('gospelInternet.tree.st.' + card.n.st, ST_EN[card.n.st]) }}</div>
|
||||
<div v-if="card.n.iso && board.readiness.value.byIso.get(card.n.iso)" class="gtr-via" data-tree-open>{{ T('gospelInternet.drawer.openCount', 'Open data') }}: {{ T('gospelInternet.drawer.openOf', '{n} of 5 signals', { n: fmt(board.readiness.value.byIso.get(card.n.iso).signals) }) }}</div>
|
||||
<div v-if="card.n.inh" class="gtr-via">{{ T('gospelInternet.tree.inherited', 'Colour of its language: no source catalogues resources by dialect.') }}</div>
|
||||
<div v-if="card.n.via" class="gtr-via">{{ T('gospelInternet.tree.via', 'Also on this path:') }} {{ card.n.via.join(' › ') }}</div>
|
||||
<button v-if="card.selected" type="button" @click="board.setTreeNode('')">{{ T('controls.clear', 'Clear') }}</button>
|
||||
|
|
|
|||
|
|
@ -269,7 +269,7 @@ export function accessByBand(rows, measure = 'groups') {
|
|||
export function sortRows(rows, { key, dir = 1 } = {}) {
|
||||
if (!key) return rows
|
||||
const num = (v) => (v === null || v === '' || v === undefined ? null : Number(v))
|
||||
const isNum = ['population', 'internet_pct', 'mobile_per_100', 'people_praying', 'state_internet_women', 'state_internet_men'].includes(key)
|
||||
const isNum = ['population', 'internet_pct', 'mobile_per_100', 'people_praying', 'state_internet_women', 'state_internet_men', 'open_data'].includes(key)
|
||||
return [...rows].sort((a, b) => {
|
||||
const x = a[key], y = b[key]
|
||||
if (isNum) {
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@ export function useBoard() {
|
|||
const bySlug = shallowRef(new Map())
|
||||
const meta = shallowRef({})
|
||||
const countries = shallowRef({}) // iso3 -> { messaging, top_messaging, in_app_feed, social, social_month }
|
||||
const readiness = shallowRef({ meta: {}, byIso: new Map() }) // translation readiness, per language
|
||||
const loading = ref(true)
|
||||
const error = ref('')
|
||||
const listId = computed(() => resolvePeopleGroupList(profileConfig.value))
|
||||
|
|
@ -56,13 +57,30 @@ export function useBoard() {
|
|||
loading.value = true
|
||||
error.value = ''
|
||||
try {
|
||||
const url = `${resolveAssetsBase(cfg())}/tables/gospel-internet.json`
|
||||
const res = await fetch(url)
|
||||
const base = resolveAssetsBase(cfg())
|
||||
const [res, rres] = await Promise.all([fetch(`${base}/tables/gospel-internet.json`), fetch(`${base}/tables/gospel-internet-readiness.json`).catch(() => null)])
|
||||
if (!res.ok) throw new Error(`gospel-internet.json HTTP ${res.status}`)
|
||||
const doc = await res.json()
|
||||
// translation readiness is an ADDITION: if it fails to load, the board still works (no column values)
|
||||
if (rres && rres.ok) {
|
||||
const rd = await rres.json()
|
||||
readiness.value = markRaw({ meta: rd.meta || {}, byIso: new Map((rd.rows || []).map((r) => [r.iso, r])) })
|
||||
}
|
||||
// The universal `list` prop: the rows of the page's people-group list, and none if it cannot be
|
||||
// loaded (applyPeopleGroupList fails CLOSED — never DOXA's whole list under another list's name).
|
||||
const rows = await applyPeopleGroupList(M.normalizeRows(doc), profileConfig.value)
|
||||
for (const r of rows) {
|
||||
const x = readiness.value.byIso.get(r.iso639_3)
|
||||
// The column RANKS languages WITHOUT a New Testament (the translation question): a language that has
|
||||
// one scored 5 (its Bible counted as Scripture) and sorted to the top, the opposite of what a
|
||||
// translation team needs (rega, pre-landing T1). Blank sorts last; the drawer still shows the signals.
|
||||
r.open_data = x && !x.nt ? x.signals : null
|
||||
r.open_grammar = x && x.grammar ? x.grammar : ''
|
||||
r.open_scripture_books = x ? x.scripture_books : null
|
||||
r.open_wikipedia = x ? x.wikipedia : ''
|
||||
r.open_speech_hours = x ? x.speech_hours : null
|
||||
r.open_benchmark = x ? x.benchmark : ''
|
||||
}
|
||||
meta.value = markRaw(doc.meta || {})
|
||||
countries.value = markRaw(doc.countries || {})
|
||||
all.value = markRaw(rows)
|
||||
|
|
@ -188,7 +206,7 @@ export function useBoard() {
|
|||
}
|
||||
|
||||
const board = {
|
||||
bus, all, bySlug, filtered, sorted, meta, countries, loading, error, listId, listIsDefault,
|
||||
bus, all, bySlug, filtered, sorted, meta, countries, readiness, loading, error, listId, listIsDefault,
|
||||
view, sort, openSlug, openRow, profileConfig,
|
||||
centre, tree, resources, treeNode, setCentre, setTreeNode, loadTree,
|
||||
load, setView, openGroup, closeGroup, readUrl, groupLink,
|
||||
|
|
|
|||
|
|
@ -547,7 +547,10 @@ const rowCount = computed(() => filtered.value.length)
|
|||
// columns are untouched.
|
||||
const { labelFor: csvLabelFor } = useTreeLegendLabels(cfg, inject('dataStore', null), inject('searchSourceId', null))
|
||||
const csv = dash && bus
|
||||
? useCsvExport({ rowStore: dash.rowStore, rows: dash.rows, selectionSet: bus.selectionSet, filterSet: bus.filterSet, FACET_ACC: FACETS, dataOpts: cfg.data, labelFor: csvLabelFor })
|
||||
? useCsvExport({ rowStore: dash.rowStore, rows: dash.rows, selectionSet: bus.selectionSet, filterSet: bus.filterSet, FACET_ACC: FACETS, dataOpts: cfg.data, labelFor: csvLabelFor,
|
||||
// The table already narrows the screen with this exact matcher (see visibleRows); handing it to the
|
||||
// exporter is what makes the download agree with what the reader is looking at.
|
||||
searchFilter: (list) => filterRowsBySearch(list, matchSearch) })
|
||||
: null
|
||||
const exportToast = ref('')
|
||||
const exporting = ref(false)
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@ import { provide, inject, ref, computed, watch, onMounted, onBeforeUnmount } fro
|
|||
import { createSelectionBus } from '@map/composables/useSelectionBus.js'
|
||||
import { useDashboardData } from '@map/composables/useDashboardData.js'
|
||||
import { useCsvExport } from '@map/composables/useCsvExport.js'
|
||||
import { useShareableView } from '@map/composables/useShareableView.js'
|
||||
import { buildSearchAccessors, makeSearchMatcher, filterRowsBySearch } from '@map/composables/useDashboardSearch.js'
|
||||
import { formatCount } from '@map/utils/formatCount.js'
|
||||
import { useTreeLegendLabels } from './useTreeLegendLabels.js'
|
||||
|
|
@ -137,78 +138,10 @@ function useResponsiveShell(bus) {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Shareable view-state hash URL: serialize filterSet to location.hash; restore on mount.
|
||||
*
|
||||
* ★ READABLE, CODE-CANONICAL FORMAT (card BUG-SHARE-URL-LEAKS-RAW-CODES). The old hash was
|
||||
* URL-encoded JSON -- #f=%7B%22affinity_bloc%22%3A%22A008%22%7D -- unreadable twice over: JSON
|
||||
* punctuation percent-escaped, and the value a bare API code. A URL is the one part of the
|
||||
* product a user COPIES, PASTES and READS, and for sensitive population data a link you cannot
|
||||
* sanity-check before clicking is a real cost. The format is now
|
||||
*
|
||||
* #f=affinity_bloc:A008*malay-peoples;religion_family:Hinduism
|
||||
*
|
||||
* -- the Stack Overflow /questions/123/slug pattern: the CODE is canonical and the *slug is
|
||||
* DISPLAY-ONLY, appended from labelFor() at share time and STRIPPED on parse. Restoring never
|
||||
* reads the slug, so links stay locale-independent and survive label renames (the card's
|
||||
* explicit constraint: keep the code canonical, do not swap in localized labels).
|
||||
*
|
||||
* `*` is safe as the slug separator because escapeValue() percent-encodes any literal `*` in
|
||||
* the VALUE first -- the separator cannot collide with content. `;` and `:` are legal fragment
|
||||
* chars, so the whole thing stays legible in the address bar. Legacy JSON hashes (old shared
|
||||
* links) are detected by their leading `{` / %7B and still restore.
|
||||
*/
|
||||
const slugify = (s) => String(s ?? '').toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/^-+|-+$/g, '').slice(0, 40)
|
||||
// Minimal escaping, maximal legibility: reserve our three delimiters + %, keep spaces as `+`
|
||||
// (the x-www-form-urlencoded convention), leave everything else -- including unicode -- alone.
|
||||
// `,` joins the values of ONE key (D1: OR-within-key). It is reserved here for the same reason
|
||||
// `;` `:` and `*` already are — a delimiter that can also occur inside a value is not a
|
||||
// delimiter — so a literal comma in a facet value is percent-encoded before the join.
|
||||
const escapeValue = (s) => String(s).replace(/[%;:*+,]/g, (c) => '%' + c.charCodeAt(0).toString(16).toUpperCase()).replace(/ /g, '+')
|
||||
const unescapeValue = (s) => { try { return decodeURIComponent(String(s).replace(/\+/g, '%20')) } catch (_) { return String(s).replace(/\+/g, ' ') } }
|
||||
|
||||
function useHashSync(bus, labelFor) {
|
||||
function syncHash() {
|
||||
try {
|
||||
const pairs = Object.entries(bus.filterSet).map(([k, v]) => {
|
||||
// A MULTI-VALUE KEY KEEPS THE CODE CANONICAL AND DROPS THE SLUG. The `*slug` is
|
||||
// display-only and singular by construction — one human name for one code — so there is no
|
||||
// honest slug for "these twenty-two codes". Writing one would put a label in a URL that
|
||||
// does not describe what the URL selects, and the slug is already stripped on parse.
|
||||
if (Array.isArray(v)) return k + ':' + v.map(escapeValue).join(',')
|
||||
const label = typeof labelFor === 'function' ? labelFor(k, v) : null
|
||||
const slug = label && String(label) !== String(v) ? slugify(label) : ''
|
||||
return k + ':' + escapeValue(v) + (slug ? '*' + slug : '')
|
||||
})
|
||||
if (typeof location !== 'undefined') history.replaceState(null, '', '#f=' + pairs.join(';'))
|
||||
} catch (_) { /* sandboxed */ }
|
||||
}
|
||||
watch(() => ({ ...bus.filterSet }), syncHash, { deep: true })
|
||||
onMounted(() => {
|
||||
try {
|
||||
const m = typeof location !== 'undefined' && /[#&]f=([^&]+)/.exec(location.hash)
|
||||
if (!m) return
|
||||
const raw = m[1]
|
||||
if (raw.startsWith('{') || raw.startsWith('%7B') || raw.startsWith('%7b')) {
|
||||
// legacy JSON hash from an old shared link
|
||||
const obj = JSON.parse(decodeURIComponent(raw))
|
||||
Object.entries(obj).forEach(([k, v]) => bus.setFilter(k, v))
|
||||
return
|
||||
}
|
||||
for (const pair of raw.split(';')) {
|
||||
const i = pair.indexOf(':')
|
||||
if (i < 1) continue
|
||||
const key = pair.slice(0, i)
|
||||
const raw = pair.slice(i + 1).split('*')[0]
|
||||
// Split BEFORE unescaping: a literal comma inside a value is percent-encoded by
|
||||
// escapeValue, so every `,` still present here is a separator. Unescaping first would
|
||||
// resurrect the content commas and split the value in half.
|
||||
const parts = raw.split(',').map(unescapeValue).filter(Boolean)
|
||||
if (key && parts.length) bus.setFilter(key, parts.length > 1 ? parts : parts[0])
|
||||
}
|
||||
} catch (_) { /* ignore bad hash */ }
|
||||
})
|
||||
}
|
||||
// The shareable view-state hash moved to library/composables/useShareableView.js (persona card
|
||||
// BUILD-SHAREABLE-FILTERED-TABLES). It was private to this file, so exactly one dashboard in the fleet
|
||||
// could produce a share link; nothing in it was research-specific except its address. This dashboard
|
||||
// supplies the one thing that is: labelFor, for the display-only *slug.
|
||||
|
||||
export function useDashboardShell(config) {
|
||||
// One brushing-and-linking bus, provided to every panel (publisher + subscriber).
|
||||
|
|
@ -307,7 +240,7 @@ export function useDashboardShell(config) {
|
|||
|
||||
// shareable view-state hash URL -- below labelFor on purpose: the hash's display-only slugs
|
||||
// resolve through the SAME code->name resolver the chips and the CSV provenance line use.
|
||||
useHashSync(bus, labelFor)
|
||||
useShareableView(bus, { labelFor })
|
||||
const exporter = useCsvExport({ rowStore: data.rowStore, rows: data.rows, selectionSet: bus.selectionSet, filterSet: bus.filterSet, FACET_ACC, dataOpts: config.data, labelFor, rowMatches: bus.rowMatchesFilters })
|
||||
|
||||
// ★ THE RESEARCH LEGEND, HANDED TO THE PANELS AS DATA (kit landing 4b).
|
||||
|
|
|
|||
|
|
@ -103,9 +103,13 @@ const { createSelectionBus } = await import(BUS)
|
|||
for (const [i, line] of readFileSync(p, 'utf8').split('\n').entries()) {
|
||||
if (/^\s*(\/\/|\*)/.test(line)) continue // a comment quoting the old rule is fine
|
||||
if (!/===\s*(bus\.)?filterSet\[/.test(line)) continue
|
||||
// THE ONE ALLOWED SITE, named rather than pattern-matched: the exporter's parameter default,
|
||||
// which keeps a pre-D1 caller working instead of throwing.
|
||||
if (rel.endsWith('useCsvExport.js') && /rowMatches\s*=/.test(line)) continue
|
||||
// ★ THE EXEMPTION THAT USED TO SIT HERE IS GONE, AND IT WAS WRONG. It allowed
|
||||
// useCsvExport's default rowMatches to keep `=== filterSet[k]`, reasoning that the default only
|
||||
// "keeps a pre-D1 caller working". MEASURED: there is no such caller. DashboardDataTable and
|
||||
// DashboardDetailDrawer both use that default, so it was the LIVE path for two of three callers,
|
||||
// and a multi-value filter made the export match nothing at all. An exemption is a claim about
|
||||
// who is affected; this one was never checked, and the gate stayed green over a real defect on
|
||||
// the file it was pointed at. The default is array-aware now, so nothing needs excusing.
|
||||
fails.push(`B ${rel}:${i + 1} still compares with === against filterSet — with an array that matches NOTHING, and this panel would disagree with the others about what is on screen.\n ${line.trim().slice(0, 140)}`)
|
||||
}
|
||||
}
|
||||
|
|
@ -114,10 +118,10 @@ const { createSelectionBus } = await import(BUS)
|
|||
|
||||
// ── C. the hash round-trips a list, commas and all ───────────────────────────────────────────
|
||||
{
|
||||
const src = readFileSync(join(ROOT, 'plugin-designs/research-dashboard/src/composables/useDashboardShell.js'), 'utf8')
|
||||
const src = readFileSync(join(ROOT, 'library/composables/useShareableView.js'), 'utf8')
|
||||
const esc = /const escapeValue = (\(s\) =>[^\n]*)/.exec(src)
|
||||
const unesc = /const unescapeValue = (\(s\) =>[^\n]*)/.exec(src)
|
||||
if (!esc || !unesc) fails.push('C could not lift escapeValue/unescapeValue from useDashboardShell.js — the hash format moved and this gate is blind to it.')
|
||||
if (!esc || !unesc) fails.push('C could not lift escapeValue/unescapeValue from useShareableView.js — the hash format moved and this gate is blind to it.')
|
||||
else {
|
||||
const escapeValue = new Function('return ' + esc[1])()
|
||||
const unescapeValue = new Function('return ' + unesc[1])()
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -36,7 +36,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-zrzOkT5xghLfaytb9COJwrUmkUvDkImG0qcjQAHbpyUpoBlX5CrOALAdAm7SwJVX" crossorigin="anonymous"></script>
|
||||
<script src="../all-people-groups.js" integrity="sha384-qCQm12NgACLW6tOMUF56Qz3IOJwRVG92GUV4E5jW/LdBOahpWoYL1HNQDGrC/p1c" 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
|
|
@ -32,7 +32,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-FhmynKDd3TqMilfR76AGxwHzv873Ze2a3PfZneTV+PkuoaieQQ8MjU1iP5N7iGGD" crossorigin="anonymous"></script>
|
||||
<script src="../cities-internet.js" integrity="sha384-TwOD7fmnOQ6csk7uTCIgF36WWxkuh7aEFWakDUCSJ/O+z4ASoukbnNER7FmZxuN2" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -36,7 +36,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-FhmynKDd3TqMilfR76AGxwHzv873Ze2a3PfZneTV+PkuoaieQQ8MjU1iP5N7iGGD" crossorigin="anonymous"></script>
|
||||
<script src="../cities-internet.js" integrity="sha384-TwOD7fmnOQ6csk7uTCIgF36WWxkuh7aEFWakDUCSJ/O+z4ASoukbnNER7FmZxuN2" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -32,7 +32,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-FhmynKDd3TqMilfR76AGxwHzv873Ze2a3PfZneTV+PkuoaieQQ8MjU1iP5N7iGGD" crossorigin="anonymous"></script>
|
||||
<script src="../cities-internet.js" integrity="sha384-TwOD7fmnOQ6csk7uTCIgF36WWxkuh7aEFWakDUCSJ/O+z4ASoukbnNER7FmZxuN2" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -36,7 +36,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-HEvZ5xx8UILDjE8vUudFkylu3k8J01QZRx+ksMoZNHm6qejhiu4Inma/6qS7Y+lu" crossorigin="anonymous"></script>
|
||||
<script src="../country-posters.js" integrity="sha384-uPBJD/o6YHeWBccAOE1YKq93bPkZJ9nUsMXeXFtNjvLfV8pv6SsVcil/NHclJQZy" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -32,7 +32,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-HEvZ5xx8UILDjE8vUudFkylu3k8J01QZRx+ksMoZNHm6qejhiu4Inma/6qS7Y+lu" crossorigin="anonymous"></script>
|
||||
<script src="../country-posters.js" integrity="sha384-uPBJD/o6YHeWBccAOE1YKq93bPkZJ9nUsMXeXFtNjvLfV8pv6SsVcil/NHclJQZy" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -47,7 +47,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-HEvZ5xx8UILDjE8vUudFkylu3k8J01QZRx+ksMoZNHm6qejhiu4Inma/6qS7Y+lu" crossorigin="anonymous"></script>
|
||||
<script src="../country-posters.js" integrity="sha384-uPBJD/o6YHeWBccAOE1YKq93bPkZJ9nUsMXeXFtNjvLfV8pv6SsVcil/NHclJQZy" 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
|
|
@ -47,7 +47,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-G2cfmNzjdjkx6ZLplzjiMJ/zUO5UzGNUprk+Uo409T5tqQkFk7qD4RkFsn4mzOZv" crossorigin="anonymous"></script>
|
||||
<script src="../../dashboard-plus-grid.js" integrity="sha384-jzs17zacTcbz1iMlQAflSUHs4IwHWuRzPZGofVEqcN2tPB9mS0Y7fr37v2xnvq4m" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -47,7 +47,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-G2cfmNzjdjkx6ZLplzjiMJ/zUO5UzGNUprk+Uo409T5tqQkFk7qD4RkFsn4mzOZv" crossorigin="anonymous"></script>
|
||||
<script src="../dashboard-plus-grid.js" integrity="sha384-jzs17zacTcbz1iMlQAflSUHs4IwHWuRzPZGofVEqcN2tPB9mS0Y7fr37v2xnvq4m" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -36,7 +36,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-nYV9Db+AoEZQTeqvBVIwKwVPkCIV83aUXnQYjxPvMDH6l48G2WSmp1PQFuHQ3a6L" crossorigin="anonymous"></script>
|
||||
<script src="../demo-map.js" integrity="sha384-micDngh8PdY/QHDVsjXgbzk0uZXXe0OwKEAYSEwxSrbB9GzBOiM5jcTrjTtMsH95" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -33,7 +33,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-nYV9Db+AoEZQTeqvBVIwKwVPkCIV83aUXnQYjxPvMDH6l48G2WSmp1PQFuHQ3a6L" crossorigin="anonymous"></script>
|
||||
<script src="../../demo-map.js" integrity="sha384-micDngh8PdY/QHDVsjXgbzk0uZXXe0OwKEAYSEwxSrbB9GzBOiM5jcTrjTtMsH95" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -12,7 +12,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-zrzOkT5xghLfaytb9COJwrUmkUvDkImG0qcjQAHbpyUpoBlX5CrOALAdAm7SwJVX",
|
||||
"integrity": "sha384-qCQm12NgACLW6tOMUF56Qz3IOJwRVG92GUV4E5jW/LdBOahpWoYL1HNQDGrC/p1c",
|
||||
"elements": [
|
||||
"all-people-groups"
|
||||
],
|
||||
|
|
@ -30,7 +30,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./all-people-groups/all-people-groups.js\" integrity=\"sha384-zrzOkT5xghLfaytb9COJwrUmkUvDkImG0qcjQAHbpyUpoBlX5CrOALAdAm7SwJVX\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./all-people-groups/all-people-groups.js\" integrity=\"sha384-qCQm12NgACLW6tOMUF56Qz3IOJwRVG92GUV4E5jW/LdBOahpWoYL1HNQDGrC/p1c\" 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"
|
||||
}
|
||||
|
|
@ -108,7 +108,7 @@
|
|||
"bundle": "cities-internet",
|
||||
"scriptUrl": "./cities-internet/cities-internet.js",
|
||||
"output": "dx-maps/cities-internet/cities-internet.js",
|
||||
"integrity": "sha384-FhmynKDd3TqMilfR76AGxwHzv873Ze2a3PfZneTV+PkuoaieQQ8MjU1iP5N7iGGD",
|
||||
"integrity": "sha384-TwOD7fmnOQ6csk7uTCIgF36WWxkuh7aEFWakDUCSJ/O+z4ASoukbnNER7FmZxuN2",
|
||||
"elements": [
|
||||
"cities-internet-map"
|
||||
],
|
||||
|
|
@ -126,7 +126,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-FhmynKDd3TqMilfR76AGxwHzv873Ze2a3PfZneTV+PkuoaieQQ8MjU1iP5N7iGGD\" 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-TwOD7fmnOQ6csk7uTCIgF36WWxkuh7aEFWakDUCSJ/O+z4ASoukbnNER7FmZxuN2\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -141,7 +141,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-FhmynKDd3TqMilfR76AGxwHzv873Ze2a3PfZneTV+PkuoaieQQ8MjU1iP5N7iGGD\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-TwOD7fmnOQ6csk7uTCIgF36WWxkuh7aEFWakDUCSJ/O+z4ASoukbnNER7FmZxuN2\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -156,7 +156,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-FhmynKDd3TqMilfR76AGxwHzv873Ze2a3PfZneTV+PkuoaieQQ8MjU1iP5N7iGGD\" 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-TwOD7fmnOQ6csk7uTCIgF36WWxkuh7aEFWakDUCSJ/O+z4ASoukbnNER7FmZxuN2\" 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>"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
@ -165,7 +165,7 @@
|
|||
"bundle": "country-posters",
|
||||
"scriptUrl": "./country-posters/country-posters.js",
|
||||
"output": "dx-maps/country-posters/country-posters.js",
|
||||
"integrity": "sha384-HEvZ5xx8UILDjE8vUudFkylu3k8J01QZRx+ksMoZNHm6qejhiu4Inma/6qS7Y+lu",
|
||||
"integrity": "sha384-uPBJD/o6YHeWBccAOE1YKq93bPkZJ9nUsMXeXFtNjvLfV8pv6SsVcil/NHclJQZy",
|
||||
"elements": [
|
||||
"country-posters-map"
|
||||
],
|
||||
|
|
@ -187,7 +187,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./country-posters/country-posters.js\" integrity=\"sha384-HEvZ5xx8UILDjE8vUudFkylu3k8J01QZRx+ksMoZNHm6qejhiu4Inma/6qS7Y+lu\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./country-posters/country-posters.js\" integrity=\"sha384-uPBJD/o6YHeWBccAOE1YKq93bPkZJ9nUsMXeXFtNjvLfV8pv6SsVcil/NHclJQZy\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -202,7 +202,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-HEvZ5xx8UILDjE8vUudFkylu3k8J01QZRx+ksMoZNHm6qejhiu4Inma/6qS7Y+lu\" 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-uPBJD/o6YHeWBccAOE1YKq93bPkZJ9nUsMXeXFtNjvLfV8pv6SsVcil/NHclJQZy\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -217,7 +217,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./country-posters/country-posters.js\" integrity=\"sha384-HEvZ5xx8UILDjE8vUudFkylu3k8J01QZRx+ksMoZNHm6qejhiu4Inma/6qS7Y+lu\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./country-posters/country-posters.js\" integrity=\"sha384-uPBJD/o6YHeWBccAOE1YKq93bPkZJ9nUsMXeXFtNjvLfV8pv6SsVcil/NHclJQZy\" 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>"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
@ -226,7 +226,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-G2cfmNzjdjkx6ZLplzjiMJ/zUO5UzGNUprk+Uo409T5tqQkFk7qD4RkFsn4mzOZv",
|
||||
"integrity": "sha384-jzs17zacTcbz1iMlQAflSUHs4IwHWuRzPZGofVEqcN2tPB9mS0Y7fr37v2xnvq4m",
|
||||
"elements": [
|
||||
"dashboard-plus-grid"
|
||||
],
|
||||
|
|
@ -248,7 +248,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./dashboard-plus-grid/dashboard-plus-grid.js\" integrity=\"sha384-G2cfmNzjdjkx6ZLplzjiMJ/zUO5UzGNUprk+Uo409T5tqQkFk7qD4RkFsn4mzOZv\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./dashboard-plus-grid/dashboard-plus-grid.js\" integrity=\"sha384-jzs17zacTcbz1iMlQAflSUHs4IwHWuRzPZGofVEqcN2tPB9mS0Y7fr37v2xnvq4m\" 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": [
|
||||
{
|
||||
|
|
@ -272,7 +272,7 @@
|
|||
"bundle": "demo-map",
|
||||
"scriptUrl": "./demo-map/demo-map.js",
|
||||
"output": "dx-maps/demo-map/demo-map.js",
|
||||
"integrity": "sha384-nYV9Db+AoEZQTeqvBVIwKwVPkCIV83aUXnQYjxPvMDH6l48G2WSmp1PQFuHQ3a6L",
|
||||
"integrity": "sha384-micDngh8PdY/QHDVsjXgbzk0uZXXe0OwKEAYSEwxSrbB9GzBOiM5jcTrjTtMsH95",
|
||||
"elements": [
|
||||
"demo-map"
|
||||
],
|
||||
|
|
@ -290,7 +290,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./demo-map/demo-map.js\" integrity=\"sha384-nYV9Db+AoEZQTeqvBVIwKwVPkCIV83aUXnQYjxPvMDH6l48G2WSmp1PQFuHQ3a6L\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./demo-map/demo-map.js\" integrity=\"sha384-micDngh8PdY/QHDVsjXgbzk0uZXXe0OwKEAYSEwxSrbB9GzBOiM5jcTrjTtMsH95\" 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": [
|
||||
{
|
||||
|
|
@ -371,7 +371,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-nvEsrjOc4wP/sm0C7SK+Nbwx8v37Nosk7/j9/MNby4HNVbnL1WR5+vjvK6x5u3CP",
|
||||
"integrity": "sha384-zU0HieHgiOIRGn6XLSnJwgL+y9ZGkp28cCSAGDsKrERR0dGmybefp1M7FlA3IZh7",
|
||||
"elements": [
|
||||
"doxa-research-map"
|
||||
],
|
||||
|
|
@ -389,7 +389,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./doxa-research-map/doxa-research-map.js\" integrity=\"sha384-nvEsrjOc4wP/sm0C7SK+Nbwx8v37Nosk7/j9/MNby4HNVbnL1WR5+vjvK6x5u3CP\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./doxa-research-map/doxa-research-map.js\" integrity=\"sha384-zU0HieHgiOIRGn6XLSnJwgL+y9ZGkp28cCSAGDsKrERR0dGmybefp1M7FlA3IZh7\" 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": [
|
||||
{
|
||||
|
|
@ -415,7 +415,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-fsv4/TB74oOcdaMNskg5QrKWG1nD7uRfzKoRVtvslWXYUEselscB538g003Z1Ovh",
|
||||
"integrity": "sha384-k6/TNpL9/r368OLX1pUL3RdsIep5xbqAnf7QmeYQYXYeU3GuDcCOJPwWp0IYqjXg",
|
||||
"elements": [
|
||||
"doxa-map",
|
||||
"doxa-simple-map"
|
||||
|
|
@ -434,7 +434,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./doxa-simple-map/doxa-simple-map.js\" integrity=\"sha384-fsv4/TB74oOcdaMNskg5QrKWG1nD7uRfzKoRVtvslWXYUEselscB538g003Z1Ovh\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./doxa-simple-map/doxa-simple-map.js\" integrity=\"sha384-k6/TNpL9/r368OLX1pUL3RdsIep5xbqAnf7QmeYQYXYeU3GuDcCOJPwWp0IYqjXg\" 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": [
|
||||
{
|
||||
|
|
@ -604,7 +604,7 @@
|
|||
"bundle": "gospel-internet",
|
||||
"scriptUrl": "./gospel-internet/gospel-internet.js",
|
||||
"output": "dx-maps/gospel-internet/gospel-internet.js",
|
||||
"integrity": "sha384-Vwv3ZEccogXwzNezlI5HyBQdg1bBdcvkBiLlapaQvCorFgRy4MM3qFp9GqK1GDuN",
|
||||
"integrity": "sha384-2bppgEwyX8xf+X/vSiwGTNsUqfhoYNJwOJ/M0QJxGs9PBlXZ2p+ZJNnUjM3AJ5lH",
|
||||
"elements": [
|
||||
"gospel-internet-board"
|
||||
],
|
||||
|
|
@ -623,7 +623,7 @@
|
|||
"scriptUrl": "./gospel-internet/gospel-internet.js",
|
||||
"embed": {
|
||||
"iframe": "<iframe src=\"./gospel-internet/board/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
|
||||
"script": "<!-- Mapbox engine, fetched early. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-internet/gospel-internet.js\" integrity=\"sha384-Vwv3ZEccogXwzNezlI5HyBQdg1bBdcvkBiLlapaQvCorFgRy4MM3qFp9GqK1GDuN\" crossorigin=\"anonymous\"></script>\n<gospel-internet-board profile-config='{\"profile\":\"board\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-internet-board>"
|
||||
"script": "<!-- Mapbox engine, fetched early. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-internet/gospel-internet.js\" integrity=\"sha384-2bppgEwyX8xf+X/vSiwGTNsUqfhoYNJwOJ/M0QJxGs9PBlXZ2p+ZJNnUjM3AJ5lH\" crossorigin=\"anonymous\"></script>\n<gospel-internet-board profile-config='{\"profile\":\"board\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-internet-board>"
|
||||
},
|
||||
"instances": [
|
||||
{
|
||||
|
|
@ -723,7 +723,7 @@
|
|||
"bundle": "gospel-resources",
|
||||
"scriptUrl": "./gospel-resources/gospel-resources.js",
|
||||
"output": "dx-maps/gospel-resources/gospel-resources.js",
|
||||
"integrity": "sha384-aKpUyz83c4v1tr9Gw3WZXUrV9uHooGufTCwRzY9cXYb4+K6ed3EDYHrkzwgg7AOp",
|
||||
"integrity": "sha384-7b6f5cIAt5G2cTORFnvr4Bt5omyAydytpoYoiEkBZHxfKAoBEgc9Ah2l6WO9Fmln",
|
||||
"elements": [
|
||||
"gospel-resources-map"
|
||||
],
|
||||
|
|
@ -745,7 +745,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-aKpUyz83c4v1tr9Gw3WZXUrV9uHooGufTCwRzY9cXYb4+K6ed3EDYHrkzwgg7AOp\" 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-7b6f5cIAt5G2cTORFnvr4Bt5omyAydytpoYoiEkBZHxfKAoBEgc9Ah2l6WO9Fmln\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -760,7 +760,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-aKpUyz83c4v1tr9Gw3WZXUrV9uHooGufTCwRzY9cXYb4+K6ed3EDYHrkzwgg7AOp\" 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-7b6f5cIAt5G2cTORFnvr4Bt5omyAydytpoYoiEkBZHxfKAoBEgc9Ah2l6WO9Fmln\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -775,7 +775,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-aKpUyz83c4v1tr9Gw3WZXUrV9uHooGufTCwRzY9cXYb4+K6ed3EDYHrkzwgg7AOp\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-7b6f5cIAt5G2cTORFnvr4Bt5omyAydytpoYoiEkBZHxfKAoBEgc9Ah2l6WO9Fmln\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -790,7 +790,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-aKpUyz83c4v1tr9Gw3WZXUrV9uHooGufTCwRzY9cXYb4+K6ed3EDYHrkzwgg7AOp\" 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-7b6f5cIAt5G2cTORFnvr4Bt5omyAydytpoYoiEkBZHxfKAoBEgc9Ah2l6WO9Fmln\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -805,7 +805,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-aKpUyz83c4v1tr9Gw3WZXUrV9uHooGufTCwRzY9cXYb4+K6ed3EDYHrkzwgg7AOp\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-7b6f5cIAt5G2cTORFnvr4Bt5omyAydytpoYoiEkBZHxfKAoBEgc9Ah2l6WO9Fmln\" 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>"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
@ -814,7 +814,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-kAJ2/CjsYLX4aVcdO5YHz7u2pqI2xtYB8QxYt10boDLNOr9f0SvZxs/ktFyzU2Mq",
|
||||
"integrity": "sha384-6ChLrNsMHRMc1NU9dvwah0f814ybN3kYagwHjsd9wp10+gPIiFF5UNyPrck2X9hQ",
|
||||
"elements": [
|
||||
"my-upg-100-list-map"
|
||||
],
|
||||
|
|
@ -836,7 +836,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-kAJ2/CjsYLX4aVcdO5YHz7u2pqI2xtYB8QxYt10boDLNOr9f0SvZxs/ktFyzU2Mq\" 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-6ChLrNsMHRMc1NU9dvwah0f814ybN3kYagwHjsd9wp10+gPIiFF5UNyPrck2X9hQ\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -851,7 +851,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\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-kAJ2/CjsYLX4aVcdO5YHz7u2pqI2xtYB8QxYt10boDLNOr9f0SvZxs/ktFyzU2Mq\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\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-6ChLrNsMHRMc1NU9dvwah0f814ybN3kYagwHjsd9wp10+gPIiFF5UNyPrck2X9hQ\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -866,7 +866,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\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-kAJ2/CjsYLX4aVcdO5YHz7u2pqI2xtYB8QxYt10boDLNOr9f0SvZxs/ktFyzU2Mq\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\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-6ChLrNsMHRMc1NU9dvwah0f814ybN3kYagwHjsd9wp10+gPIiFF5UNyPrck2X9hQ\" 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>"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
@ -995,7 +995,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-DeOrKZESmOQEoz2uX+SySLcJWlC7p2rqmleM0kAyqj89cz6kfokc4Hc8T1EEtCr1",
|
||||
"integrity": "sha384-qsKXGlXM1Aad4KY9LnJsEV8ZxdwNGBx7e82NQFc3WjByi+Ym8X1D9I0KUNKAF36P",
|
||||
"elements": [
|
||||
"pplr-data-maps"
|
||||
],
|
||||
|
|
@ -1013,7 +1013,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./pplr-data-maps/pplr-data-maps.js\" integrity=\"sha384-DeOrKZESmOQEoz2uX+SySLcJWlC7p2rqmleM0kAyqj89cz6kfokc4Hc8T1EEtCr1\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./pplr-data-maps/pplr-data-maps.js\" integrity=\"sha384-qsKXGlXM1Aad4KY9LnJsEV8ZxdwNGBx7e82NQFc3WjByi+Ym8X1D9I0KUNKAF36P\" 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"
|
||||
}
|
||||
|
|
@ -1050,7 +1050,7 @@
|
|||
"bundle": "regions-dashboard",
|
||||
"scriptUrl": "./regions-dashboard/regions-dashboard.js",
|
||||
"output": "dx-maps/regions-dashboard/regions-dashboard.js",
|
||||
"integrity": "sha384-HK5vl0Oz39LB5+RpGjd9g3XphsfAw1eXEEMobNcvHM61XL8iiuHmfOx9VJms5qAn",
|
||||
"integrity": "sha384-R0l3/WZCOmxiS/PQEVM4UmRr20kFwgRrILGeSZCJLYcw3Y0TxYb7e/Uyw1CWSSdC",
|
||||
"elements": [
|
||||
"regions-dashboard"
|
||||
],
|
||||
|
|
@ -1072,7 +1072,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-HK5vl0Oz39LB5+RpGjd9g3XphsfAw1eXEEMobNcvHM61XL8iiuHmfOx9VJms5qAn\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-R0l3/WZCOmxiS/PQEVM4UmRr20kFwgRrILGeSZCJLYcw3Y0TxYb7e/Uyw1CWSSdC\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -1087,7 +1087,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-HK5vl0Oz39LB5+RpGjd9g3XphsfAw1eXEEMobNcvHM61XL8iiuHmfOx9VJms5qAn\" 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-R0l3/WZCOmxiS/PQEVM4UmRr20kFwgRrILGeSZCJLYcw3Y0TxYb7e/Uyw1CWSSdC\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -1102,7 +1102,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-HK5vl0Oz39LB5+RpGjd9g3XphsfAw1eXEEMobNcvHM61XL8iiuHmfOx9VJms5qAn\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-R0l3/WZCOmxiS/PQEVM4UmRr20kFwgRrILGeSZCJLYcw3Y0TxYb7e/Uyw1CWSSdC\" 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>"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
@ -1111,7 +1111,7 @@
|
|||
"bundle": "research-dashboard",
|
||||
"scriptUrl": "./research-dashboard/research-dashboard.js",
|
||||
"output": "dx-maps/research-dashboard/research-dashboard.js",
|
||||
"integrity": "sha384-vRwMaJ6+P+zSbdYMv+keN/GLHkreOcTAcFnmhKO/fpXstpdm74a7vc2MT5Wq5U7z",
|
||||
"integrity": "sha384-04sJEsHVug5uhGZZ9xAljO58lXbtG3BKwxEsUP+niTz/8hzztOWOsB8Tr+yO3UyG",
|
||||
"elements": [
|
||||
"research-dashboard-map"
|
||||
],
|
||||
|
|
@ -1129,7 +1129,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./research-dashboard/research-dashboard.js\" integrity=\"sha384-vRwMaJ6+P+zSbdYMv+keN/GLHkreOcTAcFnmhKO/fpXstpdm74a7vc2MT5Wq5U7z\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./research-dashboard/research-dashboard.js\" integrity=\"sha384-04sJEsHVug5uhGZZ9xAljO58lXbtG3BKwxEsUP+niTz/8hzztOWOsB8Tr+yO3UyG\" 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"
|
||||
}
|
||||
|
|
@ -1261,7 +1261,7 @@
|
|||
"bundle": "upg-neighbor",
|
||||
"scriptUrl": "./upg-neighbor/upg-neighbor.js",
|
||||
"output": "dx-maps/upg-neighbor/upg-neighbor.js",
|
||||
"integrity": "sha384-GFo6dqHbhV+ugPrbWhpGfub2d9PQJZso+ATZm4jPsvTabn19jnMrEuc07PDNDIpl",
|
||||
"integrity": "sha384-mXi3m3n1JQVpXo+qZcuCIa5QAO4Is0SZx4wPsdrWpN1ZMqxcGcyG505hveSyaaOh",
|
||||
"elements": [
|
||||
"upg-neighbor"
|
||||
],
|
||||
|
|
@ -1279,7 +1279,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./upg-neighbor/upg-neighbor.js\" integrity=\"sha384-GFo6dqHbhV+ugPrbWhpGfub2d9PQJZso+ATZm4jPsvTabn19jnMrEuc07PDNDIpl\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./upg-neighbor/upg-neighbor.js\" integrity=\"sha384-mXi3m3n1JQVpXo+qZcuCIa5QAO4Is0SZx4wPsdrWpN1ZMqxcGcyG505hveSyaaOh\" 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": [
|
||||
{
|
||||
|
|
@ -1361,7 +1361,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-G5LZ3lYdghOqMnLCtpQF60kmQ1a1qCCTQlQB3BFCDotHj3/JvG8jecQvN9XEHRbe",
|
||||
"integrity": "sha384-A+vu1hf7howC0G2DrCW13vkLMzn7tzd2cs9/90wPQG0/eRIdAL2gcsm8JbyV7Iv0",
|
||||
"elements": [
|
||||
"wall-of-people-groups"
|
||||
],
|
||||
|
|
@ -1379,7 +1379,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-G5LZ3lYdghOqMnLCtpQF60kmQ1a1qCCTQlQB3BFCDotHj3/JvG8jecQvN9XEHRbe\" 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-A+vu1hf7howC0G2DrCW13vkLMzn7tzd2cs9/90wPQG0/eRIdAL2gcsm8JbyV7Iv0\" 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
|
|
@ -36,7 +36,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-nvEsrjOc4wP/sm0C7SK+Nbwx8v37Nosk7/j9/MNby4HNVbnL1WR5+vjvK6x5u3CP" crossorigin="anonymous"></script>
|
||||
<script src="../doxa-research-map.js" integrity="sha384-zU0HieHgiOIRGn6XLSnJwgL+y9ZGkp28cCSAGDsKrERR0dGmybefp1M7FlA3IZh7" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -33,7 +33,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-nvEsrjOc4wP/sm0C7SK+Nbwx8v37Nosk7/j9/MNby4HNVbnL1WR5+vjvK6x5u3CP" crossorigin="anonymous"></script>
|
||||
<script src="../../doxa-research-map.js" integrity="sha384-zU0HieHgiOIRGn6XLSnJwgL+y9ZGkp28cCSAGDsKrERR0dGmybefp1M7FlA3IZh7" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -36,7 +36,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-fsv4/TB74oOcdaMNskg5QrKWG1nD7uRfzKoRVtvslWXYUEselscB538g003Z1Ovh" crossorigin="anonymous"></script>
|
||||
<script src="../../doxa-simple-map.js" integrity="sha384-k6/TNpL9/r368OLX1pUL3RdsIep5xbqAnf7QmeYQYXYeU3GuDcCOJPwWp0IYqjXg" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -36,7 +36,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-fsv4/TB74oOcdaMNskg5QrKWG1nD7uRfzKoRVtvslWXYUEselscB538g003Z1Ovh" crossorigin="anonymous"></script>
|
||||
<script src="../../doxa-simple-map.js" integrity="sha384-k6/TNpL9/r368OLX1pUL3RdsIep5xbqAnf7QmeYQYXYeU3GuDcCOJPwWp0IYqjXg" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -36,7 +36,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-fsv4/TB74oOcdaMNskg5QrKWG1nD7uRfzKoRVtvslWXYUEselscB538g003Z1Ovh" crossorigin="anonymous"></script>
|
||||
<script src="../doxa-simple-map.js" integrity="sha384-k6/TNpL9/r368OLX1pUL3RdsIep5xbqAnf7QmeYQYXYeU3GuDcCOJPwWp0IYqjXg" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -36,7 +36,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-fsv4/TB74oOcdaMNskg5QrKWG1nD7uRfzKoRVtvslWXYUEselscB538g003Z1Ovh" crossorigin="anonymous"></script>
|
||||
<script src="../../doxa-simple-map.js" integrity="sha384-k6/TNpL9/r368OLX1pUL3RdsIep5xbqAnf7QmeYQYXYeU3GuDcCOJPwWp0IYqjXg" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@
|
|||
|
||||
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
|
||||
<!-- Bundle IIFE — registers the <gospel-internet-board> custom element. -->
|
||||
<script src="../../gospel-internet.js" integrity="sha384-Vwv3ZEccogXwzNezlI5HyBQdg1bBdcvkBiLlapaQvCorFgRy4MM3qFp9GqK1GDuN" crossorigin="anonymous"></script>
|
||||
<script src="../../gospel-internet.js" integrity="sha384-2bppgEwyX8xf+X/vSiwGTNsUqfhoYNJwOJ/M0QJxGs9PBlXZ2p+ZJNnUjM3AJ5lH" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@
|
|||
|
||||
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
|
||||
<!-- Bundle IIFE — registers the <gospel-internet-board> custom element. -->
|
||||
<script src="../gospel-internet.js" integrity="sha384-Vwv3ZEccogXwzNezlI5HyBQdg1bBdcvkBiLlapaQvCorFgRy4MM3qFp9GqK1GDuN" crossorigin="anonymous"></script>
|
||||
<script src="../gospel-internet.js" integrity="sha384-2bppgEwyX8xf+X/vSiwGTNsUqfhoYNJwOJ/M0QJxGs9PBlXZ2p+ZJNnUjM3AJ5lH" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@
|
|||
|
||||
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
|
||||
<!-- Bundle IIFE — registers the <gospel-internet-board> custom element. -->
|
||||
<script src="../../gospel-internet.js" integrity="sha384-Vwv3ZEccogXwzNezlI5HyBQdg1bBdcvkBiLlapaQvCorFgRy4MM3qFp9GqK1GDuN" crossorigin="anonymous"></script>
|
||||
<script src="../../gospel-internet.js" integrity="sha384-2bppgEwyX8xf+X/vSiwGTNsUqfhoYNJwOJ/M0QJxGs9PBlXZ2p+ZJNnUjM3AJ5lH" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@
|
|||
|
||||
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
|
||||
<!-- Bundle IIFE — registers the <gospel-internet-board> custom element. -->
|
||||
<script src="../../gospel-internet.js" integrity="sha384-Vwv3ZEccogXwzNezlI5HyBQdg1bBdcvkBiLlapaQvCorFgRy4MM3qFp9GqK1GDuN" crossorigin="anonymous"></script>
|
||||
<script src="../../gospel-internet.js" integrity="sha384-2bppgEwyX8xf+X/vSiwGTNsUqfhoYNJwOJ/M0QJxGs9PBlXZ2p+ZJNnUjM3AJ5lH" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@
|
|||
|
||||
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
|
||||
<!-- Bundle IIFE — registers the <gospel-internet-board> custom element. -->
|
||||
<script src="../../gospel-internet.js" integrity="sha384-Vwv3ZEccogXwzNezlI5HyBQdg1bBdcvkBiLlapaQvCorFgRy4MM3qFp9GqK1GDuN" crossorigin="anonymous"></script>
|
||||
<script src="../../gospel-internet.js" integrity="sha384-2bppgEwyX8xf+X/vSiwGTNsUqfhoYNJwOJ/M0QJxGs9PBlXZ2p+ZJNnUjM3AJ5lH" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@
|
|||
|
||||
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
|
||||
<!-- Bundle IIFE — registers the <gospel-internet-board> custom element. -->
|
||||
<script src="../../gospel-internet.js" integrity="sha384-Vwv3ZEccogXwzNezlI5HyBQdg1bBdcvkBiLlapaQvCorFgRy4MM3qFp9GqK1GDuN" crossorigin="anonymous"></script>
|
||||
<script src="../../gospel-internet.js" integrity="sha384-2bppgEwyX8xf+X/vSiwGTNsUqfhoYNJwOJ/M0QJxGs9PBlXZ2p+ZJNnUjM3AJ5lH" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@
|
|||
|
||||
<script>window.MAP_APP_API_URL = "https://pray.doxa.life";</script>
|
||||
<!-- Bundle IIFE — registers the <gospel-internet-board> custom element. -->
|
||||
<script src="../../gospel-internet.js" integrity="sha384-Vwv3ZEccogXwzNezlI5HyBQdg1bBdcvkBiLlapaQvCorFgRy4MM3qFp9GqK1GDuN" crossorigin="anonymous"></script>
|
||||
<script src="../../gospel-internet.js" integrity="sha384-2bppgEwyX8xf+X/vSiwGTNsUqfhoYNJwOJ/M0QJxGs9PBlXZ2p+ZJNnUjM3AJ5lH" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -32,7 +32,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-aKpUyz83c4v1tr9Gw3WZXUrV9uHooGufTCwRzY9cXYb4+K6ed3EDYHrkzwgg7AOp" crossorigin="anonymous"></script>
|
||||
<script src="../gospel-resources.js" integrity="sha384-7b6f5cIAt5G2cTORFnvr4Bt5omyAydytpoYoiEkBZHxfKAoBEgc9Ah2l6WO9Fmln" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -32,7 +32,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-aKpUyz83c4v1tr9Gw3WZXUrV9uHooGufTCwRzY9cXYb4+K6ed3EDYHrkzwgg7AOp" crossorigin="anonymous"></script>
|
||||
<script src="../gospel-resources.js" integrity="sha384-7b6f5cIAt5G2cTORFnvr4Bt5omyAydytpoYoiEkBZHxfKAoBEgc9Ah2l6WO9Fmln" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -47,7 +47,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-aKpUyz83c4v1tr9Gw3WZXUrV9uHooGufTCwRzY9cXYb4+K6ed3EDYHrkzwgg7AOp" crossorigin="anonymous"></script>
|
||||
<script src="../gospel-resources.js" integrity="sha384-7b6f5cIAt5G2cTORFnvr4Bt5omyAydytpoYoiEkBZHxfKAoBEgc9Ah2l6WO9Fmln" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -32,7 +32,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-aKpUyz83c4v1tr9Gw3WZXUrV9uHooGufTCwRzY9cXYb4+K6ed3EDYHrkzwgg7AOp" crossorigin="anonymous"></script>
|
||||
<script src="../gospel-resources.js" integrity="sha384-7b6f5cIAt5G2cTORFnvr4Bt5omyAydytpoYoiEkBZHxfKAoBEgc9Ah2l6WO9Fmln" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -36,7 +36,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-aKpUyz83c4v1tr9Gw3WZXUrV9uHooGufTCwRzY9cXYb4+K6ed3EDYHrkzwgg7AOp" crossorigin="anonymous"></script>
|
||||
<script src="../gospel-resources.js" integrity="sha384-7b6f5cIAt5G2cTORFnvr4Bt5omyAydytpoYoiEkBZHxfKAoBEgc9Ah2l6WO9Fmln" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -12,7 +12,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-zrzOkT5xghLfaytb9COJwrUmkUvDkImG0qcjQAHbpyUpoBlX5CrOALAdAm7SwJVX",
|
||||
"integrity": "sha384-qCQm12NgACLW6tOMUF56Qz3IOJwRVG92GUV4E5jW/LdBOahpWoYL1HNQDGrC/p1c",
|
||||
"elements": [
|
||||
"all-people-groups"
|
||||
],
|
||||
|
|
@ -30,7 +30,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./all-people-groups/all-people-groups.js\" integrity=\"sha384-zrzOkT5xghLfaytb9COJwrUmkUvDkImG0qcjQAHbpyUpoBlX5CrOALAdAm7SwJVX\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./all-people-groups/all-people-groups.js\" integrity=\"sha384-qCQm12NgACLW6tOMUF56Qz3IOJwRVG92GUV4E5jW/LdBOahpWoYL1HNQDGrC/p1c\" 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"
|
||||
}
|
||||
|
|
@ -108,7 +108,7 @@
|
|||
"bundle": "cities-internet",
|
||||
"scriptUrl": "./cities-internet/cities-internet.js",
|
||||
"output": "dx-maps/cities-internet/cities-internet.js",
|
||||
"integrity": "sha384-FhmynKDd3TqMilfR76AGxwHzv873Ze2a3PfZneTV+PkuoaieQQ8MjU1iP5N7iGGD",
|
||||
"integrity": "sha384-TwOD7fmnOQ6csk7uTCIgF36WWxkuh7aEFWakDUCSJ/O+z4ASoukbnNER7FmZxuN2",
|
||||
"elements": [
|
||||
"cities-internet-map"
|
||||
],
|
||||
|
|
@ -126,7 +126,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-FhmynKDd3TqMilfR76AGxwHzv873Ze2a3PfZneTV+PkuoaieQQ8MjU1iP5N7iGGD\" 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-TwOD7fmnOQ6csk7uTCIgF36WWxkuh7aEFWakDUCSJ/O+z4ASoukbnNER7FmZxuN2\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -141,7 +141,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-FhmynKDd3TqMilfR76AGxwHzv873Ze2a3PfZneTV+PkuoaieQQ8MjU1iP5N7iGGD\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./cities-internet/cities-internet.js\" integrity=\"sha384-TwOD7fmnOQ6csk7uTCIgF36WWxkuh7aEFWakDUCSJ/O+z4ASoukbnNER7FmZxuN2\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -156,7 +156,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-FhmynKDd3TqMilfR76AGxwHzv873Ze2a3PfZneTV+PkuoaieQQ8MjU1iP5N7iGGD\" 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-TwOD7fmnOQ6csk7uTCIgF36WWxkuh7aEFWakDUCSJ/O+z4ASoukbnNER7FmZxuN2\" 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>"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
@ -165,7 +165,7 @@
|
|||
"bundle": "country-posters",
|
||||
"scriptUrl": "./country-posters/country-posters.js",
|
||||
"output": "dx-maps/country-posters/country-posters.js",
|
||||
"integrity": "sha384-HEvZ5xx8UILDjE8vUudFkylu3k8J01QZRx+ksMoZNHm6qejhiu4Inma/6qS7Y+lu",
|
||||
"integrity": "sha384-uPBJD/o6YHeWBccAOE1YKq93bPkZJ9nUsMXeXFtNjvLfV8pv6SsVcil/NHclJQZy",
|
||||
"elements": [
|
||||
"country-posters-map"
|
||||
],
|
||||
|
|
@ -187,7 +187,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./country-posters/country-posters.js\" integrity=\"sha384-HEvZ5xx8UILDjE8vUudFkylu3k8J01QZRx+ksMoZNHm6qejhiu4Inma/6qS7Y+lu\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./country-posters/country-posters.js\" integrity=\"sha384-uPBJD/o6YHeWBccAOE1YKq93bPkZJ9nUsMXeXFtNjvLfV8pv6SsVcil/NHclJQZy\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -202,7 +202,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-HEvZ5xx8UILDjE8vUudFkylu3k8J01QZRx+ksMoZNHm6qejhiu4Inma/6qS7Y+lu\" 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-uPBJD/o6YHeWBccAOE1YKq93bPkZJ9nUsMXeXFtNjvLfV8pv6SsVcil/NHclJQZy\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -217,7 +217,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./country-posters/country-posters.js\" integrity=\"sha384-HEvZ5xx8UILDjE8vUudFkylu3k8J01QZRx+ksMoZNHm6qejhiu4Inma/6qS7Y+lu\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./country-posters/country-posters.js\" integrity=\"sha384-uPBJD/o6YHeWBccAOE1YKq93bPkZJ9nUsMXeXFtNjvLfV8pv6SsVcil/NHclJQZy\" 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>"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
@ -226,7 +226,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-G2cfmNzjdjkx6ZLplzjiMJ/zUO5UzGNUprk+Uo409T5tqQkFk7qD4RkFsn4mzOZv",
|
||||
"integrity": "sha384-jzs17zacTcbz1iMlQAflSUHs4IwHWuRzPZGofVEqcN2tPB9mS0Y7fr37v2xnvq4m",
|
||||
"elements": [
|
||||
"dashboard-plus-grid"
|
||||
],
|
||||
|
|
@ -248,7 +248,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./dashboard-plus-grid/dashboard-plus-grid.js\" integrity=\"sha384-G2cfmNzjdjkx6ZLplzjiMJ/zUO5UzGNUprk+Uo409T5tqQkFk7qD4RkFsn4mzOZv\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./dashboard-plus-grid/dashboard-plus-grid.js\" integrity=\"sha384-jzs17zacTcbz1iMlQAflSUHs4IwHWuRzPZGofVEqcN2tPB9mS0Y7fr37v2xnvq4m\" 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": [
|
||||
{
|
||||
|
|
@ -272,7 +272,7 @@
|
|||
"bundle": "demo-map",
|
||||
"scriptUrl": "./demo-map/demo-map.js",
|
||||
"output": "dx-maps/demo-map/demo-map.js",
|
||||
"integrity": "sha384-nYV9Db+AoEZQTeqvBVIwKwVPkCIV83aUXnQYjxPvMDH6l48G2WSmp1PQFuHQ3a6L",
|
||||
"integrity": "sha384-micDngh8PdY/QHDVsjXgbzk0uZXXe0OwKEAYSEwxSrbB9GzBOiM5jcTrjTtMsH95",
|
||||
"elements": [
|
||||
"demo-map"
|
||||
],
|
||||
|
|
@ -290,7 +290,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./demo-map/demo-map.js\" integrity=\"sha384-nYV9Db+AoEZQTeqvBVIwKwVPkCIV83aUXnQYjxPvMDH6l48G2WSmp1PQFuHQ3a6L\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./demo-map/demo-map.js\" integrity=\"sha384-micDngh8PdY/QHDVsjXgbzk0uZXXe0OwKEAYSEwxSrbB9GzBOiM5jcTrjTtMsH95\" 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": [
|
||||
{
|
||||
|
|
@ -371,7 +371,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-nvEsrjOc4wP/sm0C7SK+Nbwx8v37Nosk7/j9/MNby4HNVbnL1WR5+vjvK6x5u3CP",
|
||||
"integrity": "sha384-zU0HieHgiOIRGn6XLSnJwgL+y9ZGkp28cCSAGDsKrERR0dGmybefp1M7FlA3IZh7",
|
||||
"elements": [
|
||||
"doxa-research-map"
|
||||
],
|
||||
|
|
@ -389,7 +389,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./doxa-research-map/doxa-research-map.js\" integrity=\"sha384-nvEsrjOc4wP/sm0C7SK+Nbwx8v37Nosk7/j9/MNby4HNVbnL1WR5+vjvK6x5u3CP\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./doxa-research-map/doxa-research-map.js\" integrity=\"sha384-zU0HieHgiOIRGn6XLSnJwgL+y9ZGkp28cCSAGDsKrERR0dGmybefp1M7FlA3IZh7\" 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": [
|
||||
{
|
||||
|
|
@ -415,7 +415,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-fsv4/TB74oOcdaMNskg5QrKWG1nD7uRfzKoRVtvslWXYUEselscB538g003Z1Ovh",
|
||||
"integrity": "sha384-k6/TNpL9/r368OLX1pUL3RdsIep5xbqAnf7QmeYQYXYeU3GuDcCOJPwWp0IYqjXg",
|
||||
"elements": [
|
||||
"doxa-map",
|
||||
"doxa-simple-map"
|
||||
|
|
@ -434,7 +434,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./doxa-simple-map/doxa-simple-map.js\" integrity=\"sha384-fsv4/TB74oOcdaMNskg5QrKWG1nD7uRfzKoRVtvslWXYUEselscB538g003Z1Ovh\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./doxa-simple-map/doxa-simple-map.js\" integrity=\"sha384-k6/TNpL9/r368OLX1pUL3RdsIep5xbqAnf7QmeYQYXYeU3GuDcCOJPwWp0IYqjXg\" 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": [
|
||||
{
|
||||
|
|
@ -604,7 +604,7 @@
|
|||
"bundle": "gospel-internet",
|
||||
"scriptUrl": "./gospel-internet/gospel-internet.js",
|
||||
"output": "dx-maps/gospel-internet/gospel-internet.js",
|
||||
"integrity": "sha384-Vwv3ZEccogXwzNezlI5HyBQdg1bBdcvkBiLlapaQvCorFgRy4MM3qFp9GqK1GDuN",
|
||||
"integrity": "sha384-2bppgEwyX8xf+X/vSiwGTNsUqfhoYNJwOJ/M0QJxGs9PBlXZ2p+ZJNnUjM3AJ5lH",
|
||||
"elements": [
|
||||
"gospel-internet-board"
|
||||
],
|
||||
|
|
@ -623,7 +623,7 @@
|
|||
"scriptUrl": "./gospel-internet/gospel-internet.js",
|
||||
"embed": {
|
||||
"iframe": "<iframe src=\"./gospel-internet/board/index.html?utm_source=YOUR_SOURCE\" width=\"100%\" height=\"600\" style=\"border:none;border-radius:12px;\" allowfullscreen></iframe>",
|
||||
"script": "<!-- Mapbox engine, fetched early. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-internet/gospel-internet.js\" integrity=\"sha384-Vwv3ZEccogXwzNezlI5HyBQdg1bBdcvkBiLlapaQvCorFgRy4MM3qFp9GqK1GDuN\" crossorigin=\"anonymous\"></script>\n<gospel-internet-board profile-config='{\"profile\":\"board\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-internet-board>"
|
||||
"script": "<!-- Mapbox engine, fetched early. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-internet/gospel-internet.js\" integrity=\"sha384-2bppgEwyX8xf+X/vSiwGTNsUqfhoYNJwOJ/M0QJxGs9PBlXZ2p+ZJNnUjM3AJ5lH\" crossorigin=\"anonymous\"></script>\n<gospel-internet-board profile-config='{\"profile\":\"board\",\"tk\":\"YOUR_MAPBOX_TOKEN\",\"utmSource\":\"YOUR_SOURCE\",\"assetsBase\":\"YOUR_TREE_URL/assets\"}'></gospel-internet-board>"
|
||||
},
|
||||
"instances": [
|
||||
{
|
||||
|
|
@ -723,7 +723,7 @@
|
|||
"bundle": "gospel-resources",
|
||||
"scriptUrl": "./gospel-resources/gospel-resources.js",
|
||||
"output": "dx-maps/gospel-resources/gospel-resources.js",
|
||||
"integrity": "sha384-aKpUyz83c4v1tr9Gw3WZXUrV9uHooGufTCwRzY9cXYb4+K6ed3EDYHrkzwgg7AOp",
|
||||
"integrity": "sha384-7b6f5cIAt5G2cTORFnvr4Bt5omyAydytpoYoiEkBZHxfKAoBEgc9Ah2l6WO9Fmln",
|
||||
"elements": [
|
||||
"gospel-resources-map"
|
||||
],
|
||||
|
|
@ -745,7 +745,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-aKpUyz83c4v1tr9Gw3WZXUrV9uHooGufTCwRzY9cXYb4+K6ed3EDYHrkzwgg7AOp\" 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-7b6f5cIAt5G2cTORFnvr4Bt5omyAydytpoYoiEkBZHxfKAoBEgc9Ah2l6WO9Fmln\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -760,7 +760,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-aKpUyz83c4v1tr9Gw3WZXUrV9uHooGufTCwRzY9cXYb4+K6ed3EDYHrkzwgg7AOp\" 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-7b6f5cIAt5G2cTORFnvr4Bt5omyAydytpoYoiEkBZHxfKAoBEgc9Ah2l6WO9Fmln\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -775,7 +775,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-aKpUyz83c4v1tr9Gw3WZXUrV9uHooGufTCwRzY9cXYb4+K6ed3EDYHrkzwgg7AOp\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-7b6f5cIAt5G2cTORFnvr4Bt5omyAydytpoYoiEkBZHxfKAoBEgc9Ah2l6WO9Fmln\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -790,7 +790,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-aKpUyz83c4v1tr9Gw3WZXUrV9uHooGufTCwRzY9cXYb4+K6ed3EDYHrkzwgg7AOp\" 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-7b6f5cIAt5G2cTORFnvr4Bt5omyAydytpoYoiEkBZHxfKAoBEgc9Ah2l6WO9Fmln\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -805,7 +805,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-aKpUyz83c4v1tr9Gw3WZXUrV9uHooGufTCwRzY9cXYb4+K6ed3EDYHrkzwgg7AOp\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./gospel-resources/gospel-resources.js\" integrity=\"sha384-7b6f5cIAt5G2cTORFnvr4Bt5omyAydytpoYoiEkBZHxfKAoBEgc9Ah2l6WO9Fmln\" 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>"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
@ -814,7 +814,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-kAJ2/CjsYLX4aVcdO5YHz7u2pqI2xtYB8QxYt10boDLNOr9f0SvZxs/ktFyzU2Mq",
|
||||
"integrity": "sha384-6ChLrNsMHRMc1NU9dvwah0f814ybN3kYagwHjsd9wp10+gPIiFF5UNyPrck2X9hQ",
|
||||
"elements": [
|
||||
"my-upg-100-list-map"
|
||||
],
|
||||
|
|
@ -836,7 +836,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-kAJ2/CjsYLX4aVcdO5YHz7u2pqI2xtYB8QxYt10boDLNOr9f0SvZxs/ktFyzU2Mq\" 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-6ChLrNsMHRMc1NU9dvwah0f814ybN3kYagwHjsd9wp10+gPIiFF5UNyPrck2X9hQ\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -851,7 +851,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\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-kAJ2/CjsYLX4aVcdO5YHz7u2pqI2xtYB8QxYt10boDLNOr9f0SvZxs/ktFyzU2Mq\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\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-6ChLrNsMHRMc1NU9dvwah0f814ybN3kYagwHjsd9wp10+gPIiFF5UNyPrck2X9hQ\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -866,7 +866,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\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-kAJ2/CjsYLX4aVcdO5YHz7u2pqI2xtYB8QxYt10boDLNOr9f0SvZxs/ktFyzU2Mq\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\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-6ChLrNsMHRMc1NU9dvwah0f814ybN3kYagwHjsd9wp10+gPIiFF5UNyPrck2X9hQ\" 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>"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
@ -995,7 +995,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-DeOrKZESmOQEoz2uX+SySLcJWlC7p2rqmleM0kAyqj89cz6kfokc4Hc8T1EEtCr1",
|
||||
"integrity": "sha384-qsKXGlXM1Aad4KY9LnJsEV8ZxdwNGBx7e82NQFc3WjByi+Ym8X1D9I0KUNKAF36P",
|
||||
"elements": [
|
||||
"pplr-data-maps"
|
||||
],
|
||||
|
|
@ -1013,7 +1013,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./pplr-data-maps/pplr-data-maps.js\" integrity=\"sha384-DeOrKZESmOQEoz2uX+SySLcJWlC7p2rqmleM0kAyqj89cz6kfokc4Hc8T1EEtCr1\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./pplr-data-maps/pplr-data-maps.js\" integrity=\"sha384-qsKXGlXM1Aad4KY9LnJsEV8ZxdwNGBx7e82NQFc3WjByi+Ym8X1D9I0KUNKAF36P\" 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"
|
||||
}
|
||||
|
|
@ -1050,7 +1050,7 @@
|
|||
"bundle": "regions-dashboard",
|
||||
"scriptUrl": "./regions-dashboard/regions-dashboard.js",
|
||||
"output": "dx-maps/regions-dashboard/regions-dashboard.js",
|
||||
"integrity": "sha384-HK5vl0Oz39LB5+RpGjd9g3XphsfAw1eXEEMobNcvHM61XL8iiuHmfOx9VJms5qAn",
|
||||
"integrity": "sha384-R0l3/WZCOmxiS/PQEVM4UmRr20kFwgRrILGeSZCJLYcw3Y0TxYb7e/Uyw1CWSSdC",
|
||||
"elements": [
|
||||
"regions-dashboard"
|
||||
],
|
||||
|
|
@ -1072,7 +1072,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-HK5vl0Oz39LB5+RpGjd9g3XphsfAw1eXEEMobNcvHM61XL8iiuHmfOx9VJms5qAn\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-R0l3/WZCOmxiS/PQEVM4UmRr20kFwgRrILGeSZCJLYcw3Y0TxYb7e/Uyw1CWSSdC\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -1087,7 +1087,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-HK5vl0Oz39LB5+RpGjd9g3XphsfAw1eXEEMobNcvHM61XL8iiuHmfOx9VJms5qAn\" 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-R0l3/WZCOmxiS/PQEVM4UmRr20kFwgRrILGeSZCJLYcw3Y0TxYb7e/Uyw1CWSSdC\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -1102,7 +1102,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-HK5vl0Oz39LB5+RpGjd9g3XphsfAw1eXEEMobNcvHM61XL8iiuHmfOx9VJms5qAn\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./regions-dashboard/regions-dashboard.js\" integrity=\"sha384-R0l3/WZCOmxiS/PQEVM4UmRr20kFwgRrILGeSZCJLYcw3Y0TxYb7e/Uyw1CWSSdC\" 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>"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
@ -1111,7 +1111,7 @@
|
|||
"bundle": "research-dashboard",
|
||||
"scriptUrl": "./research-dashboard/research-dashboard.js",
|
||||
"output": "dx-maps/research-dashboard/research-dashboard.js",
|
||||
"integrity": "sha384-vRwMaJ6+P+zSbdYMv+keN/GLHkreOcTAcFnmhKO/fpXstpdm74a7vc2MT5Wq5U7z",
|
||||
"integrity": "sha384-04sJEsHVug5uhGZZ9xAljO58lXbtG3BKwxEsUP+niTz/8hzztOWOsB8Tr+yO3UyG",
|
||||
"elements": [
|
||||
"research-dashboard-map"
|
||||
],
|
||||
|
|
@ -1129,7 +1129,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./research-dashboard/research-dashboard.js\" integrity=\"sha384-vRwMaJ6+P+zSbdYMv+keN/GLHkreOcTAcFnmhKO/fpXstpdm74a7vc2MT5Wq5U7z\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./research-dashboard/research-dashboard.js\" integrity=\"sha384-04sJEsHVug5uhGZZ9xAljO58lXbtG3BKwxEsUP+niTz/8hzztOWOsB8Tr+yO3UyG\" 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"
|
||||
}
|
||||
|
|
@ -1261,7 +1261,7 @@
|
|||
"bundle": "upg-neighbor",
|
||||
"scriptUrl": "./upg-neighbor/upg-neighbor.js",
|
||||
"output": "dx-maps/upg-neighbor/upg-neighbor.js",
|
||||
"integrity": "sha384-GFo6dqHbhV+ugPrbWhpGfub2d9PQJZso+ATZm4jPsvTabn19jnMrEuc07PDNDIpl",
|
||||
"integrity": "sha384-mXi3m3n1JQVpXo+qZcuCIa5QAO4Is0SZx4wPsdrWpN1ZMqxcGcyG505hveSyaaOh",
|
||||
"elements": [
|
||||
"upg-neighbor"
|
||||
],
|
||||
|
|
@ -1279,7 +1279,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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./upg-neighbor/upg-neighbor.js\" integrity=\"sha384-GFo6dqHbhV+ugPrbWhpGfub2d9PQJZso+ATZm4jPsvTabn19jnMrEuc07PDNDIpl\" 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. Keep it only with a real Mapbox token in \"tk\": without one (or with \"provider\":\"maplibre\") the map draws with MapLibre and this line must go -->\n<link rel=\"preload\" as=\"script\" href=\"https://api.mapbox.com/mapbox-gl-js/v3.24.0/mapbox-gl.js\" integrity=\"sha384-tO0clamXONKwbiz7O6xJpUeyJbTSPugC+xM9clvfFvKTH3i8SmCawHGdf5quMWmZ\" crossorigin=\"anonymous\">\n<script>window.MAP_APP_API_URL=\"https://pray.doxa.life\";</script>\n<script src=\"./upg-neighbor/upg-neighbor.js\" integrity=\"sha384-mXi3m3n1JQVpXo+qZcuCIa5QAO4Is0SZx4wPsdrWpN1ZMqxcGcyG505hveSyaaOh\" 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": [
|
||||
{
|
||||
|
|
@ -1361,7 +1361,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-G5LZ3lYdghOqMnLCtpQF60kmQ1a1qCCTQlQB3BFCDotHj3/JvG8jecQvN9XEHRbe",
|
||||
"integrity": "sha384-A+vu1hf7howC0G2DrCW13vkLMzn7tzd2cs9/90wPQG0/eRIdAL2gcsm8JbyV7Iv0",
|
||||
"elements": [
|
||||
"wall-of-people-groups"
|
||||
],
|
||||
|
|
@ -1379,7 +1379,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-G5LZ3lYdghOqMnLCtpQF60kmQ1a1qCCTQlQB3BFCDotHj3/JvG8jecQvN9XEHRbe\" 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-A+vu1hf7howC0G2DrCW13vkLMzn7tzd2cs9/90wPQG0/eRIdAL2gcsm8JbyV7Iv0\" 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
|
|
@ -32,7 +32,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-kAJ2/CjsYLX4aVcdO5YHz7u2pqI2xtYB8QxYt10boDLNOr9f0SvZxs/ktFyzU2Mq" crossorigin="anonymous"></script>
|
||||
<script src="../my-upg-100-list.js" integrity="sha384-6ChLrNsMHRMc1NU9dvwah0f814ybN3kYagwHjsd9wp10+gPIiFF5UNyPrck2X9hQ" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -36,7 +36,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-kAJ2/CjsYLX4aVcdO5YHz7u2pqI2xtYB8QxYt10boDLNOr9f0SvZxs/ktFyzU2Mq" crossorigin="anonymous"></script>
|
||||
<script src="../my-upg-100-list.js" integrity="sha384-6ChLrNsMHRMc1NU9dvwah0f814ybN3kYagwHjsd9wp10+gPIiFF5UNyPrck2X9hQ" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -47,7 +47,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-kAJ2/CjsYLX4aVcdO5YHz7u2pqI2xtYB8QxYt10boDLNOr9f0SvZxs/ktFyzU2Mq" crossorigin="anonymous"></script>
|
||||
<script src="../my-upg-100-list.js" integrity="sha384-6ChLrNsMHRMc1NU9dvwah0f814ybN3kYagwHjsd9wp10+gPIiFF5UNyPrck2X9hQ" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -36,7 +36,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-DeOrKZESmOQEoz2uX+SySLcJWlC7p2rqmleM0kAyqj89cz6kfokc4Hc8T1EEtCr1" crossorigin="anonymous"></script>
|
||||
<script src="../pplr-data-maps.js" integrity="sha384-qsKXGlXM1Aad4KY9LnJsEV8ZxdwNGBx7e82NQFc3WjByi+Ym8X1D9I0KUNKAF36P" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -36,7 +36,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-HK5vl0Oz39LB5+RpGjd9g3XphsfAw1eXEEMobNcvHM61XL8iiuHmfOx9VJms5qAn" crossorigin="anonymous"></script>
|
||||
<script src="../regions-dashboard.js" integrity="sha384-R0l3/WZCOmxiS/PQEVM4UmRr20kFwgRrILGeSZCJLYcw3Y0TxYb7e/Uyw1CWSSdC" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -32,7 +32,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-HK5vl0Oz39LB5+RpGjd9g3XphsfAw1eXEEMobNcvHM61XL8iiuHmfOx9VJms5qAn" crossorigin="anonymous"></script>
|
||||
<script src="../regions-dashboard.js" integrity="sha384-R0l3/WZCOmxiS/PQEVM4UmRr20kFwgRrILGeSZCJLYcw3Y0TxYb7e/Uyw1CWSSdC" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -47,7 +47,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-HK5vl0Oz39LB5+RpGjd9g3XphsfAw1eXEEMobNcvHM61XL8iiuHmfOx9VJms5qAn" crossorigin="anonymous"></script>
|
||||
<script src="../regions-dashboard.js" integrity="sha384-R0l3/WZCOmxiS/PQEVM4UmRr20kFwgRrILGeSZCJLYcw3Y0TxYb7e/Uyw1CWSSdC" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
|
|
@ -36,7 +36,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-vRwMaJ6+P+zSbdYMv+keN/GLHkreOcTAcFnmhKO/fpXstpdm74a7vc2MT5Wq5U7z" crossorigin="anonymous"></script>
|
||||
<script src="../research-dashboard.js" integrity="sha384-04sJEsHVug5uhGZZ9xAljO58lXbtG3BKwxEsUP+niTz/8hzztOWOsB8Tr+yO3UyG" 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
|
|
@ -36,7 +36,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-GFo6dqHbhV+ugPrbWhpGfub2d9PQJZso+ATZm4jPsvTabn19jnMrEuc07PDNDIpl" crossorigin="anonymous"></script>
|
||||
<script src="../../upg-neighbor.js" integrity="sha384-mXi3m3n1JQVpXo+qZcuCIa5QAO4Is0SZx4wPsdrWpN1ZMqxcGcyG505hveSyaaOh" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -36,7 +36,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-GFo6dqHbhV+ugPrbWhpGfub2d9PQJZso+ATZm4jPsvTabn19jnMrEuc07PDNDIpl" crossorigin="anonymous"></script>
|
||||
<script src="../../upg-neighbor.js" integrity="sha384-mXi3m3n1JQVpXo+qZcuCIa5QAO4Is0SZx4wPsdrWpN1ZMqxcGcyG505hveSyaaOh" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -36,7 +36,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-GFo6dqHbhV+ugPrbWhpGfub2d9PQJZso+ATZm4jPsvTabn19jnMrEuc07PDNDIpl" crossorigin="anonymous"></script>
|
||||
<script src="../upg-neighbor.js" integrity="sha384-mXi3m3n1JQVpXo+qZcuCIa5QAO4Is0SZx4wPsdrWpN1ZMqxcGcyG505hveSyaaOh" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
|
|
@ -36,7 +36,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-GFo6dqHbhV+ugPrbWhpGfub2d9PQJZso+ATZm4jPsvTabn19jnMrEuc07PDNDIpl" crossorigin="anonymous"></script>
|
||||
<script src="../../upg-neighbor.js" integrity="sha384-mXi3m3n1JQVpXo+qZcuCIa5QAO4Is0SZx4wPsdrWpN1ZMqxcGcyG505hveSyaaOh" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue