diff --git a/README.md b/README.md index f37e1ee7b..fcba0e4a3 100644 --- a/README.md +++ b/README.md @@ -467,7 +467,7 @@ You can now drag in/out of parent into nested child, with new API parameters val # jQuery Application -We now have a native HTML5 drag'n'drop through the plugin system (default), but the jquery-ui version can be used instead. It will bundle `jquery` (3.5.1) + `jquery-ui` (1.12.1 minimal drag|drop|resize) + `jquery-ui-touch-punch` (1.0.8 for mobile support) in `gridstack-jq.js`. +We now have a native HTML5 drag'n'drop through the plugin system (default), but the jquery-ui version can be used instead. It will bundle `jquery` (3.5.1) + `jquery-ui` (1.13.1 minimal drag|drop|resize) + `jquery-ui-touch-punch` (1.0.8 for mobile support) in `gridstack-jq.js`. **NOTE: in v4, v3**: we ES6 module import jquery & jquery-ui by name, so you need to specify location of those .js files, which means you might be able to bring your own version as well. See the include instructions. diff --git a/doc/CHANGES.md b/doc/CHANGES.md index b1ff674bd..0408e8646 100644 --- a/doc/CHANGES.md +++ b/doc/CHANGES.md @@ -71,6 +71,7 @@ Change log ## 5.0.0-dev (TBD) * add `GridStack.registerEngine()` to let user use their own custom layout engine subclass. Thank you [Thomas] for sponsoring it. * grid option `minWidth` is now `oneColumnSize` to make it clearer, but old field will still work (JS only) for a while +* updated jqueryui to latest v1.13.1 ## 5.0.0 (2022-01-10) * add [#992](https://github.com/gridstack/gridstack.js/issues/992) support dragging into and out of nested grids from parents! Thank you [@arclogos132](https://github.com/arclogos132) for sponsoring it. diff --git a/package.json b/package.json index fc0e299d6..3eaeadcdd 100644 --- a/package.json +++ b/package.json @@ -58,8 +58,8 @@ "homepage": "http://gridstack.github.io/gridstack.js/", "devDependencies": { "@types/jasmine": "^3.5.9", - "@types/jquery": "^3.5.1", - "@types/jqueryui": "^1.12.13", + "@types/jquery": "^3.5.14", + "@types/jqueryui": "^1.12.16", "@typescript-eslint/eslint-plugin": "^4.6.0", "@typescript-eslint/parser": "^4.6.0", "connect": "^3.7.0", diff --git a/src/jq/jquery-ui.js b/src/jq/jquery-ui.js index 89630ee83..cae5d8051 100644 --- a/src/jq/jquery-ui.js +++ b/src/jq/jquery-ui.js @@ -1,27 +1,30 @@ -/*! jQuery UI - v1.12.1 - 2021-01-24 +/*! jQuery UI - v1.13.1 - 2022-03-31 * http://jqueryui.com * Includes: widget.js, data.js, disable-selection.js, scroll-parent.js, widgets/draggable.js, widgets/droppable.js, widgets/resizable.js, widgets/mouse.js * Copyright jQuery Foundation and other contributors; Licensed MIT */ -(function( factory ) { +( function( factory ) { + "use strict"; + if ( typeof define === "function" && define.amd ) { // AMD. Register as an anonymous module. - define([ "jquery" ], factory ); + define( [ "jquery" ], factory ); } else { // Browser globals factory( jQuery ); } -}(function( $ ) { +} )( function( $ ) { +"use strict"; $.ui = $.ui || {}; -var version = $.ui.version = "1.12.1"; +var version = $.ui.version = "1.13.1"; /*! - * jQuery UI Widget 1.12.1 + * jQuery UI Widget 1.13.1 * http://jqueryui.com * * Copyright jQuery Foundation and other contributors @@ -36,24 +39,20 @@ var version = $.ui.version = "1.12.1"; //>>demos: http://jqueryui.com/widget/ - var widgetUuid = 0; +var widgetHasOwnProperty = Array.prototype.hasOwnProperty; var widgetSlice = Array.prototype.slice; $.cleanData = ( function( orig ) { return function( elems ) { var events, elem, i; for ( i = 0; ( elem = elems[ i ] ) != null; i++ ) { - try { - - // Only trigger remove when necessary to save time - events = $._data( elem, "events" ); - if ( events && events.remove ) { - $( elem ).triggerHandler( "remove" ); - } - // Http://bugs.jquery.com/ticket/8235 - } catch ( e ) {} + // Only trigger remove when necessary to save time + events = $._data( elem, "events" ); + if ( events && events.remove ) { + $( elem ).triggerHandler( "remove" ); + } } orig( elems ); }; @@ -75,12 +74,12 @@ $.widget = function( name, base, prototype ) { base = $.Widget; } - if ( $.isArray( prototype ) ) { + if ( Array.isArray( prototype ) ) { prototype = $.extend.apply( null, [ {} ].concat( prototype ) ); } // Create selector for plugin - $.expr[ ":" ][ fullName.toLowerCase() ] = function( elem ) { + $.expr.pseudos[ fullName.toLowerCase() ] = function( elem ) { return !!$.data( elem, fullName ); }; @@ -89,7 +88,7 @@ $.widget = function( name, base, prototype ) { constructor = $[ namespace ][ name ] = function( options, element ) { // Allow instantiation without "new" keyword - if ( !this._createWidget ) { + if ( !this || !this._createWidget ) { return new constructor( options, element ); } @@ -120,7 +119,7 @@ $.widget = function( name, base, prototype ) { // inheriting from basePrototype.options = $.widget.extend( {}, basePrototype.options ); $.each( prototype, function( prop, value ) { - if ( !$.isFunction( value ) ) { + if ( typeof value !== "function" ) { proxiedPrototype[ prop ] = value; return; } @@ -199,7 +198,7 @@ $.widget.extend = function( target ) { for ( ; inputIndex < inputLength; inputIndex++ ) { for ( key in input[ inputIndex ] ) { value = input[ inputIndex ][ key ]; - if ( input[ inputIndex ].hasOwnProperty( key ) && value !== undefined ) { + if ( widgetHasOwnProperty.call( input[ inputIndex ], key ) && value !== undefined ) { // Clone objects if ( $.isPlainObject( value ) ) { @@ -248,7 +247,8 @@ $.widget.bridge = function( name, object ) { "attempted to call method '" + options + "'" ); } - if ( !$.isFunction( instance[ options ] ) || options.charAt( 0 ) === "_" ) { + if ( typeof instance[ options ] !== "function" || + options.charAt( 0 ) === "_" ) { return $.error( "no such method '" + options + "' for " + name + " widget instance" ); } @@ -509,12 +509,34 @@ $.Widget.prototype = { classes: this.options.classes || {} }, options ); + function bindRemoveEvent() { + var nodesToBind = []; + + options.element.each( function( _, element ) { + var isTracked = $.map( that.classesElementLookup, function( elements ) { + return elements; + } ) + .some( function( elements ) { + return elements.is( element ); + } ); + + if ( !isTracked ) { + nodesToBind.push( element ); + } + } ); + + that._on( $( nodesToBind ), { + remove: "_untrackClassesElement" + } ); + } + function processClassString( classes, checkOption ) { var current, i; for ( i = 0; i < classes.length; i++ ) { current = that.classesElementLookup[ classes[ i ] ] || $(); if ( options.add ) { - current = $( $.unique( current.get().concat( options.element.get() ) ) ); + bindRemoveEvent(); + current = $( $.uniqueSort( current.get().concat( options.element.get() ) ) ); } else { current = $( current.not( options.element ).get() ); } @@ -526,10 +548,6 @@ $.Widget.prototype = { } } - this._on( options.element, { - "remove": "_untrackClassesElement" - } ); - if ( options.keys ) { processClassString( options.keys.match( /\S+/g ) || [], true ); } @@ -547,6 +565,8 @@ $.Widget.prototype = { that.classesElementLookup[ key ] = $( value.not( event.target ).get() ); } } ); + + this._off( $( event.target ) ); }, _removeClass: function( element, keys, extra ) { @@ -627,7 +647,7 @@ $.Widget.prototype = { _off: function( element, eventName ) { eventName = ( eventName || "" ).split( " " ).join( this.eventNamespace + " " ) + this.eventNamespace; - element.off( eventName ).off( eventName ); + element.off( eventName ); // Clear the stack to avoid memory leaks (#10056) this.bindings = $( this.bindings.not( element ).get() ); @@ -693,7 +713,7 @@ $.Widget.prototype = { } this.element.trigger( event, data ); - return !( $.isFunction( callback ) && + return !( typeof callback === "function" && callback.apply( this.element[ 0 ], [ event ].concat( data ) ) === false || event.isDefaultPrevented() ); } @@ -715,6 +735,8 @@ $.each( { show: "fadeIn", hide: "fadeOut" }, function( method, defaultEffect ) { options = options || {}; if ( typeof options === "number" ) { options = { duration: options }; + } else if ( options === true ) { + options = {}; } hasOptions = !$.isEmptyObject( options ); @@ -744,7 +766,7 @@ var widget = $.widget; /*! - * jQuery UI :data 1.12.1 + * jQuery UI :data 1.13.1 * http://jqueryui.com * * Copyright jQuery Foundation and other contributors @@ -758,7 +780,7 @@ var widget = $.widget; //>>docs: http://api.jqueryui.com/data-selector/ -var data = $.extend( $.expr[ ":" ], { +var data = $.extend( $.expr.pseudos, { data: $.expr.createPseudo ? $.expr.createPseudo( function( dataName ) { return function( elem ) { @@ -773,7 +795,7 @@ var data = $.extend( $.expr[ ":" ], { } ); /*! - * jQuery UI Disable Selection 1.12.1 + * jQuery UI Disable Selection 1.13.1 * http://jqueryui.com * * Copyright jQuery Foundation and other contributors @@ -788,7 +810,6 @@ var data = $.extend( $.expr[ ":" ], { // This file is deprecated - var disableSelection = $.fn.extend( { disableSelection: ( function() { var eventType = "onselectstart" in document.createElement( "div" ) ? @@ -809,7 +830,7 @@ var disableSelection = $.fn.extend( { /*! - * jQuery UI Scroll Parent 1.12.1 + * jQuery UI Scroll Parent 1.13.1 * http://jqueryui.com * * Copyright jQuery Foundation and other contributors @@ -823,7 +844,6 @@ var disableSelection = $.fn.extend( { //>>docs: http://api.jqueryui.com/scrollParent/ - var scrollParent = $.fn.scrollParent = function( includeHidden ) { var position = this.css( "position" ), excludeStaticParent = position === "absolute", @@ -844,12 +864,11 @@ var scrollParent = $.fn.scrollParent = function( includeHidden ) { - // This file is deprecated var ie = $.ui.ie = !!/msie [\w.]+/.exec( navigator.userAgent.toLowerCase() ); /*! - * jQuery UI Mouse 1.12.1 + * jQuery UI Mouse 1.13.1 * http://jqueryui.com * * Copyright jQuery Foundation and other contributors @@ -863,14 +882,13 @@ var ie = $.ui.ie = !!/msie [\w.]+/.exec( navigator.userAgent.toLowerCase() ); //>>docs: http://api.jqueryui.com/mouse/ - var mouseHandled = false; $( document ).on( "mouseup", function() { mouseHandled = false; } ); var widgetsMouse = $.widget( "ui.mouse", { - version: "1.12.1", + version: "1.13.1", options: { cancel: "input, textarea, button, select, option", distance: 1, @@ -915,7 +933,9 @@ var widgetsMouse = $.widget( "ui.mouse", { this._mouseMoved = false; // We may have missed mouseup (out of window) - ( this._mouseStarted && this._mouseUp( event ) ); + if ( this._mouseStarted ) { + this._mouseUp( event ); + } this._mouseDownEvent = event; @@ -1008,7 +1028,11 @@ var widgetsMouse = $.widget( "ui.mouse", { if ( this._mouseDistanceMet( event ) && this._mouseDelayMet( event ) ) { this._mouseStarted = ( this._mouseStart( this._mouseDownEvent, event ) !== false ); - ( this._mouseStarted ? this._mouseDrag( event ) : this._mouseUp( event ) ); + if ( this._mouseStarted ) { + this._mouseDrag( event ); + } else { + this._mouseUp( event ); + } } return !this._mouseStarted; @@ -1055,12 +1079,13 @@ var widgetsMouse = $.widget( "ui.mouse", { _mouseStart: function( /* event */ ) {}, _mouseDrag: function( /* event */ ) {}, _mouseStop: function( /* event */ ) {}, - _mouseCapture: function( /* event */ ) { return true; } + _mouseCapture: function( /* event */ ) { + return true; + } } ); - // $.ui.plugin is deprecated. Use $.widget() extensions instead. var plugin = $.ui.plugin = { add: function( module, option, set ) { @@ -1135,7 +1160,7 @@ var safeBlur = $.ui.safeBlur = function( element ) { /*! - * jQuery UI Draggable 1.12.1 + * jQuery UI Draggable 1.13.1 * http://jqueryui.com * * Copyright jQuery Foundation and other contributors @@ -1151,9 +1176,8 @@ var safeBlur = $.ui.safeBlur = function( element ) { //>>css.structure: ../../themes/base/draggable.css - $.widget( "ui.draggable", $.ui.mouse, { - version: "1.12.1", + version: "1.13.1", widgetEventPrefix: "drag", options: { addClasses: true, @@ -1317,7 +1341,9 @@ $.widget( "ui.draggable", $.ui.mouse, { this.originalPageY = event.pageY; //Adjust the mouse offset relative to the helper if "cursorAt" is supplied - ( o.cursorAt && this._adjustOffsetFromHelper( o.cursorAt ) ); + if ( o.cursorAt ) { + this._adjustOffsetFromHelper( o.cursorAt ); + } //Set a containment if given in the options this._setContainment(); @@ -1412,7 +1438,7 @@ $.widget( "ui.draggable", $.ui.mouse, { if ( ( this.options.revert === "invalid" && !dropped ) || ( this.options.revert === "valid" && dropped ) || - this.options.revert === true || ( $.isFunction( this.options.revert ) && + this.options.revert === true || ( typeof this.options.revert === "function" && this.options.revert.call( this.element, dropped ) ) ) { $( this.helper ).animate( @@ -1484,7 +1510,7 @@ $.widget( "ui.draggable", $.ui.mouse, { _createHelper: function( event ) { var o = this.options, - helperIsFunction = $.isFunction( o.helper ), + helperIsFunction = typeof o.helper === "function", helper = helperIsFunction ? $( o.helper.apply( this.element[ 0 ], [ event ] ) ) : ( o.helper === "clone" ? @@ -1523,7 +1549,7 @@ $.widget( "ui.draggable", $.ui.mouse, { if ( typeof obj === "string" ) { obj = obj.split( " " ); } - if ( $.isArray( obj ) ) { + if ( Array.isArray( obj ) ) { obj = { left: +obj[ 0 ], top: +obj[ 1 ] || 0 }; } if ( "left" in obj ) { @@ -2232,12 +2258,13 @@ $.ui.plugin.add( "draggable", "snap", { !$.contains( inst.snapElements[ i ].item.ownerDocument, inst.snapElements[ i ].item ) ) { if ( inst.snapElements[ i ].snapping ) { - ( inst.options.snap.release && + if ( inst.options.snap.release ) { inst.options.snap.release.call( inst.element, event, $.extend( inst._uiHash(), { snapItem: inst.snapElements[ i ].item } ) - ) ); + ); + } } inst.snapElements[ i ].snapping = false; continue; @@ -2308,13 +2335,14 @@ $.ui.plugin.add( "draggable", "snap", { } if ( !inst.snapElements[ i ].snapping && ( ts || bs || ls || rs || first ) ) { - ( inst.options.snap.snap && + if ( inst.options.snap.snap ) { inst.options.snap.snap.call( inst.element, event, $.extend( inst._uiHash(), { snapItem: inst.snapElements[ i ].item - } ) ) ); + } ) ); + } } inst.snapElements[ i ].snapping = ( ts || bs || ls || rs || first ); @@ -2332,7 +2360,9 @@ $.ui.plugin.add( "draggable", "stack", { ( parseInt( $( b ).css( "zIndex" ), 10 ) || 0 ); } ); - if ( !group.length ) { return; } + if ( !group.length ) { + return; + } min = parseInt( $( group[ 0 ] ).css( "zIndex" ), 10 ) || 0; $( group ).each( function( i ) { @@ -2365,7 +2395,7 @@ var widgetsDraggable = $.ui.draggable; /*! - * jQuery UI Droppable 1.12.1 + * jQuery UI Droppable 1.13.1 * http://jqueryui.com * * Copyright jQuery Foundation and other contributors @@ -2380,9 +2410,8 @@ var widgetsDraggable = $.ui.draggable; //>>demos: http://jqueryui.com/droppable/ - $.widget( "ui.droppable", { - version: "1.12.1", + version: "1.13.1", widgetEventPrefix: "drop", options: { accept: "*", @@ -2407,7 +2436,7 @@ $.widget( "ui.droppable", { this.isover = false; this.isout = true; - this.accept = $.isFunction( accept ) ? accept : function( d ) { + this.accept = typeof accept === "function" ? accept : function( d ) { return d.is( accept ); }; @@ -2430,7 +2459,9 @@ $.widget( "ui.droppable", { this._addToManager( o.scope ); - o.addClasses && this._addClass( "ui-droppable" ); + if ( o.addClasses ) { + this._addClass( "ui-droppable" ); + } }, @@ -2459,7 +2490,7 @@ $.widget( "ui.droppable", { _setOption: function( key, value ) { if ( key === "accept" ) { - this.accept = $.isFunction( value ) ? value : function( d ) { + this.accept = typeof value === "function" ? value : function( d ) { return d.is( value ); }; } else if ( key === "scope" ) { @@ -2549,14 +2580,15 @@ $.widget( "ui.droppable", { inst.accept.call( inst.element[ 0 ], ( draggable.currentItem || draggable.element ) ) && - intersect( + $.ui.intersect( draggable, $.extend( inst, { offset: inst.element.offset() } ), inst.options.tolerance, event ) ) { childrenIntersection = true; - return false; } + return false; + } } ); if ( childrenIntersection ) { return false; @@ -2585,7 +2617,7 @@ $.widget( "ui.droppable", { }, // Extension points just to make backcompat sane and avoid duplicating logic - // TODO: Remove in 1.13 along with call to it below + // TODO: Remove in 1.14 along with call to it below _addHoverClass: function() { this._addClass( "ui-droppable-hover" ); }, @@ -2603,7 +2635,7 @@ $.widget( "ui.droppable", { } } ); -var intersect = $.ui.intersect = ( function() { +$.ui.intersect = ( function() { function isOverAxis( x, reference, size ) { return ( x >= reference ) && ( x < ( reference + size ) ); } @@ -2711,7 +2743,7 @@ $.ui.ddmanager = { return; } if ( !this.options.disabled && this.visible && - intersect( draggable, this, this.options.tolerance, event ) ) { + $.ui.intersect( draggable, this, this.options.tolerance, event ) ) { dropped = this._drop.call( this, event ) || dropped; } @@ -2752,7 +2784,7 @@ $.ui.ddmanager = { } var parentInstance, scope, parent, - intersects = intersect( draggable, this, this.options.tolerance, event ), + intersects = $.ui.intersect( draggable, this, this.options.tolerance, event ), c = !intersects && this.isover ? "isout" : ( intersects && !this.isover ? "isover" : null ); @@ -2846,7 +2878,7 @@ var widgetsDroppable = $.ui.droppable; /*! - * jQuery UI Resizable 1.12.1 + * jQuery UI Resizable 1.13.1 * http://jqueryui.com * * Copyright jQuery Foundation and other contributors @@ -2864,9 +2896,8 @@ var widgetsDroppable = $.ui.droppable; //>>css.theme: ../../themes/base/theme.css - $.widget( "ui.resizable", $.ui.mouse, { - version: "1.12.1", + version: "1.13.1", widgetEventPrefix: "resize", options: { alsoResize: false, @@ -2921,9 +2952,15 @@ $.widget( "ui.resizable", $.ui.mouse, { // TODO: determine which cases actually cause this to happen // if the element doesn't have the scroll set, see if it's possible to // set the scroll - el[ scroll ] = 1; - has = ( el[ scroll ] > 0 ); - el[ scroll ] = 0; + try { + el[ scroll ] = 1; + has = ( el[ scroll ] > 0 ); + el[ scroll ] = 0; + } catch ( e ) { + + // `el` might be a string, then setting `scroll` will throw + // an error in strict mode; ignore it. + } return has; }, @@ -2946,7 +2983,8 @@ $.widget( "ui.resizable", $.ui.mouse, { if ( this.element[ 0 ].nodeName.match( /^(canvas|textarea|input|select|button|img)$/i ) ) { this.element.wrap( - $( "
" ).css( { + $( "
" ).css( { + overflow: "hidden", position: this.element.css( "position" ), width: this.element.outerWidth(), height: this.element.outerHeight(), @@ -3017,15 +3055,14 @@ $.widget( "ui.resizable", $.ui.mouse, { _destroy: function() { this._mouseDestroy(); + this._addedHandles.remove(); var wrapper, _destroy = function( exp ) { $( exp ) .removeData( "resizable" ) .removeData( "ui-resizable" ) - .off( ".resizable" ) - .find( ".ui-resizable-handle" ) - .remove(); + .off( ".resizable" ); }; // TODO: Unwrap at same DOM position @@ -3056,6 +3093,9 @@ $.widget( "ui.resizable", $.ui.mouse, { this._removeHandles(); this._setupHandles(); break; + case "aspectRatio": + this._aspectRatio = !!value; + break; default: break; } @@ -3077,6 +3117,7 @@ $.widget( "ui.resizable", $.ui.mouse, { } ); this._handles = $(); + this._addedHandles = $(); if ( this.handles.constructor === String ) { if ( this.handles === "all" ) { @@ -3088,7 +3129,7 @@ $.widget( "ui.resizable", $.ui.mouse, { for ( i = 0; i < n.length; i++ ) { - handle = $.trim( n[ i ] ); + handle = String.prototype.trim.call( n[ i ] ); hname = "ui-resizable-" + handle; axis = $( "
" ); this._addClass( axis, "ui-resizable-handle " + hname ); @@ -3096,7 +3137,10 @@ $.widget( "ui.resizable", $.ui.mouse, { axis.css( { zIndex: o.zIndex } ); this.handles[ handle ] = ".ui-resizable-" + handle; - this.element.append( axis ); + if ( !this.element.children( this.handles[ handle ] ).length ) { + this.element.append( axis ); + this._addedHandles = this._addedHandles.add( axis ); + } } } @@ -3162,7 +3206,7 @@ $.widget( "ui.resizable", $.ui.mouse, { }, _removeHandles: function() { - this._handles.remove(); + this._addedHandles.remove(); }, _mouseCapture: function( event ) { @@ -3542,7 +3586,7 @@ $.widget( "ui.resizable", $.ui.mouse, { if ( this._helper ) { - this.helper = this.helper || $( "
" ); + this.helper = this.helper || $( "
" ).css( { overflow: "hidden" } ); this._addClass( this.helper, this._helper ); this.helper.css( { @@ -3599,7 +3643,9 @@ $.widget( "ui.resizable", $.ui.mouse, { _propagate: function( n, event ) { $.ui.plugin.call( this, n, [ event, this.ui() ] ); - ( n !== "resize" && this._trigger( n, event, this.ui() ) ); + if ( n !== "resize" ) { + this._trigger( n, event, this.ui() ); + } }, plugins: {}, @@ -3720,8 +3766,8 @@ $.ui.plugin.add( "resizable", "containment", { co = that.containerOffset; ch = that.containerSize.height; cw = that.containerSize.width; - width = ( that._hasScroll ( ce, "left" ) ? ce.scrollWidth : cw ); - height = ( that._hasScroll ( ce ) ? ce.scrollHeight : ch ) ; + width = ( that._hasScroll( ce, "left" ) ? ce.scrollWidth : cw ); + height = ( that._hasScroll( ce ) ? ce.scrollHeight : ch ); that.parentData = { element: ce, @@ -4031,4 +4077,4 @@ var widgetsResizable = $.ui.resizable; -})); \ No newline at end of file +} ); \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index d241a6d90..776e6cb23 100644 --- a/yarn.lock +++ b/yarn.lock @@ -133,17 +133,17 @@ resolved "https://registry.yarnpkg.com/@types/jasmine/-/jasmine-3.6.9.tgz#8785870f87839b7d91b45d7b226380f28dee5d9f" integrity sha512-B53NIwMj/AO0O+xfSWLYmKB0Mo6TYxfv2Mk8/c1T2w/e38t55iaPR6p7pHXTTtqfTmevPK3i8T1YweYFTZlxDw== -"@types/jquery@*", "@types/jquery@^3.5.1": - version "3.5.5" - resolved "https://registry.yarnpkg.com/@types/jquery/-/jquery-3.5.5.tgz#2c63f47c9c8d96693d272f5453602afd8338c903" - integrity sha512-6RXU9Xzpc6vxNrS6FPPapN1SxSHgQ336WC6Jj/N8q30OiaBZ00l1GBgeP7usjVZPivSkGUfL1z/WW6TX989M+w== +"@types/jquery@*", "@types/jquery@^3.5.14": + version "3.5.14" + resolved "https://registry.yarnpkg.com/@types/jquery/-/jquery-3.5.14.tgz#ac8e11ee591e94d4d58da602cb3a5a8320dee577" + integrity sha512-X1gtMRMbziVQkErhTQmSe2jFwwENA/Zr+PprCkF63vFq+Yt5PZ4AlKqgmeNlwgn7dhsXEK888eIW2520EpC+xg== dependencies: "@types/sizzle" "*" -"@types/jqueryui@^1.12.13": - version "1.12.15" - resolved "https://registry.yarnpkg.com/@types/jqueryui/-/jqueryui-1.12.15.tgz#401732371c6fcbace711b609590b9e343f8f6bab" - integrity sha512-993YPaPj06yrUB1GOLZukmryIbA+blkrUzF+TZfP0BkLFnz+JA6H1pde4FtxYpDilgt9o/iPYEpN2KT0MMTNfg== +"@types/jqueryui@^1.12.16": + version "1.12.16" + resolved "https://registry.yarnpkg.com/@types/jqueryui/-/jqueryui-1.12.16.tgz#9e319f7db39490db950cba77fe83887e0ad3e1d9" + integrity sha512-6huAQDpNlso9ayaUT9amBOA3kj02OCeUWs+UvDmbaJmwkHSg/HLsQOoap/D5uveN9ePwl72N45Bl+Frp5xyG1Q== dependencies: "@types/jquery" "*"