extra-react-hooks 0.1.11 → 0.1.14

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.
Files changed (52) hide show
  1. package/README.md +43 -5
  2. package/dist/es2015/index.min.mjs +3 -18
  3. package/dist/es2015/index.min.mjs.map +1 -1
  4. package/dist/es2015/index.mjs +11239 -16563
  5. package/dist/es2015/index.mjs.map +1 -1
  6. package/dist/es2015/index.umd.js +11241 -16562
  7. package/dist/es2015/index.umd.js.map +1 -1
  8. package/dist/es2015/index.umd.min.js +3 -18
  9. package/dist/es2015/index.umd.min.js.map +1 -1
  10. package/dist/es2018/index.min.mjs +3 -18
  11. package/dist/es2018/index.min.mjs.map +1 -1
  12. package/dist/es2018/index.mjs +11239 -16563
  13. package/dist/es2018/index.mjs.map +1 -1
  14. package/dist/es2018/index.umd.js +11241 -16562
  15. package/dist/es2018/index.umd.js.map +1 -1
  16. package/dist/es2018/index.umd.min.js +3 -18
  17. package/dist/es2018/index.umd.min.js.map +1 -1
  18. package/lib/es2015/index.d.ts +3 -0
  19. package/lib/es2015/index.js +3 -0
  20. package/lib/es2015/index.js.map +1 -1
  21. package/lib/es2015/use-finite-state-machine.js +5 -2
  22. package/lib/es2015/use-finite-state-machine.js.map +1 -1
  23. package/lib/es2015/use-is-first-render.d.ts +1 -0
  24. package/lib/es2015/use-is-first-render.js +25 -0
  25. package/lib/es2015/use-is-first-render.js.map +1 -0
  26. package/lib/es2015/use-multiple-selection.d.ts +13 -0
  27. package/lib/es2015/use-multiple-selection.js +39 -0
  28. package/lib/es2015/use-multiple-selection.js.map +1 -0
  29. package/lib/es2015/use-single-selection.d.ts +5 -6
  30. package/lib/es2015/use-single-selection.js +4 -4
  31. package/lib/es2015/use-single-selection.js.map +1 -1
  32. package/lib/es2015/use-update-effect.d.ts +2 -0
  33. package/lib/es2015/use-update-effect.js +15 -0
  34. package/lib/es2015/use-update-effect.js.map +1 -0
  35. package/lib/es2018/index.d.ts +3 -0
  36. package/lib/es2018/index.js +3 -0
  37. package/lib/es2018/index.js.map +1 -1
  38. package/lib/es2018/use-finite-state-machine.js +5 -2
  39. package/lib/es2018/use-finite-state-machine.js.map +1 -1
  40. package/lib/es2018/use-is-first-render.d.ts +1 -0
  41. package/lib/es2018/use-is-first-render.js +25 -0
  42. package/lib/es2018/use-is-first-render.js.map +1 -0
  43. package/lib/es2018/use-multiple-selection.d.ts +13 -0
  44. package/lib/es2018/use-multiple-selection.js +39 -0
  45. package/lib/es2018/use-multiple-selection.js.map +1 -0
  46. package/lib/es2018/use-single-selection.d.ts +5 -6
  47. package/lib/es2018/use-single-selection.js +4 -4
  48. package/lib/es2018/use-single-selection.js.map +1 -1
  49. package/lib/es2018/use-update-effect.d.ts +2 -0
  50. package/lib/es2018/use-update-effect.js +15 -0
  51. package/lib/es2018/use-update-effect.js.map +1 -0
  52. package/package.json +14 -14
package/README.md CHANGED
@@ -14,20 +14,45 @@ function useToggle(initialState: boolean = false): [on: boolean, toggle: () => v
14
14
 
15
15
  ### useSingleSelection
16
16
  ```ts
17
- interface IOption<T> {
17
+ interface ISingleSelectionOption<T> {
18
18
  value: T
19
19
  index: number
20
20
  selected: boolean
21
- select: () => void
21
+
22
+ select(): void
22
23
  }
23
24
 
24
- function useSingleSelection<T>(values: T[], defaultIndex: number): {
25
+ function useSingleSelection<T>(
26
+ values: T[]
27
+ , defaultSelectedIndex: number
28
+ ): {
25
29
  value: T
26
- options: Array<IOption<T>>
30
+ options: Array<ISingleSelectionOption<T>>
27
31
  }
28
32
  function useSingleSelection<T>(values: T[]): {
29
33
  value: T | undefined
30
- options: Array<IOption<T>>
34
+ options: Array<ISingleSelectionOption<T>>
35
+ }
36
+ ```
37
+
38
+ ### useMultipleSelection
39
+ ```ts
40
+ interface IMultipleSelectionOption<T> {
41
+ value: T
42
+ index: number
43
+ selected: boolean
44
+
45
+ select(): void
46
+ unselect(): void
47
+ toggle(): void
48
+ }
49
+
50
+ function useMultipleSelection<T>(
51
+ values: T[]
52
+ , defaultSelectedIndexes: number[] = []
53
+ ): {
54
+ values: T[]
55
+ options: Array<IMultipleSelectionOption<T>>
31
56
  }
32
57
  ```
33
58
 
@@ -36,6 +61,14 @@ function useSingleSelection<T>(values: T[]): {
36
61
  function useMount(effect: EffectCallback): void
37
62
  ```
38
63
 
64
+ ### useUpdateEffect
65
+ ```ts
66
+ function useUpdateEffect(
67
+ effect: EffectCallback
68
+ , deps?: React.DependencyList
69
+ ): void
70
+ ```
71
+
39
72
  ### useStateCycle
40
73
  ```ts
41
74
  function useStateCycle<T>(
@@ -49,6 +82,11 @@ function useStateCycle<T>(
49
82
  function useIsMounted(): () => boolean
50
83
  ```
51
84
 
85
+ ### useIsFirstRender
86
+ ```ts
87
+ function useIsFirstRender(): () => boolean
88
+ ```
89
+
52
90
  ### useIncrement
53
91
  ```ts
54
92
  function useIncrement(