mobx-react-wrap-request
Advanced tools
Comparing version 1.0.0 to 1.0.1
import { AnnotationsMap } from 'mobx'; | ||
import * as pkg from 'react-wrap-request'; | ||
import { WrapRequest } from 'wrap-request'; | ||
declare type ToupleArray = ReadonlyArray<any> | readonly [any]; | ||
declare type NoInfer<T> = [T][T extends any ? 0 : never]; | ||
declare type ReactWrapRequestParams = Parameters<typeof pkg.useWrapRequest>; | ||
declare function buildNewWrapRequest(overrides: AnnotationsMap<WrapRequest, NoInfer<PropertyKey>> | undefined, ...args: ReactWrapRequestParams): WrapRequest<unknown, any, unknown, any>; | ||
declare function newUseWrapRequest(...args: ReactWrapRequestParams): ReturnType<typeof buildNewWrapRequest>; | ||
declare namespace newUseWrapRequest { | ||
var withObservableOverrides: (overrides: AnnotationsMap<WrapRequest<any, any, any, any>, PropertyKey>) => (req: (...deps: readonly any[] | readonly [any]) => Promise<unknown>, options?: pkg.ReactWrapRequestOptions<readonly any[] | readonly [any], unknown> | undefined) => WrapRequest<unknown, any, unknown, any>; | ||
} | ||
export { newUseWrapRequest as useWrapRequest }; | ||
export declare const useWrapRequest: { | ||
<T, Y extends ToupleArray>(req: (...deps: Y) => Promise<T>, options?: import("react-wrap-request").ReactWrapRequestOptions<Y, T> | undefined): WrapRequest<T, Y[0], T, any>; | ||
withObservableOverrides<T_1, Y_1 extends ToupleArray>(overrides: AnnotationsMap<WrapRequest, NoInfer<PropertyKey>>): (req: (...deps: Y_1) => Promise<T_1>, options?: import("react-wrap-request").ReactWrapRequestOptions<Y_1, T_1> | undefined) => WrapRequest<T_1, Y_1[0], T_1, any>; | ||
}; | ||
export {}; |
@@ -5,22 +5,16 @@ "use strict"; | ||
const mobx_1 = require("mobx"); | ||
const pkg = require("react-wrap-request"); | ||
const originalReactWrapRequest = pkg.useWrapRequest; | ||
function buildNewWrapRequest(overrides, ...args) { | ||
const res = originalReactWrapRequest(...args); | ||
if (overrides) { | ||
(0, mobx_1.makeAutoObservable)(res, overrides); | ||
} | ||
return res; | ||
} | ||
function newUseWrapRequest(...args) { | ||
return buildNewWrapRequest(undefined, ...args); | ||
} | ||
exports.useWrapRequest = newUseWrapRequest; | ||
function withObservableOverrides(overrides) { | ||
const react_wrap_request_1 = require("react-wrap-request"); | ||
const useWrapRequest = (...args) => { | ||
return (0, react_wrap_request_1.useWrapRequest)(...args); | ||
}; | ||
exports.useWrapRequest = useWrapRequest; | ||
exports.useWrapRequest.withObservableOverrides = (overrides) => { | ||
return (...args) => { | ||
return buildNewWrapRequest(overrides, ...args); | ||
const res = (0, react_wrap_request_1.useWrapRequest)(...args); | ||
if (overrides) { | ||
(0, mobx_1.makeAutoObservable)(res, overrides); | ||
} | ||
return res; | ||
}; | ||
} | ||
newUseWrapRequest.withObservableOverrides = withObservableOverrides; | ||
pkg.useWrapRequest = newUseWrapRequest; | ||
}; | ||
//# sourceMappingURL=index.js.map |
{ | ||
"name": "mobx-react-wrap-request", | ||
"version": "1.0.0", | ||
"version": "1.0.1", | ||
"description": "", | ||
@@ -24,2 +24,3 @@ "main": "dist/index.js", | ||
"mobx": ">= 6.x", | ||
"mobx-wrap-request": ">= 2.2.1", | ||
"react-wrap-request": ">= 3.0.1" | ||
@@ -26,0 +27,0 @@ }, |
import { AnnotationsMap, makeAutoObservable } from 'mobx'; | ||
import * as pkg from 'react-wrap-request'; | ||
import { useWrapRequest as useFn } from 'react-wrap-request'; | ||
import { WrapRequest } from 'wrap-request'; | ||
const originalReactWrapRequest = pkg.useWrapRequest; | ||
type ToupleArray = ReadonlyArray<any> | readonly [any]; | ||
type ReactWrapRequestParams<T, Y extends ToupleArray> = Parameters< | ||
typeof useFn<T, Y> | ||
>; | ||
type NoInfer<T> = [T][T extends any ? 0 : never]; | ||
type ReactWrapRequestParams = Parameters<typeof pkg.useWrapRequest>; | ||
function buildNewWrapRequest( | ||
overrides: AnnotationsMap<WrapRequest, NoInfer<PropertyKey>> | undefined, | ||
...args: ReactWrapRequestParams | ||
) { | ||
const res = originalReactWrapRequest(...args); | ||
export const useWrapRequest = <T, Y extends ToupleArray>( | ||
...args: ReactWrapRequestParams<T, Y> | ||
) => { | ||
return useFn<T, Y>(...args); | ||
}; | ||
if (overrides) { | ||
makeAutoObservable(res, overrides); | ||
} | ||
useWrapRequest.withObservableOverrides = <T, Y extends ToupleArray>( | ||
overrides: AnnotationsMap<WrapRequest, NoInfer<PropertyKey>> | ||
) => { | ||
return (...args: ReactWrapRequestParams<T, Y>) => { | ||
const res = useFn(...args); | ||
return res; | ||
} | ||
if (overrides) { | ||
makeAutoObservable(res, overrides); | ||
} | ||
function newUseWrapRequest( | ||
...args: ReactWrapRequestParams | ||
): ReturnType<typeof buildNewWrapRequest> { | ||
return buildNewWrapRequest(undefined, ...args); | ||
} | ||
function withObservableOverrides( | ||
overrides: AnnotationsMap<WrapRequest, NoInfer<PropertyKey>> | ||
) { | ||
return (...args: ReactWrapRequestParams) => { | ||
return buildNewWrapRequest(overrides, ...args); | ||
return res; | ||
}; | ||
} | ||
newUseWrapRequest.withObservableOverrides = withObservableOverrides; | ||
(pkg as any).useWrapRequest = newUseWrapRequest; | ||
export { newUseWrapRequest as useWrapRequest }; | ||
}; |
Sorry, the diff of this file is not supported yet
5865
3
78