import faker from '@faker-js/faker'; const arrayOf = (f: () => T) => { const length = 3; return Array.from({ length, }, f); }; const objectOf = (f: () => T) => { const keys = ['foo', 'bar', 'qux']; return keys.reduce>((object, key) => { object[key] = f(); return object; }, {}); }; const factories = { boolean: () => faker.datatype.boolean(), date_iso_8601: () => faker.datatype.datetime().toISOString().slice(0, 10), date_time_iso_8601: () => faker.datatype.datetime().toISOString(), decimal: () => faker.datatype.float(), double: () => faker.datatype.float(), integer: () => faker.datatype.number(), json: () => faker.datatype.json(), long: () => faker.datatype.number(), object: () => faker.datatype.json(), string: () => faker.datatype.string(), unit: () => undefined, uuid: () => faker.datatype.uuid(), 'com.bryzek.apidoc.common.v0.models.audit': () => { throw new Error('Not Implemented'); }, 'com.bryzek.apidoc.common.v0.models.reference': () => { throw new Error('Not Implemented'); }, 'com.bryzek.apidoc.generator.v0.models.file': () => { throw new Error('Not Implemented'); }, 'com.bryzek.apidoc.generator.v0.models.generator': () => { throw new Error('Not Implemented'); }, 'com.bryzek.apidoc.generator.v0.models.healthcheck': () => { throw new Error('Not Implemented'); }, 'com.bryzek.apidoc.spec.v0.models.service': () => { throw new Error('Not Implemented'); }, 'januar.apidoc.apidoc.api.v0.enums.original_type': (): januar.apidoc.apidoc.api.v0.enums.OriginalType => faker.helpers.arrayElement(['api_json', 'avro_idl', 'service_json', 'swagger_json']), 'januar.apidoc.apidoc.api.v0.enums.publication': (): januar.apidoc.apidoc.api.v0.enums.Publication => faker.helpers.arrayElement([ 'membership_requests.create', 'memberships.create', 'applications.create', 'versions.create', ]), 'januar.apidoc.apidoc.api.v0.enums.visibility': (): januar.apidoc.apidoc.api.v0.enums.Visibility => faker.helpers.arrayElement(['user', 'organization', 'public']), 'januar.apidoc.apidoc.api.v0.models.application': (): januar.apidoc.apidoc.api.v0.models.Application => ({ guid: factories.uuid(), organization: factories['com.bryzek.apidoc.common.v0.models.reference'](), name: factories.string(), key: factories.string(), visibility: factories['januar.apidoc.apidoc.api.v0.enums.visibility'](), description: factories.string(), audit: factories['com.bryzek.apidoc.common.v0.models.audit'](), }), 'januar.apidoc.apidoc.api.v0.models.application_form': (): januar.apidoc.apidoc.api.v0.models.ApplicationForm => ({ name: factories.string(), key: factories.string(), description: factories.string(), visibility: factories['januar.apidoc.apidoc.api.v0.enums.visibility'](), }), 'januar.apidoc.apidoc.api.v0.models.application_summary': (): januar.apidoc.apidoc.api.v0.models.ApplicationSummary => ({ type: 'application_summary', guid: factories.uuid(), organization: factories['com.bryzek.apidoc.common.v0.models.reference'](), key: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.attribute': (): januar.apidoc.apidoc.api.v0.models.Attribute => ({ guid: factories.uuid(), name: factories.string(), description: factories.string(), audit: factories['com.bryzek.apidoc.common.v0.models.audit'](), }), 'januar.apidoc.apidoc.api.v0.models.attribute_form': (): januar.apidoc.apidoc.api.v0.models.AttributeForm => ({ name: factories.string(), description: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.attribute_summary': (): januar.apidoc.apidoc.api.v0.models.AttributeSummary => ({ guid: factories.uuid(), name: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.attribute_value': (): januar.apidoc.apidoc.api.v0.models.AttributeValue => ({ guid: factories.uuid(), attribute: factories['januar.apidoc.apidoc.api.v0.models.attribute_summary'](), value: factories.string(), radomstuff: factories.string(), radomstuff2: factories.string(), audit: factories['com.bryzek.apidoc.common.v0.models.audit'](), }), 'januar.apidoc.apidoc.api.v0.models.attribute_value_form': (): januar.apidoc.apidoc.api.v0.models.AttributeValueForm => ({ value: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.change': (): januar.apidoc.apidoc.api.v0.models.Change => ({ guid: factories.uuid(), organization: factories['com.bryzek.apidoc.common.v0.models.reference'](), application: factories['com.bryzek.apidoc.common.v0.models.reference'](), from_version: factories['januar.apidoc.apidoc.api.v0.models.change_version'](), to_version: factories['januar.apidoc.apidoc.api.v0.models.change_version'](), diff: factories['januar.apidoc.apidoc.api.v0.unions.diff'](), changed_at: factories.date_time_iso_8601(), changed_by: factories['januar.apidoc.apidoc.api.v0.models.user_summary'](), audit: factories['com.bryzek.apidoc.common.v0.models.audit'](), }), 'januar.apidoc.apidoc.api.v0.models.change_version': (): januar.apidoc.apidoc.api.v0.models.ChangeVersion => ({ guid: factories.uuid(), version: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.cleartext_token': (): januar.apidoc.apidoc.api.v0.models.CleartextToken => ({ token: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.code': (): januar.apidoc.apidoc.api.v0.models.Code => ({ generator: factories['januar.apidoc.apidoc.api.v0.models.generator_with_service'](), source: factories.string(), files: arrayOf(() => factories['com.bryzek.apidoc.generator.v0.models.file']()), }), 'januar.apidoc.apidoc.api.v0.models.diff_breaking': (): januar.apidoc.apidoc.api.v0.models.DiffBreaking => ({ type: 'diff_breaking', description: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.diff_non_breaking': (): januar.apidoc.apidoc.api.v0.models.DiffNonBreaking => ({ type: 'diff_non_breaking', description: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.domain': (): januar.apidoc.apidoc.api.v0.models.Domain => ({ name: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.email_verification_confirmation_form': (): januar.apidoc.apidoc.api.v0.models.EmailVerificationConfirmationForm => ({ token: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.error': (): januar.apidoc.apidoc.api.v0.models.Error => ({ code: factories.string(), message: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.generator_form': (): januar.apidoc.apidoc.api.v0.models.GeneratorForm => ({ service_guid: factories.uuid(), generator: factories['com.bryzek.apidoc.generator.v0.models.generator'](), }), 'januar.apidoc.apidoc.api.v0.models.generator_service': (): januar.apidoc.apidoc.api.v0.models.GeneratorService => ({ guid: factories.uuid(), uri: factories.string(), audit: factories['com.bryzek.apidoc.common.v0.models.audit'](), }), 'januar.apidoc.apidoc.api.v0.models.generator_service_form': (): januar.apidoc.apidoc.api.v0.models.GeneratorServiceForm => ({ uri: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.generator_with_service': (): januar.apidoc.apidoc.api.v0.models.GeneratorWithService => ({ service: factories['januar.apidoc.apidoc.api.v0.models.generator_service'](), generator: factories['com.bryzek.apidoc.generator.v0.models.generator'](), }), 'januar.apidoc.apidoc.api.v0.models.item': (): januar.apidoc.apidoc.api.v0.models.Item => ({ guid: factories.uuid(), detail: factories['januar.apidoc.apidoc.api.v0.unions.item_detail'](), label: factories.string(), description: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.membership': (): januar.apidoc.apidoc.api.v0.models.Membership => ({ guid: factories.uuid(), user: factories['januar.apidoc.apidoc.api.v0.models.user'](), organization: factories['januar.apidoc.apidoc.api.v0.models.organization'](), role: factories.string(), audit: factories['com.bryzek.apidoc.common.v0.models.audit'](), }), 'januar.apidoc.apidoc.api.v0.models.membership_request': (): januar.apidoc.apidoc.api.v0.models.MembershipRequest => ({ guid: factories.uuid(), user: factories['januar.apidoc.apidoc.api.v0.models.user'](), organization: factories['januar.apidoc.apidoc.api.v0.models.organization'](), role: factories.string(), audit: factories['com.bryzek.apidoc.common.v0.models.audit'](), }), 'januar.apidoc.apidoc.api.v0.models.move_form': (): januar.apidoc.apidoc.api.v0.models.MoveForm => ({ org_key: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.organization': (): januar.apidoc.apidoc.api.v0.models.Organization => ({ guid: factories.uuid(), key: factories.string(), name: factories.string(), namespace: factories.string(), visibility: factories['januar.apidoc.apidoc.api.v0.enums.visibility'](), domains: arrayOf(() => factories['januar.apidoc.apidoc.api.v0.models.domain']()), audit: factories['com.bryzek.apidoc.common.v0.models.audit'](), }), 'januar.apidoc.apidoc.api.v0.models.organization_form': (): januar.apidoc.apidoc.api.v0.models.OrganizationForm => ({ name: factories.string(), key: factories.string(), namespace: factories.string(), visibility: factories['januar.apidoc.apidoc.api.v0.enums.visibility'](), domains: arrayOf(() => factories.string()), }), 'januar.apidoc.apidoc.api.v0.models.original': (): januar.apidoc.apidoc.api.v0.models.Original => ({ type: factories['januar.apidoc.apidoc.api.v0.enums.original_type'](), data: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.original_form': (): januar.apidoc.apidoc.api.v0.models.OriginalForm => ({ type: factories['januar.apidoc.apidoc.api.v0.enums.original_type'](), data: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.password_reset': (): januar.apidoc.apidoc.api.v0.models.PasswordReset => ({ token: factories.string(), password: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.password_reset_request': (): januar.apidoc.apidoc.api.v0.models.PasswordResetRequest => ({ email: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.password_reset_success': (): januar.apidoc.apidoc.api.v0.models.PasswordResetSuccess => ({ user_guid: factories.uuid(), }), 'januar.apidoc.apidoc.api.v0.models.subscription': (): januar.apidoc.apidoc.api.v0.models.Subscription => ({ guid: factories.uuid(), organization: factories['januar.apidoc.apidoc.api.v0.models.organization'](), user: factories['januar.apidoc.apidoc.api.v0.models.user'](), publication: factories['januar.apidoc.apidoc.api.v0.enums.publication'](), audit: factories['com.bryzek.apidoc.common.v0.models.audit'](), }), 'januar.apidoc.apidoc.api.v0.models.subscription_form': (): januar.apidoc.apidoc.api.v0.models.SubscriptionForm => ({ organization_key: factories.string(), user_guid: factories.uuid(), publication: factories['januar.apidoc.apidoc.api.v0.enums.publication'](), }), 'januar.apidoc.apidoc.api.v0.models.token': (): januar.apidoc.apidoc.api.v0.models.Token => ({ guid: factories.uuid(), user: factories['januar.apidoc.apidoc.api.v0.models.user'](), masked_token: factories.string(), description: factories.string(), audit: factories['com.bryzek.apidoc.common.v0.models.audit'](), }), 'januar.apidoc.apidoc.api.v0.models.token_form': (): januar.apidoc.apidoc.api.v0.models.TokenForm => ({ user_guid: factories.uuid(), description: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.user': (): januar.apidoc.apidoc.api.v0.models.User => ({ guid: factories.uuid(), email: factories.string(), nickname: factories.string(), name: factories.string(), audit: factories['com.bryzek.apidoc.common.v0.models.audit'](), }), 'januar.apidoc.apidoc.api.v0.models.user_form': (): januar.apidoc.apidoc.api.v0.models.UserForm => ({ email: factories.string(), password: factories.string(), nickname: factories.string(), name: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.user_summary': (): januar.apidoc.apidoc.api.v0.models.UserSummary => ({ guid: factories.uuid(), nickname: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.user_update_form': (): januar.apidoc.apidoc.api.v0.models.UserUpdateForm => ({ email: factories.string(), nickname: factories.string(), name: factories.string(), }), 'januar.apidoc.apidoc.api.v0.models.validation': (): januar.apidoc.apidoc.api.v0.models.Validation => ({ valid: factories.boolean(), errors: arrayOf(() => factories.string()), }), 'januar.apidoc.apidoc.api.v0.models.version': (): januar.apidoc.apidoc.api.v0.models.Version => ({ guid: factories.uuid(), organization: factories['com.bryzek.apidoc.common.v0.models.reference'](), application: factories['com.bryzek.apidoc.common.v0.models.reference'](), version: factories.string(), original: factories['januar.apidoc.apidoc.api.v0.models.original'](), service: factories['com.bryzek.apidoc.spec.v0.models.service'](), audit: factories['com.bryzek.apidoc.common.v0.models.audit'](), }), 'januar.apidoc.apidoc.api.v0.models.version_form': (): januar.apidoc.apidoc.api.v0.models.VersionForm => ({ original_form: factories['januar.apidoc.apidoc.api.v0.models.original_form'](), visibility: factories['januar.apidoc.apidoc.api.v0.enums.visibility'](), }), 'januar.apidoc.apidoc.api.v0.models.watch': (): januar.apidoc.apidoc.api.v0.models.Watch => ({ guid: factories.uuid(), user: factories['januar.apidoc.apidoc.api.v0.models.user'](), organization: factories['januar.apidoc.apidoc.api.v0.models.organization'](), application: factories['januar.apidoc.apidoc.api.v0.models.application'](), audit: factories['com.bryzek.apidoc.common.v0.models.audit'](), }), 'januar.apidoc.apidoc.api.v0.models.watch_form': (): januar.apidoc.apidoc.api.v0.models.WatchForm => ({ user_guid: factories.uuid(), organization_key: factories.string(), application_key: factories.string(), }), 'januar.apidoc.apidoc.api.v0.unions.diff': (): januar.apidoc.apidoc.api.v0.unions.Diff => { const f = faker.helpers.arrayElement([ () => factories['januar.apidoc.apidoc.api.v0.models.diff_breaking'](), () => factories['januar.apidoc.apidoc.api.v0.models.diff_non_breaking'](), ]); return f(); }, 'januar.apidoc.apidoc.api.v0.unions.item_detail': (): januar.apidoc.apidoc.api.v0.unions.ItemDetail => { const f = faker.helpers.arrayElement([ () => factories['januar.apidoc.apidoc.api.v0.models.application_summary'](), ]); return f(); }, }; export const makeApplication = () => factories['januar.apidoc.apidoc.api.v0.models.application'](); export const makeApplicationForm = () => factories['januar.apidoc.apidoc.api.v0.models.application_form'](); export const makeApplicationSummary = () => factories['januar.apidoc.apidoc.api.v0.models.application_summary'](); export const makeAttribute = () => factories['januar.apidoc.apidoc.api.v0.models.attribute'](); export const makeAttributeForm = () => factories['januar.apidoc.apidoc.api.v0.models.attribute_form'](); export const makeAttributeSummary = () => factories['januar.apidoc.apidoc.api.v0.models.attribute_summary'](); export const makeAttributeValue = () => factories['januar.apidoc.apidoc.api.v0.models.attribute_value'](); export const makeAttributeValueForm = () => factories['januar.apidoc.apidoc.api.v0.models.attribute_value_form'](); export const makeChange = () => factories['januar.apidoc.apidoc.api.v0.models.change'](); export const makeChangeVersion = () => factories['januar.apidoc.apidoc.api.v0.models.change_version'](); export const makeCleartextToken = () => factories['januar.apidoc.apidoc.api.v0.models.cleartext_token'](); export const makeCode = () => factories['januar.apidoc.apidoc.api.v0.models.code'](); export const makeDiff = () => factories['januar.apidoc.apidoc.api.v0.unions.diff'](); export const makeDiffBreaking = () => factories['januar.apidoc.apidoc.api.v0.models.diff_breaking'](); export const makeDiffNonBreaking = () => factories['januar.apidoc.apidoc.api.v0.models.diff_non_breaking'](); export const makeDomain = () => factories['januar.apidoc.apidoc.api.v0.models.domain'](); export const makeEmailVerificationConfirmationForm = () => factories['januar.apidoc.apidoc.api.v0.models.email_verification_confirmation_form'](); export const makeError = () => factories['januar.apidoc.apidoc.api.v0.models.error'](); export const makeGeneratorForm = () => factories['januar.apidoc.apidoc.api.v0.models.generator_form'](); export const makeGeneratorService = () => factories['januar.apidoc.apidoc.api.v0.models.generator_service'](); export const makeGeneratorServiceForm = () => factories['januar.apidoc.apidoc.api.v0.models.generator_service_form'](); export const makeGeneratorWithService = () => factories['januar.apidoc.apidoc.api.v0.models.generator_with_service'](); export const makeItem = () => factories['januar.apidoc.apidoc.api.v0.models.item'](); export const makeItemDetail = () => factories['januar.apidoc.apidoc.api.v0.unions.item_detail'](); export const makeMembership = () => factories['januar.apidoc.apidoc.api.v0.models.membership'](); export const makeMembershipRequest = () => factories['januar.apidoc.apidoc.api.v0.models.membership_request'](); export const makeMoveForm = () => factories['januar.apidoc.apidoc.api.v0.models.move_form'](); export const makeOrganization = () => factories['januar.apidoc.apidoc.api.v0.models.organization'](); export const makeOrganizationForm = () => factories['januar.apidoc.apidoc.api.v0.models.organization_form'](); export const makeOriginal = () => factories['januar.apidoc.apidoc.api.v0.models.original'](); export const makeOriginalForm = () => factories['januar.apidoc.apidoc.api.v0.models.original_form'](); export const makeOriginalType = () => factories['januar.apidoc.apidoc.api.v0.enums.original_type'](); export const makePasswordReset = () => factories['januar.apidoc.apidoc.api.v0.models.password_reset'](); export const makePasswordResetRequest = () => factories['januar.apidoc.apidoc.api.v0.models.password_reset_request'](); export const makePasswordResetSuccess = () => factories['januar.apidoc.apidoc.api.v0.models.password_reset_success'](); export const makePublication = () => factories['januar.apidoc.apidoc.api.v0.enums.publication'](); export const makeSubscription = () => factories['januar.apidoc.apidoc.api.v0.models.subscription'](); export const makeSubscriptionForm = () => factories['januar.apidoc.apidoc.api.v0.models.subscription_form'](); export const makeToken = () => factories['januar.apidoc.apidoc.api.v0.models.token'](); export const makeTokenForm = () => factories['januar.apidoc.apidoc.api.v0.models.token_form'](); export const makeUser = () => factories['januar.apidoc.apidoc.api.v0.models.user'](); export const makeUserForm = () => factories['januar.apidoc.apidoc.api.v0.models.user_form'](); export const makeUserSummary = () => factories['januar.apidoc.apidoc.api.v0.models.user_summary'](); export const makeUserUpdateForm = () => factories['januar.apidoc.apidoc.api.v0.models.user_update_form'](); export const makeValidation = () => factories['januar.apidoc.apidoc.api.v0.models.validation'](); export const makeVersion = () => factories['januar.apidoc.apidoc.api.v0.models.version'](); export const makeVersionForm = () => factories['januar.apidoc.apidoc.api.v0.models.version_form'](); export const makeVisibility = () => factories['januar.apidoc.apidoc.api.v0.enums.visibility'](); export const makeWatch = () => factories['januar.apidoc.apidoc.api.v0.models.watch'](); export const makeWatchForm = () => factories['januar.apidoc.apidoc.api.v0.models.watch_form']();