tao_form 0.2.3 → 1.0.0.beta.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (158) hide show
  1. checksums.yaml +4 -4
  2. data/lib/tao_form/components/select/multiple_result_component.rb +4 -6
  3. data/lib/tao_form/components/select/result_component.rb +4 -6
  4. data/lib/tao_form/components/select_component.rb +3 -7
  5. data/lib/tao_form/inputs/collection_select_input.rb +3 -1
  6. data/lib/tao_form/version.rb +1 -1
  7. data/lib/views/components/tao_form/components/select/_list.html.erb +1 -16
  8. data/lib/views/components/tao_form/components/select/_list_content.html.erb +16 -0
  9. data/lib/views/components/tao_form/components/select/_multiple_result.html.erb +1 -1
  10. metadata +12 -201
  11. data/lib/assets/icons/arrow_down.svg +0 -3
  12. data/lib/assets/icons/arrow_left.svg +0 -3
  13. data/lib/assets/icons/arrow_right.svg +0 -3
  14. data/lib/assets/icons/calendar.svg +0 -3
  15. data/lib/assets/icons/check.svg +0 -3
  16. data/lib/assets/icons/clock.svg +0 -3
  17. data/lib/assets/icons/search.svg +0 -3
  18. data/lib/assets/icons/success.svg +0 -3
  19. data/lib/assets/javascripts/tao/form/element.coffee +0 -16
  20. data/lib/assets/javascripts/tao/form/fields/checkbox.coffee +0 -15
  21. data/lib/assets/javascripts/tao/form/fields/index.coffee +0 -10
  22. data/lib/assets/javascripts/tao/form/fields/moment_picker/element.coffee +0 -38
  23. data/lib/assets/javascripts/tao/form/fields/moment_picker/index.coffee +0 -7
  24. data/lib/assets/javascripts/tao/form/fields/moment_picker/result.coffee +0 -25
  25. data/lib/assets/javascripts/tao/form/fields/moment_picker/segment_list.coffee +0 -14
  26. data/lib/assets/javascripts/tao/form/fields/radio.coffee +0 -14
  27. data/lib/assets/javascripts/tao/form/fields/select/element.coffee +0 -79
  28. data/lib/assets/javascripts/tao/form/fields/select/index.coffee +0 -8
  29. data/lib/assets/javascripts/tao/form/fields/select/list.coffee +0 -103
  30. data/lib/assets/javascripts/tao/form/fields/select/multiple_result.coffee +0 -41
  31. data/lib/assets/javascripts/tao/form/fields/select/result.coffee +0 -39
  32. data/lib/assets/javascripts/tao/form/fields/switch.coffee +0 -14
  33. data/lib/assets/javascripts/tao/form/index.coffee +0 -11
  34. data/lib/assets/javascripts/tao/form/mobile/element.coffee +0 -5
  35. data/lib/assets/javascripts/tao/form/mobile/fields/checkbox.coffee +0 -5
  36. data/lib/assets/javascripts/tao/form/mobile/fields/index.coffee +0 -10
  37. data/lib/assets/javascripts/tao/form/mobile/fields/moment_picker/element.coffee +0 -40
  38. data/lib/assets/javascripts/tao/form/mobile/fields/moment_picker/index.coffee +0 -7
  39. data/lib/assets/javascripts/tao/form/mobile/fields/moment_picker/result.coffee +0 -5
  40. data/lib/assets/javascripts/tao/form/mobile/fields/moment_picker/segment_list.coffee +0 -24
  41. data/lib/assets/javascripts/tao/form/mobile/fields/radio.coffee +0 -5
  42. data/lib/assets/javascripts/tao/form/mobile/fields/select/element.coffee +0 -74
  43. data/lib/assets/javascripts/tao/form/mobile/fields/select/index.coffee +0 -8
  44. data/lib/assets/javascripts/tao/form/mobile/fields/select/list.coffee +0 -5
  45. data/lib/assets/javascripts/tao/form/mobile/fields/select/multiple_result.coffee +0 -5
  46. data/lib/assets/javascripts/tao/form/mobile/fields/select/result.coffee +0 -5
  47. data/lib/assets/javascripts/tao/form/mobile/fields/switch.coffee +0 -5
  48. data/lib/assets/javascripts/tao/form/mobile/index.coffee +0 -11
  49. data/lib/assets/javascripts/tao/form/shared/element/base.coffee +0 -53
  50. data/lib/assets/javascripts/tao/form/shared/fields/checkbox.coffee +0 -31
  51. data/lib/assets/javascripts/tao/form/shared/fields/date_picker.coffee +0 -10
  52. data/lib/assets/javascripts/tao/form/shared/fields/date_range_picker.coffee +0 -75
  53. data/lib/assets/javascripts/tao/form/shared/fields/datetime_picker.coffee +0 -78
  54. data/lib/assets/javascripts/tao/form/shared/fields/moment_picker/element/base.coffee +0 -70
  55. data/lib/assets/javascripts/tao/form/shared/fields/moment_picker/result/base.coffee +0 -39
  56. data/lib/assets/javascripts/tao/form/shared/fields/moment_picker/segment_list/base.coffee +0 -88
  57. data/lib/assets/javascripts/tao/form/shared/fields/moment_picker/segments/base.coffee +0 -30
  58. data/lib/assets/javascripts/tao/form/shared/fields/moment_picker/segments/date_segment.coffee +0 -107
  59. data/lib/assets/javascripts/tao/form/shared/fields/moment_picker/segments/hour_segment.coffee +0 -28
  60. data/lib/assets/javascripts/tao/form/shared/fields/moment_picker/segments/index.coffee +0 -1
  61. data/lib/assets/javascripts/tao/form/shared/fields/moment_picker/segments/minute_segment.coffee +0 -28
  62. data/lib/assets/javascripts/tao/form/shared/fields/moment_picker/segments/month_segment.coffee +0 -46
  63. data/lib/assets/javascripts/tao/form/shared/fields/moment_picker/segments/year_segment.coffee +0 -57
  64. data/lib/assets/javascripts/tao/form/shared/fields/month_picker.coffee +0 -10
  65. data/lib/assets/javascripts/tao/form/shared/fields/radio.coffee +0 -23
  66. data/lib/assets/javascripts/tao/form/shared/fields/select/element/base.coffee +0 -132
  67. data/lib/assets/javascripts/tao/form/shared/fields/select/list/base.coffee +0 -97
  68. data/lib/assets/javascripts/tao/form/shared/fields/select/models/data_provider.coffee +0 -76
  69. data/lib/assets/javascripts/tao/form/shared/fields/select/models/index.coffee +0 -2
  70. data/lib/assets/javascripts/tao/form/shared/fields/select/models/option.coffee +0 -37
  71. data/lib/assets/javascripts/tao/form/shared/fields/select/multiple_result/base.coffee +0 -90
  72. data/lib/assets/javascripts/tao/form/shared/fields/select/result/base.coffee +0 -57
  73. data/lib/assets/javascripts/tao/form/shared/fields/switch.coffee +0 -23
  74. data/lib/assets/javascripts/tao/form/shared/fields/time_picker.coffee +0 -10
  75. data/lib/assets/javascripts/tao/form/shared/init.coffee +0 -23
  76. data/lib/assets/javascripts/tao/form/shared/mixins/checkable.coffee +0 -11
  77. data/lib/assets/javascripts/tao/ui/icons/form.coffee +0 -11
  78. data/lib/assets/stylesheets/tao/form/_globals.scss +0 -3
  79. data/lib/assets/stylesheets/tao/form/_mixins.scss +0 -28
  80. data/lib/assets/stylesheets/tao/form/_variables.scss +0 -3
  81. data/lib/assets/stylesheets/tao/form/fields/checkbox.scss +0 -36
  82. data/lib/assets/stylesheets/tao/form/fields/date_range_picker.scss +0 -20
  83. data/lib/assets/stylesheets/tao/form/fields/datetime_picker.scss +0 -22
  84. data/lib/assets/stylesheets/tao/form/fields/index.scss +0 -7
  85. data/lib/assets/stylesheets/tao/form/fields/moment_picker/index.scss +0 -10
  86. data/lib/assets/stylesheets/tao/form/fields/moment_picker/result.scss +0 -61
  87. data/lib/assets/stylesheets/tao/form/fields/moment_picker/segment_list.scss +0 -53
  88. data/lib/assets/stylesheets/tao/form/fields/moment_picker/segments/date_segment.scss +0 -17
  89. data/lib/assets/stylesheets/tao/form/fields/moment_picker/segments/hour_segment.scss +0 -15
  90. data/lib/assets/stylesheets/tao/form/fields/moment_picker/segments/minute_segment.scss +0 -17
  91. data/lib/assets/stylesheets/tao/form/fields/moment_picker/segments/month_segment.scss +0 -15
  92. data/lib/assets/stylesheets/tao/form/fields/moment_picker/segments/year_segment.scss +0 -15
  93. data/lib/assets/stylesheets/tao/form/fields/radio.scss +0 -33
  94. data/lib/assets/stylesheets/tao/form/fields/select/index.scss +0 -14
  95. data/lib/assets/stylesheets/tao/form/fields/select/list.scss +0 -55
  96. data/lib/assets/stylesheets/tao/form/fields/select/multiple_result.scss +0 -76
  97. data/lib/assets/stylesheets/tao/form/fields/select/result.scss +0 -101
  98. data/lib/assets/stylesheets/tao/form/fields/switch.scss +0 -14
  99. data/lib/assets/stylesheets/tao/form/index.scss +0 -5
  100. data/lib/assets/stylesheets/tao/form/inputs/boolean.scss +0 -8
  101. data/lib/assets/stylesheets/tao/form/inputs/group.scss +0 -2
  102. data/lib/assets/stylesheets/tao/form/inputs/index.scss +0 -1
  103. data/lib/assets/stylesheets/tao/form/inputs/text.scss +0 -2
  104. data/lib/assets/stylesheets/tao/form/layouts/default.scss +0 -146
  105. data/lib/assets/stylesheets/tao/form/layouts/index.scss +0 -2
  106. data/lib/assets/stylesheets/tao/form/layouts/narrow.scss +0 -35
  107. data/lib/assets/stylesheets/tao/form/mobile/_globals.scss +0 -3
  108. data/lib/assets/stylesheets/tao/form/mobile/_mixins.scss +0 -22
  109. data/lib/assets/stylesheets/tao/form/mobile/_variables.scss +0 -3
  110. data/lib/assets/stylesheets/tao/form/mobile/fields/checkbox.scss +0 -2
  111. data/lib/assets/stylesheets/tao/form/mobile/fields/date_range_picker.scss +0 -18
  112. data/lib/assets/stylesheets/tao/form/mobile/fields/datetime_picker.scss +0 -18
  113. data/lib/assets/stylesheets/tao/form/mobile/fields/index.scss +0 -1
  114. data/lib/assets/stylesheets/tao/form/mobile/fields/moment_picker/index.scss +0 -9
  115. data/lib/assets/stylesheets/tao/form/mobile/fields/moment_picker/result.scss +0 -19
  116. data/lib/assets/stylesheets/tao/form/mobile/fields/moment_picker/segment_list.scss +0 -52
  117. data/lib/assets/stylesheets/tao/form/mobile/fields/moment_picker/segments/date_segment.scss +0 -14
  118. data/lib/assets/stylesheets/tao/form/mobile/fields/moment_picker/segments/hour_segment.scss +0 -14
  119. data/lib/assets/stylesheets/tao/form/mobile/fields/moment_picker/segments/minute_segment.scss +0 -14
  120. data/lib/assets/stylesheets/tao/form/mobile/fields/moment_picker/segments/month_segment.scss +0 -14
  121. data/lib/assets/stylesheets/tao/form/mobile/fields/moment_picker/segments/year_segment.scss +0 -14
  122. data/lib/assets/stylesheets/tao/form/mobile/fields/radio.scss +0 -2
  123. data/lib/assets/stylesheets/tao/form/mobile/fields/select/index.scss +0 -80
  124. data/lib/assets/stylesheets/tao/form/mobile/fields/select/list.scss +0 -10
  125. data/lib/assets/stylesheets/tao/form/mobile/fields/select/multiple_result.scss +0 -12
  126. data/lib/assets/stylesheets/tao/form/mobile/fields/select/result.scss +0 -28
  127. data/lib/assets/stylesheets/tao/form/mobile/fields/switch.scss +0 -2
  128. data/lib/assets/stylesheets/tao/form/mobile/index.scss +0 -5
  129. data/lib/assets/stylesheets/tao/form/mobile/inputs/boolean.scss +0 -7
  130. data/lib/assets/stylesheets/tao/form/mobile/inputs/group.scss +0 -6
  131. data/lib/assets/stylesheets/tao/form/mobile/inputs/index.scss +0 -1
  132. data/lib/assets/stylesheets/tao/form/mobile/inputs/text.scss +0 -18
  133. data/lib/assets/stylesheets/tao/form/mobile/layout.scss +0 -137
  134. data/lib/assets/stylesheets/tao/form/mobile/reset.scss +0 -29
  135. data/lib/assets/stylesheets/tao/form/mobile/variables/_base.scss +0 -12
  136. data/lib/assets/stylesheets/tao/form/mobile/variables/_moment_picker.scss +0 -9
  137. data/lib/assets/stylesheets/tao/form/mobile/variables/_select.scss +0 -9
  138. data/lib/assets/stylesheets/tao/form/reset.scss +0 -31
  139. data/lib/assets/stylesheets/tao/form/shared/fields/_checkbox.scss +0 -61
  140. data/lib/assets/stylesheets/tao/form/shared/fields/_radio.scss +0 -53
  141. data/lib/assets/stylesheets/tao/form/shared/fields/_switch.scss +0 -56
  142. data/lib/assets/stylesheets/tao/form/shared/fields/moment_picker/_result.scss +0 -46
  143. data/lib/assets/stylesheets/tao/form/shared/fields/moment_picker/_segment_list.scss +0 -93
  144. data/lib/assets/stylesheets/tao/form/shared/fields/moment_picker/segments/_date_segment.scss +0 -56
  145. data/lib/assets/stylesheets/tao/form/shared/fields/moment_picker/segments/_hour_segment.scss +0 -35
  146. data/lib/assets/stylesheets/tao/form/shared/fields/moment_picker/segments/_minute_segment.scss +0 -23
  147. data/lib/assets/stylesheets/tao/form/shared/fields/moment_picker/segments/_month_segment.scss +0 -27
  148. data/lib/assets/stylesheets/tao/form/shared/fields/moment_picker/segments/_year_segment.scss +0 -27
  149. data/lib/assets/stylesheets/tao/form/shared/fields/select/_list.scss +0 -140
  150. data/lib/assets/stylesheets/tao/form/shared/fields/select/_multiple_result.scss +0 -50
  151. data/lib/assets/stylesheets/tao/form/shared/inputs/_boolean.scss +0 -5
  152. data/lib/assets/stylesheets/tao/form/shared/inputs/_group.scss +0 -25
  153. data/lib/assets/stylesheets/tao/form/shared/inputs/_text.scss +0 -35
  154. data/lib/assets/stylesheets/tao/form/variables/_base.scss +0 -15
  155. data/lib/assets/stylesheets/tao/form/variables/_moment_picker.scss +0 -9
  156. data/lib/assets/stylesheets/tao/form/variables/_select.scss +0 -10
  157. data/vendor/assets/javascripts/moment.js +0 -4463
  158. data/vendor/assets/javascripts/moment/zh-cn.js +0 -112
