File tree 1 file changed +13
-5
lines changed
1 file changed +13
-5
lines changed Original file line number Diff line number Diff line change @@ -136,19 +136,27 @@ export default class ColorSpace {
136
136
return false ;
137
137
}
138
138
139
+ /**
140
+ * Lookup a format in this color space
141
+ * @param {string | object | Format } format - Format id if string. If object, it's converted to a `Format` object and returned.
142
+ * @returns {Format }
143
+ */
139
144
getFormat ( format ) {
140
145
if ( ! format ) {
141
146
return null ;
142
147
}
143
148
144
- if ( ! ( typeof format === "object" ) ) {
145
- let name = format === "default" ? Object . keys ( this . formats ) [ 0 ] : format ;
146
- format = this . formats [ name ] ;
149
+ if ( format === "default" ) {
150
+ format = Object . values ( this . formats ) [ 0 ] ;
151
+ }
152
+ else if ( typeof format === "string" ) {
153
+ format = this . formats [ format ] ;
147
154
}
148
155
149
156
let ret = Format . get ( format , this ) ;
150
157
151
158
if ( ret !== format && format . name in this . formats ) {
159
+ // Update the format we have on file so we can find it more quickly next time
152
160
this . formats [ format . name ] = ret ;
153
161
}
154
162
@@ -307,9 +315,9 @@ export default class ColorSpace {
307
315
308
316
/**
309
317
* Look up all color spaces for a format that matches certain criteria
310
- * @param {* } name
311
- * @param {* } filters
318
+ * @param {object | string } filters
312
319
* @param {Array<ColorSpace> } [spaces=ColorSpace.all]
320
+ * @returns {Format | null }
313
321
*/
314
322
static findFormat ( filters , spaces = ColorSpace . all ) {
315
323
if ( ! filters ) {
You can’t perform that action at this time.
0 commit comments