UNPKG

@reactionable/amplify

Version:
44 lines 1.46 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.query = void 0; const tslib_1 = require("tslib"); const api_graphql_1 = require("@aws-amplify/api-graphql"); function isGraphQLResult(arg) { return !!(arg && "object" === typeof arg && (arg["data"] !== undefined || arg["errors"] !== undefined)); } function extractData(result) { const data = result[Object.keys(result)[0]]; return data; } function query({ query, variables, rawData, }) { return tslib_1.__awaiter(this, void 0, void 0, function* () { let result; try { result = yield api_graphql_1.GraphQLAPI.graphql((0, api_graphql_1.graphqlOperation)(query, variables)); } catch (error) { if (error instanceof Error) { throw error; } if (!isGraphQLResult(error) || !error.errors) { throw new Error("An unexpected error occurred"); } throw new Error(error.errors.map((errorItem) => errorItem.message).join(", ")); } if (!result || !isGraphQLResult(result) || !result.data) { throw new Error("No data"); } if (rawData) { return result.data; } const data = extractData(result.data); if (!data) { throw new Error("No data"); } return data; }); } exports.query = query; //# sourceMappingURL=Query.js.map