material_raingular 0.1.8.1 → 0.2

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c3843138ba53c2412deeb8948b76c66cf7488e0a
4
- data.tar.gz: 951646e1b9a0986bcf8cda19c79e4bfbc1e01d0e
3
+ metadata.gz: 0da8e34bdf3bd3f3e7fbb4802eeae30cbb3e0e37
4
+ data.tar.gz: c8f5bb5cb11b0116bbdab77427e76ba48a71173c
5
5
  SHA512:
6
- metadata.gz: 9a318e684352621e52c4e8ea9bd30ce460d964acc4529429867b7b8da702bdc96cf5386c55f383c12756b1a8ad0ec7c71dc3068ef095ae76d88461bb4041e2ed
7
- data.tar.gz: d03fca3d46600c21a41ebcacf364a6eee940338bd0358a0f61ef4636fec6a39c031f981f8f09b430a27dbd460cf2d2eaf508cc8b21d5fc5d1cca0b4df4406a12
6
+ metadata.gz: f750651f1a186f99dc253ec2500ba62d7d435cb1dc77c224cc52cf3d46bb27ac8c21362371d65cb4d33b4fc68b643c4314a229408d6b655214b536498cb9743c
7
+ data.tar.gz: 86f95b39d99dea9008e7b800f5bbbae5dd50ddb0a9c5661cdf83a898999533a23a61f6444d9668e5f4b9040908c31186b682856fd0e3ff70fb8369355881a307
@@ -74,9 +74,9 @@ class MobileTemplate
74
74
  @tempHolder.removeClass('active')
75
75
 
76
76
  class StandardTemplate
77
- constructor: (@element,attrs,functions,@disabled,@viewOptions) ->
77
+ constructor: (@element,@attrs,functions,@disabled,@viewOptions,@mdInputContainer) ->
78
78
  @span = angular.element "<span></span>"
79
- @search = angular.element "<input class='autocomplete' type='search' placeholder='" + attrs.placeholder + "'>"
79
+ @search = angular.element "<input class='autocomplete' type='search'>"
80
80
  @tempHolder = angular.element "<div class='autocomplete menu md-whiteframe-z1'>"
81
81
  @template = @tempHolder
82
82
  @typeAhead = angular.element "<span style='position:absolute;'></span>"
@@ -104,12 +104,16 @@ class StandardTemplate
104
104
  @search.bind 'input', (event)=>
105
105
  @inputFunction(@search,@typeAhead,event)
106
106
  @search.bind 'focus', (event)=>
107
+ @mdInputContainer?.setFocused(true)
107
108
  @stylize()
108
109
  @focusFunction(@template,event)
109
110
  @search.bind 'blur', (event)=>
111
+ @mdInputContainer?.setHasValue(@search.val())
112
+ @mdInputContainer?.setFocused(false)
110
113
  @blurFunction(@search,@typeAhead,@template,event)
111
114
  @search.bind 'keydown', (event)=>
112
115
  @keydownFunction(@search,@typeAhead,@template,event)
116
+
113
117
  attachElements: ->
114
118
  @span.append @typeAhead
115
119
  @span.append @search
@@ -215,8 +219,10 @@ class EventFunctions
215
219
 
216
220
  angular.module('FilteredSelect', [])
217
221
  .directive 'ngFilteredSelect', ($parse,$filter,$timeout)->
218
- require: 'ngModel'
219
- link: (scope,element,attrs,ngModel) ->
222
+ require: ['ngModel', '?^mdInputContainer']
223
+ link: (scope,element,attrs,controllers) ->
224
+ ngModel = controllers[0]
225
+ mdInputContainer = controllers[1]
220
226
  viewOptions = JSON.parse(attrs.filterOptions || '{}')
221
227
  equiv = (left,right) ->
222
228
  return true if left == right
@@ -273,9 +279,10 @@ angular.module('FilteredSelect', [])
273
279
  val = if viewScope then (functions.altValue(viewScope) || functions.viewValueFn(viewScope)).replace(/^\s+/g,'') else ''
274
280
  elements.search.val(val)
275
281
  elements.typeAhead.html(elements.search.val())
282
+ mdInputContainer?.setHasValue(val)
276
283
  else
277
284
  unless model = scope.$eval(attrs.ngModel)
278
- view = attrs.placeholder
285
+ view = ''
279
286
  element.css('color','rgba(0,0,0,0.4)')
280
287
  else
281
288
  element.css('color','')
@@ -286,10 +293,11 @@ angular.module('FilteredSelect', [])
286
293
  obj[functions.modelValue] = model
287
294
  list = $filter('filter')(functions.collection(scope), obj,true)
288
295
  viewScope = list[0] if list
289
- view = if viewScope then functions.viewValueFn(viewScope) else attrs.placeholder
296
+ view = if viewScope then functions.viewValueFn(viewScope) else ''
290
297
  element.html('')
291
298
  element.html(view)
292
299
 
300
+
293
301
  updateValue = (model) ->
294
302
  return if @clickedVal && @clickedVal != model
295
303
  $timeout =>
@@ -325,7 +333,9 @@ angular.module('FilteredSelect', [])
325
333
  if isMobile = typeof attrs.ngMobile != 'undefined'
326
334
  elements = new MobileTemplate(element,eFunctions.mobile())
327
335
  else
328
- elements = new StandardTemplate(element,attrs,eFunctions.standard(),disabled(),viewOptions)
336
+ elements = new StandardTemplate(element,attrs,eFunctions.standard(),disabled(),viewOptions,mdInputContainer)
337
+ mdInputContainer?.setHasPlaceholder(attrs.mdPlaceholder)
338
+ mdInputContainer?.input = elements.search
329
339
  scope.$watchCollection functions.collection, (newVal,oldVal) ->
330
340
  return if newVal == oldVal
331
341
  setInitialValue()
@@ -9,11 +9,9 @@ class ElementUpdate
9
9
  @isInput = @tagName == 'INPUT'
10
10
  @scope = scope
11
11
  @element = element
12
- @placeholder = attributes.placeholder
13
12
  @timeout = timeout
14
13
  @bindInput() if @isInput
15
14
  @bindElement() unless @isInput
16
- @setPlaceholder() if typeof @placeholder == 'undefined'
17
15
  watcher: ->
18
16
  eu = @
19
17
  @scope.$watch @modelVal, (updated,old) ->
@@ -52,11 +50,6 @@ class ElementUpdate
52
50
  ,750
53
51
  else
54
52
  @watcher()
55
- setPlaceholder: ->
56
- placeholder = ''
57
- for word in @modelName.split('.').pop().split('_')
58
- placeholder += word[0].toUpperCase() + word[1..-1].toLowerCase() + ' '
59
- @element.attr('placeholder',placeholder)
60
53
 
61
54
  angular.module 'MdUpdate', ['Factories', 'FactoryName','RailsUpdater']
62
55
  .directive 'mdUpdate', ($timeout, factoryName, $injector, RailsUpdater,$parse) ->
@@ -1,3 +1,3 @@
1
1
  module MaterialRaingular
2
- VERSION = "0.1.8.1"
2
+ VERSION = "0.2"
3
3
  end