@nuxtjs/sitemap 7.2.10 → 7.3.1

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 (40) hide show
  1. package/dist/client/200.html +10 -9
  2. package/dist/client/404.html +10 -9
  3. package/dist/client/_nuxt/{DDzCRRw4.js → 5vafBU9X.js} +1 -1
  4. package/dist/client/_nuxt/BIHI7g3E.js +1 -0
  5. package/dist/client/_nuxt/Bn78IMkz.js +172 -0
  6. package/dist/client/_nuxt/{DdvkoY3I.js → CT3BV8Rj.js} +1 -1
  7. package/dist/client/_nuxt/Cp-IABpG.js +1 -0
  8. package/dist/client/_nuxt/builds/latest.json +1 -1
  9. package/dist/client/_nuxt/builds/meta/5ecca6e1-2b8a-4fc5-a128-35cbc27bf6d7.json +1 -0
  10. package/dist/client/_nuxt/{entry.BrROiVtQ.css → entry.BzbtAPc0.css} +1 -1
  11. package/dist/client/_nuxt/error-404.D_zhMyJm.css +1 -0
  12. package/dist/client/_nuxt/error-500.rdOYVbxo.css +1 -0
  13. package/dist/client/index.html +10 -9
  14. package/dist/module.cjs +59 -20
  15. package/dist/module.json +2 -2
  16. package/dist/module.mjs +60 -21
  17. package/dist/runtime/server/plugins/warm-up.js +20 -4
  18. package/dist/runtime/server/routes/__sitemap__/debug.js +2 -2
  19. package/dist/runtime/server/routes/sitemap/[sitemap].xml.js +37 -7
  20. package/dist/runtime/server/routes/sitemap_index.xml.js +11 -3
  21. package/dist/runtime/server/sitemap/builder/sitemap-index.d.ts +1 -1
  22. package/dist/runtime/server/sitemap/builder/sitemap-index.js +110 -16
  23. package/dist/runtime/server/sitemap/builder/sitemap.d.ts +1 -1
  24. package/dist/runtime/server/sitemap/builder/sitemap.js +62 -36
  25. package/dist/runtime/server/sitemap/builder/xml.d.ts +2 -3
  26. package/dist/runtime/server/sitemap/builder/xml.js +182 -80
  27. package/dist/runtime/server/sitemap/nitro.js +68 -20
  28. package/dist/runtime/server/sitemap/urlset/normalise.js +21 -19
  29. package/dist/runtime/server/sitemap/urlset/sort.d.ts +1 -1
  30. package/dist/runtime/server/sitemap/urlset/sort.js +9 -15
  31. package/dist/runtime/server/sitemap/utils/chunk.d.ts +10 -0
  32. package/dist/runtime/server/sitemap/utils/chunk.js +66 -0
  33. package/dist/runtime/types.d.ts +44 -0
  34. package/dist/runtime/utils-pure.js +13 -5
  35. package/package.json +23 -22
  36. package/dist/client/_nuxt/BLmTiKMJ.js +0 -1
  37. package/dist/client/_nuxt/BUP090M8.js +0 -172
  38. package/dist/client/_nuxt/builds/meta/3c351607-eab3-459a-b743-aba04e49a80e.json +0 -1
  39. package/dist/client/_nuxt/error-404.BMkETmdU.css +0 -1
  40. package/dist/client/_nuxt/error-500.C3_I-O7u.css +0 -1
@@ -13,12 +13,20 @@ const merger = createDefu((obj, key, value) => {
13
13
  return obj[key];
14
14
  });
15
15
  export function mergeOnKey(arr, key) {
16
- const res = {};
17
- arr.forEach((item) => {
16
+ const seen = /* @__PURE__ */ new Map();
17
+ let resultLength = 0;
18
+ const result = Array.from({ length: arr.length });
19
+ for (const item of arr) {
18
20
  const k = item[key];
19
- res[k] = merger(item, res[k] || {});
20
- });
21
- return Object.values(res);
21
+ if (seen.has(k)) {
22
+ const existingIndex = seen.get(k);
23
+ result[existingIndex] = merger(item, result[existingIndex]);
24
+ } else {
25
+ seen.set(k, resultLength);
26
+ result[resultLength++] = item;
27
+ }
28
+ }
29
+ return result.slice(0, resultLength);
22
30
  }
23
31
  export function splitForLocales(path, locales) {
24
32
  const prefix = withLeadingSlash(path).split("/")[1];
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@nuxtjs/sitemap",
3
3
  "type": "module",
4
- "version": "7.2.10",
4
+ "version": "7.3.1",
5
5
  "description": "Powerfully flexible XML Sitemaps that integrate seamlessly, for Nuxt.",
6
6
  "author": {
7
7
  "name": "Harlan Wilton",
@@ -44,38 +44,39 @@
44
44
  }
45
45
  },
