@adobe/helix-config 5.11.0 → 5.13.0
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.
- package/CHANGELOG.md +14 -0
- package/package.json +9 -8
- package/src/config-view.js +34 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
# [5.13.0](https://github.com/adobe/helix-config/compare/v5.12.0...v5.13.0) (2026-08-13)
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
### Features
|
|
5
|
+
|
|
6
|
+
* include content source to pipeine scope ([#400](https://github.com/adobe/helix-config/issues/400)) ([f29e790](https://github.com/adobe/helix-config/commit/f29e790146ab9333ec13cb612935c23d06504ee4))
|
|
7
|
+
|
|
8
|
+
# [5.12.0](https://github.com/adobe/helix-config/compare/v5.11.0...v5.12.0) (2026-08-13)
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
### Features
|
|
12
|
+
|
|
13
|
+
* return sitemap index list for pipeline scope ([#399](https://github.com/adobe/helix-config/issues/399)) ([e775165](https://github.com/adobe/helix-config/commit/e77516540a941deea93cf63242f823cad2963930))
|
|
14
|
+
|
|
1
15
|
# [5.11.0](https://github.com/adobe/helix-config/compare/v5.10.3...v5.11.0) (2026-06-09)
|
|
2
16
|
|
|
3
17
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adobe/helix-config",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.13.0",
|
|
4
4
|
"description": "Helix Config",
|
|
5
5
|
"main": "src/index.js",
|
|
6
6
|
"types": "src/index.d.ts",
|
|
@@ -35,26 +35,27 @@
|
|
|
35
35
|
"reporter-options": "configFile=.mocha-multi.json"
|
|
36
36
|
},
|
|
37
37
|
"devDependencies": {
|
|
38
|
-
"@adobe/eslint-config-helix": "3.0.
|
|
39
|
-
"@eslint/config-helpers": "0.
|
|
40
|
-
"@semantic-release/changelog": "
|
|
41
|
-
"@semantic-release/git": "
|
|
38
|
+
"@adobe/eslint-config-helix": "3.0.30",
|
|
39
|
+
"@eslint/config-helpers": "0.7.0",
|
|
40
|
+
"@semantic-release/changelog": "7.0.0",
|
|
41
|
+
"@semantic-release/git": "11.0.1",
|
|
42
42
|
"@semantic-release/npm": "13.1.5",
|
|
43
|
-
"c8": "
|
|
43
|
+
"c8": "12.0.0",
|
|
44
44
|
"eslint": "9.4.0",
|
|
45
45
|
"husky": "9.1.7",
|
|
46
46
|
"junit-report-builder": "5.1.2",
|
|
47
|
-
"lint-staged": "17.0
|
|
47
|
+
"lint-staged": "17.2.0",
|
|
48
48
|
"mocha": "11.7.6",
|
|
49
49
|
"mocha-multi-reporters": "1.5.1",
|
|
50
50
|
"mocha-suppress-logs": "0.6.0",
|
|
51
|
-
"semantic-release": "25.0.
|
|
51
|
+
"semantic-release": "25.0.8"
|
|
52
52
|
},
|
|
53
53
|
"lint-staged": {
|
|
54
54
|
"*.js": "eslint",
|
|
55
55
|
"*.cjs": "eslint"
|
|
56
56
|
},
|
|
57
57
|
"dependencies": {
|
|
58
|
+
"@adobe/helix-shared-config": "11.2.0",
|
|
58
59
|
"@adobe/helix-shared-server-timing": "1.0.0",
|
|
59
60
|
"@adobe/helix-shared-utils": "3.0.2"
|
|
60
61
|
}
|
package/src/config-view.js
CHANGED
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
* OF ANY KIND, either express or implied. See the License for the specific language
|
|
10
10
|
* governing permissions and limitations under the License.
|
|
11
11
|
*/
|
|
12
|
+
import { SitemapConfig } from '@adobe/helix-shared-config';
|
|
12
13
|
import { computeSurrogateKey } from '@adobe/helix-shared-utils';
|
|
13
14
|
// eslint-disable-next-line import/no-unresolved
|
|
14
15
|
import { PipelineResponse } from './PipelineResponse.js';
|
|
@@ -210,6 +211,31 @@ async function fetchRobotsTxt(ctx, owner, repo) {
|
|
|
210
211
|
return robots;
|
|
211
212
|
}
|
|
212
213
|
|
|
214
|
+
/**
|
|
215
|
+
* Retrieves the sitemap index from the `sitemap.yaml` on the content-bus.
|
|
216
|
+
*
|
|
217
|
+
* @param {ConfigContext} ctx the context
|
|
218
|
+
* @param {object} rso RSO (ref, site, org)
|
|
219
|
+
* @param {object} config the config
|
|
220
|
+
* @returns {Promise<string[]|null>} the sitemap index list, or `null` if not configured
|
|
221
|
+
*/
|
|
222
|
+
async function fetchSitemapIndex(ctx, rso, config) {
|
|
223
|
+
const key = `${config.content.contentBusId}/preview/.helix/sitemap.yaml`;
|
|
224
|
+
const res = await ctx.loader.getObject(HELIX_CONTENT_BUS, key);
|
|
225
|
+
|
|
226
|
+
const sitemap = new ConfigObject();
|
|
227
|
+
if (res.body) {
|
|
228
|
+
try {
|
|
229
|
+
const sitemapConfig = await new SitemapConfig().withSource(res.body).init();
|
|
230
|
+
sitemap.index = sitemapConfig.index;
|
|
231
|
+
sitemap.updateLastModified(res.headers);
|
|
232
|
+
} catch (e) {
|
|
233
|
+
ctx.log.warn(`[${rso.org}/${rso.site}] Unable to process ${key}: ${e.message}`);
|
|
234
|
+
}
|
|
235
|
+
}
|
|
236
|
+
return sitemap;
|
|
237
|
+
}
|
|
238
|
+
|
|
213
239
|
/**
|
|
214
240
|
* Load metadata from the given path
|
|
215
241
|
* @param ctx the context
|
|
@@ -367,6 +393,11 @@ async function resolveConfig(ctx, rso, scope) {
|
|
|
367
393
|
config.robots = robots;
|
|
368
394
|
}
|
|
369
395
|
}
|
|
396
|
+
ctx.timer?.update('sitemap-index');
|
|
397
|
+
const sitemap = await fetchSitemapIndex(ctx, rso, config);
|
|
398
|
+
if (sitemap.index) {
|
|
399
|
+
config.sitemap = sitemap;
|
|
400
|
+
}
|
|
370
401
|
}
|
|
371
402
|
if (scope === SCOPE_PIPELINE || scope === SCOPE_RAW || scope === SCOPE_DELIVERY) {
|
|
372
403
|
// although not used in raw, or delivery, load in order to set correct last-modified
|
|
@@ -685,6 +716,7 @@ export async function getConfigResponse(ctx, opts) {
|
|
|
685
716
|
siteConfig.updateLastModified(config.head);
|
|
686
717
|
siteConfig.updateLastModified(siteConfig.sidekick);
|
|
687
718
|
siteConfig.updateLastModified(config.robots);
|
|
719
|
+
siteConfig.updateLastModified(config.sitemap);
|
|
688
720
|
siteConfig.updateLastModified(config.metadata?.preview);
|
|
689
721
|
siteConfig.updateLastModified(config.metadata?.live);
|
|
690
722
|
|
|
@@ -762,6 +794,7 @@ export async function getConfigResponse(ctx, opts) {
|
|
|
762
794
|
repo: config.code.repo,
|
|
763
795
|
...rso,
|
|
764
796
|
contentBusId: config.content.contentBusId,
|
|
797
|
+
contentSource: config.content.source,
|
|
765
798
|
headers: config.headers,
|
|
766
799
|
head: config.head,
|
|
767
800
|
metadata: config.metadata,
|
|
@@ -769,6 +802,7 @@ export async function getConfigResponse(ctx, opts) {
|
|
|
769
802
|
folders: config.folders,
|
|
770
803
|
public: config.public,
|
|
771
804
|
robots: config.robots,
|
|
805
|
+
sitemap: config.sitemap,
|
|
772
806
|
access: config.access,
|
|
773
807
|
lastModified: siteConfig.lastModified,
|
|
774
808
|
created: config.created,
|