├── client
├── js
│ ├── ext
│ │ ├── ace
│ │ │ ├── mode-text.js
│ │ │ ├── theme-textmate.js
│ │ │ ├── theme-clouds.js
│ │ │ ├── theme-eclipse.js
│ │ │ ├── theme-clouds_midnight.js
│ │ │ ├── theme-merbivore.js
│ │ │ ├── theme-monokai.js
│ │ │ ├── theme-cobalt.js
│ │ │ ├── theme-dawn.js
│ │ │ ├── theme-solarized_dark.js
│ │ │ ├── theme-solarized_light.js
│ │ │ ├── theme-kr_theme.js
│ │ │ ├── theme-idle_fingers.js
│ │ │ ├── theme-vibrant_ink.js
│ │ │ ├── theme-merbivore_soft.js
│ │ │ ├── theme-tomorrow.js
│ │ │ ├── theme-twilight.js
│ │ │ ├── theme-pastel_on_dark.js
│ │ │ ├── theme-mono_industrial.js
│ │ │ ├── theme-tomorrow_night.js
│ │ │ ├── theme-chrome.js
│ │ │ ├── theme-crimson_editor.js
│ │ │ ├── theme-tomorrow_night_blue.js
│ │ │ ├── theme-tomorrow_night_bright.js
│ │ │ ├── theme-tomorrow_night_eighties.js
│ │ │ └── theme-dreamweaver.js
│ │ └── jade.js
│ ├── server.coffee
│ ├── routes
│ │ ├── disconnect.coffee
│ │ ├── delete.coffee
│ │ ├── index.coffee
│ │ ├── new.coffee
│ │ ├── collection.coffee
│ │ ├── drop.coffee
│ │ ├── rename.coffee
│ │ ├── insert.coffee
│ │ ├── empty.coffee
│ │ ├── edit.coffee
│ │ ├── find.coffee
│ │ ├── home.coffee
│ │ └── mapReduce.coffee
│ ├── smog.coffee
│ ├── routes.coffee
│ ├── notify.coffee
│ ├── editor.coffee
│ └── util.coffee
├── img
│ └── granite_bg.jpg
├── css
│ ├── ext
│ │ ├── DroidSans.ttf
│ │ ├── DroidSans-Bold.ttf
│ │ ├── glyphicons-halflings.png
│ │ ├── glyphicons-halflings-white.png
│ │ ├── jquery.noty.css
│ │ └── noty_theme_twitter.css
│ └── styles.css
├── templates
│ ├── edit.jade
│ ├── input.jade
│ ├── confirm.jade
│ ├── connect.jade
│ ├── sidebar.jade
│ ├── editbar.jade
│ ├── admin.jade
│ └── collection.jade
└── index.html
├── public
├── js
│ ├── ext
│ │ ├── ace
│ │ │ ├── mode-text.js
│ │ │ ├── theme-textmate.js
│ │ │ ├── theme-clouds.js
│ │ │ ├── theme-eclipse.js
│ │ │ ├── theme-clouds_midnight.js
│ │ │ ├── theme-merbivore.js
│ │ │ ├── theme-monokai.js
│ │ │ ├── theme-cobalt.js
│ │ │ ├── theme-dawn.js
│ │ │ ├── theme-solarized_dark.js
│ │ │ ├── theme-solarized_light.js
│ │ │ ├── theme-kr_theme.js
│ │ │ ├── theme-idle_fingers.js
│ │ │ ├── theme-vibrant_ink.js
│ │ │ ├── theme-merbivore_soft.js
│ │ │ ├── theme-tomorrow.js
│ │ │ ├── theme-twilight.js
│ │ │ ├── theme-pastel_on_dark.js
│ │ │ ├── theme-mono_industrial.js
│ │ │ ├── theme-tomorrow_night.js
│ │ │ ├── theme-chrome.js
│ │ │ ├── theme-crimson_editor.js
│ │ │ ├── theme-tomorrow_night_blue.js
│ │ │ ├── theme-tomorrow_night_bright.js
│ │ │ ├── theme-tomorrow_night_eighties.js
│ │ │ └── theme-dreamweaver.js
│ │ └── jade.js
│ ├── server.js
│ ├── smog.js
│ ├── routes
│ │ ├── disconnect.js
│ │ ├── delete.js
│ │ ├── index.js
│ │ ├── new.js
│ │ ├── drop.js
│ │ ├── empty.js
│ │ ├── insert.js
│ │ ├── collection.js
│ │ ├── rename.js
│ │ ├── home.js
│ │ ├── edit.js
│ │ ├── find.js
│ │ └── mapReduce.js
│ ├── routes.js
│ ├── notify.js
│ ├── editor.js
│ └── util.js
├── img
│ └── granite_bg.jpg
├── css
│ ├── ext
│ │ ├── DroidSans.ttf
│ │ ├── DroidSans-Bold.ttf
│ │ ├── glyphicons-halflings.png
│ │ ├── glyphicons-halflings-white.png
│ │ ├── jquery.noty.css
│ │ └── noty_theme_twitter.css
│ └── styles.css
├── templates
│ ├── connect.js
│ ├── edit.js
│ ├── confirm.js
│ ├── input.js
│ ├── editbar.js
│ ├── sidebar.js
│ ├── admin.js
│ └── collection.js
└── index.html
├── .gitignore
├── .npmignore
├── .travis.yml
├── bin
└── smog
├── lib
└── services
│ ├── disconnect.coffee
│ ├── connect.coffee
│ ├── createCollection.coffee
│ ├── admin.coffee
│ └── collection.coffee
├── start.coffee
├── LICENSE
├── package.json
└── README.md
/client/js/ext/ace/mode-text.js:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/js/ext/ace/mode-text.js:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-textmate.js:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-textmate.js:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/client/js/server.coffee:
--------------------------------------------------------------------------------
1 | define -> Vein.createClient()
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | *.log
3 | node_modules
4 | *.node
--------------------------------------------------------------------------------
/.npmignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | *.log
3 | node_modules
4 | *.node
--------------------------------------------------------------------------------
/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - 0.4
4 | - 0.6
5 | - 0.7
6 |
--------------------------------------------------------------------------------
/bin/smog:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env node
2 |
3 | require('coffee-script/register');
4 | require('../start.coffee');
--------------------------------------------------------------------------------
/client/img/granite_bg.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/yocontra/smog/HEAD/client/img/granite_bg.jpg
--------------------------------------------------------------------------------
/public/img/granite_bg.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/yocontra/smog/HEAD/public/img/granite_bg.jpg
--------------------------------------------------------------------------------
/client/css/ext/DroidSans.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/yocontra/smog/HEAD/client/css/ext/DroidSans.ttf
--------------------------------------------------------------------------------
/public/css/ext/DroidSans.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/yocontra/smog/HEAD/public/css/ext/DroidSans.ttf
--------------------------------------------------------------------------------
/client/css/ext/DroidSans-Bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/yocontra/smog/HEAD/client/css/ext/DroidSans-Bold.ttf
--------------------------------------------------------------------------------
/public/css/ext/DroidSans-Bold.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/yocontra/smog/HEAD/public/css/ext/DroidSans-Bold.ttf
--------------------------------------------------------------------------------
/client/css/ext/glyphicons-halflings.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/yocontra/smog/HEAD/client/css/ext/glyphicons-halflings.png
--------------------------------------------------------------------------------
/public/css/ext/glyphicons-halflings.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/yocontra/smog/HEAD/public/css/ext/glyphicons-halflings.png
--------------------------------------------------------------------------------
/client/css/ext/glyphicons-halflings-white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/yocontra/smog/HEAD/client/css/ext/glyphicons-halflings-white.png
--------------------------------------------------------------------------------
/public/css/ext/glyphicons-halflings-white.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/yocontra/smog/HEAD/public/css/ext/glyphicons-halflings-white.png
--------------------------------------------------------------------------------
/public/js/server.js:
--------------------------------------------------------------------------------
1 | // Generated by CoffeeScript 1.3.3
2 | (function() {
3 |
4 | define(function() {
5 | return Vein.createClient();
6 | });
7 |
8 | }).call(this);
9 |
--------------------------------------------------------------------------------
/client/templates/edit.jade:
--------------------------------------------------------------------------------
1 | .well
2 | .page-header: h1 #{title}
3 |
4 | .row-fluid.edit-container
5 | .span9.edit-editable(id="#{id}-edit-view")
6 |
7 | .row-fluid
8 | a#edit-button.btn.btn-primary #{button}
--------------------------------------------------------------------------------
/client/js/routes/disconnect.coffee:
--------------------------------------------------------------------------------
1 | define ["smog/server", "smog/notify"], (server, notify) ->
2 | show: ->
3 | server.disconnect (err) ->
4 | return notify.error "Error disconnecting: #{err}" if err?
5 | window.location = '/'
--------------------------------------------------------------------------------
/lib/services/disconnect.coffee:
--------------------------------------------------------------------------------
1 | module.exports = (cb, host, port, database) ->
2 | return cb "Not connected" unless cb.socket.mongo?
3 |
4 | cb.socket.mongo.database.close (err) ->
5 | return cb err if err?
6 | cb()
7 | delete cb.socket.mongo
--------------------------------------------------------------------------------
/client/templates/input.jade:
--------------------------------------------------------------------------------
1 | #input-modal.modal.fade.small-modal
2 | .modal-header
3 | h3 #{title}
4 |
5 | .modal-body
6 | input#input-text.small-modal-box(type="text", placeholder="#{placeholder}")
7 |
8 | .modal-footer
9 | a#input-button.btn.btn-primary #{button}
--------------------------------------------------------------------------------
/client/templates/confirm.jade:
--------------------------------------------------------------------------------
1 | #confirm-modal.modal.fade.small-modal
2 | .modal-header
3 | h3 #{title}
4 |
5 | .modal-body
6 | p #{text}
7 |
8 | .modal-footer
9 | a#confirm-button.btn.btn-danger Continue
10 | a#confirm-cancel.btn(data-dismiss="modal") Cancel
--------------------------------------------------------------------------------
/client/templates/connect.jade:
--------------------------------------------------------------------------------
1 | #connect-modal.modal.small-modal
2 | .modal-header
3 | h3 Connect
4 |
5 | .modal-body
6 | input#host.small-modal-box(type="text", placeholder="Host", value="mongodb://localhost:27017/test?auto_reconnect")
7 |
8 | .modal-footer
9 | a#connect-button.btn.btn-primary Connect
--------------------------------------------------------------------------------
/lib/services/connect.coffee:
--------------------------------------------------------------------------------
1 | mongo = require 'mongoskin'
2 |
3 | module.exports = (cb, host) ->
4 | #console.log "connect #{host}"
5 | return cb "Missing connection string" unless typeof host is 'string'
6 | return cb null, true if cb.socket.mongo?.database?
7 |
8 | cb.socket.mongo = {}
9 | db = cb.socket.mongo.database = mongo.db host
10 | cb null, true
--------------------------------------------------------------------------------
/client/js/smog.coffee:
--------------------------------------------------------------------------------
1 | define ["smog/server", "smog/routes", "smog/notify"], (server, routes, notify) ->
2 |
3 | dermis.use (mod, args, next) ->
4 | server.ready (services) -> next()
5 |
6 | server.ready (services) ->
7 | console.log "Connected - Available services: #{services}"
8 |
9 | #server.close ->
10 | # notify.error 'Connection lost - reload to re-establish'
--------------------------------------------------------------------------------
/lib/services/createCollection.coffee:
--------------------------------------------------------------------------------
1 | module.exports = (cb, name, options={}) ->
2 | return cb "Not connected" unless cb.socket.mongo?
3 | return cb "Missing name" unless name? and typeof name is "string" and name.length > 0
4 |
5 | options.safe = true
6 | cb.socket.mongo.database.createCollection name, options, (err, col) ->
7 | return cb err if err?
8 | return cb "Not created" unless col?
9 | cb()
--------------------------------------------------------------------------------
/public/js/smog.js:
--------------------------------------------------------------------------------
1 | // Generated by CoffeeScript 1.3.3
2 | (function() {
3 |
4 | define(["smog/server", "smog/routes", "smog/notify"], function(server, routes, notify) {
5 | dermis.use(function(mod, args, next) {
6 | return server.ready(function(services) {
7 | return next();
8 | });
9 | });
10 | return server.ready(function(services) {
11 | return console.log("Connected - Available services: " + services);
12 | });
13 | });
14 |
15 | }).call(this);
16 |
--------------------------------------------------------------------------------
/public/js/routes/disconnect.js:
--------------------------------------------------------------------------------
1 | // Generated by CoffeeScript 1.3.3
2 | (function() {
3 |
4 | define(["smog/server", "smog/notify"], function(server, notify) {
5 | return {
6 | show: function() {
7 | return server.disconnect(function(err) {
8 | if (err != null) {
9 | return notify.error("Error disconnecting: " + err);
10 | }
11 | return window.location = '/';
12 | });
13 | }
14 | };
15 | });
16 |
17 | }).call(this);
18 |
--------------------------------------------------------------------------------
/client/js/routes.coffee:
--------------------------------------------------------------------------------
1 | define ->
2 | dermis.route '/'
3 | dermis.route '/connect', 'routes/index'
4 | dermis.route '/disconnect'
5 | dermis.route '/home'
6 | dermis.route '/new'
7 |
8 | dermis.route '/collection/:name'
9 | dermis.route '/rename/:name'
10 | dermis.route '/drop/:name'
11 | dermis.route '/empty/:name'
12 | dermis.route '/insert/:name'
13 | dermis.route '/find/:name'
14 | dermis.route '/mapReduce/:name'
15 |
16 | # document actions
17 | dermis.route '/edit/:name/:id'
18 | dermis.route '/delete/:name/:id/:nativeId'
--------------------------------------------------------------------------------
/client/js/routes/delete.coffee:
--------------------------------------------------------------------------------
1 | define ["smog/server", "smog/notify"], (server, notify) ->
2 | show: ({name, id, nativeId}) ->
3 | if nativeId is 'true'
4 | q = '{"_id": new ObjectID("' + id + '")}'
5 | else
6 | q = '{"_id": "' + id + '"}'
7 | console.log q
8 | server.collection
9 | collection: name
10 | type: 'delete'
11 | query: q
12 | (err) ->
13 | return notify.error "Error deleting document: #{err.err or err}" if err?
14 | notify.success "Document deleted"
15 | window.location.hash = "#/collection/#{name}"
--------------------------------------------------------------------------------
/public/templates/connect.js:
--------------------------------------------------------------------------------
1 | define(function(){return function anonymous(locals,attrs,escape,rethrow,merge){attrs=attrs||jade.attrs,escape=escape||jade.escape,rethrow=rethrow||jade.rethrow,merge=merge||jade.merge;var buf=[];with(locals||{}){var interp;buf.push('
')}return buf.join("")}})
--------------------------------------------------------------------------------
/client/js/routes/index.coffee:
--------------------------------------------------------------------------------
1 | define ["smog/server", "smog/notify", "templates/connect"], (server, notify, templ) ->
2 | show: ->
3 | $('#content').html templ()
4 |
5 | $('#connect-modal').modal backdrop: false
6 | $('#connect-button').click ->
7 | host = $('#host').val()
8 |
9 | server.connect host, (err, okay) ->
10 | if err?
11 | err = "Server unavailable" if typeof err is 'object' and Object.keys(err).length is 0
12 | notify.error "Connection error: #{err.err or err}"
13 | else
14 | $('#connect-modal').modal 'hide'
15 | window.location.hash = '#/home'
--------------------------------------------------------------------------------
/public/templates/edit.js:
--------------------------------------------------------------------------------
1 | define(function(){return function anonymous(locals,attrs,escape,rethrow,merge){attrs=attrs||jade.attrs,escape=escape||jade.escape,rethrow=rethrow||jade.rethrow,merge=merge||jade.merge;var buf=[];with(locals||{}){var interp;buf.push('")}return buf.join("")}})
--------------------------------------------------------------------------------
/public/templates/confirm.js:
--------------------------------------------------------------------------------
1 | define(function(){return function anonymous(locals,attrs,escape,rethrow,merge){attrs=attrs||jade.attrs,escape=escape||jade.escape,rethrow=rethrow||jade.rethrow,merge=merge||jade.merge;var buf=[];with(locals||{}){var interp;buf.push(''+escape((interp=text)==null?"":interp)+'
')}return buf.join("")}})
--------------------------------------------------------------------------------
/client/js/routes/new.coffee:
--------------------------------------------------------------------------------
1 | define ["smog/server", "templates/input", "smog/notify"], (server, templ, notify) ->
2 | show: ->
3 | $('#content').append templ
4 | title: 'New'
5 | button: 'Create'
6 | placeholder: 'Name'
7 |
8 | $('#input-modal').modal()
9 | $('#input-modal').on 'hidden', ->
10 | $('#input-modal').remove()
11 |
12 | $('#input-button').click ->
13 | server.createCollection $('#input-text').val(), {}, (err) ->
14 | return notify.error "Error creating collection: #{err.err or err}" if err?
15 | $('#input-modal').modal 'hide'
16 | notify.success "Collection created"
17 | window.location.hash = '#/home'
--------------------------------------------------------------------------------
/public/js/routes.js:
--------------------------------------------------------------------------------
1 | // Generated by CoffeeScript 1.3.3
2 | (function() {
3 |
4 | define(function() {
5 | dermis.route('/');
6 | dermis.route('/connect', 'routes/index');
7 | dermis.route('/disconnect');
8 | dermis.route('/home');
9 | dermis.route('/new');
10 | dermis.route('/collection/:name');
11 | dermis.route('/rename/:name');
12 | dermis.route('/drop/:name');
13 | dermis.route('/empty/:name');
14 | dermis.route('/insert/:name');
15 | dermis.route('/find/:name');
16 | dermis.route('/mapReduce/:name');
17 | dermis.route('/edit/:name/:id');
18 | return dermis.route('/delete/:name/:id/:nativeId');
19 | });
20 |
21 | }).call(this);
22 |
--------------------------------------------------------------------------------
/public/templates/input.js:
--------------------------------------------------------------------------------
1 | define(function(){return function anonymous(locals,attrs,escape,rethrow,merge){attrs=attrs||jade.attrs,escape=escape||jade.escape,rethrow=rethrow||jade.rethrow,merge=merge||jade.merge;var buf=[];with(locals||{}){var interp;buf.push('")}return buf.join("")}})
--------------------------------------------------------------------------------
/client/templates/sidebar.jade:
--------------------------------------------------------------------------------
1 | .well.sidebar-nav
2 | ul.nav.nav-list
3 | li
4 | a(href="#/home")
5 | i.icon-home.icon-white
6 | | Home
7 | li
8 | a(href="#/settings")
9 | i.icon-cog.icon-white
10 | | Settings
11 | li
12 | a(href="#/disconnect")
13 | i.icon-off.icon-white
14 | | Disconnect
15 | li.divider
16 |
17 | li.nav-header Collections
18 |
19 | li
20 | a(href="#/new")
21 | i.icon-plus.icon-white
22 | | Create new
23 |
24 | each collection in collections
25 | li
26 | a(href="#/collection/#{collection}")
27 | i.icon-list-alt.icon-white
28 | | #{collection}
29 |
30 | #editbar
--------------------------------------------------------------------------------
/client/js/notify.coffee:
--------------------------------------------------------------------------------
1 | define ->
2 | notify = (text, type, pos="bottom") ->
3 | noty
4 | text: text
5 | theme: 'noty_theme_twitter'
6 | layout: pos
7 | type: type
8 | animateOpen:
9 | height: "toggle"
10 | animateClose:
11 | height: "toggle"
12 | speed: 500
13 | timeout: 3000
14 | closeButton: false
15 | closeOnSelfClick: true
16 | closeOnSelfOver: false
17 | return
18 |
19 | notify.error = (text, pos) -> notify text, 'error', pos
20 | notify.success = (text, pos) -> notify text, 'success', pos
21 | notify.info = (text, pos) -> notify text, 'information', pos
22 | notify.alert = (text, pos) -> notify text, 'alert', pos
23 | return notify
--------------------------------------------------------------------------------
/client/js/routes/collection.coffee:
--------------------------------------------------------------------------------
1 | define ["smog/server", "smog/util", "smog/notify", "templates/collection", "templates/editbar"], (server, util, notify, templ, editbar) ->
2 | show: ({name}) ->
3 | server.collection
4 | collection: name
5 | type: 'find'
6 | query: "{}"
7 | options:
8 | limit: 1000
9 | (err, docs) ->
10 | return notify.error "Error retrieving documents: #{err.err or err}" if err?
11 | notify.alert "Document limit reached - only displaying first 1000" if docs.length >= 999
12 |
13 | $('#content').html templ
14 | name: name
15 | documents: util.filterDocuments docs
16 | $('#editbar').html editbar name: name
17 | $('.dataPreview').click -> $(this).toggleClass "crop"
--------------------------------------------------------------------------------
/client/js/routes/drop.coffee:
--------------------------------------------------------------------------------
1 | define ["smog/server", "smog/notify", "templates/confirm"], (server, notify, templ) ->
2 | show: ({name}) ->
3 | $('#content').append templ
4 | title: 'Drop'
5 | text: 'Dropping a collection will completely remove it from the database.\nYou will not be able to recover any data lost.'
6 |
7 | $('#confirm-modal').modal()
8 | $('#confirm-modal').on 'hidden', ->
9 | $('#confirm-modal').remove()
10 |
11 | $('#confirm-button').click ->
12 | server.collection
13 | collection: name
14 | type: 'drop'
15 | (err) ->
16 | return notify.error "Error dropping collection: #{err}" if err?
17 | $('#confirm-modal').modal 'hide'
18 | notify.success "Collection dropped"
19 | window.location.hash = '#/home'
--------------------------------------------------------------------------------
/client/js/routes/rename.coffee:
--------------------------------------------------------------------------------
1 | define ["smog/server", "templates/input", "smog/notify"], (server, templ, notify) ->
2 | show: ({name}) ->
3 | $('#content').append templ
4 | title: 'Rename'
5 | button: 'Rename'
6 | placeholder: 'New name'
7 |
8 | $('#input-modal').modal()
9 | $('#input-modal').on 'hidden', ->
10 | $('#input-modal').remove()
11 |
12 | $('#input-button').click ->
13 | server.collection
14 | collection: name
15 | type: 'rename'
16 | query:
17 | name: $('#input-text').val()
18 | (err) ->
19 | return notify.error "Error renaming collection: #{err.err or err}" if err?
20 | $('#input-modal').modal 'hide'
21 | notify.success "Collection renamed"
22 | window.location.hash = '#/home'
--------------------------------------------------------------------------------
/client/js/routes/insert.coffee:
--------------------------------------------------------------------------------
1 | define ["smog/server", "smog/notify", "smog/editor", "templates/edit"], (server, notify, editor, templ) ->
2 | show: ({name}) ->
3 | $('#content').html templ
4 | title: 'Insert'
5 | id: name
6 | button: 'Insert'
7 |
8 | edit = editor.create "#{name}-edit-view",
9 | mode: "javascript"
10 | wrap: 100
11 | worker: false
12 | value: "{\r\n\r\n}"
13 |
14 | $('#edit-button').click ->
15 | server.collection
16 | collection: name
17 | type: 'insert'
18 | query: edit.getText()
19 | (err) ->
20 | return notify.error "Error inserting document: #{err.err or err}" if err?
21 | edit.destroy()
22 | notify.success "Document inserted!"
23 | window.location.hash = "#/collection/#{name}"
--------------------------------------------------------------------------------
/client/templates/editbar.jade:
--------------------------------------------------------------------------------
1 | .well.sidebar-nav
2 | ul.nav.nav-list
3 | li
4 | a(href="#/rename/#{name}")
5 | i.icon-pencil.icon-white
6 | | Rename
7 | li
8 | a(href="#/empty/#{name}")
9 | i.icon-trash.icon-white
10 | | Empty
11 | li
12 | a(href="#/drop/#{name}")
13 | i.icon-fire.icon-white
14 | | Drop
15 | li.divider
16 | li
17 | a(href="#/insert/#{name}")
18 | i.icon-asterisk.icon-white
19 | | Insert
20 | li
21 | a(href="#/find/#{name}")
22 | i.icon-search.icon-white
23 | | Find
24 | li
25 | a(href="#/mapReduce/#{name}")
26 | i.icon-filter.icon-white
27 | | Map Reduce
28 | li
29 | a(href="#/aggregate/#{name}")
30 | i.icon-tasks.icon-white
31 | | Aggregate
--------------------------------------------------------------------------------
/client/js/routes/empty.coffee:
--------------------------------------------------------------------------------
1 | define ["smog/server", "smog/notify", "templates/confirm"], (server, notify, templ) ->
2 | show: ({name}) ->
3 | $('#content').append templ
4 | title: 'Empty'
5 | text: 'Emptying a collection will remove every document it contains.\nYou will not be able to recover any data lost.'
6 |
7 | $('#confirm-modal').modal()
8 | $('#confirm-modal').on 'hidden', ->
9 | $('#confirm-modal').remove()
10 |
11 | $('#confirm-button').click ->
12 | server.collection
13 | collection: name
14 | type: 'empty'
15 | (err) ->
16 | return notify.error "Error emptying collection: #{err.err or err}" if err?
17 | $('#confirm-modal').modal 'hide'
18 | notify.success "Collection emptied"
19 | window.location.hash = "#/collection/#{name}"
--------------------------------------------------------------------------------
/client/js/routes/edit.coffee:
--------------------------------------------------------------------------------
1 | define ["smog/server", "smog/notify", "smog/editor", "templates/edit"], (server, notify, editor, templ) ->
2 | show: ({name, id}) ->
3 | val = $("##{id}-value").text()
4 |
5 | $('#content').html templ
6 | title: "Editing #{id}"
7 | id: id
8 | button: 'Save'
9 |
10 | edit = editor.create "#{id}-edit-view",
11 | mode: "javascript"
12 | wrap: 100
13 | worker: false
14 | value: val
15 |
16 | $('#edit-button').click ->
17 | server.collection
18 | collection: name
19 | type: 'update'
20 | query: edit.getText()
21 | (err) ->
22 | return notify.error "Error saving document: #{err.err or err}" if err?
23 | edit.destroy()
24 | notify.success "Document saved!"
25 | window.location.hash = "#/collection/#{name}"
--------------------------------------------------------------------------------
/start.coffee:
--------------------------------------------------------------------------------
1 | express = require "express"
2 | http = require "http"
3 | {join} = require "path"
4 | Vein = require 'vein'
5 |
6 | port = process.env.PORT or 8080
7 |
8 | # Web server
9 | app = express()
10 | app.use express.staticCache()
11 | app.use express.static join __dirname, './public/'
12 | server = http.createServer(app).listen port
13 |
14 | # Vein
15 | vein = Vein.createServer server
16 | vein.addFolder join __dirname, './lib/services/'
17 |
18 | console.log "Server started on #{port}"
19 |
20 | if process.argv[2] is '-u'
21 | try
22 | Pane = require 'pane'
23 | opt =
24 | title: "Smog"
25 | height: 700
26 | width: 1200
27 | url: "http://localhost:#{port}"
28 |
29 | process.nextTick ->
30 | window = new Pane opt
31 | window.open()
32 | catch err
33 | console.log 'You need to install libqtwebkit-dev to use the desktop UI.'
--------------------------------------------------------------------------------
/client/css/styles.css:
--------------------------------------------------------------------------------
1 | body {
2 | background-color: #0b2c46;
3 | background: url('../img/granite_bg.jpg');
4 | padding-bottom: 10px;
5 | margin: 8px;
6 | }
7 | code {
8 | color: black;
9 | }
10 |
11 | .connect-container {
12 | background: #222;
13 | padding: 20px;
14 | margin-bottom: 10px;
15 | -webkit-border-radius: 5px;
16 | -moz-border-radius: 5px;
17 | border-radius: 5px;
18 | margin: 0 auto;
19 | float: none;
20 | }
21 |
22 | .small-modal {
23 | width: 330px;
24 | }
25 | .small-modal-box {
26 | width: 280px;
27 | }
28 | .big-modal {
29 | height: 700px;
30 | }
31 |
32 | /*
33 | .sidebar-nav {
34 | padding: 9px 0;
35 | }
36 | */
37 |
38 | .edit-container {
39 | height: 500px;
40 | }
41 |
42 | .edit-editable {
43 | height: 490px;
44 | }
45 |
46 | .crop {
47 | overflow: hidden;
48 | white-space: nowrap;
49 | text-overflow: ellipsis;
50 | max-width: 500px;
51 | }
--------------------------------------------------------------------------------
/public/css/styles.css:
--------------------------------------------------------------------------------
1 | body {
2 | background-color: #0b2c46;
3 | background: url('../img/granite_bg.jpg');
4 | padding-bottom: 10px;
5 | margin: 8px;
6 | }
7 | code {
8 | color: black;
9 | }
10 |
11 | .connect-container {
12 | background: #222;
13 | padding: 20px;
14 | margin-bottom: 10px;
15 | -webkit-border-radius: 5px;
16 | -moz-border-radius: 5px;
17 | border-radius: 5px;
18 | margin: 0 auto;
19 | float: none;
20 | }
21 |
22 | .small-modal {
23 | width: 330px;
24 | }
25 | .small-modal-box {
26 | width: 280px;
27 | }
28 | .big-modal {
29 | height: 700px;
30 | }
31 |
32 | /*
33 | .sidebar-nav {
34 | padding: 9px 0;
35 | }
36 | */
37 |
38 | .edit-container {
39 | height: 500px;
40 | }
41 |
42 | .edit-editable {
43 | height: 490px;
44 | }
45 |
46 | .crop {
47 | overflow: hidden;
48 | white-space: nowrap;
49 | text-overflow: ellipsis;
50 | max-width: 500px;
51 | }
--------------------------------------------------------------------------------
/client/js/routes/find.coffee:
--------------------------------------------------------------------------------
1 | define ["smog/server", "smog/util", "smog/notify", "smog/editor", "templates/edit", "templates/collection"], (server, util, notify, editor, templ, collection) ->
2 | show: ({name}) ->
3 | $('#content').html templ
4 | title: 'Find'
5 | id: name
6 | button: 'Execute'
7 |
8 | edit = editor.create "#{name}-edit-view",
9 | mode: "javascript"
10 | wrap: 100
11 | worker: false
12 | value: "{\r\n\r\n}"
13 |
14 | $('#edit-button').click ->
15 | server.collection
16 | collection: name
17 | type: 'find'
18 | query: edit.getText()
19 | (err, docs) ->
20 | return notify.error "Error retrieving documents: #{err.err or err}" if err?
21 | edit.destroy()
22 | $('#content').html collection
23 | name: name
24 | documents: util.filterDocuments docs
25 |
26 | $('.dataPreview').click -> $(this).toggleClass "crop"
--------------------------------------------------------------------------------
/public/js/routes/delete.js:
--------------------------------------------------------------------------------
1 | // Generated by CoffeeScript 1.3.3
2 | (function() {
3 |
4 | define(["smog/server", "smog/notify"], function(server, notify) {
5 | return {
6 | show: function(_arg) {
7 | var id, name, nativeId, q;
8 | name = _arg.name, id = _arg.id, nativeId = _arg.nativeId;
9 | if (nativeId === 'true') {
10 | q = '{"_id": new ObjectID("' + id + '")}';
11 | } else {
12 | q = '{"_id": "' + id + '"}';
13 | }
14 | console.log(q);
15 | return server.collection({
16 | collection: name,
17 | type: 'delete',
18 | query: q
19 | }, function(err) {
20 | if (err != null) {
21 | return notify.error("Error deleting document: " + (err.err || err));
22 | }
23 | notify.success("Document deleted");
24 | return window.location.hash = "#/collection/" + name;
25 | });
26 | }
27 | };
28 | });
29 |
30 | }).call(this);
31 |
--------------------------------------------------------------------------------
/client/js/editor.coffee:
--------------------------------------------------------------------------------
1 | define ['ace/ace'], (ace) ->
2 | create: (el, {theme, mode, worker, wrap, tabSize, value, invisibles}) ->
3 | editor = ace.edit el
4 | editor.getSession().setUseSoftTabs true
5 | editor.setShowPrintMargin false
6 | editor.renderer.setHScrollBarAlwaysVisible false
7 | editor.renderer.setPrintMarginColumn false
8 | editor.renderer.setShowPrintMargin false
9 | editor.renderer.setAnimatedScroll true
10 |
11 | # defaults
12 | theme ?= "twilight"
13 | worker ?= true
14 | tabSize ?= 2
15 | invisibles ?= false
16 |
17 | editor.setTheme "ace/theme/#{theme}"
18 | editor.getSession().setUseWorker worker
19 | editor.getSession().setMode "ace/mode/#{mode}"
20 | editor.getSession().setValue value
21 | if wrap?
22 | editor.getSession().setUseWrapMode true
23 | editor.getSession().setWrapLimitRange wrap
24 | editor.renderer.setShowInvisibles invisibles
25 |
26 | # augment
27 | editor.getText = -> editor.getSession().getValue()
28 | return editor
--------------------------------------------------------------------------------
/public/js/routes/index.js:
--------------------------------------------------------------------------------
1 | // Generated by CoffeeScript 1.3.3
2 | (function() {
3 |
4 | define(["smog/server", "smog/notify", "templates/connect"], function(server, notify, templ) {
5 | return {
6 | show: function() {
7 | $('#content').html(templ());
8 | $('#connect-modal').modal({
9 | backdrop: false
10 | });
11 | return $('#connect-button').click(function() {
12 | var host;
13 | host = $('#host').val();
14 | return server.connect(host, function(err, okay) {
15 | if (err != null) {
16 | if (typeof err === 'object' && Object.keys(err).length === 0) {
17 | err = "Server unavailable";
18 | }
19 | return notify.error("Connection error: " + (err.err || err));
20 | } else {
21 | $('#connect-modal').modal('hide');
22 | return window.location.hash = '#/home';
23 | }
24 | });
25 | });
26 | }
27 | };
28 | });
29 |
30 | }).call(this);
31 |
--------------------------------------------------------------------------------
/client/templates/admin.jade:
--------------------------------------------------------------------------------
1 | .well
2 | .page-header: h1 Administration
3 |
4 | .row-fluid
5 | .span4
6 | h2 Build
7 | b System:
8 | p.crop(title="#{buildInfo.sysInfo}") #{buildInfo.sysInfo}
9 | b Version:
10 | p #{buildInfo.version}
11 | b Bits:
12 | p #{buildInfo.bits}
13 | b Debug:
14 | p #{buildInfo.debug}
15 |
16 | .span4
17 | h2 System
18 | b Host:
19 | p #{serverStatus.host}
20 | b Uptime:
21 | p #{serverStatus.uptime}
22 | b Collections:
23 | p #{collections.length}
24 | b Connections:
25 | p #{serverStatus.connections.current}/#{serverStatus.connections.total}
26 |
27 | .span4
28 | h2 Performance
29 | b Requests:
30 | p #{serverStatus.network.numRequests}
31 | b Input:
32 | p #{serverStatus.network.bytesIn}
33 | b Output:
34 | p #{serverStatus.network.bytesOut}
35 | b Disk Memory:
36 | p #{serverStatus.mem.mapped}
37 | b Virtual Memory:
38 | p #{serverStatus.mem.virtual}
--------------------------------------------------------------------------------
/client/js/routes/home.coffee:
--------------------------------------------------------------------------------
1 | define ["smog/server", "smog/util", "smog/notify", "templates/sidebar", "templates/admin"], (server, util, notify, sidebar, admin) ->
2 | show: ->
3 | server.admin (err, info) ->
4 | return notify.error "Error grabbing information: #{err.err or err}" if err?
5 |
6 | # Filter collection names
7 | info.collections = util.filterCollections info.collections
8 | $('#sidebar').html sidebar info
9 |
10 | # Filter admin info
11 | info.serverStatus.network.bytesIn = util.readableSize info.serverStatus.network.bytesIn
12 | info.serverStatus.network.bytesOut = util.readableSize info.serverStatus.network.bytesOut
13 | info.serverStatus.mem.mapped = "#{info.serverStatus.mem.mapped} MB"
14 | info.serverStatus.mem.virtual = "#{info.serverStatus.mem.virtual} MB"
15 | info.serverStatus.connections.total = info.serverStatus.connections.current + info.serverStatus.connections.available
16 | info.serverStatus.uptime = util.prettySeconds info.serverStatus.uptime
17 | $('#content').html admin info
--------------------------------------------------------------------------------
/public/js/routes/new.js:
--------------------------------------------------------------------------------
1 | // Generated by CoffeeScript 1.3.3
2 | (function() {
3 |
4 | define(["smog/server", "templates/input", "smog/notify"], function(server, templ, notify) {
5 | return {
6 | show: function() {
7 | $('#content').append(templ({
8 | title: 'New',
9 | button: 'Create',
10 | placeholder: 'Name'
11 | }));
12 | $('#input-modal').modal();
13 | $('#input-modal').on('hidden', function() {
14 | return $('#input-modal').remove();
15 | });
16 | return $('#input-button').click(function() {
17 | return server.createCollection($('#input-text').val(), {}, function(err) {
18 | if (err != null) {
19 | return notify.error("Error creating collection: " + (err.err || err));
20 | }
21 | $('#input-modal').modal('hide');
22 | notify.success("Collection created");
23 | return window.location.hash = '#/home';
24 | });
25 | });
26 | }
27 | };
28 | });
29 |
30 | }).call(this);
31 |
--------------------------------------------------------------------------------
/client/templates/collection.jade:
--------------------------------------------------------------------------------
1 | .well
2 | .page-header: h1 #{name}
3 |
4 | .row-fluid
5 | .span12
6 | table#datagrid.table.table-striped.table-bordered.table-condensed(cellpadding="0", cellspacing="0", border="0")
7 | thead
8 | tr
9 | th Id
10 | th Size
11 | th Created
12 | th Document
13 | th Actions
14 | tbody
15 | each document in documents
16 | tr(id="#{document._id}-row")
17 | td(id="#{document._id}-id") #{document._id}
18 | td(id="#{document._id}-size") #{document.size}
19 | td(id="#{document._id}-created") #{document.created}
20 | td: pre.crop.dataPreview(id="#{document._id}-value") #{document.value}
21 | td(id="#{document._id}-actions")
22 | a(id="#{document._id}-edit", href="#/edit/#{name}/#{document._id}", title="Edit")
23 | i.icon-edit.icon-white
24 | a(id="#{document._id}-delete", href="#/delete/#{name}/#{document._id}/#{document.nativeId}", title="Delete")
25 | i.icon-trash.icon-white
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2012 Fractal
2 |
3 | Permission is hereby granted, free of charge, to any person obtaining
4 | a copy of this software and associated documentation files (the
5 | "Software"), to deal in the Software without restriction, including
6 | without limitation the rights to use, copy, modify, merge, publish,
7 | distribute, sublicense, and/or sell copies of the Software, and to
8 | permit persons to whom the Software is furnished to do so, subject to
9 | the following conditions:
10 |
11 | The above copyright notice and this permission notice shall be
12 | included in all copies or substantial portions of the Software.
13 |
14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
21 |
--------------------------------------------------------------------------------
/public/js/notify.js:
--------------------------------------------------------------------------------
1 | // Generated by CoffeeScript 1.3.3
2 | (function() {
3 |
4 | define(function() {
5 | var notify;
6 | notify = function(text, type, pos) {
7 | if (pos == null) {
8 | pos = "bottom";
9 | }
10 | noty({
11 | text: text,
12 | theme: 'noty_theme_twitter',
13 | layout: pos,
14 | type: type,
15 | animateOpen: {
16 | height: "toggle"
17 | },
18 | animateClose: {
19 | height: "toggle"
20 | },
21 | speed: 500,
22 | timeout: 3000,
23 | closeButton: false,
24 | closeOnSelfClick: true,
25 | closeOnSelfOver: false
26 | });
27 | };
28 | notify.error = function(text, pos) {
29 | return notify(text, 'error', pos);
30 | };
31 | notify.success = function(text, pos) {
32 | return notify(text, 'success', pos);
33 | };
34 | notify.info = function(text, pos) {
35 | return notify(text, 'information', pos);
36 | };
37 | notify.alert = function(text, pos) {
38 | return notify(text, 'alert', pos);
39 | };
40 | return notify;
41 | });
42 |
43 | }).call(this);
44 |
--------------------------------------------------------------------------------
/public/templates/editbar.js:
--------------------------------------------------------------------------------
1 | define(function(){return function anonymous(locals,attrs,escape,rethrow,merge){attrs=attrs||jade.attrs,escape=escape||jade.escape,rethrow=rethrow||jade.rethrow,merge=merge||jade.merge;var buf=[];with(locals||{}){var interp;buf.push('')}return buf.join("")}})
--------------------------------------------------------------------------------
/public/templates/sidebar.js:
--------------------------------------------------------------------------------
1 | define(function(){return function anonymous(locals,attrs,escape,rethrow,merge){attrs=attrs||jade.attrs,escape=escape||jade.escape,rethrow=rethrow||jade.rethrow,merge=merge||jade.merge;var buf=[];with(locals||{}){var interp;buf.push('
')}return buf.join("")}})
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "smog",
3 | "description": "HTML5/Node/WebSocket MongoDB viewer",
4 | "version": "0.1.8",
5 | "homepage": "http://github.com/wearefractal/smog",
6 | "repository": "git://github.com/wearefractal/smog.git",
7 | "author": "Fractal (http://wearefractal.com/)",
8 | "bin": {
9 | "smog": "./bin/smog"
10 | },
11 | "dependencies": {
12 | "coffee-script": "^1.7.1",
13 | "mongoskin": "^1.0.0",
14 | "express": "^3.4.8",
15 | "vein": "^0.5.5",
16 | "async": "^0.9.0",
17 | "mongo-ton": "^0.0.3",
18 | "ton": "^0.0.2",
19 | "uglify-js": "^2.4.15",
20 | "mongodb": "^1.4.19"
21 | },
22 | "optionalDependencies": {
23 | "pane": "^0.0.10"
24 | },
25 | "devDependencies": {
26 | "jaded": "^0.1.1",
27 | "less": "^1.7.5",
28 | "mocha": "^2.0.1",
29 | "should": "^4.2.1"
30 | },
31 | "scripts": {
32 | "test": "mocha --compilers coffee:coffee-script",
33 | "start": "coffee start.coffee"
34 | },
35 | "engines": {
36 | "node": ">= 0.4.0"
37 | },
38 | "licenses": [
39 | {
40 | "type": "MIT",
41 | "url": "http://github.com/wearefractal/smog/raw/master/LICENSE"
42 | }
43 | ],
44 | "subdomain": "smog"
45 | }
46 |
--------------------------------------------------------------------------------
/public/js/routes/drop.js:
--------------------------------------------------------------------------------
1 | // Generated by CoffeeScript 1.3.3
2 | (function() {
3 |
4 | define(["smog/server", "smog/notify", "templates/confirm"], function(server, notify, templ) {
5 | return {
6 | show: function(_arg) {
7 | var name;
8 | name = _arg.name;
9 | $('#content').append(templ({
10 | title: 'Drop',
11 | text: 'Dropping a collection will completely remove it from the database.\nYou will not be able to recover any data lost.'
12 | }));
13 | $('#confirm-modal').modal();
14 | $('#confirm-modal').on('hidden', function() {
15 | return $('#confirm-modal').remove();
16 | });
17 | return $('#confirm-button').click(function() {
18 | return server.collection({
19 | collection: name,
20 | type: 'drop'
21 | }, function(err) {
22 | if (err != null) {
23 | return notify.error("Error dropping collection: " + err);
24 | }
25 | $('#confirm-modal').modal('hide');
26 | notify.success("Collection dropped");
27 | return window.location.hash = '#/home';
28 | });
29 | });
30 | }
31 | };
32 | });
33 |
34 | }).call(this);
35 |
--------------------------------------------------------------------------------
/public/js/routes/empty.js:
--------------------------------------------------------------------------------
1 | // Generated by CoffeeScript 1.3.3
2 | (function() {
3 |
4 | define(["smog/server", "smog/notify", "templates/confirm"], function(server, notify, templ) {
5 | return {
6 | show: function(_arg) {
7 | var name;
8 | name = _arg.name;
9 | $('#content').append(templ({
10 | title: 'Empty',
11 | text: 'Emptying a collection will remove every document it contains.\nYou will not be able to recover any data lost.'
12 | }));
13 | $('#confirm-modal').modal();
14 | $('#confirm-modal').on('hidden', function() {
15 | return $('#confirm-modal').remove();
16 | });
17 | return $('#confirm-button').click(function() {
18 | return server.collection({
19 | collection: name,
20 | type: 'empty'
21 | }, function(err) {
22 | if (err != null) {
23 | return notify.error("Error emptying collection: " + (err.err || err));
24 | }
25 | $('#confirm-modal').modal('hide');
26 | notify.success("Collection emptied");
27 | return window.location.hash = "#/collection/" + name;
28 | });
29 | });
30 | }
31 | };
32 | });
33 |
34 | }).call(this);
35 |
--------------------------------------------------------------------------------
/public/js/routes/insert.js:
--------------------------------------------------------------------------------
1 | // Generated by CoffeeScript 1.3.3
2 | (function() {
3 |
4 | define(["smog/server", "smog/notify", "smog/editor", "templates/edit"], function(server, notify, editor, templ) {
5 | return {
6 | show: function(_arg) {
7 | var edit, name;
8 | name = _arg.name;
9 | $('#content').html(templ({
10 | title: 'Insert',
11 | id: name,
12 | button: 'Insert'
13 | }));
14 | edit = editor.create("" + name + "-edit-view", {
15 | mode: "javascript",
16 | wrap: 100,
17 | worker: false,
18 | value: "{\r\n\r\n}"
19 | });
20 | return $('#edit-button').click(function() {
21 | return server.collection({
22 | collection: name,
23 | type: 'insert',
24 | query: edit.getText()
25 | }, function(err) {
26 | if (err != null) {
27 | return notify.error("Error inserting document: " + (err.err || err));
28 | }
29 | edit.destroy();
30 | notify.success("Document inserted!");
31 | return window.location.hash = "#/collection/" + name;
32 | });
33 | });
34 | }
35 | };
36 | });
37 |
38 | }).call(this);
39 |
--------------------------------------------------------------------------------
/public/js/routes/collection.js:
--------------------------------------------------------------------------------
1 | // Generated by CoffeeScript 1.3.3
2 | (function() {
3 |
4 | define(["smog/server", "smog/util", "smog/notify", "templates/collection", "templates/editbar"], function(server, util, notify, templ, editbar) {
5 | return {
6 | show: function(_arg) {
7 | var name;
8 | name = _arg.name;
9 | return server.collection({
10 | collection: name,
11 | type: 'find',
12 | query: "{}",
13 | options: {
14 | limit: 1000
15 | }
16 | }, function(err, docs) {
17 | if (err != null) {
18 | return notify.error("Error retrieving documents: " + (err.err || err));
19 | }
20 | if (docs.length >= 999) {
21 | notify.alert("Document limit reached - only displaying first 1000");
22 | }
23 | $('#content').html(templ({
24 | name: name,
25 | documents: util.filterDocuments(docs)
26 | }));
27 | $('#editbar').html(editbar({
28 | name: name
29 | }));
30 | return $('.dataPreview').click(function() {
31 | return $(this).toggleClass("crop");
32 | });
33 | });
34 | }
35 | };
36 | });
37 |
38 | }).call(this);
39 |
--------------------------------------------------------------------------------
/public/js/routes/rename.js:
--------------------------------------------------------------------------------
1 | // Generated by CoffeeScript 1.3.3
2 | (function() {
3 |
4 | define(["smog/server", "templates/input", "smog/notify"], function(server, templ, notify) {
5 | return {
6 | show: function(_arg) {
7 | var name;
8 | name = _arg.name;
9 | $('#content').append(templ({
10 | title: 'Rename',
11 | button: 'Rename',
12 | placeholder: 'New name'
13 | }));
14 | $('#input-modal').modal();
15 | $('#input-modal').on('hidden', function() {
16 | return $('#input-modal').remove();
17 | });
18 | return $('#input-button').click(function() {
19 | return server.collection({
20 | collection: name,
21 | type: 'rename',
22 | query: {
23 | name: $('#input-text').val()
24 | }
25 | }, function(err) {
26 | if (err != null) {
27 | return notify.error("Error renaming collection: " + (err.err || err));
28 | }
29 | $('#input-modal').modal('hide');
30 | notify.success("Collection renamed");
31 | return window.location.hash = '#/home';
32 | });
33 | });
34 | }
35 | };
36 | });
37 |
38 | }).call(this);
39 |
--------------------------------------------------------------------------------
/public/js/routes/home.js:
--------------------------------------------------------------------------------
1 | // Generated by CoffeeScript 1.3.3
2 | (function() {
3 |
4 | define(["smog/server", "smog/util", "smog/notify", "templates/sidebar", "templates/admin"], function(server, util, notify, sidebar, admin) {
5 | return {
6 | show: function() {
7 | return server.admin(function(err, info) {
8 | if (err != null) {
9 | return notify.error("Error grabbing information: " + (err.err || err));
10 | }
11 | info.collections = util.filterCollections(info.collections);
12 | $('#sidebar').html(sidebar(info));
13 | info.serverStatus.network.bytesIn = util.readableSize(info.serverStatus.network.bytesIn);
14 | info.serverStatus.network.bytesOut = util.readableSize(info.serverStatus.network.bytesOut);
15 | info.serverStatus.mem.mapped = "" + info.serverStatus.mem.mapped + " MB";
16 | info.serverStatus.mem.virtual = "" + info.serverStatus.mem.virtual + " MB";
17 | info.serverStatus.connections.total = info.serverStatus.connections.current + info.serverStatus.connections.available;
18 | info.serverStatus.uptime = util.prettySeconds(info.serverStatus.uptime);
19 | return $('#content').html(admin(info));
20 | });
21 | }
22 | };
23 | });
24 |
25 | }).call(this);
26 |
--------------------------------------------------------------------------------
/client/js/util.coffee:
--------------------------------------------------------------------------------
1 | define ->
2 | filterCollections: (collections) ->
3 | out = []
4 | for item in collections when item.name.indexOf('.system.') is -1
5 | name = item.name.substring item.name.indexOf('.') + 1
6 | out.push name
7 | return out
8 |
9 | filterDocuments: (docs) ->
10 | for doc in docs
11 | doc.created = @getCreated doc._id
12 | doc.size = @readableSize doc.size
13 | return docs
14 |
15 | readableSize: (size) ->
16 | units = ["B", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"]
17 | i = 0
18 | while size >= 1024
19 | size /= 1024
20 | ++i
21 | return "#{Math.floor(size.toFixed(1))} #{units[i]}"
22 |
23 | getCreated: (id) ->
24 | de = "Unknown"
25 | return de unless id?
26 | try
27 | return prettyDate(parseInt(id.slice(0,8), 16)*1000) or de
28 | return de
29 |
30 | prettySeconds: (secs) ->
31 | days = Math.floor secs / 86400
32 | hours = Math.floor (secs % 86400) / 3600
33 | minutes = Math.floor ((secs % 86400) % 3600) / 60
34 | seconds = ((secs % 86400) % 3600) % 60
35 | out = ""
36 | out += "#{days} days " if days > 0
37 | out += "#{hours} hours " if hours > 0
38 | out += "#{minutes} minutes" if minutes > 0
39 | out += " #{seconds} seconds" if seconds > 0 and days <= 0
40 | return out
--------------------------------------------------------------------------------
/public/js/routes/edit.js:
--------------------------------------------------------------------------------
1 | // Generated by CoffeeScript 1.3.3
2 | (function() {
3 |
4 | define(["smog/server", "smog/notify", "smog/editor", "templates/edit"], function(server, notify, editor, templ) {
5 | return {
6 | show: function(_arg) {
7 | var edit, id, name, val;
8 | name = _arg.name, id = _arg.id;
9 | val = $("#" + id + "-value").text();
10 | $('#content').html(templ({
11 | title: "Editing " + id,
12 | id: id,
13 | button: 'Save'
14 | }));
15 | edit = editor.create("" + id + "-edit-view", {
16 | mode: "javascript",
17 | wrap: 100,
18 | worker: false,
19 | value: val
20 | });
21 | return $('#edit-button').click(function() {
22 | return server.collection({
23 | collection: name,
24 | type: 'update',
25 | query: edit.getText()
26 | }, function(err) {
27 | if (err != null) {
28 | return notify.error("Error saving document: " + (err.err || err));
29 | }
30 | edit.destroy();
31 | notify.success("Document saved!");
32 | return window.location.hash = "#/collection/" + name;
33 | });
34 | });
35 | }
36 | };
37 | });
38 |
39 | }).call(this);
40 |
--------------------------------------------------------------------------------
/client/js/routes/mapReduce.coffee:
--------------------------------------------------------------------------------
1 | define ["smog/server", "smog/util", "smog/notify", "smog/editor", "templates/edit", "templates/collection"], (server, util, notify, editor, templ, collection) ->
2 | show: ({name}) ->
3 | $('#content').html templ
4 | title: 'Map Reduce'
5 | id: name
6 | button: 'Execute'
7 |
8 | edit = editor.create "#{name}-edit-view",
9 | mode: "javascript"
10 | worker: false
11 | wrap: 100
12 | value: """
13 | //This is a simple map/reduce that counts documents by name
14 | {
15 | map: function () {
16 | emit(this.name, {count: 1});
17 | },
18 | reduce: function (key, values) {
19 | var result = 0;
20 | values.forEach(function (value) {
21 | result += value.count;
22 | });
23 | return {count: result};
24 | }
25 | }
26 | """
27 |
28 | $('#edit-button').click ->
29 | server.collection
30 | collection: name
31 | type: 'mapReduce'
32 | query: edit.getText()
33 | (err, docs, stat) ->
34 | return notify.error "Error retrieving documents: #{err.err or err}" if err?
35 | edit.destroy()
36 | $('#content').html collection
37 | name: name
38 | documents: util.filterDocuments docs
--------------------------------------------------------------------------------
/lib/services/admin.coffee:
--------------------------------------------------------------------------------
1 | module.exports = (cb, socket) ->
2 | return cb "Not connected" unless cb.socket.mongo.database?
3 |
4 | out = {}
5 | db = cb.socket.mongo.database
6 | admin = db.admin
7 |
8 | # authenticate against "admin" db first, then go back to original.
9 | if db._dbconn.options.password
10 | dbOrig = db._dbconn.databaseName
11 | db._dbconn.databaseName = "admin"
12 | db.open (err, r) ->
13 | db._dbconn.databaseName = dbOrig
14 | db.open (err, r) ->
15 |
16 | db.collectionNames (err, r) ->
17 | return cb err.message if err?
18 | out.collections = r
19 |
20 | admin.serverStatus (err, r) ->
21 | # return cb err.message if err?
22 | out.serverStatus = r unless err?
23 |
24 | admin.buildInfo (err, r) ->
25 | # return cb err.message if err?
26 | out.buildInfo = r unless err?
27 |
28 | admin.profilingLevel (err, r) ->
29 | # return cb err.message if err?
30 | out.profilingLevel = r unless err?
31 |
32 | admin.profilingInfo (err, r) ->
33 | # return cb err.message if err?
34 | out.profilingInfo = r unless err?
35 |
36 | admin.replSetGetStatus (err, r) ->
37 | out.replSetGetStatus = r unless err?
38 | return cb null, out
--------------------------------------------------------------------------------
/public/js/routes/find.js:
--------------------------------------------------------------------------------
1 | // Generated by CoffeeScript 1.3.3
2 | (function() {
3 |
4 | define(["smog/server", "smog/util", "smog/notify", "smog/editor", "templates/edit", "templates/collection"], function(server, util, notify, editor, templ, collection) {
5 | return {
6 | show: function(_arg) {
7 | var edit, name;
8 | name = _arg.name;
9 | $('#content').html(templ({
10 | title: 'Find',
11 | id: name,
12 | button: 'Execute'
13 | }));
14 | edit = editor.create("" + name + "-edit-view", {
15 | mode: "javascript",
16 | wrap: 100,
17 | worker: false,
18 | value: "{\r\n\r\n}"
19 | });
20 | return $('#edit-button').click(function() {
21 | return server.collection({
22 | collection: name,
23 | type: 'find',
24 | query: edit.getText()
25 | }, function(err, docs) {
26 | if (err != null) {
27 | return notify.error("Error retrieving documents: " + (err.err || err));
28 | }
29 | edit.destroy();
30 | $('#content').html(collection({
31 | name: name,
32 | documents: util.filterDocuments(docs)
33 | }));
34 | return $('.dataPreview').click(function() {
35 | return $(this).toggleClass("crop");
36 | });
37 | });
38 | });
39 | }
40 | };
41 | });
42 |
43 | }).call(this);
44 |
--------------------------------------------------------------------------------
/public/js/routes/mapReduce.js:
--------------------------------------------------------------------------------
1 | // Generated by CoffeeScript 1.3.3
2 | (function() {
3 |
4 | define(["smog/server", "smog/util", "smog/notify", "smog/editor", "templates/edit", "templates/collection"], function(server, util, notify, editor, templ, collection) {
5 | return {
6 | show: function(_arg) {
7 | var edit, name;
8 | name = _arg.name;
9 | $('#content').html(templ({
10 | title: 'Map Reduce',
11 | id: name,
12 | button: 'Execute'
13 | }));
14 | edit = editor.create("" + name + "-edit-view", {
15 | mode: "javascript",
16 | worker: false,
17 | wrap: 100,
18 | value: "//This is a simple map/reduce that counts documents by name\n{\n map: function () {\n emit(this.name, {count: 1});\n },\n reduce: function (key, values) {\n var result = 0;\n values.forEach(function (value) {\n result += value.count;\n });\n return {count: result};\n }\n}"
19 | });
20 | return $('#edit-button').click(function() {
21 | return server.collection({
22 | collection: name,
23 | type: 'mapReduce',
24 | query: edit.getText()
25 | }, function(err, docs, stat) {
26 | if (err != null) {
27 | return notify.error("Error retrieving documents: " + (err.err || err));
28 | }
29 | edit.destroy();
30 | return $('#content').html(collection({
31 | name: name,
32 | documents: util.filterDocuments(docs)
33 | }));
34 | });
35 | });
36 | }
37 | };
38 | });
39 |
40 | }).call(this);
41 |
--------------------------------------------------------------------------------
/public/templates/admin.js:
--------------------------------------------------------------------------------
1 | define(function(){return function anonymous(locals,attrs,escape,rethrow,merge){attrs=attrs||jade.attrs,escape=escape||jade.escape,rethrow=rethrow||jade.rethrow,merge=merge||jade.merge;var buf=[];with(locals||{}){var interp;buf.push('Build System: "+escape((interp=buildInfo.sysInfo)==null?"":interp)+"
Version: "+escape((interp=buildInfo.version)==null?"":interp)+"
Bits: "+escape((interp=buildInfo.bits)==null?"":interp)+"
Debug: "+escape((interp=buildInfo.debug)==null?"":interp)+'
System Host: '+escape((interp=serverStatus.host)==null?"":interp)+"
Uptime: "+escape((interp=serverStatus.uptime)==null?"":interp)+"
Collections: "+escape((interp=collections.length)==null?"":interp)+"
Connections: "+escape((interp=serverStatus.connections.current)==null?"":interp)+"/"+escape((interp=serverStatus.connections.total)==null?"":interp)+'
Performance Requests: '+escape((interp=serverStatus.network.numRequests)==null?"":interp)+"
Input: "+escape((interp=serverStatus.network.bytesIn)==null?"":interp)+"
Output: "+escape((interp=serverStatus.network.bytesOut)==null?"":interp)+"
Disk Memory: "+escape((interp=serverStatus.mem.mapped)==null?"":interp)+"
Virtual Memory: "+escape((interp=serverStatus.mem.virtual)==null?"":interp)+"
")}return buf.join("")}})
--------------------------------------------------------------------------------
/public/js/editor.js:
--------------------------------------------------------------------------------
1 | // Generated by CoffeeScript 1.3.3
2 | (function() {
3 |
4 | define(['ace/ace'], function(ace) {
5 | return {
6 | create: function(el, _arg) {
7 | var editor, invisibles, mode, tabSize, theme, value, worker, wrap;
8 | theme = _arg.theme, mode = _arg.mode, worker = _arg.worker, wrap = _arg.wrap, tabSize = _arg.tabSize, value = _arg.value, invisibles = _arg.invisibles;
9 | editor = ace.edit(el);
10 | editor.getSession().setUseSoftTabs(true);
11 | editor.setShowPrintMargin(false);
12 | editor.renderer.setHScrollBarAlwaysVisible(false);
13 | editor.renderer.setPrintMarginColumn(false);
14 | editor.renderer.setShowPrintMargin(false);
15 | editor.renderer.setAnimatedScroll(true);
16 | if (theme == null) {
17 | theme = "twilight";
18 | }
19 | if (worker == null) {
20 | worker = true;
21 | }
22 | if (tabSize == null) {
23 | tabSize = 2;
24 | }
25 | if (invisibles == null) {
26 | invisibles = false;
27 | }
28 | editor.setTheme("ace/theme/" + theme);
29 | editor.getSession().setUseWorker(worker);
30 | editor.getSession().setMode("ace/mode/" + mode);
31 | editor.getSession().setValue(value);
32 | if (wrap != null) {
33 | editor.getSession().setUseWrapMode(true);
34 | editor.getSession().setWrapLimitRange(wrap);
35 | }
36 | editor.renderer.setShowInvisibles(invisibles);
37 | editor.getText = function() {
38 | return editor.getSession().getValue();
39 | };
40 | return editor;
41 | }
42 | };
43 | });
44 |
45 | }).call(this);
46 |
--------------------------------------------------------------------------------
/client/js/ext/jade.js:
--------------------------------------------------------------------------------
1 | jade=function(exports){Array.isArray||(Array.isArray=function(arr){return"[object Array]"==Object.prototype.toString.call(arr)}),Object.keys||(Object.keys=function(obj){var arr=[];for(var key in obj)obj.hasOwnProperty(key)&&arr.push(key);return arr}),exports.merge=function merge(a,b){var ac=a["class"],bc=b["class"];if(ac||bc)ac=ac||[],bc=bc||[],Array.isArray(ac)||(ac=[ac]),Array.isArray(bc)||(bc=[bc]),ac=ac.filter(nulls),bc=bc.filter(nulls),a["class"]=ac.concat(bc).join(" ");for(var key in b)key!="class"&&(a[key]=b[key]);return a};function nulls(val){return val!=null}return exports.attrs=function attrs(obj,escaped){var buf=[],terse=obj.terse;delete obj.terse;var keys=Object.keys(obj),len=keys.length;if(len){buf.push("");for(var i=0;i /g,">").replace(/"/g,""")},exports.rethrow=function rethrow(err,filename,lineno){if(!filename)throw err;var context=3,str=require("fs").readFileSync(filename,"utf8"),lines=str.split("\n"),start=Math.max(lineno-context,0),end=Math.min(lines.length,lineno+context),context=lines.slice(start,end).map(function(line,i){var curr=i+start+1;return(curr==lineno?" > ":" ")+curr+"| "+line}).join("\n");throw err.path=filename,err.message=(filename||"Jade")+":"+lineno+"\n"+context+"\n\n"+err.message,err},exports}({});
--------------------------------------------------------------------------------
/public/js/ext/jade.js:
--------------------------------------------------------------------------------
1 | jade=function(exports){Array.isArray||(Array.isArray=function(arr){return"[object Array]"==Object.prototype.toString.call(arr)}),Object.keys||(Object.keys=function(obj){var arr=[];for(var key in obj)obj.hasOwnProperty(key)&&arr.push(key);return arr}),exports.merge=function merge(a,b){var ac=a["class"],bc=b["class"];if(ac||bc)ac=ac||[],bc=bc||[],Array.isArray(ac)||(ac=[ac]),Array.isArray(bc)||(bc=[bc]),ac=ac.filter(nulls),bc=bc.filter(nulls),a["class"]=ac.concat(bc).join(" ");for(var key in b)key!="class"&&(a[key]=b[key]);return a};function nulls(val){return val!=null}return exports.attrs=function attrs(obj,escaped){var buf=[],terse=obj.terse;delete obj.terse;var keys=Object.keys(obj),len=keys.length;if(len){buf.push("");for(var i=0;i /g,">").replace(/"/g,""")},exports.rethrow=function rethrow(err,filename,lineno){if(!filename)throw err;var context=3,str=require("fs").readFileSync(filename,"utf8"),lines=str.split("\n"),start=Math.max(lineno-context,0),end=Math.min(lines.length,lineno+context),context=lines.slice(start,end).map(function(line,i){var curr=i+start+1;return(curr==lineno?" > ":" ")+curr+"| "+line}).join("\n");throw err.path=filename,err.message=(filename||"Jade")+":"+lineno+"\n"+context+"\n\n"+err.message,err},exports}({});
--------------------------------------------------------------------------------
/client/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Smog
6 |
7 |
8 |
9 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
39 |
40 |
41 |
47 |
48 |
--------------------------------------------------------------------------------
/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Smog
6 |
7 |
8 |
9 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
39 |
40 |
41 |
47 |
48 |
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-clouds.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/clouds",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-clouds",b.cssText=".ace-clouds .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-clouds .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-clouds .ace_gutter { background: #e8e8e8; color: #333;}.ace-clouds .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-clouds .ace_scroller { background-color: #FFFFFF;}.ace-clouds .ace_text-layer { cursor: text; color: #000000;}.ace-clouds .ace_cursor { border-left: 2px solid #000000;}.ace-clouds .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #000000;}.ace-clouds .ace_marker-layer .ace_selection { background: #BDD5FC;}.ace-clouds.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #FFFFFF; border-radius: 2px;}.ace-clouds .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-clouds .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #BFBFBF;}.ace-clouds .ace_marker-layer .ace_active_line { background: #FFFBD1;}.ace-clouds .ace_marker-layer .ace_selected_word { border: 1px solid #BDD5FC;}.ace-clouds .ace_invisible { color: #BFBFBF;}.ace-clouds .ace_keyword, .ace-clouds .ace_meta { color:#AF956F;}.ace-clouds .ace_keyword.ace_operator { color:#484848;}.ace-clouds .ace_constant.ace_language { color:#39946A;}.ace-clouds .ace_constant.ace_numeric { color:#46A609;}.ace-clouds .ace_invalid { background-color:#FF002A;}.ace-clouds .ace_fold { background-color: #AF956F; border-color: #000000;}.ace-clouds .ace_support.ace_function { color:#C52727;}.ace-clouds .ace_storage { color:#C52727;}.ace-clouds .ace_string { color:#5D90CD;}.ace-clouds .ace_comment { color:#BCC8BA;}.ace-clouds .ace_entity.ace_other.ace_attribute-name { color:#606060;}.ace-clouds .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-clouds.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/clouds",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-clouds",b.cssText=".ace-clouds .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-clouds .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-clouds .ace_gutter { background: #e8e8e8; color: #333;}.ace-clouds .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-clouds .ace_scroller { background-color: #FFFFFF;}.ace-clouds .ace_text-layer { cursor: text; color: #000000;}.ace-clouds .ace_cursor { border-left: 2px solid #000000;}.ace-clouds .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #000000;}.ace-clouds .ace_marker-layer .ace_selection { background: #BDD5FC;}.ace-clouds.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #FFFFFF; border-radius: 2px;}.ace-clouds .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-clouds .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #BFBFBF;}.ace-clouds .ace_marker-layer .ace_active_line { background: #FFFBD1;}.ace-clouds .ace_marker-layer .ace_selected_word { border: 1px solid #BDD5FC;}.ace-clouds .ace_invisible { color: #BFBFBF;}.ace-clouds .ace_keyword, .ace-clouds .ace_meta { color:#AF956F;}.ace-clouds .ace_keyword.ace_operator { color:#484848;}.ace-clouds .ace_constant.ace_language { color:#39946A;}.ace-clouds .ace_constant.ace_numeric { color:#46A609;}.ace-clouds .ace_invalid { background-color:#FF002A;}.ace-clouds .ace_fold { background-color: #AF956F; border-color: #000000;}.ace-clouds .ace_support.ace_function { color:#C52727;}.ace-clouds .ace_storage { color:#C52727;}.ace-clouds .ace_string { color:#5D90CD;}.ace-clouds .ace_comment { color:#BCC8BA;}.ace-clouds .ace_entity.ace_other.ace_attribute-name { color:#606060;}.ace-clouds .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-eclipse.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/eclipse",["require","exports","module","ace/lib/dom"],function(a,b,c){"use strict",b.isDark=!1,b.cssText=".ace-eclipse .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-eclipse .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-eclipse .ace_gutter { background: rgb(227, 227, 227); border-right: 1px solid rgb(159, 159, 159); color: rgb(136, 136, 136);}.ace-eclipse .ace_print_margin { width: 1px; background: #b1b4ba;}.ace-eclipse .ace_fold { background-color: rgb(60, 76, 114);}.ace-eclipse .ace_text-layer { cursor: text;}.ace-eclipse .ace_cursor { border-left: 2px solid black;}.ace-eclipse .ace_line .ace_storage,.ace-eclipse .ace_line .ace_keyword,.ace-eclipse .ace_line .ace_variable { color: rgb(127, 0, 85);}.ace-eclipse .ace_line .ace_constant.ace_buildin { color: rgb(88, 72, 246);}.ace-eclipse .ace_line .ace_constant.ace_library { color: rgb(6, 150, 14);}.ace-eclipse .ace_line .ace_function { color: rgb(60, 76, 114);}.ace-eclipse .ace_line .ace_string { color: rgb(42, 0, 255);}.ace-eclipse .ace_line .ace_comment { color: rgb(63, 127, 95);}.ace-eclipse .ace_line .ace_comment.ace_doc { color: rgb(63, 95, 191);}.ace-eclipse .ace_line .ace_comment.ace_doc.ace_tag { color: rgb(127, 159, 191);}.ace-eclipse .ace_line .ace_constant.ace_numeric {}.ace-eclipse .ace_line .ace_tag { color: rgb(63, 127, 127);}.ace-eclipse .ace_line .ace_type { color: rgb(127, 0, 127);}.ace-eclipse .ace_line .ace_xml_pe { color: rgb(104, 104, 91);}.ace-eclipse .ace_marker-layer .ace_selection { background: rgb(181, 213, 255);}.ace-eclipse .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgb(192, 192, 192);}.ace-eclipse .ace_line .ace_meta.ace_tag { color:rgb(63, 127, 127);}.ace-eclipse .ace_entity.ace_other.ace_attribute-name { color:rgb(127, 0, 127);}.ace-eclipse .ace_marker-layer .ace_active_line { background: rgb(232, 242, 254);}",b.cssClass="ace-eclipse";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-eclipse.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/eclipse",["require","exports","module","ace/lib/dom"],function(a,b,c){"use strict",b.isDark=!1,b.cssText=".ace-eclipse .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-eclipse .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-eclipse .ace_gutter { background: rgb(227, 227, 227); border-right: 1px solid rgb(159, 159, 159); color: rgb(136, 136, 136);}.ace-eclipse .ace_print_margin { width: 1px; background: #b1b4ba;}.ace-eclipse .ace_fold { background-color: rgb(60, 76, 114);}.ace-eclipse .ace_text-layer { cursor: text;}.ace-eclipse .ace_cursor { border-left: 2px solid black;}.ace-eclipse .ace_line .ace_storage,.ace-eclipse .ace_line .ace_keyword,.ace-eclipse .ace_line .ace_variable { color: rgb(127, 0, 85);}.ace-eclipse .ace_line .ace_constant.ace_buildin { color: rgb(88, 72, 246);}.ace-eclipse .ace_line .ace_constant.ace_library { color: rgb(6, 150, 14);}.ace-eclipse .ace_line .ace_function { color: rgb(60, 76, 114);}.ace-eclipse .ace_line .ace_string { color: rgb(42, 0, 255);}.ace-eclipse .ace_line .ace_comment { color: rgb(63, 127, 95);}.ace-eclipse .ace_line .ace_comment.ace_doc { color: rgb(63, 95, 191);}.ace-eclipse .ace_line .ace_comment.ace_doc.ace_tag { color: rgb(127, 159, 191);}.ace-eclipse .ace_line .ace_constant.ace_numeric {}.ace-eclipse .ace_line .ace_tag { color: rgb(63, 127, 127);}.ace-eclipse .ace_line .ace_type { color: rgb(127, 0, 127);}.ace-eclipse .ace_line .ace_xml_pe { color: rgb(104, 104, 91);}.ace-eclipse .ace_marker-layer .ace_selection { background: rgb(181, 213, 255);}.ace-eclipse .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgb(192, 192, 192);}.ace-eclipse .ace_line .ace_meta.ace_tag { color:rgb(63, 127, 127);}.ace-eclipse .ace_entity.ace_other.ace_attribute-name { color:rgb(127, 0, 127);}.ace-eclipse .ace_marker-layer .ace_active_line { background: rgb(232, 242, 254);}",b.cssClass="ace-eclipse";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-clouds_midnight.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/clouds_midnight",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-clouds-midnight",b.cssText=".ace-clouds-midnight .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-clouds-midnight .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-clouds-midnight .ace_gutter { background: #e8e8e8; color: #333;}.ace-clouds-midnight .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-clouds-midnight .ace_scroller { background-color: #191919;}.ace-clouds-midnight .ace_text-layer { cursor: text; color: #929292;}.ace-clouds-midnight .ace_cursor { border-left: 2px solid #7DA5DC;}.ace-clouds-midnight .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #7DA5DC;}.ace-clouds-midnight .ace_marker-layer .ace_selection { background: #000000;}.ace-clouds-midnight.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #191919; border-radius: 2px;}.ace-clouds-midnight .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-clouds-midnight .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #BFBFBF;}.ace-clouds-midnight .ace_marker-layer .ace_active_line { background: rgba(215, 215, 215, 0.031);}.ace-clouds-midnight .ace_marker-layer .ace_selected_word { border: 1px solid #000000;}.ace-clouds-midnight .ace_invisible { color: #BFBFBF;}.ace-clouds-midnight .ace_keyword, .ace-clouds-midnight .ace_meta { color:#927C5D;}.ace-clouds-midnight .ace_keyword.ace_operator { color:#4B4B4B;}.ace-clouds-midnight .ace_constant.ace_language { color:#39946A;}.ace-clouds-midnight .ace_constant.ace_numeric { color:#46A609;}.ace-clouds-midnight .ace_invalid { color:#FFFFFF;background-color:#E92E2E;}.ace-clouds-midnight .ace_fold { background-color: #927C5D; border-color: #929292;}.ace-clouds-midnight .ace_support.ace_function { color:#E92E2E;}.ace-clouds-midnight .ace_storage { color:#E92E2E;}.ace-clouds-midnight .ace_string { color:#5D90CD;}.ace-clouds-midnight .ace_comment { color:#3C403B;}.ace-clouds-midnight .ace_entity.ace_other.ace_attribute-name { color:#606060;}.ace-clouds-midnight .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-clouds_midnight.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/clouds_midnight",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-clouds-midnight",b.cssText=".ace-clouds-midnight .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-clouds-midnight .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-clouds-midnight .ace_gutter { background: #e8e8e8; color: #333;}.ace-clouds-midnight .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-clouds-midnight .ace_scroller { background-color: #191919;}.ace-clouds-midnight .ace_text-layer { cursor: text; color: #929292;}.ace-clouds-midnight .ace_cursor { border-left: 2px solid #7DA5DC;}.ace-clouds-midnight .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #7DA5DC;}.ace-clouds-midnight .ace_marker-layer .ace_selection { background: #000000;}.ace-clouds-midnight.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #191919; border-radius: 2px;}.ace-clouds-midnight .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-clouds-midnight .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #BFBFBF;}.ace-clouds-midnight .ace_marker-layer .ace_active_line { background: rgba(215, 215, 215, 0.031);}.ace-clouds-midnight .ace_marker-layer .ace_selected_word { border: 1px solid #000000;}.ace-clouds-midnight .ace_invisible { color: #BFBFBF;}.ace-clouds-midnight .ace_keyword, .ace-clouds-midnight .ace_meta { color:#927C5D;}.ace-clouds-midnight .ace_keyword.ace_operator { color:#4B4B4B;}.ace-clouds-midnight .ace_constant.ace_language { color:#39946A;}.ace-clouds-midnight .ace_constant.ace_numeric { color:#46A609;}.ace-clouds-midnight .ace_invalid { color:#FFFFFF;background-color:#E92E2E;}.ace-clouds-midnight .ace_fold { background-color: #927C5D; border-color: #929292;}.ace-clouds-midnight .ace_support.ace_function { color:#E92E2E;}.ace-clouds-midnight .ace_storage { color:#E92E2E;}.ace-clouds-midnight .ace_string { color:#5D90CD;}.ace-clouds-midnight .ace_comment { color:#3C403B;}.ace-clouds-midnight .ace_entity.ace_other.ace_attribute-name { color:#606060;}.ace-clouds-midnight .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-merbivore.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/merbivore",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-merbivore",b.cssText=".ace-merbivore .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-merbivore .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-merbivore .ace_gutter { background: #e8e8e8; color: #333;}.ace-merbivore .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-merbivore .ace_scroller { background-color: #161616;}.ace-merbivore .ace_text-layer { cursor: text; color: #E6E1DC;}.ace-merbivore .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-merbivore .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-merbivore .ace_marker-layer .ace_selection { background: #454545;}.ace-merbivore.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #161616; border-radius: 2px;}.ace-merbivore .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-merbivore .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #404040;}.ace-merbivore .ace_marker-layer .ace_active_line { background: #333435;}.ace-merbivore .ace_marker-layer .ace_selected_word { border: 1px solid #454545;}.ace-merbivore .ace_invisible { color: #404040;}.ace-merbivore .ace_keyword, .ace-merbivore .ace_meta { color:#FC6F09;}.ace-merbivore .ace_constant, .ace-merbivore .ace_constant.ace_other { color:#1EDAFB;}.ace-merbivore .ace_constant.ace_character, { color:#1EDAFB;}.ace-merbivore .ace_constant.ace_character.ace_escape, { color:#1EDAFB;}.ace-merbivore .ace_constant.ace_language { color:#FDC251;}.ace-merbivore .ace_constant.ace_library { color:#8DFF0A;}.ace-merbivore .ace_constant.ace_numeric { color:#58C554;}.ace-merbivore .ace_invalid { color:#FFFFFF;background-color:#990000;}.ace-merbivore .ace_support.ace_constant { color:#8DFF0A;}.ace-merbivore .ace_fold { background-color: #FC6F09; border-color: #E6E1DC;}.ace-merbivore .ace_support.ace_function { color:#FC6F09;}.ace-merbivore .ace_storage { color:#FC6F09;}.ace-merbivore .ace_string { color:#8DFF0A;}.ace-merbivore .ace_comment { font-style:italic;color:#AD2EA4;}.ace-merbivore .ace_meta.ace_tag { color:#FC6F09;}.ace-merbivore .ace_entity.ace_other.ace_attribute-name { color:#FFFF89;}.ace-merbivore .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-merbivore.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/merbivore",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-merbivore",b.cssText=".ace-merbivore .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-merbivore .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-merbivore .ace_gutter { background: #e8e8e8; color: #333;}.ace-merbivore .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-merbivore .ace_scroller { background-color: #161616;}.ace-merbivore .ace_text-layer { cursor: text; color: #E6E1DC;}.ace-merbivore .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-merbivore .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-merbivore .ace_marker-layer .ace_selection { background: #454545;}.ace-merbivore.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #161616; border-radius: 2px;}.ace-merbivore .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-merbivore .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #404040;}.ace-merbivore .ace_marker-layer .ace_active_line { background: #333435;}.ace-merbivore .ace_marker-layer .ace_selected_word { border: 1px solid #454545;}.ace-merbivore .ace_invisible { color: #404040;}.ace-merbivore .ace_keyword, .ace-merbivore .ace_meta { color:#FC6F09;}.ace-merbivore .ace_constant, .ace-merbivore .ace_constant.ace_other { color:#1EDAFB;}.ace-merbivore .ace_constant.ace_character, { color:#1EDAFB;}.ace-merbivore .ace_constant.ace_character.ace_escape, { color:#1EDAFB;}.ace-merbivore .ace_constant.ace_language { color:#FDC251;}.ace-merbivore .ace_constant.ace_library { color:#8DFF0A;}.ace-merbivore .ace_constant.ace_numeric { color:#58C554;}.ace-merbivore .ace_invalid { color:#FFFFFF;background-color:#990000;}.ace-merbivore .ace_support.ace_constant { color:#8DFF0A;}.ace-merbivore .ace_fold { background-color: #FC6F09; border-color: #E6E1DC;}.ace-merbivore .ace_support.ace_function { color:#FC6F09;}.ace-merbivore .ace_storage { color:#FC6F09;}.ace-merbivore .ace_string { color:#8DFF0A;}.ace-merbivore .ace_comment { font-style:italic;color:#AD2EA4;}.ace-merbivore .ace_meta.ace_tag { color:#FC6F09;}.ace-merbivore .ace_entity.ace_other.ace_attribute-name { color:#FFFF89;}.ace-merbivore .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/util.js:
--------------------------------------------------------------------------------
1 | // Generated by CoffeeScript 1.3.3
2 | (function() {
3 |
4 | define(function() {
5 | return {
6 | filterCollections: function(collections) {
7 | var item, name, out, _i, _len;
8 | out = [];
9 | for (_i = 0, _len = collections.length; _i < _len; _i++) {
10 | item = collections[_i];
11 | if (!(item.name.indexOf('.system.') === -1)) {
12 | continue;
13 | }
14 | name = item.name.substring(item.name.indexOf('.') + 1);
15 | out.push(name);
16 | }
17 | return out;
18 | },
19 | filterDocuments: function(docs) {
20 | var doc, _i, _len;
21 | for (_i = 0, _len = docs.length; _i < _len; _i++) {
22 | doc = docs[_i];
23 | doc.created = this.getCreated(doc._id);
24 | doc.size = this.readableSize(doc.size);
25 | }
26 | return docs;
27 | },
28 | readableSize: function(size) {
29 | var i, units;
30 | units = ["B", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"];
31 | i = 0;
32 | while (size >= 1024) {
33 | size /= 1024;
34 | ++i;
35 | }
36 | return "" + (Math.floor(size.toFixed(1))) + " " + units[i];
37 | },
38 | getCreated: function(id) {
39 | var de;
40 | de = "Unknown";
41 | if (id == null) {
42 | return de;
43 | }
44 | try {
45 | return prettyDate(parseInt(id.slice(0, 8), 16) * 1000) || de;
46 | } catch (_error) {}
47 | return de;
48 | },
49 | prettySeconds: function(secs) {
50 | var days, hours, minutes, out, seconds;
51 | days = Math.floor(secs / 86400);
52 | hours = Math.floor((secs % 86400) / 3600);
53 | minutes = Math.floor(((secs % 86400) % 3600) / 60);
54 | seconds = ((secs % 86400) % 3600) % 60;
55 | out = "";
56 | if (days > 0) {
57 | out += "" + days + " days ";
58 | }
59 | if (hours > 0) {
60 | out += "" + hours + " hours ";
61 | }
62 | if (minutes > 0) {
63 | out += "" + minutes + " minutes";
64 | }
65 | if (seconds > 0 && days <= 0) {
66 | out += " " + seconds + " seconds";
67 | }
68 | return out;
69 | }
70 | };
71 | });
72 |
73 | }).call(this);
74 |
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-monokai.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/monokai",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-monokai",b.cssText=".ace-monokai .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-monokai .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-monokai .ace_gutter { background: #e8e8e8; color: #333;}.ace-monokai .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-monokai .ace_scroller { background-color: #272822;}.ace-monokai .ace_text-layer { cursor: text; color: #F8F8F2;}.ace-monokai .ace_cursor { border-left: 2px solid #F8F8F0;}.ace-monokai .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #F8F8F0;}.ace-monokai .ace_marker-layer .ace_selection { background: #49483E;}.ace-monokai.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #272822; border-radius: 2px;}.ace-monokai .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-monokai .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #49483E;}.ace-monokai .ace_marker-layer .ace_active_line { background: #49483E;}.ace-monokai .ace_marker-layer .ace_selected_word { border: 1px solid #49483E;}.ace-monokai .ace_invisible { color: #49483E;}.ace-monokai .ace_keyword, .ace-monokai .ace_meta { color:#F92672;}.ace-monokai .ace_constant.ace_language { color:#AE81FF;}.ace-monokai .ace_constant.ace_numeric { color:#AE81FF;}.ace-monokai .ace_constant.ace_other { color:#AE81FF;}.ace-monokai .ace_invalid { color:#F8F8F0;background-color:#F92672;}.ace-monokai .ace_invalid.ace_deprecated { color:#F8F8F0;background-color:#AE81FF;}.ace-monokai .ace_support.ace_constant { color:#66D9EF;}.ace-monokai .ace_fold { background-color: #A6E22E; border-color: #F8F8F2;}.ace-monokai .ace_support.ace_function { color:#66D9EF;}.ace-monokai .ace_storage { color:#F92672;}.ace-monokai .ace_storage.ace_type, .ace-monokai .ace_support.ace_type{ font-style:italic;color:#66D9EF;}.ace-monokai .ace_variable { color:#A6E22E;}.ace-monokai .ace_variable.ace_parameter { font-style:italic;color:#FD971F;}.ace-monokai .ace_string { color:#E6DB74;}.ace-monokai .ace_comment { color:#75715E;}.ace-monokai .ace_entity.ace_other.ace_attribute-name { color:#A6E22E;}.ace-monokai .ace_entity.ace_name.ace_function { color:#A6E22E;}.ace-monokai .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-monokai.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/monokai",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-monokai",b.cssText=".ace-monokai .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-monokai .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-monokai .ace_gutter { background: #e8e8e8; color: #333;}.ace-monokai .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-monokai .ace_scroller { background-color: #272822;}.ace-monokai .ace_text-layer { cursor: text; color: #F8F8F2;}.ace-monokai .ace_cursor { border-left: 2px solid #F8F8F0;}.ace-monokai .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #F8F8F0;}.ace-monokai .ace_marker-layer .ace_selection { background: #49483E;}.ace-monokai.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #272822; border-radius: 2px;}.ace-monokai .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-monokai .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #49483E;}.ace-monokai .ace_marker-layer .ace_active_line { background: #49483E;}.ace-monokai .ace_marker-layer .ace_selected_word { border: 1px solid #49483E;}.ace-monokai .ace_invisible { color: #49483E;}.ace-monokai .ace_keyword, .ace-monokai .ace_meta { color:#F92672;}.ace-monokai .ace_constant.ace_language { color:#AE81FF;}.ace-monokai .ace_constant.ace_numeric { color:#AE81FF;}.ace-monokai .ace_constant.ace_other { color:#AE81FF;}.ace-monokai .ace_invalid { color:#F8F8F0;background-color:#F92672;}.ace-monokai .ace_invalid.ace_deprecated { color:#F8F8F0;background-color:#AE81FF;}.ace-monokai .ace_support.ace_constant { color:#66D9EF;}.ace-monokai .ace_fold { background-color: #A6E22E; border-color: #F8F8F2;}.ace-monokai .ace_support.ace_function { color:#66D9EF;}.ace-monokai .ace_storage { color:#F92672;}.ace-monokai .ace_storage.ace_type, .ace-monokai .ace_support.ace_type{ font-style:italic;color:#66D9EF;}.ace-monokai .ace_variable { color:#A6E22E;}.ace-monokai .ace_variable.ace_parameter { font-style:italic;color:#FD971F;}.ace-monokai .ace_string { color:#E6DB74;}.ace-monokai .ace_comment { color:#75715E;}.ace-monokai .ace_entity.ace_other.ace_attribute-name { color:#A6E22E;}.ace-monokai .ace_entity.ace_name.ace_function { color:#A6E22E;}.ace-monokai .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-cobalt.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/cobalt",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-cobalt",b.cssText=".ace-cobalt .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-cobalt .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-cobalt .ace_gutter { background: #e8e8e8; color: #333;}.ace-cobalt .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-cobalt .ace_scroller { background-color: #002240;}.ace-cobalt .ace_text-layer { cursor: text; color: #FFFFFF;}.ace-cobalt .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-cobalt .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-cobalt .ace_marker-layer .ace_selection { background: rgba(179, 101, 57, 0.75);}.ace-cobalt.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #002240; border-radius: 2px;}.ace-cobalt .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-cobalt .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(255, 255, 255, 0.15);}.ace-cobalt .ace_marker-layer .ace_active_line { background: rgba(0, 0, 0, 0.35);}.ace-cobalt .ace_marker-layer .ace_selected_word { border: 1px solid rgba(179, 101, 57, 0.75);}.ace-cobalt .ace_invisible { color: rgba(255, 255, 255, 0.15);}.ace-cobalt .ace_keyword, .ace-cobalt .ace_meta { color:#FF9D00;}.ace-cobalt .ace_constant, .ace-cobalt .ace_constant.ace_other { color:#FF628C;}.ace-cobalt .ace_constant.ace_character, { color:#FF628C;}.ace-cobalt .ace_constant.ace_character.ace_escape, { color:#FF628C;}.ace-cobalt .ace_invalid { color:#F8F8F8;background-color:#800F00;}.ace-cobalt .ace_support { color:#80FFBB;}.ace-cobalt .ace_support.ace_constant { color:#EB939A;}.ace-cobalt .ace_fold { background-color: #FF9D00; border-color: #FFFFFF;}.ace-cobalt .ace_support.ace_function { color:#FFB054;}.ace-cobalt .ace_storage { color:#FFEE80;}.ace-cobalt .ace_string.ace_regexp { color:#80FFC2;}.ace-cobalt .ace_comment { font-style:italic;color:#0088FF;}.ace-cobalt .ace_variable { color:#CCCCCC;}.ace-cobalt .ace_variable.ace_language { color:#FF80E1;}.ace-cobalt .ace_meta.ace_tag { color:#9EFFFF;}.ace-cobalt .ace_markup.ace_underline { text-decoration:underline;}.ace-cobalt .ace_markup.ace_heading { color:#C8E4FD;background-color:#001221;}.ace-cobalt .ace_markup.ace_list { background-color:#130D26;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-dawn.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/dawn",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-dawn",b.cssText=".ace-dawn .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-dawn .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-dawn .ace_gutter { background: #e8e8e8; color: #333;}.ace-dawn .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-dawn .ace_scroller { background-color: #F9F9F9;}.ace-dawn .ace_text-layer { cursor: text; color: #080808;}.ace-dawn .ace_cursor { border-left: 2px solid #000000;}.ace-dawn .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #000000;}.ace-dawn .ace_marker-layer .ace_selection { background: rgba(39, 95, 255, 0.30);}.ace-dawn.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #F9F9F9; border-radius: 2px;}.ace-dawn .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-dawn .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(75, 75, 126, 0.50);}.ace-dawn .ace_marker-layer .ace_active_line { background: rgba(36, 99, 180, 0.12);}.ace-dawn .ace_marker-layer .ace_selected_word { border: 1px solid rgba(39, 95, 255, 0.30);}.ace-dawn .ace_invisible { color: rgba(75, 75, 126, 0.50);}.ace-dawn .ace_keyword, .ace-dawn .ace_meta { color:#794938;}.ace-dawn .ace_constant, .ace-dawn .ace_constant.ace_other { color:#811F24;}.ace-dawn .ace_constant.ace_character, { color:#811F24;}.ace-dawn .ace_constant.ace_character.ace_escape, { color:#811F24;}.ace-dawn .ace_invalid.ace_illegal { text-decoration:underline;font-style:italic;color:#F8F8F8;background-color:#B52A1D;}.ace-dawn .ace_invalid.ace_deprecated { text-decoration:underline;font-style:italic;color:#B52A1D;}.ace-dawn .ace_support { color:#691C97;}.ace-dawn .ace_support.ace_constant { color:#B4371F;}.ace-dawn .ace_fold { background-color: #794938; border-color: #080808;}.ace-dawn .ace_support.ace_function { color:#693A17;}.ace-dawn .ace_storage { font-style:italic;color:#A71D5D;}.ace-dawn .ace_string { color:#0B6125;}.ace-dawn .ace_string.ace_regexp { color:#CF5628;}.ace-dawn .ace_comment { font-style:italic;color:#5A525F;}.ace-dawn .ace_variable { color:#234A97;}.ace-dawn .ace_markup.ace_underline { text-decoration:underline;}.ace-dawn .ace_markup.ace_heading { color:#19356D;}.ace-dawn .ace_markup.ace_list { color:#693A17;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-solarized_dark.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/solarized_dark",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-solarized-dark",b.cssText=".ace-solarized-dark .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-solarized-dark .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-solarized-dark .ace_gutter { background: #e8e8e8; color: #333;}.ace-solarized-dark .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-solarized-dark .ace_scroller { background-color: #002B36;}.ace-solarized-dark .ace_text-layer { cursor: text; color: #93A1A1;}.ace-solarized-dark .ace_cursor { border-left: 2px solid #D30102;}.ace-solarized-dark .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #D30102;}.ace-solarized-dark .ace_marker-layer .ace_selection { background: #073642;}.ace-solarized-dark.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #002B36; border-radius: 2px;}.ace-solarized-dark .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-solarized-dark .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(147, 161, 161, 0.50);}.ace-solarized-dark .ace_marker-layer .ace_active_line { background: #073642;}.ace-solarized-dark .ace_marker-layer .ace_selected_word { border: 1px solid #073642;}.ace-solarized-dark .ace_invisible { color: rgba(147, 161, 161, 0.50);}.ace-solarized-dark .ace_keyword, .ace-solarized-dark .ace_meta { color:#859900;}.ace-solarized-dark .ace_constant.ace_language { color:#B58900;}.ace-solarized-dark .ace_constant.ace_numeric { color:#D33682;}.ace-solarized-dark .ace_constant.ace_other { color:#CB4B16;}.ace-solarized-dark .ace_fold { background-color: #268BD2; border-color: #93A1A1;}.ace-solarized-dark .ace_support.ace_function { color:#268BD2;}.ace-solarized-dark .ace_storage { color:#93A1A1;}.ace-solarized-dark .ace_variable { color:#268BD2;}.ace-solarized-dark .ace_string { color:#2AA198;}.ace-solarized-dark .ace_string.ace_regexp { color:#D30102;}.ace-solarized-dark .ace_comment { font-style:italic;color:#657B83;}.ace-solarized-dark .ace_variable.ace_language { color:#268BD2;}.ace-solarized-dark .ace_entity.ace_other.ace_attribute-name { color:#93A1A1;}.ace-solarized-dark .ace_entity.ace_name.ace_function { color:#268BD2;}.ace-solarized-dark .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-cobalt.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/cobalt",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-cobalt",b.cssText=".ace-cobalt .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-cobalt .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-cobalt .ace_gutter { background: #e8e8e8; color: #333;}.ace-cobalt .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-cobalt .ace_scroller { background-color: #002240;}.ace-cobalt .ace_text-layer { cursor: text; color: #FFFFFF;}.ace-cobalt .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-cobalt .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-cobalt .ace_marker-layer .ace_selection { background: rgba(179, 101, 57, 0.75);}.ace-cobalt.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #002240; border-radius: 2px;}.ace-cobalt .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-cobalt .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(255, 255, 255, 0.15);}.ace-cobalt .ace_marker-layer .ace_active_line { background: rgba(0, 0, 0, 0.35);}.ace-cobalt .ace_marker-layer .ace_selected_word { border: 1px solid rgba(179, 101, 57, 0.75);}.ace-cobalt .ace_invisible { color: rgba(255, 255, 255, 0.15);}.ace-cobalt .ace_keyword, .ace-cobalt .ace_meta { color:#FF9D00;}.ace-cobalt .ace_constant, .ace-cobalt .ace_constant.ace_other { color:#FF628C;}.ace-cobalt .ace_constant.ace_character, { color:#FF628C;}.ace-cobalt .ace_constant.ace_character.ace_escape, { color:#FF628C;}.ace-cobalt .ace_invalid { color:#F8F8F8;background-color:#800F00;}.ace-cobalt .ace_support { color:#80FFBB;}.ace-cobalt .ace_support.ace_constant { color:#EB939A;}.ace-cobalt .ace_fold { background-color: #FF9D00; border-color: #FFFFFF;}.ace-cobalt .ace_support.ace_function { color:#FFB054;}.ace-cobalt .ace_storage { color:#FFEE80;}.ace-cobalt .ace_string.ace_regexp { color:#80FFC2;}.ace-cobalt .ace_comment { font-style:italic;color:#0088FF;}.ace-cobalt .ace_variable { color:#CCCCCC;}.ace-cobalt .ace_variable.ace_language { color:#FF80E1;}.ace-cobalt .ace_meta.ace_tag { color:#9EFFFF;}.ace-cobalt .ace_markup.ace_underline { text-decoration:underline;}.ace-cobalt .ace_markup.ace_heading { color:#C8E4FD;background-color:#001221;}.ace-cobalt .ace_markup.ace_list { background-color:#130D26;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-dawn.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/dawn",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-dawn",b.cssText=".ace-dawn .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-dawn .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-dawn .ace_gutter { background: #e8e8e8; color: #333;}.ace-dawn .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-dawn .ace_scroller { background-color: #F9F9F9;}.ace-dawn .ace_text-layer { cursor: text; color: #080808;}.ace-dawn .ace_cursor { border-left: 2px solid #000000;}.ace-dawn .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #000000;}.ace-dawn .ace_marker-layer .ace_selection { background: rgba(39, 95, 255, 0.30);}.ace-dawn.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #F9F9F9; border-radius: 2px;}.ace-dawn .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-dawn .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(75, 75, 126, 0.50);}.ace-dawn .ace_marker-layer .ace_active_line { background: rgba(36, 99, 180, 0.12);}.ace-dawn .ace_marker-layer .ace_selected_word { border: 1px solid rgba(39, 95, 255, 0.30);}.ace-dawn .ace_invisible { color: rgba(75, 75, 126, 0.50);}.ace-dawn .ace_keyword, .ace-dawn .ace_meta { color:#794938;}.ace-dawn .ace_constant, .ace-dawn .ace_constant.ace_other { color:#811F24;}.ace-dawn .ace_constant.ace_character, { color:#811F24;}.ace-dawn .ace_constant.ace_character.ace_escape, { color:#811F24;}.ace-dawn .ace_invalid.ace_illegal { text-decoration:underline;font-style:italic;color:#F8F8F8;background-color:#B52A1D;}.ace-dawn .ace_invalid.ace_deprecated { text-decoration:underline;font-style:italic;color:#B52A1D;}.ace-dawn .ace_support { color:#691C97;}.ace-dawn .ace_support.ace_constant { color:#B4371F;}.ace-dawn .ace_fold { background-color: #794938; border-color: #080808;}.ace-dawn .ace_support.ace_function { color:#693A17;}.ace-dawn .ace_storage { font-style:italic;color:#A71D5D;}.ace-dawn .ace_string { color:#0B6125;}.ace-dawn .ace_string.ace_regexp { color:#CF5628;}.ace-dawn .ace_comment { font-style:italic;color:#5A525F;}.ace-dawn .ace_variable { color:#234A97;}.ace-dawn .ace_markup.ace_underline { text-decoration:underline;}.ace-dawn .ace_markup.ace_heading { color:#19356D;}.ace-dawn .ace_markup.ace_list { color:#693A17;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-solarized_dark.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/solarized_dark",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-solarized-dark",b.cssText=".ace-solarized-dark .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-solarized-dark .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-solarized-dark .ace_gutter { background: #e8e8e8; color: #333;}.ace-solarized-dark .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-solarized-dark .ace_scroller { background-color: #002B36;}.ace-solarized-dark .ace_text-layer { cursor: text; color: #93A1A1;}.ace-solarized-dark .ace_cursor { border-left: 2px solid #D30102;}.ace-solarized-dark .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #D30102;}.ace-solarized-dark .ace_marker-layer .ace_selection { background: #073642;}.ace-solarized-dark.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #002B36; border-radius: 2px;}.ace-solarized-dark .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-solarized-dark .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(147, 161, 161, 0.50);}.ace-solarized-dark .ace_marker-layer .ace_active_line { background: #073642;}.ace-solarized-dark .ace_marker-layer .ace_selected_word { border: 1px solid #073642;}.ace-solarized-dark .ace_invisible { color: rgba(147, 161, 161, 0.50);}.ace-solarized-dark .ace_keyword, .ace-solarized-dark .ace_meta { color:#859900;}.ace-solarized-dark .ace_constant.ace_language { color:#B58900;}.ace-solarized-dark .ace_constant.ace_numeric { color:#D33682;}.ace-solarized-dark .ace_constant.ace_other { color:#CB4B16;}.ace-solarized-dark .ace_fold { background-color: #268BD2; border-color: #93A1A1;}.ace-solarized-dark .ace_support.ace_function { color:#268BD2;}.ace-solarized-dark .ace_storage { color:#93A1A1;}.ace-solarized-dark .ace_variable { color:#268BD2;}.ace-solarized-dark .ace_string { color:#2AA198;}.ace-solarized-dark .ace_string.ace_regexp { color:#D30102;}.ace-solarized-dark .ace_comment { font-style:italic;color:#657B83;}.ace-solarized-dark .ace_variable.ace_language { color:#268BD2;}.ace-solarized-dark .ace_entity.ace_other.ace_attribute-name { color:#93A1A1;}.ace-solarized-dark .ace_entity.ace_name.ace_function { color:#268BD2;}.ace-solarized-dark .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-solarized_light.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/solarized_light",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-solarized-light",b.cssText=".ace-solarized-light .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-solarized-light .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-solarized-light .ace_gutter { background: #e8e8e8; color: #333;}.ace-solarized-light .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-solarized-light .ace_scroller { background-color: #FDF6E3;}.ace-solarized-light .ace_text-layer { cursor: text; color: #586E75;}.ace-solarized-light .ace_cursor { border-left: 2px solid #000000;}.ace-solarized-light .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #000000;}.ace-solarized-light .ace_marker-layer .ace_selection { background: #073642;}.ace-solarized-light.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #FDF6E3; border-radius: 2px;}.ace-solarized-light .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-solarized-light .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(147, 161, 161, 0.50);}.ace-solarized-light .ace_marker-layer .ace_active_line { background: #EEE8D5;}.ace-solarized-light .ace_marker-layer .ace_selected_word { border: 1px solid #073642;}.ace-solarized-light .ace_invisible { color: rgba(147, 161, 161, 0.50);}.ace-solarized-light .ace_keyword, .ace-solarized-light .ace_meta { color:#859900;}.ace-solarized-light .ace_constant.ace_language { color:#B58900;}.ace-solarized-light .ace_constant.ace_numeric { color:#D33682;}.ace-solarized-light .ace_constant.ace_other { color:#CB4B16;}.ace-solarized-light .ace_fold { background-color: #268BD2; border-color: #586E75;}.ace-solarized-light .ace_support.ace_function { color:#268BD2;}.ace-solarized-light .ace_storage { color:#073642;}.ace-solarized-light .ace_variable { color:#268BD2;}.ace-solarized-light .ace_string { color:#2AA198;}.ace-solarized-light .ace_string.ace_regexp { color:#D30102;}.ace-solarized-light .ace_comment { color:#93A1A1;}.ace-solarized-light .ace_variable.ace_language { color:#268BD2;}.ace-solarized-light .ace_entity.ace_other.ace_attribute-name { color:#93A1A1;}.ace-solarized-light .ace_entity.ace_name.ace_function { color:#268BD2;}.ace-solarized-light .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-solarized_light.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/solarized_light",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-solarized-light",b.cssText=".ace-solarized-light .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-solarized-light .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-solarized-light .ace_gutter { background: #e8e8e8; color: #333;}.ace-solarized-light .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-solarized-light .ace_scroller { background-color: #FDF6E3;}.ace-solarized-light .ace_text-layer { cursor: text; color: #586E75;}.ace-solarized-light .ace_cursor { border-left: 2px solid #000000;}.ace-solarized-light .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #000000;}.ace-solarized-light .ace_marker-layer .ace_selection { background: #073642;}.ace-solarized-light.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #FDF6E3; border-radius: 2px;}.ace-solarized-light .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-solarized-light .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(147, 161, 161, 0.50);}.ace-solarized-light .ace_marker-layer .ace_active_line { background: #EEE8D5;}.ace-solarized-light .ace_marker-layer .ace_selected_word { border: 1px solid #073642;}.ace-solarized-light .ace_invisible { color: rgba(147, 161, 161, 0.50);}.ace-solarized-light .ace_keyword, .ace-solarized-light .ace_meta { color:#859900;}.ace-solarized-light .ace_constant.ace_language { color:#B58900;}.ace-solarized-light .ace_constant.ace_numeric { color:#D33682;}.ace-solarized-light .ace_constant.ace_other { color:#CB4B16;}.ace-solarized-light .ace_fold { background-color: #268BD2; border-color: #586E75;}.ace-solarized-light .ace_support.ace_function { color:#268BD2;}.ace-solarized-light .ace_storage { color:#073642;}.ace-solarized-light .ace_variable { color:#268BD2;}.ace-solarized-light .ace_string { color:#2AA198;}.ace-solarized-light .ace_string.ace_regexp { color:#D30102;}.ace-solarized-light .ace_comment { color:#93A1A1;}.ace-solarized-light .ace_variable.ace_language { color:#268BD2;}.ace-solarized-light .ace_entity.ace_other.ace_attribute-name { color:#93A1A1;}.ace-solarized-light .ace_entity.ace_name.ace_function { color:#268BD2;}.ace-solarized-light .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-kr_theme.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/kr_theme",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-kr-theme",b.cssText=".ace-kr-theme .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-kr-theme .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-kr-theme .ace_gutter { background: #e8e8e8; color: #333;}.ace-kr-theme .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-kr-theme .ace_scroller { background-color: #0B0A09;}.ace-kr-theme .ace_text-layer { cursor: text; color: #FCFFE0;}.ace-kr-theme .ace_cursor { border-left: 2px solid #FF9900;}.ace-kr-theme .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FF9900;}.ace-kr-theme .ace_marker-layer .ace_selection { background: rgba(170, 0, 255, 0.45);}.ace-kr-theme.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #0B0A09; border-radius: 2px;}.ace-kr-theme .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-kr-theme .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(255, 177, 111, 0.32);}.ace-kr-theme .ace_marker-layer .ace_active_line { background: #38403D;}.ace-kr-theme .ace_marker-layer .ace_selected_word { border: 1px solid rgba(170, 0, 255, 0.45);}.ace-kr-theme .ace_invisible { color: rgba(255, 177, 111, 0.32);}.ace-kr-theme .ace_keyword, .ace-kr-theme .ace_meta { color:#949C8B;}.ace-kr-theme .ace_constant, .ace-kr-theme .ace_constant.ace_other { color:rgba(210, 117, 24, 0.76);}.ace-kr-theme .ace_constant.ace_character, { color:rgba(210, 117, 24, 0.76);}.ace-kr-theme .ace_constant.ace_character.ace_escape, { color:rgba(210, 117, 24, 0.76);}.ace-kr-theme .ace_invalid { color:#F8F8F8;background-color:#A41300;}.ace-kr-theme .ace_support { color:#9FC28A;}.ace-kr-theme .ace_support.ace_constant { color:#C27E66;}.ace-kr-theme .ace_fold { background-color: #949C8B; border-color: #FCFFE0;}.ace-kr-theme .ace_support.ace_function { color:#85873A;}.ace-kr-theme .ace_storage { color:#FFEE80;}.ace-kr-theme .ace_string.ace_regexp { color:rgba(125, 255, 192, 0.65);}.ace-kr-theme .ace_comment { font-style:italic;color:#706D5B;}.ace-kr-theme .ace_variable { color:#D1A796;}.ace-kr-theme .ace_variable.ace_language { color:#FF80E1;}.ace-kr-theme .ace_meta.ace_tag { color:#BABD9C;}.ace-kr-theme .ace_markup.ace_underline { text-decoration:underline;}.ace-kr-theme .ace_markup.ace_list { background-color:#0F0040;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-kr_theme.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/kr_theme",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-kr-theme",b.cssText=".ace-kr-theme .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-kr-theme .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-kr-theme .ace_gutter { background: #e8e8e8; color: #333;}.ace-kr-theme .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-kr-theme .ace_scroller { background-color: #0B0A09;}.ace-kr-theme .ace_text-layer { cursor: text; color: #FCFFE0;}.ace-kr-theme .ace_cursor { border-left: 2px solid #FF9900;}.ace-kr-theme .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FF9900;}.ace-kr-theme .ace_marker-layer .ace_selection { background: rgba(170, 0, 255, 0.45);}.ace-kr-theme.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #0B0A09; border-radius: 2px;}.ace-kr-theme .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-kr-theme .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(255, 177, 111, 0.32);}.ace-kr-theme .ace_marker-layer .ace_active_line { background: #38403D;}.ace-kr-theme .ace_marker-layer .ace_selected_word { border: 1px solid rgba(170, 0, 255, 0.45);}.ace-kr-theme .ace_invisible { color: rgba(255, 177, 111, 0.32);}.ace-kr-theme .ace_keyword, .ace-kr-theme .ace_meta { color:#949C8B;}.ace-kr-theme .ace_constant, .ace-kr-theme .ace_constant.ace_other { color:rgba(210, 117, 24, 0.76);}.ace-kr-theme .ace_constant.ace_character, { color:rgba(210, 117, 24, 0.76);}.ace-kr-theme .ace_constant.ace_character.ace_escape, { color:rgba(210, 117, 24, 0.76);}.ace-kr-theme .ace_invalid { color:#F8F8F8;background-color:#A41300;}.ace-kr-theme .ace_support { color:#9FC28A;}.ace-kr-theme .ace_support.ace_constant { color:#C27E66;}.ace-kr-theme .ace_fold { background-color: #949C8B; border-color: #FCFFE0;}.ace-kr-theme .ace_support.ace_function { color:#85873A;}.ace-kr-theme .ace_storage { color:#FFEE80;}.ace-kr-theme .ace_string.ace_regexp { color:rgba(125, 255, 192, 0.65);}.ace-kr-theme .ace_comment { font-style:italic;color:#706D5B;}.ace-kr-theme .ace_variable { color:#D1A796;}.ace-kr-theme .ace_variable.ace_language { color:#FF80E1;}.ace-kr-theme .ace_meta.ace_tag { color:#BABD9C;}.ace-kr-theme .ace_markup.ace_underline { text-decoration:underline;}.ace-kr-theme .ace_markup.ace_list { background-color:#0F0040;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-idle_fingers.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/idle_fingers",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-idle-fingers",b.cssText=".ace-idle-fingers .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-idle-fingers .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-idle-fingers .ace_gutter { background: #e8e8e8; color: #333;}.ace-idle-fingers .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-idle-fingers .ace_scroller { background-color: #323232;}.ace-idle-fingers .ace_text-layer { cursor: text; color: #FFFFFF;}.ace-idle-fingers .ace_cursor { border-left: 2px solid #91FF00;}.ace-idle-fingers .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #91FF00;}.ace-idle-fingers .ace_marker-layer .ace_selection { background: rgba(90, 100, 126, 0.88);}.ace-idle-fingers.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #323232; border-radius: 2px;}.ace-idle-fingers .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-idle-fingers .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #404040;}.ace-idle-fingers .ace_marker-layer .ace_active_line { background: #353637;}.ace-idle-fingers .ace_marker-layer .ace_selected_word { border: 1px solid rgba(90, 100, 126, 0.88);}.ace-idle-fingers .ace_invisible { color: #404040;}.ace-idle-fingers .ace_keyword, .ace-idle-fingers .ace_meta { color:#CC7833;}.ace-idle-fingers .ace_constant, .ace-idle-fingers .ace_constant.ace_other { color:#6C99BB;}.ace-idle-fingers .ace_constant.ace_character, { color:#6C99BB;}.ace-idle-fingers .ace_constant.ace_character.ace_escape, { color:#6C99BB;}.ace-idle-fingers .ace_invalid { color:#FFFFFF;background-color:#FF0000;}.ace-idle-fingers .ace_support.ace_constant { color:#6C99BB;}.ace-idle-fingers .ace_fold { background-color: #CC7833; border-color: #FFFFFF;}.ace-idle-fingers .ace_support.ace_function { color:#B83426;}.ace-idle-fingers .ace_variable.ace_parameter { font-style:italic;}.ace-idle-fingers .ace_string { color:#A5C261;}.ace-idle-fingers .ace_string.ace_regexp { color:#CCCC33;}.ace-idle-fingers .ace_comment { font-style:italic;color:#BC9458;}.ace-idle-fingers .ace_meta.ace_tag { color:#FFE5BB;}.ace-idle-fingers .ace_entity.ace_name { color:#FFC66D;}.ace-idle-fingers .ace_markup.ace_underline { text-decoration:underline;}.ace-idle-fingers .ace_collab.ace_user1 { color:#323232;background-color:#FFF980;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-idle_fingers.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/idle_fingers",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-idle-fingers",b.cssText=".ace-idle-fingers .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-idle-fingers .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-idle-fingers .ace_gutter { background: #e8e8e8; color: #333;}.ace-idle-fingers .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-idle-fingers .ace_scroller { background-color: #323232;}.ace-idle-fingers .ace_text-layer { cursor: text; color: #FFFFFF;}.ace-idle-fingers .ace_cursor { border-left: 2px solid #91FF00;}.ace-idle-fingers .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #91FF00;}.ace-idle-fingers .ace_marker-layer .ace_selection { background: rgba(90, 100, 126, 0.88);}.ace-idle-fingers.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #323232; border-radius: 2px;}.ace-idle-fingers .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-idle-fingers .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #404040;}.ace-idle-fingers .ace_marker-layer .ace_active_line { background: #353637;}.ace-idle-fingers .ace_marker-layer .ace_selected_word { border: 1px solid rgba(90, 100, 126, 0.88);}.ace-idle-fingers .ace_invisible { color: #404040;}.ace-idle-fingers .ace_keyword, .ace-idle-fingers .ace_meta { color:#CC7833;}.ace-idle-fingers .ace_constant, .ace-idle-fingers .ace_constant.ace_other { color:#6C99BB;}.ace-idle-fingers .ace_constant.ace_character, { color:#6C99BB;}.ace-idle-fingers .ace_constant.ace_character.ace_escape, { color:#6C99BB;}.ace-idle-fingers .ace_invalid { color:#FFFFFF;background-color:#FF0000;}.ace-idle-fingers .ace_support.ace_constant { color:#6C99BB;}.ace-idle-fingers .ace_fold { background-color: #CC7833; border-color: #FFFFFF;}.ace-idle-fingers .ace_support.ace_function { color:#B83426;}.ace-idle-fingers .ace_variable.ace_parameter { font-style:italic;}.ace-idle-fingers .ace_string { color:#A5C261;}.ace-idle-fingers .ace_string.ace_regexp { color:#CCCC33;}.ace-idle-fingers .ace_comment { font-style:italic;color:#BC9458;}.ace-idle-fingers .ace_meta.ace_tag { color:#FFE5BB;}.ace-idle-fingers .ace_entity.ace_name { color:#FFC66D;}.ace-idle-fingers .ace_markup.ace_underline { text-decoration:underline;}.ace-idle-fingers .ace_collab.ace_user1 { color:#323232;background-color:#FFF980;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-vibrant_ink.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/vibrant_ink",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-vibrant-ink",b.cssText=".ace-vibrant-ink .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-vibrant-ink .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-vibrant-ink .ace_gutter { background: #e8e8e8; color: #333;}.ace-vibrant-ink .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-vibrant-ink .ace_scroller { background-color: #0F0F0F;}.ace-vibrant-ink .ace_text-layer { cursor: text; color: #FFFFFF;}.ace-vibrant-ink .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-vibrant-ink .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-vibrant-ink .ace_marker-layer .ace_selection { background: #6699CC;}.ace-vibrant-ink.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #0F0F0F; border-radius: 2px;}.ace-vibrant-ink .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-vibrant-ink .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #404040;}.ace-vibrant-ink .ace_marker-layer .ace_active_line { background: #333333;}.ace-vibrant-ink .ace_marker-layer .ace_selected_word { border: 1px solid #6699CC;}.ace-vibrant-ink .ace_invisible { color: #404040;}.ace-vibrant-ink .ace_keyword, .ace-vibrant-ink .ace_meta { color:#FF6600;}.ace-vibrant-ink .ace_constant, .ace-vibrant-ink .ace_constant.ace_other { color:#339999;}.ace-vibrant-ink .ace_constant.ace_character, { color:#339999;}.ace-vibrant-ink .ace_constant.ace_character.ace_escape, { color:#339999;}.ace-vibrant-ink .ace_constant.ace_numeric { color:#99CC99;}.ace-vibrant-ink .ace_invalid { color:#CCFF33;background-color:#000000;}.ace-vibrant-ink .ace_invalid.ace_deprecated { color:#CCFF33;background-color:#000000;}.ace-vibrant-ink .ace_fold { background-color: #FFCC00; border-color: #FFFFFF;}.ace-vibrant-ink .ace_support.ace_function { color:#FFCC00;}.ace-vibrant-ink .ace_variable { color:#FFCC00;}.ace-vibrant-ink .ace_variable.ace_parameter { font-style:italic;}.ace-vibrant-ink .ace_string { color:#66FF00;}.ace-vibrant-ink .ace_string.ace_regexp { color:#44B4CC;}.ace-vibrant-ink .ace_comment { color:#9933CC;}.ace-vibrant-ink .ace_entity.ace_other.ace_attribute-name { font-style:italic;color:#99CC99;}.ace-vibrant-ink .ace_entity.ace_name.ace_function { color:#FFCC00;}.ace-vibrant-ink .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-vibrant_ink.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/vibrant_ink",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-vibrant-ink",b.cssText=".ace-vibrant-ink .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-vibrant-ink .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-vibrant-ink .ace_gutter { background: #e8e8e8; color: #333;}.ace-vibrant-ink .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-vibrant-ink .ace_scroller { background-color: #0F0F0F;}.ace-vibrant-ink .ace_text-layer { cursor: text; color: #FFFFFF;}.ace-vibrant-ink .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-vibrant-ink .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-vibrant-ink .ace_marker-layer .ace_selection { background: #6699CC;}.ace-vibrant-ink.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #0F0F0F; border-radius: 2px;}.ace-vibrant-ink .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-vibrant-ink .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #404040;}.ace-vibrant-ink .ace_marker-layer .ace_active_line { background: #333333;}.ace-vibrant-ink .ace_marker-layer .ace_selected_word { border: 1px solid #6699CC;}.ace-vibrant-ink .ace_invisible { color: #404040;}.ace-vibrant-ink .ace_keyword, .ace-vibrant-ink .ace_meta { color:#FF6600;}.ace-vibrant-ink .ace_constant, .ace-vibrant-ink .ace_constant.ace_other { color:#339999;}.ace-vibrant-ink .ace_constant.ace_character, { color:#339999;}.ace-vibrant-ink .ace_constant.ace_character.ace_escape, { color:#339999;}.ace-vibrant-ink .ace_constant.ace_numeric { color:#99CC99;}.ace-vibrant-ink .ace_invalid { color:#CCFF33;background-color:#000000;}.ace-vibrant-ink .ace_invalid.ace_deprecated { color:#CCFF33;background-color:#000000;}.ace-vibrant-ink .ace_fold { background-color: #FFCC00; border-color: #FFFFFF;}.ace-vibrant-ink .ace_support.ace_function { color:#FFCC00;}.ace-vibrant-ink .ace_variable { color:#FFCC00;}.ace-vibrant-ink .ace_variable.ace_parameter { font-style:italic;}.ace-vibrant-ink .ace_string { color:#66FF00;}.ace-vibrant-ink .ace_string.ace_regexp { color:#44B4CC;}.ace-vibrant-ink .ace_comment { color:#9933CC;}.ace-vibrant-ink .ace_entity.ace_other.ace_attribute-name { font-style:italic;color:#99CC99;}.ace-vibrant-ink .ace_entity.ace_name.ace_function { color:#FFCC00;}.ace-vibrant-ink .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-merbivore_soft.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/merbivore_soft",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-merbivore-soft",b.cssText=".ace-merbivore-soft .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-merbivore-soft .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-merbivore-soft .ace_gutter { background: #e8e8e8; color: #333;}.ace-merbivore-soft .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-merbivore-soft .ace_scroller { background-color: #1C1C1C;}.ace-merbivore-soft .ace_text-layer { cursor: text; color: #E6E1DC;}.ace-merbivore-soft .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-merbivore-soft .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-merbivore-soft .ace_marker-layer .ace_selection { background: #494949;}.ace-merbivore-soft.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #1C1C1C; border-radius: 2px;}.ace-merbivore-soft .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-merbivore-soft .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #404040;}.ace-merbivore-soft .ace_marker-layer .ace_active_line { background: #333435;}.ace-merbivore-soft .ace_marker-layer .ace_selected_word { border: 1px solid #494949;}.ace-merbivore-soft .ace_invisible { color: #404040;}.ace-merbivore-soft .ace_keyword, .ace-merbivore-soft .ace_meta { color:#FC803A;}.ace-merbivore-soft .ace_constant, .ace-merbivore-soft .ace_constant.ace_other { color:#68C1D8;}.ace-merbivore-soft .ace_constant.ace_character, { color:#68C1D8;}.ace-merbivore-soft .ace_constant.ace_character.ace_escape, { color:#68C1D8;}.ace-merbivore-soft .ace_constant.ace_language { color:#E1C582;}.ace-merbivore-soft .ace_constant.ace_library { color:#8EC65F;}.ace-merbivore-soft .ace_constant.ace_numeric { color:#7FC578;}.ace-merbivore-soft .ace_invalid { color:#FFFFFF;background-color:#FE3838;}.ace-merbivore-soft .ace_invalid.ace_deprecated { color:#FFFFFF;background-color:#FE3838;}.ace-merbivore-soft .ace_support.ace_constant { color:#8EC65F;}.ace-merbivore-soft .ace_fold { background-color: #FC803A; border-color: #E6E1DC;}.ace-merbivore-soft .ace_storage { color:#FC803A;}.ace-merbivore-soft .ace_string { color:#8EC65F;}.ace-merbivore-soft .ace_comment { font-style:italic;color:#AC4BB8;}.ace-merbivore-soft .ace_meta { font-style:italic;color:#AC4BB8;}.ace-merbivore-soft .ace_meta.ace_tag { color:#FC803A;}.ace-merbivore-soft .ace_entity.ace_other.ace_attribute-name { color:#EAF1A3;}.ace-merbivore-soft .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-merbivore_soft.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/merbivore_soft",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-merbivore-soft",b.cssText=".ace-merbivore-soft .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-merbivore-soft .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-merbivore-soft .ace_gutter { background: #e8e8e8; color: #333;}.ace-merbivore-soft .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-merbivore-soft .ace_scroller { background-color: #1C1C1C;}.ace-merbivore-soft .ace_text-layer { cursor: text; color: #E6E1DC;}.ace-merbivore-soft .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-merbivore-soft .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-merbivore-soft .ace_marker-layer .ace_selection { background: #494949;}.ace-merbivore-soft.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #1C1C1C; border-radius: 2px;}.ace-merbivore-soft .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-merbivore-soft .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #404040;}.ace-merbivore-soft .ace_marker-layer .ace_active_line { background: #333435;}.ace-merbivore-soft .ace_marker-layer .ace_selected_word { border: 1px solid #494949;}.ace-merbivore-soft .ace_invisible { color: #404040;}.ace-merbivore-soft .ace_keyword, .ace-merbivore-soft .ace_meta { color:#FC803A;}.ace-merbivore-soft .ace_constant, .ace-merbivore-soft .ace_constant.ace_other { color:#68C1D8;}.ace-merbivore-soft .ace_constant.ace_character, { color:#68C1D8;}.ace-merbivore-soft .ace_constant.ace_character.ace_escape, { color:#68C1D8;}.ace-merbivore-soft .ace_constant.ace_language { color:#E1C582;}.ace-merbivore-soft .ace_constant.ace_library { color:#8EC65F;}.ace-merbivore-soft .ace_constant.ace_numeric { color:#7FC578;}.ace-merbivore-soft .ace_invalid { color:#FFFFFF;background-color:#FE3838;}.ace-merbivore-soft .ace_invalid.ace_deprecated { color:#FFFFFF;background-color:#FE3838;}.ace-merbivore-soft .ace_support.ace_constant { color:#8EC65F;}.ace-merbivore-soft .ace_fold { background-color: #FC803A; border-color: #E6E1DC;}.ace-merbivore-soft .ace_storage { color:#FC803A;}.ace-merbivore-soft .ace_string { color:#8EC65F;}.ace-merbivore-soft .ace_comment { font-style:italic;color:#AC4BB8;}.ace-merbivore-soft .ace_meta { font-style:italic;color:#AC4BB8;}.ace-merbivore-soft .ace_meta.ace_tag { color:#FC803A;}.ace-merbivore-soft .ace_entity.ace_other.ace_attribute-name { color:#EAF1A3;}.ace-merbivore-soft .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-tomorrow.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/tomorrow",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-tomorrow",b.cssText=".ace-tomorrow .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-tomorrow .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-tomorrow .ace_gutter { background: #e8e8e8; color: #333;}.ace-tomorrow .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-tomorrow .ace_scroller { background-color: #FFFFFF;}.ace-tomorrow .ace_text-layer { cursor: text; color: #4D4D4C;}.ace-tomorrow .ace_cursor { border-left: 2px solid #AEAFAD;}.ace-tomorrow .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #AEAFAD;}.ace-tomorrow .ace_marker-layer .ace_selection { background: #D6D6D6;}.ace-tomorrow.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #FFFFFF; border-radius: 2px;}.ace-tomorrow .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-tomorrow .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #D1D1D1;}.ace-tomorrow .ace_marker-layer .ace_active_line { background: #EFEFEF;}.ace-tomorrow .ace_marker-layer .ace_selected_word { border: 1px solid #D6D6D6;}.ace-tomorrow .ace_invisible { color: #D1D1D1;}.ace-tomorrow .ace_keyword, .ace-tomorrow .ace_meta { color:#8959A8;}.ace-tomorrow .ace_keyword.ace_operator { color:#3E999F;}.ace-tomorrow .ace_constant.ace_language { color:#F5871F;}.ace-tomorrow .ace_constant.ace_numeric { color:#F5871F;}.ace-tomorrow .ace_constant.ace_other { color:#666969;}.ace-tomorrow .ace_invalid { color:#FFFFFF;background-color:#C82829;}.ace-tomorrow .ace_invalid.ace_deprecated { color:#FFFFFF;background-color:#8959A8;}.ace-tomorrow .ace_support.ace_constant { color:#F5871F;}.ace-tomorrow .ace_fold { background-color: #4271AE; border-color: #4D4D4C;}.ace-tomorrow .ace_support.ace_function { color:#4271AE;}.ace-tomorrow .ace_storage { color:#8959A8;}.ace-tomorrow .ace_storage.ace_type, .ace-tomorrow .ace_support.ace_type{ color:#8959A8;}.ace-tomorrow .ace_variable { color:#4271AE;}.ace-tomorrow .ace_variable.ace_parameter { color:#F5871F;}.ace-tomorrow .ace_string { color:#718C00;}.ace-tomorrow .ace_string.ace_regexp { color:#C82829;}.ace-tomorrow .ace_comment { color:#8E908C;}.ace-tomorrow .ace_variable { color:#C82829;}.ace-tomorrow .ace_meta.ace_tag { color:#C82829;}.ace-tomorrow .ace_entity.ace_other.ace_attribute-name { color:#C82829;}.ace-tomorrow .ace_entity.ace_name.ace_function { color:#4271AE;}.ace-tomorrow .ace_markup.ace_underline { text-decoration:underline;}.ace-tomorrow .ace_markup.ace_heading { color:#718C00;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-tomorrow.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/tomorrow",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-tomorrow",b.cssText=".ace-tomorrow .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-tomorrow .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-tomorrow .ace_gutter { background: #e8e8e8; color: #333;}.ace-tomorrow .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-tomorrow .ace_scroller { background-color: #FFFFFF;}.ace-tomorrow .ace_text-layer { cursor: text; color: #4D4D4C;}.ace-tomorrow .ace_cursor { border-left: 2px solid #AEAFAD;}.ace-tomorrow .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #AEAFAD;}.ace-tomorrow .ace_marker-layer .ace_selection { background: #D6D6D6;}.ace-tomorrow.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #FFFFFF; border-radius: 2px;}.ace-tomorrow .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-tomorrow .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #D1D1D1;}.ace-tomorrow .ace_marker-layer .ace_active_line { background: #EFEFEF;}.ace-tomorrow .ace_marker-layer .ace_selected_word { border: 1px solid #D6D6D6;}.ace-tomorrow .ace_invisible { color: #D1D1D1;}.ace-tomorrow .ace_keyword, .ace-tomorrow .ace_meta { color:#8959A8;}.ace-tomorrow .ace_keyword.ace_operator { color:#3E999F;}.ace-tomorrow .ace_constant.ace_language { color:#F5871F;}.ace-tomorrow .ace_constant.ace_numeric { color:#F5871F;}.ace-tomorrow .ace_constant.ace_other { color:#666969;}.ace-tomorrow .ace_invalid { color:#FFFFFF;background-color:#C82829;}.ace-tomorrow .ace_invalid.ace_deprecated { color:#FFFFFF;background-color:#8959A8;}.ace-tomorrow .ace_support.ace_constant { color:#F5871F;}.ace-tomorrow .ace_fold { background-color: #4271AE; border-color: #4D4D4C;}.ace-tomorrow .ace_support.ace_function { color:#4271AE;}.ace-tomorrow .ace_storage { color:#8959A8;}.ace-tomorrow .ace_storage.ace_type, .ace-tomorrow .ace_support.ace_type{ color:#8959A8;}.ace-tomorrow .ace_variable { color:#4271AE;}.ace-tomorrow .ace_variable.ace_parameter { color:#F5871F;}.ace-tomorrow .ace_string { color:#718C00;}.ace-tomorrow .ace_string.ace_regexp { color:#C82829;}.ace-tomorrow .ace_comment { color:#8E908C;}.ace-tomorrow .ace_variable { color:#C82829;}.ace-tomorrow .ace_meta.ace_tag { color:#C82829;}.ace-tomorrow .ace_entity.ace_other.ace_attribute-name { color:#C82829;}.ace-tomorrow .ace_entity.ace_name.ace_function { color:#4271AE;}.ace-tomorrow .ace_markup.ace_underline { text-decoration:underline;}.ace-tomorrow .ace_markup.ace_heading { color:#718C00;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-twilight.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/twilight",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-twilight",b.cssText=".ace-twilight .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-twilight .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-twilight .ace_gutter { background: #e8e8e8; color: #333;}.ace-twilight .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-twilight .ace_scroller { background-color: #141414;}.ace-twilight .ace_text-layer { cursor: text; color: #F8F8F8;}.ace-twilight .ace_cursor { border-left: 2px solid #A7A7A7;}.ace-twilight .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #A7A7A7;}.ace-twilight .ace_marker-layer .ace_selection { background: rgba(221, 240, 255, 0.20);}.ace-twilight.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #141414; border-radius: 2px;}.ace-twilight .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-twilight .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(255, 255, 255, 0.25);}.ace-twilight .ace_marker-layer .ace_active_line { background: rgba(255, 255, 255, 0.031);}.ace-twilight .ace_marker-layer .ace_selected_word { border: 1px solid rgba(221, 240, 255, 0.20);}.ace-twilight .ace_invisible { color: rgba(255, 255, 255, 0.25);}.ace-twilight .ace_keyword, .ace-twilight .ace_meta { color:#CDA869;}.ace-twilight .ace_constant, .ace-twilight .ace_constant.ace_other { color:#CF6A4C;}.ace-twilight .ace_constant.ace_character, { color:#CF6A4C;}.ace-twilight .ace_constant.ace_character.ace_escape, { color:#CF6A4C;}.ace-twilight .ace_invalid.ace_illegal { color:#F8F8F8;background-color:rgba(86, 45, 86, 0.75);}.ace-twilight .ace_invalid.ace_deprecated { text-decoration:underline;font-style:italic;color:#D2A8A1;}.ace-twilight .ace_support { color:#9B859D;}.ace-twilight .ace_support.ace_constant { color:#CF6A4C;}.ace-twilight .ace_fold { background-color: #AC885B; border-color: #F8F8F8;}.ace-twilight .ace_support.ace_function { color:#DAD085;}.ace-twilight .ace_storage { color:#F9EE98;}.ace-twilight .ace_variable { color:#AC885B;}.ace-twilight .ace_string { color:#8F9D6A;}.ace-twilight .ace_string.ace_regexp { color:#E9C062;}.ace-twilight .ace_comment { font-style:italic;color:#5F5A60;}.ace-twilight .ace_variable { color:#7587A6;}.ace-twilight .ace_xml_pe { color:#494949;}.ace-twilight .ace_meta.ace_tag { color:#AC885B;}.ace-twilight .ace_entity.ace_name.ace_function { color:#AC885B;}.ace-twilight .ace_markup.ace_underline { text-decoration:underline;}.ace-twilight .ace_markup.ace_heading { color:#CF6A4C;}.ace-twilight .ace_markup.ace_list { color:#F9EE98;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-twilight.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/twilight",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-twilight",b.cssText=".ace-twilight .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-twilight .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-twilight .ace_gutter { background: #e8e8e8; color: #333;}.ace-twilight .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-twilight .ace_scroller { background-color: #141414;}.ace-twilight .ace_text-layer { cursor: text; color: #F8F8F8;}.ace-twilight .ace_cursor { border-left: 2px solid #A7A7A7;}.ace-twilight .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #A7A7A7;}.ace-twilight .ace_marker-layer .ace_selection { background: rgba(221, 240, 255, 0.20);}.ace-twilight.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #141414; border-radius: 2px;}.ace-twilight .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-twilight .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(255, 255, 255, 0.25);}.ace-twilight .ace_marker-layer .ace_active_line { background: rgba(255, 255, 255, 0.031);}.ace-twilight .ace_marker-layer .ace_selected_word { border: 1px solid rgba(221, 240, 255, 0.20);}.ace-twilight .ace_invisible { color: rgba(255, 255, 255, 0.25);}.ace-twilight .ace_keyword, .ace-twilight .ace_meta { color:#CDA869;}.ace-twilight .ace_constant, .ace-twilight .ace_constant.ace_other { color:#CF6A4C;}.ace-twilight .ace_constant.ace_character, { color:#CF6A4C;}.ace-twilight .ace_constant.ace_character.ace_escape, { color:#CF6A4C;}.ace-twilight .ace_invalid.ace_illegal { color:#F8F8F8;background-color:rgba(86, 45, 86, 0.75);}.ace-twilight .ace_invalid.ace_deprecated { text-decoration:underline;font-style:italic;color:#D2A8A1;}.ace-twilight .ace_support { color:#9B859D;}.ace-twilight .ace_support.ace_constant { color:#CF6A4C;}.ace-twilight .ace_fold { background-color: #AC885B; border-color: #F8F8F8;}.ace-twilight .ace_support.ace_function { color:#DAD085;}.ace-twilight .ace_storage { color:#F9EE98;}.ace-twilight .ace_variable { color:#AC885B;}.ace-twilight .ace_string { color:#8F9D6A;}.ace-twilight .ace_string.ace_regexp { color:#E9C062;}.ace-twilight .ace_comment { font-style:italic;color:#5F5A60;}.ace-twilight .ace_variable { color:#7587A6;}.ace-twilight .ace_xml_pe { color:#494949;}.ace-twilight .ace_meta.ace_tag { color:#AC885B;}.ace-twilight .ace_entity.ace_name.ace_function { color:#AC885B;}.ace-twilight .ace_markup.ace_underline { text-decoration:underline;}.ace-twilight .ace_markup.ace_heading { color:#CF6A4C;}.ace-twilight .ace_markup.ace_list { color:#F9EE98;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/templates/collection.js:
--------------------------------------------------------------------------------
1 | define(function(){return function anonymous(locals,attrs,escape,rethrow,merge){attrs=attrs||jade.attrs,escape=escape||jade.escape,rethrow=rethrow||jade.rethrow,merge=merge||jade.merge;var buf=[];with(locals||{}){var interp;buf.push('Id Size Created Document Actions '),function(){if("number"==typeof documents.length)for(var e=0,t=documents.length;e"+escape((interp=n._id)==null?"":interp)+" "+escape((interp=n.size)==null?"":interp)+" "+escape((interp=n.created)==null?"":interp)+" "+escape((interp=n.value)==null?"":interp)+" ')}else for(var e in documents){var n=documents[e];buf.push(""+escape((interp=n._id)==null?"":interp)+" "+escape((interp=n.size)==null?"":interp)+" "+escape((interp=n.created)==null?"":interp)+" "+escape((interp=n.value)==null?"":interp)+" ')}}.call(this),buf.push("
")}return buf.join("")}})
--------------------------------------------------------------------------------
/client/css/ext/jquery.noty.css:
--------------------------------------------------------------------------------
1 |
2 | /* CORE STYLES */
3 |
4 | /* noty bar */
5 | .noty_bar {
6 | position: fixed;
7 | display: none;
8 | z-index: 9999999;
9 | }
10 |
11 | /* noty_message */
12 | .noty_bar .noty_message {
13 | text-align: center;
14 | }
15 |
16 | /* noty close button */
17 | .noty_bar .noty_close {
18 | cursor: pointer;
19 | }
20 |
21 | /* noty modal */
22 | .noty_modal {
23 | position: fixed;
24 | width: 100%;
25 | height: 100%;
26 | background-color: #000;
27 | z-index: 10000;
28 | opacity: 0.6;
29 | display: none;
30 | left: 0;
31 | top: 0;
32 | }
33 |
34 | /* noty container for noty_layout_topLeft & noty_layout_topRight */
35 | ul.noty_cont {
36 | position: fixed;
37 | z-index: 10000000;
38 | margin: 0px;
39 | padding: 0px;
40 | list-style: none;
41 | width: 300px;
42 | }
43 | ul.noty_cont li {
44 | position: relative;
45 | float: left;
46 | clear: both;
47 | list-style: none;
48 | padding: 0px;
49 | margin: 10px 0 0 0;
50 | width: 300px; /* Fix for: http://bugs.jquery.com/ticket/2278 */
51 | }
52 | ul.noty_cont.noty_layout_topLeft {left:20px; top:20px;}
53 | ul.noty_cont.noty_layout_topRight {right:40px; top:20px;}
54 | ul.noty_cont.noty_layout_bottomLeft {left:20px; bottom:20px}
55 | ul.noty_cont.noty_layout_bottomRight {right:40px; bottom:20px}
56 | ul.noty_cont.noty_layout_topRight li {float:right}
57 |
58 | /* LAYOUTS */
59 |
60 | /* noty_layout_top */
61 | .noty_bar.noty_layout_top {
62 | top: 0;
63 | left: 0;
64 | width: 100%;
65 | -webkit-border-radius: 0px;
66 | -moz-border-radius: 0px;
67 | border-radius: 0px;
68 | }
69 |
70 | /* noty_layout_bottom */
71 | .noty_bar.noty_layout_bottom {
72 | bottom: 0;
73 | left: 0;
74 | width: 100%;
75 | -webkit-border-radius: 0px;
76 | -moz-border-radius: 0px;
77 | border-radius: 0px;
78 | }
79 |
80 | /* noty_layout_center */
81 | .noty_bar.noty_layout_center {
82 | top: 40%;
83 | }
84 |
85 | /* noty_layout_topLeft & noty_layout_topRight */
86 | .noty_bar.noty_layout_topLeft,
87 | .noty_bar.noty_layout_topRight,
88 | .noty_bar.noty_layout_bottomLeft,
89 | .noty_bar.noty_layout_bottomRight {
90 | width: 100%;
91 | clear: both;
92 | position: relative;
93 | }
94 |
95 | .noty_bar.noty_layout_topLeft .noty_message,
96 | .noty_bar.noty_layout_topRight .noty_message,
97 | .noty_bar.noty_layout_bottomLeft .noty_message,
98 | .noty_bar.noty_layout_bottomRight .noty_message {
99 | text-align: left;
100 | }
101 |
102 | /* noty_layout_topCenter */
103 | .noty_bar.noty_layout_topCenter {
104 | top: 20px;
105 | }
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-pastel_on_dark.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/pastel_on_dark",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-pastel-on-dark",b.cssText=".ace-pastel-on-dark .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-pastel-on-dark .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-pastel-on-dark .ace_gutter { background: #e8e8e8; color: #333;}.ace-pastel-on-dark .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-pastel-on-dark .ace_scroller { background-color: #2C2828;}.ace-pastel-on-dark .ace_text-layer { cursor: text; color: #8F938F;}.ace-pastel-on-dark .ace_cursor { border-left: 2px solid #A7A7A7;}.ace-pastel-on-dark .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #A7A7A7;}.ace-pastel-on-dark .ace_marker-layer .ace_selection { background: rgba(221, 240, 255, 0.20);}.ace-pastel-on-dark.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #2C2828; border-radius: 2px;}.ace-pastel-on-dark .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-pastel-on-dark .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(255, 255, 255, 0.25);}.ace-pastel-on-dark .ace_marker-layer .ace_active_line { background: rgba(255, 255, 255, 0.031);}.ace-pastel-on-dark .ace_marker-layer .ace_selected_word { border: 1px solid rgba(221, 240, 255, 0.20);}.ace-pastel-on-dark .ace_invisible { color: rgba(255, 255, 255, 0.25);}.ace-pastel-on-dark .ace_keyword, .ace-pastel-on-dark .ace_meta { color:#757aD8;}.ace-pastel-on-dark .ace_keyword.ace_operator { color:#797878;}.ace-pastel-on-dark .ace_constant, .ace-pastel-on-dark .ace_constant.ace_other { color:#4FB7C5;}.ace-pastel-on-dark .ace_constant.ace_character, { color:#4FB7C5;}.ace-pastel-on-dark .ace_constant.ace_character.ace_escape, { color:#4FB7C5;}.ace-pastel-on-dark .ace_constant.ace_language { color:#DE8E30;}.ace-pastel-on-dark .ace_constant.ace_numeric { color:#CCCCCC;}.ace-pastel-on-dark .ace_invalid { color:#F8F8F8;background-color:rgba(86, 45, 86, 0.75);}.ace-pastel-on-dark .ace_invalid.ace_illegal { color:#F8F8F8;background-color:rgba(86, 45, 86, 0.75);}.ace-pastel-on-dark .ace_invalid.ace_deprecated { text-decoration:underline;font-style:italic;color:#D2A8A1;}.ace-pastel-on-dark .ace_fold { background-color: #757aD8; border-color: #8F938F;}.ace-pastel-on-dark .ace_support.ace_function { color:#AEB2F8;}.ace-pastel-on-dark .ace_string { color:#66A968;}.ace-pastel-on-dark .ace_string.ace_regexp { color:#E9C062;}.ace-pastel-on-dark .ace_comment { color:#A6C6FF;}.ace-pastel-on-dark .ace_variable { color:#BEBF55;}.ace-pastel-on-dark .ace_variable.ace_language { color:#C1C144;}.ace-pastel-on-dark .ace_xml_pe { color:#494949;}.ace-pastel-on-dark .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/css/ext/jquery.noty.css:
--------------------------------------------------------------------------------
1 |
2 | /* CORE STYLES */
3 |
4 | /* noty bar */
5 | .noty_bar {
6 | position: fixed;
7 | display: none;
8 | z-index: 9999999;
9 | }
10 |
11 | /* noty_message */
12 | .noty_bar .noty_message {
13 | text-align: center;
14 | }
15 |
16 | /* noty close button */
17 | .noty_bar .noty_close {
18 | cursor: pointer;
19 | }
20 |
21 | /* noty modal */
22 | .noty_modal {
23 | position: fixed;
24 | width: 100%;
25 | height: 100%;
26 | background-color: #000;
27 | z-index: 10000;
28 | opacity: 0.6;
29 | display: none;
30 | left: 0;
31 | top: 0;
32 | }
33 |
34 | /* noty container for noty_layout_topLeft & noty_layout_topRight */
35 | ul.noty_cont {
36 | position: fixed;
37 | z-index: 10000000;
38 | margin: 0px;
39 | padding: 0px;
40 | list-style: none;
41 | width: 300px;
42 | }
43 | ul.noty_cont li {
44 | position: relative;
45 | float: left;
46 | clear: both;
47 | list-style: none;
48 | padding: 0px;
49 | margin: 10px 0 0 0;
50 | width: 300px; /* Fix for: http://bugs.jquery.com/ticket/2278 */
51 | }
52 | ul.noty_cont.noty_layout_topLeft {left:20px; top:20px;}
53 | ul.noty_cont.noty_layout_topRight {right:40px; top:20px;}
54 | ul.noty_cont.noty_layout_bottomLeft {left:20px; bottom:20px}
55 | ul.noty_cont.noty_layout_bottomRight {right:40px; bottom:20px}
56 | ul.noty_cont.noty_layout_topRight li {float:right}
57 |
58 | /* LAYOUTS */
59 |
60 | /* noty_layout_top */
61 | .noty_bar.noty_layout_top {
62 | top: 0;
63 | left: 0;
64 | width: 100%;
65 | -webkit-border-radius: 0px;
66 | -moz-border-radius: 0px;
67 | border-radius: 0px;
68 | }
69 |
70 | /* noty_layout_bottom */
71 | .noty_bar.noty_layout_bottom {
72 | bottom: 0;
73 | left: 0;
74 | width: 100%;
75 | -webkit-border-radius: 0px;
76 | -moz-border-radius: 0px;
77 | border-radius: 0px;
78 | }
79 |
80 | /* noty_layout_center */
81 | .noty_bar.noty_layout_center {
82 | top: 40%;
83 | }
84 |
85 | /* noty_layout_topLeft & noty_layout_topRight */
86 | .noty_bar.noty_layout_topLeft,
87 | .noty_bar.noty_layout_topRight,
88 | .noty_bar.noty_layout_bottomLeft,
89 | .noty_bar.noty_layout_bottomRight {
90 | width: 100%;
91 | clear: both;
92 | position: relative;
93 | }
94 |
95 | .noty_bar.noty_layout_topLeft .noty_message,
96 | .noty_bar.noty_layout_topRight .noty_message,
97 | .noty_bar.noty_layout_bottomLeft .noty_message,
98 | .noty_bar.noty_layout_bottomRight .noty_message {
99 | text-align: left;
100 | }
101 |
102 | /* noty_layout_topCenter */
103 | .noty_bar.noty_layout_topCenter {
104 | top: 20px;
105 | }
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-pastel_on_dark.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/pastel_on_dark",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-pastel-on-dark",b.cssText=".ace-pastel-on-dark .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-pastel-on-dark .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-pastel-on-dark .ace_gutter { background: #e8e8e8; color: #333;}.ace-pastel-on-dark .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-pastel-on-dark .ace_scroller { background-color: #2C2828;}.ace-pastel-on-dark .ace_text-layer { cursor: text; color: #8F938F;}.ace-pastel-on-dark .ace_cursor { border-left: 2px solid #A7A7A7;}.ace-pastel-on-dark .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #A7A7A7;}.ace-pastel-on-dark .ace_marker-layer .ace_selection { background: rgba(221, 240, 255, 0.20);}.ace-pastel-on-dark.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #2C2828; border-radius: 2px;}.ace-pastel-on-dark .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-pastel-on-dark .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(255, 255, 255, 0.25);}.ace-pastel-on-dark .ace_marker-layer .ace_active_line { background: rgba(255, 255, 255, 0.031);}.ace-pastel-on-dark .ace_marker-layer .ace_selected_word { border: 1px solid rgba(221, 240, 255, 0.20);}.ace-pastel-on-dark .ace_invisible { color: rgba(255, 255, 255, 0.25);}.ace-pastel-on-dark .ace_keyword, .ace-pastel-on-dark .ace_meta { color:#757aD8;}.ace-pastel-on-dark .ace_keyword.ace_operator { color:#797878;}.ace-pastel-on-dark .ace_constant, .ace-pastel-on-dark .ace_constant.ace_other { color:#4FB7C5;}.ace-pastel-on-dark .ace_constant.ace_character, { color:#4FB7C5;}.ace-pastel-on-dark .ace_constant.ace_character.ace_escape, { color:#4FB7C5;}.ace-pastel-on-dark .ace_constant.ace_language { color:#DE8E30;}.ace-pastel-on-dark .ace_constant.ace_numeric { color:#CCCCCC;}.ace-pastel-on-dark .ace_invalid { color:#F8F8F8;background-color:rgba(86, 45, 86, 0.75);}.ace-pastel-on-dark .ace_invalid.ace_illegal { color:#F8F8F8;background-color:rgba(86, 45, 86, 0.75);}.ace-pastel-on-dark .ace_invalid.ace_deprecated { text-decoration:underline;font-style:italic;color:#D2A8A1;}.ace-pastel-on-dark .ace_fold { background-color: #757aD8; border-color: #8F938F;}.ace-pastel-on-dark .ace_support.ace_function { color:#AEB2F8;}.ace-pastel-on-dark .ace_string { color:#66A968;}.ace-pastel-on-dark .ace_string.ace_regexp { color:#E9C062;}.ace-pastel-on-dark .ace_comment { color:#A6C6FF;}.ace-pastel-on-dark .ace_variable { color:#BEBF55;}.ace-pastel-on-dark .ace_variable.ace_language { color:#C1C144;}.ace-pastel-on-dark .ace_xml_pe { color:#494949;}.ace-pastel-on-dark .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-mono_industrial.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/mono_industrial",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-mono-industrial",b.cssText=".ace-mono-industrial .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-mono-industrial .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-mono-industrial .ace_gutter { background: #e8e8e8; color: #333;}.ace-mono-industrial .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-mono-industrial .ace_scroller { background-color: #222C28;}.ace-mono-industrial .ace_text-layer { cursor: text; color: #FFFFFF;}.ace-mono-industrial .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-mono-industrial .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-mono-industrial .ace_marker-layer .ace_selection { background: rgba(145, 153, 148, 0.40);}.ace-mono-industrial.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #222C28; border-radius: 2px;}.ace-mono-industrial .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-mono-industrial .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(102, 108, 104, 0.50);}.ace-mono-industrial .ace_marker-layer .ace_active_line { background: rgba(12, 13, 12, 0.25);}.ace-mono-industrial .ace_marker-layer .ace_selected_word { border: 1px solid rgba(145, 153, 148, 0.40);}.ace-mono-industrial .ace_invisible { color: rgba(102, 108, 104, 0.50);}.ace-mono-industrial .ace_keyword, .ace-mono-industrial .ace_meta { color:#A39E64;}.ace-mono-industrial .ace_keyword.ace_operator { color:#A8B3AB;}.ace-mono-industrial .ace_constant, .ace-mono-industrial .ace_constant.ace_other { color:#E98800;}.ace-mono-industrial .ace_constant.ace_character, { color:#E98800;}.ace-mono-industrial .ace_constant.ace_character.ace_escape, { color:#E98800;}.ace-mono-industrial .ace_constant.ace_numeric { color:#E98800;}.ace-mono-industrial .ace_invalid { color:#FFFFFF;background-color:rgba(153, 0, 0, 0.68);}.ace-mono-industrial .ace_support.ace_constant { color:#C87500;}.ace-mono-industrial .ace_fold { background-color: #A8B3AB; border-color: #FFFFFF;}.ace-mono-industrial .ace_support.ace_function { color:#588E60;}.ace-mono-industrial .ace_storage { color:#C23B00;}.ace-mono-industrial .ace_variable { color:#A8B3AB;}.ace-mono-industrial .ace_variable.ace_parameter { color:#648BD2;}.ace-mono-industrial .ace_comment { color:#666C68;background-color:#151C19;}.ace-mono-industrial .ace_variable.ace_language { color:#648BD2;}.ace-mono-industrial .ace_entity.ace_other.ace_attribute-name { color:#909993;}.ace-mono-industrial .ace_entity.ace_name { color:#5778B6;}.ace-mono-industrial .ace_entity.ace_name.ace_function { color:#A8B3AB;}.ace-mono-industrial .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-mono_industrial.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/mono_industrial",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-mono-industrial",b.cssText=".ace-mono-industrial .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-mono-industrial .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-mono-industrial .ace_gutter { background: #e8e8e8; color: #333;}.ace-mono-industrial .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-mono-industrial .ace_scroller { background-color: #222C28;}.ace-mono-industrial .ace_text-layer { cursor: text; color: #FFFFFF;}.ace-mono-industrial .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-mono-industrial .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-mono-industrial .ace_marker-layer .ace_selection { background: rgba(145, 153, 148, 0.40);}.ace-mono-industrial.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #222C28; border-radius: 2px;}.ace-mono-industrial .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-mono-industrial .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgba(102, 108, 104, 0.50);}.ace-mono-industrial .ace_marker-layer .ace_active_line { background: rgba(12, 13, 12, 0.25);}.ace-mono-industrial .ace_marker-layer .ace_selected_word { border: 1px solid rgba(145, 153, 148, 0.40);}.ace-mono-industrial .ace_invisible { color: rgba(102, 108, 104, 0.50);}.ace-mono-industrial .ace_keyword, .ace-mono-industrial .ace_meta { color:#A39E64;}.ace-mono-industrial .ace_keyword.ace_operator { color:#A8B3AB;}.ace-mono-industrial .ace_constant, .ace-mono-industrial .ace_constant.ace_other { color:#E98800;}.ace-mono-industrial .ace_constant.ace_character, { color:#E98800;}.ace-mono-industrial .ace_constant.ace_character.ace_escape, { color:#E98800;}.ace-mono-industrial .ace_constant.ace_numeric { color:#E98800;}.ace-mono-industrial .ace_invalid { color:#FFFFFF;background-color:rgba(153, 0, 0, 0.68);}.ace-mono-industrial .ace_support.ace_constant { color:#C87500;}.ace-mono-industrial .ace_fold { background-color: #A8B3AB; border-color: #FFFFFF;}.ace-mono-industrial .ace_support.ace_function { color:#588E60;}.ace-mono-industrial .ace_storage { color:#C23B00;}.ace-mono-industrial .ace_variable { color:#A8B3AB;}.ace-mono-industrial .ace_variable.ace_parameter { color:#648BD2;}.ace-mono-industrial .ace_comment { color:#666C68;background-color:#151C19;}.ace-mono-industrial .ace_variable.ace_language { color:#648BD2;}.ace-mono-industrial .ace_entity.ace_other.ace_attribute-name { color:#909993;}.ace-mono-industrial .ace_entity.ace_name { color:#5778B6;}.ace-mono-industrial .ace_entity.ace_name.ace_function { color:#A8B3AB;}.ace-mono-industrial .ace_markup.ace_underline { text-decoration:underline;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-tomorrow_night.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/tomorrow_night",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-tomorrow-night",b.cssText=".ace-tomorrow-night .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-tomorrow-night .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-tomorrow-night .ace_gutter { background: #e8e8e8; color: #333;}.ace-tomorrow-night .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-tomorrow-night .ace_scroller { background-color: #1D1F21;}.ace-tomorrow-night .ace_text-layer { cursor: text; color: #C5C8C6;}.ace-tomorrow-night .ace_cursor { border-left: 2px solid #AEAFAD;}.ace-tomorrow-night .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #AEAFAD;}.ace-tomorrow-night .ace_marker-layer .ace_selection { background: #373B41;}.ace-tomorrow-night.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #1D1F21; border-radius: 2px;}.ace-tomorrow-night .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-tomorrow-night .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #4B4E55;}.ace-tomorrow-night .ace_marker-layer .ace_active_line { background: #282A2E;}.ace-tomorrow-night .ace_marker-layer .ace_selected_word { border: 1px solid #373B41;}.ace-tomorrow-night .ace_invisible { color: #4B4E55;}.ace-tomorrow-night .ace_keyword, .ace-tomorrow-night .ace_meta { color:#B294BB;}.ace-tomorrow-night .ace_keyword.ace_operator { color:#8ABEB7;}.ace-tomorrow-night .ace_constant.ace_language { color:#DE935F;}.ace-tomorrow-night .ace_constant.ace_numeric { color:#DE935F;}.ace-tomorrow-night .ace_constant.ace_other { color:#CED1CF;}.ace-tomorrow-night .ace_invalid { color:#CED2CF;background-color:#DF5F5F;}.ace-tomorrow-night .ace_invalid.ace_deprecated { color:#CED2CF;background-color:#B798BF;}.ace-tomorrow-night .ace_support.ace_constant { color:#DE935F;}.ace-tomorrow-night .ace_fold { background-color: #81A2BE; border-color: #C5C8C6;}.ace-tomorrow-night .ace_support.ace_function { color:#81A2BE;}.ace-tomorrow-night .ace_storage { color:#B294BB;}.ace-tomorrow-night .ace_storage.ace_type, .ace-tomorrow-night .ace_support.ace_type{ color:#B294BB;}.ace-tomorrow-night .ace_variable { color:#81A2BE;}.ace-tomorrow-night .ace_variable.ace_parameter { color:#DE935F;}.ace-tomorrow-night .ace_string { color:#B5BD68;}.ace-tomorrow-night .ace_string.ace_regexp { color:#CC6666;}.ace-tomorrow-night .ace_comment { color:#969896;}.ace-tomorrow-night .ace_variable { color:#CC6666;}.ace-tomorrow-night .ace_meta.ace_tag { color:#CC6666;}.ace-tomorrow-night .ace_entity.ace_other.ace_attribute-name { color:#CC6666;}.ace-tomorrow-night .ace_entity.ace_name.ace_function { color:#81A2BE;}.ace-tomorrow-night .ace_markup.ace_underline { text-decoration:underline;}.ace-tomorrow-night .ace_markup.ace_heading { color:#B5BD68;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-tomorrow_night.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/tomorrow_night",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-tomorrow-night",b.cssText=".ace-tomorrow-night .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-tomorrow-night .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-tomorrow-night .ace_gutter { background: #e8e8e8; color: #333;}.ace-tomorrow-night .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-tomorrow-night .ace_scroller { background-color: #1D1F21;}.ace-tomorrow-night .ace_text-layer { cursor: text; color: #C5C8C6;}.ace-tomorrow-night .ace_cursor { border-left: 2px solid #AEAFAD;}.ace-tomorrow-night .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #AEAFAD;}.ace-tomorrow-night .ace_marker-layer .ace_selection { background: #373B41;}.ace-tomorrow-night.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #1D1F21; border-radius: 2px;}.ace-tomorrow-night .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-tomorrow-night .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #4B4E55;}.ace-tomorrow-night .ace_marker-layer .ace_active_line { background: #282A2E;}.ace-tomorrow-night .ace_marker-layer .ace_selected_word { border: 1px solid #373B41;}.ace-tomorrow-night .ace_invisible { color: #4B4E55;}.ace-tomorrow-night .ace_keyword, .ace-tomorrow-night .ace_meta { color:#B294BB;}.ace-tomorrow-night .ace_keyword.ace_operator { color:#8ABEB7;}.ace-tomorrow-night .ace_constant.ace_language { color:#DE935F;}.ace-tomorrow-night .ace_constant.ace_numeric { color:#DE935F;}.ace-tomorrow-night .ace_constant.ace_other { color:#CED1CF;}.ace-tomorrow-night .ace_invalid { color:#CED2CF;background-color:#DF5F5F;}.ace-tomorrow-night .ace_invalid.ace_deprecated { color:#CED2CF;background-color:#B798BF;}.ace-tomorrow-night .ace_support.ace_constant { color:#DE935F;}.ace-tomorrow-night .ace_fold { background-color: #81A2BE; border-color: #C5C8C6;}.ace-tomorrow-night .ace_support.ace_function { color:#81A2BE;}.ace-tomorrow-night .ace_storage { color:#B294BB;}.ace-tomorrow-night .ace_storage.ace_type, .ace-tomorrow-night .ace_support.ace_type{ color:#B294BB;}.ace-tomorrow-night .ace_variable { color:#81A2BE;}.ace-tomorrow-night .ace_variable.ace_parameter { color:#DE935F;}.ace-tomorrow-night .ace_string { color:#B5BD68;}.ace-tomorrow-night .ace_string.ace_regexp { color:#CC6666;}.ace-tomorrow-night .ace_comment { color:#969896;}.ace-tomorrow-night .ace_variable { color:#CC6666;}.ace-tomorrow-night .ace_meta.ace_tag { color:#CC6666;}.ace-tomorrow-night .ace_entity.ace_other.ace_attribute-name { color:#CC6666;}.ace-tomorrow-night .ace_entity.ace_name.ace_function { color:#81A2BE;}.ace-tomorrow-night .ace_markup.ace_underline { text-decoration:underline;}.ace-tomorrow-night .ace_markup.ace_heading { color:#B5BD68;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-chrome.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/chrome",["require","exports","module","ace/lib/dom"],function(a,b,c){b.cssClass="ace-chrome",b.cssText=".ace-chrome .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-chrome .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-chrome .ace_gutter { background: #e8e8e8; color: #333; overflow : hidden;}.ace-chrome .ace_gutter-layer { width: 100%; text-align: right;}.ace-chrome .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-chrome .ace_text-layer { cursor: text;}.ace-chrome .ace_cursor { border-left: 2px solid black;}.ace-chrome .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid black;}.ace-chrome .ace_line .ace_invisible { color: rgb(191, 191, 191);}.ace-chrome .ace_line .ace_constant.ace_buildin { color: rgb(88, 72, 246);}.ace-chrome .ace_line .ace_constant.ace_language { color: rgb(88, 92, 246);}.ace-chrome .ace_line .ace_constant.ace_library { color: rgb(6, 150, 14);}.ace-chrome .ace_line .ace_invalid { background-color: rgb(153, 0, 0); color: white;}.ace-chrome .ace_line .ace_fold {}.ace-chrome .ace_line .ace_support.ace_function { color: rgb(60, 76, 114);}.ace-chrome .ace_line .ace_support.ace_constant { color: rgb(6, 150, 14);}.ace-chrome .ace_line .ace_support.ace_type,.ace-chrome .ace_line .ace_support.ace_class { color: rgb(109, 121, 222);}.ace-chrome .ace_variable.ace_parameter { font-style:italic;color:#FD971F;}.ace-chrome .ace_line .ace_keyword.ace_operator { color: rgb(104, 118, 135);}.ace-chrome .ace_line .ace_comment { color: #236e24;}.ace-chrome .ace_line .ace_comment.ace_doc { color: #236e24;}.ace-chrome .ace_line .ace_comment.ace_doc.ace_tag { color: #236e24;}.ace-chrome .ace_line .ace_constant.ace_numeric { color: rgb(0, 0, 205);}.ace-chrome .ace_line .ace_variable { color: rgb(49, 132, 149);}.ace-chrome .ace_line .ace_xml_pe { color: rgb(104, 104, 91);}.ace-chrome .ace_entity.ace_name.ace_function { color: #0000A2;}.ace-chrome .ace_markup.ace_markupine { text-decoration:underline;}.ace-chrome .ace_markup.ace_heading { color: rgb(12, 7, 255);}.ace-chrome .ace_markup.ace_list { color:rgb(185, 6, 144);}.ace-chrome .ace_marker-layer .ace_selection { background: rgb(181, 213, 255);}.ace-chrome .ace_marker-layer .ace_step { background: rgb(252, 255, 0);}.ace-chrome .ace_marker-layer .ace_stack { background: rgb(164, 229, 101);}.ace-chrome .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgb(192, 192, 192);}.ace-chrome .ace_marker-layer .ace_active_line { background: rgba(0, 0, 0, 0.07);}.ace-chrome .ace_marker-layer .ace_selected_word { background: rgb(250, 250, 255); border: 1px solid rgb(200, 200, 250);}.ace-chrome .ace_storage,.ace-chrome .ace_line .ace_keyword,.ace-chrome .ace_meta.ace_tag { color: rgb(147, 15, 128);}.ace-chrome .ace_string.ace_regex { color: rgb(255, 0, 0)}.ace-chrome .ace_line .ace_string,.ace-chrome .ace_entity.ace_other.ace_attribute-name{ color: #994409;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-chrome.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/chrome",["require","exports","module","ace/lib/dom"],function(a,b,c){b.cssClass="ace-chrome",b.cssText=".ace-chrome .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-chrome .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-chrome .ace_gutter { background: #e8e8e8; color: #333; overflow : hidden;}.ace-chrome .ace_gutter-layer { width: 100%; text-align: right;}.ace-chrome .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-chrome .ace_text-layer { cursor: text;}.ace-chrome .ace_cursor { border-left: 2px solid black;}.ace-chrome .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid black;}.ace-chrome .ace_line .ace_invisible { color: rgb(191, 191, 191);}.ace-chrome .ace_line .ace_constant.ace_buildin { color: rgb(88, 72, 246);}.ace-chrome .ace_line .ace_constant.ace_language { color: rgb(88, 92, 246);}.ace-chrome .ace_line .ace_constant.ace_library { color: rgb(6, 150, 14);}.ace-chrome .ace_line .ace_invalid { background-color: rgb(153, 0, 0); color: white;}.ace-chrome .ace_line .ace_fold {}.ace-chrome .ace_line .ace_support.ace_function { color: rgb(60, 76, 114);}.ace-chrome .ace_line .ace_support.ace_constant { color: rgb(6, 150, 14);}.ace-chrome .ace_line .ace_support.ace_type,.ace-chrome .ace_line .ace_support.ace_class { color: rgb(109, 121, 222);}.ace-chrome .ace_variable.ace_parameter { font-style:italic;color:#FD971F;}.ace-chrome .ace_line .ace_keyword.ace_operator { color: rgb(104, 118, 135);}.ace-chrome .ace_line .ace_comment { color: #236e24;}.ace-chrome .ace_line .ace_comment.ace_doc { color: #236e24;}.ace-chrome .ace_line .ace_comment.ace_doc.ace_tag { color: #236e24;}.ace-chrome .ace_line .ace_constant.ace_numeric { color: rgb(0, 0, 205);}.ace-chrome .ace_line .ace_variable { color: rgb(49, 132, 149);}.ace-chrome .ace_line .ace_xml_pe { color: rgb(104, 104, 91);}.ace-chrome .ace_entity.ace_name.ace_function { color: #0000A2;}.ace-chrome .ace_markup.ace_markupine { text-decoration:underline;}.ace-chrome .ace_markup.ace_heading { color: rgb(12, 7, 255);}.ace-chrome .ace_markup.ace_list { color:rgb(185, 6, 144);}.ace-chrome .ace_marker-layer .ace_selection { background: rgb(181, 213, 255);}.ace-chrome .ace_marker-layer .ace_step { background: rgb(252, 255, 0);}.ace-chrome .ace_marker-layer .ace_stack { background: rgb(164, 229, 101);}.ace-chrome .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgb(192, 192, 192);}.ace-chrome .ace_marker-layer .ace_active_line { background: rgba(0, 0, 0, 0.07);}.ace-chrome .ace_marker-layer .ace_selected_word { background: rgb(250, 250, 255); border: 1px solid rgb(200, 200, 250);}.ace-chrome .ace_storage,.ace-chrome .ace_line .ace_keyword,.ace-chrome .ace_meta.ace_tag { color: rgb(147, 15, 128);}.ace-chrome .ace_string.ace_regex { color: rgb(255, 0, 0)}.ace-chrome .ace_line .ace_string,.ace-chrome .ace_entity.ace_other.ace_attribute-name{ color: #994409;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | ## Looking for maintainers
2 |
3 | Want to maintain this? Post an issue! This project still works fine, but is not being actively developed.
4 |
5 | ## Information
6 |
7 |
8 |
9 | Package smog
10 |
11 |
12 | Description
13 | HTML5/Node/WebSocket MongoDB viewer
14 |
15 |
16 | Node Version
17 | >= 0.6
18 |
19 |
20 |
21 | ## Usage
22 |
23 | Install smog by running ```npm install smog -g```
24 |
25 | ### Local
26 |
27 | smog will run on port 8080 by default (add PORT=X at the front of the command to change this)
28 |
29 | ```
30 | $ smog
31 | ```
32 |
33 | ### Web Client
34 |
35 | Don't want to trouble yourself with installing smog? Visit http://smog.jit.su/ to try it out
36 |
37 | ### Desktop UI
38 |
39 | Desktop UI is still in testing but you can try it at your own risk. Linux only (for now)
40 |
41 | ```
42 | $ smog -u
43 | ```
44 |
45 | ## Pictures
46 |
47 | 
48 | 
49 |
50 | ## TODO
51 |
52 | ##### Administration
53 |
54 | * Ability to shutdown/restart server
55 | * Streaming CPU/bandwidth usage graphs
56 | * Streaming Geo heatmap graph
57 | * Full replica set management
58 |
59 | ##### Editor
60 |
61 | * Command bar for executing raw commands (with auto-complete/syntax highlighting)
62 | * Support for arbitrary languages (coffee-script, clojurescript, etc.)
63 | * Allow changing of themes/syntax highlighters
64 | * Runtime syntax checks of all languages
65 |
66 | ##### Document Listing
67 |
68 | * Sort by X
69 | * Better document preview
70 | * Streaming results (when a new document is added that matches the query it should be added)
71 | * Inline editor
72 | * Graphs
73 | * Pagination
74 |
75 | ## LICENSE
76 |
77 | (MIT License)
78 |
79 | Copyright (c) 2012 Fractal
80 |
81 | Permission is hereby granted, free of charge, to any person obtaining
82 | a copy of this software and associated documentation files (the
83 | "Software"), to deal in the Software without restriction, including
84 | without limitation the rights to use, copy, modify, merge, publish,
85 | distribute, sublicense, and/or sell copies of the Software, and to
86 | permit persons to whom the Software is furnished to do so, subject to
87 | the following conditions:
88 |
89 | The above copyright notice and this permission notice shall be
90 | included in all copies or substantial portions of the Software.
91 |
92 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
93 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
94 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
95 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
96 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
97 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
98 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
99 |
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-crimson_editor.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/crimson_editor",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssText=".ace-crimson-editor .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-crimson-editor .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-crimson-editor .ace_gutter { width: 50px; background: #e8e8e8; color: #333; overflow : hidden;}.ace-crimson-editor .ace_gutter-layer { width: 100%; text-align: right;}.ace-crimson-editor .ace_gutter-layer .ace_gutter-cell { padding-right: 6px;}.ace-crimson-editor .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-crimson-editor .ace_text-layer { cursor: text; color: rgb(64, 64, 64);}.ace-crimson-editor .ace_cursor { border-left: 2px solid black;}.ace-crimson-editor .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid black;}.ace-crimson-editor .ace_line .ace_invisible { color: rgb(191, 191, 191);}.ace-crimson-editor .ace_line .ace_identifier { color: black;}.ace-crimson-editor .ace_line .ace_keyword { color: blue;}.ace-crimson-editor .ace_line .ace_constant.ace_buildin { color: rgb(88, 72, 246);}.ace-crimson-editor .ace_line .ace_constant.ace_language { color: rgb(255, 156, 0);}.ace-crimson-editor .ace_line .ace_constant.ace_library { color: rgb(6, 150, 14);}.ace-crimson-editor .ace_line .ace_invalid { text-decoration: line-through; color: rgb(224, 0, 0);}.ace-crimson-editor .ace_line .ace_fold {}.ace-crimson-editor .ace_line .ace_support.ace_function { color: rgb(192, 0, 0);}.ace-crimson-editor .ace_line .ace_support.ace_constant { color: rgb(6, 150, 14);}.ace-crimson-editor .ace_line .ace_support.ace_type,.ace-crimson-editor .ace_line .ace_support.ace_class { color: rgb(109, 121, 222);}.ace-crimson-editor .ace_line .ace_keyword.ace_operator { color: rgb(49, 132, 149);}.ace-crimson-editor .ace_line .ace_string { color: rgb(128, 0, 128);}.ace-crimson-editor .ace_line .ace_comment { color: rgb(76, 136, 107);}.ace-crimson-editor .ace_line .ace_comment.ace_doc { color: rgb(0, 102, 255);}.ace-crimson-editor .ace_line .ace_comment.ace_doc.ace_tag { color: rgb(128, 159, 191);}.ace-crimson-editor .ace_line .ace_constant.ace_numeric { color: rgb(0, 0, 64);}.ace-crimson-editor .ace_line .ace_variable { color: rgb(0, 64, 128);}.ace-crimson-editor .ace_line .ace_xml_pe { color: rgb(104, 104, 91);}.ace-crimson-editor .ace_marker-layer .ace_selection { background: rgb(181, 213, 255);}.ace-crimson-editor .ace_marker-layer .ace_step { background: rgb(252, 255, 0);}.ace-crimson-editor .ace_marker-layer .ace_stack { background: rgb(164, 229, 101);}.ace-crimson-editor .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgb(192, 192, 192);}.ace-crimson-editor .ace_marker-layer .ace_active_line { background: rgb(232, 242, 254);}.ace-crimson-editor .ace_meta.ace_tag { color:rgb(28, 2, 255);}.ace-crimson-editor .ace_marker-layer .ace_selected_word { background: rgb(250, 250, 255); border: 1px solid rgb(200, 200, 250);}.ace-crimson-editor .ace_string.ace_regex { color: rgb(192, 0, 192);}",b.cssClass="ace-crimson-editor";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-tomorrow_night_blue.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/tomorrow_night_blue",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-tomorrow-night-blue",b.cssText=".ace-tomorrow-night-blue .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-tomorrow-night-blue .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-tomorrow-night-blue .ace_gutter { background: #e8e8e8; color: #333;}.ace-tomorrow-night-blue .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-tomorrow-night-blue .ace_scroller { background-color: #002451;}.ace-tomorrow-night-blue .ace_text-layer { cursor: text; color: #FFFFFF;}.ace-tomorrow-night-blue .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-tomorrow-night-blue .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-tomorrow-night-blue .ace_marker-layer .ace_selection { background: #003F8E;}.ace-tomorrow-night-blue.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #002451; border-radius: 2px;}.ace-tomorrow-night-blue .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-tomorrow-night-blue .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #404F7D;}.ace-tomorrow-night-blue .ace_marker-layer .ace_active_line { background: #00346E;}.ace-tomorrow-night-blue .ace_marker-layer .ace_selected_word { border: 1px solid #003F8E;}.ace-tomorrow-night-blue .ace_invisible { color: #404F7D;}.ace-tomorrow-night-blue .ace_keyword, .ace-tomorrow-night-blue .ace_meta { color:#EBBBFF;}.ace-tomorrow-night-blue .ace_keyword.ace_operator { color:#99FFFF;}.ace-tomorrow-night-blue .ace_constant.ace_language { color:#FFC58F;}.ace-tomorrow-night-blue .ace_constant.ace_numeric { color:#FFC58F;}.ace-tomorrow-night-blue .ace_constant.ace_other { color:#FFFFFF;}.ace-tomorrow-night-blue .ace_invalid { color:#FFFFFF;background-color:#F99DA5;}.ace-tomorrow-night-blue .ace_invalid.ace_deprecated { color:#FFFFFF;background-color:#EBBBFF;}.ace-tomorrow-night-blue .ace_support.ace_constant { color:#FFC58F;}.ace-tomorrow-night-blue .ace_fold { background-color: #BBDAFF; border-color: #FFFFFF;}.ace-tomorrow-night-blue .ace_support.ace_function { color:#BBDAFF;}.ace-tomorrow-night-blue .ace_storage { color:#EBBBFF;}.ace-tomorrow-night-blue .ace_storage.ace_type, .ace-tomorrow-night-blue .ace_support.ace_type{ color:#EBBBFF;}.ace-tomorrow-night-blue .ace_variable { color:#BBDAFF;}.ace-tomorrow-night-blue .ace_variable.ace_parameter { color:#FFC58F;}.ace-tomorrow-night-blue .ace_string { color:#D1F1A9;}.ace-tomorrow-night-blue .ace_string.ace_regexp { color:#FF9DA4;}.ace-tomorrow-night-blue .ace_comment { color:#7285B7;}.ace-tomorrow-night-blue .ace_variable { color:#FF9DA4;}.ace-tomorrow-night-blue .ace_meta.ace_tag { color:#FF9DA4;}.ace-tomorrow-night-blue .ace_entity.ace_other.ace_attribute-name { color:#FF9DA4;}.ace-tomorrow-night-blue .ace_entity.ace_name.ace_function { color:#BBDAFF;}.ace-tomorrow-night-blue .ace_markup.ace_underline { text-decoration:underline;}.ace-tomorrow-night-blue .ace_markup.ace_heading { color:#D1F1A9;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-crimson_editor.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/crimson_editor",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssText=".ace-crimson-editor .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-crimson-editor .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-crimson-editor .ace_gutter { width: 50px; background: #e8e8e8; color: #333; overflow : hidden;}.ace-crimson-editor .ace_gutter-layer { width: 100%; text-align: right;}.ace-crimson-editor .ace_gutter-layer .ace_gutter-cell { padding-right: 6px;}.ace-crimson-editor .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-crimson-editor .ace_text-layer { cursor: text; color: rgb(64, 64, 64);}.ace-crimson-editor .ace_cursor { border-left: 2px solid black;}.ace-crimson-editor .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid black;}.ace-crimson-editor .ace_line .ace_invisible { color: rgb(191, 191, 191);}.ace-crimson-editor .ace_line .ace_identifier { color: black;}.ace-crimson-editor .ace_line .ace_keyword { color: blue;}.ace-crimson-editor .ace_line .ace_constant.ace_buildin { color: rgb(88, 72, 246);}.ace-crimson-editor .ace_line .ace_constant.ace_language { color: rgb(255, 156, 0);}.ace-crimson-editor .ace_line .ace_constant.ace_library { color: rgb(6, 150, 14);}.ace-crimson-editor .ace_line .ace_invalid { text-decoration: line-through; color: rgb(224, 0, 0);}.ace-crimson-editor .ace_line .ace_fold {}.ace-crimson-editor .ace_line .ace_support.ace_function { color: rgb(192, 0, 0);}.ace-crimson-editor .ace_line .ace_support.ace_constant { color: rgb(6, 150, 14);}.ace-crimson-editor .ace_line .ace_support.ace_type,.ace-crimson-editor .ace_line .ace_support.ace_class { color: rgb(109, 121, 222);}.ace-crimson-editor .ace_line .ace_keyword.ace_operator { color: rgb(49, 132, 149);}.ace-crimson-editor .ace_line .ace_string { color: rgb(128, 0, 128);}.ace-crimson-editor .ace_line .ace_comment { color: rgb(76, 136, 107);}.ace-crimson-editor .ace_line .ace_comment.ace_doc { color: rgb(0, 102, 255);}.ace-crimson-editor .ace_line .ace_comment.ace_doc.ace_tag { color: rgb(128, 159, 191);}.ace-crimson-editor .ace_line .ace_constant.ace_numeric { color: rgb(0, 0, 64);}.ace-crimson-editor .ace_line .ace_variable { color: rgb(0, 64, 128);}.ace-crimson-editor .ace_line .ace_xml_pe { color: rgb(104, 104, 91);}.ace-crimson-editor .ace_marker-layer .ace_selection { background: rgb(181, 213, 255);}.ace-crimson-editor .ace_marker-layer .ace_step { background: rgb(252, 255, 0);}.ace-crimson-editor .ace_marker-layer .ace_stack { background: rgb(164, 229, 101);}.ace-crimson-editor .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgb(192, 192, 192);}.ace-crimson-editor .ace_marker-layer .ace_active_line { background: rgb(232, 242, 254);}.ace-crimson-editor .ace_meta.ace_tag { color:rgb(28, 2, 255);}.ace-crimson-editor .ace_marker-layer .ace_selected_word { background: rgb(250, 250, 255); border: 1px solid rgb(200, 200, 250);}.ace-crimson-editor .ace_string.ace_regex { color: rgb(192, 0, 192);}",b.cssClass="ace-crimson-editor";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-tomorrow_night_blue.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/tomorrow_night_blue",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-tomorrow-night-blue",b.cssText=".ace-tomorrow-night-blue .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-tomorrow-night-blue .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-tomorrow-night-blue .ace_gutter { background: #e8e8e8; color: #333;}.ace-tomorrow-night-blue .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-tomorrow-night-blue .ace_scroller { background-color: #002451;}.ace-tomorrow-night-blue .ace_text-layer { cursor: text; color: #FFFFFF;}.ace-tomorrow-night-blue .ace_cursor { border-left: 2px solid #FFFFFF;}.ace-tomorrow-night-blue .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #FFFFFF;}.ace-tomorrow-night-blue .ace_marker-layer .ace_selection { background: #003F8E;}.ace-tomorrow-night-blue.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #002451; border-radius: 2px;}.ace-tomorrow-night-blue .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-tomorrow-night-blue .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #404F7D;}.ace-tomorrow-night-blue .ace_marker-layer .ace_active_line { background: #00346E;}.ace-tomorrow-night-blue .ace_marker-layer .ace_selected_word { border: 1px solid #003F8E;}.ace-tomorrow-night-blue .ace_invisible { color: #404F7D;}.ace-tomorrow-night-blue .ace_keyword, .ace-tomorrow-night-blue .ace_meta { color:#EBBBFF;}.ace-tomorrow-night-blue .ace_keyword.ace_operator { color:#99FFFF;}.ace-tomorrow-night-blue .ace_constant.ace_language { color:#FFC58F;}.ace-tomorrow-night-blue .ace_constant.ace_numeric { color:#FFC58F;}.ace-tomorrow-night-blue .ace_constant.ace_other { color:#FFFFFF;}.ace-tomorrow-night-blue .ace_invalid { color:#FFFFFF;background-color:#F99DA5;}.ace-tomorrow-night-blue .ace_invalid.ace_deprecated { color:#FFFFFF;background-color:#EBBBFF;}.ace-tomorrow-night-blue .ace_support.ace_constant { color:#FFC58F;}.ace-tomorrow-night-blue .ace_fold { background-color: #BBDAFF; border-color: #FFFFFF;}.ace-tomorrow-night-blue .ace_support.ace_function { color:#BBDAFF;}.ace-tomorrow-night-blue .ace_storage { color:#EBBBFF;}.ace-tomorrow-night-blue .ace_storage.ace_type, .ace-tomorrow-night-blue .ace_support.ace_type{ color:#EBBBFF;}.ace-tomorrow-night-blue .ace_variable { color:#BBDAFF;}.ace-tomorrow-night-blue .ace_variable.ace_parameter { color:#FFC58F;}.ace-tomorrow-night-blue .ace_string { color:#D1F1A9;}.ace-tomorrow-night-blue .ace_string.ace_regexp { color:#FF9DA4;}.ace-tomorrow-night-blue .ace_comment { color:#7285B7;}.ace-tomorrow-night-blue .ace_variable { color:#FF9DA4;}.ace-tomorrow-night-blue .ace_meta.ace_tag { color:#FF9DA4;}.ace-tomorrow-night-blue .ace_entity.ace_other.ace_attribute-name { color:#FF9DA4;}.ace-tomorrow-night-blue .ace_entity.ace_name.ace_function { color:#BBDAFF;}.ace-tomorrow-night-blue .ace_markup.ace_underline { text-decoration:underline;}.ace-tomorrow-night-blue .ace_markup.ace_heading { color:#D1F1A9;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-tomorrow_night_bright.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/tomorrow_night_bright",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-tomorrow-night-bright",b.cssText=".ace-tomorrow-night-bright .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-tomorrow-night-bright .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-tomorrow-night-bright .ace_gutter { background: #e8e8e8; color: #333;}.ace-tomorrow-night-bright .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-tomorrow-night-bright .ace_scroller { background-color: #000000;}.ace-tomorrow-night-bright .ace_text-layer { cursor: text; color: #DEDEDE;}.ace-tomorrow-night-bright .ace_cursor { border-left: 2px solid #9F9F9F;}.ace-tomorrow-night-bright .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #9F9F9F;}.ace-tomorrow-night-bright .ace_marker-layer .ace_selection { background: #424242;}.ace-tomorrow-night-bright.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #000000; border-radius: 2px;}.ace-tomorrow-night-bright .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-tomorrow-night-bright .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #343434;}.ace-tomorrow-night-bright .ace_marker-layer .ace_active_line { background: #2A2A2A;}.ace-tomorrow-night-bright .ace_marker-layer .ace_selected_word { border: 1px solid #424242;}.ace-tomorrow-night-bright .ace_invisible { color: #343434;}.ace-tomorrow-night-bright .ace_keyword, .ace-tomorrow-night-bright .ace_meta { color:#C397D8;}.ace-tomorrow-night-bright .ace_keyword.ace_operator { color:#70C0B1;}.ace-tomorrow-night-bright .ace_constant.ace_language { color:#E78C45;}.ace-tomorrow-night-bright .ace_constant.ace_numeric { color:#E78C45;}.ace-tomorrow-night-bright .ace_constant.ace_other { color:#EEEEEE;}.ace-tomorrow-night-bright .ace_invalid { color:#CED2CF;background-color:#DF5F5F;}.ace-tomorrow-night-bright .ace_invalid.ace_deprecated { color:#CED2CF;background-color:#B798BF;}.ace-tomorrow-night-bright .ace_support.ace_constant { color:#E78C45;}.ace-tomorrow-night-bright .ace_fold { background-color: #7AA6DA; border-color: #DEDEDE;}.ace-tomorrow-night-bright .ace_support.ace_function { color:#7AA6DA;}.ace-tomorrow-night-bright .ace_storage { color:#C397D8;}.ace-tomorrow-night-bright .ace_storage.ace_type, .ace-tomorrow-night-bright .ace_support.ace_type{ color:#C397D8;}.ace-tomorrow-night-bright .ace_variable { color:#7AA6DA;}.ace-tomorrow-night-bright .ace_variable.ace_parameter { color:#E78C45;}.ace-tomorrow-night-bright .ace_string { color:#B9CA4A;}.ace-tomorrow-night-bright .ace_string.ace_regexp { color:#D54E53;}.ace-tomorrow-night-bright .ace_comment { color:#969896;}.ace-tomorrow-night-bright .ace_variable { color:#D54E53;}.ace-tomorrow-night-bright .ace_meta.ace_tag { color:#D54E53;}.ace-tomorrow-night-bright .ace_entity.ace_other.ace_attribute-name { color:#D54E53;}.ace-tomorrow-night-bright .ace_entity.ace_name.ace_function { color:#7AA6DA;}.ace-tomorrow-night-bright .ace_markup.ace_underline { text-decoration:underline;}.ace-tomorrow-night-bright .ace_markup.ace_heading { color:#B9CA4A;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-tomorrow_night_bright.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/tomorrow_night_bright",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-tomorrow-night-bright",b.cssText=".ace-tomorrow-night-bright .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-tomorrow-night-bright .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-tomorrow-night-bright .ace_gutter { background: #e8e8e8; color: #333;}.ace-tomorrow-night-bright .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-tomorrow-night-bright .ace_scroller { background-color: #000000;}.ace-tomorrow-night-bright .ace_text-layer { cursor: text; color: #DEDEDE;}.ace-tomorrow-night-bright .ace_cursor { border-left: 2px solid #9F9F9F;}.ace-tomorrow-night-bright .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #9F9F9F;}.ace-tomorrow-night-bright .ace_marker-layer .ace_selection { background: #424242;}.ace-tomorrow-night-bright.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #000000; border-radius: 2px;}.ace-tomorrow-night-bright .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-tomorrow-night-bright .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #343434;}.ace-tomorrow-night-bright .ace_marker-layer .ace_active_line { background: #2A2A2A;}.ace-tomorrow-night-bright .ace_marker-layer .ace_selected_word { border: 1px solid #424242;}.ace-tomorrow-night-bright .ace_invisible { color: #343434;}.ace-tomorrow-night-bright .ace_keyword, .ace-tomorrow-night-bright .ace_meta { color:#C397D8;}.ace-tomorrow-night-bright .ace_keyword.ace_operator { color:#70C0B1;}.ace-tomorrow-night-bright .ace_constant.ace_language { color:#E78C45;}.ace-tomorrow-night-bright .ace_constant.ace_numeric { color:#E78C45;}.ace-tomorrow-night-bright .ace_constant.ace_other { color:#EEEEEE;}.ace-tomorrow-night-bright .ace_invalid { color:#CED2CF;background-color:#DF5F5F;}.ace-tomorrow-night-bright .ace_invalid.ace_deprecated { color:#CED2CF;background-color:#B798BF;}.ace-tomorrow-night-bright .ace_support.ace_constant { color:#E78C45;}.ace-tomorrow-night-bright .ace_fold { background-color: #7AA6DA; border-color: #DEDEDE;}.ace-tomorrow-night-bright .ace_support.ace_function { color:#7AA6DA;}.ace-tomorrow-night-bright .ace_storage { color:#C397D8;}.ace-tomorrow-night-bright .ace_storage.ace_type, .ace-tomorrow-night-bright .ace_support.ace_type{ color:#C397D8;}.ace-tomorrow-night-bright .ace_variable { color:#7AA6DA;}.ace-tomorrow-night-bright .ace_variable.ace_parameter { color:#E78C45;}.ace-tomorrow-night-bright .ace_string { color:#B9CA4A;}.ace-tomorrow-night-bright .ace_string.ace_regexp { color:#D54E53;}.ace-tomorrow-night-bright .ace_comment { color:#969896;}.ace-tomorrow-night-bright .ace_variable { color:#D54E53;}.ace-tomorrow-night-bright .ace_meta.ace_tag { color:#D54E53;}.ace-tomorrow-night-bright .ace_entity.ace_other.ace_attribute-name { color:#D54E53;}.ace-tomorrow-night-bright .ace_entity.ace_name.ace_function { color:#7AA6DA;}.ace-tomorrow-night-bright .ace_markup.ace_underline { text-decoration:underline;}.ace-tomorrow-night-bright .ace_markup.ace_heading { color:#B9CA4A;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-tomorrow_night_eighties.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/tomorrow_night_eighties",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-tomorrow-night-eighties",b.cssText=".ace-tomorrow-night-eighties .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-tomorrow-night-eighties .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-tomorrow-night-eighties .ace_gutter { background: #e8e8e8; color: #333;}.ace-tomorrow-night-eighties .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-tomorrow-night-eighties .ace_scroller { background-color: #2D2D2D;}.ace-tomorrow-night-eighties .ace_text-layer { cursor: text; color: #CCCCCC;}.ace-tomorrow-night-eighties .ace_cursor { border-left: 2px solid #CCCCCC;}.ace-tomorrow-night-eighties .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #CCCCCC;}.ace-tomorrow-night-eighties .ace_marker-layer .ace_selection { background: #515151;}.ace-tomorrow-night-eighties.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #2D2D2D; border-radius: 2px;}.ace-tomorrow-night-eighties .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-tomorrow-night-eighties .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #6A6A6A;}.ace-tomorrow-night-eighties .ace_marker-layer .ace_active_line { background: #393939;}.ace-tomorrow-night-eighties .ace_marker-layer .ace_selected_word { border: 1px solid #515151;}.ace-tomorrow-night-eighties .ace_invisible { color: #6A6A6A;}.ace-tomorrow-night-eighties .ace_keyword, .ace-tomorrow-night-eighties .ace_meta { color:#CC99CC;}.ace-tomorrow-night-eighties .ace_keyword.ace_operator { color:#66CCCC;}.ace-tomorrow-night-eighties .ace_constant.ace_language { color:#F99157;}.ace-tomorrow-night-eighties .ace_constant.ace_numeric { color:#F99157;}.ace-tomorrow-night-eighties .ace_constant.ace_other { color:#CCCCCC;}.ace-tomorrow-night-eighties .ace_invalid { color:#CDCDCD;background-color:#F2777A;}.ace-tomorrow-night-eighties .ace_invalid.ace_deprecated { color:#CDCDCD;background-color:#CC99CC;}.ace-tomorrow-night-eighties .ace_support.ace_constant { color:#F99157;}.ace-tomorrow-night-eighties .ace_fold { background-color: #6699CC; border-color: #CCCCCC;}.ace-tomorrow-night-eighties .ace_support.ace_function { color:#6699CC;}.ace-tomorrow-night-eighties .ace_storage { color:#CC99CC;}.ace-tomorrow-night-eighties .ace_storage.ace_type, .ace-tomorrow-night-eighties .ace_support.ace_type{ color:#CC99CC;}.ace-tomorrow-night-eighties .ace_variable { color:#6699CC;}.ace-tomorrow-night-eighties .ace_variable.ace_parameter { color:#F99157;}.ace-tomorrow-night-eighties .ace_string { color:#99CC99;}.ace-tomorrow-night-eighties .ace_comment { color:#999999;}.ace-tomorrow-night-eighties .ace_variable { color:#F2777A;}.ace-tomorrow-night-eighties .ace_meta.ace_tag { color:#F2777A;}.ace-tomorrow-night-eighties .ace_entity.ace_other.ace_attribute-name { color:#F2777A;}.ace-tomorrow-night-eighties .ace_entity.ace_name.ace_function { color:#6699CC;}.ace-tomorrow-night-eighties .ace_markup.ace_underline { text-decoration:underline;}.ace-tomorrow-night-eighties .ace_markup.ace_heading { color:#99CC99;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-tomorrow_night_eighties.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/tomorrow_night_eighties",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!0,b.cssClass="ace-tomorrow-night-eighties",b.cssText=".ace-tomorrow-night-eighties .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-tomorrow-night-eighties .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-tomorrow-night-eighties .ace_gutter { background: #e8e8e8; color: #333;}.ace-tomorrow-night-eighties .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-tomorrow-night-eighties .ace_scroller { background-color: #2D2D2D;}.ace-tomorrow-night-eighties .ace_text-layer { cursor: text; color: #CCCCCC;}.ace-tomorrow-night-eighties .ace_cursor { border-left: 2px solid #CCCCCC;}.ace-tomorrow-night-eighties .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid #CCCCCC;}.ace-tomorrow-night-eighties .ace_marker-layer .ace_selection { background: #515151;}.ace-tomorrow-night-eighties.multiselect .ace_selection.start { box-shadow: 0 0 3px 0px #2D2D2D; border-radius: 2px;}.ace-tomorrow-night-eighties .ace_marker-layer .ace_step { background: rgb(198, 219, 174);}.ace-tomorrow-night-eighties .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid #6A6A6A;}.ace-tomorrow-night-eighties .ace_marker-layer .ace_active_line { background: #393939;}.ace-tomorrow-night-eighties .ace_marker-layer .ace_selected_word { border: 1px solid #515151;}.ace-tomorrow-night-eighties .ace_invisible { color: #6A6A6A;}.ace-tomorrow-night-eighties .ace_keyword, .ace-tomorrow-night-eighties .ace_meta { color:#CC99CC;}.ace-tomorrow-night-eighties .ace_keyword.ace_operator { color:#66CCCC;}.ace-tomorrow-night-eighties .ace_constant.ace_language { color:#F99157;}.ace-tomorrow-night-eighties .ace_constant.ace_numeric { color:#F99157;}.ace-tomorrow-night-eighties .ace_constant.ace_other { color:#CCCCCC;}.ace-tomorrow-night-eighties .ace_invalid { color:#CDCDCD;background-color:#F2777A;}.ace-tomorrow-night-eighties .ace_invalid.ace_deprecated { color:#CDCDCD;background-color:#CC99CC;}.ace-tomorrow-night-eighties .ace_support.ace_constant { color:#F99157;}.ace-tomorrow-night-eighties .ace_fold { background-color: #6699CC; border-color: #CCCCCC;}.ace-tomorrow-night-eighties .ace_support.ace_function { color:#6699CC;}.ace-tomorrow-night-eighties .ace_storage { color:#CC99CC;}.ace-tomorrow-night-eighties .ace_storage.ace_type, .ace-tomorrow-night-eighties .ace_support.ace_type{ color:#CC99CC;}.ace-tomorrow-night-eighties .ace_variable { color:#6699CC;}.ace-tomorrow-night-eighties .ace_variable.ace_parameter { color:#F99157;}.ace-tomorrow-night-eighties .ace_string { color:#99CC99;}.ace-tomorrow-night-eighties .ace_comment { color:#999999;}.ace-tomorrow-night-eighties .ace_variable { color:#F2777A;}.ace-tomorrow-night-eighties .ace_meta.ace_tag { color:#F2777A;}.ace-tomorrow-night-eighties .ace_entity.ace_other.ace_attribute-name { color:#F2777A;}.ace-tomorrow-night-eighties .ace_entity.ace_name.ace_function { color:#6699CC;}.ace-tomorrow-night-eighties .ace_markup.ace_underline { text-decoration:underline;}.ace-tomorrow-night-eighties .ace_markup.ace_heading { color:#99CC99;}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/client/js/ext/ace/theme-dreamweaver.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/dreamweaver",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-dreamweaver",b.cssText=".ace-dreamweaver .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-dreamweaver .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-dreamweaver .ace_gutter { background: #e8e8e8; color: #333;}.ace-dreamweaver .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-dreamweaver .ace_fold { background-color: #00F;}.ace-dreamweaver .ace_text-layer { cursor: text;}.ace-dreamweaver .ace_cursor { border-left: 2px solid black;}.ace-dreamweaver .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid black;} .ace-dreamweaver .ace_line .ace_invisible { color: rgb(191, 191, 191);}.ace-dreamweaver .ace_line .ace_storage,.ace-dreamweaver .ace_line .ace_keyword { color: blue;}.ace-dreamweaver .ace_line .ace_constant.ace_buildin { color: rgb(88, 72, 246);}.ace-dreamweaver .ace_line .ace_constant.ace_language { color: rgb(88, 92, 246);}.ace-dreamweaver .ace_line .ace_constant.ace_library { color: rgb(6, 150, 14);}.ace-dreamweaver .ace_line .ace_invalid { background-color: rgb(153, 0, 0); color: white;}.ace-dreamweaver .ace_line .ace_support.ace_function { color: rgb(60, 76, 114);}.ace-dreamweaver .ace_line .ace_support.ace_constant { color: rgb(6, 150, 14);}.ace-dreamweaver .ace_line .ace_support.ace_type,.ace-dreamweaver .ace_line .ace_support.ace_class { color: #009;}.ace-dreamweaver .ace_line .ace_support.ace_php_tag { color: #f00;}.ace-dreamweaver .ace_line .ace_keyword.ace_operator { color: rgb(104, 118, 135);}.ace-dreamweaver .ace_line .ace_string { color: #00F;}.ace-dreamweaver .ace_line .ace_comment { color: rgb(76, 136, 107);}.ace-dreamweaver .ace_line .ace_comment.ace_doc { color: rgb(0, 102, 255);}.ace-dreamweaver .ace_line .ace_comment.ace_doc.ace_tag { color: rgb(128, 159, 191);}.ace-dreamweaver .ace_line .ace_constant.ace_numeric { color: rgb(0, 0, 205);}.ace-dreamweaver .ace_line .ace_variable { color: #06F}.ace-dreamweaver .ace_line .ace_xml_pe { color: rgb(104, 104, 91);}.ace-dreamweaver .ace_entity.ace_name.ace_function { color: #00F;}.ace-dreamweaver .ace_markup.ace_markupine { text-decoration:underline;}.ace-dreamweaver .ace_markup.ace_heading { color: rgb(12, 7, 255);}.ace-dreamweaver .ace_markup.ace_list { color:rgb(185, 6, 144);}.ace-dreamweaver .ace_marker-layer .ace_selection { background: rgb(181, 213, 255);}.ace-dreamweaver .ace_marker-layer .ace_step { background: rgb(252, 255, 0);}.ace-dreamweaver .ace_marker-layer .ace_stack { background: rgb(164, 229, 101);}.ace-dreamweaver .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgb(192, 192, 192);}.ace-dreamweaver .ace_marker-layer .ace_active_line { background: rgba(0, 0, 0, 0.07);}.ace-dreamweaver .ace_marker-layer .ace_selected_word { background: rgb(250, 250, 255); border: 1px solid rgb(200, 200, 250);}.ace-dreamweaver .ace_meta.ace_tag { color:#009;}.ace-dreamweaver .ace_meta.ace_tag.ace_anchor { color:#060;}.ace-dreamweaver .ace_meta.ace_tag.ace_form { color:#F90;}.ace-dreamweaver .ace_meta.ace_tag.ace_image { color:#909;}.ace-dreamweaver .ace_meta.ace_tag.ace_script { color:#900;}.ace-dreamweaver .ace_meta.ace_tag.ace_style { color:#909;}.ace-dreamweaver .ace_meta.ace_tag.ace_table { color:#099;}.ace-dreamweaver .ace_string.ace_regex { color: rgb(255, 0, 0)}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/public/js/ext/ace/theme-dreamweaver.js:
--------------------------------------------------------------------------------
1 | define("ace/theme/dreamweaver",["require","exports","module","ace/lib/dom"],function(a,b,c){b.isDark=!1,b.cssClass="ace-dreamweaver",b.cssText=".ace-dreamweaver .ace_editor { border: 2px solid rgb(159, 159, 159);}.ace-dreamweaver .ace_editor.ace_focus { border: 2px solid #327fbd;}.ace-dreamweaver .ace_gutter { background: #e8e8e8; color: #333;}.ace-dreamweaver .ace_print_margin { width: 1px; background: #e8e8e8;}.ace-dreamweaver .ace_fold { background-color: #00F;}.ace-dreamweaver .ace_text-layer { cursor: text;}.ace-dreamweaver .ace_cursor { border-left: 2px solid black;}.ace-dreamweaver .ace_cursor.ace_overwrite { border-left: 0px; border-bottom: 1px solid black;} .ace-dreamweaver .ace_line .ace_invisible { color: rgb(191, 191, 191);}.ace-dreamweaver .ace_line .ace_storage,.ace-dreamweaver .ace_line .ace_keyword { color: blue;}.ace-dreamweaver .ace_line .ace_constant.ace_buildin { color: rgb(88, 72, 246);}.ace-dreamweaver .ace_line .ace_constant.ace_language { color: rgb(88, 92, 246);}.ace-dreamweaver .ace_line .ace_constant.ace_library { color: rgb(6, 150, 14);}.ace-dreamweaver .ace_line .ace_invalid { background-color: rgb(153, 0, 0); color: white;}.ace-dreamweaver .ace_line .ace_support.ace_function { color: rgb(60, 76, 114);}.ace-dreamweaver .ace_line .ace_support.ace_constant { color: rgb(6, 150, 14);}.ace-dreamweaver .ace_line .ace_support.ace_type,.ace-dreamweaver .ace_line .ace_support.ace_class { color: #009;}.ace-dreamweaver .ace_line .ace_support.ace_php_tag { color: #f00;}.ace-dreamweaver .ace_line .ace_keyword.ace_operator { color: rgb(104, 118, 135);}.ace-dreamweaver .ace_line .ace_string { color: #00F;}.ace-dreamweaver .ace_line .ace_comment { color: rgb(76, 136, 107);}.ace-dreamweaver .ace_line .ace_comment.ace_doc { color: rgb(0, 102, 255);}.ace-dreamweaver .ace_line .ace_comment.ace_doc.ace_tag { color: rgb(128, 159, 191);}.ace-dreamweaver .ace_line .ace_constant.ace_numeric { color: rgb(0, 0, 205);}.ace-dreamweaver .ace_line .ace_variable { color: #06F}.ace-dreamweaver .ace_line .ace_xml_pe { color: rgb(104, 104, 91);}.ace-dreamweaver .ace_entity.ace_name.ace_function { color: #00F;}.ace-dreamweaver .ace_markup.ace_markupine { text-decoration:underline;}.ace-dreamweaver .ace_markup.ace_heading { color: rgb(12, 7, 255);}.ace-dreamweaver .ace_markup.ace_list { color:rgb(185, 6, 144);}.ace-dreamweaver .ace_marker-layer .ace_selection { background: rgb(181, 213, 255);}.ace-dreamweaver .ace_marker-layer .ace_step { background: rgb(252, 255, 0);}.ace-dreamweaver .ace_marker-layer .ace_stack { background: rgb(164, 229, 101);}.ace-dreamweaver .ace_marker-layer .ace_bracket { margin: -1px 0 0 -1px; border: 1px solid rgb(192, 192, 192);}.ace-dreamweaver .ace_marker-layer .ace_active_line { background: rgba(0, 0, 0, 0.07);}.ace-dreamweaver .ace_marker-layer .ace_selected_word { background: rgb(250, 250, 255); border: 1px solid rgb(200, 200, 250);}.ace-dreamweaver .ace_meta.ace_tag { color:#009;}.ace-dreamweaver .ace_meta.ace_tag.ace_anchor { color:#060;}.ace-dreamweaver .ace_meta.ace_tag.ace_form { color:#F90;}.ace-dreamweaver .ace_meta.ace_tag.ace_image { color:#909;}.ace-dreamweaver .ace_meta.ace_tag.ace_script { color:#900;}.ace-dreamweaver .ace_meta.ace_tag.ace_style { color:#909;}.ace-dreamweaver .ace_meta.ace_tag.ace_table { color:#099;}.ace-dreamweaver .ace_string.ace_regex { color: rgb(255, 0, 0)}";var d=a("../lib/dom");d.importCssString(b.cssText,b.cssClass)})
--------------------------------------------------------------------------------
/lib/services/collection.coffee:
--------------------------------------------------------------------------------
1 | ton = require "mongo-ton"
2 | uglify = require "uglify-js"
3 | {BSON} = require('mongodb').pure()
4 |
5 | prettify = (code) ->
6 | try
7 | ish = uglify.uglify.gen_code uglify.parser.parse("(#{code})"), beautify: true, quote_keys: true
8 | return ish.substring 1, ish.length-2
9 | catch err
10 | console.log code, err
11 | return "Error parsing JS #{err.message}"
12 |
13 | formatDocuments = (res) ->
14 | out = []
15 | for doc in res
16 | out.push
17 | _id: doc._id
18 | nativeId: (doc._id instanceof ObjectID)
19 | size: BSON.calculateObjectSize(doc, true)
20 | value: prettify ton.stringify doc
21 | return out
22 |
23 | tasks =
24 | # collection tasks
25 | rename: (col, command, cb) ->
26 | return cb "Missing query" unless command.query?
27 | return cb "Missing name" unless command.query.name? and typeof command.query.name is 'string' and command.query.name.length > 0
28 | col.rename command.query.name, (err, res) ->
29 | return cb err if err?
30 | return cb "Rename failed" unless res?
31 | cb()
32 |
33 | empty: (col, command, cb) ->
34 | col.remove (err, res) ->
35 | return cb err if err?
36 | return cb "Empty failed" unless res?
37 | cb()
38 |
39 | drop: (col, command, cb) ->
40 | col.drop (err, res) ->
41 | return cb err if err?
42 | return cb "Drop failed" unless res?
43 | cb()
44 |
45 | # other
46 | find: (col, command, cb) ->
47 | return cb "Missing query" unless command.query?
48 | command.options ?= {}
49 | col.find(command.query, command.options).toArray (err, res) ->
50 | return cb err if err?
51 | return cb null, [] unless res?
52 | cb null, formatDocuments res
53 |
54 | mapReduce: (col, command, cb) ->
55 | return cb "Missing query" unless command.query?
56 | {map, reduce} = command.query
57 | return cb "Missing map" unless typeof map is 'function'
58 | return cb "Missing reduce" unless typeof reduce is 'function'
59 | col.mapReduce map, reduce, {out:{inline:1}}, (err, res, stat) ->
60 | return cb err if err?
61 | cb null, formatDocuments(res), stat
62 |
63 | delete: (col, command, cb) ->
64 | return cb "Missing query" unless command.query?
65 | return cb "Missing _id" unless command.query._id?
66 | col.remove {_id:command.query._id}, (err, res) ->
67 | return cb err if err?
68 | return cb "Delete failed" unless res? and res > 0
69 | cb()
70 |
71 | insert: (col, command, cb) ->
72 | return cb "Missing query" unless command.query?
73 | col.insert command.query, cb
74 |
75 | update: (col, command, cb) ->
76 | return cb "Missing query" unless command.query?
77 | return cb "Missing _id" unless command.query._id?
78 | col.save command.query, cb
79 |
80 |
81 | module.exports = (cb, command) ->
82 | return unless cb.socket?
83 | return cb "Not connected" unless cb.socket.mongo?
84 | return cb "Missing command" unless command?
85 | return cb "Missing type" unless command.type?
86 | return cb "Missing collection" unless command.collection?
87 | return cb "Invalid command" unless tasks[command.type]?
88 |
89 | col = cb.socket.mongo.database.collection command.collection
90 | if command.query? and typeof command.query is 'string'
91 | try
92 | command.query = ton.parse command.query
93 | catch err
94 | return cb err.message
95 | tasks[command.type] col, command, cb
--------------------------------------------------------------------------------
/client/css/ext/noty_theme_twitter.css:
--------------------------------------------------------------------------------
1 |
2 | /* CORE STYLES*/
3 |
4 | /* noty bar */
5 | .noty_bar.noty_theme_twitter {
6 | font-size: 13px;
7 | line-height: 18px;
8 | text-shadow: 0 1px 0 #fff;
9 | font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
10 | }
11 |
12 | /* custom container */
13 | .noty_custom_container.noty_theme_twitter.noty_layout_inline {
14 | position: relative;
15 | }
16 |
17 | /* custom growl container */
18 | .noty_custom_container.noty_theme_twitter.noty_layout_inline .noty_cont.noty_layout_inline {
19 | position: static;
20 | }
21 | /* custom noty bar */
22 | .noty_custom_container.noty_theme_twitter.noty_layout_inline .noty_bar {
23 | position: static;
24 | }
25 | .noty_custom_container.noty_theme_twitter.noty_layout_inline .noty_bar .noty_message {
26 | font-size: 13px;
27 | padding: 4px;
28 | }
29 | .noty_custom_container.noty_theme_twitter.noty_layout_inline .noty_bar .noty_message .noty_buttons {
30 | margin-top: -1px;
31 | }
32 |
33 | /* noty_message */
34 | .noty_bar.noty_theme_twitter .noty_message {
35 | padding: 8px 14px;
36 | }
37 | /* noty_has_close_button */
38 | .noty_bar.noty_theme_twitter.noty_closable .noty_message {
39 | padding: 8px 35px 8px 14px;
40 | }
41 |
42 | /* noty_buttons */
43 | .noty_bar.noty_theme_twitter .noty_message .noty_buttons {
44 | float: right;
45 | margin-top: -5px;
46 | margin-left: 4px;
47 | }
48 |
49 | /* noty_button */
50 | .noty_bar.noty_theme_twitter .noty_message .noty_buttons button {
51 | margin-left: 5px;
52 | }
53 |
54 | /* noty close button */
55 | .noty_bar.noty_theme_twitter .noty_close {
56 | position: absolute;
57 | top: 7px;
58 | right: 16px;
59 | font-size: 18px;
60 | line-height: 18px;
61 | font-weight: bold;
62 | color: #000;
63 | opacity: 0.2;
64 | text-shadow: 0 1px 0 #fff;
65 | }
66 |
67 | /* noty close button hover */
68 | .noty_bar.noty_theme_twitter .noty_close:hover {
69 | opacity: 0.4;
70 | }
71 |
72 | .noty_bar.noty_theme_twitter .noty_close:after {
73 | content: "x";
74 | }
75 |
76 | /* noty modal */
77 | .noty_modal.noty_theme_twitter {
78 | opacity: 0.7;
79 | }
80 |
81 | /* LAYOUTS */
82 |
83 | /* noty_layout_topLeft & noty_layout_topRight */
84 | .noty_bar.noty_theme_twitter.noty_layout_center,
85 | .noty_bar.noty_theme_twitter.noty_layout_topCenter,
86 | .noty_bar.noty_theme_twitter.noty_layout_topLeft,
87 | .noty_bar.noty_theme_twitter.noty_layout_topRight,
88 | .noty_bar.noty_theme_twitter.noty_layout_bottomLeft,
89 | .noty_bar.noty_theme_twitter.noty_layout_bottomRight {
90 | -webkit-border-radius: 4px;
91 | -moz-border-radius: 4px;
92 | border-radius: 4px;
93 | }
94 | .noty_bar.noty_theme_twitter.noty_layout_topLeft .noty_message .noty_buttons,
95 | .noty_bar.noty_theme_twitter.noty_layout_topRight .noty_message .noty_buttons,
96 | .noty_bar.noty_theme_twitter.noty_layout_bottomLeft .noty_message .noty_buttons,
97 | .noty_bar.noty_theme_twitter.noty_layout_bottomRight .noty_message .noty_buttons {
98 | float: none;
99 | border-top: 1px solid #FBEED5;
100 | margin-left: 0;
101 | margin-top: 10px;
102 | padding-top: 10px;
103 | text-align: right;
104 | }
105 |
106 | .noty_bar.noty_theme_twitter.noty_layout_center .noty_message .noty_buttons,
107 | .noty_bar.noty_theme_twitter.noty_layout_topCenter .noty_message .noty_buttons {
108 | margin-left: 15px;
109 | margin-top: -2px
110 | }
111 |
112 | /* NOTIFICATION TYPES */
113 |
114 | /* noty_alert */
115 | .noty_bar.noty_theme_twitter.noty_alert {
116 | background-color: #FCF8E3;
117 | border: 1px solid #FBEED5;
118 | color: #C09853;
119 | }
120 | /* noty_error */
121 | .noty_bar.noty_theme_twitter.noty_error {
122 | background-color: #F2DEDE;
123 | border: 1px solid #EED3D7;
124 | color: #B94A48;
125 | }
126 | /* noty_success */
127 | .noty_bar.noty_theme_twitter.noty_success {
128 | background-color: #DFF0D8;
129 | border: 1px solid #D6E9C6;
130 | color: #468847;
131 | }
132 | /* noty_information */
133 | .noty_bar.noty_theme_twitter.noty_information {
134 | background-color: #D9EDF7;
135 | border: 1px solid #BCE8F1;
136 | color: #3A87AD;
137 | }
--------------------------------------------------------------------------------
/public/css/ext/noty_theme_twitter.css:
--------------------------------------------------------------------------------
1 |
2 | /* CORE STYLES*/
3 |
4 | /* noty bar */
5 | .noty_bar.noty_theme_twitter {
6 | font-size: 13px;
7 | line-height: 18px;
8 | text-shadow: 0 1px 0 #fff;
9 | font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
10 | }
11 |
12 | /* custom container */
13 | .noty_custom_container.noty_theme_twitter.noty_layout_inline {
14 | position: relative;
15 | }
16 |
17 | /* custom growl container */
18 | .noty_custom_container.noty_theme_twitter.noty_layout_inline .noty_cont.noty_layout_inline {
19 | position: static;
20 | }
21 | /* custom noty bar */
22 | .noty_custom_container.noty_theme_twitter.noty_layout_inline .noty_bar {
23 | position: static;
24 | }
25 | .noty_custom_container.noty_theme_twitter.noty_layout_inline .noty_bar .noty_message {
26 | font-size: 13px;
27 | padding: 4px;
28 | }
29 | .noty_custom_container.noty_theme_twitter.noty_layout_inline .noty_bar .noty_message .noty_buttons {
30 | margin-top: -1px;
31 | }
32 |
33 | /* noty_message */
34 | .noty_bar.noty_theme_twitter .noty_message {
35 | padding: 8px 14px;
36 | }
37 | /* noty_has_close_button */
38 | .noty_bar.noty_theme_twitter.noty_closable .noty_message {
39 | padding: 8px 35px 8px 14px;
40 | }
41 |
42 | /* noty_buttons */
43 | .noty_bar.noty_theme_twitter .noty_message .noty_buttons {
44 | float: right;
45 | margin-top: -5px;
46 | margin-left: 4px;
47 | }
48 |
49 | /* noty_button */
50 | .noty_bar.noty_theme_twitter .noty_message .noty_buttons button {
51 | margin-left: 5px;
52 | }
53 |
54 | /* noty close button */
55 | .noty_bar.noty_theme_twitter .noty_close {
56 | position: absolute;
57 | top: 7px;
58 | right: 16px;
59 | font-size: 18px;
60 | line-height: 18px;
61 | font-weight: bold;
62 | color: #000;
63 | opacity: 0.2;
64 | text-shadow: 0 1px 0 #fff;
65 | }
66 |
67 | /* noty close button hover */
68 | .noty_bar.noty_theme_twitter .noty_close:hover {
69 | opacity: 0.4;
70 | }
71 |
72 | .noty_bar.noty_theme_twitter .noty_close:after {
73 | content: "x";
74 | }
75 |
76 | /* noty modal */
77 | .noty_modal.noty_theme_twitter {
78 | opacity: 0.7;
79 | }
80 |
81 | /* LAYOUTS */
82 |
83 | /* noty_layout_topLeft & noty_layout_topRight */
84 | .noty_bar.noty_theme_twitter.noty_layout_center,
85 | .noty_bar.noty_theme_twitter.noty_layout_topCenter,
86 | .noty_bar.noty_theme_twitter.noty_layout_topLeft,
87 | .noty_bar.noty_theme_twitter.noty_layout_topRight,
88 | .noty_bar.noty_theme_twitter.noty_layout_bottomLeft,
89 | .noty_bar.noty_theme_twitter.noty_layout_bottomRight {
90 | -webkit-border-radius: 4px;
91 | -moz-border-radius: 4px;
92 | border-radius: 4px;
93 | }
94 | .noty_bar.noty_theme_twitter.noty_layout_topLeft .noty_message .noty_buttons,
95 | .noty_bar.noty_theme_twitter.noty_layout_topRight .noty_message .noty_buttons,
96 | .noty_bar.noty_theme_twitter.noty_layout_bottomLeft .noty_message .noty_buttons,
97 | .noty_bar.noty_theme_twitter.noty_layout_bottomRight .noty_message .noty_buttons {
98 | float: none;
99 | border-top: 1px solid #FBEED5;
100 | margin-left: 0;
101 | margin-top: 10px;
102 | padding-top: 10px;
103 | text-align: right;
104 | }
105 |
106 | .noty_bar.noty_theme_twitter.noty_layout_center .noty_message .noty_buttons,
107 | .noty_bar.noty_theme_twitter.noty_layout_topCenter .noty_message .noty_buttons {
108 | margin-left: 15px;
109 | margin-top: -2px
110 | }
111 |
112 | /* NOTIFICATION TYPES */
113 |
114 | /* noty_alert */
115 | .noty_bar.noty_theme_twitter.noty_alert {
116 | background-color: #FCF8E3;
117 | border: 1px solid #FBEED5;
118 | color: #C09853;
119 | }
120 | /* noty_error */
121 | .noty_bar.noty_theme_twitter.noty_error {
122 | background-color: #F2DEDE;
123 | border: 1px solid #EED3D7;
124 | color: #B94A48;
125 | }
126 | /* noty_success */
127 | .noty_bar.noty_theme_twitter.noty_success {
128 | background-color: #DFF0D8;
129 | border: 1px solid #D6E9C6;
130 | color: #468847;
131 | }
132 | /* noty_information */
133 | .noty_bar.noty_theme_twitter.noty_information {
134 | background-color: #D9EDF7;
135 | border: 1px solid #BCE8F1;
136 | color: #3A87AD;
137 | }
--------------------------------------------------------------------------------