activeadmin-rb 1.4.0 → 1.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 (67) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -1
  3. data/.travis.yml +17 -12
  4. data/CHANGELOG.md +10 -1
  5. data/Gemfile +3 -11
  6. data/activeadmin-rb.gemspec +3 -2
  7. data/app/views/active_admin/devise/confirmations/new.html.erb +1 -1
  8. data/app/views/active_admin/devise/passwords/edit.html.erb +1 -1
  9. data/app/views/active_admin/devise/passwords/new.html.erb +1 -1
  10. data/app/views/active_admin/devise/registrations/new.html.erb +1 -1
  11. data/app/views/active_admin/devise/shared/_error_messages.html.erb +15 -0
  12. data/app/views/active_admin/devise/unlocks/new.html.erb +1 -1
  13. data/docs/documentation.md +1 -1
  14. data/features/index/filters.feature +3 -3
  15. data/features/index/pagination.feature +3 -3
  16. data/features/registering_assets.feature +4 -8
  17. data/features/support/env.rb +4 -0
  18. data/gemfiles/rails_42.gemfile +2 -1
  19. data/gemfiles/rails_50.gemfile +2 -1
  20. data/gemfiles/rails_51.gemfile +2 -1
  21. data/gemfiles/rails_52.gemfile +2 -1
  22. data/gemfiles/rails_60.gemfile +13 -0
  23. data/lib/active_admin.rb +1 -0
  24. data/lib/active_admin/application.rb +4 -3
  25. data/lib/active_admin/asset_registration.rb +0 -8
  26. data/lib/active_admin/version.rb +1 -1
  27. data/lib/bug_report_templates/active_admin_master.rb +3 -4
  28. data/spec/bug_report_templates_spec.rb +6 -4
  29. data/spec/support/active_admin_integration_spec_helper.rb +15 -7
  30. data/spec/support/rails_template.rb +8 -6
  31. data/spec/unit/asset_registration_spec.rb +0 -29
  32. data/spec/unit/auto_link_spec.rb +26 -16
  33. data/spec/unit/comments_spec.rb +22 -7
  34. data/spec/unit/filters/filter_form_builder_spec.rb +10 -10
  35. data/spec/unit/form_builder_spec.rb +1 -1
  36. data/spec/unit/pretty_format_spec.rb +73 -22
  37. data/spec/unit/resource_controller/data_access_spec.rb +3 -3
  38. data/spec/unit/routing_spec.rb +1 -1
  39. data/spec/unit/view_helpers/flash_helper_spec.rb +1 -1
  40. data/spec/unit/view_helpers/form_helper_spec.rb +2 -2
  41. data/spec/unit/views/components/attributes_table_spec.rb +1 -1
  42. metadata +20 -36
  43. data/vendor/assets/javascripts/jquery-ui/data.js +0 -41
  44. data/vendor/assets/javascripts/jquery-ui/disable-selection.js +0 -48
  45. data/vendor/assets/javascripts/jquery-ui/escape-selector.js +0 -23
  46. data/vendor/assets/javascripts/jquery-ui/focusable.js +0 -86
  47. data/vendor/assets/javascripts/jquery-ui/ie.js +0 -17
  48. data/vendor/assets/javascripts/jquery-ui/keycode.js +0 -47
  49. data/vendor/assets/javascripts/jquery-ui/plugin.js +0 -46
  50. data/vendor/assets/javascripts/jquery-ui/position.js +0 -500
  51. data/vendor/assets/javascripts/jquery-ui/safe-active-element.js +0 -42
  52. data/vendor/assets/javascripts/jquery-ui/safe-blur.js +0 -23
  53. data/vendor/assets/javascripts/jquery-ui/scroll-parent.js +0 -47
  54. data/vendor/assets/javascripts/jquery-ui/tabbable.js +0 -38
  55. data/vendor/assets/javascripts/jquery-ui/unique-id.js +0 -51
  56. data/vendor/assets/javascripts/jquery-ui/version.js +0 -17
  57. data/vendor/assets/javascripts/jquery-ui/widget.js +0 -735
  58. data/vendor/assets/javascripts/jquery-ui/widgets/button.js +0 -391
  59. data/vendor/assets/javascripts/jquery-ui/widgets/checkboxradio.js +0 -300
  60. data/vendor/assets/javascripts/jquery-ui/widgets/controlgroup.js +0 -300
  61. data/vendor/assets/javascripts/jquery-ui/widgets/datepicker.js +0 -2123
  62. data/vendor/assets/javascripts/jquery-ui/widgets/dialog.js +0 -954
  63. data/vendor/assets/javascripts/jquery-ui/widgets/draggable.js +0 -1259
  64. data/vendor/assets/javascripts/jquery-ui/widgets/mouse.js +0 -230
  65. data/vendor/assets/javascripts/jquery-ui/widgets/resizable.js +0 -1207
  66. data/vendor/assets/javascripts/jquery-ui/widgets/sortable.js +0 -1561
  67. data/vendor/assets/javascripts/jquery-ui/widgets/tabs.js +0 -931
