|
1 | 1 | import { v1 as uuidv1 } from 'uuid'; |
2 | 2 | import Log from '@secret-agent/commons/Logger'; |
3 | | -import { IRenderingOption } from '@secret-agent/core-interfaces/ITabOptions'; |
| 3 | +import { IBlockedResourceType } from '@secret-agent/core-interfaces/ITabOptions'; |
4 | 4 | import { |
5 | 5 | ILocationStatus, |
6 | 6 | ILocationTrigger, |
@@ -143,27 +143,31 @@ export default class Tab extends TypedEventEmitter<ITabEventParams> { |
143 | 143 | ]); |
144 | 144 | } |
145 | 145 |
|
146 | | - public async setRenderingOptions(renderingOptions: IRenderingOption[]): Promise<void> { |
| 146 | + public async setBlockedResourceTypes( |
| 147 | + blockedResourceTypes: IBlockedResourceType[], |
| 148 | + ): Promise<void> { |
147 | 149 | const mitmSession = this.session.mitmRequestSession; |
148 | 150 | const blockedResources = mitmSession.blockedResources.types; |
149 | 151 | let enableJs = true; |
150 | 152 |
|
151 | | - if (renderingOptions.includes('All')) { |
| 153 | + if (blockedResourceTypes.includes('None')) { |
152 | 154 | blockedResources.length = 0; |
153 | | - } else if (renderingOptions.includes('None')) { |
| 155 | + } else if (blockedResourceTypes.includes('All')) { |
154 | 156 | blockedResources.push('Image', 'Stylesheet', 'Script', 'Font', 'Ico', 'Media'); |
155 | 157 | enableJs = false; |
| 158 | + } else if (blockedResourceTypes.includes('BlockAssets')) { |
| 159 | + blockedResources.push('Image', 'Stylesheet', 'Script'); |
156 | 160 | } else { |
157 | | - if (!renderingOptions.includes('LoadImages')) { |
| 161 | + if (blockedResourceTypes.includes('BlockImages')) { |
158 | 162 | blockedResources.push('Image'); |
159 | 163 | } |
160 | | - if (!renderingOptions.includes('LoadCssResources')) { |
| 164 | + if (blockedResourceTypes.includes('BlockCssResources')) { |
161 | 165 | blockedResources.push('Stylesheet'); |
162 | 166 | } |
163 | | - if (!renderingOptions.includes('LoadJsResources')) { |
| 167 | + if (blockedResourceTypes.includes('BlockJsResources')) { |
164 | 168 | blockedResources.push('Script'); |
165 | 169 | } |
166 | | - if (!renderingOptions.includes('JsRuntime')) { |
| 170 | + if (blockedResourceTypes.includes('JsRuntime')) { |
167 | 171 | enableJs = false; |
168 | 172 | } |
169 | 173 | } |
@@ -513,8 +517,8 @@ export default class Tab extends TypedEventEmitter<ITabEventParams> { |
513 | 517 | } |
514 | 518 |
|
515 | 519 | await this.interactor.initialize(); |
516 | | - if (this.session.options?.renderingOptions) { |
517 | | - await this.setRenderingOptions(this.session.options.renderingOptions); |
| 520 | + if (this.session.options?.blockedResourceTypes) { |
| 521 | + await this.setBlockedResourceTypes(this.session.options.blockedResourceTypes); |
518 | 522 | } |
519 | 523 | } |
520 | 524 |
|
|
0 commit comments