mirror of
https://github.com/usetrmnl/plugins.git
synced 2026-08-13 14:26:58 -07:00
chores: add plugin for daily commute route planner
This commit is contained in:
Binary file not shown.
|
After Width: | Height: | Size: 5.8 MiB |
Binary file not shown.
|
After Width: | Height: | Size: 2.9 MiB |
Binary file not shown.
|
After Width: | Height: | Size: 3.0 MiB |
Binary file not shown.
|
After Width: | Height: | Size: 1.4 MiB |
@@ -0,0 +1,43 @@
|
||||
module Plugins
|
||||
class Routes < Base
|
||||
def locals
|
||||
{ routes:, origin:, destination:, last_updated: }
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def routes
|
||||
[
|
||||
{
|
||||
name: "Via N234",
|
||||
distance: "13.2 km",
|
||||
duration: "17 min",
|
||||
is_fastest: true,
|
||||
travel_mode: '🚘'
|
||||
},
|
||||
{
|
||||
name: "via R. São Romão/N234 and N234",
|
||||
distance: "15.8 km",
|
||||
duration: "18 min",
|
||||
is_fastest: false,
|
||||
travel_mode: '🚘'
|
||||
},
|
||||
{
|
||||
name: "via CM1037",
|
||||
distance: "12.9 km",
|
||||
duration: "18 min",
|
||||
is_fastest: false,
|
||||
travel_mode: '🚘'
|
||||
}
|
||||
]
|
||||
end
|
||||
|
||||
def origin = "Febres, Portugal"
|
||||
end
|
||||
|
||||
def destination = "Ourentã, Portugal"
|
||||
end
|
||||
|
||||
def last_updated = "7:30 AM"
|
||||
end
|
||||
end
|
||||
@@ -0,0 +1,57 @@
|
||||
<div class="view view--full">
|
||||
<div class="layout layout--col gap--space-between">
|
||||
<div class="grid grid--cols-2">
|
||||
<div class="item">
|
||||
<div class="meta"></div>
|
||||
<div class="content">
|
||||
<span class="value value--small"><%= origin %> → <%= destination %></span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="item">
|
||||
<div class="meta"></div>
|
||||
<div class="content">
|
||||
<span class="value value--small"><%= last_updated %> </span>
|
||||
<span class="label">Last Updated</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="w-full b-h-gray-5"></div>
|
||||
|
||||
<div class="columns">
|
||||
<% routes.each do |route| %>
|
||||
<div class="column">
|
||||
<div class="list">
|
||||
<div class="item <%= 'bg-gray-5' if route[:is_fastest] %>">
|
||||
<div class="meta">
|
||||
<% if route[:is_fastest] %>
|
||||
<span class="index">★</span>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="content">
|
||||
<span class="title title--small"><%= route[:name] %> (<%= route[:travel_mode] %>)</span>
|
||||
<div class="flex gap--xsmall">
|
||||
<span class="label label--small label--underline"><%= route[:duration] %></span>
|
||||
<span class="label label--small label--underline"><%= route[:distance] %></span>
|
||||
</div>
|
||||
<div class="flex gap--xsmall">
|
||||
<% if route[:is_fastest] %>
|
||||
<span class="label label--small">Fastest Route</span>
|
||||
<% else %>
|
||||
<span class="label label--small">Alternative Route</span>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="title_bar">
|
||||
<img class="image" src="<%= Rails.application.credentials.base_url %>/images/map-pin.svg" />
|
||||
<span class="title">Daily Commute</span>
|
||||
<span class="instance">Route Planner</span>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,46 @@
|
||||
<div class="view view--half_horizontal">
|
||||
<div class="layout gap--space-between">
|
||||
<div class="item">
|
||||
<div class="meta"></div>
|
||||
<div class="content">
|
||||
<span class="value"><%= origin %> → <%= destination %></span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="w-full b-h-gray-5"></div>
|
||||
|
||||
<div class="columns">
|
||||
<% routes.each do |route| %>
|
||||
<div class="column">
|
||||
<div class="item <%= 'bg-gray-5' if route[:is_fastest] %>">
|
||||
<div class="meta">
|
||||
<% if route[:is_fastest] %>
|
||||
<span class="index">★</span>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="content">
|
||||
<span class="title title--small"> <%= route[:name] %> (<%= route[:travel_mode] %>) </span>
|
||||
<div class="flex gap--xsmall">
|
||||
<span class="label label--small label--underline"><%= route[:duration] %></span>
|
||||
<span class="label label--small"><%= route[:distance] %></span>
|
||||
</div>
|
||||
<% if route[:is_fastest] %>
|
||||
<span class="label label--small">Fastest Route</span>
|
||||
<% else %>
|
||||
<span class="label label--small">Alternative Route</span>
|
||||
<% end %>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="title_bar">
|
||||
<img class="image" src="<%= Rails.application.credentials.base_url %>/images/map-pin.svg" />
|
||||
<span class="title">Daily Commute</span>
|
||||
<span class="instance">Route Planner</span>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,43 @@
|
||||
<div class="view view--half_vertical">
|
||||
<div class="layout layout--col gap--medium">
|
||||
<div class="item">
|
||||
<div class="meta"></div>
|
||||
<div class="content">
|
||||
<span class="value"><%= origin %> → <%= destination %></span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="w-full b-h-gray-5"></div>
|
||||
|
||||
<div class="list">
|
||||
<% routes.each do |route| %>
|
||||
<div class="item <%= 'bg-gray-5' if route[:is_fastest] %>">
|
||||
<div class="meta">
|
||||
<% if route[:is_fastest] %>
|
||||
<span class="index">★</span>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="content">
|
||||
<span class="title title--small"> <%= route[:name] %> (<%= route[:travel_mode] %>) </span>
|
||||
<div class="flex gap--xsmall">
|
||||
<span class="label label--small label--underline"><%= route[:duration] %></span>
|
||||
<span class="label label--small">(<%= route[:distance] %>)</span>
|
||||
</div>
|
||||
<% if route[:is_fastest] %>
|
||||
<span class="label label--small">Fastest Route</span>
|
||||
<% else %>
|
||||
<span class="label label--small">Alternative Route</span>
|
||||
<% end %>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="title_bar">
|
||||
<img class="image" src="<%= Rails.application.credentials.base_url %>/images/map-pin.svg" />
|
||||
<span class="title">Daily Commute</span>
|
||||
<span class="instance">Route Planner</span>
|
||||
</div>
|
||||
</div>
|
||||
@@ -0,0 +1,35 @@
|
||||
<div class="view view--quadrant">
|
||||
<div class="layout layout--col">
|
||||
<div class="item">
|
||||
<div class="meta"></div>
|
||||
<div class="content">
|
||||
<span class="value"><%= origin %> → <%= destination %></span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="w-full b-h-gray-5"></div>
|
||||
<% routes.each_with_index do |route, index| %>
|
||||
<div class="item <%= 'bg-gray-5' if route[:is_fastest] %>">
|
||||
<div class="meta">
|
||||
<% if route[:is_fastest] %>
|
||||
<span class="index">★</span>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="content">
|
||||
<span class="title title--small"> <%= route[:name] %> (<%= route[:travel_mode] %>)</span>
|
||||
<div class="flex gap--xsmall">
|
||||
<span class="label label--small label--underline"><%= route[:duration] %></span>
|
||||
<span class="label label--small">(<%= route[:distance] %>)</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
</div>
|
||||
|
||||
<div class="title_bar">
|
||||
<img class="image" src="<%= Rails.application.credentials.base_url %>/images/map-pin.svg" />
|
||||
<span class="title">Daily Commute</span>
|
||||
<span class="instance">Route Planner</span>
|
||||
</div>
|
||||
</div>
|
||||
Reference in New Issue
Block a user