tao_on_rails 0.10.0 → 1.0.0.beta.1

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 (51) hide show
  1. checksums.yaml +4 -4
  2. data/lib/generators/tao/component/component_generator.rb +2 -12
  3. data/lib/generators/tao/install/install_generator.rb +11 -9
  4. data/lib/generators/tao/install/templates/app/views/layouts/application.html.erb +0 -1
  5. data/lib/tao_on_rails/action_view/helpers.rb +1 -1
  6. data/lib/tao_on_rails/components/base.rb +10 -3
  7. data/lib/tao_on_rails/engine.rb +0 -4
  8. data/lib/tao_on_rails/version.rb +1 -1
  9. metadata +7 -133
  10. data/lib/assets/javascripts/tao/application.coffee +0 -86
  11. data/lib/assets/javascripts/tao/attribute_manager.coffee +0 -94
  12. data/lib/assets/javascripts/tao/component.coffee +0 -175
  13. data/lib/assets/javascripts/tao/helpers.coffee +0 -34
  14. data/lib/assets/javascripts/tao/index.coffee +0 -14
  15. data/lib/assets/javascripts/tao/module.coffee +0 -93
  16. data/lib/assets/javascripts/tao/page.coffee +0 -9
  17. data/lib/assets/stylesheets/tao.scss +0 -3
  18. data/lib/generators/tao/assets/USAGE +0 -18
  19. data/lib/generators/tao/assets/assets_generator.rb +0 -8
  20. data/lib/generators/tao/channel/USAGE +0 -9
  21. data/lib/generators/tao/channel/channel_generator.rb +0 -17
  22. data/lib/generators/tao/channel/templates/channel.coffee.erb +0 -20
  23. data/lib/generators/tao/channel/templates/channel.rb.erb +0 -13
  24. data/lib/generators/tao/coffee/USAGE +0 -15
  25. data/lib/generators/tao/coffee/coffee_generator.rb +0 -27
  26. data/lib/generators/tao/coffee/templates/coffee.erb +0 -14
  27. data/lib/generators/tao/component/templates/component.coffee.erb +0 -5
  28. data/lib/generators/tao/component/templates/component.scss.erb +0 -3
  29. data/lib/generators/tao/controller/USAGE +0 -8
  30. data/lib/generators/tao/controller/controller_generator.rb +0 -20
  31. data/lib/generators/tao/controller/templates/controller.rb.erb +0 -57
  32. data/lib/generators/tao/locale/USAGE +0 -11
  33. data/lib/generators/tao/locale/locale_generator.rb +0 -34
  34. data/lib/generators/tao/locale/templates/model.yml.erb +0 -7
  35. data/lib/generators/tao/sass/USAGE +0 -15
  36. data/lib/generators/tao/sass/sass_generator.rb +0 -27
  37. data/lib/generators/tao/sass/templates/sass.erb +0 -3
  38. data/lib/generators/tao/scaffold/USAGE +0 -22
  39. data/lib/generators/tao/scaffold/scaffold_generator.rb +0 -16
  40. data/lib/generators/tao/view/USAGE +0 -9
  41. data/lib/generators/tao/view/templates/create.js.coffee +0 -5
  42. data/lib/generators/tao/view/templates/destroy.js.coffee +0 -2
  43. data/lib/generators/tao/view/templates/edit.html.erb +0 -1
  44. data/lib/generators/tao/view/templates/index.html.erb +0 -1
  45. data/lib/generators/tao/view/templates/new.html.erb +0 -1
  46. data/lib/generators/tao/view/templates/show.html.erb +0 -1
  47. data/lib/generators/tao/view/templates/update.js.coffee +0 -5
  48. data/lib/generators/tao/view/view_generator.rb +0 -38
  49. data/vendor/assets/javascripts/polyfills/custom-elements.js +0 -68
  50. data/vendor/assets/javascripts/polyfills/index.coffee +0 -7
  51. data/vendor/assets/javascripts/polyfills/native-shim.coffee +0 -117
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 9bafebffce03548b6276eaab7c9af6f5cf015fd3
4
- data.tar.gz: 02f27e9957ae1e1387420e4f1d85ccbcdf5d40d5
3
+ metadata.gz: 5ba89a2aca102b14a98c51bcf0c5a57075cfdf34
4
+ data.tar.gz: dbadc3a082ab9c79cb00aa6ada0a786c445a1eb8
5
5
  SHA512:
6
- metadata.gz: b3f076acc51ff5ae2f085332db2f13983824063ab03ecfa2fb4410324c80c764b6706b0bfda767cc3ca30ac0b7f21ac633e12e735d520c242b0691f3eaebbea2
7
- data.tar.gz: 9d08e93ae5ef79aa4214c8ad0a9a4aedb2a5e2bbc236c67ed2870fbfa74f7e487576b72027cb98afe934e624c3fce4be639456d60f73705cd3a8247f862e58e2
6
+ metadata.gz: e349016c0cf23a7877da2fb3215c346749f84483f50278a997eef1e0d9c5ccf8d68899813bf561fcd65faf88aef69cb69bd8819a7193ab3dce1713855d84f813
7
+ data.tar.gz: d70070f3f4b1523e8ca62baf77b54475f81f962374d1451506708b6a6614d351684d8844a7d1ecb98bdcd7935fce4d05e443c6165fffaf80f16a25501c52fa53
@@ -1,3 +1,5 @@
1
+ require 'rails/generators'
2
+
1
3
  module Tao
2
4
  module Generators
3
5
 
@@ -6,23 +8,11 @@ module Tao
6
8
 
7
9
  check_class_collision suffix: "Component"
8
10
 
9
- class_option :variants, type: :array, default: [], desc: "Generate assets for different variants"
10
-
11
11
  attr_reader :component_name
12
12
 
13
13
  def create_component_file
14
14
  @component_name = class_name.underscore.split('/').map(&:singularize).join('_')
15
15
  template "component.rb.erb", File.join('app/components', class_path, "#{file_name}_component.rb")
16
-
17
- if (variants = options[:variants]).any?
18
- variants.each do |variant|
19
- template "component.coffee.erb", File.join('app/assets/javascripts/', variant, class_path, "components/#{file_name}.coffee")
20
- template "component.scss.erb", File.join('app/assets/stylesheets/', variant, class_path, "components/#{file_name}.scss")
21
- end
22
- else
23
- template "component.coffee.erb", File.join('app/assets/javascripts/', class_path, "components/#{file_name}.coffee")
24
- template "component.scss.erb", File.join('app/assets/stylesheets/', class_path, "components/#{file_name}.scss")
25
- end
26
16
  end
27
17
 
28
18
  end
@@ -1,3 +1,5 @@
1
+ require 'rails/generators'
2
+
1
3
  module Tao
2
4
  module Generators
3
5
  class InstallGenerator < Rails::Generators::Base
@@ -8,15 +10,15 @@ module Tao
8
10
 
9
11
  gem 'tao_on_rails'
10
12
 
11
- remove_file 'app/assets/javascripts/cable.js'
12
- remove_file 'app/assets/javascripts/application.js'
13
- remove_file 'app/assets/stylesheets/application.css'
14
-
15
- template 'app/assets/javascripts/application.coffee'
16
- template 'app/assets/stylesheets/application.scss'
17
- template 'app/assets/stylesheets/_globals.scss'
18
-
19
- template 'app/views/layouts/application.html.erb', force: true
13
+ # remove_file 'app/assets/javascripts/cable.js'
14
+ # remove_file 'app/assets/javascripts/application.js'
15
+ # remove_file 'app/assets/stylesheets/application.css'
16
+ #
17
+ # template 'app/assets/javascripts/application.coffee'
18
+ # template 'app/assets/stylesheets/application.scss'
19
+ # template 'app/assets/stylesheets/_globals.scss'
20
+ #
21
+ # template 'app/views/layouts/application.html.erb', force: true
20
22
 
21
23
  template 'app/components/application_component.rb'
22
24
  end
@@ -17,5 +17,4 @@
17
17
  <%%= yield %>
18
18
  <%% end %>
19
19
  </body>
20
- </body>
21
20
  </html>
@@ -30,7 +30,7 @@ module TaoOnRails
30
30
  root.join('lib/**/components/**/*.rb'),
