mirror of
				https://github.com/imfing/hextra.git
				synced 2025-11-04 00:04:53 -05:00 
			
		
		
		
	
		
			
	
	
		
			22 lines
		
	
	
		
			725 B
		
	
	
	
		
			HTML
		
	
	
	
	
	
		
		
			
		
	
	
			22 lines
		
	
	
		
			725 B
		
	
	
	
		
			HTML
		
	
	
	
	
	
| 
								 | 
							
								{{/* This utility is used to get the file path from absolute, relative path or URL. */}}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								{{- $path := .path -}}
							 | 
						||
| 
								 | 
							
								{{- $page := .page -}}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								{{- $isLocal := not (urls.Parse $path).Scheme -}}
							 | 
						||
| 
								 | 
							
								{{- $isPage := and (eq $page.Kind "page") (not $page.BundleType) -}}
							 | 
						||
| 
								 | 
							
								{{- $startsWithSlash := hasPrefix $path "/" -}}
							 | 
						||
| 
								 | 
							
								{{- $startsWithRelative := hasPrefix $path "../" -}}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								{{- if and $path $isLocal -}}
							 | 
						||
| 
								 | 
							
								  {{- if $startsWithSlash -}}
							 | 
						||
| 
								 | 
							
								    {{/* File under static directory */}}
							 | 
						||
| 
								 | 
							
								    {{- $path = (relURL (strings.TrimPrefix "/" $path)) -}}
							 | 
						||
| 
								 | 
							
								  {{- else if and $isPage (not $startsWithRelative) -}}
							 | 
						||
| 
								 | 
							
								    {{/* File is a sibling to the individual page file */}}
							 | 
						||
| 
								 | 
							
								    {{ $path = (printf "../%s" $path) }}
							 | 
						||
| 
								 | 
							
								  {{- end -}}
							 | 
						||
| 
								 | 
							
								{{- end -}}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								{{- return $path -}}
							 |