Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
  • Loading branch information
extratone committed Mar 20, 2024
1 parent 435b2c1 commit 9f026bb
Show file tree
Hide file tree
Showing 4 changed files with 1,249 additions and 0 deletions.
Binary file added shortcuts/AppleMapsRouteURL.shortcut
Binary file not shown.
297 changes: 297 additions & 0 deletions shortcuts/source/AppleMapsRouteURL.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,297 @@
<!DOCTYPE html><html><head><meta charset="utf-8">
<meta name="viewport" content="width=device-width">
<meta name="format-detection" content="telephone=no,date=no">
<title>Apple Maps Route URL</title>
<style>
body {
font-family: system-ui;
font-size: 0.95em;
margin-top: 1rem;
margin-bottom: calc(1rem + env(safe-area-inset-bottom));
word-break: break-word;
}

button {
color: #000;
background-color: #e4e4ff;
width: 100%;
font-size: 1em;
font-weight: normal;
line-height: 1.8;
text-align: left;
margin: 4px 0;
padding: 1px 8px;
border: 1px #aaa;
border-style: solid;
border-radius: 8px;
cursor: initial;
touch-action: manipulation;
}

.button {
margin-bottom: 0;
border-bottom-style: none;
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
cursor: auto;
}
.button::after {
content: '\25A1';
float: right;
font-weight: bold;
margin-left: 10px;
}

.closed {
margin-bottom: 4px;
border-bottom-style: solid;
border-bottom-left-radius: 8px;
border-bottom-right-radius: 8px;
}
.closed::after { content: '\2212'; }

.nonbottom {
margin-bottom: 0;
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
border-bottom-style: none;
}
.nontop {
margin-top: 0;
border-top-left-radius: 0;
border-top-right-radius: 0;
}

