-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathhooks.ts
39 lines (33 loc) · 982 Bytes
/
hooks.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import { createListenerHook, createMutatorHook } from '@vue-storefront/core/lib/hooks'
interface PriceRanges {
min: number,
max: number
}
const {
hook: beforeSetRangesHook,
executor: beforeSetRangesExecutor
} = createMutatorHook<PriceRanges, PriceRanges>()
const {
hook: afterSetRangesHook,
executor: afterSetRangesExecutor
} = createListenerHook<PriceRanges>()
/** Only for internal usage in this module */
const priceSliderHooksExecutors = {
beforeSetRanges: beforeSetRangesExecutor,
afterSetRanges: afterSetRangesExecutor
}
const priceSliderHooks = {
/** Hook is fired directly before setting new price ranges in vuex module
* @param [min: number, max: number]
* @return [number, number]
*/
beforeSetRanges: beforeSetRangesHook,
/** Hook is fired right after setting new price ranges in vuex module
* @param [min: number, max: number]
*/
afterSetRanges: afterSetRangesHook
}
export {
priceSliderHooks,
priceSliderHooksExecutors
}