UNPKG

@graphql-mocks/falso

Version:

Fake GraphQL queries with graphql-mocks and Falso

133 lines (131 loc) 3.98 kB
'use strict'; var falso = require('@ngneat/falso'); var typeUtils = require('graphql-mocks/graphql/type-utils'); function _interopNamespaceDefault(e) { var n = Object.create(null); if (e) { Object.keys(e).forEach(function (k) { if (k !== 'default') { var d = Object.getOwnPropertyDescriptor(e, k); Object.defineProperty(n, k, d.get ? d : { enumerable: true, get: function () { return e[k]; } }); } }); } n.default = e; return Object.freeze(n); } var falso__namespace = /*#__PURE__*/_interopNamespaceDefault(falso); function guessFalsoFn(fieldName, returnType) { fieldName = fieldName.toLowerCase(); const returnTypeName = typeUtils.unwrap(returnType).name.toLowerCase(); if (returnTypeName === 'string') { if (fieldName.includes('name')) { return falso__namespace.randCity; } if (fieldName.includes('firstname')) { return falso__namespace.randFirstName; } if (fieldName.includes('lastname')) { return falso__namespace.randLastName; } if (fieldName.includes('email')) { return falso__namespace.randEmail; } if (fieldName.includes('gender') || fieldName.includes('sex')) { return falso__namespace.randGender; } if (fieldName.includes('city')) { return falso__namespace.randCity; } if (fieldName.includes('zipcode')) { return falso__namespace.randZipCode; } if (fieldName.includes('country')) { return falso__namespace.randCountry; } if (fieldName.includes('street')) { return falso__namespace.randStreetName; } if (fieldName.includes('color')) { return falso__namespace.randColor; } if (fieldName.includes('price')) { return () => falso__namespace.randAmount(); } if (fieldName.includes('date')) { return () => falso__namespace.randSoonDate().toString(); } if (fieldName.includes('currency')) { return falso__namespace.randCurrencyName; } if (fieldName.includes('creditcard')) { return falso__namespace.randCurrencyName; } if (fieldName.includes('image')) { return falso__namespace.randImg; } if (fieldName.includes('avatar')) { return falso__namespace.randAvatar; } if (fieldName.includes('username')) { return falso__namespace.randUserName; } if (fieldName.includes('password')) { return falso__namespace.randPassword; } if (fieldName.includes('ip')) { return falso__namespace.randIp; } if (fieldName.includes('url')) { return falso__namespace.randUrl; } if (fieldName.includes('phonenumber')) { return falso__namespace.randPhoneNumber; } if (fieldName.includes('locale')) { return falso__namespace.randLocale; } if (fieldName.includes('desc')) { return falso__namespace.randParagraph; } if (fieldName.includes('filename')) { return falso__namespace.randFileName; } if (fieldName.includes('filetype')) { return falso__namespace.randFileType; } if (fieldName.includes('time')) { return () => { const date = falso__namespace.randRecentDate(); return `${date.getHours()}:${date.getMinutes()} ${falso__namespace.rand(['am', 'pm'])}`; }; } if (fieldName.includes('id') || fieldName.includes('uuid')) { return falso__namespace.randUuid; } return falso__namespace.randWord; } if (returnTypeName === 'float') { return falso__namespace.randFloat; } if (returnTypeName === 'int') { return falso__namespace.randNumber; } if (returnTypeName === 'id') { return falso__namespace.randUuid; } if (returnTypeName === 'uuid') { return falso__namespace.randUuid; } if (returnTypeName === 'boolean') { return falso__namespace.randBoolean; } return () => void 0; } exports.guessFalsoFn = guessFalsoFn; //# sourceMappingURL=guess-falso-fn.js.map