Socket
Socket
Sign inDemoInstall

gulp-sitemap

Package Overview
Dependencies
Maintainers
1
Versions
55
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

gulp-sitemap - npm Package Compare versions

Comparing version 3.1.0 to 4.0.0

2

index.js
'use strict';
var chalk = require('chalk');
var defaults = require('lodash.defaults');
var defaults = require('lodash/defaults');
var gutil = require('gulp-util');

@@ -5,0 +5,0 @@ var path = require('path');

'use strict';
var defaults = require('lodash.defaults');
var find = require('lodash.find');
var includes = require('lodash.includes');
var defaults = require('lodash/defaults');
var find = require('lodash/find');
var includes = require('lodash/includes');
var multimatch = require('multimatch');
var slash = require('slash');
var pick = require('lodash.pick');
var pick = require('lodash/pick');

@@ -17,12 +17,12 @@ //TODO: export this to an external module

function getEntryConfig(file, fileLastMod, config) {
var mappingsForFile = find(config.mappings, function(item) {
function getEntryConfig(file, fileLastMod, siteConfig) {
var mappingsForFile = find(siteConfig.mappings, function(item) {
return multimatch(file, item.pages).length > 0;
}) || {};
var properties = ['lastmod', 'priority', 'changefreq', 'hreflang'];
var properties = ['getLoc', 'lastmod', 'priority', 'changefreq', 'hreflang'];
var entry = defaults(
pick(mappingsForFile, properties),
pick(config, properties)
pick(siteConfig, properties)
);

@@ -40,3 +40,3 @@

var adjustedFile = slash(relativeFile);
entry.loc = config.siteUrl + adjustedFile;
entry.loc = siteConfig.siteUrl + adjustedFile;
entry.file = adjustedFile;

@@ -58,34 +58,37 @@

*/
function processEntry(entry, config) {
var changefreq = entry.changefreq;
var priority = entry.priority;
function processEntry(entry, siteConfig) {
var returnArr = [siteConfig.spacing + '<url>'];
var loc = entry.getLoc ? entry.getLoc(siteConfig.siteUrl, entry.loc, entry) : entry.loc;
returnArr.push(siteConfig.spacing + siteConfig.spacing + wrapTag('loc', loc));
var lastmod = entry.lastmod;
var loc = entry.loc;
var hreflang = entry.hreflang;
var file = entry.file;
var returnArr = [
config.spacing + '<url>',
config.spacing + config.spacing + wrapTag('loc', loc)
];
if (lastmod) {
//format mtime to ISO (same as +00:00)
lastmod = new Date(lastmod).toISOString();
returnArr.push(config.spacing + config.spacing + wrapTag('lastmod', lastmod));
returnArr.push(siteConfig.spacing + siteConfig.spacing + wrapTag('lastmod', lastmod));
}
var changefreq = entry.changefreq;
if (changefreq) {
returnArr.push(config.spacing + config.spacing + wrapTag('changefreq', changefreq));
returnArr.push(siteConfig.spacing + siteConfig.spacing + wrapTag('changefreq', changefreq));
}
var priority = entry.priority;
if (priority || priority === 0) {
returnArr.push(config.spacing + config.spacing + wrapTag('priority', priority));
returnArr.push(siteConfig.spacing + siteConfig.spacing + wrapTag('priority', priority));
}
var hreflang = entry.hreflang;
if (hreflang && hreflang.length > 0) {
var file = entry.file;
hreflang.forEach(function(item) {
var href = item.getHref(config.siteUrl, file, item.lang, loc);
var href = item.getHref(siteConfig.siteUrl, file, item.lang, loc);
var tag = '<xhtml:link rel="alternate" hreflang="' + item.lang + '" href="' + href + '" />';
returnArr.push(config.spacing + config.spacing + tag);
returnArr.push(siteConfig.spacing + siteConfig.spacing + tag);
});
}
returnArr.push(config.spacing + '</url>');
return returnArr.join(config.newLine);
returnArr.push(siteConfig.spacing + '</url>');
return returnArr.join(siteConfig.newLine);
}

@@ -92,0 +95,0 @@

{
"name": "gulp-sitemap",
"version": "3.1.0",
"version": "4.0.0",
"description": "Generate a search engine friendly sitemap.xml using a Gulp stream",

@@ -39,6 +39,3 @@ "repository": "pgilad/gulp-sitemap",

"gulp-util": "^3.0.7",
"lodash.defaults": "^4.0.1",
"lodash.find": "^4.0.2",
"lodash.includes": "^4.0.1",
"lodash.pick": "^4.0.1",
"lodash": "^4.6.1",
"multimatch": "^2.0.0",

@@ -45,0 +42,0 @@ "slash": "^1.0.0",

@@ -165,5 +165,8 @@ # [gulp](https://github.com/wearefractal/gulp)-sitemap

lastmod: Date.now(),
getLoc(siteUrl, loc, entry) {
return loc.substr(0, loc.lastIndexOf('.')) || loc; // Removes the file extension
},
hreflang: [{
lang: 'ru',
getHref: function(siteUrl, file, lang, loc) {
getHref(siteUrl, file, lang, loc) {
return 'http://www.amazon.ru/' + file;

@@ -180,3 +183,3 @@ }

- Only the first match will apply, so consequent matches for the filename will not apply.
- Possible attributes to set: `hreflang`, `changefreq`, `priority` and `lastmod`.
- Possible attributes to set: `hreflang`, `changefreq`, `priority`, `loc` and `lastmod`.
- All rules applying to [options](#options) apply to the attributes that can overridden.

@@ -214,2 +217,12 @@

##### getLoc
Matching pages can get their `loc` tag modified by using a function.
```js
getLoc: function(siteUrl, loc, entry) {
return loc.substr(0, loc.lastIndexOf('.')) || loc; // Removes the file extension
}
```
#### verbose

@@ -216,0 +229,0 @@

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc