daftos 0.1.0 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.DS_Store +0 -0
- data/Gemfile +1 -0
- data/Gemfile.lock +2 -0
- data/Rakefile +4 -0
- data/VERSION +1 -1
- data/bin/daftos +14 -0
- data/daftos.gemspec +363 -0
- data/lib/.DS_Store +0 -0
- data/lib/apis/.DS_Store +0 -0
- data/lib/apis/filesystem_api.rb +68 -0
- data/lib/apps/.DS_Store +0 -0
- data/lib/apps/apps/body.html +6 -0
- data/lib/apps/apps/options.json +7 -0
- data/lib/apps/filebrowser/.DS_Store +0 -0
- data/lib/apps/filebrowser/body.html +32 -0
- data/lib/apps/filebrowser/coffee/filebrowser.coffee +51 -0
- data/lib/apps/filebrowser/js/.DS_Store +0 -0
- data/lib/apps/filebrowser/js/daftos.js +1 -0
- data/lib/apps/filebrowser/options.json +7 -0
- data/lib/apps/photobooth/.DS_Store +0 -0
- data/lib/apps/photobooth/body.html +1 -0
- data/lib/apps/photobooth/coffee/photobooth.coffee +37 -0
- data/lib/apps/photobooth/coffee/test.html +278 -0
- data/lib/apps/photobooth/css/style.css +30 -0
- data/lib/apps/photobooth/js/.DS_Store +0 -0
- data/lib/apps/photobooth/js/daftos.js +1 -0
- data/lib/apps/photobooth/options.json +26 -0
- data/lib/apps/photobrowser/body.html +2 -0
- data/lib/apps/photobrowser/coffee/photobrowser.coffee +18 -0
- data/lib/apps/photobrowser/js/.DS_Store +0 -0
- data/lib/apps/photobrowser/options.json +16 -0
- data/lib/apps/texteditor/body.html +1 -0
- data/lib/apps/texteditor/coffee/texteditor.coffee +31 -0
- data/lib/apps/texteditor/js/.DS_Store +0 -0
- data/lib/apps/texteditor/js/ace-compat-noconflict.js +1 -0
- data/lib/apps/texteditor/js/ace-compat-uncompressed-noconflict.js +480 -0
- data/lib/apps/texteditor/js/ace-compat-uncompressed.js +480 -0
- data/lib/apps/texteditor/js/ace-compat.js +1 -0
- data/lib/apps/texteditor/js/ace-noconflict.js +10 -0
- data/lib/apps/texteditor/js/ace-uncompressed-noconflict.js +19559 -0
- data/lib/apps/texteditor/js/ace-uncompressed.js +19559 -0
- data/lib/apps/texteditor/js/ace.js +10 -0
- data/lib/apps/texteditor/js/keybinding-emacs-noconflict.js +1 -0
- data/lib/apps/texteditor/js/keybinding-emacs-uncompressed-noconflict.js +150 -0
- data/lib/apps/texteditor/js/keybinding-emacs-uncompressed.js +150 -0
- data/lib/apps/texteditor/js/keybinding-emacs.js +1 -0
- data/lib/apps/texteditor/js/keybinding-vim-noconflict.js +1 -0
- data/lib/apps/texteditor/js/keybinding-vim-uncompressed-noconflict.js +138 -0
- data/lib/apps/texteditor/js/keybinding-vim-uncompressed.js +138 -0
- data/lib/apps/texteditor/js/keybinding-vim.js +1 -0
- data/lib/apps/texteditor/js/mode-c_cpp-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-c_cpp-uncompressed-noconflict.js +917 -0
- data/lib/apps/texteditor/js/mode-c_cpp-uncompressed.js +917 -0
- data/lib/apps/texteditor/js/mode-c_cpp.js +1 -0
- data/lib/apps/texteditor/js/mode-clojure-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-clojure-uncompressed-noconflict.js +422 -0
- data/lib/apps/texteditor/js/mode-clojure-uncompressed.js +422 -0
- data/lib/apps/texteditor/js/mode-clojure.js +1 -0
- data/lib/apps/texteditor/js/mode-coffee-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-coffee-uncompressed-noconflict.js +605 -0
- data/lib/apps/texteditor/js/mode-coffee-uncompressed.js +605 -0
- data/lib/apps/texteditor/js/mode-coffee.js +1 -0
- data/lib/apps/texteditor/js/mode-coldfusion-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-coldfusion-uncompressed-noconflict.js +2454 -0
- data/lib/apps/texteditor/js/mode-coldfusion-uncompressed.js +2454 -0
- data/lib/apps/texteditor/js/mode-coldfusion.js +1 -0
- data/lib/apps/texteditor/js/mode-csharp-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-csharp-uncompressed-noconflict.js +767 -0
- data/lib/apps/texteditor/js/mode-csharp-uncompressed.js +767 -0
- data/lib/apps/texteditor/js/mode-csharp.js +1 -0
- data/lib/apps/texteditor/js/mode-css-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-css-uncompressed-noconflict.js +640 -0
- data/lib/apps/texteditor/js/mode-css-uncompressed.js +640 -0
- data/lib/apps/texteditor/js/mode-css.js +1 -0
- data/lib/apps/texteditor/js/mode-golang-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-golang-uncompressed-noconflict.js +378 -0
- data/lib/apps/texteditor/js/mode-golang-uncompressed.js +378 -0
- data/lib/apps/texteditor/js/mode-golang.js +1 -0
- data/lib/apps/texteditor/js/mode-groovy-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-groovy-uncompressed-noconflict.js +1391 -0
- data/lib/apps/texteditor/js/mode-groovy-uncompressed.js +1391 -0
- data/lib/apps/texteditor/js/mode-groovy.js +1 -0
- data/lib/apps/texteditor/js/mode-haxe-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-haxe-uncompressed-noconflict.js +767 -0
- data/lib/apps/texteditor/js/mode-haxe-uncompressed.js +767 -0
- data/lib/apps/texteditor/js/mode-haxe.js +1 -0
- data/lib/apps/texteditor/js/mode-html-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-html-uncompressed-noconflict.js +2470 -0
- data/lib/apps/texteditor/js/mode-html-uncompressed.js +2470 -0
- data/lib/apps/texteditor/js/mode-html.js +1 -0
- data/lib/apps/texteditor/js/mode-java-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-java-uncompressed-noconflict.js +1393 -0
- data/lib/apps/texteditor/js/mode-java-uncompressed.js +1393 -0
- data/lib/apps/texteditor/js/mode-java.js +1 -0
- data/lib/apps/texteditor/js/mode-javascript-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-javascript-uncompressed-noconflict.js +1224 -0
- data/lib/apps/texteditor/js/mode-javascript-uncompressed.js +1224 -0
- data/lib/apps/texteditor/js/mode-javascript.js +1 -0
- data/lib/apps/texteditor/js/mode-json-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-json-uncompressed-noconflict.js +698 -0
- data/lib/apps/texteditor/js/mode-json-uncompressed.js +698 -0
- data/lib/apps/texteditor/js/mode-json.js +1 -0
- data/lib/apps/texteditor/js/mode-latex-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-latex-uncompressed-noconflict.js +95 -0
- data/lib/apps/texteditor/js/mode-latex-uncompressed.js +95 -0
- data/lib/apps/texteditor/js/mode-latex.js +1 -0
- data/lib/apps/texteditor/js/mode-less-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-less-uncompressed-noconflict.js +654 -0
- data/lib/apps/texteditor/js/mode-less-uncompressed.js +654 -0
- data/lib/apps/texteditor/js/mode-less.js +1 -0
- data/lib/apps/texteditor/js/mode-liquid-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-liquid-uncompressed-noconflict.js +1353 -0
- data/lib/apps/texteditor/js/mode-liquid-uncompressed.js +1353 -0
- data/lib/apps/texteditor/js/mode-liquid.js +1 -0
- data/lib/apps/texteditor/js/mode-lua-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-lua-uncompressed-noconflict.js +523 -0
- data/lib/apps/texteditor/js/mode-lua-uncompressed.js +523 -0
- data/lib/apps/texteditor/js/mode-lua.js +1 -0
- data/lib/apps/texteditor/js/mode-markdown-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-markdown-uncompressed-noconflict.js +2918 -0
- data/lib/apps/texteditor/js/mode-markdown-uncompressed.js +2918 -0
- data/lib/apps/texteditor/js/mode-markdown.js +1 -0
- data/lib/apps/texteditor/js/mode-ocaml-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-ocaml-uncompressed-noconflict.js +539 -0
- data/lib/apps/texteditor/js/mode-ocaml-uncompressed.js +539 -0
- data/lib/apps/texteditor/js/mode-ocaml.js +1 -0
- data/lib/apps/texteditor/js/mode-perl-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-perl-uncompressed-noconflict.js +573 -0
- data/lib/apps/texteditor/js/mode-perl-uncompressed.js +573 -0
- data/lib/apps/texteditor/js/mode-perl.js +1 -0
- data/lib/apps/texteditor/js/mode-pgsql-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-pgsql-uncompressed-noconflict.js +1104 -0
- data/lib/apps/texteditor/js/mode-pgsql-uncompressed.js +1104 -0
- data/lib/apps/texteditor/js/mode-pgsql.js +1 -0
- data/lib/apps/texteditor/js/mode-php-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-php-uncompressed-noconflict.js +1883 -0
- data/lib/apps/texteditor/js/mode-php-uncompressed.js +1883 -0
- data/lib/apps/texteditor/js/mode-php.js +1 -0
- data/lib/apps/texteditor/js/mode-powershell-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-powershell-uncompressed-noconflict.js +708 -0
- data/lib/apps/texteditor/js/mode-powershell-uncompressed.js +708 -0
- data/lib/apps/texteditor/js/mode-powershell.js +1 -0
- data/lib/apps/texteditor/js/mode-python-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-python-uncompressed-noconflict.js +506 -0
- data/lib/apps/texteditor/js/mode-python-uncompressed.js +506 -0
- data/lib/apps/texteditor/js/mode-python.js +1 -0
- data/lib/apps/texteditor/js/mode-ruby-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-ruby-uncompressed-noconflict.js +391 -0
- data/lib/apps/texteditor/js/mode-ruby-uncompressed.js +391 -0
- data/lib/apps/texteditor/js/mode-ruby.js +1 -0
- data/lib/apps/texteditor/js/mode-scad-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-scad-uncompressed-noconflict.js +905 -0
- data/lib/apps/texteditor/js/mode-scad-uncompressed.js +905 -0
- data/lib/apps/texteditor/js/mode-scad.js +1 -0
- data/lib/apps/texteditor/js/mode-scala-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-scala-uncompressed-noconflict.js +1393 -0
- data/lib/apps/texteditor/js/mode-scala-uncompressed.js +1393 -0
- data/lib/apps/texteditor/js/mode-scala.js +1 -0
- data/lib/apps/texteditor/js/mode-scss-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-scss-uncompressed-noconflict.js +678 -0
- data/lib/apps/texteditor/js/mode-scss-uncompressed.js +678 -0
- data/lib/apps/texteditor/js/mode-scss.js +1 -0
- data/lib/apps/texteditor/js/mode-sh-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-sh-uncompressed-noconflict.js +289 -0
- data/lib/apps/texteditor/js/mode-sh-uncompressed.js +289 -0
- data/lib/apps/texteditor/js/mode-sh.js +1 -0
- data/lib/apps/texteditor/js/mode-sql-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-sql-uncompressed-noconflict.js +159 -0
- data/lib/apps/texteditor/js/mode-sql-uncompressed.js +159 -0
- data/lib/apps/texteditor/js/mode-sql.js +1 -0
- data/lib/apps/texteditor/js/mode-svg-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-svg-uncompressed-noconflict.js +2133 -0
- data/lib/apps/texteditor/js/mode-svg-uncompressed.js +2133 -0
- data/lib/apps/texteditor/js/mode-svg.js +1 -0
- data/lib/apps/texteditor/js/mode-text-noconflict.js +0 -0
- data/lib/apps/texteditor/js/mode-text-uncompressed-noconflict.js +0 -0
- data/lib/apps/texteditor/js/mode-text-uncompressed.js +0 -0
- data/lib/apps/texteditor/js/mode-text.js +0 -0
- data/lib/apps/texteditor/js/mode-textile-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-textile-uncompressed-noconflict.js +254 -0
- data/lib/apps/texteditor/js/mode-textile-uncompressed.js +254 -0
- data/lib/apps/texteditor/js/mode-textile.js +1 -0
- data/lib/apps/texteditor/js/mode-xml-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-xml-uncompressed-noconflict.js +1009 -0
- data/lib/apps/texteditor/js/mode-xml-uncompressed.js +1009 -0
- data/lib/apps/texteditor/js/mode-xml.js +1 -0
- data/lib/apps/texteditor/js/mode-xquery-noconflict.js +1 -0
- data/lib/apps/texteditor/js/mode-xquery-uncompressed-noconflict.js +540 -0
- data/lib/apps/texteditor/js/mode-xquery-uncompressed.js +540 -0
- data/lib/apps/texteditor/js/mode-xquery.js +1 -0
- data/lib/apps/texteditor/js/theme-chrome-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-chrome-uncompressed-noconflict.js +207 -0
- data/lib/apps/texteditor/js/theme-chrome-uncompressed.js +207 -0
- data/lib/apps/texteditor/js/theme-chrome.js +1 -0
- data/lib/apps/texteditor/js/theme-clouds-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-clouds-uncompressed-noconflict.js +160 -0
- data/lib/apps/texteditor/js/theme-clouds-uncompressed.js +160 -0
- data/lib/apps/texteditor/js/theme-clouds.js +1 -0
- data/lib/apps/texteditor/js/theme-clouds_midnight-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-clouds_midnight-uncompressed-noconflict.js +161 -0
- data/lib/apps/texteditor/js/theme-clouds_midnight-uncompressed.js +161 -0
- data/lib/apps/texteditor/js/theme-clouds_midnight.js +1 -0
- data/lib/apps/texteditor/js/theme-cobalt-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-cobalt-uncompressed-noconflict.js +187 -0
- data/lib/apps/texteditor/js/theme-cobalt-uncompressed.js +187 -0
- data/lib/apps/texteditor/js/theme-cobalt.js +1 -0
- data/lib/apps/texteditor/js/theme-crimson_editor-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-crimson_editor-uncompressed-noconflict.js +198 -0
- data/lib/apps/texteditor/js/theme-crimson_editor-uncompressed.js +198 -0
- data/lib/apps/texteditor/js/theme-crimson_editor.js +1 -0
- data/lib/apps/texteditor/js/theme-dawn-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-dawn-uncompressed-noconflict.js +191 -0
- data/lib/apps/texteditor/js/theme-dawn-uncompressed.js +191 -0
- data/lib/apps/texteditor/js/theme-dawn.js +1 -0
- data/lib/apps/texteditor/js/theme-dreamweaver-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-dreamweaver-uncompressed-noconflict.js +227 -0
- data/lib/apps/texteditor/js/theme-dreamweaver-uncompressed.js +227 -0
- data/lib/apps/texteditor/js/theme-dreamweaver.js +1 -0
- data/lib/apps/texteditor/js/theme-eclipse-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-eclipse-uncompressed-noconflict.js +147 -0
- data/lib/apps/texteditor/js/theme-eclipse-uncompressed.js +147 -0
- data/lib/apps/texteditor/js/theme-eclipse.js +1 -0
- data/lib/apps/texteditor/js/theme-idle_fingers-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-idle_fingers-uncompressed-noconflict.js +179 -0
- data/lib/apps/texteditor/js/theme-idle_fingers-uncompressed.js +179 -0
- data/lib/apps/texteditor/js/theme-idle_fingers.js +1 -0
- data/lib/apps/texteditor/js/theme-kr_theme-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-kr_theme-uncompressed-noconflict.js +182 -0
- data/lib/apps/texteditor/js/theme-kr_theme-uncompressed.js +182 -0
- data/lib/apps/texteditor/js/theme-kr_theme.js +1 -0
- data/lib/apps/texteditor/js/theme-merbivore-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-merbivore-uncompressed-noconflict.js +182 -0
- data/lib/apps/texteditor/js/theme-merbivore-uncompressed.js +182 -0
- data/lib/apps/texteditor/js/theme-merbivore.js +1 -0
- data/lib/apps/texteditor/js/theme-merbivore_soft-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-merbivore_soft-uncompressed-noconflict.js +188 -0
- data/lib/apps/texteditor/js/theme-merbivore_soft-uncompressed.js +188 -0
- data/lib/apps/texteditor/js/theme-merbivore_soft.js +1 -0
- data/lib/apps/texteditor/js/theme-mono_industrial-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-mono_industrial-uncompressed-noconflict.js +190 -0
- data/lib/apps/texteditor/js/theme-mono_industrial-uncompressed.js +190 -0
- data/lib/apps/texteditor/js/theme-mono_industrial.js +1 -0
- data/lib/apps/texteditor/js/theme-monokai-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-monokai-uncompressed-noconflict.js +188 -0
- data/lib/apps/texteditor/js/theme-monokai-uncompressed.js +188 -0
- data/lib/apps/texteditor/js/theme-monokai.js +1 -0
- data/lib/apps/texteditor/js/theme-pastel_on_dark-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-pastel_on_dark-uncompressed-noconflict.js +192 -0
- data/lib/apps/texteditor/js/theme-pastel_on_dark-uncompressed.js +192 -0
- data/lib/apps/texteditor/js/theme-pastel_on_dark.js +1 -0
- data/lib/apps/texteditor/js/theme-solarized_dark-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-solarized_dark-uncompressed-noconflict.js +173 -0
- data/lib/apps/texteditor/js/theme-solarized_dark-uncompressed.js +173 -0
- data/lib/apps/texteditor/js/theme-solarized_dark.js +1 -0
- data/lib/apps/texteditor/js/theme-solarized_light-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-solarized_light-uncompressed-noconflict.js +172 -0
- data/lib/apps/texteditor/js/theme-solarized_light-uncompressed.js +172 -0
- data/lib/apps/texteditor/js/theme-solarized_light.js +1 -0
- data/lib/apps/texteditor/js/theme-textmate-noconflict.js +0 -0
- data/lib/apps/texteditor/js/theme-textmate-uncompressed-noconflict.js +0 -0
- data/lib/apps/texteditor/js/theme-textmate-uncompressed.js +0 -0
- data/lib/apps/texteditor/js/theme-textmate.js +0 -0
- data/lib/apps/texteditor/js/theme-tomorrow-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-tomorrow-uncompressed-noconflict.js +206 -0
- data/lib/apps/texteditor/js/theme-tomorrow-uncompressed.js +206 -0
- data/lib/apps/texteditor/js/theme-tomorrow.js +1 -0
- data/lib/apps/texteditor/js/theme-tomorrow_night-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-tomorrow_night-uncompressed-noconflict.js +206 -0
- data/lib/apps/texteditor/js/theme-tomorrow_night-uncompressed.js +206 -0
- data/lib/apps/texteditor/js/theme-tomorrow_night.js +1 -0
- data/lib/apps/texteditor/js/theme-tomorrow_night_blue-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-tomorrow_night_blue-uncompressed-noconflict.js +206 -0
- data/lib/apps/texteditor/js/theme-tomorrow_night_blue-uncompressed.js +206 -0
- data/lib/apps/texteditor/js/theme-tomorrow_night_blue.js +1 -0
- data/lib/apps/texteditor/js/theme-tomorrow_night_bright-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-tomorrow_night_bright-uncompressed-noconflict.js +206 -0
- data/lib/apps/texteditor/js/theme-tomorrow_night_bright-uncompressed.js +206 -0
- data/lib/apps/texteditor/js/theme-tomorrow_night_bright.js +1 -0
- data/lib/apps/texteditor/js/theme-tomorrow_night_eighties-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-tomorrow_night_eighties-uncompressed-noconflict.js +202 -0
- data/lib/apps/texteditor/js/theme-tomorrow_night_eighties-uncompressed.js +202 -0
- data/lib/apps/texteditor/js/theme-tomorrow_night_eighties.js +1 -0
- data/lib/apps/texteditor/js/theme-twilight-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-twilight-uncompressed-noconflict.js +204 -0
- data/lib/apps/texteditor/js/theme-twilight-uncompressed.js +204 -0
- data/lib/apps/texteditor/js/theme-twilight.js +1 -0
- data/lib/apps/texteditor/js/theme-vibrant_ink-noconflict.js +1 -0
- data/lib/apps/texteditor/js/theme-vibrant_ink-uncompressed-noconflict.js +183 -0
- data/lib/apps/texteditor/js/theme-vibrant_ink-uncompressed.js +183 -0
- data/lib/apps/texteditor/js/theme-vibrant_ink.js +1 -0
- data/lib/apps/texteditor/js/worker-coffee.js +7991 -0
- data/lib/apps/texteditor/js/worker-css.js +12224 -0
- data/lib/apps/texteditor/js/worker-javascript.js +11124 -0
- data/lib/apps/texteditor/js/worker-json.js +3593 -0
- data/lib/apps/texteditor/options.json +16 -0
- data/lib/daftos/.DS_Store +0 -0
- data/lib/daftos/server.rb +106 -0
- data/lib/daftos/views/app_footer.erb +2 -0
- data/lib/daftos/views/app_header.erb +33 -0
- data/lib/daftos.rb +25 -2
- data/lib/libs/.DS_Store +0 -0
- data/lib/libs/coffee/daftos.coffee +36 -0
- data/lib/libs/css/bootstrap.css +3496 -0
- data/lib/libs/js/bootstrap.js +1720 -0
- data/lib/libs/js/jquery.js +4 -0
- data/myapp.pid +1 -0
- metadata +325 -12
@@ -0,0 +1,16 @@
|
|
1
|
+
{
|
2
|
+
"name": "TextEditor",
|
3
|
+
"description": "Daft text editor.",
|
4
|
+
"version": "0.1",
|
5
|
+
"libs": ["bootstrap.css","jquery.js", "daftos.coffee", "bootstrap.js", "ace.js", "texteditor.coffee"],
|
6
|
+
"menu": [
|
7
|
+
{
|
8
|
+
"name": "Effects",
|
9
|
+
"id":"iiii",
|
10
|
+
"submenu": [
|
11
|
+
{"name":"blur","id":"blur"}
|
12
|
+
]
|
13
|
+
}
|
14
|
+
]
|
15
|
+
}
|
16
|
+
|
Binary file
|
@@ -0,0 +1,106 @@
|
|
1
|
+
require 'sinatra/base'
|
2
|
+
require 'json'
|
3
|
+
|
4
|
+
class Server < Sinatra::Base
|
5
|
+
|
6
|
+
get '/' do
|
7
|
+
redirect '/apps'
|
8
|
+
end
|
9
|
+
|
10
|
+
get '/libs/:type/:libname' do
|
11
|
+
send_file "#{settings.root}/../libs/#{params[:type]}/#{params[:libname]}"
|
12
|
+
end
|
13
|
+
|
14
|
+
get '/api/filesystem/file' do
|
15
|
+
send_file params[:path] #, :type => :text
|
16
|
+
end
|
17
|
+
|
18
|
+
get '/api/filesystem/directory' do
|
19
|
+
data = {}
|
20
|
+
data[:path] = File.expand_path(params[:path]).sub("//","/").split("/")
|
21
|
+
list = []
|
22
|
+
Dir.new(params[:path]).each do |name|
|
23
|
+
path = "#{params[:path]}/#{name}"
|
24
|
+
f = false
|
25
|
+
dir = false
|
26
|
+
begin
|
27
|
+
f = File.new(path)
|
28
|
+
rescue
|
29
|
+
puts "NOT FILE: #{path}}"
|
30
|
+
end
|
31
|
+
|
32
|
+
begin
|
33
|
+
dir = Dir.new(path)
|
34
|
+
rescue
|
35
|
+
end
|
36
|
+
|
37
|
+
if f
|
38
|
+
entry[:size] = f.size
|
39
|
+
entry[:access_time] = f.atime
|
40
|
+
entry[:change_time] = f.ctime
|
41
|
+
entry[:mime] = Rack::Mime.mime_type(File.extname(path))
|
42
|
+
end
|
43
|
+
if dir
|
44
|
+
entry[:is_directory] = true
|
45
|
+
end
|
46
|
+
entry[:path] = File.expand_path(path)
|
47
|
+
list << entry
|
48
|
+
end
|
49
|
+
data[:files] = list
|
50
|
+
data.to_json
|
51
|
+
end
|
52
|
+
|
53
|
+
|
54
|
+
|
55
|
+
get '/:app_id' do
|
56
|
+
@app_id = params[:app_id]
|
57
|
+
@options = JSON.parse(File.read("#{settings.root}/../apps/#{@app_id}/options.json"))
|
58
|
+
html = erb(:app_header)
|
59
|
+
html += erb(:app_footer)
|
60
|
+
return html
|
61
|
+
end
|
62
|
+
|
63
|
+
get '/:app_id/_index' do
|
64
|
+
"aaa"
|
65
|
+
end
|
66
|
+
|
67
|
+
get '/:app_id/:name.:type' do
|
68
|
+
@app_id = params[:app_id]
|
69
|
+
file = false
|
70
|
+
if File.exist?("#{settings.root}/../apps/#{@app_id}/#{params[:name]}.#{params[:type]}")
|
71
|
+
file = "#{settings.root}/../apps/#{@app_id}/#{params[:name]}.#{params[:type]}"
|
72
|
+
elsif File.exist?("#{settings.root}/../apps/#{@app_id}/#{params[:type]}/#{params[:name]}.#{params[:type]}")
|
73
|
+
file = "#{settings.root}/../apps/#{@app_id}/#{params[:type]}/#{params[:name]}.#{params[:type]}"
|
74
|
+
elsif File.exist?("#{settings.root}/../libs/#{params[:type]}/#{params[:name]}.#{params[:type]}")
|
75
|
+
file = "#{settings.root}/../libs/#{params[:type]}/#{params[:name]}.#{params[:type]}"
|
76
|
+
else
|
77
|
+
halt 404
|
78
|
+
end
|
79
|
+
|
80
|
+
if file =~ /.*\.coffee/
|
81
|
+
text = ""
|
82
|
+
File.new(file).each do |line|
|
83
|
+
text += line + "\n"
|
84
|
+
end
|
85
|
+
coffee(text)
|
86
|
+
else
|
87
|
+
send_file file
|
88
|
+
end
|
89
|
+
|
90
|
+
end
|
91
|
+
|
92
|
+
end
|
93
|
+
|
94
|
+
#map('/'){ run Server }
|
95
|
+
|
96
|
+
class Api < Sinatra::Base
|
97
|
+
|
98
|
+
get '/' do
|
99
|
+
"api"
|
100
|
+
end
|
101
|
+
|
102
|
+
end
|
103
|
+
|
104
|
+
|
105
|
+
|
106
|
+
|
@@ -0,0 +1,33 @@
|
|
1
|
+
<!doctype html>
|
2
|
+
|
3
|
+
<html>
|
4
|
+
<head>
|
5
|
+
<meta charset="utf-8">
|
6
|
+
<title><%= @options['name'] %> - DaftOS</title>
|
7
|
+
<% @options['libs'].each do |lib| %>
|
8
|
+
<% if lib =~ /.*(\.js|\.coffee)/ %>
|
9
|
+
<script src="/<%= @app_id %>/<%= lib %>"></script>
|
10
|
+
<% else %>
|
11
|
+
<link rel="stylesheet" href="/<%= @app_id %>/<%= lib %>">
|
12
|
+
<% end %>
|
13
|
+
<% end %>
|
14
|
+
</head>
|
15
|
+
<body data-app-name="<%= @app_id %>">
|
16
|
+
|
17
|
+
<div class="navbar navbar-fixed-top">
|
18
|
+
<div class="navbar-inner">
|
19
|
+
<div class="container" style="width: auto; margin-left: 30px;">
|
20
|
+
<ul class="nav">
|
21
|
+
<li class="dropdown">
|
22
|
+
<a href="#" class="dropdown-toggle brand" style="color: white;"
|
23
|
+
data-toggle="dropdown">
|
24
|
+
<%= @options['name'] %>
|
25
|
+
</a>
|
26
|
+
<ul class="dropdown-menu">
|
27
|
+
<li><a href="/">Apps</a></li>
|
28
|
+
</ul></li>
|
29
|
+
</ul>
|
30
|
+
</div>
|
31
|
+
</div>
|
32
|
+
</div>
|
33
|
+
<div id="top-free-space" style="height: 40px;"></div>
|
data/lib/daftos.rb
CHANGED
@@ -1,9 +1,32 @@
|
|
1
1
|
|
2
|
+
require_relative 'daftos/server.rb'
|
3
|
+
require_relative 'apis/filesystem_api.rb'
|
4
|
+
|
2
5
|
|
3
6
|
class Daftos
|
4
7
|
|
5
|
-
def
|
6
|
-
|
8
|
+
def self.start()
|
9
|
+
fork do
|
10
|
+
Dir.chdir(Dir.home)
|
11
|
+
Dir.mkdir('.daftos') unless Dir.exist?('.daftos')
|
12
|
+
File.open('.daftos/server.pid', 'w') {|f| f.write Process.pid }
|
13
|
+
|
14
|
+
builder = Rack::Builder.new do
|
15
|
+
map('/api/file_system'){ run FileSystemAPI }
|
16
|
+
map('/'){ run Server }
|
17
|
+
end
|
18
|
+
Rack::Handler::Thin.run builder, :Port => 9999
|
19
|
+
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
def self.stop
|
24
|
+
Dir.chdir(Dir.home)
|
25
|
+
Process.kill 'TERM', File.read('.daftos/server.pid').to_i
|
7
26
|
end
|
8
27
|
|
9
28
|
end
|
29
|
+
|
30
|
+
Daftos.start()
|
31
|
+
|
32
|
+
|
data/lib/libs/.DS_Store
ADDED
Binary file
|
@@ -0,0 +1,36 @@
|
|
1
|
+
|
2
|
+
$ ->
|
3
|
+
|
4
|
+
path = "/#{$('body').data('app-name')}/body.html"
|
5
|
+
name = $('body').data('app-name')
|
6
|
+
|
7
|
+
$.ajax "/"+name+"/options.json"
|
8
|
+
cache: false
|
9
|
+
success: (data) ->
|
10
|
+
data.menu = [] unless data.menu
|
11
|
+
for m in data.menu
|
12
|
+
console.log m
|
13
|
+
el = $("<li>"
|
14
|
+
class: 'dropdown'
|
15
|
+
)
|
16
|
+
a = $("<a>"
|
17
|
+
href: "#"
|
18
|
+
"class":"dropdown-toggle"
|
19
|
+
"data-toggle":"dropdown"
|
20
|
+
html: m.name
|
21
|
+
)
|
22
|
+
el.append(a)
|
23
|
+
if m.submenu.length
|
24
|
+
ul = $("<ul>"
|
25
|
+
class: "dropdown-menu"
|
26
|
+
)
|
27
|
+
for sub in m.submenu
|
28
|
+
ul.append("<li><a href='' id='#{sub.id}'>#{sub.name}</a></li>")
|
29
|
+
el.append(ul)
|
30
|
+
$("ul.nav").append(el)
|
31
|
+
|
32
|
+
$.ajax "/"+name+"/body.html"
|
33
|
+
cache: false
|
34
|
+
success: (data) ->
|
35
|
+
$('body').append(data)
|
36
|
+
$(window).trigger("body_loaded")
|