Resolving package.json conflicts by unioning unique lines is right for a file that holds one entry per line. Applied to ordinary source it duplicates declarations, because both sides of a hunk keep their copy and nothing de-duplicates across the join. Eleven plugin entry points ended with the same import twice, and the poster renderer with two identical `const sheet`. Each is a SyntaxError: every one of those bundles would have failed to build, and the poster export would not run. Found by parse-checking every changed .js against the merge base, not by the gates -- gates:pre passed 101 of 102 with all twelve files broken, because its parse gates do not cover plugin entry points. One measurement trap worth recording. `node --check` on a .js file parses it as CommonJS, so a bare `import` is a syntax error and ALL 28 entry points appear broken, on development too. That reading says the tree is on fire and is simply wrong. Copying each file to a .mjs and checking that parses it as a module, which separates the eleven that are genuinely broken here from the rest that are fine.
21 lines
798 B
JavaScript
21 lines
798 B
JavaScript
import { defineMapElement } from '@map/elements/defineMapElement.js'
|
||
/**
|
||
* plugin-designs/all-people-groups/index.js
|
||
*
|
||
* Bundle entry for the ALL PEOPLE GROUPS map — every people group on earth
|
||
* (peoplegroups.org, 12,379 group×country rows) around the DOXA set.
|
||
*
|
||
* Usage from a host page:
|
||
* <script src="/doxa-maps/all-people-groups/all-people-groups.js"></script>
|
||
* <all-people-groups profile-config='{"profile":"all-people-groups"}'></all-people-groups>
|
||
*/
|
||
|
||
const profileModules = import.meta.glob('./*.vue')
|
||
|
||
const AllPeopleGroupsElement = defineMapElement({ profileModules })
|
||
|
||
if (typeof customElements !== 'undefined' && !customElements.get('all-people-groups')) {
|
||
customElements.define('all-people-groups', AllPeopleGroupsElement)
|
||
}
|
||
|
||
export default AllPeopleGroupsElement
|