@bongos/core 1.21.75 → 1.21.77

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (43) hide show
  1. package/.bongos-core.json +65 -45
  2. package/clients/bongos-client/README.md +1 -1
  3. package/clients/bongos-client/bongos-client.global.js +2 -0
  4. package/clients/bongos-client/index.cjs +2 -0
  5. package/clients/bongos-client/index.d.ts +3 -0
  6. package/clients/bongos-client/index.mjs +2 -0
  7. package/docs/api/openapi.json +50 -3
  8. package/docs/api-reference.md +3 -2
  9. package/docs/copy-inventory.md +45 -42
  10. package/docs/copy-registry.json +76 -49
  11. package/docs/module-api-changelog.md +4 -0
  12. package/docs/page-inventory.json +16 -8
  13. package/docs/page-readings.json +1449 -1428
  14. package/modules/hall-ui/public/craft-mode.js +3 -1
  15. package/modules/hall-ui/public/page-notes.css +150 -0
  16. package/modules/hall-ui/public/page-notes.js +30 -5
  17. package/modules/hall-ui/public/studio.css +15 -0
  18. package/modules/hall-ui/public/studio.html +6 -0
  19. package/modules/hall-ui/public/studio.js +38 -4
  20. package/modules/hall-ui/public/style.css +6 -117
  21. package/modules/page-notes/db.js +19 -0
  22. package/modules/page-notes/migrations/page_notes_002_surface_index.sql +12 -0
  23. package/modules/page-notes/notes.js +25 -2
  24. package/modules/page-notes/routes/page-notes.js +9 -0
  25. package/modules/public-landing/public/account.html +2 -0
  26. package/modules/public-landing/public/assets/artist-review.js +107 -0
  27. package/modules/public-landing/public/contact.html +2 -0
  28. package/modules/public-landing/public/guild.html +2 -0
  29. package/modules/public-landing/public/index.html +2 -0
  30. package/modules/public-landing/public/invitations.html +2 -0
  31. package/modules/public-landing/public/privacy.html +2 -0
  32. package/modules/public-landing/public/projects.html +2 -0
  33. package/modules/public-landing/public/terms.html +2 -0
  34. package/modules/ui-design/kit/serve.js +32 -0
  35. package/package-lock.json +2 -2
  36. package/package.json +1 -1
  37. package/release-notes.json +12 -0
  38. package/src/module-api.js +1 -1
  39. package/tests/artist_review.mjs +231 -0
  40. package/tests/hall_studio_home.mjs +39 -1
  41. package/tests/landing_legal_pages.mjs +2 -1
  42. package/tests/page_notes_db.mjs +28 -1
  43. package/tests/page_notes_panel.mjs +9 -3
@@ -79,7 +79,7 @@ test('THE PALETTE: in the top bar in Artistry alone, right before the switch, an
79
79
  assert.deepEqual(p.tools().map((t) => t.id), ['craft-tool-palette', 'craft-tool-paintbrush'], 'the palette, then the paintbrush (task 1004497)');
80
80
  assert.equal(p.tools()[0].nextSibling, p.tools()[1], 'the palette comes first');
81
81
  assert.equal(p.tools()[1].nextSibling, p.sw, 'and the pair sits right before the mode switch');
82
- assert.equal(p.tools()[0].getAttribute('aria-label'), 'Write feedback on this page');
82
+ assert.equal(p.tools()[0].getAttribute('aria-label'), 'Artist review: write feedback on this page', 'one name with the public site\'s button (task 1004499)');
83
83
  for (const m of ['building', 'governing']) {
84
84
  p.craft.choose(m);
85
85
  assert.equal(p.tools().length, 0, `no palette in ${m}`);
@@ -141,8 +141,14 @@ test('the doc names its page the way the page inventory does', () => {
141
141
  assert.deepEqual(JSON.parse(JSON.stringify(R.page())), { id: 'builders:studio', path: '/studio', title: 'Studio' });
142
142
  });
143
143
 
144
- test('colours live in style.css, and the panel and tool are styled there', () => {
144
+ test('colours live in the sheets, and the panel and tool are styled there', () => {
145
145
  assert.doesNotMatch(NOTES, /#[0-9a-f]{3,6}\b|rgba?\(/i, 'no colour literal in the panel script');
146
146
  const css = fs.readFileSync(path.join(HALL, 'style.css'), 'utf8');
147
- for (const sel of ['.craft-tool {', '.pn {', '.pn__panel {', '.pn__text {', '.pn-doc__img {']) assert.ok(css.includes(sel), sel);
147
+ assert.ok(css.includes('.craft-tool {'), '.craft-tool {');
148
+ // Task 1004499: the panel has its own sheet so the public site can wear it;
149
+ // the hall pulls it in through style.css, ahead of every rule.
150
+ const pn = fs.readFileSync(path.join(HALL, 'page-notes.css'), 'utf8');
151
+ for (const sel of ['.pn {', '.pn__panel {', '.pn__text {', '.pn-doc__img {']) assert.ok(pn.includes(sel) && !css.includes(sel), sel);
152
+ const at = css.indexOf('@import url("page-notes.css");');
153
+ assert.ok(at !== -1 && at < css.indexOf('{'), 'style.css imports the sheet before any rule');
148
154
  });