* Ensure all ThangTypes in `loadingThangTypes` complete loading.
()
| 150 | * Ensure all ThangTypes in `loadingThangTypes` complete loading. |
| 151 | */ |
| 152 | async load () { |
| 153 | let loadingTotal = 0 |
| 154 | let loaded = 0 |
| 155 | // Need at least one promise in loadingPromises to prevent empty array Promise bug. |
| 156 | const loadingPromises = [Promise.resolve()] |
| 157 | this.loadingThangTypes.forEach((value) => { |
| 158 | loadingTotal++ |
| 159 | loadingPromises.push(value.then(() => { |
| 160 | loaded++ |
| 161 | const bar = $('.progress-bar.progress-bar-success') |
| 162 | if (bar) { |
| 163 | // We measure network loading in first 2/3 of bar, leaving other third |
| 164 | // of loading to be taken by layer adapater. |
| 165 | bar.css('width', `${loaded / loadingTotal * 66}%`) |
| 166 | } |
| 167 | })) |
| 168 | }) |
| 169 | await Promise.all(loadingPromises) |
| 170 | this.loadingThangTypes = new Map() |
| 171 | } |
| 172 | |
| 173 | /** |
| 174 | * Get a loaded thangType by slug. |
no outgoing calls
no test coverage detected