Daoud Clarke 4 éve
szülő
commit
980f084c08
6 módosított fájl, 157 hozzáadás és 0 törlés
  1. 24 0
      app.py
  2. 16 0
      static/index.html
  3. 48 0
      static/landing.html
  4. 5 0
      static/plugin.xml
  5. 58 0
      static/typeahead.css
  6. 6 0
      static/typeahead.js

+ 24 - 0
app.py

@@ -0,0 +1,24 @@
+from fastapi import FastAPI
+from fastapi.staticfiles import StaticFiles
+from starlette.responses import FileResponse, RedirectResponse
+
+app = FastAPI()
+
+
+@app.get("/search")
+def search(s: str):
+    return RedirectResponse(f'https://www.google.com/search?q={s}')
+
+
+@app.get("/complete")
+def complete(q: str):
+    all_titles = ['some', 'nice results', 'here']
+    return [q, all_titles]
+
+
+@app.get('/')
+def index():
+    return FileResponse('static/index.html')
+
+
+app.mount('/', StaticFiles(directory="static"), name="static")

+ 16 - 0
static/index.html

@@ -0,0 +1,16 @@
+<html>
+<head>
+<title>Stoatally Different</title>
+<link rel="search"
+      type="application/opensearchdescription+xml"
+      title="Stoatally Different"
+      href="http://localhost:8000/plugin.xml">
+</head>
+<body>
+Stoatally different.
+
+<form action="/search">
+  <input type="search" name="s" />
+</form>
+</body>
+</html>

+ 48 - 0
static/landing.html

@@ -0,0 +1,48 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+  <title>%s</title>
+  <link rel="search"
+      type="application/opensearchdescription+xml"
+      title="Stoatally Different"
+      href="https://stoatally-different.appspot.com/plugin.xml">
+  <!--BOOTSTRAP-->
+  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" crossorigin="anonymous">
+  <link href="typeaheadjs.css" rel="stylesheet">
+  <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
+</head>
+<body>
+%s
+
+<div id="remote">
+  <form action="/search">
+    <input class="typeahead" type="search" placeholder="Search" name="s">
+    <!--<input type="search" name="s" />-->
+  </form>
+</div>
+
+<!--BOOTSTRAP-->
+<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
+<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script>
+<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script>
+<script src="typeahead.js"></script>
+<script>
+var bestPictures = new Bloodhound({
+  datumTokenizer: Bloodhound.tokenizers.obj.whitespace('value'),
+  queryTokenizer: Bloodhound.tokenizers.whitespace,
+  remote: {
+    url: '/complete?q=%%QUERY',
+    wildcard: '%%QUERY'
+  }
+});
+
+$('#remote .typeahead').typeahead(null, {
+  name: 'best-pictures',
+  display: 'value',
+  source: bestPictures
+});
+
+</script>
+
+</body>
+</html>

A különbségek nem kerülnek megjelenítésre, a fájl túl nagy
+ 5 - 0
static/plugin.xml


+ 58 - 0
static/typeahead.css

@@ -0,0 +1,58 @@
+span.twitter-typeahead .tt-menu {
+  cursor: pointer;
+}
+
+.dropdown-menu, span.twitter-typeahead .tt-menu {
+  position: absolute;
+  top: 100%;
+  left: 0;
+  z-index: 1000;
+  display: none;
+  float: left;
+  min-width: 160px;
+  padding: 5px 0;
+  margin: 2px 0 0;
+  font-size: 1rem;
+  color: #373a3c;
+  text-align: left;
+  list-style: none;
+  background-color: #fff;
+  background-clip: padding-box;
+  border: 1px solid rgba(0, 0, 0, 0.15);
+  border-radius: 0.25rem; }
+
+span.twitter-typeahead .tt-suggestion {
+  display: block;
+  width: 100%;
+  padding: 3px 20px;
+  clear: both;
+  font-weight: normal;
+  line-height: 1.5;
+  color: #373a3c;
+  text-align: inherit;
+  white-space: nowrap;
+  background: none;
+  border: 0; }
+span.twitter-typeahead .tt-suggestion:focus, .dropdown-item:hover, span.twitter-typeahead .tt-suggestion:hover {
+    color: #2b2d2f;
+    text-decoration: none;
+    background-color: #f5f5f5; }
+span.twitter-typeahead .active.tt-suggestion, span.twitter-typeahead .tt-suggestion.tt-cursor, span.twitter-typeahead .active.tt-suggestion:focus, span.twitter-typeahead .tt-suggestion.tt-cursor:focus, span.twitter-typeahead .active.tt-suggestion:hover, span.twitter-typeahead .tt-suggestion.tt-cursor:hover {
+    color: #fff;
+    text-decoration: none;
+    background-color: #0275d8;
+    outline: 0; }
+span.twitter-typeahead .disabled.tt-suggestion, span.twitter-typeahead .disabled.tt-suggestion:focus, span.twitter-typeahead .disabled.tt-suggestion:hover {
+    color: #818a91; }
+span.twitter-typeahead .disabled.tt-suggestion:focus, span.twitter-typeahead .disabled.tt-suggestion:hover {
+    text-decoration: none;
+    cursor: not-allowed;
+    background-color: transparent;
+    background-image: none;
+    filter: "progid:DXImageTransform.Microsoft.gradient(enabled = false)"; }
+span.twitter-typeahead {
+  width: 100%; }
+  .input-group span.twitter-typeahead {
+    display: block !important; }
+    .input-group span.twitter-typeahead .tt-menu {
+      top: 2.375rem !important; }

A különbségek nem kerülnek megjelenítésre, a fájl túl nagy
+ 6 - 0
static/typeahead.js


Nem az összes módosított fájl került megjelenítésre, mert túl sok fájl változott