123456789101112131415161718192021222324252627282930313233 |
- "use strict";
-
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.default = is;
-
- var _shallowEqual = require("../utils/shallowEqual");
-
- var _isType = require("./isType");
-
- var _isPlaceholderType = require("./isPlaceholderType");
-
- var _definitions = require("../definitions");
-
- function is(type, node, opts) {
- if (!node) return false;
- const matches = (0, _isType.default)(node.type, type);
-
- if (!matches) {
- if (!opts && node.type === "Placeholder" && type in _definitions.FLIPPED_ALIAS_KEYS) {
- return (0, _isPlaceholderType.default)(node.expectedNode, type);
- }
-
- return false;
- }
-
- if (typeof opts === "undefined") {
- return true;
- } else {
- return (0, _shallowEqual.default)(node, opts);
- }
- }
|