Class: StaticRoute
Defined in: packages/core/src/router/StaticRoute.ts:84
Utility for representing and manipulating a single static route in the
router's configuration using string representation of the path expression
with special param fields identified by :paramName
prefix.
Extends
AbstractRoute
<string
>
Constructors
new StaticRoute()
new StaticRoute(
name
,pathExpression
,controller
,view
,options
?):StaticRoute
Defined in: packages/core/src/router/StaticRoute.ts:97
Parameters
name
string
pathExpression
string
A path expression specifying the URL path
part matching this route (must not contain a query string),
optionally containing named parameter placeholders specified as
:parameterName
.
controller
view
options?
Partial
<RouteFactoryOptions
>
Returns
Inherit Doc
Overrides
Properties
_controller
protected
_controller:object
Defined in: packages/core/src/router/AbstractRoute.ts:58
The full name of Object Container alias identifying the controller associated with this route.
cached
cached:
null
|RouteController
|Promise
<RouteController
>
controller
controller:
AsyncRouteController
resolved
resolved:
boolean
Inherited from
_hasParameters
protected
_hasParameters:boolean
Defined in: packages/core/src/router/StaticRoute.ts:87
_matcher
protected
_matcher:RegExp
Defined in: packages/core/src/router/StaticRoute.ts:88
_name
protected
_name:string
Defined in: packages/core/src/router/AbstractRoute.ts:48
The unique name of this route, identifying it among the rest of the routes in the application.
Inherited from
_options
protected
_options:RouteFactoryOptions
Defined in: packages/core/src/router/AbstractRoute.ts:76
The route additional options.
Inherited from
_parameterNames
protected
_parameterNames:string
[]
Defined in: packages/core/src/router/StaticRoute.ts:86
_pathExpression
protected
_pathExpression:string
Defined in: packages/core/src/router/AbstractRoute.ts:53
Path expression used in route matching, to generate valid path with provided params and parsing params from current path.
Inherited from
_trimmedPathExpression
protected
_trimmedPathExpression:string
Defined in: packages/core/src/router/StaticRoute.ts:85
_view
protected
_view:object
Defined in: packages/core/src/router/AbstractRoute.ts:67
The full name or Object Container alias identifying the view class associated with this route.
cached
resolved
resolved:
boolean
view
view:
AsyncRouteView
Inherited from
Methods
_checkOptionalParamsOrder()
_checkOptionalParamsOrder(
allMainParams
):boolean
Defined in: packages/core/src/router/StaticRoute.ts:275
Check if all optional params are below required ones
Parameters
allMainParams
string
[]
Returns
boolean
_checkParametersOrder()
_checkParametersOrder(
clearedPathExpr
):boolean
Defined in: packages/core/src/router/StaticRoute.ts:301
Check if main parameters have correct order. It means that required param cannot follow optional one.
Parameters
clearedPathExpr
string
The cleared URL path (removed first and last slash, ...).
Returns
boolean
Returns TRUE if order is correct.
_cleanOptParamName()
_cleanOptParamName(
paramName
):string
Defined in: packages/core/src/router/StaticRoute.ts:524
Returns optional param name without "?"
Parameters
paramName
string
Full param name with "?"
Returns
string
Strict param name without "?"
_cleanUnusedOptionalParams()
_cleanUnusedOptionalParams(
path
):string
Defined in: packages/core/src/router/StaticRoute.ts:219
Remove unused optional param placeholders in path.
Parameters
path
string
Returns
string
_compileToRegExp()
_compileToRegExp(
pathExpression
):RegExp
Defined in: packages/core/src/router/StaticRoute.ts:402
Compiles the path expression to a regular expression that can be used for easier matching of URL paths against this route, and extracting the path parameter values from the URL path.
Parameters
pathExpression
string
The path expression to compile.
Returns
RegExp
The compiled regular expression.
_extractParameters()
_extractParameters(
parameterValues
):StringParameters
Defined in: packages/core/src/router/StaticRoute.ts:490
Extract parameters from given path.
Parameters
parameterValues
string
[]
Returns
_getClearParamName()
_getClearParamName(
rawParam
):string
Defined in: packages/core/src/router/StaticRoute.ts:255
Extract clear parameter name, e.q. '?name' or 'name'
Parameters
rawParam
string
Returns
string
_getParameterNames()
_getParameterNames(
pathExpression
):string
[]
Defined in: packages/core/src/router/StaticRoute.ts:545
Extracts the parameter names from the provided path expression.
Parameters
pathExpression
string
The path expression.
Returns
string
[]
The names of the parameters defined in the provided path expression.
_getParameters()
_getParameters(
path
):StringParameters
Defined in: packages/core/src/router/StaticRoute.ts:472
Parses the provided path and extract the in-path parameters. The method decodes the parameters and returns them in a hash object.
Parameters
path
string
Returns
_getSubparamPattern()
_getSubparamPattern(
delimiter
):string
Defined in: packages/core/src/router/StaticRoute.ts:266
Get pattern for subparameter.
Parameters
delimiter
string
Returns
string
_isOptionalParamInPath()
_isOptionalParamInPath(
path
,paramName
):boolean
Defined in: packages/core/src/router/StaticRoute.ts:237
Returns true, if paramName is placed in path.
Parameters
path
string
paramName
string
Returns
boolean
_isParamOptional()
_isParamOptional(
paramName
):boolean
Defined in: packages/core/src/router/StaticRoute.ts:534
Checks if parameter is optional or not.
Parameters
paramName
string
Returns
boolean
return true if is optional, otherwise false
_isRequiredParamInPath()
_isRequiredParamInPath(
path
,paramName
):boolean
Defined in: packages/core/src/router/StaticRoute.ts:246
Returns true, if paramName is placed in path and it's required.
Parameters
path
string
paramName
string
Returns
boolean
_replaceOptionalParametersInPath()
_replaceOptionalParametersInPath(
path
,optionalParams
):string
Defined in: packages/core/src/router/StaticRoute.ts:319
Convert main optional parameters to capture sequences
Parameters
path
string
The URL path.
optionalParams
string
[]
List of main optimal parameter expressions
Returns
string
RegExp pattern.
_replaceOptionalSubParametersInPath()
_replaceOptionalSubParametersInPath(
path
,optionalSubparamsOthers
,optionalSubparamsLast
):string
Defined in: packages/core/src/router/StaticRoute.ts:370
Convert optional subparameters to capture sequences
Parameters
path
string
The URL path (route definition).
optionalSubparamsOthers
string
[]
List of all subparam. expressions but last ones
optionalSubparamsLast
string
[]
List of last subparam. expressions
Returns
string
RegExp pattern.
_replaceRequiredSubParametersInPath()
_replaceRequiredSubParametersInPath(
path
,clearedPathExpr
):string
Defined in: packages/core/src/router/StaticRoute.ts:337
Convert required subparameters to capture sequences
Parameters
path
string
The URL path (route definition).
clearedPathExpr
string
The original cleared URL path.
Returns
string
RegExp pattern.
_substituteOptionalParamInPath()
_substituteOptionalParamInPath(
path
,paramName
,paramValue
):string
Defined in: packages/core/src/router/StaticRoute.ts:204
Replace optional param placeholder in path with parameter value.
Parameters
path
string
paramName
string
paramValue
string
Returns
string
_substituteRequiredParamInPath()
_substituteRequiredParamInPath(
path
,paramName
,paramValue
):string
Defined in: packages/core/src/router/StaticRoute.ts:190
Replace required parameter placeholder in path with parameter value.
Parameters
path
string
paramName
string
paramValue
string
Returns
string
extractParameters()
extractParameters(
path
,baseUrl
):object
Defined in: packages/core/src/router/StaticRoute.ts:177
Extracts the parameter values from the provided path. The method extracts both the in-path parameters and parses the query, allowing the query parameters to override the in-path parameters.
The method returns an empty hash object if the path does not match this route.
Parameters
path
string
Currently routed path.
baseUrl
string
Currently routed baseUrl.
Returns
object
Map of parameter names to parameter values.
Overrides
AbstractRoute
.extractParameters
getController()
getController():
RouteController
|Promise
<RouteController
>
Defined in: packages/core/src/router/AbstractRoute.ts:153
Returns Controller class/alias/constant associated with this route. Internally caches async calls for dynamically imported controllers, meaning that once they're loaded, you get the same promise for subsequent calls.
Returns
RouteController
| Promise
<RouteController
>
The Controller class/alias/constant.
Inherited from
getName()
getName():
string
Defined in: packages/core/src/router/AbstractRoute.ts:132
Returns the unique identifying name of this route.
Returns
string
The name of the route, identifying it.
Inherited from
getOptions()
getOptions():
RouteFactoryOptions
Defined in: packages/core/src/router/AbstractRoute.ts:210
Return route additional options.
Returns
Inherited from
getPathExpression()
getPathExpression():
string
Defined in: packages/core/src/router/AbstractRoute.ts:220
Path expression used in route matching, to generate valid path with provided params and parsing params from current path.
Returns
string
The path expression.
Inherited from
AbstractRoute
.getPathExpression
getTrimmedPath()
getTrimmedPath(
path
):string
Defined in: packages/core/src/router/AbstractRoute.ts:230
Trims the trailing forward slash from the provided URL path.
Parameters
path
string
The path to trim.
Returns
string
Trimmed path.
Inherited from
getView()
Defined in: packages/core/src/router/AbstractRoute.ts:185
Returns View class/alias/constant associated with this route. Internally caches async calls for dynamically imported views, meaning that once they're loaded, you get the same promise for subsequent calls.
Returns
RouteView
| Promise
<RouteView
>
The View class/alias/constant.
Inherited from
isAsync()
isAsync(
module
):boolean
Defined in: packages/core/src/router/AbstractRoute.ts:139
Checks if given argument is an async handler.
Parameters
module
unknown
Returns
boolean
Inherited from
isControllerResolved()
isControllerResolved():
boolean
Defined in: packages/core/src/router/AbstractRoute.ts:173
Returns true for resolved controller. This is always true for sync route views.
Returns
boolean
Inherited from
AbstractRoute
.isControllerResolved
isViewResolved()
isViewResolved():
boolean
Defined in: packages/core/src/router/AbstractRoute.ts:203
Returns true for resolved view. This is always true for sync route views.
Returns
boolean
Inherited from
matches()
matches(
path
):boolean
Defined in: packages/core/src/router/StaticRoute.ts:168
Tests whether the provided URL path matches this route. The provided path may contain the query.
Parameters
path
string
The URL path.
Returns
boolean
true
if the provided path matches this route.
Overrides
preload()
preload():
Promise
<[RouteController
,RouteView
]>
Defined in: packages/core/src/router/AbstractRoute.ts:239
Preloads dynamically imported view and controller.
Returns
Promise
<[RouteController
, RouteView
]>
Promise.All resolving to [view, controller] tuple.
Inherited from
toPath()
toPath(
params
):string
Defined in: packages/core/src/router/StaticRoute.ts:132
Creates the URL and query parts of a URL by substituting the route's parameter placeholders by the provided parameter value.
The extraneous parameters that do not match any of the route's placeholders will be appended as the query string.
Parameters
params
RouteParams
= {}
The route parameter values.
Returns
string
Path and, if necessary, query parts of the URL representing this route with its parameters replaced by the provided parameter values.