.ts
TypeScript
(application/typescript)
// 1st-party
import { makeService } from "@ethicdevs/react-monolith";
// service
import type { UsersServiceAPI, UsersServiceDeps } from "./types";
// service methods
import { default as makeGetUserByEmailAddress } from "./getUserByEmailAddress";
import { default as makeGetUserById } from "./getUserById";
import { default as makeGetUserByUsername } from "./getUserByUsername";
import { default as makeGetUserOrganizationMemberships } from "./getUserOrganizationMemberships";
import { default as makeGetUserOrganizations } from "./getUserOrganizations";
import { default as makeGetUserRepositories } from "./getUserRepositories";

export const makeUsersService = makeService<UsersServiceAPI, UsersServiceDeps>({
  getUserByEmailAddress: makeGetUserByEmailAddress,
  getUserById: makeGetUserById,
  getUserByUsername: makeGetUserByUsername,
  getUserOrganizationMemberships: makeGetUserOrganizationMemberships,
  getUserOrganizations: makeGetUserOrganizations,
  getUserRepositories: makeGetUserRepositories,
});