31
31
  root.join('app/**/components/**/*.rb')
32
32
  ]).each do |component|
33
- require_dependency component
33
+ require component
34
34
  end
35
35
  end
36
36
 
@@ -39,8 +39,15 @@ module TaoOnRails
39
39
  end
40
40
 
41
41
  def translate key, options = {}
42
- i18n_scope = self.class.name.underscore.split('/').join('.').gsub(/(.+)_component$/, '\1')
43
- I18n.t(key, options.merge!(scope: i18n_scope)).presence
42
+ keys = [].tap do |result|
43
+ component_class = self.class
44
+ until component_class == TaoOnRails::Components::Base
45
+ scope = component_class.name.underscore.split('/').join('.').gsub(/(.+)_component$/, '\1')
46
+ result << "#{scope}.#{key}".to_sym
47
+ component_class = component_class.superclass
48
+ end
49
+ end
50
+ I18n.t(keys.shift, options.merge!(default: keys))
44
51
  end
45
52
  alias_method :t, :translate
46
53
 
@@ -117,7 +124,7 @@ module TaoOnRails
117
124
  end
118
125
 
119
126
  def find_template(name = template_name)
120
- view.lookup_context.find_all(name, template_paths, true, template_keys).first
127
+ view.lookup_context.find_all(name, template_paths, true, template_keys, formats: [:html]).first
121
128
  end
122
129
 
123
130
  def template_keys
@@ -1,7 +1,3 @@
1
- require 'turbolinks'
2
- require 'jquery-rails'
3
- require 'lodash-rails'
4
-
5
1
  module TaoOnRails
6
2
  class Engine < Rails::Engine
7
3
 
@@ -1,3 +1,3 @@
1
1
  module TaoOnRails
2
- VERSION = "0.10.0"
2
+ VERSION = "1.0.0.beta.1"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tao_on_rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.0
4
+ version: 1.0.0.beta.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Siyuan Liu
@@ -9,50 +9,8 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2017-09-03 00:00:00.000000000 Z
12
+ date: 2018-01-06 00:00:00.000000000 Z
13
13
  dependencies:
14
- - !ruby/object:Gem::Dependency
15
- name: turbolinks
16
- requirement: !ruby/object:Gem::Requirement
17
- requirements:
18
- - - "~>"
19
- - !ruby/object:Gem::Version
20
- version: 5.0.1
21
- type: :runtime
22
- prerelease: false
23
- version_requirements: !ruby/object:Gem::Requirement
24
- requirements:
25
- - - "~>"
26
- - !ruby/object:Gem::Version
27
- version: 5.0.1
28
- - !ruby/object:Gem::Dependency
29
- name: jquery-rails
30
- requirement: !ruby/object:Gem::Requirement
31
- requirements:
32
- - - "~>"
33
- - !ruby/object:Gem::Version
34
- version: 4.3.1
35
- type: :runtime
36
- prerelease: false
37
- version_requirements: !ruby/object:Gem::Requirement
38
- requirements:
39
- - - "~>"
40
- - !ruby/object:Gem::Version
41
- version: 4.3.1
42
- - !ruby/object:Gem::Dependency
43
- name: lodash-rails
44
- requirement: !ruby/object:Gem::Requirement
45
- requirements:
46
- - - "~>"
47
- - !ruby/object:Gem::Version
48
- version: 4.17.4
49
- type: :runtime
50
- prerelease: false
51
- version_requirements: !ruby/object:Gem::Requirement
52
- requirements:
53
- - - "~>"
54
- - !ruby/object:Gem::Version
55
- version: 4.17.4
56
14
  - !ruby/object:Gem::Dependency
57
15
  name: rails
58
16
  requirement: !ruby/object:Gem::Requirement
@@ -62,7 +20,7 @@ dependencies:
62
20
  version: 5.0.0
63
21
  - - "<"
64
22
  - !ruby/object:Gem::Version
65
- version: '5.2'
23
+ version: '5.3'
66
24
  type: :runtime
67
25
  prerelease: false
68
26
  version_requirements: !ruby/object:Gem::Requirement
