jquery-ui-rails 5.0.5 → 6.0.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.
Potentially problematic release.
This version of jquery-ui-rails might be problematic. Click here for more details.
- checksums.yaml +7 -0
- data/.travis.yml +1 -1
- data/History.md +12 -0
- data/README.md +47 -30
- data/Rakefile +48 -27
- data/VERSIONS.md +1 -0
- data/app/assets/images/jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
- data/app/assets/images/jquery-ui/ui-icons_444444_256x240.png +0 -0
- data/app/assets/images/jquery-ui/ui-icons_555555_256x240.png +0 -0
- data/app/assets/images/jquery-ui/ui-icons_777620_256x240.png +0 -0
- data/app/assets/images/jquery-ui/ui-icons_777777_256x240.png +0 -0
- data/app/assets/images/jquery-ui/ui-icons_cc0000_256x240.png +0 -0
- data/app/assets/images/jquery-ui/ui-icons_ffffff_256x240.png +0 -0
- data/app/assets/javascripts/jquery-ui.js +52 -33
- data/app/assets/javascripts/jquery-ui/core.js +37 -304
- data/app/assets/javascripts/jquery-ui/data.js +41 -0
- data/app/assets/javascripts/jquery-ui/disable-selection.js +48 -0
- data/app/assets/javascripts/jquery-ui/effect.all.js +15 -16
- data/app/assets/javascripts/jquery-ui/effect.js +620 -284
- data/app/assets/javascripts/jquery-ui/effects/effect-blind.js +73 -0
- data/app/assets/javascripts/jquery-ui/effects/effect-bounce.js +113 -0
- data/app/assets/javascripts/jquery-ui/effects/effect-clip.js +68 -0
- data/app/assets/javascripts/jquery-ui/effects/effect-drop.js +72 -0
- data/app/assets/javascripts/jquery-ui/effects/effect-explode.js +114 -0
- data/app/assets/javascripts/jquery-ui/effects/effect-fade.js +50 -0
- data/app/assets/javascripts/jquery-ui/effects/effect-fold.js +92 -0
- data/app/assets/javascripts/jquery-ui/effects/effect-highlight.js +60 -0
- data/app/assets/javascripts/jquery-ui/effects/effect-puff.js +46 -0
- data/app/assets/javascripts/jquery-ui/effects/effect-pulsate.js +67 -0
- data/app/assets/javascripts/jquery-ui/effects/effect-scale.js +60 -0
- data/app/assets/javascripts/jquery-ui/effects/effect-shake.js +77 -0
- data/app/assets/javascripts/jquery-ui/effects/effect-size.js +194 -0
- data/app/assets/javascripts/jquery-ui/effects/effect-slide.js +79 -0
- data/app/assets/javascripts/jquery-ui/effects/effect-transfer.js +43 -0
- data/app/assets/javascripts/jquery-ui/escape-selector.js +23 -0
- data/app/assets/javascripts/jquery-ui/focusable.js +86 -0
- data/app/assets/javascripts/jquery-ui/form-reset-mixin.js +80 -0
- data/app/assets/javascripts/jquery-ui/form.js +22 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-af.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-ar-DZ.js +39 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-ar.js +39 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-az.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-be.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-bg.js +38 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-bs.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-ca.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-cs.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-cy-GB.js +45 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-da.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-de.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-el.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-en-AU.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-en-GB.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-en-NZ.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-eo.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-es.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-et.js +45 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-eu.js +36 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-fa.js +73 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-fi.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-fo.js +45 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-fr-CA.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-fr-CH.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-fr.js +39 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-gl.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-he.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-hi.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-hr.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-hu.js +36 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-hy.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-id.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-is.js +45 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-it-CH.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-it.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-ja.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-ka.js +48 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-kk.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-km.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-ko.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-ky.js +38 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-lb.js +45 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-lt.js +45 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-lv.js +45 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-mk.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-ml.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-ms.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-nb.js +49 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-nl-BE.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-nl.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-nn.js +49 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-no.js +50 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-pl.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-pt-BR.js +45 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-pt.js +44 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-rm.js +61 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-ro.js +40 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-ru.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-sk.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-sl.js +38 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-sq.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-sr-SR.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-sr.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-sv.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-ta.js +53 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-th.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-tj.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-tr.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-uk.js +38 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-vi.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-zh-CN.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-zh-HK.js +37 -0
- data/app/assets/javascripts/jquery-ui/i18n/datepicker-zh-TW.js +37 -0
- data/app/assets/javascripts/jquery-ui/ie.js +17 -0
- data/app/assets/javascripts/jquery-ui/jquery-1-7.js +91 -0
- data/app/assets/javascripts/jquery-ui/keycode.js +47 -0
- data/app/assets/javascripts/jquery-ui/labels.js +65 -0
- data/app/assets/javascripts/jquery-ui/plugin.js +46 -0
- data/app/assets/javascripts/jquery-ui/position.js +92 -109
- data/app/assets/javascripts/jquery-ui/safe-active-element.js +42 -0
- data/app/assets/javascripts/jquery-ui/safe-blur.js +23 -0
- data/app/assets/javascripts/jquery-ui/scroll-parent.js +47 -0
- data/app/assets/javascripts/jquery-ui/tabbable.js +38 -0
- data/app/assets/javascripts/jquery-ui/unique-id.js +51 -0
- data/app/assets/javascripts/jquery-ui/version.js +17 -0
- data/app/assets/javascripts/jquery-ui/widget.js +328 -151
- data/app/assets/javascripts/jquery-ui/{accordion.js → widgets/accordion.js} +187 -162
- data/app/assets/javascripts/jquery-ui/{autocomplete.js → widgets/autocomplete.js} +148 -92
- data/app/assets/javascripts/jquery-ui/widgets/button.js +391 -0
- data/app/assets/javascripts/jquery-ui/widgets/checkboxradio.js +291 -0
- data/app/assets/javascripts/jquery-ui/widgets/controlgroup.js +300 -0
- data/app/assets/javascripts/jquery-ui/widgets/datepicker.js +2123 -0
- data/app/assets/javascripts/jquery-ui/{dialog.js → widgets/dialog.js} +229 -158
- data/app/assets/javascripts/jquery-ui/{draggable.js → widgets/draggable.js} +416 -293
- data/app/assets/javascripts/jquery-ui/{droppable.js → widgets/droppable.js} +167 -83
- data/app/assets/javascripts/jquery-ui/{menu.js → widgets/menu.js} +164 -134
- data/app/assets/javascripts/jquery-ui/widgets/mouse.js +230 -0
- data/app/assets/javascripts/jquery-ui/{progressbar.js → widgets/progressbar.js} +60 -41
- data/app/assets/javascripts/jquery-ui/{resizable.js → widgets/resizable.js} +413 -362
- data/app/assets/javascripts/jquery-ui/widgets/selectable.js +314 -0
- data/app/assets/javascripts/jquery-ui/{selectmenu.js → widgets/selectmenu.js} +253 -176
- data/app/assets/javascripts/jquery-ui/{slider.js → widgets/slider.js} +193 -157
- data/app/assets/javascripts/jquery-ui/widgets/sortable.js +1561 -0
- data/app/assets/javascripts/jquery-ui/{spinner.js → widgets/spinner.js} +175 -112
- data/app/assets/javascripts/jquery-ui/{tabs.js → widgets/tabs.js} +237 -195
- data/app/assets/javascripts/jquery-ui/{tooltip.js → widgets/tooltip.js} +136 -87
- data/app/assets/stylesheets/jquery-ui/accordion.css +1 -15
- data/app/assets/stylesheets/jquery-ui/all.css +1 -1
- data/app/assets/stylesheets/jquery-ui/autocomplete.css +1 -3
- data/app/assets/stylesheets/jquery-ui/base.css +3 -1
- data/app/assets/stylesheets/jquery-ui/button.css +35 -68
- data/app/assets/stylesheets/jquery-ui/checkboxradio.css +37 -0
- data/app/assets/stylesheets/jquery-ui/controlgroup.css +68 -0
- data/app/assets/stylesheets/jquery-ui/core.css +11 -7
- data/app/assets/stylesheets/jquery-ui/datepicker.css +11 -2
- data/app/assets/stylesheets/jquery-ui/dialog.css +38 -11
- data/app/assets/stylesheets/jquery-ui/draggable.css +1 -2
- data/app/assets/stylesheets/jquery-ui/menu.css +7 -7
- data/app/assets/stylesheets/jquery-ui/progressbar.css +1 -2
- data/app/assets/stylesheets/jquery-ui/resizable.css +1 -2
- data/app/assets/stylesheets/jquery-ui/selectable.css +1 -2
- data/app/assets/stylesheets/jquery-ui/selectmenu.css +11 -22
- data/app/assets/stylesheets/jquery-ui/slider.css +1 -2
- data/app/assets/stylesheets/jquery-ui/sortable.css +1 -2
- data/app/assets/stylesheets/jquery-ui/spinner.css +7 -22
- data/app/assets/stylesheets/jquery-ui/tabs.css +1 -2
- data/app/assets/stylesheets/jquery-ui/theme.css.erb +113 -87
- data/app/assets/stylesheets/jquery-ui/tooltip.css +1 -4
- data/lib/jquery/ui/rails/version.rb +2 -2
- metadata +150 -144
- data/app/assets/images/jquery-ui/ui-bg_flat_75_ffffff_40x100.png +0 -0
- data/app/assets/images/jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
- data/app/assets/images/jquery-ui/ui-bg_glass_65_ffffff_1x400.png +0 -0
- data/app/assets/images/jquery-ui/ui-bg_glass_75_dadada_1x400.png +0 -0
- data/app/assets/images/jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
- data/app/assets/images/jquery-ui/ui-bg_glass_95_fef1ec_1x400.png +0 -0
- data/app/assets/images/jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
- data/app/assets/images/jquery-ui/ui-icons_222222_256x240.png +0 -0
- data/app/assets/images/jquery-ui/ui-icons_2e83ff_256x240.png +0 -0
- data/app/assets/images/jquery-ui/ui-icons_454545_256x240.png +0 -0
- data/app/assets/images/jquery-ui/ui-icons_888888_256x240.png +0 -0
- data/app/assets/images/jquery-ui/ui-icons_cd0a0a_256x240.png +0 -0
- data/app/assets/javascripts/jquery-ui/button.js +0 -414
- data/app/assets/javascripts/jquery-ui/datepicker-af.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-ar-DZ.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-ar.js +0 -38
- data/app/assets/javascripts/jquery-ui/datepicker-az.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-be.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-bg.js +0 -38
- data/app/assets/javascripts/jquery-ui/datepicker-bs.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-ca.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-cs.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-cy-GB.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-da.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-de.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-el.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-en-AU.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-en-GB.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-en-NZ.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-eo.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-es.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-et.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-eu.js +0 -36
- data/app/assets/javascripts/jquery-ui/datepicker-fa.js +0 -73
- data/app/assets/javascripts/jquery-ui/datepicker-fi.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-fo.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-fr-CA.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-fr-CH.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-fr.js +0 -39
- data/app/assets/javascripts/jquery-ui/datepicker-gl.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-he.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-hi.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-hr.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-hu.js +0 -36
- data/app/assets/javascripts/jquery-ui/datepicker-hy.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-id.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-is.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-it-CH.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-it.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-ja.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-ka.js +0 -35
- data/app/assets/javascripts/jquery-ui/datepicker-kk.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-km.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-ko.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-ky.js +0 -38
- data/app/assets/javascripts/jquery-ui/datepicker-lb.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-lt.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-lv.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-mk.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-ml.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-ms.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-nb.js +0 -36
- data/app/assets/javascripts/jquery-ui/datepicker-nl-BE.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-nl.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-nn.js +0 -36
- data/app/assets/javascripts/jquery-ui/datepicker-no.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-pl.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-pt-BR.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-pt.js +0 -36
- data/app/assets/javascripts/jquery-ui/datepicker-rm.js +0 -35
- data/app/assets/javascripts/jquery-ui/datepicker-ro.js +0 -40
- data/app/assets/javascripts/jquery-ui/datepicker-ru.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-sk.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-sl.js +0 -38
- data/app/assets/javascripts/jquery-ui/datepicker-sq.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-sr-SR.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-sr.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-sv.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-ta.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-th.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-tj.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-tr.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-uk.js +0 -38
- data/app/assets/javascripts/jquery-ui/datepicker-vi.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-zh-CN.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-zh-HK.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker-zh-TW.js +0 -37
- data/app/assets/javascripts/jquery-ui/datepicker.js +0 -2086
- data/app/assets/javascripts/jquery-ui/effect-blind.js +0 -92
- data/app/assets/javascripts/jquery-ui/effect-bounce.js +0 -125
- data/app/assets/javascripts/jquery-ui/effect-clip.js +0 -79
- data/app/assets/javascripts/jquery-ui/effect-drop.js +0 -77
- data/app/assets/javascripts/jquery-ui/effect-explode.js +0 -109
- data/app/assets/javascripts/jquery-ui/effect-fade.js +0 -42
- data/app/assets/javascripts/jquery-ui/effect-fold.js +0 -88
- data/app/assets/javascripts/jquery-ui/effect-highlight.js +0 -62
- data/app/assets/javascripts/jquery-ui/effect-puff.js +0 -63
- data/app/assets/javascripts/jquery-ui/effect-pulsate.js +0 -75
- data/app/assets/javascripts/jquery-ui/effect-scale.js +0 -92
- data/app/assets/javascripts/jquery-ui/effect-shake.js +0 -86
- data/app/assets/javascripts/jquery-ui/effect-size.js +0 -235
- data/app/assets/javascripts/jquery-ui/effect-slide.js +0 -76
- data/app/assets/javascripts/jquery-ui/effect-transfer.js +0 -59
- data/app/assets/javascripts/jquery-ui/mouse.js +0 -202
- data/app/assets/javascripts/jquery-ui/selectable.js +0 -291
- data/app/assets/javascripts/jquery-ui/sortable.js +0 -1319
@@ -0,0 +1,42 @@
|
|
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
|
+
return $.ui.safeActiveElement = function( document ) {
|
15
|
+
var activeElement;
|
16
|
+
|
17
|
+
// Support: IE 9 only
|
18
|
+
// IE9 throws an "Unspecified error" accessing document.activeElement from an <iframe>
|
19
|
+
try {
|
20
|
+
activeElement = document.activeElement;
|
21
|
+
} catch ( error ) {
|
22
|
+
activeElement = document.body;
|
23
|
+
}
|
24
|
+
|
25
|
+
// Support: IE 9 - 11 only
|
26
|
+
// IE may return null instead of an element
|
27
|
+
// Interestingly, this only seems to occur when NOT in an iframe
|
28
|
+
if ( !activeElement ) {
|
29
|
+
activeElement = document.body;
|
30
|
+
}
|
31
|
+
|
32
|
+
// Support: IE 11 only
|
33
|
+
// IE11 returns a seemingly empty object in some cases when accessing
|
34
|
+
// document.activeElement from an <iframe>
|
35
|
+
if ( !activeElement.nodeName ) {
|
36
|
+
activeElement = document.body;
|
37
|
+
}
|
38
|
+
|
39
|
+
return activeElement;
|
40
|
+
};
|
41
|
+
|
42
|
+
} ) );
|
@@ -0,0 +1,23 @@
|
|
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
|
+
return $.ui.safeBlur = function( element ) {
|
15
|
+
|
16
|
+
// Support: IE9 - 10 only
|
17
|
+
// If the <body> is blurred, IE will switch windows, see #9420
|
18
|
+
if ( element && element.nodeName.toLowerCase() !== "body" ) {
|
19
|
+
$( element ).trigger( "blur" );
|
20
|
+
}
|
21
|
+
};
|
22
|
+
|
23
|
+
} ) );
|
@@ -0,0 +1,47 @@
|
|
1
|
+
//= require jquery-ui/version
|
2
|
+
|
3
|
+
/*!
|
4
|
+
* jQuery UI Scroll Parent 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
|
+
|
12
|
+
//>>label: scrollParent
|
13
|
+
//>>group: Core
|
14
|
+
//>>description: Get the closest ancestor element that is scrollable.
|
15
|
+
//>>docs: http://api.jqueryui.com/scrollParent/
|
16
|
+
|
17
|
+
( function( factory ) {
|
18
|
+
if ( typeof define === "function" && define.amd ) {
|
19
|
+
|
20
|
+
// AMD. Register as an anonymous module.
|
21
|
+
define( [ "jquery", "./version" ], factory );
|
22
|
+
} else {
|
23
|
+
|
24
|
+
// Browser globals
|
25
|
+
factory( jQuery );
|
26
|
+
}
|
27
|
+
} ( function( $ ) {
|
28
|
+
|
29
|
+
return $.fn.scrollParent = function( includeHidden ) {
|
30
|
+
var position = this.css( "position" ),
|
31
|
+
excludeStaticParent = position === "absolute",
|
32
|
+
overflowRegex = includeHidden ? /(auto|scroll|hidden)/ : /(auto|scroll)/,
|
33
|
+
scrollParent = this.parents().filter( function() {
|
34
|
+
var parent = $( this );
|
35
|
+
if ( excludeStaticParent && parent.css( "position" ) === "static" ) {
|
36
|
+
return false;
|
37
|
+
}
|
38
|
+
return overflowRegex.test( parent.css( "overflow" ) + parent.css( "overflow-y" ) +
|
39
|
+
parent.css( "overflow-x" ) );
|
40
|
+
} ).eq( 0 );
|
41
|
+
|
42
|
+
return position === "fixed" || !scrollParent.length ?
|
43
|
+
$( this[ 0 ].ownerDocument || document ) :
|
44
|
+
scrollParent;
|
45
|
+
};
|
46
|
+
|
47
|
+
} ) );
|
@@ -0,0 +1,38 @@
|
|
1
|
+
//= require jquery-ui/version
|
2
|
+
//= require jquery-ui/focusable
|
3
|
+
|
4
|
+
/*!
|
5
|
+
* jQuery UI Tabbable 1.12.1
|
6
|
+
* http://jqueryui.com
|
7
|
+
*
|
8
|
+
* Copyright jQuery Foundation and other contributors
|
9
|
+
* Released under the MIT license.
|
10
|
+
* http://jquery.org/license
|
11
|
+
*/
|
12
|
+
|
13
|
+
//>>label: :tabbable Selector
|
14
|
+
//>>group: Core
|
15
|
+
//>>description: Selects elements which can be tabbed to.
|
16
|
+
//>>docs: http://api.jqueryui.com/tabbable-selector/
|
17
|
+
|
18
|
+
( function( factory ) {
|
19
|
+
if ( typeof define === "function" && define.amd ) {
|
20
|
+
|
21
|
+
// AMD. Register as an anonymous module.
|
22
|
+
define( [ "jquery", "./version", "./focusable" ], factory );
|
23
|
+
} else {
|
24
|
+
|
25
|
+
// Browser globals
|
26
|
+
factory( jQuery );
|
27
|
+
}
|
28
|
+
} ( function( $ ) {
|
29
|
+
|
30
|
+
return $.extend( $.expr[ ":" ], {
|
31
|
+
tabbable: function( element ) {
|
32
|
+
var tabIndex = $.attr( element, "tabindex" ),
|
33
|
+
hasTabindex = tabIndex != null;
|
34
|
+
return ( !hasTabindex || tabIndex >= 0 ) && $.ui.focusable( element, hasTabindex );
|
35
|
+
}
|
36
|
+
} );
|
37
|
+
|
38
|
+
} ) );
|
@@ -0,0 +1,51 @@
|
|
1
|
+
//= require jquery-ui/version
|
2
|
+
|
3
|
+
/*!
|
4
|
+
* jQuery UI Unique ID 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
|
+
|
12
|
+
//>>label: uniqueId
|
13
|
+
//>>group: Core
|
14
|
+
//>>description: Functions to generate and remove uniqueId's
|
15
|
+
//>>docs: http://api.jqueryui.com/uniqueId/
|
16
|
+
|
17
|
+
( function( factory ) {
|
18
|
+
if ( typeof define === "function" && define.amd ) {
|
19
|
+
|
20
|
+
// AMD. Register as an anonymous module.
|
21
|
+
define( [ "jquery", "./version" ], factory );
|
22
|
+
} else {
|
23
|
+
|
24
|
+
// Browser globals
|
25
|
+
factory( jQuery );
|
26
|
+
}
|
27
|
+
} ( function( $ ) {
|
28
|
+
|
29
|
+
return $.fn.extend( {
|
30
|
+
uniqueId: ( function() {
|
31
|
+
var uuid = 0;
|
32
|
+
|
33
|
+
return function() {
|
34
|
+
return this.each( function() {
|
35
|
+
if ( !this.id ) {
|
36
|
+
this.id = "ui-id-" + ( ++uuid );
|
37
|
+
}
|
38
|
+
} );
|
39
|
+
};
|
40
|
+
} )(),
|
41
|
+
|
42
|
+
removeUniqueId: function() {
|
43
|
+
return this.each( function() {
|
44
|
+
if ( /^ui-id-\d+$/.test( this.id ) ) {
|
45
|
+
$( this ).removeAttr( "id" );
|
46
|
+
}
|
47
|
+
} );
|
48
|
+
}
|
49
|
+
} );
|
50
|
+
|
51
|
+
} ) );
|
@@ -0,0 +1,17 @@
|
|
1
|
+
( function( factory ) {
|
2
|
+
if ( typeof define === "function" && define.amd ) {
|
3
|
+
|
4
|
+
// AMD. Register as an anonymous module.
|
5
|
+
define( [ "jquery" ], factory );
|
6
|
+
} else {
|
7
|
+
|
8
|
+
// Browser globals
|
9
|
+
factory( jQuery );
|
10
|
+
}
|
11
|
+
} ( function( $ ) {
|
12
|
+
|
13
|
+
$.ui = $.ui || {};
|
14
|
+
|
15
|
+
return $.ui.version = "1.12.1";
|
16
|
+
|
17
|
+
} ) );
|
@@ -1,32 +1,39 @@
|
|
1
|
+
//= require jquery-ui/version
|
2
|
+
|
1
3
|
/*!
|
2
|
-
* jQuery UI Widget 1.
|
4
|
+
* jQuery UI Widget 1.12.1
|
3
5
|
* http://jqueryui.com
|
4
6
|
*
|
5
7
|
* Copyright jQuery Foundation and other contributors
|
6
8
|
* Released under the MIT license.
|
7
9
|
* http://jquery.org/license
|
8
|
-
*
|
9
|
-
* http://api.jqueryui.com/jQuery.widget/
|
10
10
|
*/
|
11
|
-
|
11
|
+
|
12
|
+
//>>label: Widget
|
13
|
+
//>>group: Core
|
14
|
+
//>>description: Provides a factory for creating stateful widgets with a common API.
|
15
|
+
//>>docs: http://api.jqueryui.com/jQuery.widget/
|
16
|
+
//>>demos: http://jqueryui.com/widget/
|
17
|
+
|
18
|
+
( function( factory ) {
|
12
19
|
if ( typeof define === "function" && define.amd ) {
|
13
20
|
|
14
21
|
// AMD. Register as an anonymous module.
|
15
|
-
define( [ "jquery" ], factory );
|
22
|
+
define( [ "jquery", "./version" ], factory );
|
16
23
|
} else {
|
17
24
|
|
18
25
|
// Browser globals
|
19
26
|
factory( jQuery );
|
20
27
|
}
|
21
|
-
}(function( $ ) {
|
28
|
+
}( function( $ ) {
|
22
29
|
|
23
|
-
var
|
24
|
-
|
30
|
+
var widgetUuid = 0;
|
31
|
+
var widgetSlice = Array.prototype.slice;
|
25
32
|
|
26
|
-
$.cleanData = (function( orig ) {
|
33
|
+
$.cleanData = ( function( orig ) {
|
27
34
|
return function( elems ) {
|
28
35
|
var events, elem, i;
|
29
|
-
for ( i = 0; (elem = elems[i]) != null; i++ ) {
|
36
|
+
for ( i = 0; ( elem = elems[ i ] ) != null; i++ ) {
|
30
37
|
try {
|
31
38
|
|
32
39
|
// Only trigger remove when necessary to save time
|
@@ -35,29 +42,34 @@ $.cleanData = (function( orig ) {
|
|
35
42
|
$( elem ).triggerHandler( "remove" );
|
36
43
|
}
|
37
44
|
|
38
|
-
//
|
45
|
+
// Http://bugs.jquery.com/ticket/8235
|
39
46
|
} catch ( e ) {}
|
40
47
|
}
|
41
48
|
orig( elems );
|
42
49
|
};
|
43
|
-
})( $.cleanData );
|
50
|
+
} )( $.cleanData );
|
44
51
|
|
45
52
|
$.widget = function( name, base, prototype ) {
|
46
|
-
var
|
47
|
-
// proxiedPrototype allows the provided prototype to remain unmodified
|
48
|
-
// so that it can be used as a mixin for multiple widgets (#8876)
|
49
|
-
proxiedPrototype = {},
|
50
|
-
namespace = name.split( "." )[ 0 ];
|
53
|
+
var existingConstructor, constructor, basePrototype;
|
51
54
|
|
55
|
+
// ProxiedPrototype allows the provided prototype to remain unmodified
|
56
|
+
// so that it can be used as a mixin for multiple widgets (#8876)
|
57
|
+
var proxiedPrototype = {};
|
58
|
+
|
59
|
+
var namespace = name.split( "." )[ 0 ];
|
52
60
|
name = name.split( "." )[ 1 ];
|
53
|
-
fullName = namespace + "-" + name;
|
61
|
+
var fullName = namespace + "-" + name;
|
54
62
|
|
55
63
|
if ( !prototype ) {
|
56
64
|
prototype = base;
|
57
65
|
base = $.Widget;
|
58
66
|
}
|
59
67
|
|
60
|
-
|
68
|
+
if ( $.isArray( prototype ) ) {
|
69
|
+
prototype = $.extend.apply( null, [ {} ].concat( prototype ) );
|
70
|
+
}
|
71
|
+
|
72
|
+
// Create selector for plugin
|
61
73
|
$.expr[ ":" ][ fullName.toLowerCase() ] = function( elem ) {
|
62
74
|
return !!$.data( elem, fullName );
|
63
75
|
};
|
@@ -65,30 +77,35 @@ $.widget = function( name, base, prototype ) {
|
|
65
77
|
$[ namespace ] = $[ namespace ] || {};
|
66
78
|
existingConstructor = $[ namespace ][ name ];
|
67
79
|
constructor = $[ namespace ][ name ] = function( options, element ) {
|
68
|
-
|
80
|
+
|
81
|
+
// Allow instantiation without "new" keyword
|
69
82
|
if ( !this._createWidget ) {
|
70
83
|
return new constructor( options, element );
|
71
84
|
}
|
72
85
|
|
73
|
-
//
|
86
|
+
// Allow instantiation without initializing for simple inheritance
|
74
87
|
// must use "new" keyword (the code above always passes args)
|
75
88
|
if ( arguments.length ) {
|
76
89
|
this._createWidget( options, element );
|
77
90
|
}
|
78
91
|
};
|
79
|
-
|
92
|
+
|
93
|
+
// Extend with the existing constructor to carry over any static properties
|
80
94
|
$.extend( constructor, existingConstructor, {
|
81
95
|
version: prototype.version,
|
82
|
-
|
96
|
+
|
97
|
+
// Copy the object used to create the prototype in case we need to
|
83
98
|
// redefine the widget later
|
84
99
|
_proto: $.extend( {}, prototype ),
|
85
|
-
|
100
|
+
|
101
|
+
// Track widgets that inherit from this widget in case this widget is
|
86
102
|
// redefined after a widget inherits from it
|
87
103
|
_childConstructors: []
|
88
|
-
});
|
104
|
+
} );
|
89
105
|
|
90
106
|
basePrototype = new base();
|
91
|
-
|
107
|
+
|
108
|
+
// We need to make the options hash a property directly on the new instance
|
92
109
|
// otherwise we'll modify the options hash on the prototype that we're
|
93
110
|
// inheriting from
|
94
111
|
basePrototype.options = $.widget.extend( {}, basePrototype.options );
|
@@ -97,17 +114,19 @@ $.widget = function( name, base, prototype ) {
|
|
97
114
|
proxiedPrototype[ prop ] = value;
|
98
115
|
return;
|
99
116
|
}
|
100
|
-
proxiedPrototype[ prop ] = (function() {
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
117
|
+
proxiedPrototype[ prop ] = ( function() {
|
118
|
+
function _super() {
|
119
|
+
return base.prototype[ prop ].apply( this, arguments );
|
120
|
+
}
|
121
|
+
|
122
|
+
function _superApply( args ) {
|
123
|
+
return base.prototype[ prop ].apply( this, args );
|
124
|
+
}
|
125
|
+
|
107
126
|
return function() {
|
108
|
-
var __super = this._super
|
109
|
-
|
110
|
-
|
127
|
+
var __super = this._super;
|
128
|
+
var __superApply = this._superApply;
|
129
|
+
var returnValue;
|
111
130
|
|
112
131
|
this._super = _super;
|
113
132
|
this._superApply = _superApply;
|
@@ -119,19 +138,20 @@ $.widget = function( name, base, prototype ) {
|
|
119
138
|
|
120
139
|
return returnValue;
|
121
140
|
};
|
122
|
-
})();
|
123
|
-
});
|
141
|
+
} )();
|
142
|
+
} );
|
124
143
|
constructor.prototype = $.widget.extend( basePrototype, {
|
144
|
+
|
125
145
|
// TODO: remove support for widgetEventPrefix
|
126
146
|
// always use the name + a colon as the prefix, e.g., draggable:start
|
127
147
|
// don't prefix for widgets that aren't DOM-based
|
128
|
-
widgetEventPrefix: existingConstructor ? (basePrototype.widgetEventPrefix || name) : name
|
148
|
+
widgetEventPrefix: existingConstructor ? ( basePrototype.widgetEventPrefix || name ) : name
|
129
149
|
}, proxiedPrototype, {
|
130
150
|
constructor: constructor,
|
131
151
|
namespace: namespace,
|
132
152
|
widgetName: name,
|
133
153
|
widgetFullName: fullName
|
134
|
-
});
|
154
|
+
} );
|
135
155
|
|
136
156
|
// If this widget is being redefined then we need to find all widgets that
|
137
157
|
// are inheriting from it and redefine all of them so that they inherit from
|
@@ -141,11 +161,13 @@ $.widget = function( name, base, prototype ) {
|
|
141
161
|
$.each( existingConstructor._childConstructors, function( i, child ) {
|
142
162
|
var childPrototype = child.prototype;
|
143
163
|
|
144
|
-
//
|
164
|
+
// Redefine the child widget using the same prototype that was
|
145
165
|
// originally used, but inherit from the new version of the base
|
146
|
-
$.widget( childPrototype.namespace + "." + childPrototype.widgetName, constructor,
|
147
|
-
|
148
|
-
|
166
|
+
$.widget( childPrototype.namespace + "." + childPrototype.widgetName, constructor,
|
167
|
+
child._proto );
|
168
|
+
} );
|
169
|
+
|
170
|
+
// Remove the list of existing child constructors from the old constructor
|
149
171
|
// so the old child constructors can be garbage collected
|
150
172
|
delete existingConstructor._childConstructors;
|
151
173
|
} else {
|
@@ -158,21 +180,25 @@ $.widget = function( name, base, prototype ) {
|
|
158
180
|
};
|
159
181
|
|
160
182
|
$.widget.extend = function( target ) {
|
161
|
-
var input =
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
183
|
+
var input = widgetSlice.call( arguments, 1 );
|
184
|
+
var inputIndex = 0;
|
185
|
+
var inputLength = input.length;
|
186
|
+
var key;
|
187
|
+
var value;
|
188
|
+
|
166
189
|
for ( ; inputIndex < inputLength; inputIndex++ ) {
|
167
190
|
for ( key in input[ inputIndex ] ) {
|
168
191
|
value = input[ inputIndex ][ key ];
|
169
192
|
if ( input[ inputIndex ].hasOwnProperty( key ) && value !== undefined ) {
|
193
|
+
|
170
194
|
// Clone objects
|
171
195
|
if ( $.isPlainObject( value ) ) {
|
172
196
|
target[ key ] = $.isPlainObject( target[ key ] ) ?
|
173
197
|
$.widget.extend( {}, target[ key ], value ) :
|
198
|
+
|
174
199
|
// Don't extend strings, arrays, etc. with objects
|
175
200
|
$.widget.extend( {}, value );
|
201
|
+
|
176
202
|
// Copy everything else by reference
|
177
203
|
} else {
|
178
204
|
target[ key ] = value;
|
@@ -186,41 +212,55 @@ $.widget.extend = function( target ) {
|
|
186
212
|
$.widget.bridge = function( name, object ) {
|
187
213
|
var fullName = object.prototype.widgetFullName || name;
|
188
214
|
$.fn[ name ] = function( options ) {
|
189
|
-
var isMethodCall = typeof options === "string"
|
190
|
-
|
191
|
-
|
215
|
+
var isMethodCall = typeof options === "string";
|
216
|
+
var args = widgetSlice.call( arguments, 1 );
|
217
|
+
var returnValue = this;
|
192
218
|
|
193
219
|
if ( isMethodCall ) {
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
220
|
+
|
221
|
+
// If this is an empty collection, we need to have the instance method
|
222
|
+
// return undefined instead of the jQuery instance
|
223
|
+
if ( !this.length && options === "instance" ) {
|
224
|
+
returnValue = undefined;
|
225
|
+
} else {
|
226
|
+
this.each( function() {
|
227
|
+
var methodValue;
|
228
|
+
var instance = $.data( this, fullName );
|
229
|
+
|
230
|
+
if ( options === "instance" ) {
|
231
|
+
returnValue = instance;
|
232
|
+
return false;
|
233
|
+
}
|
234
|
+
|
235
|
+
if ( !instance ) {
|
236
|
+
return $.error( "cannot call methods on " + name +
|
237
|
+
" prior to initialization; " +
|
238
|
+
"attempted to call method '" + options + "'" );
|
239
|
+
}
|
240
|
+
|
241
|
+
if ( !$.isFunction( instance[ options ] ) || options.charAt( 0 ) === "_" ) {
|
242
|
+
return $.error( "no such method '" + options + "' for " + name +
|
243
|
+
" widget instance" );
|
244
|
+
}
|
245
|
+
|
246
|
+
methodValue = instance[ options ].apply( instance, args );
|
247
|
+
|
248
|
+
if ( methodValue !== instance && methodValue !== undefined ) {
|
249
|
+
returnValue = methodValue && methodValue.jquery ?
|
250
|
+
returnValue.pushStack( methodValue.get() ) :
|
251
|
+
methodValue;
|
252
|
+
return false;
|
253
|
+
}
|
254
|
+
} );
|
255
|
+
}
|
216
256
|
} else {
|
217
257
|
|
218
258
|
// Allow multiple hashes to be passed on init
|
219
259
|
if ( args.length ) {
|
220
|
-
options = $.widget.extend.apply( null, [ options ].concat(args) );
|
260
|
+
options = $.widget.extend.apply( null, [ options ].concat( args ) );
|
221
261
|
}
|
222
262
|
|
223
|
-
this.each(function() {
|
263
|
+
this.each( function() {
|
224
264
|
var instance = $.data( this, fullName );
|
225
265
|
if ( instance ) {
|
226
266
|
instance.option( options || {} );
|
@@ -230,7 +270,7 @@ $.widget.bridge = function( name, object ) {
|
|
230
270
|
} else {
|
231
271
|
$.data( this, fullName, new object( options, this ) );
|
232
272
|
}
|
233
|
-
});
|
273
|
+
} );
|
234
274
|
}
|
235
275
|
|
236
276
|
return returnValue;
|
@@ -244,21 +284,25 @@ $.Widget.prototype = {
|
|
244
284
|
widgetName: "widget",
|
245
285
|
widgetEventPrefix: "",
|
246
286
|
defaultElement: "<div>",
|
287
|
+
|
247
288
|
options: {
|
289
|
+
classes: {},
|
248
290
|
disabled: false,
|
249
291
|
|
250
|
-
//
|
292
|
+
// Callbacks
|
251
293
|
create: null
|
252
294
|
},
|
295
|
+
|
253
296
|
_createWidget: function( options, element ) {
|
254
297
|
element = $( element || this.defaultElement || this )[ 0 ];
|
255
298
|
this.element = $( element );
|
256
|
-
this.uuid =
|
299
|
+
this.uuid = widgetUuid++;
|
257
300
|
this.eventNamespace = "." + this.widgetName + this.uuid;
|
258
301
|
|
259
302
|
this.bindings = $();
|
260
303
|
this.hoverable = $();
|
261
304
|
this.focusable = $();
|
305
|
+
this.classesElementLookup = {};
|
262
306
|
|
263
307
|
if ( element !== this ) {
|
264
308
|
$.data( element, this.widgetFullName, this );
|
@@ -268,13 +312,15 @@ $.Widget.prototype = {
|
|
268
312
|
this.destroy();
|
269
313
|
}
|
270
314
|
}
|
271
|
-
});
|
315
|
+
} );
|
272
316
|
this.document = $( element.style ?
|
273
|
-
|
317
|
+
|
318
|
+
// Element within the document
|
274
319
|
element.ownerDocument :
|
275
|
-
|
320
|
+
|
321
|
+
// Element is window or document
|
276
322
|
element.document || element );
|
277
|
-
this.window = $( this.document[0].defaultView || this.document[0].parentWindow );
|
323
|
+
this.window = $( this.document[ 0 ].defaultView || this.document[ 0 ].parentWindow );
|
278
324
|
}
|
279
325
|
|
280
326
|
this.options = $.widget.extend( {},
|
@@ -283,36 +329,46 @@ $.Widget.prototype = {
|
|
283
329
|
options );
|
284
330
|
|
285
331
|
this._create();
|
332
|
+
|
333
|
+
if ( this.options.disabled ) {
|
334
|
+
this._setOptionDisabled( this.options.disabled );
|
335
|
+
}
|
336
|
+
|
286
337
|
this._trigger( "create", null, this._getCreateEventData() );
|
287
338
|
this._init();
|
288
339
|
},
|
289
|
-
|
340
|
+
|
341
|
+
_getCreateOptions: function() {
|
342
|
+
return {};
|
343
|
+
},
|
344
|
+
|
290
345
|
_getCreateEventData: $.noop,
|
346
|
+
|
291
347
|
_create: $.noop,
|
348
|
+
|
292
349
|
_init: $.noop,
|
293
350
|
|
294
351
|
destroy: function() {
|
352
|
+
var that = this;
|
353
|
+
|
295
354
|
this._destroy();
|
296
|
-
|
355
|
+
$.each( this.classesElementLookup, function( key, value ) {
|
356
|
+
that._removeClass( value, key );
|
357
|
+
} );
|
358
|
+
|
359
|
+
// We can probably remove the unbind calls in 2.0
|
297
360
|
// all event bindings should go through this._on()
|
298
361
|
this.element
|
299
|
-
.
|
300
|
-
.removeData( this.widgetFullName )
|
301
|
-
// support: jquery <1.6.3
|
302
|
-
// http://bugs.jquery.com/ticket/9413
|
303
|
-
.removeData( $.camelCase( this.widgetFullName ) );
|
362
|
+
.off( this.eventNamespace )
|
363
|
+
.removeData( this.widgetFullName );
|
304
364
|
this.widget()
|
305
|
-
.
|
306
|
-
.removeAttr( "aria-disabled" )
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
// clean up events and states
|
312
|
-
this.bindings.unbind( this.eventNamespace );
|
313
|
-
this.hoverable.removeClass( "ui-state-hover" );
|
314
|
-
this.focusable.removeClass( "ui-state-focus" );
|
365
|
+
.off( this.eventNamespace )
|
366
|
+
.removeAttr( "aria-disabled" );
|
367
|
+
|
368
|
+
// Clean up events and states
|
369
|
+
this.bindings.off( this.eventNamespace );
|
315
370
|
},
|
371
|
+
|
316
372
|
_destroy: $.noop,
|
317
373
|
|
318
374
|
widget: function() {
|
@@ -320,18 +376,20 @@ $.Widget.prototype = {
|
|
320
376
|
},
|
321
377
|
|
322
378
|
option: function( key, value ) {
|
323
|
-
var options = key
|
324
|
-
|
325
|
-
|
326
|
-
|
379
|
+
var options = key;
|
380
|
+
var parts;
|
381
|
+
var curOption;
|
382
|
+
var i;
|
327
383
|
|
328
384
|
if ( arguments.length === 0 ) {
|
329
|
-
|
385
|
+
|
386
|
+
// Don't return a reference to the internal hash
|
330
387
|
return $.widget.extend( {}, this.options );
|
331
388
|
}
|
332
389
|
|
333
390
|
if ( typeof key === "string" ) {
|
334
|
-
|
391
|
+
|
392
|
+
// Handle nested keys, e.g., "foo.bar" => { foo: { bar: ___ } }
|
335
393
|
options = {};
|
336
394
|
parts = key.split( "." );
|
337
395
|
key = parts.shift();
|
@@ -358,6 +416,7 @@ $.Widget.prototype = {
|
|
358
416
|
|
359
417
|
return this;
|
360
418
|
},
|
419
|
+
|
361
420
|
_setOptions: function( options ) {
|
362
421
|
var key;
|
363
422
|
|
@@ -367,42 +426,152 @@ $.Widget.prototype = {
|
|
367
426
|
|
368
427
|
return this;
|
369
428
|
},
|
429
|
+
|
370
430
|
_setOption: function( key, value ) {
|
431
|
+
if ( key === "classes" ) {
|
432
|
+
this._setOptionClasses( value );
|
433
|
+
}
|
434
|
+
|
371
435
|
this.options[ key ] = value;
|
372
436
|
|
373
437
|
if ( key === "disabled" ) {
|
374
|
-
this.
|
375
|
-
|
438
|
+
this._setOptionDisabled( value );
|
439
|
+
}
|
440
|
+
|
441
|
+
return this;
|
442
|
+
},
|
443
|
+
|
444
|
+
_setOptionClasses: function( value ) {
|
445
|
+
var classKey, elements, currentElements;
|
376
446
|
|
377
|
-
|
378
|
-
|
379
|
-
|
380
|
-
|
447
|
+
for ( classKey in value ) {
|
448
|
+
currentElements = this.classesElementLookup[ classKey ];
|
449
|
+
if ( value[ classKey ] === this.options.classes[ classKey ] ||
|
450
|
+
!currentElements ||
|
451
|
+
!currentElements.length ) {
|
452
|
+
continue;
|
381
453
|
}
|
454
|
+
|
455
|
+
// We are doing this to create a new jQuery object because the _removeClass() call
|
456
|
+
// on the next line is going to destroy the reference to the current elements being
|
457
|
+
// tracked. We need to save a copy of this collection so that we can add the new classes
|
458
|
+
// below.
|
459
|
+
elements = $( currentElements.get() );
|
460
|
+
this._removeClass( currentElements, classKey );
|
461
|
+
|
462
|
+
// We don't use _addClass() here, because that uses this.options.classes
|
463
|
+
// for generating the string of classes. We want to use the value passed in from
|
464
|
+
// _setOption(), this is the new value of the classes option which was passed to
|
465
|
+
// _setOption(). We pass this value directly to _classes().
|
466
|
+
elements.addClass( this._classes( {
|
467
|
+
element: elements,
|
468
|
+
keys: classKey,
|
469
|
+
classes: value,
|
470
|
+
add: true
|
471
|
+
} ) );
|
382
472
|
}
|
473
|
+
},
|
383
474
|
|
384
|
-
|
475
|
+
_setOptionDisabled: function( value ) {
|
476
|
+
this._toggleClass( this.widget(), this.widgetFullName + "-disabled", null, !!value );
|
477
|
+
|
478
|
+
// If the widget is becoming disabled, then nothing is interactive
|
479
|
+
if ( value ) {
|
480
|
+
this._removeClass( this.hoverable, null, "ui-state-hover" );
|
481
|
+
this._removeClass( this.focusable, null, "ui-state-focus" );
|
482
|
+
}
|
385
483
|
},
|
386
484
|
|
387
485
|
enable: function() {
|
388
|
-
return this._setOptions({ disabled: false });
|
486
|
+
return this._setOptions( { disabled: false } );
|
389
487
|
},
|
488
|
+
|
390
489
|
disable: function() {
|
391
|
-
return this._setOptions({ disabled: true });
|
490
|
+
return this._setOptions( { disabled: true } );
|
491
|
+
},
|
492
|
+
|
493
|
+
_classes: function( options ) {
|
494
|
+
var full = [];
|
495
|
+
var that = this;
|
496
|
+
|
497
|
+
options = $.extend( {
|
498
|
+
element: this.element,
|
499
|
+
classes: this.options.classes || {}
|
500
|
+
}, options );
|
501
|
+
|
502
|
+
function processClassString( classes, checkOption ) {
|
503
|
+
var current, i;
|
504
|
+
for ( i = 0; i < classes.length; i++ ) {
|
505
|
+
current = that.classesElementLookup[ classes[ i ] ] || $();
|
506
|
+
if ( options.add ) {
|
507
|
+
current = $( $.unique( current.get().concat( options.element.get() ) ) );
|
508
|
+
} else {
|
509
|
+
current = $( current.not( options.element ).get() );
|
510
|
+
}
|
511
|
+
that.classesElementLookup[ classes[ i ] ] = current;
|
512
|
+
full.push( classes[ i ] );
|
513
|
+
if ( checkOption && options.classes[ classes[ i ] ] ) {
|
514
|
+
full.push( options.classes[ classes[ i ] ] );
|
515
|
+
}
|
516
|
+
}
|
517
|
+
}
|
518
|
+
|
519
|
+
this._on( options.element, {
|
520
|
+
"remove": "_untrackClassesElement"
|
521
|
+
} );
|
522
|
+
|
523
|
+
if ( options.keys ) {
|
524
|
+
processClassString( options.keys.match( /\S+/g ) || [], true );
|
525
|
+
}
|
526
|
+
if ( options.extra ) {
|
527
|
+
processClassString( options.extra.match( /\S+/g ) || [] );
|
528
|
+
}
|
529
|
+
|
530
|
+
return full.join( " " );
|
531
|
+
},
|
532
|
+
|
533
|
+
_untrackClassesElement: function( event ) {
|
534
|
+
var that = this;
|
535
|
+
$.each( that.classesElementLookup, function( key, value ) {
|
536
|
+
if ( $.inArray( event.target, value ) !== -1 ) {
|
537
|
+
that.classesElementLookup[ key ] = $( value.not( event.target ).get() );
|
538
|
+
}
|
539
|
+
} );
|
540
|
+
},
|
541
|
+
|
542
|
+
_removeClass: function( element, keys, extra ) {
|
543
|
+
return this._toggleClass( element, keys, extra, false );
|
544
|
+
},
|
545
|
+
|
546
|
+
_addClass: function( element, keys, extra ) {
|
547
|
+
return this._toggleClass( element, keys, extra, true );
|
548
|
+
},
|
549
|
+
|
550
|
+
_toggleClass: function( element, keys, extra, add ) {
|
551
|
+
add = ( typeof add === "boolean" ) ? add : extra;
|
552
|
+
var shift = ( typeof element === "string" || element === null ),
|
553
|
+
options = {
|
554
|
+
extra: shift ? keys : extra,
|
555
|
+
keys: shift ? element : keys,
|
556
|
+
element: shift ? this.element : element,
|
557
|
+
add: add
|
558
|
+
};
|
559
|
+
options.element.toggleClass( this._classes( options ), add );
|
560
|
+
return this;
|
392
561
|
},
|
393
562
|
|
394
563
|
_on: function( suppressDisabledCheck, element, handlers ) {
|
395
|
-
var delegateElement
|
396
|
-
|
564
|
+
var delegateElement;
|
565
|
+
var instance = this;
|
397
566
|
|
398
|
-
//
|
567
|
+
// No suppressDisabledCheck flag, shuffle arguments
|
399
568
|
if ( typeof suppressDisabledCheck !== "boolean" ) {
|
400
569
|
handlers = element;
|
401
570
|
element = suppressDisabledCheck;
|
402
571
|
suppressDisabledCheck = false;
|
403
572
|
}
|
404
573
|
|
405
|
-
//
|
574
|
+
// No element argument, shuffle and use this.element
|
406
575
|
if ( !handlers ) {
|
407
576
|
handlers = element;
|
408
577
|
element = this.element;
|
@@ -414,39 +583,41 @@ $.Widget.prototype = {
|
|
414
583
|
|
415
584
|
$.each( handlers, function( event, handler ) {
|
416
585
|
function handlerProxy() {
|
417
|
-
|
586
|
+
|
587
|
+
// Allow widgets to customize the disabled handling
|
418
588
|
// - disabled as an array instead of boolean
|
419
589
|
// - disabled class as method for disabling individual parts
|
420
590
|
if ( !suppressDisabledCheck &&
|
421
591
|
( instance.options.disabled === true ||
|
422
|
-
|
592
|
+
$( this ).hasClass( "ui-state-disabled" ) ) ) {
|
423
593
|
return;
|
424
594
|
}
|
425
595
|
return ( typeof handler === "string" ? instance[ handler ] : handler )
|
426
596
|
.apply( instance, arguments );
|
427
597
|
}
|
428
598
|
|
429
|
-
//
|
599
|
+
// Copy the guid so direct unbinding works
|
430
600
|
if ( typeof handler !== "string" ) {
|
431
601
|
handlerProxy.guid = handler.guid =
|
432
602
|
handler.guid || handlerProxy.guid || $.guid++;
|
433
603
|
}
|
434
604
|
|
435
|
-
var match = event.match( /^([\w:-]*)\s*(.*)$/ )
|
436
|
-
|
437
|
-
|
605
|
+
var match = event.match( /^([\w:-]*)\s*(.*)$/ );
|
606
|
+
var eventName = match[ 1 ] + instance.eventNamespace;
|
607
|
+
var selector = match[ 2 ];
|
608
|
+
|
438
609
|
if ( selector ) {
|
439
|
-
delegateElement.
|
610
|
+
delegateElement.on( eventName, selector, handlerProxy );
|
440
611
|
} else {
|
441
|
-
element.
|
612
|
+
element.on( eventName, handlerProxy );
|
442
613
|
}
|
443
|
-
});
|
614
|
+
} );
|
444
615
|
},
|
445
616
|
|
446
617
|
_off: function( element, eventName ) {
|
447
|
-
eventName = (eventName || "").split( " " ).join( this.eventNamespace + " " ) +
|
618
|
+
eventName = ( eventName || "" ).split( " " ).join( this.eventNamespace + " " ) +
|
448
619
|
this.eventNamespace;
|
449
|
-
element.
|
620
|
+
element.off( eventName ).off( eventName );
|
450
621
|
|
451
622
|
// Clear the stack to avoid memory leaks (#10056)
|
452
623
|
this.bindings = $( this.bindings.not( element ).get() );
|
@@ -467,40 +638,41 @@ $.Widget.prototype = {
|
|
467
638
|
this.hoverable = this.hoverable.add( element );
|
468
639
|
this._on( element, {
|
469
640
|
mouseenter: function( event ) {
|
470
|
-
$( event.currentTarget )
|
641
|
+
this._addClass( $( event.currentTarget ), null, "ui-state-hover" );
|
471
642
|
},
|
472
643
|
mouseleave: function( event ) {
|
473
|
-
$( event.currentTarget )
|
644
|
+
this._removeClass( $( event.currentTarget ), null, "ui-state-hover" );
|
474
645
|
}
|
475
|
-
});
|
646
|
+
} );
|
476
647
|
},
|
477
648
|
|
478
649
|
_focusable: function( element ) {
|
479
650
|
this.focusable = this.focusable.add( element );
|
480
651
|
this._on( element, {
|
481
652
|
focusin: function( event ) {
|
482
|
-
$( event.currentTarget )
|
653
|
+
this._addClass( $( event.currentTarget ), null, "ui-state-focus" );
|
483
654
|
},
|
484
655
|
focusout: function( event ) {
|
485
|
-
$( event.currentTarget )
|
656
|
+
this._removeClass( $( event.currentTarget ), null, "ui-state-focus" );
|
486
657
|
}
|
487
|
-
});
|
658
|
+
} );
|
488
659
|
},
|
489
660
|
|
490
661
|
_trigger: function( type, event, data ) {
|
491
|
-
var prop, orig
|
492
|
-
|
662
|
+
var prop, orig;
|
663
|
+
var callback = this.options[ type ];
|
493
664
|
|
494
665
|
data = data || {};
|
495
666
|
event = $.Event( event );
|
496
667
|
event.type = ( type === this.widgetEventPrefix ?
|
497
668
|
type :
|
498
669
|
this.widgetEventPrefix + type ).toLowerCase();
|
499
|
-
|
670
|
+
|
671
|
+
// The original event may come from any element
|
500
672
|
// so we need to reset the target on the new event
|
501
673
|
event.target = this.element[ 0 ];
|
502
674
|
|
503
|
-
//
|
675
|
+
// Copy original event properties over to the new event
|
504
676
|
orig = event.originalEvent;
|
505
677
|
if ( orig ) {
|
506
678
|
for ( prop in orig ) {
|
@@ -512,7 +684,7 @@ $.Widget.prototype = {
|
|
512
684
|
|
513
685
|
this.element.trigger( event, data );
|
514
686
|
return !( $.isFunction( callback ) &&
|
515
|
-
callback.apply( this.element[0], [ event ].concat( data ) ) === false ||
|
687
|
+
callback.apply( this.element[ 0 ], [ event ].concat( data ) ) === false ||
|
516
688
|
event.isDefaultPrevented() );
|
517
689
|
}
|
518
690
|
};
|
@@ -522,37 +694,42 @@ $.each( { show: "fadeIn", hide: "fadeOut" }, function( method, defaultEffect ) {
|
|
522
694
|
if ( typeof options === "string" ) {
|
523
695
|
options = { effect: options };
|
524
696
|
}
|
525
|
-
|
526
|
-
|
527
|
-
|
528
|
-
|
529
|
-
|
530
|
-
|
697
|
+
|
698
|
+
var hasOptions;
|
699
|
+
var effectName = !options ?
|
700
|
+
method :
|
701
|
+
options === true || typeof options === "number" ?
|
702
|
+
defaultEffect :
|
703
|
+
options.effect || defaultEffect;
|
704
|
+
|
531
705
|
options = options || {};
|
532
706
|
if ( typeof options === "number" ) {
|
533
707
|
options = { duration: options };
|
534
708
|
}
|
709
|
+
|
535
710
|
hasOptions = !$.isEmptyObject( options );
|
536
711
|
options.complete = callback;
|
712
|
+
|
537
713
|
if ( options.delay ) {
|
538
714
|
element.delay( options.delay );
|
539
715
|
}
|
716
|
+
|
540
717
|
if ( hasOptions && $.effects && $.effects.effect[ effectName ] ) {
|
541
718
|
element[ method ]( options );
|
542
719
|
} else if ( effectName !== method && element[ effectName ] ) {
|
543
720
|
element[ effectName ]( options.duration, options.easing, callback );
|
544
721
|
} else {
|
545
|
-
element.queue(function( next ) {
|
722
|
+
element.queue( function( next ) {
|
546
723
|
$( this )[ method ]();
|
547
724
|
if ( callback ) {
|
548
725
|
callback.call( element[ 0 ] );
|
549
726
|
}
|
550
727
|
next();
|
551
|
-
});
|
728
|
+
} );
|
552
729
|
}
|
553
730
|
};
|
554
|
-
});
|
731
|
+
} );
|
555
732
|
|
556
733
|
return $.widget;
|
557
734
|
|
558
|
-
}));
|
735
|
+
} ) );
|