316 lines
13 KiB
Go
316 lines
13 KiB
Go
// Sshwifty - A Web SSH client
|
|
//
|
|
// Copyright (C) 2019 Rui NI <nirui@gmx.com>
|
|
//
|
|
// This program is free software: you can redistribute it and/or modify
|
|
// it under the terms of the GNU Affero General Public License as
|
|
// published by the Free Software Foundation, either version 3 of the
|
|
// License, or (at your option) any later version.
|
|
//
|
|
// This program is distributed in the hope that it will be useful,
|
|
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
// GNU Affero General Public License for more details.
|
|
//
|
|
// You should have received a copy of the GNU Affero General Public License
|
|
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
|
|
package controller
|
|
|
|
//go:generate go run ./static_page_generater ../../.tmp/dist ./static_pages.go
|
|
//go:generate go fmt ./static_pages.go
|
|
|
|
// This file is generated by `go generate` at Mon, 12 Aug 2019 11:04:30 CST
|
|
// DO NOT EDIT!
|
|
|
|
import "io/ioutil"
|
|
import "bytes"
|
|
import "fmt"
|
|
import "compress/gzip"
|
|
import "encoding/base64"
|
|
import "time"
|
|
import "crypto/sha256"
|
|
|
|
// WARNING: THIS GENERATION IS FOR DEBUG / DEVELOPMENT ONLY, DO NOT
|
|
// USE IT IN PRODUCTION!
|
|
|
|
func staticFileGen(filePath string) staticData {
|
|
content, readErr := ioutil.ReadFile(filePath)
|
|
|
|
if readErr != nil {
|
|
panic(fmt.Sprintln("Cannot read file:", readErr))
|
|
}
|
|
|
|
compressed := bytes.NewBuffer(make([]byte, 0, 1024))
|
|
|
|
compresser, compresserBuildErr := gzip.NewWriterLevel(
|
|
compressed, gzip.BestCompression)
|
|
|
|
if compresserBuildErr != nil {
|
|
panic(fmt.Sprintln("Cannot build data compresser:", compresserBuildErr))
|
|
}
|
|
|
|
contentLen := len(content)
|
|
|
|
_, compressErr := compresser.Write(content)
|
|
|
|
if compressErr != nil {
|
|
panic(fmt.Sprintln("Cannot write compressed data:", compressErr))
|
|
}
|
|
|
|
compressErr = compresser.Flush()
|
|
|
|
if compressErr != nil {
|
|
panic(fmt.Sprintln("Cannot write compressed data:", compressErr))
|
|
}
|
|
|
|
content = append(content, compressed.Bytes()...)
|
|
|
|
getHash := func(b []byte) []byte {
|
|
h := sha256.New()
|
|
h.Write(b)
|
|
|
|
return h.Sum(nil)
|
|
}
|
|
|
|
return staticData{
|
|
data: content[0:contentLen],
|
|
dataHash: base64.StdEncoding.EncodeToString(
|
|
getHash(content[0:contentLen])[:8]),
|
|
compressd: content[contentLen:],
|
|
compressdHash: base64.StdEncoding.EncodeToString(
|
|
getHash(content[contentLen:])[:8]),
|
|
created: time.Now(),
|
|
}
|
|
}
|
|
|
|
var (
|
|
staticPages = map[string]staticData{
|
|
"13ec0eb5bdb821ff4930237d7c9f943f.woff2": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/13ec0eb5bdb821ff4930237d7c9f943f.woff2",
|
|
),
|
|
"13efe6cbc10b97144a28310ebdeda594.woff": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/13efe6cbc10b97144a28310ebdeda594.woff",
|
|
),
|
|
"1d6594826615607f6dc860bb49258acb.woff": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/1d6594826615607f6dc860bb49258acb.woff",
|
|
),
|
|
"313a65630d341645c13e4f2a0364381d.woff": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/313a65630d341645c13e4f2a0364381d.woff",
|
|
),
|
|
"35b07eb2f8711ae08d1f58c043880930.woff": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/35b07eb2f8711ae08d1f58c043880930.woff",
|
|
),
|
|
"4248c72df3d263be21b6d.css": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/4248c72df3d263be21b6d.css",
|
|
),
|
|
"4248c72df3d263be21b6d.js": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/4248c72df3d263be21b6d.js",
|
|
),
|
|
"4357beb823a5f8d65c260f045d9e019a.woff2": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/4357beb823a5f8d65c260f045d9e019a.woff2",
|
|
),
|
|
"4fe0f73cc919ba2b7a3c36e4540d725c.woff": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/4fe0f73cc919ba2b7a3c36e4540d725c.woff",
|
|
),
|
|
"50d75e48e0a3ddab1dd15d6bfb9d3700.woff": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/50d75e48e0a3ddab1dd15d6bfb9d3700.woff",
|
|
),
|
|
"59eb3601394dd87f30f82433fb39dd94.woff2": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/59eb3601394dd87f30f82433fb39dd94.woff2",
|
|
),
|
|
"5b4a33e176ff736a74f0ca2dd9e6b396.woff2": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/5b4a33e176ff736a74f0ca2dd9e6b396.woff2",
|
|
),
|
|
"73f0a88bbca1bec19fb1303c689d04c6.woff2": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/73f0a88bbca1bec19fb1303c689d04c6.woff2",
|
|
),
|
|
"83e114c316fcc3f23f524ec3e1c65984.woff": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/83e114c316fcc3f23f524ec3e1c65984.woff",
|
|
),
|
|
"8a96edbbcd9a6991d79371aed0b0288e.woff": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/8a96edbbcd9a6991d79371aed0b0288e.woff",
|
|
),
|
|
"90d1676003d9c28c04994c18bfd8b558.woff2": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/90d1676003d9c28c04994c18bfd8b558.woff2",
|
|
),
|
|
"94008e69aaf05da75c0bbf8f8bb0db41.woff2": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/94008e69aaf05da75c0bbf8f8bb0db41.woff2",
|
|
),
|
|
"ad538a69b0e8615ed0419c4529344ffc.woff2": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/ad538a69b0e8615ed0419c4529344ffc.woff2",
|
|
),
|
|
"android-chrome-144x144.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/android-chrome-144x144.png",
|
|
),
|
|
"android-chrome-192x192.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/android-chrome-192x192.png",
|
|
),
|
|
"android-chrome-256x256.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/android-chrome-256x256.png",
|
|
),
|
|
"android-chrome-36x36.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/android-chrome-36x36.png",
|
|
),
|
|
"android-chrome-384x384.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/android-chrome-384x384.png",
|
|
),
|
|
"android-chrome-48x48.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/android-chrome-48x48.png",
|
|
),
|
|
"android-chrome-512x512.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/android-chrome-512x512.png",
|
|
),
|
|
"android-chrome-72x72.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/android-chrome-72x72.png",
|
|
),
|
|
"android-chrome-96x96.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/android-chrome-96x96.png",
|
|
),
|
|
"apple-touch-icon-1024x1024.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-icon-1024x1024.png",
|
|
),
|
|
"apple-touch-icon-114x114.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-icon-114x114.png",
|
|
),
|
|
"apple-touch-icon-120x120.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-icon-120x120.png",
|
|
),
|
|
"apple-touch-icon-144x144.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-icon-144x144.png",
|
|
),
|
|
"apple-touch-icon-152x152.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-icon-152x152.png",
|
|
),
|
|
"apple-touch-icon-167x167.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-icon-167x167.png",
|
|
),
|
|
"apple-touch-icon-180x180.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-icon-180x180.png",
|
|
),
|
|
"apple-touch-icon-57x57.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-icon-57x57.png",
|
|
),
|
|
"apple-touch-icon-60x60.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-icon-60x60.png",
|
|
),
|
|
"apple-touch-icon-72x72.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-icon-72x72.png",
|
|
),
|
|
"apple-touch-icon-76x76.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-icon-76x76.png",
|
|
),
|
|
"apple-touch-icon-precomposed.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-icon-precomposed.png",
|
|
),
|
|
"apple-touch-icon.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-icon.png",
|
|
),
|
|
"apple-touch-startup-image-1182x2208.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-startup-image-1182x2208.png",
|
|
),
|
|
"apple-touch-startup-image-1242x2148.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-startup-image-1242x2148.png",
|
|
),
|
|
"apple-touch-startup-image-1496x2048.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-startup-image-1496x2048.png",
|
|
),
|
|
"apple-touch-startup-image-1536x2008.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-startup-image-1536x2008.png",
|
|
),
|
|
"apple-touch-startup-image-320x460.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-startup-image-320x460.png",
|
|
),
|
|
"apple-touch-startup-image-640x1096.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-startup-image-640x1096.png",
|
|
),
|
|
"apple-touch-startup-image-640x920.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-startup-image-640x920.png",
|
|
),
|
|
"apple-touch-startup-image-748x1024.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-startup-image-748x1024.png",
|
|
),
|
|
"apple-touch-startup-image-750x1294.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-startup-image-750x1294.png",
|
|
),
|
|
"apple-touch-startup-image-768x1004.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/apple-touch-startup-image-768x1004.png",
|
|
),
|
|
"b52fac2bb93c5858f3f2675e4b52e1de.woff2": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/b52fac2bb93c5858f3f2675e4b52e1de.woff2",
|
|
),
|
|
"browserconfig.xml": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/browserconfig.xml",
|
|
),
|
|
"c599374e350aa7225ee3e8a114e8d8d7.svg": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/c599374e350aa7225ee3e8a114e8d8d7.svg",
|
|
),
|
|
"c73eb1ceba3321a80a0aff13ad373cb4.woff": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/c73eb1ceba3321a80a0aff13ad373cb4.woff",
|
|
),
|
|
"cc2fadc3928f2f223418887111947b40.woff": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/cc2fadc3928f2f223418887111947b40.woff",
|
|
),
|
|
"d26871e8149b5759f814fd3c7a4f784b.woff2": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/d26871e8149b5759f814fd3c7a4f784b.woff2",
|
|
),
|
|
"d3b47375afd904983d9be8d6e239a949.woff": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/d3b47375afd904983d9be8d6e239a949.woff",
|
|
),
|
|
"e8eaae902c3a4dacb9a5062667e10576.woff2": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/e8eaae902c3a4dacb9a5062667e10576.woff2",
|
|
),
|
|
"ea4853ff509fe5f353d52586fcb94e20.svg": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/ea4853ff509fe5f353d52586fcb94e20.svg",
|
|
),
|
|
"f5902d5ef961717ed263902fc429e6ae.woff": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/f5902d5ef961717ed263902fc429e6ae.woff",
|
|
),
|
|
"f75569f8a5fab0893fa712d8c0d9c3fe.woff2": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/f75569f8a5fab0893fa712d8c0d9c3fe.woff2",
|
|
),
|
|
"favicon-16x16.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/favicon-16x16.png",
|
|
),
|
|
"favicon-32x32.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/favicon-32x32.png",
|
|
),
|
|
"favicon.ico": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/favicon.ico",
|
|
),
|
|
"firefox_app_128x128.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/firefox_app_128x128.png",
|
|
),
|
|
"firefox_app_512x512.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/firefox_app_512x512.png",
|
|
),
|
|
"firefox_app_60x60.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/firefox_app_60x60.png",
|
|
),
|
|
"index.html": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/index.html",
|
|
),
|
|
"manifest.json": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/manifest.json",
|
|
),
|
|
"manifest.webapp": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/manifest.webapp",
|
|
),
|
|
"mstile-144x144.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/mstile-144x144.png",
|
|
),
|
|
"mstile-150x150.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/mstile-150x150.png",
|
|
),
|
|
"mstile-310x150.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/mstile-310x150.png",
|
|
),
|
|
"mstile-310x310.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/mstile-310x310.png",
|
|
),
|
|
"mstile-70x70.png": staticFileGen(
|
|
"/home/rany/Development/Projects/webssh/.tmp/dist/mstile-70x70.png",
|
|
),
|
|
}
|
|
)
|