UNPKG

1.59 kBJavaScriptView Raw
1'use strict';
2
3Object.defineProperty(exports, '__esModule', {
4 value: true
5});
6exports.normalizeDiffOptions = exports.noColor = void 0;
7
8var _chalk = _interopRequireDefault(require('chalk'));
9
10function _interopRequireDefault(obj) {
11 return obj && obj.__esModule ? obj : {default: obj};
12}
13
14/**
15 * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.
16 *
17 * This source code is licensed under the MIT license found in the
18 * LICENSE file in the root directory of this source tree.
19 */
20const noColor = string => string;
21
22exports.noColor = noColor;
23const DIFF_CONTEXT_DEFAULT = 5;
24const OPTIONS_DEFAULT = {
25 aAnnotation: 'Expected',
26 aColor: _chalk.default.green,
27 aIndicator: '-',
28 bAnnotation: 'Received',
29 bColor: _chalk.default.red,
30 bIndicator: '+',
31 changeColor: _chalk.default.inverse,
32 changeLineTrailingSpaceColor: noColor,
33 commonColor: _chalk.default.dim,
34 commonIndicator: ' ',
35 commonLineTrailingSpaceColor: noColor,
36 contextLines: DIFF_CONTEXT_DEFAULT,
37 emptyFirstOrLastLinePlaceholder: '',
38 expand: true,
39 includeChangeCounts: false,
40 omitAnnotationLines: false,
41 patchColor: _chalk.default.yellow
42};
43
44const getContextLines = contextLines =>
45 typeof contextLines === 'number' &&
46 Number.isSafeInteger(contextLines) &&
47 contextLines >= 0
48 ? contextLines
49 : DIFF_CONTEXT_DEFAULT; // Pure function returns options with all properties.
50
51const normalizeDiffOptions = (options = {}) => ({
52 ...OPTIONS_DEFAULT,
53 ...options,
54 contextLines: getContextLines(options.contextLines)
55});
56
57exports.normalizeDiffOptions = normalizeDiffOptions;