@mindful-web/marko-web 1.70.3 → 1.72.2

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 (127) hide show
  1. package/components/bot-scores.marko.js +2 -2
  2. package/components/browser-component/script.marko.js +2 -2
  3. package/components/browser-component.marko.js +2 -2
  4. package/components/deferred-stylesheet.marko.js +2 -2
  5. package/components/document/components/body-wrapper.marko.js +2 -2
  6. package/components/document/components/error.marko.js +2 -2
  7. package/components/document/components/live-reload.marko.js +2 -2
  8. package/components/document/components/polyfill.marko.js +2 -2
  9. package/components/document/components/styles.marko.js +2 -2
  10. package/components/document/container.marko.js +2 -2
  11. package/components/document/index.marko.js +2 -2
  12. package/components/element/array.marko.js +2 -2
  13. package/components/element/audio.marko.js +2 -2
  14. package/components/element/block.marko.js +2 -2
  15. package/components/element/clear.marko.js +2 -2
  16. package/components/element/components/image.marko.js +2 -2
  17. package/components/element/components/text.marko.js +2 -2
  18. package/components/element/content/address1.marko.js +2 -2
  19. package/components/element/content/address2.marko.js +2 -2
  20. package/components/element/content/audio.marko.js +2 -2
  21. package/components/element/content/authors.marko.js +2 -2
  22. package/components/element/content/body.marko.js +2 -2
  23. package/components/element/content/byline.marko.js +2 -2
  24. package/components/element/content/city-state-zip.marko.js +2 -2
  25. package/components/element/content/contributors.marko.js +2 -2
  26. package/components/element/content/country.marko.js +2 -2
  27. package/components/element/content/embed-code.marko.js +2 -2
  28. package/components/element/content/end-date.marko.js +2 -2
  29. package/components/element/content/ends.marko.js +2 -2
  30. package/components/element/content/fax.marko.js +2 -2
  31. package/components/element/content/images.marko.js +2 -2
  32. package/components/element/content/mobile.marko.js +2 -2
  33. package/components/element/content/name.marko.js +2 -2
  34. package/components/element/content/phone.marko.js +2 -2
  35. package/components/element/content/photographers.marko.js +2 -2
  36. package/components/element/content/public-email.marko.js +2 -2
  37. package/components/element/content/published.marko.js +2 -2
  38. package/components/element/content/short-name.marko.js +2 -2
  39. package/components/element/content/sidebar-stubs.marko.js +2 -2
  40. package/components/element/content/sidebars.marko.js +2 -2
  41. package/components/element/content/source.marko.js +2 -2
  42. package/components/element/content/speakers.marko.js +2 -2
  43. package/components/element/content/sponsors.marko.js +2 -2
  44. package/components/element/content/start-date.marko.js +2 -2
  45. package/components/element/content/starts.marko.js +2 -2
  46. package/components/element/content/teaser.marko.js +2 -2
  47. package/components/element/content/title.marko.js +2 -2
  48. package/components/element/content/tollfree.marko.js +2 -2
  49. package/components/element/content/transcript.marko.js +2 -2
  50. package/components/element/content/website-deck.marko.js +2 -2
  51. package/components/element/content/website.marko.js +2 -2
  52. package/components/element/date.marko.js +2 -2
  53. package/components/element/image/caption.marko.js +2 -2
  54. package/components/element/image/credit.marko.js +2 -2
  55. package/components/element/image/display-name.marko.js +2 -2
  56. package/components/element/image/slider.marko.js +2 -2
  57. package/components/element/img.marko.js +2 -2
  58. package/components/element/index.marko.js +2 -2
  59. package/components/element/link.marko.js +2 -2
  60. package/components/element/magazine-issue/description.marko.js +2 -2
  61. package/components/element/magazine-issue/digital-edition-url.marko.js +2 -2
  62. package/components/element/magazine-issue/name.marko.js +2 -2
  63. package/components/element/magazine-issue/pdf-url.marko.js +2 -2
  64. package/components/element/magazine-publication/cancel-url.marko.js +2 -2
  65. package/components/element/magazine-publication/change-address-url.marko.js +2 -2
  66. package/components/element/magazine-publication/description.marko.js +2 -2
  67. package/components/element/magazine-publication/einquiry-url.marko.js +2 -2
  68. package/components/element/magazine-publication/name.marko.js +2 -2
  69. package/components/element/magazine-publication/renewal-url.marko.js +2 -2
  70. package/components/element/magazine-publication/reprints-url.marko.js +2 -2
  71. package/components/element/magazine-publication/subscribe-url.marko.js +2 -2
  72. package/components/element/obj-array.marko.js +2 -2
  73. package/components/element/obj-audio.marko.js +2 -2
  74. package/components/element/obj-date.marko.js +2 -2
  75. package/components/element/obj-nodes.marko.js +2 -2
  76. package/components/element/obj-text.marko.js +2 -2
  77. package/components/element/obj.marko.js +2 -2
  78. package/components/element/picture.marko.js +2 -2
  79. package/components/element/text.marko.js +2 -2
  80. package/components/element/website-section/description.marko.js +2 -2
  81. package/components/element/website-section/hierarchy.marko.js +2 -2
  82. package/components/element/website-section/name.marko.js +2 -2
  83. package/components/font/google.marko.js +2 -2
  84. package/components/font/link.marko.js +2 -2
  85. package/components/font/typekit.marko.js +2 -2
  86. package/components/load-more/index.marko.js +2 -2
  87. package/components/load-more/trigger.marko.js +2 -2
  88. package/components/node/body.marko.js +2 -2
  89. package/components/node/element.marko.js +2 -2
  90. package/components/node/footer.marko.js +2 -2
  91. package/components/node/header.marko.js +2 -2
  92. package/components/node/image-inner-wrapper.marko.js +2 -2
  93. package/components/node/image-wrapper.marko.js +2 -2
  94. package/components/node/image.marko.js +2 -2
  95. package/components/node/index.marko.js +2 -2
  96. package/components/node-list/body.marko.js +2 -2
  97. package/components/node-list/element.marko.js +2 -2
  98. package/components/node-list/footer.marko.js +2 -2
  99. package/components/node-list/header.marko.js +2 -2
  100. package/components/node-list/index.marko.js +2 -2
  101. package/components/node-list/node.marko.js +2 -2
  102. package/components/node-list/nodes.marko.js +2 -2
  103. package/components/page/container.marko.js +2 -2
  104. package/components/page/description.marko.js +2 -2
  105. package/components/page/image.marko.js +2 -2
  106. package/components/page/layouts/content.marko.js +2 -2
  107. package/components/page/layouts/default.marko.js +2 -2
  108. package/components/page/layouts/dynamic-page.marko.js +2 -2
  109. package/components/page/layouts/magazine-issue.marko.js +2 -2
  110. package/components/page/layouts/magazine-publication.marko.js +2 -2
  111. package/components/page/layouts/website-section.marko.js +2 -2
  112. package/components/page/metadata/components/common.marko.js +2 -2
  113. package/components/page/metadata/content.marko +10 -1
  114. package/components/page/metadata/content.marko.js +15 -3
  115. package/components/page/metadata/default.marko.js +2 -2
  116. package/components/page/metadata/dynamic-page.marko.js +2 -2
  117. package/components/page/metadata/magazine-issue.marko.js +2 -2
  118. package/components/page/metadata/magazine-publication.marko.js +2 -2
  119. package/components/page/metadata/website-section.marko.js +2 -2
  120. package/components/page/rel-canonical.marko.js +2 -2
  121. package/components/page/title.marko.js +2 -2
  122. package/components/page/wrapper.marko.js +2 -2
  123. package/components/resolve/page.marko.js +2 -2
  124. package/components/rss/website-section.marko.js +2 -2
  125. package/express/apollo.js +18 -1
  126. package/package.json +2 -2
  127. package/utils/build-geo-structured-data.js +31 -0
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/node-list/node.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/node-list/node.marko",
6
6
  marko_renderer = require("marko/dist/runtime/components/renderer"),
