From fff48e067927e31be1826aac2a1841f3caa6ba2e Mon Sep 17 00:00:00 2001 From: Borislav Kulov Date: Tue, 20 Nov 2018 15:44:43 +0200 Subject: [PATCH 01/18] fix(grid): Fix exception when col width in numbers (#3020) --- .../src/lib/grids/column.component.ts | 2 +- .../src/lib/grids/grid/column-group.spec.ts | 36 ++++++++++++++++++- 2 files changed, 36 insertions(+), 2 deletions(-) diff --git a/projects/igniteui-angular/src/lib/grids/column.component.ts b/projects/igniteui-angular/src/lib/grids/column.component.ts index 392a2d04947..4ed4b794719 100644 --- a/projects/igniteui-angular/src/lib/grids/column.component.ts +++ b/projects/igniteui-angular/src/lib/grids/column.component.ts @@ -1347,7 +1347,7 @@ export class IgxColumnGroupComponent extends IgxColumnComponent implements After return acc; } - if (val.width && val.width.indexOf('%') !== -1) { + if (typeof val.width === 'string' && val.width.indexOf('%') !== -1) { isChildrenWidthInPercent = true; } diff --git a/projects/igniteui-angular/src/lib/grids/grid/column-group.spec.ts b/projects/igniteui-angular/src/lib/grids/grid/column-group.spec.ts index d131d7a4cac..e47f0fb7dcf 100644 --- a/projects/igniteui-angular/src/lib/grids/grid/column-group.spec.ts +++ b/projects/igniteui-angular/src/lib/grids/grid/column-group.spec.ts @@ -37,7 +37,8 @@ describe('IgxGrid - multi-column headers', () => { EmptyColGridComponent, OneColPerGroupGridComponent, NestedColumnGroupsGridComponent, - DynamicGridComponent + DynamicGridComponent, + NumberColWidthGridComponent ], imports: [ NoopAnimationsModule, @@ -1378,6 +1379,13 @@ describe('IgxGrid - multi-column headers', () => { const colsCount = 2; // 1 col group and 1 col expect(grid.onColumnInit.emit).toHaveBeenCalledTimes(colsCount); }); + + fit('Should not throw exception if multi-column header columns width is set as number', () => { + expect(() => { + const fixture = TestBed.createComponent(NumberColWidthGridComponent); + fixture.detectChanges(); + }).not.toThrow(); + }); }); @Component({ @@ -2006,6 +2014,32 @@ export class DynamicGridComponent { data = SampleTestData.contactInfoDataFull(); } +@Component({ + template: ` + + + + + + ` +}) +export class NumberColWidthGridComponent { + @ViewChild(IgxGridComponent, { read: IgxGridComponent }) + grid: IgxGridComponent; + + data = SampleTestData.contactInfoDataFull(); + + columns = [ + { field: 'ID', width: 100 }, + { field: 'CompanyName', width: 200 }, + { field: 'ContactName', width: 150 }, + { field: 'City', width: 100 }, + ]; +} + function getColGroup(grid: IgxGridComponent, headerName: string): IgxColumnGroupComponent { const colGroups = grid.columnList.filter(c => c.columnGroup && c.header === headerName); if (colGroups.length === 0) { From 89c031a8f17815ff672f1b0c924be4931b52c1d5 Mon Sep 17 00:00:00 2001 From: Borislav Kulov Date: Wed, 21 Nov 2018 15:37:04 +0200 Subject: [PATCH 02/18] chore(*): Remove f from test --- .../igniteui-angular/src/lib/grids/grid/column-group.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/projects/igniteui-angular/src/lib/grids/grid/column-group.spec.ts b/projects/igniteui-angular/src/lib/grids/grid/column-group.spec.ts index e47f0fb7dcf..78a0b400c75 100644 --- a/projects/igniteui-angular/src/lib/grids/grid/column-group.spec.ts +++ b/projects/igniteui-angular/src/lib/grids/grid/column-group.spec.ts @@ -1380,7 +1380,7 @@ describe('IgxGrid - multi-column headers', () => { expect(grid.onColumnInit.emit).toHaveBeenCalledTimes(colsCount); }); - fit('Should not throw exception if multi-column header columns width is set as number', () => { + it('Should not throw exception if multi-column header columns width is set as number', () => { expect(() => { const fixture = TestBed.createComponent(NumberColWidthGridComponent); fixture.detectChanges(); From 74fc3ccf9b0096481928ab76f531f541a0bdd76a Mon Sep 17 00:00:00 2001 From: Hristo Popov Date: Thu, 22 Nov 2018 10:20:41 +0200 Subject: [PATCH 03/18] Prevenitng redundant method calls on value property when initialized with an empty string(master) (#3042) * fix(date-picker): Prevenitng redundant method calls on value. #3021 * fix(date-picker): Changing the check for value property on selection. #3021 --- .../src/lib/date-picker/date-picker.component.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/projects/igniteui-angular/src/lib/date-picker/date-picker.component.ts b/projects/igniteui-angular/src/lib/date-picker/date-picker.component.ts index 7e0182bdf3b..d2b8770aab9 100644 --- a/projects/igniteui-angular/src/lib/date-picker/date-picker.component.ts +++ b/projects/igniteui-angular/src/lib/date-picker/date-picker.component.ts @@ -599,7 +599,7 @@ export class IgxDatePickerComponent implements ControlValueAccessor, EditorProvi * @hidden */ public handleSelection(date: Date) { - if (this.value !== null && this.value !== undefined) { + if (this.value) { date.setHours(this.value.getHours()); date.setMinutes(this.value.getMinutes()); date.setSeconds(this.value.getSeconds()); From db22658216597b0fbdc4f61c58f18a84615423c3 Mon Sep 17 00:00:00 2001 From: Aleksandar Kamenov Date: Thu, 22 Nov 2018 10:34:28 +0200 Subject: [PATCH 04/18] fix(gulp): adopt type/sass doc cmds with the new repo struct Closes #3103 --- gulpfile.js | 33 ++++++++++++++++++++++----------- package.json | 2 +- 2 files changed, 23 insertions(+), 12 deletions(-) diff --git a/gulpfile.js b/gulpfile.js index 227294b645b..1ef8c9e4dca 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -244,12 +244,12 @@ const TRANSLATIONS_REPO = { LINK: `https://github.com/IgniteUI/igniteui-angular-api-ja` }; -const DOCS_OUTPUT_PATH = './dist/igniteui-angular/docs/' +const DOCS_OUTPUT_PATH = 'dist\\igniteui-angular\\docs' const TYPEDOC = { - EXPORT_JSON_PATH: 'dist/igniteui-angular/docs/typescript-exported', - PROJECT_PATH: 'projects/igniteui-angular/src', - TEMPLATE_STRINGS_PATH: 'extras/template/strings/shell-strings.json' + EXPORT_JSON_PATH: 'dist\\igniteui-angular\\docs\\typescript-exported', + PROJECT_PATH: 'projects\\igniteui-angular\\src', + TEMPLATE_STRINGS_PATH: 'extras\\template\\strings\\shell-strings.json' } gulp.task('typedoc-build:theme', ['typedoc-build'], @@ -281,17 +281,17 @@ gulp.task('typedoc:clean-docs-dir', () => { }); gulp.task('typedoc-build:doc:ja:localization', ['typedoc-build', 'typedoc:clean-docs-dir', 'copy-translations:localization:repo'], - shell.task(`typedoc ${TYPEDOC.PROJECT_PATH} --generate-from-json ${DOCS_OUTPUT_PATH}/${TRANSLATIONS_REPO.NAME}/ja/ --templateStrings ${TYPEDOC.TEMPLATE_STRINGS_PATH} --localize jp`) + shell.task(`typedoc ${TYPEDOC.PROJECT_PATH} --generate-from-json ${DOCS_OUTPUT_PATH}\\${TRANSLATIONS_REPO.NAME}\\typedoc\\ja --templateStrings ${TYPEDOC.TEMPLATE_STRINGS_PATH} --localize jp`) ); gulp.task('typedoc-build:doc:en:localization', ['typedoc-build', 'typedoc:clean-docs-dir', 'copy-translations:localization:repo'], - shell.task(`typedoc ${TYPEDOC.PROJECT_PATH} --generate-from-json ${DOCS_OUTPUT_PATH}/${TRANSLATIONS_REPO.NAME}/en/ --localize en`) + shell.task(`typedoc ${TYPEDOC.PROJECT_PATH} --generate-from-json ${DOCS_OUTPUT_PATH}\\${TRANSLATIONS_REPO.NAME}\\typedoc\\en --localize en`) ); const SASSDOC = { - PROJECT_PATH: "projects/igniteui-angular/src/lib/core/styles", - DEST: "./dist/igniteui-angular/docs/sass", - OPTIONS: JSON.parse(fs.readFileSync('./.sassdocrc', 'utf8')), + PROJECT_PATH: "projects\\igniteui-angular\\src\\lib\\core\\styles", + DEST: "dist\\igniteui-angular\\docs\\sass", + OPTIONS: JSON.parse(fs.readFileSync('.\\.sassdocrc', 'utf8')), } gulp.task('sassdoc:clean-docs-dir', () => { @@ -309,15 +309,26 @@ gulp.task('sassdoc-build:export', () => { gulp.task('sassdoc-build:import', () => { const options = SASSDOC.OPTIONS; options.render = argv.render; - + return gulp.src(`${SASSDOC.PROJECT_PATH}/**/*.scss`) .pipe(sassdoc(options)) }); gulp.task('sassdoc-build:doc:ja:localizaiton', ['sassdoc:clean-docs-dir', 'copy-translations:localization:repo'], () => { + const pathTranslations = path.join(DOCS_OUTPUT_PATH, TRANSLATIONS_REPO.NAME, 'sassdoc', 'ja'); + const options = SASSDOC.OPTIONS; + options.render = argv.render; + options.jsonDir = pathTranslations; + + return gulp.src(`${SASSDOC.PROJECT_PATH}/**/*.scss`) + .pipe(sassdoc(options)); +}); + +gulp.task('sassdoc-build:doc:en:localizaiton', ['sassdoc:clean-docs-dir', 'copy-translations:localization:repo'], () => { + const pathTranslations = path.join(DOCS_OUTPUT_PATH, TRANSLATIONS_REPO.NAME, 'sassdoc', 'en'); const options = SASSDOC.OPTIONS; options.render = argv.render; - options.jsonDir = `${DOCS_OUTPUT_PATH}/${TRANSLATIONS_REPO.NAME}/sassdoc/jp/`; + options.jsonDir = pathTranslations; return gulp.src(`${SASSDOC.PROJECT_PATH}/**/*.scss`) .pipe(sassdoc(options)); diff --git a/package.json b/package.json index 26fbd693ed4..8905c7c58b2 100644 --- a/package.json +++ b/package.json @@ -45,7 +45,6 @@ "hammerjs": "^2.0.8", "jszip": "^3.1.5", "rxjs": "^6.2.2", - "sassdoc-plugin-localization": "^1.0.2-beta.1", "web-animations-js": "^2.3.1", "zone.js": "^0.8.26" }, @@ -86,6 +85,7 @@ "ng-packagr": "^3.0.6", "protractor": "~5.3.0", "sassdoc": "^2.5.0", + "sassdoc-plugin-localization": "^1.0.3", "stylelint": "^8.4.0", "stylelint-scss": "^2.5.0", "themeleon": "^3.0.2", From e9c02ae2e0994880022e1221840659f003ebaacb Mon Sep 17 00:00:00 2001 From: Svetla Boykova Date: Thu, 22 Nov 2018 10:41:41 +0200 Subject: [PATCH 05/18] fix(tabs): Resizing issue fixed #3030 (#3070) --- .../src/lib/tabs/tabs-group.component.ts | 20 ++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/projects/igniteui-angular/src/lib/tabs/tabs-group.component.ts b/projects/igniteui-angular/src/lib/tabs/tabs-group.component.ts index 9e9d879a826..3762ae7068d 100644 --- a/projects/igniteui-angular/src/lib/tabs/tabs-group.component.ts +++ b/projects/igniteui-angular/src/lib/tabs/tabs-group.component.ts @@ -130,9 +130,7 @@ export class IgxTabsGroupComponent implements AfterContentInit, AfterViewChecked @HostListener('window:resize', ['$event']) public onResize(event) { if (this.isSelected) { - const contentOffset = this._tabs.tabsContainer.nativeElement.offsetWidth * this.index; - this._tabs.contentsContainer.nativeElement.style.transitionDuration = `0s`; - this._tabs.contentsContainer.nativeElement.style.transform = `translate(${-contentOffset}px)`; + this.transformContentAnimation(0); } } @@ -151,11 +149,15 @@ export class IgxTabsGroupComponent implements AfterContentInit, AfterViewChecked public ngAfterViewChecked() { this._element.nativeElement.setAttribute('aria-labelledby', `igx-tab-item-${this.index}`); this._element.nativeElement.setAttribute('id', `igx-tabs__group-${this.index}`); + + if (this.isSelected) { + this.transformContentAnimation(0); + } } /** * A method that sets the focus on a tab. - * @memberOf {@link IgxTabGroupComponent} + * @memberof {@link IgxTabsGroupComponent} *```typescript *@ViewChild("MyChild") *public tab : IgxTabsGroupComponent; @@ -192,11 +194,15 @@ export class IgxTabsGroupComponent implements AfterContentInit, AfterViewChecked this._tabs.scrollElement(tabElement, true); } - const contentOffset = this._tabs.tabsContainer.nativeElement.offsetWidth * this.index; - this._tabs.contentsContainer.nativeElement.style.transitionDuration = `0.2s`; - this._tabs.contentsContainer.nativeElement.style.transform = `translate(${-contentOffset}px)`; + this.transformContentAnimation(0.2); this._tabs.selectedIndicator.nativeElement.style.width = `${tabElement.offsetWidth}px`; this._tabs.selectedIndicator.nativeElement.style.transform = `translate(${tabElement.offsetLeft}px)`; } + + private transformContentAnimation(duration: number) { + const contentOffset = this._tabs.tabsContainer.nativeElement.offsetWidth * this.index; + this._tabs.contentsContainer.nativeElement.style.transitionDuration = `${duration}s`; + this._tabs.contentsContainer.nativeElement.style.transform = `translate(${-contentOffset}px)`; + } } From bdf2d4ec02ea25ab9cd70ba88d5762af7bf0a27d Mon Sep 17 00:00:00 2001 From: Aleksandar Kamenov Date: Thu, 22 Nov 2018 11:42:51 +0200 Subject: [PATCH 06/18] chore(sassdoc): define sassdoc build commands Closes #3130 --- gulpfile.js | 4 ++++ package.json | 12 ++++++++---- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/gulpfile.js b/gulpfile.js index 1ef8c9e4dca..b99b5bf5def 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -317,6 +317,8 @@ gulp.task('sassdoc-build:import', () => { gulp.task('sassdoc-build:doc:ja:localizaiton', ['sassdoc:clean-docs-dir', 'copy-translations:localization:repo'], () => { const pathTranslations = path.join(DOCS_OUTPUT_PATH, TRANSLATIONS_REPO.NAME, 'sassdoc', 'ja'); const options = SASSDOC.OPTIONS; + + options.lang = 'ja'; options.render = argv.render; options.jsonDir = pathTranslations; @@ -327,6 +329,8 @@ gulp.task('sassdoc-build:doc:ja:localizaiton', ['sassdoc:clean-docs-dir', 'copy- gulp.task('sassdoc-build:doc:en:localizaiton', ['sassdoc:clean-docs-dir', 'copy-translations:localization:repo'], () => { const pathTranslations = path.join(DOCS_OUTPUT_PATH, TRANSLATIONS_REPO.NAME, 'sassdoc', 'en'); const options = SASSDOC.OPTIONS; + + options.lang = 'en'; options.render = argv.render; options.jsonDir = pathTranslations; diff --git a/package.json b/package.json index 8905c7c58b2..c514ecb6db8 100644 --- a/package.json +++ b/package.json @@ -15,18 +15,22 @@ "build:lib": "ng build igniteui-angular --prod && gulp build-style", "build:style": "gulp build-style", "build:migration": "gulp copy-migrations && tsc --listEmittedFiles --project ./projects/igniteui-angular/migrations/tsconfig.json", - "build:docs:export": "gulp typedoc-build:export", - "build:docs:import": "gulp typedoc-build:import", "build:docs": "gulp typedoc-build:theme && sassdoc projects/igniteui-angular/src/lib/core/styles", "lint:lib": "tslint 'projects/igniteui-angular/src/**/*.ts' && stylelint 'projects/igniteui-angular/src/lib/core/styles'", "typedoc:dev": "gulp typedoc-serve --silent", + "typedoc-build:export": "gulp typedoc-build:export", + "typedoc-build:import": "gulp typedoc-build:import", "sassdoc-build:export": "gulp sassdoc-build:export --convert true && gulp sassdoc:clean-docs-dir", "sassdoc-build:import": "gulp sassdoc-build:import --render true", - "postinstall": "gulp copy-git-hooks", "build:typedoc:ja:production": "set NODE_ENV=production && gulp typedoc-build:doc:ja:localization && gulp clean-translations:localization:repo", "build:typedoc:ja:staging": "set NODE_ENV=staging && gulp typedoc-build:doc:ja:localization && gulp clean-translations:localization:repo", "build:typedoc:en:production": "set NODE_ENV=production && gulp typedoc-build:doc:en:localization && gulp clean-translations:localization:repo", - "build:typedoc:en:staging": "set NODE_ENV=staging && gulp typedoc-build:doc:en:localization && gulp clean-translations:localization:repo" + "build:typedoc:en:staging": "set NODE_ENV=staging && gulp typedoc-build:doc:en:localization && gulp clean-translations:localization:repo", + "build:sassdoc:en:production": "set NODE_ENV=production && gulp sassdoc-build:doc:en:localizaiton --render true && gulp clean-translations:localization:repo", + "build:sassdoc:en:staging": "set NODE_ENV=staging && gulp sassdoc-build:doc:en:localizaiton --render true && gulp clean-translations:localization:repo", + "build:sassdoc:ja:production": "set NODE_ENV=production && gulp sassdoc-build:doc:ja:localizaiton --render true && gulp clean-translations:localization:repo", + "build:sassdoc:ja:staging": "set NODE_ENV=staging && gulp sassdoc-build:doc:ja:localizaiton --render true && gulp clean-translations:localization:repo", + "postinstall": "gulp copy-git-hooks" }, "private": true, "dependencies": { From 6c0fc8a0b832a8232ed32eea31325f0477a0b18c Mon Sep 17 00:00:00 2001 From: Martin Kamenov Date: Thu, 22 Nov 2018 11:58:32 +0200 Subject: [PATCH 07/18] Added title to chip in groupBy area (#3055) * chore(*): Added title attribute. * chore(*): Added initial value of the chip title. * chore(*): Using renderer to change the title of the chip. * chore(*): Using getter and setter instead of renderer. * chore(*): Added tests for chip title. * chore(*): Removed viewChild from data input. * chore(*): Improved documentation of chip's title. * chore(*): Added title atribute only to chips in group-by area. * chore(*): Added tests to validate that chips in gropby area have title. * chore(*): Changed type of property binding. --- .../src/lib/chips/chip.component.ts | 1 - .../src/lib/chips/chip.spec.ts | 5 +++-- .../src/lib/grids/grid/grid.component.html | 4 ++-- .../src/lib/grids/grid/grid.component.ts | 9 ++++++++- .../src/lib/grids/grid/grid.groupby.spec.ts | 18 ++++++++++++++++++ 5 files changed, 31 insertions(+), 6 deletions(-) diff --git a/projects/igniteui-angular/src/lib/chips/chip.component.ts b/projects/igniteui-angular/src/lib/chips/chip.component.ts index bbf33e33a45..3c6735b0939 100644 --- a/projects/igniteui-angular/src/lib/chips/chip.component.ts +++ b/projects/igniteui-angular/src/lib/chips/chip.component.ts @@ -1,5 +1,4 @@ import { - AfterViewInit, Component, ChangeDetectorRef, EventEmitter, diff --git a/projects/igniteui-angular/src/lib/chips/chip.spec.ts b/projects/igniteui-angular/src/lib/chips/chip.spec.ts index 20001858f14..892dab515d5 100644 --- a/projects/igniteui-angular/src/lib/chips/chip.spec.ts +++ b/projects/igniteui-angular/src/lib/chips/chip.spec.ts @@ -20,7 +20,8 @@ import { configureTestSuite } from '../test-utils/configure-suite'; template: ` {{chip.text}} drag_indicator @@ -34,7 +35,7 @@ class TestChipComponent { { id: 'Country', text: 'Country', removable: false, selectable: false, draggable: true }, { id: 'City', text: 'City', removable: true, selectable: true, draggable: true, density: 'comfortable' }, { id: 'Town', text: 'Town', removable: true, selectable: true, draggable: true, density: 'compact' }, - { id: 'FirstName', text: 'First Name', removable: true , selectable: true, draggable: true, density: 'cosy' }, + { id: 'FirstName', text: 'First Name', removable: true , selectable: true, draggable: true, density: 'cosy' } ]; constructor(public cdr: ChangeDetectorRef) { } diff --git a/projects/igniteui-angular/src/lib/grids/grid/grid.component.html b/projects/igniteui-angular/src/lib/grids/grid/grid.component.html index bc7df6fc98a..aba84aec6df 100644 --- a/projects/igniteui-angular/src/lib/grids/grid/grid.component.html +++ b/projects/igniteui-angular/src/lib/grids/grid/grid.component.html @@ -23,9 +23,9 @@
- - {{ getColumnByName(expr.fieldName).header || expr.fieldName }} + {{ getGroupByChipTitle(expr) }} {{ expr.dir == 1 ? 'arrow_upward' : 'arrow_downward' }} diff --git a/projects/igniteui-angular/src/lib/grids/grid/grid.component.ts b/projects/igniteui-angular/src/lib/grids/grid/grid.component.ts index 20482d444c0..1b9d51a3c25 100644 --- a/projects/igniteui-angular/src/lib/grids/grid/grid.component.ts +++ b/projects/igniteui-angular/src/lib/grids/grid/grid.component.ts @@ -801,7 +801,7 @@ export class IgxGridComponent extends IgxGridBaseComponent implements OnInit, Do /** * @hidden */ - public get dropAreaTemplateResolved(): TemplateRef { + public get dropAreaTemplateResolved(): TemplateRef { if (this.dropAreaTemplate) { return this.dropAreaTemplate; } else { @@ -809,6 +809,13 @@ export class IgxGridComponent extends IgxGridBaseComponent implements OnInit, Do } } + /** + * @hidden + */ + public getGroupByChipTitle(expression: IGroupingExpression): string { + return this.getColumnByName(expression.fieldName).header || expression.fieldName; + } + /** * @hidden */ diff --git a/projects/igniteui-angular/src/lib/grids/grid/grid.groupby.spec.ts b/projects/igniteui-angular/src/lib/grids/grid/grid.groupby.spec.ts index aa86c221b7f..8ea00205662 100644 --- a/projects/igniteui-angular/src/lib/grids/grid/grid.groupby.spec.ts +++ b/projects/igniteui-angular/src/lib/grids/grid/grid.groupby.spec.ts @@ -2404,6 +2404,7 @@ describe('IgxGrid - GroupBy', () => { expect(chips.length).toBe(1); const chipText = chips[0].querySelector('div.igx-chip__content').innerText; expect(chipText).toEqual('Custom Header Text'); + expect(chips[0].getAttribute('title')).toEqual('Custom Header Text'); })); it('should update grid sizes when columns are grouped/ungrouped.', fakeAsync(() => { @@ -2771,6 +2772,23 @@ describe('IgxGrid - GroupBy', () => { expect(gridElement.querySelectorAll('.igx-grid__grouparea').length).toEqual(0); })); + it('should add title attribute to chips when column is grouped', () => { + const fix = TestBed.createComponent(DefaultGridComponent); + fix.detectChanges(); + + const exprs: ISortingExpression[] = [ + { fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: true, strategy: DefaultSortingStrategy.instance() }, + { fieldName: 'Released', dir: SortingDirection.Desc, ignoreCase: true, strategy: DefaultSortingStrategy.instance() } + ]; + const grid = fix.componentInstance.instance; + grid.groupBy(exprs); + fix.detectChanges(); + + const chips = fix.nativeElement.querySelectorAll('igx-chip'); + expect(chips[0].getAttribute('title')).toEqual('ProductName'); + expect(chips[1].getAttribute('title')).toEqual('Released'); + }); + function sendInput(element, text, fix) { element.nativeElement.value = text; element.nativeElement.dispatchEvent(new Event('input')); From f69d6bfe22df9e8fcb7d5810cefcc151c8f0b692 Mon Sep 17 00:00:00 2001 From: Viktor Slavov Date: Thu, 22 Nov 2018 12:00:21 +0200 Subject: [PATCH 08/18] docs(igxCombo): adding combo displayDensity to Readme and Changelog, #2410 (#3090) --- CHANGELOG.md | 2 ++ projects/igniteui-angular/src/lib/combo/README.md | 1 + 2 files changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 60afaee7c4d..6962d62af56 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,8 @@ All notable changes for each version of this project will be documented in this ## 6.2.1 - `igx-drop-down`: - Added a new property `maxHeight`, defining the max height of the drop down. +- `igx-combo`: + - Added a new input property - `displayDensity`. It allows configuring the `displayDensity` of the combo's `value` and `search` inputs. ## 6.2.0 - Updated typography following the Material guidelines. Type system is now also optional and can be applied via class to the desired containers. [#2112](https://github.com/IgniteUI/igniteui-angular/pull/2112) diff --git a/projects/igniteui-angular/src/lib/combo/README.md b/projects/igniteui-angular/src/lib/combo/README.md index 709944c1117..53907670c09 100644 --- a/projects/igniteui-angular/src/lib/combo/README.md +++ b/projects/igniteui-angular/src/lib/combo/README.md @@ -219,6 +219,7 @@ When igxCombo is opened, allow custom values are enabled and add item button is | `virtualizationState` | defines the current state of the virtualized data. It contains `startIndex` and `chunkSize` | `IForOfState` | | `totalItemCount` | total count of the virtual data items, when using remote service | number | | `width ` | defines combo width | string | +| `displayDensity` | defines the display density of the combo . Available options are `cosy`, `compact`, `comfortable` | `DisplayDensity | string` | | `itemsMaxHeight ` | defines drop down maximum height | number | | `itemsWidth ` | defines drop down width | string | | `itemHeight ` | defines drop down item height | number | From fe2eeffb4829a62b77f30beacc38723c258de158 Mon Sep 17 00:00:00 2001 From: Radoslav Karaivanov Date: Thu, 22 Nov 2018 13:50:21 +0200 Subject: [PATCH 09/18] build(*): Bump version to Angular 7 (#3000) * build(*): Bump version to Angular 7 * build(*): Update ng-packager json, fix tests Fix failing test due to TS 3.1.6 DOM type definitions. Reverting `jasmine` back to 3.2.x as 3.3.x breaks the karma-jasmine plugin * build(docs): Fix dependencies for localization plugins * ci(*): Don't chocke when npm ci is invoked * build(docs): Typedoc npm scripts --- package-lock.json | 7416 +++++++++-------- package.json | 198 +- projects/igniteui-angular/package.json | 10 +- .../lib/directives/toggle/toggle.directive.ts | 13 +- .../src/lib/services/overlay/overlay.spec.ts | 12 +- src/polyfills.ts | 2 +- 6 files changed, 3828 insertions(+), 3823 deletions(-) diff --git a/package-lock.json b/package-lock.json index 03328272ed3..7cd37d7cd9f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5,292 +5,291 @@ "requires": true, "dependencies": { "@angular-devkit/architect": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.7.1.tgz", - "integrity": "sha512-eJ9hXQ4JC8yJKmCjShikg48IVqYh/0laJ2tnfwrILtwbeM1mDYtpjR5NNUvovR+voYZJyI7uHc/XRu9CCz4NhA==", + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.10.5.tgz", + "integrity": "sha512-QMR09kIWD8YR9VgNQZXMGASV1UbAtygSdXokBj3njNtTif7xdb+bxo6VQBRqjpB8ZZGtUsE+LdJ4LeKafRnzRQ==", "dev": true, "requires": { - "@angular-devkit/core": "0.7.1", - "rxjs": "^6.0.0" + "@angular-devkit/core": "7.0.5", + "rxjs": "6.3.3" } }, "@angular-devkit/build-angular": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-0.7.1.tgz", - "integrity": "sha512-GolB7Av3zTfQ23wDbuMR1b049vRlEVGtfIQCATE05yGmet+w+sogN2/YgRX3dPtG/tEhjJTbTIe5kV0RCVVlqQ==", - "dev": true, - "requires": { - "@angular-devkit/architect": "0.7.1", - "@angular-devkit/build-optimizer": "0.7.1", - "@angular-devkit/build-webpack": "0.7.1", - "@angular-devkit/core": "0.7.1", - "@ngtools/webpack": "6.1.1", - "ajv": "~6.4.0", - "autoprefixer": "^8.4.1", - "circular-dependency-plugin": "^5.0.2", - "clean-css": "^4.1.11", - "copy-webpack-plugin": "^4.5.2", - "file-loader": "^1.1.11", - "glob": "^7.0.3", - "html-webpack-plugin": "^3.0.6", - "istanbul": "^0.4.5", - "istanbul-instrumenter-loader": "^3.0.1", - "karma-source-map-support": "^1.2.0", - "less": "^3.0.4", - "less-loader": "^4.1.0", - "license-webpack-plugin": "^1.3.1", - "mini-css-extract-plugin": "~0.4.0", - "minimatch": "^3.0.4", - "node-sass": "^4.9.1", - "opn": "^5.1.0", - "parse5": "^4.0.0", - "portfinder": "^1.0.13", - "postcss": "^6.0.22", - "postcss-import": "^11.1.0", - "postcss-loader": "^2.1.5", - "postcss-url": "^7.3.2", - "raw-loader": "^0.5.1", - "rxjs": "^6.0.0", - "sass-loader": "~6.0.7", - "source-map-loader": "^0.2.3", - "source-map-support": "^0.5.0", - "stats-webpack-plugin": "^0.6.2", - "style-loader": "^0.21.0", - "stylus": "^0.54.5", - "stylus-loader": "^3.0.2", - "tree-kill": "^1.2.0", - "uglifyjs-webpack-plugin": "^1.2.5", - "url-loader": "^1.0.1", - "webpack": "~4.9.2", - "webpack-dev-middleware": "^3.1.3", - "webpack-dev-server": "^3.1.4", - "webpack-merge": "^4.1.2", - "webpack-sources": "^1.1.0", - "webpack-subresource-integrity": "^1.1.0-rc.4" + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-0.10.5.tgz", + "integrity": "sha512-I32FrMnYO5XU33ifOwhefO0tVCD+xHcTcAIprv5MFbSl3sGXI/CVsh9DGjWfyHlUaMlLUOpHQ+VcgeFGTcCVpA==", + "dev": true, + "requires": { + "@angular-devkit/architect": "0.10.5", + "@angular-devkit/build-optimizer": "0.10.5", + "@angular-devkit/build-webpack": "0.10.5", + "@angular-devkit/core": "7.0.5", + "@ngtools/webpack": "7.0.5", + "ajv": "6.5.3", + "autoprefixer": "9.1.5", + "circular-dependency-plugin": "5.0.2", + "clean-css": "4.2.1", + "copy-webpack-plugin": "4.5.4", + "file-loader": "2.0.0", + "glob": "7.1.3", + "istanbul": "0.4.5", + "istanbul-instrumenter-loader": "3.0.1", + "karma-source-map-support": "1.3.0", + "less": "3.8.1", + "less-loader": "4.1.0", + "license-webpack-plugin": "2.0.2", + "loader-utils": "1.1.0", + "mini-css-extract-plugin": "0.4.3", + "minimatch": "3.0.4", + "node-sass": "4.9.3", + "opn": "5.3.0", + "parse5": "4.0.0", + "portfinder": "1.0.17", + "postcss": "7.0.5", + "postcss-import": "12.0.0", + "postcss-loader": "3.0.0", + "raw-loader": "0.5.1", + "rxjs": "6.3.3", + "sass-loader": "7.1.0", + "semver": "5.5.1", + "source-map-loader": "0.2.4", + "source-map-support": "0.5.9", + "speed-measure-webpack-plugin": "^1.2.3", + "stats-webpack-plugin": "0.7.0", + "style-loader": "0.23.0", + "stylus": "0.54.5", + "stylus-loader": "3.0.2", + "terser-webpack-plugin": "1.1.0", + "tree-kill": "1.2.0", + "webpack": "4.19.1", + "webpack-dev-middleware": "3.3.0", + "webpack-dev-server": "3.1.8", + "webpack-merge": "4.1.4", + "webpack-sources": "1.2.0", + "webpack-subresource-integrity": "1.1.0-rc.6" }, "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true, - "optional": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "clean-css": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.1.tgz", + "integrity": "sha512-4ZxI6dy4lrY6FHzfiy1aEOXgu4LIsW2MhwG0VBKdcoGoH/XLFgaHSdLTGr4O8Be6A8r3MOphEiI8Gc1n0ecf3g==", "dev": true, - "optional": true, "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" + "source-map": "~0.6.0" } }, - "node-sass": { - "version": "4.9.2", - "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.9.2.tgz", - "integrity": "sha512-LdxoJLZutx0aQXHtWIYwJKMj+9pTjneTcLWJgzf2XbGu0q5pRNqW5QvFCEdm3mc5rJOdru/mzln5d0EZLacf6g==", + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", "dev": true, - "optional": true, "requires": { - "async-foreach": "^0.1.3", - "chalk": "^1.1.1", - "cross-spawn": "^3.0.0", - "gaze": "^1.0.0", - "get-stdin": "^4.0.1", - "glob": "^7.0.3", - "in-publish": "^2.0.0", - "lodash.assign": "^4.2.0", - "lodash.clonedeep": "^4.3.2", - "lodash.mergewith": "^4.6.0", - "meow": "^3.7.0", - "mkdirp": "^0.5.1", - "nan": "^2.10.0", - "node-gyp": "^3.3.1", - "npmlog": "^4.0.0", - "request": "2.87.0", - "sass-graph": "^2.2.4", - "stdout-stream": "^1.4.0", - "true-case-path": "^1.0.2" + "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" } }, - "request": { - "version": "2.87.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", - "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", + "semver": { + "version": "5.5.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.1.tgz", + "integrity": "sha512-PqpAxfrEhlSUWge8dwIp4tZnQ25DIOthpiaHNIthsjEFQD6EvqUKUDM7L8O2rShkFccYo1VjJR0coWfNkCubRw==", + "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 + }, + "webpack-sources": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.2.0.tgz", + "integrity": "sha512-9BZwxR85dNsjWz3blyxdOhTgtnQvv3OEs5xofI0wPYTwu5kaWxS08UuD1oI7WLBLpRO+ylf0ofnXLXWmGb2WMw==", "dev": true, - "optional": true, "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.6.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.5", - "extend": "~3.0.1", - "forever-agent": "~0.6.1", - "form-data": "~2.3.1", - "har-validator": "~5.0.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.17", - "oauth-sign": "~0.8.2", - "performance-now": "^2.1.0", - "qs": "~6.5.1", - "safe-buffer": "^5.1.1", - "tough-cookie": "~2.3.3", - "tunnel-agent": "^0.6.0", - "uuid": "^3.1.0" + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true, - "optional": true } } }, "@angular-devkit/build-ng-packagr": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-ng-packagr/-/build-ng-packagr-0.7.1.tgz", - "integrity": "sha512-6VE5LsYYH0EClulqwoHOrtl2vEVRE8yahMg1J/XZFmTXdNdh5ph35WW/lbH5f0d+EN1DWdmmpBVpoc8Nf1MNag==", + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-ng-packagr/-/build-ng-packagr-0.10.5.tgz", + "integrity": "sha512-0ZOiQIUP2dxNNFIgeVnrRVpd2eTTEaOUrrY3oKPIgv4r0PZ2IKZTs3cIC2xE73d/rLXknIevPEe8fw0dgJ2rrg==", "dev": true, "requires": { - "@angular-devkit/architect": "0.7.1", - "@angular-devkit/core": "0.7.1", - "rxjs": "^6.0.0" + "@angular-devkit/architect": "0.10.5", + "@angular-devkit/core": "7.0.5", + "rxjs": "6.3.3", + "semver": "5.5.1" + }, + "dependencies": { + "semver": { + "version": "5.5.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.1.tgz", + "integrity": "sha512-PqpAxfrEhlSUWge8dwIp4tZnQ25DIOthpiaHNIthsjEFQD6EvqUKUDM7L8O2rShkFccYo1VjJR0coWfNkCubRw==", + "dev": true + } } }, "@angular-devkit/build-optimizer": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-optimizer/-/build-optimizer-0.7.1.tgz", - "integrity": "sha512-KzuDnrlzpP1ualq8gtq6BhGnhZ4gs9q55Pw/CHDFNUK7f4Ikw0eNyfdfyT5tVSYphgvYb/Msmk7YcyzTveunVw==", + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-optimizer/-/build-optimizer-0.10.5.tgz", + "integrity": "sha512-jhiD/ct7ngzNjT0yNUTT4TUjRzH9ZXdMm3Z4wbTFtKhXfr3bZgvLGKEoq0pIGlnlWq7lrGb8Doue4xcbRKTgmw==", "dev": true, "requires": { - "loader-utils": "^1.1.0", - "source-map": "^0.5.6", - "typescript": "~2.9.1", - "webpack-sources": "^1.1.0" + "loader-utils": "1.1.0", + "source-map": "0.5.6", + "typescript": "3.1.6", + "webpack-sources": "1.2.0" }, "dependencies": { - "typescript": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.9.2.tgz", - "integrity": "sha512-Gr4p6nFNaoufRIY4NMdpQRNmgxVIGMs4Fcu/ujdYk3nAZqk7supzBE9idmvfZIlH/Cuj//dvi+019qEue9lV0w==", + "source-map": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", + "integrity": "sha1-dc449SvwczxafwwRjYEzSiu19BI=", "dev": true + }, + "webpack-sources": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.2.0.tgz", + "integrity": "sha512-9BZwxR85dNsjWz3blyxdOhTgtnQvv3OEs5xofI0wPYTwu5kaWxS08UuD1oI7WLBLpRO+ylf0ofnXLXWmGb2WMw==", + "dev": true, + "requires": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + }, + "dependencies": { + "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 + } + } } } }, "@angular-devkit/build-webpack": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.7.1.tgz", - "integrity": "sha512-GC70ZjSzvgzsMBvxT4ZzupSR2XaGgXizh2gT+l0R+nHe95OmImea0XqB3ph0ogUsgN5keNjh8m0Fr+qb3QNkBA==", + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.10.5.tgz", + "integrity": "sha512-RNhuz/1s6wGVau+dRcQAUbbrt1pexyW8nT/X+uzNd0r/zhOrAPj6ET51Xdkv2V6zaH8frXyPZK9JZL/JrDJsUA==", "dev": true, "requires": { - "@angular-devkit/architect": "0.7.1", - "@angular-devkit/core": "0.7.1", - "rxjs": "^6.0.0" + "@angular-devkit/architect": "0.10.5", + "@angular-devkit/core": "7.0.5", + "rxjs": "6.3.3" } }, "@angular-devkit/core": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-0.7.1.tgz", - "integrity": "sha512-m+j1d+oMZRu0jUN7UyE4C8Kh8YoY9TP6ltjcrO2SzE89mzHg+apY1taf4EzOYKrrCZxw7Q4viPa8EXeF2AJ1cQ==", + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-7.0.5.tgz", + "integrity": "sha512-QaORf9NCnwlHEuMs45Vb/KBf5eO2m+hIdNdIK0MnTaK9SrvhQhg0AFjo2KCPtOjI9eCcvsDz/O7W28CHJrG1iA==", "dev": true, "requires": { - "ajv": "~6.4.0", - "chokidar": "^2.0.3", - "rxjs": "^6.0.0", - "source-map": "^0.5.6" + "ajv": "6.5.3", + "chokidar": "2.0.4", + "fast-json-stable-stringify": "2.0.0", + "rxjs": "6.3.3", + "source-map": "0.7.3" + }, + "dependencies": { + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true + } } }, "@angular-devkit/schematics": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-0.7.1.tgz", - "integrity": "sha512-8G223dq6RgV1tvp3od6mn5TX3VH57OWCN+v6pz4o27pDOQUhxX94VeuetOrhe2oYu4nmcs8epCateG4CJF7phg==", + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-7.0.5.tgz", + "integrity": "sha512-mWtPfBtObXXw5IWnMuOXBLn/Bv2lPxdmSqrCX9chTmxLXlFuv5e6HkzJfuF4BxjRUMaA+OW1qhnsHRJSI+p6sQ==", "dev": true, "requires": { - "@angular-devkit/core": "0.7.1", - "rxjs": "^6.0.0" + "@angular-devkit/core": "7.0.5", + "rxjs": "6.3.3" } }, "@angular/animations": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-6.1.0.tgz", - "integrity": "sha512-9IJs1czyoOlgcaY3QUyQI0XeTFX45Qr/o5qlPrce240gi7TXbdJs3WIbLzxx7BhMf20GholCaOvSS3BZrNlFSA==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-7.0.3.tgz", + "integrity": "sha512-jCRHlt+ghfSnP5a8HKr6R/Adc5Cq7i/mcYsn3V6M2QBpGFCVmy0ZWZa66QOhRaqler8u8EGi1PdoCCoGAZc4OA==", "requires": { "tslib": "^1.9.0" } }, "@angular/cli": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-6.1.1.tgz", - "integrity": "sha512-lY8c6x6mJsIEQRKajjxNxTaG0WlcHZp+0wP+aJ5n4plmYKxTIVo4IMTRpzMxNBnPy//OKD9gRM2hPbik7+7geQ==", - "dev": true, - "requires": { - "@angular-devkit/architect": "0.7.1", - "@angular-devkit/core": "0.7.1", - "@angular-devkit/schematics": "0.7.1", - "@schematics/angular": "0.7.1", - "@schematics/update": "0.7.1", - "opn": "^5.3.0", - "rxjs": "^6.0.0", - "semver": "^5.1.0", - "symbol-observable": "^1.2.0", - "yargs-parser": "^10.0.0" + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-7.0.5.tgz", + "integrity": "sha512-qGFDuO9VQAq+pEPgIyeEdTVa8m2xNYOyvgwp0Z4E51BMBsvzEufT0Vj/U/HuD6a162EOBW1N+Aprpie+swe+MQ==", + "dev": true, + "requires": { + "@angular-devkit/architect": "0.10.5", + "@angular-devkit/core": "7.0.5", + "@angular-devkit/schematics": "7.0.5", + "@schematics/angular": "7.0.5", + "@schematics/update": "0.10.5", + "inquirer": "6.2.0", + "opn": "5.3.0", + "rxjs": "6.3.3", + "semver": "5.5.1", + "symbol-observable": "1.2.0" }, "dependencies": { - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "semver": { + "version": "5.5.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.1.tgz", + "integrity": "sha512-PqpAxfrEhlSUWge8dwIp4tZnQ25DIOthpiaHNIthsjEFQD6EvqUKUDM7L8O2rShkFccYo1VjJR0coWfNkCubRw==", "dev": true - }, - "yargs-parser": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", - "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", - "dev": true, - "requires": { - "camelcase": "^4.1.0" - } } } }, "@angular/common": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-6.1.0.tgz", - "integrity": "sha512-uxdjxbuTYiCsOcrfO9EumGrfXo+7nB7HlS9F4wraKcnR22oJYNUh36meFKZwpoj5pDIBLnZQu75boI16o3W+SQ==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-7.0.3.tgz", + "integrity": "sha512-aiuQh6+5kWFp34SYEtpnkAJWU3Qn17S/9LjWSZbgfiaYG6MyszepxqLZPBSBPTElxx2u5VoCPh97+TpKoDqx+g==", "requires": { "tslib": "^1.9.0" } }, "@angular/compiler": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-6.1.0.tgz", - "integrity": "sha512-5c8ZYCFv0xccy0F12zBRIJX0pJd9BgCThJuhVJAuaRFFOqPZl8FKEO3SFqKJNywT0UktZD9JpYFKxhUVxuSHDg==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-7.0.3.tgz", + "integrity": "sha512-1eF4PzWej9eoEQhHwuMxujx9B4oSjP70vORIs9pgXF8O4nWDWTKtfPQyNCPxc8mY+Fwb0+nSOEvvA+Ou8Hnreg==", "requires": { "tslib": "^1.9.0" } }, "@angular/compiler-cli": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-6.1.0.tgz", - "integrity": "sha512-g4fXQwAYnxtr08BK3CiodJsUXz3fIBCVfZaWIcLMdOlyarFDEvB3TA9qfPkQtlndm87WpXjZ6Xd9OAkmG8t8dw==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-7.0.3.tgz", + "integrity": "sha512-8/SNgyce0Eqhfn8N/XkwSDSxTJryA+/EVLA68D2IopOSg/95u6GgYv3mVNNQnclSzC4g1FuK0zt4z0zRIWZ6JA==", "dev": true, "requires": { + "canonical-path": "1.0.0", "chokidar": "^1.4.2", + "convert-source-map": "^1.5.1", + "dependency-graph": "^0.7.2", + "magic-string": "^0.25.0", "minimist": "^1.2.0", "reflect-metadata": "^0.1.2", - "tsickle": "^0.30.0" + "shelljs": "^0.8.1", + "source-map": "^0.6.1", + "yargs": "9.0.1" }, "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, "anymatch": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", @@ -327,6 +326,12 @@ "repeat-element": "^1.1.2" } }, + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, "chokidar": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", @@ -344,6 +349,30 @@ "readdirp": "^2.0.0" } }, + "cliui": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", + "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", + "dev": true, + "requires": { + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" + }, + "dependencies": { + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dev": true, + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + } + } + }, "expand-brackets": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", @@ -395,6 +424,27 @@ "is-buffer": "^1.1.5" } }, + "load-json-file": { + "version": "2.0.0", + "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "strip-bom": "^3.0.0" + } + }, + "mem": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", + "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + } + }, "micromatch": { "version": "2.3.11", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", @@ -422,77 +472,186 @@ "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", "dev": true }, + "os-locale": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", + "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", + "dev": true, + "requires": { + "execa": "^0.7.0", + "lcid": "^1.0.0", + "mem": "^1.1.0" + } + }, + "path-type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", + "dev": true, + "requires": { + "pify": "^2.0.0" + } + }, + "pify": { + "version": "2.3.0", + "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "dev": true + }, + "read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", + "dev": true, + "requires": { + "load-json-file": "^2.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^2.0.0" + } + }, + "read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", + "dev": true, + "requires": { + "find-up": "^2.0.0", + "read-pkg": "^2.0.0" + } + }, "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 }, - "tsickle": { - "version": "0.30.0", - "resolved": "https://registry.npmjs.org/tsickle/-/tsickle-0.30.0.tgz", - "integrity": "sha512-A4ALnEDQNrECn5xhgHmoXKM5qERCM395pKIfqcV57ex3zEInVogu/A191Btv8OPEINkr3xQ3Q2XRywyqkge3Qg==", + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dev": true, "requires": { - "jasmine-diff": "^0.1.3", - "minimist": "^1.2.0", - "mkdirp": "^0.5.1", - "source-map": "^0.6.0", - "source-map-support": "^0.5.0" + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "dependencies": { + "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=", + "dev": true + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true + }, + "which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", + "dev": true + }, + "y18n": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", + "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", + "dev": true + }, + "yargs": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-9.0.1.tgz", + "integrity": "sha1-UqzCP+7Kw0BCB47njAwAf1CF20w=", + "dev": true, + "requires": { + "camelcase": "^4.1.0", + "cliui": "^3.2.0", + "decamelize": "^1.1.1", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "read-pkg-up": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^7.0.0" + } + }, + "yargs-parser": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-7.0.0.tgz", + "integrity": "sha1-jQrELxbqVd69MyyvTEA4s+P139k=", + "dev": true, + "requires": { + "camelcase": "^4.1.0" } } } }, "@angular/core": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-6.1.0.tgz", - "integrity": "sha512-gWu9Q7q2+fhFC5dl/BvGW7Ha7NUJtK9wQLYQlfIMim4lKTOiM1/S0MYBVMrEq58ldMr9DnA35f5jGno3x6/v+g==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-7.0.3.tgz", + "integrity": "sha512-x/OYYykVsi2vrKlYQJ37I8HYAI/s/CtL3Sd9bl87F6AnqLWnnKIxQaofT/ShfAfdP44LQoN5BNp5j+sjs8K4Kg==", "requires": { "tslib": "^1.9.0" } }, "@angular/forms": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-6.1.0.tgz", - "integrity": "sha512-6InfsKWEL9w2RvTXjy5R3F8GRjENT9d444o95aSvf+ZK7KsYOeIwcYgN2pw+LjfNu2O3EbAqps8APQ6oD/Fn3A==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-7.0.3.tgz", + "integrity": "sha512-URbSpsNDQOg2NxmAt2FgeXIbEXvJS2yQwP02NLkHGqqCe38dpcifijj6HlUxeH14ZBkoqeTQjtSkXlMkgt22YA==", "requires": { "tslib": "^1.9.0" } }, "@angular/http": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@angular/http/-/http-6.1.0.tgz", - "integrity": "sha512-Tky6T93xX22m7zeXSdxALXglKh00QerubV9+exKLUethDGE/xvdRKKdsiMo72w+4yj/1bXAd4fXw+SDneUco7Q==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@angular/http/-/http-7.0.3.tgz", + "integrity": "sha512-aL+z1/tbVY8oJw5v46rbMli5vBGDVyJvs95d1l2n3hWnwMTzS9AVetjcL3B3uruAYuXoh4QlSJ+ysBgdmV1+IA==", "requires": { "tslib": "^1.9.0" } }, "@angular/language-service": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-6.1.0.tgz", - "integrity": "sha512-5Sunf/YnsoHeChpE0NAeT7XfCPfUQt2i8TBWqPH+wCfaTVZB45gU/zlqx6VtR4/4CUof6rM6MeVlHjOm2YlHeg==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-7.0.3.tgz", + "integrity": "sha512-a8S/kTK/f7QaA7Nwm0KmfR+e7p4ZJ1keotfQD8r9Zq73+DD6yS+DSc+NBikmHui9mn9zY1C08C4SJQ5/5HtVhA==", "dev": true }, "@angular/platform-browser": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-6.1.0.tgz", - "integrity": "sha512-LcpcHLpy+fjN+gKcnTkWuTTuF+uYT350mje1kNr4Advoco76tXYBjAda/EehG+vmQmDTd5E+uxJhKJr/1POVEw==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-7.0.3.tgz", + "integrity": "sha512-OKDGce2dYw9Fw8agpcSNJA+ecMMnMQCi9xoPHNIp1pYdvte7mUXKUvUzR7chqQ7b83d7SzVeEhqAZYa4BUwFRA==", "requires": { "tslib": "^1.9.0" } }, "@angular/platform-browser-dynamic": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-6.1.0.tgz", - "integrity": "sha512-gjOJ38ciuIgdAuG8bEs/sdJmkfm/oICLrCcQexz+EUCZAiqbKDb0HvFTDaKaLtR7iDbTXVMQhoYMOyTY40FwLQ==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-7.0.3.tgz", + "integrity": "sha512-hrdBtlkKyq2CZRY6z2RWFTcGF4n4MirM7EEzByEjlgiXSU+c4qHYb0a8z30qdCF1D/DZ6Md7cRRH+1uR/rCqxQ==", "requires": { "tslib": "^1.9.0" } }, "@angular/router": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-6.1.0.tgz", - "integrity": "sha512-tIcHLuat19cnoQBbOfe/8zAHVqf/9S17YgwSO6VUPTuXLRe9ZBgYT50BzqRhcm8ODOqVmLBQYlzP7zRcNRkHDA==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-7.0.3.tgz", + "integrity": "sha512-885svORDpD9DkaMKjvGwn4g5bf0n3JR8os+gCNhzk0p4TPfpc+vmNo8SyY2jwdLMh2rQzrUQTDkn9SzzgiOfDQ==", "requires": { "tslib": "^1.9.0" } @@ -503,6 +662,210 @@ "integrity": "sha1-NOZY7T2jfyOwogDi2lqJvpK7IJ8=", "dev": true }, + "@babel/code-frame": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", + "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", + "dev": true, + "requires": { + "@babel/highlight": "^7.0.0" + } + }, + "@babel/core": { + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.1.5.tgz", + "integrity": "sha512-vOyH020C56tQvte++i+rX2yokZcRfbv/kKcw+/BCRw/cK6dvsr47aCzm8oC1XHwMSEWbqrZKzZRLzLnq6SFMsg==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/generator": "^7.1.5", + "@babel/helpers": "^7.1.5", + "@babel/parser": "^7.1.5", + "@babel/template": "^7.1.2", + "@babel/traverse": "^7.1.5", + "@babel/types": "^7.1.5", + "convert-source-map": "^1.1.0", + "debug": "^3.1.0", + "json5": "^0.5.0", + "lodash": "^4.17.10", + "resolve": "^1.3.2", + "semver": "^5.4.1", + "source-map": "^0.5.0" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "@babel/generator": { + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.1.5.tgz", + "integrity": "sha512-IO31r62xfMI+wBJVmgx0JR9ZOHty8HkoYpQAjRWUGG9vykBTlGHdArZ8zoFtpUu2gs17K7qTl/TtPpiSi6t+MA==", + "dev": true, + "requires": { + "@babel/types": "^7.1.5", + "jsesc": "^2.5.1", + "lodash": "^4.17.10", + "source-map": "^0.5.0", + "trim-right": "^1.0.1" + }, + "dependencies": { + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + } + } + }, + "@babel/helper-function-name": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", + "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.0.0", + "@babel/template": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", + "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz", + "integrity": "sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helpers": { + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.1.5.tgz", + "integrity": "sha512-2jkcdL02ywNBry1YNFAH/fViq4fXG0vdckHqeJk+75fpQ2OH+Az6076tX/M0835zA45E0Cqa6pV5Kiv9YOqjEg==", + "dev": true, + "requires": { + "@babel/template": "^7.1.2", + "@babel/traverse": "^7.1.5", + "@babel/types": "^7.1.5" + } + }, + "@babel/highlight": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", + "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + } + } + }, + "@babel/parser": { + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.1.5.tgz", + "integrity": "sha512-WXKf5K5HT6X0kKiCOezJZFljsfxKV1FpU8Tf1A7ZpGvyd/Q4hlrJm2EwoH2onaUq3O4tLDp+4gk0hHPsMyxmOg==", + "dev": true + }, + "@babel/template": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.1.2.tgz", + "integrity": "sha512-SY1MmplssORfFiLDcOETrW7fCLl+PavlwMh92rrGcikQaRq4iWPVH0MpwPpY3etVMx6RnDjXtr6VZYr/IbP/Ag==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.1.2", + "@babel/types": "^7.1.2" + } + }, + "@babel/traverse": { + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.1.5.tgz", + "integrity": "sha512-eU6XokWypl0MVJo+MTSPUtlfPePkrqsF26O+l1qFGlCKWwmiYAYy2Sy44Qw8m2u/LbPCsxYt90rghmqhYMGpPA==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/generator": "^7.1.5", + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-split-export-declaration": "^7.0.0", + "@babel/parser": "^7.1.5", + "@babel/types": "^7.1.5", + "debug": "^3.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.10" + }, + "dependencies": { + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "globals": { + "version": "11.9.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.9.0.tgz", + "integrity": "sha512-5cJVtyXWH8PiJPVLZzzoIizXx944O4OmRro5MWKx5fT4MgcN7OfaMutPeaTdJCCURwbWdhhcCWcKIffPnmTzBg==", + "dev": true + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "@babel/types": { + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.1.5.tgz", + "integrity": "sha512-sJeqa/d9eM/bax8Ivg+fXF7FpN3E/ZmTrWbkk6r+g7biVYfALMnLin4dKijsaqEhpd2xvOGfQTkQkD31YCVV4A==", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.10", + "to-fast-properties": "^2.0.0" + }, + "dependencies": { + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + } + } + }, "@gulp-sourcemaps/identity-map": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@gulp-sourcemaps/identity-map/-/identity-map-1.0.1.tgz", @@ -526,6 +889,16 @@ "through2": "^2.0.3" } }, + "@mrmlnc/readdir-enhanced": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", + "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==", + "dev": true, + "requires": { + "call-me-maybe": "^1.0.1", + "glob-to-regexp": "^0.3.0" + } + }, "@ngtools/json-schema": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@ngtools/json-schema/-/json-schema-1.1.0.tgz", @@ -533,66 +906,72 @@ "dev": true }, "@ngtools/webpack": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-6.1.1.tgz", - "integrity": "sha512-PfZhltQmzmyF67GLgcAgVcbEHsl8VpIBUZFp3P6sGpn+/U2r6dRSHKI02882KHsRl4sdjFkP9o72q37/Ah4yfQ==", + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-7.0.5.tgz", + "integrity": "sha512-KARXUp1SCg6TNGHaXOITiOfbGBJAd7gkdo0OKWF77ARqWb/pSN4rwFV4kxm0CB2kkmJ40JQCQG+TiltX+3Jnqg==", "dev": true, "requires": { - "@angular-devkit/core": "0.7.1", - "rxjs": "^6.0.0", - "tree-kill": "^1.0.0", - "webpack-sources": "^1.1.0" + "@angular-devkit/core": "7.0.5", + "enhanced-resolve": "4.1.0", + "rxjs": "6.3.3", + "tree-kill": "1.2.0", + "webpack-sources": "1.2.0" + }, + "dependencies": { + "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 + }, + "webpack-sources": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.2.0.tgz", + "integrity": "sha512-9BZwxR85dNsjWz3blyxdOhTgtnQvv3OEs5xofI0wPYTwu5kaWxS08UuD1oI7WLBLpRO+ylf0ofnXLXWmGb2WMw==", + "dev": true, + "requires": { + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" + } + } } }, + "@nodelib/fs.stat": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", + "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", + "dev": true + }, "@schematics/angular": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-0.7.1.tgz", - "integrity": "sha512-wvP1ofwKVIbu3UCCsLTxdNZ7D0iVl0njoHvFEiMAQEVO+1VnhY3y+xpvnujhmU0pdYfIv17mc/hRNwEH6gQwkQ==", + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-7.0.5.tgz", + "integrity": "sha512-a8oWALnxs4+QwapeeBZfVBq1YEs5bdgmErBecCHioonhHidoBZX0GjJWQOH/TN8qA8HenNDf7b07WN7sRAVC1Q==", "dev": true, "requires": { - "@angular-devkit/core": "0.7.1", - "@angular-devkit/schematics": "0.7.1", - "typescript": ">=2.6.2 <2.8" + "@angular-devkit/core": "7.0.5", + "@angular-devkit/schematics": "7.0.5", + "typescript": "3.1.6" } }, "@schematics/update": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@schematics/update/-/update-0.7.1.tgz", - "integrity": "sha512-b2LXdqGMhQVA4Iy3JzBpalRDQy/kuFzDob3nh2DuYtriJLnvRuAvIQ9J6bbUGpQhad8ED+lDjx2ADt1gfBg9xQ==", + "version": "0.10.5", + "resolved": "https://registry.npmjs.org/@schematics/update/-/update-0.10.5.tgz", + "integrity": "sha512-eFpDq+iI5DfCC3HGYtJtCZhk+rEoCAyrxnta3rQeZZbi7Lqg+aA4PZxFIpnI3omqxof+I0EdpwUquAaNcJR5fA==", "dev": true, "requires": { - "@angular-devkit/core": "0.7.1", - "@angular-devkit/schematics": "0.7.1", - "npm-registry-client": "^8.5.1", - "rc": "^1.2.8", - "rxjs": "^6.0.0", - "semver": "^5.3.0", - "semver-intersect": "^1.1.2" + "@angular-devkit/core": "7.0.5", + "@angular-devkit/schematics": "7.0.5", + "npm-registry-client": "8.6.0", + "rxjs": "6.3.3", + "semver": "5.5.1", + "semver-intersect": "1.4.0" }, "dependencies": { - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true - }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "semver": { + "version": "5.5.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.1.tgz", + "integrity": "sha512-PqpAxfrEhlSUWge8dwIp4tZnQ25DIOthpiaHNIthsjEFQD6EvqUKUDM7L8O2rShkFccYo1VjJR0coWfNkCubRw==", "dev": true - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - } } } }, @@ -629,9 +1008,9 @@ } }, "@types/hammerjs": { - "version": "2.0.35", - "resolved": "https://registry.npmjs.org/@types/hammerjs/-/hammerjs-2.0.35.tgz", - "integrity": "sha512-4mUIMSZ2U4UOWq1b+iV7XUTE4w+Kr3x+Zb/Qz5ROO6BTZLw2c8/ftjq0aRgluguLs4KRuBnrOy/s389HVn1/zA==" + "version": "2.0.36", + "resolved": "https://registry.npmjs.org/@types/hammerjs/-/hammerjs-2.0.36.tgz", + "integrity": "sha512-7TUK/k2/QGpEAv/BCwSHlYu3NXZhQ9ZwBYpzr9tjlPIL2C5BeGhH3DmVavRx3ZNyELX5TLC91JTz/cen6AAtIQ==" }, "@types/handlebars": { "version": "4.0.39", @@ -646,15 +1025,15 @@ "dev": true }, "@types/jasmine": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-2.8.8.tgz", - "integrity": "sha512-OJSUxLaxXsjjhob2DBzqzgrkLmukM3+JMpRp0r0E4HTdT1nwDCWhaswjYxazPij6uOdzHCJfNbDjmQ1/rnNbCg==", + "version": "2.8.11", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-2.8.11.tgz", + "integrity": "sha512-ITPYT5rkV9S0BcucyBwXIUzqzSODVhvAzhOGV0bwZMuqWJeU0Kfdd6IJeJjGI8Gob+lDyAtKaWUfhG6QXJIPRg==", "dev": true }, "@types/jasminewd2": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/jasminewd2/-/jasminewd2-2.0.3.tgz", - "integrity": "sha512-hYDVmQZT5VA2kigd4H4bv7vl/OhlympwREUemqBdOqtrYTo5Ytm12a5W5/nGgGYdanGVxj0x/VhZ7J3hOg/YKg==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/jasminewd2/-/jasminewd2-2.0.6.tgz", + "integrity": "sha512-2ZOKrxb8bKRmP/po5ObYnRDgFE4i+lQiEB27bAMmtMWLgJSqlIDqlLx6S0IRorpOmOPRQ6O80NujTmQAtBkeNw==", "dev": true, "requires": { "@types/jasmine": "*" @@ -679,9 +1058,9 @@ "dev": true }, "@types/node": { - "version": "10.5.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-10.5.4.tgz", - "integrity": "sha512-8TqvB0ReZWwtcd3LXq3YSrBoLyXFgBX/sBZfGye9+YS8zH7/g+i6QRIuiDmwBoTzcQ/pk89nZYTYU4c5akKkzw==", + "version": "10.12.6", + "resolved": "https://registry.npmjs.org/@types/node/-/node-10.12.6.tgz", + "integrity": "sha512-+ZWB5Ec1iki99xQFzBlivlKxSZQ+fuUKBott8StBOnLN4dWbRHlgdg1XknpW6g0tweniN5DcOqA64CJyOUPSAw==", "dev": true }, "@types/q": { @@ -691,9 +1070,9 @@ "dev": true }, "@types/selenium-webdriver": { - "version": "2.53.43", - "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-2.53.43.tgz", - "integrity": "sha512-UBYHWph6P3tutkbXpW6XYg9ZPbTKjw/YC2hGG1/GEvWwTbvezBUv3h+mmUFw79T3RFPnmedpiXdOBbXX+4l0jg==", + "version": "3.0.13", + "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-3.0.13.tgz", + "integrity": "sha512-rI0LGoMiZGUM+tjDakQpwZOvcmQoubiJ7hxqrYU12VRxBuGGvOThxrBOU/QmJKlKg1WG6FMzuvcEyLffvVSsmw==", "dev": true }, "@types/shelljs": { @@ -713,264 +1092,199 @@ "dev": true }, "@webassemblyjs/ast": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.4.3.tgz", - "integrity": "sha512-S6npYhPcTHDYe9nlsKa9CyWByFi8Vj8HovcAgtmMAQZUOczOZbQ8CnwMYKYC5HEZzxEE+oY0jfQk4cVlI3J59Q==", + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.7.6.tgz", + "integrity": "sha512-8nkZS48EVsMUU0v6F1LCIOw4RYWLm2plMtbhFTjNgeXmsTNLuU3xTRtnljt9BFQB+iPbLRobkNrCWftWnNC7wQ==", "dev": true, "requires": { - "@webassemblyjs/helper-wasm-bytecode": "1.4.3", - "@webassemblyjs/wast-parser": "1.4.3", - "debug": "^3.1.0", - "webassemblyjs": "1.4.3" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } + "@webassemblyjs/helper-module-context": "1.7.6", + "@webassemblyjs/helper-wasm-bytecode": "1.7.6", + "@webassemblyjs/wast-parser": "1.7.6", + "mamacro": "^0.0.3" } }, "@webassemblyjs/floating-point-hex-parser": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.4.3.tgz", - "integrity": "sha512-3zTkSFswwZOPNHnzkP9ONq4bjJSeKVMcuahGXubrlLmZP8fmTIJ58dW7h/zOVWiFSuG2em3/HH3BlCN7wyu9Rw==", - "dev": true - }, - "@webassemblyjs/helper-buffer": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.4.3.tgz", - "integrity": "sha512-e8+KZHh+RV8MUvoSRtuT1sFXskFnWG9vbDy47Oa166xX+l0dD5sERJ21g5/tcH8Yo95e9IN3u7Jc3NbhnUcSkw==", - "dev": true, - "requires": { - "debug": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } - } + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.7.6.tgz", + "integrity": "sha512-VBOZvaOyBSkPZdIt5VBMg3vPWxouuM13dPXGWI1cBh3oFLNcFJ8s9YA7S9l4mPI7+Q950QqOmqj06oa83hNWBA==", + "dev": true + }, + "@webassemblyjs/helper-api-error": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.6.tgz", + "integrity": "sha512-SCzhcQWHXfrfMSKcj8zHg1/kL9kb3aa5TN4plc/EREOs5Xop0ci5bdVBApbk2yfVi8aL+Ly4Qpp3/TRAUInjrg==", + "dev": true + }, + "@webassemblyjs/helper-buffer": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.6.tgz", + "integrity": "sha512-1/gW5NaGsEOZ02fjnFiU8/OEEXU1uVbv2um0pQ9YVL3IHSkyk6xOwokzyqqO1qDZQUAllb+V8irtClPWntbVqw==", + "dev": true }, "@webassemblyjs/helper-code-frame": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.4.3.tgz", - "integrity": "sha512-9FgHEtNsZQYaKrGCtsjswBil48Qp1agrzRcPzCbQloCoaTbOXLJ9IRmqT+uEZbenpULLRNFugz3I4uw18hJM8w==", + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.6.tgz", + "integrity": "sha512-+suMJOkSn9+vEvDvgyWyrJo5vJsWSDXZmJAjtoUq4zS4eqHyXImpktvHOZwXp1XQjO5H+YQwsBgqTQEc0J/5zg==", "dev": true, "requires": { - "@webassemblyjs/wast-printer": "1.4.3" + "@webassemblyjs/wast-printer": "1.7.6" } }, "@webassemblyjs/helper-fsm": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.4.3.tgz", - "integrity": "sha512-JINY76U+702IRf7ePukOt037RwmtH59JHvcdWbTTyHi18ixmQ+uOuNhcdCcQHTquDAH35/QgFlp3Y9KqtyJsCQ==", + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.6.tgz", + "integrity": "sha512-HCS6KN3wgxUihGBW7WFzEC/o8Eyvk0d56uazusnxXthDPnkWiMv+kGi9xXswL2cvfYfeK5yiM17z2K5BVlwypw==", "dev": true }, + "@webassemblyjs/helper-module-context": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.6.tgz", + "integrity": "sha512-e8/6GbY7OjLM+6OsN7f2krC2qYVNaSr0B0oe4lWdmq5sL++8dYDD1TFbD1TdAdWMRTYNr/Qq7ovXWzia2EbSjw==", + "dev": true, + "requires": { + "mamacro": "^0.0.3" + } + }, "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.4.3.tgz", - "integrity": "sha512-I7bS+HaO0K07Io89qhJv+z1QipTpuramGwUSDkwEaficbSvCcL92CUZEtgykfNtk5wb0CoLQwWlmXTwGbNZUeQ==", + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.6.tgz", + "integrity": "sha512-PzYFCb7RjjSdAOljyvLWVqd6adAOabJW+8yRT+NWhXuf1nNZWH+igFZCUK9k7Cx7CsBbzIfXjJc7u56zZgFj9Q==", "dev": true }, "@webassemblyjs/helper-wasm-section": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.4.3.tgz", - "integrity": "sha512-p0yeeO/h2r30PyjnJX9xXSR6EDcvJd/jC6xa/Pxg4lpfcNi7JUswOpqDToZQ55HMMVhXDih/yqkaywHWGLxqyQ==", + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.6.tgz", + "integrity": "sha512-3GS628ppDPSuwcYlQ7cDCGr4W2n9c4hLzvnRKeuz+lGsJSmc/ADVoYpm1ts2vlB1tGHkjtQMni+yu8mHoMlKlA==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.4.3", - "@webassemblyjs/helper-buffer": "1.4.3", - "@webassemblyjs/helper-wasm-bytecode": "1.4.3", - "@webassemblyjs/wasm-gen": "1.4.3", - "debug": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } + "@webassemblyjs/ast": "1.7.6", + "@webassemblyjs/helper-buffer": "1.7.6", + "@webassemblyjs/helper-wasm-bytecode": "1.7.6", + "@webassemblyjs/wasm-gen": "1.7.6" } }, - "@webassemblyjs/leb128": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.4.3.tgz", - "integrity": "sha512-4u0LJLSPzuRDWHwdqsrThYn+WqMFVqbI2ltNrHvZZkzFPO8XOZ0HFQ5eVc4jY/TNHgXcnwrHjONhPGYuuf//KQ==", + "@webassemblyjs/ieee754": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.7.6.tgz", + "integrity": "sha512-V4cIp0ruyw+hawUHwQLn6o2mFEw4t50tk530oKsYXQhEzKR+xNGDxs/SFFuyTO7X3NzEu4usA3w5jzhl2RYyzQ==", "dev": true, "requires": { - "leb": "^0.3.0" + "@xtuc/ieee754": "^1.2.0" } }, - "@webassemblyjs/validation": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/validation/-/validation-1.4.3.tgz", - "integrity": "sha512-R+rRMKfhd9mq0rj2mhU9A9NKI2l/Rw65vIYzz4lui7eTKPcCu1l7iZNi4b9Gen8D42Sqh/KGiaQNk/x5Tn/iBQ==", + "@webassemblyjs/leb128": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.7.6.tgz", + "integrity": "sha512-ojdlG8WpM394lBow4ncTGJoIVZ4aAtNOWHhfAM7m7zprmkVcKK+2kK5YJ9Bmj6/ketTtOn7wGSHCtMt+LzqgYQ==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.4.3" + "@xtuc/long": "4.2.1" } }, + "@webassemblyjs/utf8": { + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.7.6.tgz", + "integrity": "sha512-oId+tLxQ+AeDC34ELRYNSqJRaScB0TClUU6KQfpB8rNT6oelYlz8axsPhf6yPTg7PBJ/Z5WcXmUYiHEWgbbHJw==", + "dev": true + }, "@webassemblyjs/wasm-edit": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.4.3.tgz", - "integrity": "sha512-qzuwUn771PV6/LilqkXcS0ozJYAeY/OKbXIWU3a8gexuqb6De2p4ya/baBeH5JQ2WJdfhWhSvSbu86Vienttpw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.4.3", - "@webassemblyjs/helper-buffer": "1.4.3", - "@webassemblyjs/helper-wasm-bytecode": "1.4.3", - "@webassemblyjs/helper-wasm-section": "1.4.3", - "@webassemblyjs/wasm-gen": "1.4.3", - "@webassemblyjs/wasm-opt": "1.4.3", - "@webassemblyjs/wasm-parser": "1.4.3", - "@webassemblyjs/wast-printer": "1.4.3", - "debug": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.6.tgz", + "integrity": "sha512-pTNjLO3o41v/Vz9VFLl+I3YLImpCSpodFW77pNoH4agn5I6GgSxXHXtvWDTvYJFty0jSeXZWLEmbaSIRUDlekg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.7.6", + "@webassemblyjs/helper-buffer": "1.7.6", + "@webassemblyjs/helper-wasm-bytecode": "1.7.6", + "@webassemblyjs/helper-wasm-section": "1.7.6", + "@webassemblyjs/wasm-gen": "1.7.6", + "@webassemblyjs/wasm-opt": "1.7.6", + "@webassemblyjs/wasm-parser": "1.7.6", + "@webassemblyjs/wast-printer": "1.7.6" } }, "@webassemblyjs/wasm-gen": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.4.3.tgz", - "integrity": "sha512-eR394T8dHZfpLJ7U/Z5pFSvxl1L63JdREebpv9gYc55zLhzzdJPAuxjBYT4XqevUdW67qU2s0nNA3kBuNJHbaQ==", + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.6.tgz", + "integrity": "sha512-mQvFJVumtmRKEUXMohwn8nSrtjJJl6oXwF3FotC5t6e2hlKMh8sIaW03Sck2MDzw9xPogZD7tdP5kjPlbH9EcQ==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.4.3", - "@webassemblyjs/helper-wasm-bytecode": "1.4.3", - "@webassemblyjs/leb128": "1.4.3" + "@webassemblyjs/ast": "1.7.6", + "@webassemblyjs/helper-wasm-bytecode": "1.7.6", + "@webassemblyjs/ieee754": "1.7.6", + "@webassemblyjs/leb128": "1.7.6", + "@webassemblyjs/utf8": "1.7.6" } }, "@webassemblyjs/wasm-opt": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.4.3.tgz", - "integrity": "sha512-7Gp+nschuKiDuAL1xmp4Xz0rgEbxioFXw4nCFYEmy+ytynhBnTeGc9W9cB1XRu1w8pqRU2lbj2VBBA4cL5Z2Kw==", + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.6.tgz", + "integrity": "sha512-go44K90fSIsDwRgtHhX14VtbdDPdK2sZQtZqUcMRvTojdozj5tLI0VVJAzLCfz51NOkFXezPeVTAYFqrZ6rI8Q==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.4.3", - "@webassemblyjs/helper-buffer": "1.4.3", - "@webassemblyjs/wasm-gen": "1.4.3", - "@webassemblyjs/wasm-parser": "1.4.3", - "debug": "^3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } + "@webassemblyjs/ast": "1.7.6", + "@webassemblyjs/helper-buffer": "1.7.6", + "@webassemblyjs/wasm-gen": "1.7.6", + "@webassemblyjs/wasm-parser": "1.7.6" } }, "@webassemblyjs/wasm-parser": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.4.3.tgz", - "integrity": "sha512-KXBjtlwA3BVukR/yWHC9GF+SCzBcgj0a7lm92kTOaa4cbjaTaa47bCjXw6cX4SGQpkncB9PU2hHGYVyyI7wFRg==", + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.6.tgz", + "integrity": "sha512-t1T6TfwNY85pDA/HWPA8kB9xA4sp9ajlRg5W7EKikqrynTyFo+/qDzIpvdkOkOGjlS6d4n4SX59SPuIayR22Yg==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.4.3", - "@webassemblyjs/helper-wasm-bytecode": "1.4.3", - "@webassemblyjs/leb128": "1.4.3", - "@webassemblyjs/wasm-parser": "1.4.3", - "webassemblyjs": "1.4.3" + "@webassemblyjs/ast": "1.7.6", + "@webassemblyjs/helper-api-error": "1.7.6", + "@webassemblyjs/helper-wasm-bytecode": "1.7.6", + "@webassemblyjs/ieee754": "1.7.6", + "@webassemblyjs/leb128": "1.7.6", + "@webassemblyjs/utf8": "1.7.6" } }, "@webassemblyjs/wast-parser": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.4.3.tgz", - "integrity": "sha512-QhCsQzqV0CpsEkRYyTzQDilCNUZ+5j92f+g35bHHNqS22FppNTywNFfHPq8ZWZfYCgbectc+PoghD+xfzVFh1Q==", + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.7.6.tgz", + "integrity": "sha512-1MaWTErN0ziOsNUlLdvwS+NS1QWuI/kgJaAGAMHX8+fMJFgOJDmN/xsG4h/A1Gtf/tz5VyXQciaqHZqp2q0vfg==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.4.3", - "@webassemblyjs/floating-point-hex-parser": "1.4.3", - "@webassemblyjs/helper-code-frame": "1.4.3", - "@webassemblyjs/helper-fsm": "1.4.3", - "long": "^3.2.0", - "webassemblyjs": "1.4.3" + "@webassemblyjs/ast": "1.7.6", + "@webassemblyjs/floating-point-hex-parser": "1.7.6", + "@webassemblyjs/helper-api-error": "1.7.6", + "@webassemblyjs/helper-code-frame": "1.7.6", + "@webassemblyjs/helper-fsm": "1.7.6", + "@xtuc/long": "4.2.1", + "mamacro": "^0.0.3" } }, "@webassemblyjs/wast-printer": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.4.3.tgz", - "integrity": "sha512-EgXk4anf8jKmuZJsqD8qy5bz2frEQhBvZruv+bqwNoLWUItjNSFygk8ywL3JTEz9KtxTlAmqTXNrdD1d9gNDtg==", + "version": "1.7.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.7.6.tgz", + "integrity": "sha512-vHdHSK1tOetvDcl1IV1OdDeGNe/NDDQ+KzuZHMtqTVP1xO/tZ/IKNpj5BaGk1OYFdsDWQqb31PIwdEyPntOWRQ==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.4.3", - "@webassemblyjs/wast-parser": "1.4.3", - "long": "^3.2.0" + "@webassemblyjs/ast": "1.7.6", + "@webassemblyjs/wast-parser": "1.7.6", + "@xtuc/long": "4.2.1" } }, - "@webpack-contrib/schema-utils": { - "version": "1.0.0-beta.0", - "resolved": "https://registry.npmjs.org/@webpack-contrib/schema-utils/-/schema-utils-1.0.0-beta.0.tgz", - "integrity": "sha512-LonryJP+FxQQHsjGBi6W786TQB1Oym+agTpY0c+Kj8alnIw+DLUJb6SI8Y1GHGhLCH1yPRrucjObUmxNICQ1pg==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-keywords": "^3.1.0", - "chalk": "^2.3.2", - "strip-ansi": "^4.0.0", - "text-table": "^0.2.0", - "webpack-log": "^1.1.2" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "chalk": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", - "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "@xtuc/long": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.1.tgz", + "integrity": "sha512-FZdkNBDqBRHKQ2MEbSC17xnPFOhZxeJ2YGSfr2BKf3sujG49Qe3bB+rGCwQfIaA7WHnGeGkSijX4FuBCdrzW/g==", + "dev": true }, "abbrev": { "version": "1.0.9", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", - "integrity": "sha1-kbR5JYinc4wl813W9jdSovh3YTU=" + "integrity": "sha1-kbR5JYinc4wl813W9jdSovh3YTU=", + "dev": true }, "accepts": { "version": "1.3.5", @@ -997,17 +1311,10 @@ "acorn": "^5.0.0" } }, - "addressparser": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/addressparser/-/addressparser-1.0.1.tgz", - "integrity": "sha1-R6++GiqSYhkdtoOOT9HTm0CCF0Y=", - "dev": true, - "optional": true - }, "adm-zip": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.4.tgz", - "integrity": "sha1-ph7VrmkFw66lizplfSUDMJEFJzY=", + "version": "0.4.13", + "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.13.tgz", + "integrity": "sha512-fERNJX8sOXfel6qCBCMPvZLzENBEhZTzKqg6vrOW5pvoEaQuJhRU4ndTAh6lHOxn1I6jnz2NHra56ZODM751uw==", "dev": true }, "after": { @@ -1017,26 +1324,46 @@ "dev": true }, "agent-base": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.0.tgz", - "integrity": "sha512-c+R/U5X+2zz2+UCrCFv6odQzJdoqI+YecuhnAJLa1zYaMc13zPfwMwZrr91Pd1DYNo/yPRbiM4WVf9whgwFsIg==", + "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==", "dev": true, "requires": { "es6-promisify": "^5.0.0" } }, "ajv": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.4.0.tgz", - "integrity": "sha1-06/3jpJ3VJdx2vAWTP9ISCt1T8Y=", + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.3.tgz", + "integrity": "sha512-LqZ9wY+fx3UMiiPd741yB2pj3hhil+hQc8taf4o2QGRFpWgZ2V5C8HA165DY9sS3fJwsk7uT7ZlFEyC3Ig3lLg==", "dev": true, "requires": { - "fast-deep-equal": "^1.0.0", + "fast-deep-equal": "^2.0.1", "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.3.0", - "uri-js": "^3.0.2" + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "dependencies": { + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + } } }, + "ajv-errors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.0.tgz", + "integrity": "sha1-7PAh+hCP0X37Xms4Py3SM+Mf/Fk=", + "dev": true + }, "ajv-keywords": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.2.0.tgz", @@ -1068,55 +1395,14 @@ "amdefine": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=" - }, - "amqplib": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/amqplib/-/amqplib-0.5.2.tgz", - "integrity": "sha512-l9mCs6LbydtHqRniRwYkKdqxVa6XMz3Vw1fh+2gJaaVgTM6Jk3o8RccAKWKtlhT1US5sWrFh+KKxsVUALURSIA==", - "dev": true, - "optional": true, - "requires": { - "bitsyntax": "~0.0.4", - "bluebird": "^3.4.6", - "buffer-more-ints": "0.0.2", - "readable-stream": "1.x >=1.1.9", - "safe-buffer": "^5.0.1" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true, - "optional": true - }, - "readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", - "dev": true, - "optional": true - } - } + "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", + "dev": true }, "ansi-align": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-2.0.0.tgz", "integrity": "sha1-w2rsy6VjuJzrVW82kPCx2eNUf38=", + "dev": true, "requires": { "string-width": "^2.0.0" }, @@ -1124,17 +1410,20 @@ "ansi-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "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=" + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, "requires": { "is-fullwidth-code-point": "^2.0.0", "strip-ansi": "^4.0.0" @@ -1144,6 +1433,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, "requires": { "ansi-regex": "^3.0.0" } @@ -1151,13 +1441,10 @@ } }, "ansi-colors": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", - "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", - "dev": true, - "requires": { - "ansi-wrap": "^0.1.0" - } + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.1.tgz", + "integrity": "sha512-Xt+zb6nqgvV9SWAVp0EG3lRsHcbq5DDgqjPPz6pwgtj6RKz65zGXMNa82oJfOSBA/to6GmRP7Dr+6o+kbApTzQ==", + "dev": true }, "ansi-cyan": { "version": "0.1.1", @@ -1168,6 +1455,12 @@ "ansi-wrap": "0.1.0" } }, + "ansi-escapes": { + "version": "3.1.0", + "resolved": "http://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz", + "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==", + "dev": true + }, "ansi-gray": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", @@ -1195,12 +1488,14 @@ "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "dev": true }, "ansi-styles": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, "requires": { "color-convert": "^1.9.0" } @@ -1208,7 +1503,8 @@ "ansi-wrap": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", - "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=" + "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=", + "dev": true }, "anymatch": { "version": "2.0.0", @@ -1236,6 +1532,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/append-buffer/-/append-buffer-1.0.2.tgz", "integrity": "sha1-2CIM9GYIFSXv6lBhTz3mUU36WPE=", + "dev": true, "requires": { "buffer-equal": "^1.0.0" } @@ -1262,9 +1559,9 @@ "dev": true }, "are-we-there-yet": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz", - "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=", + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", + "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", "dev": true, "requires": { "delegates": "^1.0.0", @@ -1275,6 +1572,7 @@ "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, "requires": { "sprintf-js": "~1.0.2" } @@ -1282,17 +1580,20 @@ "arr-diff": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", + "dev": true }, "arr-flatten": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "dev": true }, "arr-union": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", + "dev": true }, "array-differ": { "version": "1.0.0", @@ -1318,22 +1619,6 @@ "integrity": "sha1-Qmu52oQJDBg42BLIFQryCoMx4pY=", "dev": true }, - "array-includes": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.0.3.tgz", - "integrity": "sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=", - "dev": true, - "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.7.0" - } - }, - "array-iterate": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/array-iterate/-/array-iterate-1.1.2.tgz", - "integrity": "sha512-1hWSHTIlG/8wtYD+PPX5AOBtKWngpDFjrsrHgZpe+JdgNGz0udYu6ZIkAa/xuenIUEqFv7DvE2Yr60jxweJSrQ==", - "dev": true - }, "array-slice": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", @@ -1377,8 +1662,7 @@ "version": "2.0.6", "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", - "dev": true, - "optional": true + "dev": true }, "asn1": { "version": "0.2.3", @@ -1432,14 +1716,8 @@ "assign-symbols": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" - }, - "ast-types": { - "version": "0.11.5", - "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.11.5.tgz", - "integrity": "sha512-oJjo+5e7/vEc2FBK8gUalV0pba4L3VdBIs2EKhOLHLcOd2FgQIVQN9xb0eZ9IjEWyAL7vq6fGJxOvVvdCHNyMw==", - "dev": true, - "optional": true + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "dev": true }, "async": { "version": "1.5.2", @@ -1484,16 +1762,16 @@ "dev": true }, "autoprefixer": { - "version": "8.5.0", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-8.5.0.tgz", - "integrity": "sha512-buY1XxFoBrXvLsoFb0jP+niSu1tCj2RwMwHj96+RfQ8DJTgb0vUhh0dg6wjJT3JzsFYBrkSj8/sGtarNdlxTFw==", + "version": "9.1.5", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.1.5.tgz", + "integrity": "sha512-kk4Zb6RUc58ld7gdosERHMF3DzIYJc2fp5sX46qEsGXQQy5bXsu8qyLjoxuY1NuQ/cJuCYnx99BfjwnRggrYIw==", "dev": true, "requires": { - "browserslist": "^3.2.7", - "caniuse-lite": "^1.0.30000839", + "browserslist": "^4.1.0", + "caniuse-lite": "^1.0.30000884", "normalize-range": "^0.1.2", "num2fraction": "^1.2.2", - "postcss": "^6.0.22", + "postcss": "^7.0.2", "postcss-value-parser": "^3.2.3" } }, @@ -1510,25 +1788,13 @@ "dev": true }, "axios": { - "version": "0.15.3", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.15.3.tgz", - "integrity": "sha1-LJ1jiy4ZGgjqHWzJiOrda6W9wFM=", + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", + "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", "dev": true, - "optional": true, "requires": { - "follow-redirects": "1.0.0" - }, - "dependencies": { - "follow-redirects": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.0.0.tgz", - "integrity": "sha1-jjQpjL0uF28lTv/sdaHHjMhJ/Tc=", - "dev": true, - "optional": true, - "requires": { - "debug": "^2.2.0" - } - } + "follow-redirects": "^1.2.5", + "is-buffer": "^1.1.5" } }, "babel-code-frame": { @@ -1598,6 +1864,7 @@ "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "dev": true, "requires": { "core-js": "^2.4.0", "regenerator-runtime": "^0.11.0" @@ -1666,7 +1933,8 @@ "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true }, "base": { "version": "0.11.2", @@ -1778,67 +2046,16 @@ "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==", "dev": true }, - "binary-extensions": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz", - "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=", - "dev": true - }, - "bitsyntax": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/bitsyntax/-/bitsyntax-0.0.4.tgz", - "integrity": "sha1-6xDMb4K4xJDj6FaY8H6D1G4MuoI=", - "dev": true, - "optional": true, - "requires": { - "buffer-more-ints": "0.0.2" - } - }, - "bl": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.1.2.tgz", - "integrity": "sha1-/cqHGplxOqANGeO7ukHER4emU5g=", - "dev": true, - "optional": true, - "requires": { - "readable-stream": "~2.0.5" - }, - "dependencies": { - "process-nextick-args": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", - "dev": true, - "optional": true - }, - "readable-stream": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", - "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~0.10.x", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", - "dev": true, - "optional": true - } - } + "binary-extensions": { + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.12.0.tgz", + "integrity": "sha512-DYWGk01lDcxeS/K9IHPGWfT8PsJmbXRtRd2Sx72Tnb8pcYZQFF1oSDb8hJtS1vhp212q1Rzi5dUf9+nq0o9UIg==", + "dev": true }, "blob": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz", - "integrity": "sha1-vPEwUspURj8w+fx+lbmkdjCpSSE=", + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz", + "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==", "dev": true }, "block-stream": { @@ -1868,9 +2085,9 @@ } }, "bluebird": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz", - "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==", + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.3.tgz", + "integrity": "sha512-/qKPUQlaW1OyR51WeCPBvRnAlnZFUJkCSG5HzGnuIqhgyJtF+T94lFnn33eiazjRm2LAHVy2guNnaq48X9SJuw==", "dev": true }, "bn.js": { @@ -1880,29 +2097,21 @@ "dev": true }, "body-parser": { - "version": "1.18.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", - "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz", + "integrity": "sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ=", "dev": true, "requires": { "bytes": "3.0.0", "content-type": "~1.0.4", "debug": "2.6.9", - "depd": "~1.1.1", - "http-errors": "~1.6.2", - "iconv-lite": "0.4.19", + "depd": "~1.1.2", + "http-errors": "~1.6.3", + "iconv-lite": "0.4.23", "on-finished": "~2.3.0", - "qs": "6.5.1", - "raw-body": "2.3.2", - "type-is": "~1.6.15" - }, - "dependencies": { - "qs": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==", - "dev": true - } + "qs": "6.5.2", + "raw-body": "2.3.3", + "type-is": "~1.6.16" } }, "bonjour": { @@ -1919,12 +2128,6 @@ "multicast-dns-service-types": "^1.1.0" } }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", - "dev": true - }, "boom": { "version": "4.3.1", "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz", @@ -1938,6 +2141,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/boxen/-/boxen-1.3.0.tgz", "integrity": "sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw==", + "dev": true, "requires": { "ansi-align": "^2.0.0", "camelcase": "^4.0.0", @@ -1951,22 +2155,26 @@ "ansi-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true }, "camelcase": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=" + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "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=" + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, "requires": { "is-fullwidth-code-point": "^2.0.0", "strip-ansi": "^4.0.0" @@ -1976,6 +2184,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, "requires": { "ansi-regex": "^3.0.0" } @@ -1986,6 +2195,7 @@ "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -2027,32 +2237,35 @@ "dev": true }, "browser-sync": { - "version": "2.24.6", - "resolved": "https://registry.npmjs.org/browser-sync/-/browser-sync-2.24.6.tgz", - "integrity": "sha512-3cVW8Ft3sPQ1t9gqZXBDZhTyRce8NW4wf5KzpCYcg6fWjPbyt+vZLvEo+sTq7c7eNQhi8lInQWbjIFEpoM2f7Q==", + "version": "2.26.3", + "resolved": "https://registry.npmjs.org/browser-sync/-/browser-sync-2.26.3.tgz", + "integrity": "sha512-VLzpjCA4uXqfzkwqWtMM6hvPm2PNHp2RcmzBXcbi6C9WpkUhhFb8SVAr4CFrCsFxDg+oY6HalOjn8F+egyvhag==", "dev": true, "requires": { - "browser-sync-ui": "v1.0.1", + "browser-sync-client": "^2.26.2", + "browser-sync-ui": "^2.26.2", "bs-recipes": "1.3.4", - "chokidar": "1.7.0", + "bs-snippet-injector": "^2.0.1", + "chokidar": "^2.0.4", "connect": "3.6.6", - "connect-history-api-fallback": "^1.5.0", + "connect-history-api-fallback": "^1", "dev-ip": "^1.0.1", - "easy-extender": "2.3.2", - "eazy-logger": "3.0.2", + "easy-extender": "^2.3.4", + "eazy-logger": "^3", "etag": "^1.8.1", "fresh": "^0.5.2", "fs-extra": "3.0.1", "http-proxy": "1.15.2", - "immutable": "3.8.2", - "localtunnel": "1.9.0", + "immutable": "^3", + "localtunnel": "1.9.1", "micromatch": "2.3.11", - "opn": "4.0.2", + "opn": "5.3.0", "portscanner": "2.1.1", "qs": "6.2.3", "raw-body": "^2.3.2", "resp-modifier": "6.0.2", "rx": "4.1.0", + "send": "0.16.2", "serve-index": "1.9.1", "serve-static": "1.13.2", "server-destroy": "1.0.1", @@ -2061,16 +2274,6 @@ "yargs": "6.4.0" }, "dependencies": { - "anymatch": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", - "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", - "dev": true, - "requires": { - "micromatch": "^2.1.5", - "normalize-path": "^2.0.0" - } - }, "arr-diff": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", @@ -2103,23 +2306,6 @@ "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", "dev": true }, - "chokidar": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", - "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", - "dev": true, - "requires": { - "anymatch": "^1.3.0", - "async-each": "^1.0.0", - "fsevents": "^1.0.0", - "glob-parent": "^2.0.0", - "inherits": "^2.0.1", - "is-binary-path": "^1.0.0", - "is-glob": "^2.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.0.0" - } - }, "cliui": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", @@ -2131,48 +2317,6 @@ "wrap-ansi": "^2.0.0" } }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "engine.io": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.2.0.tgz", - "integrity": "sha512-mRbgmAtQ4GAlKwuPnnAvXXwdPhEx+jkc0OBCLrXuD/CRvwNK3AxRSnqK4FSqmAMRRHryVJP8TopOvmEaA64fKw==", - "dev": true, - "requires": { - "accepts": "~1.3.4", - "base64id": "1.0.0", - "cookie": "0.3.1", - "debug": "~3.1.0", - "engine.io-parser": "~2.1.0", - "ws": "~3.3.1" - } - }, - "engine.io-client": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.2.1.tgz", - "integrity": "sha512-y5AbkytWeM4jQr7m/koQLc5AxpRKC1hEVUb/s1FUAWEJq5AzJJ4NLvzuKPuxtDi5Mq755WuDvZ6Iv2rXj4PTzw==", - "dev": true, - "requires": { - "component-emitter": "1.2.1", - "component-inherit": "0.0.3", - "debug": "~3.1.0", - "engine.io-parser": "~2.1.1", - "has-cors": "1.1.0", - "indexof": "0.0.1", - "parseqs": "0.0.5", - "parseuri": "0.0.5", - "ws": "~3.3.1", - "xmlhttprequest-ssl": "~1.5.4", - "yeast": "0.1.2" - } - }, "eventemitter3": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.2.0.tgz", @@ -2197,26 +2341,6 @@ "is-extglob": "^1.0.0" } }, - "fs-extra": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-3.0.1.tgz", - "integrity": "sha1-N5TzeMWLNC6n27sjCVEJxLO2IpE=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^3.0.0", - "universalify": "^0.1.0" - } - }, - "glob-parent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", - "dev": true, - "requires": { - "is-glob": "^2.0.0" - } - }, "http-proxy": { "version": "1.15.2", "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.15.2.tgz", @@ -2242,21 +2366,6 @@ "is-extglob": "^1.0.0" } }, - "isarray": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.1.tgz", - "integrity": "sha1-o32U7ZzaLVmGXJ92/llu4fM4dB4=", - "dev": true - }, - "jsonfile": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz", - "integrity": "sha1-pezG9l9T9mLEQVx2daAzHQmS7GY=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, "kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", @@ -2287,92 +2396,18 @@ "regex-cache": "^0.4.2" } }, - "opn": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/opn/-/opn-4.0.2.tgz", - "integrity": "sha1-erwi5kTf9jsKltWrfyeQwPAavJU=", - "dev": true, - "requires": { - "object-assign": "^4.0.1", - "pinkie-promise": "^2.0.0" - } - }, "qs": { "version": "6.2.3", "resolved": "https://registry.npmjs.org/qs/-/qs-6.2.3.tgz", "integrity": "sha1-HPyyXBCpsrSDBT/zn138kjOQjP4=", "dev": true }, - "socket.io": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.1.1.tgz", - "integrity": "sha512-rORqq9c+7W0DAK3cleWNSyfv/qKXV99hV4tZe+gGLfBECw3XEhBy7x85F3wypA9688LKjtwO9pX9L33/xQI8yA==", - "dev": true, - "requires": { - "debug": "~3.1.0", - "engine.io": "~3.2.0", - "has-binary2": "~1.0.2", - "socket.io-adapter": "~1.1.0", - "socket.io-client": "2.1.1", - "socket.io-parser": "~3.2.0" - } - }, - "socket.io-client": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.1.1.tgz", - "integrity": "sha512-jxnFyhAuFxYfjqIgduQlhzqTcOEQSn+OHKVfAxWaNWa7ecP7xSNk2Dx/3UEsDcY7NcFafxvNvKPmmO7HTwTxGQ==", - "dev": true, - "requires": { - "backo2": "1.0.2", - "base64-arraybuffer": "0.1.5", - "component-bind": "1.0.0", - "component-emitter": "1.2.1", - "debug": "~3.1.0", - "engine.io-client": "~3.2.0", - "has-binary2": "~1.0.2", - "has-cors": "1.1.0", - "indexof": "0.0.1", - "object-component": "0.0.3", - "parseqs": "0.0.5", - "parseuri": "0.0.5", - "socket.io-parser": "~3.2.0", - "to-array": "0.1.4" - } - }, - "socket.io-parser": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.2.0.tgz", - "integrity": "sha512-FYiBx7rc/KORMJlgsXysflWx/RIvtqZbyGLlHZvjfmPTPeuD/I8MaW7cfFrj5tRltICJdgwflhfZ3NVVbVLFQA==", - "dev": true, - "requires": { - "component-emitter": "1.2.1", - "debug": "~3.1.0", - "isarray": "2.0.1" - } - }, - "ultron": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", - "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==", - "dev": true - }, "window-size": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.2.0.tgz", "integrity": "sha1-tDFbtCFKPXBY6+7okuE/ok2YsHU=", "dev": true }, - "ws": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", - "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", - "dev": true, - "requires": { - "async-limiter": "~1.0.0", - "safe-buffer": "~5.1.0", - "ultron": "~1.1.0" - } - }, "y18n": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", @@ -2412,17 +2447,46 @@ } } }, + "browser-sync-client": { + "version": "2.26.2", + "resolved": "https://registry.npmjs.org/browser-sync-client/-/browser-sync-client-2.26.2.tgz", + "integrity": "sha512-FEuVJD41fI24HJ30XOT2RyF5WcnEtdJhhTqeyDlnMk/8Ox9MZw109rvk9pdfRWye4soZLe+xcAo9tHSMxvgAdw==", + "dev": true, + "requires": { + "etag": "1.8.1", + "fresh": "0.5.2", + "mitt": "^1.1.3", + "rxjs": "^5.5.6" + }, + "dependencies": { + "rxjs": { + "version": "5.5.12", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz", + "integrity": "sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==", + "dev": true, + "requires": { + "symbol-observable": "1.0.1" + } + }, + "symbol-observable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", + "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=", + "dev": true + } + } + }, "browser-sync-ui": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browser-sync-ui/-/browser-sync-ui-1.0.1.tgz", - "integrity": "sha512-RIxmwVVcUFhRd1zxp7m2FfLnXHf59x4Gtj8HFwTA//3VgYI3AKkaQAuDL8KDJnE59XqCshxZa13JYuIWtZlKQg==", + "version": "2.26.2", + "resolved": "https://registry.npmjs.org/browser-sync-ui/-/browser-sync-ui-2.26.2.tgz", + "integrity": "sha512-LF7GMWo8ELOE0eAlxuRCfnGQT1ZxKP9flCfGgZdXFc6BwmoqaJHlYe7MmVvykKkXjolRXTz8ztXAKGVqNwJ3EQ==", "dev": true, "requires": { "async-each-series": "0.1.1", - "connect-history-api-fallback": "^1.1.0", - "immutable": "^3.7.6", + "connect-history-api-fallback": "^1", + "immutable": "^3", "server-destroy": "1.0.1", - "socket.io-client": "2.0.4", + "socket.io-client": "^2.0.4", "stream-throttle": "^0.1.3" } }, @@ -2498,13 +2562,23 @@ } }, "browserslist": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-3.2.7.tgz", - "integrity": "sha512-oYVLxFVqpX9uMhOIQBLtZL+CX4uY8ZpWcjNTaxyWl5rO8yA9SSNikFnAfvk8J3P/7z3BZwNmEqFKaJoYltj3MQ==", + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.3.4.tgz", + "integrity": "sha512-u5iz+ijIMUlmV8blX82VGFrB9ecnUg5qEt55CMZ/YJEhha+d8qpBfOFuutJ6F/VKRXjZoD33b6uvarpPxcl3RA==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30000835", - "electron-to-chromium": "^1.3.45" + "caniuse-lite": "^1.0.30000899", + "electron-to-chromium": "^1.3.82", + "node-releases": "^1.0.1" + } + }, + "browserstack": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/browserstack/-/browserstack-1.5.1.tgz", + "integrity": "sha512-O8VMT64P9NOLhuIoD4YngyxBURefaSdR4QdhG8l6HZ9VxtU7jc3m6jLufFwKA5gaf7fetfB2TnRJnMxyob+heg==", + "dev": true, + "requires": { + "https-proxy-agent": "^2.2.1" } }, "bs-recipes": { @@ -2513,6 +2587,12 @@ "integrity": "sha1-DS1NSKcYyMBEdp/cT4lZLci2lYU=", "dev": true }, + "bs-snippet-injector": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/bs-snippet-injector/-/bs-snippet-injector-2.0.1.tgz", + "integrity": "sha1-YbU5PxH1JVntEgaTEANDtu2wTdU=", + "dev": true + }, "buffer": { "version": "4.9.1", "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", @@ -2524,15 +2604,39 @@ "isarray": "^1.0.0" } }, + "buffer-alloc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "dev": true, + "requires": { + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" + } + }, + "buffer-alloc-unsafe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", + "dev": true + }, "buffer-equal": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.0.tgz", - "integrity": "sha1-WWFrSYME1Var1GaWayLu2j7KX74=" + "integrity": "sha1-WWFrSYME1Var1GaWayLu2j7KX74=", + "dev": true + }, + "buffer-fill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=", + "dev": true }, "buffer-from": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.0.0.tgz", - "integrity": "sha512-83apNb8KK0Se60UE1+4Ukbe3HbfELJ6UlI4ldtOGs7So4KD26orJM8hIY9lxdzP+UpItH1Yh/Y8GUvNFWFFRxA==" + "integrity": "sha512-83apNb8KK0Se60UE1+4Ukbe3HbfELJ6UlI4ldtOGs7So4KD26orJM8hIY9lxdzP+UpItH1Yh/Y8GUvNFWFFRxA==", + "dev": true }, "buffer-indexof": { "version": "1.1.1", @@ -2540,43 +2644,12 @@ "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", "dev": true }, - "buffer-more-ints": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/buffer-more-ints/-/buffer-more-ints-0.0.2.tgz", - "integrity": "sha1-JrOIXRD6E9t/wBquOquHAZngEkw=", - "dev": true - }, "buffer-xor": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", "dev": true }, - "buildmail": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/buildmail/-/buildmail-4.0.1.tgz", - "integrity": "sha1-h393OLeHKYccmhBeO4N9K+EaenI=", - "dev": true, - "optional": true, - "requires": { - "addressparser": "1.0.1", - "libbase64": "0.1.0", - "libmime": "3.0.0", - "libqp": "1.1.0", - "nodemailer-fetch": "1.6.0", - "nodemailer-shared": "1.1.0", - "punycode": "1.4.1" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true, - "optional": true - } - } - }, "builtin-modules": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", @@ -2639,16 +2712,47 @@ "unset-value": "^1.0.0" } }, + "call-me-maybe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", + "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=", + "dev": true + }, + "caller-callsite": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", + "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", + "dev": true, + "requires": { + "callsites": "^2.0.0" + } + }, + "caller-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", + "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", + "dev": true, + "requires": { + "caller-callsite": "^2.0.0" + } + }, "callsite": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz", "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=", "dev": true }, + "callsites": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", + "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", + "dev": true + }, "camel-case": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=", + "dev": true, "requires": { "no-case": "^2.2.0", "upper-case": "^1.1.1" @@ -2657,7 +2761,8 @@ "camelcase": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=" + "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", + "dev": true }, "camelcase-keys": { "version": "2.1.0", @@ -2678,15 +2783,22 @@ } }, "caniuse-lite": { - "version": "1.0.30000842", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000842.tgz", - "integrity": "sha512-juspQHLwQRgptEM03HN66SpM/ggZUB+m49NAgJIaIS11aXVNeRB57sEY1X6tEzeK2THGvYWKZZu1wIbh+W7YTA==", + "version": "1.0.30000907", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000907.tgz", + "integrity": "sha512-No5sQ/OB2Nmka8MNOOM6nJx+Hxt6MQ6h7t7kgJFu9oTuwjykyKRSBP/+i/QAyFHxeHB+ddE0Da1CG5ihx9oehQ==", + "dev": true + }, + "canonical-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/canonical-path/-/canonical-path-1.0.0.tgz", + "integrity": "sha512-feylzsbDxi1gPZ1IjystzIQZagYYLvfKrSuygUCgf7z6x790VEzze5QEkdSV1U58RA7Hi0+v6fv4K54atOzATg==", "dev": true }, "capture-stack-trace": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz", - "integrity": "sha1-Sm+gc5nCa7pH8LJJa00PtAjFVQ0=" + "integrity": "sha1-Sm+gc5nCa7pH8LJJa00PtAjFVQ0=", + "dev": true }, "caseless": { "version": "0.12.0", @@ -2704,6 +2816,7 @@ "version": "0.13.0", "resolved": "https://registry.npmjs.org/cdocparser/-/cdocparser-0.13.0.tgz", "integrity": "sha1-G6mKHh4WaOK/s11Bdh6eRkXXMbo=", + "dev": true, "requires": { "escape-string-regexp": "^1.0.2", "lodash.assign": "^2.4.1", @@ -2714,6 +2827,7 @@ "version": "2.4.1", "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-2.4.1.tgz", "integrity": "sha1-hMOVlt1xGBqXsGUpE6fJZ15Jsao=", + "dev": true, "requires": { "lodash._basecreatecallback": "~2.4.1", "lodash._objecttypes": "~2.4.1", @@ -2724,6 +2838,7 @@ "version": "2.4.1", "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-2.4.1.tgz", "integrity": "sha1-SN6kbfj/djKxDXBrissmWR4rNyc=", + "dev": true, "requires": { "lodash._isnative": "~2.4.1", "lodash._shimkeys": "~2.4.1", @@ -2747,6 +2862,7 @@ "version": "2.2.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.2.2.tgz", "integrity": "sha512-LvixLAQ4MYhbf7hgL4o5PeK32gJKvVzDRiSNIApDofQvyhl8adgG2lJVXn4+ekQoK7HL9RF8lqxwerpe0x2pCw==", + "dev": true, "requires": { "ansi-styles": "^3.1.0", "escape-string-regexp": "^1.0.5", @@ -2756,12 +2872,14 @@ "has-flag": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", - "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=" + "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "dev": true }, "supports-color": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "dev": true, "requires": { "has-flag": "^2.0.0" } @@ -2792,6 +2910,12 @@ "integrity": "sha512-7I/xceXfKyUJmSAn/jw8ve/9DyOP7XxufNYLI9Px7CmsKgEUaZLUTax6nZxGQtaoiZCjpu6cHPj20xC/vqRReQ==", "dev": true }, + "chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, "chokidar": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.4.tgz", @@ -2814,26 +2938,31 @@ } }, "chownr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz", - "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", "dev": true }, "chroma-js": { "version": "1.3.7", "resolved": "https://registry.npmjs.org/chroma-js/-/chroma-js-1.3.7.tgz", - "integrity": "sha512-ARq0P94NObL8hdQbgc+E33X9OHiNzdHO7epe3nC/KgxNRxkQcFpzNqnGeFjvOY2GxfVhbia686NXD2jByb1o0g==" + "integrity": "sha512-ARq0P94NObL8hdQbgc+E33X9OHiNzdHO7epe3nC/KgxNRxkQcFpzNqnGeFjvOY2GxfVhbia686NXD2jByb1o0g==", + "dev": true }, "chrome-trace-event": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-0.1.3.tgz", - "integrity": "sha512-sjndyZHrrWiu4RY7AkHgjn80GfAM2ZSzUkZLV/Js59Ldmh6JDThf0SUmOHU53rFu2rVxxfCzJ30Ukcfch3Gb/A==", - "dev": true + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.0.tgz", + "integrity": "sha512-xDbVgyfDTT2piup/h8dK/y4QZfJRSa73bw1WZ8b4XM1o7fsFubUVGYcE+1ANtOzJJELGpYoG2961z0Z6OAld9A==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } }, "ci-info": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.1.3.tgz", - "integrity": "sha512-SK/846h/Rcy8q9Z9CAwGBLfCJ6EkjJWdpelWDufQpqVDYq2Wnnv8zlSO6AMQap02jvhVruKKpEtQOufo3pFhLg==" + "integrity": "sha512-SK/846h/Rcy8q9Z9CAwGBLfCJ6EkjJWdpelWDufQpqVDYq2Wnnv8zlSO6AMQap02jvhVruKKpEtQOufo3pFhLg==", + "dev": true }, "cipher-base": { "version": "1.0.4", @@ -2852,9 +2981,9 @@ "dev": true }, "circular-json": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", - "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", + "version": "0.5.9", + "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.5.9.tgz", + "integrity": "sha512-4ivwqHpIFJZBuhN3g/pEcdbnGUywkBblloGbkglyloVjjR3uT6tieI89MVOfbP2tHX5sgb01FuLgAOzebNlJNQ==", "dev": true }, "class-utils": { @@ -2884,6 +3013,7 @@ "version": "4.1.11", "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.1.11.tgz", "integrity": "sha1-Ls3xRaujj1R0DybO/Q/z4D4SXWo=", + "dev": true, "requires": { "source-map": "0.5.x" } @@ -2891,7 +3021,23 @@ "cli-boxes": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-1.0.0.tgz", - "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=" + "integrity": "sha1-T6kXw+WclKAEzWH47lCdplFocUM=", + "dev": true + }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "requires": { + "restore-cursor": "^2.0.0" + } + }, + "cli-width": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", + "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "dev": true }, "cliui": { "version": "2.1.0", @@ -2917,12 +3063,14 @@ "clone": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.1.tgz", - "integrity": "sha1-0hfR6WERjjrJpLi7oyhVU79kfNs=" + "integrity": "sha1-0hfR6WERjjrJpLi7oyhVU79kfNs=", + "dev": true }, "clone-buffer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz", - "integrity": "sha1-4+JbIHrE5wGvch4staFnksrD3Fg=" + "integrity": "sha1-4+JbIHrE5wGvch4staFnksrD3Fg=", + "dev": true }, "clone-deep": { "version": "2.0.2", @@ -2949,12 +3097,14 @@ "clone-stats": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz", - "integrity": "sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE=" + "integrity": "sha1-uI+UqCzzi4eR1YBG6kAprYjKmdE=", + "dev": true }, "cloneable-readable": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.2.tgz", "integrity": "sha512-Bq6+4t+lbM8vhTs/Bef5c5AdEMtapp/iFb6+s4/Hh9MVTt8OLKH7ZOOZSCT+Ys7hsHvqv0GuMPJ1lnQJVHvxpg==", + "dev": true, "requires": { "inherits": "^2.0.1", "process-nextick-args": "^2.0.0", @@ -2974,12 +3124,12 @@ "dev": true }, "codelyzer": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/codelyzer/-/codelyzer-4.4.2.tgz", - "integrity": "sha512-tW796ECKMAynFtl/yyS5NRYhufbT3CEKjjMQ450kUeCcQlK7OIqD9VGRVwC3gSQSK4VaewCKCaVL0bzv9PhsLg==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/codelyzer/-/codelyzer-4.5.0.tgz", + "integrity": "sha512-oO6vCkjqsVrEsmh58oNlnJkRXuA30hF8cdNAQV9DytEalDwyOFRvHMnlKFzmOStNerOmPGZU9GAHnBo4tGvtiQ==", "dev": true, "requires": { - "app-root-path": "^2.0.1", + "app-root-path": "^2.1.0", "css-selector-tokenizer": "^0.7.0", "cssauron": "^1.4.0", "semver-dsl": "^1.0.1", @@ -3015,6 +3165,7 @@ "version": "1.9.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.1.tgz", "integrity": "sha512-mjGanIiwQJskCC18rPR6OmrZ6fm2Lc7PeGFYwCmy5J34wC6F1PzdGL6xeMfmgicfYcNLGuVFA3WzXtIDCQSZxQ==", + "dev": true, "requires": { "color-name": "^1.1.1" } @@ -3022,7 +3173,8 @@ "color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true }, "color-support": { "version": "1.1.3", @@ -3057,7 +3209,8 @@ "commander": { "version": "2.15.1", "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz", - "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==" + "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==", + "dev": true }, "commondir": { "version": "1.0.1", @@ -3066,9 +3219,9 @@ "dev": true }, "compare-versions": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.3.0.tgz", - "integrity": "sha512-MAAAIOdi2s4Gl6rZ76PNcUa9IOYB+5ICdT41o5uMRf09aEu/F9RK+qhe8RjXNPwcTjGV7KU7h2P/fljThFVqyQ==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.4.0.tgz", + "integrity": "sha512-tK69D7oNXXqUW3ZNo/z7NXTEz22TCF0pTE+YF9cxvaAM9XnkLo1fV621xCLrRR6aevJlKxExkss0vWqUCUpqdg==", "dev": true }, "component-bind": { @@ -3090,18 +3243,18 @@ "dev": true }, "compressible": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.14.tgz", - "integrity": "sha1-MmxfUH+7BV9UEWeCuWmoG2einac=", + "version": "2.0.15", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.15.tgz", + "integrity": "sha512-4aE67DL33dSW9gw4CI2H/yTxqHLNcxp0yS6jB+4h+wr3e43+1z7vm0HU9qXOH8j+qjKuL8+UtkOxYQSMq60Ylw==", "dev": true, "requires": { - "mime-db": ">= 1.34.0 < 2" + "mime-db": ">= 1.36.0 < 2" }, "dependencies": { "mime-db": { - "version": "1.35.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.35.0.tgz", - "integrity": "sha512-JWT/IcCTsB0Io3AhWUMjRqucrHSPsSf2xKLaRldJVULioggvkJvggZ3VXNNSRkCddE6D+BUI4HEIZIA2OjwIvg==", + "version": "1.37.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.37.0.tgz", + "integrity": "sha512-R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg==", "dev": true } } @@ -3124,12 +3277,14 @@ "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", + "dev": true }, "concat-stream": { "version": "1.6.2", "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", + "dev": true, "requires": { "buffer-from": "^1.0.0", "inherits": "^2.0.3", @@ -3158,6 +3313,7 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", + "dev": true, "requires": { "dot-prop": "^4.1.0", "graceful-fs": "^4.1.2", @@ -3261,7 +3417,8 @@ "convert-source-map": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", - "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=" + "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=", + "dev": true }, "cookie": { "version": "0.3.1", @@ -3296,9 +3453,9 @@ "dev": true }, "copy-webpack-plugin": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-4.5.2.tgz", - "integrity": "sha512-zmC33E8FFSq3AbflTvqvPvBo621H36Afsxlui91d+QyZxPIuXghfnTsa1CuqiAaCPgJoSUWfTFbKJnadZpKEbQ==", + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-4.5.4.tgz", + "integrity": "sha512-0lstlEyj74OAtYMrDxlNZsU7cwFijAI3Ofz2fD6Mpo9r4xCv4yegfa3uHIKvZY1NSuOtE9nvG6TAhJ+uz9gDaQ==", "dev": true, "requires": { "cacache": "^10.0.4", @@ -3322,25 +3479,26 @@ "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, "cosmiconfig": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-2.2.2.tgz", - "integrity": "sha512-GiNXLwAFPYHy25XmTPpafYvn3CLAkJ8FLsscq78MQd1Kh0OU6Yzhn4eV2MVF4G9WEQZoWEGltatdR+ntGPMl5A==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-4.0.0.tgz", + "integrity": "sha512-6e5vDdrXZD+t5v0L8CrurPeybg4Fmf+FCSYxXKYVAqLUtyCSbuyqE059d0kDthTNRzKVjL7QMgNpEUlsoYH3iQ==", "dev": true, - "requires": { - "is-directory": "^0.3.1", - "js-yaml": "^3.4.3", - "minimist": "^1.2.0", - "object-assign": "^4.1.0", - "os-homedir": "^1.0.1", - "parse-json": "^2.2.0", - "require-from-string": "^1.1.0" + "requires": { + "is-directory": "^0.3.1", + "js-yaml": "^3.9.0", + "parse-json": "^4.0.0", + "require-from-string": "^2.0.1" }, "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } } } }, @@ -3380,6 +3538,7 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/create-error-class/-/create-error-class-3.0.2.tgz", "integrity": "sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y=", + "dev": true, "requires": { "capture-stack-trace": "^1.0.0" } @@ -3463,7 +3622,8 @@ "crypto-random-string": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", - "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=" + "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", + "dev": true }, "css": { "version": "2.2.3", @@ -3494,22 +3654,10 @@ "integrity": "sha1-Mh9s9zeCpv91ERE5D8BeLGV9jJs=", "dev": true }, - "css-select": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", - "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", - "dev": true, - "requires": { - "boolbase": "~1.0.0", - "css-what": "2.1", - "domutils": "1.5.1", - "nth-check": "~1.0.1" - } - }, "css-selector-tokenizer": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz", - "integrity": "sha1-5piEdK6MlTR3v15+/s/OzNnPTIY=", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.1.tgz", + "integrity": "sha512-xYL0AMZJ4gFzJQsHUKa5jiWWi2vH77WVNg7JYRyewwj6oPh4yb/y6Y9ZCw9dsj/9UauMhtuxR+ogQd//EdEVNA==", "dev": true, "requires": { "cssesc": "^0.1.0", @@ -3517,12 +3665,6 @@ "regexpu-core": "^1.0.0" } }, - "css-what": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.0.tgz", - "integrity": "sha1-lGfQMsOM+u+58teVASUwYvh/ob0=", - "dev": true - }, "cssauron": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/cssauron/-/cssauron-1.4.0.tgz", @@ -3578,6 +3720,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/dargs/-/dargs-4.1.0.tgz", "integrity": "sha1-A6nbtLXC8Tm/FK5T8LiipqhvThc=", + "dev": true, "requires": { "number-is-nan": "^1.0.0" } @@ -3591,13 +3734,6 @@ "assert-plus": "^1.0.0" } }, - "data-uri-to-buffer": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-1.2.0.tgz", - "integrity": "sha512-vKQ9DTQPN1FLYiiEEOQ6IBGFqvjCa5rSK3cWMy/Nespm5d/x3dGFT9UBZnkLxCwua/IXBi2TYnwTEpsOvhC4UQ==", - "dev": true, - "optional": true - }, "date-format": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/date-format/-/date-format-1.2.0.tgz", @@ -3650,7 +3786,8 @@ "decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", + "dev": true }, "decamelize-keys": { "version": "1.1.0", @@ -3677,7 +3814,8 @@ "deep-extend": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.5.1.tgz", - "integrity": "sha512-N8vBdOa+DF7zkRrDCsaOXoCs/E2fJfx9B9MrKnnSiHNh4ws7eSys6YQE4KvT1cecKmOASYQBhbKjeuDD9lT81w==" + "integrity": "sha512-N8vBdOa+DF7zkRrDCsaOXoCs/E2fJfx9B9MrKnnSiHNh4ws7eSys6YQE4KvT1cecKmOASYQBhbKjeuDD9lT81w==", + "dev": true }, "deep-is": { "version": "0.1.3", @@ -3685,6 +3823,46 @@ "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", "dev": true }, + "default-gateway": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-2.7.2.tgz", + "integrity": "sha512-lAc4i9QJR0YHSDFdzeBQKfZ1SRDG3hsJNEkrpcZa8QhBfidLAilT60BDEIVUUGqosFp425KOgB3uYqcnQrWafQ==", + "dev": true, + "requires": { + "execa": "^0.10.0", + "ip-regex": "^2.1.0" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "execa": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz", + "integrity": "sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + } + } + }, "default-require-extensions": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", @@ -3720,12 +3898,12 @@ } }, "define-properties": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz", - "integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", + "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", + "dev": true, "requires": { - "foreach": "^2.0.5", - "object-keys": "^1.0.8" + "object-keys": "^1.0.12" } }, "define-property": { @@ -3769,27 +3947,6 @@ } } }, - "degenerator": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-1.0.4.tgz", - "integrity": "sha1-/PSQo37OJmRk2cxDGrmMWBnO0JU=", - "dev": true, - "optional": true, - "requires": { - "ast-types": "0.x.x", - "escodegen": "1.x.x", - "esprima": "3.x.x" - }, - "dependencies": { - "esprima": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", - "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=", - "dev": true, - "optional": true - } - } - }, "del": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/del/-/del-3.0.0.tgz", @@ -3845,6 +4002,12 @@ "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", "dev": true }, + "dependency-graph": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.7.2.tgz", + "integrity": "sha512-KqtH4/EZdtdfWX0p6MGP9jljvxSY6msy/pRUD4jgNwVpv3v1QmNLlsB3LDSSUg79BRVSn7jI1QPRtArGABovAQ==", + "dev": true + }, "deprecated": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/deprecated/-/deprecated-0.0.1.tgz", @@ -3889,9 +4052,9 @@ "dev": true }, "detect-node": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.3.tgz", - "integrity": "sha1-ogM8CcyOFY03dI+951B4Mr1s4Sc=", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", + "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==", "dev": true }, "dev-ip": { @@ -3961,24 +4124,8 @@ "docopt": { "version": "0.6.2", "resolved": "https://registry.npmjs.org/docopt/-/docopt-0.6.2.tgz", - "integrity": "sha1-so6eIiDaXsSffqW7JKR3h0Be6xE=" - }, - "dom-converter": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.1.4.tgz", - "integrity": "sha1-pF71cnuJDJv/5tfIduexnLDhfzs=", - "dev": true, - "requires": { - "utila": "~0.3" - }, - "dependencies": { - "utila": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/utila/-/utila-0.3.3.tgz", - "integrity": "sha1-1+jn1+MJEHCSsF+NloiCTWM6QiY=", - "dev": true - } - } + "integrity": "sha1-so6eIiDaXsSffqW7JKR3h0Be6xE=", + "dev": true }, "dom-serialize": { "version": "2.2.1", @@ -4023,18 +4170,18 @@ "dev": true }, "domhandler": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.1.0.tgz", - "integrity": "sha1-0mRvXlf2w7qxHPbLBdPArPdBJZQ=", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", "dev": true, "requires": { "domelementtype": "1" } }, "domutils": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", "dev": true, "requires": { "dom-serializer": "0", @@ -4045,17 +4192,11 @@ "version": "4.2.0", "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", + "dev": true, "requires": { "is-obj": "^1.0.0" } }, - "double-ended-queue": { - "version": "2.1.0-0", - "resolved": "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz", - "integrity": "sha1-ED01J/0xUo9AGIEwyEHv3XgmTlw=", - "dev": true, - "optional": true - }, "duplexer2": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz", @@ -4094,12 +4235,14 @@ "duplexer3": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", - "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=", + "dev": true }, "duplexify": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.6.0.tgz", "integrity": "sha512-fO3Di4tBKJpYTFHAxTU00BcfWMY9w24r/x21a6rZRbsD/ToUgGxsMbiGRmB7uVAXeGKXD9MwiLZa5E97EVgIRQ==", + "dev": true, "requires": { "end-of-stream": "^1.0.0", "inherits": "^2.0.1", @@ -4108,20 +4251,12 @@ } }, "easy-extender": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/easy-extender/-/easy-extender-2.3.2.tgz", - "integrity": "sha1-PTJI/r4rFZYHMW2PnPSRwWZIIh0=", + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/easy-extender/-/easy-extender-2.3.4.tgz", + "integrity": "sha512-8cAwm6md1YTiPpOvDULYJL4ZS6WfM5/cTeVVh4JsvyYZAoqlRVUpHL9Gr5Fy7HA6xcSZicUia3DeAgO3Us8E+Q==", "dev": true, "requires": { - "lodash": "^3.10.1" - }, - "dependencies": { - "lodash": { - "version": "3.10.1", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-3.10.1.tgz", - "integrity": "sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=", - "dev": true - } + "lodash": "^4.17.10" } }, "eazy-logger": { @@ -4149,22 +4284,16 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", "dev": true }, - "ejs": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.6.1.tgz", - "integrity": "sha512-0xy4A/twfrRCnkhfk8ErDi5DqdAsAqeGxht4xkCUrsvhhbQNs7E+4jV0CN7+NKIY0aHE72+XvqtBIXzD31ZbXQ==", - "dev": true - }, "electron-to-chromium": { - "version": "1.3.47", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.47.tgz", - "integrity": "sha1-dk6IfKkQTQGgrI6r7n38DizhQQQ=", + "version": "1.3.84", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.84.tgz", + "integrity": "sha512-IYhbzJYOopiTaNWMBp7RjbecUBsbnbDneOP86f3qvS0G0xfzwNSvMJpTrvi5/Y1gU7tg2NAgeg8a8rCYvW9Whw==", "dev": true }, "elliptic": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz", - "integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.1.tgz", + "integrity": "sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ==", "dev": true, "requires": { "bn.js": "^4.4.0", @@ -4192,6 +4321,7 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", + "dev": true, "requires": { "once": "^1.4.0" } @@ -4199,12 +4329,13 @@ "ends-with": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/ends-with/-/ends-with-0.2.0.tgz", - "integrity": "sha1-L52pjVelDP2kVxzkM5AAUA9Oa4o=" + "integrity": "sha1-L52pjVelDP2kVxzkM5AAUA9Oa4o=", + "dev": true }, "engine.io": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.1.5.tgz", - "integrity": "sha512-D06ivJkYxyRrcEe0bTpNnBQNgP9d3xog+qZlLbui8EsMr/DouQpf5o9FzJnWYHEYE0YsFHllUv2R1dkgYZXHcA==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.2.1.tgz", + "integrity": "sha512-+VlKzHzMhaU+GsCIg4AoXF1UdDFjHHwMmMKqMJNDNLlUlejz58FCy4LBqB2YVJskHGYl06BatYWKP2TVdVXE5w==", "dev": true, "requires": { "accepts": "~1.3.4", @@ -4212,7 +4343,6 @@ "cookie": "0.3.1", "debug": "~3.1.0", "engine.io-parser": "~2.1.0", - "uws": "~9.14.0", "ws": "~3.3.1" }, "dependencies": { @@ -4224,30 +4354,13 @@ "requires": { "ms": "2.0.0" } - }, - "ultron": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", - "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==", - "dev": true - }, - "ws": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", - "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", - "dev": true, - "requires": { - "async-limiter": "~1.0.0", - "safe-buffer": "~5.1.0", - "ultron": "~1.1.0" - } } } }, "engine.io-client": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.1.6.tgz", - "integrity": "sha512-hnuHsFluXnsKOndS4Hv6SvUrgdYx1pk2NqfaDMW+GWdgfU3+/V25Cj7I8a0x92idSpa5PIhJRKxPvp9mnoLsfg==", + "version": "3.2.1", + "resolved": "http://registry.npmjs.org/engine.io-client/-/engine.io-client-3.2.1.tgz", + "integrity": "sha512-y5AbkytWeM4jQr7m/koQLc5AxpRKC1hEVUb/s1FUAWEJq5AzJJ4NLvzuKPuxtDi5Mq755WuDvZ6Iv2rXj4PTzw==", "dev": true, "requires": { "component-emitter": "1.2.1", @@ -4271,36 +4384,19 @@ "requires": { "ms": "2.0.0" } - }, - "ultron": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", - "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==", - "dev": true - }, - "ws": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", - "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", - "dev": true, - "requires": { - "async-limiter": "~1.0.0", - "safe-buffer": "~5.1.0", - "ultron": "~1.1.0" - } } } }, "engine.io-parser": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.2.tgz", - "integrity": "sha512-dInLFzr80RijZ1rGpx1+56/uFoH7/7InhH3kZt+Ms6hT8tNx3NGW/WNSA/f8As1WkOfkuyb3tnRyuXGxusclMw==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.3.tgz", + "integrity": "sha512-6HXPre2O4Houl7c4g7Ic/XzPnHBvaEmN90vtRO9uLmwtRqQmTOw0QMevL1TOfL2Cpu1VzsaTmMotQgMdkzGkVA==", "dev": true, "requires": { "after": "0.8.2", "arraybuffer.slice": "~0.0.7", "base64-arraybuffer": "0.1.5", - "blob": "0.0.4", + "blob": "0.0.5", "has-binary2": "~1.0.2" } }, @@ -4322,9 +4418,9 @@ "dev": true }, "entities": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", - "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", "dev": true }, "errno": { @@ -4337,38 +4433,14 @@ } }, "error-ex": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz", - "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, "requires": { "is-arrayish": "^0.2.1" } }, - "es-abstract": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.12.0.tgz", - "integrity": "sha512-C8Fx/0jFmV5IPoMOFPA9P9G5NtqW+4cOPit3MIuvR2t7Ag2K15EJTpxnHAYTzL+aYQJIESYeXZmDBfOBE1HcpA==", - "dev": true, - "requires": { - "es-to-primitive": "^1.1.1", - "function-bind": "^1.1.1", - "has": "^1.0.1", - "is-callable": "^1.1.3", - "is-regex": "^1.0.4" - } - }, - "es-to-primitive": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz", - "integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=", - "dev": true, - "requires": { - "is-callable": "^1.1.1", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.1" - } - }, "es5-ext": { "version": "0.10.42", "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.42.tgz", @@ -4383,7 +4455,8 @@ "es6-denodeify": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/es6-denodeify/-/es6-denodeify-0.1.5.tgz", - "integrity": "sha1-MdTV/pxVA+ElRgQ5MQ4WoqPznB8=" + "integrity": "sha1-MdTV/pxVA+ElRgQ5MQ4WoqPznB8=", + "dev": true }, "es6-iterator": { "version": "2.0.3", @@ -4399,7 +4472,8 @@ "es6-promise": { "version": "4.2.4", "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.4.tgz", - "integrity": "sha512-/NdNZVJg+uZgtm9eS3O6lrOLYmQag2DjdEXuPaHlZ6RuVqgqaVZfgYCepEIKsLqwdQArOPtC3XzRLqGGfT8KQQ==" + "integrity": "sha512-/NdNZVJg+uZgtm9eS3O6lrOLYmQag2DjdEXuPaHlZ6RuVqgqaVZfgYCepEIKsLqwdQArOPtC3XzRLqGGfT8KQQ==", + "dev": true }, "es6-promisify": { "version": "5.0.0", @@ -4441,7 +4515,8 @@ "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true }, "escodegen": { "version": "1.8.1", @@ -4469,9 +4544,9 @@ } }, "eslint-scope": { - "version": "3.7.3", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.3.tgz", - "integrity": "sha512-W+B0SvF4gamyCTmUc+uITPY0989iXVfKvhwtmJocTaYoc/3khEHmEmvfY/Gn9HA9VV75jrQECsHizkNw1b68FA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.0.tgz", + "integrity": "sha512-1G6UTDi7Jc1ELFwnR58HV4fK9OQK4S6N985f166xqXxpjU6plxFISJa2Ba9KCQuFa8RCnj/lSFJbHo7UFDBnUA==", "dev": true, "requires": { "esrecurse": "^4.1.0", @@ -4578,6 +4653,7 @@ "version": "0.7.0", "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", + "dev": true, "requires": { "cross-spawn": "^5.0.1", "get-stream": "^3.0.0", @@ -4592,6 +4668,7 @@ "version": "5.1.0", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", + "dev": true, "requires": { "lru-cache": "^4.0.1", "shebang-command": "^1.2.0", @@ -4704,6 +4781,7 @@ "version": "1.8.2", "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", + "dev": true, "requires": { "fill-range": "^2.1.0" }, @@ -4712,6 +4790,7 @@ "version": "2.2.4", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", + "dev": true, "requires": { "is-number": "^2.1.0", "isobject": "^2.0.0", @@ -4724,6 +4803,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", + "dev": true, "requires": { "kind-of": "^3.0.2" } @@ -4732,6 +4812,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "dev": true, "requires": { "isarray": "1.0.0" } @@ -4740,6 +4821,7 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -4756,14 +4838,14 @@ } }, "express": { - "version": "4.16.3", - "resolved": "https://registry.npmjs.org/express/-/express-4.16.3.tgz", - "integrity": "sha1-avilAjUNsyRuzEvs9rWjTSL37VM=", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/express/-/express-4.16.4.tgz", + "integrity": "sha512-j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg==", "dev": true, "requires": { "accepts": "~1.3.5", "array-flatten": "1.1.1", - "body-parser": "1.18.2", + "body-parser": "1.18.3", "content-disposition": "0.5.2", "content-type": "~1.0.4", "cookie": "0.3.1", @@ -4780,10 +4862,10 @@ "on-finished": "~2.3.0", "parseurl": "~1.3.2", "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.3", - "qs": "6.5.1", + "proxy-addr": "~2.0.4", + "qs": "6.5.2", "range-parser": "~1.2.0", - "safe-buffer": "5.1.1", + "safe-buffer": "5.1.2", "send": "0.16.2", "serve-static": "1.13.2", "setprototypeof": "1.1.0", @@ -4798,30 +4880,20 @@ "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", "dev": true - }, - "qs": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==", - "dev": true - }, - "safe-buffer": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", - "dev": true } } }, "extend": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz", - "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=" + "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=", + "dev": true }, "extend-shallow": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "dev": true, "requires": { "assign-symbols": "^1.0.0", "is-extendable": "^1.0.1" @@ -4831,12 +4903,35 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "dev": true, "requires": { "is-plain-object": "^2.0.4" } } } }, + "external-editor": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.0.3.tgz", + "integrity": "sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==", + "dev": true, + "requires": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "dependencies": { + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } + } + } + }, "extglob": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", @@ -4925,6 +5020,20 @@ "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", "dev": true }, + "fast-glob": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.4.tgz", + "integrity": "sha512-FjK2nCGI/McyzgNtTESqaWP3trPvHyRyoyY70hxjc3oKPNmDe8taohLZpoVKoUjW85tbU5txaYUZCNtVzygl1g==", + "dev": true, + "requires": { + "@mrmlnc/readdir-enhanced": "^2.2.1", + "@nodelib/fs.stat": "^1.1.2", + "glob-parent": "^3.1.0", + "is-glob": "^4.0.0", + "merge2": "^1.2.3", + "micromatch": "^3.1.10" + } + }, "fast-json-stable-stringify": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", @@ -4938,9 +5047,9 @@ "dev": true }, "fastparse": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.1.tgz", - "integrity": "sha1-0eJkOzipTXWDtHkGDmxK/8lAcfg=", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.2.tgz", + "integrity": "sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==", "dev": true }, "faye-websocket": { @@ -4952,6 +5061,21 @@ "websocket-driver": ">=0.5.1" } }, + "figgy-pudding": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.1.tgz", + "integrity": "sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w==", + "dev": true + }, + "figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, "file-entry-cache": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", @@ -4963,26 +5087,20 @@ } }, "file-loader": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-1.1.11.tgz", - "integrity": "sha512-TGR4HU7HUsGg6GCOPJnFk06RhWgEWFLAGWiT6rcD+GRC2keU3s9RGJ+b3Z6/U73jwwNb2gKLJ7YCrp+jvU4ALg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-2.0.0.tgz", + "integrity": "sha512-YCsBfd1ZGCyonOKLxPiKPdu+8ld9HAaMEvJewzz+b2eTF7uL5Zm/HdBF6FjCrpCMRq25Mi0U1gl4pwn2TlH7hQ==", "dev": true, "requires": { "loader-utils": "^1.0.2", - "schema-utils": "^0.4.5" + "schema-utils": "^1.0.0" } }, - "file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", - "dev": true, - "optional": true - }, "filename-regex": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", - "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=" + "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", + "dev": true }, "fileset": { "version": "2.0.3", @@ -5046,7 +5164,8 @@ "find-index": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/find-index/-/find-index-0.1.1.tgz", - "integrity": "sha1-Z101iyyjiS15Whq0cjL4tuLg3eQ=" + "integrity": "sha1-Z101iyyjiS15Whq0cjL4tuLg3eQ=", + "dev": true }, "find-parent-dir": { "version": "0.3.0", @@ -5102,7 +5221,8 @@ "first-chunk-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz", - "integrity": "sha1-Wb+1DNkF9g18OUzT2ayqtOatk04=" + "integrity": "sha1-Wb+1DNkF9g18OUzT2ayqtOatk04=", + "dev": true }, "flagged-respawn": { "version": "1.0.0", @@ -5111,50 +5231,21 @@ "dev": true }, "flat-cache": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.0.tgz", - "integrity": "sha1-0wMLMrOBVPTjt+nHCfSQ9++XxIE=", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.2.tgz", + "integrity": "sha512-KByBY8c98sLUAGpnmjEdWTrtrLZRtZdwds+kAL/ciFXTCb7AZgqKsAnVnYFQj1hxepwO8JKN/8AsRWwLq+RK0A==", "dev": true, "requires": { "circular-json": "^0.3.1", - "del": "^2.0.2", + "del": "^3.0.0", "graceful-fs": "^4.1.2", "write": "^0.2.1" }, "dependencies": { - "del": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", - "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", - "dev": true, - "requires": { - "globby": "^5.0.0", - "is-path-cwd": "^1.0.0", - "is-path-in-cwd": "^1.0.0", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "rimraf": "^2.2.8" - } - }, - "globby": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", - "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "arrify": "^1.0.0", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", + "circular-json": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", + "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", "dev": true } } @@ -5163,18 +5254,19 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.0.3.tgz", "integrity": "sha512-calZMC10u0FMUqoiunI2AiGIIUtUIvifNwkHhNupZH4cbNnW1Itkoh/Nf5HFYmDrwWPjrUxpkZT0KhuCq0jmGw==", + "dev": true, "requires": { "inherits": "^2.0.1", "readable-stream": "^2.0.4" } }, "follow-redirects": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.1.tgz", - "integrity": "sha512-v9GI1hpaqq1ZZR6pBD1+kI7O24PhDvNGNodjS3MdcEqyrahCp8zbtpv+2B/krUnSmUH80lbAS7MrdeK5IylgKg==", + "version": "1.5.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.9.tgz", + "integrity": "sha512-Bh65EZI/RU8nx0wbYF9shkFZlqLP+6WT/5FnA3cE/djNSuKNHJEinGGZgu/cQEkeeb2GdFOgenAmn8qaqYke2w==", "dev": true, "requires": { - "debug": "^3.1.0" + "debug": "=3.1.0" }, "dependencies": { "debug": { @@ -5191,7 +5283,8 @@ "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", + "dev": true }, "for-own": { "version": "1.0.0", @@ -5202,11 +5295,6 @@ "for-in": "^1.0.1" } }, - "foreach": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", - "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=" - }, "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", @@ -5265,20 +5353,32 @@ } }, "fs-extra": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-6.0.1.tgz", - "integrity": "sha512-GnyIkKhhzXZUWFCaJzvyDLEEgDkPfb4/TPvJCJVuS8MWZgoSsErf++QpiAlDnKFcqhRlm+tIOcencCjyJE6ZCA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-3.0.1.tgz", + "integrity": "sha1-N5TzeMWLNC6n27sjCVEJxLO2IpE=", "dev": true, "requires": { "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", + "jsonfile": "^3.0.0", "universalify": "^0.1.0" + }, + "dependencies": { + "jsonfile": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz", + "integrity": "sha1-pezG9l9T9mLEQVx2daAzHQmS7GY=", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6" + } + } } }, "fs-mkdirp-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz", "integrity": "sha1-C3gV/DIBxqaeFNuYzgmMFpNSWes=", + "dev": true, "requires": { "graceful-fs": "^4.1.11", "through2": "^2.0.3" @@ -5299,7 +5399,8 @@ "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true }, "fsevents": { "version": "1.2.4", @@ -5342,14 +5443,12 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, - "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -5370,14 +5469,12 @@ "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "core-util-is": { "version": "1.0.2", @@ -5522,7 +5619,6 @@ "version": "3.0.4", "bundled": true, "dev": true, - "optional": true, "requires": { "brace-expansion": "^1.1.7" } @@ -5530,14 +5626,12 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "minipass": { "version": "2.2.4", "bundled": true, "dev": true, - "optional": true, "requires": { "safe-buffer": "^5.1.1", "yallist": "^3.0.0" @@ -5556,7 +5650,6 @@ "version": "0.5.1", "bundled": true, "dev": true, - "optional": true, "requires": { "minimist": "0.0.8" } @@ -5650,7 +5743,6 @@ "version": "1.4.0", "bundled": true, "dev": true, - "optional": true, "requires": { "wrappy": "1" } @@ -5772,7 +5864,6 @@ "version": "1.0.2", "bundled": true, "dev": true, - "optional": true, "requires": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -5856,50 +5947,11 @@ "rimraf": "2" } }, - "ftp": { - "version": "0.3.10", - "resolved": "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz", - "integrity": "sha1-kZfYYa2BQvPmPVqDv+TFn3MwiF0=", - "dev": true, - "optional": true, - "requires": { - "readable-stream": "1.1.x", - "xregexp": "2.0.0" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true, - "optional": true - }, - "readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" - } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", - "dev": true, - "optional": true - } - } - }, "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true }, "gauge": { "version": "2.7.4", @@ -5918,59 +5970,31 @@ } }, "gaze": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.2.tgz", - "integrity": "sha1-hHIkZ3rbiHDWeSV+0ziP22HkAQU=", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", + "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", "dev": true, "requires": { "globule": "^1.0.0" } }, - "generate-function": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz", - "integrity": "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ=", - "dev": true - }, - "generate-object-property": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", - "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=", - "dev": true, - "requires": { - "is-property": "^1.0.0" - } - }, "get-caller-file": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz", - "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", "dev": true }, "get-stdin": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=" + "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", + "dev": true }, "get-stream": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" - }, - "get-uri": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.2.tgz", - "integrity": "sha512-ZD325dMZOgerGqF/rF6vZXyFGTAay62svjQIT+X/oU2PtxYpFxvSkbsdi+oxIrsNxlZVd4y8wUDqkaExWTI/Cw==", - "dev": true, - "optional": true, - "requires": { - "data-uri-to-buffer": "1", - "debug": "2", - "extend": "3", - "file-uri-to-path": "1", - "ftp": "~0.3.10", - "readable-stream": "2" - } + "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", + "dev": true }, "get-value": { "version": "2.0.6", @@ -5991,6 +6015,7 @@ "version": "7.1.2", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", + "dev": true, "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -6004,6 +6029,7 @@ "version": "0.3.0", "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", + "dev": true, "requires": { "glob-parent": "^2.0.0", "is-glob": "^2.0.0" @@ -6013,6 +6039,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", + "dev": true, "requires": { "is-glob": "^2.0.0" } @@ -6020,12 +6047,14 @@ "is-extglob": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true }, "is-glob": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, "requires": { "is-extglob": "^1.0.0" } @@ -6036,6 +6065,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "dev": true, "requires": { "is-glob": "^3.1.0", "path-dirname": "^1.0.0" @@ -6045,6 +6075,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "dev": true, "requires": { "is-extglob": "^2.1.0" } @@ -6122,6 +6153,12 @@ } } }, + "glob-to-regexp": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz", + "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=", + "dev": true + }, "glob-watcher": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-0.0.6.tgz", @@ -6202,6 +6239,7 @@ "version": "0.0.12", "resolved": "https://registry.npmjs.org/glob2base/-/glob2base-0.0.12.tgz", "integrity": "sha1-nUGbPijxLoOjYhZKJ3BVkiycDVY=", + "dev": true, "requires": { "find-index": "^0.1.1" } @@ -6210,6 +6248,7 @@ "version": "0.1.1", "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", "integrity": "sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU=", + "dev": true, "requires": { "ini": "^1.3.4" } @@ -6265,13 +6304,13 @@ "dev": true }, "globule": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.0.tgz", - "integrity": "sha1-HcScaCLdnoovoAuiopUAboZkvQk=", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.1.tgz", + "integrity": "sha512-g7QtgWF4uYSL5/dn71WxubOrS7JVGCnFPEnoeChJmBnyR9Mw8nGoEwOgJL/RC2Te0WhbsEUCejfH8SZNJ+adYQ==", "dev": true, "requires": { "glob": "~7.1.1", - "lodash": "~4.17.4", + "lodash": "~4.17.10", "minimatch": "~3.0.2" } }, @@ -6305,6 +6344,7 @@ "version": "6.7.1", "resolved": "https://registry.npmjs.org/got/-/got-6.7.1.tgz", "integrity": "sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA=", + "dev": true, "requires": { "create-error-class": "^3.0.0", "duplexer3": "^0.1.4", @@ -6322,7 +6362,8 @@ "graceful-fs": { "version": "4.1.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=" + "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", + "dev": true }, "growl": { "version": "1.10.5", @@ -6430,22 +6471,45 @@ } }, "gulp-postcss": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/gulp-postcss/-/gulp-postcss-7.0.1.tgz", - "integrity": "sha1-Pxw22xGXFAw5nCUt3/M5EpY445U=", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/gulp-postcss/-/gulp-postcss-8.0.0.tgz", + "integrity": "sha512-Wtl6vH7a+8IS/fU5W9IbOpcaLqKxd5L1DUOzaPmlnCbX1CrG0aWdwVnC3Spn8th0m8D59YbysV5zPUe1n/GJYg==", "dev": true, "requires": { "fancy-log": "^1.3.2", - "plugin-error": "^0.1.2", - "postcss": "^6.0.0", - "postcss-load-config": "^1.2.0", + "plugin-error": "^1.0.1", + "postcss": "^7.0.2", + "postcss-load-config": "^2.0.0", "vinyl-sourcemaps-apply": "^0.2.1" + }, + "dependencies": { + "ansi-colors": { + "version": "1.1.0", + "resolved": "http://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", + "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", + "dev": true, + "requires": { + "ansi-wrap": "^0.1.0" + } + }, + "plugin-error": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz", + "integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==", + "dev": true, + "requires": { + "ansi-colors": "^1.0.1", + "arr-diff": "^4.0.0", + "arr-union": "^3.1.0", + "extend-shallow": "^3.0.2" + } + } } }, "gulp-sass": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/gulp-sass/-/gulp-sass-4.0.1.tgz", - "integrity": "sha512-OMQEgWNggpog8Tc5v1MuI6eo+5iiPkVeLL76iBhDoEEScLUPfZlpvzmgTnLkpcqdrNodZxpz5qcv6mS2rulk3g==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/gulp-sass/-/gulp-sass-4.0.2.tgz", + "integrity": "sha512-q8psj4+aDrblJMMtRxihNBdovfzGrXJp1l4JU0Sz4b/Mhsi2DPrKFYCGDwjIWRENs04ELVHxdOJQ7Vs98OFohg==", "dev": true, "requires": { "chalk": "^2.3.0", @@ -6458,6 +6522,15 @@ "vinyl-sourcemaps-apply": "^0.2.0" }, "dependencies": { + "ansi-colors": { + "version": "1.1.0", + "resolved": "http://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", + "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", + "dev": true, + "requires": { + "ansi-wrap": "^0.1.0" + } + }, "ansi-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", @@ -6591,6 +6664,7 @@ "version": "5.0.0-alpha.3", "resolved": "https://registry.npmjs.org/gulp-typescript/-/gulp-typescript-5.0.0-alpha.3.tgz", "integrity": "sha512-6iSBjqBXAUqRsLUh/9XtlOnSzpPMbLrr5rqGj4UPLtGpDwFHW/fVTuRgv6LAWiKesLIUDDM0ourxvcpu2trecQ==", + "dev": true, "requires": { "ansi-colors": "^2.0.2", "plugin-error": "^1.0.1", @@ -6603,17 +6677,20 @@ "ansi-colors": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-2.0.5.tgz", - "integrity": "sha512-yAdfUZ+c2wetVNIFsNRn44THW+Lty6S5TwMpUfLA/UaGhiXbBv/F8E60/1hMLd0cnF/CDoWH8vzVaI5bAcHCjw==" + "integrity": "sha512-yAdfUZ+c2wetVNIFsNRn44THW+Lty6S5TwMpUfLA/UaGhiXbBv/F8E60/1hMLd0cnF/CDoWH8vzVaI5bAcHCjw==", + "dev": true }, "clone-stats": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", - "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=" + "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=", + "dev": true }, "glob-stream": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-6.1.0.tgz", "integrity": "sha1-cEXJlBOz65SIjYOrRtC0BMx73eQ=", + "dev": true, "requires": { "extend": "^3.0.0", "glob": "^7.1.1", @@ -6630,12 +6707,14 @@ "is-valid-glob": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz", - "integrity": "sha1-Kb8+/3Ab4tTTFdusw5vDn+j2Aao=" + "integrity": "sha1-Kb8+/3Ab4tTTFdusw5vDn+j2Aao=", + "dev": true }, "ordered-read-streams": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz", "integrity": "sha1-d8DLN8QVJdZBZtmQ/61+xqDhNj4=", + "dev": true, "requires": { "readable-stream": "^2.0.1" } @@ -6644,6 +6723,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz", "integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==", + "dev": true, "requires": { "ansi-colors": "^1.0.1", "arr-diff": "^4.0.0", @@ -6655,6 +6735,7 @@ "version": "1.1.0", "resolved": "http://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz", "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==", + "dev": true, "requires": { "ansi-wrap": "^0.1.0" } @@ -6664,17 +6745,20 @@ "replace-ext": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", - "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=" + "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=", + "dev": true }, "source-map": { "version": "0.7.3", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==" + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true }, "to-absolute-glob": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz", "integrity": "sha1-GGX0PZ50sIItufFFt4z/fQ98hJs=", + "dev": true, "requires": { "is-absolute": "^1.0.0", "is-negated-glob": "^1.0.0" @@ -6684,6 +6768,7 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.2.1.tgz", "integrity": "sha1-WqADz76Uxf+GbE59ZouxxNuts2k=", + "dev": true, "requires": { "json-stable-stringify": "^1.0.0", "through2-filter": "^2.0.0" @@ -6693,6 +6778,7 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.0.tgz", "integrity": "sha512-MBH+yP0kC/GQ5GwBqrTPTzEfiiLjta7hTtvQtbxBgTeSXsmKQRQecjibMbxIXzVT3Y9KJK+drOz1/k+vsu8Nkg==", + "dev": true, "requires": { "clone": "^2.1.1", "clone-buffer": "^1.0.0", @@ -6706,6 +6792,7 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-3.0.3.tgz", "integrity": "sha512-vIu34EkyNyJxmP0jscNzWBSygh7VWhqun6RmqVfXePrOwi9lhvRs//dOaGOTRUQr4tx7/zd26Tk5WeSVZitgng==", + "dev": true, "requires": { "fs-mkdirp-stream": "^1.0.0", "glob-stream": "^6.1.0", @@ -6819,8 +6906,9 @@ } }, "hammer-simulator": { - "version": "git+https://github.com/hammerjs/simulator.git#31a05ccd9314247d4e404e18e310b9e3b4642056", - "from": "git+https://github.com/hammerjs/simulator.git", + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/hammer-simulator/-/hammer-simulator-0.0.1.tgz", + "integrity": "sha1-7tO85CtDMgF1o/T4NP4gjl+iSho=", "dev": true }, "hammerjs": { @@ -6908,19 +6996,11 @@ } } }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, "has-ansi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "dev": true, "requires": { "ansi-regex": "^2.0.0" } @@ -6966,7 +7046,8 @@ "has-symbols": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", - "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=" + "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", + "dev": true }, "has-unicode": { "version": "2.0.1", @@ -7041,7 +7122,8 @@ "he": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", - "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=" + "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", + "dev": true }, "highlight.js": { "version": "9.13.1", @@ -7049,17 +7131,6 @@ "integrity": "sha512-Sc28JNQNDzaH6PORtRLMvif9RSn1mYuOoX3omVjnb0+HbpPygU2ALBI0R/wsiqCb4/fcp07Gdo8g+fhtFrQl6A==", "dev": true }, - "hipchat-notifier": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/hipchat-notifier/-/hipchat-notifier-1.1.0.tgz", - "integrity": "sha1-ttJJdVQ3wZEII2d5nTupoPI7Ix4=", - "dev": true, - "optional": true, - "requires": { - "lodash": "^4.0.0", - "request": "^2.0.0" - } - }, "hmac-drbg": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", @@ -7087,9 +7158,9 @@ } }, "hosted-git-info": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.6.0.tgz", - "integrity": "sha512-lIbgIIQA3lz5XaB6vxakj6sDHADJiZadYEJB+FgA+C4nubM1NwcuvUr9EJPmnH1skZqpqUzWborWo8EIUi0Sdw==", + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", + "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==", "dev": true }, "hpack.js": { @@ -7114,6 +7185,7 @@ "version": "3.5.15", "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.15.tgz", "integrity": "sha512-OZa4rfb6tZOZ3Z8Xf0jKxXkiDcFWldQePGYFDcgKqES2sXeWaEv9y6QQvWUtX3ySI3feApQi5uCsHLINQ6NoAw==", + "dev": true, "requires": { "camel-case": "3.0.x", "clean-css": "4.1.x", @@ -7130,79 +7202,30 @@ "integrity": "sha1-ELMKOGCF9Dzt41PMj6fLDe7qZos=", "dev": true }, - "html-webpack-plugin": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-3.2.0.tgz", - "integrity": "sha1-sBq71yOsqqeze2r0SS69oD2d03s=", - "dev": true, - "requires": { - "html-minifier": "^3.2.3", - "loader-utils": "^0.2.16", - "lodash": "^4.17.3", - "pretty-error": "^2.0.2", - "tapable": "^1.0.0", - "toposort": "^1.0.0", - "util.promisify": "1.0.0" - }, - "dependencies": { - "loader-utils": { - "version": "0.2.17", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz", - "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", - "dev": true, - "requires": { - "big.js": "^3.1.3", - "emojis-list": "^2.0.0", - "json5": "^0.5.0", - "object-assign": "^4.0.1" - } - } - } - }, "htmlparser2": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.3.0.tgz", - "integrity": "sha1-zHDQWln2VC5D8OaFyYLhTJJKnv4=", + "version": "3.10.0", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.0.tgz", + "integrity": "sha512-J1nEUGv+MkXS0weHNWVKJJ+UrLfePxRWpN3C9bEi9fLxL2+ggW94DQvgYVXsaT30PGwYRIZKNZXuyMhp3Di4bQ==", "dev": true, "requires": { - "domelementtype": "1", - "domhandler": "2.1", - "domutils": "1.1", - "readable-stream": "1.0" + "domelementtype": "^1.3.0", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.0.6" }, "dependencies": { - "domutils": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.1.6.tgz", - "integrity": "sha1-vdw94Jm5ou+sxRxiPyj0FuzFdIU=", - "dev": true, - "requires": { - "domelementtype": "1" - } - }, - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", - "dev": true - }, "readable-stream": { - "version": "1.0.34", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.0.6.tgz", + "integrity": "sha512-9E1oLoOWfhSXHGv6QlwXJim7uNzd9EVlWK+21tCU9Ju/kR0/p2AZYPz4qSchgO8PlLIH4FpZYfzwS+rEksZjIg==", "dev": true, "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "0.0.1", - "string_decoder": "~0.10.x" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", - "dev": true } } }, @@ -7225,9 +7248,9 @@ } }, "http-parser-js": { - "version": "0.4.13", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.13.tgz", - "integrity": "sha1-O9bW/ebjFyyTNMOzO2wZPYD+ETc=", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.0.tgz", + "integrity": "sha512-cZdEF7r4gfRIq7ezX9J0T+kQmJNOub71dWbgAXVHDct80TKP4MCETtZQ31xyv38UwgzkWPYF/Xc0ge55dW9Z9w==", "dev": true }, "http-proxy": { @@ -7241,27 +7264,6 @@ "requires-port": "^1.0.0" } }, - "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==", - "dev": true, - "requires": { - "agent-base": "4", - "debug": "3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } - } - }, "http-proxy-middleware": { "version": "0.18.0", "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz", @@ -7285,22 +7287,6 @@ "sshpk": "^1.7.0" } }, - "httpntlm": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/httpntlm/-/httpntlm-1.6.1.tgz", - "integrity": "sha1-rQFScUOi6Hc8+uapb1hla7UqNLI=", - "dev": true, - "requires": { - "httpreq": ">=0.4.22", - "underscore": "~1.7.0" - } - }, - "httpreq": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/httpreq/-/httpreq-0.4.24.tgz", - "integrity": "sha1-QzX/2CzZaWaKOUZckprGHWOTYn8=", - "dev": true - }, "https-browserify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", @@ -7318,21 +7304,30 @@ }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true } } }, "iconv-lite": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", - "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==", - "dev": true + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", + "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", + "dev": true, + "requires": { + "safer-buffer": ">= 2.1.2 < 3" + } }, "ieee754": { "version": "1.1.12", @@ -7347,9 +7342,9 @@ "dev": true }, "ignore": { - "version": "3.3.8", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.8.tgz", - "integrity": "sha512-pUh+xUQQhQzevjRHHFqqcTy0/dP/kS9I8HSrUydhihjuD09W6ldVWFtIrwhXdUJHis3i2rZNqEHpZH/cbinFbg==", + "version": "3.3.10", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", + "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", "dev": true }, "image-size": { @@ -7379,6 +7374,16 @@ "import-from": "^2.1.0" } }, + "import-fresh": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", + "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", + "dev": true, + "requires": { + "caller-path": "^2.0.0", + "resolve-from": "^3.0.0" + } + }, "import-from": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", @@ -7391,22 +7396,78 @@ "import-lazy": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", - "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=" + "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "dev": true }, "import-local": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-1.0.0.tgz", - "integrity": "sha512-vAaZHieK9qjGo58agRBg+bhHX3hoTZU/Oa3GESWLz7t1U62fk63aHuDJJEteXoDeTCcPmUT+z38gkHPZkkmpmQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", + "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", "dev": true, "requires": { - "pkg-dir": "^2.0.0", + "pkg-dir": "^3.0.0", "resolve-cwd": "^2.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" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.0.0.tgz", + "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", + "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==", + "dev": true + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + } } }, "imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=" + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "dev": true }, "in-publish": { "version": "2.0.0", @@ -7435,17 +7496,11 @@ "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", "dev": true }, - "inflection": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/inflection/-/inflection-1.12.0.tgz", - "integrity": "sha1-ogCTVlbW9fa8TcdQLhrstwMihBY=", - "dev": true, - "optional": true - }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", + "dev": true, "requires": { "once": "^1.3.0", "wrappy": "1" @@ -7459,7 +7514,8 @@ "ini": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "dev": true }, "injection-js": { "version": "2.2.1", @@ -7467,13 +7523,68 @@ "integrity": "sha512-zHI+E+dM0PXix5FFTO1Y4/UOyAzE7zG1l/QwAn4jchTThOoBq+UYRFK4AVG7lQgFL+go62SbrzSsjXy9DFEZUg==", "dev": true }, + "inquirer": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.2.0.tgz", + "integrity": "sha512-QIEQG4YyQ2UYZGDC4srMZ7BjHOmNk1lR2JQj5UknBapklm6WHA+VVH7N+sUdX3A7NeCfGF8o4X1S3Ao7nAcIeg==", + "dev": true, + "requires": { + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.0", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^3.0.0", + "figures": "^2.0.0", + "lodash": "^4.17.10", + "mute-stream": "0.0.7", + "run-async": "^2.2.0", + "rxjs": "^6.1.0", + "string-width": "^2.1.0", + "strip-ansi": "^4.0.0", + "through": "^2.3.6" + }, + "dependencies": { + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "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=", + "dev": true + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + } + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, "internal-ip": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-1.2.0.tgz", - "integrity": "sha1-rp+/k7mEh4eF1QqN4bNWlWBYz1w=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-3.0.1.tgz", + "integrity": "sha512-NXXgESC2nNVtU+pqmC9e6R8B1GpKxzsAQhffvh5AL79qKnodd+L7tnEQmTiUAVngqLalPbSqRA7XGIEL5nCd0Q==", "dev": true, "requires": { - "meow": "^3.3.0" + "default-gateway": "^2.6.0", + "ipaddr.js": "^1.5.2" } }, "interpret": { @@ -7503,6 +7614,12 @@ "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", "dev": true }, + "ip-regex": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", + "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", + "dev": true + }, "ipaddr.js": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.8.0.tgz", @@ -7513,6 +7630,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz", "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==", + "dev": true, "requires": { "is-relative": "^1.0.0", "is-windows": "^1.0.1" @@ -7578,7 +7696,8 @@ "is-buffer": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "dev": true }, "is-builtin-module": { "version": "1.0.0", @@ -7589,16 +7708,11 @@ "builtin-modules": "^1.0.0" } }, - "is-callable": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", - "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", - "dev": true - }, "is-ci": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.1.0.tgz", "integrity": "sha512-c7TnwxLePuqIlxHgr7xtxzycJPegNHFuIrBkwbf8hc58//+Op1CqFkyS+xnIMkwn9UsJIwc174BIjkyBmSpjKg==", + "dev": true, "requires": { "ci-info": "^1.0.0" } @@ -7623,12 +7737,6 @@ } } }, - "is-date-object": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", - "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", - "dev": true - }, "is-decimal": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.2.tgz", @@ -7663,12 +7771,14 @@ "is-dotfile": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", - "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=" + "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", + "dev": true }, "is-equal-shallow": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", + "dev": true, "requires": { "is-primitive": "^2.0.0" } @@ -7676,12 +7786,14 @@ "is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", + "dev": true }, "is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "dev": true }, "is-finite": { "version": "1.0.2", @@ -7720,6 +7832,7 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.1.0.tgz", "integrity": "sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA=", + "dev": true, "requires": { "global-dirs": "^0.1.0", "is-path-inside": "^1.0.0" @@ -7731,34 +7844,17 @@ "integrity": "sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE=", "dev": true }, - "is-my-ip-valid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz", - "integrity": "sha512-gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==", - "dev": true - }, - "is-my-json-valid": { - "version": "2.17.2", - "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.17.2.tgz", - "integrity": "sha512-IBhBslgngMQN8DDSppmgDv7RNrlFotuuDsKcrCP3+HbFaVivIBU7u9oiiErw8sH4ynx3+gOGQ3q2otkgiSi6kg==", - "dev": true, - "requires": { - "generate-function": "^2.0.0", - "generate-object-property": "^1.1.0", - "is-my-ip-valid": "^1.0.0", - "jsonpointer": "^4.0.0", - "xtend": "^4.0.0" - } - }, "is-negated-glob": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz", - "integrity": "sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI=" + "integrity": "sha1-aRC8pdqMleeEtXUbl2z1oQ/uNtI=", + "dev": true }, "is-npm": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-1.0.0.tgz", - "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=" + "integrity": "sha1-8vtjpl5JBbQGyGBydloaTceTufQ=", + "dev": true }, "is-number": { "version": "3.0.0", @@ -7792,7 +7888,8 @@ "is-obj": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", - "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=" + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=", + "dev": true }, "is-odd": { "version": "2.0.0", @@ -7830,6 +7927,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", + "dev": true, "requires": { "path-is-inside": "^1.0.1" } @@ -7844,6 +7942,7 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, "requires": { "isobject": "^3.0.1" } @@ -7851,12 +7950,14 @@ "is-posix-bracket": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", - "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=" + "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", + "dev": true }, "is-primitive": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", - "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=" + "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", + "dev": true }, "is-promise": { "version": "2.1.0", @@ -7864,25 +7965,11 @@ "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", "dev": true }, - "is-property": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", - "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=", - "dev": true - }, "is-redirect": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-redirect/-/is-redirect-1.0.0.tgz", - "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=" - }, - "is-regex": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", - "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", - "dev": true, - "requires": { - "has": "^1.0.1" - } + "integrity": "sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ=", + "dev": true }, "is-regexp": { "version": "1.0.0", @@ -7894,6 +7981,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz", "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==", + "dev": true, "requires": { "is-unc-path": "^1.0.0" } @@ -7901,12 +7989,14 @@ "is-retry-allowed": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz", - "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=" + "integrity": "sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=", + "dev": true }, "is-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "dev": true }, "is-supported-regexp-flag": { "version": "1.0.1", @@ -7914,12 +8004,6 @@ "integrity": "sha512-3vcJecUUrpgCqc/ca0aWeNu64UGgxcvO60K/Fkr1N6RSvfGCTU60UKN68JDmKokgba0rFFJs12EnzOQa14ubKQ==", "dev": true }, - "is-symbol": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz", - "integrity": "sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI=", - "dev": true - }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", @@ -7930,6 +8014,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz", "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==", + "dev": true, "requires": { "unc-path-regex": "^0.1.2" } @@ -7937,12 +8022,14 @@ "is-utf8": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" + "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", + "dev": true }, "is-valid-glob": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-0.3.0.tgz", - "integrity": "sha1-1LVcafUYhvm2XHDWwmItN+KfSP4=" + "integrity": "sha1-1LVcafUYhvm2XHDWwmItN+KfSP4=", + "dev": true }, "is-whitespace-character": { "version": "1.0.2", @@ -7953,7 +8040,8 @@ "is-windows": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true }, "is-word-character": { "version": "1.0.2", @@ -7973,20 +8061,25 @@ "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "isbinaryfile": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.2.tgz", - "integrity": "sha1-Sj6XTsDLqQBNP8bN5yCeppNopiE=", - "dev": true + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.3.tgz", + "integrity": "sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==", + "dev": true, + "requires": { + "buffer-alloc": "^1.2.0" + } }, "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true }, "isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true }, "isstream": { "version": "0.1.2", @@ -8053,22 +8146,22 @@ } }, "istanbul-api": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/istanbul-api/-/istanbul-api-1.3.1.tgz", - "integrity": "sha512-duj6AlLcsWNwUpfyfHt0nWIeRiZpuShnP40YTxOGQgtaN8fd6JYSxsvxUphTDy8V5MfDXo4s/xVCIIvVCO808g==", - "dev": true, - "requires": { - "async": "^2.1.4", - "compare-versions": "^3.1.0", - "fileset": "^2.0.2", - "istanbul-lib-coverage": "^1.2.0", - "istanbul-lib-hook": "^1.2.0", - "istanbul-lib-instrument": "^1.10.1", - "istanbul-lib-report": "^1.1.4", - "istanbul-lib-source-maps": "^1.2.4", - "istanbul-reports": "^1.3.0", - "js-yaml": "^3.7.0", - "mkdirp": "^0.5.1", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/istanbul-api/-/istanbul-api-2.0.6.tgz", + "integrity": "sha512-8W5oeAGWXhtTJjAyVfvavOLVyZCTNCKsyF6GON/INKlBdO7uJ/bv3qnPj5M6ERKzmMCJS1kntnjjGuJ86fn3rQ==", + "dev": true, + "requires": { + "async": "^2.6.1", + "compare-versions": "^3.2.1", + "fileset": "^2.0.3", + "istanbul-lib-coverage": "^2.0.1", + "istanbul-lib-hook": "^2.0.1", + "istanbul-lib-instrument": "^3.0.0", + "istanbul-lib-report": "^2.0.2", + "istanbul-lib-source-maps": "^2.0.1", + "istanbul-reports": "^2.0.1", + "js-yaml": "^3.12.0", + "make-dir": "^1.3.0", "once": "^1.4.0" }, "dependencies": { @@ -8080,6 +8173,43 @@ "requires": { "lodash": "^4.17.10" } + }, + "esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "dev": true + }, + "istanbul-lib-coverage": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz", + "integrity": "sha512-nPvSZsVlbG9aLhZYaC3Oi1gT/tpyo3Yt5fNyf6NmcKIayz4VV/txxJFFKAK/gU4dcNn8ehsanBbVHVl0+amOLA==", + "dev": true + }, + "istanbul-lib-instrument": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.0.0.tgz", + "integrity": "sha512-eQY9vN9elYjdgN9Iv6NS/00bptm02EBBk70lRMaVjeA6QYocQgenVrSgC28TJurdnZa80AGO3ASdFN+w/njGiQ==", + "dev": true, + "requires": { + "@babel/generator": "^7.0.0", + "@babel/parser": "^7.0.0", + "@babel/template": "^7.0.0", + "@babel/traverse": "^7.0.0", + "@babel/types": "^7.0.0", + "istanbul-lib-coverage": "^2.0.1", + "semver": "^5.5.0" + } + }, + "js-yaml": { + "version": "3.12.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.0.tgz", + "integrity": "sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A==", + "dev": true, + "requires": { + "argparse": "^1.0.7", + "esprima": "^4.0.0" + } } } }, @@ -8119,24 +8249,24 @@ } }, "istanbul-lib-coverage": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.0.tgz", - "integrity": "sha512-GvgM/uXRwm+gLlvkWHTjDAvwynZkL9ns15calTrmhGgowlwJBbWMYzWbKqE2DT6JDP1AFXKa+Zi0EkqNCUqY0A==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.1.tgz", + "integrity": "sha512-PzITeunAgyGbtY1ibVIUiV679EFChHjoMNRibEIobvmrCRaIgwLxNucOSimtNWUhEib/oO7QY2imD75JVgCJWQ==", "dev": true }, "istanbul-lib-hook": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-1.2.1.tgz", - "integrity": "sha512-eLAMkPG9FU0v5L02lIkcj/2/Zlz9OuluaXikdr5iStk8FDbSwAixTK9TkYxbF0eNnzAJTwM2fkV2A1tpsIp4Jg==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.1.tgz", + "integrity": "sha512-ufiZoiJ8CxY577JJWEeFuxXZoMqiKpq/RqZtOAYuQLvlkbJWscq9n3gc4xrCGH9n4pW0qnTxOz1oyMmVtk8E1w==", "dev": true, "requires": { "append-transform": "^1.0.0" } }, "istanbul-lib-instrument": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.1.tgz", - "integrity": "sha512-1dYuzkOCbuR5GRJqySuZdsmsNKPL3PTuyPevQfoCXJePT9C8y1ga75neU+Tuy9+yS3G/dgx8wgOmp2KLpgdoeQ==", + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.2.tgz", + "integrity": "sha512-aWHxfxDqvh/ZlxR8BBaEPVSWDPUkGD63VjGQn3jcw8jCp7sHEMKcrj4xfJn/ABzdMEHiQNyvDQhqm5o8+SQg7A==", "dev": true, "requires": { "babel-generator": "^6.18.0", @@ -8144,105 +8274,96 @@ "babel-traverse": "^6.18.0", "babel-types": "^6.18.0", "babylon": "^6.18.0", - "istanbul-lib-coverage": "^1.2.0", + "istanbul-lib-coverage": "^1.2.1", "semver": "^5.3.0" } }, "istanbul-lib-report": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-1.1.4.tgz", - "integrity": "sha512-Azqvq5tT0U09nrncK3q82e/Zjkxa4tkFZv7E6VcqP0QCPn6oNljDPfrZEC/umNXds2t7b8sRJfs6Kmpzt8m2kA==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.2.tgz", + "integrity": "sha512-rJ8uR3peeIrwAxoDEbK4dJ7cqqtxBisZKCuwkMtMv0xYzaAnsAi3AHrHPAAtNXzG/bcCgZZ3OJVqm1DTi9ap2Q==", "dev": true, "requires": { - "istanbul-lib-coverage": "^1.2.0", - "mkdirp": "^0.5.1", - "path-parse": "^1.0.5", - "supports-color": "^3.1.2" + "istanbul-lib-coverage": "^2.0.1", + "make-dir": "^1.3.0", + "supports-color": "^5.4.0" }, "dependencies": { - "has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "istanbul-lib-coverage": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz", + "integrity": "sha512-nPvSZsVlbG9aLhZYaC3Oi1gT/tpyo3Yt5fNyf6NmcKIayz4VV/txxJFFKAK/gU4dcNn8ehsanBbVHVl0+amOLA==", "dev": true - }, - "supports-color": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", - "dev": true, - "requires": { - "has-flag": "^1.0.0" - } } } }, "istanbul-lib-source-maps": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.5.tgz", - "integrity": "sha512-8O2T/3VhrQHn0XcJbP1/GN7kXMiRAlPi+fj3uEHrjBD8Oz7Py0prSC25C09NuAZS6bgW1NNKAvCSHZXB0irSGA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-2.0.1.tgz", + "integrity": "sha512-30l40ySg+gvBLcxTrLzR4Z2XTRj3HgRCA/p2rnbs/3OiTaoj054gAbuP5DcLOtwqmy4XW8qXBHzrmP2/bQ9i3A==", "dev": true, "requires": { "debug": "^3.1.0", - "istanbul-lib-coverage": "^1.2.0", - "mkdirp": "^0.5.1", - "rimraf": "^2.6.1", - "source-map": "^0.5.3" + "istanbul-lib-coverage": "^2.0.1", + "make-dir": "^1.3.0", + "rimraf": "^2.6.2", + "source-map": "^0.6.1" }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } + }, + "istanbul-lib-coverage": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz", + "integrity": "sha512-nPvSZsVlbG9aLhZYaC3Oi1gT/tpyo3Yt5fNyf6NmcKIayz4VV/txxJFFKAK/gU4dcNn8ehsanBbVHVl0+amOLA==", + "dev": true + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "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 } } }, "istanbul-reports": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-1.3.0.tgz", - "integrity": "sha512-y2Z2IMqE1gefWUaVjrBm0mSKvUkaBy9Vqz8iwr/r40Y9hBbIteH5wqHG/9DLTfJ9xUnUT2j7A3+VVJ6EaYBllA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.0.1.tgz", + "integrity": "sha512-CT0QgMBJqs6NJLF678ZHcquUAZIoBIUNzdJrRJfpkI9OnzG6MkUfHxbJC3ln981dMswC7/B1mfX3LNkhgJxsuw==", "dev": true, "requires": { - "handlebars": "^4.0.3" + "handlebars": "^4.0.11" } }, "jasmine": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-3.1.0.tgz", - "integrity": "sha1-K9Wf1+xuwOistk4J9Fpo7SrRlSo=", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-3.2.0.tgz", + "integrity": "sha512-qv6TZ32r+slrQz8fbx2EhGbD9zlJo3NwPrpLK1nE8inILtZO9Fap52pyHk7mNTh4tG50a+1+tOiWVT3jO5I0Sg==", "dev": true, "requires": { "glob": "^7.0.6", - "jasmine-core": "~3.1.0" - }, - "dependencies": { - "jasmine-core": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.1.0.tgz", - "integrity": "sha1-pHheE11d9lAk38kiSVPfWFvSdmw=", - "dev": true - } + "jasmine-core": "~3.2.0" } }, "jasmine-core": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.1.0.tgz", - "integrity": "sha1-pHheE11d9lAk38kiSVPfWFvSdmw=", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/jasmine-core/-/jasmine-core-3.2.1.tgz", + "integrity": "sha512-pa9tbBWgU0EE4SWgc85T4sa886ufuQdsgruQANhECYjwqgV4z7Vw/499aCaP8ZH79JDS4vhm8doDG9HO4+e4sA==", "dev": true }, - "jasmine-diff": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/jasmine-diff/-/jasmine-diff-0.1.3.tgz", - "integrity": "sha1-k8zC3MQQKMXd1GBlWAdIOfLe6qg=", - "dev": true, - "requires": { - "diff": "^3.2.0" - } - }, "jasmine-spec-reporter": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/jasmine-spec-reporter/-/jasmine-spec-reporter-4.2.1.tgz", @@ -8259,9 +8380,9 @@ "dev": true }, "js-base64": { - "version": "2.4.5", - "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.4.5.tgz", - "integrity": "sha512-aUnNwqMOXw3yvErjMPSQu6qIIzUmT1e5KcU1OZxRDU1g/am6mzBvcrmLAYwzmB59BHPrh5/tKaiF4OPhqRWESQ==", + "version": "2.4.9", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.4.9.tgz", + "integrity": "sha512-xcinL3AuDJk7VSzsHgb9DvvIXayBbadtMZ4HFPx8rUszbW1MuNMlwYVC4zzCZ6e1sqZpnNS5ZFYOhXqA39T7LQ==", "dev": true }, "js-tokens": { @@ -8274,6 +8395,7 @@ "version": "3.11.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.11.0.tgz", "integrity": "sha512-saJstZWv7oNeOyBh3+Dx1qWzhW0+e6/8eDzo7p5rDFqxntSztloLtuKu+Ejhtq82jsilwOIZYsCz+lIjthg1Hw==", + "dev": true, "requires": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -8282,7 +8404,8 @@ "esprima": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", - "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==" + "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==", + "dev": true } } }, @@ -8321,6 +8444,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "dev": true, "requires": { "jsonify": "~0.0.0" } @@ -8347,6 +8471,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "dev": true, "requires": { "graceful-fs": "^4.1.6" } @@ -8354,12 +8479,7 @@ "jsonify": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" - }, - "jsonpointer": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz", - "integrity": "sha1-T9kss04OnbPInIYi7PUfm5eMbLk=", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", "dev": true }, "jsprim": { @@ -8422,9 +8542,9 @@ } }, "karma": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/karma/-/karma-2.0.5.tgz", - "integrity": "sha512-rECezBeY7mjzGUWhFlB7CvPHgkHJLXyUmWg+6vHCEsdWNUTnmiS6jRrIMcJEWgU2DUGZzGWG0bTRVky8fsDTOA==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/karma/-/karma-3.1.1.tgz", + "integrity": "sha512-NetT3wPCQMNB36uiL9LLyhrOt8SQwrEKt0xD3+KpTCfm0VxVyUJdPL5oTq2Ic5ouemgL/Iz4wqXEbF3zea9kQQ==", "dev": true, "requires": { "bluebird": "^3.3.0", @@ -8442,20 +8562,26 @@ "http-proxy": "^1.13.0", "isbinaryfile": "^3.0.0", "lodash": "^4.17.4", - "log4js": "^2.5.3", - "mime": "^1.3.4", + "log4js": "^3.0.0", + "mime": "^2.3.1", "minimatch": "^3.0.2", "optimist": "^0.6.1", "qjobs": "^1.1.4", "range-parser": "^1.2.0", "rimraf": "^2.6.0", "safe-buffer": "^5.0.1", - "socket.io": "2.0.4", + "socket.io": "2.1.1", "source-map": "^0.6.1", "tmp": "0.0.33", "useragent": "2.2.1" }, "dependencies": { + "mime": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.3.1.tgz", + "integrity": "sha512-OEUllcVoydBHGN1z84yfQDimn58pZNNNXgZlHXSboxMlFvgI6MXSWpWKpFRra7H1HxpVhHTkrghfRW49k6yjeg==", + "dev": true + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -8475,12 +8601,12 @@ } }, "karma-coverage-istanbul-reporter": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-2.0.1.tgz", - "integrity": "sha512-UcgrHkFehI5+ivMouD8NH/UOHiX4oCAtwaANylzPFdcAuD52fnCUuelacq2gh8tZ4ydhU3+xiXofSq7j5Ehygw==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-2.0.4.tgz", + "integrity": "sha512-xJS7QSQIVU6VK9HuJ/ieE5yynxKhjCCkd96NLY/BX/HXsx0CskU9JJiMQbd4cHALiddMwI4OWh1IIzeWrsavJw==", "dev": true, "requires": { - "istanbul-api": "^1.3.1", + "istanbul-api": "^2.0.5", "minimatch": "^3.0.4" } }, @@ -8491,9 +8617,9 @@ "dev": true }, "karma-jasmine-html-reporter": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-1.2.0.tgz", - "integrity": "sha512-OkWFy96p2BrRLsicKlbVK4pxYPRwr8KK+pRvsscVxkxNGoCPrTw+JRTmvcJfOWhLVze8Fd6TGhAOXmpLe9O7yg==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-1.4.0.tgz", + "integrity": "sha512-0wxhwA8PLPpICZ4o2GRnPi67hf3JhfQm5WCB8nElh4qsE6wRNOTtrqooyBPNqI087Xr2SBhxLg5fU+BJ/qxRrw==", "dev": true }, "karma-junit-reporter": { @@ -8533,26 +8659,28 @@ } }, "killable": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.0.tgz", - "integrity": "sha1-2ouEvUfeU5WHj5XWTQLyRJ/gXms=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz", + "integrity": "sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==", "dev": true }, "kind-of": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", + "dev": true }, "known-css-properties": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.5.0.tgz", - "integrity": "sha512-LOS0CoS8zcZnB1EjLw4LLqDXw8nvt3AGH5dXLQP3D9O1nLLA+9GC5GnPl5mmF+JiQAtSX4VyZC7KvEtcA4kUtA==", + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.9.0.tgz", + "integrity": "sha512-2G/A/8XPhH6MmuVgl079wYsgdqfXE3cfm62txk/ajS4wvRWo6tEHcgQCJCHOOy12Fse1Sxlbf7/IJBpR9hnVew==", "dev": true }, "latest-version": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-3.1.0.tgz", "integrity": "sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU=", + "dev": true, "requires": { "package-json": "^4.0.0" } @@ -8568,6 +8696,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.0.tgz", "integrity": "sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=", + "dev": true, "requires": { "readable-stream": "^2.0.5" } @@ -8591,22 +8720,18 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/lead/-/lead-1.0.0.tgz", "integrity": "sha1-bxT5mje+Op3XhPVJVpDlkDRm7kI=", + "dev": true, "requires": { "flush-write-stream": "^1.0.2" } }, - "leb": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/leb/-/leb-0.3.0.tgz", - "integrity": "sha1-Mr7p+tFoMo1q6oUi2DP0GA7tHaM=", - "dev": true - }, "less": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/less/-/less-3.0.4.tgz", - "integrity": "sha512-q3SyEnPKbk9zh4l36PGeW2fgynKu+FpbhiUNx/yaiBUQ3V0CbACCgb9FzYWcRgI2DJlP6eI4jc8XPrCTi55YcQ==", + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/less/-/less-3.8.1.tgz", + "integrity": "sha512-8HFGuWmL3FhQR0aH89escFNBQH/nEiYPP2ltDFdQw2chE28Yx2E3lhAIq9Y2saYwLSwa699s4dBVEfCY8Drf7Q==", "dev": true, "requires": { + "clone": "^2.1.2", "errno": "^0.1.1", "graceful-fs": "^4.1.2", "image-size": "~0.5.0", @@ -8617,6 +8742,12 @@ "source-map": "~0.6.0" }, "dependencies": { + "clone": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", + "dev": true + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -8629,62 +8760,64 @@ "less-loader": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-4.1.0.tgz", - "integrity": "sha512-KNTsgCE9tMOM70+ddxp9yyt9iHqgmSs0yTZc5XH5Wo+g80RWRIYNqE58QJKm/yMud5wZEvz50ugRDuzVIkyahg==", - "dev": true, - "requires": { - "clone": "^2.1.1", - "loader-utils": "^1.1.0", - "pify": "^3.0.0" - } - }, - "levn": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", - "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "integrity": "sha512-KNTsgCE9tMOM70+ddxp9yyt9iHqgmSs0yTZc5XH5Wo+g80RWRIYNqE58QJKm/yMud5wZEvz50ugRDuzVIkyahg==", "dev": true, "requires": { - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2" + "clone": "^2.1.1", + "loader-utils": "^1.1.0", + "pify": "^3.0.0" } }, - "libbase64": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/libbase64/-/libbase64-0.1.0.tgz", - "integrity": "sha1-YjUag5VjrF/1vSbxL2Dpgwu3UeY=", - "dev": true - }, - "libmime": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/libmime/-/libmime-3.0.0.tgz", - "integrity": "sha1-UaGp50SOy9Ms2lRCFnW7IbwJPaY=", + "less-plugin-npm-import": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/less-plugin-npm-import/-/less-plugin-npm-import-2.1.0.tgz", + "integrity": "sha1-gj5phskzGKmBccqFiEi2vq1Vvz4=", "dev": true, "requires": { - "iconv-lite": "0.4.15", - "libbase64": "0.1.0", - "libqp": "1.1.0" + "promise": "~7.0.1", + "resolve": "~1.1.6" }, "dependencies": { - "iconv-lite": { - "version": "0.4.15", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.15.tgz", - "integrity": "sha1-/iZaIYrGpXz+hUkn6dBMGYJe3es=", + "promise": { + "version": "7.0.4", + "resolved": "http://registry.npmjs.org/promise/-/promise-7.0.4.tgz", + "integrity": "sha1-Nj6EpMNsg1a4kP7WLJHOhdAu1Tk=", + "dev": true, + "requires": { + "asap": "~2.0.3" + } + }, + "resolve": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", + "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", "dev": true } } }, - "libqp": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/libqp/-/libqp-1.1.0.tgz", - "integrity": "sha1-9ebgatdLeU+1tbZpiL9yjvHe2+g=", + "leven": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz", + "integrity": "sha1-wuep93IJTe6dNCAq6KzORoeHVYA=", "dev": true }, + "levn": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", + "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", + "dev": true, + "requires": { + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" + } + }, "license-webpack-plugin": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-1.3.1.tgz", - "integrity": "sha512-NqAFodJdpBUuf1iD+Ij8hQvF0rCFKlO2KaieoQzAPhFgzLCtJnC7Z7x5gQbGNjoe++wOKAtAmwVEIBLqq2Yp1A==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-2.0.2.tgz", + "integrity": "sha512-GsomZw5VoT20ST8qH2tOjBgbyhn6Pgs9M94g0mbvfBIV1VXufm1iKY+4dbgfTObj1Mp6nSRE3Zf74deOZr0KwA==", "dev": true, "requires": { - "ejs": "^2.5.7" + "webpack-sources": "^1.2.0" } }, "lie": { @@ -8739,9 +8872,9 @@ } }, "loader-runner": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.0.tgz", - "integrity": "sha1-9IKuqC1UPgeSFwDVpG7yb9rGuKI=", + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.1.tgz", + "integrity": "sha512-By6ZFY7ETWOc9RFaAIb23IjJVcM4dvJC/N57nmdz9RSkMXvAXGI7SyVlAw3v8vjtDRlqThgVDVmTnr9fqMlxkw==", "dev": true }, "loader-utils": { @@ -8756,27 +8889,17 @@ } }, "localtunnel": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/localtunnel/-/localtunnel-1.9.0.tgz", - "integrity": "sha512-wCIiIHJ8kKIcWkTQE3m1VRABvsH2ZuOkiOpZUofUCf6Q42v3VIZ+Q0YfX1Z4sYDRj0muiKL1bLvz1FeoxsPO0w==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/localtunnel/-/localtunnel-1.9.1.tgz", + "integrity": "sha512-HWrhOslklDvxgOGFLxi6fQVnvpl6XdX4sPscfqMZkzi3gtt9V7LKBWYvNUcpHSVvjwCQ6xzXacVvICNbNcyPnQ==", "dev": true, "requires": { "axios": "0.17.1", - "debug": "2.6.8", + "debug": "2.6.9", "openurl": "1.1.1", "yargs": "6.6.0" }, "dependencies": { - "axios": { - "version": "0.17.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.17.1.tgz", - "integrity": "sha1-LY4+XQvb1zJ/kbyBT1xXZg+Bgk0=", - "dev": true, - "requires": { - "follow-redirects": "^1.2.5", - "is-buffer": "^1.1.5" - } - }, "camelcase": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", @@ -8794,15 +8917,6 @@ "wrap-ansi": "^2.0.0" } }, - "debug": { - "version": "2.6.8", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz", - "integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, "y18n": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", @@ -8861,6 +8975,7 @@ "version": "2.4.1", "resolved": "https://registry.npmjs.org/lodash._basebind/-/lodash._basebind-2.4.1.tgz", "integrity": "sha1-6UC5690nwyfgqNqxtVkWxTQelXU=", + "dev": true, "requires": { "lodash._basecreate": "~2.4.1", "lodash._setbinddata": "~2.4.1", @@ -8878,6 +8993,7 @@ "version": "2.4.1", "resolved": "https://registry.npmjs.org/lodash._basecreate/-/lodash._basecreate-2.4.1.tgz", "integrity": "sha1-+Ob1tXip405UEXm1a47uv0oofgg=", + "dev": true, "requires": { "lodash._isnative": "~2.4.1", "lodash.isobject": "~2.4.1", @@ -8888,6 +9004,7 @@ "version": "2.4.1", "resolved": "https://registry.npmjs.org/lodash._basecreatecallback/-/lodash._basecreatecallback-2.4.1.tgz", "integrity": "sha1-fQsmdknLKeehOdAQO3wR+uhOSFE=", + "dev": true, "requires": { "lodash._setbinddata": "~2.4.1", "lodash.bind": "~2.4.1", @@ -8899,6 +9016,7 @@ "version": "2.4.1", "resolved": "https://registry.npmjs.org/lodash._basecreatewrapper/-/lodash._basecreatewrapper-2.4.1.tgz", "integrity": "sha1-TTHy595+E0+/KAN2K4FQsyUZZm8=", + "dev": true, "requires": { "lodash._basecreate": "~2.4.1", "lodash._setbinddata": "~2.4.1", @@ -8922,6 +9040,7 @@ "version": "2.4.1", "resolved": "https://registry.npmjs.org/lodash._createwrapper/-/lodash._createwrapper-2.4.1.tgz", "integrity": "sha1-UdaVeXPaTtVW43KQ2MGhjFPeFgc=", + "dev": true, "requires": { "lodash._basebind": "~2.4.1", "lodash._basecreatewrapper": "~2.4.1", @@ -8944,12 +9063,14 @@ "lodash._isnative": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/lodash._isnative/-/lodash._isnative-2.4.1.tgz", - "integrity": "sha1-PqZAS3hKe+g2x7V1gOHN95sUgyw=" + "integrity": "sha1-PqZAS3hKe+g2x7V1gOHN95sUgyw=", + "dev": true }, "lodash._objecttypes": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/lodash._objecttypes/-/lodash._objecttypes-2.4.1.tgz", - "integrity": "sha1-fAt/admKH3ZSn4kLDNsbTf7BHBE=" + "integrity": "sha1-fAt/admKH3ZSn4kLDNsbTf7BHBE=", + "dev": true }, "lodash._reescape": { "version": "3.0.0", @@ -8979,6 +9100,7 @@ "version": "2.4.1", "resolved": "https://registry.npmjs.org/lodash._setbinddata/-/lodash._setbinddata-2.4.1.tgz", "integrity": "sha1-98IAzRuS7yNrOZ7s9zxkjReqlNI=", + "dev": true, "requires": { "lodash._isnative": "~2.4.1", "lodash.noop": "~2.4.1" @@ -8988,6 +9110,7 @@ "version": "2.4.1", "resolved": "https://registry.npmjs.org/lodash._shimkeys/-/lodash._shimkeys-2.4.1.tgz", "integrity": "sha1-bpzJZm/wgfC1psl4uD4kLmlJ0gM=", + "dev": true, "requires": { "lodash._objecttypes": "~2.4.1" } @@ -8995,7 +9118,8 @@ "lodash._slice": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/lodash._slice/-/lodash._slice-2.4.1.tgz", - "integrity": "sha1-dFz0GlNZexj2iImFREBe+isG2Q8=" + "integrity": "sha1-dFz0GlNZexj2iImFREBe+isG2Q8=", + "dev": true }, "lodash.assign": { "version": "4.2.0", @@ -9007,6 +9131,7 @@ "version": "2.4.1", "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-2.4.1.tgz", "integrity": "sha1-XRn6AFyMTSNvr0dCx7eh/Kvikmc=", + "dev": true, "requires": { "lodash._createwrapper": "~2.4.1", "lodash._slice": "~2.4.1" @@ -9027,7 +9152,8 @@ "lodash.difference": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", - "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=" + "integrity": "sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=", + "dev": true }, "lodash.escape": { "version": "3.2.0", @@ -9041,7 +9167,8 @@ "lodash.identity": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/lodash.identity/-/lodash.identity-2.4.1.tgz", - "integrity": "sha1-ZpTP+mX++TH3wxzobHRZfPVg9PE=" + "integrity": "sha1-ZpTP+mX++TH3wxzobHRZfPVg9PE=", + "dev": true }, "lodash.isarguments": { "version": "3.1.0", @@ -9058,7 +9185,8 @@ "lodash.isequal": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", - "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" + "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", + "dev": true }, "lodash.isfinite": { "version": "3.3.2", @@ -9069,12 +9197,14 @@ "lodash.isfunction": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/lodash.isfunction/-/lodash.isfunction-2.4.1.tgz", - "integrity": "sha1-LP1XXHPkmKtX4xm3f6Aq3vE6lNE=" + "integrity": "sha1-LP1XXHPkmKtX4xm3f6Aq3vE6lNE=", + "dev": true }, "lodash.isobject": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/lodash.isobject/-/lodash.isobject-2.4.1.tgz", "integrity": "sha1-Wi5H/mmVPx7mMafrof5k0tBlWPU=", + "dev": true, "requires": { "lodash._objecttypes": "~2.4.1" } @@ -9099,7 +9229,8 @@ "lodash.noop": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/lodash.noop/-/lodash.noop-2.4.1.tgz", - "integrity": "sha1-T7VPgWZS5a4Q6PcvcXo4jHMmU4o=" + "integrity": "sha1-T7VPgWZS5a4Q6PcvcXo4jHMmU4o=", + "dev": true }, "lodash.restparam": { "version": "3.6.1", @@ -9111,6 +9242,7 @@ "version": "2.4.1", "resolved": "https://registry.npmjs.org/lodash.support/-/lodash.support-2.4.1.tgz", "integrity": "sha1-Mg4LZwMWc8KNeiu12eAzGkUkBRU=", + "dev": true, "requires": { "lodash._isnative": "~2.4.1" } @@ -9151,7 +9283,8 @@ "lodash.uniq": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=" + "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", + "dev": true }, "log-driver": { "version": "1.2.7", @@ -9169,239 +9302,32 @@ } }, "log4js": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/log4js/-/log4js-2.11.0.tgz", - "integrity": "sha512-z1XdwyGFg8/WGkOyF6DPJjivCWNLKrklGdViywdYnSKOvgtEBo2UyEMZS5sD2mZrQlU3TvO8wDWLc8mzE1ncBQ==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/log4js/-/log4js-3.0.6.tgz", + "integrity": "sha512-ezXZk6oPJCWL483zj64pNkMuY/NcRX5MPiB0zE6tjZM137aeusrOnW1ecxgF9cmwMWkBMhjteQxBPoZBh9FDxQ==", "dev": true, "requires": { - "amqplib": "^0.5.2", - "axios": "^0.15.3", - "circular-json": "^0.5.4", + "circular-json": "^0.5.5", "date-format": "^1.2.0", "debug": "^3.1.0", - "hipchat-notifier": "^1.1.0", - "loggly": "^1.1.0", - "mailgun-js": "^0.18.0", - "nodemailer": "^2.5.0", - "redis": "^2.7.1", - "semver": "^5.5.0", - "slack-node": "~0.2.0", + "rfdc": "^1.1.2", "streamroller": "0.7.0" }, "dependencies": { - "circular-json": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.5.5.tgz", - "integrity": "sha512-13YaR6kiz0kBNmIVM87Io8Hp7bWOo4r61vkEANy8iH9R9bc6avud/1FT0SBpqR1RpIQADOh/Q+yHZDA1iL6ysA==", - "dev": true - }, "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } - } - }, - "loggly": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/loggly/-/loggly-1.1.1.tgz", - "integrity": "sha1-Cg/B0/o6XsRP3HuJe+uipGlc6+4=", - "dev": true, - "optional": true, - "requires": { - "json-stringify-safe": "5.0.x", - "request": "2.75.x", - "timespan": "2.3.x" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true, - "optional": true - }, - "assert-plus": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", - "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=", - "dev": true, - "optional": true - }, - "aws-sign2": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", - "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=", - "dev": true, - "optional": true - }, - "boom": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", - "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", - "dev": true, - "requires": { - "hoek": "2.x.x" - } - }, - "caseless": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz", - "integrity": "sha1-cVuW6phBWTzDMGeSP17GDr2k99c=", - "dev": true, - "optional": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "optional": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "cryptiles": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", - "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", - "dev": true, - "optional": true, - "requires": { - "boom": "2.x.x" - } - }, - "form-data": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.0.0.tgz", - "integrity": "sha1-bwrrrcxdoWwT4ezBETfYX5uIOyU=", - "dev": true, - "optional": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.5", - "mime-types": "^2.1.11" - } - }, - "har-validator": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz", - "integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=", - "dev": true, - "optional": true, - "requires": { - "chalk": "^1.1.1", - "commander": "^2.9.0", - "is-my-json-valid": "^2.12.4", - "pinkie-promise": "^2.0.0" - } - }, - "hawk": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", - "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, - "optional": true, "requires": { - "boom": "2.x.x", - "cryptiles": "2.x.x", - "hoek": "2.x.x", - "sntp": "1.x.x" + "ms": "^2.1.1" } }, - "hoek": { - "version": "2.16.3", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=", + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", "dev": true - }, - "http-signature": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", - "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", - "dev": true, - "optional": true, - "requires": { - "assert-plus": "^0.2.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "node-uuid": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.8.tgz", - "integrity": "sha1-sEDrCSOWivq/jTL7HxfxFn/auQc=", - "dev": true, - "optional": true - }, - "qs": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.2.3.tgz", - "integrity": "sha1-HPyyXBCpsrSDBT/zn138kjOQjP4=", - "dev": true, - "optional": true - }, - "request": { - "version": "2.75.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.75.0.tgz", - "integrity": "sha1-0rgmiihtoT6qXQGt9dGMyQ9lfZM=", - "dev": true, - "optional": true, - "requires": { - "aws-sign2": "~0.6.0", - "aws4": "^1.2.1", - "bl": "~1.1.2", - "caseless": "~0.11.0", - "combined-stream": "~1.0.5", - "extend": "~3.0.0", - "forever-agent": "~0.6.1", - "form-data": "~2.0.0", - "har-validator": "~2.0.6", - "hawk": "~3.1.3", - "http-signature": "~1.1.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.7", - "node-uuid": "~1.4.7", - "oauth-sign": "~0.8.1", - "qs": "~6.2.0", - "stringstream": "~0.0.4", - "tough-cookie": "~2.3.0", - "tunnel-agent": "~0.4.1" - } - }, - "sntp": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", - "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", - "dev": true, - "optional": true, - "requires": { - "hoek": "2.x.x" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true, - "optional": true - }, - "tunnel-agent": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz", - "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=", - "dev": true, - "optional": true } } }, @@ -9411,22 +9337,6 @@ "integrity": "sha1-4PyVEztu8nbNyIh82vJKpvFW+Po=", "dev": true }, - "loglevelnext": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/loglevelnext/-/loglevelnext-1.0.5.tgz", - "integrity": "sha512-V/73qkPuJmx4BcBF19xPBr+0ZRVBhc4POxvZTZdMeXpJ4NItXSJ/MSwuFT0kQJlCbXvdlZoQQ/418bS1y9Jh6A==", - "dev": true, - "requires": { - "es6-symbol": "^3.1.1", - "object.assign": "^4.1.0" - } - }, - "long": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/long/-/long-3.2.0.tgz", - "integrity": "sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s=", - "dev": true - }, "longest": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", @@ -9440,12 +9350,12 @@ "dev": true }, "loose-envify": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", - "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "dev": true, "requires": { - "js-tokens": "^3.0.0" + "js-tokens": "^3.0.0 || ^4.0.0" } }, "loud-rejection": { @@ -9461,17 +9371,20 @@ "lower-case": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", - "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=" + "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=", + "dev": true }, "lowercase-keys": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", - "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==" + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "dev": true }, "lru-cache": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz", "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", + "dev": true, "requires": { "pseudomap": "^1.0.2", "yallist": "^2.1.2" @@ -9487,75 +9400,25 @@ } }, "lunr": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.3.tgz", - "integrity": "sha512-rlAEsgU9Bnavca2w1WJ6+6cdeHMXNyadcersyk3ZpuhgWb5HBNj8l4WwJz9PjksAhYDlpQffCVXPctOn+wCIVA==", + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/lunr/-/lunr-2.3.5.tgz", + "integrity": "sha512-EtnfmHsHJTr3u24sito9JctSxej5Ds0SgUD2Lm+qRHyLgM7BGesFlW14eNh1mil0fV5Muh8gf3dBBXzADlUlzQ==", "dev": true }, "magic-string": { - "version": "0.22.5", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.22.5.tgz", - "integrity": "sha512-oreip9rJZkzvA8Qzk9HFs8fZGF/u7H/gtrE8EN6RjKJ9kh2HlC+yQ2QezifqTZfGyiuAV0dRv5a+y/8gBb1m9w==", - "dev": true, - "requires": { - "vlq": "^0.2.2" - } - }, - "mailcomposer": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/mailcomposer/-/mailcomposer-4.0.1.tgz", - "integrity": "sha1-DhxEsqB890DuF9wUm6AJ8Zyt/rQ=", - "dev": true, - "optional": true, - "requires": { - "buildmail": "4.0.1", - "libmime": "3.0.0" - } - }, - "mailgun-js": { - "version": "0.18.1", - "resolved": "https://registry.npmjs.org/mailgun-js/-/mailgun-js-0.18.1.tgz", - "integrity": "sha512-lvuMP14u24HS2uBsJEnzSyPMxzU2b99tQsIx1o6QNjqxjk8b3WvR+vq5oG1mjqz/IBYo+5gF+uSoDS0RkMVHmg==", + "version": "0.25.1", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.1.tgz", + "integrity": "sha512-sCuTz6pYom8Rlt4ISPFn6wuFodbKMIHUMv4Qko9P17dpxb7s52KJTmRuZZqHdGmLCK9AOcDare039nRIcfdkEg==", "dev": true, - "optional": true, "requires": { - "async": "~2.6.0", - "debug": "~3.1.0", - "form-data": "~2.3.0", - "inflection": "~1.12.0", - "is-stream": "^1.1.0", - "path-proxy": "~1.0.0", - "promisify-call": "^2.0.2", - "proxy-agent": "~3.0.0", - "tsscmp": "~1.0.0" - }, - "dependencies": { - "async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", - "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", - "dev": true, - "optional": true, - "requires": { - "lodash": "^4.17.10" - } - }, - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "optional": true, - "requires": { - "ms": "2.0.0" - } - } + "sourcemap-codec": "^1.4.1" } }, "make-dir": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "dev": true, "requires": { "pify": "^3.0.0" } @@ -9584,6 +9447,21 @@ "kind-of": "^6.0.2" } }, + "mamacro": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/mamacro/-/mamacro-0.0.3.tgz", + "integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==", + "dev": true + }, + "map-age-cleaner": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.2.tgz", + "integrity": "sha512-UN1dNocxQq44IhJyMI4TU8phc2m9BddacHRPRjKGLYaF0jqd3xLz0jS0skpAU9WgYyoR4gHtUpzytNBS385FWQ==", + "dev": true, + "requires": { + "p-defer": "^1.0.0" + } + }, "map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", @@ -9609,6 +9487,7 @@ "version": "0.5.0", "resolved": "https://registry.npmjs.org/markdown/-/markdown-0.5.0.tgz", "integrity": "sha1-KCBbVlqK51kt4gdGPWY33BgnIrI=", + "dev": true, "requires": { "nopt": "~2.1.1" }, @@ -9617,6 +9496,7 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/nopt/-/nopt-2.1.2.tgz", "integrity": "sha1-bMzZd7gBMqB3MdbozljCyDA8+a8=", + "dev": true, "requires": { "abbrev": "1" } @@ -9638,12 +9518,14 @@ "marked": { "version": "0.3.19", "resolved": "https://registry.npmjs.org/marked/-/marked-0.3.19.tgz", - "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==" + "integrity": "sha512-ea2eGWOqNxPcXv8dyERdSr/6FmzvWwzjMxpfGB/sbMccXoct+xY+YukPD+QTUZwyvK7BZwcr4m21WBOW41pAkg==", + "dev": true }, "math-random": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.1.tgz", - "integrity": "sha1-izqsWIuKZuSXXjzepn97sylgH6w=" + "integrity": "sha1-izqsWIuKZuSXXjzepn97sylgH6w=", + "dev": true }, "mathml-tag-names": { "version": "2.1.0", @@ -9652,22 +9534,22 @@ "dev": true }, "md5.js": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", - "integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=", + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", "dev": true, "requires": { "hash-base": "^3.0.0", - "inherits": "^2.0.1" + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" } }, "mdast-util-compact": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mdast-util-compact/-/mdast-util-compact-1.0.1.tgz", - "integrity": "sha1-zbX4TitqLTEU3zO9BdnLMuPECDo=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/mdast-util-compact/-/mdast-util-compact-1.0.2.tgz", + "integrity": "sha512-d2WS98JSDVbpSsBfVvD9TaDMlqPRz7ohM/11G0rp5jOBb5q96RJ6YLszQ/09AAixyzh23FeIpCGqfaamEADtWg==", "dev": true, "requires": { - "unist-util-modify-children": "^1.0.0", "unist-util-visit": "^1.1.0" } }, @@ -9678,18 +9560,21 @@ "dev": true }, "mem": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", - "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-4.0.0.tgz", + "integrity": "sha512-WQxG/5xYc3tMbYLXoXPm81ET2WDULiU5FxbuIoNbJqLOOI8zehXFdZuiUEgfdrU2mVB1pxBZUGlYORSrpuJreA==", "dev": true, "requires": { - "mimic-fn": "^1.0.0" + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^1.0.0", + "p-is-promise": "^1.1.0" } }, "memoize-decorator": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/memoize-decorator/-/memoize-decorator-1.0.2.tgz", - "integrity": "sha1-YFpBcVxBcdsZKpAJiwCrjW4RAvU=" + "integrity": "sha1-YFpBcVxBcdsZKpAJiwCrjW4RAvU=", + "dev": true }, "memoizee": { "version": "0.4.12", @@ -9759,10 +9644,17 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz", "integrity": "sha1-QEEgLVCKNCugAXQAjfDCUbjBNeE=", + "dev": true, "requires": { "readable-stream": "^2.0.1" } }, + "merge2": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.2.3.tgz", + "integrity": "sha512-gdUU1Fwj5ep4kplwcmftruWofEFt6lfpkkr3h860CXbAB9c3hGb55EOL2ali0Td5oebvW0E1+3Sr+Ur7XfKpRA==", + "dev": true + }, "methods": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", @@ -9804,7 +9696,8 @@ "version": "1.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true + "dev": true, + "optional": true }, "mime-db": { "version": "1.33.0", @@ -9828,13 +9721,13 @@ "dev": true }, "mini-css-extract-plugin": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.4.1.tgz", - "integrity": "sha512-XWuB3G61Rtasq/gLe7cp5cuozehE6hN+E4sxCamRR/WDiHTg+f7ZIAS024r8UJQffY+e2gGELXQZgQoFDfNDCg==", + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.4.3.tgz", + "integrity": "sha512-Mxs0nxzF1kxPv4TRi2NimewgXlJqh0rGE30vviCU2WHrpbta6wklnUV9dr9FUtoAHmB3p3LeXEC+ZjgHvB0Dzg==", "dev": true, "requires": { - "@webpack-contrib/schema-utils": "^1.0.0-beta.0", "loader-utils": "^1.1.0", + "schema-utils": "^1.0.0", "webpack-sources": "^1.1.0" } }, @@ -9854,6 +9747,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", + "dev": true, "requires": { "brace-expansion": "^1.1.7" } @@ -9861,7 +9755,8 @@ "minimist": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", + "dev": true }, "minimist-options": { "version": "3.0.2", @@ -9891,6 +9786,12 @@ "through2": "^2.0.0" } }, + "mitt": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-1.1.3.tgz", + "integrity": "sha512-mUDCnVNsAi+eD6qA0HkRkwYczbLHJ49z17BGe2PYRhZL4wpZUFZGJHU7/5tmvohoma+Hdn0Vh/oJTiPEmgSruA==", + "dev": true + }, "mixin-deep": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.1.tgz", @@ -9934,6 +9835,7 @@ "version": "0.5.1", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "dev": true, "requires": { "minimist": "0.0.8" } @@ -9983,10 +9885,16 @@ "duplexer2": "0.0.2" } }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "dev": true + }, "nan": { - "version": "2.10.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz", - "integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==", + "version": "2.11.1", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.11.1.tgz", + "integrity": "sha512-iji6k87OSXa0CcrLl9z+ZiYSuR2o+c0bGuNmXdrhTQTakxytAFsC56SArGYoiHlJlFoHSnvmhpceZJaXkVuOtA==", "dev": true }, "nanomatch": { @@ -10022,18 +9930,11 @@ "dev": true }, "neo-async": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.5.1.tgz", - "integrity": "sha512-3KL3fvuRkZ7s4IFOMfztb7zJp3QaVWnBeGoJlgB38XnCRPj/0tLzzLG5IB8NYOHbJ8g8UGrgZv44GLDk6CxTxA==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.0.tgz", + "integrity": "sha512-MFh0d/Wa7vkKO3Y3LlacqAEeHK0mckVqzDieUKTT+KGxi+zIpeVsFxymkIiRpbpDziHc290Xr9A1O4Om7otoRA==", "dev": true }, - "netmask": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/netmask/-/netmask-1.0.6.tgz", - "integrity": "sha1-ICl+idhvb2QA8lDZ9Pa0wZRfzTU=", - "dev": true, - "optional": true - }, "next-tick": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", @@ -10041,33 +9942,35 @@ "dev": true }, "ng-packagr": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/ng-packagr/-/ng-packagr-3.0.6.tgz", - "integrity": "sha512-gVhJdrf0RNygxBLk6Qfby7l+y6pIjpVikyS95wuKPwzihvW14cz/KNKQOwNPbKCeVwPhVxflpH2atW5vxsq9cQ==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/ng-packagr/-/ng-packagr-4.4.0.tgz", + "integrity": "sha512-dLpC/kmQsdbkL96ZclGjNRhq/J4MwpPKwPYNom74lvXqFC2jbbT/fnwmxX9WKXjvE8MEGsg2D2x8MsRURiNscg==", "dev": true, "requires": { "@ngtools/json-schema": "^1.1.0", - "autoprefixer": "^8.0.0", - "browserslist": "^3.0.0", + "autoprefixer": "^9.0.0", + "browserslist": "^4.0.0", "chalk": "^2.3.1", + "chokidar": "^2.0.3", + "clean-css": "^4.1.11", "commander": "^2.12.0", - "fs-extra": "^6.0.0", + "fs-extra": "^7.0.0", "glob": "^7.1.2", "injection-js": "^2.2.1", - "less": "^3.0.0", - "node-sass": "^4.5.3", + "less": "^3.8.0", + "less-plugin-npm-import": "^2.1.0", + "node-sass": "^4.9.3", "node-sass-tilde-importer": "^1.0.0", - "postcss": "^6.0.2", - "postcss-clean": "^1.1.0", - "postcss-url": "^7.3.0", - "read-pkg-up": "^3.0.0", + "postcss": "^7.0.0", + "postcss-url": "^8.0.0", + "read-pkg-up": "^4.0.0", "rimraf": "^2.6.1", - "rollup": "^0.59.0", + "rollup": "^0.66.0", "rollup-plugin-commonjs": "^9.1.3", + "rollup-plugin-json": "^3.1.0", "rollup-plugin-node-resolve": "^3.0.0", "rollup-plugin-sourcemaps": "^0.4.2", "rxjs": "^6.0.0", - "strip-bom": "^3.0.0", "stylus": "^0.54.5", "uglify-js": "^3.0.7", "update-notifier": "^2.3.0" @@ -10084,6 +9987,26 @@ "supports-color": "^5.3.0" } }, + "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" + } + }, + "fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, "load-json-file": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", @@ -10096,6 +10019,40 @@ "strip-bom": "^3.0.0" } }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.0.0.tgz", + "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", + "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==", + "dev": true + }, "parse-json": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", @@ -10118,12 +10075,12 @@ } }, "read-pkg-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-3.0.0.tgz", - "integrity": "sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", + "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", "dev": true, "requires": { - "find-up": "^2.0.0", + "find-up": "^3.0.0", "read-pkg": "^3.0.0" } }, @@ -10135,10 +10092,17 @@ } } }, + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", + "dev": true + }, "no-case": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz", "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==", + "dev": true, "requires": { "lower-case": "^1.1.1" } @@ -10150,31 +10114,147 @@ "dev": true }, "node-gyp": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.6.2.tgz", - "integrity": "sha1-m/vlRWIoYoSDjnUOrAUpWFP6HGA=", + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz", + "integrity": "sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA==", "dev": true, "requires": { "fstream": "^1.0.0", "glob": "^7.0.3", "graceful-fs": "^4.1.2", - "minimatch": "^3.0.2", "mkdirp": "^0.5.0", "nopt": "2 || 3", "npmlog": "0 || 1 || 2 || 3 || 4", "osenv": "0", - "request": "2", + "request": "^2.87.0", "rimraf": "2", "semver": "~5.3.0", "tar": "^2.0.0", "which": "1" }, "dependencies": { + "ajv": { + "version": "6.5.5", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.5.tgz", + "integrity": "sha512-7q7gtRQDJSyuEHjuVgHoUa2VuemFiCMrfQc9Tc08XTAc4Zj/5U1buQJ0HU6i7fKjXU09SVgSmxa4sLvuvS8Iyg==", + "dev": true, + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, + "aws4": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", + "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", + "dev": true + }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "har-validator": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "dev": true, + "requires": { + "ajv": "^6.5.5", + "har-schema": "^2.0.0" + } + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "mime-db": { + "version": "1.37.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.37.0.tgz", + "integrity": "sha512-R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg==", + "dev": true + }, + "mime-types": { + "version": "2.1.21", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.21.tgz", + "integrity": "sha512-3iL6DbwpyLzjR3xHSFNFeb9Nz/M8WDkX33t1GFQnFOllWk8pOrh/LSrB5OXlnlW5P9LH73X6loW/eogc+F5lJg==", + "dev": true, + "requires": { + "mime-db": "~1.37.0" + } + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true + }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "request": { + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + } + }, "semver": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=", "dev": true + }, + "tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "dev": true, + "requires": { + "psl": "^1.1.24", + "punycode": "^1.4.1" + } + }, + "uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "dev": true } } }, @@ -10217,10 +10297,19 @@ } } }, + "node-releases": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.0.3.tgz", + "integrity": "sha512-ZaZWMsbuDcetpHmYeKWPO6e63pSXLb50M7lJgCbcM2nC/nQC3daNifmtp5a2kp7EWwYfhuvH6zLPWkrF8IiDdw==", + "dev": true, + "requires": { + "semver": "^5.3.0" + } + }, "node-sass": { - "version": "4.9.0", - "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.9.0.tgz", - "integrity": "sha512-QFHfrZl6lqRU3csypwviz2XLgGNOoWQbo2GOvtsfQqOfL4cy1BtWnhx/XUeAO9LT3ahBzSRXcEO6DdvAH9DzSg==", + "version": "4.9.3", + "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.9.3.tgz", + "integrity": "sha512-XzXyGjO+84wxyH7fV6IwBOTrEBe2f0a6SBze9QWWYR/cL74AcQUks2AsqcCZenl/Fp/JVbuEaLpgrLtocwBUww==", "dev": true, "requires": { "async-foreach": "^0.1.3", @@ -10236,9 +10325,9 @@ "meow": "^3.7.0", "mkdirp": "^0.5.1", "nan": "^2.10.0", - "node-gyp": "^3.3.1", + "node-gyp": "^3.8.0", "npmlog": "^4.0.0", - "request": "~2.79.0", + "request": "2.87.0", "sass-graph": "^2.2.4", "stdout-stream": "^1.4.0", "true-case-path": "^1.0.2" @@ -10250,33 +10339,6 @@ "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", "dev": true }, - "assert-plus": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", - "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=", - "dev": true - }, - "aws-sign2": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", - "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=", - "dev": true - }, - "boom": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", - "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", - "dev": true, - "requires": { - "hoek": "2.x.x" - } - }, - "caseless": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz", - "integrity": "sha1-cVuW6phBWTzDMGeSP17GDr2k99c=", - "dev": true - }, "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", @@ -10290,108 +10352,32 @@ "supports-color": "^2.0.0" } }, - "cryptiles": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", - "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", - "dev": true, - "requires": { - "boom": "2.x.x" - } - }, - "form-data": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz", - "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.5", - "mime-types": "^2.1.12" - } - }, - "har-validator": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz", - "integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=", - "dev": true, - "requires": { - "chalk": "^1.1.1", - "commander": "^2.9.0", - "is-my-json-valid": "^2.12.4", - "pinkie-promise": "^2.0.0" - } - }, - "hawk": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", - "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", - "dev": true, - "requires": { - "boom": "2.x.x", - "cryptiles": "2.x.x", - "hoek": "2.x.x", - "sntp": "1.x.x" - } - }, - "hoek": { - "version": "2.16.3", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=", - "dev": true - }, - "http-signature": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", - "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", - "dev": true, - "requires": { - "assert-plus": "^0.2.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" - } - }, - "qs": { - "version": "6.3.2", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.3.2.tgz", - "integrity": "sha1-51vV9uJoEioqDgvaYwslUMFmUCw=", - "dev": true - }, "request": { - "version": "2.79.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.79.0.tgz", - "integrity": "sha1-Tf5b9r6LjNw3/Pk+BLZVd3InEN4=", + "version": "2.87.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", + "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", "dev": true, "requires": { - "aws-sign2": "~0.6.0", - "aws4": "^1.2.1", - "caseless": "~0.11.0", + "aws-sign2": "~0.7.0", + "aws4": "^1.6.0", + "caseless": "~0.12.0", "combined-stream": "~1.0.5", - "extend": "~3.0.0", + "extend": "~3.0.1", "forever-agent": "~0.6.1", - "form-data": "~2.1.1", - "har-validator": "~2.0.6", - "hawk": "~3.1.3", - "http-signature": "~1.1.0", + "form-data": "~2.3.1", + "har-validator": "~5.0.3", + "http-signature": "~1.2.0", "is-typedarray": "~1.0.0", "isstream": "~0.1.2", "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.7", - "oauth-sign": "~0.8.1", - "qs": "~6.3.0", - "stringstream": "~0.0.4", - "tough-cookie": "~2.3.0", - "tunnel-agent": "~0.4.1", - "uuid": "^3.0.0" - } - }, - "sntp": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", - "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", - "dev": true, - "requires": { - "hoek": "2.x.x" + "mime-types": "~2.1.17", + "oauth-sign": "~0.8.2", + "performance-now": "^2.1.0", + "qs": "~6.5.1", + "safe-buffer": "^5.1.1", + "tough-cookie": "~2.3.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.1.0" } }, "supports-color": { @@ -10399,12 +10385,6 @@ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", "dev": true - }, - "tunnel-agent": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz", - "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=", - "dev": true } } }, @@ -10415,92 +10395,7 @@ "dev": true, "requires": { "find-parent-dir": "^0.3.0" - } - }, - "nodemailer": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-2.7.2.tgz", - "integrity": "sha1-8kLmSa7q45tsftdA73sGHEBNMPk=", - "dev": true, - "optional": true, - "requires": { - "libmime": "3.0.0", - "mailcomposer": "4.0.1", - "nodemailer-direct-transport": "3.3.2", - "nodemailer-shared": "1.1.0", - "nodemailer-smtp-pool": "2.8.2", - "nodemailer-smtp-transport": "2.7.2", - "socks": "1.1.9" - }, - "dependencies": { - "socks": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/socks/-/socks-1.1.9.tgz", - "integrity": "sha1-Yo1+TQSRJDVEWsC25Fk3bLPm1pE=", - "dev": true, - "optional": true, - "requires": { - "ip": "^1.1.2", - "smart-buffer": "^1.0.4" - } - } - } - }, - "nodemailer-direct-transport": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/nodemailer-direct-transport/-/nodemailer-direct-transport-3.3.2.tgz", - "integrity": "sha1-6W+vuQNYVglH5WkBfZfmBzilCoY=", - "dev": true, - "optional": true, - "requires": { - "nodemailer-shared": "1.1.0", - "smtp-connection": "2.12.0" - } - }, - "nodemailer-fetch": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/nodemailer-fetch/-/nodemailer-fetch-1.6.0.tgz", - "integrity": "sha1-ecSQihwPXzdbc/6IjamCj23JY6Q=", - "dev": true - }, - "nodemailer-shared": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/nodemailer-shared/-/nodemailer-shared-1.1.0.tgz", - "integrity": "sha1-z1mU4v0mjQD1zw+nZ6CBae2wfsA=", - "dev": true, - "requires": { - "nodemailer-fetch": "1.6.0" - } - }, - "nodemailer-smtp-pool": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/nodemailer-smtp-pool/-/nodemailer-smtp-pool-2.8.2.tgz", - "integrity": "sha1-LrlNbPhXgLG0clzoU7nL1ejajHI=", - "dev": true, - "optional": true, - "requires": { - "nodemailer-shared": "1.1.0", - "nodemailer-wellknown": "0.1.10", - "smtp-connection": "2.12.0" - } - }, - "nodemailer-smtp-transport": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/nodemailer-smtp-transport/-/nodemailer-smtp-transport-2.7.2.tgz", - "integrity": "sha1-A9ccdjFPFKx9vHvwM6am0W1n+3c=", - "dev": true, - "optional": true, - "requires": { - "nodemailer-shared": "1.1.0", - "nodemailer-wellknown": "0.1.10", - "smtp-connection": "2.12.0" - } - }, - "nodemailer-wellknown": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/nodemailer-wellknown/-/nodemailer-wellknown-0.1.10.tgz", - "integrity": "sha1-WG24EB2zDLRDjrVGc3pBqtDPE9U=", - "dev": true + } }, "nopt": { "version": "3.0.6", @@ -10527,6 +10422,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", + "dev": true, "requires": { "remove-trailing-separator": "^1.0.1" } @@ -10547,6 +10443,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/now-and-later/-/now-and-later-2.0.0.tgz", "integrity": "sha1-vGHLtFbXnLMiB85HygUTb/Ln1u4=", + "dev": true, "requires": { "once": "^1.3.2" } @@ -10587,6 +10484,7 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dev": true, "requires": { "path-key": "^2.0.0" } @@ -10603,15 +10501,6 @@ "set-blocking": "~2.0.0" } }, - "nth-check": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.1.tgz", - "integrity": "sha1-mSms32KPwsQQmN6rgqxYDPFJquQ=", - "dev": true, - "requires": { - "boolbase": "~1.0.0" - } - }, "null-check": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/null-check/-/null-check-1.0.0.tgz", @@ -10627,7 +10516,8 @@ "number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "dev": true }, "oauth-sign": { "version": "0.8.2", @@ -10638,7 +10528,8 @@ "object-assign": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "dev": true }, "object-component": { "version": "0.0.3", @@ -10680,7 +10571,8 @@ "object-keys": { "version": "1.0.12", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.12.tgz", - "integrity": "sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==" + "integrity": "sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==", + "dev": true }, "object-path": { "version": "0.9.2", @@ -10701,6 +10593,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "dev": true, "requires": { "define-properties": "^1.1.2", "function-bind": "^1.1.1", @@ -10728,16 +10621,6 @@ } } }, - "object.getownpropertydescriptors": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", - "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", - "dev": true, - "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.5.1" - } - }, "object.map": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz", @@ -10752,6 +10635,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", + "dev": true, "requires": { "for-own": "^0.1.4", "is-extendable": "^0.1.1" @@ -10761,6 +10645,7 @@ "version": "0.1.5", "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "dev": true, "requires": { "for-in": "^1.0.1" } @@ -10801,10 +10686,20 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dev": true, "requires": { "wrappy": "1" } }, + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + } + }, "openurl": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/openurl/-/openurl-1.1.1.tgz", @@ -10824,6 +10719,7 @@ "version": "0.6.1", "resolved": "https://registry.npmjs.org/optimist/-/optimist-0.6.1.tgz", "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", + "dev": true, "requires": { "minimist": "~0.0.1", "wordwrap": "~0.0.2" @@ -10832,7 +10728,8 @@ "wordwrap": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.3.tgz", - "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=" + "integrity": "sha1-o9XabNXAvAAI03I0u68b7WMFkQc=", + "dev": true } } }, @@ -10850,12 +10747,6 @@ "wordwrap": "~1.0.0" } }, - "options": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/options/-/options-0.0.6.tgz", - "integrity": "sha1-7CLTEoBrtT5zF3Pnza788cZDEo8=", - "dev": true - }, "orchestrator": { "version": "0.3.8", "resolved": "https://registry.npmjs.org/orchestrator/-/orchestrator-0.3.8.tgz", @@ -10894,12 +10785,12 @@ "dev": true }, "original": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/original/-/original-1.0.1.tgz", - "integrity": "sha512-IEvtB5vM5ULvwnqMxWBLxkS13JIEXbakizMSo3yoPNPCIWzg8TG3Usn/UhXoZFM/m+FuEA20KdzPSFq/0rS+UA==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz", + "integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==", "dev": true, "requires": { - "url-parse": "~1.4.0" + "url-parse": "^1.4.3" } }, "os-browserify": { @@ -10939,15 +10830,28 @@ "os-tmpdir": "^1.0.0" } }, + "p-defer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", + "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "dev": true + }, "p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", + "dev": true + }, + "p-is-promise": { + "version": "1.1.0", + "resolved": "http://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", + "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=", + "dev": true }, "p-limit": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.2.0.tgz", - "integrity": "sha512-Y/OtIaXtUPr4/YpMv1pCL5L5ed0rumAaAeBSj12F+bSlMdys7i8oQF/GUJmfpTS/QoaRrS/k6pma29haJpsMng==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "requires": { "p-try": "^1.0.0" @@ -10974,64 +10878,11 @@ "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true }, - "pac-proxy-agent": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-2.0.2.tgz", - "integrity": "sha512-cDNAN1Ehjbf5EHkNY5qnRhGPUCp6SnpyVof5fRzN800QV1Y2OkzbH9rmjZkbBRa8igof903yOnjIl6z0SlAhxA==", - "dev": true, - "optional": true, - "requires": { - "agent-base": "^4.2.0", - "debug": "^3.1.0", - "get-uri": "^2.0.0", - "http-proxy-agent": "^2.1.0", - "https-proxy-agent": "^2.2.1", - "pac-resolver": "^3.0.0", - "raw-body": "^2.2.0", - "socks-proxy-agent": "^3.0.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "optional": true, - "requires": { - "ms": "2.0.0" - } - }, - "socks-proxy-agent": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-3.0.1.tgz", - "integrity": "sha512-ZwEDymm204mTzvdqyUqOdovVr2YRd2NYskrYrF2LXyZ9qDiMAoFESGK8CRphiO7rtbo2Y757k2Nia3x2hGtalA==", - "dev": true, - "optional": true, - "requires": { - "agent-base": "^4.1.0", - "socks": "^1.1.10" - } - } - } - }, - "pac-resolver": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-3.0.0.tgz", - "integrity": "sha512-tcc38bsjuE3XZ5+4vP96OfhOugrX+JcnpUbhfuc4LuXBLQhoTthOstZeoQJBDnQUDYzYmdImKsbz0xSl1/9qeA==", - "dev": true, - "optional": true, - "requires": { - "co": "^4.6.0", - "degenerator": "^1.0.4", - "ip": "^1.1.5", - "netmask": "^1.0.6", - "thunkify": "^2.1.2" - } - }, "package-json": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/package-json/-/package-json-4.0.1.tgz", "integrity": "sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0=", + "dev": true, "requires": { "got": "^6.7.1", "registry-auth-token": "^3.0.1", @@ -11059,6 +10910,7 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz", "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=", + "dev": true, "requires": { "no-case": "^2.2.0" } @@ -11077,9 +10929,9 @@ } }, "parse-entities": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-1.1.2.tgz", - "integrity": "sha512-5N9lmQ7tmxfXf+hO3X6KRG6w7uYO/HL9fHalSySTdyn63C3WNvTM/1R8tn1u1larNcEbo3Slcy2bsVDQqvEpUg==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-1.2.0.tgz", + "integrity": "sha512-XXtDdOPLSB0sHecbEapQi6/58U/ODj/KWfIXmmMCJF/eRn8laX6LZbOyioMoETOOJoWRW8/qTSl5VQkUIfKM5g==", "dev": true, "requires": { "character-entities": "^1.0.0", @@ -11105,6 +10957,7 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", + "dev": true, "requires": { "glob-base": "^0.3.0", "is-dotfile": "^1.0.0", @@ -11115,12 +10968,14 @@ "is-extglob": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true }, "is-glob": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, "requires": { "is-extglob": "^1.0.0" } @@ -11187,7 +11042,8 @@ "path-dirname": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=" + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", + "dev": true }, "path-exists": { "version": "3.0.0", @@ -11198,17 +11054,20 @@ "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", + "dev": true }, "path-is-inside": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=" + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", + "dev": true }, "path-key": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "dev": true }, "path-parse": { "version": "1.0.5", @@ -11216,25 +11075,6 @@ "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=", "dev": true }, - "path-proxy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/path-proxy/-/path-proxy-1.0.0.tgz", - "integrity": "sha1-GOijaFn8nS8aU7SN7hOFQ8Ag3l4=", - "dev": true, - "optional": true, - "requires": { - "inflection": "~1.3.0" - }, - "dependencies": { - "inflection": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/inflection/-/inflection-1.3.8.tgz", - "integrity": "sha1-y9Fg2p91sUw8xjV41POWeEvzAU4=", - "dev": true, - "optional": true - } - } - }, "path-root": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz", @@ -11266,9 +11106,9 @@ } }, "pbkdf2": { - "version": "3.0.16", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.16.tgz", - "integrity": "sha512-y4CXP3thSxqf7c0qmOF+9UeOTrifiVTIM+u7NWlq+PRsHbr7r7dpCmvzrZxa96JJUNi0Y5w9VqG5ZNeCVMoDcA==", + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", + "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", "dev": true, "requires": { "create-hash": "^1.1.2", @@ -11287,7 +11127,8 @@ "pify": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true }, "pinkie": { "version": "2.0.4", @@ -11360,9 +11201,9 @@ } }, "portfinder": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.13.tgz", - "integrity": "sha1-uzLs2HwnEErm7kS1o8y/Drsa7ek=", + "version": "1.0.17", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.17.tgz", + "integrity": "sha512-syFcRIRzVI1BoEFOCaAiizwDolh1S1YXSodsVhncbhjzjZQulhczNRbqnUl9N31Q4dKGOXsNDqxC2BWBgSMqeQ==", "dev": true, "requires": { "async": "^1.5.2", @@ -11387,14 +11228,14 @@ "dev": true }, "postcss": { - "version": "6.0.22", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.22.tgz", - "integrity": "sha512-Toc9lLoUASwGqxBSJGTVcOQiDqjK+Z2XlWBg+IgYwQMY9vA2f7iMpXVc1GpPcfTSyM5lkxNo0oDwDRO+wm7XHA==", + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.5.tgz", + "integrity": "sha512-HBNpviAUFCKvEh7NZhw1e8MBPivRszIiUnhrJ+sBFVSYSqubrzwX3KG51mYgcRHX8j/cAgZJedONZcm5jTBdgQ==", "dev": true, "requires": { "chalk": "^2.4.1", "source-map": "^0.6.1", - "supports-color": "^5.4.0" + "supports-color": "^5.5.0" }, "dependencies": { "chalk": { @@ -11413,214 +11254,88 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, - "postcss-clean": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/postcss-clean/-/postcss-clean-1.1.0.tgz", - "integrity": "sha512-83g3GqMbCM5NL6MlbbPLJ/m2NrUepBF44MoDk4Gt04QGXeXKh9+ilQa0DzLnYnvqYHQCw83nckuEzBFr2muwbg==", - "dev": true, - "requires": { - "clean-css": "^4.x", - "postcss": "^6.x" - } - }, "postcss-html": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-0.12.0.tgz", - "integrity": "sha512-KxKUpj7AY7nlCbLcTOYxdfJnGE7QFAfU2n95ADj1Q90RM/pOLdz8k3n4avOyRFs7MDQHcRzJQWM1dehCwJxisQ==", + "version": "0.34.0", + "resolved": "https://registry.npmjs.org/postcss-html/-/postcss-html-0.34.0.tgz", + "integrity": "sha512-BIW982Kbf9/RikInNhNS3/GA6x/qY/+jhVS9KumqXZtU9ss8Yq15HhPJ6mnaXcU5bFq2ULxpOv96mHPAErpGMQ==", "dev": true, "requires": { - "htmlparser2": "^3.9.2", - "remark": "^8.0.0", - "unist-util-find-all-after": "^1.0.1" - }, - "dependencies": { - "domhandler": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", - "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", - "dev": true, - "requires": { - "domelementtype": "1" - } - }, - "htmlparser2": { - "version": "3.9.2", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.9.2.tgz", - "integrity": "sha1-G9+HrMoPP55T+k/M6w9LTLsAszg=", - "dev": true, - "requires": { - "domelementtype": "^1.3.0", - "domhandler": "^2.3.0", - "domutils": "^1.5.1", - "entities": "^1.1.1", - "inherits": "^2.0.1", - "readable-stream": "^2.0.2" - } - } + "htmlparser2": "^3.9.2" } }, "postcss-import": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-11.1.0.tgz", - "integrity": "sha512-5l327iI75POonjxkXgdRCUS+AlzAdBx4pOvMEhTKTCjb1p8IEeVR9yx3cPbmN7LIWJLbfnIXxAhoB4jpD0c/Cw==", + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-12.0.0.tgz", + "integrity": "sha512-3KqKRZcaZAvxbY8DVLdd81tG5uKzbUQuiWIvy0o0fzEC42bKacqPYFWbfCQyw6L4LWUaqPz/idvIdbhpgQ32eQ==", "dev": true, "requires": { - "postcss": "^6.0.1", + "postcss": "^7.0.1", "postcss-value-parser": "^3.2.3", "read-cache": "^1.0.0", "resolve": "^1.1.7" } }, - "postcss-less": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/postcss-less/-/postcss-less-1.1.5.tgz", - "integrity": "sha512-QQIiIqgEjNnquc0d4b6HDOSFZxbFQoy4MPpli2lSLpKhMyBkKwwca2HFqu4xzxlKID/F2fxSOowwtKpgczhF7A==", + "postcss-jsx": { + "version": "0.35.0", + "resolved": "https://registry.npmjs.org/postcss-jsx/-/postcss-jsx-0.35.0.tgz", + "integrity": "sha512-AU2/9QDmHYJRxTiniMt2bJ9fwCzVF6n00VnR4gdnFGHeXRW2mGwoptpuPgYjfivkdI8LlNIuo+w8TyS6a4JhJw==", "dev": true, "requires": { - "postcss": "^5.2.16" - }, - "dependencies": { - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "dependencies": { - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } - } - }, - "has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", - "dev": true - }, - "postcss": { - "version": "5.2.18", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", - "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", - "dev": true, - "requires": { - "chalk": "^1.1.3", - "js-base64": "^2.1.9", - "source-map": "^0.5.6", - "supports-color": "^3.2.3" - } - }, - "supports-color": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", - "dev": true, - "requires": { - "has-flag": "^1.0.0" - } - } + "@babel/core": "^7.1.2", + "postcss-styled": ">=0.34.0" } }, - "postcss-load-config": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-1.2.0.tgz", - "integrity": "sha1-U56a/J3chiASHr+djDZz4M5Q0oo=", + "postcss-less": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/postcss-less/-/postcss-less-3.0.2.tgz", + "integrity": "sha512-+JBOampmDnuaf4w8OIEqkCiF+sOm/nWukDsC+1FTrYcIstptOISzGpYZk24Qh+Ewlmzmi53sRyiTbiGvMCDRwA==", "dev": true, "requires": { - "cosmiconfig": "^2.1.0", - "object-assign": "^4.1.0", - "postcss-load-options": "^1.2.0", - "postcss-load-plugins": "^2.3.0" + "postcss": "^7.0.3" } }, - "postcss-load-options": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/postcss-load-options/-/postcss-load-options-1.2.0.tgz", - "integrity": "sha1-sJixVZ3awt8EvAuzdfmaXP4rbYw=", + "postcss-load-config": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.0.0.tgz", + "integrity": "sha512-V5JBLzw406BB8UIfsAWSK2KSwIJ5yoEIVFb4gVkXci0QdKgA24jLmHZ/ghe/GgX0lJ0/D1uUK1ejhzEY94MChQ==", "dev": true, "requires": { - "cosmiconfig": "^2.1.0", - "object-assign": "^4.1.0" + "cosmiconfig": "^4.0.0", + "import-cwd": "^2.0.0" } }, - "postcss-load-plugins": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/postcss-load-plugins/-/postcss-load-plugins-2.3.0.tgz", - "integrity": "sha1-dFdoEWWZrKLwCfrUJrABdQSdjZI=", + "postcss-loader": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-3.0.0.tgz", + "integrity": "sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==", "dev": true, "requires": { - "cosmiconfig": "^2.1.1", - "object-assign": "^4.1.0" + "loader-utils": "^1.1.0", + "postcss": "^7.0.0", + "postcss-load-config": "^2.0.0", + "schema-utils": "^1.0.0" } }, - "postcss-loader": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-2.1.6.tgz", - "integrity": "sha512-hgiWSc13xVQAq25cVw80CH0l49ZKlAnU1hKPOdRrNj89bokRr/bZF2nT+hebPPF9c9xs8c3gw3Fr2nxtmXYnNg==", + "postcss-markdown": { + "version": "0.34.0", + "resolved": "https://registry.npmjs.org/postcss-markdown/-/postcss-markdown-0.34.0.tgz", + "integrity": "sha512-cKPggF9OMOKPoqDm5YpYszCqMsImFh78FK6P8p6IsEKZB6IkUJYKz0/QgadYy4jLb60jcFIHJ6v6jsMH7/ZQrA==", "dev": true, "requires": { - "loader-utils": "^1.1.0", - "postcss": "^6.0.0", - "postcss-load-config": "^2.0.0", - "schema-utils": "^0.4.0" - }, - "dependencies": { - "cosmiconfig": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-4.0.0.tgz", - "integrity": "sha512-6e5vDdrXZD+t5v0L8CrurPeybg4Fmf+FCSYxXKYVAqLUtyCSbuyqE059d0kDthTNRzKVjL7QMgNpEUlsoYH3iQ==", - "dev": true, - "requires": { - "is-directory": "^0.3.1", - "js-yaml": "^3.9.0", - "parse-json": "^4.0.0", - "require-from-string": "^2.0.1" - } - }, - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "postcss-load-config": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.0.0.tgz", - "integrity": "sha512-V5JBLzw406BB8UIfsAWSK2KSwIJ5yoEIVFb4gVkXci0QdKgA24jLmHZ/ghe/GgX0lJ0/D1uUK1ejhzEY94MChQ==", - "dev": true, - "requires": { - "cosmiconfig": "^4.0.0", - "import-cwd": "^2.0.0" - } - }, - "require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true - } + "remark": "^9.0.0", + "unist-util-find-all-after": "^1.0.2" } }, "postcss-media-query-parser": { @@ -11630,15 +11345,15 @@ "dev": true }, "postcss-reporter": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/postcss-reporter/-/postcss-reporter-5.0.0.tgz", - "integrity": "sha512-rBkDbaHAu5uywbCR2XE8a25tats3xSOsGNx6mppK6Q9kSFGKc/FyAzfci+fWM2l+K402p1D0pNcfDGxeje5IKg==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-reporter/-/postcss-reporter-6.0.0.tgz", + "integrity": "sha512-5xQXm1UPWuFObjbtyQzWvQaupru8yFcFi4HUlm6OPo1o2bUszYASuqRJ7bVArb3svGCdbYtqdMBKrqR1Aoy+tw==", "dev": true, "requires": { "chalk": "^2.0.1", "lodash": "^4.17.4", "log-symbols": "^2.0.0", - "postcss": "^6.0.8" + "postcss": "^7.0.2" } }, "postcss-resolve-nested-selector": { @@ -11648,31 +11363,31 @@ "dev": true }, "postcss-safe-parser": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-3.0.1.tgz", - "integrity": "sha1-t1Pv9sfArqXoN1++TN6L+QY/8UI=", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-4.0.1.tgz", + "integrity": "sha512-xZsFA3uX8MO3yAda03QrG3/Eg1LN3EPfjjf07vke/46HERLZyHrTsQ9E1r1w1W//fWEhtYNndo2hQplN2cVpCQ==", "dev": true, "requires": { - "postcss": "^6.0.6" + "postcss": "^7.0.0" } }, "postcss-sass": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/postcss-sass/-/postcss-sass-0.2.0.tgz", - "integrity": "sha512-cUmYzkP747fPCQE6d+CH2l1L4VSyIlAzZsok3HPjb5Gzsq3jE+VjpAdGlPsnQ310WKWI42sw+ar0UNN59/f3hg==", + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/postcss-sass/-/postcss-sass-0.3.5.tgz", + "integrity": "sha512-B5z2Kob4xBxFjcufFnhQ2HqJQ2y/Zs/ic5EZbCywCkxKd756Q40cIQ/veRDwSrw1BF6+4wUgmpm0sBASqVi65A==", "dev": true, "requires": { - "gonzales-pe": "^4.0.3", - "postcss": "^6.0.6" + "gonzales-pe": "^4.2.3", + "postcss": "^7.0.1" } }, "postcss-scss": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-1.0.5.tgz", - "integrity": "sha512-gJB1tKYMkBy0MU+COt6WXA4ZiRctAKoWLa6qD7a6bbEbBMqrpa/BhfQdN80eYMV+JkKddZVEpZlOggnGShpvyg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-2.0.0.tgz", + "integrity": "sha512-um9zdGKaDZirMm+kZFKKVsnKPF7zF7qBAtIfTSnZXD1jZ0JNZIxdB6TxQOjCnlSzLRInVl2v3YdBh/M881C4ug==", "dev": true, "requires": { - "postcss": "^6.0.21" + "postcss": "^7.0.0" } }, "postcss-selector-parser": { @@ -11686,23 +11401,43 @@ "uniq": "^1.0.1" } }, + "postcss-styled": { + "version": "0.34.0", + "resolved": "https://registry.npmjs.org/postcss-styled/-/postcss-styled-0.34.0.tgz", + "integrity": "sha512-Uaeetr/xOiQWGJgzPFOr32/Bwykpfh9TVE26OpmwDb8eEN205TS/gqkt9ri+C6otQzQKXqbMfeZNbKYi7QpeNA==", + "dev": true + }, + "postcss-syntax": { + "version": "0.34.0", + "resolved": "https://registry.npmjs.org/postcss-syntax/-/postcss-syntax-0.34.0.tgz", + "integrity": "sha512-L36NZwq2UK743US+vl1CRMdBRZCBmFYfThP9n9jCFhX1Wfk6BqnRSgt0Fy8q44IwxPee/GCzlo7T1c1JIeUDlQ==", + "dev": true + }, "postcss-url": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/postcss-url/-/postcss-url-7.3.2.tgz", - "integrity": "sha512-QMV5mA+pCYZQcUEPQkmor9vcPQ2MT+Ipuu8qdi1gVxbNiIiErEGft+eny1ak19qALoBkccS5AHaCaCDzh7b9MA==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/postcss-url/-/postcss-url-8.0.0.tgz", + "integrity": "sha512-E2cbOQ5aii2zNHh8F6fk1cxls7QVFZjLPSrqvmiza8OuXLzIpErij8BDS5Y3STPfJgpIMNCPEr8JlKQWEoozUw==", "dev": true, "requires": { - "mime": "^1.4.1", + "mime": "^2.3.1", "minimatch": "^3.0.4", "mkdirp": "^0.5.0", - "postcss": "^6.0.1", + "postcss": "^7.0.2", "xxhashjs": "^0.2.1" + }, + "dependencies": { + "mime": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.3.1.tgz", + "integrity": "sha512-OEUllcVoydBHGN1z84yfQDimn58pZNNNXgZlHXSboxMlFvgI6MXSWpWKpFRra7H1HxpVhHTkrghfRW49k6yjeg==", + "dev": true + } } }, "postcss-value-parser": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz", - "integrity": "sha1-h/OPnxj3dKSrTIojL1xc6IcqnRU=", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "dev": true }, "prelude-ls": { @@ -11714,22 +11449,14 @@ "prepend-http": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=" + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", + "dev": true }, "preserve": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", - "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=" - }, - "pretty-error": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.1.tgz", - "integrity": "sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM=", - "dev": true, - "requires": { - "renderkid": "^2.0.1", - "utila": "~0.4" - } + "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", + "dev": true }, "pretty-hrtime": { "version": "1.0.3", @@ -11746,7 +11473,8 @@ "process-nextick-args": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" + "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==", + "dev": true }, "progress": { "version": "2.0.1", @@ -11770,26 +11498,17 @@ "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", "dev": true }, - "promisify-call": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/promisify-call/-/promisify-call-2.0.4.tgz", - "integrity": "sha1-1IwtRWUszM1SgB3ey9UzptS9X7o=", - "dev": true, - "optional": true, - "requires": { - "with-callback": "^1.0.2" - } - }, "protractor": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/protractor/-/protractor-5.3.2.tgz", - "integrity": "sha512-pw4uwwiy5lHZjIguxNpkEwJJa7hVz+bJsvaTI+IbXlfn2qXwzbF8eghW/RmrZwE2sGx82I8etb8lVjQ+JrjejA==", + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/protractor/-/protractor-5.4.1.tgz", + "integrity": "sha512-ORey5ewQMYiXQxcQohsqEiKYOg/r5yJoJbt0tuROmmgajdg/CA3gTOZNIFJncUVMAJIk5YFqBBLUjKVmQO6tfA==", "dev": true, "requires": { "@types/node": "^6.0.46", "@types/q": "^0.0.32", - "@types/selenium-webdriver": "~2.53.39", + "@types/selenium-webdriver": "^3.0.0", "blocking-proxy": "^1.0.0", + "browserstack": "^1.5.1", "chalk": "^1.1.3", "glob": "^7.0.3", "jasmine": "2.8.0", @@ -11799,21 +11518,27 @@ "saucelabs": "^1.5.0", "selenium-webdriver": "3.6.0", "source-map-support": "~0.4.0", - "webdriver-js-extender": "^1.0.0", + "webdriver-js-extender": "2.1.0", "webdriver-manager": "^12.0.6" }, "dependencies": { "@types/node": { - "version": "6.0.110", - "resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.110.tgz", - "integrity": "sha512-LiaH3mF+OAqR+9Wo1OTJDbZDtCewAVjTbMhF1ZgUJ3fc8xqOJq6VqbpBh9dJVCVzByGmYIg2fREbuXNX0TKiJA==", + "version": "6.14.1", + "resolved": "https://registry.npmjs.org/@types/node/-/node-6.14.1.tgz", + "integrity": "sha512-lfydm+Ul6buYjF6AmcenFjqVYB+tpNlGlwWLr43J1Cok4ybLQimrM8rdB1MdrjtyWdYRceZNgsAeSRZhFxNajQ==", "dev": true }, - "adm-zip": { - "version": "0.4.11", - "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.11.tgz", - "integrity": "sha512-L8vcjDTCOIJk7wFvmlEUN7AsSb8T+2JrdP7KINBjzr24TJ5Mwj590sLu3BC7zNZowvJWa/JtPmD8eJCzdtDWjA==", - "dev": true + "ajv": { + "version": "6.5.5", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.5.tgz", + "integrity": "sha512-7q7gtRQDJSyuEHjuVgHoUa2VuemFiCMrfQc9Tc08XTAc4Zj/5U1buQJ0HU6i7fKjXU09SVgSmxa4sLvuvS8Iyg==", + "dev": true, + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } }, "ansi-styles": { "version": "2.2.1", @@ -11821,6 +11546,12 @@ "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", "dev": true }, + "aws4": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", + "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", + "dev": true + }, "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", @@ -11849,6 +11580,18 @@ "rimraf": "^2.2.8" } }, + "extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "dev": true + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, "globby": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", @@ -11863,6 +11606,16 @@ "pinkie-promise": "^2.0.0" } }, + "har-validator": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "dev": true, + "requires": { + "ajv": "^6.5.5", + "har-schema": "^2.0.0" + } + }, "jasmine": { "version": "2.8.0", "resolved": "https://registry.npmjs.org/jasmine/-/jasmine-2.8.0.tgz", @@ -11880,18 +11633,79 @@ "integrity": "sha1-vMl5rh+f0FcB5F5S5l06XWPxok4=", "dev": true }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "mime-db": { + "version": "1.37.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.37.0.tgz", + "integrity": "sha512-R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg==", + "dev": true + }, + "mime-types": { + "version": "2.1.21", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.21.tgz", + "integrity": "sha512-3iL6DbwpyLzjR3xHSFNFeb9Nz/M8WDkX33t1GFQnFOllWk8pOrh/LSrB5OXlnlW5P9LH73X6loW/eogc+F5lJg==", + "dev": true, + "requires": { + "mime-db": "~1.37.0" + } + }, "minimist": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", "dev": true }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true + }, "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, + "punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", + "dev": true + }, + "request": { + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "dev": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + } + }, "source-map-support": { "version": "0.4.18", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", @@ -11907,20 +11721,36 @@ "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", "dev": true }, + "tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", + "dev": true, + "requires": { + "psl": "^1.1.24", + "punycode": "^1.4.1" + } + }, + "uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "dev": true + }, "webdriver-manager": { - "version": "12.0.6", - "resolved": "https://registry.npmjs.org/webdriver-manager/-/webdriver-manager-12.0.6.tgz", - "integrity": "sha1-PfGkgZdwELTL+MnYXHpXeCjA5ws=", + "version": "12.1.0", + "resolved": "https://registry.npmjs.org/webdriver-manager/-/webdriver-manager-12.1.0.tgz", + "integrity": "sha512-oEc5fmkpz6Yh6udhwir5m0eN5mgRPq9P/NU5YWuT3Up5slt6Zz+znhLU7q4+8rwCZz/Qq3Fgpr/4oao7NPCm2A==", "dev": true, "requires": { - "adm-zip": "^0.4.7", + "adm-zip": "^0.4.9", "chalk": "^1.1.1", "del": "^2.2.0", "glob": "^7.0.3", "ini": "^1.3.4", "minimist": "^1.2.0", "q": "^1.4.1", - "request": "^2.78.0", + "request": "^2.87.0", "rimraf": "^2.5.2", "semver": "^5.3.0", "xml2js": "^0.4.17" @@ -11938,42 +11768,6 @@ "ipaddr.js": "1.8.0" } }, - "proxy-agent": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-3.0.1.tgz", - "integrity": "sha512-mAZexaz9ZxQhYPWfAjzlrloEjW+JHiBFryE4AJXFDTnaXfmH/FKqC1swTRKuEPbHWz02flQNXFOyDUF7zfEG6A==", - "dev": true, - "optional": true, - "requires": { - "agent-base": "^4.2.0", - "debug": "^3.1.0", - "http-proxy-agent": "^2.1.0", - "https-proxy-agent": "^2.2.1", - "lru-cache": "^4.1.2", - "pac-proxy-agent": "^2.0.1", - "proxy-from-env": "^1.0.0", - "socks-proxy-agent": "^4.0.1" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "optional": true, - "requires": { - "ms": "2.0.0" - } - } - } - }, - "proxy-from-env": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.0.0.tgz", - "integrity": "sha1-M8UDmPcOp+uW0h97gXYwpVeRx+4=", - "dev": true, - "optional": true - }, "prr": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", @@ -11983,25 +11777,34 @@ "pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", + "dev": true + }, + "psl": { + "version": "1.1.29", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.29.tgz", + "integrity": "sha512-AeUmQ0oLN02flVHXWh9sSJF7mcdFq0ppid/JkErufc3hGIV/AMa8Fo9VgDo/cT2jFdOWoFvHp90qqBH54W+gjQ==", + "dev": true }, "public-encrypt": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.2.tgz", - "integrity": "sha512-4kJ5Esocg8X3h8YgJsKAuoesBgB7mqH3eowiDzMUPKiRDDE7E/BqqZD1hnTByIaAFiwAw246YEltSq7tdrOH0Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", "dev": true, "requires": { "bn.js": "^4.1.0", "browserify-rsa": "^4.0.0", "create-hash": "^1.1.0", "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1" + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" } }, "pump": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", + "dev": true, "requires": { "end-of-stream": "^1.1.0", "once": "^1.3.1" @@ -12011,6 +11814,7 @@ "version": "1.5.1", "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", + "dev": true, "requires": { "duplexify": "^3.6.0", "inherits": "^2.0.3", @@ -12018,15 +11822,16 @@ } }, "punycode": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.0.tgz", - "integrity": "sha1-X4Y+3Im5bbCQdLrXlHvwkFbKTn0=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", "dev": true }, "q": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/q/-/q-1.4.1.tgz", - "integrity": "sha1-VXBbzZPF82c1MMLCy8DCs63cKG4=" + "integrity": "sha1-VXBbzZPF82c1MMLCy8DCs63cKG4=", + "dev": true }, "qjobs": { "version": "1.2.0", @@ -12053,9 +11858,9 @@ "dev": true }, "querystringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.0.0.tgz", - "integrity": "sha512-eTPo5t/4bgaMNZxyjWx6N2a6AuE0mq51KWvpc7nU/MAqixcI6v6KrGUKES0HaomdnolQBBXU/++X6/QQ9KL4tw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.1.0.tgz", + "integrity": "sha512-sluvZZ1YiTLD5jsqZcDmFyV2EwToyXZBfpoVOmktMmW+VEnhgakFHnasVph65fOjGPTWN0Nw3+XQaSeMayr0kg==", "dev": true }, "quick-lru": { @@ -12068,6 +11873,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.0.0.tgz", "integrity": "sha512-VdxFOIEY3mNO5PtSRkkle/hPJDHvQhK21oa73K4yAc9qmp6N429gAyF1gZMOTMeS0/AYzaV/2Trcef+NaIonSA==", + "dev": true, "requires": { "is-number": "^4.0.0", "kind-of": "^6.0.0", @@ -12077,7 +11883,8 @@ "is-number": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==" + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", + "dev": true } } }, @@ -12107,41 +11914,15 @@ "dev": true }, "raw-body": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz", - "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.3.tgz", + "integrity": "sha512-9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw==", "dev": true, "requires": { "bytes": "3.0.0", - "http-errors": "1.6.2", - "iconv-lite": "0.4.19", + "http-errors": "1.6.3", + "iconv-lite": "0.4.23", "unpipe": "1.0.0" - }, - "dependencies": { - "depd": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", - "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=", - "dev": true - }, - "http-errors": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", - "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", - "dev": true, - "requires": { - "depd": "1.1.1", - "inherits": "2.0.3", - "setprototypeof": "1.0.3", - "statuses": ">= 1.3.1 < 2" - } - }, - "setprototypeof": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", - "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=", - "dev": true - } } }, "raw-loader": { @@ -12154,6 +11935,7 @@ "version": "1.2.7", "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.7.tgz", "integrity": "sha512-LdLD8xD4zzLsAT5xyushXDNscEjB7+2ulnl8+r1pnESlYtlJtVSoCMBGr30eDRJ3+2Gq89jK9P9e4tCEH1+ywA==", + "dev": true, "requires": { "deep-extend": "^0.5.1", "ini": "~1.3.0", @@ -12164,7 +11946,8 @@ "minimist": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true } } }, @@ -12250,6 +12033,7 @@ "version": "2.3.6", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -12261,15 +12045,14 @@ } }, "readdirp": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", - "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "minimatch": "^3.0.2", - "readable-stream": "^2.0.2", - "set-immediate-shim": "^1.0.1" + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" } }, "rechoir": { @@ -12291,32 +12074,6 @@ "strip-indent": "^1.0.1" } }, - "redis": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/redis/-/redis-2.8.0.tgz", - "integrity": "sha512-M1OkonEQwtRmZv4tEWF2VgpG0JWJ8Fv1PhlgT5+B+uNq2cA3Rt1Yt/ryoR+vQNOQcIEgdCdfH0jr3bDpihAw1A==", - "dev": true, - "optional": true, - "requires": { - "double-ended-queue": "^2.1.0-0", - "redis-commands": "^1.2.0", - "redis-parser": "^2.6.0" - } - }, - "redis-commands": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/redis-commands/-/redis-commands-1.3.5.tgz", - "integrity": "sha512-foGF8u6MXGFF++1TZVC6icGXuMYPftKXt1FBT2vrfU9ZATNtZJ8duRC5d1lEfE8hyVe3jhelHGB91oB7I6qLsA==", - "dev": true, - "optional": true - }, - "redis-parser": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/redis-parser/-/redis-parser-2.6.0.tgz", - "integrity": "sha1-Uu0J2srBCPGmMcB+m2mUHnoZUEs=", - "dev": true, - "optional": true - }, "reflect-metadata": { "version": "0.1.12", "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.12.tgz", @@ -12332,12 +12089,14 @@ "regenerator-runtime": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" + "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", + "dev": true }, "regex-cache": { "version": "0.4.4", "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", + "dev": true, "requires": { "is-equal-shallow": "^0.1.3" } @@ -12367,6 +12126,7 @@ "version": "3.3.2", "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-3.3.2.tgz", "integrity": "sha512-JL39c60XlzCVgNrO+qq68FoNb56w/m7JYvGR2jT5iR1xBrUA3Mfx5Twk5rqTThPmQKMWydGmq8oFtDlxfrmxnQ==", + "dev": true, "requires": { "rc": "^1.1.6", "safe-buffer": "^5.0.1" @@ -12376,6 +12136,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-3.1.0.tgz", "integrity": "sha1-PU74cPc93h138M+aOBQyRE4XSUI=", + "dev": true, "requires": { "rc": "^1.0.1" } @@ -12406,23 +12167,24 @@ "relateurl": { "version": "0.2.7", "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", - "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=" + "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=", + "dev": true }, "remark": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/remark/-/remark-8.0.0.tgz", - "integrity": "sha512-K0PTsaZvJlXTl9DN6qYlvjTkqSZBFELhROZMrblm2rB+085flN84nz4g/BscKRMqDvhzlK1oQ/xnWQumdeNZYw==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/remark/-/remark-9.0.0.tgz", + "integrity": "sha512-amw8rGdD5lHbMEakiEsllmkdBP+/KpjW/PRK6NSGPZKCQowh0BT4IWXDAkRMyG3SB9dKPXWMviFjNusXzXNn3A==", "dev": true, "requires": { - "remark-parse": "^4.0.0", - "remark-stringify": "^4.0.0", + "remark-parse": "^5.0.0", + "remark-stringify": "^5.0.0", "unified": "^6.0.0" } }, "remark-parse": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-4.0.0.tgz", - "integrity": "sha512-XZgICP2gJ1MHU7+vQaRM+VA9HEL3X253uwUM/BGgx3iv6TH2B3bF3B8q00DKcyP9YrJV+/7WOWEWBFF/u8cIsw==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/remark-parse/-/remark-parse-5.0.0.tgz", + "integrity": "sha512-b3iXszZLH1TLoyUzrATcTQUZrwNl1rE70rVdSruJFlDaJ9z5aMkhrG43Pp68OgfHndL/ADz6V69Zow8cTQu+JA==", "dev": true, "requires": { "collapse-white-space": "^1.0.2", @@ -12431,7 +12193,7 @@ "is-whitespace-character": "^1.0.0", "is-word-character": "^1.0.0", "markdown-escapes": "^1.0.0", - "parse-entities": "^1.0.2", + "parse-entities": "^1.1.0", "repeat-string": "^1.5.4", "state-toggle": "^1.0.0", "trim": "0.0.1", @@ -12443,9 +12205,9 @@ } }, "remark-stringify": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-4.0.0.tgz", - "integrity": "sha512-xLuyKTnuQer3ke9hkU38SUYLiTmS078QOnoFavztmbt/pAJtNSkNtFgR0U//uCcmG0qnyxao+PDuatQav46F1w==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/remark-stringify/-/remark-stringify-5.0.0.tgz", + "integrity": "sha512-Ws5MdA69ftqQ/yhRF9XhVV29mhxbfGhbz0Rx5bQH+oJcNhhSM6nCu1EpLod+DjrFGrU0BMPs+czVmJZU7xiS7w==", "dev": true, "requires": { "ccount": "^1.0.0", @@ -12468,6 +12230,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/remove-bom-buffer/-/remove-bom-buffer-3.0.0.tgz", "integrity": "sha512-8v2rWhaakv18qcvNeli2mZ/TMTL2nEyAKRvzo1WtnZBl15SHyEhrCu2/xKlJyUFKHiHgfXIyuY6g2dObJJycXQ==", + "dev": true, "requires": { "is-buffer": "^1.1.5", "is-utf8": "^0.2.1" @@ -12477,6 +12240,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/remove-bom-stream/-/remove-bom-stream-1.2.0.tgz", "integrity": "sha1-BfGlk/FuQuH7kOv1nejlaVJflSM=", + "dev": true, "requires": { "remove-bom-buffer": "^3.0.0", "safe-buffer": "^5.1.0", @@ -12486,38 +12250,20 @@ "remove-trailing-separator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", - "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" - }, - "renderkid": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.1.tgz", - "integrity": "sha1-iYyr/Ivt5Le5ETWj/9Mj5YwNsxk=", - "dev": true, - "requires": { - "css-select": "^1.1.0", - "dom-converter": "~0.1", - "htmlparser2": "~3.3.0", - "strip-ansi": "^3.0.0", - "utila": "~0.3" - }, - "dependencies": { - "utila": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/utila/-/utila-0.3.3.tgz", - "integrity": "sha1-1+jn1+MJEHCSsF+NloiCTWM6QiY=", - "dev": true - } - } + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", + "dev": true }, "repeat-element": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", - "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=" + "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=", + "dev": true }, "repeat-string": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", + "dev": true }, "repeating": { "version": "2.0.1", @@ -12531,7 +12277,8 @@ "replace-ext": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz", - "integrity": "sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ=" + "integrity": "sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ=", + "dev": true }, "request": { "version": "2.86.0", @@ -12562,28 +12309,6 @@ "uuid": "^3.1.0" } }, - "requestretry": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/requestretry/-/requestretry-1.13.0.tgz", - "integrity": "sha512-Lmh9qMvnQXADGAQxsXHP4rbgO6pffCfuR8XUBdP9aitJcLQJxhp7YZK4xAVYXnPJ5E52mwrfiKQtKonPL8xsmg==", - "dev": true, - "optional": true, - "requires": { - "extend": "^3.0.0", - "lodash": "^4.15.0", - "request": "^2.74.0", - "when": "^3.7.7" - }, - "dependencies": { - "when": { - "version": "3.7.8", - "resolved": "https://registry.npmjs.org/when/-/when-3.7.8.tgz", - "integrity": "sha1-xxMLan6gRpPoQs3J56Hyqjmjn4I=", - "dev": true, - "optional": true - } - } - }, "require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", @@ -12591,9 +12316,9 @@ "dev": true }, "require-from-string": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-1.2.1.tgz", - "integrity": "sha1-UpyczvJzgK3+yaL5ZbZJu+5jZBg=", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", "dev": true }, "require-main-filename": { @@ -12646,6 +12371,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/resolve-options/-/resolve-options-1.1.0.tgz", "integrity": "sha1-MrueOcBtZzONyTeMDW1gdFZq0TE=", + "dev": true, "requires": { "value-or-function": "^3.0.0" } @@ -12666,6 +12392,16 @@ "minimatch": "^3.0.2" } }, + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "requires": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + } + }, "ret": { "version": "0.1.15", "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", @@ -12678,6 +12414,12 @@ "integrity": "sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q=", "dev": true }, + "rfdc": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.1.2.tgz", + "integrity": "sha512-92ktAgvZhBzYTIK0Mja9uen5q5J3NRVMoDkJL2VMwq6SXjVCgqvQeVP2XAaUY6HT+XpQYeLSjb3UoitBryKmdA==", + "dev": true + }, "right-align": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", @@ -12692,6 +12434,7 @@ "version": "2.6.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", + "dev": true, "requires": { "glob": "^7.0.5" } @@ -12707,9 +12450,9 @@ } }, "rollup": { - "version": "0.59.4", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-0.59.4.tgz", - "integrity": "sha512-ISiMqq/aJa+57QxX2MRcvLESHdJ7wSavmr6U1euMr+6UgFe6KM+3QANrYy8LQofwhTC1I7BcAdlLnDiaODs1BA==", + "version": "0.66.6", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-0.66.6.tgz", + "integrity": "sha512-J7/SWanrcb83vfIHqa8+aVVGzy457GcjA6GVZEnD0x2u4OnOd0Q1pCrEoNe8yLwM6z6LZP02zBT2uW0yh5TqOw==", "dev": true, "requires": { "@types/estree": "0.0.39", @@ -12717,21 +12460,41 @@ } }, "rollup-plugin-commonjs": { - "version": "9.1.4", - "resolved": "https://registry.npmjs.org/rollup-plugin-commonjs/-/rollup-plugin-commonjs-9.1.4.tgz", - "integrity": "sha512-dpPb6QxvEMG35Eat1yFbpVcuYWE33D2LZK8q2BlSWIBpjXiX2uaqCEMf9czqFChFsfewsA2c2eEoROTepEmyng==", + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/rollup-plugin-commonjs/-/rollup-plugin-commonjs-9.2.0.tgz", + "integrity": "sha512-0RM5U4Vd6iHjL6rLvr3lKBwnPsaVml+qxOGaaNUWN1lSq6S33KhITOfHmvxV3z2vy9Mk4t0g4rNlVaJJsNQPWA==", + "dev": true, + "requires": { + "estree-walker": "^0.5.2", + "magic-string": "^0.25.1", + "resolve": "^1.8.1", + "rollup-pluginutils": "^2.3.3" + }, + "dependencies": { + "resolve": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", + "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", + "dev": true, + "requires": { + "path-parse": "^1.0.5" + } + } + } + }, + "rollup-plugin-json": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/rollup-plugin-json/-/rollup-plugin-json-3.1.0.tgz", + "integrity": "sha512-BlYk5VspvGpjz7lAwArVzBXR60JK+4EKtPkCHouAWg39obk9S61hZYJDBfMK+oitPdoe11i69TlxKlMQNFC/Uw==", "dev": true, "requires": { - "estree-walker": "^0.5.1", - "magic-string": "^0.22.4", - "resolve": "^1.5.0", - "rollup-pluginutils": "^2.0.1" + "rollup-pluginutils": "^2.3.1" } }, "rollup-plugin-node-resolve": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-3.3.0.tgz", - "integrity": "sha512-9zHGr3oUJq6G+X0oRMYlzid9fXicBdiydhwGChdyeNRGPcN/majtegApRKHLR5drboUvEWU+QeUmGTyEZQs3WA==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-3.4.0.tgz", + "integrity": "sha512-PJcd85dxfSBWih84ozRtBkB731OjXk0KnzN0oGp7WOWcarAFkVa71cV5hTJg2qpVsV2U8EUwrzHP3tvy9vS3qg==", "dev": true, "requires": { "builtin-modules": "^2.0.0", @@ -12758,9 +12521,9 @@ } }, "rollup-pluginutils": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.3.0.tgz", - "integrity": "sha512-xB6hsRsjdJdIYWEyYUJy/3ki5g69wrf0luHPGNK3ZSocV6HLNfio59l3dZ3TL4xUwEKgROhFi9jOCt6c5gfUWw==", + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/rollup-pluginutils/-/rollup-pluginutils-2.3.3.tgz", + "integrity": "sha512-2XZwja7b6P5q4RZ5FhyX1+f46xi1Z3qBKigLRZ6VTZjwbN0K1IFGMlwm06Uu0Emcre2Z63l77nq/pzn+KxIEoA==", "dev": true, "requires": { "estree-walker": "^0.5.2", @@ -12858,6 +12621,15 @@ } } }, + "run-async": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", + "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "dev": true, + "requires": { + "is-promise": "^2.1.0" + } + }, "run-queue": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", @@ -12874,9 +12646,9 @@ "dev": true }, "rxjs": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.2.2.tgz", - "integrity": "sha512-0MI8+mkKAXZUF9vMrEoPnaoHkfzBPP4IGwUYRJhIRJF6/w3uByO1e91bEHn8zd43RdkTMKiooYKmwz7RH6zfOQ==", + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.3.3.tgz", + "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", "requires": { "tslib": "^1.9.0" } @@ -12884,7 +12656,8 @@ "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", + "dev": true }, "safe-regex": { "version": "1.1.0", @@ -12899,6 +12672,7 @@ "version": "0.2.4", "resolved": "https://registry.npmjs.org/safe-wipe/-/safe-wipe-0.2.4.tgz", "integrity": "sha1-U7k113dbc5qSS1FslbskF/qaRR4=", + "dev": true, "requires": { "extend": "2.*", "q": "1.*", @@ -12908,14 +12682,22 @@ "extend": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend/-/extend-2.0.1.tgz", - "integrity": "sha1-HugBBonnOV/5RIJByYZSvHWagmA=" + "integrity": "sha1-HugBBonnOV/5RIJByYZSvHWagmA=", + "dev": true } } }, + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "dev": true + }, "sass-convert": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/sass-convert/-/sass-convert-0.5.2.tgz", "integrity": "sha1-se1CsOjW/pjsftbnijjiZWSGDwY=", + "dev": true, "requires": { "concat-stream": "^1.4.7", "dargs": "^4.0.0", @@ -12933,12 +12715,14 @@ "es6-promise": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-3.3.1.tgz", - "integrity": "sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM=" + "integrity": "sha1-oIzd6EzNvzTQJ6FFG8kdS80ophM=", + "dev": true }, "object-assign": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz", - "integrity": "sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I=" + "integrity": "sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I=", + "dev": true } } }, @@ -13001,22 +12785,23 @@ } }, "sass-loader": { - "version": "6.0.7", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-6.0.7.tgz", - "integrity": "sha512-JoiyD00Yo1o61OJsoP2s2kb19L1/Y2p3QFcCdWdF6oomBGKVYuZyqHWemRBfQ2uGYsk+CH3eCguXNfpjzlcpaA==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-7.1.0.tgz", + "integrity": "sha512-+G+BKGglmZM2GUSfT9TLuEp6tzehHPjAMoRRItOojWIqIGPloVCMhNIQuG639eJ+y033PaGTSjLaTHts8Kw79w==", "dev": true, "requires": { "clone-deep": "^2.0.1", "loader-utils": "^1.0.1", "lodash.tail": "^4.1.1", "neo-async": "^2.5.0", - "pify": "^3.0.0" + "pify": "^3.0.0", + "semver": "^5.5.0" } }, "sassdoc": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/sassdoc/-/sassdoc-2.5.0.tgz", - "integrity": "sha512-XPdeqeXhUdj7m/8A1YfPfY1Wpyt4XaKNLs5ZlLBBVhHChZ2mqz/Qu3oRmh8PvglqW9x2PS2zvQyUUEPqdWEE9g==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/sassdoc/-/sassdoc-2.5.1.tgz", + "integrity": "sha512-orAT7ondJARoGyj4iGGi6s1UNN/AnAPklY7GFm/v4QM4b0u03qpFo/Zig4YIQdaWFZQCLeIBlHLPyBU3EEOKJw==", "dev": true, "requires": { "babel-runtime": "^6.26.0", @@ -13034,7 +12819,7 @@ "rimraf": "^2.6.2", "safe-wipe": "0.*", "sass-convert": "^0.5.0", - "sassdoc-theme-default": "^2.6.1", + "sassdoc-theme-default": "^2.6.2", "scss-comment-parser": "^0.8.3", "strip-indent": "^2.0.0", "through2": "1.1.1", @@ -13189,12 +12974,12 @@ }, "dependencies": { "through2": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", "dev": true, "requires": { - "readable-stream": "^2.1.5", + "readable-stream": "~2.3.6", "xtend": "~4.0.1" } } @@ -13360,12 +13145,12 @@ }, "dependencies": { "through2": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", - "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", "dev": true, "requires": { - "readable-stream": "^2.1.5", + "readable-stream": "~2.3.6", "xtend": "~4.0.1" } } @@ -13377,6 +13162,7 @@ "version": "2.4.3", "resolved": "https://registry.npmjs.org/sassdoc-extras/-/sassdoc-extras-2.4.3.tgz", "integrity": "sha512-oV42OSIRHDKn5xgNvZNNBCYjWGuX1u+PifHMi0JDZ9mJV+Y0m7KuvSvNTh+F7dLKSqXYZbbCZQa1b+AXgZjEHA==", + "dev": true, "requires": { "marked": "^0.3.19" } @@ -13385,6 +13171,7 @@ "version": "1.0.2-beta.1", "resolved": "https://registry.npmjs.org/sassdoc-plugin-localization/-/sassdoc-plugin-localization-1.0.2-beta.1.tgz", "integrity": "sha512-YOleC3JkstgNuJWTNY3p2XFrDVp7urZkCL+MsN2qb7krckFjgL3iRhX4XihE2Wr23lBWb/RSfNuKhKPwVZgTmA==", + "dev": true, "requires": { "@types/node": "^7.0.5", "fs-extra": "^7.0.0", @@ -13396,17 +13183,20 @@ "@types/node": { "version": "7.10.0", "resolved": "https://registry.npmjs.org/@types/node/-/node-7.10.0.tgz", - "integrity": "sha512-yF75IZxur7xs90zpmoE+ktRJGJIauORo4qblVFvfKTYSSBFRRWlrl2dO/tE4vetSS4KAvFumS+1thTf3mMZhaA==" + "integrity": "sha512-yF75IZxur7xs90zpmoE+ktRJGJIauORo4qblVFvfKTYSSBFRRWlrl2dO/tE4vetSS4KAvFumS+1thTf3mMZhaA==", + "dev": true }, "ansi-styles": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "dev": true }, "arr-diff": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "dev": true, "requires": { "arr-flatten": "^1.0.1" } @@ -13414,12 +13204,14 @@ "array-unique": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=" + "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", + "dev": true }, "braces": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "dev": true, "requires": { "expand-range": "^1.8.1", "preserve": "^0.2.0", @@ -13430,6 +13222,7 @@ "version": "1.1.3", "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "dev": true, "requires": { "ansi-styles": "^2.2.1", "escape-string-regexp": "^1.0.2", @@ -13441,12 +13234,14 @@ "clone": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=" + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "dev": true }, "duplexer2": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", "integrity": "sha1-ixLauHjA1p4+eJEFFmKjL8a93ME=", + "dev": true, "requires": { "readable-stream": "^2.0.2" } @@ -13455,6 +13250,7 @@ "version": "0.1.5", "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "dev": true, "requires": { "is-posix-bracket": "^0.1.0" } @@ -13463,6 +13259,7 @@ "version": "0.3.2", "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "dev": true, "requires": { "is-extglob": "^1.0.0" } @@ -13471,6 +13268,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.0.tgz", "integrity": "sha512-EglNDLRpmaTWiD/qraZn6HREAEAHJcJOmxNEYwq6xeMKnVMAy3GUcFB+wXt2C6k4CNvB/mP1y/U3dzvKKj5OtQ==", + "dev": true, "requires": { "graceful-fs": "^4.1.2", "jsonfile": "^4.0.0", @@ -13481,6 +13279,7 @@ "version": "5.3.5", "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-5.3.5.tgz", "integrity": "sha1-pVZlqajM3EGRWofHAeMtTgFvrSI=", + "dev": true, "requires": { "extend": "^3.0.0", "glob": "^5.0.3", @@ -13496,6 +13295,7 @@ "version": "5.0.15", "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "dev": true, "requires": { "inflight": "^1.0.4", "inherits": "2", @@ -13508,6 +13308,7 @@ "version": "1.0.34", "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", + "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.1", @@ -13519,6 +13320,7 @@ "version": "0.6.5", "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz", "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=", + "dev": true, "requires": { "readable-stream": ">=1.0.33-1 <1.1.0-0", "xtend": ">=4.0.0 <4.1.0-0" @@ -13530,6 +13332,7 @@ "version": "1.6.0", "resolved": "https://registry.npmjs.org/gulp-sourcemaps/-/gulp-sourcemaps-1.6.0.tgz", "integrity": "sha1-uG/zSdgBzrVuHZ59x7vLS33uYAw=", + "dev": true, "requires": { "convert-source-map": "^1.1.1", "graceful-fs": "^4.1.2", @@ -13542,6 +13345,7 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "dev": true, "requires": { "readable-stream": "^2.1.5", "xtend": "~4.0.1" @@ -13552,12 +13356,14 @@ "is-extglob": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" + "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "dev": true }, "is-glob": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "dev": true, "requires": { "is-extglob": "^1.0.0" } @@ -13565,12 +13371,14 @@ "isarray": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", + "dev": true }, "kind-of": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -13579,6 +13387,7 @@ "version": "2.3.11", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "dev": true, "requires": { "arr-diff": "^2.0.0", "array-unique": "^0.2.1", @@ -13599,6 +13408,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/multipipe/-/multipipe-1.0.2.tgz", "integrity": "sha1-zBPv2DPJzamfIk+GhGG44aP9k50=", + "dev": true, "requires": { "duplexer2": "^0.1.2", "object-assign": "^4.1.0" @@ -13608,6 +13418,7 @@ "version": "0.3.0", "resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-0.3.0.tgz", "integrity": "sha1-cTfmmzKYuzQiR6G77jiByA4v14s=", + "dev": true, "requires": { "is-stream": "^1.0.1", "readable-stream": "^2.0.1" @@ -13617,6 +13428,7 @@ "version": "2.5.1", "resolved": "https://registry.npmjs.org/sassdoc/-/sassdoc-2.5.1.tgz", "integrity": "sha512-orAT7ondJARoGyj4iGGi6s1UNN/AnAPklY7GFm/v4QM4b0u03qpFo/Zig4YIQdaWFZQCLeIBlHLPyBU3EEOKJw==", + "dev": true, "requires": { "babel-runtime": "^6.26.0", "chalk": "^1.0.0", @@ -13647,6 +13459,7 @@ "version": "2.6.2", "resolved": "https://registry.npmjs.org/sassdoc-theme-default/-/sassdoc-theme-default-2.6.2.tgz", "integrity": "sha512-nOoopiIRwztNJZT2HkIIlHbGF+BjQ2etatq798/JTJYBeXIlG9DLUuClH1/o9CWLHT/tRG9K8AuUGRPU2G3etw==", + "dev": true, "requires": { "babel-runtime": "^6.22.0", "chroma-js": "^1.2.2", @@ -13664,6 +13477,7 @@ "version": "2.1.2", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-2.1.2.tgz", "integrity": "sha1-BGxwFjzvmq1GsOSn+kZ/si1x3jU=", + "dev": true, "requires": { "graceful-fs": "^4.1.2", "jsonfile": "^2.1.0" @@ -13673,6 +13487,7 @@ "version": "2.4.0", "resolved": "http://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", + "dev": true, "requires": { "graceful-fs": "^4.1.6" } @@ -13682,22 +13497,26 @@ "string_decoder": { "version": "0.10.31", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" + "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", + "dev": true }, "strip-indent": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz", - "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=" + "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=", + "dev": true }, "supports-color": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "dev": true }, "through2": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/through2/-/through2-1.1.1.tgz", "integrity": "sha1-CEfLxESfNAVXTb3M2buEG4OsNUU=", + "dev": true, "requires": { "readable-stream": ">=1.1.13-1 <1.2.0-0", "xtend": ">=4.0.0 <4.1.0-0" @@ -13707,6 +13526,7 @@ "version": "1.1.14", "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dev": true, "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.1", @@ -13719,12 +13539,14 @@ "typescript": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.1.3.tgz", - "integrity": "sha512-+81MUSyX+BaSo+u2RbozuQk/UWx6hfG0a5gHu4ANEM4sU96XbuIyAB+rWBW1u70c6a5QuZfuYICn3s2UjuHUpA==" + "integrity": "sha512-+81MUSyX+BaSo+u2RbozuQk/UWx6hfG0a5gHu4ANEM4sU96XbuIyAB+rWBW1u70c6a5QuZfuYICn3s2UjuHUpA==", + "dev": true }, "unique-stream": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.2.1.tgz", "integrity": "sha1-WqADz76Uxf+GbE59ZouxxNuts2k=", + "dev": true, "requires": { "json-stable-stringify": "^1.0.0", "through2-filter": "^2.0.0" @@ -13734,6 +13556,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", + "dev": true, "requires": { "clone": "^1.0.0", "clone-stats": "^0.0.1", @@ -13744,6 +13567,7 @@ "version": "2.4.4", "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-2.4.4.tgz", "integrity": "sha1-vm/zJwy1Xf19MGNkDegfJddTIjk=", + "dev": true, "requires": { "duplexify": "^3.2.0", "glob-stream": "^5.3.2", @@ -13768,6 +13592,7 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "dev": true, "requires": { "readable-stream": "^2.1.5", "xtend": "~4.0.1" @@ -13778,9 +13603,9 @@ } }, "sassdoc-theme-default": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/sassdoc-theme-default/-/sassdoc-theme-default-2.6.1.tgz", - "integrity": "sha1-bUhZZloVqKli/oBj5nWnyGESpgg=", + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/sassdoc-theme-default/-/sassdoc-theme-default-2.6.2.tgz", + "integrity": "sha512-nOoopiIRwztNJZT2HkIIlHbGF+BjQ2etatq798/JTJYBeXIlG9DLUuClH1/o9CWLHT/tRG9K8AuUGRPU2G3etw==", "dev": true, "requires": { "babel-runtime": "^6.22.0", @@ -13832,12 +13657,13 @@ "dev": true }, "schema-utils": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.5.tgz", - "integrity": "sha512-yYrjb9TX2k/J1Y5UNy3KYdZq10xhYcF8nMpAW6o3hy6Q8WSIEf9lJHG/ePnOBfziPM3fvQwfOwa13U/Fh8qTfA==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", "dev": true, "requires": { "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", "ajv-keywords": "^3.1.0" } }, @@ -13845,6 +13671,7 @@ "version": "0.8.4", "resolved": "https://registry.npmjs.org/scss-comment-parser/-/scss-comment-parser-0.8.4.tgz", "integrity": "sha512-ERw4BODvM22n8Ke8hJxuH3fKXLm0Q4chfUNHwDSOAExCths2ZXq8PT32vms4R9Om6dffRSXzzGZS1p38UU4EAg==", + "dev": true, "requires": { "cdocparser": "^0.13.0" } @@ -13900,9 +13727,9 @@ } }, "selfsigned": { - "version": "1.10.3", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.3.tgz", - "integrity": "sha512-vmZenZ+8Al3NLHkWnhBQ0x6BkML1eCP2xEi3JE+f3D9wW9fipD9NNJHYtE9XJM4TsPaHGZJIamrSI6MTg1dU2Q==", + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.4.tgz", + "integrity": "sha512-9AukTiDmHXGXWtWjembZ5NDmVvP2695EtpgbCsxCa68w3c88B+alqbmZ4O3hZ4VWGXeGWzEVdvqgAJD8DQPCDw==", "dev": true, "requires": { "node-forge": "0.7.5" @@ -13911,12 +13738,14 @@ "semver": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", - "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==" + "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==", + "dev": true }, "semver-diff": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-2.1.0.tgz", "integrity": "sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY=", + "dev": true, "requires": { "semver": "^5.0.3" } @@ -13931,9 +13760,9 @@ } }, "semver-intersect": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/semver-intersect/-/semver-intersect-1.3.1.tgz", - "integrity": "sha1-j6hKnhAovSOeRTDRo+GB5pjYhLo=", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/semver-intersect/-/semver-intersect-1.4.0.tgz", + "integrity": "sha512-d8fvGg5ycKAq0+I6nfWeCx6ffaWJCsBYU0H2Rq56+/zFePYfT8mXkB3tWBSjR5BerkHNZ5eTPIk1/LBYas35xQ==", "dev": true, "requires": { "semver": "^5.0.0" @@ -13942,7 +13771,8 @@ "semver-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-1.0.0.tgz", - "integrity": "sha1-kqSWkGX5xwxpR1PVUkj8aPj2Usk=" + "integrity": "sha1-kqSWkGX5xwxpR1PVUkj8aPj2Usk=", + "dev": true }, "send": { "version": "0.16.2", @@ -14024,12 +13854,6 @@ "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", "dev": true }, - "set-immediate-shim": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", - "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", - "dev": true - }, "set-value": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.0.tgz", @@ -14098,6 +13922,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "dev": true, "requires": { "shebang-regex": "^1.0.0" } @@ -14105,7 +13930,8 @@ "shebang-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=" + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "dev": true }, "shelljs": { "version": "0.8.2", @@ -14127,17 +13953,8 @@ "signal-exit": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" - }, - "slack-node": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/slack-node/-/slack-node-0.2.0.tgz", - "integrity": "sha1-3kuN3aqLeT9h29KTgQT9q/N9+jA=", - "dev": true, - "optional": true, - "requires": { - "requestretry": "^1.2.2" - } + "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", + "dev": true }, "slash": { "version": "1.0.0", @@ -14168,23 +13985,6 @@ "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", "dev": true }, - "smart-buffer": { - "version": "1.1.15", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-1.1.15.tgz", - "integrity": "sha1-fxFLW2X6s+KjWqd1uxLw0cZJvxY=", - "dev": true, - "optional": true - }, - "smtp-connection": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/smtp-connection/-/smtp-connection-2.12.0.tgz", - "integrity": "sha1-1275EnyyPCJZ7bHoNJwujV4tdME=", - "dev": true, - "requires": { - "httpntlm": "1.6.1", - "nodemailer-shared": "1.1.0" - } - }, "snapdragon": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", @@ -14302,16 +14102,28 @@ } }, "socket.io": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.0.4.tgz", - "integrity": "sha1-waRZDO/4fs8TxyZS8Eb3FrKeYBQ=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.1.1.tgz", + "integrity": "sha512-rORqq9c+7W0DAK3cleWNSyfv/qKXV99hV4tZe+gGLfBECw3XEhBy7x85F3wypA9688LKjtwO9pX9L33/xQI8yA==", "dev": true, "requires": { - "debug": "~2.6.6", - "engine.io": "~3.1.0", + "debug": "~3.1.0", + "engine.io": "~3.2.0", + "has-binary2": "~1.0.2", "socket.io-adapter": "~1.1.0", - "socket.io-client": "2.0.4", - "socket.io-parser": "~3.1.1" + "socket.io-client": "2.1.1", + "socket.io-parser": "~3.2.0" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } } }, "socket.io-adapter": { @@ -14321,35 +14133,46 @@ "dev": true }, "socket.io-client": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.0.4.tgz", - "integrity": "sha1-CRilUkBtxeVAs4Dc2Xr8SmQzL44=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.1.1.tgz", + "integrity": "sha512-jxnFyhAuFxYfjqIgduQlhzqTcOEQSn+OHKVfAxWaNWa7ecP7xSNk2Dx/3UEsDcY7NcFafxvNvKPmmO7HTwTxGQ==", "dev": true, "requires": { "backo2": "1.0.2", "base64-arraybuffer": "0.1.5", "component-bind": "1.0.0", "component-emitter": "1.2.1", - "debug": "~2.6.4", - "engine.io-client": "~3.1.0", + "debug": "~3.1.0", + "engine.io-client": "~3.2.0", + "has-binary2": "~1.0.2", "has-cors": "1.1.0", "indexof": "0.0.1", "object-component": "0.0.3", "parseqs": "0.0.5", "parseuri": "0.0.5", - "socket.io-parser": "~3.1.1", + "socket.io-parser": "~3.2.0", "to-array": "0.1.4" + }, + "dependencies": { + "debug": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + } } }, "socket.io-parser": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.1.3.tgz", - "integrity": "sha512-g0a2HPqLguqAczs3dMECuA1RgoGFPyvDqcbaDEdCWY9g59kdUAz3YRmaJBNKXflrHNwB7Q12Gkf/0CZXfdHR7g==", + "version": "3.2.0", + "resolved": "http://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.2.0.tgz", + "integrity": "sha512-FYiBx7rc/KORMJlgsXysflWx/RIvtqZbyGLlHZvjfmPTPeuD/I8MaW7cfFrj5tRltICJdgwflhfZ3NVVbVLFQA==", "dev": true, "requires": { "component-emitter": "1.2.1", "debug": "~3.1.0", - "has-binary2": "~1.0.2", "isarray": "2.0.1" }, "dependencies": { @@ -14405,68 +14228,26 @@ } } }, - "socks": { - "version": "1.1.10", - "resolved": "https://registry.npmjs.org/socks/-/socks-1.1.10.tgz", - "integrity": "sha1-W4t/x8jzQcU+0FbpKbe/Tei6e1o=", - "dev": true, - "optional": true, - "requires": { - "ip": "^1.1.4", - "smart-buffer": "^1.0.13" - } - }, - "socks-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.1.tgz", - "integrity": "sha512-Kezx6/VBguXOsEe5oU3lXYyKMi4+gva72TwJ7pQY5JfqUx2nMk7NXA6z/mpNqIlfQjWYVfeuNvQjexiTaTn6Nw==", - "dev": true, - "optional": true, - "requires": { - "agent-base": "~4.2.0", - "socks": "~2.2.0" - }, - "dependencies": { - "smart-buffer": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.0.1.tgz", - "integrity": "sha512-RFqinRVJVcCAL9Uh1oVqE6FZkqsyLiVOYEZ20TqIOjuX7iFVJ+zsbs4RIghnw/pTs7mZvt8ZHhvm1ZUrR4fykg==", - "dev": true, - "optional": true - }, - "socks": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.2.1.tgz", - "integrity": "sha512-0GabKw7n9mI46vcNrVfs0o6XzWzjVa3h6GaSo2UPxtWAROXUWavfJWh1M4PR5tnE0dcnQXZIDFP4yrAysLze/w==", - "dev": true, - "optional": true, - "requires": { - "ip": "^1.1.5", - "smart-buffer": "^4.0.1" - } - } - } - }, "source-list-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.0.tgz", - "integrity": "sha512-I2UmuJSRr/T8jisiROLU3A3ltr+swpniSmNPI4Ml3ZCX6tVnDsuZzK7F2hl5jTqbZBWCEKlj5HRQiPExXLgE8A==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", "dev": true }, "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true }, "source-map-loader": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-0.2.3.tgz", - "integrity": "sha512-MYbFX9DYxmTQFfy2v8FC1XZwpwHKYxg3SK8Wb7VPBKuhDjz8gi9re2819MsG4p49HDyiOSUKlmZ+nQBArW5CGw==", + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-0.2.4.tgz", + "integrity": "sha512-OU6UJUty+i2JDpTItnizPrlpOIBLmQbWMuBg9q5bVtnHACqw1tn9nNwqJLbv0/00JjnJb/Ee5g5WS5vrRv7zIQ==", "dev": true, "requires": { "async": "^2.5.0", - "loader-utils": "~0.2.2", - "source-map": "~0.6.1" + "loader-utils": "^1.1.0" }, "dependencies": { "async": { @@ -14477,24 +14258,6 @@ "requires": { "lodash": "^4.17.10" } - }, - "loader-utils": { - "version": "0.2.17", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz", - "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", - "dev": true, - "requires": { - "big.js": "^3.1.3", - "emojis-list": "^2.0.0", - "json5": "^0.5.0", - "object-assign": "^4.0.1" - } - }, - "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 } } }, @@ -14512,9 +14275,9 @@ } }, "source-map-support": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.6.tgz", - "integrity": "sha512-N4KXEz7jcKqPf2b2vZF11lQIz9W5ZMuUcIOGj243lduidkf2fjkVKJS9vNxVWn3u/uxX38AcE8U9nnH9FPcq+g==", + "version": "0.5.9", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.9.tgz", + "integrity": "sha512-gR6Rw4MvUlYy83vP0vxoVNzM6t8MUXqNuRsuBmBHQDu1Fh6X015FrLdgoDKcNdkwGubozq0P4N0Q37UyFVr1EA==", "dev": true, "requires": { "buffer-from": "^1.0.0", @@ -14535,6 +14298,12 @@ "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", "dev": true }, + "sourcemap-codec": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.3.tgz", + "integrity": "sha512-vFrY/x/NdsD7Yc8mpTJXuao9S8lq08Z/kOITHz6b7YbfI9xL8Spe5EvSQUHOI7SbpY8bRPr0U3kKSsPuqEGSfA==", + "dev": true + }, "sparkles": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz", @@ -14542,9 +14311,9 @@ "dev": true }, "spdx-correct": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz", - "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.2.tgz", + "integrity": "sha512-q9hedtzyXHr5S0A1vEPoK/7l8NpfkFYTq6iCY+Pno2ZbdZR6WexZFtqeVGkGxW3TEJMN914Z55EnAGMmenlIQQ==", "dev": true, "requires": { "spdx-expression-parse": "^3.0.0", @@ -14552,9 +14321,9 @@ } }, "spdx-exceptions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz", - "integrity": "sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", + "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", "dev": true }, "spdx-expression-parse": { @@ -14568,9 +14337,9 @@ } }, "spdx-license-ids": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz", - "integrity": "sha512-2+EPwgbnmOIl8HjGBXXMd9NAu02vLjOO1nWw4kmeRDFyHn+M/ETfHxQUK0oXg8ctgVnl9t3rosNVsZ1jG61nDA==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.2.tgz", + "integrity": "sha512-qky9CVt0lVIECkEsYbNILVnPvycuEBkXoMFLRWsREkomQLevYhtRKC+R91a5TOAQ3bCMjikRwhyaRqj1VYatYg==", "dev": true }, "spdy": { @@ -14588,9 +14357,9 @@ } }, "spdy-transport": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-2.1.0.tgz", - "integrity": "sha512-bpUeGpZcmZ692rrTiqf9/2EUakI6/kXX1Rpe0ib/DyOzbiexVfXkw6GnvI9hVGvIwVaUhkaBojjCZwLNRGQg1g==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-2.1.1.tgz", + "integrity": "sha512-q7D8c148escoB3Z7ySCASadkegMmUZW8Wb/Q1u0/XBgDKMO880rLQDj8Twiew/tYi7ghemKUi/whSYOwE17f5Q==", "dev": true, "requires": { "debug": "^2.6.8", @@ -14603,11 +14372,20 @@ } }, "specificity": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/specificity/-/specificity-0.3.2.tgz", - "integrity": "sha512-Nc/QN/A425Qog7j9aHmwOrlwX2e7pNI47ciwxwy4jOlvbbMHkNNJchit+FX+UjF3IAdiaaV5BKeWuDUnws6G1A==", + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/specificity/-/specificity-0.4.1.tgz", + "integrity": "sha512-1klA3Gi5PD1Wv9Q0wUoOQN1IWAuPu0D1U03ThXTr0cJ20+/iq2tHSDnK7Kk/0LXJ1ztUB2/1Os0wKmfyNgUQfg==", "dev": true }, + "speed-measure-webpack-plugin": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/speed-measure-webpack-plugin/-/speed-measure-webpack-plugin-1.2.3.tgz", + "integrity": "sha512-p+taQ69VkRUXYMoZOx2nxV/Tz8tt79ahctoZJyJDHWP7fEYvwFNf5Pd73k5kZ6auu0pTsPNLEUwWpM8mCk85Zw==", + "dev": true, + "requires": { + "chalk": "^2.0.1" + } + }, "split-string": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", @@ -14620,7 +14398,8 @@ "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true }, "sshpk": { "version": "1.14.1", @@ -14675,9 +14454,9 @@ } }, "stats-webpack-plugin": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/stats-webpack-plugin/-/stats-webpack-plugin-0.6.2.tgz", - "integrity": "sha1-LFlJtTHgf4eojm6k3PrFOqjHWis=", + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/stats-webpack-plugin/-/stats-webpack-plugin-0.7.0.tgz", + "integrity": "sha512-NT0YGhwuQ0EOX+uPhhUcI6/+1Sq/pMzNuSCBVT4GbFl/ac6I/JZefBcjlECNfAb1t3GOx5dEj1Z7x0cAxeeVLQ==", "dev": true, "requires": { "lodash": "^4.17.4" @@ -14690,9 +14469,9 @@ "dev": true }, "stdout-stream": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.0.tgz", - "integrity": "sha1-osfIWH5U2UJ+qe2zrD8s1SLfN4s=", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz", + "integrity": "sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==", "dev": true, "requires": { "readable-stream": "^2.0.1" @@ -14740,7 +14519,8 @@ "stream-shift": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.0.tgz", - "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=" + "integrity": "sha1-1cdSgl5TZ+eG944Y5EXqIjoVWVI=", + "dev": true }, "stream-throttle": { "version": "0.1.3", @@ -14765,13 +14545,19 @@ }, "dependencies": { "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true } } }, @@ -14790,6 +14576,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -14806,16 +14593,11 @@ "is-hexadecimal": "^1.0.0" } }, - "stringstream": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", - "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=", - "dev": true - }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dev": true, "requires": { "ansi-regex": "^2.0.0" } @@ -14824,6 +14606,7 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", + "dev": true, "requires": { "is-utf8": "^0.2.0" } @@ -14832,6 +14615,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-bom-stream/-/strip-bom-stream-1.0.0.tgz", "integrity": "sha1-5xRDmFd9Uaa+0PoZlPoF9D/ZiO4=", + "dev": true, "requires": { "first-chunk-stream": "^1.0.0", "strip-bom": "^2.0.0" @@ -14846,12 +14630,14 @@ "strip-eof": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=" + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "dev": true }, "strip-indent": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", + "dev": true, "requires": { "get-stdin": "^4.0.1" } @@ -14859,16 +14645,29 @@ "strip-json-comments": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "dev": true }, "style-loader": { - "version": "0.21.0", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-0.21.0.tgz", - "integrity": "sha512-T+UNsAcl3Yg+BsPKs1vd22Fr8sVT+CJMtzqc6LEw9bbJZb43lm9GoeIfUcDEefBSWC0BhYbcdupV1GtI4DGzxg==", + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-0.23.0.tgz", + "integrity": "sha512-uCcN7XWHkqwGVt7skpInW6IGO1tG6ReyFQ1Cseh0VcN6VdcFQi62aG/2F3Y9ueA8x4IVlfaSUxpmQXQD9QrEuQ==", "dev": true, "requires": { "loader-utils": "^1.1.0", "schema-utils": "^0.4.5" + }, + "dependencies": { + "schema-utils": { + "version": "0.4.7", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", + "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0" + } + } } }, "style-search": { @@ -14878,50 +14677,59 @@ "dev": true }, "stylelint": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-8.4.0.tgz", - "integrity": "sha512-56hPH5mTFnk8LzlEuTWq0epa34fHuS54UFYQidBOFt563RJBNi1nz1F2HK2MoT1X1waq47milvRsRahFCCJs/Q==", + "version": "9.8.0", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-9.8.0.tgz", + "integrity": "sha512-qYYgP9UnZ6S4uaXrfEGPIMeNv21gP4t3E7BtnYfJIiHKvz7AbrCP0vj1wPgD6OFyxLT5txQxtoznfSkm2vsUkQ==", "dev": true, "requires": { - "autoprefixer": "^7.1.2", + "autoprefixer": "^9.0.0", "balanced-match": "^1.0.0", - "chalk": "^2.0.1", - "cosmiconfig": "^3.1.0", - "debug": "^3.0.0", + "chalk": "^2.4.1", + "cosmiconfig": "^5.0.0", + "debug": "^4.0.0", "execall": "^1.0.0", "file-entry-cache": "^2.0.0", - "get-stdin": "^5.0.1", - "globby": "^7.0.0", + "get-stdin": "^6.0.0", + "global-modules": "^1.0.0", + "globby": "^8.0.0", "globjoin": "^0.1.4", "html-tags": "^2.0.0", - "ignore": "^3.3.3", + "ignore": "^5.0.4", + "import-lazy": "^3.1.0", "imurmurhash": "^0.1.4", - "known-css-properties": "^0.5.0", + "known-css-properties": "^0.9.0", + "leven": "^2.1.0", "lodash": "^4.17.4", "log-symbols": "^2.0.0", "mathml-tag-names": "^2.0.1", - "meow": "^4.0.0", - "micromatch": "^2.3.11", + "meow": "^5.0.0", + "micromatch": "^3.1.10", "normalize-selector": "^0.2.0", - "pify": "^3.0.0", - "postcss": "^6.0.6", - "postcss-html": "^0.12.0", - "postcss-less": "^1.1.0", + "pify": "^4.0.0", + "postcss": "^7.0.0", + "postcss-html": "^0.34.0", + "postcss-jsx": "^0.35.0", + "postcss-less": "^3.0.1", + "postcss-markdown": "^0.34.0", "postcss-media-query-parser": "^0.2.3", - "postcss-reporter": "^5.0.0", + "postcss-reporter": "^6.0.0", "postcss-resolve-nested-selector": "^0.1.1", - "postcss-safe-parser": "^3.0.1", - "postcss-sass": "^0.2.0", - "postcss-scss": "^1.0.2", + "postcss-safe-parser": "^4.0.0", + "postcss-sass": "^0.3.5", + "postcss-scss": "^2.0.0", "postcss-selector-parser": "^3.1.0", + "postcss-styled": "^0.34.0", + "postcss-syntax": "^0.34.0", "postcss-value-parser": "^3.3.0", "resolve-from": "^4.0.0", - "specificity": "^0.3.1", + "signal-exit": "^3.0.2", + "slash": "^2.0.0", + "specificity": "^0.4.1", "string-width": "^2.1.0", "style-search": "^0.1.0", - "sugarss": "^1.0.0", + "sugarss": "^2.0.0", "svg-tags": "^1.0.0", - "table": "^4.0.1" + "table": "^5.0.0" }, "dependencies": { "ansi-regex": { @@ -14930,56 +14738,6 @@ "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", "dev": true }, - "arr-diff": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", - "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", - "dev": true, - "requires": { - "arr-flatten": "^1.0.1" - } - }, - "array-unique": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", - "dev": true - }, - "autoprefixer": { - "version": "7.2.6", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-7.2.6.tgz", - "integrity": "sha512-Iq8TRIB+/9eQ8rbGhcP7ct5cYb/3qjNYAR2SnzLCEcwF6rvVOax8+9+fccgXk4bEhQGjOZd5TLhsksmAdsbGqQ==", - "dev": true, - "requires": { - "browserslist": "^2.11.3", - "caniuse-lite": "^1.0.30000805", - "normalize-range": "^0.1.2", - "num2fraction": "^1.2.2", - "postcss": "^6.0.17", - "postcss-value-parser": "^3.2.3" - } - }, - "braces": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", - "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", - "dev": true, - "requires": { - "expand-range": "^1.8.1", - "preserve": "^0.2.0", - "repeat-element": "^1.1.2" - } - }, - "browserslist": { - "version": "2.11.3", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-2.11.3.tgz", - "integrity": "sha512-yWu5cXT7Av6mVwzWc8lMsJMHWn4xyjSuGYi4IozbVTLUOEYPSagUB8kiMDUHA1fS3zjr8nkxkn9jdvug4BBRmA==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30000792", - "electron-to-chromium": "^1.3.30" - } - }, "camelcase": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", @@ -14997,49 +14755,89 @@ "quick-lru": "^1.0.0" } }, + "chalk": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", + "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, "cosmiconfig": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-3.1.0.tgz", - "integrity": "sha512-zedsBhLSbPBms+kE7AH4vHg6JsKDz6epSv2/+5XHs8ILHlgDciSJfSWf8sX9aQ52Jb7KI7VswUTsLpR/G0cr2Q==", + "version": "5.0.7", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.0.7.tgz", + "integrity": "sha512-PcLqxTKiDmNT6pSpy4N6KtuPwb53W+2tzNvwOZw0WH9N6O0vLIBq0x8aj8Oj75ere4YcGi48bDFCL+3fRJdlNA==", "dev": true, "requires": { + "import-fresh": "^2.0.0", "is-directory": "^0.3.1", "js-yaml": "^3.9.0", - "parse-json": "^3.0.0", - "require-from-string": "^2.0.1" + "parse-json": "^4.0.0" } }, "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.0.tgz", + "integrity": "sha512-heNPJUJIqC+xB6ayLAMHaIrmN9HKa7aQO8MGqKpvCA+uJYVcvR6l5kgdrhRuwPFHU7P5/A1w0BjByPHwpfTDKg==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } }, - "expand-brackets": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", - "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", - "dev": true, - "requires": { - "is-posix-bracket": "^0.1.0" - } + "get-stdin": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", + "dev": true }, - "extglob": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", - "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", + "globby": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-8.0.1.tgz", + "integrity": "sha512-oMrYrJERnKBLXNLVTqhm3vPEdJ/b2ZE28xN4YARiix1NOIOBPEpOUnm844K1iu/BkphCaf2WNFwMszv8Soi1pw==", "dev": true, "requires": { - "is-extglob": "^1.0.0" + "array-union": "^1.0.1", + "dir-glob": "^2.0.0", + "fast-glob": "^2.0.2", + "glob": "^7.1.2", + "ignore": "^3.3.5", + "pify": "^3.0.0", + "slash": "^1.0.0" + }, + "dependencies": { + "ignore": { + "version": "3.3.10", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", + "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", + "dev": true + }, + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", + "dev": true + } } }, - "get-stdin": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-5.0.1.tgz", - "integrity": "sha1-Ei4WFZHiH/TFJTAwVpPyDmOTo5g=", + "ignore": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.0.4.tgz", + "integrity": "sha512-WLsTMEhsQuXpCiG173+f3aymI43SXa+fB1rSfbzyP4GkPP+ZFVuO0/3sFUGNBtifisPeDcl/uD/Y2NxZ7xFq4g==", + "dev": true + }, + "import-lazy": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-3.1.0.tgz", + "integrity": "sha512-8/gvXvX2JMn0F+CDlSC4l6kOmVaLOO3XLkksI7CI3Ud95KDYJuYur2b9P/PUt/i/pDAMd/DulQsNbbbmRRsDIQ==", "dev": true }, "indent-string": { @@ -15048,36 +14846,12 @@ "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", "dev": true }, - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", - "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=", "dev": true }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - }, "load-json-file": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", @@ -15090,15 +14864,11 @@ "strip-bom": "^3.0.0" }, "dependencies": { - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } + "pify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", + "dev": true } } }, @@ -15109,58 +14879,44 @@ "dev": true }, "meow": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/meow/-/meow-4.0.1.tgz", - "integrity": "sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-5.0.0.tgz", + "integrity": "sha512-CbTqYU17ABaLefO8vCU153ZZlprKYWDljcndKKDCFcYQITzWCXZAVk4QMFZPgvzrnUQ3uItnIE/LoUOwrT15Ig==", "dev": true, "requires": { "camelcase-keys": "^4.0.0", "decamelize-keys": "^1.0.0", "loud-rejection": "^1.0.0", - "minimist": "^1.1.3", "minimist-options": "^3.0.1", "normalize-package-data": "^2.3.4", "read-pkg-up": "^3.0.0", "redent": "^2.0.0", - "trim-newlines": "^2.0.0" - } - }, - "micromatch": { - "version": "2.3.11", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", - "dev": true, - "requires": { - "arr-diff": "^2.0.0", - "array-unique": "^0.2.1", - "braces": "^1.8.2", - "expand-brackets": "^0.1.4", - "extglob": "^0.3.1", - "filename-regex": "^2.0.0", - "is-extglob": "^1.0.0", - "is-glob": "^2.0.1", - "kind-of": "^3.0.2", - "normalize-path": "^2.0.1", - "object.omit": "^2.0.0", - "parse-glob": "^3.0.4", - "regex-cache": "^0.4.2" + "trim-newlines": "^2.0.0", + "yargs-parser": "^10.0.0" } }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", "dev": true }, "parse-json": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-3.0.0.tgz", - "integrity": "sha1-+m9HsY4jgm6tMvJj50TQ4ehH+xM=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", "dev": true, "requires": { - "error-ex": "^1.3.1" + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" } }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, "read-pkg": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", @@ -15192,18 +14948,18 @@ "strip-indent": "^2.0.0" } }, - "require-from-string": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", - "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", - "dev": true - }, "resolve-from": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "dev": true }, + "slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "dev": true + }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", @@ -15240,20 +14996,54 @@ "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-2.0.0.tgz", "integrity": "sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA=", "dev": true + }, + "yargs-parser": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", + "dev": true, + "requires": { + "camelcase": "^4.1.0" + } } } }, "stylelint-scss": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-2.5.0.tgz", - "integrity": "sha512-+joZpza5nQxAyGwzRMancFEl0EH9+1Vy88YzBghRMS0wHulzDPE9fEkBi6ZOlz+I3tYIBI4x9NbqO5/LkbeE3Q==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-3.4.0.tgz", + "integrity": "sha512-sM1bsOrbmR35N1ZAg+7uLVI+n2QHqOVMZPRiAIyiOa1ITBrg0hajBH/i1F/ZxbsBUWLAeSq/NREwPw1+xF9exQ==", "dev": true, "requires": { - "lodash": "^4.17.4", + "lodash": "^4.17.11", "postcss-media-query-parser": "^0.2.3", "postcss-resolve-nested-selector": "^0.1.1", - "postcss-selector-parser": "^3.1.1", - "postcss-value-parser": "^3.3.0" + "postcss-selector-parser": "^4.0.0", + "postcss-value-parser": "^3.3.1" + }, + "dependencies": { + "cssesc": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-1.0.1.tgz", + "integrity": "sha512-S2hzrpWvE6G/rW7i7IxJfWBYn27QWfOIncUW++8Rbo1VB5zsJDSVPcnI+Q8z7rhxT6/yZeLOCja4cZnghJrNGA==", + "dev": true + }, + "lodash": { + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==", + "dev": true + }, + "postcss-selector-parser": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-4.0.0.tgz", + "integrity": "sha512-5h+MvEjnzu1qy6MabjuoPatsGAjjDV9B24e7Cktjl+ClNtjVjmvAXjOFQr1u7RlWULKNGYaYVE4s+DIIQ4bOGA==", + "dev": true, + "requires": { + "cssesc": "^1.0.1", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } } }, "stylus": { @@ -15307,12 +15097,12 @@ } }, "sugarss": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/sugarss/-/sugarss-1.0.1.tgz", - "integrity": "sha512-3qgLZytikQQEVn1/FrhY7B68gPUUGY3R1Q1vTiD5xT+Ti1DP/8iZuwFet9ONs5+bmL8pZoDQ6JrQHVgrNlK6mA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/sugarss/-/sugarss-2.0.0.tgz", + "integrity": "sha512-WfxjozUk0UVA4jm+U1d736AUpzSrNsQcIbyOkoE364GrtWmIrFdk5lksEupgWMD4VaT/0kVx1dobpiDumSgmJQ==", "dev": true, "requires": { - "postcss": "^6.0.14" + "postcss": "^7.0.2" } }, "supports-color": { @@ -15334,6 +15124,7 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/swig/-/swig-1.4.0.tgz", "integrity": "sha1-4OYGoImfiGp67npF0bOYwrJdJdE=", + "dev": true, "requires": { "optimist": "~0.6", "uglify-js": "~2.4" @@ -15342,12 +15133,14 @@ "async": { "version": "0.2.10", "resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz", - "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=" + "integrity": "sha1-trvgsGdLnXGXCMo43owjfLUmw9E=", + "dev": true }, "source-map": { "version": "0.1.34", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.34.tgz", "integrity": "sha1-p8/omux7FoLDsZjQrPtH19CQVms=", + "dev": true, "requires": { "amdefine": ">=0.0.4" } @@ -15356,6 +15149,7 @@ "version": "2.4.24", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.4.24.tgz", "integrity": "sha1-+tV1XB4Vd2WLsG/5q25UjJW+vW4=", + "dev": true, "requires": { "async": "~0.2.6", "source-map": "0.1.34", @@ -15366,12 +15160,14 @@ "wordwrap": { "version": "0.0.2", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=" + "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", + "dev": true }, "yargs": { "version": "3.5.4", "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.5.4.tgz", "integrity": "sha1-2K/49mXpTDS9JZvevRv68N3TU2E=", + "dev": true, "requires": { "camelcase": "^1.0.2", "decamelize": "^1.0.0", @@ -15385,6 +15181,7 @@ "version": "0.0.1", "resolved": "https://registry.npmjs.org/swig-extras/-/swig-extras-0.0.1.tgz", "integrity": "sha1-tQP+3jcqucJMasaMr2VrzvGHIyg=", + "dev": true, "requires": { "markdown": "~0.5.0" } @@ -15396,15 +15193,13 @@ "dev": true }, "table": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/table/-/table-4.0.3.tgz", - "integrity": "sha512-S7rnFITmBH1EnyKcvxBh1LjYeQMmnZtCXSEbHcH6S0NoKit24ZuFO/T1vDcLdYsLQkM188PVVhQmzKIuThNkKg==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/table/-/table-5.1.0.tgz", + "integrity": "sha512-e542in22ZLhD/fOIuXs/8yDZ9W61ltF8daM88rkRNtgTIct+vI2fTnAyu/Db2TCfEcI8i7mjZz6meLq0nW7TYg==", "dev": true, "requires": { - "ajv": "^6.0.1", - "ajv-keywords": "^3.0.0", - "chalk": "^2.1.0", - "lodash": "^4.17.4", + "ajv": "^6.5.3", + "lodash": "^4.17.10", "slice-ansi": "1.0.0", "string-width": "^2.1.1" }, @@ -15443,9 +15238,9 @@ } }, "tapable": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.0.0.tgz", - "integrity": "sha512-dQRhbNQkRnaqauC7WqSJ21EEksgT0fYZX2lqXzGkpo8JNig9zGZTYoMGvyI2nWmXlE2VSVXVDu7wLVGu/mQEsg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.0.tgz", + "integrity": "sha512-IlqtmLVaZA2qab8epUXbVWRn3aB1imbDMJtjB3nu4X0NqPkcY/JH9ZtCBWKHWPxs8Svi9tyo8w2dBoi07qZbBA==", "dev": true }, "tar": { @@ -15463,15 +15258,181 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/term-size/-/term-size-1.2.0.tgz", "integrity": "sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk=", + "dev": true, "requires": { "execa": "^0.7.0" } }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true + "terser": { + "version": "3.10.11", + "resolved": "https://registry.npmjs.org/terser/-/terser-3.10.11.tgz", + "integrity": "sha512-iruZ7j14oBbRYJC5cP0/vTU7YOWjN+J1ZskEGoF78tFzXdkK2hbCL/3TRZN8XB+MuvFhvOHMp7WkOCBO4VEL5g==", + "dev": true, + "requires": { + "commander": "~2.17.1", + "source-map": "~0.6.1", + "source-map-support": "~0.5.6" + }, + "dependencies": { + "commander": { + "version": "2.17.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", + "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==", + "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 + } + } + }, + "terser-webpack-plugin": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.1.0.tgz", + "integrity": "sha512-61lV0DSxMAZ8AyZG7/A4a3UPlrbOBo8NIQ4tJzLPAdGOQ+yoNC7l5ijEow27lBAL2humer01KLS6bGIMYQxKoA==", + "dev": true, + "requires": { + "cacache": "^11.0.2", + "find-cache-dir": "^2.0.0", + "schema-utils": "^1.0.0", + "serialize-javascript": "^1.4.0", + "source-map": "^0.6.1", + "terser": "^3.8.1", + "webpack-sources": "^1.1.0", + "worker-farm": "^1.5.2" + }, + "dependencies": { + "cacache": { + "version": "11.3.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-11.3.1.tgz", + "integrity": "sha512-2PEw4cRRDu+iQvBTTuttQifacYjLPhET+SYO/gEFMy8uhi+jlJREDAjSF5FWSdV/Aw5h18caHA7vMTw2c+wDzA==", + "dev": true, + "requires": { + "bluebird": "^3.5.1", + "chownr": "^1.0.1", + "figgy-pudding": "^3.1.0", + "glob": "^7.1.2", + "graceful-fs": "^4.1.11", + "lru-cache": "^4.1.3", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.2", + "ssri": "^6.0.0", + "unique-filename": "^1.1.0", + "y18n": "^4.0.0" + } + }, + "find-cache-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.0.0.tgz", + "integrity": "sha512-LDUY6V1Xs5eFskUVYtIwatojt6+9xC9Chnlk/jYOOvn3FAFfSaWddxahDGyNHh0b2dMXa6YW2m0tk8TdVaXHlA==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^3.0.0" + } + }, + "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" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "mississippi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "dev": true, + "requires": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^3.0.0", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + } + }, + "p-limit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.0.0.tgz", + "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", + "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==", + "dev": true + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "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 + }, + "ssri": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", + "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "dev": true, + "requires": { + "figgy-pudding": "^3.5.1" + } + } + } }, "tfunk": { "version": "3.1.0", @@ -15577,6 +15538,7 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.3.tgz", "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", + "dev": true, "requires": { "readable-stream": "^2.1.5", "xtend": "~4.0.1" @@ -15586,22 +15548,16 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-2.0.0.tgz", "integrity": "sha1-YLxVoNrLdghdsfna6Zq0P4PWIuw=", + "dev": true, "requires": { "through2": "~2.0.0", "xtend": "~4.0.0" } }, - "thunkify": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/thunkify/-/thunkify-2.1.2.tgz", - "integrity": "sha1-+qDp0jDFGsyVyhOjYawFyn4EVT0=", - "dev": true, - "optional": true - }, "thunky": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.0.2.tgz", - "integrity": "sha1-qGLgGOP7HqLsP85dVWBc9X8kc3E=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.0.3.tgz", + "integrity": "sha512-YwT8pjmNcAXBZqrubu22P4FYsh2D4dxRmnWBOL8Jk8bUcRUtc5326kx32tuTmFDAZtLOGEVNl8POAR8j896Iow==", "dev": true }, "tildify": { @@ -15622,7 +15578,8 @@ "timed-out": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=" + "integrity": "sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8=", + "dev": true }, "timers-browserify": { "version": "2.0.10", @@ -15643,13 +15600,6 @@ "next-tick": "1" } }, - "timespan": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/timespan/-/timespan-2.3.0.tgz", - "integrity": "sha1-SQLOBAvRPYRcj1myfp1ZutbzmSk=", - "dev": true, - "optional": true - }, "tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", @@ -15663,6 +15613,7 @@ "version": "0.1.1", "resolved": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-0.1.1.tgz", "integrity": "sha1-HN+kcqnvUMI57maZm2YsoOs5k38=", + "dev": true, "requires": { "extend-shallow": "^2.0.1" }, @@ -15671,6 +15622,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", + "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -15741,16 +15693,11 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-through/-/to-through-2.0.0.tgz", "integrity": "sha1-/JKtq6ByZHvAtn1rA2ZKoZUJOvY=", + "dev": true, "requires": { "through2": "^2.0.3" } }, - "toposort": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/toposort/-/toposort-1.0.7.tgz", - "integrity": "sha1-LmhELZ9k7HILjMieZEOsbKqVACk=", - "dev": true - }, "tough-cookie": { "version": "2.3.4", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", @@ -15799,39 +15746,24 @@ "dev": true }, "trough": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.2.tgz", - "integrity": "sha512-FHkoUZvG6Egrv9XZAyYGKEyb1JMsFphgPjoczkZC2y6W93U1jswcVURB8MUvtsahEPEVACyxD47JAL63vF4JsQ==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/trough/-/trough-1.0.3.tgz", + "integrity": "sha512-fwkLWH+DimvA4YCy+/nvJd61nWQQ2liO/nF/RjkTpiOGi+zxZzVkhb1mvbHIIW4b/8nDsYI8uTmAlc0nNkRMOw==", "dev": true }, "true-case-path": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.2.tgz", - "integrity": "sha1-fskRMJJHZsf1c74wIMNPj9/QDWI=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz", + "integrity": "sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==", "dev": true, "requires": { - "glob": "^6.0.4" - }, - "dependencies": { - "glob": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz", - "integrity": "sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI=", - "dev": true, - "requires": { - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "2 || 3", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } + "glob": "^7.1.2" } }, "ts-node": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-7.0.0.tgz", - "integrity": "sha512-klJsfswHP0FuOLsvBZ/zzCfUvakOSSxds78mVeK7I+qP76YWtxf16hEZsp3U+b0kIo82R5UatGFeblYMqabb2Q==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-7.0.1.tgz", + "integrity": "sha512-BVwVbPJRspzNh2yfslyT1PSbl5uIk03EZlb493RKHN4qej/D06n1cEhjlOJG69oFsE7OT8XjpTUcYf6pKTLMhw==", "dev": true, "requires": { "arrify": "^1.0.0", @@ -15845,9 +15777,9 @@ }, "dependencies": { "buffer-from": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.0.tgz", - "integrity": "sha512-c5mRlguI/Pe2dSZmpER62rSCu0ryKmWddzRYsuXc50U2/g8jMOulc31VZMa4mYx31U5xsmSOpDCgH88Vl9cDGQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", "dev": true }, "minimist": { @@ -15859,15 +15791,14 @@ } }, "tsickle": { - "version": "0.27.5", - "resolved": "https://registry.npmjs.org/tsickle/-/tsickle-0.27.5.tgz", - "integrity": "sha512-NP+CjM1EXza/M8mOXBLH3vkFEJiu1zfEAlC5WdJxHPn8l96QPz5eooP6uAgYtw1CcKfuSyIiheNUdKxtDWCNeg==", + "version": "0.33.1", + "resolved": "https://registry.npmjs.org/tsickle/-/tsickle-0.33.1.tgz", + "integrity": "sha512-SpW2G3PvDGs4a5sMXPlWnCWHWRviWjSlI3U0734e3fU3U39VAE0NPr8M3W1cuL/OU/YXheYipGeEwtIJ5k0NHQ==", "dev": true, "requires": { "minimist": "^1.2.0", "mkdirp": "^0.5.1", - "source-map": "^0.6.0", - "source-map-support": "^0.5.0" + "source-map": "^0.7.3" }, "dependencies": { "minimist": { @@ -15877,9 +15808,9 @@ "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==", + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", "dev": true } } @@ -15918,16 +15849,9 @@ "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", "supports-color": "^5.3.0" - } - } - } - }, - "tsscmp": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/tsscmp/-/tsscmp-1.0.6.tgz", - "integrity": "sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==", - "dev": true, - "optional": true + } + } + } }, "tsutils": { "version": "2.29.0", @@ -15982,7 +15906,8 @@ "typedarray": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", + "dev": true }, "typedoc": { "version": "0.13.0", @@ -16139,15 +16064,21 @@ "jsonfile": "^4.0.0", "universalify": "^0.1.0" } + }, + "typescript": { + "version": "2.7.2", + "resolved": "http://registry.npmjs.org/typescript/-/typescript-2.7.2.tgz", + "integrity": "sha512-p5TCYZDAO0m4G344hD+wx/LATebLWZNkkh2asWUFqSsD2OrDNhbAHuSjobrmsUmdzjJjEeZVU9g1h3O6vpstnw==", + "dev": true } } } } }, "typescript": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.7.2.tgz", - "integrity": "sha512-p5TCYZDAO0m4G344hD+wx/LATebLWZNkkh2asWUFqSsD2OrDNhbAHuSjobrmsUmdzjJjEeZVU9g1h3O6vpstnw==", + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.1.6.tgz", + "integrity": "sha512-tDMYfVtvpb96msS1lDX9MEdHrW4yOuZ4Kdc4Him9oU796XldPYF/t2+uKoX0BBa0hXXwDlqYQbXY5Rzjzc5hBA==", "dev": true }, "ua-parser-js": { @@ -16160,6 +16091,7 @@ "version": "3.3.25", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.3.25.tgz", "integrity": "sha512-hobogryjDV36VrLK3Y69ou4REyrTApzUblVFmdQOYRe8cYaSmFJXMb4dR9McdvYDSbeNdzUgYr2YVukJaErJcA==", + "dev": true, "requires": { "commander": "~2.15.0", "source-map": "~0.6.1" @@ -16168,19 +16100,21 @@ "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true } } }, "uglify-to-browserify": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", - "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=" + "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", + "dev": true }, "uglifyjs-webpack-plugin": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.7.tgz", - "integrity": "sha512-1VicfKhCYHLS8m1DCApqBhoulnASsEoJ/BvpUpP4zoNAPpKzdH+ghk0olGJMmwX2/jprK2j3hAHdUbczBSy2FA==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.3.0.tgz", + "integrity": "sha512-ovHIch0AMlxjD/97j9AYovZxG5wnHOPkL7T1GKochBADp/Zwc44pEWNqpKl1Loupp1WhFg7SlYmHZRUfdAacgw==", "dev": true, "requires": { "cacache": "^10.0.4", @@ -16199,6 +16133,16 @@ "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==", "dev": true }, + "schema-utils": { + "version": "0.4.7", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", + "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0" + } + }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", @@ -16218,20 +16162,15 @@ } }, "ultron": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.0.2.tgz", - "integrity": "sha1-rOEWq1V80Zc4ak6I9GhTeMiy5Po=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", + "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==", "dev": true }, "unc-path-regex": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz", - "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=" - }, - "underscore": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.7.0.tgz", - "integrity": "sha1-a7rwh3UA02vjTsqlhODbn+8DUgk=", + "integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=", "dev": true }, "unherit": { @@ -16300,18 +16239,18 @@ "dev": true }, "unique-filename": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.0.tgz", - "integrity": "sha1-0F8v5AMlYIcfMOk8vnNe6iAVFPM=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", "dev": true, "requires": { "unique-slug": "^2.0.0" } }, "unique-slug": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.0.tgz", - "integrity": "sha1-22Z258fMBimHj/GWCXx4hVrp9Ks=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.1.tgz", + "integrity": "sha512-n9cU6+gITaVu7VGj1Z8feKMmfAjEAQGhwD9fE3zvpRRa0wEIx8ODYkVGfSc94M2OX00tUFV8wH3zYbm1I8mxFg==", "dev": true, "requires": { "imurmurhash": "^0.1.4" @@ -16327,6 +16266,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", + "dev": true, "requires": { "crypto-random-string": "^1.0.0" } @@ -16346,15 +16286,6 @@ "integrity": "sha512-YkXBK/H9raAmG7KXck+UUpnKiNmUdB+aBGrknfQ4EreE1banuzrKABx3jP6Z5Z3fMSPMQQmeXBlKpCbMwBkxVw==", "dev": true }, - "unist-util-modify-children": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/unist-util-modify-children/-/unist-util-modify-children-1.1.2.tgz", - "integrity": "sha512-GRi04yhng1WqBf5RBzPkOtWAadcZS2gvuOgNn/cyJBYNxtTuyYqTKN0eg4rC1YJwGnzrqfRB3dSKm8cNCjNirg==", - "dev": true, - "requires": { - "array-iterate": "^1.0.0" - } - }, "unist-util-remove-position": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/unist-util-remove-position/-/unist-util-remove-position-1.1.2.tgz", @@ -16371,18 +16302,28 @@ "dev": true }, "unist-util-visit": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-1.3.1.tgz", - "integrity": "sha512-0fdB9EQJU0tho5tK0VzOJzAQpPv2LyLZ030b10GxuzAWEfvd54mpY7BMjQ1L69k2YNvL+SvxRzH0yUIehOO8aA==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-1.4.0.tgz", + "integrity": "sha512-FiGu34ziNsZA3ZUteZxSFaczIjGmksfSgdKqBfOejrrfzyUy5b7YrlzT1Bcvi+djkYDituJDy2XB7tGTeBieKw==", + "dev": true, + "requires": { + "unist-util-visit-parents": "^2.0.0" + } + }, + "unist-util-visit-parents": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-2.0.1.tgz", + "integrity": "sha512-6B0UTiMfdWql4cQ03gDTCSns+64Zkfo2OCbK31Ov0uMizEz+CJeAp0cgZVb5Fhmcd7Bct2iRNywejT0orpbqUA==", "dev": true, "requires": { - "unist-util-is": "^2.1.1" + "unist-util-is": "^2.1.2" } }, "universalify": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.1.tgz", - "integrity": "sha1-+nG63UQ3r0wUiEHjs7Fl+enlkLc=" + "integrity": "sha1-+nG63UQ3r0wUiEHjs7Fl+enlkLc=", + "dev": true }, "unpipe": { "version": "1.0.0", @@ -16433,7 +16374,8 @@ "unzip-response": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/unzip-response/-/unzip-response-2.0.1.tgz", - "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=" + "integrity": "sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c=", + "dev": true }, "upath": { "version": "1.1.0", @@ -16445,6 +16387,7 @@ "version": "2.5.0", "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-2.5.0.tgz", "integrity": "sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw==", + "dev": true, "requires": { "boxen": "^1.2.1", "chalk": "^2.0.1", @@ -16461,12 +16404,13 @@ "upper-case": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", - "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=" + "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=", + "dev": true }, "uri-js": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-3.0.2.tgz", - "integrity": "sha1-+QuFhQf4HepNz7s8TD2/orVX+qo=", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", "dev": true, "requires": { "punycode": "^2.1.0" @@ -16502,29 +16446,10 @@ "integrity": "sha1-TTNA6AfTdzvamZH4MFrNzCpmXSo=", "dev": true }, - "url-loader": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-1.0.1.tgz", - "integrity": "sha512-rAonpHy7231fmweBKUFe0bYnlGDty77E+fm53NZdij7j/YOpyGzc7ttqG1nAXl3aRs0k41o0PC3TvGXQiw2Zvw==", - "dev": true, - "requires": { - "loader-utils": "^1.1.0", - "mime": "^2.0.3", - "schema-utils": "^0.4.3" - }, - "dependencies": { - "mime": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.3.1.tgz", - "integrity": "sha512-OEUllcVoydBHGN1z84yfQDimn58pZNNNXgZlHXSboxMlFvgI6MXSWpWKpFRra7H1HxpVhHTkrghfRW49k6yjeg==", - "dev": true - } - } - }, "url-parse": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.3.tgz", - "integrity": "sha512-rh+KuAW36YKo0vClhQzLLveoj8FwPJNu65xLb7Mrt+eZht0IPT0IXgSv8gcMegZ6NvjJUALf6Mf25POlMwD1Fw==", + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.4.tgz", + "integrity": "sha512-/92DTTorg4JjktLNLe6GPS2/RvAd/RGr6LuktmWSMLEOa6rjnlrFXNgSbSmkNvCoL2T028A0a1JaJLzRMlFoHg==", "dev": true, "requires": { "querystringify": "^2.0.0", @@ -16535,6 +16460,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-1.0.0.tgz", "integrity": "sha1-evjzA2Rem9eaJy56FKxovAYJ2nM=", + "dev": true, "requires": { "prepend-http": "^1.0.1" } @@ -16586,22 +16512,6 @@ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, - "util.promisify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", - "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", - "dev": true, - "requires": { - "define-properties": "^1.1.2", - "object.getownpropertydescriptors": "^2.0.3" - } - }, - "utila": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", - "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=", - "dev": true - }, "utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", @@ -16614,13 +16524,6 @@ "integrity": "sha512-jZnMwlb9Iku/O3smGWvZhauCf6cvvpKi4BKRiliS3cxnI+Gz9j5MEpTz2UFuXiKPJocb7gnsLHwiS05ige5BEA==", "dev": true }, - "uws": { - "version": "9.14.0", - "resolved": "https://registry.npmjs.org/uws/-/uws-9.14.0.tgz", - "integrity": "sha512-HNMztPP5A1sKuVFmdZ6BPVpBQd5bUjNC8EFMFiICK+oho/OQsAJy5hnIx4btMHiOk8j04f/DbIlqnEZ9d72dqg==", - "dev": true, - "optional": true - }, "v8flags": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-2.1.1.tgz", @@ -16633,12 +16536,13 @@ "vali-date": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/vali-date/-/vali-date-1.0.0.tgz", - "integrity": "sha1-G5BKWWCfsyjvB4E4Qgk09rhnCaY=" + "integrity": "sha1-G5BKWWCfsyjvB4E4Qgk09rhnCaY=", + "dev": true }, "validate-npm-package-license": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz", - "integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dev": true, "requires": { "spdx-correct": "^3.0.0", @@ -16657,7 +16561,8 @@ "value-or-function": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/value-or-function/-/value-or-function-3.0.0.tgz", - "integrity": "sha1-HCQ6ULWVwb5Up1S/7OhWO5/42BM=" + "integrity": "sha1-HCQ6ULWVwb5Up1S/7OhWO5/42BM=", + "dev": true }, "vary": { "version": "1.1.2", @@ -16829,6 +16734,7 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/vinyl-source-stream/-/vinyl-source-stream-1.1.2.tgz", "integrity": "sha1-YrU6E1YQqJbpjKlr7jqH8Aio54A=", + "dev": true, "requires": { "through2": "^2.0.3", "vinyl": "^0.4.3" @@ -16837,12 +16743,14 @@ "clone": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", - "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=" + "integrity": "sha1-xhJqkK1Pctv1rNskPMN3JP6T/B8=", + "dev": true }, "vinyl": { "version": "0.4.6", "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.4.6.tgz", "integrity": "sha1-LzVsh6VQolVGHza76ypbqL94SEc=", + "dev": true, "requires": { "clone": "^0.2.0", "clone-stats": "^0.0.1" @@ -16854,6 +16762,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/vinyl-sourcemap/-/vinyl-sourcemap-1.1.0.tgz", "integrity": "sha1-kqgAWTo4cDqM2xHYswCtS+Y7PhY=", + "dev": true, "requires": { "append-buffer": "^1.0.2", "convert-source-map": "^1.5.0", @@ -16867,17 +16776,20 @@ "clone-stats": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz", - "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=" + "integrity": "sha1-s3gt/4u1R04Yuba/D9/ngvh3doA=", + "dev": true }, "replace-ext": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.0.tgz", - "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=" + "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=", + "dev": true }, "vinyl": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.0.tgz", "integrity": "sha512-MBH+yP0kC/GQ5GwBqrTPTzEfiiLjta7hTtvQtbxBgTeSXsmKQRQecjibMbxIXzVT3Y9KJK+drOz1/k+vsu8Nkg==", + "dev": true, "requires": { "clone": "^2.1.1", "clone-buffer": "^1.0.0", @@ -16902,6 +16814,7 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/vinyl-string/-/vinyl-string-1.0.2.tgz", "integrity": "sha1-OiSe/rDTbEywpeWeMNaOVPc52OM=", + "dev": true, "requires": { "vinyl": "^1.1.1" }, @@ -16909,12 +16822,14 @@ "clone": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=" + "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", + "dev": true }, "vinyl": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", + "dev": true, "requires": { "clone": "^1.0.0", "clone-stats": "^0.0.1", @@ -16923,12 +16838,6 @@ } } }, - "vlq": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/vlq/-/vlq-0.2.3.tgz", - "integrity": "sha512-DRibZL6DsNhIgYQ+wNdWDL2SL3bKPlVrRiBqV5yuMm++op8W4kGFtaQfCs4KEJn0wBZcHVHJ3eoywX8983k1ow==", - "dev": true - }, "vm-browserify": { "version": "0.0.4", "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", @@ -16969,82 +16878,33 @@ "resolved": "https://registry.npmjs.org/web-animations-js/-/web-animations-js-2.3.1.tgz", "integrity": "sha1-Om2bwVGWN3qQ+OKAP6UmIWWwRRA=" }, - "webassemblyjs": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/webassemblyjs/-/webassemblyjs-1.4.3.tgz", - "integrity": "sha512-4lOV1Lv6olz0PJkDGQEp82HempAn147e6BXijWDzz9g7/2nSebVP9GVg62Fz5ZAs55mxq13GA0XLyvY8XkyDjg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.4.3", - "@webassemblyjs/validation": "1.4.3", - "@webassemblyjs/wasm-parser": "1.4.3", - "@webassemblyjs/wast-parser": "1.4.3", - "long": "^3.2.0" - } - }, "webdriver-js-extender": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/webdriver-js-extender/-/webdriver-js-extender-1.0.0.tgz", - "integrity": "sha1-gcUzqeM9W/tZe05j4s2yW1R3dRU=", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/webdriver-js-extender/-/webdriver-js-extender-2.1.0.tgz", + "integrity": "sha512-lcUKrjbBfCK6MNsh7xaY2UAUmZwe+/ib03AjVOpFobX4O7+83BUveSrLfU0Qsyb1DaKJdQRbuU+kM9aZ6QUhiQ==", "dev": true, "requires": { - "@types/selenium-webdriver": "^2.53.35", - "selenium-webdriver": "^2.53.2" - }, - "dependencies": { - "sax": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/sax/-/sax-0.6.1.tgz", - "integrity": "sha1-VjsZx8HeiS4Jv8Ty/DDjwn8JUrk=", - "dev": true - }, - "selenium-webdriver": { - "version": "2.53.3", - "resolved": "https://registry.npmjs.org/selenium-webdriver/-/selenium-webdriver-2.53.3.tgz", - "integrity": "sha1-0p/1qVff8aG0ncRXdW5OS/vc4IU=", - "dev": true, - "requires": { - "adm-zip": "0.4.4", - "rimraf": "^2.2.8", - "tmp": "0.0.24", - "ws": "^1.0.1", - "xml2js": "0.4.4" - } - }, - "tmp": { - "version": "0.0.24", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.24.tgz", - "integrity": "sha1-1qXhmNFKmDXMby18PZ4wJCjIzxI=", - "dev": true - }, - "xml2js": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.4.tgz", - "integrity": "sha1-MREBAAMAiuGSQOuhdJe1fHKcVV0=", - "dev": true, - "requires": { - "sax": "0.6.x", - "xmlbuilder": ">=1.0.0" - } - } + "@types/selenium-webdriver": "^3.0.0", + "selenium-webdriver": "^3.0.1" } }, "webpack": { - "version": "4.9.2", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.9.2.tgz", - "integrity": "sha512-jlWrCrJDU3sdWFprel6jHH8esN2C++Q8ehedRo74u7MWLTUJn9SD7RSgsCTEZCSRpVpMascDylAqPoldauOMfA==", + "version": "4.19.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.19.1.tgz", + "integrity": "sha512-j7Q/5QqZRqIFXJvC0E59ipLV5Hf6lAnS3ezC3I4HMUybwEDikQBVad5d+IpPtmaQPQArvgUZLXIN6lWijHBn4g==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.4.3", - "@webassemblyjs/wasm-edit": "1.4.3", - "@webassemblyjs/wasm-parser": "1.4.3", - "acorn": "^5.0.0", + "@webassemblyjs/ast": "1.7.6", + "@webassemblyjs/helper-module-context": "1.7.6", + "@webassemblyjs/wasm-edit": "1.7.6", + "@webassemblyjs/wasm-parser": "1.7.6", + "acorn": "^5.6.2", "acorn-dynamic-import": "^3.0.0", "ajv": "^6.1.0", "ajv-keywords": "^3.1.0", - "chrome-trace-event": "^0.1.1", - "enhanced-resolve": "^4.0.0", - "eslint-scope": "^3.7.1", + "chrome-trace-event": "^1.0.0", + "enhanced-resolve": "^4.1.0", + "eslint-scope": "^4.0.0", "json-parse-better-errors": "^1.0.2", "loader-runner": "^2.3.0", "loader-utils": "^1.1.0", @@ -17054,10 +16914,28 @@ "neo-async": "^2.5.0", "node-libs-browser": "^2.0.0", "schema-utils": "^0.4.4", - "tapable": "^1.0.0", + "tapable": "^1.1.0", "uglifyjs-webpack-plugin": "^1.2.4", "watchpack": "^1.5.0", - "webpack-sources": "^1.0.1" + "webpack-sources": "^1.2.0" + }, + "dependencies": { + "acorn": { + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", + "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", + "dev": true + }, + "schema-utils": { + "version": "0.4.7", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", + "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", + "dev": true, + "requires": { + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0" + } + } } }, "webpack-core": { @@ -17088,18 +16966,17 @@ } }, "webpack-dev-middleware": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.1.3.tgz", - "integrity": "sha512-I6Mmy/QjWU/kXwCSFGaiOoL5YEQIVmbb0o45xMoCyQAg/mClqZVTcsX327sPfekDyJWpCxb+04whNyLOIxpJdQ==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.3.0.tgz", + "integrity": "sha512-5C5gXtOo1I6+0AEg4UPglYEtu3Rai6l5IiO6aUu65scHXz29dc3oIWMiRwvcNLXgL0HwRkRxa9N02ZjFt4hY8w==", "dev": true, "requires": { "loud-rejection": "^1.6.0", "memory-fs": "~0.4.1", - "mime": "^2.1.0", - "path-is-absolute": "^1.0.0", + "mime": "^2.3.1", "range-parser": "^1.0.3", "url-join": "^4.0.0", - "webpack-log": "^1.0.1" + "webpack-log": "^2.0.0" }, "dependencies": { "mime": { @@ -17111,13 +16988,12 @@ } }, "webpack-dev-server": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.1.5.tgz", - "integrity": "sha512-LVHg+EPwZLHIlfvokSTgtJqO/vI5CQi89fASb5JEDtVMDjY0yuIEqPPdMiKaBJIB/Ab7v/UN/sYZ7WsZvntQKw==", + "version": "3.1.8", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.1.8.tgz", + "integrity": "sha512-c+tcJtDqnPdxCAzEEZKdIPmg3i5i7cAHe+B+0xFNK0BlCc2HF/unYccbU7xTgfGc5xxhCztCQzFmsqim+KhI+A==", "dev": true, "requires": { "ansi-html": "0.0.7", - "array-includes": "^3.0.3", "bonjour": "^3.5.0", "chokidar": "^2.0.0", "compression": "^1.5.2", @@ -17127,13 +17003,14 @@ "express": "^4.16.2", "html-entities": "^1.2.0", "http-proxy-middleware": "~0.18.0", - "import-local": "^1.0.0", - "internal-ip": "1.2.0", + "import-local": "^2.0.0", + "internal-ip": "^3.0.1", "ip": "^1.1.5", "killable": "^1.0.0", "loglevel": "^1.4.1", "opn": "^5.1.0", "portfinder": "^1.0.9", + "schema-utils": "^1.0.0", "selfsigned": "^1.9.1", "serve-index": "^1.7.2", "sockjs": "0.3.19", @@ -17141,9 +17018,9 @@ "spdy": "^3.4.1", "strip-ansi": "^3.0.0", "supports-color": "^5.1.0", - "webpack-dev-middleware": "3.1.3", - "webpack-log": "^1.1.2", - "yargs": "11.0.0" + "webpack-dev-middleware": "3.2.0", + "webpack-log": "^2.0.0", + "yargs": "12.0.2" }, "dependencies": { "ansi-regex": { @@ -17180,32 +17057,139 @@ } } }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" + } + }, + "decamelize": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", + "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", + "dev": true, + "requires": { + "xregexp": "4.0.0" + } + }, + "execa": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz", + "integrity": "sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "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" } }, + "invert-kv": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", + "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=", "dev": true }, + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "dev": true, + "requires": { + "invert-kv": "^2.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "mime": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.3.1.tgz", + "integrity": "sha512-OEUllcVoydBHGN1z84yfQDimn58pZNNNXgZlHXSboxMlFvgI6MXSWpWKpFRra7H1HxpVhHTkrghfRW49k6yjeg==", + "dev": true + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, "os-locale": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", - "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.0.1.tgz", + "integrity": "sha512-7g5e7dmXPtzcP4bgsZ8ixDVqA7oWYuEz4lOSujeWyliPai4gfVDiFIcwBg3aGCPnmSGfzOKTK3ccPn0CKv3DBw==", "dev": true, "requires": { - "execa": "^0.7.0", - "lcid": "^1.0.0", - "mem": "^1.1.0" + "execa": "^0.10.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + } + }, + "p-limit": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.0.0.tgz", + "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" } }, + "p-try": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", + "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==", + "dev": true + }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", @@ -17227,42 +17211,51 @@ } } }, + "webpack-dev-middleware": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.2.0.tgz", + "integrity": "sha512-YJLMF/96TpKXaEQwaLEo+Z4NDK8aV133ROF6xp9pe3gQoS7sxfpXh4Rv9eC+8vCvWfmDjRQaMSlRPbO+9G6jgA==", + "dev": true, + "requires": { + "loud-rejection": "^1.6.0", + "memory-fs": "~0.4.1", + "mime": "^2.3.1", + "path-is-absolute": "^1.0.0", + "range-parser": "^1.0.3", + "url-join": "^4.0.0", + "webpack-log": "^2.0.0" + } + }, "which-module": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", "dev": true }, - "y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", - "dev": true - }, "yargs": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-11.0.0.tgz", - "integrity": "sha512-Rjp+lMYQOWtgqojx1dEWorjCofi1YN7AoFvYV7b1gx/7dAAeuI4kN5SZiEvr0ZmsZTOpDRcCqrpI10L31tFkBw==", + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.2.tgz", + "integrity": "sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ==", "dev": true, "requires": { "cliui": "^4.0.0", - "decamelize": "^1.1.1", - "find-up": "^2.1.0", + "decamelize": "^2.0.0", + "find-up": "^3.0.0", "get-caller-file": "^1.0.1", - "os-locale": "^2.0.0", + "os-locale": "^3.0.0", "require-directory": "^2.1.1", "require-main-filename": "^1.0.1", "set-blocking": "^2.0.0", "string-width": "^2.0.0", "which-module": "^2.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^9.0.2" + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^10.1.0" } }, "yargs-parser": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-9.0.2.tgz", - "integrity": "sha1-nM9qQ0YP5O1Aqbto9I1DuKaMwHc=", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", "dev": true, "requires": { "camelcase": "^4.1.0" @@ -17271,30 +17264,36 @@ } }, "webpack-log": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-1.2.0.tgz", - "integrity": "sha512-U9AnICnu50HXtiqiDxuli5gLB5PGBo7VvcHx36jRZHwK4vzOYLbImqT4lwWwoMHdQWwEKw736fCHEekokTEKHA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz", + "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==", "dev": true, "requires": { - "chalk": "^2.1.0", - "log-symbols": "^2.1.0", - "loglevelnext": "^1.0.1", - "uuid": "^3.1.0" + "ansi-colors": "^3.0.0", + "uuid": "^3.3.2" + }, + "dependencies": { + "uuid": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", + "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "dev": true + } } }, "webpack-merge": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.1.3.tgz", - "integrity": "sha512-zxwAIGK7nKdu5CIZL0BjTQoq3elV0t0MfB7rUC1zj668geid52abs6hN/ACwZdK6LeMS8dC9B6WmtF978zH5mg==", + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.1.4.tgz", + "integrity": "sha512-TmSe1HZKeOPey3oy1Ov2iS3guIZjWvMT2BBJDzzT5jScHTjVC3mpjJofgueEzaEd6ibhxRDD6MIblDr8tzh8iQ==", "dev": true, "requires": { "lodash": "^4.17.5" } }, "webpack-sources": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.2.0.tgz", - "integrity": "sha512-9BZwxR85dNsjWz3blyxdOhTgtnQvv3OEs5xofI0wPYTwu5kaWxS08UuD1oI7WLBLpRO+ylf0ofnXLXWmGb2WMw==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.3.0.tgz", + "integrity": "sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA==", "dev": true, "requires": { "source-list-map": "^2.0.0", @@ -17310,9 +17309,9 @@ } }, "webpack-subresource-integrity": { - "version": "1.1.0-rc.4", - "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-1.1.0-rc.4.tgz", - "integrity": "sha1-xcTj1pD50vZKlVDgeodn+Xlqpdg=", + "version": "1.1.0-rc.6", + "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-1.1.0-rc.6.tgz", + "integrity": "sha512-Az7y8xTniNhaA0620AV1KPwWOqawurVVDzQSpPAeR5RwNbL91GoBSJAAo9cfd+GiFHwsS5bbHepBw1e6Hzxy4w==", "dev": true, "requires": { "webpack-core": "^0.6.8" @@ -17344,6 +17343,7 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", + "dev": true, "requires": { "isexe": "^2.0.0" } @@ -17355,18 +17355,19 @@ "dev": true }, "wide-align": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.2.tgz", - "integrity": "sha512-ijDLlyQ7s6x1JgCLur53osjm/UXUYD9+0PbYKrBsYisYXzCxN+HC3mYDNy/dWdmf3AwqwU3CXwDCvsNgGK1S0w==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", + "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", "dev": true, "requires": { - "string-width": "^1.0.2" + "string-width": "^1.0.2 || 2" } }, "widest-line": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-2.0.0.tgz", "integrity": "sha1-AUKk6KJD+IgsAjOqDgKBqnYVInM=", + "dev": true, "requires": { "string-width": "^2.1.1" }, @@ -17374,17 +17375,20 @@ "ansi-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "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=" + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true }, "string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dev": true, "requires": { "is-fullwidth-code-point": "^2.0.0", "strip-ansi": "^4.0.0" @@ -17394,6 +17398,7 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dev": true, "requires": { "ansi-regex": "^3.0.0" } @@ -17403,14 +17408,8 @@ "window-size": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", - "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=" - }, - "with-callback": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/with-callback/-/with-callback-1.0.2.tgz", - "integrity": "sha1-oJYpuakgAo1yFAT7Q1vc/1yRvCE=", - "dev": true, - "optional": true + "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", + "dev": true }, "wordwrap": { "version": "1.0.0", @@ -17440,7 +17439,8 @@ "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", + "dev": true }, "write": { "version": "0.2.1", @@ -17455,6 +17455,7 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.3.0.tgz", "integrity": "sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==", + "dev": true, "requires": { "graceful-fs": "^4.1.11", "imurmurhash": "^0.1.4", @@ -17462,13 +17463,14 @@ } }, "ws": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/ws/-/ws-1.1.2.tgz", - "integrity": "sha1-iiRPoFJAHgjJiGz0SoUYnh/UBn8=", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", + "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", "dev": true, "requires": { - "options": ">=0.0.5", - "ultron": "1.0.x" + "async-limiter": "~1.0.0", + "safe-buffer": "~5.1.0", + "ultron": "~1.1.0" } }, "x-is-string": { @@ -17480,7 +17482,8 @@ "xdg-basedir": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-3.0.0.tgz", - "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=" + "integrity": "sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ=", + "dev": true }, "xml2js": { "version": "0.4.19", @@ -17513,16 +17516,16 @@ "dev": true }, "xregexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-2.0.0.tgz", - "integrity": "sha1-UqY+VsoLhKfzpfPWGHLxJq16WUM=", - "dev": true, - "optional": true + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", + "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", + "dev": true }, "xtend": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" + "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", + "dev": true }, "xxhashjs": { "version": "0.2.2", @@ -17542,7 +17545,8 @@ "yallist": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", + "dev": true }, "yargs": { "version": "3.10.0", diff --git a/package.json b/package.json index 26fbd693ed4..019c659b502 100644 --- a/package.json +++ b/package.json @@ -1,101 +1,101 @@ { - "name": "igniteui-dev-demos", - "version": "0.0.0", - "scripts": { - "ng": "ng", - "start": "ng serve --open --configuration hmr", - "build": "ng build", - "test": "ng test", - "lint": "ng lint", - "e2e": "ng e2e", - "test:lib": "ng test igniteui-angular --watch=false --no-progress --code-coverage", - "test:lib:azure": "ng test igniteui-angular --watch=false --no-progress --code-coverage --karma-config=./projects/igniteui-angular/karma.azure.conf.js", - "test:lib:watch": "ng test igniteui-angular", - "test:migration": "node -r ts-node/register ./node_modules/jasmine/bin/jasmine.js ./projects/igniteui-angular/migrations/**/*.spec.ts", - "build:lib": "ng build igniteui-angular --prod && gulp build-style", - "build:style": "gulp build-style", - "build:migration": "gulp copy-migrations && tsc --listEmittedFiles --project ./projects/igniteui-angular/migrations/tsconfig.json", - "build:docs:export": "gulp typedoc-build:export", - "build:docs:import": "gulp typedoc-build:import", - "build:docs": "gulp typedoc-build:theme && sassdoc projects/igniteui-angular/src/lib/core/styles", - "lint:lib": "tslint 'projects/igniteui-angular/src/**/*.ts' && stylelint 'projects/igniteui-angular/src/lib/core/styles'", - "typedoc:dev": "gulp typedoc-serve --silent", - "sassdoc-build:export": "gulp sassdoc-build:export --convert true && gulp sassdoc:clean-docs-dir", - "sassdoc-build:import": "gulp sassdoc-build:import --render true", - "postinstall": "gulp copy-git-hooks", - "build:typedoc:ja:production": "set NODE_ENV=production && gulp typedoc-build:doc:ja:localization && gulp clean-translations:localization:repo", - "build:typedoc:ja:staging": "set NODE_ENV=staging && gulp typedoc-build:doc:ja:localization && gulp clean-translations:localization:repo", - "build:typedoc:en:production": "set NODE_ENV=production && gulp typedoc-build:doc:en:localization && gulp clean-translations:localization:repo", - "build:typedoc:en:staging": "set NODE_ENV=staging && gulp typedoc-build:doc:en:localization && gulp clean-translations:localization:repo" - }, - "private": true, - "dependencies": { - "@angular/animations": "^6.1.0", - "@angular/common": "^6.1.0", - "@angular/compiler": "^6.1.0", - "@angular/core": "^6.1.0", - "@angular/forms": "^6.1.0", - "@angular/http": "^6.1.0", - "@angular/platform-browser": "^6.1.0", - "@angular/platform-browser-dynamic": "^6.1.0", - "@angular/router": "^6.1.0", - "@types/hammerjs": "^2.0.35", - "core-js": "^2.5.7", - "gulp-typescript": "^5.0.0-alpha.3", - "hammerjs": "^2.0.8", - "jszip": "^3.1.5", - "rxjs": "^6.2.2", - "sassdoc-plugin-localization": "^1.0.2-beta.1", - "web-animations-js": "^2.3.1", - "zone.js": "^0.8.26" - }, - "devDependencies": { - "@angular-devkit/build-angular": "~0.7.1", - "@angular-devkit/build-ng-packagr": "~0.7.1", - "@angular-devkit/schematics": "^0.7.1", - "@angular/cli": "~6.1.1", - "@angular/compiler-cli": "^6.1.0", - "@angular/language-service": "^6.1.0", - "@angularclass/hmr": "^2.1.3", - "@types/jasmine": "~2.8.8", - "@types/jasminewd2": "~2.0.3", - "@types/node": "~10.5.4", - "@types/webpack-env": "^1.13.6", - "browser-sync": "^2.24.6", - "codelyzer": "~4.4.2", - "coveralls": "^3.0.2", - "gulp": "^3.9.1", - "gulp-concat": "^2.6.1", - "gulp-postcss": "^7.0.1", - "gulp-sass": "^4.0.1", - "gulp-shell": "^0.6.5", - "gulp-sourcemaps": "^2.6.4", - "gulp-uglify": "^3.0.1", - "hammer-simulator": "git+https://github.com/hammerjs/simulator.git", - "jasmine": "^3.1.0", - "jasmine-core": "~3.1.0", - "jasmine-spec-reporter": "~4.2.1", - "karma": "~2.0.5", - "karma-chrome-launcher": "~2.2.0", - "karma-coverage-istanbul-reporter": "~2.0.1", - "karma-jasmine": "~1.1.2", - "karma-jasmine-html-reporter": "~1.2.0", - "karma-junit-reporter": "^1.2.0", - "karma-spec-reporter": "~0.0.32", - "lunr": "^2.3.3", - "ng-packagr": "^3.0.6", - "protractor": "~5.3.0", - "sassdoc": "^2.5.0", - "stylelint": "^8.4.0", - "stylelint-scss": "^2.5.0", - "themeleon": "^3.0.2", - "ts-node": "~7.0.0", - "tsickle": ">=0.25.5", - "tslib": "^1.9.3", - "tslint": "~5.11.0", - "typedoc": "^0.13.0", - "typedoc-plugin-localization": "^1.2.1", - "typescript": "~2.7.2", - "webpack-sources": "1.2.0" - } + "name": "igniteui-dev-demos", + "version": "0.0.0", + "scripts": { + "ng": "ng", + "start": "ng serve --open --configuration hmr", + "build": "ng build", + "test": "ng test", + "lint": "ng lint", + "e2e": "ng e2e", + "test:lib": "ng test igniteui-angular --watch=false --no-progress --code-coverage", + "test:lib:azure": "ng test igniteui-angular --watch=false --no-progress --code-coverage --karma-config=./projects/igniteui-angular/karma.azure.conf.js", + "test:lib:watch": "ng test igniteui-angular", + "test:migration": "node -r ts-node/register ./node_modules/jasmine/bin/jasmine.js ./projects/igniteui-angular/migrations/**/*.spec.ts", + "build:lib": "ng build igniteui-angular --prod && gulp build-style", + "build:style": "gulp build-style", + "build:migration": "gulp copy-migrations && tsc --listEmittedFiles --project ./projects/igniteui-angular/migrations/tsconfig.json", + "build:docs:export": "gulp typedoc-build:export", + "build:docs:import": "gulp typedoc-build:import", + "build:docs": "gulp typedoc-build:theme && sassdoc projects/igniteui-angular/src/lib/core/styles", + "lint:lib": "tslint 'projects/igniteui-angular/src/**/*.ts' && stylelint 'projects/igniteui-angular/src/lib/core/styles'", + "typedoc:dev": "gulp typedoc-serve --silent", + "sassdoc-build:export": "gulp sassdoc-build:export --convert true && gulp sassdoc:clean-docs-dir", + "sassdoc-build:import": "gulp sassdoc-build:import --render true", + "build:typedoc:ja:production": "set NODE_ENV=production && gulp typedoc-build:doc:ja:localization && gulp clean-translations:localization:repo", + "build:typedoc:ja:staging": "set NODE_ENV=staging && gulp typedoc-build:doc:ja:localization && gulp clean-translations:localization:repo", + "build:typedoc:en:production": "set NODE_ENV=production && gulp typedoc-build:doc:en:localization && gulp clean-translations:localization:repo", + "build:typedoc:en:staging": "set NODE_ENV=staging && gulp typedoc-build:doc:en:localization && gulp clean-translations:localization:repo", + "postinstall": "gulp copy-git-hooks" + }, + "private": true, + "dependencies": { + "@angular/animations": "^7.0.3", + "@angular/common": "^7.0.3", + "@angular/compiler": "^7.0.3", + "@angular/core": "^7.0.3", + "@angular/forms": "^7.0.3", + "@angular/http": "^7.0.3", + "@angular/platform-browser": "^7.0.3", + "@angular/platform-browser-dynamic": "^7.0.3", + "@angular/router": "^7.0.3", + "@types/hammerjs": "^2.0.36", + "core-js": "^2.5.7", + "hammerjs": "^2.0.8", + "jszip": "^3.1.5", + "rxjs": "^6.3.3", + "web-animations-js": "^2.3.1", + "zone.js": "^0.8.26" + }, + "devDependencies": { + "@angular-devkit/build-angular": "~0.10.0", + "@angular-devkit/build-ng-packagr": "~0.10.0", + "@angular-devkit/schematics": "^7.0.5", + "@angular/cli": "~7.0.5", + "@angular/compiler-cli": "^7.0.3", + "@angular/language-service": "^7.0.3", + "@angularclass/hmr": "^2.1.3", + "@types/jasmine": "~2.8.11", + "@types/jasminewd2": "~2.0.6", + "@types/node": "~10.12.6", + "@types/webpack-env": "^1.13.6", + "browser-sync": "^2.26.3", + "codelyzer": "~4.5.0", + "coveralls": "^3.0.2", + "gulp": "^3.9.1", + "gulp-concat": "^2.6.1", + "gulp-postcss": "^8.0.0", + "gulp-sass": "^4.0.2", + "gulp-shell": "^0.6.5", + "gulp-sourcemaps": "^2.6.4", + "gulp-typescript": "^5.0.0-alpha.3", + "gulp-uglify": "^3.0.1", + "hammer-simulator": "0.0.1", + "jasmine": "~3.2.0", + "jasmine-core": "~3.2.1", + "jasmine-spec-reporter": "~4.2.1", + "karma": "~3.1.1", + "karma-chrome-launcher": "~2.2.0", + "karma-coverage-istanbul-reporter": "~2.0.4", + "karma-jasmine": "~1.1.2", + "karma-jasmine-html-reporter": "~1.4.0", + "karma-junit-reporter": "^1.2.0", + "karma-spec-reporter": "~0.0.32", + "lunr": "^2.3.5", + "ng-packagr": "^4.4.0", + "protractor": "~5.4.1", + "sassdoc": "^2.5.1", + "sassdoc-plugin-localization": "^1.0.2-beta.1", + "stylelint": "^9.8.0", + "stylelint-scss": "^3.4.0", + "themeleon": "^3.0.2", + "ts-node": "~7.0.1", + "tsickle": "0.33.1", + "tslib": "^1.9.3", + "tslint": "~5.11.0", + "typedoc": "^0.13.0", + "typedoc-plugin-localization": "^1.2.0", + "typescript": "~3.1.6", + "webpack-sources": "1.3.0" + } } diff --git a/projects/igniteui-angular/package.json b/projects/igniteui-angular/package.json index b3319433239..ed9a07dd325 100644 --- a/projects/igniteui-angular/package.json +++ b/projects/igniteui-angular/package.json @@ -56,15 +56,15 @@ "csv export" ], "dependencies": { - "@types/hammerjs": "^2.0.35", + "@types/hammerjs": "^2.0.36", "hammerjs": "^2.0.8", "jszip": "^3.1.5" }, "peerDependencies": { - "@angular/common": "^6.0.0-rc.0 || ^6.0.0", - "@angular/core": "^6.0.0-rc.0 || ^6.0.0", - "@angular/animations": "^6.0.0-rc.0 || ^6.0.0", - "@angular/forms": "^6.0.0-rc.0 || ^6.0.0", + "@angular/common": "^7.0.3", + "@angular/core": "^7.0.3", + "@angular/animations": "^7.0.3", + "@angular/forms": "^7.0.3", "web-animations-js": "^2.3.1" }, "ng-update": { diff --git a/projects/igniteui-angular/src/lib/directives/toggle/toggle.directive.ts b/projects/igniteui-angular/src/lib/directives/toggle/toggle.directive.ts index 6838116307f..a497bc06804 100644 --- a/projects/igniteui-angular/src/lib/directives/toggle/toggle.directive.ts +++ b/projects/igniteui-angular/src/lib/directives/toggle/toggle.directive.ts @@ -17,7 +17,7 @@ import { IgxNavigationService, IToggleView } from '../../core/navigation'; import { IgxOverlayService } from '../../services/overlay/overlay'; import { OverlaySettings, OverlayEventArgs, ConnectedPositioningStrategy, AbsoluteScrollStrategy } from '../../services'; import { filter, takeUntil } from 'rxjs/operators'; -import { Subscription, OperatorFunction, Subject } from 'rxjs'; +import { Subscription, Subject, MonoTypeOperatorFunction } from 'rxjs'; import { OverlayCancelableEventArgs } from '../../services/overlay/utilities'; import { CancelableEventArgs } from '../../core/utils'; @@ -28,8 +28,9 @@ import { CancelableEventArgs } from '../../core/utils'; export class IgxToggleDirective implements IToggleView, OnInit, OnDestroy { private _overlayId: string; private destroy$ = new Subject(); - private _overlaySubFilter: OperatorFunction[] = [ - filter(x => x.id === this._overlayId) + private _overlaySubFilter: [MonoTypeOperatorFunction, MonoTypeOperatorFunction] = [ + filter(x => x.id === this._overlayId), + takeUntil(this.destroy$) ]; private _overlayOpenedSub: Subscription; private _overlayClosingSub: Subscription; @@ -189,12 +190,12 @@ export class IgxToggleDirective implements IToggleView, OnInit, OnDestroy { } this.unsubscribe(); - this._overlayOpenedSub = this.overlayService.onOpened.pipe(...this._overlaySubFilter, takeUntil(this.destroy$)).subscribe(() => { + this._overlayOpenedSub = this.overlayService.onOpened.pipe(...this._overlaySubFilter).subscribe(() => { this.onOpened.emit(); }); this._overlayClosingSub = this.overlayService .onClosing - .pipe(...this._overlaySubFilter, takeUntil(this.destroy$)) + .pipe(...this._overlaySubFilter) .subscribe((e: OverlayCancelableEventArgs) => { const eventArgs: CancelableEventArgs = { cancel: false }; this.onClosing.emit(eventArgs); @@ -208,7 +209,7 @@ export class IgxToggleDirective implements IToggleView, OnInit, OnDestroy { } }); this._overlayClosedSub = this.overlayService.onClosed - .pipe(...this._overlaySubFilter, takeUntil(this.destroy$)) + .pipe(...this._overlaySubFilter) .subscribe(this.overlayClosed); } diff --git a/projects/igniteui-angular/src/lib/services/overlay/overlay.spec.ts b/projects/igniteui-angular/src/lib/services/overlay/overlay.spec.ts index c5f25ad64cc..4504574694d 100644 --- a/projects/igniteui-angular/src/lib/services/overlay/overlay.spec.ts +++ b/projects/igniteui-angular/src/lib/services/overlay/overlay.spec.ts @@ -874,9 +874,9 @@ describe('igxOverlay', () => { const content = overlayWrapper.firstChild; const componentEl = content.lastChild; - expect(overlayWrapper.localName).toEqual('div'); - expect(overlayWrapper.firstChild.localName).toEqual('div'); - expect(componentEl.localName === 'div').toBeTruthy(); + expect(overlayWrapper.nodeName).toEqual('DIV'); + expect(overlayWrapper.firstChild.nodeName).toEqual('DIV'); + expect(componentEl.nodeName).toEqual('DIV'); })); it('Should apply the corresponding inline css to the overlay wrapper div element for each alignment.', fakeAsync(() => { @@ -1078,9 +1078,9 @@ describe('igxOverlay', () => { const overlayWrapper = document.getElementsByClassName(CLASS_OVERLAY_WRAPPER)[0]; const content = overlayWrapper.firstChild; const componentEl = content.lastChild; - expect(overlayWrapper.localName).toEqual('div'); - expect(overlayWrapper.firstChild.localName).toEqual('div'); - expect(componentEl.localName === 'div').toBeTruthy(); + expect(overlayWrapper.nodeName).toEqual('DIV'); + expect(overlayWrapper.firstChild.nodeName).toEqual('DIV'); + expect(componentEl.nodeName).toEqual('DIV'); })); it(`Should use StartPoint:Left/Bottom, Direction Right/Bottom and openAnimation: scaleInVerTop, closeAnimation: scaleOutVerTop diff --git a/src/polyfills.ts b/src/polyfills.ts index 912e82b7ca4..e5f2c25b33a 100644 --- a/src/polyfills.ts +++ b/src/polyfills.ts @@ -46,7 +46,7 @@ import 'core-js/es6/reflect'; /** Evergreen browsers require these. **/ // Used for reflect-metadata in JIT. If you use AOT (and only Angular decorators), you can remove. -import 'core-js/es7/reflect'; + /** From a618b34bdd79378a7bff7851db7be6214eb615f6 Mon Sep 17 00:00:00 2001 From: Konstantin Dinev Date: Thu, 22 Nov 2018 14:10:57 +0200 Subject: [PATCH 10/18] chore(*): Updating the changelog with the sorting strategy changes --- CHANGELOG.md | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6962d62af56..05730d02cb4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -170,13 +170,16 @@ When you focus a specific cell and press one of the following key combinations, - **Breaking change** cell selection is preserved when the focus is moved to group row. - Introduced `onFocusChange` event. The event is cancelable and output argument from type `IFocusChangeEventArgs`; - For more detailed information see the [official keyboard navigation specification](https://github.com/IgniteUI/igniteui-angular/wiki/igxGrid-Specification#kb-navigation). - -## 6.1.8 + +## 6.1.9 ### General -- `sortStrategy` input exposed to provide custom sort strategy for the `IgxColumnComponent`. The custom strategy should implement the `ISortingStrategy` interface, or can extend the base `SortingStrategy` class and override all or some of its public/protected members. +- `sortStrategy` input exposed to provide custom sort strategy for the `IgxColumnComponent`. The custom strategy should implement the `ISortingStrategy` interface, or can extend the base `DefaultSortingStrategy` class and override all or some of its public/protected members. +- The previously optional `ignoreCase` and `strategy` of the `ISortingExpression` interface are no longer optional. In order to use our default sorting strategy in expressions built programmatically, you need to pass `DefaultSortingStrategy.instance()` or any implementation of the `ISortingStrategy` interface. - `groupingComparer` input exposed to provide custom grouping compare function for the `IgxColumnComponent`. The function receives two values and should return `0` if they are to considered members of the same group. + +## 6.1.8 ### Bug fixes From 147f0e9931bf991a0cc516d9f83a27ed6eae7003 Mon Sep 17 00:00:00 2001 From: Simeon Simeonoff Date: Thu, 22 Nov 2018 14:25:10 +0200 Subject: [PATCH 11/18] feat(themes): add dark schemas and mixins (#3025) * feat(themes): add dark schemas and mixins * test(groupby): fix linting errors --- CHANGELOG.md | 3 + extras/docs/themes/sassdoc/index.js | 348 +++---- extras/docs/themes/sassdoc/views/index.hbs | 2 + .../sassdoc/views/partials/properties.hbs | 41 + .../themes/sassdoc/views/partials/see.hbs | 19 + .../update-6_2_1/changes/theme-props.json | 189 +++- .../styles/base/utilities/_functions.scss | 98 +- .../core/styles/base/utilities/_mixins.scss | 8 +- .../components/avatar/_avatar-theme.scss | 19 +- .../styles/components/badge/_badge-theme.scss | 17 +- .../components/banner/_banner-theme.scss | 19 +- .../bottom-nav/_bottom-nav-theme.scss | 21 +- .../button-group/_button-group-theme.scss | 29 +- .../components/button/_button-theme.scss | 64 +- .../components/calendar/_calendar-theme.scss | 52 +- .../styles/components/card/_card-theme.scss | 28 +- .../components/carousel/_carousel-theme.scss | 23 +- .../components/checkbox/_checkbox-theme.scss | 47 +- .../styles/components/chip/_chip-theme.scss | 50 +- .../column-hiding/_column-hiding-theme.scss | 8 +- .../styles/components/combo/_combo-theme.scss | 19 +- .../date-picker/_date-picker-theme.scss | 9 +- .../components/dialog/_dialog-theme.scss | 15 +- .../drop-down/_drop-down-theme.scss | 71 +- .../_expansion-panel-theme.scss | 28 +- .../grid-filtering/_grid-filtering-theme.scss | 34 +- .../grid-paginator/_grid-paginator-theme.scss | 11 +- .../grid-summary/_grid-summary-theme.scss | 35 +- .../grid-toolbar/_grid-toolbar-theme.scss | 41 +- .../styles/components/grid/_grid-theme.scss | 108 +- .../styles/components/icon/_icon-theme.scss | 18 +- .../components/input/_input-group-theme.scss | 149 +-- .../styles/components/list/_list-theme.scss | 25 +- .../components/navbar/_navbar-theme.scss | 18 +- .../navdrawer/_navdrawer-theme.scss | 33 +- .../components/overlay/_overlay-theme.scss | 12 +- .../components/progress/_progress-theme.scss | 42 +- .../styles/components/radio/_radio-theme.scss | 36 +- .../components/ripple/_ripple-theme.scss | 12 +- .../components/slider/_slider-theme.scss | 58 +- .../components/snackbar/_snackbar-theme.scss | 19 +- .../components/switch/_switch-theme.scss | 54 +- .../styles/components/tabs/_tabs-theme.scss | 40 +- .../time-picker/_time-picker-theme.scss | 35 +- .../styles/components/toast/_toast-theme.scss | 17 +- .../components/tooltip/_tooltip-theme.scss | 45 +- .../src/lib/core/styles/themes/_index.scss | 32 +- .../src/lib/core/styles/themes/_palettes.scss | 6 +- .../themes/presets/igniteui-dark-green.scss | 4 +- .../schemas/dark-green/_components-theme.scss | 235 ----- .../themes/schemas/dark-green/_index.scss | 34 - .../themes/schemas/dark-green/_vars.scss | 19 - .../styles/themes/schemas/dark/_avatar.scss | 13 + .../styles/themes/schemas/dark/_badge.scss | 14 + .../styles/themes/schemas/dark/_banner.scss | 17 + .../themes/schemas/dark/_bottom-nav.scss | 17 + .../themes/schemas/dark/_button-group.scss | 17 + .../styles/themes/schemas/dark/_button.scss | 36 + .../styles/themes/schemas/dark/_calendar.scss | 16 + .../styles/themes/schemas/dark/_card.scss | 16 + .../styles/themes/schemas/dark/_carousel.scss | 18 + .../styles/themes/schemas/dark/_checkbox.scss | 16 + .../styles/themes/schemas/dark/_chip.scss | 19 + .../themes/schemas/dark/_column-hiding.scss | 13 + .../styles/themes/schemas/dark/_combo.scss | 17 + .../themes/schemas/dark/_date-picker.scss | 14 + .../styles/themes/schemas/dark/_dialog.scss | 16 + .../themes/schemas/dark/_drop-down.scss | 17 + .../themes/schemas/dark/_expansion-panel.scss | 18 + .../themes/schemas/dark/_grid-filtering.scss | 13 + .../themes/schemas/dark/_grid-pagination.scss | 16 + .../themes/schemas/dark/_grid-summary.scss | 15 + .../themes/schemas/dark/_grid-toolbar.scss | 16 + .../styles/themes/schemas/dark/_grid.scss | 75 ++ .../styles/themes/schemas/dark/_icon.scss | 16 + .../styles/themes/schemas/dark/_index.scss | 122 +++ .../themes/schemas/dark/_input-group.scss | 20 + .../styles/themes/schemas/dark/_list.scss | 23 + .../styles/themes/schemas/dark/_navbar.scss | 15 + .../themes/schemas/dark/_navdrawer.scss | 18 + .../styles/themes/schemas/dark/_overlay.scss | 15 + .../styles/themes/schemas/dark/_progress.scss | 23 + .../styles/themes/schemas/dark/_radio.scss | 15 + .../styles/themes/schemas/dark/_ripple.scss | 16 + .../styles/themes/schemas/dark/_slider.scss | 15 + .../styles/themes/schemas/dark/_snackbar.scss | 15 + .../styles/themes/schemas/dark/_switch.scss | 21 + .../styles/themes/schemas/dark/_tabs.scss | 20 + .../themes/schemas/dark/_time-picker.scss | 19 + .../styles/themes/schemas/dark/_toast.scss | 15 + .../styles/themes/schemas/dark/_tooltip.scss | 14 + .../styles/themes/schemas/light/_avatar.scss | 16 +- .../styles/themes/schemas/light/_badge.scss | 25 +- .../styles/themes/schemas/light/_banner.scss | 16 +- .../themes/schemas/light/_bottom-nav.scss | 14 +- .../themes/schemas/light/_button-group.scss | 23 +- .../styles/themes/schemas/light/_button.scss | 38 +- .../themes/schemas/light/_calendar.scss | 32 +- .../styles/themes/schemas/light/_card.scss | 15 +- .../themes/schemas/light/_carousel.scss | 17 +- .../themes/schemas/light/_checkbox.scss | 15 +- .../styles/themes/schemas/light/_chip.scss | 32 +- .../themes/schemas/light/_column-hiding.scss | 12 +- .../styles/themes/schemas/light/_combo.scss | 13 +- .../themes/schemas/light/_date-picker.scss | 13 +- .../styles/themes/schemas/light/_dialog.scss | 13 +- .../themes/schemas/light/_drop-down.scss | 26 +- .../schemas/light/_expansion-panel.scss | 18 +- .../themes/schemas/light/_grid-filtering.scss | 22 +- .../schemas/light/_grid-pagination.scss | 16 +- .../themes/schemas/light/_grid-summary.scss | 37 +- .../themes/schemas/light/_grid-toolbar.scss | 36 +- .../styles/themes/schemas/light/_grid.scss | 71 +- .../styles/themes/schemas/light/_icon.scss | 17 +- .../styles/themes/schemas/light/_index.scss | 48 + .../themes/schemas/light/_input-group.scss | 71 +- .../styles/themes/schemas/light/_list.scss | 21 +- .../styles/themes/schemas/light/_navbar.scss | 34 +- .../themes/schemas/light/_navdrawer.scss | 41 +- .../styles/themes/schemas/light/_overlay.scss | 13 +- .../themes/schemas/light/_progress.scss | 33 +- .../styles/themes/schemas/light/_radio.scss | 16 + .../styles/themes/schemas/light/_ripple.scss | 14 +- .../styles/themes/schemas/light/_slider.scss | 32 +- .../themes/schemas/light/_snackbar.scss | 17 +- .../styles/themes/schemas/light/_switch.scss | 49 +- .../styles/themes/schemas/light/_tabs.scss | 44 +- .../themes/schemas/light/_time-picker.scss | 24 +- .../styles/themes/schemas/light/_toast.scss | 16 +- .../styles/themes/schemas/light/_tooltip.scss | 17 +- .../src/lib/grids/grid-base.component.ts | 56 +- .../src/lib/grids/grid/grid.groupby.spec.ts | 958 +++++++++++------- src/app/mask/mask.sample.css | 22 +- src/index.html | 2 +- src/styles/igniteui-theme.scss | 13 +- 135 files changed, 3543 insertions(+), 1765 deletions(-) create mode 100644 extras/docs/themes/sassdoc/views/partials/properties.hbs create mode 100644 extras/docs/themes/sassdoc/views/partials/see.hbs delete mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark-green/_components-theme.scss delete mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark-green/_index.scss delete mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark-green/_vars.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_avatar.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_badge.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_banner.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_bottom-nav.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_button-group.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_button.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_calendar.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_card.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_carousel.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_checkbox.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_chip.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_column-hiding.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_combo.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_date-picker.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_dialog.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_drop-down.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_expansion-panel.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_grid-filtering.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_grid-pagination.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_grid-summary.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_grid-toolbar.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_grid.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_icon.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_input-group.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_list.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_navbar.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_navdrawer.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_overlay.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_progress.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_radio.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_ripple.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_slider.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_snackbar.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_switch.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_tabs.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_time-picker.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_toast.scss create mode 100644 projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_tooltip.scss diff --git a/CHANGELOG.md b/CHANGELOG.md index 05730d02cb4..5e8e2c51ee9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,9 @@ All notable changes for each version of this project will be documented in this ## 6.2.1 - `igx-drop-down`: - Added a new property `maxHeight`, defining the max height of the drop down. +- Themes + - Introducing schemas for easier bootstrapping of component themes. + - **Breaking change** removed $variant from `igx-checkbox-theme`, `igx-ripple-theme`, `igx-switch-theme`, `igx-input-group-theme`, `igx-slider-theme`, and `igx-tooltip-theme`. Use the `$schema` prop, now available on all component themes to change the look for a specific theme. See the [Theming](https://www.infragistics.com/products/ignite-ui-angular/angular/components/themes/schemas.html) documentation to learn more. - `igx-combo`: - Added a new input property - `displayDensity`. It allows configuring the `displayDensity` of the combo's `value` and `search` inputs. diff --git a/extras/docs/themes/sassdoc/index.js b/extras/docs/themes/sassdoc/index.js index 7e87e5e4000..9325d2d9a35 100644 --- a/extras/docs/themes/sassdoc/index.js +++ b/extras/docs/themes/sassdoc/index.js @@ -27,7 +27,7 @@ const sassPlug = require('sassdoc-plugin-localization'); themeleon.use({ /** - * Builds a structure of json files which represents the retrieved comments per every sass declaration. + * Builds a structure of json files which represents the retrieved comments per every sass declaration. */ convert: (data, dir) => sassPlug.convert(data, dir), /** @@ -49,77 +49,79 @@ themeleon.use({ */ const theme = themeleon(__dirname, function (t) { /** - * If only json conversion is needed the whole process of documentation rendering has to be stopped. + * If only json conversion is needed the whole process of documentation rendering has to be stopped. */ if (t.ctx.convert) { - return t.convert(t.ctx._data, './extras/sassdoc/en'); + return t.convert(t.ctx._data, './extras/sassdoc/en'); } - /** - * Copy the assets folder from the theme's directory in the - * destination directory. - */ - t.copy('assets'); - - const options = { - partials: { - authors: 'partials/authors', - description: 'partials/description', - example: 'partials/example', - footer: 'partials/footer', - header: 'partials/header', - github: 'partials/github', - definitionHeader: 'partials/definitionHeader', - require: 'partials/require', - search: 'partials/search', - sidenav: 'partials/sidenav', - source: 'partials/source', - usedBy: 'partials/usedby', - parameters: 'partials/parameters', - example: 'partials/example', - infraHead: 'partials/infragistics/header', - infraFoot: 'partials/infragistics/footer' - }, - helpers: { - debug: function (content) { - console.log("----VALUE-----"); - console.log(content); - }, - json: function (context) { - return JSON.stringify(context); - }, - github: function (file, line) { - const url = 'https://github.com/IgniteUI/igniteui-angular/tree/master/projects/igniteui-angular/src/lib/core/styles/'; - return `${url}${file}#L${line}`; - }, - typeClass: function (context) { - switch (context) { - case "mixin": - return "--mixin"; - case "function": - return "--function"; - default: - return ""; + /** + * Copy the assets folder from the theme's directory in the + * destination directory. + */ + t.copy('assets'); + + const options = { + partials: { + authors: 'partials/authors', + description: 'partials/description', + example: 'partials/example', + footer: 'partials/footer', + header: 'partials/header', + github: 'partials/github', + definitionHeader: 'partials/definitionHeader', + require: 'partials/require', + search: 'partials/search', + see: 'partials/see', + sidenav: 'partials/sidenav', + source: 'partials/source', + usedBy: 'partials/usedby', + parameters: 'partials/parameters', + properties: 'partials/properties', + example: 'partials/example', + infraHead: 'partials/infragistics/header', + infraFoot: 'partials/infragistics/footer' + }, + helpers: { + debug: function (content) { + console.log("----VALUE-----"); + console.log(content); + }, + json: function (context) { + return JSON.stringify(context); + }, + github: function (file, line) { + const url = 'https://github.com/IgniteUI/igniteui-angular/tree/master/projects/igniteui-angular/src/lib/core/styles/'; + return `${url}${file}#L${line}`; + }, + typeClass: function (context) { + switch (context) { + case "mixin": + return "--mixin"; + case "function": + return "--function"; + default: + return ""; + } + }, + trimType: (value) => { + return value.substring(0, 3); + } } - }, - trimType: (value) => { - return value.substring(0, 3); - } + }; + + /** + * Render `views/index.handlebars` with the theme's context (`ctx` below) + * as `index.html` in the destination directory. + */ + t.handlebars('views/index.hbs', 'index.html', options); + + /** + * Applies the translations from the json files. + */ + if (t.ctx.render) { + const jsonDir = t.ctx.jsonDir ? t.ctx.jsonDir : './extras/sassdoc/en'; + t.render(t.ctx._data, jsonDir); } - }; - - /** - * Render `views/index.handlebars` with the theme's context (`ctx` below) - * as `index.html` in the destination directory. - */ - t.handlebars('views/index.hbs', 'index.html', options); - - /** - * Applies the translations from the json files. - */ - if (t.ctx.render) { - const jsonDir = t.ctx.jsonDir ? t.ctx.jsonDir : './extras/sassdoc/en'; - t.render(t.ctx._data, jsonDir); - } }); /** * Actual theme function. It takes the destination directory `dest` @@ -130,109 +132,109 @@ const theme = themeleon(__dirname, function (t) { * configuration. */ module.exports = function (dest, ctx) { - var def = { - display: { - access: ['public', 'private'], - alias: true, - watermark: false, - }, - groups: { - 'undefined': 'General', - }, - 'shortcutIcon': 'http://sass-lang.com/favicon.ico' - }; - - // Apply default values for groups and display. - ctx.groups = extend(def.groups, ctx.groups); - ctx.display = extend(def.display, ctx.display); - - // Extend top-level context keys. - ctx = extend({}, def, ctx); - - /** - * Parse text data (like descriptions) as Markdown, and put the - * rendered HTML in `html*` variables. - * - * For example, `ctx.package.description` will be parsed as Markdown - * in `ctx.package.htmlDescription`. - * - * See . - */ - extras.markdown(ctx); - - /** - * Add a `display` property for each data item regarding of display - * configuration (hide private items and aliases for example). - * - * You'll need to add default values in your `.sassdocrc` before - * using this filter: - * - * { - * "display": { - * "access": ["public", "private"], - * "alias": false - * } - * } - * - * See . - */ - extras.display(ctx); - - /** - * Allow the user to give a name to the documentation groups. - * - * We can then have `@group slug` in the docblock, and map `slug` - * to `Some title string` in the theme configuration. - * - * **Note:** all items without a group are in the `undefined` group. - * - * See . - */ - extras.groupName(ctx); - - /** - * Use SassDoc indexer to index the data by group and type, so we - * have the following structure: - * - * { - * "group-slug": { - * "function": [...], - * "mixin": [...], - * "variable": [...] - * }, - * "another-group": { - * "function": [...], - * "mixin": [...], - * "variable": [...] - * } - * } - * - * You can then use `data.byGroupAndType` instead of `data` in your - * templates to manipulate the indexed object. - */ - ctx.idx = lunr(function () { - this.field('type'); - this.field('name'); - - ctx.data.forEach((doc) => { - this.add({ - id: `${doc.context.type}-${doc.context.name}`, - name: doc.context.name, - type: doc.context.type - }); - }, this); - }); - - ctx.data.byGroupAndType = extras.byGroupAndType(ctx.data); - - // Avoid key collision with Handlebars default `data`. - // @see https://github.com/SassDoc/generator-sassdoc-theme/issues/22 - ctx._data = ctx.data; - delete ctx.data; - - /** - * Now we have prepared the data, we can proxy to the Themeleon - * generated theme function. - */ - return theme.apply(this, arguments); -}; \ No newline at end of file + var def = { + display: { + access: ['public', 'private'], + alias: true, + watermark: false, + }, + groups: { + 'undefined': 'General', + }, + 'shortcutIcon': 'http://sass-lang.com/favicon.ico' + }; + + // Apply default values for groups and display. + ctx.groups = extend(def.groups, ctx.groups); + ctx.display = extend(def.display, ctx.display); + + // Extend top-level context keys. + ctx = extend({}, def, ctx); + + /** + * Parse text data (like descriptions) as Markdown, and put the + * rendered HTML in `html*` variables. + * + * For example, `ctx.package.description` will be parsed as Markdown + * in `ctx.package.htmlDescription`. + * + * See . + */ + extras.markdown(ctx); + + /** + * Add a `display` property for each data item regarding of display + * configuration (hide private items and aliases for example). + * + * You'll need to add default values in your `.sassdocrc` before + * using this filter: + * + * { + * "display": { + * "access": ["public", "private"], + * "alias": false + * } + * } + * + * See . + */ + extras.display(ctx); + + /** + * Allow the user to give a name to the documentation groups. + * + * We can then have `@group slug` in the docblock, and map `slug` + * to `Some title string` in the theme configuration. + * + * **Note:** all items without a group are in the `undefined` group. + * + * See . + */ + extras.groupName(ctx); + + /** + * Use SassDoc indexer to index the data by group and type, so we + * have the following structure: + * + * { + * "group-slug": { + * "function": [...], + * "mixin": [...], + * "variable": [...] + * }, + * "another-group": { + * "function": [...], + * "mixin": [...], + * "variable": [...] + * } + * } + * + * You can then use `data.byGroupAndType` instead of `data` in your + * templates to manipulate the indexed object. + */ + ctx.idx = lunr(function () { + this.field('type'); + this.field('name'); + + ctx.data.forEach((doc) => { + this.add({ + id: `${doc.context.type}-${doc.context.name}`, + name: doc.context.name, + type: doc.context.type + }); + }, this); + }); + + ctx.data.byGroupAndType = extras.byGroupAndType(ctx.data); + + // Avoid key collision with Handlebars default `data`. + // @see https://github.com/SassDoc/generator-sassdoc-theme/issues/22 + ctx._data = ctx.data; + delete ctx.data; + + /** + * Now we have prepared the data, we can proxy to the Themeleon + * generated theme function. + */ + return theme.apply(this, arguments); +}; diff --git a/extras/docs/themes/sassdoc/views/index.hbs b/extras/docs/themes/sassdoc/views/index.hbs index 2cb58052b5d..e66c7754538 100644 --- a/extras/docs/themes/sassdoc/views/index.hbs +++ b/extras/docs/themes/sassdoc/views/index.hbs @@ -118,6 +118,8 @@ {{!-- {{~>source~}} --}} {{~>example~}} {{> parameters}} + {{> properties}} + {{> see}} {{> usedBy}} {{> require}} {{> authors}} diff --git a/extras/docs/themes/sassdoc/views/partials/properties.hbs b/extras/docs/themes/sassdoc/views/partials/properties.hbs new file mode 100644 index 00000000000..a0130a1e352 --- /dev/null +++ b/extras/docs/themes/sassdoc/views/partials/properties.hbs @@ -0,0 +1,41 @@ +{{#with property}} +
+

Properties

+
+
+
Name
+
+
+
Description
+
+
+
Type
+
+
+
Default Value
+
+
+ + {{#each this}} +
+
+ {{name}} +
+
+ {{{description}}} +
+
+ {{type}} +
+
+ {{! TODO: This should be a helper that determines the value type as well}} + {{#if default}} + {{default}} + {{^}} + none + {{/if}} +
+
+ {{/each}} +
+{{/with}} diff --git a/extras/docs/themes/sassdoc/views/partials/see.hbs b/extras/docs/themes/sassdoc/views/partials/see.hbs new file mode 100644 index 00000000000..b984914ee78 --- /dev/null +++ b/extras/docs/themes/sassdoc/views/partials/see.hbs @@ -0,0 +1,19 @@ +{{#with see}} + +{{/with}} diff --git a/projects/igniteui-angular/migrations/update-6_2_1/changes/theme-props.json b/projects/igniteui-angular/migrations/update-6_2_1/changes/theme-props.json index 0614e0058e8..f075e36bacb 100644 --- a/projects/igniteui-angular/migrations/update-6_2_1/changes/theme-props.json +++ b/projects/igniteui-angular/migrations/update-6_2_1/changes/theme-props.json @@ -1,32 +1,165 @@ { "$schema": "../../common/schema/theme-props.schema.json", - "changes": [ - { "name": "$chip-background", "replaceWith": "$background", "owner": "igx-chip-theme" }, - { "name": "$chip-hover-background", "replaceWith": "$hover-background", "owner": "igx-chip-theme" }, - { "name": "$text-hover-color", "replaceWith": "$hover-text-color", "owner": "igx-chip-theme" }, - { "name": "$order-icon-color", "remove": true, "owner": "igx-chip-theme" }, - { "name": "$order-icon-hover-color", "remove": true, "owner": "igx-chip-theme" }, - { "name": "$dir-icon-color", "remove": true, "owner": "igx-chip-theme" }, - { "name": "$remove-icon-color", "remove": true, "owner": "igx-chip-theme" }, - { "name": "$remove-icon-hover-color", "remove": true, "owner": "igx-chip-theme" }, - { "name": "$chip-focus-border-color", "replaceWith": "$focus-border-color", "owner": "igx-chip-theme" }, - { "name": "$selected-chip-background", "replaceWith": "$selected-background", "owner": "igx-chip-theme" }, - { "name": "$selected-chip-text-color", "replaceWith": "$selected-text-color", "owner": "igx-chip-theme" }, - { "name": "$selected-chip-icon-color", "remove": true, "owner": "igx-chip-theme" }, - { "name": "$selected-chip-hover-background", "replaceWith": "$hover-selected-background", "owner": "igx-chip-theme" }, - { "name": "$selected-chip-focus-background", "replaceWith": "$focus-selected-background", "owner": "igx-chip-theme" }, - { "name": "$selected-chip-text-hover-color", "replaceWith": "$hover-selected-text-color", "owner": "igx-chip-theme" }, - { "name": "$selected-chip-icon-hover-color", "remove": true, "owner": "igx-chip-theme" }, - { "name": "$selected-remove-icon-color", "remove": true, "owner": "igx-chip-theme" }, - { "name": "$selected-chip-icon-focus-color", "remove": true, "owner": "igx-chip-theme" }, - { "name": "$selected-remove-icon-hover-color", "remove": true, "owner": "igx-chip-theme" }, - { "name": "$selected-chip-text-focus-color", "replaceWith": "$focus-selected-text-color", "owner": "igx-chip-theme" }, - { "name": "$selected-chip-focus-border-color", "replaceWith": "$focus-selected-border-color", "owner": "igx-chip-theme" }, - { "name": "$selected-chip-hover-border-color", "replaceWith": "$hover-selected-border-color", "owner": "igx-chip-theme" }, + "changes": [{ + "name": "$chip-background", + "replaceWith": "$background", + "owner": "igx-chip-theme" + }, + { + "name": "$chip-hover-background", + "replaceWith": "$hover-background", + "owner": "igx-chip-theme" + }, + { + "name": "$text-hover-color", + "replaceWith": "$hover-text-color", + "owner": "igx-chip-theme" + }, + { + "name": "$order-icon-color", + "remove": true, + "owner": "igx-chip-theme" + }, + { + "name": "$order-icon-hover-color", + "remove": true, + "owner": "igx-chip-theme" + }, + { + "name": "$dir-icon-color", + "remove": true, + "owner": "igx-chip-theme" + }, + { + "name": "$remove-icon-color", + "remove": true, + "owner": "igx-chip-theme" + }, + { + "name": "$remove-icon-hover-color", + "remove": true, + "owner": "igx-chip-theme" + }, + { + "name": "$chip-focus-border-color", + "replaceWith": "$focus-border-color", + "owner": "igx-chip-theme" + }, + { + "name": "$selected-chip-background", + "replaceWith": "$selected-background", + "owner": "igx-chip-theme" + }, + { + "name": "$selected-chip-text-color", + "replaceWith": "$selected-text-color", + "owner": "igx-chip-theme" + }, + { + "name": "$selected-chip-icon-color", + "remove": true, + "owner": "igx-chip-theme" + }, + { + "name": "$selected-chip-hover-background", + "replaceWith": "$hover-selected-background", + "owner": "igx-chip-theme" + }, + { + "name": "$selected-chip-focus-background", + "replaceWith": "$focus-selected-background", + "owner": "igx-chip-theme" + }, + { + "name": "$selected-chip-text-hover-color", + "replaceWith": "$hover-selected-text-color", + "owner": "igx-chip-theme" + }, + { + "name": "$selected-chip-icon-hover-color", + "remove": true, + "owner": "igx-chip-theme" + }, + { + "name": "$selected-remove-icon-color", + "remove": true, + "owner": "igx-chip-theme" + }, + { + "name": "$selected-chip-icon-focus-color", + "remove": true, + "owner": "igx-chip-theme" + }, + { + "name": "$selected-remove-icon-hover-color", + "remove": true, + "owner": "igx-chip-theme" + }, + { + "name": "$selected-chip-text-focus-color", + "replaceWith": "$focus-selected-text-color", + "owner": "igx-chip-theme" + }, + { + "name": "$selected-chip-focus-border-color", + "replaceWith": "$focus-selected-border-color", + "owner": "igx-chip-theme" + }, + { + "name": "$selected-chip-hover-border-color", + "replaceWith": "$hover-selected-border-color", + "owner": "igx-chip-theme" + }, - { "name": "$row-content-focus-background", "remove": true, "owner": "igx-grid-theme" }, - { "name": "$row-indentation-background", "remove": true, "owner": "igx-grid-theme" }, - { "name": "$grouping-indicator-hover-background", "remove": true, "owner": "igx-grid-theme" }, - { "name": "$grouping-indicator-focus-background", "remove": true, "owner": "igx-grid-theme" } + { + "name": "$row-content-focus-background", + "remove": true, + "owner": "igx-grid-theme" + }, + { + "name": "$row-indentation-background", + "remove": true, + "owner": "igx-grid-theme" + }, + { + "name": "$grouping-indicator-hover-background", + "remove": true, + "owner": "igx-grid-theme" + }, + { + "name": "$grouping-indicator-focus-background", + "remove": true, + "owner": "igx-grid-theme" + }, + { + "name": "$variant", + "remove": true, + "owner": "igx-checkbox-theme" + }, + { + "name": "$variant", + "remove": true, + "owner": "igx-input-group-theme" + }, + { + "name": "$variant", + "remove": true, + "owner": "igx-radio-theme" + }, + { + "name": "$variant", + "remove": true, + "owner": "igx-slider-theme" + }, + { + "name": "$variant", + "remove": true, + "owner": "igx-switch-theme" + }, + { + "name": "$variant", + "remove": true, + "owner": "igx-tooltip-theme" + } ] -} \ No newline at end of file +} diff --git a/projects/igniteui-angular/src/lib/core/styles/base/utilities/_functions.scss b/projects/igniteui-angular/src/lib/core/styles/base/utilities/_functions.scss index 2f4696d6735..38ce53d3aee 100644 --- a/projects/igniteui-angular/src/lib/core/styles/base/utilities/_functions.scss +++ b/projects/igniteui-angular/src/lib/core/styles/base/utilities/_functions.scss @@ -191,16 +191,17 @@ /// @access public /// @requires {function} to-string /// @param {Color} $rgba - The rgba color to convert. +/// @param {Color} $background - The background color to convert against. /// @return {Color} - The hexidecimal representation of the rgba value. -@function hexrgba($rgba) { +@function hexrgba($rgba, $background: #fff) { @if type-of($rgba) == color { $red: red($rgba); $green: green($rgba); $blue: blue($rgba); $a: alpha($rgba); - $r: floor($a * $red + (1 - $a) * 255); - $g: floor($a * $green + (1 - $a) * 255); - $b: floor($a * $blue + (1 - $a) * 255); + $r: floor($a * $red + (1 - $a) * red($background)); + $g: floor($a * $green + (1 - $a) * green($background)); + $b: floor($a * $blue + (1 - $a) * blue($background)); @return rgb($r, $g, $b); } @return $rgba; @@ -389,17 +390,90 @@ @return $split-arr; } -// @ignore -@function get-theme($themes, $theme) { - @if type-of($themes) == 'map' and map-has-key($themes, $theme) { - @return map-get($themes, $theme); +/// Returns a value for a given instruction map, where the +/// keys of the map are the names of the functions to be called, +/// and the value for a given key is the arguments the function +/// should be called with. +/// The instruction set is executed left-to-right. The output of +/// the first instruction is then passed as input to the next, and so on. +/// @access private +/// @param {Map} $ctx - The instruction map to be used. +/// @param {List | Map} $extra [null] - Additional arguments to be passed during function calls. +/// Will only be applied for `igx-color` and `igx-contrast-color` functions. +/// @example scss Resolve `igx-color` and apply 80% opacity +/// $instructions: ( +/// igx-color: ('primary', 500), +/// rgba: .2 +/// ); +/// // $some-palette is a palette we pass as extra arguments +/// $resolved-color: resolve-value($instructions, $some-palette); +/// +@function resolve-value($ctx, $extra: null) { + $result: null; + @each $fn, $args in $ctx { + @if function-exists($fn) { + @if $result == null and ($fn == 'igx-color' or $fn == 'igx-contrast-color') { + $result: call(get-function($fn), $extra, $args...); + } @else if $result != null { + $result: call(get-function($fn), $result, $args...) + } @else { + $result: call(get-function($fn), $args...) + } + } } + @return $result; +} - @if (function-exists('get-function')) { - @return call(get-function(#{$theme}-theme)); - } @else { - @return call((#{$theme}-theme)); +/// Applies an `igx-palette` to a given theme schema. +/// @access private +/// @param {Map} $schema - A theme schema. +/// @param {Map} $palette - An igx-palette map. +/// @requires {function} resolve-value +/// @example scss Apply an `igx-palette` to theme schema +/// $custom-palette: igx-palette($primary: red, $secondary: blue); +/// $custom-schema: ( +/// my-color: ( +/// igx-color: ('primary', 800), +/// rgba: .5 +/// ), +/// roundness: 5px +/// ); +/// $theme: apply-palette($custom-schema, $custom-palette); // A map with palette values resolved. +/// @returns {Map} - A map with the resolved palette values. +@function apply-palette($schema, $palette) { + $result: (); + @each $key, $value in $schema { + @if type-of($value) == 'map' { + $result: extend($result, (#{$key}: resolve-value($value, $palette))); + } @else { + $result: extend($result, (#{$key}: $value)); + } } + @return $result; +} + +/// Returns true if the scope where it's called +/// is the root of the document. +/// @access private +/// @example scss Check if the current scope is root +/// @mixin smart-mixin() { +/// $scope: if(is-root(), ':root', '&'); +/// +/// #{$scope} { +/// /* style rules here */ +/// } +/// } +/// +@function is-root() { + @each $selector in & { + @return if($selector == null, true, false); + } +} + +/// Returns a random color. +/// @access private +@function random-color { + @return hsl(random(360), 100%, 50%); } /// Returns a value for a given instruction map, where the diff --git a/projects/igniteui-angular/src/lib/core/styles/base/utilities/_mixins.scss b/projects/igniteui-angular/src/lib/core/styles/base/utilities/_mixins.scss index 840cf43c96d..914a66cff32 100644 --- a/projects/igniteui-angular/src/lib/core/styles/base/utilities/_mixins.scss +++ b/projects/igniteui-angular/src/lib/core/styles/base/utilities/_mixins.scss @@ -221,14 +221,14 @@ /// Add theme colors to the global root scope /// Ensures the operation is done only once. /// @access private -/// @param {map} $theme - The component theme to get the +/// @param {map} $theme - The component theme to register as css vars. /// @requires {mixin} css-vars-from-theme @mixin igx-root-css-vars($theme) { - $name: map-get($theme, 'name'); + $scope: &; - @if map-get($themes, $name) == null { + @if map-get($themes, $scope) == null { $id: unique-id(); - $themes: map-merge($themes, (#{$name}: $id)) !global; + $themes: map-merge($themes, (#{$scope}: $id)) !global; @include igx-css-vars($theme); } } diff --git a/projects/igniteui-angular/src/lib/core/styles/components/avatar/_avatar-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/avatar/_avatar-theme.scss index d0a0a7654fa..a83bd05a921 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/avatar/_avatar-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/avatar/_avatar-theme.scss @@ -8,13 +8,16 @@ /// If only background color is specified, text/icon color /// will be assigned automatically to a contrasting color. /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $icon-background [rgba(0, 0, 0, .26)]- The background color used for avatars of type icon. -/// @param {Color} $icon-color [rgba(0, 0, 0, .74)] - The icon color used for avatars of type icon. -/// @param {Color} $initials-background [rgba(0, 0, 0, .26)] - The background color used for avatars of type initials. -/// @param {Color} $initials-color [rgba(0, 0, 0, .74)] - The text color used for avatars of type initials. -/// @param {Color} $image-background [transparent] - The background color used for avatars of type image. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// @param {Color} $icon-background [null]- The background color used for avatars of type icon. +/// @param {Color} $icon-color [null] - The icon color used for avatars of type icon. +/// @param {Color} $initials-background [null] - The background color used for avatars of type initials. +/// @param {Color} $initials-color [null] - The text color used for avatars of type initials. +/// @param {Color} $image-background [null] - The background color used for avatars of type image. +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires text-contrast -/// @requires igx-color /// @requires extend /// /// @example scss Change the background and icon colors in icon avatars @@ -30,7 +33,8 @@ $initials-color: null, $image-background: null ) { - $theme: apply-palette(map-get($schema, 'igx-avatar'), $palette); + $name: 'igx-avatar'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($icon-color) and $icon-background { $icon-color: text-contrast($icon-background); @@ -41,6 +45,7 @@ } @return extend($theme, ( + name: $name, palette: $palette, icon-background: $icon-background, icon-color: $icon-color, diff --git a/projects/igniteui-angular/src/lib/core/styles/components/badge/_badge-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/badge/_badge-theme.scss index 0ab4500bfe4..4104cabd459 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/badge/_badge-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/badge/_badge-theme.scss @@ -9,15 +9,18 @@ /// will be assigned automatically to a contrasting color. /// /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $icon-color [#fff] - The icon color used. -/// @param {Color} $text-color [#fff] - The text color used. -/// @param {Color} $border-color [#fff] - The border color used. -/// @param {Color} $background-color [primary 500] - The background color used. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// @param {Color} $icon-color [null] - The icon color used. +/// @param {Color} $text-color [null] - The text color used. +/// @param {Color} $border-color [null] - The border color used. +/// @param {Color} $background-color [null] - The background color used. /// @param {Bool} $disable-shadow [true] - Sets the badge shadow visibility. /// @param {Bool} $disable-border [true] - Sets the badge border visibility. /// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color /// @requires igx-elevation /// @requires text-contrast /// @requires rem @@ -42,10 +45,11 @@ $disable-shadow: true, $disable-border: true ) { + $name: 'igx-badge'; $badge-shadow: if($disable-shadow == true, none, igx-elevation($elevations, 1)); $border-width: if($disable-border == true, 0, rem(1px)); - $theme: apply-palette(map-get($schema, 'igx-badge'), $palette); + $theme: apply-palette(map-get($schema, $name), $palette); @if not($icon-color) and $background-color { $icon-color: text-contrast($background-color); @@ -56,6 +60,7 @@ } @return extend($theme, ( + name: $name, palette: $palette, icon-color: $icon-color, text-color: $text-color, diff --git a/projects/igniteui-angular/src/lib/core/styles/components/banner/_banner-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/banner/_banner-theme.scss index ce67fa35d2f..39f4be52ca1 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/banner/_banner-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/banner/_banner-theme.scss @@ -7,11 +7,18 @@ /// If only background color is specified, text/icon color /// will be assigned automatically to a contrasting color. /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $banner-background [#FFFFFF)]- The background color used banner background. -/// @param {Color} $banner-label-color [rgba(0, 0, 0, .26)]- The color used for banner label. -/// @param {Color} $banner-border-color [rgba(0, 0, 0, .74)] - The border color used banner border. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// +/// @param {Color} $banner-background [null]- The background color used banner background. +/// @param {Color} $banner-message-color [null]- The color used for banner label. +/// @param {Color} $banner-border-color [null] - The border color used banner border. +/// @param {Color} $banner-illustration-background [null] - The background color used for banner illustration. +/// @param {Color} $banner-illustration-color [null] - The color used banner illustration. +/// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires text-contrast -/// @requires igx-color /// @requires extend /// /// @example scss Change the background in banner @@ -27,13 +34,15 @@ $banner-illustration-background: null, $banner-illustration-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-banner'), $palette); + $name: 'igx-banner'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($banner-message-color) and $banner-background { $banner-message-color: text-contrast($banner-background); } @return extend($theme, ( + name: $name, palette: $palette, banner-background: $banner-background, banner-message-color: $banner-message-color, diff --git a/projects/igniteui-angular/src/lib/core/styles/components/bottom-nav/_bottom-nav-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/bottom-nav/_bottom-nav-theme.scss index f59d5767ff8..27b2ba36b2f 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/bottom-nav/_bottom-nav-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/bottom-nav/_bottom-nav-theme.scss @@ -8,12 +8,15 @@ /// If only background color is specified, /// the idle item color will be assigned automatically to a contrasting color. /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $background [#fff] - The background color used for the toast. -/// @param {Color} $idle-item-color [rgba(0, 0, 0, .62)] - The text-color used for the idle color. -/// @param {Color} $active-item-color [primary 500] - The text-color used for the active color. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// @param {Color} $background [null] - The background color used for the toast. +/// @param {Color} $idle-item-color [null] - The text-color used for the idle color. +/// @param {Color} $active-item-color [null] - The text-color used for the active color. /// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color /// @requires text-contrast /// /// @example scss Set a custom background color @@ -28,13 +31,15 @@ $idle-item-color: null, $active-item-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-bottom-nav'), $palette); + $name: 'igx-bottom-nav'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($idle-item-color) and $background { $idle-item-color: rgba(text-contrast($background), .7); } @return extend($theme, ( + name: $name, palette: $palette, background: $background, idle-item-color: $idle-item-color, @@ -62,9 +67,9 @@ $menu-height: 56px; $top-menu-shadow: igx-elevation($elevations, 8); - $bottom-menu-shadow: 0 -2px 4px -1px igx-color($palette, 'grays', 400), - 0 -4px 5px 0 igx-color($palette, 'grays', 300), - 0 -1px 10px 0 igx-color($palette, 'grays', 200); + $bottom-menu-shadow: 0 -2px 4px -1px rgba(0, 0, 0, .26), + 0 -4px 5px 0 rgba(0, 0, 0, .12), + 0 -1px 10px 0 rgba(0, 0, 0, .08); $item-min-width: 80px; $item-max-width: 168px; diff --git a/projects/igniteui-angular/src/lib/core/styles/components/button-group/_button-group-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/button-group/_button-group-theme.scss index 98ba6f43c6a..c94f05d9f46 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/button-group/_button-group-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/button-group/_button-group-theme.scss @@ -8,22 +8,25 @@ /// will be assigned automatically to a contrasting color. /// Does ___not___ apply for disabled state colors. /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $item-text-color [rgba(0, 0, 0, .62)]- The text color for button group items. -/// @param {Color} $item-background [#fff] - The background color for button group items . -/// @param {Color} $item-border-color [transparent] - The border color between button group items. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// @param {Color} $item-text-color [null]- The text color for button group items. +/// @param {Color} $item-background [null] - The background color for button group items . +/// @param {Color} $item-border-color [null] - The border color between button group items. /// -/// @param {Color} $item-hover-text-color [rgba(0, 0, 0, .74)] - The hover text color for button group items. -/// @param {Color} $item-hover-background [rgba(0, 0, 0, .26)] - The hover background color for button group items. +/// @param {Color} $item-hover-text-color [null] - The hover text color for button group items. +/// @param {Color} $item-hover-background [null] - The hover background color for button group items. /// -/// @param {Color} $disabled-text-color [rgba(0, 0, 0, .26)]- The text/icon color for a disabled item in the button group. -/// @param {Color} $disabled-background-color [rgba(0, 0, 0, .04)] - The background color for a disabled item in the button group. +/// @param {Color} $disabled-text-color [null]- The text/icon color for a disabled item in the button group. +/// @param {Color} $disabled-background-color [null] - The background color for a disabled item in the button group. /// -/// @param {Color} $item-selected-text-color [rgba(0, 0, 0, .74)]- The text color for a selected item in the button group. -/// @param {Color} $item-selected-background [rgba(0, 0, 0, .26)] - The background color for a selected item in the button group. -/// @param {Color} $item-selected-border-color [rgba(0, 0, 0, .06)] - The border color for a selected item from the button group. +/// @param {Color} $item-selected-text-color [null]- The text color for a selected item in the button group. +/// @param {Color} $item-selected-background [null] - The background color for a selected item in the button group. +/// @param {Color} $item-selected-border-color [null] - The border color for a selected item from the button group. /// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color /// @requires text-contrast /// /// @example scss Change the background, text, and border colors @@ -52,7 +55,8 @@ $item-selected-background: null, $item-selected-border-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-button-group'), $palette); + $name: 'igx-button-group'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($item-text-color) and $item-background { $item-text-color: text-contrast($item-background); @@ -87,6 +91,7 @@ } @return extend($theme, ( + name: $name, palette: $palette, item-text-color: $item-text-color, item-background: $item-background, diff --git a/projects/igniteui-angular/src/lib/core/styles/components/button/_button-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/button/_button-theme.scss index b9e3de46344..cea841af084 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/button/_button-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/button/_button-theme.scss @@ -9,42 +9,44 @@ /// will be assigned automatically to a contrasting color. /// Does ___not___ apply for disabled state colors. /// @param {Map} $palette [$default-palette] - The palette used as basis for the component theme. -/// @param {String} $button-roundness [2px]- The edge roundness (border-radius) for flat and raised buttons. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// @param {String} $button-roundness [4px]- The edge roundness (border-radius) for flat and raised buttons. /// -/// @param {Color} $flat-background [transparent] - The background color of a flat button. -/// @param {Color} $flat-text-color [secondary 500] - The idle text color of a flat button. -/// @param {Color} $flat-hover-background [5% of secondary 500] - The hover background color of a flat button. -/// @param {Color} $flat-hover-text-color [secondary 500] - The hover text color of a flat button. -/// @param {Color} $flat-focus-background [12% of secondary 400] - The focus background color of a flat button. -/// @param {Color} $flat-focus-text-color [secondary 500] - The focus text color of a flat button. +/// @param {Color} $flat-background [null] - The background color of a flat button. +/// @param {Color} $flat-text-color [null] - The idle text color of a flat button. +/// @param {Color} $flat-hover-background [null] - The hover background color of a flat button. +/// @param {Color} $flat-hover-text-color [null] - The hover text color of a flat button. +/// @param {Color} $flat-focus-background [null] - The focus background color of a flat button. +/// @param {Color} $flat-focus-text-color [null] - The focus text color of a flat button. /// -/// @param {Color} $raised-background [secondary 500] - The background color of a raised button. -/// @param {Color} $raised-text-color [igx-contrast-color of secondary 500] - The idle text color of a raised button. -/// @param {Color} $raised-hover-background [secondary 300] - The hover background of a raised button. -/// @param {Color} $raised-hover-text-color [igx-contrast-color of secondary 300] - The hover text color of a raised button. -/// @param {Color} $raised-focus-background [secondary 300] - The focus background color of a raised button. -/// @param {Color} $raised-focus-text-color [igx-contrast-color of secondary 300] - The focus text color of a raised button. +/// @param {Color} $raised-background [null] - The background color of a raised button. +/// @param {Color} $raised-text-color [null] - The idle text color of a raised button. +/// @param {Color} $raised-hover-background [null] - The hover background of a raised button. +/// @param {Color} $raised-hover-text-color [null] - The hover text color of a raised button. +/// @param {Color} $raised-focus-background [null] - The focus background color of a raised button. +/// @param {Color} $raised-focus-text-color [null] - The focus text color of a raised button. /// -/// @param {Color} $fab-background [secondary 500] - The background color of a floating action button. -/// @param {Color} $fab-text-color [igx-contrast-color of secondary 500] - The text color of a floating action button. -/// @param {Color} $fab-hover-background [secondary 300] - The hover background color of a floating action button. -/// @param {Color} $fab-hover-text-color [igx-contrast color of secondary 300] - The hover text color of a floating action button. -/// @param {Color} $fab-focus-background [secondary 300] - The focus background color of floating action button. -/// @param {Color} $fab-focus-text-color [igx-contrast color of secondary 300] - The focus text color of a floating action button. +/// @param {Color} $fab-background [null] - The background color of a floating action button. +/// @param {Color} $fab-text-color [null] - The text color of a floating action button. +/// @param {Color} $fab-hover-background [null] - The hover background color of a floating action button. +/// @param {Color} $fab-hover-text-color [null] - The hover text color of a floating action button. +/// @param {Color} $fab-focus-background [null] - The focus background color of floating action button. +/// @param {Color} $fab-focus-text-color [null] - The focus text color of a floating action button. /// -/// @param {Color} $icon-color [rgba(0, 0, 0, .74)] - The icon color of an icon button. -/// @param {Color} $icon-hover-color [rgba(0, 0, 0, .74)] - The hover icon color of an icon button. -/// @param {Color} $icon-background [transparent] - The background color of the an icon button. -/// @param {Color} $icon-hover-background [rgba(0, 0, 0, .04)] - The hover background color of an icon button. -/// @param {Color} $icon-focus-color [rgba(0, 0, 0, .74)] - The focus icon color of an icon button. -/// @param {Color} $icon-focus-background [rgba(0, 0, 0, .26)] - The focus background color an icon button. +/// @param {Color} $icon-color [null] - The icon color of an icon button. +/// @param {Color} $icon-hover-color [null] - The hover icon color of an icon button. +/// @param {Color} $icon-background [null] - The background color of the an icon button. +/// @param {Color} $icon-hover-background [null] - The hover background color of an icon button. +/// @param {Color} $icon-focus-color [null] - The focus icon color of an icon button. +/// @param {Color} $icon-focus-background [null] - The focus background color an icon button. /// -/// @param {Color} $disabled-color [rgba(0, 0, 0, .26)] - The disabled text/icon color of a button. -/// @param {Color} $disabled-background [rgba(0, 0, 0, .04)] - The disabled background color of raised, fab, or icon buttons. +/// @param {Color} $disabled-color [null] - The disabled text/icon color of a button. +/// @param {Color} $disabled-background [null] - The disabled background color of raised, fab, or icon buttons. /// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color -/// @requires igx-contrast-color /// @requires text-contrast /// /// @example scss Change the background and text colors in raised buttons @@ -91,7 +93,8 @@ $disabled-color: null, $disabled-background: null ) { - $theme: apply-palette(map-get($schema, 'igx-button'), $palette); + $name: 'igx-button'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($flat-text-color) and $flat-background { $flat-text-color: text-contrast($flat-background); @@ -174,6 +177,7 @@ } @return extend($theme, ( + name: $name, palette: $palette, button-roundness: $button-roundness, diff --git a/projects/igniteui-angular/src/lib/core/styles/components/calendar/_calendar-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/calendar/_calendar-theme.scss index 1f8c0e77453..0ab80b3d6ca 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/calendar/_calendar-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/calendar/_calendar-theme.scss @@ -14,40 +14,42 @@ /// If only background colors are specified, text/icon colors /// will be assigned automatically to a contrasting color. /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $content-background [#fff] - The main content background color. -/// @param {Color} $content-text-color [rgba(0, 0, 0, .87)] - The main content text color. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// @param {Color} $content-background [null] - The main content background color. +/// @param {Color} $content-text-color [null] - The main content text color. /// -/// @param {Color} $header-background [secondary 500] - The header background color. -/// @param {Color} $header-text-color [igx-contrast-color of secondary 500] - The header text color. +/// @param {Color} $header-background [null] - The header background color. +/// @param {Color} $header-text-color [null] - The header text color. /// -/// @param {Color} $picker-arrow-color [rgba(0, 0, 0, .74)] - The idle picker arrow color. -/// @param {Color} $picker-arrow-hover-color [secondary 500] - The picker hover arrow color. +/// @param {Color} $picker-arrow-color [null] - The idle picker arrow color. +/// @param {Color} $picker-arrow-hover-color [null] - The picker hover arrow color. /// -/// @param {Color} $picker-text-color [rgba(0, 0, 0, .74)]- The idle picker month/year color. -/// @param {Color} $picker-text-hover-color [secondary 500]- The hover picker month/year color. +/// @param {Color} $picker-text-color [null]- The idle picker month/year color. +/// @param {Color} $picker-text-hover-color [null]- The hover picker month/year color. /// -/// @param {Color} $inactive-text-color [rgba(0, 0, 0, .24)] - The text color for weekday labels and other month dates. -/// @param {Color} $weekend-text-color [rgba(0, 0, 0, .24)] - The text color for weekend days. +/// @param {Color} $inactive-text-color [null] - The text color for weekday labels and other month dates. +/// @param {Color} $weekend-text-color [null] - The text color for weekend days. /// -/// @param {Color} $year-current-text-color [secondary 500] - The text color for the current/selected year. -/// @param {Color} $month-current-text-color [secondary 500]- The text color for the current/selected month. +/// @param {Color} $year-current-text-color [null] - The text color for the current/selected year. +/// @param {Color} $month-current-text-color [null]- The text color for the current/selected month. /// -/// @param {Color} $year-hover-text-color [secondary 500] - The year hover text color. -/// @param {Color} $month-hover-text-color [secondary 500] - The month hover text color. +/// @param {Color} $year-hover-text-color [null] - The year hover text color. +/// @param {Color} $month-hover-text-color [null] - The month hover text color. /// -/// @param {Color} $date-selected-background [secondary 500] - The background color for the selected date. -/// @param {Color} $date-selected-text-color [igx-contrast-color of secondary 500] - The text color for the selected date. +/// @param {Color} $date-selected-background [null] - The background color for the selected date. +/// @param {Color} $date-selected-text-color [null] - The text color for the selected date. /// -/// @param {Color} $date-current-text-color [secondary 500] - The text color for the current date. -/// @param {Color} $date-hover-background [rgba(0, 0, 0, .08)] - The hover date background color. +/// @param {Color} $date-current-text-color [null] - The text color for the current date. +/// @param {Color} $date-hover-background [null] - The hover date background color. /// -/// @param {Color} $date-special-background [rgba(0, 0, 0, .87)] - The background color used for special dates. -/// @param {Color} $date-special-text-color [rgba(0, 0, 0, .04] - The text color used for special dates. +/// @param {Color} $date-special-background [null] - The background color used for special dates. +/// @param {Color} $date-special-text-color [null] - The text color used for special dates. /// -/// @param {Color} $date-disabled-text-color [rgba(0, 0, 0, .23)] - The text color for disabled dates. +/// @param {Color} $date-disabled-text-color [null] - The text color for disabled dates. /// -/// @requires igx-color -/// @requires igx-contrast-color +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires text-contrast /// @requires extend /// @@ -94,7 +96,8 @@ $date-disabled-text-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-calendar'), $palette); + $name: 'igx-calendar'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($content-text-color) and $content-background { $content-text-color: text-contrast($content-background); @@ -169,6 +172,7 @@ } @return extend($theme, ( + name: $name, palette: $palette, content-background: $content-background, content-text-color: $content-text-color, diff --git a/projects/igniteui-angular/src/lib/core/styles/components/card/_card-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/card/_card-theme.scss index 79234f92b0e..03f58744299 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/card/_card-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/card/_card-theme.scss @@ -7,14 +7,17 @@ /// /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $background [#fff]- The card background color. -/// @param {Color} $header-text-color [rgba(0, 0, 0, .74)] - The text color of the card title. -/// @param {Color} $subtitle-text-color [rgba(0, 0, 0, .54)] - The text color of the card subtitle. -/// @param {Color} $content-text-color [rgba(0, 0, 0, .54)] - The text color of the card content. -/// @param {Color} $actions-text-color [rgba(0, 0, 0, .54)] - The text color of the card buttons. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// @param {Color} $background [null]- The card background color. +/// @param {Color} $header-text-color [null] - The text color of the card title. +/// @param {Color} $subtitle-text-color [null] - The text color of the card subtitle. +/// @param {Color} $content-text-color [null] - The text color of the card content. +/// @param {Color} $actions-text-color [null] - The text color of the card buttons. /// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color /// @requires text-contrast /// /// @example scss Change the background and content text colors in card @@ -34,16 +37,8 @@ $content-text-color: null, $actions-text-color: null ) { - // $default-theme: ( - // name: 'igx-card', - // background: #fff, - // header-text-color: igx-color($palette, grays, 800), - // subtitle-text-color: igx-color($palette, grays, 600), - // content-text-color: igx-color($palette, grays, 600), - // actions-text-color: igx-color($palette, grays, 600) - // ); - - $theme: apply-palette(map-get($schema, 'igx-card'), $palette); + $name: 'igx-card'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($header-text-color) and $background { $header-text-color: text-contrast($background); @@ -62,6 +57,7 @@ } @return extend($theme, ( + name: $name, palette: $palette, background: $background, header-text-color: $header-text-color, diff --git a/projects/igniteui-angular/src/lib/core/styles/components/carousel/_carousel-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/carousel/_carousel-theme.scss index 56d99eab2ac..ca4fa5a3174 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/carousel/_carousel-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/carousel/_carousel-theme.scss @@ -6,17 +6,20 @@ //// /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $button-background [#fff] - The previous/next buttons idle background color. -/// @param {Color} $button-hover-background [#fff] - The previous/next buttons hover background color. -/// @param {Color} $button-arrow-color [rgba(0, 0, 0, .62)] - The previous/next buttons idle arrow color. -/// @param {Color} $button-hover-arrow-color [rgba(0, 0, 0, .87)] - The previous/next buttons hover arrow color. -/// @param {Color} $indicator-dot-color [#fff] - The active indicator dot color. -/// @param {Color} $indicator-border-color [#fff] - The idle indicator border color. -/// @param {Color} $indicator-active-border-color [#fff] - The active indicator border color. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// @param {Color} $button-background [null] - The previous/next buttons idle background color. +/// @param {Color} $button-hover-background [null] - The previous/next buttons hover background color. +/// @param {Color} $button-arrow-color [null] - The previous/next buttons idle arrow color. +/// @param {Color} $button-hover-arrow-color [null] - The previous/next buttons hover arrow color. +/// @param {Color} $indicator-dot-color [null] - The active indicator dot color. +/// @param {Color} $indicator-border-color [null] - The idle indicator border color. +/// @param {Color} $indicator-active-border-color [null] - The active indicator border color. /// @param {Bool} $disable-button-shadow [true] - Show shadow underneath the previous/next buttons. /// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color /// @requires igx-elevation /// @requires text-contrast /// @requires $elevations @@ -43,7 +46,8 @@ $disable-button-shadow: true ){ - $theme: apply-palette(map-get($schema, 'igx-carousel'), $palette); + $name: 'igx-carousel'; + $theme: apply-palette(map-get($schema, $name), $palette); $button-shadow: if($disable-button-shadow == true, none, igx-elevation($elevations, 1)); @if not($button-arrow-color) and $button-background { @@ -55,6 +59,7 @@ } @return extend($theme, ( + name: $name, palette: $palette, button-background: $button-background, button-hover-background: $button-hover-background, diff --git a/projects/igniteui-angular/src/lib/core/styles/components/checkbox/_checkbox-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/checkbox/_checkbox-theme.scss index 078d53dbd44..27af5cdcae2 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/checkbox/_checkbox-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/checkbox/_checkbox-theme.scss @@ -10,16 +10,18 @@ /// Checkbox Theme /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $label-color [rgba(0, 0, 0, .87)]- The text color used for the label text. -/// @param {Color} $empty-color [rgba(0, 0, 0, .54)] - The unchecked border color. -/// @param {Color} $fill-color [secondary 500] - The checked border and fill colors. -/// @param {Color} $tick-color [#fff] - The checked mark color. -/// @param {Color} $disabled-color [rgba(0, 0, 0, .24)] - The disabled border and fill colors. -/// @param {String} $variant ['dark'] - Determines the default color scheme - could be either 'dark' or 'light'. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// @param {Color} $label-color [null]- The text color used for the label text. +/// @param {Color} $empty-color [null] - The unchecked border color. +/// @param {Color} $fill-color [null] - The checked border and fill colors. +/// @param {Color} $tick-color [null] - The checked mark color. +/// @param {Color} $disabled-color [null] - The disabled border and fill colors. /// Set to light when the surrounding area is dark. /// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color /// /// @example scss Change the checked fill color /// $my-checkbox-theme: igx-checkbox-theme($fill-color: magenta); @@ -33,42 +35,19 @@ $empty-color: null, $fill-color: null, $tick-color: null, - $disabled-color: null, - $variant: 'dark' + $disabled-color: null ) { $name: 'igx-checkbox'; - - $dark-theme: ( - name: $name, - label-color: igx-color($palette, 'grays', 900), - empty-color: igx-color($palette, 'grays', 600), - fill-color: igx-color($palette, 'secondary', 500), - tick-color: #fff, - disabled-color: igx-color($palette, 'grays', 400) - ); - - $light-theme: ( - name: $name, - label-color: #fff, - empty-color: rgba(255, 255, 255, .7), - fill-color: igx-color($palette, 'secondary', 500), - tick-color: #000, - disabled-color: rgba(255, 255, 255, .3) - ); - - $theme: map-get(( - dark: apply-palette(map-get($schema, 'igx-checkbox'), $palette), - light: $light-theme - ), $variant); + $theme: apply-palette(map-get($schema, $name), $palette); @return extend($theme, ( + name: $name, palette: $palette, label-color: $label-color, empty-color: $empty-color, fill-color: $fill-color, tick-color: $tick-color, - disabled-color: $disabled-color, - variant: $variant + disabled-color: $disabled-color )); } diff --git a/projects/igniteui-angular/src/lib/core/styles/components/chip/_chip-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/chip/_chip-theme.scss index de9657915c2..e7896fba130 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/chip/_chip-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/chip/_chip-theme.scss @@ -6,33 +6,34 @@ /// Chip Theme /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $roundness [32px] - The chip roundness. +/// @param {Color} $roundness [null] - The chip roundness. /// -/// @param {Color} $text-color [rgba(0, 0, 0, .74)] - The chip text color. -/// @param {Color} $background [rgba(0, 0, 0, .04)] - The chip background color. -/// @param {Color} $border-color [transparent] - The chip border color. +/// @param {Color} $text-color [null] - The chip text color. +/// @param {Color} $background [null] - The chip background color. +/// @param {Color} $border-color [null] - The chip border color. /// -/// @param {Color} $hover-text-color [rgba(0, 0, 0, .74)] - The chip text hover color. -/// @param {Color} $hover-background [rgba(0, 0, 0, .08)] - The chip hover background color. -/// @param {Color} $hover-border-color [transparent] - The chip hover border color. +/// @param {Color} $hover-text-color [null] - The chip text hover color. +/// @param {Color} $hover-background [null] - The chip hover background color. +/// @param {Color} $hover-border-color [null] - The chip hover border color. /// -/// @param {color} $selected-text-color [igx-contrast-color of secondary 500] - The selected chip text color. -/// @param {color} $selected-background [secondary 500] - The selected chip background color. -/// @param {color} $selected-border-color [primary 300] The selected chip border color. +/// @param {color} $selected-text-color [null] - The selected chip text color. +/// @param {color} $selected-background [null] - The selected chip background color. +/// @param {color} $selected-border-color [null] The selected chip border color. /// -/// @param {color} $hover-selected-text-color [igx-contrast-color of secondary 300] - The selected chip hover text color. -/// @param {color} $hover-selected-background [secondary 300] - The selected chip hover background color. -/// @param {color} $hover-selected-border-color [secondary 900] - The selected chip hover border color. +/// @param {color} $hover-selected-text-color [null] - The selected chip hover text color. +/// @param {color} $hover-selected-background [null] - The selected chip hover background color. +/// @param {color} $hover-selected-border-color [null] - The selected chip hover border color. /// -/// @param {color} $focus-selected-text-color [igx-contrast-color of secondary 300] - The selected chip text focus color. -/// @param {color} $focus-selected-background [secondary 300] - The selected chip focus background color. -/// @param {color} $focus-selected-border-color [secondary 900] - The selected chip focus border color. +/// @param {color} $focus-selected-text-color [null] - The selected chip text focus color. +/// @param {color} $focus-selected-background [null] - The selected chip focus background color. +/// @param {color} $focus-selected-border-color [null] - The selected chip focus border color. /// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend /// @requires text-contrast -/// @requires igx-color /// @requires luminance -/// @requires hexrgba /// /// @example scss Change the background color /// $my-chip-theme: igx-chip-theme($background: black); @@ -46,6 +47,7 @@ $text-color: null, $background: null, $border-color: null, + $ghost-background: null, $hover-text-color: null, $hover-background: null, @@ -67,7 +69,8 @@ $focus-selected-background: null, $focus-selected-border-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-chip'), $palette); + $name: 'igx-chip'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($text-color) and $background { $text-color: text-contrast($background); @@ -158,12 +161,14 @@ } @return extend($theme, ( + name: $name, palette: $palette, roundness: $roundness, text-color: $text-color, background: $background, border-color: $border-color, + ghost-background: $ghost-background, hover-text-color: $hover-text-color, hover-background: $hover-background, @@ -477,7 +482,12 @@ z-index: 10; box-shadow: igx-elevation($elevations, 8); overflow: hidden; - background: hexrgba(--var($theme, 'focus-background')) !important; + background: --var($theme, 'ghost-background'); + + &:hover, + &:focus { + background: --var($theme, 'ghost-background'); + } } %igx-chip__ghost--cosy { diff --git a/projects/igniteui-angular/src/lib/core/styles/components/column-hiding/_column-hiding-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/column-hiding/_column-hiding-theme.scss index 1ae32d5cb4a..656cca6398e 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/column-hiding/_column-hiding-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/column-hiding/_column-hiding-theme.scss @@ -10,8 +10,10 @@ /// @param {Color} $title-color [primary 500]- The text color used for the title of the list. /// @param {Color} $background-color [transparent] - The background color of the panel. /// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color /// @requires text-contrast /// /// @example scss Change the title color @@ -26,13 +28,15 @@ $title-color: null, $background-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-column-hiding'), $palette); + $name: 'igx-column-hiding'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($title-color) and $background-color { $title-color: text-contrast($background-color); } @return extend($theme, ( + name: $name, palette: $palette, title-color: $title-color, background-color: $background-color diff --git a/projects/igniteui-angular/src/lib/core/styles/components/combo/_combo-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/combo/_combo-theme.scss index 5bae989394e..fac84fecbf6 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/combo/_combo-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/combo/_combo-theme.scss @@ -5,13 +5,16 @@ /// @author Simeon Simeonoff //// +/// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// @param {Color} $search-separator-border-color [null] - The combo search box separator color. +/// @param {Color} $empty-list-placeholder-color [null] - The combo placeholder text color. +/// @param {Color} $empty-list-background [null] - The combo list background color. /// -/// @param {Color} $search-separator-border-color [rgba(0, 0, 0, .12)] - The combo search box separator color. -/// @param {Color} $empty-list-placeholder-color [rgba(0, 0, 0, .26)] - The combo placeholder text color. -/// @param {Color} $empty-list-background [#fff] - The combo list background color. -/// -/// @requires text-contrast -/// @requires igx-color +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette +/// @requires extend @function igx-combo-theme( $palette: $default-palette, $schema: $light-schema, @@ -19,9 +22,11 @@ $empty-list-placeholder-color: null, $empty-list-background: null ) { - $theme: apply-palette(map-get($schema, 'igx-combo'), $palette); + $name: 'igx-combo'; + $theme: apply-palette(map-get($schema, $name), $palette); @return extend($theme, ( + name: $name, palette: $palette, search-separator-border-color: $search-separator-border-color, empty-list-placeholder-color: $empty-list-placeholder-color, diff --git a/projects/igniteui-angular/src/lib/core/styles/components/date-picker/_date-picker-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/date-picker/_date-picker-theme.scss index 78f50267d56..2b407f6949c 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/date-picker/_date-picker-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/date-picker/_date-picker-theme.scss @@ -7,14 +7,19 @@ /// Date Picker /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. /// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend @function igx-date-picker-theme( $palette: $default-palette, $schema: $light-schema ) { - $theme: apply-palette(map-get($schema, 'igx-date-picker'), $palette); - @return extend($theme, (palette: $palette)); + $name: 'igx-date-picker'; + $theme: apply-palette(map-get($schema, $name), $palette); + @return extend($theme, (name: $name, palette: $palette)); } /// @param {Map} $theme - The theme used to style the component. diff --git a/projects/igniteui-angular/src/lib/core/styles/components/dialog/_dialog-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/dialog/_dialog-theme.scss index 4f5475b1fed..3ea5f9f41d6 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/dialog/_dialog-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/dialog/_dialog-theme.scss @@ -7,13 +7,16 @@ /// Dialog Theme /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $background [#fff] - The dialog background color. -/// @param {Color} $title-color [rgba(0, 0, 0, .74)] - The dialog title text color. -/// @param {Color} $message-color [rgba(0, 0, 0, .54)] - The dialog message text color. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// @param {Color} $background [null] - The dialog background color. +/// @param {Color} $title-color [null] - The dialog title text color. +/// @param {Color} $message-color [null] - The dialog message text color. /// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend /// @requires text-contrast -/// @requires igx-color /// /// @example scss Change the background color /// $my-dialog-theme: igx-dialog-theme($background: black); @@ -27,7 +30,8 @@ $title-color: null, $message-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-dialog'), $palette); + $name: 'igx-dialog'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($title-color) and $background{ $title-color: text-contrast($background); @@ -38,6 +42,7 @@ } @return extend($theme, ( + name: $name, palette: $palette, background: $background, title-color: $title-color, diff --git a/projects/igniteui-angular/src/lib/core/styles/components/drop-down/_drop-down-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/drop-down/_drop-down-theme.scss index 24f4f5c2d78..82c97bcbdbe 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/drop-down/_drop-down-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/drop-down/_drop-down-theme.scss @@ -4,32 +4,38 @@ /// @author Marin Popov /// @author Simeon Simeonoff //// -/// @param {Color} $background-color [#fff] - The drop-down background color. -/// @param {Color} $header-text-color [secondary 500] - The drop-down header text color. + +/// Generates a drop-down theme. +/// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// @param {Color} $background-color [null] - The drop-down background color. +/// @param {Color} $header-text-color [null] - The drop-down header text color. /// -/// @param {Color} $item-text-color [rgba(0, 0, 0, .74)] - The drop-down text color. -/// @param {Color} $hover-item-text-color [rgba(0, 0, 0, .74)] - The drop-down hover text color. +///@param {Color} $item-text-color [null] - The drop-down text color. +/// @param {Color} $hover-item-text-color [null] - The drop-down hover text color. /// -/// @param {Color} $hover-item-background [rgba(0, 0, 0, .04)] - The drop-down hover item background color. +/// @param {Color} $hover-item-background [null] - The drop-down hover item background color. /// -/// @param {Color} $focused-item-background [rgba(0, 0, 0, .04)] - The drop-down focused item background color. -/// @param {Color} $focused-item-text-color [rgba(0, 0, 0, .74)] - The drop-down focused item text color. +/// @param {Color} $focused-item-background [null] - The drop-down focused item background color. +/// @param {Color} $focused-item-text-color [null] - The drop-down focused item text color. /// -/// @param {Color} $selected-item-background [secondary 500] - The drop-down selected item background color. -/// @param {Color} $selected-item-text-color [igx-contrast-color of secondary 500] - The drop-down selected item text color. +/// @param {Color} $selected-item-background [null] - The drop-down selected item background color. +/// @param {Color} $selected-item-text-color [null] - The drop-down selected item text color. /// -/// @param {Color} $selected-hover-item-background [secondary 600] - The drop-down selected item hover background color. -/// @param {Color} $selected-hover-item-text-color [igx-contrast-color of secondary 600] - The drop-down selected item hover text color. +/// @param {Color} $selected-hover-item-background [null] - The drop-down selected item hover background color. +/// @param {Color} $selected-hover-item-text-color [null] - The drop-down selected item hover text color. /// -/// @param {Color} $selected-focus-item-background [secondary 600] - The drop-down selected item focus background color. -/// @param {Color} selected-focus-item-text-color [igx-contrast-color of secondary 600] - The drop-down selected item focus text color. +/// @param {Color} $selected-focus-item-background [null] - The drop-down selected item focus background color. +/// @param {Color} selected-focus-item-text-color [null] - The drop-down selected item focus text color. /// -/// @param {Color} $disabled-item-background [transparent] - The drop-down disabled item background color. -/// @param {Color} $disabled-item-text-color [rgba(0, 0, 0, .38)] - The drop-down disabled item text color. - +/// @param {Color} $disabled-item-background [null] - The drop-down disabled item background color. +/// @param {Color} $disabled-item-text-color [null] - The drop-down disabled item text color. +/// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette +/// @requires extend /// @requires text-contrast -/// @requires igx-color -/// @requires igx-contrast-color @function igx-drop-down-theme( $palette: $default-palette, $schema: $light-schema, @@ -40,24 +46,25 @@ $item-text-color: null, $hover-item-text-color: null, - $hover-item-background:null, + $hover-item-background: null, - $focused-item-background:null, - $focused-item-text-color:null, + $focused-item-background: null, + $focused-item-text-color: null, - $selected-item-background:null, - $selected-item-text-color:null, + $selected-item-background: null, + $selected-item-text-color: null, - $selected-hover-item-background:null, - $selected-hover-item-text-color:null, + $selected-hover-item-background: null, + $selected-hover-item-text-color: null, - $selected-focus-item-background:null, - $selected-focus-item-text-color:null, + $selected-focus-item-background: null, + $selected-focus-item-text-color: null, - $disabled-item-background:null, - $disabled-item-text-color:null + $disabled-item-background: null, + $disabled-item-text-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-drop-down'), $palette); + $name: 'igx-drop-down'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($item-text-color) and $background-color { $item-text-color: text-contrast($background-color); @@ -111,8 +118,8 @@ $header-text-color: rgba(text-contrast($background-color), .7); } - @return extend($theme, - ( + @return extend($theme, ( + name: $name, palette: $palette, background-color: $background-color, header-text-color: $header-text-color, diff --git a/projects/igniteui-angular/src/lib/core/styles/components/expansion-panel/_expansion-panel-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/expansion-panel/_expansion-panel-theme.scss index 803cd6c6697..bfa51f99422 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/expansion-panel/_expansion-panel-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/expansion-panel/_expansion-panel-theme.scss @@ -6,24 +6,26 @@ /// Expansion panel Theme /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $header-background [rgba()] - The panel header background color. -/// @param {Color} $header-focus-background [rgba()] - The panel header focus background color. -/// @param {Color} $header-title-color [rgba()] - The panel header title text color. -/// @param {Color} $header-description-color [rgba()] - The panel header description text color. -/// @param {Color} $header-icon-color [rgba()] - The panel header icon color. -/// @param {Color} $body-color [rgba()] - The panel body text color. -/// @param {Color} $body-background [rgba()] - The panel body background color. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// @param {Color} $header-background [null] - The panel header background color. +/// @param {Color} $header-focus-background [null] - The panel header focus background color. +/// @param {Color} $header-title-color [null] - The panel header title text color. +/// @param {Color} $header-description-color [null] - The panel header description text color. +/// @param {Color} $header-icon-color [null] - The panel header icon color. +/// @param {Color} $body-color [null] - The panel body text color. +/// @param {Color} $body-background [null] - The panel body background color. +/// @param {Color} $disabled-color [null] - The panel body disabled text color. /// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend /// @requires text-contrast -/// @requires igx-color /// /// @example scss Change the background color /// $my-expansion-panel-theme: igx-expansion-panel($header-background: black); /// // Pass the theme to the igx-expansion-panel component mixin /// @include igx-expansion-panel($my-igx-expansion-panel-theme); - - @function igx-expansion-panel-theme( $palette: $default-palette, $schema: $light-schema, @@ -36,9 +38,9 @@ $body-color: null, $body-background: null, $disabled-color: null - ) { - $theme: apply-palette(map-get($schema, 'igx-expansion-panel'), $palette); + $name: 'igx-expansion-panel'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($header-title-color) and $header-background { $header-title-color: text-contrast($header-background); @@ -56,8 +58,8 @@ $body-color: text-contrast($body-background); } - // if statement place @return extend($theme, ( + name: $name, palette: $palette, header-background: $header-background, header-focus-background: $header-focus-background, diff --git a/projects/igniteui-angular/src/lib/core/styles/components/grid-filtering/_grid-filtering-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/grid-filtering/_grid-filtering-theme.scss index 966c048a1d1..fb7b80448b7 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/grid-filtering/_grid-filtering-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/grid-filtering/_grid-filtering-theme.scss @@ -7,22 +7,24 @@ /// Grid Filtering Theme /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $toggle-icon-color [inherit] - The idle toggle icon color. -/// @param {Color} $toggle-icon-hover-color [#fff] - The hover toggle icon color. -/// @param {Color} $toggle-icon-active-color [igx-contrast color of secondary 500] - The active toggle icon color. -/// @param {Color} $toggle-icon-filtered-color [secondary 500] - The filtered toggle icon color. -/// @param {Color} $toggle-background [transparent] - The idle toggle background color. -/// @param {Color} $toggle-hover-background [rgba(0, 0, 0, .12)] - The hover toggle background color. -/// @param {Color} $toggle-active-background [secondary 500] - The active toggle background color. -/// @param {Color} $toggle-filtered-background [transparent] - The filtered toggle background color. -/// @param {Color} $menu-background [#fff] - The idle menu background color. -/// @param {Color} $menu-text-color [rgba(0, 0, 0, .87)] - The idle menu text color. -/// @param {Color} $menu-button-text-color [secondary 500] - The menu button text color. -/// @param {Color} $menu-button-disabled-text-color [inherit] - The menu disabled button text color. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// @param {Color} $toggle-icon-color [null] - The idle toggle icon color. +/// @param {Color} $toggle-icon-hover-color [null] - The hover toggle icon color. +/// @param {Color} $toggle-icon-active-color [null] - The active toggle icon color. +/// @param {Color} $toggle-icon-filtered-color [null] - The filtered toggle icon color. +/// @param {Color} $toggle-background [null] - The idle toggle background color. +/// @param {Color} $toggle-hover-background [null] - The hover toggle background color. +/// @param {Color} $toggle-active-background [null] - The active toggle background color. +/// @param {Color} $toggle-filtered-background [null] - The filtered toggle background color. +/// @param {Color} $menu-background [null] - The idle menu background color. +/// @param {Color} $menu-text-color [null] - The idle menu text color. +/// @param {Color} $menu-button-text-color [null] - The menu button text color. +/// @param {Color} $menu-button-disabled-text-color [null] - The menu disabled button text color. /// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color -/// @requires igx-contrast-color /// @requires text-contrast /// /// @example scss Change the menu background color @@ -50,7 +52,8 @@ $menu-button-text-color: null, $menu-button-disabled-text-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-grid-filtering'), $palette); + $name: 'igx-grid-filtering'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($menu-text-color) and $menu-background { $menu-text-color: text-contrast($menu-background); @@ -73,6 +76,7 @@ } @return extend($theme, ( + name: $name, palette: $palette, toggle-icon-color: $toggle-icon-color, diff --git a/projects/igniteui-angular/src/lib/core/styles/components/grid-paginator/_grid-paginator-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/grid-paginator/_grid-paginator-theme.scss index e55cd97470f..86507bc0210 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/grid-paginator/_grid-paginator-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/grid-paginator/_grid-paginator-theme.scss @@ -11,9 +11,10 @@ /// @param {Color} $background-color [rgba(0, 0, 0, .04)] - The background color of the paging panel. /// @param {Color} $border-color [rgba(0, 0, 0, .26)] - The border color of the paging panel. /// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color -/// @requires hexrgba /// /// @example scss Change the stripes color /// $my-grid-paginator-theme: igx-grid-paginator-theme( @@ -29,9 +30,11 @@ $background-color: null, $border-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-grid-paginator'), $palette); + $name: 'igx-grid-paginator'; + $theme: apply-palette(map-get($schema, $name), $palette); @return extend($theme, ( + name: $name, palette: $palette, text-color: $text-color, background-color: $background-color, @@ -55,7 +58,7 @@ grid-row: 7; padding: rem(5px) 0; font-size: 12px; - border-top: 1px dotted --var($theme, 'border-color'); + border-top: 1px solid --var($theme, 'border-color'); z-index: 1; &:empty { diff --git a/projects/igniteui-angular/src/lib/core/styles/components/grid-summary/_grid-summary-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/grid-summary/_grid-summary-theme.scss index dc6fec86f17..3b77824b955 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/grid-summary/_grid-summary-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/grid-summary/_grid-summary-theme.scss @@ -5,20 +5,24 @@ /// @author Marin Popov //// -/// Grid Summary Theme /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $background-color [#f4f4f4] - The summaries background color is inherited form igx-grid__tfoot -/// @param {Color} $label-color [primary 500] - The summaries label color. -/// @param {Color} $result-color [rgba(0, 0, 0, .74)] - The summaries value/result color. -/// @param {Color} $border-color [rgba(0, 0, 0, .26)] - The summaries border color. -/// @param {Color} $pinned-border-width [2px] - The border width of the summary panel. -/// @param {Color} $pinned-border-style [solid] - The border style of the summary panel. -/// @param {Color} $pinned-border-color [rgba(0, 0, 0, .26)] - The border color of the summary panel. -/// @param {Color} $inactive-color [rgba(0, 0, 0, .26)] - The summaries inactive label color. -/// @param {Color} $label-hover-color [primary 700] - The summaries hover label color. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. /// +/// @param {Color} $background-color [null] - The summaries background color is inherited form igx-grid__tfoot +/// @param {Color} $label-color [null] - The summaries label color. +/// @param {Color} $result-color [null] - The summaries value/result color. +/// @param {Color} $border-color [null] - The summaries border color. +/// @param {Color} $pinned-border-width [null] - The border width of the summary panel. +/// @param {Color} $pinned-border-style [null] - The border style of the summary panel. +/// @param {Color} $pinned-border-color [null] - The border color of the summary panel. +/// @param {Color} $inactive-color [null] - The summaries inactive label color. +/// @param {Color} $label-hover-color [null] - The summaries hover label color. +/// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color +/// @requires text-contrast /// /// @example scss Change the summaries background nad labels color /// $my-summary-theme: igx-grid-summary-theme( @@ -41,7 +45,8 @@ $inactive-color: null, $label-hover-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-grid-summary'), $palette); + $name: 'igx-grid-summary'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($result-color) and $background-color { $result-color: text-contrast($background-color); @@ -56,6 +61,7 @@ } @return extend($theme, ( + name: $name, palette: $palette, background-color: $background-color, label-color: $label-color, @@ -71,7 +77,6 @@ /// @param {Map} $theme - The theme used to style the component. /// @requires {mixin} igx-root-css-vars -/// @requires igx-color /// @requires {mixin} ellipsis /// @requires rem /// @requires --var @@ -99,7 +104,7 @@ display: flex; flex-direction: column; flex: 1 1 0%; - border-left: 1px dotted --var($theme, 'border-color'); + border-left: 1px solid --var($theme, 'border-color'); padding: map-get($summary-padding, 'comfortable'); background: --var($theme, 'background-color'); overflow: hidden; @@ -131,7 +136,7 @@ } %igx-grid-summary--empty { - border-left: 1px dotted --var($theme, 'border-color'); + border-left: 1px solid --var($theme, 'border-color'); } %igx-grid-summary__item { diff --git a/projects/igniteui-angular/src/lib/core/styles/components/grid-toolbar/_grid-toolbar-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/grid-toolbar/_grid-toolbar-theme.scss index 98da433eb28..7760910dca9 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/grid-toolbar/_grid-toolbar-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/grid-toolbar/_grid-toolbar-theme.scss @@ -4,23 +4,30 @@ /// @author Marin Popov /// @author Simeon Simeonoff //// -/// @param {Color} $background-color [rgba(0, 0, 0, .02)] - The toolbar background color. -/// @param {Color} $title-text-color [rgba(0, 0, 0, .54)] - The toolbar title text color. -/// @param {Color} $button-background [#f0f0f0] - The toolbar button background color. -/// @param {Color} $button-text-color [rgba(0, 0, 0, .54)] - The toolbar button text color. -/// @param {Color} $button-hover-background [rgba(0, 0, 0, .04)] - The toolbar button hover background color. -/// @param {Color} $button-hover-text-color [rgba(0, 0, 0, .54)] - The toolbar button hover text color. -/// @param {Color} $button-focus-background [rgba(0, 0, 0, .04)] - The toolbar button focus background color. -/// @param {Color} $button-focus-text-color [rgba(0, 0, 0, .54)] - The toolbar button focus text color. -/// @param {Color} $dropdown-background [#fff] - The toolbar drop-down background color. -/// @param {Color} $item-text-color [rgba(0, 0, 0, .54)] - The toolbar drop-down item text color. -/// @param {Color} $item-hover-background [rgba(0, 0, 0, .04)] - The toolbar drop-down item hover background color. -/// @param {Color} $item-hover-text-color [rgba(0, 0, 0, .54)] - The toolbar drop-down item hover text color. -/// @param {Color} $item-focus-background [rgba(0, 0, 0, .04)] - The toolbar drop-down item focus background color. -/// @param {Color} $item-focus-text-color [rgba(0, 0, 0, .54)] - The toolbar drop-down item focus text color. + +/// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// +/// @param {Color} $background-color [null] - The toolbar background color. +/// @param {Color} $title-text-color [null] - The toolbar title text color. +/// @param {Color} $button-background [null] - The toolbar button background color. +/// @param {Color} $button-text-color [null] - The toolbar button text color. +/// @param {Color} $button-hover-background [null] - The toolbar button hover background color. +/// @param {Color} $button-hover-text-color [null] - The toolbar button hover text color. +/// @param {Color} $button-focus-background [null] - The toolbar button focus background color. +/// @param {Color} $button-focus-text-color [null] - The toolbar button focus text color. +/// @param {Color} $dropdown-background [null] - The toolbar drop-down background color. +/// @param {Color} $item-text-color [null] - The toolbar drop-down item text color. +/// @param {Color} $item-hover-background [null] - The toolbar drop-down item hover background color. +/// @param {Color} $item-hover-text-color [null] - The toolbar drop-down item hover text color. +/// @param {Color} $item-focus-background [null] - The toolbar drop-down item focus background color. +/// @param {Color} $item-focus-text-color [null] - The toolbar drop-down item focus text color. /// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color +/// @requires text-contrast /// /// @example scss Change the toolbar background color /// $my-toolbar-theme: igx-grid-toolbar-theme( @@ -50,7 +57,8 @@ $item-focus-background: null, $item-focus-text-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-grid-toolbar'), $palette); + $name: 'igx-grid-toolbar'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($title-text-color) and $background-color { $title-text-color: text-contrast($background-color); @@ -92,6 +100,7 @@ } @return extend($theme, ( + name: $name, palette: $palette, background-color: $background-color, diff --git a/projects/igniteui-angular/src/lib/core/styles/components/grid/_grid-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/grid/_grid-theme.scss index e90341788ce..87452d99ada 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/grid/_grid-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/grid/_grid-theme.scss @@ -6,61 +6,65 @@ //// /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $header-background [#fefefe] - The table header background color. -/// @param {Color} $header-text-color [rgba(0, 0, 0, .54)] - The table header text color. -/// @param {String} $header-border-width [1px] - The border width used for header borders. -/// @param {String} $header-border-style [solid] - The border style used for header borders. -/// @param {Color} $header-border-color [rgba(0, 0, 0, .08)] - The color used for header borders. -/// @param {Color} $ghost-header-text-color [rgba(0, 0, 0, .54)] - The dragged header text color. -/// @param {Color} $ghost-header-icon-color [rgba(0, 0, 0, .38)] - The dragged header icon color. -/// @param {Color} $ghost-header-background [#fff] - The dragged header background color. -/// @param {Color} $content-background [#fff] - The table body background color. -/// @param {Color} $content-text-color [rgba(0, 0, 0, .74)] - The table body text color. -/// @param {Color} $row-odd-background [#fff] - The background color of odd rows. -/// @param {Color} $row-even-background [#fff] - The background color of even rows. -/// @param {Color} $row-odd-text-color [rgba(0, 0, 0, .74)] - The text color of odd rows. -/// @param {Color} $row-even-text-color [rgba(0, 0, 0, .74)] - The text color of even rows. -/// @param {Color} $row-selected-background [rgba(0, 0, 0, .74)] - The selected row background color. -/// @param {Color} $row-selected-text-color [igx-contrast-color of rgba(0, 0, 0, .74)] - The selected row text color. -/// @param {Color} $row-hover-background [#eaeaea] - The hover row background color. -/// @param {Color} $row-hover-text-color [igx-contrast-color of rgba(0, 0, 0, .08)] - The hover row text color. -/// @param {Color} $row-border-color [rgba(0, 0, 0, .12)] - The row bottom border color. -/// @param {String} $pinned-border-width [2px] - The border width of the pinned border. -/// @param {String} $pinned-border-style [solid] - The CSS border style of the pinned border. -/// @param {Color} $pinned-border-color [rgba(0, 0, 0, .24)] - The color of the pinned border. -/// @param {Color} $cell-selected-background [primary 500] - The selected cell background color. -/// @param {Color} $cell-selected-text-color [igx-contrast-color of primary 500] - The selected cell text color. -/// @param {Color} $resize-line-color [secondary 500] - The table header resize line color. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. /// -/// @param {Color} $grouparea-background [#f4f4f4] - The grid group area background color. +/// @param {Color} $header-background [null] - The table header background color. +/// @param {Color} $header-text-color [null] - The table header text color. +/// @param {String} $header-border-width [null] - The border width used for header borders. +/// @param {String} $header-border-style [null] - The border style used for header borders. +/// @param {Color} $header-border-color [null] - The color used for header borders. +/// @param {Color} $ghost-header-text-color [null] - The dragged header text color. +/// @param {Color} $ghost-header-icon-color [null] - The dragged header icon color. +/// @param {Color} $ghost-header-background [null] - The dragged header background color. +/// @param {Color} $content-background [null] - The table body background color. +/// @param {Color} $content-text-color [null] - The table body text color. +/// @param {Color} $row-odd-background [null] - The background color of odd rows. +/// @param {Color} $row-even-background [null] - The background color of even rows. +/// @param {Color} $row-odd-text-color [null] - The text color of odd rows. +/// @param {Color} $row-even-text-color [null] - The text color of even rows. +/// @param {Color} $row-selected-background [null] - The selected row background color. +/// @param {Color} $row-selected-text-color [null] - The selected row text color. +/// @param {Color} $row-hover-background [null] - The hover row background color. +/// @param {Color} $row-hover-text-color [null] - The hover row text color. +/// @param {Color} $row-border-color [null] - The row bottom border color. +/// @param {String} $pinned-border-width [null] - The border width of the pinned border. +/// @param {String} $pinned-border-style [null] - The CSS border style of the pinned border. +/// @param {Color} $pinned-border-color [null] - The color of the pinned border. +/// @param {Color} $cell-selected-background [null] - The selected cell background color. +/// @param {Color} $cell-selected-text-color [null] - The selected cell text color. +/// @param {Color} $resize-line-color [null] - The table header resize line color. /// -/// @param {Color} $group-row-background [#f4f4f4] - The grid group row background color. -/// @param {Color} $group-row-selected-background [rgb(234, 234, 234)] - The drop area background on drop color. -/// @param {Color} $active-expand-icon-color [rgba(0, 0, 0, .54)] - The drop area background on drop color. -/// @param {Color} $active-expand-icon-hover-color [#09f] - The drop area background on drop color. -/// @param {Color} $group-label-column-name-text [primary 500] - The grid group row column name text color. -/// @param {Color} $group-label-icon [primary 500] - The grid group row icon color. -/// @param {Color} $group-label-text [rgba(0, 0, 0, .74)] - The grid group row text color. +/// @param {Color} $grouparea-background [null] - The grid group area background color. /// -/// @param {Color} $expand-all-icon-color [rgba(0, 0, 0, .54)] - The grid header expand all group rows icon color. -/// @param {Color} $expand-all-icon-hover-color [rgba(0, 0, 0, .74)] - The grid header expand all group rows icon hover color. -/// @param {Color} $expand-icon-color [rgba(0, 0, 0, .54)] - The grid row expand icon color. -/// @param {Color} $expand-icon-hover-color [primary 500] - The grid row expand icon hover color. -/// @param {Color} $group-count-background [rgba(0, 0, 0, .08)] - The grid group row cont badge background color. -/// @param {Color} $group-count-text-color [rgba(0, 0, 0, .54)] - The grid group row cont badge text color. -/// @param {Color} $drop-area-text-color [rgba(0, 0, 0, .54)] - The drop area text color. -/// @param {Color} $drop-area-icon-color [rgba(0, 0, 0, .38)] - The drop area icon color. -/// @param {Color} $drop-area-background [rgba(0, 0, 0, .04)] - The drop area background color. -/// @param {Color} $drop-area-on-drop-background [rgba(0, 0, 0, .08)] - The drop area background on drop color. -/// @param {Color} $tree-filtered-text-color [rgba(0, 0, 0, .04)] - grouping row background color on focus. +/// @param {Color} $group-row-background [null] - The grid group row background color. +/// @param {Color} $group-row-selected-background [null] - The drop area background on drop color. +/// @param {Color} $active-expand-icon-color [null] - The drop area background on drop color. +/// @param {Color} $active-expand-icon-hover-color [null] - The drop area background on drop color. +/// @param {Color} $group-label-column-name-text [null] - The grid group row column name text color. +/// @param {Color} $group-label-icon [null] - The grid group row icon color. +/// @param {Color} $group-label-text [null] - The grid group row text color. /// -/// @param {Color} $filtering-header-background [#fff] - The background color of the filtered column header. -/// @param {Color} $filtering-header-text-color [rgba(0, 0, 0, .74)] - The text color color of the filtered column header. -/// @param {Color} $filtering-row-background [#fff] - The background color of the filtering row. -/// @param {Color} $filtering-row-text-color [rgba(0, 0, 0, .74)] - The text-color color of the filtering row. +/// @param {Color} $expand-all-icon-color [null] - The grid header expand all group rows icon color. +/// @param {Color} $expand-all-icon-hover-color [null] - The grid header expand all group rows icon hover color. +/// @param {Color} $expand-icon-color [null] - The grid row expand icon color. +/// @param {Color} $expand-icon-hover-color [null] - The grid row expand icon hover color. +/// @param {Color} $group-count-background [null] - The grid group row cont badge background color. +/// @param {Color} $group-count-text-color [null] - The grid group row cont badge text color. +/// @param {Color} $drop-area-text-color [null] - The drop area text color. +/// @param {Color} $drop-area-icon-color [null] - The drop area icon color. +/// @param {Color} $drop-area-background [null] - The drop area background color. +/// @param {Color} $drop-area-on-drop-background [null] - The drop area background on drop color. +/// @param {Color} $tree-filtered-text-color [null] - grouping row background color on focus. /// -/// @requires igx-color -/// @requires igx-contrast-color +/// @param {Color} $filtering-header-background [null] - The background color of the filtered column header. +/// @param {Color} $filtering-header-text-color [null] - The text color color of the filtered column header. +/// @param {Color} $filtering-row-background [null] - The background color of the filtering row. +/// @param {Color} $filtering-row-text-color [null] - The text-color color of the filtering row. +/// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette +/// @requires luminance /// @requires text-contrast /// @requires hexrgba /// @requires extend @@ -137,7 +141,8 @@ $filtering-row-text-color: null, $tree-filtered-text-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-grid'), $palette); + $name: 'igx-grid'; + $theme: apply-palette(map-get($schema, $name), $palette); $tree-selected-filtered-row-text-color: rgba(text-contrast(map-get($theme, 'row-selected-background')), .5); $tree-selected-filtered-cell-text-color: rgba(text-contrast(map-get($theme, 'cell-selected-background')), .5); @@ -279,6 +284,7 @@ } @return extend($theme, ( + name: $name, palette: $palette, header-background: $header-background, diff --git a/projects/igniteui-angular/src/lib/core/styles/components/icon/_icon-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/icon/_icon-theme.scss index 02077e633d3..f92755fb900 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/icon/_icon-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/icon/_icon-theme.scss @@ -6,13 +6,16 @@ //// /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $color [currentColor] - The icon color. -/// @param {String} $size [24px] - The icon size. -/// @param {Color} $disabled-color [rgba(0, 0, 0, .38)] - The disabled icon color. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. /// -/// @requires igx-color +/// @param {Color} $color [null] - The icon color. +/// @param {String} $size [null] - The icon size. +/// @param {Color} $disabled-color [null] - The disabled icon color. +/// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires rem /// /// @example scss Change the icon color /// $my-icon-theme: igx-icon-theme($color: orange); @@ -26,9 +29,11 @@ $size: null, $disabled-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-icon'), $palette); + $name: 'igx-icon'; + $theme: apply-palette(map-get($schema, $name), $palette); @return extend($theme, ( + name: $name, palette: $palette, color: $color, size: $size, @@ -38,7 +43,6 @@ /// @param {Map} $theme - The theme used to style the component. /// @requires {mixin} igx-root-css-vars -/// @requires rem /// @requires --var @mixin igx-icon($theme) { @include igx-root-css-vars($theme); diff --git a/projects/igniteui-angular/src/lib/core/styles/components/input/_input-group-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/input/_input-group-theme.scss index 7c5eb373c6b..fd11acafb06 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/input/_input-group-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/input/_input-group-theme.scss @@ -5,41 +5,44 @@ //// /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $idle-text-color [rgba(0, 0, 0, .54)] - The input text color in the idle state. -/// @param {Color} $filled-text-color [rgba(0, 0, 0, .87)] - The input text color in the filled state. -/// @param {Color} $focused-text-color [rgba(0, 0, 0, .87)] - The input text color in the focused state. -/// @param {Color} $disabled-text-color [rgba(0, 0, 0, .38)] - The input text color in the disabled state. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. /// -/// @param {Color} $idle-secondary-color [rgba(0, 0, 0, .54)] - The label color in the idle state. -/// @param {Color} $filled-secondary-color [rgba(0, 0, 0, .54] - The label color in the filled state. -/// @param {Color} $focused-secondary-color [primary 500] - The label color in the focused state. +/// @param {Color} $idle-text-color [null] - The input text color in the idle state. +/// @param {Color} $filled-text-color [null] - The input text color in the filled state. +/// @param {Color} $focused-text-color [null] - The input text color in the focused state. +/// @param {Color} $disabled-text-color [null] - The input text color in the disabled state. /// -/// @param {Color} $idle-bottom-line-color [rgba(0, 0, 0, .54)] - The bottom line and border colors in the idle state. -/// @param {Color} $hover-bottom-line-color [rgba(0, 0, 0, .87)] - The bottom line and border colors in the hover state. -/// @param {Color} $focused-bottom-line-color [primary 500] - The bottom line and border colors in the focused state. -/// @param {Color} $interim-bottom-line-color [12% of primary 500] - The bottom line and border colors during the to-focused transition. -/// @param {Color} $disabled-bottom-line-color [rgba(0, 0, 0, .42)] - The bottom line and border colors in the disabled state. -/// @param {Color} $disabled-border-color [6% of rgba(0, 0, 0, .38)] - The disabled border color for input groups of type border. +/// @param {Color} $idle-secondary-color [null] - The label color in the idle state. +/// @param {Color} $filled-secondary-color [null] - The label color in the filled state. +/// @param {Color} $focused-secondary-color [null] - The label color in the focused state. /// -/// @param {Color} $box-background [rgba(0, 0, 0, .06)] - The background color of an input group of type box. -/// @param {Color} $box-disabled-background [rgba(0, 0, 0, .03)] - The background color of an input group of type box in the disabled state. +/// @param {Color} $idle-bottom-line-color [null] - The bottom line and border colors in the idle state. +/// @param {Color} $hover-bottom-line-color [null] - The bottom line and border colors in the hover state. +/// @param {Color} $focused-bottom-line-color [null] - The bottom line and border colors in the focused state. +/// @param {Color} $interim-bottom-line-color [null] - The bottom line and border colors during the to-focused transition. +/// @param {Color} $disabled-bottom-line-color [null] - The bottom line and border colors in the disabled state. +/// @param {Color} $disabled-border-color [null] - The disabled border color for input groups of type border. /// -/// @param {Color} $border-background [transparent] - The background color of an input group of type border. -/// @param {Color} $border-disabled-background [rgba(0, 0, 0, .03)] - The background color of an input group of type border in the disabled state. +/// @param {Color} $box-background [null] - The background color of an input group of type box. +/// @param {Color} $box-disabled-background [null] - The background color of an input group of type box in the disabled state. /// -/// @param {Color} $search-background [white] - The background color of an input group of type search. -/// @param {Color} $search-disabled-background [white] - The background color of an input group of type search in the disabled state. -/// @param {Color} $search-shadow-color [rgba(0, 0, 0, .54)] - The shadow color of an input group of type search. -/// @param {Color} $search-disabled-shadow-color [rgba(0, 0, 0, .12)] - The shadow color of an input group of type search in the disabled state. +/// @param {Color} $border-background [null] - The background color of an input group of type border. +/// @param {Color} $border-disabled-background [null] - The background color of an input group of type border in the disabled state. /// -/// @param {Color} $success-secondary-color [igx-color($palette, 'success')] - The success color used in the valid state. -/// @param {Color} $warning-secondary-color [igx-color($palette, 'warn')] - The warning color used in the warning state. -/// @param {Color} $error-secondary-color [igx-color($palette, 'error)] - The error color used in the error state. +/// @param {Color} $search-background [null] - The background color of an input group of type search. +/// @param {Color} $search-disabled-background [null] - The background color of an input group of type search in the disabled state. +/// @param {Color} $search-shadow-color [null] - The shadow color of an input group of type search. +/// @param {Color} $search-disabled-shadow-color [null] - The shadow color of an input group of type search in the disabled state. /// -/// @param {String} $variant ['dark'] - Can be either 'dark' or 'light'. Use 'light' when the input is used on dark backgrounds. +/// @param {Color} $success-secondary-color [null] - The success color used in the valid state. +/// @param {Color} $warning-secondary-color [null] - The warning color used in the warning state. +/// @param {Color} $error-secondary-color [null] - The error color used in the error state. /// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color +/// @requires text-contrast /// /// @example scss Change the focused border and label colors /// $my-input-group-theme: igx-input-group-theme($focused-secondary-color: pink, $focused-bottom-line-color: pink); @@ -60,7 +63,6 @@ $idle-bottom-line-color: null, $hover-bottom-line-color: null, - $filled-bottom-line-color: null, $focused-bottom-line-color: null, $interim-bottom-line-color: null, $disabled-bottom-line-color: null, @@ -81,95 +83,14 @@ $error-secondary-color: null, $placeholder-color: null, - $disabled-placeholder-color: null, - - $variant: 'dark' + $disabled-placeholder-color: null ) { $name: 'igx-input-group'; - - // $dark-theme: ( - // name: $name, - - // idle-text-color: igx-color($palette, 'grays', 600), - // filled-text-color: igx-color($palette, 'grays', 900), - // focused-text-color: igx-color($palette, 'grays', 900), - // disabled-text-color: igx-color($palette, 'grays', 500), - - // idle-secondary-color: igx-color($palette, 'grays', 600), - // filled-secondary-color: igx-color($palette, 'grays', 600), - // focused-secondary-color: igx-color($palette, 'primary'), - - // idle-bottom-line-color: igx-color($palette, 'grays', 600), - // hover-bottom-line-color: igx-color($palette, 'grays', 900), - // filled-bottom-line-color: igx-color($palette, 'grays', 600), - // focused-bottom-line-color: igx-color($palette, 'primary'), - // interim-bottom-line-color: rgba(igx-color($palette, 'primary'), .12), - // disabled-bottom-line-color: rgba(0, 0, 0, .42), - // disabled-border-color: rgba(igx-color($palette, 'grays', 500), .06), - - // box-background: rgba(0, 0, 0, .06), - // box-disabled-background: rgba(0, 0, 0, .03), - - // border-background: transparent, - // border-disabled-background: rgba(0, 0, 0, .03), - - // search-background: white, - // search-disabled-background: white, - // search-shadow-color: igx-color($palette, 'grays', 600), - // search-disabled-shadow-color: igx-color($palette, 'grays', 300), - - // success-secondary-color: igx-color($palette, 'success'), - // warning-secondary-color: igx-color($palette, 'warn'), - // error-secondary-color: igx-color($palette, 'error'), - // placeholder-color: igx-color($palette, 'grays', 500), - // disabled-placeholder-color: igx-color($palette, 'grays', 400) - // ); - - $light-theme: ( - name: $name, - - idle-text-color: white, - filled-text-color: white, - focused-text-color: white, - disabled-text-color: rgba(255, 255, 255, .5), - - idle-secondary-color: rgba(255, 255, 255, .7), - filled-secondary-color: rgba(255, 255, 255, .7), - focused-secondary-color: igx-color($palette, 'primary'), - - idle-bottom-line-color: rgba(255, 255, 255, .7), - hover-bottom-line-color: white, - filled-bottom-line-color: rgba(255, 255, 255, .7), - focused-bottom-line-color: igx-color($palette, 'primary'), - interim-bottom-line-color: rgba(igx-color($palette, 'primary'), .12), - disabled-bottom-line-color: rgba(255, 255, 255, .7), - disabled-border-color: rgba(rgba(255, 255, 255, .5), .06), - - box-background: rgba(255, 255, 255, .1), - box-disabled-background: rgba(255, 255, 255, .06), - - border-background: transparent, - border-disabled-background: rgba(255, 255, 255, .06), - - search-background: rgba(255, 255, 255, .1), - search-disabled-background: rgba(255, 255, 255, .06), - search-shadow-color: igx-color($palette, 'grays', 600), - search-disabled-shadow-color: igx-color($palette, 'grays', 300), - - success-secondary-color: igx-color($palette, 'success'), - warning-secondary-color: igx-color($palette, 'warn'), - error-secondary-color: igx-color($palette, 'error'), - placeholder-color: #999, - disabled-placeholder-color: #777 - ); - - $theme: map-get(( - dark: apply-palette(map-get($schema, 'igx-input-group'), $palette), - light: $light-theme - ), $variant); + $theme: apply-palette(map-get($schema, $name), $palette); @return extend($theme, ( palette: $palette, + name: $name, idle-text-color: $idle-text-color, filled-text-color: $filled-text-color, @@ -182,7 +103,6 @@ idle-bottom-line-color: $idle-bottom-line-color, hover-bottom-line-color: $hover-bottom-line-color, - filled-bottom-line-color: $filled-bottom-line-color, focused-bottom-line-color: $focused-bottom-line-color, interim-bottom-line-color: $interim-bottom-line-color, disabled-bottom-line-color: $disabled-bottom-line-color, @@ -204,8 +124,6 @@ error-secondary-color: $error-secondary-color, placeholder-color: $placeholder-color, disabled-placeholder-color: $disabled-placeholder-color, - - variant: $variant )); @if not($placeholder-color) and $box-background { @@ -221,10 +139,9 @@ /// @param {Map} $theme - The theme used to style the component. /// @requires {mixin} igx-root-css-vars -/// @requires igx-color /// @requires igx-elevation /// @requires $elevations -/// @requires em +/// @requires rem /// @requires {mixin} ellipsis /// @requires --var @mixin igx-input-group($theme) { diff --git a/projects/igniteui-angular/src/lib/core/styles/components/list/_list-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/list/_list-theme.scss index 1c0254756e2..636fd95a3f5 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/list/_list-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/list/_list-theme.scss @@ -6,13 +6,20 @@ //// /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $background [#fff] - The list background color. -/// @param {Color} $header-background [#fff] - The list header background color. -/// @param {Color} $header-text-color [secondary 500] - The list header text color. -/// @param {Color} $item-background [#fff] - The list item background color. -/// @param {Color} $item-text-color [rgba(0, 0, 0, .74)] - The list item text color. -/// @param {Color} $item-background-active [rgba(0, 0, 0, .04)] - The active list item background color. -/// @param {Color} $item-text-color-active [rgba(0, 0, 0, .74)] - The active list item text color. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// +/// @param {Color} $background [null] - The list background color. +/// @param {Color} $header-background [null] - The list header background color. +/// @param {Color} $header-text-color [null] - The list header text color. +/// @param {Color} $item-background [null] - The list item background color. +/// @param {Color} $item-text-color [null] - The list item text color. +/// @param {Color} $item-background-active [null] - The active list item background color. +/// @param {Color} $item-text-color-active [null] - The active list item text color. +/// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette +/// @requires extend /// @requires text-contrast /// /// @example scss Change the list background color @@ -31,7 +38,8 @@ $item-background-active: null, $item-text-color-active: null ) { - $theme: apply-palette(map-get($schema, 'igx-list'), $palette); + $name: 'igx-list'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($header-background) and $background { $header-background: $background; @@ -62,6 +70,7 @@ } @return extend($theme, ( + name: $name, palette: $palette, background: $background, header-background: $header-background, diff --git a/projects/igniteui-angular/src/lib/core/styles/components/navbar/_navbar-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/navbar/_navbar-theme.scss index dfdd75106f7..e08a2b88c6e 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/navbar/_navbar-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/navbar/_navbar-theme.scss @@ -5,14 +5,18 @@ /// @author Marin Popov //// -/// Navbar Theme /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $background [primary 500] - The navbar background color. -/// @param {Color} $text-color [#fff] - The navbar text color. -/// @param {Color} $idle-icon-color [#fff] - The navbar idle icon color. -/// @param {Color} $hover-icon-color [#fff] - The navbar hover icon color. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// +/// @param {Color} $background [null] - The navbar background color. +/// @param {Color} $text-color [null] - The navbar text color. +/// @param {Color} $idle-icon-color [null] - The navbar idle icon color. +/// @param {Color} $hover-icon-color [null] - The navbar hover icon color. /// @param {Bool} $disable-shadow [true] - Sets the navbar shadow visibility. /// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend /// @requires text-contrast /// @requires igx-elevations @@ -34,7 +38,8 @@ ) { $nav-shadow: if($disable-shadow == false, igx-elevation($elevations, 4), none); - $theme: apply-palette(map-get($schema, 'igx-navbar'), $palette); + $name: 'igx-navbar'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($text-color) and $background { $text-color: text-contrast($background); @@ -49,6 +54,7 @@ } @return extend($theme, ( + name: $name, palette: $palette, background: $background, text-color: $text-color, diff --git a/projects/igniteui-angular/src/lib/core/styles/components/navdrawer/_navdrawer-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/navdrawer/_navdrawer-theme.scss index 577d3e90ed7..4ad9fbe978c 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/navdrawer/_navdrawer-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/navdrawer/_navdrawer-theme.scss @@ -6,20 +6,24 @@ //// /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $background [#fff] - The navigation drawer background color. -/// @param {Color} $border-color [rgba(0, 0, 0, .14)] - The navigation drawer right border color. -/// @param {Color} $item-header-text-color [rgba(0, 0, 0, .54)] - The header's idle text color. -/// @param {Color} $item-text-color [rgba(0, 0, 0, .62)] - The item's idle text color. -/// @param {Color} $item-icon-color [rgba(0, 0, 0, .62)] - The item's icon color. -/// @param {Color} $item-active-text-color [rgba(0, 0, 0, .38)] - The item's active text color. -/// @param {Color} $item-active-background [rgba(0, 0, 0, .04)] - The item's active background color. -/// @param {Color} $item-active-icon-color [rgba(0, 0, 0, .38)] - The item's icon active color. -/// @param {Color} $item-hover-background [rgba(0, 0, 0, .08)] - The item's hover background color. -/// @param {Color} $item-hover-text-color [rgba(0, 0, 0, .74)] - The item's hover text color. -/// @param {Color} $item-hover-icon-color [rgba(0, 0, 0, .74)] - The item's hover icon color. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. /// +/// @param {Color} $background [null] - The navigation drawer background color. +/// @param {Color} $border-color [null] - The navigation drawer right border color. +/// @param {Color} $item-header-text-color [null] - The header's idle text color. +/// @param {Color} $item-text-color [null] - The item's idle text color. +/// @param {Color} $item-icon-color [null] - The item's icon color. +/// @param {Color} $item-active-text-color [null] - The item's active text color. +/// @param {Color} $item-active-background [null] - The item's active background color. +/// @param {Color} $item-active-icon-color [null] - The item's icon active color. +/// @param {Color} $item-hover-background [null] - The item's hover background color. +/// @param {Color} $item-hover-text-color [null] - The item's hover text color. +/// @param {Color} $item-hover-icon-color [null] - The item's hover icon color. +/// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color /// @requires text-contrast /// /// @example scss Change the background and item colors @@ -49,7 +53,8 @@ $item-hover-text-color: null, $item-hover-icon-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-navdrawer'), $palette); + $name: 'igx-navdrawer'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($item-header-text-color) and $background { $item-header-text-color: text-contrast($background); @@ -84,6 +89,7 @@ } @return extend($theme, ( + name: $name, palette: $palette, background: $background, border-color: $border-color, @@ -101,7 +107,6 @@ /// @param {Map} $theme - The theme used to style the component. /// @requires {mixin} igx-root-css-vars -/// @requires igx-color /// @requires igx-elevation /// @requires $elevations /// @requires $overlay-color diff --git a/projects/igniteui-angular/src/lib/core/styles/components/overlay/_overlay-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/overlay/_overlay-theme.scss index 9eed4f636ea..8a1978bb310 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/overlay/_overlay-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/overlay/_overlay-theme.scss @@ -5,10 +5,14 @@ /// @author Marin Popov //// +/// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. /// -/// @param {Color} $background-color [$overlay-color] - The background color used for modal overlays. +/// @param {Color} $background-color [null] - The background color used for modal overlays. /// -/// @requires $overlay-color +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// /// @example scss Change the background color /// $my-overlay-theme: igx-overlay-theme($background-color: rgba(yellow, .74)); @@ -20,9 +24,11 @@ $schema: $light-schema, $background-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-overlay'), $palette); + $name: 'igx-overlay'; + $theme: apply-palette(map-get($schema, $name), $palette); @return extend($theme, ( + name: $name, palette: $palette, background-color: $background-color )); diff --git a/projects/igniteui-angular/src/lib/core/styles/components/progress/_progress-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/progress/_progress-theme.scss index 1f9c41a837a..368b72ebe93 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/progress/_progress-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/progress/_progress-theme.scss @@ -6,17 +6,21 @@ //// /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $track-color [rgba(0, 0, 0, .12)] - The main track color. -/// @param {Color} $fill-color-default [primary 500] - The track default fill color. -/// @param {Color} $fill-color-danger [error 500] - The track danger fill color. -/// @param {Color} $fill-color-warning [warn 500] - The track warning fill color. -/// @param {Color} $fill-color-info [info 500] - The track info fill color. -/// @param {Color} $fill-color-success [success 500] - The track success fill color. -/// @param {Color} $stripes-color [rgba(255, 255, 255, .7)] - The track stripes color. -/// @param {Color} $text-color [rgba(0, 0, 0, .62)] - The track value text color. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. /// +/// @param {Color} $track-color [null] - The main track color. +/// @param {Color} $fill-color-default [null] - The track default fill color. +/// @param {Color} $fill-color-danger [null] - The track danger fill color. +/// @param {Color} $fill-color-warning [null] - The track warning fill color. +/// @param {Color} $fill-color-info [null] - The track info fill color. +/// @param {Color} $fill-color-success [null] - The track success fill color. +/// @param {Color} $stripes-color [null] - The track stripes color. +/// @param {Color} $text-color [null] - The track value text color. +/// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color /// /// @example scss Change the stripes color /// $my-progress-linear-theme: igx-progress-linear-theme( @@ -37,9 +41,11 @@ $stripes-color: null, $text-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-progress-linear'), $palette); + $name: 'igx-progress-linear'; + $theme: apply-palette(map-get($schema, $name), $palette); @return extend($theme, ( + name: $name, palette: $palette, track-color: $track-color, fill-color-default: $fill-color-default, @@ -160,12 +166,16 @@ } /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $base-circle-color [rgba(0, 0, 0, .12)] - The base circle fill color. -/// @param {Color} $progress-circle-color [primary 500] - The progress circle fill color. -/// @param {Color} $text-color [rgba(0, 0, 0, .62)] - The value text color. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// +/// @param {Color} $base-circle-color [null] - The base circle fill color. +/// @param {Color} $progress-circle-color [null] - The progress circle fill color. +/// @param {Color} $text-color [null] - The value text color. /// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color /// /// @example scss Change the circle progress color /// $my-progress-circular-theme: igx-progress-circular-theme( @@ -181,9 +191,11 @@ $progress-circle-color: null, $text-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-progress-circular'), $palette); + $name: 'igx-progress-circular'; + $theme: apply-palette(map-get($schema, $name), $palette); @return extend($theme, ( + name: $name, palette: $palette, base-circle-color: $base-circle-color, progress-circle-color: $progress-circle-color, diff --git a/projects/igniteui-angular/src/lib/core/styles/components/radio/_radio-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/radio/_radio-theme.scss index 3741e4bb87a..65e1e23106b 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/radio/_radio-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/radio/_radio-theme.scss @@ -9,14 +9,17 @@ //// /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $label-color [rgba(0, 0, 0, .87)]- The text color used for the label text. -/// @param {Color} $empty-color [rgba(0, 0, 0, .62)] - The unchecked border color. -/// @param {Color} $fill-color [secondary 500] - The checked border and dot colors. -/// @param {Color} $disabled-color [rgba(0, 0, 0, .26)] - The disabled border and dot colors. -/// @param {String} $variant ['dark'] - Determines the default color scheme - could be 'light' or 'dark'. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. /// +/// @param {Color} $label-color [null]- The text color used for the label text. +/// @param {Color} $empty-color [null] - The unchecked border color. +/// @param {Color} $fill-color [null] - The checked border and dot colors. +/// @param {Color} $disabled-color [null] - The disabled border and dot colors. +/// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color /// /// Set light to true when the surrounding area is dark. /// @example scss Change the checked dot and border colors @@ -30,34 +33,19 @@ $label-color: null, $empty-color: null, $fill-color: null, - $disabled-color: null, + $disabled-color: null - $variant: 'dark' ) { $name: 'igx-radio'; - - $dark-theme: apply-palette(map-get($schema, 'igx-radio'), $palette); - - $light-theme: ( - name: $name, - label-color: #fff, - empty-color: rgba(255, 255, 255, .7), - fill-color: igx-color($palette, 'secondary', 500), - disabled-color: rgba(255, 255, 255, .3) - ); - - $theme: map-get(( - dark: $dark-theme, - light: $light-theme - ), $variant); + $theme: apply-palette(map-get($schema, $name), $palette); @return extend($theme, ( + name: $name, palette: $palette, label-color: $label-color, empty-color: $empty-color, fill-color: $fill-color, disabled-color: $disabled-color, - variant: $variant )); } diff --git a/projects/igniteui-angular/src/lib/core/styles/components/ripple/_ripple-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/ripple/_ripple-theme.scss index 9fb4ff9bada..fbc5ca13742 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/ripple/_ripple-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/ripple/_ripple-theme.scss @@ -6,10 +6,14 @@ //// /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $color [rgba(0, 0, 0, .74)] - The color of the ripple. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. /// +/// @param {Color} $color [null] - The color of the ripple. +/// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color /// /// @example scss Change the color /// $my-ripple-theme: igx-ripple-theme($color: yellow); @@ -20,9 +24,11 @@ $schema: $light-schema, $color: null ) { - $theme: apply-palette(map-get($schema, 'igx-ripple'), $palette); + $name: 'igx-ripple'; + $theme: apply-palette(map-get($schema, $name), $palette); @return extend($theme, ( + name: $name, palette: $palette, color: $color )); diff --git a/projects/igniteui-angular/src/lib/core/styles/components/slider/_slider-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/slider/_slider-theme.scss index ea6606bef83..3cc8799dcf6 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/slider/_slider-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/slider/_slider-theme.scss @@ -6,22 +6,27 @@ //// /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $track-color [secondary 500] - The color of the track. -/// @param {Color} $thumb-color [secondary 500] - The color of the thumb. -/// @param {Color} $label-background-color [secondary 500] - The background color of the bubble label. -/// @param {Color} $label-text-color [igx-contrast-color of secondary 500] - The text color of the bubble label. -/// @param {Bool} $variant ['dark'] - Determines the default color scheme - can be 'light' or 'dark'. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. /// +/// @param {Color} $track-color [null] - The color of the track. +/// @param {Color} $thumb-color [null] - The color of the thumb. +/// @param {Color} $label-background-color [null] - The background color of the bubble label. +/// @param {Color} $label-text-color [null] - The text color of the bubble label. +/// +/// @param {Color} $disabled-thumb-color [null] - The thumb color when its disabled. +/// @param {Color} $base-track-color [null] - The base background color of the track. +/// @param {Color} $disabled-base-track-color [null] - The base background color of the track when is disabled. +/// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color /// @requires text-contrast -/// @requires hexrgba /// -/// Set light to true when the surrounding area is dark. /// @example scss Set custom track and thumb on colors -/// $my-switch-theme: igx-toast-theme($thumb-on-color: black, $track-on-color: yellow); -/// // Pass the theme to the igx-bottom-nav component mixin -/// @include igx-switch($my-switch-theme); +/// $my-slider-theme: igx-slider-theme($thumb-on-color: black, $track-on-color: yellow); +/// // Pass the theme to the igx-slider component mixin +/// @include igx-slider($my-slider-theme); @function igx-slider-theme( $palette: $default-palette, $schema: $light-schema, @@ -32,41 +37,28 @@ $label-background-color: null, $label-text-color: null, - $variant: 'dark' + $disabled-thumb-color: null, + $base-track-color: null, + $disabled-base-track-color: null + ) { $name: 'igx-slider'; - - $dark-theme: apply-palette(map-get($schema, 'igx-slider'), $palette); - - $light-theme: ( - name: $name, - track-color: igx-color($palette, 'secondary'), - - thumb-color: igx-color($palette, 'secondary'), - disabled-thumb-color: rgba(#fff, .3), - - label-background-color: igx-color($palette, 'secondary'), - - base-track-color: rgba(#fff, .3), - disabled-base-track-color: rgba(#fff, .3) - ); - - $theme: map-get(( - dark: $dark-theme, - light: $light-theme - ), $variant); + $theme: apply-palette(map-get($schema, $name), $palette); @if not($label-text-color) and $label-background-color { $label-text-color: text-contrast($label-background-color); } @return extend($theme, ( + name: $name, palette: $palette, track-color: $track-color, thumb-color: $thumb-color, label-background-color: $label-background-color, label-text-color: $label-text-color, - variant: $variant + disabled-thumb-color: $disabled-thumb-color, + base-track-color: $base-track-color, + disabled-base-track-color: $disabled-base-track-color )); } diff --git a/projects/igniteui-angular/src/lib/core/styles/components/snackbar/_snackbar-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/snackbar/_snackbar-theme.scss index dc72dbb3275..02d57d37f75 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/snackbar/_snackbar-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/snackbar/_snackbar-theme.scss @@ -7,16 +7,19 @@ /// If you specify a background color, but do not specify colors for either the /// button or the text, their colors will be set automatically to a contrasting color. +/// /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $background [#323232] - The background color used in the snackbar. -/// @param {Color} $text-color [#fff] - The text color used in the snackbar. -/// @param {Color} $button-color [secondary 500] - The button color used in the snackbar. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// +/// @param {Color} $background [null] - The background color used in the snackbar. +/// @param {Color} $text-color [null] - The text color used in the snackbar. +/// @param {Color} $button-color [null] - The button color used in the snackbar. /// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend /// @requires text-contrast -/// @requires igx-color -/// -/// @todo Add light option /// /// @example scss Set a custom background color /// $my-snackbar-theme: igx-snackbar-theme($background: white); @@ -30,7 +33,8 @@ $text-color: null, $button-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-snackbar'), $palette); + $name: 'igx-snackbar'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($button-color) and $background { $button-color: text-contrast($background); @@ -41,6 +45,7 @@ } @return extend($theme, ( + name: $name, palette: $palette, background: $background, text-color: $text-color, diff --git a/projects/igniteui-angular/src/lib/core/styles/components/switch/_switch-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/switch/_switch-theme.scss index 0d6ed88efb7..2416452b668 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/switch/_switch-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/switch/_switch-theme.scss @@ -9,19 +9,22 @@ //// /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $thumb-on-color [secondary 500] - The color of the thumb when the switch is on. -/// @param {Color} $track-on-color [50% of secondary 500] - The color of the track when the switch is on. -/// @param {Color} $thumb-off-color [#fafafa] - The color of the thumb when the switch is off. -/// @param {Color} $track-off-color [rgba(0, 0, 0, .5)] - The color of the track when the switch is off. -/// @param {Color} $thumb-disabled-color [rgba(0, 0, 0, .26)] - The color of the thumb when the switch is disabled. -/// @param {Color} $track-disabled-color [rgba(0, 0, 0, .12)] - The color of the track when the switch is disabled. -/// @param {String} $variant ['dark'] - Determines the default color scheme - could be 'light' or 'dark'. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. /// +/// @param {Color} $thumb-on-color [null] - The color of the thumb when the switch is on. +/// @param {Color} $track-on-color [null] - The color of the track when the switch is on. +/// @param {Color} $thumb-off-color [null] - The color of the thumb when the switch is off. +/// @param {Color} $track-off-color [null] - The color of the track when the switch is off. +/// @param {Color} $thumb-disabled-color [null] - The color of the thumb when the switch is disabled. +/// @param {Color} $track-disabled-color [null] - The color of the track when the switch is disabled. +/// @param {Color} $label-color [null] - The color of the switch label +/// @param {Color} $label-disabled-color [null] - The color of the switch label when the switch is disabled +/// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color -/// @requires hexrgba /// -/// Set light to true when the surrounding area is dark. /// @example scss Set custom track and thumb on colors /// $my-switch-theme: igx-toast-theme($thumb-on-color: black, $track-on-color: yellow); /// // Pass the theme to the igx-bottom-nav component mixin @@ -40,36 +43,13 @@ $thumb-disabled-color: null, $label-color: null, - $label-disabled-color: null, - - $variant: 'dark' + $label-disabled-color: null ) { $name: 'igx-switch'; - - $dark-theme: apply-palette(map-get($schema, 'igx-switch'), $palette); - - $light-theme: ( - name: $name, - - thumb-on-color: igx-color($palette, 'secondary', 500), - track-on-color: rgba(igx-color($palette, 'secondary', 500), .5), - - thumb-off-color: #bdbdbd, - track-off-color: rgba(255, 255, 255, .3), - - label-color: #fff, - label-disabled-color: rgba(255, 255, 255, .3), - - track-disabled-color: #424242, - thumb-disabled-color: #6c6c6c - ); - - $theme: map-get(( - dark: $dark-theme, - light: $light-theme - ), $variant); + $theme: apply-palette(map-get($schema, $name), $palette); @return extend($theme, ( + name: $name, palette: $palette, thumb-on-color: $thumb-on-color, @@ -83,8 +63,6 @@ label-color: $label-color, label-disabled-color: $label-disabled-color, - - variant: $variant )); } diff --git a/projects/igniteui-angular/src/lib/core/styles/components/tabs/_tabs-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/tabs/_tabs-theme.scss index dde874fe443..217c4ba1462 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/tabs/_tabs-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/tabs/_tabs-theme.scss @@ -6,27 +6,32 @@ /// If only background color is specified, /// the idle item color will be assigned automatically to a contrasting color. +/// /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $item-text-color [rgba(0, 0, 0, .62)] - The color used for the tab text color. -/// @param {Color} $item-background [#fff] - The background color used for the tabs header. -/// @param {Color} $item-hover-background [rgba(0, 0, 0, .08)] - The background used for the tabs on hover. -/// @param {Color} $item-hover-color [rgba(0, 0, 0, .62)] - The text color used for the tabs on hover. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. +/// +/// @param {Color} $item-text-color [null] - The color used for the tab text color. +/// @param {Color} $item-background [null] - The background color used for the tabs header. +/// @param {Color} $item-hover-background [null] - The background used for the tabs on hover. +/// @param {Color} $item-hover-color [null] - The text color used for the tabs on hover. /// -/// @param {Color} $item-active-color [rgba(0, 0, 0, .74)] - The color used for the active tabs text. -/// @param {Color} $item-active-icon-color [rgba(0, 0, 0, .38)] - The color used for the active tabs icon. -/// @param {Color} $item-active-background [rgba(0, 0, 0, .08)] - The color used for the active/focused tab background. +/// @param {Color} $item-active-color [null] - The color used for the active tabs text. +/// @param {Color} $item-active-icon-color [null] - The color used for the active tabs icon. +/// @param {Color} $item-active-background [null] - The color used for the active/focused tab background. /// -/// @param {Color} $indicator-color [primary 500] - The color used for the active tab indicator. -/// @param {Color} $button-color [rgba(0, 0, 0, .38)] - The color used for the button icon/text color. -/// @param {Color} $button-hover-color [rgba(0, 0, 0, .54)] - The color used for the button icon/text color on hover. -/// @param {Color} $button-background [#fff] - The color used for the button background. -/// @param {Color} $button-hover-background [rgba(0, 0, 0, .04)] - The color used for the button background on hover. +/// @param {Color} $indicator-color [null] - The color used for the active tab indicator. +/// @param {Color} $button-color [null] - The color used for the button icon/text color. +/// @param {Color} $button-hover-color [null] - The color used for the button icon/text color on hover. +/// @param {Color} $button-background [null] - The color used for the button background. +/// @param {Color} $button-hover-background [null] - The color used for the button background on hover. /// -/// @param {Color} $tab-ripple-color [rgba(0, 0, 0, .04)] - The color used for the button background. -/// @param {Color} $button-ripple-color [rgba(0, 0, 0, 0.04)] - The color used for the button background on hover. +/// @param {Color} $tab-ripple-color [null] - The color used for the button background. +/// @param {Color} $button-ripple-color [null] - The color used for the button background on hover. /// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color /// @requires text-contrast /// /// @example scss Set a custom background color @@ -59,7 +64,8 @@ $tab-ripple-color: null, $button-ripple-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-tabs'), $palette); + $name: 'igx-tabs'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($item-text-color) and $item-background { $item-text-color: text-contrast($item-background); @@ -102,6 +108,7 @@ } @return extend($theme, ( + name: $name, palette: $palette, item-text-color: $item-text-color, item-background: $item-background, @@ -126,7 +133,6 @@ /// @requires {mixin} ellipsis /// @requires igx-ripple-theme /// @requires {mixin} igx-ripple -/// @requires igx-color /// @requires igx-elevation /// @requires $elevations /// @requires rem diff --git a/projects/igniteui-angular/src/lib/core/styles/components/time-picker/_time-picker-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/time-picker/_time-picker-theme.scss index 3f77e1df3c0..dacd15c91f2 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/time-picker/_time-picker-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/time-picker/_time-picker-theme.scss @@ -9,19 +9,22 @@ /// Does ___not___ apply for disabled state colors. /// /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $text-color [rgba(0, 0, 0, .38)] - The text color of a open time picker. -/// @param {Color} $hover-text-color [secondary 500] - The hover text color of a open time picker. -/// @param {Color} $selected-text-color [secondary 500] - The text color of a selected item in time picker. -/// @param {Color} $active-item-background [rgba(0, 0, 0, .04)] - The background color for current item in focused column inside the time picker. -/// @param {Color} $header-background [secondary 500] - The header background color of a time picker. -/// @param {Color} $header-hour-text-color [igx-contrast-color of secondary 500] - The header hour text color of a time picker. -/// @param {Color} $header-time-period-color [80% of igx-contrast-color of secondary 500] - The header AM/PM text color of a time picker. -/// @param {Color} $background-color [white] - The time-picker panel background color. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. /// -/// @requires extend +/// @param {Color} $text-color [null] - The text color of a open time picker. +/// @param {Color} $hover-text-color [null] - The hover text color of a open time picker. +/// @param {Color} $selected-text-color [null] - The text color of a selected item in time picker. +/// @param {Color} $active-item-background [null] - The background color for current item in focused column inside the time picker. +/// @param {Color} $header-background [null] - The header background color of a time picker. +/// @param {Color} $header-hour-text-color [null] - The header hour text color of a time picker. +/// @param {Color} $header-time-period-color [null] - The header AM/PM text color of a time picker. +/// @param {Color} $background-color [null] - The time-picker panel background color. +/// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires text-contrast -/// @requires igx-color -/// @requires igx-contrast-color +/// @requires extend /// /// @example scss Change the background and text colors in time picker /// $my-time-picker-theme: igx-time-picker-theme( @@ -29,7 +32,7 @@ /// $background-color: black /// ); /// // Pass the theme to the igx-time-picker component mixin -/// @include igx-time-picker($my-button-theme); +/// @include igx-time-picker($my-time-picker-theme); @function igx-time-picker-theme( $palette: $default-palette, $schema: $light-schema, @@ -43,7 +46,8 @@ $header-time-period-color: null, $background-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-time-picker'), $palette); + $name: 'igx-time-picker'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($text-color) and $background-color { $text-color: text-contrast($background-color); @@ -65,11 +69,8 @@ $active-item-background: rgba(text-contrast($background-color), .12); } - //@if not($active-item-background) and $background-color { - // $active-item-background: lighten($background-color, 5%); - //} - @return extend($theme, ( + name: $name, palette: $palette, text-color: $text-color, hover-text-color: $hover-text-color, diff --git a/projects/igniteui-angular/src/lib/core/styles/components/toast/_toast-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/toast/_toast-theme.scss index 8bbfe811115..30f8ad37be8 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/toast/_toast-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/toast/_toast-theme.scss @@ -7,13 +7,18 @@ /// If only background color is specified, /// the text-color will be assigned automatically to a contrasting color. +/// /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $background [rgba(0, 0, 0, .54)] - The background color used for the toast. -/// @param {Color} $text-color [#fff] - The text-color used for the toast. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. /// -/// @requires extend -/// @requires igx-color +/// @param {Color} $background [null] - The background color used for the toast. +/// @param {Color} $text-color [null] - The text-color used for the toast. +/// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires text-contrast +/// @requires extend /// /// @example scss Set a custom background color /// $my-toast-theme: igx-toast-theme($background: green); @@ -26,13 +31,15 @@ $background: null, $text-color: null ) { - $theme: apply-palette(map-get($schema, 'igx-toast'), $palette); + $name: 'igx-toast'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($text-color) and $background { $text-color: text-contrast($background); } @return extend($theme, ( + name: $name, palette: $palette, background: $background, text-color: $text-color diff --git a/projects/igniteui-angular/src/lib/core/styles/components/tooltip/_tooltip-theme.scss b/projects/igniteui-angular/src/lib/core/styles/components/tooltip/_tooltip-theme.scss index 52b638da951..48010d74694 100644 --- a/projects/igniteui-angular/src/lib/core/styles/components/tooltip/_tooltip-theme.scss +++ b/projects/igniteui-angular/src/lib/core/styles/components/tooltip/_tooltip-theme.scss @@ -7,53 +7,40 @@ /// Returns a map containing all style properties related to the theming the tooltip directive. /// @param {Map} $palette [$default-palette] - The palette used as basis for styling the component. -/// @param {Color} $background [] - The background color of the tooltip. -/// @param {Color} $text-color [] - The text color of the tooltip. -/// @param {Number} $roundness [] - The border roundness of the tooltip. Smaller values mean less roundness. -/// @param {String} $variant ['dark'] - Determines the default color scheme - could be either 'dark' or 'light'. -/// Set to light when the surrounding area is dark. +/// @param {Map} $schema [$light-schema] - The schema used as basis for styling the component. /// +/// @param {Color} $background [null] - The background color of the tooltip. +/// @param {Color} $text-color [null] - The text color of the tooltip. +/// @param {Number} $roundness [null] - The border roundness of the tooltip. Smaller values mean less roundness. +/// +/// @requires $default-palette +/// @requires $light-schema +/// @requires apply-palette /// @requires extend -/// @requires igx-color /// @requires text-contrast /// -/// @example scss Change the checked fill color -/// $my-checkbox-theme: igx-checkbox-theme($fill-color: magenta); -/// // Pass the theme to the igx-checkbox component mixin -/// @include igx-checkbox($my-checkbox-theme); +/// @example scss Change the tooltip background +/// $my-tooltip-theme: igx-tooltip-theme($background: magenta); +/// // Pass the theme to the igx-tooltip component mixin +/// @include igx-tooltip($my-checkbox-theme); @function igx-tooltip-theme( $palette: $default-palette, $schema: $light-schema, $background: null, $text-color: null, - $roundness: null, - $variant: 'dark' + $roundness: null ) { - $name: 'igx-tooltip'; - $dark-background: hexrgba(igx-color($palette, 'grays', 700)); - $light-background: rgba(#fff, .94); $border-radius: rem(4px); - - $dark-theme: apply-palette(map-get($schema, 'igx-tooltip'), $palette); - - $light-theme: ( - name: $name, - background: $light-background, - text-color: text-contrast($light-background), - roundness: $border-radius - ); - - $theme: map-get(( - dark: $dark-theme, - light: $light-theme - ), $variant); + $name: 'igx-tooltip'; + $theme: apply-palette(map-get($schema, $name), $palette); @if not($text-color) and $background { $text-color: text-contrast($background); } @return extend($theme, ( + name: $name, palette: $default-palette, background: $background, text-color: $text-color, diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/_index.scss b/projects/igniteui-angular/src/lib/core/styles/themes/_index.scss index 8a48ffca80e..13268b17f62 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/_index.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/_index.scss @@ -264,6 +264,34 @@ } } -@mixin igx-green-theme() { - @include igx-theme($palette: $dark-green-palette, $schema: $dark-green-theme); +@mixin igx-light-theme( + $palette, + $exclude: (), + $legacy-support: true +) { + $primary: igx-color($palette, 'primary'); + $secondary: igx-color($palette, 'secondary'); + + @include igx-theme( + $palette: igx-palette($primary, $secondary, $grays: #000), + $schema: $light-schema, + $legacy-support: $legacy-support, + $exclude: $exclude + ); +} + +@mixin igx-dark-theme( + $palette, + $exclude: (), + $legacy-support: true +) { + $primary: igx-color($palette, 'primary'); + $secondary: igx-color($palette, 'secondary'); + + @include igx-theme( + $palette: igx-palette($primary, $secondary, $grays: #fff), + $schema: $dark-schema, + $legacy-support: $legacy-support, + $exclude: $exclude + ); } diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/_palettes.scss b/projects/igniteui-angular/src/lib/core/styles/themes/_palettes.scss index 9648f628396..376901f43cb 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/_palettes.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/_palettes.scss @@ -69,6 +69,6 @@ $elevations: igx-elevations( rgba(0, 0, 0, .08) ) !default; -$dark-green-palette: igx-palette($primary: #09f, $secondary: #72da67) !default; - - +/// Green palette +/// @type {Map} +$green-palette: igx-palette($primary: #09f, $secondary: #72da67) !default; diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/presets/igniteui-dark-green.scss b/projects/igniteui-angular/src/lib/core/styles/themes/presets/igniteui-dark-green.scss index 77134088c98..e7f5be9ec3a 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/presets/igniteui-dark-green.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/presets/igniteui-dark-green.scss @@ -1,6 +1,4 @@ @import '../index'; -@import '../schemas/dark-green/index'; -// Generate a palette @include igx-core(); -@include igx-theme($default-palette, $schema: $dark-green-theme); +@include igx-dark-theme($dark-green-palette); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark-green/_components-theme.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark-green/_components-theme.scss deleted file mode 100644 index 29410dc3e91..00000000000 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark-green/_components-theme.scss +++ /dev/null @@ -1,235 +0,0 @@ -@import 'vars'; - -// AVATAR -$avatar-dark-green-theme: igx-avatar-theme( - $icon-background: $dark-green-white-40, - $icon-color: $dark-green-white-80, - $initials-background: $dark-green-white-40, - $initials-color: $dark-green-white-80, - $image-background: $dark-green-white-40 -); - -// BADGE -$badge-dark-green-theme: igx-badge-theme( - $background-color: $dark-green-dark-text -); - -// BUTTONS -$button-dark-green-theme: ( - raised-background: red, - disabled-color: $dark-green-white-40, - disabled-background: $dark-green-white-10, - icon-background: $dark-green-background-darker -); - -// BUTTONS GROUP -$button-group-dark-green-theme: igx-button-group-theme( - $item-background: $dark-green-background-darker, - $item-hover-background: $dark-green-white-30, - $item-selected-background: $dark-green-white-30, - $item-border-color: $dark-green-white-20 -); - -// INPUT GROUP -$input-gruop-dark-green-theme: igx-input-group-theme( - $variant: 'light' -); - -// RIPPLE -$ripple-dark-green-theme: igx-ripple-theme( - $color: $dark-green-white-70 -); - -// SLIDER -$slider-dark-green-theme: igx-slider-theme( - $variant: 'light' -); - -// CALENDAR -$calendar-dark-green-theme: igx-calendar-theme( - $content-background: $dark-green-background-darker -); - -// DIALOG -$dialog-dark-green-theme: igx-dialog-theme( - $background: $dark-green-background-darker -); - -// TIME PICKER -$time-picker-dark-green-theme: igx-time-picker-theme( - $background-color: $dark-green-background-darker -); - -// EXPANSION PANEL -$expansion-panel-dark-green-theme: igx-expansion-panel-theme( - $header-background: $dark-green-background-darker, - $header-focus-background: darken($dark-green-background-darker, 5%) -); - -// SWITCH -$switch-dark-green-theme: igx-switch-theme( - $variant: 'light' -); - -// RADIO -$radio-dark-green-theme: igx-radio-theme( - $variant: 'light' -); - -// CHECKBOX -$checkbox-dark-green-theme: igx-checkbox-theme( - $variant: 'light' -); - -// NAV-DRAWER -$navdrawer-dark-green-theme: igx-navdrawer-theme( - $background: $dark-green-background-darker, - $item-header-text-color: $dark-green-white-70, - $item-icon-color: $dark-green-white-50, - $item-hover-icon-color: $dark-green-light-text, - $item-active-text-color: igx-color($dark-green-palette, 'secondary'), - $item-active-icon-color: igx-color($dark-green-palette, 'secondary'), - $item-active-background: $dark-green-background-black -); - -// CARD -$card-dark-green-theme: igx-card-theme( - $background: $dark-green-background-darker -); - -// CAROUSEL -$carousel-dark-green-theme: igx-carousel-theme( - $button-background: $dark-green-background-darker, - $button-arrow-color: $dark-green-white-80, - $button-hover-background: $dark-green-background-black -); - -// BOTTOM NAV -$bottom-nav-dark-green-theme: ( - background: $dark-green-content-background -); - -// LIST -$list-dark-green-theme: igx-list-theme( - $background: $dark-green-background-darker, - $item-background: $dark-green-background-darker, - $item-background-active: lighten($dark-green-background-black, 5%), - $header-text-color: igx-color($dark-green-palette, 'secondary') -); - -// DROP DOWN -$dropdown-dark-green-theme: igx-drop-down-theme( - $background-color: $dark-green-background-darker -); - -// COMBO -$combo-dark-green-theme: igx-combo-theme( - $empty-list-placeholder-color: $dark-green-white-50, - $empty-list-background: $dark-green-background-darker -); - -// PROGRESSBAR LINEAR -$progressbar-lin-dark-green-theme: igx-progress-linear-theme( - $track-color: $dark-green-white-40, - $text-color: $dark-green-white-90 -); - -// PROGRESS BARs -$progressbar-cir-dark-green-theme: igx-progress-circular-theme( - $text-color: $dark-green-white-90, - $base-circle-color: $dark-green-white-40 -); - -// GRID -$grid-dark-green-theme: igx-grid-theme( - $content-background: $dark-green-content-background, - $content-text-color: $dark-green-light-text, - $header-background: igx-color($dark-green-palette, 'grays', 800), - $header-text-color: $dark-green-white-70, - $header-border-color: $dark-green-white-40, - $row-selected-background: #333, - $row-selected-text-color: text-contrast(#333), - $row-hover-background: #222, - $row-hover-text-color: text-contrast(#222), - $row-border-color: #333, - $cell-selected-background: igx-color($dark-green-palette, 'primary'), - $cell-selected-text-color: igx-color($dark-green-palette, 'grays', 900), - - $group-count-background: #333, - $group-label-icon: igx-color($dark-green-palette, 'secondary'), - $group-label-column-name-text: igx-color($dark-green-palette, 'secondary'), - - $expand-icon-color: $dark-green-white-60, - $expand-icon-hover-color: igx-color($dark-green-palette, 'secondary'), - $expand-all-icon-color: $dark-green-white-60, - $expand-all-icon-hover-color: igx-color($dark-green-palette, 'secondary'), - $drop-area-text-color: #fff, - $drop-area-icon-color: #b4b4b4, - $drop-area-background: #333, - $drop-area-on-drop-background: #ddd, - $ghost-header-background: #333, - $ghost-header-icon-color: $dark-green-white-70, - $pinned-border-color: $dark-green-white-50, - $cell-editing-background: $dark-green-background-darker -); - -// FILTERING DIALOG -$filtering-dark-green-theme: igx-grid-filtering-theme( - $toggle-icon-color: $dark-green-white-70, - $toggle-icon-filtered-color: igx-color($dark-green-palette, 'secondary'), - $menu-background: $dark-green-background-darker, - $menu-button-text-color: igx-color($dark-green-palette, 'secondary'), - $toggle-icon-active-color: #000 -); - -// PAGINATOR -$paginator-dark-green-theme: igx-grid-paginator-theme( - $background-color: $dark-green-content-background, - $text-color: $dark-green-white-70 -); - -// SUMMARY -$summary-dark-green-theme: igx-grid-summary-theme( - $background-color: #111, - $label-color: igx-color($dark-green-palette, 'secondary'), - $label-hover-color: igx-color($dark-green-palette, 'secondary') -); - -// TOOLBAR -$toolbar-dark-green-theme: igx-grid-toolbar-theme( - $background-color: $dark-green-content-background, - $dropdown-background: $dark-green-background-darker, - $item-hover-background: $dark-green-white-30, - $item-focus-background: $dark-green-white-30 -); - -// TABS -$tabs-dark-green-theme: igx-tabs-theme( - $item-background: igx-color($dark-green-palette, 'primary'), - $button-background: igx-color($dark-green-palette, 'primary'), - $item-hover-background: igx-color($dark-green-palette, 'primary', 300), - $item-text-color: $dark-green-white-80, - $item-active-color: #fff, - $item-hover-color: #fff, - $item-active-icon-color: #fff, - $item-active-background: $dark-green-white-30, - $indicator-color: #fff, - $button-color: #fff, - $button-hover-color: #fff, - $button-hover-background: igx-color($dark-green-palette, 'primary', 600) -); - -// CHIP -$chips-dark-green-theme: igx-chip-theme( - $background: #222, - $selected-background: #222, - $hover-selected-background: #555, - $hover-background: #444, - $focus-selected-background: #444, - $focus-background: #444 -); - -// BANNER -$banner-dark-green-theme: igx-banner-theme( - $banner-background: $dark-green-background-darker -); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark-green/_index.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark-green/_index.scss deleted file mode 100644 index a2b2c506617..00000000000 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark-green/_index.scss +++ /dev/null @@ -1,34 +0,0 @@ -@import 'components-theme'; - -$dark-green-theme: ( - igx-avatar: $avatar-dark-green-theme, - igx-badge: $badge-dark-green-theme, - igx-button: $button-dark-green-theme, - igx-button-group: $button-group-dark-green-theme, - igx-input-group: $input-gruop-dark-green-theme, - igx-slider: $slider-dark-green-theme, - igx-calendar: $calendar-dark-green-theme, - igx-time-picker: $time-picker-dark-green-theme, - igx-dialog: $dialog-dark-green-theme, - igx-expansion-panel: $expansion-panel-dark-green-theme, - igx-switch: $switch-dark-green-theme, - igx-radio: $radio-dark-green-theme, - igx-checkbox: $checkbox-dark-green-theme, - igx-navdrawer: $navdrawer-dark-green-theme, - igx-card: $card-dark-green-theme, - igx-carousel: $carousel-dark-green-theme, - igx-bottom-nav: $bottom-nav-dark-green-theme, - igx-list: $list-dark-green-theme, - igx-drop-down: $dropdown-dark-green-theme, - igx-combo: $combo-dark-green-theme, - igx-progress-linear: $progressbar-lin-dark-green-theme, - igx-progress-circular: $progressbar-cir-dark-green-theme, - igx-grid: $grid-dark-green-theme, - igx-grid-filtering: $filtering-dark-green-theme, - igx-grid-paginator: $paginator-dark-green-theme, - igx-grid-summary: $summary-dark-green-theme, - igx-grid-toolbar: $toolbar-dark-green-theme, - igx-tabs: $tabs-dark-green-theme, - igx-chip: $chips-dark-green-theme, - igx-banner: $banner-dark-green-theme -); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark-green/_vars.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark-green/_vars.scss deleted file mode 100644 index 69aa8fabc22..00000000000 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark-green/_vars.scss +++ /dev/null @@ -1,19 +0,0 @@ -$igx-background-color: #333; -$igx-foreground-color: #fff; - -$dark-green-light-text: #fff; -$dark-green-dark-text: #b7b7b7; -$dark-green-disabled-text: rgba(255, 255, 255, .38); -$dark-green-background-darker: #424242; -$dark-green-background-black: #212121; -$dark-green-content-background: #000; - -$dark-green-white-10: rgba(255, 255, 255, .04); -$dark-green-white-20: rgba(255, 255, 255, .08); -$dark-green-white-30: rgba(255, 255, 255, .12); -$dark-green-white-40: rgba(255, 255, 255, .26); -$dark-green-white-50: rgba(255, 255, 255, .38); -$dark-green-white-60: rgba(255, 255, 255, .54); -$dark-green-white-70: rgba(255, 255, 255, .62); -$dark-green-white-80: rgba(255, 255, 255, .74); -$dark-green-white-90: rgba(255, 255, 255, .87); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_avatar.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_avatar.scss new file mode 100644 index 00000000000..06846dc04c8 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_avatar.scss @@ -0,0 +1,13 @@ +@import '../light/avatar'; +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a dark avatar schema. +/// @type {Map} +/// @requires {function} extend +/// @requires $_light-avatar +/// @see $default-palette +$_dark-avatar: extend($_light-avatar, ()); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_badge.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_badge.scss new file mode 100644 index 00000000000..3c1b4b552de --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_badge.scss @@ -0,0 +1,14 @@ +@import '../light/badge'; + +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a dark badge schema. +/// @type {Map} +/// @requires extend +/// @requires $_light-badge +/// @see $default-palette +$_dark-badge: extend($_light-badge, ()); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_banner.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_banner.scss new file mode 100644 index 00000000000..2e50b3ac437 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_banner.scss @@ -0,0 +1,17 @@ +@import '../light/banner'; +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a dark banner schema. +/// @type {Map} +/// @prop {Color} banner-background [#222]- The background color used banner background. +/// @requires extend +/// @requires $_light-banner +/// @see $default-palette + +$_dark-banner: extend($_light-banner, ( + banner-background: #222, +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_bottom-nav.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_bottom-nav.scss new file mode 100644 index 00000000000..6188ec0eec6 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_bottom-nav.scss @@ -0,0 +1,17 @@ +@import '../light/bottom-nav'; +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a dark bottom navigation schema. +/// @type {Map} +/// @prop {Color} background [#222] - The background color used for the toast. +/// @requires {function} extend +/// @requires $_light-bottom-nav +/// @see $default-palette + +$_dark-bottom-nav: extend($_light-bottom-nav, ( + background: #222 +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_button-group.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_button-group.scss new file mode 100644 index 00000000000..b74288ee246 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_button-group.scss @@ -0,0 +1,17 @@ +@import '../light/button-group'; +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a dark button group schema. +/// @type {Map} +/// @prop {Color} item-background [#222] - The background color for button group items . +/// @requires {function} extend +/// @requires $_light-button-group +/// @see $default-palette + +$_dark-button-group: extend($_light-button-group, ( + item-background: #222 +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_button.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_button.scss new file mode 100644 index 00000000000..34b1465d939 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_button.scss @@ -0,0 +1,36 @@ +@import '../light/button'; +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a dark button schema. +/// @type {Map} +/// @prop {Map} flat-hover-background [igx-color: ('secondary', 500), rgba: .12 ] - The hover background color of a flat button. +/// @prop {Map} flat-focus-background [igx-color: ('secondary', 400), rgba: .24] - The focus background color of a flat button. +/// @prop {Map} icon-hover-background [igx-color: ('grays', 300)] - The hover background color of an icon button. +/// @prop {Map} disabled-background [igx-color: ('grays', 200)] - The disabled background color of raised, fab, or icon buttons. +/// @requires extend +/// @requires $_light-button +/// @see $default-palette + +$_dark-button: extend($_light-button, ( + flat-hover-background: ( + igx-color: ('secondary', 500), + rgba: .12 + ), + + flat-focus-background: ( + igx-color: ('secondary', 400), + rgba: .24 + ), + + icon-hover-background: ( + igx-color: ('grays', 300) + ), + + disabled-background: ( + igx-color: ('grays', 200) + ) +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_calendar.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_calendar.scss new file mode 100644 index 00000000000..bc1f14741f2 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_calendar.scss @@ -0,0 +1,16 @@ +@import '../light/calendar'; +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a dark calendar schema. +/// @type {Map} +/// @prop {Color} content-background [#222] - The main content background color. +/// @requires extend +/// @requires $_light-calendar +/// @see $default-palette +$_dark-calendar: extend($_light-calendar, ( + content-background: #222 +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_card.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_card.scss new file mode 100644 index 00000000000..70ca43b6579 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_card.scss @@ -0,0 +1,16 @@ +@import '../light/card'; +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a dark card schema. +/// @type {Map} +/// @prop {Color} background [#222]- The card background color. +/// @requires extend +/// @requires $_light-card +/// @see $default-palette +$_dark-card: extend($_light-card, ( + background: #222 +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_carousel.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_carousel.scss new file mode 100644 index 00000000000..d70835f06bd --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_carousel.scss @@ -0,0 +1,18 @@ +@import '../light/carousel'; +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a dark carousel schema. +/// @type {Map} +/// @prop {Color} button-background [#222] - The previous/next buttons idle background color. +/// @prop {Color} button-hover-background [#222] - The previous/next buttons hover background color. +/// @requires extend +/// @requires $_light-carousel +/// @see $default-palette +$_dark-carousel: extend($_light-carousel, ( + button-background: #222, + button-hover-background: #222, +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_checkbox.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_checkbox.scss new file mode 100644 index 00000000000..b6bbd8e965d --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_checkbox.scss @@ -0,0 +1,16 @@ +@import '../light/checkbox'; +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a dark checkbox schema. +/// @type {Map} +/// @prop {Color} tick-color [#222] - The checked mark color. +/// @requires extend +/// @requires $_light-checkbox +/// @see $default-palette +$_dark-checkbox: extend($_light-checkbox, ( + tick-color: #222 +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_chip.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_chip.scss new file mode 100644 index 00000000000..3ef07efb460 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_chip.scss @@ -0,0 +1,19 @@ +@import '../light/chip'; +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a dark chip schema. +/// @type {Map} +/// @prop {Map} ghost-background [igx-color: ('grays', 400), hexrgba: #000] - The chip ghost background color. +/// @requires extend +/// @requires $_light-chip +/// @see $default-palette +$_dark-chip: extend($_light-chip, ( + ghost-background: ( + igx-color: ('grays', 400), + hexrgba: #000 + ) +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_column-hiding.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_column-hiding.scss new file mode 100644 index 00000000000..c4a6c358830 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_column-hiding.scss @@ -0,0 +1,13 @@ +@import '../light/column-hiding'; +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a dark column hiding schema. +/// @type {Map} +/// @requires extend +/// @requires $_light-column-hiding +/// @see $default-palette +$_dark-column-hiding: extend($_light-column-hiding, ()); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_combo.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_combo.scss new file mode 100644 index 00000000000..5bc494d2344 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_combo.scss @@ -0,0 +1,17 @@ +@import '../light/combo'; + +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a dark combo schema. +/// @type {Map} +/// @prop {Color} empty-list-background [#222] - The combo list background color. +/// @requires extend +/// @requires $_light-combo +/// @see $default-palette +$_dark-combo: extend($_light-combo, ( + empty-list-background: #222, +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_date-picker.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_date-picker.scss new file mode 100644 index 00000000000..a97d3065710 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_date-picker.scss @@ -0,0 +1,14 @@ +@import '../light/date-picker'; + +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a dark date picker schema. +/// @type {Map} +/// @requires extend +/// @requires $_light-date-picker +/// @see $default-palette +$_dark-date-picker: extend($_light-date-picker, ()); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_dialog.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_dialog.scss new file mode 100644 index 00000000000..26b35bf3c9c --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_dialog.scss @@ -0,0 +1,16 @@ +@import '../light/dialog'; +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a dark dialog schema. +/// @type {Map} +/// @prop {Color} background [#222] - The dialog background color. +/// @requires extend +/// @requires $_light-dialog +/// @see $default-palette +$_dark-dialog: extend($_light-dialog, ( + background: #222 +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_drop-down.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_drop-down.scss new file mode 100644 index 00000000000..a197a5d3c24 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_drop-down.scss @@ -0,0 +1,17 @@ +@import '../light/drop-down'; +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a dark drop-down schema. +/// @type {Map} +/// @requires extend +/// @prop {Color} background-color [#222] - The drop-down background color. +/// @requires $_light-drop-down +/// @requires extend +/// @see $default-palette +$_dark-drop-down: extend($_light-drop-down, ( + background-color: #222 +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_expansion-panel.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_expansion-panel.scss new file mode 100644 index 00000000000..89edfe30549 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_expansion-panel.scss @@ -0,0 +1,18 @@ +@import '../light/expansion-panel'; +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a dark expansion panel schema. +/// @type {Map} +/// @prop {Color} header-background [#222] - The panel header background color. +/// @prop {Color} body-background [#222] - The panel body background color. +/// @requires extend +/// @requires $_light-expansion-panel +/// @see $default-palette +$_dark-expansion-panel: extend($_light-expansion-panel, ( + header-background: #222, + body-background: #222, +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_grid-filtering.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_grid-filtering.scss new file mode 100644 index 00000000000..46d0ed80db4 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_grid-filtering.scss @@ -0,0 +1,13 @@ +@import '../light/grid-filtering'; +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a dark grid-filtering schema. +/// @type {Map} +/// @requires extend +/// @requires $_light-grid-filtering +/// @see $default-palette +$_dark-grid-filtering: extend($_light-grid-filtering, ()); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_grid-pagination.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_grid-pagination.scss new file mode 100644 index 00000000000..b2d92bcc773 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_grid-pagination.scss @@ -0,0 +1,16 @@ +@import '../light/grid-pagination'; +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a dark grid pagination schema. +/// @type {Map} +/// @requires extend +/// @prop {Map} background-color [#222] - The background color of the paging panel. +/// @requires $_light-grid-pagination +/// @see $default-palette +$_dark-grid-pagination: extend($_light-grid-pagination, ( + background-color: #222 +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_grid-summary.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_grid-summary.scss new file mode 100644 index 00000000000..a0af439b4f4 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_grid-summary.scss @@ -0,0 +1,15 @@ +@import '../light/grid-summary'; + +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a dark grid-summary schema. +/// @type {Map} +/// @requires {function} extend +/// @requires $_light-grid-summary +/// @see $default-palette + +$_dark-grid-summary: extend($_light-grid-summary, ()); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_grid-toolbar.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_grid-toolbar.scss new file mode 100644 index 00000000000..08d7f9619e8 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_grid-toolbar.scss @@ -0,0 +1,16 @@ +@import '../light/grid-toolbar'; +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a dark grid-toolbar schema. +/// @type {Map} +/// @prop {map} background-color [#222] - The toolbar background color. +/// @requires {function} extend +/// @requires $_light-grid-toolbar +/// @see $default-palette +$_dark-grid-toolbar: extend($_light-grid-toolbar, ( + background-color: #222 +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_grid.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_grid.scss new file mode 100644 index 00000000000..10ad83b1bf5 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_grid.scss @@ -0,0 +1,75 @@ +@import '../light/grid'; +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a dark grid schema. +/// @type {Map} +/// @prop {Map} header-background [igx-color: ('grays', 100), hexrgba: #222] - The table header background color. +/// @prop {Color} content-background [#222] - The table body background color. +/// @prop {Color} row-odd-background [#222] - The background color of odd rows. +/// @prop {Color} row-even-background [#222] - The background color of even rows. +/// @prop {Map} row-hover-background [igx-color: ('grays', 200), hexrgba: #222] - The hover row background color. +/// @prop {Map} row-selected-background [igx-color: ('grays', 400), hexrgba: #222] - The selected row background color. +/// @prop {Color} row-selected-text-color [#fff] - The selected row text color. +/// @prop {Color} ghost-header-background [#222] - The dragged header background color. +/// @prop {Color} cell-editing-background [#222] - The background for the cell in editing mode. +/// @prop {Map} grouparea-background [igx-color: ('grays', 100), hexrgba: #222] - The grid group area background color. +/// @prop {Map} group-row-background [igx-color: ('grays', 100), hexrgba: #222] - The grid group row background color. +/// @prop {Map} group-row-selected-background [igx-color: ('grays', 200), hexrgba: #222] - The drop area background on drop color. +/// @prop {Color} filtering-header-background [#222] - The background color of the filtered column header. +/// @prop {Color} filtering-row-background [#222] - The background color of the filtering row. +/// @requires extend +/// @requires $_light-grid +/// @see $default-palette +$_dark-grid: extend($_light-grid, ( + header-background: ( + igx-color: ('grays', 100), + hexrgba: #222 + ), + + content-background: #222, + + row-odd-background: #222, + + row-even-background: #222, + + row-hover-background: ( + igx-color: ('grays', 200), + hexrgba: #222 + ), + + row-hover-text-color: #fff, + + row-selected-background: ( + igx-color: ('grays', 400), + hexrgba: #222 + ), + + row-selected-text-color: #fff, + + ghost-header-background: #222, + + cell-editing-background: #222, + + grouparea-background: ( + igx-color: ('grays', 100), + hexrgba: #222 + ), + + group-row-background: ( + igx-color: ('grays', 100), + hexrgba: #222 + ), + + group-row-selected-background: ( + igx-color: ('grays', 200), + hexrgba: #222 + ), + + filtering-header-background: #222, + + filtering-row-background: #222, +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_icon.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_icon.scss new file mode 100644 index 00000000000..b17768c9639 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_icon.scss @@ -0,0 +1,16 @@ +@import '../light/icon'; + +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a dark icon schema. +/// @type {Map} +/// @requires {function} extend +/// @requires $_light-icon +/// @see $default-palette + + +$_dark-icon: extend($_light-icon, ()); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_index.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_index.scss index e69de29bb2d..2a96244a1df 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_index.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_index.scss @@ -0,0 +1,122 @@ +@import './avatar'; +@import './badge'; +@import './banner'; +@import './bottom-nav'; +@import './button'; +@import './button-group'; +@import './calendar'; +@import './card'; +@import './carousel'; +@import './checkbox'; +@import './chip'; +@import './column-hiding'; +@import './combo'; +@import './date-picker'; +@import './dialog'; +@import './drop-down'; +@import './expansion-panel'; +@import './grid'; +@import './grid-filtering'; +@import './grid-pagination'; +@import './grid-summary'; +@import './grid-toolbar'; +@import './icon'; +@import './input-group'; +@import './list'; +@import './navbar'; +@import './navdrawer'; +@import './overlay'; +@import './progress'; +@import './radio'; +@import './ripple'; +@import './slider'; +@import './snackbar'; +@import './switch'; +@import './tabs'; +@import './time-picker'; +@import './toast'; +@import './tooltip'; + +/// The default dark schema for all components. +/// @type {Map} +/// @property {Map} igx-avatar [$_dark-avatar] +/// @property {Map} igx-badge [$_dark-badge] +/// @property {Map} igx-banner [$_dark-banner] +/// @property {Map} igx-bottom-nav [$_dark-bottom-nav] +/// @property {Map} igx-button [$_dark-button] +/// @property {Map} igx-button-group [$_dark-button-group] +/// @property {Map} igx-calendar [$_dark-calendar] +/// @property {Map} igx-card [$_dark-card] +/// @property {Map} igx-carousel [$_dark-carousel] +/// @property {Map} igx-checkbox [$_dark-checkbox] +/// @property {Map} igx-chip [$_dark-chip] +/// @property {Map} igx-column-hiding [$_dark-column-hiding] +/// @property {Map} igx-combo [$_dark-combo] +/// @property {Map} igx-date-picker [$_dark-date-picker] +/// @property {Map} igx-dialog [$_dark-dialog] +/// @property {Map} igx-drop-down [$_dark-drop-down] +/// @property {Map} igx-expansion-panel [$_dark-expansion-panel] +/// @property {Map} igx-grid [$_dark-grid] +/// @property {Map} igx-grid-filtering [$_dark-grid-filtering] +/// @property {Map} igx-grid-paginator [$_dark-grid-pagination] +/// @property {Map} igx-grid-summary [$_dark-grid-summary] +/// @property {Map} igx-grid-toolbar [$_dark-grid-toolbar] +/// @property {Map} igx-icon [$_dark-icon] +/// @property {Map} igx-input-group [$_dark-input-group] +/// @property {Map} igx-list [$_dark-list] +/// @property {Map} igx-navbar [$_dark-navbar] +/// @property {Map} igx-navdrawer [$_dark-navdrawer] +/// @property {Map} igx-overlay [$_dark-overlay] +/// @property {Map} igx-progress-linear [$_dark-progress-linear] +/// @property {Map} igx-progress-circular [$_dark-progress-circular] +/// @property {Map} igx-radio [$_dark-radio] +/// @property {Map} igx-ripple [$_dark-ripple] +/// @property {Map} igx-slider [$_dark-slider] +/// @property {Map} igx-snackbar [$_dark-snackbar] +/// @property {Map} igx-switch [$_dark-switch] +/// @property {Map} igx-tabs [$_dark-tabs] +/// @property {Map} igx-time-picker [$_dark-time-picker] +/// @property {Map} igx-toast [$_dark-toast] +/// @property {Map} igx-tooltip [$_dark-tooltip] + +$dark-schema: ( + igx-avatar: $_dark-avatar, + igx-badge: $_dark-badge, + igx-banner: $_dark-banner, + igx-bottom-nav: $_dark-bottom-nav, + igx-button: $_dark-button, + igx-button-group: $_dark-button-group, + igx-calendar: $_dark-calendar, + igx-card: $_dark-card, + igx-carousel: $_dark-carousel, + igx-checkbox: $_dark-checkbox, + igx-chip: $_dark-chip, + igx-column-hiding: $_dark-column-hiding, + igx-combo: $_dark-combo, + igx-date-picker: extend($_dark-calendar, $_dark-date-picker), + igx-dialog: $_dark-dialog, + igx-drop-down: $_dark-drop-down, + igx-expansion-panel: $_dark-expansion-panel, + igx-grid: $_dark-grid, + igx-grid-filtering: $_dark-grid-filtering, + igx-grid-paginator: $_dark-grid-pagination, + igx-grid-summary: $_dark-grid-summary, + igx-grid-toolbar: $_dark-grid-toolbar, + igx-icon: $_dark-icon, + igx-input-group: $_dark-input-group, + igx-list: $_dark-list, + igx-navbar: $_dark-navbar, + igx-navdrawer: $_dark-navdrawer, + igx-overlay: $_dark-overlay, + igx-progress-linear: $_dark-progress-linear, + igx-progress-circular: $_dark-progress-circular, + igx-radio: $_dark-radio, + igx-ripple: $_dark-ripple, + igx-slider: $_dark-slider, + igx-snackbar: $_dark-snackbar, + igx-switch: $_dark-switch, + igx-tabs: $_dark-tabs, + igx-time-picker: $_dark-time-picker, + igx-toast: $_dark-toast, + igx-tooltip: $_dark-tooltip +); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_input-group.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_input-group.scss new file mode 100644 index 00000000000..083a5cf71d2 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_input-group.scss @@ -0,0 +1,20 @@ +@import '../light/input-group'; + +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light input-group schema. +/// @type {Map} +/// @prop {Color} search-background [#222] - The background color of an input group of type search. +/// @prop {Color} search-disabled-background [darken(#222, 5%)] - The background color of an input group of type search in the disabled state. +/// @requires {function} extend +/// @requires $_light-input-group +/// @see $default-palette + +$_dark-input-group: extend($_light-input-group, ( + search-background: #222, + search-disabled-background: darken(#222, 5%) +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_list.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_list.scss new file mode 100644 index 00000000000..b63eea0a80e --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_list.scss @@ -0,0 +1,23 @@ +@import '../light/list'; + +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a dark list schema. +/// @type {Map} +/// @property {Color} background [#222] - The list background color. +/// @property {Color} header-background [#222] - The list header background color. +/// @property {Color} item-background [#222] - The list item background color. +/// @property {Color} item-background-active [lighten(#222, 10%)] - The active list item background color. +/// @requires {function} extend +/// @requires $_light-list +/// @see $default-palette +$_dark-list: extend($_light-list, ( + background: #222, + header-background: #222, + item-background: #222, + item-background-active: lighten(#222, 10%) +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_navbar.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_navbar.scss new file mode 100644 index 00000000000..51586576014 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_navbar.scss @@ -0,0 +1,15 @@ +@import '../light/navbar'; + +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a dark navbar schema. +/// @type {Map} +/// @requires {function} extend +/// @requires $_light-navbar +/// @see $default-palette + +$_dark-navbar: extend($_light-navbar, ()); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_navdrawer.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_navdrawer.scss new file mode 100644 index 00000000000..f7cf5bab078 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_navdrawer.scss @@ -0,0 +1,18 @@ +@import '../light/navdrawer'; + +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a dark navdrawer schema. +/// @type {Map} +/// @prop {Color} background [#222] - The navigation drawer background color. +/// @requires {function} extend +/// @requires $_light-navdrawer +/// @see $default-palette + +$_dark-navdrawer: extend($_light-navdrawer, ( + background: #222 +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_overlay.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_overlay.scss new file mode 100644 index 00000000000..57266926130 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_overlay.scss @@ -0,0 +1,15 @@ +@import '../light/overlay'; + +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a dark overlay schema. +/// @type {Map} +/// @requires {function} extend +/// @requires $_light-overlay +/// @see $default-palette + +$_dark-overlay: extend($_light-overlay, ()); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_progress.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_progress.scss new file mode 100644 index 00000000000..6613f0e8aa0 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_progress.scss @@ -0,0 +1,23 @@ +@import '../light/progress'; + +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a dark progress-linear schema. +/// @type {Map} +/// @requires {function} extend +/// @requires $_light-progress-linear +/// @see $default-palette + +$_dark-progress-linear: extend($_light-progress-linear, ()); + +/// Generates a dark progress-circular schema. +/// @type {Map} +/// @requires {function} extend +/// @requires $_light-progress-circular +/// @see $default-palette + +$_dark-progress-circular: extend($_light-progress-circular, ()); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_radio.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_radio.scss new file mode 100644 index 00000000000..7c2486480eb --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_radio.scss @@ -0,0 +1,15 @@ +@import '../light/radio'; + +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a dark radio schema. +/// @type {Map} +/// @requires {function} extend +/// @requires $_light-ripple +/// @see $default-palette + +$_dark-radio: extend($_light-radio, ()); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_ripple.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_ripple.scss new file mode 100644 index 00000000000..d2dc5de9d1b --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_ripple.scss @@ -0,0 +1,16 @@ +@import '../light/ripple'; + +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a dark ripple schema. +/// @type {Map} +/// @requires {function} extend +/// @requires $_light-ripple +/// @see $default-palette + + +$_dark-ripple: extend($_light-ripple, ()); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_slider.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_slider.scss new file mode 100644 index 00000000000..f8bc1804bb3 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_slider.scss @@ -0,0 +1,15 @@ +@import '../light/slider'; + +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a dark slider schema. +/// @type {Map} +/// @requires {function} extend +/// @requires $_light-slider +/// @see $default-palette + +$_dark-slider: extend($_light-slider, ()); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_snackbar.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_snackbar.scss new file mode 100644 index 00000000000..009214aae98 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_snackbar.scss @@ -0,0 +1,15 @@ +@import '../light/snackbar'; + +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a dark snackbar schema. +/// @type {Map} +/// @requires {function} extend +/// @requires $_light-snackbar +/// @see $default-palette + +$_dark-snackbar: extend($_light-snackbar, ()); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_switch.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_switch.scss new file mode 100644 index 00000000000..44b7c384575 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_switch.scss @@ -0,0 +1,21 @@ +@import '../light/switch'; + +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light switch schema. +/// @type {Map} +/// @prop {map} thumb-disabled-color [igx-color: ('grays', 400), hexrgba: #000] - The color of the thumb when the switch is disabled. +/// @requires {function} extend +/// @requires $_light-switch +/// @see $default-palette + +$_dark-switch: extend($_light-switch, ( + thumb-disabled-color: ( + igx-color: ('grays', 400), + hexrgba: #000 + ) +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_tabs.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_tabs.scss new file mode 100644 index 00000000000..1f111f5c30e --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_tabs.scss @@ -0,0 +1,20 @@ +@import '../light/badge'; + +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a dark tabs schema. +/// @type {Map} +/// @prop {Color} item-background [#222] - The background color used for the tabs header. +/// @prop {Color} button-background [#222] - The color used for the button background. +/// @requires {function} extend +/// @requires $_light-tabs +/// @see $default-palette + +$_dark-tabs: extend($_light-tabs, ( + item-background: #222, + button-background: #222 +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_time-picker.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_time-picker.scss new file mode 100644 index 00000000000..611c3ddce16 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_time-picker.scss @@ -0,0 +1,19 @@ +@import '../light/badge'; + +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a dark time-picker schema. +/// @type {Map} +/// @property {Color} background-color [#222] - The time-picker panel background color. +/// @requires {function} extend +/// @requires $_light-time-picker +/// @see $default-palette + + +$_dark-time-picker: extend($_light-time-picker, ( + background-color: #222 +)); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_toast.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_toast.scss new file mode 100644 index 00000000000..ff1da5a1ba9 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_toast.scss @@ -0,0 +1,15 @@ +@import '../light/toast'; + +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a dark toast schema. +/// @type {Map} +/// @requires {function} extend +/// @requires $_light-toast +/// @see $default-palette + +$_dark-toast: extend($_light-toast, ()); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_tooltip.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_tooltip.scss new file mode 100644 index 00000000000..b7c66c27bc4 --- /dev/null +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark/_tooltip.scss @@ -0,0 +1,14 @@ +@import '../light/tooltip'; +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light tooltip schema. +/// @type {Map} +/// @requires {function} extend +/// @requires $_light-tooltip +/// @see $default-palette + +$_dark-tooltip: extend($_light-tooltip, ()); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_avatar.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_avatar.scss index fd1a487462f..1098a6518b1 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_avatar.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_avatar.scss @@ -1,6 +1,18 @@ -$_light-avatar: ( - name: 'igx-avatar', +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// +/// Generates a light avatar schema. +/// @type {Map} +/// @property {Map} icon-background [igx-color: ('grays', 400)]- The background color used for avatars of type icon. +/// @property {Map} icon-color [igx-color: ('grays', 800)] - The icon color used for avatars of type icon. +/// @property {Map} initials-background [igx-color: ('grays', 400)] - The background color used for avatars of type initials. +/// @property {Map} initials-color [igx-color: ('grays', 800)] - The text color used for avatars of type initials. +/// @property {Color} image-background [transparent] - The background color used for avatars of type image. +/// @see $default-palette +$_light-avatar: ( icon-background: ( igx-color: ('grays', 400) ), diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_badge.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_badge.scss index 35062eae5b7..3e08a43bbb2 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_badge.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_badge.scss @@ -1,8 +1,27 @@ +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a light badge schema. +/// @type {Map} +/// @property {Map} icon-color [igx-contrast-color: ('primary', 500)] - The icon color used. +/// @property {Map} text-color [igx-contrast-color: ('primary', 500)] - The text color used. +/// @property {Color} border-color [#fff] - The border color used. +/// @property {Map} background-color [igx-color: ('primary', 500)] - The background color used. +/// @see $default-palette $_light-badge: ( - name: 'igx-badge', - icon-color: #fff, - text-color: #fff, + icon-color: ( + igx-contrast-color: ('primary', 500) + ), + + text-color: ( + igx-contrast-color: ('primary', 500) + ), + border-color: #fff, + background-color: ( igx-color: ('primary', 500) ) diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_banner.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_banner.scss index 973fb28126b..f80a585c631 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_banner.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_banner.scss @@ -1,5 +1,19 @@ +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light banner schema. +/// @type {Map} +/// @property {Color} banner-background [#fff]- The background color used banner background. +/// @property {Color} banner-message-color [igx-color: ('grays', 900)]- The color used for banner label. +/// @property {Color} banner-border-color [igx-color: ('grays', 400)] - The border color used banner border. +/// @property {Color} banner-illustration-background [igx-color: ('grays', 100)] - The background color used for banner illustration. +/// @property {Color} banner-illustration-color [igx-color: ('grays', 900)] - The color used banner illustration. +/// @see $default-palette + $_light-banner: ( - name: 'igx-banner', banner-background: #fff, banner-message-color: ( diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_bottom-nav.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_bottom-nav.scss index 8ec2fb9dc7e..db401b4cbba 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_bottom-nav.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_bottom-nav.scss @@ -1,5 +1,17 @@ +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a light bottom navigation scheme. +/// @type {Map} +/// @property {Color} background [#fff] - The background color used for the toast. +/// @property {Color} idle-item-color [igx-color: ('grays', 700)] - The text-color used for the idle color. +/// @property {Color} active-item-color [igx-color: ('primary', 500)] - The text-color used for the active color. +/// @see $default-palette + $_light-bottom-nav: ( - name: 'igx-bottom-nav', background: #fff, idle-item-color: ( diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_button-group.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_button-group.scss index 4689ff4b85e..1604e120106 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_button-group.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_button-group.scss @@ -1,5 +1,26 @@ +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a light button group schema. +/// @type {Map} +/// @prop {Color} item-text-color [igx-color: ('grays', 700)]- The text color for button group items. +/// @prop {Color} item-background [#fff] - The background color for button group items . +/// @prop {Color} item-border-color [transparent] - The border color between button group items. +/// +/// @prop {Color} item-hover-text-color [igx-color: ('grays', 800)] - The hover text color for button group items. +/// @prop {Color} item-hover-background [igx-color: ('grays', 400)] - The hover background color for button group items. +/// +/// @prop {Color} disabled-text-color [igx-color: ('grays', 400)]- The text/icon color for a disabled item in the button group. +/// @prop {Color} disabled-background-color [igx-color: ('grays', 100)] - The background color for a disabled item in the button group. +/// +/// @prop {Color} item-selected-text-color [igx-color: ('grays', 800)]- The text color for a selected item in the button group. +/// @prop {Color} item-selected-background [igx-color: ('grays', 400)] - The background color for a selected item in the button group. +/// @prop {Color} item-selected-border-color [igx-color: ('grays', 600), rgba: .12] - The border color for a selected item from the button group. +/// @see $default-palette $_light-button-group: ( - name: 'igx-button-group', item-background: #fff, item-border-color: transparent, diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_button.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_button.scss index dde4d6b32e0..4806e281af5 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_button.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_button.scss @@ -1,6 +1,40 @@ +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a light button schema. +/// @type {Map} +/// @property {String} button-roundness [4px]- The edge roundness (border-radius) for flat and raised buttons. +/// @property {Color} flat-background [transparent] - The background color of a flat button. +/// @property {Map} flat-text-color [igx-color: ('secondary', 500)] - The idle text color of a flat button. +/// @property {Map} flat-hover-background [igx-color: ('secondary', 500), rgba: .05 ] - The hover background color of a flat button. +/// @property {Map} flat-hover-text-color [igx-color: ('secondary', 500)] - The hover text color of a flat button. +/// @property {Map} flat-focus-background [igx-color: ('secondary', 400), rgba: .12] - The focus background color of a flat button. +/// @property {Map} flat-focus-text-color [igx-color: ('secondary', 500)] - The focus text color of a flat button. +/// @property {Map} raised-background [igx-color: ('secondary', 500)] - The background color of a raised button. +/// @property {Map} raised-text-color [igx-contrast-color: ('secondary', 500)] - The idle text color of a raised button. +/// @property {Map} raised-hover-background [igx-color: ('secondary', 300)] - The hover background of a raised button. +/// @property {Map} raised-hover-text-color [igx-contrast-color: ('secondary', 300)] - The hover text color of a raised button. +/// @property {Map} raised-focus-background [igx-color: ('secondary', 300)] - The focus background color of a raised button. +/// @property {Map} raised-focus-text-color [igx-contrast-color: ('secondary', 300)] - The focus text color of a raised button. +/// @property {Map} fab-background [igx-color: ('secondary', 500)] - The background color of a floating action button. +/// @property {Map} fab-text-color [igx-contrast-color: ('secondary', 500)] - The text color of a floating action button. +/// @property {Map} fab-hover-background [igx-color: ('secondary', 300)] - The hover background color of a floating action button. +/// @property {Map} fab-hover-text-color [igx-contrast-color: ('secondary', 300)] - The hover text color of a floating action button. +/// @property {Map} fab-focus-background [igx-color: ('secondary', 300)] - The focus background color of floating action button. +/// @property {Map} fab-focus-text-color [igx-contrast-color: ('secondary', 300)] - The focus text color of a floating action button. +/// @property {Map} icon-color [igx-color: ('grays', 800)] - The icon color of an icon button. +/// @property {Map} icon-hover-color [igx-color: ('grays', 800)] - The hover icon color of an icon button. +/// @property {Color} icon-background [transparent] - The background color of the an icon button. +/// @property {Map} icon-hover-background [igx-color: ('grays', 100)] - The hover background color of an icon button. +/// @property {Map} icon-focus-color [igx-color: ('grays', 800)] - The focus icon color of an icon button. +/// @property {Map} icon-focus-background [igx-color: ('grays', 400] - The focus background color an icon button. +/// @property {Color} disabled-color [igx-color: ('grays', 400)] - The disabled text/icon color of a button. +/// @property {Color} disabled-background [igx-color: ('grays', 100)] - The disabled background color of raised, fab, or icon buttons. +/// @see $default-palette $_light-button: ( - name: 'igx-button', - button-roundness: 4px, flat-background: transparent, diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_calendar.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_calendar.scss index dc242b2506a..f8aa734bedb 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_calendar.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_calendar.scss @@ -1,6 +1,34 @@ +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a light calendar schema. +/// @type {Map} +/// @prop {Color} content-background [#fff] - The main content background color. +/// @prop {Map} content-text-color [igx-color: ('grays', 900)] - The main content text color. +/// @prop {Map} header-background [igx-color: ('secondary', 500)] - The header background color. +/// @prop {Map} header-text-color [igx-contrast-color: ('secondary', 500)] - The header text color. +/// @prop {Map} picker-arrow-color [igx-color: ('grays', 800)] - The idle picker arrow color. +/// @prop {Map} picker-arrow-hover-color [igx-color: ('secondary', 500)] - The picker hover arrow color. +/// @prop {Map} picker-text-color [igx-color: ('grays', 800)]- The idle picker month/year color. +/// @prop {Map} picker-text-hover-color [igx-color: ('secondary', 500)]- The hover picker month/year color. +/// @prop {Map} inactive-text-color [igx-color: ('grays', 400)] - The text color for weekday labels and other month dates. +/// @prop {Map} weekend-text-color [igx-color: ('grays', 500)] - The text color for weekend days. +/// @prop {Map} year-current-text-color [igx-color: ('secondary', 500)] - The text color for the current/selected year. +/// @prop {Map} month-current-text-color [igx-color: ('secondary', 500)]- The text color for the current/selected month. +/// @prop {Map} year-hover-text-color [igx-color: ('secondary', 500)] - The year hover text color. +/// @prop {Map} month-hover-text-color [igx-color: ('secondary', 500)] - The month hover text color. +/// @prop {Map} date-selected-background [igx-color: ('secondary', 500)] - The background color for the selected date. +/// @prop {Map} date-selected-text-color [igx-contrast-color: ('secondary', 500)] - The text color for the selected date. +/// @prop {Map} date-current-text-color [igx-color: ('secondary', 500)] - The text color for the current date. +/// @prop {Map} date-hover-background [igx-color: ('grays', 200)] - The hover date background color. +/// @prop {Map} date-special-background [igx-color: ('grays', 100)] - The background color used for special dates. +/// @prop {Map} date-special-text-color [igx-color: ('grays', 900)] - The text color used for special dates. +/// @prop {Map} date-disabled-text-color [igx-color: ('grays', 500), hexrgba: (), rgba: .6] - The text color for disabled dates. +/// @see $default-palette $_light-calendar: ( - name: 'igx-calendar', - content-background: #fff, content-text-color: ( diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_card.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_card.scss index b755f7066ea..1c70be06523 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_card.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_card.scss @@ -1,5 +1,18 @@ +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a light card schema. +/// @type {Map} +/// @prop {Color} background [#fff]- The card background color. +/// @prop {Map} header-text-color [igx-color: ('grays', 800)] - The text color of the card title. +/// @prop {Map} subtitle-text-color [igx-color: ('grays', 600)] - The text color of the card subtitle. +/// @prop {Map} content-text-color [igx-color: ('grays', 600)] - The text color of the card content. +/// @prop {Map} actions-text-color [igx-color: ('grays', 600)] - The text color of the card buttons. +/// @see $default-palette $_light-card: ( - name: 'igx-card', background: #fff, header-text-color: ( diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_carousel.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_carousel.scss index 19099e27082..7fefd400380 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_carousel.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_carousel.scss @@ -1,5 +1,20 @@ +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a light carousel schema. +/// @type {Map} +/// @prop {Color} button-background [#fff] - The previous/next buttons idle background color. +/// @prop {Color} button-hover-background [#fff] - The previous/next buttons hover background color. +/// @prop {Map} button-arrow-color [igx-color: ('grays', 700)] - The previous/next buttons idle arrow color. +/// @prop {Map} button-hover-arrow-color [igx-color: ('grays', 900)] - The previous/next buttons hover arrow color. +/// @prop {Color} indicator-dot-color [#fff] - The active indicator dot color. +/// @prop {Color} indicator-border-color [#fff] - The idle indicator border color. +/// @prop {Color} indicator-active-border-color [#fff] - The active indicator border color. +/// @see $default-palette $_light-carousel: ( - name: 'igx-carousel', button-background: #fff, button-hover-background: #fff, diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_checkbox.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_checkbox.scss index e8bc10b5017..46bb22e0dd4 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_checkbox.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_checkbox.scss @@ -1,5 +1,18 @@ +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a light checkbox schema. +/// @type {Map} +/// @prop {Color} tick-color [#fff] - The checked mark color. +/// @prop {Map} label-color [igx-color: ('grays', 900)]- The text color used for the label text. +/// @prop {Map} empty-color [igx-color: ('grays', 600)] - The unchecked border color. +/// @prop {Map} fill-color [igx-color: ('secondary', 500)] - The checked border and fill colors. +/// @prop {Map} disabled-color [igx-color: ('grays', 400)] - The disabled border and fill colors. +/// @see $default-palette $_light-checkbox: ( - name: 'igx-checkbox', tick-color: #fff, label-color: ( diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_chip.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_chip.scss index 0fe3b175e20..5f3e7d56206 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_chip.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_chip.scss @@ -1,5 +1,30 @@ +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a light chip schema. +/// @type {Map} +/// @prop {Number} roundness [32px] - The chip roundness. +/// @prop {Map} text-color [igx-color: ('grays', 700)] - The chip text color. +/// @prop {Map} background [igx-color: ('grays', 200)] - The chip background color. +/// @prop {Color} border-color [transparent] - The chip border color. +/// @prop {Map} ghost-background [igx-color: ('grays', 400), hexrgba: #fff)] - The chip ghost background color. +/// @prop {Map} hover-text-color [igx-color: ('grays', 700)] - The chip text hover color. +/// @prop {Map} hover-background [igx-color: ('grays', 300)] - The chip hover background color. +/// @prop {Color} hover-border-color [transparent] - The chip hover border color. +/// @prop {Map} selected-text-color [igx-color: ('grays', 700)] - The selected chip text color. +/// @prop {Map} selected-background [igx-color: ('grays', 300)] - The selected chip background color. +/// @prop {Color} selected-border-color [transparent] The selected chip border color. +/// @prop {Map} hover-selected-text-color [igx-color: ('grays', 700)] - The selected chip hover text color. +/// @prop {Map} hover-selected-background [igx-color: ('grays', 400)] - The selected chip hover background color. +/// @prop {Map} hover-selected-border-color [transparent] - The selected chip hover border color. +/// @prop {Map} focus-selected-text-color [igx-color: ('grays', 700)] - The selected chip text focus color. +/// @prop {Map} focus-selected-background [igx-color: ('grays', 400)] - The selected chip focus background color. +/// @prop {Map} focus-selected-border-color [transparent] - The selected chip focus border color. +/// @see $default-palette $_light-chip: ( - name: 'igx-chip', roundness: rem(32px), text-color: ( @@ -12,6 +37,11 @@ $_light-chip: ( border-color: transparent, + ghost-background: ( + igx-color: ('grays', 400), + hexrgba: #fff + ), + hover-text-color: ( igx-color: ('grays', 700) ), diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_column-hiding.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_column-hiding.scss index 08b5c8d70ed..c29b954031d 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_column-hiding.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_column-hiding.scss @@ -1,5 +1,15 @@ +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a light column hiding schema. +/// @type {Map} +/// @prop {Map} title-color [igx-color: ('primary', 500)]- The text color used for the title of the list. +/// @prop {Color} background-color [transparent] - The background color of the panel. +/// @see $default-palette $_light-column-hiding: ( - name: 'igx-column-hiding', background-color: transparent, title-color: ( igx-color: ('primary', 500) diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_combo.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_combo.scss index b3921cf5df4..26895012334 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_combo.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_combo.scss @@ -1,5 +1,16 @@ +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a light combo schema. +/// @type {Map} +/// @prop {Color} empty-list-background [#fff] - The combo list background color. +/// @prop {Color} search-separator-border-color [igx-color: ('grays', 300)] - The combo search box separator color. +/// @prop {Color} empty-list-placeholder-color [igx-color: ('grays', 400)] - The combo placeholder text color. +/// @see $default-palette $_light-combo: ( - name: 'igx-combo', empty-list-background: #fff, search-separator-border-color: ( diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_date-picker.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_date-picker.scss index a45fde16926..1a2fe5b578c 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_date-picker.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_date-picker.scss @@ -1,3 +1,10 @@ -$_light-date-picker: ( - name: 'igx-date-picker' -); +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a light date picker schema. +/// @type {Map} +/// @see $default-palette +$_light-date-picker: (); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_dialog.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_dialog.scss index d0c34480f05..1ec885a268f 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_dialog.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_dialog.scss @@ -1,5 +1,16 @@ +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a light dialog schema. +/// @type {Map} +/// @prop {Color} background [#fff] - The dialog background color. +/// @prop {Map} title-color [igx-color: ('grays', 800)] - The dialog title text color. +/// @prop {Map} message-color [igx-color: ('grays', 600)] - The dialog message text color. +/// @see $default-palette $_light-dialog: ( - name: 'igx-dialog', background: #fff, title-color: ( diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_drop-down.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_drop-down.scss index 07ff600ef48..ebc571c6754 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_drop-down.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_drop-down.scss @@ -1,6 +1,28 @@ -$_light-drop-down: ( - name: 'igx-drop-down', +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// +/// Generates a light drop-down schema. +/// @type {Map} +/// @prop {Color} background-color [#fff] - The drop-down background color. +/// @prop {Map} header-text-color [igx-color: ('secondary', 500)] - The drop-down header text color. +/// @prop {Map} item-text-color [igx-color: ('grays', 800)] - The drop-down text color. +/// @prop {Map} hover-item-text-color [igx-color: ('grays', 800)] - The drop-down hover text color. +/// @prop {Map} hover-item-background [igx-color: ('grays', 100)] - The drop-down hover item background color. +/// @prop {Map} focused-item-background [igx-color: ('grays', 100)] - The drop-down focused item background color. +/// @prop {Map} focused-item-text-color [igx-color: ('grays', 800)] - The drop-down focused item text color. +/// @prop {Map} selected-item-background [igx-color: ('secondary', 500)] - The drop-down selected item background color. +/// @prop {Map} selected-item-text-color [igx-contrast-color: ('secondary', 500)] - The drop-down selected item text color. +/// @prop {Map} selected-hover-item-background [igx-color: ('secondary', 300)] - The drop-down selected item hover background color. +/// @prop {Map} selected-hover-item-text-color [igx-contrast-color: ('secondary', 300)] - The drop-down selected item hover text color. +/// @prop {Map} selected-focus-item-background [igx-color: ('secondary', 300)] - The drop-down selected item focus background color. +/// @prop {Map} selected-focus-item-text-color [igx-contrast-color: ('secondary', 300)] - The drop-down selected item focus text color. +/// @prop {Color} disabled-item-background [transparent] - The drop-down disabled item background color. +/// @prop {Map} disabled-item-text-color [igx-color: ('grays', 500)] - The drop-down disabled item text color. +/// @see $default-palette +$_light-drop-down: ( background-color: #fff, header-text-color: ( diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_expansion-panel.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_expansion-panel.scss index e296d70f18e..bc087749057 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_expansion-panel.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_expansion-panel.scss @@ -1,5 +1,21 @@ +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a light expansion panel schema. +/// @type {Map} +/// @prop {Color} header-background [#fff] - The panel header background color. +/// @prop {Color} body-background [#fff] - The panel body background color. +/// @prop {Map} header-focus-background [igx-color: ('grays', 100)] - The panel header focus background color. +/// @prop {Map} header-title-color [igx-color: ('grays', 800)] - The panel header title text color. +/// @prop {Map} header-description-color [igx-color: ('grays', 600)] - The panel header description text color. +/// @prop {Map} header-icon-color [igx-color: ('grays', 800)] - The panel header icon color. +/// @prop {Map} body-color [igx-color: ('grays', 800)] - The panel body text color. +/// @prop {Map} disabled-color [igx-color: ('grays', 500)] - The panel disabled text color. +/// @see $default-palette $_light-expansion-panel: ( - name: 'igx-expansion-panel', header-background: #fff, body-background: #fff, diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_grid-filtering.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_grid-filtering.scss index 0468c1ba255..ea3679514e6 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_grid-filtering.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_grid-filtering.scss @@ -1,5 +1,25 @@ +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a light grid-filtering schema. +/// @type {Map} +/// @prop {Color} menu-background [#fff] - The idle menu background color. +/// @prop {Color} toggle-background [transparent] - The idle toggle background color. +/// @prop {Color} toggle-filtered-background [transparent] - The filtered toggle background color. +/// @prop {Color} toggle-icon-color [inherit] - The idle toggle icon color. +/// @prop {Color} toggle-icon-hover-color [#fff] - The hover toggle icon color. +/// @prop {Color} menu-button-disabled-text-color [initial] - The menu disabled button text color. +/// @prop {Color} toggle-icon-active-color [igx-contrast-color: ('secondary', 500)] - The active toggle icon color. +/// @prop {Color} toggle-icon-filtered-color [igx-color: ('secondary', 500)] - The filtered toggle icon color. +/// @prop {Color} toggle-hover-background [igx-color: ('grays', 300)] - The hover toggle background color. +/// @prop {Color} toggle-active-background [igx-color: ('secondary', 500)] - The active toggle background color. +/// @prop {Color} menu-text-color [igx-color: ('grays', 900)] - The idle menu text color. +/// @prop {Color} menu-button-text-color [igx-color: ('secondary', 500)] - The menu button text color. +/// @see $default-palette $_light-grid-filtering: ( - name: 'igx-grid-filtering', menu-background: #fff, toggle-background: transparent, toggle-filtered-background: transparent, diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_grid-pagination.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_grid-pagination.scss index d9065938442..9f6b04581ef 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_grid-pagination.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_grid-pagination.scss @@ -1,11 +1,21 @@ -$_light-grid-pagination: ( - name: 'igx-grid-paginator', +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// +/// Generates a light avatar schema. +/// @type {Map} +/// @prop {Color} text-color [currentColor] - The text color. +/// @prop {Map} background-color [igx-color: ('grays', 100), hexrgba: #fff] - The background color of the paging panel. +/// @prop {Map} border-color [igx-color: ('grays', 400)] - The border color of the paging panel. +/// @see $default-palette +$_light-grid-pagination: ( text-color: currentColor, background-color: ( igx-color: ('grays', 100), - hexrgba: () + hexrgba: #fff ), border-color: ( diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_grid-summary.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_grid-summary.scss index 43137d34d11..8c9c710f5e5 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_grid-summary.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_grid-summary.scss @@ -1,31 +1,46 @@ -$_light-grid-summary: ( - name: 'igx-grid-summary', +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light grid-summary schema. +/// @type {Map} +/// +/// @property {Color} background-color [inherit] - The summaries background color is inherited form igx-grid__tfoot +/// @property {map} label-color [igx-color: ('primary', 500)] - The summaries label color. +/// @property {Color} result-color [currentColor] - The summaries value/result color. +/// @property {map} border-color [igx-color: ('grays', 400)] - The summaries border color. +/// @property {String} pinned-border-width [2px] - The border width of the summary panel. +/// @property {String} pinned-border-style [solid] - The border style of the summary panel. +/// @property {map} pinned-border-color [igx-color: ('grays', 400)] - The border color of the summary panel. +/// @property {map} inactive-color [igx-color: ('grays', 400)] - The summaries inactive label color. +/// @property {map} label-hover-color [igx-color: ('primary', 700)] - The summaries hover label color. +/// +/// @see $default-palette +$_light-grid-summary: ( background-color: inherit, - - result-color: currentColor, - label-color: ( igx-color: ('primary', 500) ), - label-hover-color: ( - igx-color: ('primary', 700) - ), - + result-color: currentColor, border-color: ( igx-color: ('grays', 400) ), pinned-border-width: 2px, - pinned-border-style: solid, - pinned-border-color: ( igx-color: ('grays', 400) ), inactive-color: ( igx-color: ('grays', 400) + ), + + label-hover-color: ( + igx-color: ('primary', 700) ) ); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_grid-toolbar.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_grid-toolbar.scss index fcda7962805..b69f23b1368 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_grid-toolbar.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_grid-toolbar.scss @@ -1,18 +1,42 @@ -$_light-grid-toolbar: ( - name: 'igx-grid-toolbar', +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light grid-toolbar schema. +/// @type {Map} +/// +/// @property {map} background-color [igx-color: ('grays', 50)] - The toolbar background color. +/// @property {map} title-text-color [igx-color: ('grays', 600)] - The toolbar title text color. +/// @property {map} button-background [igx-color: ('grays', 100)] - The toolbar button background color. +/// @property {map} button-text-color [igx-color: ('grays', 600)] - The toolbar button text color. +/// @property {map} button-hover-background [igx-color: ('grays', 100)] - The toolbar button hover background color. +/// @property {map} button-hover-text-color [igx-color: ('grays', 600)] - The toolbar button hover text color. +/// @property {map} button-focus-background [igx-color: ('grays', 100)] - The toolbar button focus background color. +/// @property {map} button-focus-text-color [igx-color: ('grays', 600)] - The toolbar button focus text color. +/// @property {Color} dropdown-background [#fff] - The toolbar drop-down background color. +/// @property {map} item-text-color [igx-color: ('grays', 600)] - The toolbar drop-down item text color. +/// @property {map} item-hover-background [igx-color: ('grays', 100)] - The toolbar drop-down item hover background color. +/// @property {map} item-hover-text-color [igx-color: ('grays', 600)] - The toolbar drop-down item hover text color. +/// @property {map} item-focus-background [igx-color: ('grays', 100)] - The toolbar drop-down item focus background color. +/// @property {map} item-focus-text-color [igx-color: ('grays', 600)] - The toolbar drop-down item focus text color. +/// +/// @see $default-palette +$_light-grid-toolbar: ( background-color: ( igx-color: ('grays', 50) ), - button-background: ( - igx-color: ('grays', 100) - ), - title-text-color : ( igx-color: ('grays', 600) ), + button-background: ( + igx-color: ('grays', 100) + ), + button-text-color: ( igx-color: ('grays', 600) ), diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_grid.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_grid.scss index 4fddf6f7044..cc207f60ea9 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_grid.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_grid.scss @@ -1,9 +1,64 @@ +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + +/// Generates a light grid schema. +/// @type {Map} +/// @prop {Map} header-background [igx-color: ('grays', 100), hexrgba: #fff] - The table header background color. +/// @prop {Map} header-text-color [igx-color: ('grays', 600)] - The table header text color. +/// @prop {Number} header-border-width [1px] - The border width used for header borders. +/// @prop {String} header-border-style [solid] - The border style used for header borders. +/// @prop {Map} header-border-color [igx-color: ('grays', 200)] - The color used for header borders. +/// @prop {Map} ghost-header-text-color [igx-color: ('grays', 600)] - The dragged header text color. +/// @prop {Map} ghost-header-icon-color [igx-color: ('grays', 500)] - The dragged header icon color. +/// @prop {Color} ghost-header-background [#fff] - The dragged header background color. +/// @prop {Color} content-background [#fff] - The table body background color. +/// @prop {Map} content-text-color [igx-color: ('grays', 800)] - The table body text color. +/// @prop {Color} row-odd-background [#fff] - The background color of odd rows. +/// @prop {Color} row-even-background [#fff] - The background color of even rows. +/// @prop {Color} row-odd-text-color [inherit] - The text color of odd rows. +/// @prop {Color} row-even-text-color [inherit] - The text color of even rows. +/// @prop {Map} row-selected-background [igx-color: ('grays', 800), hexrgba: #fff] - The selected row background color. +/// @prop {Map} row-selected-text-color [igx-contrast-color: ('grays', 800)] - The selected row text color. +/// @prop {Map} row-hover-background [igx-color: ('grays', 200), hexrgba: #fff] - The hover row background color. +/// @prop {Map} row-hover-text-color [igx-contrast-color: ('grays', 200)] - The hover row text color. +/// @prop {Map} row-border-color [igx-color: ('grays', 300)] - The row bottom border color. +/// @prop {Number} pinned-border-width [2px] - The border width of the pinned border. +/// @prop {String} pinned-border-style [solid] - The CSS border style of the pinned border. +/// @prop {Map} pinned-border-color [igx-color: ('grays', 400)] - The color of the pinned border. +/// @prop {Map} cell-selected-background [igx-color: ('primary', 500)] - The selected cell background color. +/// @prop {Map} cell-selected-text-color [igx-contrast-color: ('primary', 500)] - The selected cell text color. +/// @prop {Map} resize-line-color [igx-color: ('secondary', 500)] - The table header resize line color. +/// @prop {Map} grouparea-background [igx-color: ('grays', 100), hexrgba: #fff] - The grid group area background color. +/// @prop {Map} group-row-background [igx-color: ('grays', 100), hexrgba: #fff] - The grid group row background color. +/// @prop {Map} group-row-selected-background [igx-color: ('grays', 200), hexrgba: #fff] - The drop area background on drop color. +/// @prop {Map} active-expand-icon-color [igx-color: ('grays', 500)] - The drop area background on drop color. +/// @prop {Map} active-expand-icon-hover-color [igx-color: ('primary', 500)] - The drop area background on drop color. +/// @prop {Map} group-label-column-name-text [igx-color: ('primary', 500)] - The grid group row column name text color. +/// @prop {Map} group-label-icon [igx-color: ('primary', 500)] - The grid group row icon color. +/// @prop {Map} group-label-text [igx-color: ('grays', 800)] - The grid group row text color. +/// @prop {Map} expand-all-icon-color [igx-color: ('grays', 600)] - The grid header expand all group rows icon color. +/// @prop {Map} expand-all-icon-hover-color [igx-color: ('grays', 800)] - The grid header expand all group rows icon hover color. +/// @prop {Map} expand-icon-color [igx-color: ('grays', 600)] - The grid row expand icon color. +/// @prop {Map} expand-icon-hover-color [igx-color: ('primary', 500)] - The grid row expand icon hover color. +/// @prop {Map} group-count-background [igx-color: ('grays', 200)] - The grid group row cont badge background color. +/// @prop {Map} group-count-text-color [igx-color: ('grays', 600)] - The grid group row cont badge text color. +/// @prop {Map} drop-area-text-color [igx-color: ('grays', 600)] - The drop area text color. +/// @prop {Map} drop-area-icon-color [igx-color: ('grays', 500)] - The drop area icon color. +/// @prop {Map} drop-area-background [igx-color: ('grays', 100)] - The drop area background color. +/// @prop {Map} drop-area-on-drop-background [igx-color: ('grays', 200)] - The drop area background on drop color. +/// @prop {Map} tree-filtered-text-color [igx-color: ('grays', 500)] - grouping row background color on focus. +/// @prop {Color} filtering-header-background [#fff] - The background color of the filtered column header. +/// @prop {Map} filtering-header-text-color [igx-color: ('grays', 800)] - The text color color of the filtered column header. +/// @prop {Color} filtering-row-background [#fff] - The background color of the filtering row. +/// @prop {Map} filtering-row-text-color [igx-color: ('grays', 800)] - The text-color color of the filtering row. +/// @see $default-palette $_light-grid: ( - name: 'igx-grid', - header-background: ( igx-color: ('grays', 100), - hexrgba: () + hexrgba: #fff ), header-text-color: ( @@ -39,7 +94,7 @@ $_light-grid: ( row-selected-background: ( igx-color: ('grays', 800), - hexrgba: () + hexrgba: #fff ), row-selected-text-color: ( @@ -48,7 +103,7 @@ $_light-grid: ( row-hover-background: ( igx-color: ('grays', 200), - hexrgba: () + hexrgba: #fff ), row-hover-text-color: ( @@ -97,7 +152,7 @@ $_light-grid: ( grouparea-background: ( igx-color: ('grays', 100), - hexrgba: () + hexrgba: #fff ), group-label-column-name-text: ( @@ -162,12 +217,12 @@ $_light-grid: ( group-row-background: ( igx-color: ('grays', 100), - hexrgba: () + hexrgba: #fff ), group-row-selected-background: ( igx-color: ('grays', 200), - hexrgba: () + hexrgba: #fff ), filtering-header-background: #fff, diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_icon.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_icon.scss index a3a15702924..e980f92b724 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_icon.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_icon.scss @@ -1,6 +1,19 @@ -$_light-icon: ( - name: 'igx-icon', +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light icon schema. +/// @type {Map} +/// +/// @property {Color} color [currentColor] - The icon color. +/// @property {String} size [rem(24px)] - The icon size. +/// @property {Color} disabled-color [currentColor] - The disabled icon color. +/// +/// @see $default-palette +$_light-icon: ( color: currentColor, size: rem(24px), diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_index.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_index.scss index 3204f8d5b88..3bd6057c9db 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_index.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_index.scss @@ -1,3 +1,9 @@ +//// +/// @group schemas +/// @access private +/// @author Simeon Simeonoff +//// + @import './avatar'; @import './badge'; @import './banner'; @@ -37,6 +43,48 @@ @import './toast'; @import './tooltip'; +/// The default light schema for all components. +/// @type {Map} +/// @property {Map} igx-avatar [$_light-avatar] +/// @property {Map} igx-badge [$_light-badge] +/// @property {Map} igx-banner [$_light-banner] +/// @property {Map} igx-bottom-nav [$_light-bottom-nav] +/// @property {Map} igx-button [$_light-button] +/// @property {Map} igx-button-group [$_light-button-group] +/// @property {Map} igx-calendar [$_light-calendar] +/// @property {Map} igx-card [$_light-card] +/// @property {Map} igx-carousel [$_light-carousel] +/// @property {Map} igx-checkbox [$_light-checkbox] +/// @property {Map} igx-chip [$_light-chip] +/// @property {Map} igx-column-hiding [$_light-column-hiding] +/// @property {Map} igx-combo [$_light-combo] +/// @property {Map} igx-date-picker [$_light-date-picker] +/// @property {Map} igx-dialog [$_light-dialog] +/// @property {Map} igx-drop-down [$_light-drop-down] +/// @property {Map} igx-expansion-panel [$_light-expansion-panel] +/// @property {Map} igx-grid [$_light-grid] +/// @property {Map} igx-grid-filtering [$_light-grid-filtering] +/// @property {Map} igx-grid-paginator [$_light-grid-pagination] +/// @property {Map} igx-grid-summary [$_light-grid-summary] +/// @property {Map} igx-grid-toolbar [$_light-grid-toolbar] +/// @property {Map} igx-icon [$_light-icon] +/// @property {Map} igx-input-group [$_light-input-group] +/// @property {Map} igx-list [$_light-list] +/// @property {Map} igx-navbar [$_light-navbar] +/// @property {Map} igx-navdrawer [$_light-navdrawer] +/// @property {Map} igx-overlay [$_light-overlay] +/// @property {Map} igx-progress-linear [$_light-progress-linear] +/// @property {Map} igx-progress-circular [$_light-progress-circular] +/// @property {Map} igx-radio [$_light-radio] +/// @property {Map} igx-ripple [$_light-ripple] +/// @property {Map} igx-slider [$_light-slider] +/// @property {Map} igx-snackbar [$_light-snackbar] +/// @property {Map} igx-switch [$_light-switch] +/// @property {Map} igx-tabs [$_light-tabs] +/// @property {Map} igx-time-picker [$_light-time-picker] +/// @property {Map} igx-toast [$_light-toast] +/// @property {Map} igx-tooltip [$_light-tooltip] + $light-schema: ( igx-avatar: $_light-avatar, igx-badge: $_light-badge, diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_input-group.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_input-group.scss index 825e6298020..5c444013dc3 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_input-group.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_input-group.scss @@ -1,6 +1,47 @@ -$_light-input-group: ( - name: 'igx-input-group', +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light input-group schema. +/// @type {Map} +/// +/// @property {map} idle-text-color [igx-color: ('grays', 600)] - The input text color in the idle state. +/// @property {map} filled-text-color [igx-color: ('grays', 900)] - The input text color in the filled state. +/// @property {map} focused-text-color [igx-color: ('grays', 900)] - The input text color in the focused state. +/// @property {map} disabled-text-color [igx-color: ('grays', 500)] - The input text color in the disabled state. +/// +/// @property {map} idle-secondary-color [igx-color: ('grays', 600)] - The label color in the idle state. +/// @property {map} filled-secondary-color [igx-color: ('grays', 600)] - The label color in the filled state. +/// @property {map} focused-secondary-color [ igx-color: ('primary', 500)] - The label color in the focused state. +/// +/// @property {map} idle-bottom-line-color [igx-color: ('grays', 600)] - The bottom line and border colors in the idle state. +/// @property {map} hover-bottom-line-color [igx-color: ('grays', 900)] - The bottom line and border colors in the hover state. +/// @property {map} focused-bottom-line-color [igx-color: ('primary', 500)] - The bottom line and border colors in the focused state. +/// @property {map} interim-bottom-line-color [igx-color: ('primary', 500), rgba: .12] - The bottom line and border colors during the to-focused transition. +/// @property {map} disabled-bottom-line-color [igx-color: ('grays', 500)] - The bottom line and border colors in the disabled state. +/// @property {map} disabled-border-color [igx-color: ('grays', 500), rgba: .06] - The disabled border color for input groups of type border. +/// +/// @property {map} box-background [igx-color: ('grays', 200)] - The background color of an input group of type box. +/// @property {map} box-disabled-background [igx-color: ('grays', 50)] - The background color of an input group of type box in the disabled state. +/// +/// @property {Color} border-background [transparent] - The background color of an input group of type border. +/// @property {map} border-disabled-background [igx-color: ('grays', 50)] - The background color of an input group of type border in the disabled state. +/// +/// @property {Color} search-background [#fff] - The background color of an input group of type search. +/// @property {Color} search-disabled-background [#fff] - The background color of an input group of type search in the disabled state. +/// @property {map} search-shadow-color [igx-color: ('grays', 600)] - The shadow color of an input group of type search. +/// @property {map} search-disabled-shadow-color [igx-color: ('grays', 300)] - The shadow color of an input group of type search in the disabled state. +/// +/// @property {map} success-secondary-color [igx-color: ('success')] - The success color used in the valid state. +/// @property {map} warning-secondary-color [igx-color: ('warn')] - The warning color used in the warning state. +/// @property {map} error-secondary-color [igx-color: ('error')] - The error color used in the error state. +/// +/// @see $default-palette + +$_light-input-group: ( idle-text-color: ( igx-color: ('grays', 600) ), @@ -37,10 +78,6 @@ $_light-input-group: ( igx-color: ('grays', 900) ), - filled-bottom-line-color: ( - igx-color: ('grays', 600) - ), - focused-bottom-line-color: ( igx-color: ('primary', 500) ), @@ -50,21 +87,31 @@ $_light-input-group: ( rgba: .12 ), - disabled-bottom-line-color: rgba(0, 0, 0, .42), + disabled-bottom-line-color: ( + igx-color: ('grays', 500) + ), disabled-border-color: ( igx-color: ('grays', 500), rgba: .06 ), - box-background: rgba(0, 0, 0, .06), - box-disabled-background: rgba(0, 0, 0, .03), + box-background: ( + igx-color: ('grays', 200) + ), + + box-disabled-background: ( + igx-color: ('grays', 50) + ), border-background: transparent, - border-disabled-background: rgba(0, 0, 0, .03), - search-background: white, - search-disabled-background: white, + border-disabled-background: ( + igx-color: ('grays', 50) + ), + + search-background: #fff, + search-disabled-background: #fff, search-shadow-color: ( igx-color: ('grays', 600) diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_list.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_list.scss index 496156c114e..683afdc04dc 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_list.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_list.scss @@ -1,6 +1,23 @@ -$_light-list: ( - name: 'igx-list', +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light list schema. +/// @type {Map} +/// +/// @property {Color} background [#fff] - The list background color. +/// @property {Color} header-background [#fff] - The list header background color. +/// @property {map} header-text-color [igx-color: ('secondary', 500)] - The list header text color. +/// @property {Color} item-background [#fff] - The list item background color. +/// @property {map} item-text-color [igx-color: ('grays', 800)] - The list item text color. +/// @property {map} item-background-active [igx-color: ('grays', 100), hexrgba: ()] - The active list item background color. +/// @property {map} item-text-color-active [igx-color: ('grays', 800)] - The active list item text color. +/// +/// @see $default-palette +$_light-list: ( background: #fff, header-background: #fff, diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_navbar.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_navbar.scss index 8b290515cf2..2b4e378692b 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_navbar.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_navbar.scss @@ -1,13 +1,33 @@ -$_light-navbar: ( - name: 'igx-navbar', - - text-color: #fff, +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// - idle-icon-color: #fff, - - hover-icon-color: #fff, +/// Generates a light navbar schema. +/// @type {Map} +/// +/// @property {map} $background [igx-color: ('primary', 500)] - The navbar background color. +/// @property {map} $text-color [igx-contrast-color: ('primary', 500)] - The navbar text color. +/// @property {map} $idle-icon-color [igx-contrast-color: ('primary', 500)] - The navbar idle icon color. +/// @property {map} $hover-icon-color [igx-contrast-color: ('primary', 500)] - The navbar hover icon color. +/// +/// @see $default-palette +$_light-navbar: ( background: ( igx-color: ('primary', 500) + ), + + text-color: ( + igx-contrast-color: ('primary', 500) + ), + + idle-icon-color: ( + igx-contrast-color: ('primary', 500) + ), + + hover-icon-color: ( + igx-contrast-color: ('primary', 500) ) ); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_navdrawer.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_navdrawer.scss index 358079b762d..55bedb2443a 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_navdrawer.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_navdrawer.scss @@ -1,14 +1,43 @@ -$_light-navdrawer: ( - name: 'igx-navdrawer', +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light navdrawer schema. +/// @type {Map} +/// +/// @property {Color} background [#fff] - The navigation drawer background color. +/// @property {Color} border-color [rgba(0, 0, 0, .14)] - The navigation drawer right border color. +/// @property {map} item-header-text-color [igx-color: ('grays', 600)] - The header's idle text color. +/// @property {map} item-text-color [igx-color: ('grays', 700)] - The item's idle text color. +/// @property {map} item-icon-color [igx-color: ('grays', 700)] - The item's icon color. +/// @property {map} item-active-text-color [igx-color: ('primary', 500)] - The item's active text color. +/// @property {map} item-active-background [igx-color: ('grays', 100)] - The item's active background color. +/// @property {map} item-active-icon-color [igx-color: ('primary', 500)] - The item's icon active color. +/// @property {map} item-hover-background [igx-color: ('grays', 200)] - The item's hover background color. +/// @property {map} item-hover-text-color [igx-color: ('grays', 800)] - The item's hover text color. +/// @property {map} item-hover-icon-color [igx-color: ('primary', 500)] - The item's hover icon color. +/// +/// @see $default-palette +$_light-navdrawer: ( background: #fff, border-color: rgba(0, 0, 0, .14), + item-header-text-color: ( + igx-color: ('grays', 600) + ), + item-text-color: ( igx-color: ('grays', 700) ), + item-icon-color: ( + igx-color: ('grays', 700) + ), + item-active-text-color: ( igx-color: ('primary', 500) ), @@ -25,14 +54,6 @@ $_light-navdrawer: ( igx-color: ('grays', 800) ), - item-header-text-color: ( - igx-color: ('grays', 600) - ), - - item-icon-color: ( - igx-color: ('grays', 700) - ), - item-active-icon-color: ( igx-color: ('primary', 500) ), diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_overlay.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_overlay.scss index 9f61a97dbf3..c85d83a2290 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_overlay.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_overlay.scss @@ -1,5 +1,16 @@ +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light overlay schema. +/// @type {Map} +/// +/// @property {map} background-color [igx-color: ('grays', 500)] - The background color used for modal overlays. +/// +/// @see $default-palette $_light-overlay: ( - name: 'igx-overlay', background-color: ( igx-color: ('grays', 500) ) diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_progress.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_progress.scss index 2182d9adae7..94deb7defdf 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_progress.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_progress.scss @@ -1,8 +1,26 @@ +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light progress-linear schema. +/// @type {Map} +/// +/// @property {map} track-color [igx-color: ('grays', 300)] - The main track color. +/// @property {map} fill-color-default [igx-color: ('primary', 500)] - The track default fill color. +/// @property {map} fill-color-danger [igx-color: ('error')] - The track danger fill color. +/// @property {map} fill-color-warning [igx-color: ('warn')] - The track warning fill color. +/// @property {map} fill-color-info [igx-color: ('info')] - The track info fill color. +/// @property {map} fill-color-success [igx-color: ('success')] - The track success fill color. +/// @property {color} stripes-color [rgba(#fff, .7)] - The track stripes color. +/// @property {map} text-color [igx-color: ('grays', 700)] - The track value text color. +/// +/// @see $default-palette + $_light-progress-linear: ( name: 'igx-progress-linear', - stripes-color: rgba(#fff, .7), - track-color: ( igx-color: ('grays', 300) ), @@ -27,11 +45,22 @@ $_light-progress-linear: ( igx-color: ('success') ), + stripes-color: rgba(#fff, .7), + text-color: ( igx-color: ('grays', 700) ) ); +/// Generates a light progress-circular schema. +/// @type {Map} +/// +/// @property {map} base-circle-color [igx-color: ('grays', 300)] - The base circle fill color. +/// @property {map} progress-circle-color [igx-color: ('primary', 500)] - The progress circle fill color. +/// @property {map} text-color [igx-color: ('grays', 700)] - The value text color. +/// +/// @see $default-palette + $_light-progress-circular: ( name: 'igx-progress-circular', diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_radio.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_radio.scss index 40f300d9eef..29b1f51cce8 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_radio.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_radio.scss @@ -1,3 +1,19 @@ +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light radio schema. +/// @type {Map} +/// +/// @property {map} label-color [igx-color: ('grays', 900)] - The text color used for the label text. +/// @property {map} empty-color [igx-color: ('grays', 600)] - The unchecked border color. +/// @property {map} fill-color [igx-color: ('secondary', 500)] - The checked border and dot colors. +/// @property {map} disabled-color [igx-color: ('grays', 400)] - The disabled border and dot colors. +/// +/// @see $default-palette + $_light-radio: ( name: 'igx-radio', diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_ripple.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_ripple.scss index 6b2ff5ff80f..821f9c958e6 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_ripple.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_ripple.scss @@ -1,5 +1,17 @@ +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light ripple schema. +/// @type {Map} +/// +/// @property {map} color [igx-color: ('grays', 800)] - The color of the ripple. +/// +/// @see $default-palette + $_light-ripple: ( - name: 'igx-ripple', color: ( igx-color: ('grays', 800) ) diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_slider.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_slider.scss index bc2f58c082a..27fcd98dde9 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_slider.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_slider.scss @@ -1,18 +1,31 @@ -$_light-slider: ( - name: 'igx-slider', +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light slider schema. +/// @type {Map} +/// +/// @property {map} track-color [igx-color: ('secondary', 500)] - The color of the track. +/// @property {map} thumb-color [igx-color: ('secondary', 500)] - The color of the thumb. +/// @property {map} label-background-color [igx-color: ('secondary', 500)] - The background color of the bubble label. +/// @property {map} label-text-color [igx-contrast-color: ('secondary', 500)] - The text color of the bubble label. +/// @property {map} disabled-thumb-color [igx-color: ('grays', 400), hexrgba: ()] - The thumb color when its disabled. +/// @property {map} base-track-color [igx-color: ('grays', 500)] - The base background color of the track. +/// @property {map} disabled-base-track-color [igx-color: ('grays', 400)] - The base background color of the track when is disabled. +/// +/// @see $default-palette +$_light-slider: ( track-color: ( - igx-color: ('secondary', 500), + igx-color: ('secondary', 500) ), thumb-color: ( igx-color: ('secondary', 500) ), - disabled-thumb-color: ( - igx-color: ('grays', 400), - hexrgba: () - ), label-background-color: ( igx-color: ('secondary', 500) @@ -22,6 +35,11 @@ $_light-slider: ( igx-contrast-color: ('secondary', 500) ), + disabled-thumb-color: ( + igx-color: ('grays', 400), + hexrgba: () + ), + base-track-color: ( igx-color: ('grays', 500) ), diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_snackbar.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_snackbar.scss index a000610499b..9c7d6ab4226 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_snackbar.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_snackbar.scss @@ -1,6 +1,19 @@ -$_light-snackbar: ( - name: 'igx-snackbar', +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light snackbar schema. +/// @type {Map} +/// +/// @property {map} background [igx-color: ('grays', 900)] - The background color used in the snackbar. +/// @property {map} text-color [igx-contrast-color: ('grays', 900)] - The text color used in the snackbar. +/// @property {map} button-color [igx-color: ('secondary', 500)] - The button color used in the snackbar. +/// +/// @see $default-palette +$_light-snackbar: ( background: ( igx-color: ('grays', 900) ), diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_switch.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_switch.scss index e087e80acd7..b99dfc4e92a 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_switch.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_switch.scss @@ -1,6 +1,24 @@ -$_light-switch: ( - name: 'igx-switch', +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light switch schema. +/// @type {Map} +/// +/// @property {map} thumb-on-color [igx-color: ('secondary', 500)] - The color of the thumb when the switch is on. +/// @property {map} track-on-color [igx-color: ('secondary', 500), rgba: .5] - The color of the track when the switch is on. +/// @property {map} thumb-off-color [igx-color: ('grays', 200), hexrgba: #fff] - The color of the thumb when the switch is off. +/// @property {map} track-off-color [igx-color: ('grays', 600)] - The color of the track when the switch is off. +/// @property {map} thumb-disabled-color [igx-color: ('grays', 400), hexrgba: #fff] - The color of the thumb when the switch is disabled. +/// @property {map} track-disabled-color [igx-color: ('grays', 300)] - The color of the track when the switch is disabled. +/// @property {map} label-color [gx-color: ('grays', 900)] - The color of the switch label +/// @property {map} label-disabled-color [gx-color: ('grays', 400)] - The color of the switch label when the switch is disabled +/// +/// @see $default-palette +$_light-switch: ( thumb-on-color: ( igx-color: ('secondary', 500) ), @@ -10,9 +28,23 @@ $_light-switch: ( rgba: .5 ), - thumb-off-color: #fafafa, + thumb-off-color: ( + igx-color: ('grays', 200), + hexrgba: #fff + ), + + track-disabled-color: ( + igx-color: ('grays', 300) + ), - track-off-color: rgba(0, 0, 0, .5), + track-off-color: ( + igx-color: ('grays', 600) + ), + + thumb-disabled-color: ( + igx-color: ('grays', 400), + hexrgba: #fff + ), label-color: ( igx-color: ('grays', 900) @@ -21,13 +53,4 @@ $_light-switch: ( label-disabled-color: ( igx-color: ('grays', 400) ), - - track-disabled-color: ( - igx-color: ('grays', 300) - ), - - thumb-disabled-color: ( - igx-color: ('grays', 400), - hexrgba: () - ) ); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_tabs.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_tabs.scss index e16cbf08fd6..a592f4bcc4c 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_tabs.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_tabs.scss @@ -1,28 +1,56 @@ -$_light-tabs: ( - name: 'igx-tabs', +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light tabs schema. +/// @type {Map} +/// +/// @property {map} item-text-color [igx-color: ('grays', 700)] - The color used for the tab text color. +/// @property {map} item-background [#fff] - The background color used for the tabs header. +/// @property {map} item-hover-background [igx-color: ('grays', 200)] - The background used for the tabs on hover. +/// @property {map} item-hover-color [igx-color: ('grays', 700)] - The text color used for the tabs on hover. +/// +/// @property {map} item-active-color [igx-color: ('primary', 500)] - The color used for the active tabs text. +/// @property {map} item-active-icon-color [igx-color: ('primary', 500)] - The color used for the active tabs icon. +/// @property {map} item-active-background [igx-color: ('grays', 200)] - The color used for the active/focused tab background. +/// +/// @property {map} indicator-color [igx-color: ('primary', 500)] - The color used for the active tab indicator. +/// @property {map} button-color [igx-color: ('grays', 500)] - The color used for the button icon/text color. +/// @property {map} button-hover-color [igx-color: ('grays', 600)] - The color used for the button icon/text color on hover. +/// @property {Color} button-background [#fff] - The color used for the button background. +/// @property {map} button-hover-background [igx-color: ('grays', 100)] - The color used for the button background on hover. +/// +/// @property {map} tab-ripple-color [igx-color: ('grays', 100)] - The color used for the button background. +/// @property {map} button-ripple-color [igx-color: ('grays', 100)] - The color used for the button background on hover. +/// +/// @see $default-palette + +$_light-tabs: ( item-text-color: ( igx-color: ('grays', 700) ), item-background: #fff, - item-hover-color: ( - igx-color: ('grays', 700) - ), - item-hover-background: ( igx-color: ('grays', 200) ), - item-active-icon-color: ( - igx-color: ('primary', 500) + item-hover-color: ( + igx-color: ('grays', 700) ), item-active-color: ( igx-color: ('primary', 500) ), + item-active-icon-color: ( + igx-color: ('primary', 500) + ), + item-active-background: ( igx-color: ('grays', 200) ), diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_time-picker.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_time-picker.scss index 41ef81eabec..d3bd091f50f 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_time-picker.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_time-picker.scss @@ -1,6 +1,24 @@ -$_light-time-picker: ( - name: 'igx-time-picker', +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light time-picker schema. +/// @type {Map} +/// +/// @property {map} text-color [igx-color: ('grays', 500)] - The text color of a open time picker. +/// @property {map} hover-text-color [igx-color: ('secondary', 500)] - The hover text color of a open time picker. +/// @property {map} selected-text-color [igx-color: ('secondary', 500)] - The text color of a selected item in time picker. +/// @property {map} active-item-background [igx-color: ('grays', 100)] - The background color for current item in focused column inside the time picker. +/// @property {map} header-background [igx-color: ('secondary', 500)] - The header background color of a time picker. +/// @property {map} header-hour-text-color [igx-contrast-color: ('secondary', 500)] - The header hour text color of a time picker. +/// @property {map} header-time-period-color [igx-contrast-color: ('secondary', 500), rgba: .8] - The header AM/PM text color of a time picker. +/// @property {Color} background-color [#fff] - The time-picker panel background color. +/// +/// @see $default-palette +$_light-time-picker: ( text-color: ( igx-color: ('grays', 500) ), @@ -29,5 +47,5 @@ $_light-time-picker: ( rgba: .8 ), - background-color: white + background-color: #fff ); diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_toast.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_toast.scss index 34be2a45833..88c790a84c9 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_toast.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_toast.scss @@ -1,6 +1,18 @@ -$_light-toast: ( - name: 'igx-toast', +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light toast schema. +/// @type {Map} +/// +/// @property {map} background [igx-color: ('grays', 600)] - The background color used for the toast. +/// @property {map} text-color [igx-contrast-color: ('grays', 600)] - The text-color used for the toast. +/// +/// @see $default-palette +$_light-toast: ( background: ( igx-color: ('grays', 600) ), diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_tooltip.scss b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_tooltip.scss index 5ddfd338f51..75b57e7ae7e 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_tooltip.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/schemas/light/_tooltip.scss @@ -1,6 +1,19 @@ -$_light-tooltip: ( - name: 'igx-tooltip', +//// +/// @group schemas +/// @access private +/// @author Marin Popov +//// + +/// Generates a light tooltip schema. +/// @type {Map} +/// +/// @property {map} background [igx-color: ('grays', 700), hexrgba: (), rgba: .9] - The background color of the tooltip. +/// @property {map} text-color [igx-color: ('grays', 700), hexrgba: (), rgba: .9, text-contrast: ()] - The text color of the tooltip. +/// @property {Number} roundness [rem(4px)] - The border roundness of the tooltip. Smaller values mean less roundness. +/// +/// @see $default-palette +$_light-tooltip: ( background: ( igx-color: ('grays', 700), hexrgba: (), diff --git a/projects/igniteui-angular/src/lib/grids/grid-base.component.ts b/projects/igniteui-angular/src/lib/grids/grid-base.component.ts index b5ee8026be8..18161506b57 100644 --- a/projects/igniteui-angular/src/lib/grids/grid-base.component.ts +++ b/projects/igniteui-angular/src/lib/grids/grid-base.component.ts @@ -1398,22 +1398,22 @@ export abstract class IgxGridBaseComponent extends DisplayDensityBase implements @HostBinding('attr.class') get hostClass(): string { if (this.isCosy()) { - return 'igx-grid--cosy'; + return 'igx-grid--cosy'; } else if (this.isCompact()) { - return 'igx-grid--compact'; + return 'igx-grid--compact'; } else { - return 'igx-grid'; + return 'igx-grid'; } } get bannerClass(): string { let bannerClass = ''; if (this.isCosy()) { - bannerClass = 'igx-banner--cosy'; + bannerClass = 'igx-banner--cosy'; } else if (this.isCompact()) { - bannerClass = 'igx-banner--compact'; + bannerClass = 'igx-banner--compact'; } else { - bannerClass = 'igx-banner'; + bannerClass = 'igx-banner'; } bannerClass += this.rowEditPositioningStrategy.isTop ? ' igx-banner__border-top' : ' igx-banner__border-bottom'; return bannerClass; @@ -1440,7 +1440,7 @@ export abstract class IgxGridBaseComponent extends DisplayDensityBase implements * @memberof IgxGridBaseComponent */ @Input() - get sortingExpressions(): ISortingExpression [] { + get sortingExpressions(): ISortingExpression[] { return this._sortingExpressions; } @@ -1455,7 +1455,7 @@ export abstract class IgxGridBaseComponent extends DisplayDensityBase implements * ``` * @memberof IgxGridBaseComponent */ - set sortingExpressions(value: ISortingExpression []) { + set sortingExpressions(value: ISortingExpression[]) { this._sortingExpressions = cloneArray(value); this.cdr.markForCheck(); @@ -2054,10 +2054,10 @@ export abstract class IgxGridBaseComponent extends DisplayDensityBase implements private navigation: IgxGridNavigationService, public filteringService: IgxFilteringService, @Optional() @Inject(DisplayDensityToken) protected _displayDensityOptions: IDisplayDensityOptions) { - super(_displayDensityOptions); - this.resizeHandler = () => { - this.calculateGridSizes(); - this.zone.run(() => this.markForCheck()); + super(_displayDensityOptions); + this.resizeHandler = () => { + this.calculateGridSizes(); + this.zone.run(() => this.markForCheck()); }; } @@ -2275,9 +2275,9 @@ export abstract class IgxGridBaseComponent extends DisplayDensityBase implements if (this.isCosy()) { return 40; } else if (this.isCompact()) { - return 32; + return 32; } else { - return 50; + return 50; } } @@ -2801,7 +2801,7 @@ export abstract class IgxGridBaseComponent extends DisplayDensityBase implements // if there is no row (index === -1), but there is a row in ADD or UPDATE state do as above // Otherwise just exit - there is nothing to delete if (index !== -1 || hasRowInNonDeletedState) { - // Always exit edit mode + // Always exit edit when row is deleted this.endEdit(true); } else { return; @@ -4270,20 +4270,20 @@ export abstract class IgxGridBaseComponent extends DisplayDensityBase implements this.nativeElement.focus(); } */ - private changeRowEditingOverlayStateOnScroll(row: IgxRowComponent) { - if (!this.rowEditable || this.rowEditingOverlay.collapsed) { - return; - } - if (!row) { - this.toggleRowEditingOverlay(false); - } else { - this.repositionRowEditingOverlay(row); - } + private changeRowEditingOverlayStateOnScroll(row: IgxRowComponent) { + if (!this.rowEditable || this.rowEditingOverlay.collapsed) { + return; } + if (!row) { + this.toggleRowEditingOverlay(false); + } else { + this.repositionRowEditingOverlay(row); + } + } - /** - * @hidden - */ + /** + * @hidden + */ public startRowEdit(cell: { rowID: any, columnID: any, @@ -4382,7 +4382,7 @@ export abstract class IgxGridBaseComponent extends DisplayDensityBase implements const valueInTransactions = this.transactions.getAggregatedValue(rowID, true); const rowIndex = this.gridAPI.get_row_index_in_data(this.id, rowID); // Get actual index in data const newValue = valueInTransactions ? valueInTransactions : this.gridAPI.get_all_data(this.id)[rowIndex]; - const oldValue = Object.assign( + const oldValue = Object.assign( {}, this.gridAPI.get_all_data(this.id)[rowIndex], this._currentRowState diff --git a/projects/igniteui-angular/src/lib/grids/grid/grid.groupby.spec.ts b/projects/igniteui-angular/src/lib/grids/grid/grid.groupby.spec.ts index 8ea00205662..ed68098a74a 100644 --- a/projects/igniteui-angular/src/lib/grids/grid/grid.groupby.spec.ts +++ b/projects/igniteui-angular/src/lib/grids/grid/grid.groupby.spec.ts @@ -13,7 +13,7 @@ import { IgxGridModule, IgxGridCellComponent } from './index'; import { IgxGridRowComponent } from './grid-row.component'; import { IgxChipComponent, IChipClickEventArgs } from '../../chips/chip.component'; import { wait, UIInteractions } from '../../test-utils/ui-interactions.spec'; -import { HelperUtils} from '../../test-utils/helper-utils.spec'; +import { HelperUtils } from '../../test-utils/helper-utils.spec'; import { DefaultSortingStrategy } from '../../data-operations/sorting-strategy'; import { configureTestSuite } from '../../test-utils/configure-suite'; import { DataParent } from '../../test-utils/sample-test-data.spec'; @@ -45,8 +45,8 @@ describe('IgxGrid - GroupBy', () => { })); function expandCollapceGroupRow(fix: ComponentFixture, - groupRow: IgxGridGroupByRowComponent, - cell: IgxGridCellComponent) { + groupRow: IgxGridGroupByRowComponent, + cell: IgxGridCellComponent) { return new Promise(async (resolve, reject) => { expect(groupRow.focused).toBe(true); expect(groupRow.nativeElement.classList.contains('igx-grid__group-row--active')).toBe(true); @@ -126,8 +126,10 @@ describe('IgxGrid - GroupBy', () => { // group by string column const grid = fix.componentInstance.instance; - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); // verify grouping expressions @@ -153,8 +155,10 @@ describe('IgxGrid - GroupBy', () => { expect(grid.groupsRowList.toArray().length).toEqual(0); // group by number - grid.groupBy({ fieldName: 'Downloads', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'Downloads', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); groupRows = grid.groupsRowList.toArray(); @@ -184,8 +188,10 @@ describe('IgxGrid - GroupBy', () => { grid.clearGrouping('Released'); tick(); fix.detectChanges(); - grid.groupBy({ fieldName: 'ReleaseDate', dir: SortingDirection.Asc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ReleaseDate', dir: SortingDirection.Asc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); groupRows = grid.groupsRowList.toArray(); @@ -218,8 +224,10 @@ describe('IgxGrid - GroupBy', () => { // group by 2 columns const grid = fix.componentInstance.instance; - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); grid.groupBy({ fieldName: 'Released', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }); fix.detectChanges(); @@ -237,8 +245,10 @@ describe('IgxGrid - GroupBy', () => { // group by 3rd column - grid.groupBy({ fieldName: 'Downloads', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'Downloads', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); groupRows = grid.groupsRowList.toArray(); @@ -464,7 +474,7 @@ describe('IgxGrid - GroupBy', () => { expect(currExpr.ungroupedColumns[0].field).toEqual('Released'); })); - it('should trigger an onGroupingDone event when multiple columns are grouped with the correct params.', fakeAsync(() => { + it('should trigger an onGroupingDone event when multiple columns are grouped with the correct params.', fakeAsync(() => { const fix = TestBed.createComponent(DefaultGridComponent); const grid = fix.componentInstance.instance; grid.primaryKey = 'ID'; @@ -486,14 +496,14 @@ describe('IgxGrid - GroupBy', () => { expect(currExpr.groupedColumns[1].field).toEqual('ProductName'); expect(currExpr.groupedColumns[2].field).toEqual('ReleaseDate'); expect(currExpr.ungroupedColumns.length).toEqual(0); - })); + })); it('should trigger an onGroupingDone event when multiple columns are ungrouped with the correct params.', fakeAsync(() => { const fix = TestBed.createComponent(DefaultGridComponent); const grid = fix.componentInstance.instance; grid.primaryKey = 'ID'; fix.detectChanges(); - grid.groupBy([ + grid.groupBy([ { fieldName: 'Released', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }, { fieldName: 'ReleaseDate', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }, { fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }, @@ -516,35 +526,35 @@ describe('IgxGrid - GroupBy', () => { it(`should trigger an onGroupingDone event when the user pushes a new array of grouping expressions, which results in both grouping and ungrouping at the same time.`, fakeAsync(() => { - const fix = TestBed.createComponent(DefaultGridComponent); - const grid = fix.componentInstance.instance; - grid.primaryKey = 'ID'; - fix.detectChanges(); - grid.groupBy([ - { fieldName: 'Released', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }, - { fieldName: 'ReleaseDate', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }, - { fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() } - ]); - tick(); - fix.detectChanges(); - const newExpressions = [ - { fieldName: 'ReleaseDate', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }, - { fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }, - { fieldName: 'Downloads', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() } - ]; - grid.groupingExpressions = newExpressions; - tick(); - fix.detectChanges(); - const currExpr = fix.componentInstance.currentSortExpressions; - expect(currExpr.expressions.length).toEqual(3); - expect(currExpr.expressions[0].fieldName).toEqual('ReleaseDate'); - expect(currExpr.expressions[1].fieldName).toEqual('ProductName'); - expect(currExpr.expressions[2].fieldName).toEqual('Downloads'); - expect(currExpr.ungroupedColumns.length).toEqual(1); - expect(currExpr.ungroupedColumns[0].field).toEqual('Released'); - expect(currExpr.groupedColumns.length).toEqual(1); - expect(currExpr.groupedColumns[0].field).toEqual('Downloads'); - })); + const fix = TestBed.createComponent(DefaultGridComponent); + const grid = fix.componentInstance.instance; + grid.primaryKey = 'ID'; + fix.detectChanges(); + grid.groupBy([ + { fieldName: 'Released', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }, + { fieldName: 'ReleaseDate', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }, + { fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() } + ]); + tick(); + fix.detectChanges(); + const newExpressions = [ + { fieldName: 'ReleaseDate', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }, + { fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }, + { fieldName: 'Downloads', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() } + ]; + grid.groupingExpressions = newExpressions; + tick(); + fix.detectChanges(); + const currExpr = fix.componentInstance.currentSortExpressions; + expect(currExpr.expressions.length).toEqual(3); + expect(currExpr.expressions[0].fieldName).toEqual('ReleaseDate'); + expect(currExpr.expressions[1].fieldName).toEqual('ProductName'); + expect(currExpr.expressions[2].fieldName).toEqual('Downloads'); + expect(currExpr.ungroupedColumns.length).toEqual(1); + expect(currExpr.ungroupedColumns[0].field).toEqual('Released'); + expect(currExpr.groupedColumns.length).toEqual(1); + expect(currExpr.groupedColumns[0].field).toEqual('Downloads'); + })); it('should allow setting custom template for group row content.', fakeAsync(() => { const fix = TestBed.createComponent(CustomTemplateGridComponent); @@ -589,8 +599,10 @@ describe('IgxGrid - GroupBy', () => { fix.componentInstance.enableSorting = true; tick(); fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); const groupRows = grid.groupsRowList.toArray(); const dataRows = grid.dataRowList.toArray(); @@ -613,42 +625,51 @@ describe('IgxGrid - GroupBy', () => { })); it('should apply the specified sort order on the group rows when already grouped columnn is sorted in asc/desc order.', - fakeAsync(() => { - const fix = TestBed.createComponent(DefaultGridComponent); - const grid = fix.componentInstance.instance; - fix.componentInstance.enableSorting = true; - fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); - fix.detectChanges(); - - let groupRows = grid.groupsRowList.toArray(); - let dataRows = grid.dataRowList.toArray(); - - // verify groups and data rows count - expect(groupRows.length).toEqual(5); - expect(dataRows.length).toEqual(8); + fakeAsync(() => { + const fix = TestBed.createComponent(DefaultGridComponent); + const grid = fix.componentInstance.instance; + fix.componentInstance.enableSorting = true; + fix.detectChanges(); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); + fix.detectChanges(); - // verify group order - checkGroups(groupRows, ['NetAdvantage', 'Ignite UI for JavaScript', 'Ignite UI for Angular', '', null]); - grid.sort({ fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }); - fix.detectChanges(); + let groupRows = grid.groupsRowList.toArray(); + let dataRows = grid.dataRowList.toArray(); + + // verify groups and data rows count + expect(groupRows.length).toEqual(5); + expect(dataRows.length).toEqual(8); + + // verify group order + checkGroups(groupRows, ['NetAdvantage', 'Ignite UI for JavaScript', 'Ignite UI for Angular', '', null]); + grid.sort({ + fieldName: 'ProductName', + dir: SortingDirection.Asc, + ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); + fix.detectChanges(); - groupRows = grid.groupsRowList.toArray(); - dataRows = grid.dataRowList.toArray(); + groupRows = grid.groupsRowList.toArray(); + dataRows = grid.dataRowList.toArray(); - // verify group order - checkGroups(groupRows, [null, '', 'Ignite UI for Angular', 'Ignite UI for JavaScript', 'NetAdvantage']); + // verify group order + checkGroups(groupRows, [null, '', 'Ignite UI for Angular', 'Ignite UI for JavaScript', 'NetAdvantage']); - })); + })); it('should remove grouping when already grouped columnn is sorted with order "None" via the API.', fakeAsync(() => { const fix = TestBed.createComponent(DefaultGridComponent); const grid = fix.componentInstance.instance; fix.componentInstance.enableSorting = true; fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); let groupRows = grid.groupsRowList.toArray(); @@ -676,8 +697,10 @@ describe('IgxGrid - GroupBy', () => { const grid = fix.componentInstance.instance; fix.componentInstance.enableSorting = true; fix.detectChanges(); - grid.groupBy({ fieldName: 'Downloads', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'Downloads', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); const headers = fix.debugElement.queryAll(By.css(COLUMN_HEADER_CLASS)); @@ -712,8 +735,10 @@ describe('IgxGrid - GroupBy', () => { grid.sort({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }); fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); const groupRows = grid.groupsRowList.toArray(); // verify group order @@ -727,8 +752,10 @@ describe('IgxGrid - GroupBy', () => { fix.detectChanges(); grid.sort({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }); fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); const groupRows = grid.groupsRowList.toArray(); const dataRows = grid.dataRowList.toArray(); @@ -745,8 +772,10 @@ describe('IgxGrid - GroupBy', () => { fix.componentInstance.width = '400px'; fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); const gRow = grid.groupsRowList.toArray()[0]; expect(gRow.expanded).toBe(true); @@ -765,77 +794,81 @@ describe('IgxGrid - GroupBy', () => { it(`focus should stays over the group row when expand/collapse with ArrowRight/ArrowLeft keys and grid is scrolled to bottom`, (async () => { - const fix = TestBed.createComponent(DefaultGridComponent); - const grid = fix.componentInstance.instance; - fix.componentInstance.width = '600px'; - fix.componentInstance.height = '500px'; - await wait(30); - fix.detectChanges(); + const fix = TestBed.createComponent(DefaultGridComponent); + const grid = fix.componentInstance.instance; + fix.componentInstance.width = '600px'; + fix.componentInstance.height = '500px'; + await wait(30); + fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); - fix.detectChanges(); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); + fix.detectChanges(); - grid.verticalScrollContainer.scrollTo(grid.verticalScrollContainer.igxForOf.length - 1); - await wait(100); - fix.detectChanges(); + grid.verticalScrollContainer.scrollTo(grid.verticalScrollContainer.igxForOf.length - 1); + await wait(100); + fix.detectChanges(); - const groupRows = grid.nativeElement.querySelectorAll('igx-grid-groupby-row'); - let lastGroupRow = groupRows[groupRows.length - 1]; - const lastGroupRowIndex = parseInt(lastGroupRow.dataset.rowindex, 10); - lastGroupRow.dispatchEvent(new FocusEvent('focus')); - await wait(30); - fix.detectChanges(); + const groupRows = grid.nativeElement.querySelectorAll('igx-grid-groupby-row'); + let lastGroupRow = groupRows[groupRows.length - 1]; + const lastGroupRowIndex = parseInt(lastGroupRow.dataset.rowindex, 10); + lastGroupRow.dispatchEvent(new FocusEvent('focus')); + await wait(30); + fix.detectChanges(); - expect(lastGroupRow.classList.contains('igx-grid__group-row--active')).toBeTruthy(); - lastGroupRow.dispatchEvent(new KeyboardEvent('keydown', { key: 'ArrowLeft', altKey: true })); + expect(lastGroupRow.classList.contains('igx-grid__group-row--active')).toBeTruthy(); + lastGroupRow.dispatchEvent(new KeyboardEvent('keydown', { key: 'ArrowLeft', altKey: true })); - await wait(100); - fix.detectChanges(); - lastGroupRow = grid.nativeElement.querySelector(`igx-grid-groupby-row[data-rowindex="${lastGroupRowIndex}"]`); - expect(lastGroupRow).toBeDefined(); - expect(lastGroupRow.classList.contains('igx-grid__group-row--active')).toBeTruthy(); - expect(lastGroupRow.getAttribute('aria-expanded')).toBe('false'); - })); + await wait(100); + fix.detectChanges(); + lastGroupRow = grid.nativeElement.querySelector(`igx-grid-groupby-row[data-rowindex="${lastGroupRowIndex}"]`); + expect(lastGroupRow).toBeDefined(); + expect(lastGroupRow.classList.contains('igx-grid__group-row--active')).toBeTruthy(); + expect(lastGroupRow.getAttribute('aria-expanded')).toBe('false'); + })); it(`should be able to navigate down to the next row when expand the last group row and grid is scrolled to bottom`, (async () => { - const fix = TestBed.createComponent(DefaultGridComponent); - const grid = fix.componentInstance.instance; - fix.componentInstance.width = '600px'; - fix.componentInstance.height = '500px'; - await wait(30); - fix.detectChanges(); + const fix = TestBed.createComponent(DefaultGridComponent); + const grid = fix.componentInstance.instance; + fix.componentInstance.width = '600px'; + fix.componentInstance.height = '500px'; + await wait(30); + fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); - fix.detectChanges(); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); + fix.detectChanges(); - grid.verticalScrollContainer.scrollTo(grid.verticalScrollContainer.igxForOf.length - 1); - await wait(100); - fix.detectChanges(); + grid.verticalScrollContainer.scrollTo(grid.verticalScrollContainer.igxForOf.length - 1); + await wait(100); + fix.detectChanges(); - grid.groupsRowList.last.toggle(); - await wait(30); - fix.detectChanges(); - expect(grid.groupsRowList.last.expanded).toBeFalsy(); + grid.groupsRowList.last.toggle(); + await wait(30); + fix.detectChanges(); + expect(grid.groupsRowList.last.expanded).toBeFalsy(); - grid.groupsRowList.last.toggle(); - await wait(30); - fix.detectChanges(); - expect(grid.groupsRowList.last.expanded).toBeTruthy(); + grid.groupsRowList.last.toggle(); + await wait(30); + fix.detectChanges(); + expect(grid.groupsRowList.last.expanded).toBeTruthy(); - const groupRowIndex = grid.groupsRowList.last.index; - UIInteractions.triggerKeyDownEvtUponElem('ArrowDown', grid.groupsRowList.last.nativeElement, true); - await wait(100); - fix.detectChanges(); + const groupRowIndex = grid.groupsRowList.last.index; + UIInteractions.triggerKeyDownEvtUponElem('ArrowDown', grid.groupsRowList.last.nativeElement, true); + await wait(100); + fix.detectChanges(); - const selectedCell = grid.nativeElement.querySelector('.igx-grid__td--selected'); - expect(selectedCell).toBeDefined(); - expect(parseInt(selectedCell.dataset.rowindex, 10)).toBe(groupRowIndex + 1); - expect(parseInt(selectedCell.dataset.visibleindex, 10)).toBe(0); + const selectedCell = grid.nativeElement.querySelector('.igx-grid__td--selected'); + expect(selectedCell).toBeDefined(); + expect(parseInt(selectedCell.dataset.rowindex, 10)).toBe(groupRowIndex + 1); + expect(parseInt(selectedCell.dataset.visibleindex, 10)).toBe(0); - })); + })); xit('should allow keyboard navigation through group rows.', (async () => { const fix = TestBed.createComponent(DefaultGridComponent); @@ -847,8 +880,10 @@ describe('IgxGrid - GroupBy', () => { await wait(); fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); grid.groupBy({ fieldName: 'Released', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }); fix.detectChanges(); await HelperUtils.navigateVerticallyToIndex(grid, 0, 9); @@ -873,8 +908,10 @@ describe('IgxGrid - GroupBy', () => { grid.columnWidth = '200px'; fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); grid.groupBy({ fieldName: 'Released', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }); fix.detectChanges(); @@ -904,8 +941,10 @@ describe('IgxGrid - GroupBy', () => { await wait(100); fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); let cell = grid.getCellByColumn(2, 'Released'); cell.nativeElement.dispatchEvent(new Event('focus')); @@ -955,8 +994,10 @@ describe('IgxGrid - GroupBy', () => { await wait(50); fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); let groupRow = grid.groupsRowList.toArray()[0]; @@ -1003,8 +1044,10 @@ describe('IgxGrid - GroupBy', () => { await wait(30); fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); await wait(30); fix.detectChanges(); @@ -1048,8 +1091,10 @@ describe('IgxGrid - GroupBy', () => { grid.columnWidth = '100px'; fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); const groupRow = grid.groupsRowList.toArray()[0]; @@ -1070,8 +1115,10 @@ describe('IgxGrid - GroupBy', () => { await wait(50); fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); let cell = grid.getCellByColumn(1, 'ID'); cell.nativeElement.dispatchEvent(new Event('focus')); @@ -1115,8 +1162,10 @@ describe('IgxGrid - GroupBy', () => { await wait(30); fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); await wait(30); fix.detectChanges(); @@ -1171,8 +1220,10 @@ describe('IgxGrid - GroupBy', () => { await wait(); fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); grid.groupBy({ fieldName: 'Released', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }); fix.detectChanges(); grid.parentVirtDir.getHorizontalScroll().scrollLeft = 1000; @@ -1200,8 +1251,10 @@ describe('IgxGrid - GroupBy', () => { grid.columnWidth = '200px'; fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); grid.groupBy({ fieldName: 'Released', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }); fix.detectChanges(); const cell = grid.getCellByColumn(2, 'Downloads'); @@ -1227,8 +1280,10 @@ describe('IgxGrid - GroupBy', () => { grid.columnWidth = '200px'; fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); grid.groupBy({ fieldName: 'Released', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }); fix.detectChanges(); @@ -1249,8 +1304,10 @@ describe('IgxGrid - GroupBy', () => { tick(); fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); grid.groupBy({ fieldName: 'Released', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }); fix.detectChanges(); @@ -1283,7 +1340,7 @@ describe('IgxGrid - GroupBy', () => { .toEqual(origScrollHeight); })); - it('should persist group row expand/collapse state when scrolling.', async () => { + it('should persist group row expand/collapse state when scrolling.', async () => { const fix = TestBed.createComponent(DefaultGridComponent); const grid = fix.componentInstance.instance; @@ -1293,8 +1350,10 @@ describe('IgxGrid - GroupBy', () => { await wait(); fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); grid.groupBy({ fieldName: 'Released', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }); fix.detectChanges(); @@ -1330,8 +1389,10 @@ describe('IgxGrid - GroupBy', () => { await wait(); fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); grid.groupBy({ fieldName: 'Released', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }); fix.detectChanges(); const groupRow = grid.groupsRowList.toArray()[0]; @@ -1357,8 +1418,10 @@ describe('IgxGrid - GroupBy', () => { tick(); fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); let groupRows = grid.groupsRowList.toArray(); let dataRows = grid.dataRowList.toArray(); let allRows = grid.rowList.toArray(); @@ -1393,8 +1456,10 @@ describe('IgxGrid - GroupBy', () => { tick(); fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); @@ -1411,57 +1476,59 @@ describe('IgxGrid - GroupBy', () => { })); it('should not select group rows when selectAll API is called or when header checkbox is clicked.', - fakeAsync(() => { - const fix = TestBed.createComponent(DefaultGridComponent); - const grid = fix.componentInstance.instance; - fix.componentInstance.width = '1200px'; - tick(); - grid.columnWidth = '200px'; - tick(); - grid.rowSelectable = true; - tick(); - fix.detectChanges(); + fakeAsync(() => { + const fix = TestBed.createComponent(DefaultGridComponent); + const grid = fix.componentInstance.instance; + fix.componentInstance.width = '1200px'; + tick(); + grid.columnWidth = '200px'; + tick(); + grid.rowSelectable = true; + tick(); + fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); - fix.detectChanges(); + fix.detectChanges(); - grid.selectAllRows(); - tick(); + grid.selectAllRows(); + tick(); - fix.detectChanges(); + fix.detectChanges(); - let selRows = grid.selectedRows(); - tick(); - expect(selRows.length).toEqual(8); + let selRows = grid.selectedRows(); + tick(); + expect(selRows.length).toEqual(8); - let rows = fix.debugElement.queryAll(By.css('.igx-grid__tr--selected')); - for (const r of rows) { - expect(r.componentInstance instanceof IgxGridRowComponent).toBe(true); - } + let rows = fix.debugElement.queryAll(By.css('.igx-grid__tr--selected')); + for (const r of rows) { + expect(r.componentInstance instanceof IgxGridRowComponent).toBe(true); + } - grid.deselectAllRows(); - tick(); - fix.detectChanges(); - selRows = grid.selectedRows(); - expect(selRows.length).toEqual(0); + grid.deselectAllRows(); + tick(); + fix.detectChanges(); + selRows = grid.selectedRows(); + expect(selRows.length).toEqual(0); - const headerRow: HTMLElement = fix.nativeElement.querySelector('.igx-grid__thead'); - const headerCheckboxElement: Element = headerRow.querySelector('.igx-checkbox__input'); - headerCheckboxElement.dispatchEvent(new Event('click')); - tick(); - fix.detectChanges(); + const headerRow: HTMLElement = fix.nativeElement.querySelector('.igx-grid__thead'); + const headerCheckboxElement: Element = headerRow.querySelector('.igx-checkbox__input'); + headerCheckboxElement.dispatchEvent(new Event('click')); + tick(); + fix.detectChanges(); - selRows = grid.selectedRows(); - expect(selRows.length).toEqual(8); + selRows = grid.selectedRows(); + expect(selRows.length).toEqual(8); - rows = fix.debugElement.queryAll(By.css('.igx-grid__tr--selected')); - for (const r of rows) { - expect(r.componentInstance instanceof IgxGridRowComponent).toBe(true); - } + rows = fix.debugElement.queryAll(By.css('.igx-grid__tr--selected')); + for (const r of rows) { + expect(r.componentInstance instanceof IgxGridRowComponent).toBe(true); + } - })); + })); // GroupBy + Resizing it('should retain same size for group row after a column is resized.', fakeAsync(() => { @@ -1471,8 +1538,10 @@ describe('IgxGrid - GroupBy', () => { fix.componentInstance.enableResizing = true; grid.columnWidth = '200px'; fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); let grRows = grid.groupsRowList.toArray(); @@ -1517,8 +1586,10 @@ describe('IgxGrid - GroupBy', () => { grid.columnWidth = '200px'; tick(); fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); grid.enableSummaries([{ fieldName: 'ProductName' }]); @@ -1545,8 +1616,10 @@ describe('IgxGrid - GroupBy', () => { grid.columnWidth = '200px'; tick(); fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); grid.getColumnByName('ProductName').hidden = true; @@ -1571,8 +1644,10 @@ describe('IgxGrid - GroupBy', () => { grid.columnWidth = '200px'; tick(); fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); grid.pinColumn('ProductName'); @@ -1593,8 +1668,10 @@ describe('IgxGrid - GroupBy', () => { grid.columnWidth = '200px'; grid.primaryKey = 'ID'; fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); // verify rows @@ -1654,8 +1731,10 @@ describe('IgxGrid - GroupBy', () => { grid.primaryKey = 'ID'; fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); const rv = grid.getRowByKey(5).element.nativeElement.querySelectorAll(CELL_CSS_CLASS)[2]; @@ -1695,8 +1774,10 @@ describe('IgxGrid - GroupBy', () => { fix.componentInstance.instance.perPage = 3; tick(); fix.detectChanges(); - fix.componentInstance.instance.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + fix.componentInstance.instance.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); const groupRows = grid.groupsRowList.toArray(); const dataRows = grid.dataRowList.toArray(); @@ -1715,8 +1796,10 @@ describe('IgxGrid - GroupBy', () => { fix.componentInstance.instance.perPage = 3; tick(); fix.detectChanges(); - fix.componentInstance.instance.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + fix.componentInstance.instance.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); let groupRows = grid.groupsRowList.toArray(); let dataRows = grid.dataRowList.toArray(); @@ -1753,8 +1836,10 @@ describe('IgxGrid - GroupBy', () => { }); tick(); fix.detectChanges(); - fix.componentInstance.instance.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + fix.componentInstance.instance.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); let groupRows = grid.groupsRowList.toArray(); let dataRows = grid.dataRowList.toArray(); @@ -1798,8 +1883,10 @@ describe('IgxGrid - GroupBy', () => { fix.detectChanges(); const gridElement: HTMLElement = fix.nativeElement.querySelector('.igx-grid'); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); const groupRows = grid.groupsRowList.toArray(); // verify group area is rendered @@ -1823,8 +1910,10 @@ describe('IgxGrid - GroupBy', () => { fix.detectChanges(); const gridElement: HTMLElement = fix.nativeElement.querySelector('.igx-grid'); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); grid.toggleAllGroupRows(); tick(); fix.detectChanges(); @@ -1889,8 +1978,10 @@ describe('IgxGrid - GroupBy', () => { const grid = fix.componentInstance.instance; fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); const groupRows = grid.groupsRowList.toArray(); const chips = fix.nativeElement.querySelectorAll('igx-chip'); checkChips(chips, grid.groupingExpressions, grid.sortingExpressions); @@ -1902,8 +1993,10 @@ describe('IgxGrid - GroupBy', () => { const grid = fix.componentInstance.instance; fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); let chips = fix.nativeElement.querySelectorAll('igx-chip'); // click close button @@ -1921,8 +2014,10 @@ describe('IgxGrid - GroupBy', () => { const grid = fix.componentInstance.instance; fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); let chips = fix.nativeElement.querySelectorAll('igx-chip'); // click grouping direction arrow @@ -1943,8 +2038,10 @@ describe('IgxGrid - GroupBy', () => { tick(); fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); UIInteractions.simulateMouseEvent('click', fix.nativeElement.querySelector('igx-grid-header[id$="_ProductName"]'), 0, 0); tick(); @@ -1961,10 +2058,14 @@ describe('IgxGrid - GroupBy', () => { fix.componentInstance.height = '200px'; fix.detectChanges(); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); - grid.groupBy({ fieldName: 'Released', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); + grid.groupBy({ + fieldName: 'Released', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); @@ -1986,48 +2087,55 @@ describe('IgxGrid - GroupBy', () => { }); it('should persist state for the correct group record when there are group records with the same fieldName and value.', - fakeAsync(() => { - const fix = TestBed.createComponent(GroupableGridComponent); - const grid = fix.componentInstance.instance; - fix.componentInstance.data = [ - { - Downloads: 0, - ID: 1, - ProductName: 'JavaScript', - ReleaseDate: new Date(), - Released: false - }, - { - Downloads: 0, - ID: 2, - ProductName: 'JavaScript', - ReleaseDate: new Date(), - Released: true - } - ]; - tick(); - fix.detectChanges(); + fakeAsync(() => { + const fix = TestBed.createComponent(GroupableGridComponent); + const grid = fix.componentInstance.instance; + fix.componentInstance.data = [ + { + Downloads: 0, + ID: 1, + ProductName: 'JavaScript', + ReleaseDate: new Date(), + Released: false + }, + { + Downloads: 0, + ID: 2, + ProductName: 'JavaScript', + ReleaseDate: new Date(), + Released: true + } + ]; + tick(); + fix.detectChanges(); - grid.groupBy({ fieldName: 'Released', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'Released', + dir: SortingDirection.Asc, + ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); - fix.detectChanges(); + fix.detectChanges(); - const groupRows = grid.groupsRowList.toArray(); + const groupRows = grid.groupsRowList.toArray(); - // group rows that have the same fieldName and value but belong to different parent groups - const similarGroupRows = groupRows.filter((gRows) => - gRows.groupRow.value === 'JavaScript' && gRows.groupRow.expression.fieldName); - expect(similarGroupRows.length).toEqual(2); + // group rows that have the same fieldName and value but belong to different parent groups + const similarGroupRows = groupRows.filter((gRows) => + gRows.groupRow.value === 'JavaScript' && gRows.groupRow.expression.fieldName); + expect(similarGroupRows.length).toEqual(2); - // verify that if one is collapse the other remains expanded - similarGroupRows[0].toggle(); - tick(); + // verify that if one is collapse the other remains expanded + similarGroupRows[0].toggle(); + tick(); - expect(similarGroupRows[0].expanded).toEqual(false); - expect(similarGroupRows[1].expanded).toEqual(true); - })); + expect(similarGroupRows[0].expanded).toEqual(false); + expect(similarGroupRows[1].expanded).toEqual(true); + })); it('should render disabled non-interactable chip for column that does not allow grouping.', fakeAsync(() => { const fix = TestBed.createComponent(DefaultGridComponent); @@ -2117,8 +2225,10 @@ describe('IgxGrid - GroupBy', () => { tick(); fix.detectChanges(); - grid.groupBy([{ fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }]); + grid.groupBy([{ + fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }]); fix.detectChanges(); expect(groupRows[0].expanded).toEqual(true); @@ -2210,8 +2320,10 @@ describe('IgxGrid - GroupBy', () => { const grid = fix.componentInstance.instance; fix.detectChanges(); grid.groupBy({ fieldName: 'Released', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); const chipComponents = fix.debugElement.queryAll(By.directive(IgxChipComponent)); // Disable chip animations @@ -2342,8 +2454,10 @@ describe('IgxGrid - GroupBy', () => { fix.detectChanges(); grid.groupBy({ fieldName: 'Released', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); const firstColumn = fix.debugElement.query(By.directive(IgxColumnMovingDragDirective)); @@ -2431,10 +2545,14 @@ describe('IgxGrid - GroupBy', () => { // verify height is recalculated. grid.groupBy({ fieldName: 'Released', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }); grid.groupBy({ fieldName: 'Downloads', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }); - grid.groupBy({ fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); - grid.groupBy({ fieldName: 'ReleaseDate', dir: SortingDirection.Asc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance() }); + grid.groupBy({ + fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); + grid.groupBy({ + fieldName: 'ReleaseDate', dir: SortingDirection.Asc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); fix.detectChanges(); expectedHeight = parseInt(window.getComputedStyle(grid.nativeElement).height, 10) @@ -2548,50 +2666,55 @@ describe('IgxGrid - GroupBy', () => { })); it('should allow setting groupingExpressions and sortingExpressions initially.', - fakeAsync(() => { - const fix = TestBed.createComponent(DefaultGridComponent); - fix.componentInstance.enableSorting = true; - const grid = fix.componentInstance.instance; - grid.sortingExpressions = - [{ fieldName: 'Downloads', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }]; - grid.groupingExpressions = - [{ fieldName: 'Released', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }]; - fix.detectChanges(); + fakeAsync(() => { + const fix = TestBed.createComponent(DefaultGridComponent); + fix.componentInstance.enableSorting = true; + const grid = fix.componentInstance.instance; + grid.sortingExpressions = + [{ fieldName: 'Downloads', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }]; + grid.groupingExpressions = + [{ fieldName: 'Released', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }]; + fix.detectChanges(); - expect(grid.sortingExpressions.length).toEqual(2); - expect(grid.groupingExpressions.length).toEqual(1); + expect(grid.sortingExpressions.length).toEqual(2); + expect(grid.groupingExpressions.length).toEqual(1); - const groupRows = grid.groupsRowList.toArray(); + const groupRows = grid.groupsRowList.toArray(); - expect(groupRows.length).toEqual(3); + expect(groupRows.length).toEqual(3); - const chips = fix.nativeElement.querySelectorAll('igx-chip'); - checkChips(chips, grid.groupingExpressions, grid.sortingExpressions); + const chips = fix.nativeElement.querySelectorAll('igx-chip'); + checkChips(chips, grid.groupingExpressions, grid.sortingExpressions); - const sortingIcon = fix.debugElement.query(By.css('.sort-icon')); - expect(sortingIcon.nativeElement.textContent.trim()).toEqual(SORTING_ICON_ASC_CONTENT); - })); + const sortingIcon = fix.debugElement.query(By.css('.sort-icon')); + expect(sortingIcon.nativeElement.textContent.trim()).toEqual(SORTING_ICON_ASC_CONTENT); + })); it('should show horizontal scrollbar if column widths are equal to the grid width and a column is grouped.', - fakeAsync(() => { - const fix = TestBed.createComponent(DefaultGridComponent); + fakeAsync(() => { + const fix = TestBed.createComponent(DefaultGridComponent); - const grid = fix.componentInstance.instance; + const grid = fix.componentInstance.instance; - grid.columnWidth = '200px'; - tick(); - fix.componentInstance.width = '1000px'; - tick(); + grid.columnWidth = '200px'; + tick(); + fix.componentInstance.width = '1000px'; + tick(); - fix.detectChanges(); + fix.detectChanges(); - const hScrBar = grid.scr.nativeElement; - expect(hScrBar.hidden).toBe(true); + const hScrBar = grid.scr.nativeElement; + expect(hScrBar.hidden).toBe(true); - grid.groupBy({fieldName: 'Downloads', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance()}); - fix.detectChanges(); - expect(hScrBar.hidden).toBe(false); - })); + grid.groupBy({ + fieldName: 'Downloads', + dir: SortingDirection.Asc, + ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }); + fix.detectChanges(); + expect(hScrBar.hidden).toBe(false); + })); it('should allow changing the text of the drop area', async () => { const fix = TestBed.createComponent(DefaultGridComponent); @@ -2618,77 +2741,77 @@ describe('IgxGrid - GroupBy', () => { }); it('should hide all the grouped columns when hideGroupedColumns option is initially set to "true"', - fakeAsync(() => { - const fix = TestBed.createComponent(DefaultGridComponent); - const grid = fix.componentInstance.instance; - grid.hideGroupedColumns = true; - tick(); - fix.detectChanges(); - grid.groupBy([ - { fieldName: 'Downloads', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }, - { fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() } - ]); - tick(); - fix.detectChanges(); - // the two grouped columns should be hidden - expect(grid.getColumnByName('Downloads').hidden).toBe(true); - expect(grid.getColumnByName('ProductName').hidden).toBe(true); - // these should be visible - expect(grid.getColumnByName('ID').hidden).toBe(false); - expect(grid.getColumnByName('ReleaseDate').hidden).toBe(false); - expect(grid.getColumnByName('Released').hidden).toBe(false); - })); + fakeAsync(() => { + const fix = TestBed.createComponent(DefaultGridComponent); + const grid = fix.componentInstance.instance; + grid.hideGroupedColumns = true; + tick(); + fix.detectChanges(); + grid.groupBy([ + { fieldName: 'Downloads', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }, + { fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() } + ]); + tick(); + fix.detectChanges(); + // the two grouped columns should be hidden + expect(grid.getColumnByName('Downloads').hidden).toBe(true); + expect(grid.getColumnByName('ProductName').hidden).toBe(true); + // these should be visible + expect(grid.getColumnByName('ID').hidden).toBe(false); + expect(grid.getColumnByName('ReleaseDate').hidden).toBe(false); + expect(grid.getColumnByName('Released').hidden).toBe(false); + })); it('should show all the grid columns when hideGroupedColumns option is set to "false" at runtime, after being "true" initially', - fakeAsync(() => { - const fix = TestBed.createComponent(DefaultGridComponent); - const grid = fix.componentInstance.instance; - grid.hideGroupedColumns = true; - fix.detectChanges(); - grid.groupBy([ - { fieldName: 'Downloads', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }, - { fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() } - ]); - tick(); - fix.detectChanges(); - // the two grouped columns should be hidden initially - expect(grid.getColumnByName('Downloads').hidden).toBe(true); - expect(grid.getColumnByName('ProductName').hidden).toBe(true); - grid.hideGroupedColumns = false; - tick(); - fix.detectChanges(); - // all columns, whether grouped or ungrouped, should be visible - expect(grid.getColumnByName('Downloads').hidden).toBe(false); - expect(grid.getColumnByName('ProductName').hidden).toBe(false); - expect(grid.getColumnByName('ID').hidden).toBe(false); - expect(grid.getColumnByName('ReleaseDate').hidden).toBe(false); - expect(grid.getColumnByName('Released').hidden).toBe(false); - })); + fakeAsync(() => { + const fix = TestBed.createComponent(DefaultGridComponent); + const grid = fix.componentInstance.instance; + grid.hideGroupedColumns = true; + fix.detectChanges(); + grid.groupBy([ + { fieldName: 'Downloads', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }, + { fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() } + ]); + tick(); + fix.detectChanges(); + // the two grouped columns should be hidden initially + expect(grid.getColumnByName('Downloads').hidden).toBe(true); + expect(grid.getColumnByName('ProductName').hidden).toBe(true); + grid.hideGroupedColumns = false; + tick(); + fix.detectChanges(); + // all columns, whether grouped or ungrouped, should be visible + expect(grid.getColumnByName('Downloads').hidden).toBe(false); + expect(grid.getColumnByName('ProductName').hidden).toBe(false); + expect(grid.getColumnByName('ID').hidden).toBe(false); + expect(grid.getColumnByName('ReleaseDate').hidden).toBe(false); + expect(grid.getColumnByName('Released').hidden).toBe(false); + })); it('should hide the grouped columns when hideGroupedColumns option is set to "true" at runtime, after being "false" initially', - fakeAsync(() => { - const fix = TestBed.createComponent(DefaultGridComponent); - const grid = fix.componentInstance.instance; - fix.detectChanges(); - grid.groupBy([ - { fieldName: 'Downloads', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }, - { fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() } - ]); - tick(); - fix.detectChanges(); - // all columns, whether grouped or ungrouped, should be visible - expect(grid.getColumnByName('Downloads').hidden).toBe(false); - expect(grid.getColumnByName('ProductName').hidden).toBe(false); - expect(grid.getColumnByName('ID').hidden).toBe(false); - expect(grid.getColumnByName('ReleaseDate').hidden).toBe(false); - expect(grid.getColumnByName('Released').hidden).toBe(false); - grid.hideGroupedColumns = true; - tick(); - fix.detectChanges(); - // the two grouped columns should now be hidden - expect(grid.getColumnByName('Downloads').hidden).toBe(true); - expect(grid.getColumnByName('ProductName').hidden).toBe(true); - })); + fakeAsync(() => { + const fix = TestBed.createComponent(DefaultGridComponent); + const grid = fix.componentInstance.instance; + fix.detectChanges(); + grid.groupBy([ + { fieldName: 'Downloads', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }, + { fieldName: 'ProductName', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() } + ]); + tick(); + fix.detectChanges(); + // all columns, whether grouped or ungrouped, should be visible + expect(grid.getColumnByName('Downloads').hidden).toBe(false); + expect(grid.getColumnByName('ProductName').hidden).toBe(false); + expect(grid.getColumnByName('ID').hidden).toBe(false); + expect(grid.getColumnByName('ReleaseDate').hidden).toBe(false); + expect(grid.getColumnByName('Released').hidden).toBe(false); + grid.hideGroupedColumns = true; + tick(); + fix.detectChanges(); + // the two grouped columns should now be hidden + expect(grid.getColumnByName('Downloads').hidden).toBe(true); + expect(grid.getColumnByName('ProductName').hidden).toBe(true); + })); it('should update grouping expression when sorting a column first then grouping by it and changing sorting for it again', () => { const fix = TestBed.createComponent(DefaultGridComponent); @@ -2732,8 +2855,61 @@ describe('IgxGrid - GroupBy', () => { { fieldName: 'Downloads', dir: SortingDirection.Asc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() }, { fieldName: 'ID', dir: SortingDirection.Desc, ignoreCase: false, strategy: DefaultSortingStrategy.instance() } ]); - expect(grid.groupingExpressions).toEqual([{ fieldName: 'Released', dir: SortingDirection.Desc, ignoreCase: false, - strategy: DefaultSortingStrategy.instance()}]); + expect(grid.groupingExpressions).toEqual([{ + fieldName: 'Released', dir: SortingDirection.Desc, ignoreCase: false, + strategy: DefaultSortingStrategy.instance() + }]); + }); + + it('should not be able to group by ColumnGroup', (async () => { + const fix = TestBed.createComponent(MultiColumnHeadersWithGroupingComponent); + const grid = fix.componentInstance.grid; + fix.detectChanges(); + + // Try to group by a column group + const header = fix.debugElement.queryAll(By.css('.igx-grid__thead-title'))[0].nativeElement; + UIInteractions.simulatePointerEvent('pointerdown', header, 10, 10); + await wait(); + UIInteractions.simulatePointerEvent('pointermove', header, 150, 22); + await wait(50); + UIInteractions.simulatePointerEvent('pointermove', header, 100, 30); + await wait(50); + UIInteractions.simulatePointerEvent('pointerup', header, 100, 30); + await wait(50); + fix.detectChanges(); + + // verify there is no grouping + const groupRows = grid.groupsRowList.toArray(); + expect(groupRows.length).toBe(0); + expect(grid.groupingExpressions).toEqual([]); + })); + + it('should not show the group area if only columnGroups has property groupable set to true', (async () => { + const fix = TestBed.createComponent(MultiColumnHeadersWithGroupingComponent); + fix.detectChanges(); + const grid = fix.componentInstance.grid; + grid.getColumnByName('ID').groupable = false; + await wait(30); + fix.detectChanges(); + + const gridElement: HTMLElement = fix.nativeElement.querySelector('.igx-grid'); + // verify group area is not rendered + expect(gridElement.querySelectorAll('.igx-grid__grouparea').length).toEqual(0); + })); + + it('should add title attribute to chips when column is grouped', () => { + const fix = TestBed.createComponent(DefaultGridComponent); + fix.detectChanges(); + const exprs: ISortingExpression[] = [ + { fieldName: 'ProductName', dir: SortingDirection.Desc, ignoreCase: true, strategy: DefaultSortingStrategy.instance() }, + { fieldName: 'Released', dir: SortingDirection.Desc, ignoreCase: true, strategy: DefaultSortingStrategy.instance() } + ]; + const grid = fix.componentInstance.instance; + grid.groupBy(exprs); + fix.detectChanges(); + const chips = fix.nativeElement.querySelectorAll('igx-chip'); + expect(chips[0].getAttribute('title')).toEqual('ProductName'); + expect(chips[1].getAttribute('title')).toEqual('Released'); }); it('should not be able to group by ColumnGroup', (async () => { diff --git a/src/app/mask/mask.sample.css b/src/app/mask/mask.sample.css index e01d36d9b57..d4593fc1ba3 100644 --- a/src/app/mask/mask.sample.css +++ b/src/app/mask/mask.sample.css @@ -3,7 +3,6 @@ position: relative; height: 100%; margin: 0 auto; - background: #fff; } .sample-content { @@ -25,24 +24,6 @@ min-width: 280px; } -@-webkit-keyframes fade-in { - 0% { - opacity: 0; - } - 100% { - opacity: 1; - } -} - -@keyframes fade-in { - 0% { - opacity: 0; - } - 100% { - opacity: 1; - } -} - .input-sample { box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.2), 0 1px 1px 0 rgba(0, 0, 0, 0.14), 0 2px 1px -1px rgba(0, 0, 0, 0.12); padding: 24px 16px; @@ -54,7 +35,6 @@ margin-bottom: 48px; } -.igx-form-group + .igx-form-group { +.igx-form-group+.igx-form-group { margin-top: 42px; } - diff --git a/src/index.html b/src/index.html index b62752b3f8a..91a926bdd06 100644 --- a/src/index.html +++ b/src/index.html @@ -8,7 +8,7 @@ - + diff --git a/src/styles/igniteui-theme.scss b/src/styles/igniteui-theme.scss index db8f9939cd0..c491c2c390f 100644 --- a/src/styles/igniteui-theme.scss +++ b/src/styles/igniteui-theme.scss @@ -1,8 +1,6 @@ @import url('https://fonts.googleapis.com/icon?family=Material+Icons'); @import url('https://fonts.googleapis.com/css?family=Titillium+Web:300,400,600,700'); - @import '../../projects/igniteui-angular/src/lib/core/styles/themes/index'; -@import '../../projects/igniteui-angular/src/lib/core/styles/themes/schemas/dark-green/index'; @import 'mixins'; @import 'app-palettes'; @@ -18,19 +16,18 @@ color: $igx-foreground-color; @include scrollbar-love(); - @include igx-theme($default-palette, $legacy-support: true); + @include igx-theme($default-palette); } - -.dark-green-theme { - $igx-background-color: #484848; +.dark-theme { + $igx-background-color: #333; $igx-foreground-color: text-contrast($igx-background-color); background: $igx-background-color; color: $igx-foreground-color; - @include scrollbar-love($igx-background-color); - @include igx-green-theme(); + @include scrollbar-love(lighten($igx-background-color, 15%)); + @include igx-dark-theme($green-palette); .igniteui-logo__text { fill: #fff; From 1a77791af57732e9ea79ad35f7cc6721512ae16e Mon Sep 17 00:00:00 2001 From: Aleksandar Kamenov Date: Thu, 22 Nov 2018 14:26:57 +0200 Subject: [PATCH 12/18] fix(gulp): change translations repo references Closes #3103 --- gulpfile.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gulpfile.js b/gulpfile.js index b99b5bf5def..d50c67f2724 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -240,8 +240,8 @@ gulp.task('typedoc-build', [ ]); const TRANSLATIONS_REPO = { - NAME: 'igniteui-angular-api-ja', - LINK: `https://github.com/IgniteUI/igniteui-angular-api-ja` + NAME: 'igniteui-angular-api-i18n', + LINK: `https://github.com/IgniteUI/igniteui-angular-api-i18n` }; const DOCS_OUTPUT_PATH = 'dist\\igniteui-angular\\docs' From 981e6e97e9a995f72c93103f14f966f7da0418de Mon Sep 17 00:00:00 2001 From: Aleksandar Kamenov Date: Thu, 22 Nov 2018 14:49:30 +0200 Subject: [PATCH 13/18] fix(gulp): fix path to sassdoc options file Closes #3103 --- gulpfile.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gulpfile.js b/gulpfile.js index d50c67f2724..6cd26f76811 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -291,7 +291,7 @@ gulp.task('typedoc-build:doc:en:localization', ['typedoc-build', 'typedoc:clean- const SASSDOC = { PROJECT_PATH: "projects\\igniteui-angular\\src\\lib\\core\\styles", DEST: "dist\\igniteui-angular\\docs\\sass", - OPTIONS: JSON.parse(fs.readFileSync('.\\.sassdocrc', 'utf8')), + OPTIONS: JSON.parse(fs.readFileSync('./.sassdocrc', 'utf8')), } gulp.task('sassdoc:clean-docs-dir', () => { From 9e718b46ac99769a2a0f13113a478778a3ae7401 Mon Sep 17 00:00:00 2001 From: Aleksandar Kamenov Date: Thu, 22 Nov 2018 15:33:01 +0200 Subject: [PATCH 14/18] chore(*): update package.json Closes #3103 --- package-lock.json | 15 ++-- package.json | 206 +++++++++++++++++++++++----------------------- 2 files changed, 111 insertions(+), 110 deletions(-) diff --git a/package-lock.json b/package-lock.json index 7cd37d7cd9f..ad9efd8aeaa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5443,12 +5443,14 @@ "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -5463,13 +5465,13 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", @@ -5591,8 +5593,7 @@ "inherits": { "version": "2.0.3", "bundled": true, - "dev": true, - "optional": true + "dev": true }, "ini": { "version": "1.3.5", @@ -5604,7 +5605,6 @@ "version": "1.0.0", "bundled": true, "dev": true, - "optional": true, "requires": { "number-is-nan": "^1.0.0" } @@ -5619,6 +5619,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "^1.1.7" } diff --git a/package.json b/package.json index 79b22884e99..5530295a2bb 100644 --- a/package.json +++ b/package.json @@ -1,105 +1,105 @@ { - "name": "igniteui-dev-demos", - "version": "0.0.0", - "scripts": { - "ng": "ng", - "start": "ng serve --open --configuration hmr", - "build": "ng build", - "test": "ng test", - "lint": "ng lint", - "e2e": "ng e2e", - "test:lib": "ng test igniteui-angular --watch=false --no-progress --code-coverage", - "test:lib:azure": "ng test igniteui-angular --watch=false --no-progress --code-coverage --karma-config=./projects/igniteui-angular/karma.azure.conf.js", - "test:lib:watch": "ng test igniteui-angular", - "test:migration": "node -r ts-node/register ./node_modules/jasmine/bin/jasmine.js ./projects/igniteui-angular/migrations/**/*.spec.ts", - "build:lib": "ng build igniteui-angular --prod && gulp build-style", - "build:style": "gulp build-style", - "build:migration": "gulp copy-migrations && tsc --listEmittedFiles --project ./projects/igniteui-angular/migrations/tsconfig.json", - "build:docs": "gulp typedoc-build:theme && sassdoc projects/igniteui-angular/src/lib/core/styles", - "lint:lib": "tslint 'projects/igniteui-angular/src/**/*.ts' && stylelint 'projects/igniteui-angular/src/lib/core/styles'", - "typedoc:dev": "gulp typedoc-serve --silent", - "typedoc-build:export": "gulp typedoc-build:export", - "typedoc-build:import": "gulp typedoc-build:import", - "sassdoc-build:export": "gulp sassdoc-build:export --convert true && gulp sassdoc:clean-docs-dir", - "sassdoc-build:import": "gulp sassdoc-build:import --render true", - "build:typedoc:ja:production": "set NODE_ENV=production && gulp typedoc-build:doc:ja:localization && gulp clean-translations:localization:repo", - "build:typedoc:ja:staging": "set NODE_ENV=staging && gulp typedoc-build:doc:ja:localization && gulp clean-translations:localization:repo", - "build:typedoc:en:production": "set NODE_ENV=production && gulp typedoc-build:doc:en:localization && gulp clean-translations:localization:repo", - "build:typedoc:en:staging": "set NODE_ENV=staging && gulp typedoc-build:doc:en:localization && gulp clean-translations:localization:repo", - "build:sassdoc:en:production": "set NODE_ENV=production && gulp sassdoc-build:doc:en:localizaiton --render true && gulp clean-translations:localization:repo", - "build:sassdoc:en:staging": "set NODE_ENV=staging && gulp sassdoc-build:doc:en:localizaiton --render true && gulp clean-translations:localization:repo", - "build:sassdoc:ja:production": "set NODE_ENV=production && gulp sassdoc-build:doc:ja:localizaiton --render true && gulp clean-translations:localization:repo", - "build:sassdoc:ja:staging": "set NODE_ENV=staging && gulp sassdoc-build:doc:ja:localizaiton --render true && gulp clean-translations:localization:repo", - "postinstall": "gulp copy-git-hooks" - }, - "private": true, - "dependencies": { - "@angular/animations": "^6.1.0", - "@angular/common": "^6.1.0", - "@angular/compiler": "^6.1.0", - "@angular/core": "^6.1.0", - "@angular/forms": "^6.1.0", - "@angular/http": "^6.1.0", - "@angular/platform-browser": "^6.1.0", - "@angular/platform-browser-dynamic": "^6.1.0", - "@angular/router": "^6.1.0", - "@types/hammerjs": "^2.0.35", - "core-js": "^2.5.7", - "hammerjs": "^2.0.8", - "jszip": "^3.1.5", - "rxjs": "^6.2.2", - "web-animations-js": "^2.3.1", - "zone.js": "^0.8.26" - }, - "devDependencies": { - "@angular-devkit/build-angular": "~0.7.1", - "@angular-devkit/build-ng-packagr": "~0.7.1", - "@angular-devkit/schematics": "^0.7.1", - "@angular/cli": "~6.1.1", - "@angular/compiler-cli": "^6.1.0", - "@angular/language-service": "^6.1.0", - "@angularclass/hmr": "^2.1.3", - "@types/jasmine": "~2.8.8", - "@types/jasminewd2": "~2.0.3", - "@types/node": "~10.5.4", - "@types/webpack-env": "^1.13.6", - "browser-sync": "^2.24.6", - "codelyzer": "~4.4.2", - "coveralls": "^3.0.2", - "gulp": "^3.9.1", - "gulp-concat": "^2.6.1", - "gulp-postcss": "^7.0.1", - "gulp-sass": "^4.0.1", - "gulp-shell": "^0.6.5", - "gulp-sourcemaps": "^2.6.4", - "gulp-uglify": "^3.0.1", - "gulp-typescript": "^5.0.0-alpha.3", - "hammer-simulator": "git+https://github.com/hammerjs/simulator.git", - "jasmine": "^3.1.0", - "jasmine-core": "~3.1.0", - "jasmine-spec-reporter": "~4.2.1", - "karma": "~2.0.5", - "karma-chrome-launcher": "~2.2.0", - "karma-coverage-istanbul-reporter": "~2.0.1", - "karma-jasmine": "~1.1.2", - "karma-jasmine-html-reporter": "~1.2.0", - "karma-junit-reporter": "^1.2.0", - "karma-spec-reporter": "~0.0.32", - "lunr": "^2.3.3", - "ng-packagr": "^3.0.6", - "protractor": "~5.3.0", - "sassdoc": "^2.5.0", - "sassdoc-plugin-localization": "^1.0.3", - "stylelint": "^8.4.0", - "stylelint-scss": "^2.5.0", - "themeleon": "^3.0.2", - "ts-node": "~7.0.0", - "tsickle": ">=0.25.5", - "tslib": "^1.9.3", - "tslint": "~5.11.0", - "typedoc": "^0.13.0", - "typedoc-plugin-localization": "^1.2.1", - "typescript": "~2.7.2", - "webpack-sources": "1.2.0" - } + "name": "igniteui-dev-demos", + "version": "0.0.0", + "scripts": { + "ng": "ng", + "start": "ng serve --open --configuration hmr", + "build": "ng build", + "test": "ng test", + "lint": "ng lint", + "e2e": "ng e2e", + "test:lib": "ng test igniteui-angular --watch=false --no-progress --code-coverage", + "test:lib:azure": "ng test igniteui-angular --watch=false --no-progress --code-coverage --karma-config=./projects/igniteui-angular/karma.azure.conf.js", + "test:lib:watch": "ng test igniteui-angular", + "test:migration": "node -r ts-node/register ./node_modules/jasmine/bin/jasmine.js ./projects/igniteui-angular/migrations/**/*.spec.ts", + "build:lib": "ng build igniteui-angular --prod && gulp build-style", + "build:style": "gulp build-style", + "build:migration": "gulp copy-migrations && tsc --listEmittedFiles --project ./projects/igniteui-angular/migrations/tsconfig.json", + "build:docs": "gulp typedoc-build:theme && sassdoc projects/igniteui-angular/src/lib/core/styles", + "lint:lib": "tslint 'projects/igniteui-angular/src/**/*.ts' && stylelint 'projects/igniteui-angular/src/lib/core/styles'", + "typedoc:dev": "gulp typedoc-serve --silent", + "typedoc-build:export": "gulp typedoc-build:export", + "typedoc-build:import": "gulp typedoc-build:import", + "sassdoc-build:export": "gulp sassdoc-build:export --convert true && gulp sassdoc:clean-docs-dir", + "sassdoc-build:import": "gulp sassdoc-build:import --render true", + "build:typedoc:ja:production": "set NODE_ENV=production && gulp typedoc-build:doc:ja:localization && gulp clean-translations:localization:repo", + "build:typedoc:ja:staging": "set NODE_ENV=staging && gulp typedoc-build:doc:ja:localization && gulp clean-translations:localization:repo", + "build:typedoc:en:production": "set NODE_ENV=production && gulp typedoc-build:doc:en:localization && gulp clean-translations:localization:repo", + "build:typedoc:en:staging": "set NODE_ENV=staging && gulp typedoc-build:doc:en:localization && gulp clean-translations:localization:repo", + "build:sassdoc:en:production": "set NODE_ENV=production && gulp sassdoc-build:doc:en:localizaiton --render true && gulp clean-translations:localization:repo", + "build:sassdoc:en:staging": "set NODE_ENV=staging && gulp sassdoc-build:doc:en:localizaiton --render true && gulp clean-translations:localization:repo", + "build:sassdoc:ja:production": "set NODE_ENV=production && gulp sassdoc-build:doc:ja:localizaiton --render true && gulp clean-translations:localization:repo", + "build:sassdoc:ja:staging": "set NODE_ENV=staging && gulp sassdoc-build:doc:ja:localizaiton --render true && gulp clean-translations:localization:repo", + "postinstall": "gulp copy-git-hooks" + }, + "private": true, + "dependencies": { + "@angular/animations": "^7.0.3", + "@angular/common": "^7.0.3", + "@angular/compiler": "^7.0.3", + "@angular/core": "^7.0.3", + "@angular/forms": "^7.0.3", + "@angular/http": "^7.0.3", + "@angular/platform-browser": "^7.0.3", + "@angular/platform-browser-dynamic": "^7.0.3", + "@angular/router": "^7.0.3", + "@types/hammerjs": "^2.0.36", + "core-js": "^2.5.7", + "hammerjs": "^2.0.8", + "jszip": "^3.1.5", + "rxjs": "^6.3.3", + "web-animations-js": "^2.3.1", + "zone.js": "^0.8.26" + }, + "devDependencies": { + "@angular-devkit/build-angular": "~0.10.0", + "@angular-devkit/build-ng-packagr": "~0.10.0", + "@angular-devkit/schematics": "^7.0.5", + "@angular/cli": "~7.0.5", + "@angular/compiler-cli": "^7.0.3", + "@angular/language-service": "^7.0.3", + "@angularclass/hmr": "^2.1.3", + "@types/jasmine": "~2.8.11", + "@types/jasminewd2": "~2.0.6", + "@types/node": "~10.12.6", + "@types/webpack-env": "^1.13.6", + "browser-sync": "^2.26.3", + "codelyzer": "~4.5.0", + "coveralls": "^3.0.2", + "gulp": "^3.9.1", + "gulp-concat": "^2.6.1", + "gulp-postcss": "^8.0.0", + "gulp-sass": "^4.0.2", + "gulp-shell": "^0.6.5", + "gulp-sourcemaps": "^2.6.4", + "gulp-typescript": "^5.0.0-alpha.3", + "gulp-uglify": "^3.0.1", + "hammer-simulator": "0.0.1", + "jasmine": "~3.2.0", + "jasmine-core": "~3.2.1", + "jasmine-spec-reporter": "~4.2.1", + "karma": "~3.1.1", + "karma-chrome-launcher": "~2.2.0", + "karma-coverage-istanbul-reporter": "~2.0.4", + "karma-jasmine": "~1.1.2", + "karma-jasmine-html-reporter": "~1.4.0", + "karma-junit-reporter": "^1.2.0", + "karma-spec-reporter": "~0.0.32", + "lunr": "^2.3.5", + "ng-packagr": "^4.4.0", + "protractor": "~5.4.1", + "sassdoc": "^2.5.1", + "sassdoc-plugin-localization": "^1.0.2-beta.1", + "stylelint": "^9.8.0", + "stylelint-scss": "^3.4.0", + "themeleon": "^3.0.2", + "ts-node": "~7.0.1", + "tsickle": "0.33.1", + "tslib": "^1.9.3", + "tslint": "~5.11.0", + "typedoc": "^0.13.0", + "typedoc-plugin-localization": "^1.2.0", + "typescript": "~3.1.6", + "webpack-sources": "1.3.0" + } } From a658e00eaa9572dc0d6ac15dd6c76943cbb88407 Mon Sep 17 00:00:00 2001 From: Vasil Pavlov Date: Thu, 22 Nov 2018 17:16:15 +0200 Subject: [PATCH 15/18] test(igxGrid): adding a custom Sorting Strategy test #2734 (#3096) --- .../src/lib/grids/grid/grid.sorting.spec.ts | 55 ++++++++++++++++++- 1 file changed, 53 insertions(+), 2 deletions(-) diff --git a/projects/igniteui-angular/src/lib/grids/grid/grid.sorting.spec.ts b/projects/igniteui-angular/src/lib/grids/grid/grid.sorting.spec.ts index 5585bc05b1f..28560014811 100644 --- a/projects/igniteui-angular/src/lib/grids/grid/grid.sorting.spec.ts +++ b/projects/igniteui-angular/src/lib/grids/grid/grid.sorting.spec.ts @@ -7,7 +7,8 @@ import { IgxGridModule } from './index'; import { GridTemplateStrings, ColumnDefinitions } from '../../test-utils/template-strings.spec'; import { BasicGridComponent } from '../../test-utils/grid-base-components.spec'; import { SampleTestData } from '../../test-utils/sample-test-data.spec'; -import { DefaultSortingStrategy } from '../../data-operations/sorting-strategy'; +import { DefaultSortingStrategy, ISortingStrategy } from '../../data-operations/sorting-strategy'; +import { IgxGridCellComponent } from '../cell.component'; import { configureTestSuite } from '../../test-utils/configure-suite'; const SORTING_ICON_NONE_CONTENT = 'none'; @@ -22,7 +23,8 @@ describe('IgxGrid - Grid Sorting', () => { TestBed.configureTestingModule({ declarations: [ - GridDeclaredColumnsComponent + GridDeclaredColumnsComponent, + SortByParityComponent ], imports: [IgxGridModule.forRoot()] }) @@ -315,6 +317,30 @@ describe('IgxGrid - Grid Sorting', () => { fixture.detectChanges(); expect(sortingIcon.nativeElement.textContent.trim()).toEqual(SORTING_ICON_NONE_CONTENT); }); + + it(`Should allow sorting using a custom Sorting Strategy.`, () => { + fixture = TestBed.createComponent(SortByParityComponent); + grid = fixture.componentInstance.grid; + fixture.componentInstance.data.push( + { ID: 8, Name: 'Brad', LastName: 'Walker', Region: 'DD' }, + { ID: 9, Name: 'Mary', LastName: 'Smith', Region: 'OC' }, + { ID: 10, Name: 'Brad', LastName: 'Smith', Region: 'BD' }, + ); + fixture.detectChanges(); + grid.sort({ + fieldName: 'ID', + dir: SortingDirection.Desc, + ignoreCase: false, + strategy: new SortByParityComponent() + }); + fixture.detectChanges(); + const oddHalf: IgxGridCellComponent[] = grid.getColumnByName('ID').cells.slice(0, 5); + const evenHalf: IgxGridCellComponent[] = grid.getColumnByName('ID').cells.slice(5); + const isFirstHalfOdd: boolean = oddHalf.every(cell => cell.value % 2 === 1); + const isSecondHalfEven: boolean = evenHalf.every(cell => cell.value % 2 === 0); + expect(isFirstHalfOdd).toEqual(true); + expect(isSecondHalfEven).toEqual(true); + }); }); @Component({ @@ -333,6 +359,31 @@ export class GridDeclaredColumnsComponent extends BasicGridComponent { public width = '800px'; } +@Component({ + template: GridTemplateStrings.declareGrid( + '', + '', + ColumnDefinitions.idFirstLastNameSortable) +}) +export class SortByParityComponent extends GridDeclaredColumnsComponent implements ISortingStrategy { + public sort(data: any[], fieldName: string, dir: SortingDirection) { + const key = fieldName; + const reverse = (dir === SortingDirection.Desc ? -1 : 1); + const cmpFunc = (obj1, obj2) => { + return this.compareObjects(obj1, obj2, key, reverse); + }; + return data.sort(cmpFunc); + } + protected sortByParity(a: any, b: any) { + return a % 2 === 0 ? -1 : b % 2 === 0 ? 1 : 0; + } + protected compareObjects(obj1: object, obj2: object, key: string, reverse: number) { + const a = obj1[key]; + const b = obj2[key]; + return reverse * this.sortByParity(a, b); + } +} + function getCurrentCellFromGrid(grid, row, cell) { const gridRow = grid.rowList.toArray()[row]; const gridCell = gridRow.cells.toArray()[cell]; From 7783f4add515fb65d43dabc1d73c5c06f3ab1413 Mon Sep 17 00:00:00 2001 From: Simeon Simeonoff Date: Thu, 22 Nov 2018 17:33:01 +0200 Subject: [PATCH 16/18] fix(themes): dark-green theme not building --- .../src/lib/core/styles/themes/presets/igniteui-dark-green.scss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/projects/igniteui-angular/src/lib/core/styles/themes/presets/igniteui-dark-green.scss b/projects/igniteui-angular/src/lib/core/styles/themes/presets/igniteui-dark-green.scss index e7f5be9ec3a..868980fdcd6 100644 --- a/projects/igniteui-angular/src/lib/core/styles/themes/presets/igniteui-dark-green.scss +++ b/projects/igniteui-angular/src/lib/core/styles/themes/presets/igniteui-dark-green.scss @@ -1,4 +1,4 @@ @import '../index'; @include igx-core(); -@include igx-dark-theme($dark-green-palette); +@include igx-dark-theme($green-palette); From 3502eb98f3c122542cbbc3e70cea0d1242452103 Mon Sep 17 00:00:00 2001 From: Nadia Robakova Date: Thu, 22 Nov 2018 17:43:06 +0200 Subject: [PATCH 17/18] Fix blank space when navigating to next page (#3048) * fix(grid): Recalculate start index on _applyChanges #2957 * fix(grid): update for lint #2957 From 6d3da79170a1ece4953a00007ade650756620683 Mon Sep 17 00:00:00 2001 From: Stefan Stoyanov <34062094+sstoyanovIG@users.noreply.github.com> Date: Thu, 22 Nov 2018 19:27:10 +0200 Subject: [PATCH 18/18] feat(igx-grid): Improve UX for boolean and date columns, #3092 (#3110) --- .../grid-filtering-row.component.html | 1 + .../filtering/grid-filtering-row.component.ts | 26 +++++++++++++++++++ 2 files changed, 27 insertions(+) diff --git a/projects/igniteui-angular/src/lib/grids/filtering/grid-filtering-row.component.html b/projects/igniteui-angular/src/lib/grids/filtering/grid-filtering-row.component.html index 33db66551f7..0ce76548b17 100644 --- a/projects/igniteui-angular/src/lib/grids/filtering/grid-filtering-row.component.html +++ b/projects/igniteui-angular/src/lib/grids/filtering/grid-filtering-row.component.html @@ -27,6 +27,7 @@ [(ngModel)]="value" [type]="type" [readonly]="isUnaryCondition" + (click)="onInputClick()" (keydown)="onInputKeyDown($event)"/> clear diff --git a/projects/igniteui-angular/src/lib/grids/filtering/grid-filtering-row.component.ts b/projects/igniteui-angular/src/lib/grids/filtering/grid-filtering-row.component.ts index 612abfd9e26..336374a9058 100644 --- a/projects/igniteui-angular/src/lib/grids/filtering/grid-filtering-row.component.ts +++ b/projects/igniteui-angular/src/lib/grids/filtering/grid-filtering-row.component.ts @@ -216,6 +216,10 @@ export class IgxGridFilteringRowComponent implements AfterViewInit, OnDestroy { get placeholder(): string { if (this.expression.condition && this.expression.condition.isUnary) { return this.filteringService.getChipLabel(this.expression); + } else if (this.column.dataType === DataType.Date) { + return 'Pick up date'; + } else if (this.column.dataType === DataType.Boolean) { + return 'All'; } else { return 'Add filter value'; } @@ -240,6 +244,19 @@ export class IgxGridFilteringRowComponent implements AfterViewInit, OnDestroy { * Event handler for keydown on the input. */ public onInputKeyDown(event: KeyboardEvent) { + if (this.column.dataType === DataType.Boolean) { + if ((event.key === KEYS.ENTER || event.key === KEYS.SPACE || event.key === KEYS.SPACE_IE) && + this.dropDownConditions.collapsed) { + this.toggleConditionsDropDown(this.inputGroupPrefix.nativeElement); + event.stopPropagation(); + return; + } else if ((event.key === KEYS.ESCAPE || event.key === KEYS.ESCAPE_IE) && !this.dropDownConditions.collapsed) { + this.toggleConditionsDropDown(this.inputGroupPrefix.nativeElement); + event.stopPropagation(); + return; + } + } + if (event.key === KEYS.ENTER) { this.chipsArea.chipsList.filter(chip => chip.selected = false); @@ -268,6 +285,15 @@ export class IgxGridFilteringRowComponent implements AfterViewInit, OnDestroy { event.stopPropagation(); } + /** + * Event handler for input click event. + */ + public onInputClick() { + if (this.column.dataType === DataType.Boolean) { + this.toggleConditionsDropDown(this.inputGroupPrefix.nativeElement); + } + } + /** * Event handler for datepicker's close. */