@colisweb/rescript-toolkit 5.0.0 → 5.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
|
@@ -24,7 +24,6 @@ let useUpdateEffect = (fn, deps) => {
|
|
|
24
24
|
, deps)
|
|
25
25
|
}
|
|
26
26
|
|
|
27
|
-
let useIsMounted = ReactUse.useMountedState
|
|
28
27
|
let useTimeoutFn = ReactUse.useTimeoutFn
|
|
29
28
|
let useDebounce = ReactUse.useDebounce
|
|
30
29
|
let useDebounce2 = ReactUse.useDebounce2
|
|
@@ -198,7 +197,7 @@ let useRequest = (~debounce=true, fn, deps) => {
|
|
|
198
197
|
let lastCallId = React.useRef(0)
|
|
199
198
|
let canceled = React.useRef(false)
|
|
200
199
|
let (state, set) = React.useState(() => NotAsked)
|
|
201
|
-
let isMounted =
|
|
200
|
+
let isMounted = ReactUse.useMountedState(.)
|
|
202
201
|
|
|
203
202
|
let trigger = React.useCallback(args => {
|
|
204
203
|
lastCallId.current = lastCallId.current->SafeIncrement.increment
|
|
@@ -327,29 +326,13 @@ external useLocalStorageState: (
|
|
|
327
326
|
localstorageStateOptions<'state>,
|
|
328
327
|
) => ('state, ('state => 'state) => unit) = "default"
|
|
329
328
|
|
|
330
|
-
// ----------------------
|
|
331
|
-
// useIsMounted
|
|
332
|
-
// ----------------------
|
|
333
|
-
|
|
334
|
-
let useIsMounted = () => {
|
|
335
|
-
let mountedRef = React.useRef(false)
|
|
336
|
-
let get = React.useCallback(() => mountedRef.current, [])
|
|
337
|
-
|
|
338
|
-
React.useEffectOnEveryRender(() => {
|
|
339
|
-
mountedRef.current = true
|
|
340
|
-
Some(() => mountedRef.current = false)
|
|
341
|
-
})
|
|
342
|
-
|
|
343
|
-
get
|
|
344
|
-
}
|
|
345
|
-
|
|
346
329
|
external promiseErrorToJsObj: Js.Promise.error => Js.Exn.t = "%identity"
|
|
347
330
|
|
|
348
331
|
let usePromise = (~debounce=true, fn, deps) => {
|
|
349
332
|
let lastCallId = React.useRef(0)
|
|
350
333
|
let canceled = React.useRef(false)
|
|
351
334
|
let (state, set) = React.useState(() => NotAsked)
|
|
352
|
-
let isMounted =
|
|
335
|
+
let isMounted = ReactUse.useMountedState()
|
|
353
336
|
|
|
354
337
|
let trigger = React.useCallback(args => {
|
|
355
338
|
lastCallId.current = lastCallId.current->SafeIncrement.increment
|
|
@@ -384,7 +367,7 @@ let usePromiseV2 = (~debounce=true, fn, deps) => {
|
|
|
384
367
|
let lastCallId = React.useRef(0)
|
|
385
368
|
let canceled = React.useRef(false)
|
|
386
369
|
let (state, set) = React.useState(() => NotAsked)
|
|
387
|
-
let isMounted =
|
|
370
|
+
let isMounted = ReactUse.useMountedState()
|
|
388
371
|
|
|
389
372
|
let trigger = React.useCallback(() => {
|
|
390
373
|
lastCallId.current = lastCallId.current->SafeIncrement.increment
|
|
@@ -431,7 +414,7 @@ let usePromiseV3 = (~debounce=true, fn, deps) => {
|
|
|
431
414
|
let lastCallId = React.useRef(0)
|
|
432
415
|
let canceled = React.useRef(false)
|
|
433
416
|
let (state, set) = React.useState(() => NotAsked)
|
|
434
|
-
let isMounted =
|
|
417
|
+
let isMounted = ReactUse.useMountedState()
|
|
435
418
|
|
|
436
419
|
let trigger = React.useCallback(() => {
|
|
437
420
|
lastCallId.current = lastCallId.current->SafeIncrement.increment
|
package/src/mock/MockOverlay.res
CHANGED
|
@@ -12,9 +12,17 @@ let make = (~worker: Msw.worker, ~workerOptions: Msw.startOptions={}, ~className
|
|
|
12
12
|
|
|
13
13
|
React.useLayoutEffect(() => {
|
|
14
14
|
if mockEnabled {
|
|
15
|
-
worker
|
|
16
|
-
|
|
17
|
-
|
|
15
|
+
worker
|
|
16
|
+
->Msw.start(workerOptions)
|
|
17
|
+
->Promise.Js.toResult
|
|
18
|
+
->Promise.tapOk(_ => {
|
|
19
|
+
setWorkerStarted(_ => true)
|
|
20
|
+
Browser.LocalStorage.setItem(localStorageKey, Js.Nullable.return("true"))
|
|
21
|
+
})
|
|
22
|
+
->Promise.tapError(err => {
|
|
23
|
+
Toolkit.BrowserLogger.debug(err)
|
|
24
|
+
})
|
|
25
|
+
->ignore
|
|
18
26
|
} else {
|
|
19
27
|
worker->Msw.stop
|
|
20
28
|
setWorkerStarted(_ => false)
|
package/src/vendors/Msw.res
CHANGED
|
@@ -8,7 +8,7 @@ type rec startOptions = {serviceWorker?: serviceWorker, quiet?: bool}
|
|
|
8
8
|
and serviceWorker = {url: string}
|
|
9
9
|
|
|
10
10
|
@send
|
|
11
|
-
external start: (worker, startOptions) => unit = "start"
|
|
11
|
+
external start: (worker, startOptions) => Promise.Js.t<unit, unit> = "start"
|
|
12
12
|
@send
|
|
13
13
|
external stop: worker => unit = "stop"
|
|
14
14
|
|
package/src/vendors/ReactUse.res
CHANGED
|
@@ -26,7 +26,7 @@ external useTimeoutFn: (unit => unit, int) => (Js.Nullable.t<bool>, unit => unit
|
|
|
26
26
|
external useFirstMountState: unit => bool = "useFirstMountState"
|
|
27
27
|
|
|
28
28
|
@module("react-use")
|
|
29
|
-
external useMountedState: unit => unit => bool = "useMountedState"
|
|
29
|
+
external useMountedState: (. unit) => (. unit) => bool = "useMountedState"
|
|
30
30
|
|
|
31
31
|
@module("react-use")
|
|
32
32
|
external useUpdateEffect: (unit => option<unit => unit>, array<'a>) => unit = "useUpdateEffect"
|