ende 0.4.25 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (87) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -2
  3. data/component.json +0 -1
  4. data/lib/assets/javascripts/aura/extensions/domain.js.coffee +55 -0
  5. data/lib/assets/javascripts/aura/extensions/models.js.coffee.erb +13 -4
  6. data/lib/assets/javascripts/aura/extensions/platform.js.coffee +8 -2
  7. data/lib/assets/javascripts/aura/extensions/rivets.js.coffee +10 -21
  8. data/lib/assets/javascripts/aura/extensions/stamps/stampit.js +242 -568
  9. data/lib/assets/javascripts/aura/extensions/widget/composable.js.coffee +18 -35
  10. data/lib/assets/javascripts/config/load_components.js.coffee +7 -5
  11. data/lib/assets/javascripts/widgets/attachable/main.js.coffee +77 -0
  12. data/lib/assets/javascripts/widgets/list/presenter.js.coffee +4 -5
  13. data/lib/assets/javascripts/widgets/support/adapters/olark.js +1 -1
  14. data/lib/assets/javascripts/widgets/tray/main.js.coffee +22 -16
  15. data/lib/assets/javascripts/widgets/viewer/main.js.coffee +4 -8
  16. data/lib/assets/javascripts/widgets/viewer/plugins/scopable.js.coffee +1 -7
  17. data/lib/ende/version.rb +1 -1
  18. data/vendor/assets/components/ende_build.js +463 -5150
  19. data/vendor/components/indefinido-indemma/build/development.js +2 -2
  20. data/vendor/components/indefinido-indemma/build/release.js +4 -5
  21. data/vendor/components/indefinido-indemma/build/test.js +2 -2
  22. data/vendor/components/indefinido-indemma/component.json +1 -0
  23. data/vendor/components/indefinido-indemma/lib/record/restfulable.js +2 -3
  24. data/vendor/components/indefinido-indemma/lib/record/validatable.js +2 -2
  25. data/vendor/components/indefinido-indemma/src/lib/record/restfulable.coffee +3 -9
  26. data/vendor/components/indefinido-indemma/src/lib/record/validatable.coffee +3 -3
  27. data/vendor/components/indefinido-observable/component.json +3 -7
  28. data/vendor/components/indefinido-observable/lib/observable.js +19 -9
  29. metadata +4 -60
  30. data/build/build.css +0 -111
  31. data/vendor/assets/javascripts/stampit/stampit.js +0 -392
  32. data/vendor/components/indefinido-observable/.gitignore +0 -15
  33. data/vendor/components/indefinido-observable/.ruby-gemset +0 -1
  34. data/vendor/components/indefinido-observable/.ruby-version +0 -1
  35. data/vendor/components/indefinido-observable/Gemfile +0 -13
  36. data/vendor/components/indefinido-observable/Guardfile +0 -39
  37. data/vendor/components/indefinido-observable/History.md +0 -0
  38. data/vendor/components/indefinido-observable/Readme.md +0 -116
  39. data/vendor/components/indefinido-observable/build/build.js +0 -14798
  40. data/vendor/components/indefinido-observable/build/development.js +0 -339
  41. data/vendor/components/indefinido-observable/build/release.js +0 -14937
  42. data/vendor/components/indefinido-observable/build/test.js +0 -339
  43. data/vendor/components/indefinido-observable/components/chaijs-chai/component.json +0 -46
  44. data/vendor/components/indefinido-observable/components/chaijs-chai/index.js +0 -1
  45. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/assertion.js +0 -132
  46. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/core/assertions.js +0 -1270
  47. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/error.js +0 -60
  48. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/interface/assert.js +0 -1060
  49. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/interface/expect.js +0 -12
  50. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/interface/should.js +0 -76
  51. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/utils/addChainableMethod.js +0 -94
  52. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/utils/addMethod.js +0 -37
  53. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/utils/addProperty.js +0 -40
  54. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/utils/eql.js +0 -124
  55. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/utils/flag.js +0 -32
  56. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/utils/getActual.js +0 -19
  57. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/utils/getEnumerableProperties.js +0 -25
  58. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/utils/getMessage.js +0 -49
  59. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/utils/getName.js +0 -20
  60. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/utils/getPathValue.js +0 -102
  61. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/utils/getProperties.js +0 -35
  62. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/utils/index.js +0 -108
  63. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/utils/inspect.js +0 -316
  64. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/utils/objDisplay.js +0 -48
  65. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/utils/overwriteMethod.js +0 -51
  66. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/utils/overwriteProperty.js +0 -54
  67. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/utils/test.js +0 -26
  68. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/utils/transferFlags.js +0 -44
  69. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai/utils/type.js +0 -45
  70. data/vendor/components/indefinido-observable/components/chaijs-chai/lib/chai.js +0 -79
  71. data/vendor/components/indefinido-observable/components/cjohansen-sinon/sinon.js +0 -4290
  72. data/vendor/components/indefinido-observable/components/component-jquery/component.json +0 -14
  73. data/vendor/components/indefinido-observable/components/component-jquery/index.js +0 -9601
  74. data/vendor/components/indefinido-observable/components/kapit-observe-shim/component.json +0 -11
  75. data/vendor/components/indefinido-observable/components/kapit-observe-utils/component.json +0 -13
  76. data/vendor/components/indefinido-observable/karma.conf.js +0 -92
  77. data/vendor/components/indefinido-observable/spec/legacy/observable_spec.js +0 -126
  78. data/vendor/components/indefinido-observable/spec/observable_spec.js +0 -92
  79. data/vendor/components/indefinido-observable/spec/spec_helper.js +0 -8
  80. data/vendor/components/indefinido-observable/spec/vendor/accessors_spec.js +0 -63
  81. data/vendor/components/indefinido-observable/src/lib/adapters/rivets.js.coffee +0 -15
  82. data/vendor/components/indefinido-observable/src/spec/legacy/observable_spec.coffee +0 -132
  83. data/vendor/components/indefinido-observable/src/spec/observable_spec.coffee +0 -85
  84. data/vendor/components/indefinido-observable/src/spec/spec_helper.coffee +0 -5
  85. data/vendor/components/indefinido-observable/src/spec/vendor/accessors_spec.coffee +0 -59
  86. data/vendor/components/indefinido-observable/vendor/spec/boot.js +0 -104
  87. data/vendor/components/indefinido-observable/vendor/spec/jasmine.js +0 -2054
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c4c332591c8ad5691bbd9636e8571e06c5c922a4
4
- data.tar.gz: e9aba1bc8a89c8dc96a89c3c46385ce7541d608b
3
+ metadata.gz: a8843d7e16a376edd63c63051f9845065fa5a249
4
+ data.tar.gz: 4247af17958890efd76e94a8769d30b34c790dd5
5
5
  SHA512:
