ende 0.4.25 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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) ->