mirror of
https://github.com/arfct/itty-bitty.git
synced 2026-03-11 08:54:33 +00:00
Rearrange files
This commit is contained in:
parent
c6c0f2e8af
commit
ca5f949c35
26 changed files with 38 additions and 18 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -2,3 +2,4 @@
|
|||
*.log
|
||||
*.DS_Store
|
||||
package-lock.json
|
||||
node_modules
|
||||
9
build-index.sh
Executable file
9
build-index.sh
Executable file
|
|
@ -0,0 +1,9 @@
|
|||
#! /bin/bash
|
||||
cd public
|
||||
terser data.js > data-min.js
|
||||
|
||||
cd index.src
|
||||
terser index.js > index-min.js
|
||||
uglifycss index.css > index-min.css
|
||||
|
||||
awk '$1 == "@include"{system("cat " $2); next} 1' index.html > ../index.html
|
||||
BIN
favicon.png
BIN
favicon.png
Binary file not shown.
|
Before Width: | Height: | Size: 682 B |
|
|
@ -1,6 +1,6 @@
|
|||
{
|
||||
"hosting": {
|
||||
"public": ".",
|
||||
"public": "public",
|
||||
"ignore": [
|
||||
"firebase.json",
|
||||
"**/.*",
|
||||
|
|
@ -9,7 +9,8 @@
|
|||
"src/**",
|
||||
"LICENSE",
|
||||
"**.md",
|
||||
"**/.git/**"
|
||||
"**/.git/**",
|
||||
"**.sh"
|
||||
],
|
||||
"rewrites": [
|
||||
{
|
||||
|
|
|
|||
|
|
@ -1 +0,0 @@
|
|||
Source files for the js/css in index.html
|
||||
1
index.html.src/index.min.css
vendored
1
index.html.src/index.min.css
vendored
|
|
@ -1 +0,0 @@
|
|||
body{font-family:sans-serif}#iframe{border:none;height:100%;left:0;top:0;width:100%}#edit,#iframe{position:absolute}#edit{color:rgba(0,0,0,.54);display:none;font-family:monospace;font-weight:700;right:1em;top:.85em;z-index:100}#edit:not(:hover){text-decoration:none}#warning{background-color:#feecc2;border-radius:4px;font-size:16px;left:50vw;margin-left:-10em;padding:1em;position:absolute;top:10vh;width:20em;z-index:100}#warning:empty{display:none}body.toasting #edit,body.toasting #iframe{opacity:.5;pointer-events:none}body.toasting #toast{background-color:#feecc2;border-radius:4px;box-sizing:border-box;font-size:13px;left:50%;margin-left:-160px;max-width:320px;padding:1em;position:absolute;top:10px;z-index:101}body.toasting #warning,body:not(.toasting) #toast{display:none}
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
#! /bin/bash
|
||||
terser index.js > index.min.js
|
||||
terser ../data.js > data.min.js
|
||||
postcss index.css > index.min.css
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
module.exports = {
|
||||
plugins: [
|
||||
require('cssnano')({
|
||||
preset: 'default',
|
||||
}),
|
||||
],
|
||||
};
|
||||
|
Before Width: | Height: | Size: 5.3 KiB After Width: | Height: | Size: 5.3 KiB |
|
|
@ -4,7 +4,9 @@ var e=function(){"use strict";function r(e,r){postMessage({action:nr,cbn:r,resul
|
|||
var BASE64_MARKER=";base64,";var LZMA64_MARKER=";bxze64,";function compressDataURI(dataURI,callback){var base64Index=dataURI.indexOf(BASE64_MARKER);var base64=dataURI.substring(base64Index+BASE64_MARKER.length);stringToZip(base64ToByteArray(base64),function(result){callback(dataURI.substring(0,base64Index)+LZMA64_MARKER+result)})}function base64ToByteArray(base64){var raw=window.atob(base64);var rawLength=raw.length;var array=new Uint8Array(new ArrayBuffer(rawLength));for(i=0;i<rawLength;i++){array[i]=raw.charCodeAt(i)}return array}function stringToZip(string,callback){LZMA.compress(string,9,function(result,error){if(error)console.error(error);var base64String=btoa(String.fromCharCode.apply(null,new Uint8Array(result)));return callback(base64String)})}function decompressDataURI(dataURI,preamble,callback){var base64Index=dataURI.indexOf(LZMA64_MARKER);if(base64Index>0){var base64=dataURI.substring(base64Index+LZMA64_MARKER.length);zipToString(base64,function(result){stringToData(result,function(data){if(!data)return callback(undefined);callback(dataURI.substring(0,base64Index)+BASE64_MARKER+(preamble||"")+data.split(",")[1])})})}else{callback(dataURI)}}function zipToString(data,callback){var array=base64ToByteArray(data);LZMA.decompress(array,function(result,error){if(!(typeof result==="string"))result=new Uint8Array(result);if(error)console.error(error);callback(result)})}function stringToData(string,callback){if(!string.length)return callback("");var a=new FileReader;a.onload=function(e){callback(e.target.result.replace())};a.readAsDataURL(new Blob([string],{encoding:"UTF-8",type:"text/html;charset=UTF-8"}))}function dataToString(data,callback){var blob=dataURItoBlob(data);var reader=new FileReader;reader.onload=function(e){callback(reader.result)};reader.readAsText(blob)}function dataURItoBlob(dataURI){var byteString=atob(dataURI.split(",")[1]);var mimeString=dataURI.split(",")[0].split(":")[1].split(";")[0];var arrayBuffer=new ArrayBuffer(byteString.length);var _ia=new Uint8Array(arrayBuffer);for(var i=0;i<byteString.length;i++){_ia[i]=byteString.charCodeAt(i)}var dataView=new DataView(arrayBuffer);var blob=new Blob([dataView.buffer],{type:mimeString});return blob}
|
||||
var HEAD_TAGS="PGJhc2UgdGFyZ2V0PSJfdG9wIj4K";var HEAD_TAGS_EXTENDED="PG1ldGEgY2hhcnNldD0idXRmLTgiPjxtZXRhIG5hbWU9InZpZXdwb3J0IiBjb250ZW50PSJ3aWR0aD1kZXZpY2Utd2lkdGgiPjxiYXNlIHRhcmdldD0iX3RvcCI+PHN0eWxlIHR5cGU9InRleHQvY3NzIj5ib2R5e21hcmdpbjowIGF1dG87cGFkZGluZzoxMnZtaW4gMTB2bWluO21heC13aWR0aDozNWVtO2xpbmUtaGVpZ2h0OjEuNWVtO2ZvbnQtZmFtaWx5OiAtYXBwbGUtc3lzdGVtLEJsaW5rTWFjU3lzdGVtRm9udCxzYW5zLXNlcmlmO3dvcmQtd3JhcDogYnJlYWstd29yZDt9PC9zdHlsZT4g";function dismiss(){if(document.getElementById("never").checked)window.localStorage.setItem("toasted",true);document.body.classList.remove("toasting")}window.onhashchange=window.onload=function(){var hash=window.location.hash.substring(1);if(hash.length<3){location.href="/edit"}else{if(!window.localStorage.getItem("toasted"))document.body.classList.add("toasting");var iframe=document.getElementById("iframe");var link=document.getElementById("edit");var preamble=undefined;var slashIndex=hash.indexOf("/");var title=hash.substring(0,slashIndex);document.title=title.length?decodeURIComponent(title.replace(/_/g," ")):location.hostname;hash=hash.substring(slashIndex+1);var editable=hash.charAt(0)=="?";if(editable){hash=hash.substring(1)}if(hash.indexOf("data:")!=0){var colon=hash.indexOf(":");if(colon>0&&colon<15){document.body.classList.remove("toasting");return window.location.replace(hash)}var compressed=true;preamble=HEAD_TAGS_EXTENDED;hash="data:text/html;charset=utf-8;"+(compressed?"bxze64,":"base64,")+hash}else if(hash.indexOf("data:text/html;")==0){preamble=HEAD_TAGS}link.onclick=function(){location.href="/edit"+location.hash};var isIE=navigator.userAgent.match(/rv:11/);var isEdge=navigator.userAgent.match(/Edge\//);if((isEdge||isIE)&&location.href.length==2083){document.getElementById("warning").innerHTML='Edge only supports shorter URLs (maximum 2083 bytes).<br>Larger sites may require a different browser.<br><a href="http://reference.bitty.site">Learn more</a>'}decompressDataURI(hash,preamble,function(hash){if(!hash)return;iframe.sandbox="allow-scripts allow-forms allow-top-navigation allow-popups allow-modals allow-popups-to-escape-sandbox";if(!isIE){if(hash)iframe.src=hash}else{dataToString(hash,function(content){var doc=iframe.contentWindow.document;doc.open();doc.write(content);doc.close()})}});var link=document.getElementById("edit");link.href="/edit"+location.hash;link.style.display=editable?"block":"none"}};
|
||||
</script>
|
||||
<style type="text/css">body{font-family:sans-serif}#iframe{border:none;height:100%;left:0;top:0;width:100%}#edit,#iframe{position:absolute}#edit{color:rgba(0,0,0,.54);display:none;font-family:monospace;font-weight:700;right:1em;top:.85em;z-index:100}#edit:not(:hover){text-decoration:none}#warning{background-color:#feecc2;border-radius:4px;font-size:16px;left:50vw;margin-left:-10em;padding:1em;position:absolute;top:10vh;width:20em;z-index:100}#warning:empty{display:none}body.toasting #edit,body.toasting #iframe{opacity:.5;pointer-events:none}body.toasting #toast{background-color:#feecc2;border-radius:4px;box-sizing:border-box;font-size:13px;left:50%;margin-left:-160px;max-width:320px;padding:1em;position:absolute;top:10px;z-index:101}body.toasting #warning,body:not(.toasting) #toast{display:none}</style>
|
||||
<style type="text/css">
|
||||
body{font-family:sans-serif}#iframe{border:0;position:absolute;top:0;left:0;width:100%;height:100%}#edit{font-family:monospace;font-weight:bold;color:rgba(0,0,0,0.54);position:absolute;z-index:100;position:absolute;top:.85em;right:1em;display:none}#edit:not(:hover){text-decoration:none}#warning{position:absolute;border-radius:4px;background-color:#feecc2;padding:1em;font-size:16px;width:20em;z-index:100;top:10vh;left:50vw;margin-left:-10em}#warning:empty{display:none}body.toasting #iframe,body.toasting #edit{opacity:.5;pointer-events:none}body.toasting #toast{box-sizing:border-box;background-color:#feecc2;border-radius:4px;font-size:13px;left:50%;top:10px;margin-left:-160px;padding:1em;position:absolute;max-width:320px;z-index:101}body:not(.toasting) #toast,body.toasting #warning{display:none}
|
||||
</style>
|
||||
<noscript>To use itty.bitty, please enable JavaScript.</noscript>
|
||||
<div id="toast">itty.bitty is experimental technology that renders linked content from outside sources. <a href="http://toast.bitty.site" target="_blank">Learn more</a>.
|
||||
<br><br>This content is only as trustworthy as its source, and it should be treated with the caution
|
||||
|
|
@ -13,4 +15,4 @@ you would show any insecure web page.
|
|||
<iframe id="iframe"></iframe>
|
||||
<div id="warning"></div>
|
||||
<a id="edit">edit</a>
|
||||
</html>
|
||||
</html>
|
||||
1
public/index.src/index-min.css
vendored
Normal file
1
public/index.src/index-min.css
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
body{font-family:sans-serif}#iframe{border:0;position:absolute;top:0;left:0;width:100%;height:100%}#edit{font-family:monospace;font-weight:bold;color:rgba(0,0,0,0.54);position:absolute;z-index:100;position:absolute;top:.85em;right:1em;display:none}#edit:not(:hover){text-decoration:none}#warning{position:absolute;border-radius:4px;background-color:#feecc2;padding:1em;font-size:16px;width:20em;z-index:100;top:10vh;left:50vw;margin-left:-10em}#warning:empty{display:none}body.toasting #iframe,body.toasting #edit{opacity:.5;pointer-events:none}body.toasting #toast{box-sizing:border-box;background-color:#feecc2;border-radius:4px;font-size:13px;left:50%;top:10px;margin-left:-160px;padding:1em;position:absolute;max-width:320px;z-index:101}body:not(.toasting) #toast,body.toasting #warning{display:none}
|
||||
19
public/index.src/index.html
Normal file
19
public/index.src/index.html
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
<!DOCTYPE html><html manifest="manifest.appcache"><meta name="viewport" content="width=device-width"><meta name="description" content="itty bitty things can be conveyed in a link.">
|
||||
<script type="text/javascript">
|
||||
@include ../lzma/lzma-d-min.js
|
||||
|
||||
@include ../data-min.js
|
||||
@include index-min.js
|
||||
</script>
|
||||
<style type="text/css">
|
||||
@include index-min.css
|
||||
</style>
|
||||
<noscript>To use itty.bitty, please enable JavaScript.</noscript>
|
||||
<div id="toast">itty.bitty is experimental technology that renders linked content from outside sources. <a href="http://toast.bitty.site" target="_blank">Learn more</a>.
|
||||
<br><br>This content is only as trustworthy as its source, and it should be treated with the caution
|
||||
you would show any insecure web page.
|
||||
<br><br><button onclick="dismiss()">I understand</button> <input id="never" type="checkbox"><label for="never">Never show this</label></div>
|
||||
<iframe id="iframe"></iframe>
|
||||
<div id="warning"></div>
|
||||
<a id="edit">edit</a>
|
||||
</html>
|
||||
|
|
@ -1,2 +1,2 @@
|
|||
CACHE MANIFEST
|
||||
# v23
|
||||
# v24
|
||||
Loading…
Reference in a new issue