Pārlūkot izejas kodu

Embed console.save

Alan Colon 6 gadi atpakaļ
vecāks
revīzija
d3344ea571
2 mainītis faili ar 29 papildinājumiem un 1 dzēšanām
  1. 1 1
      docker-compose.yml
  2. 28 0
      src/index.js

+ 1 - 1
docker-compose.yml

@@ -4,4 +4,4 @@ services:
     build: .
     ports:
     - 5180:80
-
+    restart: always

+ 28 - 0
src/index.js

@@ -31,6 +31,34 @@ window.save = (filename) => {
   })
 }
 
+window.console.save = function(data, filename){
+
+  if(!data) {
+      console.error('Console.save: No data')
+      return;
+  }
+
+  if(!filename) filename = 'console.json'
+
+  if(typeof data === "object"){
+      data = JSON.stringify(data, undefined, 4)
+  }
+
+  var blob = new Blob([data], {type: 'text/json'}),
+      e    = document.createEvent('MouseEvents'),
+      a    = document.createElement('a')
+
+  a.download = filename
+  a.href = window.URL.createObjectURL(blob)
+  a.dataset.downloadurl =  ['text/json', a.download, a.href].join(':')
+  e.initMouseEvent('click', true, false, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null)
+  a.dispatchEvent(e)
+}
+
+window.console.css = () => Array.from(document.styleSheets).map(ss => Array.from(ss.rules)).reduce((a, b) => a.concat(b), []).map(rule => rule.cssText).sort().join('\n')
+window.console.saveCss = (name) => window.console.save(window.console.css(), name || `${window.location.hostname}.css`)
+
+
 
 window.saveStl = (filename) => {
   var exporter = new THREE.STLExporter();