Update from source 7b7b8a4ac
This commit is contained in:
parent
2470640ffd
commit
566642b465
10 changed files with 106 additions and 49 deletions
|
|
@ -157,7 +157,7 @@ embed just the one you need.
|
|||
|---|---|---|
|
||||
| a **translator** (or an AI translation pipeline) | Gospel Resources (map, list, data tables) | which people groups have no Scripture, film or audio in their language, and which bridge language already reaches them |
|
||||
| **media to movements** | Cities with Internet · Gospel × Internet | where unreached people groups live with internet access, country by country and down to province where data exists |
|
||||
| a **catalyst** or mobilizer | Big Picture · Simple Research · Regions | filter the 2,107 groups by region, religion, language and engagement; **Export CSV** or **Export this selection**; open a group's **Full Profile** |
|
||||
| a **catalyst** or mobilizer | Big Picture · Simple Research · Regions · Gospel × Internet | filter the 2,107 groups by region, religion, language and engagement; **Export CSV** or **Export this selection**; open a group's **Full Profile**; find **gospel resources** for the people you are reaching |
|
||||
| **praying** | Prayer Progress · UPG-100 List | where prayer is covered and where it is still needed; print a **Prayer List**, **Poster Map** or **Card Deck** for a list of 100 |
|
||||
| a **teacher** or presenter | the Research Gallery | every map in one app, in 11 languages, ready to show |
|
||||
|
||||
|
|
|
|||
|
|
@ -289,6 +289,43 @@ async function loadRecords() {
|
|||
// leafZones() carries id/zoneKey/label/count but NOT selector (leaves do not), so the selector is
|
||||
// re-attached by id exactly as generate.mjs:2801-2808 does it, deaf included.
|
||||
function allZones() {
|
||||
// ★ COUNTRY MODE HAS ITS OWN ZONE SOURCE, and leaving it out broke the packet half of
|
||||
// SERIES=country for every country. Measured by exp-shepherd on main, 2026-09-28:
|
||||
// `SERIES=country ONLY=country-yem node generate.mjs` made a poster, and the matching
|
||||
// packet.mjs run died with "no zone matches ONLY=country-yem" — because zones came from
|
||||
// clusters.json (the UPG-100 zoning), where a country id never appears.
|
||||
// ⚠ MY OWN TEST MISSED IT BECAUSE IT WAS NOT END TO END. I only ever ran the country packet
|
||||
// against a UPG-100 zone id (ONLY=west-africa), which exercised the WORDING and never the zone
|
||||
// source. The same "one concept, two switches" defect I had just removed from generate.mjs
|
||||
// survived here, in the other file.
|
||||
// Built to MATCH generate.mjs's country branch exactly (same ids, labels and selector shape), so
|
||||
// a poster and its packet cannot describe different zones.
|
||||
if (SERIES.countryMode) {
|
||||
const cpath = [
|
||||
join(__dirname, '..', '..', 'data', 'country-posters.json'),
|
||||
join(REPO, 'plugin-designs', 'country-posters', 'data', 'countries.json'),
|
||||
].find((p) => existsSync(p));
|
||||
if (!cpath) {
|
||||
console.error('[packet] COUNTRY MODE needs the country list, and neither location has it:');
|
||||
console.error(' library/data/country-posters.json (written by: node emit-countries.mjs)');
|
||||
process.exit(1);
|
||||
}
|
||||
const cdata = JSON.parse(readFileSync(cpath, 'utf8'));
|
||||
const want = process.env.SHEET || '3x3';
|
||||
return (cdata.countries || [])
|
||||
.filter((c) => c.sheet === want)
|
||||
.map((c) => ({
|
||||
id: c.id,
|
||||
zoneKey: c.id,
|
||||
label: c.label,
|
||||
count: c.count,
|
||||
adm0: [c.iso3],
|
||||
// PLURAL type + `values`. The evaluator's SINGULAR form is
|
||||
// { type:'country_code', value:'SDN' }; passing `values` to the singular type matches
|
||||
// nothing and yields a silently empty packet. Same note as generate.mjs:2841.
|
||||
selector: { type: 'country_codes', values: [c.iso3] },
|
||||
}));
|
||||
}
|
||||
const tops = buildLegendNodes(clusters, { records: null });
|
||||
const byId = {};
|
||||
for (const k of ['lists', 'asia_lists', 'uncovered_lists']) {
|
||||
|
|
|
|||
|
|
@ -44,6 +44,8 @@ import { useOptionalT } from '@map/composables/useOptionalT.js'
|
|||
import { applyPeopleGroupList, resolvePeopleGroupList } from '@map/lists/peopleGroupList.js'
|
||||
import PosterWall from '@map/components/poster/PosterWall.vue'
|
||||
import { resolveAssetsBase } from '@map/utils/embedBase.js'
|
||||
// The reader's language, for the DATA fetch below. Not for interface text — that goes through t().
|
||||
import { getRuntimeLocale, detectLocale } from '@map/i18n/index.js'
|
||||
// Named imports: only the list arrays ship in the bundle; the file's bookkeeping fields stay out.
|
||||
import { zonesForList } from './data/zones-for-list.js'
|
||||
// The SAME normalize+evaluate pipeline the sibling map profile uses to turn the live
|
||||
|
|
@ -146,7 +148,17 @@ async function fetchListRecords(list) {
|
|||
// DO have a portrait, so the omission cost every card its photo.
|
||||
const fields = 'slug,name,country_code,wagf_region,wagf_block,rop1,population,religion,'
|
||||
+ 'image_url,primary_language'
|
||||
const resp = await fetch(`${API_BASE}/api/people-groups/list?fields=${fields}&lang=en`, { cache: 'no-store' })
|
||||
// ★ THE READER'S LANGUAGE, NOT ENGLISH. This was `&lang=en`, hardcoded, so the on-screen prayer
|
||||
// cards showed English people-group and country names whatever language the reader picked —
|
||||
// while every word of the interface AROUND them was translated. Found in gospel's the agent-lens
|
||||
// audit (card 3, 2026-09-28). The resolution order is the one the sibling plugins already use
|
||||
// (people-groups-grid.vue:276, research-map-plus-grid.vue:147): what the host set at runtime,
|
||||
// then what the page itself says.
|
||||
// ⚠ SEPARATE FROM THE PRINTED POSTER. The poster generator fetches lang=en of its own accord
|
||||
// (generate.mjs:93) and that is an open question for the agent about what a print artifact is
|
||||
// for. This line is the ON-SCREEN wall only.
|
||||
const lang = getRuntimeLocale() || detectLocale()
|
||||
const resp = await fetch(`${API_BASE}/api/people-groups/list?fields=${fields}&lang=${lang}`, { cache: 'no-store' })
|
||||
if (!resp.ok) throw new Error(`people-groups fetch failed (${resp.status})`)
|
||||
const records = normalizeRecords(await applyPeopleGroupList(extractRecords(await resp.json()), profileConfig))
|
||||
// ★ pg_slugs BYPASSES the shared evaluator — MEASURED live (2026-09-23): 12 of the 27
|
||||
|
|
|
|||
|
|
@ -1976,7 +1976,11 @@ async function enrichLegendFromRecords() {
|
|||
if (!API_BASE) return
|
||||
try {
|
||||
const fields = 'slug,name,country_code,wagf_region,wagf_block,rop1,population,latitude,longitude'
|
||||
const resp = await fetch(`${API_BASE}/api/people-groups/list?fields=${fields}&lang=en`, { cache: 'no-store' })
|
||||
// ★ THE READER'S LANGUAGE. This was `&lang=en` while the two packet fetches above already used
|
||||
// packetLang(), and the records it builds are NOT internal bookkeeping: countryNameMap feeds
|
||||
// resolveTerritory(), so these names are what the reader sees on territory labels and in the
|
||||
// legend. Same defect as poster-wall.vue's card-3 fetch, one file over, found while fixing it.
|
||||
const resp = await fetch(`${API_BASE}/api/people-groups/list?fields=${fields}&lang=${packetLang()}`, { cache: 'no-store' })
|
||||
if (!resp.ok) throw new Error(`list ${resp.status}`)
|
||||
const records = normalizeRecords(await applyPeopleGroupList(extractRecords(await resp.json()), profileConfig))
|
||||
countryNameMap = buildCountryNameMap(records)
|
||||
|
|
@ -2283,7 +2287,11 @@ onMounted(async () => {
|
|||
// session. The default HTTP cache honours whatever the API's own headers say, which is the
|
||||
// server's call to make rather than this client's. A reader who needs today's data gets it from
|
||||
// the API's cache headers; a reader reloading a page gets an instant map.
|
||||
const recordsPromise = fetch(`${API_BASE}/api/people-groups/list?fields=${_fields}&lang=en`)
|
||||
// ★ THE READER'S LANGUAGE (card 3, 2026-09-28). This is the MAIN records fetch — the rows it
|
||||
// returns become the pins, their popups and the list, so `&lang=en` here meant the map's own
|
||||
// people-group names stayed English under ?lang=ar while the interface around them mirrored
|
||||
// and translated. The three fetches in this file now all read packetLang().
|
||||
const recordsPromise = fetch(`${API_BASE}/api/people-groups/list?fields=${_fields}&lang=${packetLang()}`)
|
||||
.then((r) => { if (!r.ok) throw new Error(`list ${r.status}`); return r.json() })
|
||||
|
||||
// ★ ALL THREE BOUNDARY DOWNLOADS START HERE and none is awaited yet. They are held as promises so
|
||||
|
|
|
|||
|
|
@ -830,7 +830,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-3Zf4RddwXaRBBFYC1jPIJytxufXJNbPR5vV/JUnid9ke6oak2YrC1IoY6JWR+Ya7",
|
||||
"integrity": "sha384-DapKYELfUPRScSt6liLui6hXvCGQAIWWiv7kEhkiNOxktQwfkhS0lMiDO7aq3AZO",
|
||||
"elements": [
|
||||
"my-upg-100-list-map"
|
||||
],
|
||||
|
|
@ -852,7 +852,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-3Zf4RddwXaRBBFYC1jPIJytxufXJNbPR5vV/JUnid9ke6oak2YrC1IoY6JWR+Ya7\" 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-DapKYELfUPRScSt6liLui6hXvCGQAIWWiv7kEhkiNOxktQwfkhS0lMiDO7aq3AZO\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -867,7 +867,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-3Zf4RddwXaRBBFYC1jPIJytxufXJNbPR5vV/JUnid9ke6oak2YrC1IoY6JWR+Ya7\" 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-DapKYELfUPRScSt6liLui6hXvCGQAIWWiv7kEhkiNOxktQwfkhS0lMiDO7aq3AZO\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -883,7 +883,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-3Zf4RddwXaRBBFYC1jPIJytxufXJNbPR5vV/JUnid9ke6oak2YrC1IoY6JWR+Ya7\" 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-DapKYELfUPRScSt6liLui6hXvCGQAIWWiv7kEhkiNOxktQwfkhS0lMiDO7aq3AZO\" 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>"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
|
|||
|
|
@ -830,7 +830,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-3Zf4RddwXaRBBFYC1jPIJytxufXJNbPR5vV/JUnid9ke6oak2YrC1IoY6JWR+Ya7",
|
||||
"integrity": "sha384-DapKYELfUPRScSt6liLui6hXvCGQAIWWiv7kEhkiNOxktQwfkhS0lMiDO7aq3AZO",
|
||||
"elements": [
|
||||
"my-upg-100-list-map"
|
||||
],
|
||||
|
|
@ -852,7 +852,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-3Zf4RddwXaRBBFYC1jPIJytxufXJNbPR5vV/JUnid9ke6oak2YrC1IoY6JWR+Ya7\" 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-DapKYELfUPRScSt6liLui6hXvCGQAIWWiv7kEhkiNOxktQwfkhS0lMiDO7aq3AZO\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -867,7 +867,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-3Zf4RddwXaRBBFYC1jPIJytxufXJNbPR5vV/JUnid9ke6oak2YrC1IoY6JWR+Ya7\" 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-DapKYELfUPRScSt6liLui6hXvCGQAIWWiv7kEhkiNOxktQwfkhS0lMiDO7aq3AZO\" 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>"
|
||||
}
|
||||
},
|
||||
{
|
||||
|
|
@ -883,7 +883,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-3Zf4RddwXaRBBFYC1jPIJytxufXJNbPR5vV/JUnid9ke6oak2YrC1IoY6JWR+Ya7\" 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-DapKYELfUPRScSt6liLui6hXvCGQAIWWiv7kEhkiNOxktQwfkhS0lMiDO7aq3AZO\" 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>"
|
||||
}
|
||||
}
|
||||
]
|
||||
|
|
|
|||
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-3Zf4RddwXaRBBFYC1jPIJytxufXJNbPR5vV/JUnid9ke6oak2YrC1IoY6JWR+Ya7" crossorigin="anonymous"></script>
|
||||
<script src="../my-upg-100-list.js" integrity="sha384-DapKYELfUPRScSt6liLui6hXvCGQAIWWiv7kEhkiNOxktQwfkhS0lMiDO7aq3AZO" 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-3Zf4RddwXaRBBFYC1jPIJytxufXJNbPR5vV/JUnid9ke6oak2YrC1IoY6JWR+Ya7" crossorigin="anonymous"></script>
|
||||
<script src="../my-upg-100-list.js" integrity="sha384-DapKYELfUPRScSt6liLui6hXvCGQAIWWiv7kEhkiNOxktQwfkhS0lMiDO7aq3AZO" 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-3Zf4RddwXaRBBFYC1jPIJytxufXJNbPR5vV/JUnid9ke6oak2YrC1IoY6JWR+Ya7" crossorigin="anonymous"></script>
|
||||
<script src="../my-upg-100-list.js" integrity="sha384-DapKYELfUPRScSt6liLui6hXvCGQAIWWiv7kEhkiNOxktQwfkhS0lMiDO7aq3AZO" crossorigin="anonymous"></script>
|
||||
|
||||
<script>
|
||||
// Mapbox token resolution — the A3 ladder, in precedence order:
|
||||
|
|
|
|||
Loading…
Reference in a new issue