.gGray { background-color: #e0e0e0; }
.gGreen { background-color: #ddffdd; }
.gYellow { background-color: #ffeebb; }
.gOrange { background-color: #ffddcc; }
.gRed { background-color: #ffccdd; }
.gBlue { background-color: #aaccff; }
.gUnknown { background-color: #bbffff; }
.gParams {
text-align: center;
background-color: #f8f8f8;
}

.content {
overflow: hidden;
margin-bottom: 4px;
padding: 3px 0 3px 8px;
border: 1px #aaa;
border-style: none solid solid solid;
border-bottom-left-radius: 8px;
border-bottom-right-radius: 8px;
}

.contentloop {
margin-bottom: 0;
padding-top: 4px;
padding-bottom: 4px;
border-bottom-style: none;
border-bottom-left-radius: 0;
border-bottom-right-radius: 0;
}

.dotted { border-left-style: dotted; }
.dashed { border-left-style: dashed; }

.inside {
border-right-style: none;
border-top-right-radius: 0;
border-bottom-right-radius: 0;
}

.commentcontent { background-color: #ffeebb; }

.row {
display: flex;
padding-right: 2px;
}

.col1 {
margin-right: 3px;
padding-right: 3px;
border-right-style: double;
}
.col2 { white-space: pre-wrap; }

span.box {
display: inline;
white-space: pre-wrap;
margin: 0 2px;
padding: 2px 4px;
border-radius: 6px;
background-color: #fff;
}
span.var { font-style: italic; }
span.magic {
cursor: pointer;
font-style: italic;
text-decoration: underline;
}

hr {
width: 0px;
height: 2px;
border: 1px solid #aaa;
margin: -4px auto;
}

@media (prefers-color-scheme: dark) {
body { background: #000; color: #eee; }
button { background: #514c72; color: #eee; }
.gGray { background-color: #555555; }
.gGreen { background-color: #3a6441; }
.gYellow { background-color: #716d33; }
.gOrange { background-color: #76523f; }
.gRed { background-color: #674044; }
.gBlue { background-color: #384c67; }
.gUnknown { background-color: #377172; }
.gParams { background-color: #181818; }
.commentcontent { background-color: #716d33; }
span.box { background-color: #000; }
}
</style></head><body>
<button class="button gParams"><b>Apple Maps Route URL</b> (22 actions, 17 KB)</button>
<div class="content"><div class="col2">"WFQuickActionSurfaces": [],
"WFWorkflowClientVersion": "2510.5.1",
"WFWorkflowHasOutputFallback": false,
"WFWorkflowHasShortcutInputVariables": false,
"WFWorkflowIcon": {
"WFWorkflowIconStartColor": 3679049983,
"WFWorkflowIconGlyphNumber": 61497
},
"WFWorkflowImportQuestions": [],
"WFWorkflowInputContentItemClasses": [
"WFAppContentItem",
"WFAppStoreAppContentItem",
"WFArticleContentItem",
"WFContactContentItem",
"WFDateContentItem",
"WFEmailAddressContentItem",
"WFFolderContentItem",
"WFGenericFileContentItem",
"WFImageContentItem",
"WFiTunesProductContentItem",
"WFLocationContentItem",
"WFDCMapsLinkContentItem",
"WFAVAssetContentItem",
"WFPDFContentItem",
"WFPhoneNumberContentItem",
"WFRichTextContentItem",
"WFSafariWebPageContentItem",
"WFStringContentItem",
"WFURLContentItem"
],
"WFWorkflowMinimumClientVersion": 900,
"WFWorkflowMinimumClientVersionString": "900",
"WFWorkflowOutputContentItemClasses": [],
"WFWorkflowTypes": []
</div></div>

<button class="button gYellow" id="m0">
0 Comment</button>
<div class="content commentcontent">
<div class="col2">## Create a URL to open Apple Maps to directions between two points.

𝗠𝘆 𝗰𝗼𝗻𝘁𝗮𝗰𝘁 𝗶𝗻𝗳𝗼𝗿𝗺𝗮𝘁𝗶𝗼𝗻:
Email: davidblue@extratone.com
Contact card: https://davidblue.wtf/db.vcf
Mastodon: https://mastodon.social/@DavidBlue
RoutineHub Profile: https://routinehub.co/user/blue
GitHub: https://github.com/extratone
iOS-specific Repository: https://github.com/extratone/i
Telegram: https://t.me/DavidBlue
Telegram Channel: https://t.me/extratone
Discord: https://davidblue.wtf/discord
Twitter: https://twitter.com/NeoYokel
Reddit: https://reddit.com/u/asphaltapostle
EVERYWHERE: https://davidblue.wtf/socialdrop</div></div>
<button class="button gGreen" data-uuid="92945F34-E9D5-4FE4-A1BF-A98D544A6484" id="m1">
1 Location »</button>
<div class="content">
<div class="row"><div class="col1">Location</div>
<div class="col2"><span class="var"><b>[Ask]</b></span></div></div></div>
<hr><button class="button gYellow" data-uuid="A10AA5A0-9DF6-41EC-BBCC-F4D580D55F8F" id="m2">
2 Text »</button>
<div class="content">
<div class="col2"><span class="var"><b>[1 Location</b>’s Latitude<b>]</b></span>,<span class="var"><b>[1 Location</b>’s Longitude<b>]</b></span></div></div>
<hr><button class="gBlue" data-uuid="34A0B5B9-CB3A-4515-B65B-81B33F4297C8" id="m3">
3 URL Encode <span class="box"><span class="var"><b>[2 Text]</b></span></span> »</button>
<hr><button class="gOrange" id="m4">
4 Set Variable <span class="box">start</span> to <span class="box"><span class="var"><b>[3 URL Encoded Text]</b></span></span></button>
<button class="button gGreen" data-uuid="4FC55B76-E550-4674-803E-31C3E076FFCE" id="m5">
5 Location »</button>
<div class="content">
<div class="row"><div class="col1">Location</div>
<div class="col2"><span class="var"><b>[Ask]</b></span></div></div></div>
<hr><button class="button gYellow" data-uuid="0D473E9A-D4A2-4C68-9BE5-DFC030DB4DC4" id="m6">
6 Text »</button>
<div class="content">
<div class="col2"><span class="var"><b>[5 Location</b>’s Latitude<b>]</b></span>,<span class="var"><b>[5 Location</b>’s Longitude<b>]</b></span></div></div>
<hr><button class="gBlue" data-uuid="B5008142-3D37-4B36-B1CD-7F95B3CDD8E1" id="m7">
7 URL Encode <span class="box"><span class="var"><b>[6 Text]</b></span></span> »</button>
<hr><button class="gOrange" id="m8">
8 Set Variable <span class="box">end</span> to <span class="box"><span class="var"><b>[7 URL Encoded Text]</b></span></span></button>
<button class="button gGray nonbottom" id="m9">
9 Choose from Menu</button>
<div class="content contentloop">
<div class="row"><div class="col1">MenuPrompt</div>
<div class="col2">Choose the mode of travel in which you'd like the route URL to open.</div></div>
<div class="row"><div class="col1">MenuItems</div>
<div class="col2">[Driving directions.,
Walking directions.,
Public Transit directions.]</div></div></div>
<button class="button gGray nonbottom nontop" id="m10">
10 Menu Item <span class="box">Driving directions.</span></button>
<div class="content contentloop">
<button class="button gYellow inside" data-uuid="E4ECBC3D-58D6-4568-91CB-0A3C0398CB75" id="m11">
11 Text »</button>
<div class="content inside">
<div class="col2">d</div></div>
<hr><button class="gOrange inside" id="m12">
12 Set Variable <span class="box">method</span> to <span class="box"><span class="var"><b>[11 Text]</b></span></span></button></div>
<button class="button gGray nonbottom nontop" id="m13">
13 Menu Item <span class="box">Walking directions.</span></button>
<div class="content contentloop">
<button class="button gYellow inside" data-uuid="6214A1DC-A1BC-44E5-99F8-E2E6763BC2FD" id="m14">
14 Text »</button>
<div class="content inside">
<div class="col2">w</div></div>
<hr><button class="gOrange inside" id="m15">
15 Set Variable <span class="box">method</span> to <span class="box"><span class="var"><b>[14 Text</b>’s File Size<b>]</b></span></span></button></div>
<button class="button gGray nonbottom nontop" id="m16">
16 Menu Item <span class="box">Public Transit directions.</span></button>
<div class="content contentloop">
<button class="button gYellow inside" data-uuid="3F18AF66-E1F0-4582-8557-F934BB717930" id="m17">
17 Text »</button>
<div class="content inside">
<div class="col2">r</div></div>
<hr><button class="gOrange inside" id="m18">
18 Set Variable <span class="box">method</span> to <span class="box"><span class="var"><b>[17 Text]</b></span></span></button></div>
<button class="gGray nontop" data-uuid="B44798B7-3D0B-48F0-A2FB-281FF0BB6C8E" id="m19">
19 End Menu</button>
<button class="gBlue" data-uuid="0C2859CD-ED65-496A-ADF7-B42BAEA02368" id="m20">
20 URL <span class="box">http://itty.bitty.site/#/http://maps.apple.com/?saddr=<span class="var"><b>[start]</b></span>&amp;daddr=<span class="var"><b>[end]</b></span>&amp;dirflg=<span class="var"><b>[method]</b></span>&amp;t=m</span> »</button>
<hr><button class="gBlue" data-uuid="8AA80A0C-075B-41C2-ACB1-4E970B29A2B8" id="m21">
21 Copy <span class="box"><span class="var"><b>[20 URL]</b></span></span> to Clipboard</button>
<script>
for (b of document.getElementsByClassName('button')) {
b.addEventListener('click', function() {
this.classList.toggle('closed');
let s = this.nextElementSibling;
s.style.display = getComputedStyle(s).display==='none' ? 'block' : 'none';
})}

function magictap(id) {
event.stopPropagation();
let e = document.getElementById('m'+id);
let p = e;
while ((p = p.parentNode).tagName.toLowerCase() === 'div') {
p.style.display = 'block';
p.previousElementSibling.classList.remove('closed');
}
setTimeout(function(){ e.scrollIntoView({block:'nearest',behavior:'smooth'}); }, 10);
}
</script></body></html>
Loading

0 comments on commit 9f026bb

Please sign in to comment.