UNPKG

3.15 kBJavaScriptView Raw
1'use strict';
2
3Object.defineProperty(exports, '__esModule', {
4 value: true
5});
6exports.default = void 0;
7
8function path() {
9 const data = _interopRequireWildcard(require('path'));
10
11 path = function () {
12 return data;
13 };
14
15 return data;
16}
17
18function _execa() {
19 const data = _interopRequireDefault(require('execa'));
20
21 _execa = function () {
22 return data;
23 };
24
25 return data;
26}
27
28function _interopRequireDefault(obj) {
29 return obj && obj.__esModule ? obj : {default: obj};
30}
31
32function _getRequireWildcardCache(nodeInterop) {
33 if (typeof WeakMap !== 'function') return null;
34 var cacheBabelInterop = new WeakMap();
35 var cacheNodeInterop = new WeakMap();
36 return (_getRequireWildcardCache = function (nodeInterop) {
37 return nodeInterop ? cacheNodeInterop : cacheBabelInterop;
38 })(nodeInterop);
39}
40
41function _interopRequireWildcard(obj, nodeInterop) {
42 if (!nodeInterop && obj && obj.__esModule) {
43 return obj;
44 }
45 if (obj === null || (typeof obj !== 'object' && typeof obj !== 'function')) {
46 return {default: obj};
47 }
48 var cache = _getRequireWildcardCache(nodeInterop);
49 if (cache && cache.has(obj)) {
50 return cache.get(obj);
51 }
52 var newObj = {};
53 var hasPropertyDescriptor =
54 Object.defineProperty && Object.getOwnPropertyDescriptor;
55 for (var key in obj) {
56 if (key !== 'default' && Object.prototype.hasOwnProperty.call(obj, key)) {
57 var desc = hasPropertyDescriptor
58 ? Object.getOwnPropertyDescriptor(obj, key)
59 : null;
60 if (desc && (desc.get || desc.set)) {
61 Object.defineProperty(newObj, key, desc);
62 } else {
63 newObj[key] = obj[key];
64 }
65 }
66 }
67 newObj.default = obj;
68 if (cache) {
69 cache.set(obj, newObj);
70 }
71 return newObj;
72}
73
74/**
75 * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.
76 *
77 * This source code is licensed under the MIT license found in the
78 * LICENSE file in the root directory of this source tree.
79 *
80 */
81const env = {...process.env, HGPLAIN: '1'};
82const adapter = {
83 findChangedFiles: async (cwd, options) => {
84 const includePaths = (options && options.includePaths) || [];
85 const args = ['status', '-amnu'];
86
87 if (options && options.withAncestor) {
88 args.push('--rev', `min((!public() & ::.)+.)^`);
89 } else if (options && options.changedSince) {
90 args.push('--rev', `ancestor(., ${options.changedSince})`);
91 } else if (options && options.lastCommit === true) {
92 args.push('--change', '.');
93 }
94
95 args.push(...includePaths);
96 let result;
97
98 try {
99 result = await (0, _execa().default)('hg', args, {
100 cwd,
101 env
102 });
103 } catch (e) {
104 // TODO: Should we keep the original `message`?
105 e.message = e.stderr;
106 throw e;
107 }
108
109 return result.stdout
110 .split('\n')
111 .filter(s => s !== '')
112 .map(changedPath => path().resolve(cwd, changedPath));
113 },
114 getRoot: async cwd => {
115 try {
116 const result = await (0, _execa().default)('hg', ['root'], {
117 cwd,
118 env
119 });
120 return result.stdout;
121 } catch {
122 return null;
123 }
124 }
125};
126var _default = adapter;
127exports.default = _default;