1<!DOCTYPE html> 2<html> 3<head> 4 <!-- 5 If you are serving your web app in a path other than the root, change the 6 href value below to reflect the base path you are serving from. 7 8 The path provided below has to start and end with a slash "/" in order for 9 it to work correctly. 10 11 For more details: 12 * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base 13 14 This is a placeholder for base href that will be replaced by the value of 15 the `--base-href` argument provided to `flutter build`. 16 --> 17 <base href="/"> 18 19 <meta charset="UTF-8"> 20 <meta name="description" content="Tokkeni, everything is a token."> 21 22 <!-- Browser meta tags & icons --> 23 <meta content="IE=Edge" http-equiv="X-UA-Compatible"> 24 <meta name="apple-mobile-web-app-capable" content="yes"> 25 <meta name="apple-mobile-web-app-status-bar-style" content="black"> 26 <meta name="apple-mobile-web-app-title" content="Tokkeni"> 27 <link rel="apple-touch-icon" href="icons/icon-x192.png"> 28 <link rel="icon" type="image/png" href="favicon.png" sizes="32x32"/> 29 30 <link rel="alternate" id="helmet_android_app" href="android-app://com.tokkeni/"> 31 <link rel="alternate" id="helmet_ios_app" href="ios-app://6447702012/https/"> 32 33 <title>Tokkeni</title> 34 <link rel="manifest" href="manifest.json"> 35 36
36<script src="https://cdn.jsdelivr.net/npm/[email protected]/build/pdf.js" 37 type="text/javascript"></script>
37 38
38<script type="text/javascript"> 39 pdfjsLib.GlobalWorkerOptions.workerSrc = "https://cdn.jsdelivr.net/npm/[email protected]/build/pdf.worker.min.js"; 40 pdfRenderOptions = { 41 cMapUrl: 'https://cdn.jsdelivr.net/npm/[email protected]/cmaps/', 42 cMapPacked: true, 43 } 44 45 </script>
45 46
46<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/jsQR.min.js"></script>
46 47 48
48<script> 49 // The value below is injected by flutter build, do not touch. 50 const serviceWorkerVersion = "453048524"; 51 52 </script>
52 53 <!-- This script adds the flutter initialization JS code --> 54
54<script src="flutter.js" defer></script>
54 55
55<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyD9emi9a1xFXqiiROohsmyMiiOZpw1bmXI"></script>
55 56
56<script src="https://unpkg.com/@zxing/[email protected]" type="application/javascript"></script>
56 57 58 <!-- Croppie --> 59 <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/croppie/2.6.5/croppie.css" /> 60
60<script defer src="https://cdnjs.cloudflare.com/ajax/libs/exif-js/2.3.0/exif.js"></script>
60 61
61<script src="https://cdnjs.cloudflare.com/ajax/libs/croppie/2.6.5/croppie.min.js"></script>
61 62 63 <!-- cropperjs --> 64 <link href="https://cdnjs.cloudflare.com/ajax/libs/cropperjs/1.6.2/cropper.css" 65 rel="stylesheet"/> 66
66<script src="https://cdnjs.cloudflare.com/ajax/libs/cropperjs/1.6.2/cropper.min.js"></script>
66 67 68 <style> 69 body { 70 71 background-color: #F8F9FF; 72 inset: 0; 73 overflow: hidden; 74 margin: 0; 75 padding: 0; 76 position: fixed; 77 } 78 79 #loading { 80 align-items: center; 81 display: flex; 82 height: 100%; 83 justify-content: center; 84 width: 100%; 85 } 86 87 #loading img { 88 animation: 1s ease-in-out 0s infinite alternate breathe-animation; 89 opacity: 1.0; 90 transition: opacity .4s; 91 } 92 93 #loading.main_done img { 94 opacity: 1; 95 } 96 97 #loading.init_done img { 98 animation: .33s ease-in-out 0s 1 forwards zoom-animation; 99 opacity: .05; 100 } 101 102 @keyframes breathe-animation { 103 from { 104 transform: scale(1) 105 } 106 to { 107 transform: scale(0.95) 108 } 109 } 110 111 @keyframes zoom-animation { 112 from { 113 transform: scale(1) 114 } 115 to { 116 transform: scale(10) 117 } 118 } 119 120 </style> 121</head> 122<body> 123 124<!-- Loading indicator --> 125<div id="loading"> 126 <img src="splash_icon.png" alt="Loading indicator..."/> 127</div>
128<script> 129 window.addEventListener('load', () => { 130 const loading = document.querySelector('#loading'); 131 _flutter.loader.loadEntrypoint({ 132 serviceWorker: { 133 serviceWorkerVersion: serviceWorkerVersion, 134 } 135 }).then(engineInitializer => { 136 loading.classList.add('main_done'); 137 return engineInitializer.initializeEngine(); 138 }).then(appRunner => { 139 loading.classList.add('init_done'); 140 return appRunner.runApp(); 141 }).then(app => { 142 window.setTimeout(() => { 143 loading.remove(); 144 }, 100); 145 }); 146 }); 147 148</script>
148 149</body> 150</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.