Diff: STRATO-apps/wordpress_03/app/wp-includes/js/jquery/ui/progressbar.js
Keine Baseline-Datei – Diff nur gegen leer.
1
-
1
+
/*!
2
+
* jQuery UI Progressbar 1.13.3
3
+
* https://jqueryui.com
4
+
*
5
+
* Copyright OpenJS Foundation and other contributors
6
+
* Released under the MIT license.
7
+
* https://jquery.org/license
8
+
*/
9
+
10
+
//>>label: Progressbar
11
+
//>>group: Widgets
12
+
/* eslint-disable max-len */
13
+
//>>description: Displays a status indicator for loading state, standard percentage, and other progress indicators.
14
+
/* eslint-enable max-len */
15
+
//>>docs: https://api.jqueryui.com/progressbar/
16
+
//>>demos: https://jqueryui.com/progressbar/
17
+
//>>css.structure: ../../themes/base/core.css
18
+
//>>css.structure: ../../themes/base/progressbar.css
19
+
//>>css.theme: ../../themes/base/theme.css
20
+
21
+
( function( factory ) {
22
+
"use strict";
23
+
24
+
if ( typeof define === "function" && define.amd ) {
25
+
26
+
// AMD. Register as an anonymous module.
27
+
define( [
28
+
"jquery",
29
+
"../version",
30
+
"../widget"
31
+
], factory );
32
+
} else {
33
+
34
+
// Browser globals
35
+
factory( jQuery );
36
+
}
37
+
} )( function( $ ) {
38
+
"use strict";
39
+
40
+
return $.widget( "ui.progressbar", {
41
+
version: "1.13.3",
42
+
options: {
43
+
classes: {
44
+
"ui-progressbar": "ui-corner-all",
45
+
"ui-progressbar-value": "ui-corner-left",
46
+
"ui-progressbar-complete": "ui-corner-right"
47
+
},
48
+
max: 100,
49
+
value: 0,
50
+
51
+
change: null,
52
+
complete: null
53
+
},
54
+
55
+
min: 0,
56
+
57
+
_create: function() {
58
+
59
+
// Constrain initial value
60
+
this.oldValue = this.options.value = this._constrainedValue();
61
+
62
+
this.element.attr( {
63
+
64
+
// Only set static values; aria-valuenow and aria-valuemax are
65
+
// set inside _refreshValue()
66
+
role: "progressbar",
67
+
"aria-valuemin": this.min
68
+
} );
69
+
this._addClass( "ui-progressbar", "ui-widget ui-widget-content" );
70
+
71
+
this.valueDiv = $( "<div>" ).appendTo( this.element );
72
+
this._addClass( this.valueDiv, "ui-progressbar-value", "ui-widget-header" );
73
+
this._refreshValue();
74
+
},
75
+
76
+
_destroy: function() {
77
+
this.element.removeAttr( "role aria-valuemin aria-valuemax aria-valuenow" );
78
+
79
+
this.valueDiv.remove();
80
+
},
81
+
82
+
value: function( newValue ) {
83
+
if ( newValue === undefined ) {
84
+
return this.options.value;
85
+
}
86
+
87
+
this.options.value = this._constrainedValue( newValue );
88
+
this._refreshValue();
89
+
},
90
+
91
+
_constrainedValue: function( newValue ) {
92
+
if ( newValue === undefined ) {
93
+
newValue = this.options.value;
94
+
}
95
+
96
+
this.indeterminate = newValue === false;
97
+
98
+
// Sanitize value
99
+
if ( typeof newValue !== "number" ) {
100
+
newValue = 0;
101
+
}
102
+
103
+
return this.indeterminate ? false :
104
+
Math.min( this.options.max, Math.max( this.min, newValue ) );
105
+
},
106
+
107
+
_setOptions: function( options ) {
108
+
109
+
// Ensure "value" option is set after other values (like max)
110
+
var value = options.value;
111
+
delete options.value;
112
+
113
+
this._super( options );
114
+
115
+
this.options.value = this._constrainedValue( value );
116
+
this._refreshValue();
117
+
},
118
+
119
+
_setOption: function( key, value ) {
120
+
if ( key === "max" ) {
121
+
122
+
// Don't allow a max less than min
123
+
value = Math.max( this.min, value );
124
+
}
125
+
this._super( key, value );
126
+
},
127
+
128
+
_setOptionDisabled: function( value ) {
129
+
this._super( value );
130
+
131
+
this.element.attr( "aria-disabled", value );
132
+
this._toggleClass( null, "ui-state-disabled", !!value );
133
+
},
134
+
135
+
_percentage: function() {
136
+
return this.indeterminate ?
137
+
100 :
138
+
100 * ( this.options.value - this.min ) / ( this.options.max - this.min );
139
+
},
140
+
141
+
_refreshValue: function() {
142
+
var value = this.options.value,
143
+
percentage = this._percentage();
144
+
145
+
this.valueDiv
146
+
.toggle( this.indeterminate || value > this.min )
147
+
.width( percentage.toFixed( 0 ) + "%" );
148
+
149
+
this
150
+
._toggleClass( this.valueDiv, "ui-progressbar-complete", null,
151
+
value === this.options.max )
152
+
._toggleClass( "ui-progressbar-indeterminate", null, this.indeterminate );
153
+
154
+
if ( this.indeterminate ) {
155
+
this.element.removeAttr( "aria-valuenow" );
156
+
if ( !this.overlayDiv ) {
157
+
this.overlayDiv = $( "<div>" ).appendTo( this.valueDiv );
158
+
this._addClass( this.overlayDiv, "ui-progressbar-overlay" );
159
+
}
160
+
} else {
161
+
this.element.attr( {
162
+
"aria-valuemax": this.options.max,
163
+
"aria-valuenow": value
164
+
} );
165
+
if ( this.overlayDiv ) {
166
+
this.overlayDiv.remove();
167
+
this.overlayDiv = null;
168
+
}
169
+
}
170
+
171
+
if ( this.oldValue !== value ) {
172
+
this.oldValue = value;
173
+
this._trigger( "change" );
174
+
}
175
+
if ( value === this.options.max ) {
176
+
this._trigger( "complete" );
177
+
}
178
+
}
179
+
} );
180
+
181
+
} );
182
+