Commit graph

4153 commits

Author SHA1 Message Date
Doxa Maps
d2c15518a1 Merge remote-tracking branch 'origin/development' into regions/map-print-template
# Conflicts:
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/doxa-research-map/doxa-research-map.js
#	public/dx-maps/doxa-research-map/research-map/index.html
#	public/dx-maps/doxa-research-map/research-map/maplibre/index.html
#	public/dx-maps/manifest.json
#	public/dx-maps/regions-dashboard/region-dashboards/index.html
#	public/dx-maps/regions-dashboard/regions-dashboard.js
#	public/dx-maps/regions-dashboard/regions-list/index.html
#	public/dx-maps/regions-dashboard/regions-mfe/index.html
2026-09-30 10:41:42 +00:00
Doxa Maps
c7cec4a091 Merge remote-tracking branch 'origin/regions/rcm-credit-fold' into regions/map-print-template 2026-09-30 10:41:39 +00:00
Doxa Maps
911f0878a6 Merge remote-tracking branch 'origin/development' into upg100/mark5 2026-09-30 10:35:51 +00:00
Doxa Maps
a8fa0c91a9 Map-print template: the prayer line is one first-strong isolate, so an Arabic footer reads right to left 2026-09-30 10:28:50 +00:00
Doxa Maps
011afa6440 Merge remote-tracking branch 'origin/development' into repo/mobile-app-howto 2026-09-30 10:27:50 +00:00
Doxa Maps
b4d26d1940 Merge remote-tracking branch 'origin/development' into upg100/mark5
# Conflicts:
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/doxa-research-map/doxa-research-map.js
#	public/dx-maps/doxa-research-map/research-map/index.html
#	public/dx-maps/doxa-research-map/research-map/maplibre/index.html
#	public/dx-maps/manifest.json
2026-09-30 10:24:16 +00:00
Doxa Maps
d95c3b9820 Map-print template: the verse numbers read left to right in Arabic, the map's name reaches Simple Research, and the prayer line is fetched ahead
In a right-to-left footer the range "10:11–15" printed as "15–10:11": the numbers of each reference now sit in a
left-to-right isolate (packet-render's own split of book and numbers). The research-map-plus-grid composite
forwards the host's mapTitle to its map, which it did not pass on before. And the packet strings are fetched
when the map mounts (when the browser is idle), so the print's 3 s wait reads them from the cache instead of
dropping the line on a slow network.
2026-09-30 10:20:27 +00:00
Doxa Maps
b1fdbf8a18 Rebuild people-groups-grid, dashboard-plus-grid and big-picture from the merged source in the lock, and regenerate the tree 2026-09-30 10:15:17 +00:00
Doxa Maps
1b7b70101c Merge remote-tracking branch 'origin/development' into simpleresearch-plugin/dxl-style
# Conflicts:
#	public/dx-maps/dashboard-plus-grid/dashboard-plus-grid/default/index.html
#	public/dx-maps/dashboard-plus-grid/dashboard-plus-grid/index.html
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/manifest.json
2026-09-30 10:14:23 +00:00
Doxa Maps
23597b2364 Regions maps on phones: the credit fold keeps looking until the credit first shows, so it folds in every language 2026-09-30 10:11:45 +00:00
Doxa Maps
fd3a399135 Rebuild people-groups-grid, dashboard-plus-grid and big-picture from the source, then the tree and SRI 2026-09-30 10:10:59 +00:00
Doxa Maps
3548c73c09 On a phone the grid's pill search keeps its own 15.2px text, so the placeholder fits beside the round ☰
With the ☰ resting in its corner the row pads its footprint on both sides, leaving the field about
230px wide at 390, where the live list's 19.5px text doesn't fit the placeholder. Above 576px the field
keeps the live list's size.
2026-09-30 10:10:00 +00:00
Doxa Maps
8e6664539f Merge origin/development into studio/rudder-circle 2026-09-30 10:08:20 +00:00
Doxa Maps
d8d3ab48c7 Merge remote-tracking branch 'origin/development' into repo/mobile-app-howto 2026-09-30 10:07:55 +00:00
Doxa Maps
8444aa64b0 Map-print template: the prayer line waits at most 3 s for the packet strings, so a stalled network cannot hold the export 2026-09-30 10:05:36 +00:00
Doxa Maps
40c9b02907 Map-print template: rebuilt on development (the re-pinned packet strings), and the loading card is a status, not a dialog 2026-09-30 10:04:40 +00:00
Doxa Maps
f3fdf4bf37 Mobile apps from plugins: a how-to, with Deep Research as the worked example
documentation/how-to-build-mobile-apps-from-plugins/README.md explains why Deep Research
(doxa-maps-spa, its app preset) is the plugin to wrap first: the seven production maps in one
phone-ready shell, token-free on MapLibre. It then walks the whole path: tools, the wiring check,
one command, what each step does, another plugin as the app, making it your own, and fixes.

The one command needed two small changes; the default app is unchanged:
- internal/set-app-start-page.mjs takes APP_START=<plugin>/<screen>[/<preset>] and opens that page
  instead of the UPG-100 list. Unset, it behaves and marks the page exactly as before. A malformed
  value, a page missing from the build, or links that would not resolve are refused, as before.
- package.json: phone:from-tree is sync, start page, verify, assemble, install from the committed
  tree, with no full rebuild (bun run build refuses without BUILD_ALLOW=1).
  phone:deep-research is phone:from-tree with Deep Research as the start page.

how-to.md links the guide, and two of its lines are corrected: webDir is public/dx-maps/, and
apk:debug's first step is the full build, which asks for BUILD_ALLOW=1.

Checked, with no Android tools: the start page written for doxa-maps-spa/doxa-maps-spa/app, then
the app root served and loaded in the shared browser at 390 and 1280. It showed the gallery
element, 15 tabs (the seven maps and the experimental ones) and a drawn map, with 0 console errors
and 0 failed requests. --check passed for APP_START and failed for the default until it was
restored; the default run still writes the UPG-100 page with its original marker. The Gradle and
adb steps are those bun run phone already uses; they were not run here.
2026-09-30 10:04:34 +00:00
Doxa Maps
15915d9537 Merge origin/development into gospel/credit-corner
# Conflicts:
#	public/dx-maps/cities-internet/cities-internet.js
#	public/dx-maps/cities-internet/connectivity-list/index.html
#	public/dx-maps/cities-internet/connectivity-map/index.html
#	public/dx-maps/cities-internet/data-tables/index.html
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/gospel-resources/charts/index.html
#	public/dx-maps/gospel-resources/data-tables/index.html
#	public/dx-maps/gospel-resources/gospel-dashboard/index.html
#	public/dx-maps/gospel-resources/gospel-resources.js
#	public/dx-maps/gospel-resources/resources-list/index.html
#	public/dx-maps/gospel-resources/resources-map/index.html
#	public/dx-maps/manifest.json
2026-09-30 10:02:48 +00:00
Doxa Maps
23b96dfe6c Prayer packet: point 4's sheet carries no Metacamp footer
The new READ THE WORD sheet reused the points page's footer, so a packet
printed three Metacamp attributions where check:packet-browser counts
exactly two (the wheel and the points). The sheet already carries its
own credit line, the scripture's; the footer goes. Rebuilt the five
bundles that compile the renderer; the tree and SRI regenerated.
2026-09-30 09:59:29 +00:00
Doxa Maps
c0255fa8bc Merge remote-tracking branch 'origin/development' into regions/map-print-template
# Conflicts:
#	public/dx-maps/doxa-maps-spa/doxa-maps-spa.js
#	public/dx-maps/doxa-maps-spa/doxa-maps-spa/app/index.html
#	public/dx-maps/doxa-maps-spa/doxa-maps-spa/index.html
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/doxa-research-map/doxa-research-map.js
#	public/dx-maps/doxa-research-map/research-map/index.html
#	public/dx-maps/doxa-research-map/research-map/maplibre/index.html
#	public/dx-maps/manifest.json
2026-09-30 09:58:44 +00:00
Doxa Maps
efcd08a40c Share policy: record the regions dashboard's one share button 2026-09-30 09:57:20 +00:00
Doxa Maps
711a8b3e64 Rebuild people-groups-grid, dashboard-plus-grid and big-picture from the source, then the tree and SRI 2026-09-30 09:56:50 +00:00
Doxa Maps
72fb88a6ea The gallery gives each tab its map name (mapTitle) for the map-print header 2026-09-30 09:55:39 +00:00
Doxa Maps
56c6eacca5 The grid's search row keeps clear of the round ☰ only while the ☰ rests on it, and spans the row once the ☰ rides above the legend
The ☰ rests at the bottom of a phone's first screen until the map's legend sheet announces itself, so
while the map loads, or for good if it fails, it covered the start of the full-width field. The row now
pads by the ☰'s footprint on both sides while the layout's --vtl-fab-lift is 0, and not at all once the
☰ lifts, easing with the ☰'s own .2s move (none under reduced motion).
2026-09-30 09:50:10 +00:00
Doxa Maps
96cb58daaa Rebuild cities-internet and gospel-resources for the credit's fold clock, and regenerate the tree 2026-09-30 09:49:13 +00:00
Doxa Maps
6ff12ac0ae Regions maps on phones: the credit folds to its (i) after 3 s, mirrors in RTL, and MapLibre's logo goes
The attribution rule for a map without a footer sheet: the credit keeps the bottom corner (bottom-left in
right-to-left, where the round button sits bottom-right), above the scroll-edge strips; on a phone it folds
to its (i) three seconds after it first shows, and a tap expands it again; MapLibre's optional logo is
hidden, as its licence allows. Desktop is unchanged.
2026-09-30 09:48:02 +00:00
Doxa Maps
59fd232a1f Merge remote-tracking branch 'origin/development' into HEAD 2026-09-30 09:45:11 +00:00
Doxa Maps
5180e5949b Rebuild people-groups-grid, dashboard-plus-grid and big-picture from the source, then the tree and SRI 2026-09-30 09:44:28 +00:00
Doxa Maps
02a5ea8e7e Merge remote-tracking branch 'origin/development' into HEAD
# Conflicts:
#	public/dx-maps/cities-internet/cities-internet.js
#	public/dx-maps/cities-internet/connectivity-list/index.html
#	public/dx-maps/cities-internet/connectivity-map/index.html
#	public/dx-maps/cities-internet/data-tables/index.html
#	public/dx-maps/doxa-maps-spa/doxa-maps-spa.js
#	public/dx-maps/doxa-maps-spa/doxa-maps-spa/app/index.html
#	public/dx-maps/doxa-maps-spa/doxa-maps-spa/index.html
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/doxa-research-map/doxa-research-map.js
#	public/dx-maps/doxa-research-map/research-map/index.html
#	public/dx-maps/doxa-research-map/research-map/maplibre/index.html
#	public/dx-maps/doxa-simple-map/doxa-simple-map.js
#	public/dx-maps/doxa-simple-map/doxa-simple-map/adoption/index.html
#	public/dx-maps/doxa-simple-map/doxa-simple-map/engagement/index.html
#	public/dx-maps/doxa-simple-map/doxa-simple-map/index.html
#	public/dx-maps/doxa-simple-map/doxa-simple-map/prayer/index.html
#	public/dx-maps/manifest.json
2026-09-30 09:43:31 +00:00
Doxa Maps
bd1239a496 The credit's fold clock starts once the basemap credit has joined geoBoundaries 2026-09-30 09:43:08 +00:00
Doxa Maps
69e0e67075 Prayer packet: point 4 gets its own sheet, Mark 5:1-20 in full with verse 19 in bold
Point 4 (READ THE WORD) again prints Mark 5:1-20 in full, the texts the
packet shipped before a80f4fd6e (the public-domain versions on file for
en, es, fr, de, ru and ar; the English WEB text elsewhere, as before).
Verse 19 is in bold: point4_passage_bold holds it verbatim from the same
text, so the bold is a substring match and never a second rendering of
scripture. THE HEAVENLY FATHER'S HEART follows the passage.

The passage at a readable size (24px) and the twelve points at theirs do
not share one sheet, so point 4's reading has its own page right after the
points ("4. READ THE WORD"), and the points page gains more space between
points. Both sheets fit in all 11 locales.

The gates count the new sheet (packet-render +3, poster-prints 5 sheets,
a1-structure "... points · word") and assert the passage in full again,
verse 19 in bold and the seven readings. packet-strings.json is re-pinned,
and the five bundles that compile the pin are rebuilt (country-posters,
doxa-research-map, my-upg-100-list, regions-dashboard, upg-neighbor),
with the tree and SRI regenerated.
2026-09-30 09:41:43 +00:00
Doxa Maps
bb145b5c1c Rebuild cities-internet and gospel-resources for the compact credit, and regenerate the tree 2026-09-30 09:40:22 +00:00
Doxa Maps
0e282189b0 Rebuild the Plugin Studio for the Rudder circle, and regenerate the tree and SRI 2026-09-30 09:37:24 +00:00
Doxa Maps
70c716057a One map-print template, piloted on Simple Research: landscape, the map's name, the legend beside it, a prayer line
The map's "Export poster…" now prints through a shared template: always landscape Letter; a header with the
map's name (from the host's profile-config mapTitle), the view on screen as its subtitle; the legend as a
side panel; and a footer line from the prayer packet's final page (prayer point 6 with Luke 10:2 and
John 10:11-15, in the reader's language). While it renders, a loading screen like the poster wall's shows
the renderer's own progress. Without a mapTitle the view on screen stays the title, as before.
2026-09-30 09:36:48 +00:00
Doxa Maps
a66b120185 The grid's search and filters look like the live DX Life list: a pill search field, Show filters as an uppercase link, and 37px dropdowns
The values are the live /research list's own computed styles, measured at 390 and 1440. The search
field spans its row (up to 600px), since the round ☰ now rides above the map's legend sheet and no
longer rests on it. Every new rule is under .pgg-root, so Big Picture's header, which shares SearchBar
and FilterDropdown, is untouched; there the grid's search and filters are off. The filters still open
by default.
2026-09-30 09:36:45 +00:00
Doxa Maps
71be66803d Merge remote-tracking branch 'origin/development' into upg100/mark5 2026-09-30 09:32:34 +00:00
Doxa Maps
86034174b0 WIP Mark 5 page (source) 2026-09-30 09:32:33 +00:00
Doxa Maps
cfa26b7fbd Merge origin/development (train #3) into gospel/credit-corner 2026-09-30 09:32:09 +00:00
Doxa Maps
0f5f991dae Gospel Resources and Cities with Internet: one compact licence credit at the bottom end corner, folded after 3 s 2026-09-30 09:32:08 +00:00
Doxa Maps
fdb06b8b56 Phone pages: the app's height no longer changes as the address bar hides or shows
The host page of every full-page map (and the Plugin Studio) sized the
element to the viewport in a way that tracks the phone's address bar:
- the built fixed-viewport leaf used position:fixed with inset:0, which
  follows the DYNAMIC viewport, so the map and its legend sheet resized
  on every scroll that moved the bar;
- the Plugin Studio page and the dev server's leaf and studio pages used
  100vh, the LARGE viewport, taller than the view while the bar shows, so
  the page itself scrolled by the bar's height and the app seemed to
  resize.
All four now use height:100svh (100% first as the fallback where svh is
unknown), anchored top-left, and set --profile-min-h:0 so ProfileLoader's
100dvh floor cannot grow the element when the bar hides. On a desktop svh
equals the viewport, so nothing moves there. Scroll-page leaves (the
cap-4 stacks) are unchanged.

Regenerated the tree: 51 leaf pages and the Plugin Studio page change
only this rule and its comment; no bundle changes.
2026-09-30 09:31:46 +00:00
Doxa Maps
414a1929ae Plugin Studio: Rudder is a small mic circle in its corner, with no label
The corner widget's bubble was a pill that read "Rudder · voice to text" and
widened to 300 px to show the words while recording. It is now a 44 px circle
with the mic (a chevron while its panel is open): the label stays its
accessible name and tooltip, and the words show in the panel. Recording still
shows on the collapsed circle: a red ring that pulses, a red dot, and the mic
lit while speech is heard.
2026-09-30 09:31:27 +00:00
Doxa Maps
3e1eeffac5 Rebuild the seven ⓘ bundles for the short-description panel, then the tree and SRI 2026-09-30 09:29:05 +00:00
Doxa Maps
c2131fe1c5 The ⓘ panel leads with the map's short description, and the strategy opens on request
At the top of every "What can this map do?" panel: a "Short description" header and the map's
intro, on a pale band with the Rudder blue as its accent bar and the text in a darker shade of that
blue (5.6:1), so the eye finds it first. Below it, the strategy is a collapsed "Strategy ▾" disclosure
(a native details element, collapsed again on every open) instead of a tab; the examples follow
wherever a map has them. The tab machinery goes. New label mapInfo.shortDescription in all 11
locales.
2026-09-30 09:26:58 +00:00
Doxa Maps
3ca828421f Rebuild train #3's bundles and the re-pin's importers from the merged source, and regenerate the tree and SRI 2026-09-30 09:24:52 +00:00
Doxa Maps
a7351ffb80 Merge upg100's packet-strings re-pin into train #3 2026-09-30 09:23:09 +00:00
Doxa Maps
b6af523fbe Merge origin/development into studio/a-bottom 2026-09-30 09:23:08 +00:00
Doxa Maps
0daf6db225 Re-pin packet-strings.json: non-English packet prints load their language again
The pair (a80f4fd6e) changed library/scripts/posters/packet-strings.json
(point 4's reading list) without re-running the pin script, so the served
copy (assets/lib/packet-strings.json) no longer matched
PACKET_STRINGS_SHA384. The print then refused it and fell back to the
bundled English block: every non-English packet printed in English.
check:poster-render-pinned has failed on development since.

Re-pinned (library/packet/poster-render.integrity.js, packet-strings only;
the generator and places pins are unchanged), and rebuilt the five bundles
that compile the pin in: country-posters, doxa-research-map,
my-upg-100-list, regions-dashboard, upg-neighbor. The tree and SRI
regenerated. check:poster-render-pinned: FAIL (2) on 7744a8418, PASS here.
2026-09-30 09:20:22 +00:00
Doxa Maps
f065ee504e Merge origin/development into gospel/legend-expand
# Conflicts:
#	public/dx-maps/cities-internet/cities-internet.js
#	public/dx-maps/cities-internet/connectivity-list/index.html
#	public/dx-maps/cities-internet/connectivity-map/index.html
#	public/dx-maps/cities-internet/data-tables/index.html
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/gospel-resources/charts/index.html
#	public/dx-maps/gospel-resources/data-tables/index.html
#	public/dx-maps/gospel-resources/gospel-dashboard/index.html
#	public/dx-maps/gospel-resources/gospel-resources.js
#	public/dx-maps/gospel-resources/resources-list/index.html
#	public/dx-maps/gospel-resources/resources-map/index.html
#	public/dx-maps/manifest.json
2026-09-30 09:15:03 +00:00
Doxa Maps
61f52d79ea Rebuild train #3's seven bundles from the merged source, and regenerate the tree and SRI 2026-09-30 09:10:09 +00:00
Doxa Maps
7744a8418d Rebuild country-map, regions-dashboard, country-posters and my-upg-100-list from the merged source in the lock (pins, taps, phone maps, phone poster default) 2026-09-30 09:09:56 +00:00