@@ -72,7 +30,7 @@ dependencies:
72
30
  version: 5.0.0
73
31
  - - "<"
74
32
  - !ruby/object:Gem::Version
75
- version: '5.2'
33
+ version: '5.3'
76
34
  - !ruby/object:Gem::Dependency
77
35
  name: sqlite3
78
36
  requirement: !ruby/object:Gem::Requirement
@@ -87,48 +45,6 @@ dependencies:
87
45
  - - ">="
88
46
  - !ruby/object:Gem::Version
89
47
  version: '0'
90
- - !ruby/object:Gem::Dependency
91
- name: blade
92
- requirement: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - "~>"
95
- - !ruby/object:Gem::Version
96
- version: 0.7.0
97
- type: :development
98
- prerelease: false
99
- version_requirements: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - "~>"
102
- - !ruby/object:Gem::Version
103
- version: 0.7.0
104
- - !ruby/object:Gem::Dependency
105
- name: blade-sauce_labs_plugin
106
- requirement: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - "~>"
109
- - !ruby/object:Gem::Version
110
- version: 0.7.1
111
- type: :development
112
- prerelease: false
113
- version_requirements: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - "~>"
116
- - !ruby/object:Gem::Version
117
- version: 0.7.1
118
- - !ruby/object:Gem::Dependency
119
- name: selenium-webdriver
120
- requirement: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - "~>"
123
- - !ruby/object:Gem::Version
124
- version: 3.2.0
125
- type: :development
126
- prerelease: false
127
- version_requirements: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - "~>"
130
- - !ruby/object:Gem::Version
131
- version: 3.2.0
132
48
  - !ruby/object:Gem::Dependency
133
49
  name: mocha
134
50
  requirement: !ruby/object:Gem::Requirement
@@ -156,31 +72,9 @@ files:
156
72
  - LICENSE
157
73
  - README.md
158
74
  - Rakefile
159
- - lib/assets/javascripts/tao/application.coffee
160
- - lib/assets/javascripts/tao/attribute_manager.coffee
161
- - lib/assets/javascripts/tao/component.coffee
162
- - lib/assets/javascripts/tao/helpers.coffee
163
- - lib/assets/javascripts/tao/index.coffee
164
- - lib/assets/javascripts/tao/module.coffee
165
- - lib/assets/javascripts/tao/page.coffee
166
- - lib/assets/stylesheets/tao.scss
167
- - lib/generators/tao/assets/USAGE
168
- - lib/generators/tao/assets/assets_generator.rb
169
- - lib/generators/tao/channel/USAGE
170
- - lib/generators/tao/channel/channel_generator.rb
171
- - lib/generators/tao/channel/templates/channel.coffee.erb
172
- - lib/generators/tao/channel/templates/channel.rb.erb
173
- - lib/generators/tao/coffee/USAGE
174
- - lib/generators/tao/coffee/coffee_generator.rb
175
- - lib/generators/tao/coffee/templates/coffee.erb
176
75
  - lib/generators/tao/component/USAGE
177
76
  - lib/generators/tao/component/component_generator.rb
178
- - lib/generators/tao/component/templates/component.coffee.erb
179
77
  - lib/generators/tao/component/templates/component.rb.erb
180
- - lib/generators/tao/component/templates/component.scss.erb
181
- - lib/generators/tao/controller/USAGE
182
- - lib/generators/tao/controller/controller_generator.rb
183
- - lib/generators/tao/controller/templates/controller.rb.erb
184
78
  - lib/generators/tao/install/USAGE
185
79
  - lib/generators/tao/install/install_generator.rb
186
80
  - lib/generators/tao/install/templates/app/assets/javascripts/application.coffee
@@ -188,32 +82,12 @@ files:
188
82
  - lib/generators/tao/install/templates/app/assets/stylesheets/application.scss
189
83
  - lib/generators/tao/install/templates/app/components/application_component.rb
190
84
  - lib/generators/tao/install/templates/app/views/layouts/application.html.erb