7
7
  module_objectPath_module = require("@mindful-web/object-path"),
8
8
  objectPath_module = module_objectPath_module.default || module_objectPath_module,
@@ -42,7 +42,7 @@ marko_template._ = marko_renderer(render, {
42
42
  });
43
43
 
44
44
  marko_template.meta = {
45
- id: "/@mindful-web/marko-web$1.70.3/components/node-list/node.marko",
45
+ id: "/@mindful-web/marko-web$1.72.2/components/node-list/node.marko",
46
46
  tags: [
47
47
  "./element.marko"
48
48
  ]
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/node-list/nodes.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/node-list/nodes.marko",
6
6
  marko_renderer = require("marko/dist/runtime/components/renderer"),
7
7
  module_objectPath_module = require("@mindful-web/object-path"),
8
8
  objectPath_module = module_objectPath_module.default || module_objectPath_module,
@@ -118,7 +118,7 @@ marko_template._ = marko_renderer(render, {
118
118
  });
119
119
 
120
120
  marko_template.meta = {
121
- id: "/@mindful-web/marko-web$1.70.3/components/node-list/nodes.marko",
121
+ id: "/@mindful-web/marko-web$1.72.2/components/node-list/nodes.marko",
122
122
  tags: [
123
123
  "./node.marko",
124
124
  "./element.marko"
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/page/container.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/page/container.marko",
6
6
  marko_renderer = require("marko/dist/runtime/components/renderer"),
7
7
  module_objectPath_module = require("@mindful-web/object-path"),
8
8
  objectPath_module = module_objectPath_module.default || module_objectPath_module,
@@ -42,5 +42,5 @@ marko_template._ = marko_renderer(render, {
42
42
  });
43
43
 
44
44
  marko_template.meta = {
45
- id: "/@mindful-web/marko-web$1.70.3/components/page/container.marko"
45
+ id: "/@mindful-web/marko-web$1.72.2/components/page/container.marko"
46
46
  };
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/page/description.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/page/description.marko",
6
6
  marko_renderer = require("marko/dist/runtime/components/renderer"),
7
7
  marko_attr = require("marko/dist/runtime/html/helpers/attr");
8
8
 
@@ -22,5 +22,5 @@ marko_template._ = marko_renderer(render, {
22
22
  });
23
23
 
24
24
  marko_template.meta = {
25
- id: "/@mindful-web/marko-web$1.70.3/components/page/description.marko"
25
+ id: "/@mindful-web/marko-web$1.72.2/components/page/description.marko"
26
26
  };
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/page/image.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/page/image.marko",
6
6
  marko_renderer = require("marko/dist/runtime/components/renderer"),
7
7
  module_image_module = require("@mindful-web/image"),
8
8
  image_module = module_image_module.default || module_image_module,
@@ -111,7 +111,7 @@ marko_template._ = marko_renderer(render, {
111
111
  });
112
112
 
113
113
  marko_template.meta = {
114
- id: "/@mindful-web/marko-web$1.70.3/components/page/image.marko",
114
+ id: "/@mindful-web/marko-web$1.72.2/components/page/image.marko",
115
115
  tags: [
116
116
  "../element/image/display-name.marko",
117
117
  "../element/img.marko",
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/page/layouts/content.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/page/layouts/content.marko",
6
6
  marko_renderer = require("marko/dist/runtime/components/renderer"),
7
7
  marko_web_content_page_metadata_template = require("../metadata/content.marko"),
8
8
  marko_loadTag = require("marko/dist/runtime/helpers/load-tag"),
@@ -57,7 +57,7 @@ marko_template._ = marko_renderer(render, {
57
57
  });
58
58
 
59
59
  marko_template.meta = {
60
- id: "/@mindful-web/marko-web$1.70.3/components/page/layouts/content.marko",
60
+ id: "/@mindful-web/marko-web$1.72.2/components/page/layouts/content.marko",
61
61
  tags: [
62
62
  "../metadata/content.marko"
63
63
  ]
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/page/layouts/default.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/page/layouts/default.marko",
6
6
  marko_renderer = require("marko/dist/runtime/components/renderer"),
7
7
  marko_web_default_page_metadata_template = require("../metadata/default.marko"),
8
8
  marko_loadTag = require("marko/dist/runtime/helpers/load-tag"),
@@ -55,7 +55,7 @@ marko_template._ = marko_renderer(render, {
55
55
  });
56
56
 
57
57
  marko_template.meta = {
58
- id: "/@mindful-web/marko-web$1.70.3/components/page/layouts/default.marko",
58
+ id: "/@mindful-web/marko-web$1.72.2/components/page/layouts/default.marko",
59
59
  tags: [
60
60
  "../metadata/default.marko"
61
61
  ]
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/page/layouts/dynamic-page.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/page/layouts/dynamic-page.marko",
6
6
  marko_renderer = require("marko/dist/runtime/components/renderer"),
7
7
  marko_web_dynamic_page_metadata_template = require("../metadata/dynamic-page.marko"),
8
8
  marko_loadTag = require("marko/dist/runtime/helpers/load-tag"),
@@ -53,7 +53,7 @@ marko_template._ = marko_renderer(render, {
53
53
  });
54
54
 
55
55
  marko_template.meta = {
56
- id: "/@mindful-web/marko-web$1.70.3/components/page/layouts/dynamic-page.marko",
56
+ id: "/@mindful-web/marko-web$1.72.2/components/page/layouts/dynamic-page.marko",
57
57
  tags: [
58
58
  "../metadata/dynamic-page.marko"
59
59
  ]
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/page/layouts/magazine-issue.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/page/layouts/magazine-issue.marko",
6
6
  marko_renderer = require("marko/dist/runtime/components/renderer"),
7
7
  marko_web_magazine_issue_page_metadata_template = require("../metadata/magazine-issue.marko"),
8
8
  marko_loadTag = require("marko/dist/runtime/helpers/load-tag"),
@@ -53,7 +53,7 @@ marko_template._ = marko_renderer(render, {
53
53
  });
54
54
 
55
55
  marko_template.meta = {
56
- id: "/@mindful-web/marko-web$1.70.3/components/page/layouts/magazine-issue.marko",
56
+ id: "/@mindful-web/marko-web$1.72.2/components/page/layouts/magazine-issue.marko",
57
57
  tags: [
58
58
  "../metadata/magazine-issue.marko"
59
59
  ]
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/page/layouts/magazine-publication.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/page/layouts/magazine-publication.marko",
6
6
  marko_renderer = require("marko/dist/runtime/components/renderer"),
7
7
  marko_web_magazine_publication_page_metadata_template = require("../metadata/magazine-publication.marko"),
8
8
  marko_loadTag = require("marko/dist/runtime/helpers/load-tag"),
@@ -53,7 +53,7 @@ marko_template._ = marko_renderer(render, {
53
53
  });
54
54
 
55
55
  marko_template.meta = {
56
- id: "/@mindful-web/marko-web$1.70.3/components/page/layouts/magazine-publication.marko",
56
+ id: "/@mindful-web/marko-web$1.72.2/components/page/layouts/magazine-publication.marko",
57
57
  tags: [
58
58
  "../metadata/magazine-publication.marko"
59
59
  ]
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/page/layouts/website-section.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/page/layouts/website-section.marko",
6
6
  marko_renderer = require("marko/dist/runtime/components/renderer"),
7
7
  module_objectPath_module = require("@mindful-web/object-path"),
8
8
  objectPath_module = module_objectPath_module.default || module_objectPath_module,
@@ -71,7 +71,7 @@ marko_template._ = marko_renderer(render, {
71
71
  });
72
72
 
73
73
  marko_template.meta = {
74
- id: "/@mindful-web/marko-web$1.70.3/components/page/layouts/website-section.marko",
74
+ id: "/@mindful-web/marko-web$1.72.2/components/page/layouts/website-section.marko",
75
75
  tags: [
76
76
  "../metadata/website-section.marko",
77
77
  "../../rss/website-section.marko"
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/page/metadata/components/common.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/page/metadata/components/common.marko",
6
6
  marko_component = require("./common.marko"),
7
7
  marko_renderer = require("marko/dist/runtime/components/renderer"),
8
8
  marko_web_page_title_template = require("../../title.marko"),
@@ -107,7 +107,7 @@ marko_template._ = marko_renderer(render, {
107
107
  }, marko_component);
108
108
 
109
109
  marko_template.meta = {
110
- id: "/@mindful-web/marko-web$1.70.3/components/page/metadata/components/common.marko",
110
+ id: "/@mindful-web/marko-web$1.72.2/components/page/metadata/components/common.marko",
111
111
  component: "./common.marko",
112
112
  tags: [
113
113
  "../../title.marko",
@@ -2,7 +2,7 @@ import gql from "graphql-tag";
2
2
  import { get } from "@mindful-web/object-path";
3
3
  import { warn, isFunction } from "@mindful-web/utils";
4
4
  import { extractFragmentData } from "@mindful-web/web-common/src/utils";
5
- import defaultBuildStructuredData from "./google-structured-data/content";
5
+ import defaultBuildStructuredData from "../../../utils/build-geo-structured-data";
6
6
 
7
7
  <!-- @todo This data should generated and saved to the content object as flat data, so no relationships are required. -->
8
8
 
@@ -21,6 +21,10 @@ fragment ContentPageMetadataFragment on Content {
21
21
  }
22
22
  published
23
23
  updated
24
+ # GEO summary — overrides JSON-LD `description` (see utils/build-geo-structured-data)
25
+ # and is emitted as a `geo:summary` meta tag below. Queried in the head, so it is
26
+ # gating-independent and reaches crawlers even when the on-page block is suppressed.
27
+ geoSummary
24
28
  metadata {
25
29
  title
26
30
  description
@@ -142,6 +146,11 @@ $ const contentGatingHandler = isFunction(globalContentGatingHandler) ? globalCo
142
146
  </script>
143
147
  </if>
144
148
 
149
+ $ const geoSummary = get(node, "geoSummary");
150
+ <if(geoSummary)>
151
+ <meta name="geo:summary" content=geoSummary />
152
+ </if>
153
+
145
154
  <@when-empty>
146
155
  $ warn(`Unable to create content metadata: no content found for ${id}.`);
147
156
  </@when-empty>
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/page/metadata/content.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/page/metadata/content.marko",
6
6
  marko_component = require("./content.marko"),
7
7
  marko_renderer = require("marko/dist/runtime/components/renderer"),
8
8
  module_gql = require("graphql-tag"),
@@ -16,7 +16,7 @@ var marko_template = module.exports = require("marko/dist/html").t(__filename),
16
16
  isFunction = module_utils_module.isFunction,
17
17
  module_utils_module2 = require("@mindful-web/web-common/src/utils"),
18
18
  extractFragmentData = module_utils_module2.extractFragmentData,
19
- module_defaultBuildStructuredData = require("./google-structured-data/content"),
19
+ module_defaultBuildStructuredData = require("../../../utils/build-geo-structured-data"),
20
20
  defaultBuildStructuredData = module_defaultBuildStructuredData.default || module_defaultBuildStructuredData,
21
21
  common_template = require("./components/common.marko"),
22
22
  marko_loadTag = require("marko/dist/runtime/helpers/load-tag"),
@@ -49,6 +49,10 @@ fragment ContentPageMetadataFragment on Content {
49
49
  }
50
50
  published
51
51
  updated
52
+ # GEO summary — overrides JSON-LD `description` (see utils/build-geo-structured-data)
53
+ # and is emitted as a `geo:summary` meta tag below. Queried in the head, so it is
54
+ # gating-independent and reaches crawlers even when the on-page block is suppressed.
55
+ geoSummary
52
56
  metadata {
53
57
  title
54
58
  description
@@ -201,6 +205,14 @@ ${processedFragment}
201
205
  marko_escapeScript(("\n " + structuredData) + "\n ") +
202
206
  "</script>");
203
207
  }
208
+
209
+ const geoSummary = get(node, "geoSummary");
210
+
211
+ if (geoSummary) {
212
+ out.w("<meta name=\"geo:summary\"" +
213
+ marko_attr("content", geoSummary) +
214
+ ">");
215
+ }
204
216
  }
205
217
  }, out, __component, "0");
206
218
  } else {
@@ -213,7 +225,7 @@ marko_template._ = marko_renderer(render, {
213
225
  }, marko_component);
214
226
 
215
227
  marko_template.meta = {
216
- id: "/@mindful-web/marko-web$1.70.3/components/page/metadata/content.marko",
228
+ id: "/@mindful-web/marko-web$1.72.2/components/page/metadata/content.marko",
217
229
  component: "./content.marko",
218
230
  tags: [
219
231
  "./components/common.marko",
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/page/metadata/default.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/page/metadata/default.marko",
6
6
  marko_renderer = require("marko/dist/runtime/components/renderer"),
7
7
  common_template = require("./components/common.marko"),
8
8
  marko_loadTag = require("marko/dist/runtime/helpers/load-tag"),
@@ -22,7 +22,7 @@ marko_template._ = marko_renderer(render, {
22
22
  });
23
23
 
24
24
  marko_template.meta = {
25
- id: "/@mindful-web/marko-web$1.70.3/components/page/metadata/default.marko",
25
+ id: "/@mindful-web/marko-web$1.72.2/components/page/metadata/default.marko",
26
26
  tags: [
27
27
  "./components/common.marko"
28
28
  ]
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/page/metadata/dynamic-page.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/page/metadata/dynamic-page.marko",
6
6
  marko_component = require("./dynamic-page.marko"),
7
7
  marko_renderer = require("marko/dist/runtime/components/renderer"),
8
8
  module_gql = require("graphql-tag"),
@@ -75,7 +75,7 @@ marko_template._ = marko_renderer(render, {
75
75
  }, marko_component);
76
76
 
77
77
  marko_template.meta = {
78
- id: "/@mindful-web/marko-web$1.70.3/components/page/metadata/dynamic-page.marko",
78
+ id: "/@mindful-web/marko-web$1.72.2/components/page/metadata/dynamic-page.marko",
79
79
  component: "./dynamic-page.marko",
80
80
  tags: [
81
81
  "./components/common.marko",
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/page/metadata/magazine-issue.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/page/metadata/magazine-issue.marko",
6
6
  marko_component = require("./magazine-issue.marko"),
7
7
  marko_renderer = require("marko/dist/runtime/components/renderer"),
8
8
  module_gql = require("graphql-tag"),
@@ -74,7 +74,7 @@ marko_template._ = marko_renderer(render, {
74
74
  }, marko_component);
75
75
 
76
76
  marko_template.meta = {
77
- id: "/@mindful-web/marko-web$1.70.3/components/page/metadata/magazine-issue.marko",
77
+ id: "/@mindful-web/marko-web$1.72.2/components/page/metadata/magazine-issue.marko",
78
78
  component: "./magazine-issue.marko",
79
79
  tags: [
80
80
  "./components/common.marko",
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/page/metadata/magazine-publication.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/page/metadata/magazine-publication.marko",
6
6
  marko_component = require("./magazine-publication.marko"),
7
7
  marko_renderer = require("marko/dist/runtime/components/renderer"),
8
8
  module_gql = require("graphql-tag"),
@@ -70,7 +70,7 @@ marko_template._ = marko_renderer(render, {
70
70
  }, marko_component);
71
71
 
72
72
  marko_template.meta = {
73
- id: "/@mindful-web/marko-web$1.70.3/components/page/metadata/magazine-publication.marko",
73
+ id: "/@mindful-web/marko-web$1.72.2/components/page/metadata/magazine-publication.marko",
74
74
  component: "./magazine-publication.marko",
75
75
  tags: [
76
76
  "./components/common.marko",
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/page/metadata/website-section.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/page/metadata/website-section.marko",
6
6
  marko_component = require("./website-section.marko"),
7
7
  marko_renderer = require("marko/dist/runtime/components/renderer"),
8
8
  module_gql = require("graphql-tag"),
@@ -83,7 +83,7 @@ marko_template._ = marko_renderer(render, {
83
83
  }, marko_component);
84
84
 
85
85
  marko_template.meta = {
86
- id: "/@mindful-web/marko-web$1.70.3/components/page/metadata/website-section.marko",
86
+ id: "/@mindful-web/marko-web$1.72.2/components/page/metadata/website-section.marko",
87
87
  component: "./website-section.marko",
88
88
  tags: [
89
89
  "./components/common.marko",
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/page/rel-canonical.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/page/rel-canonical.marko",
6
6
  marko_renderer = require("marko/dist/runtime/components/renderer"),
7
7
  module_utils_module = require("@mindful-web/utils"),
8
8
  utils_module = module_utils_module.default || module_utils_module,
@@ -38,5 +38,5 @@ marko_template._ = marko_renderer(render, {
38
38
  });
39
39
 
40
40
  marko_template.meta = {
41
- id: "/@mindful-web/marko-web$1.70.3/components/page/rel-canonical.marko"
41
+ id: "/@mindful-web/marko-web$1.72.2/components/page/rel-canonical.marko"
42
42
  };
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/page/title.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/page/title.marko",
6
6
  marko_renderer = require("marko/dist/runtime/components/renderer"),
7
7
  module_utils_module = require("@mindful-web/utils"),
8
8
  utils_module = module_utils_module.default || module_utils_module,
@@ -42,5 +42,5 @@ marko_template._ = marko_renderer(render, {
42
42
  });
43
43
 
44
44
  marko_template.meta = {
45
- id: "/@mindful-web/marko-web$1.70.3/components/page/title.marko"
45
+ id: "/@mindful-web/marko-web$1.72.2/components/page/title.marko"
46
46
  };
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/page/wrapper.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/page/wrapper.marko",
6
6
  marko_renderer = require("marko/dist/runtime/components/renderer"),
7
7
  module_objectPath_module = require("@mindful-web/object-path"),
8
8
  objectPath_module = module_objectPath_module.default || module_objectPath_module,
@@ -56,7 +56,7 @@ marko_template._ = marko_renderer(render, {
56
56
  });
57
57
 
58
58
  marko_template.meta = {
59
- id: "/@mindful-web/marko-web$1.70.3/components/page/wrapper.marko",
59
+ id: "/@mindful-web/marko-web$1.72.2/components/page/wrapper.marko",
60
60
  tags: [
61
61
  "../element/index.marko"
62
62
  ]
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/resolve/page.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/resolve/page.marko",
6
6
  marko_component = require("./page.marko"),
7
7
  marko_renderer = require("marko/dist/runtime/components/renderer"),
8
8
  module_utils_module = require("@mindful-web/utils"),
@@ -41,7 +41,7 @@ marko_template._ = marko_renderer(render, {
41
41
  }, marko_component);
42
42
 
43
43
  marko_template.meta = {
44
- id: "/@mindful-web/marko-web$1.70.3/components/resolve/page.marko",
44
+ id: "/@mindful-web/marko-web$1.72.2/components/resolve/page.marko",
45
45
  component: "./page.marko",
46
46
  tags: [
47
47
  "@mindful-web/marko-core/components/resolve.marko"
@@ -2,7 +2,7 @@
2
2
  "use strict";
3
3
 
4
4
  var marko_template = module.exports = require("marko/dist/html").t(__filename),
5
- marko_componentType = "/@mindful-web/marko-web$1.70.3/components/rss/website-section.marko",
5
+ marko_componentType = "/@mindful-web/marko-web$1.72.2/components/rss/website-section.marko",
6
6
  marko_renderer = require("marko/dist/runtime/components/renderer"),
7
7
  module_url_module = require("url"),
8
8
  url_module = module_url_module.default || module_url_module,
@@ -42,5 +42,5 @@ marko_template._ = marko_renderer(render, {
42
42
  });
43
43
 
44
44
  marko_template.meta = {
45
- id: "/@mindful-web/marko-web$1.70.3/components/rss/website-section.marko"
45
+ id: "/@mindful-web/marko-web$1.72.2/components/rss/website-section.marko"
46
46
  };
package/express/apollo.js CHANGED
@@ -4,6 +4,23 @@ const pkg = require('../package.json');
4
4
 
5
5
  const { MINDFUL_NAMESPACE } = process.env;
6
6
 
7
+ /**
8
+ * Serializes a value to JSON that is safe to use as an HTTP header value.
9
+ *
10
+ * HTTP header values may only contain a restricted set of characters (node-fetch
11
+ * rejects anything outside `/[\t\x20-\x7e\x80-\xff]/`). Request data such as query
12
+ * params can contain emoji or other multi-byte characters (e.g. from newsletter
13
+ * tracking links), which would otherwise throw `is not a legal HTTP header value`
14
+ * and fail the outgoing GraphQL request.
15
+ *
16
+ * Escaping non-ASCII code units to `\uXXXX` keeps the output as valid JSON that
17
+ * `JSON.parse` decodes back to the identical object on the receiving end.
18
+ */
19
+ const toHeaderSafeJSON = (value) => JSON.stringify(value).replace(
20
+ /[\u007f-\uffff]/g,
21
+ (char) => `\\u${char.charCodeAt(0).toString(16).padStart(4, '0')}`,
22
+ );
23
+
7
24
  module.exports = (app, uri, config = {}) => {
8
25
  /**
9
26
  * Force sets GraphQL cache headers when cookies are present on the site.
@@ -17,7 +34,7 @@ module.exports = (app, uri, config = {}) => {
17
34
  // otherwise parse the value and set the GraphQL header to match.
18
35
  return { ...o, [key]: parseBooleanHeader(value) };
19
36
  }, {
20
- 'x-marko-web-request': JSON.stringify({
37
+ 'x-marko-web-request': toHeaderSafeJSON({
21
38
  id: req.id,
22
39
  env: process.env.NODE_ENV || 'unknonwn',
23
40
  ua: req.get('user-agent'),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mindful-web/marko-web",
3
- "version": "1.70.3",
3
+ "version": "1.72.2",
4
4
  "description": "Core Marko+Express components for Mindful Web websites",
5
5
  "author": "Jacob Bare <jacob@parameter1.com>",
6
6
  "main": "index.js",
@@ -62,5 +62,5 @@
62
62
  "publishConfig": {
63
63
  "access": "public"
64
64
  },
65
- "gitHead": "eaf9168330e6818e61d66d234b14c67ed19d73b5"
65
+ "gitHead": "4dfed8a211cae1a440b3ad29f96e6eb7dbe60b88"
66
66
  }
@@ -0,0 +1,31 @@
1
+ const { get } = require('@mindful-web/object-path');
2
+ const defaultBuildStructuredData = require('../components/page/metadata/google-structured-data/content');
3
+
4
+ /**
5
+ * Wraps the framework's default content structured-data (JSON-LD) builder and,
6
+ * when a GEO summary is present on the content node, overrides the `description`
7
+ * with it. Falls back to whatever the default builder produced otherwise.
8
+ *
9
+ * This is the default `buildStructuredData` for `<marko-web-content-page-metadata>`,
10
+ * so GEO summaries flow into JSON-LD automatically across all sites — no per-site
11
+ * wiring required. The `geoSummary` field is requested by the metadata query in
12
+ * `components/page/metadata/content.marko`. That query runs in the document head and
13
+ * is unaffected by content gating, so the GEO summary reaches crawlers/AI engines
14
+ * even when the visible on-page block is suppressed on gated articles.
15
+ *
16
+ * @param {object} node The content node from the page metadata query.
17
+ * @param {Function} contentGatingHandler Passed through to the default builder.
18
+ * @returns {?string} A JSON string, or whatever the default builder returned.
19
+ */
20
+ module.exports = (node, contentGatingHandler) => {
21
+ const json = defaultBuildStructuredData(node, contentGatingHandler);
22
+ const geoSummary = get(node, 'geoSummary');
23
+ if (!json || !geoSummary) return json;
24
+ try {
25
+ const data = JSON.parse(json);
26
+ data.description = geoSummary;
27
+ return JSON.stringify(data);
28
+ } catch (e) {
29
+ return json;
30
+ }
31
+ };