commit
						9b97a712c9
					
				 1 changed files with 39 additions and 0 deletions
			
			
		@ -0,0 +1,39 @@ | 
				
			|||||
 | 
					require('pro-router') | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					tag router | 
				
			||||
 | 
						def render | 
				
			||||
 | 
							<self view=R.view> <{ view }> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					tag switch | 
				
			||||
 | 
						prop key | 
				
			||||
 | 
						prop disabled | 
				
			||||
 | 
					
 | 
				
			||||
 | 
						css cursor:pointer | 
				
			||||
 | 
					
 | 
				
			||||
 | 
						def render | 
				
			||||
 | 
							<self .activated=R.params[key] .disabled=disabled @click.if(!disabled)=R.toggle(key)> <slot> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					tag ref < a | 
				
			||||
 | 
						prop view | 
				
			||||
 | 
						prop target | 
				
			||||
 | 
						prop go | 
				
			||||
 | 
					
 | 
				
			||||
 | 
						def render | 
				
			||||
 | 
							<self .active=active? href=link @click.prevent.if(!active?)=R.go(href)> <slot> | 
				
			||||
 | 
					
 | 
				
			||||
 | 
						def active? | 
				
			||||
 | 
							R.to_path == link | 
				
			||||
 | 
					
 | 
				
			||||
 | 
						get link do #link ||= go || url | 
				
			||||
 | 
					
 | 
				
			||||
 | 
						#tu skonczylem: | 
				
			||||
 | 
					
 | 
				
			||||
 | 
						def url | 
				
			||||
 | 
							if target | 
				
			||||
 | 
								let attributes = L.reduce L.concat({}, target), do |map, el| | 
				
			||||
 | 
									map[el:type] = el:id | 
				
			||||
 | 
									map | 
				
			||||
 | 
							R.to_path view, L.defaults attributes || {}, R:safe_params | 
				
			||||
 | 
					
 | 
				
			||||
 | 
					tag not_found | 
				
			||||
 | 
						def render do <self> "Page not found :/" | 
				
			||||
					Loading…
					
					
				
		Reference in new issue