@loona/core
Version:
App State Management done with GraphQL (core package)
32 lines • 3.51 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc
*/
import { setUpdateMetadata } from '../metadata/update';
import { getNameOfMutation, getMutation, isMutation } from '../mutation';
/**
* @param {?} mutation
* @return {?}
*/
export function Update(mutation) {
return function (target, name, _descriptor) {
/** @type {?} */
var mutationName;
if (isMutation(mutation)) {
/** @type {?} */
var document_1 = getMutation(mutation);
if (!document_1) {
throw new Error("Mutation " + ((/** @type {?} */ (mutation))).name + " is missing a static property 'mutation'");
}
mutationName = getNameOfMutation(document_1);
}
else if (typeof mutation === 'string') {
mutationName = mutation;
}
else {
mutationName = getNameOfMutation(mutation);
}
setUpdateMetadata(target, name, mutationName);
};
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vQGxvb25hL2NvcmUvIiwic291cmNlcyI6WyJkZWNvcmF0b3JzL3VwZGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQ0EsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUMsTUFBTSxhQUFhLENBQUM7Ozs7O0FBSXZFLE1BQU0sVUFBVSxNQUFNLENBQUMsUUFBZ0Q7SUFDckUsT0FBTyxVQUNMLE1BQVcsRUFDWCxJQUFZLEVBQ1osV0FBa0Q7O1lBRTlDLFlBQW9CO1FBRXhCLElBQUksVUFBVSxDQUFDLFFBQVEsQ0FBQyxFQUFFOztnQkFDbEIsVUFBUSxHQUFHLFdBQVcsQ0FBQyxRQUFRLENBQUM7WUFFdEMsSUFBSSxDQUFDLFVBQVEsRUFBRTtnQkFDYixNQUFNLElBQUksS0FBSyxDQUNiLGNBQ0UsQ0FBQyxtQkFBQSxRQUFRLEVBQU8sQ0FBQyxDQUFDLElBQUksNkNBQ2tCLENBQzNDLENBQUM7YUFDSDtZQUVELFlBQVksR0FBRyxpQkFBaUIsQ0FBQyxVQUFRLENBQUMsQ0FBQztTQUM1QzthQUFNLElBQUksT0FBTyxRQUFRLEtBQUssUUFBUSxFQUFFO1lBQ3ZDLFlBQVksR0FBRyxRQUFRLENBQUM7U0FDekI7YUFBTTtZQUNMLFlBQVksR0FBRyxpQkFBaUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztTQUM1QztRQUVELGlCQUFpQixDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFDaEQsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RG9jdW1lbnROb2RlfSBmcm9tICdncmFwaHFsJztcbmltcG9ydCB7c2V0VXBkYXRlTWV0YWRhdGF9IGZyb20gJy4uL21ldGFkYXRhL3VwZGF0ZSc7XG5pbXBvcnQge2dldE5hbWVPZk11dGF0aW9uLCBnZXRNdXRhdGlvbiwgaXNNdXRhdGlvbn0gZnJvbSAnLi4vbXV0YXRpb24nO1xuaW1wb3J0IHtVcGRhdGVNZXRob2R9IGZyb20gJy4uL3R5cGVzL3VwZGF0ZSc7XG5pbXBvcnQge011dGF0aW9uT2JqZWN0fSBmcm9tICcuLi90eXBlcy9tdXRhdGlvbic7XG5cbmV4cG9ydCBmdW5jdGlvbiBVcGRhdGUobXV0YXRpb246IE11dGF0aW9uT2JqZWN0IHwgRG9jdW1lbnROb2RlIHwgc3RyaW5nKSB7XG4gIHJldHVybiBmdW5jdGlvbihcbiAgICB0YXJnZXQ6IGFueSxcbiAgICBuYW1lOiBzdHJpbmcsXG4gICAgX2Rlc2NyaXB0b3I6IFR5cGVkUHJvcGVydHlEZXNjcmlwdG9yPFVwZGF0ZU1ldGhvZD4sXG4gICkge1xuICAgIGxldCBtdXRhdGlvbk5hbWU6IHN0cmluZztcblxuICAgIGlmIChpc011dGF0aW9uKG11dGF0aW9uKSkge1xuICAgICAgY29uc3QgZG9jdW1lbnQgPSBnZXRNdXRhdGlvbihtdXRhdGlvbik7XG5cbiAgICAgIGlmICghZG9jdW1lbnQpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICAgIGBNdXRhdGlvbiAke1xuICAgICAgICAgICAgKG11dGF0aW9uIGFzIGFueSkubmFtZVxuICAgICAgICAgIH0gaXMgbWlzc2luZyBhIHN0YXRpYyBwcm9wZXJ0eSAnbXV0YXRpb24nYCxcbiAgICAgICAgKTtcbiAgICAgIH1cblxuICAgICAgbXV0YXRpb25OYW1lID0gZ2V0TmFtZU9mTXV0YXRpb24oZG9jdW1lbnQpO1xuICAgIH0gZWxzZSBpZiAodHlwZW9mIG11dGF0aW9uID09PSAnc3RyaW5nJykge1xuICAgICAgbXV0YXRpb25OYW1lID0gbXV0YXRpb247XG4gICAgfSBlbHNlIHtcbiAgICAgIG11dGF0aW9uTmFtZSA9IGdldE5hbWVPZk11dGF0aW9uKG11dGF0aW9uKTtcbiAgICB9XG5cbiAgICBzZXRVcGRhdGVNZXRhZGF0YSh0YXJnZXQsIG5hbWUsIG11dGF0aW9uTmFtZSk7XG4gIH07XG59XG4iXX0=