1
1
interface CachedData {
2
2
src : string
3
- data : Promise < string | CSPTrustedHTMLToStringable | Error >
3
+ data : Promise < string | CSPTrustedHTMLToStringable >
4
4
}
5
5
const privateData = new WeakMap < IncludeFragmentElement , CachedData > ( )
6
6
@@ -65,7 +65,7 @@ export default class IncludeFragmentElement extends HTMLElement {
65
65
66
66
// We will return string or error for API backwards compatibility. We can consider
67
67
// returning TrustedHTML in the future.
68
- get data ( ) : Promise < string | Error > {
68
+ get data ( ) : Promise < string > {
69
69
return this . #getStringOrErrorData( )
70
70
}
71
71
@@ -117,7 +117,7 @@ export default class IncludeFragmentElement extends HTMLElement {
117
117
} )
118
118
}
119
119
120
- load ( ) : Promise < string | Error > {
120
+ load ( ) : Promise < string > {
121
121
return this . #getStringOrErrorData( )
122
122
}
123
123
@@ -177,13 +177,13 @@ export default class IncludeFragmentElement extends HTMLElement {
177
177
}
178
178
}
179
179
180
- async #getData( ) : Promise < string | CSPTrustedHTMLToStringable | Error > {
180
+ async #getData( ) : Promise < string | CSPTrustedHTMLToStringable > {
181
181
const src = this . src
182
182
const cachedData = privateData . get ( this )
183
183
if ( cachedData && cachedData . src === src ) {
184
184
return cachedData . data
185
185
} else {
186
- let data : Promise < string | CSPTrustedHTMLToStringable | Error >
186
+ let data : Promise < string | CSPTrustedHTMLToStringable >
187
187
if ( src ) {
188
188
data = this . #fetchDataWithEvents( )
189
189
} else {
@@ -194,10 +194,10 @@ export default class IncludeFragmentElement extends HTMLElement {
194
194
}
195
195
}
196
196
197
- async #getStringOrErrorData( ) : Promise < string | Error > {
197
+ async #getStringOrErrorData( ) : Promise < string > {
198
198
const data = await this . #getData( )
199
199
if ( data instanceof Error ) {
200
- return data
200
+ throw data
201
201
}
202
202
return data . toString ( )
203
203
}
0 commit comments