@@ -1,46 +0,0 @@
1
- //= require jquery-ui/version
2
-
3
- ( function( factory ) {
4
- if ( typeof define === "function" && define.amd ) {
5
-
6
- // AMD. Register as an anonymous module.
7
- define( [ "jquery", "./version" ], factory );
8
- } else {
9
-
10
- // Browser globals
11
- factory( jQuery );
12
- }
13
- } ( function( $ ) {
14
-
15
- // $.ui.plugin is deprecated. Use $.widget() extensions instead.
16
- return $.ui.plugin = {
17
- add: function( module, option, set ) {
18
- var i,
19
- proto = $.ui[ module ].prototype;
20
- for ( i in set ) {
21
- proto.plugins[ i ] = proto.plugins[ i ] || [];
22
- proto.plugins[ i ].push( [ option, set[ i ] ] );
23
- }
24
- },
25
- call: function( instance, name, args, allowDisconnected ) {
26
- var i,
27
- set = instance.plugins[ name ];
28
-
29
- if ( !set ) {
30
- return;
31
- }
32
-
33
- if ( !allowDisconnected && ( !instance.element[ 0 ].parentNode ||
34
- instance.element[ 0 ].parentNode.nodeType === 11 ) ) {
35
- return;
36
- }
37
-
38
- for ( i = 0; i < set.length; i++ ) {
39
- if ( instance.options[ set[ i ][ 0 ] ] ) {
40
- set[ i ][ 1 ].apply( instance.element, args );
41
- }
42
- }
43
- }
44
- };
45
-
46
- } ) );
@@ -1,500 +0,0 @@
1
- //= require jquery-ui/version
2
-
3
- /*!
4
- * jQuery UI Position 1.12.1
5
- * http://jqueryui.com
6
- *
7
- * Copyright jQuery Foundation and other contributors
8
- * Released under the MIT license.
9
- * http://jquery.org/license
10
- *
11
- * http://api.jqueryui.com/position/
12
- */
13
-
14
- //>>label: Position
15
- //>>group: Core
16
- //>>description: Positions elements relative to other elements.
17
- //>>docs: http://api.jqueryui.com/position/
18
- //>>demos: http://jqueryui.com/position/
19
-
20
- ( function( factory ) {
21
- if ( typeof define === "function" && define.amd ) {
22
-
23
- // AMD. Register as an anonymous module.
24
- define( [ "jquery", "./version" ], factory );
25
- } else {
26
-
27
- // Browser globals
28
- factory( jQuery );
29
- }
30
- }( function( $ ) {
31
- ( function() {
32
- var cachedScrollbarWidth,
33
- max = Math.max,
34
- abs = Math.abs,
35
- rhorizontal = /left|center|right/,
36
- rvertical = /top|center|bottom/,
37
- roffset = /[\+\-]\d+(\.[\d]+)?%?/,
38
- rposition = /^\w+/,
39
- rpercent = /%$/,
40
- _position = $.fn.position;
41
-
42
- function getOffsets( offsets, width, height ) {
43
- return [
44
- parseFloat( offsets[ 0 ] ) * ( rpercent.test( offsets[ 0 ] ) ? width / 100 : 1 ),
45
- parseFloat( offsets[ 1 ] ) * ( rpercent.test( offsets[ 1 ] ) ? height / 100 : 1 )
46
- ];
47
- }
48
-
49
- function parseCss( element, property ) {
50
- return parseInt( $.css( element, property ), 10 ) || 0;
51
- }
52
-
53
- function getDimensions( elem ) {
54
- var raw = elem[ 0 ];
55
- if ( raw.nodeType === 9 ) {
56
- return {
57
- width: elem.width(),
58
- height: elem.height(),
59
- offset: { top: 0, left: 0 }
60
- };
61
- }
62
- if ( $.isWindow( raw ) ) {
63
- return {
64
- width: elem.width(),
65
- height: elem.height(),
66
- offset: { top: elem.scrollTop(), left: elem.scrollLeft() }
67
- };
68
- }
69
- if ( raw.preventDefault ) {
70
- return {
71
- width: 0,
72
- height: 0,
73
- offset: { top: raw.pageY, left: raw.pageX }
74
- };
75
- }
76
- return {
77
- width: elem.outerWidth(),
78
- height: elem.outerHeight(),
79
- offset: elem.offset()
80
- };
81
- }
82
-
83
- $.position = {
84
- scrollbarWidth: function() {
85
- if ( cachedScrollbarWidth !== undefined ) {
86
- return cachedScrollbarWidth;
87
- }
88
- var w1, w2,
89
- div = $( "<div " +
90
- "style='display:block;position:absolute;width:50px;height:50px;overflow:hidden;'>" +
91
- "<div style='height:100px;width:auto;'></div></div>" ),
92
- innerDiv = div.children()[ 0 ];
93
-
94
- $( "body" ).append( div );
95
- w1 = innerDiv.offsetWidth;
96
- div.css( "overflow", "scroll" );
97
-
98
- w2 = innerDiv.offsetWidth;
99
-
100
- if ( w1 === w2 ) {
101
- w2 = div[ 0 ].clientWidth;
102
- }
103
-
104
- div.remove();
105
-
106
- return ( cachedScrollbarWidth = w1 - w2 );
107
- },
108
- getScrollInfo: function( within ) {
109
- var overflowX = within.isWindow || within.isDocument ? "" :
110
- within.element.css( "overflow-x" ),
111
- overflowY = within.isWindow || within.isDocument ? "" :
112
- within.element.css( "overflow-y" ),
113
- hasOverflowX = overflowX === "scroll" ||
114
- ( overflowX === "auto" && within.width < within.element[ 0 ].scrollWidth ),
115
- hasOverflowY = overflowY === "scroll" ||
116
- ( overflowY === "auto" && within.height < within.element[ 0 ].scrollHeight );
117
- return {
118
- width: hasOverflowY ? $.position.scrollbarWidth() : 0,
119
- height: hasOverflowX ? $.position.scrollbarWidth() : 0
120
- };
121
- },
122
- getWithinInfo: function( element ) {
123
- var withinElement = $( element || window ),
124
- isWindow = $.isWindow( withinElement[ 0 ] ),
125
- isDocument = !!withinElement[ 0 ] && withinElement[ 0 ].nodeType === 9,
126
- hasOffset = !isWindow && !isDocument;
127
- return {
128
- element: withinElement,
129
- isWindow: isWindow,
130
- isDocument: isDocument,
131
- offset: hasOffset ? $( element ).offset() : { left: 0, top: 0 },
132
- scrollLeft: withinElement.scrollLeft(),
133
- scrollTop: withinElement.scrollTop(),
134
- width: withinElement.outerWidth(),
135
- height: withinElement.outerHeight()
136
- };
137
- }
138
- };
139
-
140
- $.fn.position = function( options ) {
141
- if ( !options || !options.of ) {
142
- return _position.apply( this, arguments );
143
- }
144
-
145
- // Make a copy, we don't want to modify arguments
146
- options = $.extend( {}, options );
147
-
148
- var atOffset, targetWidth, targetHeight, targetOffset, basePosition, dimensions,
149
- target = $( options.of ),
150
- within = $.position.getWithinInfo( options.within ),
151
- scrollInfo = $.position.getScrollInfo( within ),
152
- collision = ( options.collision || "flip" ).split( " " ),
153
- offsets = {};
154
-
155
- dimensions = getDimensions( target );
156
- if ( target[ 0 ].preventDefault ) {
157
-
158
- // Force left top to allow flipping
159
- options.at = "left top";
160
- }
161
- targetWidth = dimensions.width;
162
- targetHeight = dimensions.height;
163
- targetOffset = dimensions.offset;
164
-
165
- // Clone to reuse original targetOffset later
166
- basePosition = $.extend( {}, targetOffset );
167
-
168
- // Force my and at to have valid horizontal and vertical positions
169
- // if a value is missing or invalid, it will be converted to center
170
- $.each( [ "my", "at" ], function() {
171
- var pos = ( options[ this ] || "" ).split( " " ),
172
- horizontalOffset,
173
- verticalOffset;
174
-
175
- if ( pos.length === 1 ) {
176
- pos = rhorizontal.test( pos[ 0 ] ) ?
177
- pos.concat( [ "center" ] ) :
178
- rvertical.test( pos[ 0 ] ) ?
179
- [ "center" ].concat( pos ) :
180
- [ "center", "center" ];
181
- }
182
- pos[ 0 ] = rhorizontal.test( pos[ 0 ] ) ? pos[ 0 ] : "center";
183
- pos[ 1 ] = rvertical.test( pos[ 1 ] ) ? pos[ 1 ] : "center";
184
-
185
- // Calculate offsets
186
- horizontalOffset = roffset.exec( pos[ 0 ] );
187
- verticalOffset = roffset.exec( pos[ 1 ] );
188
- offsets[ this ] = [
189
- horizontalOffset ? horizontalOffset[ 0 ] : 0,
190
- verticalOffset ? verticalOffset[ 0 ] : 0
191
- ];
192
-
193
- // Reduce to just the positions without the offsets
194
- options[ this ] = [
195
- rposition.exec( pos[ 0 ] )[ 0 ],
196
- rposition.exec( pos[ 1 ] )[ 0 ]
197
- ];
198
- } );
199
-
200
- // Normalize collision option
201
- if ( collision.length === 1 ) {
202
- collision[ 1 ] = collision[ 0 ];
203
- }
204
-
205
- if ( options.at[ 0 ] === "right" ) {
206
- basePosition.left += targetWidth;
207
- } else if ( options.at[ 0 ] === "center" ) {
208
- basePosition.left += targetWidth / 2;
209
- }
210
-
211
- if ( options.at[ 1 ] === "bottom" ) {
212
- basePosition.top += targetHeight;
213
- } else if ( options.at[ 1 ] === "center" ) {
214
- basePosition.top += targetHeight / 2;
215
- }
216
-
217
- atOffset = getOffsets( offsets.at, targetWidth, targetHeight );
218
- basePosition.left += atOffset[ 0 ];
219
- basePosition.top += atOffset[ 1 ];
220
-
221
- return this.each( function() {
222
- var collisionPosition, using,
223
- elem = $( this ),
224
- elemWidth = elem.outerWidth(),
225
- elemHeight = elem.outerHeight(),
226
- marginLeft = parseCss( this, "marginLeft" ),
227
- marginTop = parseCss( this, "marginTop" ),
228
- collisionWidth = elemWidth + marginLeft + parseCss( this, "marginRight" ) +
229
- scrollInfo.width,
230
- collisionHeight = elemHeight + marginTop + parseCss( this, "marginBottom" ) +
231
- scrollInfo.height,
232
- position = $.extend( {}, basePosition ),
233
- myOffset = getOffsets( offsets.my, elem.outerWidth(), elem.outerHeight() );
234
-
235
- if ( options.my[ 0 ] === "right" ) {
236
- position.left -= elemWidth;
237
- } else if ( options.my[ 0 ] === "center" ) {
238
- position.left -= elemWidth / 2;
239
- }
240
-
241
- if ( options.my[ 1 ] === "bottom" ) {
242
- position.top -= elemHeight;
243
- } else if ( options.my[ 1 ] === "center" ) {
244
- position.top -= elemHeight / 2;
245
- }
246
-
247
- position.left += myOffset[ 0 ];
248
- position.top += myOffset[ 1 ];
249
-
250
- collisionPosition = {
251
- marginLeft: marginLeft,
252
- marginTop: marginTop
253
- };
254
-
255
- $.each( [ "left", "top" ], function( i, dir ) {
256
- if ( $.ui.position[ collision[ i ] ] ) {
257
- $.ui.position[ collision[ i ] ][ dir ]( position, {
258
- targetWidth: targetWidth,
259
- targetHeight: targetHeight,
260
- elemWidth: elemWidth,
261
- elemHeight: elemHeight,
262
- collisionPosition: collisionPosition,
263
- collisionWidth: collisionWidth,
264
- collisionHeight: collisionHeight,
265
- offset: [ atOffset[ 0 ] + myOffset[ 0 ], atOffset [ 1 ] + myOffset[ 1 ] ],
266
- my: options.my,
267
- at: options.at,
268
- within: within,
269
- elem: elem
270
- } );
271
- }
272
- } );
273
-
274
- if ( options.using ) {
275
-
276
- // Adds feedback as second argument to using callback, if present
277
- using = function( props ) {
278
- var left = targetOffset.left - position.left,
279
- right = left + targetWidth - elemWidth,
280
- top = targetOffset.top - position.top,
281
- bottom = top + targetHeight - elemHeight,
282
- feedback = {
283
- target: {
284
- element: target,
285
- left: targetOffset.left,
286
- top: targetOffset.top,
287
- width: targetWidth,
288
- height: targetHeight
289
- },
290
- element: {
291
- element: elem,
292
- left: position.left,
293
- top: position.top,
294
- width: elemWidth,
295
- height: elemHeight
296
- },
297
- horizontal: right < 0 ? "left" : left > 0 ? "right" : "center",
298
- vertical: bottom < 0 ? "top" : top > 0 ? "bottom" : "middle"
299
- };
300
- if ( targetWidth < elemWidth && abs( left + right ) < targetWidth ) {
301
- feedback.horizontal = "center";
302
- }
303
- if ( targetHeight < elemHeight && abs( top + bottom ) < targetHeight ) {
304
- feedback.vertical = "middle";
305
- }
306
- if ( max( abs( left ), abs( right ) ) > max( abs( top ), abs( bottom ) ) ) {
307
- feedback.important = "horizontal";
308
- } else {
309
- feedback.important = "vertical";
310
- }
311
- options.using.call( this, props, feedback );
312
- };
313
- }
314
-
315
- elem.offset( $.extend( position, { using: using } ) );
316
- } );
317
- };
318
-
319
- $.ui.position = {
320
- fit: {
321
- left: function( position, data ) {
322
- var within = data.within,
323
- withinOffset = within.isWindow ? within.scrollLeft : within.offset.left,
324
- outerWidth = within.width,
325
- collisionPosLeft = position.left - data.collisionPosition.marginLeft,
326
- overLeft = withinOffset - collisionPosLeft,
327
- overRight = collisionPosLeft + data.collisionWidth - outerWidth - withinOffset,
328
- newOverRight;
329
-
330
- // Element is wider than within
331
- if ( data.collisionWidth > outerWidth ) {
332
-
333
- // Element is initially over the left side of within
334
- if ( overLeft > 0 && overRight <= 0 ) {
335
- newOverRight = position.left + overLeft + data.collisionWidth - outerWidth -
336
- withinOffset;
337
- position.left += overLeft - newOverRight;
338
-
339
- // Element is initially over right side of within
340
- } else if ( overRight > 0 && overLeft <= 0 ) {
341
- position.left = withinOffset;
342
-
343
- // Element is initially over both left and right sides of within
344
- } else {
345
- if ( overLeft > overRight ) {
346
- position.left = withinOffset + outerWidth - data.collisionWidth;
347
- } else {
348
- position.left = withinOffset;
349
- }
350
- }
351
-
352
- // Too far left -> align with left edge
353
- } else if ( overLeft > 0 ) {
354
- position.left += overLeft;
355
-
356
- // Too far right -> align with right edge
357
- } else if ( overRight > 0 ) {
358
- position.left -= overRight;
359
-
360
- // Adjust based on position and margin
361
- } else {
362
- position.left = max( position.left - collisionPosLeft, position.left );
363
- }
364
- },
365
- top: function( position, data ) {
366
- var within = data.within,
367
- withinOffset = within.isWindow ? within.scrollTop : within.offset.top,
368
- outerHeight = data.within.height,
369
- collisionPosTop = position.top - data.collisionPosition.marginTop,
370
- overTop = withinOffset - collisionPosTop,
371
- overBottom = collisionPosTop + data.collisionHeight - outerHeight - withinOffset,
372
- newOverBottom;
373
-
374
- // Element is taller than within
375
- if ( data.collisionHeight > outerHeight ) {
376
-
377
- // Element is initially over the top of within
378
- if ( overTop > 0 && overBottom <= 0 ) {
379
- newOverBottom = position.top + overTop + data.collisionHeight - outerHeight -
380
- withinOffset;
381
- position.top += overTop - newOverBottom;
382
-
383
- // Element is initially over bottom of within
384
- } else if ( overBottom > 0 && overTop <= 0 ) {
385
- position.top = withinOffset;
386
-
387
- // Element is initially over both top and bottom of within
388
- } else {
389
- if ( overTop > overBottom ) {
390
- position.top = withinOffset + outerHeight - data.collisionHeight;
391
- } else {
392
- position.top = withinOffset;
393
- }
394
- }
395
-
396
- // Too far up -> align with top
397
- } else if ( overTop > 0 ) {
398
- position.top += overTop;
399
-
400
- // Too far down -> align with bottom edge
401
- } else if ( overBottom > 0 ) {
402
- position.top -= overBottom;
403
-
404
- // Adjust based on position and margin
405
- } else {
406
- position.top = max( position.top - collisionPosTop, position.top );
407
- }
408
- }
409
- },
410
- flip: {
411
- left: function( position, data ) {
412
- var within = data.within,
413
- withinOffset = within.offset.left + within.scrollLeft,
414
- outerWidth = within.width,
415
- offsetLeft = within.isWindow ? within.scrollLeft : within.offset.left,
416
- collisionPosLeft = position.left - data.collisionPosition.marginLeft,
417
- overLeft = collisionPosLeft - offsetLeft,
418
- overRight = collisionPosLeft + data.collisionWidth - outerWidth - offsetLeft,
419
- myOffset = data.my[ 0 ] === "left" ?
420
- -data.elemWidth :
421
- data.my[ 0 ] === "right" ?
422
- data.elemWidth :
423
- 0,
424
- atOffset = data.at[ 0 ] === "left" ?
425
- data.targetWidth :
426
- data.at[ 0 ] === "right" ?
427
- -data.targetWidth :
428
- 0,
429
- offset = -2 * data.offset[ 0 ],
430
- newOverRight,
431
- newOverLeft;
432
-
433
- if ( overLeft < 0 ) {
434
- newOverRight = position.left + myOffset + atOffset + offset + data.collisionWidth -
435
- outerWidth - withinOffset;
436
- if ( newOverRight < 0 || newOverRight < abs( overLeft ) ) {
437
- position.left += myOffset + atOffset + offset;
438
- }
439
- } else if ( overRight > 0 ) {
440
- newOverLeft = position.left - data.collisionPosition.marginLeft + myOffset +
441
- atOffset + offset - offsetLeft;
442
- if ( newOverLeft > 0 || abs( newOverLeft ) < overRight ) {
443
- position.left += myOffset + atOffset + offset;
444
- }
445
- }
446
- },
447
- top: function( position, data ) {
448
- var within = data.within,
449
- withinOffset = within.offset.top + within.scrollTop,
450
- outerHeight = within.height,
451
- offsetTop = within.isWindow ? within.scrollTop : within.offset.top,
452
- collisionPosTop = position.top - data.collisionPosition.marginTop,
453
- overTop = collisionPosTop - offsetTop,
454
- overBottom = collisionPosTop + data.collisionHeight - outerHeight - offsetTop,
455
- top = data.my[ 1 ] === "top",
456
- myOffset = top ?
457
- -data.elemHeight :
458
- data.my[ 1 ] === "bottom" ?
459
- data.elemHeight :
460
- 0,
461
- atOffset = data.at[ 1 ] === "top" ?
462
- data.targetHeight :
463
- data.at[ 1 ] === "bottom" ?
464
- -data.targetHeight :
465
- 0,
466
- offset = -2 * data.offset[ 1 ],
467
- newOverTop,
468
- newOverBottom;
469
- if ( overTop < 0 ) {
470
- newOverBottom = position.top + myOffset + atOffset + offset + data.collisionHeight -
471
- outerHeight - withinOffset;
472
- if ( newOverBottom < 0 || newOverBottom < abs( overTop ) ) {
473
- position.top += myOffset + atOffset + offset;
474
- }
475
- } else if ( overBottom > 0 ) {
476
- newOverTop = position.top - data.collisionPosition.marginTop + myOffset + atOffset +
477
- offset - offsetTop;
478
- if ( newOverTop > 0 || abs( newOverTop ) < overBottom ) {
479
- position.top += myOffset + atOffset + offset;
480
- }
481
- }
482
- }
483
- },
484
- flipfit: {
485
- left: function() {
486
- $.ui.position.flip.left.apply( this, arguments );
487
- $.ui.position.fit.left.apply( this, arguments );
488
- },
489
- top: function() {
490
- $.ui.position.flip.top.apply( this, arguments );
491
- $.ui.position.fit.top.apply( this, arguments );
492
- }
493
- }
494
- };
495
-
496
- } )();
497
-
498
- return $.ui.position;
499
-
500
- } ) );