ende 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (54) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +17 -0
  3. data/Gemfile +4 -0
  4. data/README.md +29 -0
  5. data/Rakefile +1 -0
  6. data/WTFP-LICENSE +13 -0
  7. data/component.json +31 -0
  8. data/ende.gemspec +23 -0
  9. data/lib/assets/.gitkeep +0 -0
  10. data/lib/assets/javascripts/aura/extensions/devise.js.coffee +110 -0
  11. data/lib/assets/javascripts/aura/extensions/loader.js.coffee +48 -0
  12. data/lib/assets/javascripts/aura/extensions/mediator.js +98 -0
  13. data/lib/assets/javascripts/aura/extensions/models.js.coffee.erb +56 -0
  14. data/lib/assets/javascripts/aura/extensions/rivets.js.coffee +251 -0
  15. data/lib/assets/javascripts/aura/extensions/states.js.coffee +62 -0
  16. data/lib/assets/javascripts/aura/extensions/widget/eventable.js.coffee +66 -0
  17. data/lib/assets/javascripts/aura/extensions/widget/lifecycleable.js.coffee +75 -0
  18. data/lib/assets/javascripts/config/initializers/jquery.js.coffee +6 -0
  19. data/lib/assets/javascripts/config/initializers/load_components.js.coffee +73 -0
  20. data/lib/assets/javascripts/config/initializers/requirejs.js.coffee +3 -0
  21. data/lib/assets/javascripts/ende.js.coffee +1 -0
  22. data/lib/assets/javascripts/widgets/authenticator/main.js.coffee +95 -0
  23. data/lib/assets/javascripts/widgets/authenticator/presenter.js.coffee +35 -0
  24. data/lib/assets/javascripts/widgets/authenticator/states/default.html +7 -0
  25. data/lib/assets/javascripts/widgets/authenticator/states/index.js.coffee +3 -0
  26. data/lib/assets/javascripts/widgets/authenticator/states/passwords.html +6 -0
  27. data/lib/assets/javascripts/widgets/list/main.js.coffee +82 -0
  28. data/lib/assets/javascripts/widgets/list/presenter.js.coffee +34 -0
  29. data/lib/assets/javascripts/widgets/list/states/default.html +4 -0
  30. data/lib/assets/javascripts/widgets/list/states/index.js.coffee +2 -0
  31. data/lib/assets/javascripts/widgets/viewer/main.js.coffee +139 -0
  32. data/lib/assets/javascripts/widgets/viewer/presenter.js.coffee +54 -0
  33. data/lib/assets/javascripts/widgets/viewer/states/default.html +6 -0
  34. data/lib/assets/javascripts/widgets/viewer/states/index.js.coffee +2 -0
  35. data/lib/assets/stylesheets/application/modules/authenticator.css.styl +7 -0
  36. data/lib/assets/stylesheets/application/modules/widgets/structure/list.css.styl +9 -0
  37. data/lib/assets/stylesheets/application/modules/widgets/structure/viewer.css.styl +21 -0
  38. data/lib/assets/stylesheets/application/modules/widgets/structure/widget.css.styl +5 -0
  39. data/lib/assets/stylesheets/filter.styl +10 -0
  40. data/lib/assets/stylesheets/helpers/button.styl +61 -0
  41. data/lib/assets/stylesheets/helpers/general.styl +36 -0
  42. data/lib/assets/stylesheets/helpers/index.styl +4 -0
  43. data/lib/assets/stylesheets/helpers/link.styl +6 -0
  44. data/lib/assets/stylesheets/helpers/url.styl +5 -0
  45. data/lib/assets/stylesheets/modules/button.styl +42 -0
  46. data/lib/assets/stylesheets/sprite.styl +40 -0
  47. data/lib/assets/stylesheets/ssprites.styl +1 -0
  48. data/lib/ende/version.rb +3 -0
  49. data/lib/ende.rb +21 -0
  50. data/lib/tasks/.gitkeep +0 -0
  51. data/lib/tasks/component.thor +63 -0
  52. data/lib/tasks/sprite.thor +62 -0
  53. data/vendor/assets/javascripts/stampit/stampit.js +392 -0
  54. metadata +126 -0
