Skip to content

Commit

Permalink
feat(router): route base types
Browse files Browse the repository at this point in the history
  • Loading branch information
AliMD committed Mar 4, 2022
1 parent 070c0f6 commit 769e863
Showing 1 changed file with 33 additions and 6 deletions.
39 changes: 33 additions & 6 deletions package/router/src/type.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,44 @@ import '@vatr/signal/type';

declare global {
interface VatrSignals {
'vatr-router-change': unknown;
'router-change': Route;
}

interface VatrRequestSignals {
'vatr-router-change': {
pathname: string;
search: string;
hash: string;
};
'router-change': RequestRouteParam;
}
}

export interface Route
{
// href: https://cms.ishia.org/list/article/3/20/q=ali/?v=2#header
hostname: string; // cms.ishia.org
pathname: string; // /cms.ishia.org/list/article/3/20/q=ali/?r=1#hash1
page?: string; // list
section?: string; // 'article'
partList: Array<string | number>; // [3, 20]
optionList: ParameterList; // {q: 'ali'}
queryList: ParameterList; // {v: 2}
hash?: string; // '#header'
}

export interface RequestRouteParam {
pathname: string;
search?: string;
hash?: string;
/**
* Update browser history state (history.pushState or history.replaceState).
*/
pushState?: boolean | 'replace';
}

// export interface RequestRouteParam
// {
// page?: string;
// sectionList?: Array<string | number>;
// queryParamList?: ParameterList;
// }

export interface InitOptions {
/**
* A navigation trigger for Vatr Router that translated clicks on `<a>` links into navigation signal.
Expand Down

0 comments on commit 769e863

Please sign in to comment.