191
- - lib/generators/tao/locale/USAGE
192
- - lib/generators/tao/locale/locale_generator.rb
193
- - lib/generators/tao/locale/templates/model.yml.erb
194
- - lib/generators/tao/sass/USAGE
195
- - lib/generators/tao/sass/sass_generator.rb
196
- - lib/generators/tao/sass/templates/sass.erb
197
- - lib/generators/tao/scaffold/USAGE
198
- - lib/generators/tao/scaffold/scaffold_generator.rb
199
- - lib/generators/tao/view/USAGE
200
- - lib/generators/tao/view/templates/create.js.coffee
201
- - lib/generators/tao/view/templates/destroy.js.coffee
202
- - lib/generators/tao/view/templates/edit.html.erb
203
- - lib/generators/tao/view/templates/index.html.erb
204
- - lib/generators/tao/view/templates/new.html.erb
205
- - lib/generators/tao/view/templates/show.html.erb
206
- - lib/generators/tao/view/templates/update.js.coffee
207
- - lib/generators/tao/view/view_generator.rb
208
85
  - lib/tao_on_rails.rb
209
86
  - lib/tao_on_rails/action_view/helpers.rb
210
87
  - lib/tao_on_rails/components/base.rb
211
88
  - lib/tao_on_rails/components/page_component.rb
212
89
  - lib/tao_on_rails/engine.rb
213
90
  - lib/tao_on_rails/version.rb
214
- - vendor/assets/javascripts/polyfills/custom-elements.js
215
- - vendor/assets/javascripts/polyfills/index.coffee
216
- - vendor/assets/javascripts/polyfills/native-shim.coffee
217
91
  homepage: https://github.com/mycolorway/tao_on_rails
218
92
  licenses:
219
93
  - MIT
@@ -229,12 +103,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
229
103
  version: 2.3.1
230
104
  required_rubygems_version: !ruby/object:Gem::Requirement
231
105
  requirements:
232
- - - ">="
106
+ - - ">"
233
107
  - !ruby/object:Gem::Version
234
- version: '0'
108
+ version: 1.3.1
235
109
  requirements: []
236
110
  rubyforge_project:
237
- rubygems_version: 2.6.11
111
+ rubygems_version: 2.6.14
238
112
  signing_key:
239
113
  specification_version: 4
240
114
  summary: The missing frontend solution for Rails project