@@ -0,0 +1,63 @@
1
+ class Component < Thor
2
+ include Thor::Actions
3
+
4
+ COMPONENTS = {
5
+ "necolas/normalize.css" => "v1"
6
+ }
7
+
8
+ desc "create", "Create basic structure to use Component components."
9
+ def create
10
+ create_file "component.json" do
11
+
12
+ name = ask "App name:", :cyan
13
+ default_name = "indefinido/#{name.split(' ')[0].downcase}"
14
+
15
+ repo = ask "Repository (<username>/<project>): [#{default_name}]", :cyan
16
+ repo = default_name if repo == ""
17
+
18
+ desc = ask "App description:", :cyan
19
+
20
+ repos = []
21
+ if yes? "Choose some components? [y/n]", :cyan
22
+
23
+ COMPONENTS.each_pair do |repo, version|
24
+ repos << [repo,version] if yes? " #{repo}(#{version})? [y/n] ", :magenta
25
+ end
26
+ end
27
+
28
+ <<-COMPONENT
29
+ {
30
+ "name": "#{name}",
31
+ "repo": "#{repo}",
32
+ "description": "#{desc}",
33
+ "version": "0.0.1",
34
+ "keywords": [],
35
+ "dependencies": {
36
+ #{ repos.map do |repo| "\"#{repo[0]}\": \"#{repo[1]}\"" end.join ",\n " }
37
+ },
38
+ "development": {},
39
+ "paths": ["lib/components", "vendor/components"],
40
+ "license": "MIT"
41
+ }
42
+ COMPONENT
43
+ end
44
+
45
+ empty_directory "vendor/components"
46
+ empty_directory "vendor/assets/components"
47
+ end
48
+
49
+ desc "install [COMPONENT], [PATH]", "Install components to PATH, defaulted to ./vendor/components"
50
+ def install component = "", path = "vendor/components"
51
+ run "component install #{component} --out #{path}"
52
+ end
53
+
54
+ desc "search QUERY", "Search components repository for a given component"
55
+ def search query
56
+ run "component search #{query}"
57
+ end
58
+
59
+ desc "build [PATH]", "Build components to PATH, defaulted to ./vendor/assets/components"
60
+ def build path="vendor/assets/components"
61
+ run "component build --out #{path}"
62
+ end
63
+ end
@@ -0,0 +1,62 @@
1
+ require 'css_parser'
2
+ require 'awesome_print'
3
+ require 'pry'
4
+
5
+ class Sprite < Thor
6
+ include Thor::Actions
7
+
8
+ desc "build WIDGET", "Build CSS helpers for sprites generated by Fireworks exported to 'app/assets/images/WIDGET/sprite.*'"
9
+ def build widget = 'default'
10
+ parser = CssParser::Parser.new
11
+ css = File.read File.join 'app/assets/images', widget, 'sprite.css'
12
+
13
+ css.gsub! 'sprite.png', "/assets/#{widget}/sprite.png"
14
+ parser.add_block! css
15
+
16
+ structure = []
17
+
18
+
19
+ parser.each_selector do |selector, declarations, specificity|
20
+ selector.gsub!(/[\.\#]/,'')
21
+ properties = []
22
+ declarations.split(';').each do |property|
23
+ properties << property.split(':').map(&:strip)
24
+ end
25
+ properties << []
26
+ structure << [selector, properties]
27
+ end
28
+ structure << []
29
+
30
+ default = structure.shift[1]
31
+ images = structure
32
+
33
+ structure = [widget, [[:default, default], [:images, images]]]
34
+ sprites = "sprites = (sprites " + stylusize(structure) + stylusize([]) + ")"
35
+
36
+ file_path = File.join 'app/assets/stylesheets', 'sprites.styl'
37
+
38
+ unless File.exists? file_path
39
+ create_file file_path
40
+ append_to_file file_path, 'sprites = ()'
41
+ end
42
+ append_to_file file_path, "\n#{sprites}"
43
+
44
+ say "Do not forget to check for duplicates in the file above!"
45
+ end
46
+
47
+
48
+ private
49
+
50
+ def stylusize array, str = ""
51
+ str << "("
52
+ array.each do |item|
53
+ if item.is_a? Array
54
+ stylusize(item,str)
55
+ else
56
+ str << "('#{item}') "
57
+ end
58
+ end
59
+ str << ") "
60
+ end
61
+
62
+ end
@@ -0,0 +1,392 @@
1
+ (function(e){if("function"==typeof bootstrap)bootstrap("stampit",e);else if("object"==typeof exports)module.exports=e();else if("function"==typeof define&&define.amd)define(e);else if("undefined"!=typeof ses){if(!ses.ok())return;ses.makeStampit=e}else"undefined"!=typeof window?window.stampit=e():global.stampit=e()})(function(){var define,ses,bootstrap,module,exports;
2
+ return (function(e,t,n){function i(n,s){if(!t[n]){if(!e[n]){var o=typeof require=="function"&&require;if(!s&&o)return o(n,!0);if(r)return r(n,!0);throw new Error("Cannot find module '"+n+"'")}var u=t[n]={exports:{}};e[n][0].call(u.exports,function(t){var r=e[n][1][t];return i(r?r:t)},u,u.exports)}return t[n].exports}var r=typeof require=="function"&&require;for(var s=0;s<n.length;s++)i(n[s]);return i})({1:[function(require,module,exports){
3
+
4
+
5
+ /**
6
+ * Array forEach
7
+ */
8
+ function forEach(arr, callback, thisObj) {
9
+ if (arr == null) {
10
+ return;
11
+ }
12
+ var i = -1,
13
+ len = arr.length;
14
+ while (++i < len) {
15
+ // we iterate over sparse items since there is no way to make it
16
+ // work properly on IE 7-8. see #64
17
+ if ( callback.call(thisObj, arr[i], i, arr) === false ) {
18
+ break;
19
+ }
20
+ }
21
+ }
22
+
23
+ module.exports = forEach;
24
+
25
+
26
+
27
+ },{}],2:[function(require,module,exports){
28
+
29
+
30
+ function slice(arr, offset){
31
+ return Array.prototype.slice.call(arr, offset || 0);
32
+ }
33
+
34
+ /**
35
+ * Return a function that will execute in the given context, optionally adding any additional supplied parameters to the beginning of the arguments collection.
36
+ * @param {Function} fn Function.
37
+ * @param {object} context Execution context.
38
+ * @param {rest} args Arguments (0...n arguments).
39
+ * @return {Function} Wrapped Function.
40
+ */
41
+ function bind(fn, context, args){
42
+ var argsArr = slice(arguments, 2); //curried args
43
+ return function(){
44
+ return fn.apply(context, argsArr.concat(slice(arguments)));
45
+ };
46
+ }
47
+
48
+ module.exports = bind;
49
+
50
+
51
+
52
+ },{}],3:[function(require,module,exports){
53
+ var shimIndexOf = function shimIndexOf() {
54
+
55
+ if (!Array.prototype.indexOf) {
56
+ Array.prototype.indexOf = function (searchElement /*, fromIndex */ ) {
57
+ "use strict";
58
+ if (this == null) {
59
+ throw new TypeError();
60
+ }
61
+ var t = Object(this);
62
+ var len = t.length >>> 0;
63
+ if (len === 0) {
64
+ return -1;
65
+ }
66
+ var n = 0;
67
+ if (arguments.length > 1) {
68
+ n = Number(arguments[1]);
69
+ if (n != n) { // shortcut for verifying if it's NaN
70
+ n = 0;
71
+ } else if (n != 0 && n != Infinity && n != -Infinity) {
72
+ n = (n > 0 || -1) * Math.floor(Math.abs(n));
73
+ }
74
+ }
75
+ if (n >= len) {
76
+ return -1;
77
+ }
78
+ var k = n >= 0 ? n : Math.max(len - Math.abs(n), 0);
79
+ for (; k < len; k++) {
80
+ if (k in t && t[k] === searchElement) {
81
+ return k;
82
+ }
83
+ }
84
+ return -1;
85
+ }
86
+ }
87
+
88
+ }
89
+
90
+ module.exports = shimIndexOf;
91
+
92
+ },{}],4:[function(require,module,exports){
93
+ /**
94
+ * Stampit
95
+ **
96
+ * Create objects from reusable, composable behaviors.
97
+ **
98
+ * Copyright (c) 2013 Eric Elliott
99
+ * http://opensource.org/licenses/MIT
100
+ **/
101
+
102
+ 'use strict';
103
+ var forEach = require('mout/array/forEach');
104
+ var bind = require('mout/function/bind');
105
+ var mixIn = require('mout/object/mixIn');
106
+ var stringify = require('json-stringify-safe');
107
+ var indexOf = require('./indexof'); // shim indexOf for stringify
108
+
109
+ var create = function (o) {
110
+ if (arguments.length > 1) {
111
+ throw new Error('Object.create implementation only accepts the first parameter.');
112
+ }
113
+ function F() {}
114
+ F.prototype = o;
115
+ return new F();
116
+ };
117
+
118
+ /**
119
+ * Return a factory function that will produce new objects using the
120
+ * prototypes that are passed in or composed.
121
+ *
122
+ * @param {Object} [methods] A map of method names and bodies for delegation.
123
+ * @param {Object} [state] A map of property names and values to clone for each new object.
124
+ * @param {Function} [enclose] A closure (function) used to create private data and privileged methods.
125
+ * @return {Function} factory A factory to produce objects using the given prototypes.
126
+ * @return {Function} factory.create Just like calling the factory function.
127
+ * @return {Object} factory.fixed An object map containing the fixed prototypes.
128
+ * @return {Function} factory.methods Add methods to the methods prototype. Chainable.
129
+ * @return {Function} factory.state Add properties to the state prototype. Chainable.
130
+ * @return {Function} factory.enclose Add or replace the closure prototype. Not chainable.
131
+ */
132
+ var stampit = function stampit(methods, state, enclose) {
133
+ var fixed = {
134
+ methods: methods || {},
135
+ state: state ?
136
+ JSON.parse(stringify(state)) :
137
+ {},
138
+ enclose: enclose
139
+ },
140
+
141
+ factory = function factory(properties, enclose) {
142
+ var instance = mixIn(create(fixed.methods || {}),
143
+ fixed.state, properties),
144
+ alt;
145
+
146
+ if (typeof fixed.enclose === 'function') {
147
+ alt = fixed.enclose.call(instance);
148
+ }
149
+
150
+ if (typeof enclose === 'function') {
151
+ alt = enclose.call(alt || instance);
152
+ }
153
+
154
+ return alt || instance;
155
+ };
156
+
157
+ return mixIn(factory, {
158
+ create: factory,
159
+ fixed: fixed,
160
+ methods: function () {
161
+ var obj = fixed.methods || {},
162
+ args = [obj].concat([].slice.call(arguments));
163
+ fixed.methods = mixIn.apply(this, args);
164
+ return this;
165
+ },
166
+ state: function (state) {
167
+ var obj = fixed.state || {},
168
+ args = [obj].concat([].slice.call(arguments));
169
+ fixed.state = mixIn.apply(this, args);
170
+ return this;
171
+ },
172
+ enclose: function (enclose) {
173
+ fixed.enclose = enclose;
174
+ return this;
175
+ }
176
+ });
177
+ };
178
+
179
+ /**
180
+ * Take two or more factories produced from stampit() and
181
+ * combine them to produce a new factory. Combining overrides
182
+ * properties with last-in priority.
183
+ *
184
+ * @param {...Function} factory A factory produced by stampit().
185
+ * @return {Function} A new stampit factory composed from arguments.
186
+ */
187
+ var compose = function compose() {
188
+ var args = [].slice.call(arguments),
189
+ initFunctions = [],
190
+ obj = stampit(),
191
+ props = ['methods', 'state'];
192
+
193
+ forEach(args, function (source) {
194
+ if (source) {
195
+ forEach(props, function (prop) {
196
+ if (source.fixed[prop]) {
197
+ obj.fixed[prop] = mixIn(obj.fixed[prop],
198
+ source.fixed[prop]);
199
+ }
200
+ });
201
+
202
+ if (typeof source.fixed.enclose === 'function') {
203
+ initFunctions.push(source.fixed.enclose);
204
+ }
205
+ }
206
+ });
207
+
208
+ return stampit(obj.fixed.methods, obj.fixed.state, function () {
209
+ forEach(initFunctions, bind(function (fn) {
210
+ fn.call(this);
211
+ }, this));
212
+ });
213
+ };
214
+
215
+ indexOf();
216
+
217
+ module.exports = mixIn(stampit, {
218
+ compose: compose,
219
+ /**
220
+ * Alias for mixIn
221
+ */
222
+ extend: mixIn,
223
+ /**
224
+ * Take a destination object followed by one or more source objects,
225
+ * and copy the source object properties to the destination object,
226
+ * with last in priority overrides.
227
+ * @param {Object} destination An object to copy properties to.
228
+ * @param {...Object} source An object to copy properties from.
229
+ * @returns {Object}
230
+ */
231
+ mixIn: mixIn
232
+ });
233
+
234
+ },{"mout/array/forEach":1,"mout/function/bind":2,"mout/object/mixIn":5,"./indexof":3,"json-stringify-safe":6}],6:[function(require,module,exports){
235
+ module.exports = stringify;
236
+
237
+ function getSerialize (fn, decycle) {
238
+ var seen = [];
239
+ decycle = decycle || function(key, value) {
240
+ return '[Circular]';
241
+ };
242
+ return function(key, value) {
243
+ var ret = value;
244
+ if (typeof value === 'object' && value) {
245
+ if (seen.indexOf(value) !== -1)
246
+ ret = decycle(key, value);
247
+ else
248
+ seen.push(value);
249
+ }
250
+ if (fn) ret = fn(key, ret);
251
+ return ret;
252
+ }
253
+ }
254
+
255
+ function stringify(obj, fn, spaces, decycle) {
256
+ return JSON.stringify(obj, getSerialize(fn, decycle), spaces);
257
+ }
258
+
259
+ stringify.getSerialize = getSerialize;
260
+
261
+ },{}],5:[function(require,module,exports){
262
+ var forOwn = require('./forOwn');
263
+
264
+ /**
265
+ * Combine properties from all the objects into first one.
266
+ * - This method affects target object in place, if you want to create a new Object pass an empty object as first param.
267
+ * @param {object} target Target Object
268
+ * @param {...object} objects Objects to be combined (0...n objects).
269
+ * @return {object} Target Object.
270
+ */
271
+ function mixIn(target, objects){
272
+ var i = 0,
273
+ n = arguments.length,
274
+ obj;
275
+ while(++i < n){
276
+ obj = arguments[i];
277
+ if (obj != null) {
278
+ forOwn(obj, copyProp, target);
279
+ }
280
+ }
281
+ return target;
282
+ }
283
+
284
+ function copyProp(val, key){
285
+ this[key] = val;
286
+ }
287
+
288
+ module.exports = mixIn;
289
+
290
+
291
+ },{"./forOwn":7}],7:[function(require,module,exports){
292
+ var hasOwn = require('./hasOwn');
293
+ var forIn = require('./forIn');
294
+
295
+ /**
296
+ * Similar to Array/forEach but works over object properties and fixes Don't
297
+ * Enum bug on IE.
298
+ * based on: http://whattheheadsaid.com/2010/10/a-safer-object-keys-compatibility-implementation
299
+ */
300
+ function forOwn(obj, fn, thisObj){
301
+ forIn(obj, function(val, key){
302
+ if (hasOwn(obj, key)) {
303
+ return fn.call(thisObj, obj[key], key, obj);
304
+ }
305
+ });
306
+ }
307
+
308
+ module.exports = forOwn;
309
+
310
+
311
+
312
+ },{"./hasOwn":8,"./forIn":9}],8:[function(require,module,exports){
313
+
314
+
315
+ /**
316
+ * Safer Object.hasOwnProperty
317
+ */
318
+ function hasOwn(obj, prop){
319
+ return Object.prototype.hasOwnProperty.call(obj, prop);
320
+ }
321
+
322
+ module.exports = hasOwn;
323
+
324
+
325
+
326
+ },{}],9:[function(require,module,exports){
327
+
328
+
329
+ var _hasDontEnumBug,
330
+ _dontEnums;
331
+
332
+ function checkDontEnum(){
333
+ _dontEnums = [
334
+ 'toString',
335
+ 'toLocaleString',
336
+ 'valueOf',
337
+ 'hasOwnProperty',
338
+ 'isPrototypeOf',
339
+ 'propertyIsEnumerable',
340
+ 'constructor'
341
+ ];
342
+
343
+ _hasDontEnumBug = true;
344
+
345
+ for (var key in {'toString': null}) {
346
+ _hasDontEnumBug = false;
347
+ }
348
+ }
349
+
350
+ /**
351
+ * Similar to Array/forEach but works over object properties and fixes Don't
352
+ * Enum bug on IE.
353
+ * based on: http://whattheheadsaid.com/2010/10/a-safer-object-keys-compatibility-implementation
354
+ */
355
+ function forIn(obj, fn, thisObj){
356
+ var key, i = 0;
357
+ // no need to check if argument is a real object that way we can use
358
+ // it for arrays, functions, date, etc.
359
+
360
+ //post-pone check till needed
361
+ if (_hasDontEnumBug == null) checkDontEnum();
362
+
363
+ for (key in obj) {
364
+ if (exec(fn, obj, key, thisObj) === false) {
365
+ break;
366
+ }
367
+ }
368
+
369
+ if (_hasDontEnumBug) {
370
+ while (key = _dontEnums[i++]) {
371
+ // since we aren't using hasOwn check we need to make sure the
372
+ // property was overwritten
373
+ if (obj[key] !== Object.prototype[key]) {
374
+ if (exec(fn, obj, key, thisObj) === false) {
375
+ break;
376
+ }
377
+ }
378
+ }
379
+ }
380
+ }
381
+
382
+ function exec(fn, obj, key, thisObj){
383
+ return fn.call(thisObj, obj[key], key, obj);
384
+ }
385
+
386
+ module.exports = forIn;
387
+
388
+
389
+
390
+ },{}]},{},[4])(4)
391
+ });
392
+ ;
metadata ADDED
@@ -0,0 +1,126 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: ende
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Heitor Salazar
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2013-08-29 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: '1.3'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: '1.3'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ description: A modular web application engine for rails. Using aurajs and indemma
42
+ by default. the goal is to provideseamlessly integrstion with rails and popular
43
+ rails engines, such as devise.
44
+ email:
45
+ - heitorsalazar@gmail.com
46
+ executables: []
47
+ extensions: []
48
+ extra_rdoc_files: []
49
+ files:
50
+ - .gitignore
51
+ - Gemfile
52
+ - README.md
53
+ - Rakefile
54
+ - WTFP-LICENSE
55
+ - component.json
56
+ - ende.gemspec
57
+ - lib/assets/.gitkeep
58
+ - lib/assets/javascripts/aura/extensions/devise.js.coffee
59
+ - lib/assets/javascripts/aura/extensions/loader.js.coffee
60
+ - lib/assets/javascripts/aura/extensions/mediator.js
61
+ - lib/assets/javascripts/aura/extensions/models.js.coffee.erb
62
+ - lib/assets/javascripts/aura/extensions/rivets.js.coffee
63
+ - lib/assets/javascripts/aura/extensions/states.js.coffee
64
+ - lib/assets/javascripts/aura/extensions/widget/eventable.js.coffee
65
+ - lib/assets/javascripts/aura/extensions/widget/lifecycleable.js.coffee
66
+ - lib/assets/javascripts/config/initializers/jquery.js.coffee
67
+ - lib/assets/javascripts/config/initializers/load_components.js.coffee
68
+ - lib/assets/javascripts/config/initializers/requirejs.js.coffee
69
+ - lib/assets/javascripts/ende.js.coffee
70
+ - lib/assets/javascripts/widgets/authenticator/main.js.coffee
71
+ - lib/assets/javascripts/widgets/authenticator/presenter.js.coffee
72
+ - lib/assets/javascripts/widgets/authenticator/states/default.html
73
+ - lib/assets/javascripts/widgets/authenticator/states/index.js.coffee
74
+ - lib/assets/javascripts/widgets/authenticator/states/passwords.html
75
+ - lib/assets/javascripts/widgets/list/main.js.coffee
76
+ - lib/assets/javascripts/widgets/list/presenter.js.coffee
77
+ - lib/assets/javascripts/widgets/list/states/default.html
78
+ - lib/assets/javascripts/widgets/list/states/index.js.coffee
79
+ - lib/assets/javascripts/widgets/viewer/main.js.coffee
80
+ - lib/assets/javascripts/widgets/viewer/presenter.js.coffee
81
+ - lib/assets/javascripts/widgets/viewer/states/default.html
82
+ - lib/assets/javascripts/widgets/viewer/states/index.js.coffee
83
+ - lib/assets/stylesheets/application/modules/authenticator.css.styl
84
+ - lib/assets/stylesheets/application/modules/widgets/structure/list.css.styl
85
+ - lib/assets/stylesheets/application/modules/widgets/structure/viewer.css.styl
86
+ - lib/assets/stylesheets/application/modules/widgets/structure/widget.css.styl
87
+ - lib/assets/stylesheets/filter.styl
88
+ - lib/assets/stylesheets/helpers/button.styl
89
+ - lib/assets/stylesheets/helpers/general.styl
90
+ - lib/assets/stylesheets/helpers/index.styl
91
+ - lib/assets/stylesheets/helpers/link.styl
92
+ - lib/assets/stylesheets/helpers/url.styl
93
+ - lib/assets/stylesheets/modules/button.styl
94
+ - lib/assets/stylesheets/sprite.styl
95
+ - lib/assets/stylesheets/ssprites.styl
96
+ - lib/ende.rb
97
+ - lib/ende/version.rb
98
+ - lib/tasks/.gitkeep
99
+ - lib/tasks/component.thor
100
+ - lib/tasks/sprite.thor
101
+ - vendor/assets/javascripts/stampit/stampit.js
102
+ homepage: ''
103
+ licenses:
104
+ - WTFPL
105
+ metadata: {}
106
+ post_install_message:
107
+ rdoc_options: []
108
+ require_paths:
109
+ - lib
110
+ required_ruby_version: !ruby/object:Gem::Requirement
111
+ requirements:
112
+ - - '>='
113
+ - !ruby/object:Gem::Version
114
+ version: '0'
115
+ required_rubygems_version: !ruby/object:Gem::Requirement
116
+ requirements:
117
+ - - '>='
118
+ - !ruby/object:Gem::Version
119
+ version: '0'
120
+ requirements: []
121
+ rubyforge_project:
122
+ rubygems_version: 2.0.3
123
+ signing_key:
124
+ specification_version: 4
125
+ summary: Endë (core, middle) a web application engine for rails with aurajs.
126
+ test_files: []