From ad66a029147e11dd0f218e1a0ec82b849182da3c Mon Sep 17 00:00:00 2001 From: Kyusung4698 Date: Thu, 26 Mar 2020 10:43:44 +0100 Subject: [PATCH 1/7] - add nonunique rarity support (#477) --- CHANGELOG.md | 4 ++++ .../service/item/query/item-search-filters-type.service.ts | 6 +++++- src/app/shared/module/poe/type/item.type.ts | 3 ++- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 52979d80..2c455d31 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +## 0.6.14 (2020-03-26) + +- add nonunique rarity support (#477) + ## 0.6.13 (2020-03-25) - add loading animations diff --git a/src/app/shared/module/poe/service/item/query/item-search-filters-type.service.ts b/src/app/shared/module/poe/service/item/query/item-search-filters-type.service.ts index 6075d305..c08774a9 100644 --- a/src/app/shared/module/poe/service/item/query/item-search-filters-type.service.ts +++ b/src/app/shared/module/poe/service/item/query/item-search-filters-type.service.ts @@ -70,8 +70,12 @@ export class ItemSearchFiltersTypeService implements ItemSearchFiltersService { case ItemCategory.MonsterBeast: if (item.rarity === ItemRarity.Unique) { query.filters.type_filters.filters.rarity = { - option: item.rarity + option: ItemRarity.Unique }; + } else { + query.filters.type_filters.filters.rarity = { + option: ItemRarity.NonUnique + } } query.filters.type_filters.filters.category = { option: item.category, diff --git a/src/app/shared/module/poe/type/item.type.ts b/src/app/shared/module/poe/type/item.type.ts index 6491931f..84f1dfbb 100644 --- a/src/app/shared/module/poe/type/item.type.ts +++ b/src/app/shared/module/poe/type/item.type.ts @@ -35,7 +35,8 @@ export enum ItemRarity { Unique = 'unique', Currency = 'currency', Gem = 'gem', - DivinationCard = 'divinationcard' + DivinationCard = 'divinationcard', + NonUnique = 'nonunique' } export enum ItemCategory { From 60a64915d26cd25927d056c9d5b48428221220a1 Mon Sep 17 00:00:00 2001 From: Kyusung4698 Date: Thu, 26 Mar 2020 13:23:08 +0100 Subject: [PATCH 2/7] - fix invisible values at map info (#472) --- CHANGELOG.md | 1 + .../map/component/map-dialog/map-dialog.component.html | 3 +-- .../poe/component/item-frame/item-frame.component.ts | 8 ++++++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2c455d31..2bdf67d5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,7 @@ ## 0.6.14 (2020-03-26) - add nonunique rarity support (#477) +- fix invisible values at map info (#472) ## 0.6.13 (2020-03-25) diff --git a/src/app/modules/map/component/map-dialog/map-dialog.component.html b/src/app/modules/map/component/map-dialog/map-dialog.component.html index 4b254612..c18cb667 100644 --- a/src/app/modules/map/component/map-dialog/map-dialog.component.html +++ b/src/app/modules/map/component/map-dialog/map-dialog.component.html @@ -1,6 +1,5 @@
- +
{{'map.layout-rating' | translate}}: {{(map || {}).layoutRating || '-'}}
diff --git a/src/app/shared/module/poe/component/item-frame/item-frame.component.ts b/src/app/shared/module/poe/component/item-frame/item-frame.component.ts index 25897b31..b1d96f40 100644 --- a/src/app/shared/module/poe/component/item-frame/item-frame.component.ts +++ b/src/app/shared/module/poe/component/item-frame/item-frame.component.ts @@ -59,16 +59,20 @@ export class ItemFrameComponent implements OnInit { this.stats = !!(this.item.stats && this.item.stats.length > 0); this.state = !!(this.item.corrupted !== undefined || this.item.veiled !== undefined); this.influences = !!this.item.influences; + + if (this.queryItemChange.observers.length === 0) { + this.text$.next(true); + } } public onMouseDown(event: MouseEvent): void { - if (event.button === 2) { + if (this.queryItemChange.observers.length > 0 && event.button === 2) { this.text$.next(true); } } public onMouseUp(event: MouseEvent): void { - if (event.button === 2) { + if (this.queryItemChange.observers.length > 0 && event.button === 2) { this.text$.next(false); } } From 48105a4929ab63beee45e857c8fae317fe5004ff Mon Sep 17 00:00:00 2001 From: Kyusung4698 Date: Thu, 26 Mar 2020 13:52:23 +0100 Subject: [PATCH 3/7] - add display trade page error message (#468) --- CHANGELOG.md | 2 + main.ts | 6 +- .../data/poe/service/trade-http.service.ts | 128 ++++++++++++------ .../base-item-types.service.ts | 2 +- 4 files changed, 95 insertions(+), 43 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2bdf67d5..22c7e659 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,8 @@ ## 0.6.14 (2020-03-26) - add nonunique rarity support (#477) +- add changelog as tray entry (#471) +- add display trade page error message (#468) - fix invisible values at map info (#472) ## 0.6.13 (2020-03-25) diff --git a/main.ts b/main.ts index 95a7cf0a..50b17245 100644 --- a/main.ts +++ b/main.ts @@ -1,5 +1,5 @@ import AutoLaunch from 'auto-launch'; -import { app, BrowserWindow, dialog, Display, ipcMain, Menu, MenuItem, MenuItemConstructorOptions, screen, systemPreferences, Tray } from 'electron'; +import { app, BrowserWindow, dialog, Display, ipcMain, Menu, MenuItem, MenuItemConstructorOptions, screen, systemPreferences, Tray, shell } from 'electron'; import * as log from 'electron-log'; import { autoUpdater } from 'electron-updater'; import * as fs from 'fs'; @@ -398,6 +398,10 @@ function createTray(): Tray { send('app-relaunch'); } }, + { + label: 'Changelog', type: 'normal', + click: () => shell.openExternal('https://github.com/Kyusung4698/PoE-Overlay/blob/master/CHANGELOG.md'), + }, { label: 'Exit', type: 'normal', click: () => app.quit() diff --git a/src/app/data/poe/service/trade-http.service.ts b/src/app/data/poe/service/trade-http.service.ts index d137616c..8d47d86b 100644 --- a/src/app/data/poe/service/trade-http.service.ts +++ b/src/app/data/poe/service/trade-http.service.ts @@ -4,7 +4,7 @@ import { BrowserService } from '@app/service'; import { environment } from '@env/environment'; import { Language } from '@shared/module/poe/type'; import { Observable, of, throwError } from 'rxjs'; -import { delay, flatMap, map, retry, retryWhen } from 'rxjs/operators'; +import { delay, flatMap, map, retryWhen } from 'rxjs/operators'; import { TradeFetchResult, TradeItemsResult, TradeLeaguesResult, TradeResponse, TradeSearchRequest, TradeSearchResponse, TradeStaticResult, TradeStatsResult } from '../schema/trade'; const RETRY_COUNT = 3; @@ -44,11 +44,36 @@ export class TradeHttpService { return this.http.post(url, request, { responseType: 'text', observe: 'response' - }).pipe(retry(RETRY_COUNT), map(response => { - const result = JSON.parse(response.body) as TradeSearchResponse; - result.url = `${url.replace('/api', '')}/${encodeURIComponent(result.id)}`; - return result; - })); + }).pipe( + retryWhen(errors => errors.pipe( + flatMap((response: HttpErrorResponse, count) => { + if (count >= RETRY_COUNT) { + return throwError(response); + } + if (response.status === 400) { + try { + const error = JSON.parse(response.error); + const message = error?.error?.message || 'no message'; + const code = error?.error?.code || '-'; + return throwError(`${code}: ${message}`); + } catch{ + return throwError(response.error); + } + } + if (response.status === 403) { + return this.browser.retrieve(url).pipe( + map(() => null) + ); + } + return of(null).pipe(delay(RETRY_DELAY)); + }) + )), + map(response => { + const result = JSON.parse(response.body) as TradeSearchResponse; + result.url = `${url.replace('/api', '')}/${encodeURIComponent(result.id)}`; + return result; + }) + ); } public fetch(itemIds: string[], queryId: string, language: Language): Observable> { @@ -60,20 +85,71 @@ export class TradeHttpService { } }) }).pipe(retryWhen(errors => errors.pipe( - flatMap((error: HttpErrorResponse) => { - if (error.status === 403) { + flatMap((response: HttpErrorResponse) => { + if (response.status === 400) { + try { + const error = JSON.parse(response.error); + const message = error?.error?.message || 'no message'; + const code = error?.error?.code || '-'; + return throwError(`${code}: ${message}`); + } catch{ + return throwError(response.error); + } + } + if (response.status === 403) { return this.browser.retrieve(url).pipe( map(() => null) ); } - if (error.status === 429) { - return of(error).pipe(delay(RETRY_LIMIT_DELAY)); + if (response.status === 429) { + return of(response).pipe(delay(RETRY_LIMIT_DELAY)); } - return throwError(error); + return throwError(response); }) ))); } + private getAndTransform(url: string): Observable { + return this.http.get(url, { + responseType: 'text', + observe: 'response' + }).pipe( + retryWhen(errors => errors.pipe( + flatMap((response: HttpErrorResponse, count) => { + if (count >= RETRY_COUNT) { + return throwError(response); + } + if (response.status === 400) { + try { + const error = JSON.parse(response.error); + const message = error?.error?.message || 'no message'; + const code = error?.error?.code || '-'; + return throwError(`${code}: ${message}`); + } catch{ + return throwError(response.error); + } + } + if (response.status === 403) { + return this.browser.retrieve(url).pipe( + map(() => null) + ); + } + return of(null).pipe(delay(RETRY_DELAY)); + }) + )), + map(response => this.transformResponse(response)) + ); + } + + private transformResponse(response: HttpResponse): TResponse { + const result = response.body.replace( + /\\u[\dA-Fa-f]{4}/g, + (match) => String.fromCharCode( + parseInt(match.replace(/\\u/g, ''), 16)) + ); + return JSON.parse(result) as TResponse; + } + private getApiUrl(postfix: string, language: Language): string { let baseUrl = environment.poe.baseUrl; switch (language) { @@ -112,34 +188,4 @@ export class TradeHttpService { return `${baseUrl}/trade/${postfix}`; } - private getAndTransform(url: string): Observable { - return this.http.get(url, { - responseType: 'text', - observe: 'response' - }).pipe( - retryWhen(errors => errors.pipe( - flatMap((error: HttpErrorResponse, count) => { - if (count >= RETRY_COUNT) { - return throwError(error); - } - if (error.status === 403) { - return this.browser.retrieve(url).pipe( - map(() => null) - ); - } - return of(null).pipe(delay(RETRY_DELAY)); - }) - )), - map(response => this.transformResponse(response)) - ); - } - - private transformResponse(response: HttpResponse): TResponse { - const result = response.body.replace( - /\\u[\dA-Fa-f]{4}/g, - (match) => String.fromCharCode( - parseInt(match.replace(/\\u/g, ''), 16)) - ); - return JSON.parse(result) as TResponse; - } } diff --git a/src/app/shared/module/poe/service/base-item-types/base-item-types.service.ts b/src/app/shared/module/poe/service/base-item-types/base-item-types.service.ts index 79a2fcd7..b48ef4a3 100644 --- a/src/app/shared/module/poe/service/base-item-types/base-item-types.service.ts +++ b/src/app/shared/module/poe/service/base-item-types/base-item-types.service.ts @@ -62,7 +62,7 @@ export class BaseItemTypesService { const expr = cache[key] || (cache[key] = new RegExp('(?<=[\\s,.:;"\']|^)' + map[key] + '(?=[\\s,.:;"\']|$)')); const match = expr.exec(name); if (match) { - const score = map[key].split(' ').length * 10 - match.index; + const score = map[key].split(' ').length * 10 - Math.abs(name.length / 2 - match.index); if (score > maxScore) { maxScore = score; maxKey = key; From 50be7d3292f1fac8e06e7cf14b28a39a6ef0a4dd Mon Sep 17 00:00:00 2001 From: Kyusung4698 Date: Thu, 26 Mar 2020 20:32:38 +0100 Subject: [PATCH 4/7] - add changelog show after update (#471) - add changelog show after update (#471) - fix auto update by calling quit and install even after normal quit (#474) --- CHANGELOG.md | 4 + main.ts | 50 ++++++++-- src/app/core/service/app.service.ts | 11 ++- .../data/poe/service/trade-http.service.ts | 92 ++++++------------- .../evaluate-search.component.html | 8 +- 5 files changed, 86 insertions(+), 79 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 22c7e659..2ab5b067 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,8 +1,12 @@ +# Changelog + ## 0.6.14 (2020-03-26) - add nonunique rarity support (#477) - add changelog as tray entry (#471) +- add changelog show after update (#471) - add display trade page error message (#468) +- fix auto update by calling quit and install even after normal quit (#474) - fix invisible values at map info (#472) ## 0.6.13 (2020-03-25) diff --git a/main.ts b/main.ts index 50b17245..8568a531 100644 --- a/main.ts +++ b/main.ts @@ -1,5 +1,5 @@ import AutoLaunch from 'auto-launch'; -import { app, BrowserWindow, dialog, Display, ipcMain, Menu, MenuItem, MenuItemConstructorOptions, screen, systemPreferences, Tray, shell } from 'electron'; +import { app, BrowserWindow, dialog, Display, ipcMain, Menu, MenuItem, MenuItemConstructorOptions, screen, systemPreferences, Tray } from 'electron'; import * as log from 'electron-log'; import { autoUpdater } from 'electron-updater'; import * as fs from 'fs'; @@ -33,7 +33,7 @@ log.info('App starting...'); let animationPath = path.join(app.getPath('userData'), 'animation.flag'); let animationExists = fs.existsSync(animationPath); -log.info(`App checking for animation flag: ${animationExists}.`); +log.info(`App checking animation flag: ${animationExists}.`); if (animationExists) { app.disableHardwareAcceleration(); @@ -43,9 +43,23 @@ if (animationExists) { let keyboardPath = path.join(app.getPath('userData'), 'keyboard.flag'); let keyboardExists = fs.existsSync(keyboardPath); -log.info(`App checking for keyboard flag: ${keyboardExists}.`); +log.info(`App checking keyboard flag: ${keyboardExists}.`); + +let versionPath = path.join(app.getPath('userData'), 'version.txt'); +let versionExists = fs.existsSync(versionPath); + +let versionUpdated = true; +if (versionExists) { + const version = fs.readFileSync(versionPath, 'utf-8').trim(); + versionUpdated = version !== app.getVersion(); + log.info(`App checking version: ${version} -> ${app.getVersion()}, ${versionUpdated}`); +} +if (versionUpdated) { + fs.writeFileSync(versionPath, app.getVersion()) +} autoUpdater.logger = log; +autoUpdater.autoInstallOnAppQuit = true; const args = process.argv.slice(1); const serve = args.some(val => val === '--serve'); @@ -116,7 +130,9 @@ ipcMain.on('set-keyboard-delay', (event, delay) => { /* hook */ ipcMain.on('force-active', event => { - gameWindow?.bringToTop(); + if (keyboardExists) { + gameWindow?.bringToTop(); + } event.returnValue = true; }) @@ -133,7 +149,7 @@ ipcMain.on('register-active-change', event => { win.setAlwaysOnTop(true, 'pop-up-menu', 1); win.setVisibleOnAllWorkspaces(true); - if (bounds) { + if (JSON.stringify(bounds) !== JSON.stringify(win.getBounds())) { win.setBounds(bounds); log.info('set bounds to: ', win.getBounds()); } @@ -224,8 +240,8 @@ ipcMain.on('app-download-update', event => { event.returnValue = true; }); -ipcMain.on('app-quit-and-install', event => { - autoUpdater.quitAndInstall(false, true); +ipcMain.on('app-quit-and-install', (event, restart) => { + autoUpdater.quitAndInstall(false, restart); event.returnValue = true; }); @@ -248,6 +264,16 @@ ipcMain.on('app-auto-launch-change', (event, enabled) => { .catch(() => event.sender.send('app-auto-launch-change-result', false)); }) +/* change log */ +function showChangelog() { + const changelog = new BrowserWindow({ + modal: true, + parent: win, + }); + changelog.removeMenu(); + changelog.loadURL('https://github.com/Kyusung4698/PoE-Overlay/blob/master/CHANGELOG.md#Changelog'); +} + /* main window */ function createWindow(): BrowserWindow { @@ -278,6 +304,12 @@ function createWindow(): BrowserWindow { win.setAlwaysOnTop(true, 'pop-up-menu', 1); win.setVisibleOnAllWorkspaces(true); + win.once('show', () => { + if (versionUpdated) { + showChangelog(); + } + }) + loadApp(win); win.on('closed', () => { @@ -400,11 +432,11 @@ function createTray(): Tray { }, { label: 'Changelog', type: 'normal', - click: () => shell.openExternal('https://github.com/Kyusung4698/PoE-Overlay/blob/master/CHANGELOG.md'), + click: () => showChangelog(), }, { label: 'Exit', type: 'normal', - click: () => app.quit() + click: () => send('app-quit') } ]; diff --git a/src/app/core/service/app.service.ts b/src/app/core/service/app.service.ts index b1b406fd..decbacd6 100644 --- a/src/app/core/service/app.service.ts +++ b/src/app/core/service/app.service.ts @@ -33,6 +33,9 @@ export class AppService { this.ipcRenderer.on('app-relaunch', () => { this.ngZone.run(() => this.relaunch()); }); + this.ipcRenderer.on('app-quit', () => { + this.ngZone.run(() => this.quit()); + }); this.ipcRenderer.sendSync('app-download-init', autoDownload); } @@ -97,7 +100,11 @@ export class AppService { } public quit(): void { - this.electron.app.quit(); + if (this.updateState$.value === AppUpdateState.Downloaded) { + this.ipcRenderer.send('app-quit-and-install', false); + } else { + this.electron.app.quit(); + } } /** @@ -107,7 +114,7 @@ export class AppService { */ public relaunch(): void { if (this.updateState$.value === AppUpdateState.Downloaded) { - this.ipcRenderer.send('app-quit-and-install'); + this.ipcRenderer.send('app-quit-and-install', true); } else { this.electron.app.relaunch(); this.electron.app.quit(); diff --git a/src/app/data/poe/service/trade-http.service.ts b/src/app/data/poe/service/trade-http.service.ts index 8d47d86b..21df74c4 100644 --- a/src/app/data/poe/service/trade-http.service.ts +++ b/src/app/data/poe/service/trade-http.service.ts @@ -9,7 +9,7 @@ import { TradeFetchResult, TradeItemsResult, TradeLeaguesResult, TradeResponse, const RETRY_COUNT = 3; const RETRY_DELAY = 100; -const RETRY_LIMIT_DELAY = 100; +const RETRY_LIMIT_DELAY = 300; @Injectable({ providedIn: 'root' @@ -46,27 +46,7 @@ export class TradeHttpService { observe: 'response' }).pipe( retryWhen(errors => errors.pipe( - flatMap((response: HttpErrorResponse, count) => { - if (count >= RETRY_COUNT) { - return throwError(response); - } - if (response.status === 400) { - try { - const error = JSON.parse(response.error); - const message = error?.error?.message || 'no message'; - const code = error?.error?.code || '-'; - return throwError(`${code}: ${message}`); - } catch{ - return throwError(response.error); - } - } - if (response.status === 403) { - return this.browser.retrieve(url).pipe( - map(() => null) - ); - } - return of(null).pipe(delay(RETRY_DELAY)); - }) + flatMap((response, count) => this.handleError(url, response, count)) )), map(response => { const result = JSON.parse(response.body) as TradeSearchResponse; @@ -85,27 +65,7 @@ export class TradeHttpService { } }) }).pipe(retryWhen(errors => errors.pipe( - flatMap((response: HttpErrorResponse) => { - if (response.status === 400) { - try { - const error = JSON.parse(response.error); - const message = error?.error?.message || 'no message'; - const code = error?.error?.code || '-'; - return throwError(`${code}: ${message}`); - } catch{ - return throwError(response.error); - } - } - if (response.status === 403) { - return this.browser.retrieve(url).pipe( - map(() => null) - ); - } - if (response.status === 429) { - return of(response).pipe(delay(RETRY_LIMIT_DELAY)); - } - return throwError(response); - }) + flatMap((response, count) => this.handleError(url, response, count)) ))); } @@ -115,27 +75,7 @@ export class TradeHttpService { observe: 'response' }).pipe( retryWhen(errors => errors.pipe( - flatMap((response: HttpErrorResponse, count) => { - if (count >= RETRY_COUNT) { - return throwError(response); - } - if (response.status === 400) { - try { - const error = JSON.parse(response.error); - const message = error?.error?.message || 'no message'; - const code = error?.error?.code || '-'; - return throwError(`${code}: ${message}`); - } catch{ - return throwError(response.error); - } - } - if (response.status === 403) { - return this.browser.retrieve(url).pipe( - map(() => null) - ); - } - return of(null).pipe(delay(RETRY_DELAY)); - }) + flatMap((response, count) => this.handleError(url, response, count)) )), map(response => this.transformResponse(response)) ); @@ -188,4 +128,28 @@ export class TradeHttpService { return `${baseUrl}/trade/${postfix}`; } + private handleError(url: string, response: HttpErrorResponse, count: number): Observable { + if (count >= RETRY_COUNT) { + return throwError(response); + } + + switch (response.status) { + case 400: + try { + const error = JSON.parse(response.error); + const message = error?.error?.message || 'no message'; + const code = error?.error?.code || '-'; + return throwError(`${code}: ${message}`); + } catch{ + return throwError(response.error); + } + case 403: + return this.browser.retrieve(url); + case 429: + return of(null).pipe(delay(RETRY_LIMIT_DELAY)); + default: + return of(null).pipe(delay(RETRY_DELAY)); + } + } + } diff --git a/src/app/modules/evaluate/component/evaluate-search/evaluate-search.component.html b/src/app/modules/evaluate/component/evaluate-search/evaluate-search.component.html index ed93c997..ec67843f 100644 --- a/src/app/modules/evaluate/component/evaluate-search/evaluate-search.component.html +++ b/src/app/modules/evaluate/component/evaluate-search/evaluate-search.component.html @@ -7,9 +7,9 @@ - - - + + + @@ -60,7 +60,7 @@
- +
{{'evaluate.listings' | translate:{total: search.total | number} }} {{ 'evaluate.cancel' | translate }} From c57eaf7fedfd9c3b6b766538eaa7c21f2e340d7c Mon Sep 17 00:00:00 2001 From: Kyusung4698 Date: Thu, 26 Mar 2020 20:56:03 +0100 Subject: [PATCH 5/7] - add renderer logging log to file (#468) --- CHANGELOG.md | 4 +- main.ts | 7 + package-lock.json | 1889 +++++++++++------ package.json | 44 +- src/app/core/service/index.ts | 1 + src/app/core/service/logger.service.ts | 27 + .../evaluate-exchange-rate.component.ts | 10 +- .../evaluate-search.component.ts | 6 +- .../poe/service/item/item-search.service.ts | 26 +- 9 files changed, 1321 insertions(+), 693 deletions(-) create mode 100644 src/app/core/service/logger.service.ts diff --git a/CHANGELOG.md b/CHANGELOG.md index 2ab5b067..8bca4d25 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,9 +3,9 @@ ## 0.6.14 (2020-03-26) - add nonunique rarity support (#477) -- add changelog as tray entry (#471) -- add changelog show after update (#471) +- add changelog as tray entry and show after update (#471) - add display trade page error message (#468) +- add renderer logging support log to file (#468) - fix auto update by calling quit and install even after normal quit (#474) - fix invisible values at map info (#472) diff --git a/main.ts b/main.ts index 8568a531..92a05592 100644 --- a/main.ts +++ b/main.ts @@ -98,6 +98,13 @@ function send(channel: string, ...args: any[]) { } } +/* log */ + +ipcMain.on('log', (event, level, message, ...args) => { + log[level](message, ...args); + event.returnValue = true; +}); + /* robot js */ ipcMain.on('click-at', (event, button, position) => { diff --git a/package-lock.json b/package-lock.json index 6741b414..e9643d40 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "poe-overlay", - "version": "0.6.11", + "version": "0.6.14", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -11,12 +11,12 @@ "dev": true }, "@angular-devkit/architect": { - "version": "0.900.6", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.900.6.tgz", - "integrity": "sha512-WK8e09DgNP1NHP1gqVQ9w+9rlRMVDJxAh4qZGJRjZBXd3LY7y84WWRmTpfuhOSu+82fR3/n76+urxraU3ZVphw==", + "version": "0.900.7", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.900.7.tgz", + "integrity": "sha512-hfiTVYc72kzbXrzK4tea6jnTDnSKpE1D+vEptBXN2tdXEVNEAQI5Qm5L1zVDtt16UdqoUTUypIgUc9jcNH1mUQ==", "dev": true, "requires": { - "@angular-devkit/core": "9.0.6", + "@angular-devkit/core": "9.0.7", "rxjs": "6.5.3" }, "dependencies": { @@ -32,19 +32,19 @@ } }, "@angular-devkit/build-angular": { - "version": "0.900.6", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-0.900.6.tgz", - "integrity": "sha512-EQ4K4i7FBQyy+qY+kTBxJkxaHzYAf+qSC5ktK1rzXCe17+FK/sf2k4YtHwxB9mbBLB1ZXj0JnysssgzeoG0s+w==", + "version": "0.900.7", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-0.900.7.tgz", + "integrity": "sha512-Yv2y3OEaYEd0fE0pKvtqBpmkQYs9xJws7thHnJYCwIfYO55RfolYsXkJgAXke/4NPLrD3EsIDqoPxF7l+uw2/Q==", "dev": true, "requires": { - "@angular-devkit/architect": "0.900.6", - "@angular-devkit/build-optimizer": "0.900.6", - "@angular-devkit/build-webpack": "0.900.6", - "@angular-devkit/core": "9.0.6", + "@angular-devkit/architect": "0.900.7", + "@angular-devkit/build-optimizer": "0.900.7", + "@angular-devkit/build-webpack": "0.900.7", + "@angular-devkit/core": "9.0.7", "@babel/core": "7.7.7", "@babel/generator": "7.7.7", "@babel/preset-env": "7.7.7", - "@ngtools/webpack": "9.0.6", + "@ngtools/webpack": "9.0.7", "ajv": "6.10.2", "autoprefixer": "9.7.1", "babel-loader": "8.0.6", @@ -118,12 +118,6 @@ "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", "dev": true }, - "parse5": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", - "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==", - "dev": true - }, "rxjs": { "version": "6.5.3", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.3.tgz", @@ -142,9 +136,9 @@ } }, "@angular-devkit/build-optimizer": { - "version": "0.900.6", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-optimizer/-/build-optimizer-0.900.6.tgz", - "integrity": "sha512-K8BDga/E1tUCuUnpnCCAR5yh8lfJqHSBvk1K9P5LgqQNxPvSedghyQ4LYNaeRRVIVmsh4RdsJ7hvmquFrFnTZg==", + "version": "0.900.7", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-optimizer/-/build-optimizer-0.900.7.tgz", + "integrity": "sha512-gxin2oPNMN+PYo82At2JP1Q+uxnvwyDFWA1Wl+Ufuc5zHGhjKqxdQjkdMF7OT0ihtmkllN+t/NTB7rcx/Sx9Wg==", "dev": true, "requires": { "loader-utils": "1.2.3", @@ -169,13 +163,13 @@ } }, "@angular-devkit/build-webpack": { - "version": "0.900.6", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.900.6.tgz", - "integrity": "sha512-45YiOhR425599Ln4xLr8F+T0QJUEo8TeJMnq30J+2hux+XdklN2P4+0Ju0902IL0r4xD57Hibmi+fQEbDDe5sQ==", + "version": "0.900.7", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.900.7.tgz", + "integrity": "sha512-Nwwqjo1ZpHFLavN+nXOmuBgGjhoMBZGelDCvHtiQlQ9N6i7k9cKnP7eU5pY7jbalBguS+gWg5wJIGnbqk1K9Rg==", "dev": true, "requires": { - "@angular-devkit/architect": "0.900.6", - "@angular-devkit/core": "9.0.6", + "@angular-devkit/architect": "0.900.7", + "@angular-devkit/core": "9.0.7", "rxjs": "6.5.3" }, "dependencies": { @@ -191,9 +185,9 @@ } }, "@angular-devkit/core": { - "version": "9.0.6", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-9.0.6.tgz", - "integrity": "sha512-hCZJbnqLEm1F5Bx+ILcdd3LPgQTn4WFWpfUqMEGGj7UirRInWcz+6UpYotKGTJw85/mV01LrIbtWIkAUXbkkhg==", + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-9.0.7.tgz", + "integrity": "sha512-tMrz36sM1xrwvFf9Qm59GwALscVlMP7rQBjtd0fIR/QbsiOAIX4AQbV+vN6Vtwnzo5NIRZY1IXJUhesWms+h5w==", "dev": true, "requires": { "ajv": "6.10.2", @@ -239,68 +233,112 @@ } }, "@angular-devkit/schematics": { - "version": "9.0.6", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-9.0.6.tgz", - "integrity": "sha512-X7qZDJVrFcPUn+jNUeOH7Bx1D7YTpTFr0d3DBIsQzseReSGu7ugWziQPS4gc5Xm5K0nb8vx6DYtyW0FaIvX0ZA==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-9.1.0.tgz", + "integrity": "sha512-cb9PSvskMwWlL54fPfCcpJoyNDWAX6Wo7CzL5qpIB2cJCPLAuyfRUYYrkO77YUST+n2HvypHz0cZ5SNGMfaaBQ==", "dev": true, "requires": { - "@angular-devkit/core": "9.0.6", - "ora": "4.0.2", - "rxjs": "6.5.3" + "@angular-devkit/core": "9.1.0", + "ora": "4.0.3", + "rxjs": "6.5.4" }, "dependencies": { - "rxjs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.3.tgz", - "integrity": "sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA==", + "@angular-devkit/core": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-9.1.0.tgz", + "integrity": "sha512-vHTsrB4JaVUQ95FRnKrgo79Y3F6FokImrZdrmwkQmwAThpjXeXmpUEKZS+ZSTFRgesjiIysVGOFijARP4BQ7Bg==", "dev": true, "requires": { - "tslib": "^1.9.0" + "ajv": "6.12.0", + "fast-json-stable-stringify": "2.1.0", + "magic-string": "0.25.7", + "rxjs": "6.5.4", + "source-map": "0.7.3" + } + }, + "magic-string": { + "version": "0.25.7", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", + "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", + "dev": true, + "requires": { + "sourcemap-codec": "^1.4.4" } } } }, "@angular/animations": { - "version": "9.0.6", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-9.0.6.tgz", - "integrity": "sha512-LNtzUrrjqLTlZyhuAEV0sdEV0yi52Ih/p+ozCr/ivhTSSemcPbniTBbJlFZO4NJ2BuS2iEXkXwZs3mm8Fvx5Sg==" + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-9.1.0.tgz", + "integrity": "sha512-o7X3HM+eocoryw3VrDUtG6Wci2KwtzyBFo3KBJXjQ16X6fwdkjTG+hLb7pp2CBFBEJW4tPYEy7cSBmEfMRTqag==" }, "@angular/cdk": { - "version": "9.1.2", - "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-9.1.2.tgz", - "integrity": "sha512-x5niyE0iYrbVtLYjJFw2MoS+OoSbJn6y/G2pNScviDwyjBBgqRh4YgUox2kMhdPumkvuh+eA6blZoE9qpvSo2w==", + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-9.2.0.tgz", + "integrity": "sha512-jeeznvNDpR9POuxzz8Y0zFvMynG9HCJo3ZPTqOjlOq8Lj8876+rLsHDvKEMeLdwlkdi1EweYJW1CLQzI+TwqDA==", "requires": { "parse5": "^5.0.0" + }, + "dependencies": { + "parse5": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", + "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==", + "optional": true + } } }, "@angular/cli": { - "version": "9.0.6", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-9.0.6.tgz", - "integrity": "sha512-uDXhkPcHhE4G4FlY7+LJWhXErHnkn63V8lqkKD7juivs+Epmx8oXCOVObEQTbbtw7sF6s0dM8uTzHKgoefTlaA==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-9.1.0.tgz", + "integrity": "sha512-ofum4gPE/W3fKyzuJrpdHeOS0ZL8x0eYCgsrMyUoFodSpb5LWPqeW+56NgDTpIeny+Trx3pM9dr9QTUVTJ0vYg==", "dev": true, "requires": { - "@angular-devkit/architect": "0.900.6", - "@angular-devkit/core": "9.0.6", - "@angular-devkit/schematics": "9.0.6", - "@schematics/angular": "9.0.6", - "@schematics/update": "0.900.6", + "@angular-devkit/architect": "0.901.0", + "@angular-devkit/core": "9.1.0", + "@angular-devkit/schematics": "9.1.0", + "@schematics/angular": "9.1.0", + "@schematics/update": "0.901.0", "@yarnpkg/lockfile": "1.1.0", "ansi-colors": "4.1.1", - "debug": "^4.1.1", + "debug": "4.1.1", "ini": "1.3.5", - "inquirer": "7.0.0", - "npm-package-arg": "6.1.1", - "npm-pick-manifest": "3.0.2", - "open": "7.0.0", - "pacote": "9.5.8", + "inquirer": "7.1.0", + "npm-package-arg": "8.0.1", + "npm-pick-manifest": "6.0.0", + "open": "7.0.3", + "pacote": "11.1.4", "read-package-tree": "5.3.1", - "rimraf": "3.0.0", - "semver": "6.3.0", + "rimraf": "3.0.2", + "semver": "7.1.3", "symbol-observable": "1.2.0", - "universal-analytics": "^0.4.20", - "uuid": "^3.3.2" + "universal-analytics": "0.4.20", + "uuid": "7.0.2" }, "dependencies": { + "@angular-devkit/architect": { + "version": "0.901.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.901.0.tgz", + "integrity": "sha512-SlqEBkPrT40zMCy5344AsUqC76pEPCaGPaAkCIvadaz2dC9vNMzQrvubCPJHViD/TumkSX1kYmLS3iYASVM9GQ==", + "dev": true, + "requires": { + "@angular-devkit/core": "9.1.0", + "rxjs": "6.5.4" + } + }, + "@angular-devkit/core": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-9.1.0.tgz", + "integrity": "sha512-vHTsrB4JaVUQ95FRnKrgo79Y3F6FokImrZdrmwkQmwAThpjXeXmpUEKZS+ZSTFRgesjiIysVGOFijARP4BQ7Bg==", + "dev": true, + "requires": { + "ajv": "6.12.0", + "fast-json-stable-stringify": "2.1.0", + "magic-string": "0.25.7", + "rxjs": "6.5.4", + "source-map": "0.7.3" + } + }, "ansi-colors": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", @@ -316,28 +354,56 @@ "ms": "^2.1.1" } }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "magic-string": { + "version": "0.25.7", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", + "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", + "dev": true, + "requires": { + "sourcemap-codec": "^1.4.4" + } + }, + "open": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/open/-/open-7.0.3.tgz", + "integrity": "sha512-sP2ru2v0P290WFfv49Ap8MF6PkzGNnGlAwHweB4WR4mr5d2d0woiCluUeJ218w7/+PmoBy9JmYgD5A4mLcWOFA==", + "dev": true, + "requires": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + } + }, + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "requires": { + "glob": "^7.1.3" + } + }, + "uuid": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-7.0.2.tgz", + "integrity": "sha512-vy9V/+pKG+5ZTYKf+VcphF5Oc6EFiu3W8Nv3P3zIh0EqVI80ZxOzuPfe9EHjkFNvf8+xuTHVeei4Drydlx4zjw==", "dev": true } } }, "@angular/common": { - "version": "9.0.6", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-9.0.6.tgz", - "integrity": "sha512-z+c+zmoZTOQ2fT2sFQpHhpUbIYtjerxYmdOVpukprZCuv9WT2SGJfu4QVGSkeqejYnMp6VtXMdQ1CeAQojj0sw==" + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-9.1.0.tgz", + "integrity": "sha512-6JPLNtMhI03bGTVQJeSwc+dTjV6DtP7M/BAyzIV0InZP1D6XsOh2QahLFIaaN2sSxYA2ClKuwfX1v+rx9AbXQA==" }, "@angular/compiler": { - "version": "9.0.6", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-9.0.6.tgz", - "integrity": "sha512-jGTGNs8l3zwTnVEQH2v3HwWVvpz0bQY7B6rPkfHNP2bVwrhz7L6fYyJY1HtWM0S95b09NuSwianhabnEzQeTfQ==" + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-9.1.0.tgz", + "integrity": "sha512-QHw/JSeTXHiJQ2Ih0EtU7FGsYcOr+0hwZhqwSW3EEn8TtUgA3DS5lXeiDV66f+3DdvNZFPmgiZIvun3ypxn1HA==" }, "@angular/compiler-cli": { - "version": "9.0.6", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-9.0.6.tgz", - "integrity": "sha512-chzlImvinNigQ9JzehC7BRxct62OGkkru6jIMg3J2gr1r+sQlOn2ybvADloYkKnEP5hu2Izr2aSmEfMm4xobvg==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-9.1.0.tgz", + "integrity": "sha512-xZ8mVPmPporSTtvNA+cbFJQymLzuWfMX6HDDgztZ2eZ5WcQJYloRN4CcYMEzDhCxfV1Zw9Tfc2l14jZD8osi6g==", "dev": true, "requires": { "canonical-path": "1.0.0", @@ -351,34 +417,65 @@ "semver": "^6.3.0", "source-map": "^0.6.1", "sourcemap-codec": "^1.4.8", - "yargs": "13.1.0" + "yargs": "15.3.0" }, "dependencies": { "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, "camelcase": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "dev": true }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "cliui": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dev": true, "requires": { - "locate-path": "^3.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" } }, "fs-extra": { @@ -399,15 +496,39 @@ "dev": true }, "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "dev": true }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "requires": { + "p-locate": "^4.1.0" + } + }, "minimist": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.4.tgz", - "integrity": "sha512-wTiNDqe4D2rbTJGZk1qcdZgFtY0/r+iuE6GDT7V0/+Gu5MLpIDm4+CssDECR79OJs/OxLPXMzdxy153b5Qy3hg==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "requires": { + "p-limit": "^2.2.0" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "dev": true }, "require-main-filename": { @@ -429,48 +550,59 @@ "dev": true }, "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", "dev": true, "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" } }, "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { - "ansi-regex": "^4.1.0" + "ansi-regex": "^5.0.0" + } + }, + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" } }, "yargs": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.1.0.tgz", - "integrity": "sha512-1UhJbXfzHiPqkfXNHYhiz79qM/kZqjTE8yGlEjZa85Q+3+OwcV6NRkV7XOV1W2Eom2bzILeUn55pQYffjVOLAg==", + "version": "15.3.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.0.tgz", + "integrity": "sha512-g/QCnmjgOl1YJjGsnUg2SatC7NUYEiLXJqxNOQU9qSpjzGtGXda9b+OKccr1kLTy8BN9yqEyqfq5lxlwdc13TA==", "dev": true, "requires": { - "cliui": "^4.0.0", - "find-up": "^3.0.0", + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", "get-caller-file": "^2.0.1", - "os-locale": "^3.1.0", "require-directory": "^2.1.1", "require-main-filename": "^2.0.0", "set-blocking": "^2.0.0", - "string-width": "^3.0.0", + "string-width": "^4.2.0", "which-module": "^2.0.0", "y18n": "^4.0.0", - "yargs-parser": "^13.0.0" + "yargs-parser": "^18.1.0" } }, "yargs-parser": { - "version": "13.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.1.tgz", - "integrity": "sha512-oVAVsHz6uFrg3XQheFII8ESO2ssAf9luWuAd6Wexsu4F3OtIW0o8IribPXYrD4WC24LWtPrJlGy87y5udK+dxQ==", + "version": "18.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.2.tgz", + "integrity": "sha512-hlIPNR3IzC1YuL1c2UwwDKpXlNFBqD1Fswwh1khz5+d8Cq/8yc/Mn0i+rQXduu8hcrFKvO7Eryk+09NecTQAAQ==", "dev": true, "requires": { "camelcase": "^5.0.0", @@ -480,40 +612,40 @@ } }, "@angular/core": { - "version": "9.0.6", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-9.0.6.tgz", - "integrity": "sha512-egpVGqqI+L1QQFn9ziHIElXb0bCzY1l8vzyQGfm2KnxHpmx2TJp2uaaHh5LRcqYR7TLeGMpqmzhRxir6Up7AAQ==" + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-9.1.0.tgz", + "integrity": "sha512-RVlyegdIAij0P1wLY5ObIdsBAzvmHkHfElnmfiNKhaDftP6U/3zRtaKDu0bq0jvn1WCQ8zXxFQ8AWyKZwyFS+w==" }, "@angular/forms": { - "version": "9.0.6", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-9.0.6.tgz", - "integrity": "sha512-mxUEqQny3scxQM/21QLKgtq5EcOm1Tn5cU3rStY1L8J6Mg+Rd2Rz4SY0WXQpaRKPj+WNd+PDgdGiRs3cAjfLFQ==" + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-9.1.0.tgz", + "integrity": "sha512-5GC8HQlPChPV+168zLlm4yj4syA6N9ChSKV0tmzj1zIfMcub1UAOaB9IYaXRHQsjPFh9OuQXwmkzScyAfhEVjA==" }, "@angular/language-service": { - "version": "9.0.6", - "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-9.0.6.tgz", - "integrity": "sha512-lyEYYsBXFhXKu3aT6XkKBmmf4c59lb/C6C15q4Dl8BW/wIuA/mNLosDKLnd/jCS0VpcY4v0HJRKg9SCopa8BhQ==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-9.1.0.tgz", + "integrity": "sha512-2f8ECoXrj40oS1rtIfi+F8T4WPzundcZDs8WMFNBuWYbk14v1S9sTgMEmZyePHGkPjt6IfYiLJKJCvVgrt1nxQ==", "dev": true }, "@angular/material": { - "version": "9.1.2", - "resolved": "https://registry.npmjs.org/@angular/material/-/material-9.1.2.tgz", - "integrity": "sha512-8uwwkSnsg/YlhqxD/+0Cj+1S97Xf5WUcgxSEXmC1r0/AD+o6PGL5ImIk4n+3tdgYqm7MoJZQthlIB2J0EVLjVw==" + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/@angular/material/-/material-9.2.0.tgz", + "integrity": "sha512-KKzEIVh6/m56m+Ao8p4PK0SyEr0574l3VP2swj1qPag3u+FYgemmXCGTaChrKdDsez+zeTCPXImBGXzE6NQ80Q==" }, "@angular/platform-browser": { - "version": "9.0.6", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-9.0.6.tgz", - "integrity": "sha512-CA7dW+j1mVh3OUo3C2vIn05NxNgrDPK4vpfRIwBIn1gErpnIXCa2vgnRzn3H9zKizKt0iuwSIukEnWG280Q0xg==" + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-9.1.0.tgz", + "integrity": "sha512-OsS/blUjl8ranmDaRADjFAmvnlmwbT6WNU7dVov7FhV0rqesbwaOJ5bR0LSYHYpej7Jaa6oYk0v0XWkaH9LTFg==" }, "@angular/platform-browser-dynamic": { - "version": "9.0.6", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-9.0.6.tgz", - "integrity": "sha512-Z0/qHciqbR+c2fwGxrkr77tQkEKhZpAPljGva/VNoS3Ms1OikqZB9Ev7xmZOM9656khPBU38m3aLsTXAAnQ4YA==" + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-9.1.0.tgz", + "integrity": "sha512-sMtz/poQ3TYaWZzWjrn9apKUZ/WKql2MYCWbpax7pql3GgC9OoTslc7ZEe7/d3ynfFE/CQqWBBOuWGD71Z0LMQ==" }, "@angular/router": { - "version": "9.0.6", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-9.0.6.tgz", - "integrity": "sha512-Ki1uk3jWPsoFh27SnyXatPSFK3ghF25pjiwWw9/inPvlS/HshSWgS2FbYf49LD5xVFF3Ni2Z5GRKxSEqxL8vQw==" + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-9.1.0.tgz", + "integrity": "sha512-cExO1nPnoPFiUJWZ28hTHozPLFoCmqr3xqcM57We0hhKE0esdrO+gRWKRH0EJERukLbU8coPKVhA8daGUpASiQ==" }, "@babel/code-frame": { "version": "7.8.3", @@ -556,18 +688,18 @@ } }, "json5": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.1.tgz", - "integrity": "sha512-l+3HXD0GEI3huGq1njuqtzYK8OYJyXMkOLtQ53pjWh89tvWS2h6l+1zMkYWqlb57+SiQodKZyvMEFb2X+KrFhQ==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.2.tgz", + "integrity": "sha512-MoUOQ4WdiN3yxhm7NEVJSJrieAo5hNSLQ5sj05OTRHPL9HOBy8u4Bu88jsC1jvqAdN+E1bJmsUcZH+1HQxliqQ==", "dev": true, "requires": { - "minimist": "^1.2.0" + "minimist": "^1.2.5" } }, "minimist": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.4.tgz", - "integrity": "sha512-wTiNDqe4D2rbTJGZk1qcdZgFtY0/r+iuE6GDT7V0/+Gu5MLpIDm4+CssDECR79OJs/OxLPXMzdxy153b5Qy3hg==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true }, "semver": { @@ -623,17 +755,6 @@ "@babel/types": "^7.8.3" } }, - "@babel/helper-call-delegate": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.8.7.tgz", - "integrity": "sha512-doAA5LAKhsFCR0LAFIf+r2RSMmC+m8f/oQ+URnUET/rWeEzC0yTRmAGyWkD4sSu3xwbS7MYQ2u+xlt1V5R56KQ==", - "dev": true, - "requires": { - "@babel/helper-hoist-variables": "^7.8.3", - "@babel/traverse": "^7.8.3", - "@babel/types": "^7.8.7" - } - }, "@babel/helper-create-regexp-features-plugin": { "version": "7.8.8", "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.8.8.tgz", @@ -714,9 +835,9 @@ } }, "@babel/helper-module-transforms": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.8.6.tgz", - "integrity": "sha512-RDnGJSR5EFBJjG3deY0NiL0K9TO8SXxS9n/MPsbPK/s9LbQymuLNtlzvDiNS7IpecuL45cMeLVkA+HfmlrnkRg==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.9.0.tgz", + "integrity": "sha512-0FvKyu0gpPfIQ8EkxlrAydOWROdHpBmiCiRwLkUiBGhCUPRRbVD2/tm3sFr/c/GWFrQ/ffutGUAnx7V0FzT2wA==", "dev": true, "requires": { "@babel/helper-module-imports": "^7.8.3", @@ -724,8 +845,21 @@ "@babel/helper-simple-access": "^7.8.3", "@babel/helper-split-export-declaration": "^7.8.3", "@babel/template": "^7.8.6", - "@babel/types": "^7.8.6", + "@babel/types": "^7.9.0", "lodash": "^4.17.13" + }, + "dependencies": { + "@babel/types": { + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", + "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.9.0", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + } } }, "@babel/helper-optimise-call-expression": { @@ -796,6 +930,12 @@ "@babel/types": "^7.8.3" } }, + "@babel/helper-validator-identifier": { + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.0.tgz", + "integrity": "sha512-6G8bQKjOh+of4PV/ThDm/rRqlU7+IGoJuofpagU5GlEl29Vv0RGqqt86ZGRV8ZuSOY3o+8yXl5y782SMcG7SHw==", + "dev": true + }, "@babel/helper-wrap-function": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.8.3.tgz", @@ -809,14 +949,77 @@ } }, "@babel/helpers": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.8.4.tgz", - "integrity": "sha512-VPbe7wcQ4chu4TDQjimHv/5tj73qz88o12EPkO2ValS2QiQS/1F2SsjyIGNnAD0vF/nZS6Cf9i+vW6HIlnaR8w==", + "version": "7.9.2", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.9.2.tgz", + "integrity": "sha512-JwLvzlXVPjO8eU9c/wF9/zOIN7X6h8DYf7mG4CiFRZRvZNKEF5dQ3H3V+ASkHoIB3mWhatgl5ONhyqHRI6MppA==", "dev": true, "requires": { "@babel/template": "^7.8.3", - "@babel/traverse": "^7.8.4", - "@babel/types": "^7.8.3" + "@babel/traverse": "^7.9.0", + "@babel/types": "^7.9.0" + }, + "dependencies": { + "@babel/generator": { + "version": "7.9.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.9.4.tgz", + "integrity": "sha512-rjP8ahaDy/ouhrvCoU1E5mqaitWrxwuNGU+dy1EpaoK48jZay4MdkskKGIMHLZNewg8sAsqpGSREJwP0zH3YQA==", + "dev": true, + "requires": { + "@babel/types": "^7.9.0", + "jsesc": "^2.5.1", + "lodash": "^4.17.13", + "source-map": "^0.5.0" + } + }, + "@babel/parser": { + "version": "7.9.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.4.tgz", + "integrity": "sha512-bC49otXX6N0/VYhgOMh4gnP26E9xnDZK3TmbNpxYzzz9BQLBosQwfyOe9/cXUU3txYhTzLCbcqd5c8y/OmCjHA==", + "dev": true + }, + "@babel/traverse": { + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.9.0.tgz", + "integrity": "sha512-jAZQj0+kn4WTHO5dUZkZKhbFrqZE7K5LAQ5JysMnmvGij+wOdr+8lWqPeW0BcF4wFwrEXXtdGO7wcV6YPJcf3w==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.8.3", + "@babel/generator": "^7.9.0", + "@babel/helper-function-name": "^7.8.3", + "@babel/helper-split-export-declaration": "^7.8.3", + "@babel/parser": "^7.9.0", + "@babel/types": "^7.9.0", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.13" + } + }, + "@babel/types": { + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.0.tgz", + "integrity": "sha512-BS9JKfXkzzJl8RluW4JGknzpiUV7ZrvTayM6yfqLTVBEnFtyowVIOu6rqxRd5cVO6yGoWf4T8u8dgK9oB+GCng==", + "dev": true, + "requires": { + "@babel/helper-validator-identifier": "^7.9.0", + "lodash": "^4.17.13", + "to-fast-properties": "^2.0.0" + } + }, + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } } }, "@babel/highlight": { @@ -868,9 +1071,9 @@ } }, "@babel/plugin-proposal-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-8qvuPwU/xxUCt78HocNlv0mXXo0wdh9VT1R04WU8HGOfaOob26pF+9P5/lYjN/q7DHOX1bvX60hnhOvuQUJdbA==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.9.0.tgz", + "integrity": "sha512-UgqBv6bjq4fDb8uku9f+wcm1J7YxJ5nT7WO/jBr0cl0PLKb7t1O6RNR1kZbjgx2LQtsDI9hwoQVmn0yhXeQyow==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3", @@ -991,9 +1194,9 @@ } }, "@babel/plugin-transform-classes": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.8.6.tgz", - "integrity": "sha512-k9r8qRay/R6v5aWZkrEclEhKO6mc1CCQr2dLsVHBmOQiMpN6I2bpjX3vgnldUWeEI1GHVNByULVxZ4BdP4Hmdg==", + "version": "7.9.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.9.2.tgz", + "integrity": "sha512-TC2p3bPzsfvSsqBZo0kJnuelnoK9O3welkUpqSqBQuBF6R5MN2rysopri8kNvtlGIb2jmUO7i15IooAZJjZuMQ==", "dev": true, "requires": { "@babel/helper-annotate-as-pure": "^7.8.3", @@ -1054,9 +1257,9 @@ } }, "@babel/plugin-transform-for-of": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.8.6.tgz", - "integrity": "sha512-M0pw4/1/KI5WAxPsdcUL/w2LJ7o89YHN3yLkzNjg7Yl15GlVGgzHyCU+FMeAxevHGsLVmUqbirlUIKTafPmzdw==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.9.0.tgz", + "integrity": "sha512-lTAnWOpMwOXpyDx06N+ywmF3jNbafZEqZ96CGYabxHrxNX8l5ny7dt4bK/rGwAh9utyP2b2Hv7PlZh1AAS54FQ==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3" @@ -1091,47 +1294,47 @@ } }, "@babel/plugin-transform-modules-amd": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.8.3.tgz", - "integrity": "sha512-MadJiU3rLKclzT5kBH4yxdry96odTUwuqrZM+GllFI/VhxfPz+k9MshJM+MwhfkCdxxclSbSBbUGciBngR+kEQ==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.9.0.tgz", + "integrity": "sha512-vZgDDF003B14O8zJy0XXLnPH4sg+9X5hFBBGN1V+B2rgrB+J2xIypSN6Rk9imB2hSTHQi5OHLrFWsZab1GMk+Q==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.8.3", + "@babel/helper-module-transforms": "^7.9.0", "@babel/helper-plugin-utils": "^7.8.3", "babel-plugin-dynamic-import-node": "^2.3.0" } }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.8.3.tgz", - "integrity": "sha512-JpdMEfA15HZ/1gNuB9XEDlZM1h/gF/YOH7zaZzQu2xCFRfwc01NXBMHHSTT6hRjlXJJs5x/bfODM3LiCk94Sxg==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.9.0.tgz", + "integrity": "sha512-qzlCrLnKqio4SlgJ6FMMLBe4bySNis8DFn1VkGmOcxG9gqEyPIOzeQrA//u0HAKrWpJlpZbZMPB1n/OPa4+n8g==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.8.3", + "@babel/helper-module-transforms": "^7.9.0", "@babel/helper-plugin-utils": "^7.8.3", "@babel/helper-simple-access": "^7.8.3", "babel-plugin-dynamic-import-node": "^2.3.0" } }, "@babel/plugin-transform-modules-systemjs": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.8.3.tgz", - "integrity": "sha512-8cESMCJjmArMYqa9AO5YuMEkE4ds28tMpZcGZB/jl3n0ZzlsxOAi3mC+SKypTfT8gjMupCnd3YiXCkMjj2jfOg==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.9.0.tgz", + "integrity": "sha512-FsiAv/nao/ud2ZWy4wFacoLOm5uxl0ExSQ7ErvP7jpoihLR6Cq90ilOFyX9UXct3rbtKsAiZ9kFt5XGfPe/5SQ==", "dev": true, "requires": { "@babel/helper-hoist-variables": "^7.8.3", - "@babel/helper-module-transforms": "^7.8.3", + "@babel/helper-module-transforms": "^7.9.0", "@babel/helper-plugin-utils": "^7.8.3", "babel-plugin-dynamic-import-node": "^2.3.0" } }, "@babel/plugin-transform-modules-umd": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.8.3.tgz", - "integrity": "sha512-evhTyWhbwbI3/U6dZAnx/ePoV7H6OUG+OjiJFHmhr9FPn0VShjwC2kdxqIuQ/+1P50TMrneGzMeyMTFOjKSnAw==", + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.9.0.tgz", + "integrity": "sha512-uTWkXkIVtg/JGRSIABdBoMsoIeoHQHPTL0Y2E7xf5Oj7sLqwVsNXOkNk0VJc7vF0IMBsPeikHxFjGe+qmwPtTQ==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.8.3", + "@babel/helper-module-transforms": "^7.9.0", "@babel/helper-plugin-utils": "^7.8.3" } }, @@ -1164,12 +1367,11 @@ } }, "@babel/plugin-transform-parameters": { - "version": "7.8.8", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.8.8.tgz", - "integrity": "sha512-hC4Ld/Ulpf1psQciWWwdnUspQoQco2bMzSrwU6TmzRlvoYQe4rQFy9vnCZDTlVeCQj0JPfL+1RX0V8hCJvkgBA==", + "version": "7.9.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.9.3.tgz", + "integrity": "sha512-fzrQFQhp7mIhOzmOtPiKffvCYQSK10NR8t6BBz2yPbeUHb9OLW8RZGtgDRBn8z2hGcwvKDL3vC7ojPTLNxmqEg==", "dev": true, "requires": { - "@babel/helper-call-delegate": "^7.8.7", "@babel/helper-get-function-arity": "^7.8.3", "@babel/helper-plugin-utils": "^7.8.3" } @@ -1326,18 +1528,18 @@ } }, "@babel/runtime": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.8.7.tgz", - "integrity": "sha512-+AATMUFppJDw6aiR5NVPHqIQBlV/Pj8wY/EZH+lmvRdUo9xBaz/rF3alAwFJQavvKfeOlPE7oaaDHVbcySbCsg==", + "version": "7.9.2", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.9.2.tgz", + "integrity": "sha512-NE2DtOdufG7R5vnfQUTehdTfNycfUANEtCa9PssN9O/xmTzP4E08UI797ixaei6hBEVL9BI/PsdJS5x7mWoB9Q==", "dev": true, "requires": { "regenerator-runtime": "^0.13.4" }, "dependencies": { "regenerator-runtime": { - "version": "0.13.4", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.4.tgz", - "integrity": "sha512-plpwicqEzfEyTQohIKktWigcLzmNStMGwbOUbykx51/29Z3JOGYldaaNGK7ngNXV+UcoqvIMmloZ48Sr74sd+g==", + "version": "0.13.5", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz", + "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==", "dev": true } } @@ -1504,12 +1706,12 @@ "dev": true }, "@ngtools/webpack": { - "version": "9.0.6", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-9.0.6.tgz", - "integrity": "sha512-1R6xuQKBlVdf1lPsjN9S/BRCxPTRPPDN3E3unX2Nw4wK8XBWwm5CuSeEgp33PCwMpyWPaa7bg25Nz3Zt+DIlSQ==", + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-9.0.7.tgz", + "integrity": "sha512-MvoMaErkjESefoIrbt8F2RpKDr9KavwvH4v3hwSAKooVNFdFKNsjJ7m3gCQehumEfsYFq2mrEK2sTW4/CpFlMQ==", "dev": true, "requires": { - "@angular-devkit/core": "9.0.6", + "@angular-devkit/core": "9.0.7", "enhanced-resolve": "4.1.1", "rxjs": "6.5.3", "webpack-sources": "1.4.3" @@ -1531,76 +1733,137 @@ "resolved": "https://registry.npmjs.org/@ngx-translate/core/-/core-12.1.2.tgz", "integrity": "sha512-ZudJsqIxTKlLmPoqK8gJY3UpMGujR0Xm7HfXL6AR79yGRS23QqpjAhMfx4v5qUCcHMmQ9/78bW8QJLfp31c7vQ==" }, + "@npmcli/ci-detect": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@npmcli/ci-detect/-/ci-detect-1.2.0.tgz", + "integrity": "sha512-JtktVH7ASBVIWsQTFlFpeOzhBJskvoBCTfeeRhhZy7ybATcUvwiwotZ8j5rkqUUyB69lIy/AvboiiiGBjYBKBA==", + "dev": true + }, + "@npmcli/git": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-2.0.1.tgz", + "integrity": "sha512-hVatexiBtx71F01Ars38Hr5AFUGmJgHAfQtRlO5fJlnAawRGSXwEFgjB5i3XdUUmElZU/RXy7fefN02dZKxgPw==", + "dev": true, + "requires": { + "@npmcli/promise-spawn": "^1.1.0", + "mkdirp": "^1.0.3", + "npm-pick-manifest": "^6.0.0", + "promise-inflight": "^1.0.1", + "promise-retry": "^1.1.1", + "unique-filename": "^1.1.1", + "which": "^2.0.2" + }, + "dependencies": { + "mkdirp": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.3.tgz", + "integrity": "sha512-6uCP4Qc0sWsgMLy1EOqqS/3rjDHOEnsStVr/4vtAIK2Y5i2kA7lFFejYrpIyiN9w0pYf4ckeCYT9f1r1P9KX5g==", + "dev": true + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "@npmcli/installed-package-contents": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-1.0.5.tgz", + "integrity": "sha512-aKIwguaaqb6ViwSOFytniGvLPb9SMCUm39TgM3SfUo7n0TxUMbwoXfpwyvQ4blm10lzbAwTsvjr7QZ85LvTi4A==", + "dev": true, + "requires": { + "npm-bundled": "^1.1.1", + "npm-normalize-package-bin": "^1.0.1", + "read-package-json-fast": "^1.1.1", + "readdir-scoped-modules": "^1.1.0" + } + }, + "@npmcli/promise-spawn": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-1.1.0.tgz", + "integrity": "sha512-FwbuYN9KXBkloLeIR3xRgI8dyOdfK/KzaJlChszNuwmUXD1lHXfLlSeo4n4KrKt2udIK9K9/TzlnyCA3ubM2fA==", + "dev": true, + "requires": { + "infer-owner": "^1.0.4" + } + }, "@schematics/angular": { - "version": "9.0.6", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-9.0.6.tgz", - "integrity": "sha512-oYIfSJF9ISAJWJjIiUnj8Rp1m4t9T3oqKl1FzkMWXvUmR1BfkO2S2/Moi2RQ0aHG6D9Oz4CJjrsQRmjaqBpEZw==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-9.1.0.tgz", + "integrity": "sha512-qkehaITQ1S1udfnnBY5CXGWnk1iVFI8cZayjLUlRfD5w+6v9if3VIuqPssX96MqvkbjyRu1N214+ieaawzLmuA==", "dev": true, "requires": { - "@angular-devkit/core": "9.0.6", - "@angular-devkit/schematics": "9.0.6" + "@angular-devkit/core": "9.1.0", + "@angular-devkit/schematics": "9.1.0" + }, + "dependencies": { + "@angular-devkit/core": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-9.1.0.tgz", + "integrity": "sha512-vHTsrB4JaVUQ95FRnKrgo79Y3F6FokImrZdrmwkQmwAThpjXeXmpUEKZS+ZSTFRgesjiIysVGOFijARP4BQ7Bg==", + "dev": true, + "requires": { + "ajv": "6.12.0", + "fast-json-stable-stringify": "2.1.0", + "magic-string": "0.25.7", + "rxjs": "6.5.4", + "source-map": "0.7.3" + } + }, + "magic-string": { + "version": "0.25.7", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", + "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", + "dev": true, + "requires": { + "sourcemap-codec": "^1.4.4" + } + } } }, "@schematics/update": { - "version": "0.900.6", - "resolved": "https://registry.npmjs.org/@schematics/update/-/update-0.900.6.tgz", - "integrity": "sha512-54Xi3FIJQWFBM91vxD9ciKkTlNWaIV7wsjKSImg53h2m2/l2VPPHyIZWI4j79dWXlfJVTNeaqPNYGzJlRvaEmA==", + "version": "0.901.0", + "resolved": "https://registry.npmjs.org/@schematics/update/-/update-0.901.0.tgz", + "integrity": "sha512-u2VESL1dgOSGZK/wcWEz0WcCU/yv764zhzCQerCwUtbV1CISSSDZ6x+prVYDXOdxWBGtDos2MbCF3GEJJI1T+w==", "dev": true, "requires": { - "@angular-devkit/core": "9.0.6", - "@angular-devkit/schematics": "9.0.6", + "@angular-devkit/core": "9.1.0", + "@angular-devkit/schematics": "9.1.0", "@yarnpkg/lockfile": "1.1.0", "ini": "1.3.5", - "npm-package-arg": "^7.0.0", - "pacote": "9.5.8", - "rxjs": "6.5.3", - "semver": "6.3.0", + "npm-package-arg": "^8.0.0", + "pacote": "11.1.4", + "rxjs": "6.5.4", + "semver": "7.1.3", "semver-intersect": "1.4.0" }, "dependencies": { - "hosted-git-info": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.4.tgz", - "integrity": "sha512-4oT62d2jwSDBbLLFLZE+1vPuQ1h8p9wjrJ8Mqx5TjsyWmBMV5B13eJqn8pvluqubLf3cJPTfiYCIwNwDNmzScQ==", - "dev": true, - "requires": { - "lru-cache": "^5.1.1" - } - }, - "npm-package-arg": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-7.0.0.tgz", - "integrity": "sha512-xXxr8y5U0kl8dVkz2oK7yZjPBvqM2fwaO5l3Yg13p03v8+E3qQcD0JNhHzjL1vyGgxcKkD0cco+NLR72iuPk3g==", + "@angular-devkit/core": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-9.1.0.tgz", + "integrity": "sha512-vHTsrB4JaVUQ95FRnKrgo79Y3F6FokImrZdrmwkQmwAThpjXeXmpUEKZS+ZSTFRgesjiIysVGOFijARP4BQ7Bg==", "dev": true, "requires": { - "hosted-git-info": "^3.0.2", - "osenv": "^0.1.5", - "semver": "^5.6.0", - "validate-npm-package-name": "^3.0.0" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "ajv": "6.12.0", + "fast-json-stable-stringify": "2.1.0", + "magic-string": "0.25.7", + "rxjs": "6.5.4", + "source-map": "0.7.3" } }, - "rxjs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.3.tgz", - "integrity": "sha512-wuYsAYYFdWTAnAaPoKGNhfpWwKZbJW+HgAJ+mImp+Epl7BG8oNWBCTyRM8gba9k4lk8BgWdoYm21Mo/RYhhbgA==", + "magic-string": { + "version": "0.25.7", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz", + "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==", "dev": true, "requires": { - "tslib": "^1.9.0" + "sourcemap-codec": "^1.4.4" } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true } } }, @@ -1637,6 +1900,18 @@ "defer-to-connect": "^1.0.1" } }, + "@tootallnate/once": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.0.0.tgz", + "integrity": "sha512-KYyTT/T6ALPkIRd2Ge080X/BsXvy9O0hcWTtMWkPvwAwF99+vn6Dv4GzrFT/Nn1LePr+FFDbRXXlqmsy9lw2zA==", + "dev": true + }, + "@types/color-name": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", + "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", + "dev": true + }, "@types/debug": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.5.tgz", @@ -1644,9 +1919,9 @@ "dev": true }, "@types/estree": { - "version": "0.0.42", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.42.tgz", - "integrity": "sha512-K1DPVvnBCPxzD+G51/cxVIoc2X8uUVl1zpJeE6iKcgHMj4+tbat5Xu4TjV7v2QSDbIeAfLi2hIk+u2+s0MlpUQ==", + "version": "0.0.44", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.44.tgz", + "integrity": "sha512-iaIVzr+w2ZJ5HkidlZ3EJM8VTZb2MJLCjw3V+505yVts0gRC4UMvjw0d1HPtGqI/HQC/KdsYtayfzl+AXY2R8g==", "dev": true }, "@types/events": { @@ -1667,9 +1942,9 @@ } }, "@types/jasmine": { - "version": "3.5.9", - "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.5.9.tgz", - "integrity": "sha512-KNL2Fq6GRmty2j6+ZmueT/Z/dkctLNH+5DFoGHNDtcgt7yME9NZd8x2p81Yuea1Xux/qAryDd3zVLUoKpDz1TA==", + "version": "3.5.10", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-3.5.10.tgz", + "integrity": "sha512-3F8qpwBAiVc5+HPJeXJpbrl+XjawGmciN5LgiO7Gv1pl1RHtjoMNqZpqEksaPJW05ViKe8snYInRs6xB25Xdew==", "dev": true }, "@types/jasminewd2": { @@ -1688,9 +1963,9 @@ "dev": true }, "@types/node": { - "version": "12.12.29", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.29.tgz", - "integrity": "sha512-yo8Qz0ygADGFptISDj3pOC9wXfln/5pQaN/ysDIzOaAWXt73cNHmtEC8zSO2Y+kse/txmwIAJzkYZ5fooaS5DQ==", + "version": "12.12.31", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.12.31.tgz", + "integrity": "sha512-T+wnJno8uh27G9c+1T+a1/WYCHzLeDqtsGJkoEdSp2X8RTh3oOCZQcUnjAx90CS8cmmADX51O0FI/tu9s0yssg==", "dev": true }, "@types/q": { @@ -1727,9 +2002,9 @@ "dev": true }, "@types/webpack-sources": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-0.1.6.tgz", - "integrity": "sha512-FtAWR7wR5ocJ9+nP137DV81tveD/ZgB1sadnJ/axUGM3BUVfRPx8oQNMtv3JNfTeHx3VP7cXiyfR/jmtEsVHsQ==", + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-0.1.7.tgz", + "integrity": "sha512-XyaHrJILjK1VHVC4aVlKsdNN5KBTwufMb43cQs+flGxtPAf/1Qwl8+Q0tp5BwEGaI8D6XT1L+9bSWXckgkjTLw==", "dev": true, "requires": { "@types/node": "*", @@ -1939,16 +2214,6 @@ "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", "dev": true }, - "JSONStream": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", - "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", - "dev": true, - "requires": { - "jsonparse": "^1.2.0", - "through": ">=2.2.7 <3" - } - }, "abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", @@ -1992,12 +2257,25 @@ } }, "agentkeepalive": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-3.5.2.tgz", - "integrity": "sha512-e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.1.0.tgz", + "integrity": "sha512-CW/n1wxF8RpEuuiq6Vbn9S8m0VSYDMnZESqaJ6F2cWN9fY8rei2qaxweIaRgq+ek8TqfoFIsUjaGNKGGEHElSg==", "dev": true, "requires": { + "debug": "^4.1.0", + "depd": "^1.1.2", "humanize-ms": "^1.2.1" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + } } }, "aggregate-error": { @@ -2466,26 +2744,15 @@ "dev": true }, "auto-launch": { - "version": "5.0.6", - "resolved": "git+https://github.com/Kyusung4698/node-auto-launch.git#a42efa798b4827c34554ee01bc51d4962fdb8ec1", + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/auto-launch/-/auto-launch-5.0.5.tgz", + "integrity": "sha512-ppdF4mihhYzMYLuCcx9H/c5TUOCev8uM7en53zWVQhyYAJrurd2bFZx3qQVeJKF2jrc7rsPRNN5cD+i23l6PdA==", "requires": { "applescript": "^1.0.0", - "mkdirp": "^1.0.3", - "path-is-absolute": "^2.0.0", - "untildify": "^4.0.0", + "mkdirp": "^0.5.1", + "path-is-absolute": "^1.0.0", + "untildify": "^3.0.2", "winreg": "1.2.4" - }, - "dependencies": { - "mkdirp": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.3.tgz", - "integrity": "sha512-6uCP4Qc0sWsgMLy1EOqqS/3rjDHOEnsStVr/4vtAIK2Y5i2kA7lFFejYrpIyiN9w0pYf4ckeCYT9f1r1P9KX5g==" - }, - "path-is-absolute": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-2.0.0.tgz", - "integrity": "sha512-ajROpjq1SLxJZsgSVCcVIt+ZebVH+PwJtPnVESjfg6JKwJGwAgHRC3zIcjvI0LnecjIHCJhtfNZ/Y/RregqyXg==" - } } }, "autoprefixer": { @@ -2637,8 +2904,7 @@ "base64-js": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", - "dev": true + "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==" }, "base64id": { "version": "1.0.0", @@ -3023,14 +3289,15 @@ } }, "browserslist": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.9.1.tgz", - "integrity": "sha512-Q0DnKq20End3raFulq6Vfp1ecB9fh8yUNV55s8sekaDDeqBaCtWlRHCUdaWyUeSSBJM7IbM6HcsyaeYqgeDhnw==", + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.11.0.tgz", + "integrity": "sha512-WqEC7Yr5wUH5sg6ruR++v2SGOQYpyUdYYd4tZoAq1F7y+QXoLoYGXVbxhtaIqWmAJjtNTRjVD3HuJc1OXTel2A==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001030", - "electron-to-chromium": "^1.3.363", - "node-releases": "^1.1.50" + "caniuse-lite": "^1.0.30001035", + "electron-to-chromium": "^1.3.380", + "node-releases": "^1.1.52", + "pkg-up": "^3.1.0" } }, "browserstack": { @@ -3075,6 +3342,12 @@ "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" }, + "buffer-crc32": { + "version": "0.2.13", + "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", + "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=", + "dev": true + }, "buffer-fill": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", @@ -3348,9 +3621,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001035", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001035.tgz", - "integrity": "sha512-C1ZxgkuA4/bUEdMbU5WrGY4+UhMFFiXrgNAfxiMIqWgFTWfv/xsZCS2xEHT2LMq7xAZfuAnu6mcqyDl0ZR6wLQ==", + "version": "1.0.30001038", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001038.tgz", + "integrity": "sha512-zii9quPo96XfOiRD4TrfYGs+QsGZpb2cGiMAzPjtf/hpFgB6zCPZgJb7I1+EATeMw/o+lG8FyRAnI+CWStHcaQ==", "dev": true }, "canonical-path": { @@ -3601,9 +3874,9 @@ "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" }, "codelyzer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/codelyzer/-/codelyzer-5.2.1.tgz", - "integrity": "sha512-awBZXFcJUyC5HMYXiHzjr3D24tww2l1D1OqtfA9vUhEtYr32a65A+Gblm/OvsO+HuKLYzn8EDMw1inSM3VbxWA==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/codelyzer/-/codelyzer-5.2.2.tgz", + "integrity": "sha512-jB4FZ1Sx7kZhvZVdf+N2BaKTdrrNZOL0Bj10RRfrhHrb3zEvXjJvvq298JPMJAiyiCS/v4zs1QlGU0ip7xGqeA==", "dev": true, "requires": { "app-root-path": "^2.2.1", @@ -4041,9 +4314,9 @@ }, "dependencies": { "cacache": { - "version": "12.0.3", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.3.tgz", - "integrity": "sha512-kqdmfXEGFepesTuROHMs3MpFLWrPkSSpRqOw80RCflZXy/khxaArvFrQ7uJxSUduzAufc6G0g1VUCOZXxWavPw==", + "version": "12.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", + "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", "dev": true, "requires": { "bluebird": "^3.5.5", @@ -4446,12 +4719,36 @@ "dev": true }, "csso": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/csso/-/csso-4.0.2.tgz", - "integrity": "sha512-kS7/oeNVXkHWxby5tHVxlhjizRCSv8QdU7hB2FpdAibDU8FjTAolhNjKNTiLzXtUrKT6HwClE81yXwEk1309wg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.0.3.tgz", + "integrity": "sha512-NL3spysxUkcrOgnpsT4Xdl2aiEiBG6bXswAABQVHcMrfjjBisFOKwLDOmf4wf32aPdcJws1zds2B0Rg+jqMyHQ==", "dev": true, "requires": { - "css-tree": "1.0.0-alpha.37" + "css-tree": "1.0.0-alpha.39" + }, + "dependencies": { + "css-tree": { + "version": "1.0.0-alpha.39", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.39.tgz", + "integrity": "sha512-7UvkEYgBAHRG9Nt980lYxjsTrCyHFN53ky3wVsDkiMdVqylqRt+Zc+jm5qw7/qyOvN2dHSYtX0e4MbCCExSvnA==", + "dev": true, + "requires": { + "mdn-data": "2.0.6", + "source-map": "^0.6.1" + } + }, + "mdn-data": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.6.tgz", + "integrity": "sha512-rQvjv71olwNHgiTbfPZFkJtjNMciWgswYeciZhtvWLO8bmX3TnhyA62I6sTWOyZssWHJJjY6/KiWwqQsWWsqOA==", + "dev": true + }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + } } }, "currently-unhandled": { @@ -5152,9 +5449,9 @@ "dev": true }, "electron": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/electron/-/electron-8.1.1.tgz", - "integrity": "sha512-t+5zzFo7VOgckJc9YpImHJkpqeWxwpmEjywWbAa4IT5MULS7h1XU52H9gMswK/y8xc5lBNwxLhJSty/15+gi1A==", + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/electron/-/electron-8.2.0.tgz", + "integrity": "sha512-mnV43gKCrCUMHLmGws/DU/l8LhaxrFD53A4ofwtthdCqOZWGIdk1+eMphiVumXR5a3lC64XVvmXQ2k28i7F/zw==", "dev": true, "requires": { "@electron/get": "^1.0.1", @@ -5376,9 +5673,9 @@ } }, "electron-to-chromium": { - "version": "1.3.376", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.376.tgz", - "integrity": "sha512-cv/PYVz5szeMz192ngilmezyPNFkUjuynuL2vNdiqIrio440nfTDdc0JJU0TS2KHLSVCs9gBbt4CFqM+HcBnjw==", + "version": "1.3.386", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.386.tgz", + "integrity": "sha512-M7JHfp32Bq6Am59AWgglh2d3nqe6y8Y94Vcb/AXUsO3DGvKUHYI5ML9+U5oNShfdOEfurrrjKSoSgFt2mz7mpw==", "dev": true }, "electron-updater": { @@ -5434,6 +5731,7 @@ "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", "dev": true, + "optional": true, "requires": { "iconv-lite": "~0.4.13" } @@ -6035,15 +6333,15 @@ } }, "extract-zip": { - "version": "1.6.7", - "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.6.7.tgz", - "integrity": "sha1-qEC0uK9kAyZMjbV/Txp0Mz74H+k=", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz", + "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==", "dev": true, "requires": { - "concat-stream": "1.6.2", - "debug": "2.6.9", - "mkdirp": "0.5.1", - "yauzl": "2.4.1" + "concat-stream": "^1.6.2", + "debug": "^2.6.9", + "mkdirp": "^0.5.4", + "yauzl": "^2.10.0" }, "dependencies": { "debug": { @@ -6055,6 +6353,21 @@ "ms": "2.0.0" } }, + "minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", + "dev": true + }, + "mkdirp": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.4.tgz", + "integrity": "sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==", + "dev": true, + "requires": { + "minimist": "^1.2.5" + } + }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", @@ -6094,18 +6407,18 @@ } }, "fd-slicer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz", - "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", "dev": true, "requires": { "pend": "~1.2.0" } }, "figgy-pudding": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.1.tgz", - "integrity": "sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", + "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", "dev": true }, "figures": { @@ -6497,12 +6810,6 @@ "wide-align": "^1.1.0" } }, - "genfun": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/genfun/-/genfun-5.0.0.tgz", - "integrity": "sha512-KGDOARWVga7+rnB3z9Sd2Letx515owfk0hSxHGuqjANb1M+x2bGZGqHLiozPsYMdM2OubeMni/Hpwmjq6qIUhA==", - "dev": true - }, "get-caller-file": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", @@ -6706,9 +7013,9 @@ "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==" }, "handle-thing": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.0.tgz", - "integrity": "sha512-d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", "dev": true }, "har-schema": { @@ -6964,9 +7271,9 @@ "dev": true }, "http-cache-semantics": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", - "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", "dev": true }, "http-deceiver": { @@ -7014,29 +7321,33 @@ } }, "http-proxy-agent": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", - "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", "dev": true, "requires": { - "agent-base": "4", - "debug": "3.1.0" + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" }, "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "agent-base": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.0.tgz", + "integrity": "sha512-j1Q7cSCqN+AwrmDd+pzgqc0/NpC655x2bUf5ZjRIO77DcNBFmh+OgRNzF6OKdCC9RSCb19fGd99+bhXFdkRNqw==", "dev": true, "requires": { - "ms": "2.0.0" + "debug": "4" } }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } } } }, @@ -7099,8 +7410,7 @@ "ieee754": { "version": "1.1.13", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", - "dev": true + "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==" }, "iferr": { "version": "0.1.5", @@ -7231,23 +7541,23 @@ "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" }, "inquirer": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.0.0.tgz", - "integrity": "sha512-rSdC7zelHdRQFkWnhsMu2+2SO41mpv2oF2zy4tMhmiLWkcKbOAs87fWAJhVXttKVwhdZvymvnuM95EyEXg2/tQ==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.1.0.tgz", + "integrity": "sha512-5fJMWEmikSYu0nv/flMc475MhGbB7TSPd/2IpFV4I4rMklboCH2rQjYY5kKiYGHqUF9gvaambupcJFFG9dvReg==", "dev": true, "requires": { "ansi-escapes": "^4.2.1", - "chalk": "^2.4.2", + "chalk": "^3.0.0", "cli-cursor": "^3.1.0", "cli-width": "^2.0.0", "external-editor": "^3.0.3", "figures": "^3.0.0", "lodash": "^4.17.15", "mute-stream": "0.0.8", - "run-async": "^2.2.0", - "rxjs": "^6.4.0", + "run-async": "^2.4.0", + "rxjs": "^6.5.3", "string-width": "^4.1.0", - "strip-ansi": "^5.1.0", + "strip-ansi": "^6.0.0", "through": "^2.3.6" }, "dependencies": { @@ -7257,6 +7567,47 @@ "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", "dev": true }, + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -7272,34 +7623,24 @@ "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", "strip-ansi": "^6.0.0" - }, - "dependencies": { - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - } } }, "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { - "ansi-regex": "^4.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - } + "ansi-regex": "^5.0.0" + } + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" } } } @@ -7492,6 +7833,12 @@ "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", "dev": true }, + "is-docker": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.0.0.tgz", + "integrity": "sha512-pJEdRugimx4fBMra5z2/5iRdZ63OhYV0vr0Dwm5+xtW4D1FvRkB8hamMIhnWfyJeDdyr/aa7BDyNbtG38VxgoQ==", + "dev": true + }, "is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", @@ -7553,6 +7900,12 @@ "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", "dev": true }, + "is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU=", + "dev": true + }, "is-npm": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-3.0.0.tgz", @@ -7985,6 +8338,12 @@ "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", "dev": true }, + "json-parse-even-better-errors": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.2.0.tgz", + "integrity": "sha512-2tLgY7LRNZ9Hd6gmCuBG5/OjRHQpSgJQqJoYyLLOhUgn8LdOYrjaZLcxkWnDads+AD/haWWioPNziXQcgvQJ/g==", + "dev": true + }, "json-schema": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", @@ -8016,9 +8375,9 @@ }, "dependencies": { "minimist": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.4.tgz", - "integrity": "sha512-wTiNDqe4D2rbTJGZk1qcdZgFtY0/r+iuE6GDT7V0/+Gu5MLpIDm4+CssDECR79OJs/OxLPXMzdxy153b5Qy3hg==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true } } @@ -8202,9 +8561,9 @@ } }, "karma-jasmine-html-reporter": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-1.5.2.tgz", - "integrity": "sha512-ILBPsXqQ3eomq+oaQsM311/jxsypw5/d0LnZXj26XkfThwq7jZ55A2CFSKJVA5VekbbOGvMyv7d3juZj0SeTxA==", + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-1.5.3.tgz", + "integrity": "sha512-ci0VrjuCaFj+9d1tYlTE3KIPUCp0rz874zWWU3JgCMqGIyw5ke+BXWFPOAGAqUdCJcrMwneyvp1zFXA74MiPUA==", "dev": true }, "karma-source-map-support": { @@ -8527,47 +8886,97 @@ "dev": true }, "make-fetch-happen": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-5.0.2.tgz", - "integrity": "sha512-07JHC0r1ykIoruKO8ifMXu+xEU8qOXDFETylktdug6vJDACnP+HKevOu3PXyNPzFyTSlz8vrBYlBO1JZRe8Cag==", + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-8.0.4.tgz", + "integrity": "sha512-hIFoqGq1db0QMiy/Atr/pI1Rs4rDV+ZdGSey2SQyF3KK3u1z4aj9mS5UdNnZkdQpA+H3pGn0J3KlEwsi2x4EqA==", "dev": true, "requires": { - "agentkeepalive": "^3.4.1", - "cacache": "^12.0.0", - "http-cache-semantics": "^3.8.1", - "http-proxy-agent": "^2.1.0", - "https-proxy-agent": "^2.2.3", + "agentkeepalive": "^4.1.0", + "cacache": "^15.0.0", + "http-cache-semantics": "^4.0.4", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "node-fetch-npm": "^2.0.2", + "minipass": "^3.0.0", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^1.1.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", "promise-retry": "^1.1.1", - "socks-proxy-agent": "^4.0.0", - "ssri": "^6.0.0" + "socks-proxy-agent": "^5.0.0", + "ssri": "^8.0.0" }, "dependencies": { + "agent-base": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.0.tgz", + "integrity": "sha512-j1Q7cSCqN+AwrmDd+pzgqc0/NpC655x2bUf5ZjRIO77DcNBFmh+OgRNzF6OKdCC9RSCb19fGd99+bhXFdkRNqw==", + "dev": true, + "requires": { + "debug": "4" + } + }, "cacache": { - "version": "12.0.3", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.3.tgz", - "integrity": "sha512-kqdmfXEGFepesTuROHMs3MpFLWrPkSSpRqOw80RCflZXy/khxaArvFrQ7uJxSUduzAufc6G0g1VUCOZXxWavPw==", + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.0.0.tgz", + "integrity": "sha512-L0JpXHhplbJSiDGzyJJnJCTL7er7NzbBgxzVqLswEb4bO91Zbv17OUMuUeu/q0ZwKn3V+1HM4wb9tO4eVE/K8g==", "dev": true, "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", + "chownr": "^1.1.2", + "fs-minipass": "^2.0.0", "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", + "infer-owner": "^1.0.4", "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", + "minipass": "^3.1.1", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^1.0.3", "move-concurrently": "^1.0.1", + "p-map": "^3.0.0", "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" + "rimraf": "^2.7.1", + "ssri": "^8.0.0", + "tar": "^6.0.1", + "unique-filename": "^1.1.1" + } + }, + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "https-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", + "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", + "dev": true, + "requires": { + "agent-base": "6", + "debug": "4" + } + }, + "minizlib": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.0.tgz", + "integrity": "sha512-EzTZN/fjSvifSX0SlqUERCN39o6T40AMarPbv0MrarSFtIITCBh7bi+dU8nxGFHuqs9jdIAeoYoKuQAAASsPPA==", + "dev": true, + "requires": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" } }, + "mkdirp": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.3.tgz", + "integrity": "sha512-6uCP4Qc0sWsgMLy1EOqqS/3rjDHOEnsStVr/4vtAIK2Y5i2kA7lFFejYrpIyiN9w0pYf4ckeCYT9f1r1P9KX5g==", + "dev": true + }, "rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -8578,12 +8987,26 @@ } }, "ssri": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.0.tgz", + "integrity": "sha512-aq/pz989nxVYwn16Tsbj1TqFpD5LLrQxHf5zaHuieFV+R0Bbr4y8qUsOA45hXT/N4/9UNXTarBjnjVmjSOVaAA==", + "dev": true, + "requires": { + "minipass": "^3.1.1" + } + }, + "tar": { "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", - "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.0.1.tgz", + "integrity": "sha512-bKhKrrz2FJJj5s7wynxy/fyxpE0CmCjmOQ1KV4KkgXFWOgoIT/NbTMnB1n+LFNrNk0SSBVGGxcK5AGsyC+pW5Q==", "dev": true, "requires": { - "figgy-pudding": "^3.5.1" + "chownr": "^1.1.3", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.0", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" } } } @@ -9003,6 +9426,31 @@ "minipass": "^3.0.0" } }, + "minipass-fetch": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.2.1.tgz", + "integrity": "sha512-ssHt0dkljEDaKmTgQ04DQgx2ag6G2gMPxA5hpcsoeTbfDgRf2fC2gNSRc6kISjD7ckCpHwwQvXxuTBK8402fXg==", + "dev": true, + "requires": { + "encoding": "^0.1.12", + "minipass": "^3.1.0", + "minipass-pipeline": "^1.2.2", + "minipass-sized": "^1.0.3", + "minizlib": "^2.0.0" + }, + "dependencies": { + "minizlib": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.0.tgz", + "integrity": "sha512-EzTZN/fjSvifSX0SlqUERCN39o6T40AMarPbv0MrarSFtIITCBh7bi+dU8nxGFHuqs9jdIAeoYoKuQAAASsPPA==", + "dev": true, + "requires": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + } + } + } + }, "minipass-flush": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", @@ -9012,6 +9460,16 @@ "minipass": "^3.0.0" } }, + "minipass-json-stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz", + "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==", + "dev": true, + "requires": { + "jsonparse": "^1.3.1", + "minipass": "^3.0.0" + } + }, "minipass-pipeline": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.2.tgz", @@ -9021,6 +9479,15 @@ "minipass": "^3.0.0" } }, + "minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, "minizlib": { "version": "1.3.3", "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.3.3.tgz", @@ -9156,6 +9623,11 @@ "minimist": "0.0.8" } }, + "mkdirp-classic": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.2.tgz", + "integrity": "sha512-ejdnDQcR75gwknmMw/tx02AuRs8jCtqFoFqDZMjiNxsu85sRIJVXDKHuLYvUUPRBUtV2FpSZa9bL1BUa3BdR2g==" + }, "moment": { "version": "2.24.0", "resolved": "https://registry.npmjs.org/moment/-/moment-2.24.0.tgz", @@ -9275,17 +9747,6 @@ } } }, - "node-fetch-npm": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/node-fetch-npm/-/node-fetch-npm-2.0.3.tgz", - "integrity": "sha512-DgwoKEsqLnFZtk3ap7GWBHcHwnUhsNmQqEDcdjfQ8GofLEFJ081NAd4Uin3R7RFZBWVJCwHISw1oaEqPgSLloA==", - "dev": true, - "requires": { - "encoding": "^0.1.11", - "json-parse-better-errors": "^1.0.0", - "safe-buffer": "^5.1.1" - } - }, "node-forge": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.9.0.tgz", @@ -9420,9 +9881,9 @@ } }, "node-releases": { - "version": "1.1.51", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.51.tgz", - "integrity": "sha512-1eQEs6HFYY1kMXQPOLzCf7HdjReErmvn85tZESMczdCNVWP3Y7URYLBAyYynuI7yef1zj4HN5q+oB2x67QU0lw==", + "version": "1.1.52", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.52.tgz", + "integrity": "sha512-snSiT1UypkgGt2wxPqS6ImEUICbNCMb31yaxWrOLXjhlt2z2/IBpaOxzONExqSm4y5oLnAqjjRWu+wsDzK5yNQ==", "dev": true, "requires": { "semver": "^6.3.0" @@ -9532,6 +9993,15 @@ } } }, + "npm-install-checks": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-4.0.0.tgz", + "integrity": "sha512-09OmyDkNLYwqKPOnbI8exiOZU2GVVmQp7tgez2BPi5OZC8M82elDAps7sxC4l//uSUtotWqoEIDwjRvWH4qz8w==", + "dev": true, + "requires": { + "semver": "^7.1.1" + } + }, "npm-normalize-package-bin": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", @@ -9539,68 +10009,92 @@ "dev": true }, "npm-package-arg": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-6.1.1.tgz", - "integrity": "sha512-qBpssaL3IOZWi5vEKUKW0cO7kzLeT+EQO9W8RsLOZf76KF9E/K9+wH0C7t06HXPpaH8WH5xF1MExLuCwbTqRUg==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-8.0.1.tgz", + "integrity": "sha512-/h5Fm6a/exByzFSTm7jAyHbgOqErl9qSNJDQF32Si/ZzgwT2TERVxRxn3Jurw1wflgyVVAxnFR4fRHPM7y1ClQ==", "dev": true, "requires": { - "hosted-git-info": "^2.7.1", - "osenv": "^0.1.5", - "semver": "^5.6.0", + "hosted-git-info": "^3.0.2", + "semver": "^7.0.0", "validate-npm-package-name": "^3.0.0" }, "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true + "hosted-git-info": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.4.tgz", + "integrity": "sha512-4oT62d2jwSDBbLLFLZE+1vPuQ1h8p9wjrJ8Mqx5TjsyWmBMV5B13eJqn8pvluqubLf3cJPTfiYCIwNwDNmzScQ==", + "dev": true, + "requires": { + "lru-cache": "^5.1.1" + } } } }, "npm-packlist": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.8.tgz", - "integrity": "sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-2.1.1.tgz", + "integrity": "sha512-95TSDvGwujIhqfSpIiRRLodEF+y6mJMopuZdahoGzqtRDFZXGav46S0p6ngeWaiAkb5R72w6eVARhzej0HvZeQ==", "dev": true, "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1", + "glob": "^7.1.6", + "ignore-walk": "^3.0.3", + "npm-bundled": "^1.1.1", "npm-normalize-package-bin": "^1.0.1" + }, + "dependencies": { + "glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + } } }, "npm-pick-manifest": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-3.0.2.tgz", - "integrity": "sha512-wNprTNg+X5nf+tDi+hbjdHhM4bX+mKqv6XmPh7B5eG+QY9VARfQPfCEH013H5GqfNj6ee8Ij2fg8yk0mzps1Vw==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-6.0.0.tgz", + "integrity": "sha512-PdJpXMvjqt4nftNEDpCgjBUF8yI3Q3MyuAmVB9nemnnCg32F4BPL/JFBfdj8DubgHCYUFQhtLWmBPvdsFtjWMg==", "dev": true, "requires": { - "figgy-pudding": "^3.5.1", - "npm-package-arg": "^6.0.0", - "semver": "^5.4.1" - }, - "dependencies": { - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } + "npm-install-checks": "^4.0.0", + "npm-package-arg": "^8.0.0", + "semver": "^7.0.0" } }, "npm-registry-fetch": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-4.0.3.tgz", - "integrity": "sha512-WGvUx0lkKFhu9MbiGFuT9nG2NpfQ+4dCJwRwwtK2HK5izJEvwDxMeUyqbuMS7N/OkpVCqDorV6rO5E4V9F8lJw==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-8.0.0.tgz", + "integrity": "sha512-975WwLvZjX97y9UWWQ8nAyr7bw02s9xKPHqvEm5T900LQsB1HXb8Gb9ebYtCBLSX+K8gSOrO5KS/9yV/naLZmQ==", "dev": true, "requires": { - "JSONStream": "^1.3.4", - "bluebird": "^3.5.1", - "figgy-pudding": "^3.4.1", + "@npmcli/ci-detect": "^1.0.0", "lru-cache": "^5.1.1", - "make-fetch-happen": "^5.0.0", - "npm-package-arg": "^6.1.0", - "safe-buffer": "^5.2.0" + "make-fetch-happen": "^8.0.2", + "minipass": "^3.0.0", + "minipass-fetch": "^1.1.2", + "minipass-json-stream": "^1.0.1", + "minizlib": "^2.0.0", + "npm-package-arg": "^8.0.0" + }, + "dependencies": { + "minizlib": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.0.tgz", + "integrity": "sha512-EzTZN/fjSvifSX0SlqUERCN39o6T40AMarPbv0MrarSFtIITCBh7bi+dU8nxGFHuqs9jdIAeoYoKuQAAASsPPA==", + "dev": true, + "requires": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + } + } } }, "npm-run-all": { @@ -9949,33 +10443,84 @@ } }, "ora": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/ora/-/ora-4.0.2.tgz", - "integrity": "sha512-YUOZbamht5mfLxPmk4M35CD/5DuOkAacxlEUbStVXpBAt4fyhBf+vZHI/HRkI++QUp3sNoeA2Gw4C+hi4eGSig==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/ora/-/ora-4.0.3.tgz", + "integrity": "sha512-fnDebVFyz309A73cqCipVL1fBZewq4vwgSHfxh43vVy31mbyoQ8sCH3Oeaog/owYOs/lLlGVPCISQonTneg6Pg==", "dev": true, "requires": { - "chalk": "^2.4.2", + "chalk": "^3.0.0", "cli-cursor": "^3.1.0", "cli-spinners": "^2.2.0", "is-interactive": "^1.0.0", "log-symbols": "^3.0.0", - "strip-ansi": "^5.2.0", + "mute-stream": "0.0.8", + "strip-ansi": "^6.0.0", "wcwidth": "^1.0.1" }, "dependencies": { "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "dev": true + }, + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "dev": true, + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, "requires": { - "ansi-regex": "^4.1.0" + "ansi-regex": "^5.0.0" + } + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" } } } @@ -10112,75 +10657,77 @@ } }, "pacote": { - "version": "9.5.8", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-9.5.8.tgz", - "integrity": "sha512-0Tl8Oi/K0Lo4MZmH0/6IsT3gpGf9eEAznLXEQPKgPq7FscnbUOyopnVpwXlnQdIbCUaojWy1Wd7VMyqfVsRrIw==", + "version": "11.1.4", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-11.1.4.tgz", + "integrity": "sha512-eUGJvSSpWFZKn3z8gig/HgnBmUl6gIWByIIaHzSyEr3tOWX0w8tFEADXtpu8HGv5E0ShCeTP6enRq8iHKCHSvw==", "dev": true, "requires": { - "bluebird": "^3.5.3", - "cacache": "^12.0.2", - "chownr": "^1.1.2", - "figgy-pudding": "^3.5.1", - "get-stream": "^4.1.0", - "glob": "^7.1.3", + "@npmcli/git": "^2.0.1", + "@npmcli/installed-package-contents": "^1.0.5", + "@npmcli/promise-spawn": "^1.1.0", + "cacache": "^15.0.0", + "chownr": "^1.1.4", + "fs-minipass": "^2.1.0", "infer-owner": "^1.0.4", "lru-cache": "^5.1.1", - "make-fetch-happen": "^5.0.0", - "minimatch": "^3.0.4", - "minipass": "^2.3.5", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "normalize-package-data": "^2.4.0", - "npm-package-arg": "^6.1.0", - "npm-packlist": "^1.1.12", - "npm-pick-manifest": "^3.0.0", - "npm-registry-fetch": "^4.0.0", - "osenv": "^0.1.5", + "minipass": "^3.0.1", + "minipass-fetch": "^1.2.1", + "mkdirp": "^1.0.3", + "npm-package-arg": "^8.0.1", + "npm-packlist": "^2.1.0", + "npm-pick-manifest": "^6.0.0", + "npm-registry-fetch": "^8.0.0", "promise-inflight": "^1.0.1", "promise-retry": "^1.1.1", - "protoduck": "^5.0.1", - "rimraf": "^2.6.2", - "safe-buffer": "^5.1.2", - "semver": "^5.6.0", - "ssri": "^6.0.1", - "tar": "^4.4.10", - "unique-filename": "^1.1.1", - "which": "^1.3.1" + "read-package-json-fast": "^1.1.3", + "rimraf": "^2.7.1", + "semver": "^7.1.3", + "ssri": "^8.0.0", + "tar": "^6.0.1", + "which": "^2.0.2" }, "dependencies": { "cacache": { - "version": "12.0.3", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.3.tgz", - "integrity": "sha512-kqdmfXEGFepesTuROHMs3MpFLWrPkSSpRqOw80RCflZXy/khxaArvFrQ7uJxSUduzAufc6G0g1VUCOZXxWavPw==", + "version": "15.0.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.0.0.tgz", + "integrity": "sha512-L0JpXHhplbJSiDGzyJJnJCTL7er7NzbBgxzVqLswEb4bO91Zbv17OUMuUeu/q0ZwKn3V+1HM4wb9tO4eVE/K8g==", "dev": true, "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", + "chownr": "^1.1.2", + "fs-minipass": "^2.0.0", "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", + "infer-owner": "^1.0.4", "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", + "minipass": "^3.1.1", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^1.0.3", "move-concurrently": "^1.0.1", + "p-map": "^3.0.0", "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" + "rimraf": "^2.7.1", + "ssri": "^8.0.0", + "tar": "^6.0.1", + "unique-filename": "^1.1.1" } }, - "minipass": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.9.0.tgz", - "integrity": "sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg==", + "minizlib": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.0.tgz", + "integrity": "sha512-EzTZN/fjSvifSX0SlqUERCN39o6T40AMarPbv0MrarSFtIITCBh7bi+dU8nxGFHuqs9jdIAeoYoKuQAAASsPPA==", "dev": true, "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" + "minipass": "^3.0.0", + "yallist": "^4.0.0" } }, + "mkdirp": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.3.tgz", + "integrity": "sha512-6uCP4Qc0sWsgMLy1EOqqS/3rjDHOEnsStVr/4vtAIK2Y5i2kA7lFFejYrpIyiN9w0pYf4ckeCYT9f1r1P9KX5g==", + "dev": true + }, "rimraf": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", @@ -10190,26 +10737,37 @@ "glob": "^7.1.3" } }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, "ssri": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.0.tgz", + "integrity": "sha512-aq/pz989nxVYwn16Tsbj1TqFpD5LLrQxHf5zaHuieFV+R0Bbr4y8qUsOA45hXT/N4/9UNXTarBjnjVmjSOVaAA==", + "dev": true, + "requires": { + "minipass": "^3.1.1" + } + }, + "tar": { "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", - "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.0.1.tgz", + "integrity": "sha512-bKhKrrz2FJJj5s7wynxy/fyxpE0CmCjmOQ1KV4KkgXFWOgoIT/NbTMnB1n+LFNrNk0SSBVGGxcK5AGsyC+pW5Q==", "dev": true, "requires": { - "figgy-pudding": "^3.5.1" + "chownr": "^1.1.3", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.0", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" } }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "requires": { + "isexe": "^2.0.0" + } } } }, @@ -10290,10 +10848,10 @@ } }, "parse5": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz", - "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==", - "optional": true + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", + "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==", + "dev": true }, "parseqs": { "version": "0.0.5", @@ -10457,6 +11015,26 @@ } } }, + "pkg-up": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", + "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + } + } + }, "portfinder": { "version": "1.0.25", "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.25.tgz", @@ -11075,17 +11653,28 @@ }, "dependencies": { "bl": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.0.1.tgz", - "integrity": "sha512-FL/TdvchukRCuWVxT0YMO/7+L5TNeNrVFvRU2IY63aUyv9mpt8splf2NEr6qXtPo5fya5a66YohQKvGNmLrWNA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.0.2.tgz", + "integrity": "sha512-j4OH8f6Qg2bGuWfRiltT2HYGx0e1QcBTrK9KAHNMwMZdQnDZFk0ZSYIpADjYCB3U12nicC5tVJwSIhwOWjb4RQ==", "requires": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", "readable-stream": "^3.4.0" } }, + "buffer": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.5.0.tgz", + "integrity": "sha512-9FTEDjLjwoAkEwyMGDjYJQN2gfRgOKBKRfiglhvibGbpeeU/pQn1bJxQqm32OD/AIeEuHxU9roxXxg34Byp/Ww==", + "requires": { + "base64-js": "^1.0.2", + "ieee754": "^1.1.4" + } + }, "minimist": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.4.tgz", - "integrity": "sha512-wTiNDqe4D2rbTJGZk1qcdZgFtY0/r+iuE6GDT7V0/+Gu5MLpIDm4+CssDECR79OJs/OxLPXMzdxy153b5Qy3hg==" + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" }, "pump": { "version": "3.0.0", @@ -11115,12 +11704,12 @@ } }, "tar-fs": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.0.0.tgz", - "integrity": "sha512-vaY0obB6Om/fso8a8vakQBzwholQ7v5+uy+tF3Ozvxv1KNezmVQAiWtcNmMHFSFPqL3dJA8ha6gdtFbfX9mcxA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.0.1.tgz", + "integrity": "sha512-6tzWDMeroL87uF/+lin46k+Q+46rAJ0SyPGz7OW7wTgblI273hsBqk2C1j0/xNadNLKDTUL9BukSjB7cwgmlPA==", "requires": { "chownr": "^1.1.1", - "mkdirp": "^0.5.1", + "mkdirp-classic": "^0.5.2", "pump": "^3.0.0", "tar-stream": "^2.0.0" } @@ -11227,15 +11816,6 @@ "dev": true, "optional": true }, - "protoduck": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/protoduck/-/protoduck-5.0.1.tgz", - "integrity": "sha512-WxoCeDCoCBY55BMvj4cAEjdVUFGRWed9ZxPlqTKYyw1nDDTQ4pqmnIMAGfJlg7Dx35uB/M+PHJPTmGOvaCaPTg==", - "dev": true, - "requires": { - "genfun": "^5.0.0" - } - }, "protractor": { "version": "5.4.3", "resolved": "https://registry.npmjs.org/protractor/-/protractor-5.4.3.tgz", @@ -11667,6 +12247,16 @@ "npm-normalize-package-bin": "^1.0.0" } }, + "read-package-json-fast": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-1.1.3.tgz", + "integrity": "sha512-MmFqiyfCXV2Dmm4jH24DEGhxdkUDFivJQj4oPZQPOKywxR7HWBE6WnMWDAapfFHi3wm1b+mhR+XHlUH0CL8axg==", + "dev": true, + "requires": { + "json-parse-even-better-errors": "^2.0.1", + "npm-normalize-package-bin": "^1.0.1" + } + }, "read-package-tree": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/read-package-tree/-/read-package-tree-5.3.1.tgz", @@ -11766,9 +12356,9 @@ "dev": true }, "regenerator-transform": { - "version": "0.14.2", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.2.tgz", - "integrity": "sha512-V4+lGplCM/ikqi5/mkkpJ06e9Bujq1NFmNLvsCs56zg3ZbzrnUzAtizZ24TXxtRX/W2jcdScwQCnbL0CICTFkQ==", + "version": "0.14.4", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.4.tgz", + "integrity": "sha512-EaJaKPBI9GvKpvUz2mz4fhx7WPgvwRLY9v3hlNHWmAuJHI13T4nwKnNvm5RWJzEdnI5g5UwtOww+S8IdoUC2bw==", "dev": true, "requires": { "@babel/runtime": "^7.8.4", @@ -12888,22 +13478,32 @@ } }, "socks-proxy-agent": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz", - "integrity": "sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-5.0.0.tgz", + "integrity": "sha512-lEpa1zsWCChxiynk+lCycKuC502RxDWLKJZoIhnxrWNjLSDGYRFflHA1/228VkRcnv9TIb8w98derGbpKxJRgA==", "dev": true, "requires": { - "agent-base": "~4.2.1", - "socks": "~2.3.2" + "agent-base": "6", + "debug": "4", + "socks": "^2.3.3" }, "dependencies": { "agent-base": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", - "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.0.tgz", + "integrity": "sha512-j1Q7cSCqN+AwrmDd+pzgqc0/NpC655x2bUf5ZjRIO77DcNBFmh+OgRNzF6OKdCC9RSCb19fGd99+bhXFdkRNqw==", "dev": true, "requires": { - "es6-promisify": "^5.0.0" + "debug": "4" + } + }, + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" } } } @@ -13804,9 +14404,9 @@ "dev": true }, "jest-worker": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.1.0.tgz", - "integrity": "sha512-ZHhHtlxOWSxCoNOKHGbiLzXnl42ga9CxDr27H36Qn+15pQZd3R/F24jrmjDelw9j/iHUIWMWs08/u2QN50HHOg==", + "version": "25.2.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.2.1.tgz", + "integrity": "sha512-IHnpekk8H/hCUbBlfeaPZzU6v75bqwJp3n4dUrQuQOAgOneI4tx3jV2o8pvlXnDfcRsfkFIUD//HWXpCmR+evQ==", "dev": true, "requires": { "merge-stream": "^2.0.0", @@ -14044,9 +14644,9 @@ } }, "ts-node": { - "version": "8.6.2", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-8.6.2.tgz", - "integrity": "sha512-4mZEbofxGqLL2RImpe3zMJukvEvcO1XP8bj8ozBPySdCUXEcU5cIRwR0aM3R+VoZq7iXc8N86NC0FspGRqP4gg==", + "version": "8.8.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-8.8.1.tgz", + "integrity": "sha512-10DE9ONho06QORKAaCBpPiFCdW+tZJuY/84tyypGtl6r+/C7Asq0dhqbRZURuUlLQtZxxDvT8eoj8cGW0ha6Bg==", "dev": true, "requires": { "arg": "^4.1.0", @@ -14313,9 +14913,9 @@ } }, "untildify": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", - "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==" + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/untildify/-/untildify-3.0.3.tgz", + "integrity": "sha512-iSk/J8efr8uPT/Z4eSUywnqyrQU7DSdMfdqK4iWEaUVVmcP5JcnpRqmVMwcwcnmI1ATFNgC5V90u09tBynNFKA==" }, "upath": { "version": "1.2.0", @@ -14668,9 +15268,9 @@ } }, "fsevents": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.11.tgz", - "integrity": "sha512-+ux3lx6peh0BpvY0JebGyZoiR4D+oYzdPZMKJwkZ+sFkNJzpL7tXc/wehS49gUAxg3tmMHPHZkA8JU2rhhgDHw==", + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.12.tgz", + "integrity": "sha512-Ggd/Ktt7E7I8pxZRbGIs7vwqAPscSESMrCSkx2FtWeqmheJgCo2R74fTsZFCifr0VTPwqRpPv17+6b8Zp7th0Q==", "dev": true, "optional": true, "requires": { @@ -14724,7 +15324,7 @@ } }, "chownr": { - "version": "1.1.3", + "version": "1.1.4", "bundled": true, "dev": true, "optional": true @@ -14896,7 +15496,7 @@ } }, "minimist": { - "version": "0.0.8", + "version": "1.2.5", "bundled": true, "dev": true, "optional": true @@ -14921,12 +15521,12 @@ } }, "mkdirp": { - "version": "0.5.1", + "version": "0.5.3", "bundled": true, "dev": true, "optional": true, "requires": { - "minimist": "0.0.8" + "minimist": "^1.2.5" } }, "ms": { @@ -14936,7 +15536,7 @@ "optional": true }, "needle": { - "version": "2.4.0", + "version": "2.3.3", "bundled": true, "dev": true, "optional": true, @@ -14965,7 +15565,7 @@ } }, "nopt": { - "version": "4.0.1", + "version": "4.0.3", "bundled": true, "dev": true, "optional": true, @@ -14990,13 +15590,14 @@ "optional": true }, "npm-packlist": { - "version": "1.4.7", + "version": "1.4.8", "bundled": true, "dev": true, "optional": true, "requires": { "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" + "npm-bundled": "^1.0.1", + "npm-normalize-package-bin": "^1.0.1" } }, "npmlog": { @@ -15076,18 +15677,10 @@ "ini": "~1.3.0", "minimist": "^1.2.0", "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } } }, "readable-stream": { - "version": "2.3.6", + "version": "2.3.7", "bundled": true, "dev": true, "optional": true, @@ -15377,9 +15970,9 @@ "dev": true }, "cacache": { - "version": "12.0.3", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.3.tgz", - "integrity": "sha512-kqdmfXEGFepesTuROHMs3MpFLWrPkSSpRqOw80RCflZXy/khxaArvFrQ7uJxSUduzAufc6G0g1VUCOZXxWavPw==", + "version": "12.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", + "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", "dev": true, "requires": { "bluebird": "^3.5.5", @@ -15709,9 +16302,9 @@ } }, "fsevents": { - "version": "1.2.11", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.11.tgz", - "integrity": "sha512-+ux3lx6peh0BpvY0JebGyZoiR4D+oYzdPZMKJwkZ+sFkNJzpL7tXc/wehS49gUAxg3tmMHPHZkA8JU2rhhgDHw==", + "version": "1.2.12", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.12.tgz", + "integrity": "sha512-Ggd/Ktt7E7I8pxZRbGIs7vwqAPscSESMrCSkx2FtWeqmheJgCo2R74fTsZFCifr0VTPwqRpPv17+6b8Zp7th0Q==", "dev": true, "optional": true, "requires": { @@ -15765,7 +16358,7 @@ } }, "chownr": { - "version": "1.1.3", + "version": "1.1.4", "bundled": true, "dev": true, "optional": true @@ -15937,7 +16530,7 @@ } }, "minimist": { - "version": "0.0.8", + "version": "1.2.5", "bundled": true, "dev": true, "optional": true @@ -15962,12 +16555,12 @@ } }, "mkdirp": { - "version": "0.5.1", + "version": "0.5.3", "bundled": true, "dev": true, "optional": true, "requires": { - "minimist": "0.0.8" + "minimist": "^1.2.5" } }, "ms": { @@ -15977,7 +16570,7 @@ "optional": true }, "needle": { - "version": "2.4.0", + "version": "2.3.3", "bundled": true, "dev": true, "optional": true, @@ -16006,7 +16599,7 @@ } }, "nopt": { - "version": "4.0.1", + "version": "4.0.3", "bundled": true, "dev": true, "optional": true, @@ -16031,13 +16624,14 @@ "optional": true }, "npm-packlist": { - "version": "1.4.7", + "version": "1.4.8", "bundled": true, "dev": true, "optional": true, "requires": { "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" + "npm-bundled": "^1.0.1", + "npm-normalize-package-bin": "^1.0.1" } }, "npmlog": { @@ -16117,18 +16711,10 @@ "ini": "~1.3.0", "minimist": "^1.2.0", "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } } }, "readable-stream": { - "version": "2.3.6", + "version": "2.3.7", "bundled": true, "dev": true, "optional": true, @@ -16704,12 +17290,13 @@ } }, "yauzl": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.4.1.tgz", - "integrity": "sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU=", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", + "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=", "dev": true, "requires": { - "fd-slicer": "~1.0.1" + "buffer-crc32": "~0.2.3", + "fd-slicer": "~1.1.0" } }, "yeast": { @@ -16725,9 +17312,9 @@ "dev": true }, "zone.js": { - "version": "0.10.2", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.10.2.tgz", - "integrity": "sha512-UAYfiuvxLN4oyuqhJwd21Uxb4CNawrq6fPS/05Su5L4G+1TN+HVDJMUHNMobVQDFJRir2cLAODXwluaOKB7HFg==" + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.10.3.tgz", + "integrity": "sha512-LXVLVEq0NNOqK/fLJo3d0kfzd4sxwn2/h67/02pjCjfKDxgx1i9QqpvtHD8CrBnSSwMw5+dy11O7FRX5mkO7Cg==" } } } diff --git a/package.json b/package.json index 09b827e2..b5de4b69 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "electron:version": "electron -v && electron -a", "electron:deps": "electron-builder install-app-deps", "electron:deploy": "npm run build:prod && electron-builder build --win --publish always", - "electron:rebuild": "npm rebuild --runtime=electron --target=8.1.1 --disturl=https://atom.io/download/atom-shell --abi=76" + "electron:rebuild": "npm rebuild --runtime=electron --target=8.2.0 --disturl=https://atom.io/download/atom-shell --abi=76" }, "repository": { "type": "git", @@ -38,15 +38,15 @@ }, "homepage": "https://github.com/Kyusung4698/PoE-Overlay", "devDependencies": { - "@angular-devkit/build-angular": "^0.900.6", - "@angular/cli": "^9.0.6", - "@angular/compiler-cli": "^9.0.6", - "@angular/language-service": "^9.0.6", - "@types/jasmine": "^3.5.9", + "@angular-devkit/build-angular": "^0.900.7", + "@angular/cli": "^9.1.0", + "@angular/compiler-cli": "^9.1.0", + "@angular/language-service": "^9.1.0", + "@types/jasmine": "^3.5.10", "@types/jasminewd2": "~2.0.3", - "@types/node": "^12.12.29", - "codelyzer": "^5.1.2", - "electron": "^8.1.1", + "@types/node": "^12.12.31", + "codelyzer": "^5.2.2", + "electron": "^8.2.0", "electron-builder": "^21.2.0", "electron-reload": "^1.5.0", "jasmine-core": "~3.5.0", @@ -55,25 +55,25 @@ "karma-chrome-launcher": "~3.1.0", "karma-coverage-istanbul-reporter": "~2.1.1", "karma-jasmine": "^3.1.1", - "karma-jasmine-html-reporter": "^1.5.2", + "karma-jasmine-html-reporter": "^1.5.3", "npm-run-all": "^4.1.5", "protractor": "^5.4.3", - "ts-node": "^8.6.2", + "ts-node": "^8.8.1", "tslint": "~6.0.0", "typescript": "~3.7.5", "wait-on": "^4.0.1" }, "dependencies": { - "@angular/animations": "^9.0.6", - "@angular/cdk": "^9.1.2", - "@angular/common": "^9.0.6", - "@angular/compiler": "^9.0.6", - "@angular/core": "^9.0.6", - "@angular/forms": "^9.0.6", - "@angular/material": "^9.1.2", - "@angular/platform-browser": "^9.0.6", - "@angular/platform-browser-dynamic": "^9.0.6", - "@angular/router": "^9.0.6", + "@angular/animations": "^9.1.0", + "@angular/cdk": "^9.2.0", + "@angular/common": "^9.1.0", + "@angular/compiler": "^9.1.0", + "@angular/core": "^9.1.0", + "@angular/forms": "^9.1.0", + "@angular/material": "^9.2.0", + "@angular/platform-browser": "^9.1.0", + "@angular/platform-browser-dynamic": "^9.1.0", + "@angular/router": "^9.1.0", "@ngx-translate/core": "^12.1.2", "@swimlane/ngx-charts": "^13.0.2", "auto-launch": "^5.0.5", @@ -86,7 +86,7 @@ "robotjs": "git+https://github.com/Kyusung4698/robotjs.git#a219829c83ff7f3a802c98a9c52a672ca798d80e", "rxjs": "~6.5.4", "tslib": "^1.11.1", - "zone.js": "~0.10.2" + "zone.js": "^0.10.3" }, "resolutions": { "fsevents": "1.2.9", diff --git a/src/app/core/service/index.ts b/src/app/core/service/index.ts index f69f8d97..b7f07967 100644 --- a/src/app/core/service/index.ts +++ b/src/app/core/service/index.ts @@ -2,6 +2,7 @@ export * from './app-translate.service'; export * from './app.service'; export * from './browser.service'; export * from './game.service'; +export * from './logger.service'; export * from './renderer.service'; export * from './storage.service'; export * from './window.service'; diff --git a/src/app/core/service/logger.service.ts b/src/app/core/service/logger.service.ts new file mode 100644 index 00000000..7036ac95 --- /dev/null +++ b/src/app/core/service/logger.service.ts @@ -0,0 +1,27 @@ +import { Injectable } from '@angular/core'; +import { ElectronProvider } from '@app/provider/electron.provider'; +import { IpcRenderer } from 'electron'; + +@Injectable({ + providedIn: 'root' +}) +export class LoggerService { + private readonly ipcRenderer: IpcRenderer; + + constructor( + electronProvider: ElectronProvider) { + this.ipcRenderer = electronProvider.provideIpcRenderer(); + } + + public info(message: string, ...args: any[]): void { + this.ipcRenderer.sendSync('log', 'info', message, ...args); + } + + public warn(message: string, ...args: any[]): void { + this.ipcRenderer.sendSync('log', 'warn', message, ...args); + } + + public error(message: string, ...args: any[]): void { + this.ipcRenderer.sendSync('log', 'error', message, ...args); + } +} \ No newline at end of file diff --git a/src/app/modules/evaluate/component/evaluate-exchange-rate/evaluate-exchange-rate.component.ts b/src/app/modules/evaluate/component/evaluate-exchange-rate/evaluate-exchange-rate.component.ts index 73958d07..9d4517d8 100644 --- a/src/app/modules/evaluate/component/evaluate-exchange-rate/evaluate-exchange-rate.component.ts +++ b/src/app/modules/evaluate/component/evaluate-exchange-rate/evaluate-exchange-rate.component.ts @@ -1,5 +1,5 @@ import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnInit, Output } from '@angular/core'; -import { BrowserService } from '@app/service'; +import { BrowserService, LoggerService } from '@app/service'; import { EvaluateResult } from '@modules/evaluate/type/evaluate.type'; import { SnackBarService } from '@shared/module/material/service'; import { ItemExchangeRateResult, ItemExchangeRateService } from '@shared/module/poe/service'; @@ -49,7 +49,8 @@ export class EvaluateExchangeRateComponent implements OnInit { constructor( private readonly exchangeRateService: ItemExchangeRateService, private readonly browser: BrowserService, - private readonly snackbar: SnackBarService) { } + private readonly snackbar: SnackBarService, + private readonly logger: LoggerService) { } public ngOnInit(): void { this.optionsChange.subscribe(() => this.evaluate(this.item)); @@ -96,12 +97,13 @@ export class EvaluateExchangeRateComponent implements OnInit { } this.result$.next({ rate: result }); }, - error => this.handleEvaluateError(error) + error => this.handleError(error) ); } - private handleEvaluateError(error: any): void { + private handleError(error: any): void { this.result$.next({ error: true }); + this.logger.warn(error); this.snackbar.error(`${typeof error === 'string' ? `${error}` : 'evaluate.error'}`); } } diff --git a/src/app/modules/evaluate/component/evaluate-search/evaluate-search.component.ts b/src/app/modules/evaluate/component/evaluate-search/evaluate-search.component.ts index 659696d5..8eb5f8cc 100644 --- a/src/app/modules/evaluate/component/evaluate-search/evaluate-search.component.ts +++ b/src/app/modules/evaluate/component/evaluate-search/evaluate-search.component.ts @@ -1,5 +1,5 @@ import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnInit, Output } from '@angular/core'; -import { BrowserService } from '@app/service'; +import { BrowserService, LoggerService } from '@app/service'; import { EvaluateResult } from '@modules/evaluate/type/evaluate.type'; import { SnackBarService } from '@shared/module/material/service'; import { ItemSearchAnalyzeResult, ItemSearchAnalyzeService, ItemSearchListing, ItemSearchResult, ItemSearchService } from '@shared/module/poe/service'; @@ -50,7 +50,8 @@ export class EvaluateSearchComponent implements OnInit { private readonly itemSearchService: ItemSearchService, private readonly itemSearchAnalyzeService: ItemSearchAnalyzeService, private readonly browser: BrowserService, - private readonly snackbar: SnackBarService) { } + private readonly snackbar: SnackBarService, + private readonly logger: LoggerService) { } public ngOnInit() { this.graph = this.settings.evaluateResultView === EvaluateResultView.Graph; @@ -172,6 +173,7 @@ export class EvaluateSearchComponent implements OnInit { private handleError(error: any): void { this.clear(); this.error$.next(true); + this.logger.warn(error); this.snackbar.error(`${typeof error === 'string' ? `${error}` : 'evaluate.error'}`); } } diff --git a/src/app/shared/module/poe/service/item/item-search.service.ts b/src/app/shared/module/poe/service/item/item-search.service.ts index 2b38e4a9..7ba7e369 100644 --- a/src/app/shared/module/poe/service/item/item-search.service.ts +++ b/src/app/shared/module/poe/service/item/item-search.service.ts @@ -1,4 +1,5 @@ import { Injectable } from '@angular/core'; +import { LoggerService } from '@app/service'; import { TradeFetchResult, TradeHttpService, TradeSearchRequest } from '@data/poe'; import { Currency, Item, Language } from '@shared/module/poe/type'; import moment from 'moment'; @@ -36,7 +37,8 @@ export class ItemSearchService { private readonly context: ContextService, private readonly currencyService: CurrencyService, private readonly requestService: ItemSearchQueryService, - private readonly tradeService: TradeHttpService) { } + private readonly tradeService: TradeHttpService, + private readonly logger: LoggerService) { } public search(requestedItem: Item, options?: ItemSearchOptions): Observable { options = options || {}; @@ -117,28 +119,28 @@ export class ItemSearchService { private mapResult(result: TradeFetchResult): Observable { if (!result || !result.listing || !result.listing.price || !result.listing.account || !result.listing.indexed) { - console.warn(`Result was invalid.`, result); + this.logger.warn(`Result was invalid.`, result); return of(undefined); } const { listing } = result; - const { price } = listing; - - const { amount } = price; - if (amount <= 0) { - console.warn(`Amount was less or equal zero.`); - return of(undefined); - } const indexed = moment(listing.indexed); if (!indexed.isValid()) { - console.warn(`Indexed value: '${listing.indexed}' was not a valid date.`); + this.logger.warn(`Indexed value: '${listing.indexed}' was not a valid date.`); return of(undefined); } const seller = listing.account.name || ''; if (seller.length <= 0) { - console.warn(`Seller: '${seller}' was empty or undefined.`); + this.logger.warn(`Seller: '${seller}' was empty or undefined.`); + return of(undefined); + } + + const { price } = listing; + const { amount } = price; + if (amount <= 0) { + this.logger.warn(`Amount was less or equal zero. Seller: ${seller}`); return of(undefined); } @@ -146,7 +148,7 @@ export class ItemSearchService { return this.currencyService.searchById(currencyId).pipe( map(currency => { if (!currency) { - console.warn(`Could not parse '${currencyId}' as currency.`); + this.logger.warn(`Could not parse '${currencyId}' as currency.`); return undefined; } return { From 4fb744f02234e6386637f4d2aa5cc6c6bb860d05 Mon Sep 17 00:00:00 2001 From: Kyusung4698 Date: Thu, 26 Mar 2020 22:54:20 +0100 Subject: [PATCH 6/7] - update data to 3.10.1 --- CHANGELOG.md | 1 + hook.ts | 28 +- .../evaluate-exchange-rate.component.spec.ts | 2 + .../base-item-types.service.spec.ts | 5 + .../base-item-types.service.ts | 8 +- src/assets/poe/base-item-type-categories.json | 2 + src/assets/poe/base-item-types.json | 38 +- src/assets/poe/stats.json | 570 ++++++++---------- 8 files changed, 306 insertions(+), 348 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8bca4d25..50b8c624 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ - add changelog as tray entry and show after update (#471) - add display trade page error message (#468) - add renderer logging support log to file (#468) +- update data to 3.10.1 - fix auto update by calling quit and install even after normal quit (#474) - fix invisible values at map info (#472) diff --git a/hook.ts b/hook.ts index 73e298a8..947db10e 100644 --- a/hook.ts +++ b/hook.ts @@ -1,4 +1,4 @@ -import { Window, windowManager, addon } from 'node-window-manager'; +import { addon, Window, windowManager } from 'node-window-manager'; import { IRectangle } from 'node-window-manager/dist/interfaces'; import { Subject, Subscription } from 'rxjs'; import { throttleTime } from 'rxjs/operators'; @@ -55,18 +55,20 @@ function checkActive(): void { let orgBounds = bounds; const possibleWindow = windowManager.getActiveWindow(); - if (possibleWindow.path) { - const lowerPath = possibleWindow.path.toLowerCase(); - active = lowerPath.endsWith('pathofexile_x64_kg.exe') || lowerPath.endsWith('pathofexile_kg.exe') - || lowerPath.endsWith('pathofexile_x64steam.exe') || lowerPath.endsWith('pathofexilesteam.exe') - || lowerPath.endsWith('pathofexile_x64.exe') || lowerPath.endsWith('pathofexile.exe'); - - - if (active) { - activeWindow = possibleWindow; - - if (addon) { - bounds = addon.getWindowBounds(activeWindow.id); + if (possibleWindow?.path) { + const title = possibleWindow.getTitle(); + if (title === 'Path of Exile') { + const lowerPath = possibleWindow.path.toLowerCase(); + active = lowerPath.endsWith('pathofexile_x64_kg.exe') || lowerPath.endsWith('pathofexile_kg.exe') + || lowerPath.endsWith('pathofexile_x64steam.exe') || lowerPath.endsWith('pathofexilesteam.exe') + || lowerPath.endsWith('pathofexile_x64.exe') || lowerPath.endsWith('pathofexile.exe'); + + if (active) { + activeWindow = possibleWindow; + + if (addon) { + bounds = addon.getWindowBounds(activeWindow.id); + } } } } diff --git a/src/app/modules/evaluate/component/evaluate-exchange-rate/evaluate-exchange-rate.component.spec.ts b/src/app/modules/evaluate/component/evaluate-exchange-rate/evaluate-exchange-rate.component.spec.ts index cf03c4af..44c40c07 100644 --- a/src/app/modules/evaluate/component/evaluate-exchange-rate/evaluate-exchange-rate.component.spec.ts +++ b/src/app/modules/evaluate/component/evaluate-exchange-rate/evaluate-exchange-rate.component.spec.ts @@ -4,6 +4,7 @@ import { TranslateFakeLoader, TranslateLoader, TranslateModule } from '@ngx-tran import { SharedModule } from '@shared/shared.module'; import { EvaluateExchangeRateChartComponent } from '../evaluate-exchange-rate-chart/evaluate-exchange-rate-chart.component'; import { EvaluateExchangeRateComponent } from './evaluate-exchange-rate.component'; +import { Subject } from 'rxjs'; class ElectronProviderFake { public provideRemote(): Electron.Remote { @@ -41,6 +42,7 @@ describe('EvaluateExchangeRateComponent', () => { beforeEach(() => { fixture = TestBed.createComponent(EvaluateExchangeRateComponent); component = fixture.componentInstance; + component.optionsChange = new Subject(); fixture.detectChanges(); }); diff --git a/src/app/shared/module/poe/service/base-item-types/base-item-types.service.spec.ts b/src/app/shared/module/poe/service/base-item-types/base-item-types.service.spec.ts index cd291d7a..8311af1f 100644 --- a/src/app/shared/module/poe/service/base-item-types/base-item-types.service.spec.ts +++ b/src/app/shared/module/poe/service/base-item-types/base-item-types.service.spec.ts @@ -68,4 +68,9 @@ describe('BaseItemTypeService', () => { const result = sut.search('Silk Gloves', Language.English); expect(result).toBe('GlovesInt3'); }); + + it(`should find 'The Shaper's Amber Amulet of Expulsion`, () => { + const result = sut.search('The Shaper\'s Amber Amulet of Expulsion', Language.English); + expect(result).toBe('Amulet3'); + }) }); diff --git a/src/app/shared/module/poe/service/base-item-types/base-item-types.service.ts b/src/app/shared/module/poe/service/base-item-types/base-item-types.service.ts index b48ef4a3..2817bab5 100644 --- a/src/app/shared/module/poe/service/base-item-types/base-item-types.service.ts +++ b/src/app/shared/module/poe/service/base-item-types/base-item-types.service.ts @@ -62,7 +62,13 @@ export class BaseItemTypesService { const expr = cache[key] || (cache[key] = new RegExp('(?<=[\\s,.:;"\']|^)' + map[key] + '(?=[\\s,.:;"\']|$)')); const match = expr.exec(name); if (match) { - const score = map[key].split(' ').length * 10 - Math.abs(name.length / 2 - match.index); + let score = map[key].split(' ').length * 10; + + const len = map[key].length; + const pos = name.length / 2 - Math.abs(name.length / 2 - match.index); + + score += pos; + score += len; if (score > maxScore) { maxScore = score; maxKey = key; diff --git a/src/assets/poe/base-item-type-categories.json b/src/assets/poe/base-item-type-categories.json index 931a8353..43bda6c4 100644 --- a/src/assets/poe/base-item-type-categories.json +++ b/src/assets/poe/base-item-type-categories.json @@ -5667,6 +5667,8 @@ "AdjudicatorCockerelBoss": "monster.beast", "AdjudicatorCockerelBowBoss": "monster.beast", "OriathCivilianMale1": "monster.beast", + "HeraldOfAgonySpiderPlatedStygian": "monster.beast", + "HeraldOfPurityStygian": "monster.beast", "Hellion2b": "monster.beast", "SeaWitchMerviel": "monster.beast", "SkeletonBowLightning": "monster.beast", diff --git a/src/assets/poe/base-item-types.json b/src/assets/poe/base-item-types.json index a9fdbe16..8017bb2f 100644 --- a/src/assets/poe/base-item-types.json +++ b/src/assets/poe/base-item-types.json @@ -13416,8 +13416,8 @@ "Piège incendiaire vaal": "SkillGemVaalFireTrap", "SkillGemVaalSweep": "Balayage vaal", "Balayage vaal": "SkillGemVaalSweep", - "SkillGemVaalRighteousFire": "Feu purificateur vaal", - "Feu purificateur vaal": "SkillGemVaalRighteousFire", + "SkillGemVaalRighteousFire": "Feu de la vertu vaal", + "Feu de la vertu vaal": "SkillGemVaalRighteousFire", "SkillGemVaalPortal": "Brèche vaal", "Brèche vaal": "SkillGemVaalPortal", "SkillGemComboStrike": "…", @@ -15842,8 +15842,8 @@ "L'Héritage de l'Évêque": "GeofrisCrestFated", "Any": "\\[ANY MONSTER\\]", "\\[ANY MONSTER\\]": "Any", - "BanditBossHeavyStrike_": "Calaf, Enfonceur de crânes", - "Calaf, Enfonceur de crânes": "BanditBossHeavyStrike_", + "BanditBossHeavyStrike_": "Calaf, l'Enfonceur de crânes", + "Calaf, l'Enfonceur de crânes": "BanditBossHeavyStrike_", "BanditBossBow": "Tueur impitoyable", "Tueur impitoyable": "BanditBossBow", "BanditBow": "Archer novice", @@ -17948,14 +17948,14 @@ "Zélote de Lunaris": "CannibalLunaris", "CannibalLunaris2": "Zélote frôlelune", "Zélote frôlelune": "CannibalLunaris2", - "CannibalHarbingerCold": "Précurseur fanatique", - "Précurseur fanatique": "CannibalHarbingerCold", - "CannibalHarbingerCold2": "Précurseur croyant", - "Précurseur croyant": "CannibalHarbingerCold2", + "CannibalHarbingerCold": "Fanatique des Précurseurs", + "Fanatique des Précurseurs": "CannibalHarbingerCold", + "CannibalHarbingerCold2": "Croyant des Précurseurs", + "Croyant des Précurseurs": "CannibalHarbingerCold2", "CannibalLunarisChampion": "Dévôt lunaire", "Dévôt lunaire": "CannibalLunarisChampion", - "CannibalHarbingerChampion": "Précurseur marionnette", - "Précurseur marionnette": "CannibalHarbingerChampion", + "CannibalHarbingerChampion": "Marionnette des Précurseurs", + "Marionnette des Précurseurs": "CannibalHarbingerChampion", "CannibalMaleBossHailrake": "Râclegrêle", "Râclegrêle": "CannibalMaleBossHailrake", "CannibalMaleProphecy": "Sectateur de Bameth", @@ -33261,6 +33261,8 @@ "제국 클로": "Claw21", "Claw22": "공포의 클로", "공포의 클로": "Claw22", + "ClawM3": "쌍생아 클로", + "쌍생아 클로": "ClawM3", "OneHandAxe1": "녹슨 손도끼", "녹슨 손도끼": "OneHandAxe1", "OneHandAxe2": "비취 손도끼", @@ -40697,8 +40699,8 @@ "이단심문관 말리가로": "Maligaro", "MaligaroMapBoss": "고통의 영재", "고통의 영재": "MaligaroMapBoss", - "MaligaroMapBoss2": "수없이 조각난 그", - "수없이 조각난 그": "MaligaroMapBoss2", + "MaligaroMapBoss2": "수없이 조각난 존재", + "수없이 조각난 존재": "MaligaroMapBoss2", "MaligaroProphecy": "말리가로의 메아리", "말리가로의 메아리": "MaligaroProphecy", "Doedre": "도이드리 다크텅", @@ -54330,7 +54332,11 @@ "AfflictionMinion6_": "Confusão", "Confusão": "AfflictionMinion6_", "TangmazuWild": "Entidade Estranhamente Familiar", - "Entidade Estranhamente Familiar": "TangmazuWild" + "Entidade Estranhamente Familiar": "TangmazuWild", + "HeraldOfAgonySpiderPlatedStygian": "Agony Crawler", + "Agony Crawler": "HeraldOfAgonySpiderPlatedStygian", + "HeraldOfPurityStygian": "Sentinel of Purity", + "Sentinel of Purity": "HeraldOfPurityStygian" }, "Russian": { "CurrencyWeaponQuality": "Точильный камень", @@ -86816,7 +86822,11 @@ "InvisibleFireAfflictionFireTornado": "Fuego acechante", "Fuego acechante": "InvisibleFireAfflictionFireTornado", "TangmazuWild": "Entidad extrañamente familiar", - "Entidad extrañamente familiar": "TangmazuWild" + "Entidad extrañamente familiar": "TangmazuWild", + "HeraldOfAgonySpiderPlatedStygian": "Agony Crawler", + "Agony Crawler": "HeraldOfAgonySpiderPlatedStygian", + "HeraldOfPurityStygian": "Sentinel of Purity", + "Sentinel of Purity": "HeraldOfPurityStygian" }, "Thai": { "CurrencyWeaponQuality": "Blacksmith's Whetstone", diff --git a/src/assets/poe/stats.json b/src/assets/poe/stats.json index 2582c71c..b5fa660a 100644 --- a/src/assets/poe/stats.json +++ b/src/assets/poe/stats.json @@ -7867,7 +7867,6 @@ } } }, - "stat_3051845758": { "id": "unique_fire_damage_resistance_%_when_red_gem_socketed", "negated": false, @@ -15323,32 +15322,16 @@ "negated": false, "text": { "1": { - "1|#": "^(\\S+)% increased Effect of Auras on you$" + "1|#": "^(\\S+)% increased Effect of Aura Buffs on you$" }, - "2": { - "1|#": "^Efeito de Auras em Você aumentado em (\\S+)%$" - }, - "3": { - "1|#": "^(\\S+)% усиление эффекта аур на вас$" - }, - "4": { - "1|#": "^เพิ่มการแสดงผลของออร่าบนตัวคุณขึ้น (\\S+)%$" - }, - "5": { - "1|#": "^(\\S+)% erhöhte Wirkung von Auren auf Euch$" - }, - "6": { - "1|#": "^(\\S+)% d'Augmentation de l'Effet des Auras sur vous$" - }, - "7": { - "1|#": "^Efecto de Auras sobre Ti aumentado un (\\S+)%$" - }, - "8": { - "1|#": "^플레이어가 받는 오라 효과 (\\S+)% 증가$" - }, - "10": { - "1|#": "^增加 (\\S+)% 你身上的光環效果$" - } + "2": {}, + "3": {}, + "4": {}, + "5": {}, + "6": {}, + "7": {}, + "8": {}, + "10": {} } }, "stat_1224319074": { @@ -15356,32 +15339,16 @@ "negated": false, "text": { "1": { - "1|#": "^(\\S+)% increased Effect of Auras on your Minions$" - }, - "2": { - "1|#": "^Efeito de Auras em seus Lacaios aumentado em (\\S+)%$" - }, - "3": { - "1|#": "^(\\S+)% усиление эффекта аур на ваших приспешниках$" - }, - "4": { - "1|#": "^เพิ่มการแสดงผลของออร่าบนมิเนียนขึ้น (\\S+)%$" - }, - "5": { - "1|#": "^(\\S+)% erhöhte Wirkung von Auren auf Eure Kreaturen$" - }, - "6": { - "1|#": "^(\\S+)% d'Augmentation de l'Effet des Auras sur vos Créatures$" - }, - "7": { - "1|#": "^Efecto de Auras sobre tus Esbirros aumentado un (\\S+)%$" - }, - "8": { - "1|#": "^소환수의 오라 효과 (\\S+)% 증가$" + "1|#": "^(\\S+)% increased Effect of Aura Buffs on your Minions$" }, - "10": { - "1|#": "^增加 (\\S+)% 召喚物身上的光環效果$" - } + "2": {}, + "3": {}, + "4": {}, + "5": {}, + "6": {}, + "7": {}, + "8": {}, + "10": {} } }, "stat_3678841229": { @@ -15860,7 +15827,7 @@ "#": "^Ignora todas las Penalidades al Movimiento por Armadura$" }, "8": { - "#": "^갑옷으로 인한 모든 이동 패널티 무시$" + "#": "^갑옷으로 인한 모든 이동 페널티 무시$" }, "10": { "#": "^無視穿著護甲所帶來的減少移動速度效果$" @@ -19169,7 +19136,7 @@ "#": "^Los Monstruos Envenenan con cada Golpe$" }, "8": { - "#": "^몬스터의 명중 시 중독$" + "#": "^몬스터의 공격 명중 시 중독$" }, "10": { "#": "^被怪物擊中時中毒$" @@ -19460,7 +19427,7 @@ "#": "^Los Ataques Cuerpo a Cuerpo de los Monstruos aplican Maldiciones aleatorias con cada Golpe$" }, "8": { - "#": "^몬스터의 근접 공격 명중 시 무작위 저주 적용$" + "#": "^몬스터의 근접 공격 명중 시 무작위 저주 유발$" }, "10": { "#": "^怪物的近戰攻擊附加隨機詛咒$" @@ -23769,7 +23736,7 @@ "N#|-1": "^Daño Cuerpo a Cuerpo reducido un (\\S+)% cuando tengas la Vida Llena$" }, "8": { - "1|#": "^생명력이 최대일 때 동안 근접 피해 (\\S+)% 증가$", + "1|#": "^생명력이 최대일 때 근접 피해 (\\S+)% 증가$", "N#|-1": "^생명력이 최대일 때 근접 피해 (\\S+)% 감소$" }, "10": { @@ -24117,7 +24084,7 @@ "#": "^Los enemigos que mueren por golpes de zombis explotan e infligen un (\\S+)% de su vida como daño de fuego$" }, "8": { - "#": "^좀비에 적중되어 사망한 적이 폭발하여, 생명력의 (\\S+)%를 화염 피해로 줌$" + "#": "^좀비의 공격에 적중되어 사망한 적이 폭발하여, 생명력의 (\\S+)%를 화염 피해로 줌$" }, "10": {} } @@ -24362,7 +24329,7 @@ "#": "^Los enemigos que mueren por golpes de ataques o de hechizos explotan e infligen un (\\S+)% de su vida como daño de fuego$" }, "8": { - "#": "^공격 또는 주문 적중으로 사망한 적이 폭발하여, 생명력의 (\\S+)%를 화염 피해로 줌$" + "#": "^공격 또는 주문에 적중되어 사망한 적이 폭발하여, 생명력의 (\\S+)%를 화염 피해로 줌$" }, "10": {} } @@ -29085,7 +29052,7 @@ "#": "^(\\S+)% de probabilidad Global de Cegar Enemigos con cada Golpe$" }, "8": { - "#": "^명중 시 (\\S+)%의 일반 확률로 적 실명$" + "#": "^명중 시 (\\S+)%의 일반 확률로 적 실명 유발$" }, "10": { "#": "^擊中時有 (\\S+)% 機率導致敵人致盲$" @@ -30438,7 +30405,7 @@ "#": "^Puedes tener dos estandartes distintos al mismo tiempo$" }, "8": { - "#": "^동시에 2가지 깃발 보유 가능$" + "#": "^동시에 2종류 깃발 보유 가능$" }, "10": { "#": "^你同時可以有兩個不同的鬥旗$" @@ -33694,7 +33661,7 @@ "#": "^Los Enemigos que Matas tienen (\\S+)% de probabilidad de Explotar e infligir un cuarto de su Vida máxima como Daño de Caos$" }, "8": { - "#": "^처치한 적이 (\\S+)%의 확률로 폭발하여 생명력 최대치의 1/4을 카오스 피해로 줌$" + "#": "^자신이 처치한 적이 (\\S+)%의 확률로 폭발하여, 생명력 최대치의 1/4을 카오스 피해로 줌$" }, "10": { "#": "^你擊殺的敵人有 (\\S+)% 機率爆炸,造成等同四分之一其最大生命的混沌傷害$" @@ -35623,7 +35590,7 @@ "1|#": "^Los Enemigos con Sangrado Explotan cuando los Matas, e infligen (\\S+)% de\nsu Vida Máxima como Daño Físico$" }, "8": { - "1|#": "^출혈 중인 적을 처치하면 적이 폭발하여 \n최대 생명력의 (\\S+)%를 물리 피해로 줌$" + "1|#": "^출혈 중인 적을 처치하면 적이 폭발하여\n최대 생명력의 (\\S+)%를 물리 피해로 줌$" }, "10": { "1|#": "^擊殺流血的敵人時產生爆炸,造成等同其 (\\S+)% 最大生命的物理傷害$" @@ -38639,7 +38606,7 @@ "#": "^Los Esbirros tienen (\\S+)% de probabilidad de Cegar Enemigos con cada golpe$" }, "8": { - "#": "^소환수의 공격 명중 시 (\\S+)%의 확률로 적 실명$" + "#": "^소환수의 공격 명중 시 (\\S+)%의 확률로 적 실명 유발$" }, "10": { "#": "^召喚物擊中敵人時有 (\\S+)% 機率造成致盲$" @@ -40589,7 +40556,7 @@ "1|#": "^(\\S+)% de probabilidad de Cegar Enemigos con Golpes Críticos$" }, "8": { - "1|#": "^치명타 공격 시 (\\S+)%의 확률로 적 실명$" + "1|#": "^치명타 공격 시 (\\S+)%의 확률로 적 실명 유발$" }, "10": { "1|#": "^暴擊有 (\\S+)% 機率致盲敵人$" @@ -42623,7 +42590,7 @@ "1|#": "^Los Golpes Críticos tienen (\\S+)% de probabilidad de Cegar Enemigos mientras tengas Sigilo del Gato$" }, "8": { - "1|#": "^고양이의 은신 상태에서 치명타 시 (\\S+)%의 확률로 적 실명$" + "1|#": "^고양이의 은신 상태에서 치명타 시 (\\S+)%의 확률로 적 실명 유발$" }, "10": { "1|#": "^當你有傲貓隱身時,暴擊有 (\\S+)% 機率致盲敵人$" @@ -46225,8 +46192,8 @@ "100|#": "^Ciega Enemigos al Golpearlos con Ataques$" }, "8": { - "1|99": "^공격 명중 시 (\\S+)%의 확률로 적 실명$", - "100|#": "^공격 명중 시 적 실명$" + "1|99": "^공격 명중 시 (\\S+)%의 확률로 적 실명 유발$", + "100|#": "^공격 명중 시 적 실명 유발$" }, "10": { "1|99": "^攻擊擊中時有 (\\S+)% 機率造成致盲$", @@ -46818,7 +46785,7 @@ "100": "^Ciega Enemigos Escarchados con cada Golpe$" }, "8": { - "100": "^명중 시 냉각된 적 실명$" + "100": "^명중 시 냉각된 적 실명 유발$" }, "10": { "100": "^擊中冰緩的敵人時使其致盲$" @@ -46858,8 +46825,8 @@ "100|#": "^Ciega Enemigos que te Golpean mientras estés afectado por Gracia$" }, "8": { - "1|99": "^은총의 영향을 받는 동안 피격 시 (\\S+)%의 확률로 공격한 적 실명$", - "100|#": "^은총의 영향을 받는 동안 피격 시 공격한 적 실명$" + "1|99": "^은총의 영향을 받는 동안 피격 시 (\\S+)%의 확률로 공격한 적 실명 유발$", + "100|#": "^은총의 영향을 받는 동안 피격 시 공격한 적 실명 유발$" }, "10": { "1|99": "^被優雅影響時,有 (\\S+)% 機率致盲擊中你的敵人$", @@ -48468,7 +48435,7 @@ "#|99": "^(\\S+)% de probabilidad de Angustiar a los enemigos durante 4 segundos al golpear$" }, "8": { - "#|99": "^명중 시 (\\S+)%의 확률로 4초 동안 적 낙담$" + "#|99": "^명중 시 (\\S+)%의 확률로 4초 동안 적 낙담 유발$" }, "10": { "#|99": "^擊中時有 (\\S+)% 機率使敵人膽怯 4 秒$" @@ -52937,7 +52904,7 @@ "#": "^Los enemigos cercanos a los cadáveres afectados por tus maldiciones están ciegos\nLos enemigos que mueren cerca de cadáveres afectados por tus maldiciones explotan e infligen el\n(\\S+)% de su vida como daño físico$" }, "8": { - "#": "^자신이 건 저주에 영향을 받는 시신 근처의 적 실명\n자신이 건 저주에 영향을 받는 시신 근처에 있는 적 사망 시 폭발하여 \n생명력의 (\\S+)%를 물리 피해로 줌$" + "#": "^자신이 건 저주에 영향을 받는 시신 근처의 적 실명 유발\n자신이 건 저주에 영향을 받는 시신 근처에 있는 적 사망 시 폭발하여 \n생명력의 (\\S+)%를 물리 피해로 줌$" }, "10": { "#": "^敵人靠近被你詛咒的屍體時被致盲\n敵人靠近被你詛咒的屍體被擊殺時爆炸,\n造成 (\\S+)% 他們生命的物理傷害$" @@ -55757,7 +55724,7 @@ "1": "^Tienes Confluencia de escarcha durante 3 segundos cada 8 segundos$" }, "8": { - "1": "^8초마다 3초 동안 냉각 합류 획득$" + "1": "^8초마다 3초 동안 냉각 종합 획득$" }, "10": { "1": "^你每 8 秒會獲得 3 秒冰緩匯流$" @@ -57647,7 +57614,7 @@ "#": "^Los efectos de absorción de vida no se eliminan cuando tienes la vida llena\nLos efectos de absorción de vida recuperan escudo de energía en lugar de vida si tienes la vida llena$" }, "8": { - "#": "^최대 생명력에서도 생명력 흡수 효과가 제거되지 않음\n생명력이 최대일 때 생명력 흡수 효과가 생명력 대신 에너지 보호막을 회복$" + "#": "^최대 생명력에서도 생명력 흡수 효과가 제거되지 않음\n생명력이 최대치인 동안 생명력 흡수 효과가 생명력 대신 에너지 보호막을 회복$" }, "10": { "#": "^滿血時生命偷取效果不會移除\n滿血時生命偷取效果恢復能量護盾$" @@ -62628,8 +62595,8 @@ "100|#": "^Los Monstruos ganan una Carga de Aguante con cada Golpe$" }, "8": { - "1|99": "^명중 시 몬스터가 (\\S+)%의 확률로 인내 충전 획득$", - "100|#": "^명중 시 몬스터가 인내 충전 획득$" + "1|99": "^몬스터의 공격 명중 시 몬스터가 (\\S+)%의 확률로 인내 충전 획득$", + "100|#": "^몬스터의 공격 명중 시 몬스터가 인내 충전 획득$" }, "10": { "1|99": "^怪物擊中時有 (\\S+)% 機率獲得 1 顆耐力球$", @@ -62670,8 +62637,8 @@ "100|#": "^Los Monstruos ganan una Carga de Frenesí con cada Golpe$" }, "8": { - "1|99": "^명중 시 몬스터가 (\\S+)%의 확률로 격분 충전 획득$", - "100|#": "^명중 시 몬스터가 격분 충전 획득$" + "1|99": "^몬스터의 공격 명중 시 몬스터가 (\\S+)%의 확률로 격분 충전 획득$", + "100|#": "^몬스터의 공격 명중 시 몬스터가 격분 충전 획득$" }, "10": { "1|99": "^怪物擊中時有 (\\S+)% 機率獲得 1 顆狂怒球$", @@ -62713,7 +62680,7 @@ }, "8": { "1|99": "^명중 시 몬스터가 (\\S+)%의 확률로 권능 충전 획득$", - "100|#": "^명중 시 몬스터가 권능 충전 획득$" + "100|#": "^몬스터의 공격 명중 시 몬스터가 권능 충전 획득$" }, "10": { "1|99": "^怪物擊中時有 (\\S+)% 機率獲得 1 顆暴擊球$", @@ -63020,7 +62987,7 @@ "#": "^Los Monstruos tienen (\\S+)% de probabilidad de causar Achaques Elementales con cada Golpe$" }, "8": { - "#": "^명중 시 몬스터가 (\\S+)%의 확률로 원소 상태 이상 유발$" + "#": "^몬스터의 공격 명중 시 (\\S+)%의 확률로 원소 상태 이상 유발$" }, "10": { "#": "^怪物擊中時有 (\\S+)% 機率造成元素異常狀態$" @@ -75404,7 +75371,7 @@ "#": "^Los achaques dañinos que aplicas infligen su daño un (\\S+)% más rápido bajo los efectos de Malevolencia$" }, "8": { - "#": "^악의의 영향을 받는 동안 플레이어가 유발하는 상태 이상이 피해를 (\\S+)% 더 빨리 줌$" + "#": "^악의의 영향을 받는 동안 플레이어가 유발하는 상태 이상 피해 (\\S+)%만큼 가속$" }, "10": { "#": "^被惡意影響時,你造成的傷害型異常狀態所造成的傷害加速 (\\S+)%$" @@ -85122,8 +85089,8 @@ "N#|-1": "^Las habilidades de arco activadas engarzadas infligen un (\\S+)% menos de daño$" }, "8": { - "1|#": "^장착된 발동형 활 스킬이 주는 피해 (\\S+)% 증폭$", - "N#|-1": "^장착된 발동형 활 스킬이 주는 피해 (\\S+)% 감폭$" + "1|#": "^장착된 발동형 활 스킬로 주는 피해 (\\S+)% 증폭$", + "N#|-1": "^장착된 발동형 활 스킬로 주는 피해 (\\S+)% 감폭$" }, "10": {} } @@ -94466,7 +94433,7 @@ "#": "^(\\S+)% de probabilidad de Cegar Enemigos con cada golpe$" }, "8": { - "#": "^명중 시 (\\S+)%의 확률로 적 실명$" + "#": "^명중 시 (\\S+)%의 확률로 적 실명 유발$" }, "10": { "#": "^擊中時 (\\S+)% 機率致盲敵人$" @@ -106655,7 +106622,7 @@ "#": "^1 das Habilidades Passivas Adicionadas é Alimente a Fúria$" }, "3": { - "#": "^1 добавленное пассивное умение - Накорми ярость$" + "#": "^1 добавленное пассивное умение - Подпитка гнева$" }, "4": { "#": "^ในบรรดาพาสซีพที่เพิ่มเข้ามา 1 จุดในนั้นคือ Feed the Fury$" @@ -106721,7 +106688,7 @@ "#": "^1 das Habilidades Passivas Adicionadas é Sintonia do Fogo$" }, "3": { - "#": "^1 добавленное пассивное умение - Внимание к огню$" + "#": "^1 добавленное пассивное умение - В гармонии с огнем$" }, "4": { "#": "^ในบรรดาพาสซีพที่เพิ่มเข้ามา 1 จุดในนั้นคือ Fire Attunement$" @@ -106952,7 +106919,7 @@ "#": "^1 das Habilidades Passivas Adicionadas é Assalto Furioso$" }, "3": { - "#": "^1 добавленное пассивное умение - Неистовой наступление$" + "#": "^1 добавленное пассивное умение - Неистовое наступление$" }, "4": { "#": "^ในบรรดาพาสซีพที่เพิ่มเข้ามา 1 จุดในนั้นคือ Furious Assault$" @@ -110945,7 +110912,7 @@ "#": "^1 das Habilidades Passivas Adicionadas é Foco Estóico$" }, "3": { - "#": "^1 добавленное пассивное умение - Стойкое средоточие$" + "#": "^1 добавленное пассивное умение - Стоическое средоточие$" }, "4": { "#": "^ในบรรดาพาสซีพที่เพิ่มเข้ามา 1 จุดในนั้นคือ Stoic Focus$" @@ -111539,7 +111506,7 @@ "#": "^1 das Habilidades Passivas Adicionadas é Grande Ameaça$" }, "3": { - "#": "^1 добавленное пассивное умение - Возрастающая угроза$" + "#": "^1 добавленное пассивное умение - Растущая угроза$" }, "4": { "#": "^ในบรรดาพาสซีพที่เพิ่มเข้ามา 1 จุดในนั้นคือ Towering Threat$" @@ -112608,7 +112575,7 @@ "#": "^Con una Joya de Ojo Observador Engarzada, Lisias Enemigos por 4 segundos con cada Golpe con Ataques$" }, "8": { - "#": "^탐색하는 눈 주얼을 장착하면 공격 명중 시 4초 동안 적 힘줄 절단$" + "#": "^탐색하는 눈 주얼을 장착하면 공격 명중 시 4초 동안 적 힘줄 절단 유발$" }, "10": { "#": "^裝備勘查之眼珠寶時,攻擊擊中時癱瘓敵人 4 秒$" @@ -113271,7 +113238,7 @@ "#": "^Los Enemigos Cercanos están Intimidados$" }, "8": { - "#": "^주변의 적이 위협받음$" + "#": "^주변의 적이 위협에 걸림$" }, "10": { "#": "^周圍的敵人受到威嚇$" @@ -113956,7 +113923,7 @@ "#": "^Las Habilidades Pasivas Pequeñas asignadas dentro del Radio no otorgan nada$" }, "8": { - "#": "^반경 내 할당된 소형 패시브 스킬이 제공하는 것 없음$" + "#": "^반경 내 할당된 소형 패시브 스킬이 아무것도 부여하지 않음$" }, "10": { "#": "^配置範圍內的小天賦不會獲得效果$" @@ -116042,8 +116009,8 @@ "2|#": "^Agrega (\\S+) habilidades pasivas pequeñas que no otorgan nada$" }, "8": { - "1": "^제공하는 것 없는 소형 패시브 스킬 1개 추가$", - "2|#": "^제공하는 것 없는 소형 패시브 스킬 (\\S+)개 추가$" + "1": "^아무것도 부여하지 않는 소형 패시브 스킬 1개 추가$", + "2|#": "^아무것도 부여하지 않는 소형 패시브 스킬 (\\S+)개 추가$" }, "10": {} } @@ -116599,7 +116566,7 @@ "#": "^Las Habilidades Pasivas Notables dentro del Radio no otorgan nada$" }, "8": { - "#": "^반경 내 주요 패시브 스킬이 제공하는 것 없음$" + "#": "^반경 내 주요 패시브 스킬이 아무것도 부여하지 않음$" }, "10": { "#": "^範圍內的強力天賦沒有效果$" @@ -124631,32 +124598,16 @@ "negated": false, "text": { "1": { - "1|#": "^(\\S+)% increased Effect of Auras on you \\(implicit\\)$" - }, - "2": { - "1|#": "^Efeito de Auras em Você aumentado em (\\S+)% \\(implicit\\)$" - }, - "3": { - "1|#": "^(\\S+)% усиление эффекта аур на вас \\(implicit\\)$" - }, - "4": { - "1|#": "^เพิ่มการแสดงผลของออร่าบนตัวคุณขึ้น (\\S+)% \\(implicit\\)$" + "1|#": "^(\\S+)% increased Effect of Aura Buffs on you \\(implicit\\)$" }, - "5": { - "1|#": "^(\\S+)% erhöhte Wirkung von Auren auf Euch \\(implicit\\)$" - }, - "6": { - "1|#": "^(\\S+)% d'Augmentation de l'Effet des Auras sur vous \\(implicit\\)$" - }, - "7": { - "1|#": "^Efecto de Auras sobre Ti aumentado un (\\S+)% \\(implicit\\)$" - }, - "8": { - "1|#": "^플레이어가 받는 오라 효과 (\\S+)% 증가 \\(implicit\\)$" - }, - "10": { - "1|#": "^增加 (\\S+)% 你身上的光環效果 \\(implicit\\)$" - } + "2": {}, + "3": {}, + "4": {}, + "5": {}, + "6": {}, + "7": {}, + "8": {}, + "10": {} } }, "stat_30642521": { @@ -126962,7 +126913,7 @@ "#": "^(\\S+)% de probabilidad Global de Cegar Enemigos con cada Golpe \\(implicit\\)$" }, "8": { - "#": "^명중 시 (\\S+)%의 일반 확률로 적 실명 \\(implicit\\)$" + "#": "^명중 시 (\\S+)%의 일반 확률로 적 실명 유발 \\(implicit\\)$" }, "10": { "#": "^擊中時有 (\\S+)% 機率導致敵人致盲 \\(implicit\\)$" @@ -129984,8 +129935,8 @@ "100|#": "^Ciega Enemigos al Golpearlos con Ataques \\(implicit\\)$" }, "8": { - "1|99": "^공격 명중 시 (\\S+)%의 확률로 적 실명 \\(implicit\\)$", - "100|#": "^공격 명중 시 적 실명 \\(implicit\\)$" + "1|99": "^공격 명중 시 (\\S+)%의 확률로 적 실명 유발 \\(implicit\\)$", + "100|#": "^공격 명중 시 적 실명 유발 \\(implicit\\)$" }, "10": { "1|99": "^攻擊擊中時有 (\\S+)% 機率造成致盲 \\(implicit\\)$", @@ -130110,7 +130061,7 @@ "100|#": "^Intimida enemigos por 4 segundos al golpear con ataques \\(implicit\\)$" }, "8": { - "1|99": "^공격 명중 시 (\\S+)%의 확률로 4초 동안 적을 위협 \\(implicit\\)$", + "1|99": "^공격 명중 시 (\\S+)%의 확률로 4초 동안 적 위협 \\(implicit\\)$", "100|#": "^공격 명중 시 4초 동안 적 위협 \\(implicit\\)$" }, "10": { @@ -140130,17 +140081,17 @@ } } }, - "stat_2234049899": { + "stat_3301510262": { "text": { "10": { - "#": "^不被感電地面影響$" + "#": "^武器造成的傷害穿透 (\\S+)% 閃電抗性$" } } }, - "stat_3301510262": { + "stat_2234049899": { "text": { "10": { - "#": "^武器造成的傷害穿透 (\\S+)% 閃電抗性$" + "#": "^不被感電地面影響$" } } }, @@ -148606,7 +148557,7 @@ "#": "^(\\S+)% de probabilidad de Cegar Enemigos con cada golpe \\(crafted\\)$" }, "8": { - "#": "^명중 시 (\\S+)%의 확률로 적 실명 \\(crafted\\)$" + "#": "^명중 시 (\\S+)%의 확률로 적 실명 유발 \\(crafted\\)$" }, "10": { "#": "^擊中時 (\\S+)% 機率致盲敵人 \\(crafted\\)$" @@ -158723,8 +158674,8 @@ "100|#": "^Ciega Enemigos al Golpearlos con Ataques \\(fractured\\)$" }, "8": { - "1|99": "^공격 명중 시 (\\S+)%의 확률로 적 실명 \\(fractured\\)$", - "100|#": "^공격 명중 시 적 실명 \\(fractured\\)$" + "1|99": "^공격 명중 시 (\\S+)%의 확률로 적 실명 유발 \\(fractured\\)$", + "100|#": "^공격 명중 시 적 실명 유발 \\(fractured\\)$" }, "10": { "1|99": "^攻擊擊中時有 (\\S+)% 機率造成致盲 \\(fractured\\)$", @@ -189089,7 +189040,7 @@ } } }, - "stat_4019701925": { + "stat_1207515735": { "id": "map_area_contains_x_additional_clusters_of_beacon_barrels", "negated": false, "text": { @@ -189122,7 +189073,7 @@ } } }, - "stat_1207515735": { + "stat_4019701925": { "id": "map_area_contains_x_additional_clusters_of_beacon_barrels", "negated": false, "text": { @@ -190103,7 +190054,7 @@ } } }, - "stat_1525452114": { + "stat_2244550200": { "id": "map_endgame_affliction_reward_1", "negated": false, "text": { @@ -190134,7 +190085,7 @@ "10": {} } }, - "stat_3003096493": { + "stat_1727791743": { "id": "map_endgame_affliction_reward_1", "negated": false, "text": { @@ -190165,7 +190116,7 @@ "10": {} } }, - "stat_1727791743": { + "stat_3003096493": { "id": "map_endgame_affliction_reward_1", "negated": false, "text": { @@ -190196,7 +190147,7 @@ "10": {} } }, - "stat_2244550200": { + "stat_1525452114": { "id": "map_endgame_affliction_reward_1", "negated": false, "text": { @@ -194945,7 +194896,7 @@ "#": "^Muertos volátiles consume hasta 1 cadáver adicional \\(enchant\\)$" }, "8": { - "#": "^시체 불덩이가 시신 최대 1개 추가 소모 \\(enchant\\)$" + "#": "^시체 불덩이가 시신 최대 1구 추가 소모 \\(enchant\\)$" }, "10": { "#": "^致命之息至多消耗 1 個額外屍體 \\(enchant\\)$" @@ -195977,7 +195928,7 @@ "1": "^Muertos volátiles consume hasta (\\S+) cadáver adicional \\(enchant\\)$" }, "8": { - "1": "^시체 불덩이가 시신 최대 (\\S+)개 추가 소모 \\(enchant\\)$" + "1": "^시체 불덩이가 시신 최대 (\\S+)구 추가 소모 \\(enchant\\)$" }, "10": { "1": "^致命之息至多消耗 (\\S+) 個額外屍體 \\(enchant\\)$" @@ -196038,10 +195989,7 @@ "47": "^Added Small Passive Skills grant: \\+15% to Cold Resistance \\(enchant\\)$", "48": "^Added Small Passive Skills grant: \\+15% to Lightning Resistance \\(enchant\\)$", "49": "^Added Small Passive Skills grant: \\+12% to Chaos Resistance \\(enchant\\)$", - "50": "^Added Small Passive Skills grant: 1% chance to Dodge Attack Hits \\(enchant\\)$", - "51": "^Added Small Passive Skills grant: \\+10 to Strength \\(enchant\\)$", - "52": "^Added Small Passive Skills grant: \\+10 to Dexterity \\(enchant\\)$", - "53": "^Added Small Passive Skills grant: \\+10 to Intelligence \\(enchant\\)$" + "50": "^Added Small Passive Skills grant: 1% chance to Dodge Attack Hits \\(enchant\\)$" }, "2": { "1": "^Habilidades Passivas Adicionadas concedem Ataques com Machados causam Dano com Acertos e Afecções aumentado em 12%\nHabilidades Passivas Adicionadas concedem Ataques com Espadas causam Dano com Acertos e Afecções aumentado em 12% \\(enchant\\)$", @@ -196093,10 +196041,7 @@ "47": "^Habilidades Passivas Adicionadas concedem \\+15% de Resistência a Gelo \\(enchant\\)$", "48": "^Habilidades Passivas Adicionadas concedem \\+15% de Resistência a Raio \\(enchant\\)$", "49": "^Habilidades Passivas Adicionadas concedem \\+12% de Resistência a Caos \\(enchant\\)$", - "50": "^Habilidades Passivas Adicionadas concedem 1% de chance de Esquivar dos Acertos de Ataques \\(enchant\\)$", - "51": "^Habilidades Passivas Adicionadas concedem \\+10 de Força \\(enchant\\)$", - "52": "^Habilidades Passivas Adicionadas concedem \\+10 de Destreza \\(enchant\\)$", - "53": "^Habilidades Passivas Adicionadas concedem \\+10 de Inteligência \\(enchant\\)$" + "50": "^Habilidades Passivas Adicionadas concedem 1% de chance de Esquivar dos Acertos de Ataques \\(enchant\\)$" }, "3": { "1": "^Добавленные малые пассивные умения даруют: Атаки топорами наносят увеличенный на 12% урон от ударов и состояний\nДобавленные малые пассивные умения даруют: Атаки мечами наносят увеличенный на 12% урон от ударов и состояний \\(enchant\\)$", @@ -196148,10 +196093,7 @@ "47": "^Добавленные малые пассивные умения даруют: \\+15% к сопротивлению холоду \\(enchant\\)$", "48": "^Добавленные малые пассивные умения даруют: \\+15% к сопротивлению молнии \\(enchant\\)$", "49": "^Добавленные малые пассивные умения даруют: \\+12% к сопротивлению хаосу \\(enchant\\)$", - "50": "^Добавленные малые пассивные умения даруют: 1% шанс уворота от ударов атаками \\(enchant\\)$", - "51": "^Добавленные малые пассивные умения даруют: \\+10 к силе \\(enchant\\)$", - "52": "^Добавленные малые пассивные умения даруют: \\+10 к ловкости \\(enchant\\)$", - "53": "^Добавленные малые пассивные умения даруют: \\+10 к интеллекту \\(enchant\\)$" + "50": "^Добавленные малые пассивные умения даруют: 1% шанс уворота от ударов атаками \\(enchant\\)$" }, "4": { "1": "^พาสซีพขนาดเล็กที่ถูกเพิ่มเข้ามาจะมอบ: การโจมตีด้วย ขวาน จะเพิ่มความเสียหายด้วยการปะทะและสถานะเจ็บป่วย 12%\nพาสซีพขนาดเล็กที่ถูกเพิ่มเข้ามาจะมอบ: การโจมตีด้วย ดาบ จะเพิ่มความเสียหายด้วยการปะทะและสถานะเจ็บป่วย 12% \\(enchant\\)$", @@ -196203,10 +196145,7 @@ "47": "^พาสซีพขนาดเล็กที่ถูกเพิ่มเข้ามาจะมอบ: ต้านทาน น้ำแข็ง \\+15% \\(enchant\\)$", "48": "^พาสซีพขนาดเล็กที่ถูกเพิ่มเข้ามาจะมอบ: ต้านทาน ไฟฟ้า \\+15% \\(enchant\\)$", "49": "^พาสซีพขนาดเล็กที่ถูกเพิ่มเข้ามาจะมอบ: ต้านทาน เคออส \\+12% \\(enchant\\)$", - "50": "^พาสซีพขนาดเล็กที่ถูกเพิ่มเข้ามาจะมอบ: มีโอกาส หลบเลี่ยง การโจมตี 1% \\(enchant\\)$", - "51": "^พาสซีพขนาดเล็กที่ถูกเพิ่มเข้ามาจะมอบ: ค่า Strength \\+10 \\(enchant\\)$", - "52": "^พาสซีพขนาดเล็กที่ถูกเพิ่มเข้ามาจะมอบ: ค่า Dexterity \\+10 \\(enchant\\)$", - "53": "^พาสซีพขนาดเล็กที่ถูกเพิ่มเข้ามาจะมอบ: ค่า Intelligence \\+10 \\(enchant\\)$" + "50": "^พาสซีพขนาดเล็กที่ถูกเพิ่มเข้ามาจะมอบ: มีโอกาส หลบเลี่ยง การโจมตี 1% \\(enchant\\)$" }, "5": { "1": "^Hinzugefügte kleine passive Fertigkeiten gewähren: Angriffe mit Äxten verursachen 12% erhöhten Schaden mit Treffern und Beeinträchtigungen\nHinzugefügte kleine passive Fertigkeiten gewähren: Angriffe mit Schwertern verursachen 12% erhöhten Schaden mit Treffern und Beeinträchtigungen \\(enchant\\)$", @@ -196258,10 +196197,7 @@ "47": "^Hinzugefügte kleine passive Fertigkeiten gewähren: \\+15% zu Kältewiderstand \\(enchant\\)$", "48": "^Hinzugefügte kleine passive Fertigkeiten gewähren: \\+15% zu Blitzwiderstand \\(enchant\\)$", "49": "^Hinzugefügte kleine passive Fertigkeiten gewähren: \\+12% zu Chaoswiderstand \\(enchant\\)$", - "50": "^Hinzugefügte kleine passive Fertigkeiten gewähren: 1% Chance, Angriffstreffern zu entgehen \\(enchant\\)$", - "51": "^Hinzugefügte kleine passive Fertigkeiten gewähren: \\+10 zu Stärke \\(enchant\\)$", - "52": "^Hinzugefügte kleine passive Fertigkeiten gewähren: \\+10 zu Geschick \\(enchant\\)$", - "53": "^Hinzugefügte kleine passive Fertigkeiten gewähren: \\+10 zu Intelligenz \\(enchant\\)$" + "50": "^Hinzugefügte kleine passive Fertigkeiten gewähren: 1% Chance, Angriffstreffern zu entgehen \\(enchant\\)$" }, "6": { "1": "^Les Passifs mineurs ajoutés octroient: Les Attaques avec les haches ont 12% d'Augmentation des Dégâts au Toucher et avec les Altérations\nLes Passifs mineurs ajoutés octroient: Les Attaques avec les épées ont 12% d'Augmentation des Dégâts au Toucher et avec les Altérations \\(enchant\\)$", @@ -196313,10 +196249,7 @@ "47": "^Les Passifs mineurs ajoutés octroient: \\+15% à la Résistance au froid \\(enchant\\)$", "48": "^Les Passifs mineurs ajoutés octroient: \\+15% à la Résistance à la foudre \\(enchant\\)$", "49": "^Les Passifs mineurs ajoutés octroient: \\+12% à la Résistance au chaos \\(enchant\\)$", - "50": "^Les Passifs mineurs ajoutés octroient: 1% de chances d'Esquiver les Attaques qui Touchent \\(enchant\\)$", - "51": "^Les Passifs mineurs ajoutés octroient: \\+10 de Force \\(enchant\\)$", - "52": "^Les Passifs mineurs ajoutés octroient: \\+10 de Dextérité \\(enchant\\)$", - "53": "^Les Passifs mineurs ajoutés octroient: \\+10 d'Intelligence \\(enchant\\)$" + "50": "^Les Passifs mineurs ajoutés octroient: 1% de chances d'Esquiver les Attaques qui Touchent \\(enchant\\)$" }, "7": { "1": "^Las habilidades pasivas pequeñas agregadas otorgan: Los ataques con hachas infligen daño aumentado un 12% con golpes y achaques\nLas habilidades pasivas pequeñas agregadas otorgan: Los ataques con espadas infligen daño aumentado un 12% con golpes y achaques \\(enchant\\)$", @@ -196368,10 +196301,7 @@ "47": "^Las habilidades pasivas pequeñas agregadas otorgan: \\+15% de Resistencia al Hielo \\(enchant\\)$", "48": "^Las habilidades pasivas pequeñas agregadas otorgan: \\+15% de Resistencia al Rayo \\(enchant\\)$", "49": "^Las habilidades pasivas pequeñas agregadas otorgan: \\+12% de Resistencia al Caos \\(enchant\\)$", - "50": "^Las habilidades pasivas pequeñas agregadas otorgan: 1% de probabilidad de Esquivar Golpes de Ataques \\(enchant\\)$", - "51": "^Las habilidades pasivas pequeñas agregadas otorgan: \\+10 de Fuerza \\(enchant\\)$", - "52": "^Las habilidades pasivas pequeñas agregadas otorgan: \\+10 de Destreza \\(enchant\\)$", - "53": "^Las habilidades pasivas pequeñas agregadas otorgan: \\+10 de Inteligencia \\(enchant\\)$" + "50": "^Las habilidades pasivas pequeñas agregadas otorgan: 1% de probabilidad de Esquivar Golpes de Ataques \\(enchant\\)$" }, "8": { "1": "^추가된 소형 패시브 스킬 효과: 도끼 공격으로 주는 적중 및 상태 이상 피해 12% 증가\n추가된 소형 패시브 스킬 효과: 검 공격으로 주는 적중 및 상태 이상 피해 12% 증가 \\(enchant\\)$", @@ -196423,10 +196353,7 @@ "47": "^추가된 소형 패시브 스킬 효과: 냉기 저항 \\+15% \\(enchant\\)$", "48": "^추가된 소형 패시브 스킬 효과: 번개 저항 \\+15% \\(enchant\\)$", "49": "^추가된 소형 패시브 스킬 효과: 카오스 저항 \\+12% \\(enchant\\)$", - "50": "^추가된 소형 패시브 스킬 효과: 1%의 확률로 공격 적중 완벽회피 \\(enchant\\)$", - "51": "^추가된 소형 패시브 스킬 효과: 힘 \\+10 \\(enchant\\)$", - "52": "^추가된 소형 패시브 스킬 효과: 민첩 \\+10 \\(enchant\\)$", - "53": "^추가된 소형 패시브 스킬 효과: 지능 \\+10 \\(enchant\\)$" + "50": "^추가된 소형 패시브 스킬 효과: 1%의 확률로 공격 적중 완벽회피 \\(enchant\\)$" }, "10": { "1": "^附加的小型天賦給予:斧攻擊增加 12% 擊中和異常狀態傷害\n附加的小型天賦給予:劍攻擊增加 12% 擊中和異常狀態傷害 \\(enchant\\)$", @@ -196517,65 +196444,65 @@ } } }, - "delirium_reward_talismans": { + "delirium_reward_abyss": { "text": { "1": { - "#": "^Delirium Reward Type: Talismans \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: Abyss Items \\(×(\\S+)\\)$" }, "2": { - "#": "^Tipo de Recompensa Delirium: Talismãs \\(×(\\S+)\\)$" + "#": "^Tipo de Recompensa Delirium: Itens Abissais \\(×(\\S+)\\)$" }, "3": { - "#": "^Вид наград Делириума: Талисманы \\(×(\\S+)\\)$" + "#": "^Вид наград Делириума: Предметы Бездны \\(×(\\S+)\\)$" }, "4": { - "#": "^Delirium Reward Type: สร้อยเครื่องราง \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: ไอเทมขุมอะบิส \\(×(\\S+)\\)$" }, "5": { - "#": "^Delirium-Belohnungstyp: Talismane \\(×(\\S+)\\)$" + "#": "^Delirium-Belohnungstyp: Abyss-Gegenstände \\(×(\\S+)\\)$" }, "6": { - "#": "^Type de récompense Delirium : Talismans \\(×(\\S+)\\)$" + "#": "^Type de récompense Delirium : Objets abyssaux \\(×(\\S+)\\)$" }, "7": { - "#": "^Tipo de recompensa de Delirium: Talismanes \\(×(\\S+)\\)$" + "#": "^Tipo de recompensa de Delirium: Objetos de Abyss \\(×(\\S+)\\)$" }, "8": { - "#": "^환영 보상 유형: 부적 \\(×(\\S+)\\)$" + "#": "^환영 보상 유형: 심연 아이템 \\(×(\\S+)\\)$" }, "10": { - "#": "^譫妄獎勵類型:魔符 \\(×(\\S+)\\)$" + "#": "^譫妄獎勵類型:深淵之物 \\(×(\\S+)\\)$" } } }, - "delirium_reward_abyss": { + "delirium_reward_talismans": { "text": { "1": { - "#": "^Delirium Reward Type: Abyss Items \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: Talismans \\(×(\\S+)\\)$" }, "2": { - "#": "^Tipo de Recompensa Delirium: Itens Abissais \\(×(\\S+)\\)$" + "#": "^Tipo de Recompensa Delirium: Talismãs \\(×(\\S+)\\)$" }, "3": { - "#": "^Вид наград Делириума: Предметы Бездны \\(×(\\S+)\\)$" + "#": "^Вид наград Делириума: Талисманы \\(×(\\S+)\\)$" }, "4": { - "#": "^Delirium Reward Type: ไอเทมขุมอะบิส \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: สร้อยเครื่องราง \\(×(\\S+)\\)$" }, "5": { - "#": "^Delirium-Belohnungstyp: Abyss-Gegenstände \\(×(\\S+)\\)$" + "#": "^Delirium-Belohnungstyp: Talismane \\(×(\\S+)\\)$" }, "6": { - "#": "^Type de récompense Delirium : Objets abyssaux \\(×(\\S+)\\)$" + "#": "^Type de récompense Delirium : Talismans \\(×(\\S+)\\)$" }, "7": { - "#": "^Tipo de recompensa de Delirium: Objetos de Abyss \\(×(\\S+)\\)$" + "#": "^Tipo de recompensa de Delirium: Talismanes \\(×(\\S+)\\)$" }, "8": { - "#": "^환영 보상 유형: 심연 아이템 \\(×(\\S+)\\)$" + "#": "^환영 보상 유형: 부적 \\(×(\\S+)\\)$" }, "10": { - "#": "^譫妄獎勵類型:深淵之物 \\(×(\\S+)\\)$" + "#": "^譫妄獎勵類型:魔符 \\(×(\\S+)\\)$" } } }, @@ -196604,6 +196531,9 @@ }, "8": { "#": "^환영 보상 유형: 균열 아이템 \\(×(\\S+)\\)$" + }, + "10": { + "#": "^譫妄獎勵類型:裂痕之物 \\(×(\\S+)\\)$" } } }, @@ -196669,189 +196599,189 @@ } } }, - "delirium_reward_prophecies": { + "delirium_reward_metamorphosis": { "text": { "1": { - "#": "^Delirium Reward Type: Prophecy Items \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: Blight Items \\(×(\\S+)\\)$" }, "2": { - "#": "^Tipo de Recompensa Delirium: Itens Proféticos \\(×(\\S+)\\)$" + "#": "^Tipo de Recompensa Delirium: Itens Blight \\(×(\\S+)\\)$" }, "3": { - "#": "^Вид наград Делириума: Запечатанные пророчества \\(×(\\S+)\\)$" + "#": "^Вид наград Делириума: Предметы Скверны \\(×(\\S+)\\)$" }, "4": { - "#": "^Delirium Reward Type: ไอเทมคำทำนาย \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: ไอเทมไบล์ท \\(×(\\S+)\\)$" }, "5": { - "#": "^Delirium-Belohnungstyp: Prophezeiungs-Gegenstände \\(×(\\S+)\\)$" + "#": "^Delirium-Belohnungstyp: Blight-Gegenstände \\(×(\\S+)\\)$" }, "6": { - "#": "^Type de récompense Delirium : Objets de Prophétie \\(×(\\S+)\\)$" + "#": "^Type de récompense Delirium : Objets de l'Infestation \\(×(\\S+)\\)$" }, "7": { - "#": "^Tipo de recompensa de Delirium: Objetos de Prophecy \\(×(\\S+)\\)$" + "#": "^Tipo de recompensa de Delirium: Objetos de Blight \\(×(\\S+)\\)$" }, "8": { - "#": "^환영 보상 유형: 예언 아이템 \\(×(\\S+)\\)$" + "#": "^환영 보상 유형: 역병 아이템 \\(×(\\S+)\\)$" }, "10": { - "#": "^譫妄獎勵類型:預言之物 \\(×(\\S+)\\)$" + "#": "^譫妄獎勵類型:凋落之物 \\(×(\\S+)\\)$" } } }, - "delirium_reward_weapon": { + "delirium_reward_prophecies": { "text": { "1": { - "#": "^Delirium Reward Type: Weapons \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: Prophecy Items \\(×(\\S+)\\)$" }, "2": { - "#": "^Tipo de Recompensa Delirium: Armas \\(×(\\S+)\\)$" + "#": "^Tipo de Recompensa Delirium: Itens Proféticos \\(×(\\S+)\\)$" }, "3": { - "#": "^Вид наград Делириума: Оружие \\(×(\\S+)\\)$" + "#": "^Вид наград Делириума: Запечатанные пророчества \\(×(\\S+)\\)$" }, "4": { - "#": "^Delirium Reward Type: อาวุธ \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: ไอเทมคำทำนาย \\(×(\\S+)\\)$" }, "5": { - "#": "^Delirium-Belohnungstyp: Waffen \\(×(\\S+)\\)$" + "#": "^Delirium-Belohnungstyp: Prophezeiungs-Gegenstände \\(×(\\S+)\\)$" }, "6": { - "#": "^Type de récompense Delirium : Armes \\(×(\\S+)\\)$" + "#": "^Type de récompense Delirium : Objets de Prophétie \\(×(\\S+)\\)$" }, "7": { - "#": "^Tipo de recompensa de Delirium: Armas \\(×(\\S+)\\)$" + "#": "^Tipo de recompensa de Delirium: Objetos de Prophecy \\(×(\\S+)\\)$" }, "8": { - "#": "^환영 보상 유형: 무기 \\(×(\\S+)\\)$" + "#": "^환영 보상 유형: 예언 아이템 \\(×(\\S+)\\)$" }, "10": { - "#": "^譫妄獎勵類型:武器 \\(×(\\S+)\\)$" + "#": "^譫妄獎勵類型:預言之物 \\(×(\\S+)\\)$" } } }, - "delirium_reward_divinationcards": { + "delirium_reward_currency": { "text": { "1": { - "#": "^Delirium Reward Type: Divination Cards \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: Currency \\(×(\\S+)\\)$" }, "2": { - "#": "^Tipo de Recompensa Delirium: Cartas de Adivinhação \\(×(\\S+)\\)$" + "#": "^Tipo de Recompensa Delirium: Item Monetário \\(×(\\S+)\\)$" }, "3": { - "#": "^Вид наград Делириума: Гадальные карты \\(×(\\S+)\\)$" + "#": "^Вид наград Делириума: Валюта \\(×(\\S+)\\)$" }, "4": { - "#": "^Delirium Reward Type: ไพ่พยากรณ์ \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: เคอเรนซี่ \\(×(\\S+)\\)$" }, "5": { - "#": "^Delirium-Belohnungstyp: Weissagungskarten \\(×(\\S+)\\)$" + "#": "^Delirium-Belohnungstyp: Währung \\(×(\\S+)\\)$" }, "6": { - "#": "^Type de récompense Delirium : Cartes divinatoires \\(×(\\S+)\\)$" + "#": "^Type de récompense Delirium : Objets monétaires \\(×(\\S+)\\)$" }, "7": { - "#": "^Tipo de recompensa de Delirium: Cartas de Adivinación \\(×(\\S+)\\)$" + "#": "^Tipo de recompensa de Delirium: Objetos monetarios \\(×(\\S+)\\)$" }, "8": { - "#": "^환영 보상 유형: 점술 카드 \\(×(\\S+)\\)$" + "#": "^환영 보상 유형: 화폐 \\(×(\\S+)\\)$" }, "10": { - "#": "^譫妄獎勵類型:命預卡 \\(×(\\S+)\\)$" + "#": "^譫妄獎勵類型:通貨 \\(×(\\S+)\\)$" } } }, - "delirium_reward_fragments": { + "delirium_reward_blight": { "text": { "1": { - "#": "^Delirium Reward Type: Fragments \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: Incubators \\(×(\\S+)\\)$" }, "2": { - "#": "^Tipo de Recompensa Delirium: Fragmentos \\(×(\\S+)\\)$" + "#": "^Tipo de Recompensa Delirium: Incubadores \\(×(\\S+)\\)$" }, "3": { - "#": "^Вид наград Делириума: Фрагменты \\(×(\\S+)\\)$" + "#": "^Вид наград Делириума: Инкубаторы \\(×(\\S+)\\)$" }, "4": { - "#": "^Delirium Reward Type: ชิ้นส่วนต่างๆ \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: ตัวบ่มฟัก \\(×(\\S+)\\)$" }, "5": { - "#": "^Delirium-Belohnungstyp: Fragmente \\(×(\\S+)\\)$" + "#": "^Delirium-Belohnungstyp: Inkubatoren \\(×(\\S+)\\)$" }, "6": { - "#": "^Type de récompense Delirium : Fragments \\(×(\\S+)\\)$" + "#": "^Type de récompense Delirium : Incubateurs \\(×(\\S+)\\)$" }, "7": { - "#": "^Tipo de recompensa de Delirium: Fragmentos \\(×(\\S+)\\)$" + "#": "^Tipo de recompensa de Delirium: Incubadoras \\(×(\\S+)\\)$" }, "8": { - "#": "^환영 보상 유형: 조각 \\(×(\\S+)\\)$" + "#": "^환영 보상 유형: 인큐베이터 \\(×(\\S+)\\)$" }, "10": { - "#": "^譫妄獎勵類型:碎片 \\(×(\\S+)\\)$" + "#": "^譫妄獎勵類型:培育器 \\(×(\\S+)\\)$" } } }, - "delirium_reward_metamorphosis": { + "delirium_reward_weapon": { "text": { "1": { - "#": "^Delirium Reward Type: Blight Items \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: Weapons \\(×(\\S+)\\)$" }, "2": { - "#": "^Tipo de Recompensa Delirium: Itens Blight \\(×(\\S+)\\)$" + "#": "^Tipo de Recompensa Delirium: Armas \\(×(\\S+)\\)$" }, "3": { - "#": "^Вид наград Делириума: Предметы Скверны \\(×(\\S+)\\)$" + "#": "^Вид наград Делириума: Оружие \\(×(\\S+)\\)$" }, "4": { - "#": "^Delirium Reward Type: ไอเทมไบล์ท \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: อาวุธ \\(×(\\S+)\\)$" }, "5": { - "#": "^Delirium-Belohnungstyp: Blight-Gegenstände \\(×(\\S+)\\)$" + "#": "^Delirium-Belohnungstyp: Waffen \\(×(\\S+)\\)$" }, "6": { - "#": "^Type de récompense Delirium : Objets de l'Infestation \\(×(\\S+)\\)$" + "#": "^Type de récompense Delirium : Armes \\(×(\\S+)\\)$" }, "7": { - "#": "^Tipo de recompensa de Delirium: Objetos de Blight \\(×(\\S+)\\)$" + "#": "^Tipo de recompensa de Delirium: Armas \\(×(\\S+)\\)$" }, "8": { - "#": "^환영 보상 유형: 역병 아이템 \\(×(\\S+)\\)$" + "#": "^환영 보상 유형: 무기 \\(×(\\S+)\\)$" }, "10": { - "#": "^譫妄獎勵類型:凋落之物 \\(×(\\S+)\\)$" + "#": "^譫妄獎勵類型:武器 \\(×(\\S+)\\)$" } } }, - "delirium_reward_blight": { + "delirium_reward_fragments": { "text": { "1": { - "#": "^Delirium Reward Type: Incubators \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: Fragments \\(×(\\S+)\\)$" }, "2": { - "#": "^Tipo de Recompensa Delirium: Incubadores \\(×(\\S+)\\)$" + "#": "^Tipo de Recompensa Delirium: Fragmentos \\(×(\\S+)\\)$" }, "3": { - "#": "^Вид наград Делириума: Инкубаторы \\(×(\\S+)\\)$" + "#": "^Вид наград Делириума: Фрагменты \\(×(\\S+)\\)$" }, "4": { - "#": "^Delirium Reward Type: ตัวบ่มฟัก \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: ชิ้นส่วนต่างๆ \\(×(\\S+)\\)$" }, "5": { - "#": "^Delirium-Belohnungstyp: Inkubatoren \\(×(\\S+)\\)$" + "#": "^Delirium-Belohnungstyp: Fragmente \\(×(\\S+)\\)$" }, "6": { - "#": "^Type de récompense Delirium : Incubateurs \\(×(\\S+)\\)$" + "#": "^Type de récompense Delirium : Fragments \\(×(\\S+)\\)$" }, "7": { - "#": "^Tipo de recompensa de Delirium: Incubadoras \\(×(\\S+)\\)$" + "#": "^Tipo de recompensa de Delirium: Fragmentos \\(×(\\S+)\\)$" }, "8": { - "#": "^환영 보상 유형: 인큐베이터 \\(×(\\S+)\\)$" + "#": "^환영 보상 유형: 조각 \\(×(\\S+)\\)$" }, "10": { - "#": "^譫妄獎勵類型:培育器 \\(×(\\S+)\\)$" + "#": "^譫妄獎勵類型:碎片 \\(×(\\S+)\\)$" } } }, @@ -196886,65 +196816,65 @@ } } }, - "delirium_reward_currency": { + "delirium_reward_perandus": { "text": { "1": { - "#": "^Delirium Reward Type: Currency \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: Perandus Items \\(×(\\S+)\\)$" }, "2": { - "#": "^Tipo de Recompensa Delirium: Item Monetário \\(×(\\S+)\\)$" + "#": "^Tipo de Recompensa Delirium: Itens Perandus \\(×(\\S+)\\)$" }, "3": { - "#": "^Вид наград Делириума: Валюта \\(×(\\S+)\\)$" + "#": "^Вид наград Делириума: Предметы Перандусов \\(×(\\S+)\\)$" }, "4": { - "#": "^Delirium Reward Type: เคอเรนซี่ \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: ไอเทมเพรันดัส \\(×(\\S+)\\)$" }, "5": { - "#": "^Delirium-Belohnungstyp: Währung \\(×(\\S+)\\)$" + "#": "^Delirium-Belohnungstyp: Perandus-Gegenstände \\(×(\\S+)\\)$" }, "6": { - "#": "^Type de récompense Delirium : Objets monétaires \\(×(\\S+)\\)$" + "#": "^Type de récompense Delirium : Objets de Pérandus \\(×(\\S+)\\)$" }, "7": { - "#": "^Tipo de recompensa de Delirium: Objetos monetarios \\(×(\\S+)\\)$" + "#": "^Tipo de recompensa de Delirium: Objetos Perandus \\(×(\\S+)\\)$" }, "8": { - "#": "^환영 보상 유형: 화폐 \\(×(\\S+)\\)$" + "#": "^환영 보상 유형: 페란두스 아이템 \\(×(\\S+)\\)$" }, "10": { - "#": "^譫妄獎勵類型:通貨 \\(×(\\S+)\\)$" + "#": "^譫妄獎勵類型:普蘭德斯之物 \\(×(\\S+)\\)$" } } }, - "delirium_reward_perandus": { + "delirium_reward_divinationcards": { "text": { "1": { - "#": "^Delirium Reward Type: Perandus Items \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: Divination Cards \\(×(\\S+)\\)$" }, "2": { - "#": "^Tipo de Recompensa Delirium: Itens Perandus \\(×(\\S+)\\)$" + "#": "^Tipo de Recompensa Delirium: Cartas de Adivinhação \\(×(\\S+)\\)$" }, "3": { - "#": "^Вид наград Делириума: Предметы Перандусов \\(×(\\S+)\\)$" + "#": "^Вид наград Делириума: Гадальные карты \\(×(\\S+)\\)$" }, "4": { - "#": "^Delirium Reward Type: ไอเทมเพรันดัส \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: ไพ่พยากรณ์ \\(×(\\S+)\\)$" }, "5": { - "#": "^Delirium-Belohnungstyp: Perandus-Gegenstände \\(×(\\S+)\\)$" + "#": "^Delirium-Belohnungstyp: Weissagungskarten \\(×(\\S+)\\)$" }, "6": { - "#": "^Type de récompense Delirium : Objets de Pérandus \\(×(\\S+)\\)$" + "#": "^Type de récompense Delirium : Cartes divinatoires \\(×(\\S+)\\)$" }, "7": { - "#": "^Tipo de recompensa de Delirium: Objetos Perandus \\(×(\\S+)\\)$" + "#": "^Tipo de recompensa de Delirium: Cartas de Adivinación \\(×(\\S+)\\)$" }, "8": { - "#": "^환영 보상 유형: 페란두스 아이템 \\(×(\\S+)\\)$" + "#": "^환영 보상 유형: 점술 카드 \\(×(\\S+)\\)$" }, "10": { - "#": "^譫妄獎勵類型:普蘭德斯之物 \\(×(\\S+)\\)$" + "#": "^譫妄獎勵類型:命預卡 \\(×(\\S+)\\)$" } } }, @@ -196979,158 +196909,158 @@ } } }, - "delirium_reward_armour": { + "delirium_reward_labyrinth": { "text": { "1": { - "#": "^Delirium Reward Type: Armour \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: Labyrinth Items \\(×(\\S+)\\)$" }, "2": { - "#": "^Tipo de Recompensa Delirium: Armaduras \\(×(\\S+)\\)$" + "#": "^Tipo de Recompensa Delirium: Itens do Labirinto \\(×(\\S+)\\)$" }, "3": { - "#": "^Вид наград Делириума: Доспехи \\(×(\\S+)\\)$" + "#": "^Вид наград Делириума: Предметы Лабиринта \\(×(\\S+)\\)$" }, "4": { - "#": "^Delirium Reward Type: ชุดเกราะ \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: ไอเทมจากเขาวงกต \\(×(\\S+)\\)$" }, "5": { - "#": "^Delirium-Belohnungstyp: Rüstung \\(×(\\S+)\\)$" + "#": "^Delirium-Belohnungstyp: Labyrinth-Gegenstände \\(×(\\S+)\\)$" }, "6": { - "#": "^Type de récompense Delirium : Pièces d'armure \\(×(\\S+)\\)$" + "#": "^Type de récompense Delirium : Objets du Labyrinthe \\(×(\\S+)\\)$" }, "7": { - "#": "^Tipo de recompensa de Delirium: Armadura \\(×(\\S+)\\)$" + "#": "^Tipo de recompensa de Delirium: Objetos de Laberinto \\(×(\\S+)\\)$" }, "8": { - "#": "^환영 보상 유형: 방어구 \\(×(\\S+)\\)$" + "#": "^환영 보상 유형: 미궁 아이템 \\(×(\\S+)\\)$" }, "10": { - "#": "^譫妄獎勵類型:護甲 \\(×(\\S+)\\)$" + "#": "^譫妄獎勵類型:迷宮之物 \\(×(\\S+)\\)$" } } }, - "delirium_reward_fossils": { + "delirium_reward_uniques": { "text": { "1": { - "#": "^Delirium Reward Type: Fossils \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: Unique Items \\(×(\\S+)\\)$" }, "2": { - "#": "^Tipo de Recompensa Delirium: Fósseis \\(×(\\S+)\\)$" + "#": "^Tipo de Recompensa Delirium: Itens Únicos \\(×(\\S+)\\)$" }, "3": { - "#": "^Вид наград Делириума: Ископаемые \\(×(\\S+)\\)$" + "#": "^Вид наград Делириума: Уникальные предметы \\(×(\\S+)\\)$" }, "4": { - "#": "^Delirium Reward Type: ฟอสซิล \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: ไอเทมยูนิค \\(×(\\S+)\\)$" }, "5": { - "#": "^Delirium-Belohnungstyp: Fossilien \\(×(\\S+)\\)$" + "#": "^Delirium-Belohnungstyp: Einzigartige Gegenstände \\(×(\\S+)\\)$" }, "6": { - "#": "^Type de récompense Delirium : Fossiles \\(×(\\S+)\\)$" + "#": "^Type de récompense Delirium : Objets uniques \\(×(\\S+)\\)$" }, "7": { - "#": "^Tipo de recompensa de Delirium: Fósiles \\(×(\\S+)\\)$" + "#": "^Tipo de recompensa de Delirium: Objetos únicos \\(×(\\S+)\\)$" }, "8": { - "#": "^환영 보상 유형: 화석 \\(×(\\S+)\\)$" + "#": "^환영 보상 유형: 고유 아이템 \\(×(\\S+)\\)$" }, "10": { - "#": "^譫妄獎勵類型:化石 \\(×(\\S+)\\)$" + "#": "^譫妄獎勵類型:傳奇道具 \\(×(\\S+)\\)$" } } }, - "delirium_reward_maps": { + "delirium_reward_fossils": { "text": { "1": { - "#": "^Delirium Reward Type: Map Items \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: Fossils \\(×(\\S+)\\)$" }, "2": { - "#": "^Tipo de Recompensa Delirium: Mapas \\(×(\\S+)\\)$" + "#": "^Tipo de Recompensa Delirium: Fósseis \\(×(\\S+)\\)$" }, "3": { - "#": "^Вид наград Делириума: Карты \\(×(\\S+)\\)$" + "#": "^Вид наград Делириума: Ископаемые \\(×(\\S+)\\)$" }, "4": { - "#": "^Delirium Reward Type: ไอเทมแผนที่ \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: ฟอสซิล \\(×(\\S+)\\)$" }, "5": { - "#": "^Delirium-Belohnungstyp: Kartengegenstände \\(×(\\S+)\\)$" + "#": "^Delirium-Belohnungstyp: Fossilien \\(×(\\S+)\\)$" }, "6": { - "#": "^Type de récompense Delirium : Objets de Carte \\(×(\\S+)\\)$" + "#": "^Type de récompense Delirium : Fossiles \\(×(\\S+)\\)$" }, "7": { - "#": "^Tipo de recompensa de Delirium: Objetos de mapa \\(×(\\S+)\\)$" + "#": "^Tipo de recompensa de Delirium: Fósiles \\(×(\\S+)\\)$" }, "8": { - "#": "^환영 보상 유형: 지도 아이템 \\(×(\\S+)\\)$" + "#": "^환영 보상 유형: 화석 \\(×(\\S+)\\)$" }, "10": { - "#": "^譫妄獎勵類型:地圖 \\(×(\\S+)\\)$" + "#": "^譫妄獎勵類型:化石 \\(×(\\S+)\\)$" } } }, - "delirium_reward_uniques": { + "delirium_reward_maps": { "text": { "1": { - "#": "^Delirium Reward Type: Unique Items \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: Map Items \\(×(\\S+)\\)$" }, "2": { - "#": "^Tipo de Recompensa Delirium: Itens Únicos \\(×(\\S+)\\)$" + "#": "^Tipo de Recompensa Delirium: Mapas \\(×(\\S+)\\)$" }, "3": { - "#": "^Вид наград Делириума: Уникальные предметы \\(×(\\S+)\\)$" + "#": "^Вид наград Делириума: Карты \\(×(\\S+)\\)$" }, "4": { - "#": "^Delirium Reward Type: ไอเทมยูนิค \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: ไอเทมแผนที่ \\(×(\\S+)\\)$" }, "5": { - "#": "^Delirium-Belohnungstyp: Einzigartige Gegenstände \\(×(\\S+)\\)$" + "#": "^Delirium-Belohnungstyp: Kartengegenstände \\(×(\\S+)\\)$" }, "6": { - "#": "^Type de récompense Delirium : Objets uniques \\(×(\\S+)\\)$" + "#": "^Type de récompense Delirium : Objets de Carte \\(×(\\S+)\\)$" }, "7": { - "#": "^Tipo de recompensa de Delirium: Objetos únicos \\(×(\\S+)\\)$" + "#": "^Tipo de recompensa de Delirium: Objetos de mapa \\(×(\\S+)\\)$" }, "8": { - "#": "^환영 보상 유형: 고유 아이템 \\(×(\\S+)\\)$" + "#": "^환영 보상 유형: 지도 아이템 \\(×(\\S+)\\)$" }, "10": { - "#": "^譫妄獎勵類型:傳奇道具 \\(×(\\S+)\\)$" + "#": "^譫妄獎勵類型:地圖 \\(×(\\S+)\\)$" } } }, - "delirium_reward_labyrinth": { + "delirium_reward_armour": { "text": { "1": { - "#": "^Delirium Reward Type: Labyrinth Items \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: Armour \\(×(\\S+)\\)$" }, "2": { - "#": "^Tipo de Recompensa Delirium: Itens do Labirinto \\(×(\\S+)\\)$" + "#": "^Tipo de Recompensa Delirium: Armaduras \\(×(\\S+)\\)$" }, "3": { - "#": "^Вид наград Делириума: Предметы Лабиринта \\(×(\\S+)\\)$" + "#": "^Вид наград Делириума: Доспехи \\(×(\\S+)\\)$" }, "4": { - "#": "^Delirium Reward Type: ไอเทมจากเขาวงกต \\(×(\\S+)\\)$" + "#": "^Delirium Reward Type: ชุดเกราะ \\(×(\\S+)\\)$" }, "5": { - "#": "^Delirium-Belohnungstyp: Labyrinth-Gegenstände \\(×(\\S+)\\)$" + "#": "^Delirium-Belohnungstyp: Rüstung \\(×(\\S+)\\)$" }, "6": { - "#": "^Type de récompense Delirium : Objets du Labyrinthe \\(×(\\S+)\\)$" + "#": "^Type de récompense Delirium : Pièces d'armure \\(×(\\S+)\\)$" }, "7": { - "#": "^Tipo de recompensa de Delirium: Objetos de Laberinto \\(×(\\S+)\\)$" + "#": "^Tipo de recompensa de Delirium: Armadura \\(×(\\S+)\\)$" }, "8": { - "#": "^환영 보상 유형: 미궁 아이템 \\(×(\\S+)\\)$" + "#": "^환영 보상 유형: 방어구 \\(×(\\S+)\\)$" }, "10": { - "#": "^譫妄獎勵類型:迷宮之物 \\(×(\\S+)\\)$" + "#": "^譫妄獎勵類型:護甲 \\(×(\\S+)\\)$" } } }, From 4b74749a48398ef3f12f0b87e4f546af3925016a Mon Sep 17 00:00:00 2001 From: Kyusung4698 Date: Thu, 26 Mar 2020 23:02:09 +0100 Subject: [PATCH 7/7] 0.6.14 (2020-03-26) --- README.md | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index b629070d..0c837ee7 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ ![GitHub Release Date](https://img.shields.io/github/release-date/Kyusung4698/PoE-Overlay) Become a Patron -# PoE Overlay 0.6.13 +# PoE Overlay 0.6.14 An Overlay for Path of Exile. The ***core aspect*** is to blend in with the game. Built with Electron and Angular. @@ -73,11 +73,11 @@ These instructions will set you up to run and enjoy the overlay. #### Installing 1. Head over to [Releases](https://github.com/Kyusung4698/PoE-Overlay/releases) and download one of the following files - 1. `poe-overlay-Setup-0.6.13.exe` to install locally. This supports auto update/ auto launch. - 2. `poe-overlay-0.6.13.exe` portable version. This does not support auto update/ auto launch. + 1. `poe-overlay-Setup-0.6.14.exe` to install locally. This supports auto update/ auto launch. + 2. `poe-overlay-0.6.14.exe` portable version. This does not support auto update/ auto launch. 2. Run either of your downloaded file 3. Start Path of Exile -4. Wait until you can see `PoE Overlay 0.6.13` in the bottom left corner +4. Wait until you can see `PoE Overlay 0.6.14` in the bottom left corner 5. Hit `f7` and set `Language` and `League` to meet your game settings #### Shortcuts diff --git a/package.json b/package.json index b5de4b69..480e1c84 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "poe-overlay", - "version": "0.6.13", + "version": "0.6.14", "private": true, "description": "A Overlay for Path of Exile. Built with Electron and Angular.", "main": "main.js",