Skip to content

Commit bd36d50

Browse files
committed
build: handle leading spaces and fix branching
1 parent c672808 commit bd36d50

File tree

1 file changed

+18
-12
lines changed

1 file changed

+18
-12
lines changed

lib/node_modules/@stdlib/_tools/changelog/parse-commits/lib/conventional_changelog.js

Lines changed: 18 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,16 @@
2222

2323
var visitWithAncestors = require( 'unist-util-visit-parents' );
2424
var visit = require( 'unist-util-visit' );
25+
var contains = require( '@stdlib/assert/contains' );
26+
var replace = require( '@stdlib/string/base/replace' );
2527

2628

2729
// VARIABLES //
2830

2931
var RE_DIGITS = /^[0-9]+$/;
3032
var RE_CLOSES = /(?:closes|fixes|resolves)/i;
3133
var RE_CO_AUTHORED_BY = /co-authored-by/i;
34+
var RE_LEADING_HASH = /^\s*#/;
3235

3336

3437
// MAIN //
@@ -233,25 +236,28 @@ function toConventionalChangelog( ast, options ) {
233236
}
234237
break;
235238
case 'text':
236-
if ( node.value.indexOf( options.issueURL ) !== 1 ) {
239+
if ( contains( node.value, options.issueURL ) ) {
237240
reference.url = node.value;
238241
reference.ref = node.value.split( '/' ).pop();
239242
}
240-
if ( node.value.indexOf( options.prURL ) !== 1 ) {
243+
else if ( contains( node.value, options.prURL ) ) {
241244
hasPRURL = true;
242245
reference.url = node.value;
243246
reference.ref = node.value.split('/').pop();
244247
}
245-
if ( node.value.charAt( 0 ) === '#' ) {
246-
hasRefSeparator = true;
247-
reference.ref = node.value.substring( 1 );
248-
} else {
249-
reference.ref = node.value;
250-
}
251-
if ( closesIssue ) {
252-
reference.url = options.issueURL + reference.ref;
253-
} else if ( hasPRURL ) {
254-
reference.url = options.prURL + reference.ref;
248+
if ( !reference.url ) {
249+
// Case: reference is not an issue or PR URL
250+
if ( RE_LEADING_HASH.test( node.value ) ) {
251+
hasRefSeparator = true;
252+
reference.ref = replace( node.value, RE_LEADING_HASH, '' );
253+
} else {
254+
reference.ref = node.value;
255+
}
256+
if ( closesIssue ) {
257+
reference.url = options.issueURL + reference.ref;
258+
} else if ( hasPRURL ) {
259+
reference.url = options.prURL + reference.ref;
260+
}
255261
}
256262
break;
257263
default:

0 commit comments

Comments
 (0)