@@ -1,86 +0,0 @@
1
- #= require ./module
2
-
3
- class TaoApplication extends TaoModule
4
-
5
- @_initializers: {}
6
-
7
- @initializer: (name, callback) ->
8
- @_initializers[name] = callback
9
-
10
- @removeInitializer: (name) ->
11
- @_initializers[name] = null
12
-
13
- _init: ->
14
- @_initGon()
15
- @_initI18n()
16
- @_initUjs()
17
- @_initTurbolinks()
18
-
19
- callback?(@) for name, callback of @constructor._initializers
20
-
21
- _initGon: ->
22
- return unless window.gon
23
- $.extend @, window.gon
24
- window.gon = null
25
-
26
- _initUjs: ->
27
- $(document).on "ajax:before", 'a[data-remote]', ->
28
- $link = $ @
29
- return false if $link.hasClass('disabled')
30
- $link.addClass 'disabled'
31
- .on "ajax:complete", 'a[data-remote]', ->
32
- $(@).removeClass 'disabled'
33
-
34
- _initI18n: ->
35
- I18n.locale = @locale if window.I18n && @locale
36
-
37
- _initPage: ($page) ->
38
- window.currentPage = @currentPage = $page[0]
39
-
40
- _initTurbolinks: ->
41
- $(document).on 'turbolinks:before-visit', (e) =>
42
- if @currentPage?.trigger?('before-leave') == false
43
- e.preventDefault()
44
- return
45
-
46
- @trigger 'before-page-visit', [e.originalEvent?.data.url]
47
-
48
- .on 'turbolinks:request-start', (e) =>
49
- @trigger 'page-request-start', [e.originalEvent?.data.xhr]
50
-
51
- .on 'turbolinks:visit', (e) =>
52
- @trigger 'page-visit', [e.originalEvent?.data.url]
53
-
54
- .on 'turbolinks:before-cache', (e) =>
55
- @trigger 'before-page-cache', [@currentPage]
56
- $(@currentPage).find('[tao-id]').each (i, el) ->
57
- el.beforeCache?()
58
- null
59
- @currentPage?.beforeCache?()
60
- window.currentPage = @currentPage = null
61
-
62
- .on 'turbolinks:request-end', (e) =>
63
- @trigger 'page-request-end', [e.originalEvent?.data.xhr]
64
-
65
- .on 'turbolinks:before-render', (e) =>
66
- # turbolinks render won't trigger patching of customElements polyfills
67
- if customElements._internals
68
- customElements._internals.disconnectTree document.body
69
-
70
- @trigger 'before-page-render', [$ e.originalEvent?.data.newBody]
71
-
72
- .on 'turbolinks:render', (e) =>
73
- # turbolinks render won't trigger patching of customElements polyfills
74
- if customElements._internals
75
- customElements._internals.connectTree document.body
76
-
77
- @trigger 'page-render', [$('body > .tao-page')]
78
-
79
- .on 'turbolinks:load', (e) =>
80
- $page = $ 'body > .tao-page'
81
- return unless $page.length > 0
82
- @_initGon()
83
- @_initPage $page
84
- @trigger 'page-load', [@currentPage]
85
-
86
- Tao.Application = window.TaoApplication = TaoApplication
@@ -1,94 +0,0 @@
1
- #= require ./module
2
-
3
- manager = null
4
-
5
- class TaoAttributeManager extends TaoModule
6
-
7
- @defaultOptions =
8
- type: 'string'
9
-
10
- @getManager: ->
11
- manager ||= new TaoAttributeManager()
12
-
13
- @getAttribute: (element, name, options) ->
14
- manager = @getManager()
15
- options = _.extend {}, @defaultOptions, options
16
- manager._attributes[_.camelCase(options.type)]?.get element, name, options
17
-
18
- @setAttribute: (element, name, val, options) ->
19
- manager = @getManager()
20
- options = _.extend {}, @defaultOptions, options
21
- manager._attributes[_.camelCase(options.type)]?.set element, name, val, options
22
-
23
- _attributes: {}
24
-
25
- @registerAttribute: (type, config) ->
26
- if _.isString config
27
- @::_attributes[type] = @::_attributes[config]
28
- else
29
- @::_attributes[type] = config
30
-
31
- @registerAttribute 'string',
32
- get: (element, name, options) ->
33
- element.getAttribute(name) || options.default || ''
34
- set: (element, name, val, options) ->
35
- element.setAttribute(name, val.toString())
36
-
37
- @registerAttribute 'number',
38
- get: (element, name, options) ->
39
- value = parseFloat element.getAttribute(name)
40
- if _.isNaN value
41
- if _.isNumber(options.default) then options.default else null
42
- else
43
- value
44
- set: (element, name, val, options) ->
45
- element.setAttribute(name, val.toString())
46
-
47
- @registerAttribute 'boolean',
48
- get: (element, name, options) ->
49
- element.hasAttribute(name)
50
- set: (element, name, val, options) ->
51
- if val
52
- element.setAttribute name, ''
53
- else
54
- element.removeAttribute name
55
-
56
- @registerAttribute 'bool', 'boolean'
57
-
58
- @registerAttribute 'hash',
59
- get: (element, name, options) ->
60
- value = element.getAttribute name
61
- if _.isString value
62
- try
63
- JSON.parse value
64
- catch e
65
- options.default || null
66
- else
67
- options.default || null
68
- set: (element, name, val, options) ->
69
- val = try
70
- JSON.stringify val
71
- catch e
72
- '{}'
73
- element.setAttribute name, val
74
-
75
- @registerAttribute 'object', 'hash'
76
-
77
- @registerAttribute 'array',
78
- get: (element, name, options) ->
79
- value = element.getAttribute name
80
- if _.isString value
81
- try
82
- JSON.parse value
83
- catch e
84
- options.default || null
85
- else
86
- options.default || null
87
- set: (element, name, val, options) ->
88
- val = try
89
- JSON.stringify val
90
- catch e
91
- '[]'
92
- element.setAttribute name, val
93
-
94
- Tao.AttributeManager = window.TaoAttributeManager = TaoAttributeManager