pinkman 0.9.1.12 → 0.9.1.13

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: 6e467fb877ec17548f15e41d4938095f3871a2ab
4
- data.tar.gz: 23e589e765aae2cf3d8608b036fac19241e061c1
3
+ metadata.gz: ffc6f2ea33544e616988d135e3d70fe6d67f9057
4
+ data.tar.gz: 4d0e9e6c2aaba3a87cc8fbf9012f2634692a3b5a
5
5
  SHA512:
6
- metadata.gz: 0c460440b15566913d8dfeb6b28f7d35bdc6a20c97d372f095b7bfe4010dd8a861321104dc9860e2bb506fc988856da18be1bcca21c7a31691f470947afb11a9
7
- data.tar.gz: e430e4d4ae0a21d302b15b8d0e936540304b8747599404c50e1f67cd496b189f71418777e0065fbfbfcd2357c1044010e53d10653678ed9b00c283a9be05d9ab
6
+ metadata.gz: 150b1126eb137311dae04d2046f0f0094c618c8663775253430cdbee487d55147841b03d8dc14350cc8edcc509c5318e6711c9a21fff389e31c9729ecc1d24b6
7
+ data.tar.gz: 4b6441c73bae3a02ec485651d55b195032e999f718c499ef19feaf707151e7d067140133fbe5508111902e0350c0ddc3e7c747de1b790b33a989ae2102353cb3
@@ -81,6 +81,6 @@ class window.PinkmanCommon
81
81
  @_watching = yes
82
82
 
83
83
  queue: (options) ->
84
- options.id = options.object.pinkey if options.object? and options.object.isPink
84
+ options.id = options.template
85
85
  @renderQueue = new PinkmanCollection unless @renderQueue?
86
86
  @renderQueue.directPush(options)
@@ -70,7 +70,14 @@ Pinkman.template_engines =
70
70
  # 4 insert html on target
71
71
  @renderOntarget(options,content)
72
72
 
73
- # 5 callback function
73
+ # 5 restore scrolling positions (when applicable)
74
+ if options.freeze and Pinkman.scrolling?
75
+ if typeof options.freeze == 'string'
76
+ Pinkman.restoreElementScrollPosition(options.freeze)
77
+ else if Pinkman.isArray(options.freeze)
78
+ Pinkman.restoreElementScrollPosition(o) for o in options.freeze
79
+
80
+ # 6 callback function
74
81
  options.callback(options.object,content) if options.callback? and typeof options.callback == 'function'
75
82
  return(content)
76
83
 
@@ -81,11 +88,35 @@ Pinkman.render = (options) ->
81
88
  Pinkman.template_engines.render(options)
82
89
  options.object.queue(options) if options.reRender and options.object? and options.object.isPink
83
90
 
91
+ Pinkman.saveElementScrollPosition = (id) ->
92
+ Pinkman.scrolling = new PinkmanCollection unless Pinkman.scrolling?
93
+ a = Pinkman.scrolling.find(id)
94
+ a = new Pinkman.object unless a?
95
+ a.set('id',id)
96
+ element = $("##{id}")
97
+ elementPos = if element? then element.offset().top else 0
98
+ referencePos = if element.children()? then element.children().first().offset().top else 0
99
+ position = elementPos - referencePos
100
+
101
+ a.set('position', position)
102
+ Pinkman.scrolling.push(a)
103
+
104
+ Pinkman.restoreElementScrollPosition = (id) ->
105
+ document.getElementById(id).scrollTop = Pinkman.scrolling.find(id).position
106
+
84
107
  Pinkman.reRender = (object) ->
85
108
  if object.renderQueue?
86
109
  collectionReRender = false
87
110
  for options in object.renderQueue.collection
111
+ if options.freeze?
112
+ if typeof options.freeze == 'string'
113
+ Pinkman.saveElementScrollPosition(options.freeze)
114
+ else if Pinkman.isArray(options.freeze)
115
+ Pinkman.saveElementScrollPosition(o) for o in options.freeze
116
+
88
117
  Pinkman.template_engines.render(options)
118
+
119
+
89
120
  collectionReRender = true if options.collectionReRender
90
121
  collection.reRender() for collection in object.collections.collection if collectionReRender and object.collections?
91
122
  object.renderQueue.any()
@@ -1,3 +1,3 @@
1
1
  module Pinkman
2
- VERSION = "0.9.1.12"
2
+ VERSION = "0.9.1.13"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pinkman
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.1.12
4
+ version: 0.9.1.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - Agilso Oliveira
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-05-04 00:00:00.000000000 Z
11
+ date: 2017-05-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler