Commit graph

4136 commits

Author SHA1 Message Date
Doxa Maps
011afa6440 Merge remote-tracking branch 'origin/development' into repo/mobile-app-howto 2026-09-30 10:27:50 +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
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
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
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
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
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
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
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
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
Doxa Maps
e61bebe75d Merge remote-tracking branch 'origin/development' into regions/pins-phone-poster 2026-09-30 09:08:02 +00:00
Doxa Maps
1cf5276724 Merge remote-tracking branch 'origin/upg100/perrow-deselect' into regions/pins-phone-poster
# Conflicts:
#	public/dx-maps/country-posters/countries-map/index.html
#	public/dx-maps/country-posters/country-poster-wall/index.html
#	public/dx-maps/country-posters/country-posters-mfe/index.html
#	public/dx-maps/country-posters/country-posters.js
#	public/dx-maps/doxa-maps-spa/manifest.json
#	public/dx-maps/manifest.json
#	public/dx-maps/my-upg-100-list/my-upg-100-list.js
#	public/dx-maps/my-upg-100-list/poster-wall/index.html
#	public/dx-maps/my-upg-100-list/upg-100-list/index.html
#	public/dx-maps/my-upg-100-list/upg-100-mfe/index.html
#	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 09:08:01 +00:00
Doxa Maps
71127c5f01 Rebuild gospel-resources without the stray catalogue, and regenerate the tree 2026-09-30 09:07:06 +00:00
Doxa Maps
49726ca785 Merge origin/development (a80f4fd6e, the pair) into upg100/perrow-deselect, and rebuild country-posters, my-upg-100-list and regions-dashboard from the merged source 2026-09-30 09:06:49 +00:00
Doxa Maps
0dd18029e2 Merge origin/development into studio/a-bottom 2026-09-30 09:06:35 +00:00
Doxa Maps
ce8d67e1e6 Gospel Resources: a comment no longer names another map's translator area, which shipped that whole catalogue 2026-09-30 09:03:58 +00:00
Doxa Maps
9129e6d95a Merge remote-tracking branch 'origin/development' into HEAD
# 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 09:01:13 +00:00
Doxa Maps
7c71848b0e Rebuild train #3's seven bundles from the merged source (the legend sheet and the tab layout), and regenerate the tree and SRI 2026-09-30 09:00:43 +00:00
Doxa Maps
8aa2a3cd38 Merge the tab layout's ☰ lift and drawer order into the train (deep-research-plugin/fablift) 2026-09-30 08:58:07 +00:00
Doxa Maps
ad6cbc1945 Merge origin/development into studio/a-bottom 2026-09-30 08:58:06 +00:00
Doxa Maps
0562a187dd Regions pins: the highlighted-region radius puts the zoom interpolate at the top, the only form MapLibre parses 2026-09-30 08:55:59 +00:00
Doxa Maps
a80f4fd6e6 Merge origin/development (31e52876d) into upg100/land-pair, and rebuild the five reached bundles from the merged source 2026-09-30 08:55:16 +00:00
Doxa Maps
a9f689f3c5 Rebuild cities-internet and gospel-resources for the legend button's words, and regenerate the tree 2026-09-30 08:53:24 +00:00
Doxa Maps
c9c9822970 Rebuild the tab layout's consumers (doxa-maps-spa, plugin-studio) for the ☰ lift and the drawer order
Then the tree and SRI; pages and manifests change only their integrity.
2026-09-30 08:52:53 +00:00
Doxa Maps
4eebc7c894 Rebuild the legend-sheet bundles for the bottom-of-map standard, and regenerate the tree and SRI 2026-09-30 08:52:39 +00:00
Doxa Maps
32564194e8 Merge remote-tracking branch 'origin/development' into HEAD
# Conflicts:
#	public/dx-maps/dashboard-plus-grid/dashboard-plus-grid.js
#	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/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 08:52:09 +00:00
Doxa Maps
5b90a07fbc Gospel Resources and Cities with Internet: Expand legend / Collapse legend in each map's own keys, in all 11 locales 2026-09-30 08:50:31 +00:00