@metascraper/helpers
Advanced tools
@@ -6,2 +6,10 @@ # Change Log | ||
## [5.4.3](https://github.com/microlinkhq/metascraper/tree/master/packages/metascraper-helpers/compare/v5.4.2...v5.4.3) (2019-06-12) | ||
**Note:** Version bump only for package @metascraper/helpers | ||
## [5.4.2](https://github.com/microlinkhq/metascraper/tree/master/packages/metascraper-helpers/compare/v5.4.1...v5.4.2) (2019-06-05) | ||
@@ -8,0 +16,0 @@ |
19
index.js
@@ -66,2 +66,4 @@ 'use strict' | ||
const REGEX_TITLE_SEPARATOR = /^[^|\-/•—]+/ | ||
const TRUNCATE_MAX_LENGTH = 300 | ||
@@ -93,10 +95,16 @@ | ||
const removeByPrefix = flow([value => value.replace(REGEX_BY, ''), trim]) | ||
const removeBy = flow([value => value.replace(REGEX_BY, ''), trim]) | ||
const removeSeparator = title => { | ||
let newTitle = (REGEX_TITLE_SEPARATOR.exec(title) || [])[0] || title | ||
return newTitle.trim() | ||
} | ||
const createTitle = flow([condenseWhitespace, smartquotes]) | ||
const titleize = (src, { capitalize = false, removeBy = false } = {}) => { | ||
const titleize = (src, opts = {}) => { | ||
let title = createTitle(src) | ||
if (removeBy) title = removeByPrefix(title).trim() | ||
if (capitalize) title = toTitle(title) | ||
if (opts.removeBy) title = removeBy(title) | ||
if (opts.removeSeparator) title = removeSeparator(title) | ||
if (opts.capitalize) title = toTitle(title) | ||
return title | ||
@@ -200,3 +208,4 @@ } | ||
const title = value => isString(value) && titleize(value) | ||
const title = (value, { removeSeparator = true } = {}) => | ||
isString(value) && titleize(value, { removeSeparator }) | ||
@@ -203,0 +212,0 @@ const isMime = (contentType, type) => { |
@@ -5,3 +5,3 @@ { | ||
"homepage": "https://nicedoc.io/microlinkhq/metascraper/packages/metascraper-helpers", | ||
"version": "5.4.2", | ||
"version": "5.4.3", | ||
"main": "index.js", | ||
@@ -63,3 +63,3 @@ "repository": { | ||
}, | ||
"gitHead": "3d9f0aefaa5023eecb550e358fca58b3f02458be" | ||
"gitHead": "f247e6985dc8f8af99de3df0d4b3bfe4c26fc7a1" | ||
} |
13942
3.37%210
3.45%