@platform/state
Version:
A small, simple, strongly typed, [rx/observable] state-machine.
17 lines (16 loc) • 559 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.is = void 0;
exports.is = {
observable: function (input) { return hasAll(input, 'subscribe'); },
stateObject: function (input) { return hasAll(input, 'change'); },
};
var hasAll = function (input) {
var keys = [];
for (var _i = 1; _i < arguments.length; _i++) {
keys[_i - 1] = arguments[_i];
}
return (input !== null &&
typeof input === 'object' &&
keys.every(function (key) { return typeof input[key] === 'function'; }));
};