6
- metadata.gz: 3d59759fb0beb137055b0a2a3b8f63a97494637fa456e5a80bcf4e59ec36887314ffbf68847ccec7982e467be7b83d9154e5d73a0432fd93a121d7e2331c0d1c
7
- data.tar.gz: a7a77bc28d54956775e29ca23dceaa1bb24c535a54ee6e842b4595c9ed3676c79be6d4a939f13d4f458b2e8f374ed77b57eaf992201978434e0048ac55cc2e11
6
+ metadata.gz: 725f239c93ab6ec0690a508d89039d3c3b6de5836c7e83c8457b3f8bc2cdcf5c12ef66b2f5dd92116c23e531f44fe027eb8515487864a4eb946bce99252e44a1
7
+ data.tar.gz: e813e1f050f335a0fa5aa6e295d00b918f6de3de9d6baec109b25d1bc656769a29047db24d0b3ca11b54039f96d938b0f7f65ec27dd3cc74192004dae5429274
data/README.md CHANGED
@@ -5,7 +5,7 @@ endë
5
5
  Summary
6
6
  -------
7
7
 
8
- Endë (core, middle)
8
+ Endë (core, middle) [![Gem Version](https://badge.fury.io/rb/ende.svg)](http://badge.fury.io/rb/ende)
9
9
 
10
10
  A modular web application rails gem. Using aurajs for architecture and indemma for resource management by default.
11
11
 
@@ -35,6 +35,7 @@ Components List
35
35
 
36
36
  _Detailed documentation is comming!_
37
37
 
38
+ - Attachable
38
39
  - Authenticator
39
40
  - Content
40
41
  - Dialog
@@ -59,7 +60,7 @@ Extensions List
59
60
  - Devise
60
61
  - Rivets
61
62
  - Widget
62
- - Napable
63
+ - Napable
63
64
  - Lifecycleable
64
65
  - Eventable
65
66
  - Models
data/component.json CHANGED
@@ -21,7 +21,6 @@
21
21
  },
22
22
  "scripts": [
23
23
  "vendor/assets/javascripts/lennon/lennon.js",
24
- "vendor/assets/javascripts/stampit/stampit.js",
25
24
  "vendor/assets/javascripts/spin/spin.js",
26
25
  "vendor/assets/javascripts/jquery/inview.js",
27
26
  "vendor/assets/javascripts/jquery/inputmask.js",
@@ -0,0 +1,55 @@
1
+ 'use strict'
2
+
3
+ define 'aura/extensions/domain', ->
4
+
5
+ # The purpose of this extension is have a business domain practice
6
+ # integrated with the core application functionality
7
+
8
+ version: '0.1.0'
9
+
10
+ initialize: (application) ->
11
+ {core: {mediator, stamp}} = application
12
+
13
+ eventable = stamp
14
+ on : mediator.on
15
+ off : mediator.off
16
+ once : mediator.once
17
+ many : mediator.many
18
+ emit : mediator.emit
19
+ unlisten: mediator.removeAllListeners
20
+
21
+ domainable = stamp()
22
+
23
+ # application.use('extensions/models').use 'extensions/widget/flows'
24
+ # TODO detect if flows extension and models extension have already been loaded
25
+
26
+ # TODO require domain commands
27
+ application.domain ||= eventable()
28
+
29
+ afterAppStart: (application) ->
30
+ {core: {resourceable: {every: resourceables}, Widgets: {Flow}, stamp, stamps}, domain} = application
31
+
32
+ # TODO disponibilize the resourceables method through the resources extension
33
+ extensions = {}
34
+ for resourceable in resourceables
35
+ resource = resourceable.resource.toString()
36
+
37
+ namespaces = resource.split '/'
38
+ method = namespaces.pop() + 'able'
39
+
40
+ # Create namespaces
41
+ node = extensions
42
+ for namespace in namespaces
43
+ node[namespace] ||= {}
44
+ node = node[namespace]
45
+
46
+ node[method] = resourceable
47
+
48
+ stamp 'resourceables', extensions
49
+
50
+ Flow.compose stamp.compose stamps.resourceables, stamp().enclose -> domain[@name] = @
51
+
52
+
53
+
54
+
55
+
@@ -22,9 +22,10 @@ end
22
22
 
23
23
  'use strict'
24
24
 
25
+
25
26
  root = exports ? this
26
27
 
27
- define 'aura/extensions/models', <%= models_list.to_json %>, (models...) ->
28
+ define 'aura/extensions/models', <%= models_list.to_json %>, (resources...) ->
28
29
 
29
30
  # TODO better require api for indemma
30
31
  indemma = require 'indemma'
@@ -44,10 +45,14 @@ define 'aura/extensions/models', <%= models_list.to_json %>, (models...) ->
44
45
  # inflector outside it
45
46
  require 'indefinido-indemma/vendor/owl/pluralize'
46
47
 
48
+ name: 'resources'
49
+
50
+ version: '0.1.2'
51
+
47
52
  # Extension definition
48
53
  initialize: (application) ->
49
- core = application.core
50
- sandbox = application.sandbox
54
+ {core, sandbox} = application
55
+
51
56
  core.util.inflector =
52
57
  cssify: (sentence) -> sentence.replace /\//, '-'
53
58
  pluralize: indemma.model.pluralize
@@ -72,7 +77,11 @@ define 'aura/extensions/models', <%= models_list.to_json %>, (models...) ->
72
77
 
73
78
  # TODO allow user to create custom definitions before resources
74
79
  # (models) get defined
80
+ # new Aura(inflections: {measures: measures})
75
81
  core.util.inflector.define 'measures', 'measures'
76
82
 
77
83
  # Build all model definitions
78
- core.util._.map models, (model) -> indemma.model.call model
84
+ indemma.model.every = [] # TODO implement this on indemma
85
+ core.util._.map resources, (definition) ->
86
+ resource = indemma.model.call definition
87
+ indemma.model.every.push resource
@@ -1,4 +1,4 @@
1
- 'use strict';
1
+ 'use strict'
2
2
 
3
3
  define 'aura/extensions/platform', ->
4
4
 
@@ -14,4 +14,10 @@ define 'aura/extensions/platform', ->
14
14
  application.core = Object.create application.core, descriptors
15
15
  application.sandbox = Object.create application.sandbox, descriptors
16
16
 
17
- # TODO copy other properties to the main application
17
+ # TODO copy other properties to the main application
18
+
19
+
20
+ # TODO detect aura version and warn for updates
21
+ application.components = {}
22
+ application.components.config = application.config
23
+ application.components.addSource = application.registerWidgetsSource
@@ -185,15 +185,12 @@ define 'aura/extensions/rivets', ['aura/extensions/rivets/formatters'], (formatt
185
185
  rivets.binders.spell ||=
186
186
  publishes: true
187
187
  bind: (el) ->
188
-
189
- @options.publisher ||= (event) =>
188
+ @options.publisher ||= (event) =>
190
189
  value = Rivets.Util.getInputValue @el
191
190
 
192
191
  # TODO more controllable enter handling
193
192
  return if event.which == 13
194
193
 
195
- value += String.fromCharCode event.which || event.keyCode || event.charCode
196
-
197
194
  for formatter in @formatters.slice(0).reverse()
198
195
  args = formatter.split /\s+/
199
196
  id = args.shift()
@@ -204,26 +201,18 @@ define 'aura/extensions/rivets', ['aura/extensions/rivets/formatters'], (formatt
204
201
  @view.config.adapter.publish @model, @keypath, value
205
202
  event.preventDefault()
206
203
 
207
- if window.jQuery?
208
- # TODO Rivets.Util.bindEvent el, 'keypress change', @options.publisher
209
- Rivets.Util.bindEvent el, 'keypress', @options.publisher
210
- Rivets.Util.bindEvent el, 'change' , @publish
211
- else
212
- Rivets.Util.bindEvent el, 'keypress', @options.publisher
213
- Rivets.Util.bindEvent el, 'change' , @publish
204
+ # TODO Rivets.Util.bindEvent el, 'keypress change', @options.publisher
205
+ Rivets.Util.bindEvent el, 'keyup' , @options.publisher
206
+ Rivets.Util.bindEvent el, 'change' , @publish
207
+
214
208
 
215
209
  unbind: (el) ->
216
210
 
217
- if window.jQuery?
218
- # TODO Rivets.Util.unbindEvent el, 'keypress change', @options.publisher
219
- Rivets.Util.unbindEvent el, 'keypress', @options.publisher
220
- Rivets.Util.unbindEvent el, 'change', @publish
221
- else
222
- # TODO Rivets.Util.unbindEvent el, 'change' , @options.publisher
223
- Rivets.Util.unbindEvent el, 'keypress', @options.publisher
224
- Rivets.Util.unbindEvent el, 'change', @publish
211
+ Rivets.Util.unbindEvent el, 'keyup' , @options.publisher
212
+ Rivets.Util.unbindEvent el, 'change', @publish
225
213
 
226
214
  routine: (el, value) ->
215
+
227
216
  if window.jQuery?
228
217
  el = jQuery el
229
218
 
@@ -269,8 +258,8 @@ define 'aura/extensions/rivets', ['aura/extensions/rivets/formatters'], (formatt
269
258
 
270
259
  original_bind.apply rivets, arguments
271
260
 
272
- extend application.sandbox,
273
- view: rivets
261
+ extend application.sandbox, view: rivets
262
+ extend application.core , view: rivets
274
263
 
275
264
  extend application.core.Widgets.Base.prototype,
276
265
  bind: (presentation, options) ->