(
page: Page,
shot: {waitForImages?: string},
)
| 127 | }; |
| 128 | |
| 129 | const waitForDocShotImages = async ( |
| 130 | page: Page, |
| 131 | shot: {waitForImages?: string}, |
| 132 | ): Promise<void> => { |
| 133 | if (shot.waitForImages == null) { |
| 134 | return; |
| 135 | } |
| 136 | const frame = await getFirstFrame(page); |
| 137 | await frame?.evaluate(async (selector) => { |
| 138 | const images = [ |
| 139 | ...document.querySelectorAll<HTMLImageElement>(selector), |
| 140 | ].filter(({src}) => src != ''); |
| 141 | await Promise.all( |
| 142 | images.map((image) => |
| 143 | image.complete |
| 144 | ? undefined |
| 145 | : new Promise<void>((resolve) => { |
| 146 | const done = () => resolve(); |
| 147 | image.addEventListener('load', done, {once: true}); |
| 148 | image.addEventListener('error', done, {once: true}); |
| 149 | }), |
| 150 | ), |
| 151 | ); |
| 152 | }, shot.waitForImages); |
| 153 | }; |
| 154 | |
| 155 | const getClip = async ( |
| 156 | page: Page, |
no test coverage detected
searching dependent graphs…