astx
Version:
super powerful structural search and replace for JavaScript and TypeScript to automate your refactoring
106 lines (86 loc) • 3.02 kB
JavaScript
var _interopRequireDefault = require('@babel/runtime/helpers/interopRequireDefault')
var _typeof = require('@babel/runtime/helpers/typeof')
Object.defineProperty(exports, '__esModule', {
value: true,
})
exports.Backend = void 0
var _createClass2 = _interopRequireDefault(
require('@babel/runtime/helpers/createClass')
)
var _classCallCheck2 = _interopRequireDefault(
require('@babel/runtime/helpers/classCallCheck')
)
var _defineProperty2 = _interopRequireDefault(
require('@babel/runtime/helpers/defineProperty')
)
var _parse = require('./parse')
var template = _interopRequireWildcard(require('./template'))
function _getRequireWildcardCache(nodeInterop) {
if (typeof WeakMap !== 'function') return null
var cacheBabelInterop = new WeakMap()
var cacheNodeInterop = new WeakMap()
return (_getRequireWildcardCache = function _getRequireWildcardCache(
nodeInterop
) {
return nodeInterop ? cacheNodeInterop : cacheBabelInterop
})(nodeInterop)
}
function _interopRequireWildcard(obj, nodeInterop) {
if (!nodeInterop && obj && obj.__esModule) {
return obj
}
if (
obj === null ||
(_typeof(obj) !== 'object' && typeof obj !== 'function')
) {
return {
default: obj,
}
}
var cache = _getRequireWildcardCache(nodeInterop)
if (cache && cache.has(obj)) {
return cache.get(obj)
}
var newObj = {}
var hasPropertyDescriptor =
Object.defineProperty && Object.getOwnPropertyDescriptor
for (var key in obj) {
if (key !== 'default' && Object.prototype.hasOwnProperty.call(obj, key)) {
var desc = hasPropertyDescriptor
? Object.getOwnPropertyDescriptor(obj, key)
: null
if (desc && (desc.get || desc.set)) {
Object.defineProperty(newObj, key, desc)
} else {
newObj[key] = obj[key]
}
}
}
newObj['default'] = obj
if (cache) {
cache.set(obj, newObj)
}
return newObj
}
var Backend = /*#__PURE__*/ (0, _createClass2['default'])(function Backend() {
;(0, _classCallCheck2['default'])(this, Backend)
;(0, _defineProperty2['default'])(this, 't', void 0)
;(0, _defineProperty2['default'])(this, 'parse', void 0)
;(0, _defineProperty2['default'])(this, 'parseExpression', void 0)
;(0, _defineProperty2['default'])(this, 'parseStatements', void 0)
;(0, _defineProperty2['default'])(this, 'template', void 0)
;(0, _defineProperty2['default'])(this, 'parsePattern', void 0)
;(0, _defineProperty2['default'])(this, 'parsePatternToNodes', void 0)
;(0, _defineProperty2['default'])(this, 'generate', void 0)
;(0, _defineProperty2['default'])(this, 'location', void 0)
;(0, _defineProperty2['default'])(this, 'comments', void 0)
this.template = {
statements: template.statements.bind(this),
statement: template.statement.bind(this),
expression: template.expression.bind(this),
}
this.parsePattern = _parse.parsePattern.bind(this)
this.parsePatternToNodes = _parse.parsePatternToNodes.bind(this)
})
exports.Backend = Backend