@@ -16,18 +16,17 @@ csscriticLib.util = function () {
1616 } ;
1717
1818 module . getImageForUrl = function ( url ) {
19- var defer = ayepromise . defer ( ) ,
20- image = new window . Image ( ) ;
21-
22- image . onload = function ( ) {
23- defer . resolve ( image ) ;
24- } ;
25- image . onerror = function ( ) {
26- defer . reject ( ) ;
27- } ;
28- image . src = url ;
29-
30- return defer . promise ;
19+ return new Promise ( function ( fulfill , reject ) {
20+ var image = new window . Image ( ) ;
21+
22+ image . onload = function ( ) {
23+ fulfill ( image ) ;
24+ } ;
25+ image . onerror = function ( ) {
26+ reject ( ) ;
27+ } ;
28+ image . src = url ;
29+ } ) ;
3130 } ;
3231
3332 var getUncachableURL = function ( url ) {
@@ -41,90 +40,86 @@ csscriticLib.util = function () {
4140 } ;
4241
4342 module . ajax = function ( url ) {
44- var defer = ayepromise . defer ( ) ,
45- xhr = new XMLHttpRequest ( ) ;
46-
47- xhr . onload = function ( ) {
48- if ( xhr . status === 200 || xhr . status === 0 ) {
49- defer . resolve ( xhr . response ) ;
50- } else {
51- defer . reject ( ) ;
43+ return new Promise ( function ( fulfill , reject ) {
44+ var xhr = new XMLHttpRequest ( ) ;
45+
46+ xhr . onload = function ( ) {
47+ if ( xhr . status === 200 || xhr . status === 0 ) {
48+ fulfill ( xhr . response ) ;
49+ } else {
50+ reject ( ) ;
51+ }
52+ } ;
53+
54+ xhr . onerror = function ( ) {
55+ reject ( ) ;
56+ } ;
57+
58+ try {
59+ xhr . open ( "get" , getUncachableURL ( url ) , true ) ;
60+ xhr . send ( ) ;
61+ } catch ( e ) {
62+ reject ( ) ;
5263 }
53- } ;
54-
55- xhr . onerror = function ( ) {
56- defer . reject ( ) ;
57- } ;
58-
59- try {
60- xhr . open ( "get" , getUncachableURL ( url ) , true ) ;
61- xhr . send ( ) ;
62- } catch ( e ) {
63- defer . reject ( ) ;
64- }
65-
66- return defer . promise ;
64+ } ) ;
6765 } ;
6866
6967 module . loadAsBlob = function ( url ) {
70- var defer = ayepromise . defer ( ) ,
71- xhr = new XMLHttpRequest ( ) ;
72-
73- xhr . onload = function ( ) {
74- if ( xhr . status === 200 || xhr . status === 0 ) {
75- defer . resolve ( xhr . response ) ;
76- } else {
77- defer . reject ( new Error ( xhr . statusText ) ) ;
68+ return new Promise ( function ( fulfill , reject ) {
69+ var xhr = new XMLHttpRequest ( ) ;
70+
71+ xhr . onload = function ( ) {
72+ if ( xhr . status === 200 || xhr . status === 0 ) {
73+ fulfill ( xhr . response ) ;
74+ } else {
75+ reject ( new Error ( xhr . statusText ) ) ;
76+ }
77+ } ;
78+
79+ xhr . onerror = function ( e ) {
80+ reject ( e ) ;
81+ } ;
82+
83+ try {
84+ xhr . open ( "get" , getUncachableURL ( url ) , true ) ;
85+ xhr . responseType = "blob" ;
86+ xhr . send ( ) ;
87+ } catch ( e ) {
88+ reject ( e ) ;
7889 }
79- } ;
80-
81- xhr . onerror = function ( e ) {
82- defer . reject ( e ) ;
83- } ;
84-
85- try {
86- xhr . open ( "get" , getUncachableURL ( url ) , true ) ;
87- xhr . responseType = "blob" ;
88- xhr . send ( ) ;
89- } catch ( e ) {
90- defer . reject ( e ) ;
91- }
92-
93- return defer . promise ;
90+ } ) ;
9491 } ;
9592
9693 module . loadBlobAsText = function ( blob ) {
97- var defer = ayepromise . defer ( ) ,
98- reader = new FileReader ( ) ;
99-
100- reader . onload = function ( e ) {
101- defer . resolve ( e . target . result ) ;
102- } ;
94+ return new Promise ( function ( fulfill , reject ) {
95+ var reader = new FileReader ( ) ;
10396
104- reader . onerror = function ( ) {
105- defer . reject ( ) ;
106- } ;
97+ reader . onload = function ( e ) {
98+ fulfill ( e . target . result ) ;
99+ } ;
107100
108- reader . readAsText ( blob ) ;
101+ reader . onerror = function ( ) {
102+ reject ( ) ;
103+ } ;
109104
110- return defer . promise ;
105+ reader . readAsText ( blob ) ;
106+ } ) ;
111107 } ;
112108
113109 module . loadBlobAsDataURI = function ( blob ) {
114- var defer = ayepromise . defer ( ) ,
115- reader = new FileReader ( ) ;
116-
117- reader . onload = function ( e ) {
118- defer . resolve ( e . target . result ) ;
119- } ;
110+ return new Promise ( function ( fulfill , reject ) {
111+ var reader = new FileReader ( ) ;
120112
121- reader . onerror = function ( ) {
122- defer . reject ( ) ;
123- } ;
113+ reader . onload = function ( e ) {
114+ fulfill ( e . target . result ) ;
115+ } ;
124116
125- reader . readAsDataURL ( blob ) ;
117+ reader . onerror = function ( ) {
118+ reject ( ) ;
119+ } ;
126120
127- return defer . promise ;
121+ reader . readAsDataURL ( blob ) ;
122+ } ) ;
128123 } ;
129124
130125 // excludeKeys(theMap, excludeKey...)
@@ -163,12 +158,6 @@ csscriticLib.util = function () {
163158 return theClone ;
164159 } ;
165160
166- var successfulPromise = function ( value ) {
167- var defer = ayepromise . defer ( ) ;
168- defer . resolve ( value ) ;
169- return defer . promise ;
170- } ;
171-
172161 module . workAroundTransparencyIssueInFirefox = function ( image ) {
173162 // Work around bug https://bugzilla.mozilla.org/show_bug.cgi?id=790468 where the content of a canvas
174163 // drawn to another one will be slightly different if transparency is involved.
@@ -179,7 +168,7 @@ csscriticLib.util = function () {
179168 dataUri = module . getDataURIForImage ( image ) ;
180169 } catch ( e ) {
181170 // Fallback for Chrome & Safari
182- return successfulPromise ( image ) ;
171+ return Promise . resolve ( image ) ;
183172 }
184173
185174 return module . getImageForUrl ( dataUri ) ;
0 commit comments