@@ -1,11 +0,0 @@
1
- #= require moment
2
- #= require moment/zh-cn
3
- #= require tao/ui
4
- #= require tao/ui/icons/form
5
- #= require_self
6
- #= require tao/form/shared/init
7
- #= require ./element
8
- #= require ./fields
9
-
10
- Tao.Form =
11
- Mixins: {}
@@ -1,5 +0,0 @@
1
- #= require tao/form/shared/element/base
2
-
3
- class Tao.Form.Element extends Tao.Form.ElementBase
4
-
5
- TaoComponent.register Tao.Form.Element
@@ -1,5 +0,0 @@
1
- #= require tao/form/shared/fields/checkbox
2
-
3
- class Tao.Form.Checkbox extends Tao.Form.CheckboxBase
4
-
5
- TaoComponent.register Tao.Form.Checkbox
@@ -1,10 +0,0 @@
1
- #= require ./checkbox
2
- #= require ./switch
3
- #= require ./radio
4
- #= require ./select
5
- #= require ./moment_picker
6
- #= require tao/form/shared/fields/date_picker
7
- #= require tao/form/shared/fields/time_picker
8
- #= require tao/form/shared/fields/datetime_picker
9
- #= require tao/form/shared/fields/month_picker
10
- #= require tao/form/shared/fields/date_range_picker
@@ -1,40 +0,0 @@
1
- #= require tao/form/shared/fields/moment_picker/element/base
2
-
3
- class Tao.Form.MomentPicker.Element extends Tao.Form.MomentPicker.ElementBase
4
-
5
- _connected: ->
6
- @slideBox = @findComponent '.slide-box'
7
- super
8
-
9
- _bind: ->
10
- super
11
-
12
- @slideBox.on 'tao:hide', (e) =>
13
- @active = false if @active
14
- null
15
-
16
- @on 'click', '.header .link-close', (e) =>
17
- @active = false
18
- null
19
-
20
- @on 'click', '.header .button-confirm', (e) =>
21
- @active = false
22
- @setMoment moment(@segmentList.momentData)
23
- null
24
-
25
- @on 'tao:clear', '.tao-moment-picker-segment-list', (e) =>
26
- return if @disabled
27
- @active = false
28
- @setMoment null
29
- @namespacedTrigger 'change', [@moment]
30
- null
31
-
32
- _activeChanged: ->
33
- @slideBox.active = @active
34
- if @active
35
- @segmentList.setMoment @moment
36
- @segmentList.clearable = !!@moment
37
- @segmentList.refreshHeight()
38
-
39
-
40
- TaoComponent.register Tao.Form.MomentPicker.Element
@@ -1,7 +0,0 @@
1
- #= require_self
2
- #= require tao/form/shared/fields/moment_picker/segments
3
- #= require ./element
4
- #= require ./result
5
- #= require ./segment_list
6
-
7
- Tao.Form.MomentPicker = {}
@@ -1,5 +0,0 @@
1
- #= require tao/form/shared/fields/moment_picker/result/base
2
-
3
- class Tao.Form.MomentPicker.Result extends Tao.Form.MomentPicker.ResultBase
4
-
5
- TaoComponent.register Tao.Form.MomentPicker.Result
@@ -1,24 +0,0 @@
1
- #= require tao/form/shared/fields/moment_picker/segment_list/base
2
-
3
- MomentPicker = Tao.Form.MomentPicker
4
-
5
- class MomentPicker.SegmentList extends MomentPicker.SegmentListBase
6
-
7
- @attribute 'clearable', type: 'boolean'
8
-
9
- _bind: ->
10
- super
11
-
12
- @on 'click', '.link-clear', (e) =>
13
- @namespacedTrigger 'clear'
14
- null
15
-
16
- refreshHeight: ->
17
- return unless @activeSegment
18
- winHeight = $(window).height()
19
- offsetTop = @activeSegment.getBoundingClientRect().top
20
-
21
- @activeSegment.jq.css
22
- height: winHeight - offsetTop
23
-
24
- TaoComponent.register Tao.Form.MomentPicker.SegmentList
@@ -1,5 +0,0 @@
1
- #= require tao/form/shared/fields/radio
2
-
3
- class Tao.Form.Radio extends Tao.Form.RadioBase
4
-
5
- TaoComponent.register Tao.Form.Radio
@@ -1,74 +0,0 @@
1
- #= require tao/form/shared/fields/select/element/base
2
-
3
- class Tao.Form.Select.Element extends Tao.Form.Select.ElementBase
4
-
5
- _connected: ->
6
- @slideBox = @findComponent '.slide-box'
7
- super
8
-
9
- _bind: ->
10
- super
11
-
12
- @slideBox.on 'tao:hide', (e) =>
13
- @active = false if @active
14
- null
15
-
16
- @on 'click', '.select-result-delegate', (e) =>
17
- @_toggleActive()
18
- null
19
-
20
- @on 'click', '.header .link-close', (e) =>
21
- @active = false
22
- null
23
-
24
- @on 'click', '.button-ok', (e) =>
25
- @active = false
26
- null
27
-
28
- @on 'tao:change', =>
29
- @_refreshListHeight() if @active
30
- @_refreshSelectedText()
31
-
32
- _bindListEvents: ->
33
- super
34
-
35
- @on 'tao:select', '.select-list', (e, option) =>
36
- if @multiple
37
- @list.reset()
38
- else
39
- @active = false
40
- null
41
-
42
- _childComponentsReady: ->
43
- super
44
- @_refreshSelectedText()
45
-
46
- _refreshSelectedText: ->
47
- text = if @multiple && @selectedOption.length > 0
48
- @selectedOption.map (opt) ->
49
- opt.text
50
- .join ', '
51
- else if @selectedOption
52
- @selectedOption.text
53
- else
54
- ''
55
-
56
- @jq.find('.select-result-delegate .selected-text').text text
57
-
58
- _refreshListHeight: ->
59
- $listWrapper = @list.jq.find('.list-wrapper')
60
- winHeight = $(window).height()
61
- offsetTop = $listWrapper[0].getBoundingClientRect().top
62
- buttonsHeight = @slideBox.jq.find('.slide-box-content > .buttons').outerHeight() || 0
63
-
64
- $listWrapper.css
65
- height: winHeight - offsetTop - buttonsHeight
66
-
67
- _activeChanged: ->
68
- @slideBox.active = @active
69
- if @active
70
- @_refreshListHeight()
71
- else
72
- @list.reset()
73
-
74
- TaoComponent.register Tao.Form.Select.Element
@@ -1,8 +0,0 @@
1
- #= require_self
2
- #= require tao/form/shared/fields/select/models
3
- #= require ./result
4
- #= require ./multiple_result
5
- #= require ./list
6
- #= require ./element
7
-
8
- Tao.Form.Select = {}
@@ -1,5 +0,0 @@
1
- #= require tao/form/shared/fields/select/list/base
2
-
3
- class Tao.Form.Select.List extends Tao.Form.Select.ListBase
4
-
5
- TaoComponent.register Tao.Form.Select.List
@@ -1,5 +0,0 @@
1
- #= require tao/form/shared/fields/select/multiple_result/base
2
-
3
- class Tao.Form.Select.MultipleResult extends Tao.Form.Select.MultipleResultBase
4
-
5
- TaoComponent.register Tao.Form.Select.MultipleResult
@@ -1,5 +0,0 @@
1
- #= require tao/form/shared/fields/select/result/base
2
-
3
- class Tao.Form.Select.Result extends Tao.Form.Select.ResultBase
4
-
5
- TaoComponent.register Tao.Form.Select.Result
@@ -1,5 +0,0 @@
1
- #= require tao/form/shared/fields/switch
2
-
3
- class Tao.Form.Switch extends Tao.Form.SwitchBase
4
-
5
- TaoComponent.register Tao.Form.Switch
@@ -1,11 +0,0 @@
1
- #= require moment
2
- #= require moment/zh-cn
3
- #= require tao/ui/mobile
4
- #= require tao/ui/icons/form
5
- #= require_self
6
- #= require tao/form/shared/init
7
- #= require ./element
8
- #= require ./fields
9
-
10
- Tao.Form =
11
- Mixins: {}
@@ -1,53 +0,0 @@
1
- class Tao.Form.ElementBase extends TaoComponent
2
-
3
- @tag 'tao-form'
4
-
5
- @attribute 'successMessage'
6
-
7
- _connected: ->
8
- @_bind()
9
- @jq.find('.input-field[autofocus]').focus()
10
-
11
- _bind: ->
12
- @on 'ajax:beforeSend', '> form', (e) =>
13
- @_clearErrors()
14
- @namespacedTrigger 'beforeSubmit'
15
-
16
- @on 'ajax:success', '> form', (e) =>
17
- @_showSuccessMessage()
18
- @namespacedTrigger 'success'
19
-
20
- _disconnected: ->
21
- @off()
22
-
23
- _clearErrors: ->
24
- @jq.find('.input-with-errors').each (i, input) =>
25
- @_clearError input
26
-
27
- _clearError: (input) ->
28
- $(input).removeClass('input-with-errors')
29
- .find('.error').remove()
30
-
31
- _showSuccessMessage: ->
32
- return unless @successMessage
33
-
34
- $button = @jq.find('button[data-disable-with]:disabled, input[data-disable-with]:disabled')
35
- $message = $('<div>')
36
- .addClass('success-message')
37
- .append([Tao.iconTag('success'), @successMessage])
38
- .insertAfter $button.hide()
39
-
40
- @_successTimer = setTimeout =>
41
- $button.show()
42
- $message.remove()
43
- , 3000
44
-
45
- beforeCache: ->
46
- super
47
- clearTimeout @_successTimer
48
- @jq.find('.success-message').remove()
49
- @jq.find('button[data-disable-with]:hidden, input[data-disable-with]:hidden').show()
50
-
51
- submit: ->
52
- @jq.find('> form').submit()
53
- @
@@ -1,31 +0,0 @@
1
- #= require tao/form/shared/mixins/checkable
2
-
3
- class Tao.Form.CheckboxBase extends TaoComponent
4
-
5
- @include Tao.Form.Mixins.Checkable
6
-
7
- @tag 'tao-check-box'
8
-
9
- @get 'indeterminate', ->
10
- @field?.prop 'indeterminate'
11
-
12
- @set 'indeterminate', (value) ->
13
- @field?.prop 'indeterminate', value
14
-
15
- _connected: ->
16
- @field = @jq.find('input:checkbox')
17
- @_bind()
18
-
19
- _bind: ->
20
- @on 'change', 'input[type=checkbox]', (e) =>
21
- @namespacedTrigger 'change'
22
- null
23
-
24
- @on 'click', '.checkbox-wrapper', (e) =>
25
- if @field.is(':enabled')
26
- @_toggleChecked()
27
- @namespacedTrigger 'change'
28
- false
29
-
30
- _disconnected: ->
31
- @off()
@@ -1,10 +0,0 @@
1
-
2
- class Tao.Form.DatePicker extends Tao.Form.MomentPicker.Element
3
-
4
- @tag 'tao-date-picker'
5
-
6
- @attribute 'valueFormat', default: 'YYYY-MM-DD'
7
-
8
- @attribute 'displayFormat', default: 'YYYY-MM-DD'
9
-
10
- TaoComponent.register Tao.Form.DatePicker
@@ -1,75 +0,0 @@
1
- class Tao.Form.DateRangePicker extends TaoComponent
2
-
3
- @tag 'tao-date-range-picker'
4
-
5
- @attribute 'dateValueFormat', default: 'YYYY-MM-DD'
6
-
7
- @attribute 'dateDisplayFormat', default: 'YYYY-MM-DD'
8
-
9
- @get 'value', ->
10
- @field?.val()
11
-
12
- @set 'value', (val) ->
13
- @field.val val
14
- @_initMoment()
15
-
16
- _connected: ->
17
- @field = @jq.find '> input'
18
- @startDatePicker = @findComponent '.start-date-picker'
19
- @endDatePicker = @findComponent '.end-date-picker'
20
- @_bind()
21
-
22
- _disconnected: ->
23
- @off()
24
-
25
- _bind: ->
26
- @on 'tao-date-picker:change', '.tao-moment-picker', (e, m) =>
27
- datePicker = e.currentTarget
28
- if datePicker == @startDatePicker
29
- @endDatePicker.disableBefore datePicker.moment
30
- else
31
- @startDatePicker.disableAfter datePicker.moment
32
- @_syncMoment()
33
- @namespacedTrigger('change', [@value]) if @value
34
-
35
- startDatePickerDeferred = $.Deferred()
36
- endDatePickerDeferred = $.Deferred()
37
-
38
- @on 'tao-date-picker:ready', '.start-date-picker', ->
39
- startDatePickerDeferred.resolve()
40
-
41
- @on 'tao-date-picker:ready', '.end-date-picker', ->
42
- endDatePickerDeferred.resolve()
43
-
44
- $.when(startDatePickerDeferred, endDatePickerDeferred).done =>
45
- @_initMoment()
46
- @namespacedTrigger 'ready'
47
-
48
- _initMoment: ->
49
- dates = @field.val().split(',')
50
-
51
- if dates.length > 0
52
- @startDate = moment _.trim(dates[0]), @dateValueFormat
53
- @endDate = moment _.trim(dates[1]), @dateValueFormat
54
- @startDatePicker.setMoment @startDate.clone()
55
- @endDatePicker.setMoment @endDate.clone()
56
- else
57
- @startDatePicker.setMoment ''
58
- @endDatePicker.setMoment ''
59
- @startDate = null
60
- @endDate = null
61
-
62
- _syncMoment: ->
63
- if @startDatePicker.moment && @endDatePicker.moment
64
- startDateValue = @startDatePicker.moment.format(@dateValueFormat)
65
- endDateValue = @endDatePicker.moment.format(@dateValueFormat)
66
-
67
- @field.val "#{startDateValue},#{endDateValue}"
68
- @startDate = @startDatePicker.moment.clone()
69
- @endDate = @endDatePicker.moment.clone()
70
- else
71
- @field.val ''
72
- @startDate = null
73
- @endDate = null
74
-
75
- TaoComponent.register Tao.Form.DateRangePicker
@@ -1,78 +0,0 @@
1
-
2
- class Tao.Form.DatetimePicker extends TaoComponent
3
-
4
- @tag 'tao-datetime-picker'
5
-
6
- @attribute 'valueFormat', default: 'YYYY-MM-DDTHH:mm:ss'
7
-
8
- @attribute 'dateValueFormat', default: 'YYYY-MM-DD'
9
-
10
- @attribute 'dateDisplayFormat', default: 'YYYY-MM-DD'
11
-
12
- @attribute 'timeValueFormat', default: 'HH:mm'
13
-
14
- @attribute 'timeDisplayFormat', default: 'HH:mm'
15
-
16
- @get 'value', ->
17
- @field.val()
18
-
19
- @set 'value', (val) ->
20
- @field.val val
21
- @_initMoment()
22
-
23
- _connected: ->
24
- @field = @jq.find '> input'
25
- @datePicker = @findComponent 'tao-date-picker'
26
- @timePicker = @findComponent 'tao-time-picker'
27
- @_bind()
28
-
29
- _disconnected: ->
30
- @off()
31
-
32
- _bind: ->
33
- @on 'tao-date-picker:change tao-time-picker:change', '.tao-moment-picker', (e, m) =>
34
- @_syncMoment()
35
- @namespacedTrigger 'change', [@moment]
36
-
37
- datePickerDeferred = $.Deferred()
38
- timePickerDeferred = $.Deferred()
39
-
40
- @on 'tao-date-picker:ready', 'tao-date-picker', ->
41
- datePickerDeferred.resolve()
42
-
43
- @on 'tao-time-picker:ready', 'tao-time-picker', ->
44
- timePickerDeferred.resolve()
45
-
46
- $.when(datePickerDeferred, timePickerDeferred).done =>
47
- @_initMoment()
48
- @namespacedTrigger 'ready'
49
-
50
- _initMoment: ->
51
- m = moment @field.val(), @valueFormat
52
-
53
- if m && m.isValid()
54
- @datePicker.setMoment m.format(@dateValueFormat)
55
- @timePicker.setMoment m.format(@timeValueFormat)
56
- @moment = m
57
- else
58
- @datePicker.setMoment ''
59
- @timePicker.setMoment ''
60
- @moment = null
61
-
62
- _syncMoment: ->
63
- if @datePicker.moment
64
- dateValue = @datePicker.moment.format(@dateValueFormat)
65
- timeValue = if @timePicker.moment
66
- @timePicker.moment.format(@timeValueFormat)
67
- else
68
- moment().startOf('day').format(@timeValueFormat)
69
-
70
- value = _.trim "#{dateValue} #{timeValue}"
71
- m = moment value, "#{@dateValueFormat} #{@timeValueFormat}"
72
- @field.val m.format(@valueFormat)
73
- @moment = m
74
- else
75
- @field.val ''
76
- @moment = null
77
-
78
- TaoComponent.register Tao.Form.DatetimePicker