Skip to content

Commit

Permalink
Use "Add" rather than "Register"
Browse files Browse the repository at this point in the history
  • Loading branch information
pleek91 committed Jan 3, 2025
1 parent 05eeeab commit b068427
Show file tree
Hide file tree
Showing 4 changed files with 37 additions and 37 deletions.
12 changes: 6 additions & 6 deletions src/compositions/hooks.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import { inject, onUnmounted } from 'vue'
import { useRouterDepth } from '@/compositions/useRouterDepth'
import { RouterNotInstalledError } from '@/errors'
import { routerHooksKey, RouterHooks } from '@/services/createRouterHooks'
import { RegisterAfterRouteHook, RegisterBeforeRouteHook, AfterRouteHook, AfterRouteHookLifecycle, BeforeRouteHook, BeforeRouteHookLifecycle } from '@/types/hooks'
import { AddAfterRouteHook, AddBeforeRouteHook, AfterRouteHook, AfterRouteHookLifecycle, BeforeRouteHook, BeforeRouteHookLifecycle } from '@/types/hooks'

function useRouterHooks(): RouterHooks {
const hooks = inject(routerHooksKey)
Expand Down Expand Up @@ -48,7 +48,7 @@ function afterComponentHookFactory(lifecycle: AfterRouteHookLifecycle) {
* @returns {RouteHookRemove} A function that removes the added hook.
* @group Hooks
*/
export const onBeforeRouteLeave: RegisterBeforeRouteHook = beforeComponentHookFactory('onBeforeRouteUpdate')
export const onBeforeRouteLeave: AddBeforeRouteHook = beforeComponentHookFactory('onBeforeRouteUpdate')

/**
* Registers a hook that is called before a route is updated. Must be called from setup.
Expand All @@ -58,7 +58,7 @@ export const onBeforeRouteLeave: RegisterBeforeRouteHook = beforeComponentHookFa
* @returns {RouteHookRemove} A function that removes the added hook.
* @group Hooks
*/
export const onBeforeRouteUpdate: RegisterBeforeRouteHook = beforeComponentHookFactory('onBeforeRouteLeave')
export const onBeforeRouteUpdate: AddBeforeRouteHook = beforeComponentHookFactory('onBeforeRouteLeave')

/**
* Registers a hook that is called after a route has been entered. Must be called during setup.
Expand All @@ -68,7 +68,7 @@ export const onBeforeRouteUpdate: RegisterBeforeRouteHook = beforeComponentHookF
* @returns {RouteHookRemove} A function that removes the added hook.
* @group Hooks
*/
export const onAfterRouteEnter: RegisterAfterRouteHook = afterComponentHookFactory('onAfterRouteEnter')
export const onAfterRouteEnter: AddAfterRouteHook = afterComponentHookFactory('onAfterRouteEnter')

/**
* Registers a hook that is called after a route has been left. Must be called during setup.
Expand All @@ -78,7 +78,7 @@ export const onAfterRouteEnter: RegisterAfterRouteHook = afterComponentHookFacto
* @returns {RouteHookRemove} A function that removes the added hook.
* @group Hooks
*/
export const onAfterRouteLeave: RegisterAfterRouteHook = afterComponentHookFactory('onAfterRouteUpdate')
export const onAfterRouteLeave: AddAfterRouteHook = afterComponentHookFactory('onAfterRouteUpdate')

/**
* Registers a hook that is called after a route has been updated. Must be called during setup.
Expand All @@ -88,4 +88,4 @@ export const onAfterRouteLeave: RegisterAfterRouteHook = afterComponentHookFacto
* @returns {RouteHookRemove} A function that removes the added hook.
* @group Hooks
*/
export const onAfterRouteUpdate: RegisterAfterRouteHook = afterComponentHookFactory('onAfterRouteLeave')
export const onAfterRouteUpdate: AddAfterRouteHook = afterComponentHookFactory('onAfterRouteLeave')
38 changes: 19 additions & 19 deletions src/services/createRouterHooks.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { InjectionKey } from 'vue'
import { RegisterAfterRouteHook, RegisterBeforeRouteHook, RegisterGlobalRouteHooks, AfterHookContext, AfterRouteHook, AfterRouteHookResponse, BeforeHookContext, BeforeRouteHook, BeforeRouteHookResponse, RegisterComponentAfterRouteHook, RegisterComponentBeforeRouteHook, RouteHookAfterRunner, RouteHookBeforeRunner } from '@/types/hooks'
import { AddAfterRouteHook, AddBeforeRouteHook, AddGlobalRouteHooks, AfterHookContext, AfterRouteHook, AfterRouteHookResponse, BeforeHookContext, BeforeRouteHook, BeforeRouteHookResponse, AddComponentAfterRouteHook, ComponentBeforeRouteHook, RouteHookAfterRunner, RouteHookBeforeRunner } from '@/types/hooks'
import { createCallbackContext } from './createCallbackContext'
import { RouteHooks } from '@/models/RouteHooks'
import { getRouteHookCondition } from './hooks'
Expand All @@ -14,15 +14,15 @@ export const routerHooksKey: InjectionKey<RouterHooks> = Symbol()
export type RouterHooks = {
runBeforeRouteHooks: RouteHookBeforeRunner,
runAfterRouteHooks: RouteHookAfterRunner,
addComponentBeforeRouteHook: RegisterComponentBeforeRouteHook,
addComponentAfterRouteHook: RegisterComponentAfterRouteHook,
addGlobalRouteHooks: RegisterGlobalRouteHooks,
onBeforeRouteEnter: RegisterBeforeRouteHook,
onBeforeRouteUpdate: RegisterBeforeRouteHook,
onBeforeRouteLeave: RegisterBeforeRouteHook,
onAfterRouteEnter: RegisterAfterRouteHook,
onAfterRouteUpdate: RegisterAfterRouteHook,
onAfterRouteLeave: RegisterAfterRouteHook,
addComponentBeforeRouteHook: ComponentBeforeRouteHook,
addComponentAfterRouteHook: AddComponentAfterRouteHook,
addGlobalRouteHooks: AddGlobalRouteHooks,
onBeforeRouteEnter: AddBeforeRouteHook,
onBeforeRouteUpdate: AddBeforeRouteHook,
onBeforeRouteLeave: AddBeforeRouteHook,
onAfterRouteEnter: AddAfterRouteHook,
onAfterRouteUpdate: AddAfterRouteHook,
onAfterRouteLeave: AddAfterRouteHook,
}

export function createRouterHooks(): RouterHooks {
Expand All @@ -33,37 +33,37 @@ export function createRouterHooks(): RouterHooks {

const { reject, push, replace, abort } = createCallbackContext()

const onBeforeRouteEnter: RegisterBeforeRouteHook = (hook) => {
const onBeforeRouteEnter: AddBeforeRouteHook = (hook) => {
store.global.onBeforeRouteEnter.add(hook)

return () => store.global.onBeforeRouteEnter.delete(hook)
}

const onBeforeRouteUpdate: RegisterBeforeRouteHook = (hook) => {
const onBeforeRouteUpdate: AddBeforeRouteHook = (hook) => {
store.global.onBeforeRouteUpdate.add(hook)

return () => store.global.onBeforeRouteUpdate.delete(hook)
}

const onBeforeRouteLeave: RegisterBeforeRouteHook = (hook) => {
const onBeforeRouteLeave: AddBeforeRouteHook = (hook) => {
store.global.onBeforeRouteLeave.add(hook)

return () => store.global.onBeforeRouteLeave.delete(hook)
}

const onAfterRouteEnter: RegisterAfterRouteHook = (hook) => {
const onAfterRouteEnter: AddAfterRouteHook = (hook) => {
store.global.onAfterRouteEnter.add(hook)

return () => store.global.onAfterRouteEnter.delete(hook)
}

const onAfterRouteUpdate: RegisterAfterRouteHook = (hook) => {
const onAfterRouteUpdate: AddAfterRouteHook = (hook) => {
store.global.onAfterRouteUpdate.add(hook)

return () => store.global.onAfterRouteUpdate.delete(hook)
}

const onAfterRouteLeave: RegisterAfterRouteHook = (hook) => {
const onAfterRouteLeave: AddAfterRouteHook = (hook) => {
store.global.onAfterRouteLeave.add(hook)

return () => store.global.onAfterRouteLeave.delete(hook)
Expand Down Expand Up @@ -159,7 +159,7 @@ export function createRouterHooks(): RouterHooks {
}
}

const addComponentBeforeRouteHook: RegisterComponentBeforeRouteHook = ({ lifecycle, depth, hook }) => {
const addComponentBeforeRouteHook: ComponentBeforeRouteHook = ({ lifecycle, depth, hook }) => {
const condition = getRouteHookCondition(lifecycle)
const hooks = store.component[lifecycle]

Expand All @@ -176,7 +176,7 @@ export function createRouterHooks(): RouterHooks {
return () => hooks.delete(wrapped)
}

const addComponentAfterRouteHook: RegisterComponentAfterRouteHook = ({ lifecycle, depth, hook }) => {
const addComponentAfterRouteHook: AddComponentAfterRouteHook = ({ lifecycle, depth, hook }) => {
const condition = getRouteHookCondition(lifecycle)
const hooks = store.component[lifecycle]

Expand All @@ -193,7 +193,7 @@ export function createRouterHooks(): RouterHooks {
return () => hooks.delete(wrapped)
}

const addGlobalRouteHooks: RegisterGlobalRouteHooks = (hooks) => {
const addGlobalRouteHooks: AddGlobalRouteHooks = (hooks) => {
hooks.onBeforeRouteEnter.forEach((hook) => onBeforeRouteEnter(hook))
hooks.onBeforeRouteUpdate.forEach((hook) => onBeforeRouteUpdate(hook))
hooks.onBeforeRouteLeave.forEach((hook) => onBeforeRouteLeave(hook))
Expand Down
10 changes: 5 additions & 5 deletions src/types/hooks.ts
Original file line number Diff line number Diff line change
Expand Up @@ -37,31 +37,31 @@ export type BeforeRouteHookRegistration = {
depth: number,
}

export type RegisterComponentBeforeRouteHook = (hook: BeforeRouteHookRegistration) => RouteHookRemove
export type ComponentBeforeRouteHook = (hook: BeforeRouteHookRegistration) => RouteHookRemove

export type AfterRouteHookRegistration = {
lifecycle: 'onAfterRouteEnter' | 'onAfterRouteUpdate' | 'onAfterRouteLeave',
hook: AfterRouteHook,
depth: number,
}

export type RegisterComponentAfterRouteHook = (hook: AfterRouteHookRegistration) => RouteHookRemove
export type AddComponentAfterRouteHook = (hook: AfterRouteHookRegistration) => RouteHookRemove

export type RegisterGlobalRouteHooks = (hooks: RouteHooks) => void
export type AddGlobalRouteHooks = (hooks: RouteHooks) => void

/**
* Adds a hook that is called before a route change. Returns a function to remove the hook.
* @param hook - {@link BeforeRouteHook} The hook function to add.
* @returns {RouteHookRemove} A function that removes the added hook.
*/
export type RegisterBeforeRouteHook = (hook: BeforeRouteHook) => RouteHookRemove
export type AddBeforeRouteHook = (hook: BeforeRouteHook) => RouteHookRemove

/**
* Adds a hook that is called after a route change. Returns a function to remove the hook.
* @param hook - {@link AfterRouteHook} The hook function to add.
* @returns {RouteHookRemove} A function that removes the added hook.
*/
export type RegisterAfterRouteHook = (hook: AfterRouteHook) => RouteHookRemove
export type AddAfterRouteHook = (hook: AfterRouteHook) => RouteHookRemove

/**
* Context provided to route hooks, containing context of previous route and functions for triggering rejections and push/replace to another route.
Expand Down
14 changes: 7 additions & 7 deletions src/types/router.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { App, Component } from 'vue'
import { RouterHistoryMode } from '@/services/createRouterHistory'
import { RouterRoute } from '@/services/createRouterRoute'
import { RegisterAfterRouteHook, RegisterBeforeRouteHook, WithHooks } from '@/types/hooks'
import { AddAfterRouteHook, AddBeforeRouteHook, WithHooks } from '@/types/hooks'
import { PrefetchConfig } from '@/types/prefetch'
import { ResolvedRoute } from '@/types/resolved'
import { Routes } from '@/types/route'
Expand Down Expand Up @@ -96,27 +96,27 @@ export type Router<
/**
* Registers a hook to be called before a route is entered.
*/
onBeforeRouteEnter: RegisterBeforeRouteHook,
onBeforeRouteEnter: AddBeforeRouteHook,
/**
* Registers a hook to be called before a route is left.
*/
onBeforeRouteLeave: RegisterBeforeRouteHook,
onBeforeRouteLeave: AddBeforeRouteHook,
/**
* Registers a hook to be called before a route is updated.
*/
onBeforeRouteUpdate: RegisterBeforeRouteHook,
onBeforeRouteUpdate: AddBeforeRouteHook,
/**
* Registers a hook to be called after a route is entered.
*/
onAfterRouteEnter: RegisterAfterRouteHook,
onAfterRouteEnter: AddAfterRouteHook,
/**
* Registers a hook to be called after a route is left.
*/
onAfterRouteLeave: RegisterAfterRouteHook,
onAfterRouteLeave: AddAfterRouteHook,
/**
* Registers a hook to be called after a route is updated.
*/
onAfterRouteUpdate: RegisterAfterRouteHook,
onAfterRouteUpdate: AddAfterRouteHook,
/**
* Given a URL, returns true if host does not match host stored on router instance
*/
Expand Down

0 comments on commit b068427

Please sign in to comment.