astx
Version:
super powerful structural search and replace for JavaScript and TypeScript to automate your refactoring
341 lines (286 loc) • 9.14 kB
JavaScript
var _interopRequireDefault = require('@babel/runtime/helpers/interopRequireDefault')
Object.defineProperty(exports, '__esModule', {
value: true,
})
exports['default'] = astxGlob
var _regenerator = _interopRequireDefault(require('@babel/runtime/regenerator'))
var _defineProperty2 = _interopRequireDefault(
require('@babel/runtime/helpers/defineProperty')
)
var _awaitAsyncGenerator2 = _interopRequireDefault(
require('@babel/runtime/helpers/awaitAsyncGenerator')
)
var _wrapAsyncGenerator2 = _interopRequireDefault(
require('@babel/runtime/helpers/wrapAsyncGenerator')
)
var _path = _interopRequireDefault(require('path'))
var _glob = _interopRequireDefault(require('./glob'))
function ownKeys(object, enumerableOnly) {
var keys = Object.keys(object)
if (Object.getOwnPropertySymbols) {
var symbols = Object.getOwnPropertySymbols(object)
enumerableOnly &&
(symbols = symbols.filter(function (sym) {
return Object.getOwnPropertyDescriptor(object, sym).enumerable
})),
keys.push.apply(keys, symbols)
}
return keys
}
function _objectSpread(target) {
for (var i = 1; i < arguments.length; i++) {
var source = null != arguments[i] ? arguments[i] : {}
i % 2
? ownKeys(Object(source), !0).forEach(function (key) {
;(0, _defineProperty2['default'])(target, key, source[key])
})
: Object.getOwnPropertyDescriptors
? Object.defineProperties(
target,
Object.getOwnPropertyDescriptors(source)
)
: ownKeys(Object(source)).forEach(function (key) {
Object.defineProperty(
target,
key,
Object.getOwnPropertyDescriptor(source, key)
)
})
}
return target
}
function _asyncIterator(iterable) {
var method,
async,
sync,
retry = 2
for (
'undefined' != typeof Symbol &&
((async = Symbol.asyncIterator), (sync = Symbol.iterator));
retry--;
) {
if (async && null != (method = iterable[async]))
return method.call(iterable)
if (sync && null != (method = iterable[sync]))
return new AsyncFromSyncIterator(method.call(iterable))
;(async = '@@asyncIterator'), (sync = '@@iterator')
}
throw new TypeError('Object is not async iterable')
}
function AsyncFromSyncIterator(s) {
function AsyncFromSyncIteratorContinuation(r) {
if (Object(r) !== r)
return Promise.reject(new TypeError(r + ' is not an object.'))
var done = r.done
return Promise.resolve(r.value).then(function (value) {
return {
value: value,
done: done,
}
})
}
return (
(AsyncFromSyncIterator = function AsyncFromSyncIterator(s) {
;(this.s = s), (this.n = s.next)
}),
(AsyncFromSyncIterator.prototype = {
s: null,
n: null,
next: function next() {
return AsyncFromSyncIteratorContinuation(
this.n.apply(this.s, arguments)
)
},
return: function _return(value) {
var ret = this.s['return']
return void 0 === ret
? Promise.resolve({
value: value,
done: !0,
})
: AsyncFromSyncIteratorContinuation(ret.apply(this.s, arguments))
},
throw: function _throw(value) {
var thr = this.s['return']
return void 0 === thr
? Promise.reject(value)
: AsyncFromSyncIteratorContinuation(thr.apply(this.s, arguments))
},
}),
new AsyncFromSyncIterator(s)
)
}
var exts = ['js', 'jsx', 'flow', 'ts', 'tsx', 'cjs', 'mjs', 'esm', 'mts', 'cts']
function astxGlob(_x) {
return _astxGlob.apply(this, arguments)
}
function _astxGlob() {
_astxGlob = (0, _wrapAsyncGenerator2['default'])(
/*#__PURE__*/ _regenerator['default'].mark(function _callee(options) {
var _iteratorAbruptCompletion,
_didIteratorError,
_iteratorError,
_iterator,
_step,
entry,
_iteratorAbruptCompletion2,
_didIteratorError2,
_iteratorError2,
_iterator2,
_step2,
file
return _regenerator['default'].wrap(
function _callee$(_context) {
while (1) {
switch ((_context.prev = _context.next)) {
case 0:
_iteratorAbruptCompletion = false
_didIteratorError = false
_context.prev = 2
_iterator = _asyncIterator((0, _glob['default'])(options))
case 4:
_context.next = 6
return (0, _awaitAsyncGenerator2['default'])(_iterator.next())
case 6:
if (
!(_iteratorAbruptCompletion = !(_step = _context.sent).done)
) {
_context.next = 45
break
}
entry = _step.value
if (!entry.endsWith('/')) {
_context.next = 40
break
}
_iteratorAbruptCompletion2 = false
_didIteratorError2 = false
_context.prev = 11
_iterator2 = _asyncIterator(
(0, _glob['default'])(
_objectSpread(
_objectSpread({}, options),
{},
{
nodir: true,
includeMatcher: undefined,
include: _path['default'].join(
entry,
'**',
'*.{'.concat(exts.join(','), '}')
),
}
)
)
)
case 13:
_context.next = 15
return (0, _awaitAsyncGenerator2['default'])(_iterator2.next())
case 15:
if (
!(_iteratorAbruptCompletion2 = !(_step2 = _context.sent).done)
) {
_context.next = 22
break
}
file = _step2.value
_context.next = 19
return file
case 19:
_iteratorAbruptCompletion2 = false
_context.next = 13
break
case 22:
_context.next = 28
break
case 24:
_context.prev = 24
_context.t0 = _context['catch'](11)
_didIteratorError2 = true
_iteratorError2 = _context.t0
case 28:
_context.prev = 28
_context.prev = 29
if (
!(_iteratorAbruptCompletion2 && _iterator2['return'] != null)
) {
_context.next = 33
break
}
_context.next = 33
return (0, _awaitAsyncGenerator2['default'])(
_iterator2['return']()
)
case 33:
_context.prev = 33
if (!_didIteratorError2) {
_context.next = 36
break
}
throw _iteratorError2
case 36:
return _context.finish(33)
case 37:
return _context.finish(28)
case 38:
_context.next = 42
break
case 40:
_context.next = 42
return entry
case 42:
_iteratorAbruptCompletion = false
_context.next = 4
break
case 45:
_context.next = 51
break
case 47:
_context.prev = 47
_context.t1 = _context['catch'](2)
_didIteratorError = true
_iteratorError = _context.t1
case 51:
_context.prev = 51
_context.prev = 52
if (
!(_iteratorAbruptCompletion && _iterator['return'] != null)
) {
_context.next = 56
break
}
_context.next = 56
return (0, _awaitAsyncGenerator2['default'])(
_iterator['return']()
)
case 56:
_context.prev = 56
if (!_didIteratorError) {
_context.next = 59
break
}
throw _iteratorError
case 59:
return _context.finish(56)
case 60:
return _context.finish(51)
case 61:
case 'end':
return _context.stop()
}
}
},
_callee,
null,
[
[2, 47, 51, 61],
[11, 24, 28, 38],
[29, , 33, 37],
[52, , 56, 60],
]
)
})
)
return _astxGlob.apply(this, arguments)
}