46
46
  "dependencies": {
47
- "@nuxt/devtools-kit": "^2.3.2",
48
- "@nuxt/kit": "^3.16.2",
47
+ "@nuxt/devtools-kit": "^2.4.1",
48
+ "@nuxt/kit": "^3.17.4",
49
49
  "chalk": "^5.4.1",
50
50
  "defu": "^6.1.4",
51
51
  "h3-compression": "^0.3.2",
52
- "nuxt-site-config": "^3.1.9",
52
+ "nuxt-site-config": "^3.2.0",
53
53
  "ofetch": "^1.4.1",
54
54
  "pathe": "^2.0.3",
55
55
  "pkg-types": "^2.1.0",
56
56
  "radix3": "^1.1.2",
57
- "semver": "^7.7.1",
57
+ "semver": "^7.7.2",
58
58
  "sirv": "^3.0.1",
59
- "ufo": "^1.5.4"
59
+ "ufo": "^1.6.1"
60
60
  },
61
61
  "devDependencies": {
62
- "@arethetypeswrong/cli": "0.17.4",
63
- "@nuxt/content": "^3.4.0",
64
- "@nuxt/eslint-config": "^1.3.0",
65
- "@nuxt/module-builder": "^1.0.0",
66
- "@nuxt/test-utils": "^3.17.2",
67
- "@nuxt/ui": "^3.0.2",
68
- "@nuxtjs/i18n": "9.5.2",
69
- "@nuxtjs/robots": "^5.2.8",
70
- "bumpp": "^10.1.0",
71
- "eslint": "^9.24.0",
72
- "eslint-plugin-n": "^17.17.0",
73
- "execa": "^9.5.2",
74
- "nuxt": "^3.16.2",
75
- "nuxt-i18n-micro": "^1.83.1",
62
+ "@arethetypeswrong/cli": "^0.18.1",
63
+ "@nuxt/content": "^3.5.1",
64
+ "@nuxt/eslint-config": "^1.4.1",
65
+ "@nuxt/module-builder": "^1.0.1",
66
+ "@nuxt/test-utils": "^3.19.1",
67
+ "@nuxt/ui": "^3.1.3",
68
+ "@nuxtjs/i18n": "^9.5.5",
69
+ "@nuxtjs/robots": "^5.2.10",
70
+ "bumpp": "^10.1.1",
71
+ "eslint": "^9.28.0",
72
+ "eslint-plugin-n": "^17.19.0",
73
+ "execa": "^9.6.0",
74
+ "happy-dom": "^17.6.1",
75
+ "nuxt": "^3.17.4",
76
+ "nuxt-i18n-micro": "^1.87.0",
76
77
  "typescript": "^5.8.3",
77
- "vitest": "^3.1.1",
78
- "vue-tsc": "^2.2.8"
78
+ "vitest": "^3.2.0",
79
+ "vue-tsc": "^2.2.10"
79
80
  },
80
81
  "scripts": {
81
82
  "lint": "eslint .",
@@ -1 +0,0 @@
1
- const n=Object.freeze(JSON.parse('{"displayName":"JSON","name":"json","patterns":[{"include":"#value"}],"repository":{"array":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.array.begin.json"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.array.end.json"}},"name":"meta.structure.array.json","patterns":[{"include":"#value"},{"match":",","name":"punctuation.separator.array.json"},{"match":"[^\\\\s\\\\]]","name":"invalid.illegal.expected-array-separator.json"}]},"comments":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","captures":{"0":{"name":"punctuation.definition.comment.json"}},"end":"\\\\*/","name":"comment.block.documentation.json"},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.json"}},"end":"\\\\*/","name":"comment.block.json"},{"captures":{"1":{"name":"punctuation.definition.comment.json"}},"match":"(//).*$\\\\n?","name":"comment.line.double-slash.js"}]},"constant":{"match":"\\\\b(?:true|false|null)\\\\b","name":"constant.language.json"},"number":{"match":"-?(?:0|[1-9]\\\\d*)(?:(?:\\\\.\\\\d+)?(?:[eE][+\\\\-]?\\\\d+)?)?","name":"constant.numeric.json"},"object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.dictionary.begin.json"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.dictionary.end.json"}},"name":"meta.structure.dictionary.json","patterns":[{"include":"#objectkey"},{"include":"#comments"},{"begin":":","beginCaptures":{"0":{"name":"punctuation.separator.dictionary.key-value.json"}},"end":"(,)|(?=})","endCaptures":{"1":{"name":"punctuation.separator.dictionary.pair.json"}},"name":"meta.structure.dictionary.value.json","patterns":[{"include":"#value"},{"match":"[^\\\\s,]","name":"invalid.illegal.expected-dictionary-separator.json"}]},{"match":"[^\\\\s}]","name":"invalid.illegal.expected-dictionary-separator.json"}]},"objectkey":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.support.type.property-name.begin.json"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.support.type.property-name.end.json"}},"name":"string.json support.type.property-name.json","patterns":[{"include":"#stringcontent"}]},"string":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.json"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.json"}},"name":"string.quoted.double.json","patterns":[{"include":"#stringcontent"}]},"stringcontent":{"patterns":[{"match":"\\\\\\\\(?:[\\"\\\\\\\\/bfnrt]|u\\\\h{4})","name":"constant.character.escape.json"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-string-escape.json"}]},"value":{"patterns":[{"include":"#constant"},{"include":"#number"},{"include":"#string"},{"include":"#array"},{"include":"#object"},{"include":"#comments"}]}},"scopeName":"source.json"}')),e=[n];export{e as default};