11import { defaultNetwork , SupportedNetwork } from "@semaphore-protocol/utils/networks"
22import { AxiosRequestConfig } from "axios"
3- import { errorHandlers } from "@zk-kit/utils"
3+ import { requireString , requireObject , requireBoolean } from "@zk-kit/utils/error-handlers "
44import getURL from "./getURL"
55import request from "./request"
66import { GroupOptions , GroupResponse } from "./types"
@@ -24,7 +24,7 @@ export default class SemaphoreSubgraph {
2424 * @param networkOrSubgraphURL Either a supported network identifier or a direct URL to the subgraph.
2525 */
2626 constructor ( networkOrSubgraphURL : SupportedNetwork | string = defaultNetwork ) {
27- errorHandlers . requireString ( networkOrSubgraphURL , "networkOrSubgraphURL" )
27+ requireString ( networkOrSubgraphURL , "networkOrSubgraphURL" )
2828
2929 if ( typeof networkOrSubgraphURL === "string" && networkOrSubgraphURL . startsWith ( "http" ) ) {
3030 this . _url = networkOrSubgraphURL
@@ -73,14 +73,12 @@ export default class SemaphoreSubgraph {
7373 * @returns A promise that resolves to an array of group details.
7474 */
7575 async getGroups ( options : GroupOptions = { } ) : Promise < GroupResponse [ ] > {
76- errorHandlers . requireObject ( options , "options" )
76+ requireObject ( options , "options" )
7777
7878 const { members = false , validatedProofs = false } = options
7979
80- // NOTE: There is no function to check if a parameter is a boolean, so currently we are just checking if it is defined or not
81- // Once requireBoolean is implemented, we can use it here
82- errorHandlers . requireDefined ( members , "members" )
83- errorHandlers . requireDefined ( validatedProofs , "validatedProofs" )
80+ requireBoolean ( members , "members" )
81+ requireBoolean ( validatedProofs , "validatedProofs" )
8482
8583 let filtersQuery = ""
8684
@@ -166,15 +164,13 @@ export default class SemaphoreSubgraph {
166164 * @returns A promise that resolves to the details of the specified group.
167165 */
168166 async getGroup ( groupId : string , options : Omit < GroupOptions , "filters" > = { } ) : Promise < GroupResponse > {
169- errorHandlers . requireString ( groupId , "groupId" )
170- errorHandlers . requireObject ( options , "options" )
167+ requireString ( groupId , "groupId" )
168+ requireObject ( options , "options" )
171169
172170 const { members = false , validatedProofs = false } = options
173171
174- // NOTE: There is no function to check if a parameter is a boolean, so currently we are just checking if it is defined or not
175- // Once requireBoolean is implemented, we can use it here
176- errorHandlers . requireDefined ( members , "members" )
177- errorHandlers . requireDefined ( validatedProofs , "validatedProofs" )
172+ requireBoolean ( members , "members" )
173+ requireBoolean ( validatedProofs , "validatedProofs" )
178174
179175 const config : AxiosRequestConfig = {
180176 method : "post" ,
@@ -251,8 +247,8 @@ export default class SemaphoreSubgraph {
251247 * @returns A promise that resolves to true if the member is part of the group, otherwise false.
252248 */
253249 async isGroupMember ( groupId : string , member : string ) : Promise < boolean > {
254- errorHandlers . requireString ( groupId , "groupId" )
255- errorHandlers . requireString ( member , "member" )
250+ requireString ( groupId , "groupId" )
251+ requireString ( member , "member" )
256252
257253 const config : AxiosRequestConfig = {
258254 method : "post" ,
0 commit comments