* add: medusa admin hooks + tests * fix: remove unneeded props * fix: deps * fix: deps * fix: deps * fix: failing tests * fix: failing tests * fix: query key * add: yarn workspaces * fix: linting medusa-react * fix: add prepare script * fix: buildOptions * fix: useAdminShippingOptions query * fix: use qs instead for query params (#1019) * fix: formatting * debug: ci pipeline * debug: log node_modules structure * debug: use lerna bootstrap * debug: update node version * debug: print pkgs in workspace * debug: print pkgs in workspace * debug: print pkgs in workspace * debug: print pkgs in workspace * debug: add explicit build step * fix: jsdoc * debug: run build step * debug: fix build errors * debug: add build step to integration tests * fix: failing test * cleanup Co-authored-by: Sebastian Rindom <seb@medusajs.com> Co-authored-by: Sebastian Rindom <skrindom@gmail.com>
19 lines
545 B
TypeScript
19 lines
545 B
TypeScript
import { TQueryKey } from "../../types"
|
|
|
|
export const queryKeysFactory = <
|
|
T,
|
|
TListQueryType = any,
|
|
TDetailQueryType = string
|
|
>(
|
|
globalKey: T
|
|
) => {
|
|
const queryKeyFactory: TQueryKey<T, TListQueryType, TDetailQueryType> = {
|
|
all: [globalKey],
|
|
lists: () => [...queryKeyFactory.all, "list"],
|
|
list: (query?: TListQueryType) => [...queryKeyFactory.lists(), { query }],
|
|
details: () => [...queryKeyFactory.all, "detail"],
|
|
detail: (id: TDetailQueryType) => [...queryKeyFactory.details(), id],
|
|
}
|
|
return queryKeyFactory
|
|
}
|