@reactivehub/cli
Version:
70 lines (61 loc) • 1.98 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _extends2 = require('babel-runtime/helpers/extends');
var _extends3 = _interopRequireDefault(_extends2);
var _api = require('../../services/api');
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const buildTemplate = ({ path, override } = {}, eventModel = {}) => ({
path,
merge: !override,
payload: eventModel
});
const questionPath = {
type: 'input',
name: 'path',
message: 'Enter the path name EX: /path/to/my/doc (wildcards allowed)'
};
const questions = () => [questionPath, {
type: 'input',
name: 'override',
message: 'Would you like to override the document content if it exists?'
}];
exports.default = {
name: 'FIRESTORE',
actions: [{
name: 'set',
buildTemplate,
questions,
deploy: (action, eventInfo) => {
const newAction = action;
const { template = {} } = newAction;
template.operation = 'set';
newAction.template = template;
return (0, _api.sendAction)(eventInfo, (0, _extends3.default)({ serviceAction: 'FIRESTORE' }, newAction));
}
}, {
name: 'update',
buildTemplate,
questions,
deploy: (action, eventInfo) => {
const newAction = action;
const { template = {} } = newAction;
template.operation = 'update';
newAction.template = template;
return (0, _api.sendAction)(eventInfo, (0, _extends3.default)({ serviceAction: 'FIRESTORE' }, newAction));
}
}, {
name: 'delete',
buildTemplate: answers => answers,
questions: () => [questionPath],
deploy: (action, eventInfo) => {
const newAction = action;
const { template = {} } = newAction;
template.operation = 'delete';
newAction.template = template;
return (0, _api.sendAction)(eventInfo, (0, _extends3.default)({ serviceAction: 'FIRESTORE' }, newAction));
}
}]
};
//# sourceMappingURL=FIRESTORE.js.map