diff --git a/angular/package-lock.json b/angular/package-lock.json index e5c92b20c0b..c12b3a63b91 100644 --- a/angular/package-lock.json +++ b/angular/package-lock.json @@ -9,7 +9,8 @@ "version": "6.0.0-rc.2", "license": "MIT", "dependencies": { - "@ionic/core": "6.0.0-rc.1", + "@ionic/core": "6.0.0-rc.2", + "ionicons": "^6.0.0", "jsonc-parser": "^3.0.0", "tslib": "^2.0.0" }, @@ -1023,15 +1024,24 @@ "dev": true }, "node_modules/@ionic/core": { - "version": "6.0.0-rc.1", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-6.0.0-rc.1.tgz", - "integrity": "sha512-O7kqodTo61gJKaeokYcdM5KwnfZ1Li5UiBbQH5oZXeU0jzJWfp5dU02Chk3dCMlMI1dUYmQRnu2KCwETV/X5Kg==", + "version": "6.0.0-rc.2", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-6.0.0-rc.2.tgz", + "integrity": "sha512-evf3J01B91zs386bBYz55zjG0I7BXSs/+pySkj+fDHVT/teXYntpUzebm5rqA0/IoUn6QXEdz1x3Nrz8040/Jg==", + "license": "MIT", "dependencies": { - "@stencil/core": "^2.6.0", - "ionicons": "^5.5.1", + "@stencil/core": "~2.10.0", + "ionicons": "^5.5.4", "tslib": "^2.1.0" } }, + "node_modules/@ionic/core/node_modules/ionicons": { + "version": "5.5.4", + "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-5.5.4.tgz", + "integrity": "sha512-3ph8X9my3inhabWEZ7N0XRA0MnnNQ1v9a602mLNgWsIXnxE9G5BybIZ/pws/OZZ/hoNlvSjk801N03yL9/FNgQ==", + "dependencies": { + "@stencil/core": "~2.10.0" + } + }, "node_modules/@ionic/eslint-config": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/@ionic/eslint-config/-/eslint-config-0.3.0.tgz", @@ -1222,9 +1232,9 @@ } }, "node_modules/@stencil/core": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.9.0.tgz", - "integrity": "sha512-kY3xYolZoJO1MKslL0NQccHy72R3TIl1prHgfmIrEoGcnMgc6uiskdWaGMuI5/sCGz9T+QuTVz76B1H2ySyBZg==", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.10.0.tgz", + "integrity": "sha512-15rWMTPQ/sp0lSV82HVCXkIya3QLN+uBl7pqK4JnTrp4HiLrzLmNbWjbvgCs55gw0lULbCIGbRIEsFz+Pe/Q+A==", "bin": { "stencil": "bin/stencil" }, @@ -3557,11 +3567,11 @@ } }, "node_modules/ionicons": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-5.5.3.tgz", - "integrity": "sha512-L71djrMi8pAad66tpwdnO1vwcyluCFvehzxU1PpH1k/HpYBZhZ5IaYhqXipmqUvu5aEbd4cbRguYyI5Fd4bxTw==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-6.0.0.tgz", + "integrity": "sha512-p83W1T8jZUlllHAjuIWaDQbI36OYqdrwcf8MhYbKW7+9rjGlCMP9+5OaR0W7tl0QfM004uAiy/zkc7HTpDNKgA==", "dependencies": { - "@stencil/core": "^2.5.0" + "@stencil/core": "~2.10.0" } }, "node_modules/is-bigint": { @@ -7939,13 +7949,23 @@ "dev": true }, "@ionic/core": { - "version": "6.0.0-rc.1", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-6.0.0-rc.1.tgz", - "integrity": "sha512-O7kqodTo61gJKaeokYcdM5KwnfZ1Li5UiBbQH5oZXeU0jzJWfp5dU02Chk3dCMlMI1dUYmQRnu2KCwETV/X5Kg==", + "version": "6.0.0-rc.2", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-6.0.0-rc.2.tgz", + "integrity": "sha512-evf3J01B91zs386bBYz55zjG0I7BXSs/+pySkj+fDHVT/teXYntpUzebm5rqA0/IoUn6QXEdz1x3Nrz8040/Jg==", "requires": { - "@stencil/core": "^2.6.0", - "ionicons": "^5.5.1", + "@stencil/core": "~2.10.0", + "ionicons": "^5.5.4", "tslib": "^2.1.0" + }, + "dependencies": { + "ionicons": { + "version": "5.5.4", + "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-5.5.4.tgz", + "integrity": "sha512-3ph8X9my3inhabWEZ7N0XRA0MnnNQ1v9a602mLNgWsIXnxE9G5BybIZ/pws/OZZ/hoNlvSjk801N03yL9/FNgQ==", + "requires": { + "@stencil/core": "~2.10.0" + } + } } }, "@ionic/eslint-config": { @@ -7975,7 +7995,8 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/@ionic/prettier-config/-/prettier-config-2.0.0.tgz", "integrity": "sha512-ageMx54B9qqS1scnFW3kQW2NW8HyXwUM/p9c1YSWFKr6Yct7YVNbJFY3EcFapaNTiDnwo+GLlPRt+wST6E8AfA==", - "dev": true + "dev": true, + "requires": {} }, "@nodelib/fs.scandir": { "version": "2.1.5", @@ -8092,9 +8113,9 @@ } }, "@stencil/core": { - "version": "2.9.0", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.9.0.tgz", - "integrity": "sha512-kY3xYolZoJO1MKslL0NQccHy72R3TIl1prHgfmIrEoGcnMgc6uiskdWaGMuI5/sCGz9T+QuTVz76B1H2ySyBZg==" + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.10.0.tgz", + "integrity": "sha512-15rWMTPQ/sp0lSV82HVCXkIya3QLN+uBl7pqK4JnTrp4HiLrzLmNbWjbvgCs55gw0lULbCIGbRIEsFz+Pe/Q+A==" }, "@types/estree": { "version": "0.0.39", @@ -8267,7 +8288,8 @@ "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true + "dev": true, + "requires": {} }, "aggregate-error": { "version": "3.1.0", @@ -9799,11 +9821,11 @@ } }, "ionicons": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-5.5.3.tgz", - "integrity": "sha512-L71djrMi8pAad66tpwdnO1vwcyluCFvehzxU1PpH1k/HpYBZhZ5IaYhqXipmqUvu5aEbd4cbRguYyI5Fd4bxTw==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-6.0.0.tgz", + "integrity": "sha512-p83W1T8jZUlllHAjuIWaDQbI36OYqdrwcf8MhYbKW7+9rjGlCMP9+5OaR0W7tl0QfM004uAiy/zkc7HTpDNKgA==", "requires": { - "@stencil/core": "^2.5.0" + "@stencil/core": "~2.10.0" } }, "is-bigint": { @@ -12372,7 +12394,8 @@ "version": "4.1.5", "resolved": "https://registry.npmjs.org/typescript-eslint-language-service/-/typescript-eslint-language-service-4.1.5.tgz", "integrity": "sha512-lJ9tH53m8e8fYYwhG5hTpiUHCz4SjY55rT8T4ADrmF/29JPdWkUik8cbZy+KsCsUIG1CEMRz+DOV4S+wVyYivQ==", - "dev": true + "dev": true, + "requires": {} }, "unbox-primitive": { "version": "1.0.1", diff --git a/angular/package.json b/angular/package.json index bc6f6a87416..571ab59eebb 100644 --- a/angular/package.json +++ b/angular/package.json @@ -41,6 +41,7 @@ }, "dependencies": { "@ionic/core": "6.0.0-rc.2", + "ionicons": "^6.0.0", "jsonc-parser": "^3.0.0", "tslib": "^2.0.0" }, @@ -87,6 +88,7 @@ }, "allowedNonPeerDependencies": [ "@ionic/core", + "ionicons", "jsonc-parser" ] } diff --git a/angular/src/app-initialize.ts b/angular/src/app-initialize.ts index cb98eca94e3..d9f1e317860 100644 --- a/angular/src/app-initialize.ts +++ b/angular/src/app-initialize.ts @@ -1,6 +1,5 @@ import { NgZone } from '@angular/core'; -import { setupConfig } from '@ionic/core'; -import { applyPolyfills, defineCustomElements } from '@ionic/core/loader'; +import { initialize } from '@ionic/core/components'; import { Config } from './providers/config'; import { IonicWindow } from './types/interfaces'; @@ -10,28 +9,22 @@ export const appInitialize = (config: Config, doc: Document, zone: NgZone) => { return (): any => { const win: IonicWindow | undefined = doc.defaultView as any; if (win && typeof (window as any) !== 'undefined') { - setupConfig({ - ...config, - _zoneGate: (h: any) => zone.run(h), - }); - const aelFn = '__zone_symbol__addEventListener' in (doc.body as any) ? '__zone_symbol__addEventListener' : 'addEventListener'; - return applyPolyfills().then(() => { - return defineCustomElements(win, { - exclude: ['ion-tabs', 'ion-tab'], - syncQueue: true, - raf, - jmp: (h: any) => zone.runOutsideAngular(h), - ael(elm, eventName, cb, opts) { - (elm as any)[aelFn](eventName, cb, opts); - }, - rel(elm, eventName, cb, opts) { - elm.removeEventListener(eventName, cb, opts); - }, - }); + initialize({ + ...config, + _zoneGate: (h: any) => zone.run(h), + _ael: (elm, eventName, cb, opts) => { + (elm as any)[aelFn](eventName, cb, opts); + }, + _rel: (elm, eventName, cb, opts) => { + elm.removeEventListener(eventName, cb, opts); + }, + _jmp: (h: any) => zone.runOutsideAngular(h), + _raf: raf }); + } }; }; diff --git a/angular/src/directives/angular-component-lib/utils.ts b/angular/src/directives/angular-component-lib/utils.ts index 5c5ac108ae2..e0c62977c28 100644 --- a/angular/src/directives/angular-component-lib/utils.ts +++ b/angular/src/directives/angular-component-lib/utils.ts @@ -32,13 +32,28 @@ export const proxyOutputs = (instance: any, el: any, events: string[]) => { events.forEach(eventName => instance[eventName] = fromEvent(el, eventName)); } -export function ProxyCmp(opts: { inputs?: any; methods?: any }) { - const decorator = function(cls: any) { - if (opts.inputs) { - proxyInputs(cls, opts.inputs); +export const defineCustomElement = (tagName: string, customElement: any) => { + if ( + customElement !== undefined && + typeof customElements !== 'undefined' && + !customElements.get(tagName) + ) { + customElements.define(tagName, customElement); + } +} + +// tslint:disable-next-line: only-arrow-functions +export function ProxyCmp(opts: { tagName: string, customElement?: any, inputs?: any; methods?: any }) { + const decorator = function (cls: any) { + const { tagName, customElement, inputs, methods } = opts; + + defineCustomElement(tagName, customElement); + + if (inputs) { + proxyInputs(cls, inputs); } - if (opts.methods) { - proxyMethods(cls, opts.methods); + if (methods) { + proxyMethods(cls, methods); } return cls; }; diff --git a/angular/src/directives/ion-icon.ts b/angular/src/directives/ion-icon.ts new file mode 100644 index 00000000000..71a1a7b86b1 --- /dev/null +++ b/angular/src/directives/ion-icon.ts @@ -0,0 +1,28 @@ +/* eslint-disable */ +/* tslint:disable */ +import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, NgZone } from '@angular/core'; +import { Components } from "ionicons"; +import 'ionicons'; + + +import { ProxyCmp } from './angular-component-lib/utils'; + +export declare interface IonIcon extends Components.IonIcon {} +@ProxyCmp({ + tagName: 'ion-icon', + customElement: undefined, + inputs: ['color', 'flipRtl', 'icon', 'ios', 'lazy', 'md', 'mode', 'name', 'sanitize', 'size', 'src'] +}) +@Component({ + selector: 'ion-icon', + changeDetection: ChangeDetectionStrategy.OnPush, + template: '', + inputs: ['color', 'flipRtl', 'icon', 'ios', 'lazy', 'md', 'mode', 'name', 'sanitize', 'size', 'src'] +}) +export class IonIcon { + protected el: HTMLElement; + constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { + c.detach(); + this.el = r.nativeElement; + } +} diff --git a/angular/src/directives/navigation/ion-back-button.ts b/angular/src/directives/navigation/ion-back-button.ts index 7dad73bb9d5..f2b7fe54356 100644 --- a/angular/src/directives/navigation/ion-back-button.ts +++ b/angular/src/directives/navigation/ion-back-button.ts @@ -1,11 +1,17 @@ import { Directive, HostListener, Input, Optional } from '@angular/core'; -import { AnimationBuilder } from '@ionic/core'; +import { AnimationBuilder } from '@ionic/core/components'; import { Config } from '../../providers/config'; import { NavController } from '../../providers/nav-controller'; import { IonRouterOutlet } from './ion-router-outlet'; +import { IonBackButton as IonBackButtonCmp } from "@ionic/core/components/ion-back-button"; +import { ProxyCmp } from '../angular-component-lib/utils'; +@ProxyCmp({ + tagName: 'ion-back-button', + customElement: IonBackButtonCmp +}) @Directive({ selector: 'ion-back-button', }) diff --git a/angular/src/directives/navigation/ion-router-outlet.ts b/angular/src/directives/navigation/ion-router-outlet.ts index 241105af13a..c52ae3dcc78 100644 --- a/angular/src/directives/navigation/ion-router-outlet.ts +++ b/angular/src/directives/navigation/ion-router-outlet.ts @@ -16,7 +16,7 @@ import { SkipSelf, } from '@angular/core'; import { OutletContext, Router, ActivatedRoute, ChildrenOutletContexts, PRIMARY_OUTLET } from '@angular/router'; -import { componentOnReady } from '@ionic/core'; +import { componentOnReady } from '@ionic/core/components'; import { Observable, BehaviorSubject } from 'rxjs'; import { distinctUntilChanged, filter, switchMap } from 'rxjs/operators'; @@ -27,6 +27,13 @@ import { NavController } from '../../providers/nav-controller'; import { StackController } from './stack-controller'; import { RouteView, getUrl } from './stack-utils'; +import { IonRouterOutlet as IonRouterOutletCmp } from "@ionic/core/components/ion-router-outlet.js"; +import { ProxyCmp } from '../angular-component-lib/utils'; +console.log('router-outlet-source'); +@ProxyCmp({ + tagName: 'ion-router-outlet', + customElement: IonRouterOutletCmp +}) @Directive({ selector: 'ion-router-outlet', exportAs: 'outlet', diff --git a/angular/src/directives/navigation/nav-delegate.ts b/angular/src/directives/navigation/nav-delegate.ts index de0e83d3176..daa8f6b087b 100644 --- a/angular/src/directives/navigation/nav-delegate.ts +++ b/angular/src/directives/navigation/nav-delegate.ts @@ -2,8 +2,10 @@ import { ComponentFactoryResolver, ElementRef, Injector, ViewContainerRef, Direc import { AngularDelegate } from '../../providers/angular-delegate'; import { ProxyCmp, proxyOutputs } from '../angular-component-lib/utils'; - +import { IonNav as IonNavCmp } from "@ionic/core/components/ion-nav"; @ProxyCmp({ + tagName: 'ion-nav', + customElement: IonNavCmp, inputs: ['animated', 'animation', 'root', 'rootParams', 'swipeGesture'], methods: [ 'push', diff --git a/angular/src/directives/navigation/router-link-delegate.ts b/angular/src/directives/navigation/router-link-delegate.ts index 8ad6b276bdb..6baf4123efd 100644 --- a/angular/src/directives/navigation/router-link-delegate.ts +++ b/angular/src/directives/navigation/router-link-delegate.ts @@ -1,7 +1,7 @@ import { LocationStrategy } from '@angular/common'; import { ElementRef, OnChanges, OnDestroy, OnInit, Directive, HostListener, Input, Optional } from '@angular/core'; import { Router, RouterLink } from '@angular/router'; -import { AnimationBuilder, RouterDirection } from '@ionic/core'; +import { AnimationBuilder, RouterDirection } from '@ionic/core/components'; import { Subscription } from 'rxjs'; import { NavController } from '../../providers/nav-controller'; diff --git a/angular/src/directives/navigation/stack-controller.ts b/angular/src/directives/navigation/stack-controller.ts index a2f6134c1eb..8c29419b61c 100644 --- a/angular/src/directives/navigation/stack-controller.ts +++ b/angular/src/directives/navigation/stack-controller.ts @@ -1,7 +1,7 @@ import { Location } from '@angular/common'; import { ComponentRef, NgZone } from '@angular/core'; import { ActivatedRoute, Router } from '@angular/router'; -import { AnimationBuilder, RouterDirection } from '@ionic/core'; +import { AnimationBuilder, RouterDirection } from '@ionic/core/components'; import { bindLifecycleEvents } from '../../providers/angular-delegate'; import { NavController } from '../../providers/nav-controller'; diff --git a/angular/src/directives/navigation/stack-utils.ts b/angular/src/directives/navigation/stack-utils.ts index 4970c3c69ec..5a66e271abd 100644 --- a/angular/src/directives/navigation/stack-utils.ts +++ b/angular/src/directives/navigation/stack-utils.ts @@ -1,6 +1,6 @@ import { ComponentRef } from '@angular/core'; import { ActivatedRoute, NavigationExtras, Router } from '@angular/router'; -import { AnimationBuilder, NavDirection, RouterDirection } from '@ionic/core'; +import { AnimationBuilder, NavDirection, RouterDirection } from '@ionic/core/components'; export const insertView = (views: RouteView[], view: RouteView, direction: RouterDirection): RouteView[] => { if (direction === 'root') { diff --git a/angular/src/directives/overlays/modal.ts b/angular/src/directives/overlays/modal.ts index 499a7fe0961..2455d9d62d8 100644 --- a/angular/src/directives/overlays/modal.ts +++ b/angular/src/directives/overlays/modal.ts @@ -11,9 +11,12 @@ import { TemplateRef, } from '@angular/core'; import { ProxyCmp, proxyOutputs } from '../angular-component-lib/utils'; -import { Components } from '@ionic/core'; -export declare interface IonModal extends Components.IonModal {} +import { IonModal as IonModalCmp } from '@ionic/core/components/ion-modal.js'; + +export declare interface IonModal extends IonModalCmp {} @ProxyCmp({ + tagName: 'ion-modal', + customElement: IonModalCmp, inputs: [ 'animated', 'backdropBreakpoint', diff --git a/angular/src/directives/overlays/popover.ts b/angular/src/directives/overlays/popover.ts index 70466119185..2d78ec994f9 100644 --- a/angular/src/directives/overlays/popover.ts +++ b/angular/src/directives/overlays/popover.ts @@ -11,9 +11,12 @@ import { TemplateRef, } from '@angular/core'; import { ProxyCmp, proxyOutputs } from '../angular-component-lib/utils'; -import { Components } from '@ionic/core'; -export declare interface IonPopover extends Components.IonPopover {} +import { IonPopover as IonPopoverCmp } from '@ionic/core/components/ion-popover.js'; + +export declare interface IonPopover extends IonPopoverCmp {} @ProxyCmp({ + tagName: 'ion-popover', + customElement: IonPopoverCmp, inputs: [ 'alignment', 'animated', diff --git a/angular/src/directives/proxies-list.txt b/angular/src/directives/proxies-list.txt index 1ec13c5c85c..702c4876ebb 100644 --- a/angular/src/directives/proxies-list.txt +++ b/angular/src/directives/proxies-list.txt @@ -29,7 +29,6 @@ export const DIRECTIVES = [ d.IonFooter, d.IonGrid, d.IonHeader, - d.IonIcon, d.IonImg, d.IonInfiniteScroll, d.IonInfiniteScrollContent, diff --git a/angular/src/directives/proxies.ts b/angular/src/directives/proxies.ts index 4e009a6d681..3d729a4ba9d 100644 --- a/angular/src/directives/proxies.ts +++ b/angular/src/directives/proxies.ts @@ -3,11 +3,89 @@ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, ElementRef, EventEmitter, NgZone } from '@angular/core'; import { ProxyCmp, proxyOutputs } from './angular-component-lib/utils'; -import { Components } from '@ionic/core'; +import type { Components } from '@ionic/core/components'; + +import { IonAccordion as IonAccordionCmp } from '@ionic/core/components/ion-accordion.js'; +import { IonAccordionGroup as IonAccordionGroupCmp } from '@ionic/core/components/ion-accordion-group.js'; +import { IonApp as IonAppCmp } from '@ionic/core/components/ion-app.js'; +import { IonAvatar as IonAvatarCmp } from '@ionic/core/components/ion-avatar.js'; +import { IonBackButton as IonBackButtonCmp } from '@ionic/core/components/ion-back-button.js'; +import { IonBackdrop as IonBackdropCmp } from '@ionic/core/components/ion-backdrop.js'; +import { IonBadge as IonBadgeCmp } from '@ionic/core/components/ion-badge.js'; +import { IonBreadcrumb as IonBreadcrumbCmp } from '@ionic/core/components/ion-breadcrumb.js'; +import { IonBreadcrumbs as IonBreadcrumbsCmp } from '@ionic/core/components/ion-breadcrumbs.js'; +import { IonButton as IonButtonCmp } from '@ionic/core/components/ion-button.js'; +import { IonButtons as IonButtonsCmp } from '@ionic/core/components/ion-buttons.js'; +import { IonCard as IonCardCmp } from '@ionic/core/components/ion-card.js'; +import { IonCardContent as IonCardContentCmp } from '@ionic/core/components/ion-card-content.js'; +import { IonCardHeader as IonCardHeaderCmp } from '@ionic/core/components/ion-card-header.js'; +import { IonCardSubtitle as IonCardSubtitleCmp } from '@ionic/core/components/ion-card-subtitle.js'; +import { IonCardTitle as IonCardTitleCmp } from '@ionic/core/components/ion-card-title.js'; +import { IonCheckbox as IonCheckboxCmp } from '@ionic/core/components/ion-checkbox.js'; +import { IonChip as IonChipCmp } from '@ionic/core/components/ion-chip.js'; +import { IonCol as IonColCmp } from '@ionic/core/components/ion-col.js'; +import { IonContent as IonContentCmp } from '@ionic/core/components/ion-content.js'; +import { IonDatetime as IonDatetimeCmp } from '@ionic/core/components/ion-datetime.js'; +import { IonFab as IonFabCmp } from '@ionic/core/components/ion-fab.js'; +import { IonFabButton as IonFabButtonCmp } from '@ionic/core/components/ion-fab-button.js'; +import { IonFabList as IonFabListCmp } from '@ionic/core/components/ion-fab-list.js'; +import { IonFooter as IonFooterCmp } from '@ionic/core/components/ion-footer.js'; +import { IonGrid as IonGridCmp } from '@ionic/core/components/ion-grid.js'; +import { IonHeader as IonHeaderCmp } from '@ionic/core/components/ion-header.js'; +import { IonImg as IonImgCmp } from '@ionic/core/components/ion-img.js'; +import { IonInfiniteScroll as IonInfiniteScrollCmp } from '@ionic/core/components/ion-infinite-scroll.js'; +import { IonInfiniteScrollContent as IonInfiniteScrollContentCmp } from '@ionic/core/components/ion-infinite-scroll-content.js'; +import { IonInput as IonInputCmp } from '@ionic/core/components/ion-input.js'; +import { IonItem as IonItemCmp } from '@ionic/core/components/ion-item.js'; +import { IonItemDivider as IonItemDividerCmp } from '@ionic/core/components/ion-item-divider.js'; +import { IonItemGroup as IonItemGroupCmp } from '@ionic/core/components/ion-item-group.js'; +import { IonItemOption as IonItemOptionCmp } from '@ionic/core/components/ion-item-option.js'; +import { IonItemOptions as IonItemOptionsCmp } from '@ionic/core/components/ion-item-options.js'; +import { IonItemSliding as IonItemSlidingCmp } from '@ionic/core/components/ion-item-sliding.js'; +import { IonLabel as IonLabelCmp } from '@ionic/core/components/ion-label.js'; +import { IonList as IonListCmp } from '@ionic/core/components/ion-list.js'; +import { IonListHeader as IonListHeaderCmp } from '@ionic/core/components/ion-list-header.js'; +import { IonMenu as IonMenuCmp } from '@ionic/core/components/ion-menu.js'; +import { IonMenuButton as IonMenuButtonCmp } from '@ionic/core/components/ion-menu-button.js'; +import { IonMenuToggle as IonMenuToggleCmp } from '@ionic/core/components/ion-menu-toggle.js'; +import { IonNav as IonNavCmp } from '@ionic/core/components/ion-nav.js'; +import { IonNavLink as IonNavLinkCmp } from '@ionic/core/components/ion-nav-link.js'; +import { IonNote as IonNoteCmp } from '@ionic/core/components/ion-note.js'; +import { IonProgressBar as IonProgressBarCmp } from '@ionic/core/components/ion-progress-bar.js'; +import { IonRadio as IonRadioCmp } from '@ionic/core/components/ion-radio.js'; +import { IonRadioGroup as IonRadioGroupCmp } from '@ionic/core/components/ion-radio-group.js'; +import { IonRange as IonRangeCmp } from '@ionic/core/components/ion-range.js'; +import { IonRefresher as IonRefresherCmp } from '@ionic/core/components/ion-refresher.js'; +import { IonRefresherContent as IonRefresherContentCmp } from '@ionic/core/components/ion-refresher-content.js'; +import { IonReorder as IonReorderCmp } from '@ionic/core/components/ion-reorder.js'; +import { IonReorderGroup as IonReorderGroupCmp } from '@ionic/core/components/ion-reorder-group.js'; +import { IonRippleEffect as IonRippleEffectCmp } from '@ionic/core/components/ion-ripple-effect.js'; +import { IonRow as IonRowCmp } from '@ionic/core/components/ion-row.js'; +import { IonSearchbar as IonSearchbarCmp } from '@ionic/core/components/ion-searchbar.js'; +import { IonSegment as IonSegmentCmp } from '@ionic/core/components/ion-segment.js'; +import { IonSegmentButton as IonSegmentButtonCmp } from '@ionic/core/components/ion-segment-button.js'; +import { IonSelect as IonSelectCmp } from '@ionic/core/components/ion-select.js'; +import { IonSelectOption as IonSelectOptionCmp } from '@ionic/core/components/ion-select-option.js'; +import { IonSkeletonText as IonSkeletonTextCmp } from '@ionic/core/components/ion-skeleton-text.js'; +import { IonSlide as IonSlideCmp } from '@ionic/core/components/ion-slide.js'; +import { IonSlides as IonSlidesCmp } from '@ionic/core/components/ion-slides.js'; +import { IonSpinner as IonSpinnerCmp } from '@ionic/core/components/ion-spinner.js'; +import { IonSplitPane as IonSplitPaneCmp } from '@ionic/core/components/ion-split-pane.js'; +import { IonTabBar as IonTabBarCmp } from '@ionic/core/components/ion-tab-bar.js'; +import { IonTabButton as IonTabButtonCmp } from '@ionic/core/components/ion-tab-button.js'; +import { IonText as IonTextCmp } from '@ionic/core/components/ion-text.js'; +import { IonTextarea as IonTextareaCmp } from '@ionic/core/components/ion-textarea.js'; +import { IonThumbnail as IonThumbnailCmp } from '@ionic/core/components/ion-thumbnail.js'; +import { IonTitle as IonTitleCmp } from '@ionic/core/components/ion-title.js'; +import { IonToggle as IonToggleCmp } from '@ionic/core/components/ion-toggle.js'; +import { IonToolbar as IonToolbarCmp } from '@ionic/core/components/ion-toolbar.js'; export declare interface IonAccordion extends Components.IonAccordion {} + @ProxyCmp({ + tagName: 'ion-accordion', + customElement: IonAccordionCmp, inputs: ['disabled', 'mode', 'readonly', 'toggleIcon', 'toggleIconSlot', 'value'] }) @Component({ @@ -24,21 +102,27 @@ export class IonAccordion { } } -import { AccordionGroupChangeEventDetail as IAccordionGroupAccordionGroupChangeEventDetail } from '@ionic/core'; -export declare interface IonAccordionGroup extends Components.IonAccordionGroup {} +import type { AccordionGroupChangeEventDetail as IAccordionGroupAccordionGroupChangeEventDetail } from '@ionic/core/components'; +export declare interface IonAccordionGroup extends Components.IonAccordionGroup { + /** + * Emitted when the value property has changed. + */ + ionChange: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-accordion-group', + customElement: IonAccordionGroupCmp, inputs: ['animated', 'disabled', 'expand', 'mode', 'multiple', 'readonly', 'value'] }) @Component({ selector: 'ion-accordion-group', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['animated', 'disabled', 'expand', 'mode', 'multiple', 'readonly', 'value'], - outputs: ['ionChange'] + inputs: ['animated', 'disabled', 'expand', 'mode', 'multiple', 'readonly', 'value'] }) export class IonAccordionGroup { - /** Emitted when the value property has changed. */ - ionChange!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -50,6 +134,10 @@ export class IonAccordionGroup { export declare interface IonApp extends Components.IonApp {} +@ProxyCmp({ + tagName: 'ion-app', + customElement: IonAppCmp +}) @Component({ selector: 'ion-app', changeDetection: ChangeDetectionStrategy.OnPush, @@ -66,6 +154,10 @@ export class IonApp { export declare interface IonAvatar extends Components.IonAvatar {} +@ProxyCmp({ + tagName: 'ion-avatar', + customElement: IonAvatarCmp +}) @Component({ selector: 'ion-avatar', changeDetection: ChangeDetectionStrategy.OnPush, @@ -81,7 +173,10 @@ export class IonAvatar { export declare interface IonBackButton extends Components.IonBackButton {} + @ProxyCmp({ + tagName: 'ion-back-button', + customElement: IonBackButtonCmp, inputs: ['color', 'defaultHref', 'disabled', 'icon', 'mode', 'routerAnimation', 'text', 'type'] }) @Component({ @@ -99,20 +194,26 @@ export class IonBackButton { } -export declare interface IonBackdrop extends Components.IonBackdrop {} +export declare interface IonBackdrop extends Components.IonBackdrop { + /** + * Emitted when the backdrop is tapped. + */ + ionBackdropTap: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-backdrop', + customElement: IonBackdropCmp, inputs: ['stopPropagation', 'tappable', 'visible'] }) @Component({ selector: 'ion-backdrop', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['stopPropagation', 'tappable', 'visible'], - outputs: ['ionBackdropTap'] + inputs: ['stopPropagation', 'tappable', 'visible'] }) export class IonBackdrop { - /** Emitted when the backdrop is tapped. */ - ionBackdropTap!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -123,7 +224,10 @@ export class IonBackdrop { export declare interface IonBadge extends Components.IonBadge {} + @ProxyCmp({ + tagName: 'ion-badge', + customElement: IonBadgeCmp, inputs: ['color', 'mode'] }) @Component({ @@ -141,22 +245,30 @@ export class IonBadge { } -export declare interface IonBreadcrumb extends Components.IonBreadcrumb {} +export declare interface IonBreadcrumb extends Components.IonBreadcrumb { + /** + * Emitted when the breadcrumb has focus. + */ + ionFocus: EventEmitter>; + /** + * Emitted when the breadcrumb loses focus. + */ + ionBlur: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-breadcrumb', + customElement: IonBreadcrumbCmp, inputs: ['active', 'color', 'disabled', 'download', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'separator', 'target'] }) @Component({ selector: 'ion-breadcrumb', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['active', 'color', 'disabled', 'download', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'separator', 'target'], - outputs: ['ionFocus', 'ionBlur'] + inputs: ['active', 'color', 'disabled', 'download', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'separator', 'target'] }) export class IonBreadcrumb { - /** Emitted when the breadcrumb has focus. */ - ionFocus!: EventEmitter>; - /** Emitted when the breadcrumb loses focus. */ - ionBlur!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -165,21 +277,27 @@ export class IonBreadcrumb { } } -import { BreadcrumbCollapsedClickEventDetail as IBreadcrumbsBreadcrumbCollapsedClickEventDetail } from '@ionic/core'; -export declare interface IonBreadcrumbs extends Components.IonBreadcrumbs {} +import type { BreadcrumbCollapsedClickEventDetail as IBreadcrumbsBreadcrumbCollapsedClickEventDetail } from '@ionic/core/components'; +export declare interface IonBreadcrumbs extends Components.IonBreadcrumbs { + /** + * Emitted when the collapsed indicator is clicked on. + */ + ionCollapsedClick: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-breadcrumbs', + customElement: IonBreadcrumbsCmp, inputs: ['color', 'itemsAfterCollapse', 'itemsBeforeCollapse', 'maxItems', 'mode'] }) @Component({ selector: 'ion-breadcrumbs', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['color', 'itemsAfterCollapse', 'itemsBeforeCollapse', 'maxItems', 'mode'], - outputs: ['ionCollapsedClick'] + inputs: ['color', 'itemsAfterCollapse', 'itemsBeforeCollapse', 'maxItems', 'mode'] }) export class IonBreadcrumbs { - /** Emitted when the collapsed indicator is clicked on. */ - ionCollapsedClick!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -189,22 +307,30 @@ export class IonBreadcrumbs { } -export declare interface IonButton extends Components.IonButton {} +export declare interface IonButton extends Components.IonButton { + /** + * Emitted when the button has focus. + */ + ionFocus: EventEmitter>; + /** + * Emitted when the button loses focus. + */ + ionBlur: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-button', + customElement: IonButtonCmp, inputs: ['buttonType', 'color', 'disabled', 'download', 'expand', 'fill', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'shape', 'size', 'strong', 'target', 'type'] }) @Component({ selector: 'ion-button', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['buttonType', 'color', 'disabled', 'download', 'expand', 'fill', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'shape', 'size', 'strong', 'target', 'type'], - outputs: ['ionFocus', 'ionBlur'] + inputs: ['buttonType', 'color', 'disabled', 'download', 'expand', 'fill', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'shape', 'size', 'strong', 'target', 'type'] }) export class IonButton { - /** Emitted when the button has focus. */ - ionFocus!: EventEmitter>; - /** Emitted when the button loses focus. */ - ionBlur!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -215,7 +341,10 @@ export class IonButton { export declare interface IonButtons extends Components.IonButtons {} + @ProxyCmp({ + tagName: 'ion-buttons', + customElement: IonButtonsCmp, inputs: ['collapse'] }) @Component({ @@ -234,7 +363,10 @@ export class IonButtons { export declare interface IonCard extends Components.IonCard {} + @ProxyCmp({ + tagName: 'ion-card', + customElement: IonCardCmp, inputs: ['button', 'color', 'disabled', 'download', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'target', 'type'] }) @Component({ @@ -253,7 +385,10 @@ export class IonCard { export declare interface IonCardContent extends Components.IonCardContent {} + @ProxyCmp({ + tagName: 'ion-card-content', + customElement: IonCardContentCmp, inputs: ['mode'] }) @Component({ @@ -272,7 +407,10 @@ export class IonCardContent { export declare interface IonCardHeader extends Components.IonCardHeader {} + @ProxyCmp({ + tagName: 'ion-card-header', + customElement: IonCardHeaderCmp, inputs: ['color', 'mode', 'translucent'] }) @Component({ @@ -291,7 +429,10 @@ export class IonCardHeader { export declare interface IonCardSubtitle extends Components.IonCardSubtitle {} + @ProxyCmp({ + tagName: 'ion-card-subtitle', + customElement: IonCardSubtitleCmp, inputs: ['color', 'mode'] }) @Component({ @@ -310,7 +451,10 @@ export class IonCardSubtitle { export declare interface IonCardTitle extends Components.IonCardTitle {} + @ProxyCmp({ + tagName: 'ion-card-title', + customElement: IonCardTitleCmp, inputs: ['color', 'mode'] }) @Component({ @@ -327,25 +471,35 @@ export class IonCardTitle { } } -import { CheckboxChangeEventDetail as ICheckboxCheckboxChangeEventDetail } from '@ionic/core'; -export declare interface IonCheckbox extends Components.IonCheckbox {} +import type { CheckboxChangeEventDetail as ICheckboxCheckboxChangeEventDetail } from '@ionic/core/components'; +export declare interface IonCheckbox extends Components.IonCheckbox { + /** + * Emitted when the checked property has changed. + */ + ionChange: EventEmitter>; + /** + * Emitted when the checkbox has focus. + */ + ionFocus: EventEmitter>; + /** + * Emitted when the checkbox loses focus. + */ + ionBlur: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-checkbox', + customElement: IonCheckboxCmp, inputs: ['checked', 'color', 'disabled', 'indeterminate', 'mode', 'name', 'value'] }) @Component({ selector: 'ion-checkbox', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['checked', 'color', 'disabled', 'indeterminate', 'mode', 'name', 'value'], - outputs: ['ionChange', 'ionFocus', 'ionBlur'] + inputs: ['checked', 'color', 'disabled', 'indeterminate', 'mode', 'name', 'value'] }) export class IonCheckbox { - /** Emitted when the checked property has changed. */ - ionChange!: EventEmitter>; - /** Emitted when the checkbox has focus. */ - ionFocus!: EventEmitter>; - /** Emitted when the checkbox loses focus. */ - ionBlur!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -356,7 +510,10 @@ export class IonCheckbox { export declare interface IonChip extends Components.IonChip {} + @ProxyCmp({ + tagName: 'ion-chip', + customElement: IonChipCmp, inputs: ['color', 'disabled', 'mode', 'outline'] }) @Component({ @@ -375,7 +532,10 @@ export class IonChip { export declare interface IonCol extends Components.IonCol {} + @ProxyCmp({ + tagName: 'ion-col', + customElement: IonColCmp, inputs: ['offset', 'offsetLg', 'offsetMd', 'offsetSm', 'offsetXl', 'offsetXs', 'pull', 'pullLg', 'pullMd', 'pullSm', 'pullXl', 'pullXs', 'push', 'pushLg', 'pushMd', 'pushSm', 'pushXl', 'pushXs', 'size', 'sizeLg', 'sizeMd', 'sizeSm', 'sizeXl', 'sizeXs'] }) @Component({ @@ -392,10 +552,28 @@ export class IonCol { } } -import { ScrollBaseDetail as IContentScrollBaseDetail } from '@ionic/core'; -import { ScrollDetail as IContentScrollDetail } from '@ionic/core'; -export declare interface IonContent extends Components.IonContent {} +import type { ScrollBaseDetail as IContentScrollBaseDetail } from '@ionic/core/components'; +import type { ScrollDetail as IContentScrollDetail } from '@ionic/core/components'; +export declare interface IonContent extends Components.IonContent { + /** + * Emitted when the scroll has started. + */ + ionScrollStart: EventEmitter>; + /** + * Emitted while scrolling. This event is disabled by default. +Look at the property: `scrollEvents` + */ + ionScroll: EventEmitter>; + /** + * Emitted when the scroll has ended. + */ + ionScrollEnd: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-content', + customElement: IonContentCmp, inputs: ['color', 'forceOverscroll', 'fullscreen', 'scrollEvents', 'scrollX', 'scrollY'], methods: ['getScrollElement', 'scrollToTop', 'scrollToBottom', 'scrollByPoint', 'scrollToPoint'] }) @@ -403,17 +581,9 @@ export declare interface IonContent extends Components.IonContent {} selector: 'ion-content', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['color', 'forceOverscroll', 'fullscreen', 'scrollEvents', 'scrollX', 'scrollY'], - outputs: ['ionScrollStart', 'ionScroll', 'ionScrollEnd'] + inputs: ['color', 'forceOverscroll', 'fullscreen', 'scrollEvents', 'scrollX', 'scrollY'] }) export class IonContent { - /** Emitted when the scroll has started. */ - ionScrollStart!: EventEmitter>; - /** Emitted while scrolling. This event is disabled by default. -Look at the property: `scrollEvents` */ - ionScroll!: EventEmitter>; - /** Emitted when the scroll has ended. */ - ionScrollEnd!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -422,9 +592,30 @@ Look at the property: `scrollEvents` */ } } -import { DatetimeChangeEventDetail as IDatetimeDatetimeChangeEventDetail } from '@ionic/core'; -export declare interface IonDatetime extends Components.IonDatetime {} +import type { DatetimeChangeEventDetail as IDatetimeDatetimeChangeEventDetail } from '@ionic/core/components'; +export declare interface IonDatetime extends Components.IonDatetime { + /** + * Emitted when the datetime selection was cancelled. + */ + ionCancel: EventEmitter>; + /** + * Emitted when the value (selected date) has changed. + */ + ionChange: EventEmitter>; + /** + * Emitted when the datetime has focus. + */ + ionFocus: EventEmitter>; + /** + * Emitted when the datetime loses focus. + */ + ionBlur: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-datetime', + customElement: IonDatetimeCmp, inputs: ['cancelText', 'clearText', 'color', 'dayValues', 'disabled', 'doneText', 'firstDayOfWeek', 'hourCycle', 'hourValues', 'locale', 'max', 'min', 'minuteValues', 'mode', 'monthValues', 'name', 'presentation', 'readonly', 'showClearButton', 'showDefaultButtons', 'showDefaultTimeLabel', 'showDefaultTitle', 'size', 'value', 'yearValues'], methods: ['confirm', 'reset', 'cancel'] }) @@ -432,18 +623,9 @@ export declare interface IonDatetime extends Components.IonDatetime {} selector: 'ion-datetime', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['cancelText', 'clearText', 'color', 'dayValues', 'disabled', 'doneText', 'firstDayOfWeek', 'hourCycle', 'hourValues', 'locale', 'max', 'min', 'minuteValues', 'mode', 'monthValues', 'name', 'presentation', 'readonly', 'showClearButton', 'showDefaultButtons', 'showDefaultTimeLabel', 'showDefaultTitle', 'size', 'value', 'yearValues'], - outputs: ['ionCancel', 'ionChange', 'ionFocus', 'ionBlur'] + inputs: ['cancelText', 'clearText', 'color', 'dayValues', 'disabled', 'doneText', 'firstDayOfWeek', 'hourCycle', 'hourValues', 'locale', 'max', 'min', 'minuteValues', 'mode', 'monthValues', 'name', 'presentation', 'readonly', 'showClearButton', 'showDefaultButtons', 'showDefaultTimeLabel', 'showDefaultTitle', 'size', 'value', 'yearValues'] }) export class IonDatetime { - /** Emitted when the datetime selection was cancelled. */ - ionCancel!: EventEmitter>; - /** Emitted when the value (selected date) has changed. */ - ionChange!: EventEmitter>; - /** Emitted when the datetime has focus. */ - ionFocus!: EventEmitter>; - /** Emitted when the datetime loses focus. */ - ionBlur!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -454,7 +636,10 @@ export class IonDatetime { export declare interface IonFab extends Components.IonFab {} + @ProxyCmp({ + tagName: 'ion-fab', + customElement: IonFabCmp, inputs: ['activated', 'edge', 'horizontal', 'vertical'], methods: ['close'] }) @@ -473,22 +658,30 @@ export class IonFab { } -export declare interface IonFabButton extends Components.IonFabButton {} +export declare interface IonFabButton extends Components.IonFabButton { + /** + * Emitted when the button has focus. + */ + ionFocus: EventEmitter>; + /** + * Emitted when the button loses focus. + */ + ionBlur: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-fab-button', + customElement: IonFabButtonCmp, inputs: ['activated', 'closeIcon', 'color', 'disabled', 'download', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'show', 'size', 'target', 'translucent', 'type'] }) @Component({ selector: 'ion-fab-button', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['activated', 'closeIcon', 'color', 'disabled', 'download', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'show', 'size', 'target', 'translucent', 'type'], - outputs: ['ionFocus', 'ionBlur'] + inputs: ['activated', 'closeIcon', 'color', 'disabled', 'download', 'href', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'show', 'size', 'target', 'translucent', 'type'] }) export class IonFabButton { - /** Emitted when the button has focus. */ - ionFocus!: EventEmitter>; - /** Emitted when the button loses focus. */ - ionBlur!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -499,7 +692,10 @@ export class IonFabButton { export declare interface IonFabList extends Components.IonFabList {} + @ProxyCmp({ + tagName: 'ion-fab-list', + customElement: IonFabListCmp, inputs: ['activated', 'side'] }) @Component({ @@ -518,7 +714,10 @@ export class IonFabList { export declare interface IonFooter extends Components.IonFooter {} + @ProxyCmp({ + tagName: 'ion-footer', + customElement: IonFooterCmp, inputs: ['collapse', 'mode', 'translucent'] }) @Component({ @@ -537,7 +736,10 @@ export class IonFooter { export declare interface IonGrid extends Components.IonGrid {} + @ProxyCmp({ + tagName: 'ion-grid', + customElement: IonGridCmp, inputs: ['fixed'] }) @Component({ @@ -556,7 +758,10 @@ export class IonGrid { export declare interface IonHeader extends Components.IonHeader {} + @ProxyCmp({ + tagName: 'ion-header', + customElement: IonHeaderCmp, inputs: ['collapse', 'mode', 'translucent'] }) @Component({ @@ -574,43 +779,34 @@ export class IonHeader { } -export declare interface IonIcon extends Components.IonIcon {} -@ProxyCmp({ - inputs: ['color', 'flipRtl', 'icon', 'ios', 'lazy', 'md', 'mode', 'name', 'sanitize', 'size', 'src'] -}) -@Component({ - selector: 'ion-icon', - changeDetection: ChangeDetectionStrategy.OnPush, - template: '', - inputs: ['color', 'flipRtl', 'icon', 'ios', 'lazy', 'md', 'mode', 'name', 'sanitize', 'size', 'src'] -}) -export class IonIcon { - protected el: HTMLElement; - constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { - c.detach(); - this.el = r.nativeElement; - } -} +export declare interface IonImg extends Components.IonImg { + /** + * Emitted when the img src has been set + */ + ionImgWillLoad: EventEmitter>; + /** + * Emitted when the image has finished loading + */ + ionImgDidLoad: EventEmitter>; + /** + * Emitted when the img fails to load + */ + ionError: EventEmitter>; +} -export declare interface IonImg extends Components.IonImg {} @ProxyCmp({ + tagName: 'ion-img', + customElement: IonImgCmp, inputs: ['alt', 'src'] }) @Component({ selector: 'ion-img', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['alt', 'src'], - outputs: ['ionImgWillLoad', 'ionImgDidLoad', 'ionError'] + inputs: ['alt', 'src'] }) export class IonImg { - /** Emitted when the img src has been set */ - ionImgWillLoad!: EventEmitter>; - /** Emitted when the image has finished loading */ - ionImgDidLoad!: EventEmitter>; - /** Emitted when the img fails to load */ - ionError!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -620,8 +816,20 @@ export class IonImg { } -export declare interface IonInfiniteScroll extends Components.IonInfiniteScroll {} +export declare interface IonInfiniteScroll extends Components.IonInfiniteScroll { + /** + * Emitted when the scroll reaches +the threshold distance. From within your infinite handler, +you must call the infinite scroll's `complete()` method when +your async operation has completed. + */ + ionInfinite: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-infinite-scroll', + customElement: IonInfiniteScrollCmp, inputs: ['disabled', 'position', 'threshold'], methods: ['complete'] }) @@ -629,15 +837,9 @@ export declare interface IonInfiniteScroll extends Components.IonInfiniteScroll selector: 'ion-infinite-scroll', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['disabled', 'position', 'threshold'], - outputs: ['ionInfinite'] + inputs: ['disabled', 'position', 'threshold'] }) export class IonInfiniteScroll { - /** Emitted when the scroll reaches -the threshold distance. From within your infinite handler, -you must call the infinite scroll's `complete()` method when -your async operation has completed. */ - ionInfinite!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -648,7 +850,10 @@ your async operation has completed. */ export declare interface IonInfiniteScrollContent extends Components.IonInfiniteScrollContent {} + @ProxyCmp({ + tagName: 'ion-infinite-scroll-content', + customElement: IonInfiniteScrollContentCmp, inputs: ['loadingSpinner', 'loadingText'] }) @Component({ @@ -665,9 +870,30 @@ export class IonInfiniteScrollContent { } } -import { InputChangeEventDetail as IInputInputChangeEventDetail } from '@ionic/core'; -export declare interface IonInput extends Components.IonInput {} +import type { InputChangeEventDetail as IInputInputChangeEventDetail } from '@ionic/core/components'; +export declare interface IonInput extends Components.IonInput { + /** + * Emitted when a keyboard input occurred. + */ + ionInput: EventEmitter>; + /** + * Emitted when the value has changed. + */ + ionChange: EventEmitter>; + /** + * Emitted when the input loses focus. + */ + ionBlur: EventEmitter>; + /** + * Emitted when the input has focus. + */ + ionFocus: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-input', + customElement: IonInputCmp, inputs: ['accept', 'autocapitalize', 'autocomplete', 'autocorrect', 'autofocus', 'clearInput', 'clearOnEdit', 'color', 'debounce', 'disabled', 'enterkeyhint', 'inputmode', 'max', 'maxlength', 'min', 'minlength', 'mode', 'multiple', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'size', 'spellcheck', 'step', 'type', 'value'], methods: ['setFocus', 'getInputElement'] }) @@ -675,18 +901,9 @@ export declare interface IonInput extends Components.IonInput {} selector: 'ion-input', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['accept', 'autocapitalize', 'autocomplete', 'autocorrect', 'autofocus', 'clearInput', 'clearOnEdit', 'color', 'debounce', 'disabled', 'enterkeyhint', 'inputmode', 'max', 'maxlength', 'min', 'minlength', 'mode', 'multiple', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'size', 'spellcheck', 'step', 'type', 'value'], - outputs: ['ionInput', 'ionChange', 'ionBlur', 'ionFocus'] + inputs: ['accept', 'autocapitalize', 'autocomplete', 'autocorrect', 'autofocus', 'clearInput', 'clearOnEdit', 'color', 'debounce', 'disabled', 'enterkeyhint', 'inputmode', 'max', 'maxlength', 'min', 'minlength', 'mode', 'multiple', 'name', 'pattern', 'placeholder', 'readonly', 'required', 'size', 'spellcheck', 'step', 'type', 'value'] }) export class IonInput { - /** Emitted when a keyboard input occurred. */ - ionInput!: EventEmitter>; - /** Emitted when the value has changed. */ - ionChange!: EventEmitter>; - /** Emitted when the input loses focus. */ - ionBlur!: EventEmitter>; - /** Emitted when the input has focus. */ - ionFocus!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -697,7 +914,10 @@ export class IonInput { export declare interface IonItem extends Components.IonItem {} + @ProxyCmp({ + tagName: 'ion-item', + customElement: IonItemCmp, inputs: ['button', 'color', 'counter', 'detail', 'detailIcon', 'disabled', 'download', 'fill', 'href', 'lines', 'mode', 'rel', 'routerAnimation', 'routerDirection', 'shape', 'target', 'type'] }) @Component({ @@ -716,7 +936,10 @@ export class IonItem { export declare interface IonItemDivider extends Components.IonItemDivider {} + @ProxyCmp({ + tagName: 'ion-item-divider', + customElement: IonItemDividerCmp, inputs: ['color', 'mode', 'sticky'] }) @Component({ @@ -736,6 +959,10 @@ export class IonItemDivider { export declare interface IonItemGroup extends Components.IonItemGroup {} +@ProxyCmp({ + tagName: 'ion-item-group', + customElement: IonItemGroupCmp +}) @Component({ selector: 'ion-item-group', changeDetection: ChangeDetectionStrategy.OnPush, @@ -751,7 +978,10 @@ export class IonItemGroup { export declare interface IonItemOption extends Components.IonItemOption {} + @ProxyCmp({ + tagName: 'ion-item-option', + customElement: IonItemOptionCmp, inputs: ['color', 'disabled', 'download', 'expandable', 'href', 'mode', 'rel', 'target', 'type'] }) @Component({ @@ -769,20 +999,26 @@ export class IonItemOption { } -export declare interface IonItemOptions extends Components.IonItemOptions {} +export declare interface IonItemOptions extends Components.IonItemOptions { + /** + * Emitted when the item has been fully swiped. + */ + ionSwipe: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-item-options', + customElement: IonItemOptionsCmp, inputs: ['side'] }) @Component({ selector: 'ion-item-options', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['side'], - outputs: ['ionSwipe'] + inputs: ['side'] }) export class IonItemOptions { - /** Emitted when the item has been fully swiped. */ - ionSwipe!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -792,8 +1028,17 @@ export class IonItemOptions { } -export declare interface IonItemSliding extends Components.IonItemSliding {} +export declare interface IonItemSliding extends Components.IonItemSliding { + /** + * Emitted when the sliding position changes. + */ + ionDrag: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-item-sliding', + customElement: IonItemSlidingCmp, inputs: ['disabled'], methods: ['getOpenAmount', 'getSlidingRatio', 'open', 'close', 'closeOpened'] }) @@ -801,12 +1046,9 @@ export declare interface IonItemSliding extends Components.IonItemSliding {} selector: 'ion-item-sliding', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['disabled'], - outputs: ['ionDrag'] + inputs: ['disabled'] }) export class IonItemSliding { - /** Emitted when the sliding position changes. */ - ionDrag!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -817,7 +1059,10 @@ export class IonItemSliding { export declare interface IonLabel extends Components.IonLabel {} + @ProxyCmp({ + tagName: 'ion-label', + customElement: IonLabelCmp, inputs: ['color', 'mode', 'position'] }) @Component({ @@ -836,7 +1081,10 @@ export class IonLabel { export declare interface IonList extends Components.IonList {} + @ProxyCmp({ + tagName: 'ion-list', + customElement: IonListCmp, inputs: ['inset', 'lines', 'mode'], methods: ['closeSlidingItems'] }) @@ -856,7 +1104,10 @@ export class IonList { export declare interface IonListHeader extends Components.IonListHeader {} + @ProxyCmp({ + tagName: 'ion-list-header', + customElement: IonListHeaderCmp, inputs: ['color', 'lines', 'mode'] }) @Component({ @@ -874,8 +1125,29 @@ export class IonListHeader { } -export declare interface IonMenu extends Components.IonMenu {} +export declare interface IonMenu extends Components.IonMenu { + /** + * Emitted when the menu is about to be opened. + */ + ionWillOpen: EventEmitter>; + /** + * Emitted when the menu is about to be closed. + */ + ionWillClose: EventEmitter>; + /** + * Emitted when the menu is open. + */ + ionDidOpen: EventEmitter>; + /** + * Emitted when the menu is closed. + */ + ionDidClose: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-menu', + customElement: IonMenuCmp, inputs: ['contentId', 'disabled', 'maxEdgeStart', 'menuId', 'side', 'swipeGesture', 'type'], methods: ['isOpen', 'isActive', 'open', 'close', 'toggle', 'setOpen'] }) @@ -883,18 +1155,9 @@ export declare interface IonMenu extends Components.IonMenu {} selector: 'ion-menu', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['contentId', 'disabled', 'maxEdgeStart', 'menuId', 'side', 'swipeGesture', 'type'], - outputs: ['ionWillOpen', 'ionWillClose', 'ionDidOpen', 'ionDidClose'] + inputs: ['contentId', 'disabled', 'maxEdgeStart', 'menuId', 'side', 'swipeGesture', 'type'] }) export class IonMenu { - /** Emitted when the menu is about to be opened. */ - ionWillOpen!: EventEmitter>; - /** Emitted when the menu is about to be closed. */ - ionWillClose!: EventEmitter>; - /** Emitted when the menu is open. */ - ionDidOpen!: EventEmitter>; - /** Emitted when the menu is closed. */ - ionDidClose!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -905,7 +1168,10 @@ export class IonMenu { export declare interface IonMenuButton extends Components.IonMenuButton {} + @ProxyCmp({ + tagName: 'ion-menu-button', + customElement: IonMenuButtonCmp, inputs: ['autoHide', 'color', 'disabled', 'menu', 'mode', 'type'] }) @Component({ @@ -924,7 +1190,10 @@ export class IonMenuButton { export declare interface IonMenuToggle extends Components.IonMenuToggle {} + @ProxyCmp({ + tagName: 'ion-menu-toggle', + customElement: IonMenuToggleCmp, inputs: ['autoHide', 'menu'] }) @Component({ @@ -942,8 +1211,21 @@ export class IonMenuToggle { } -export declare interface IonNav extends Components.IonNav {} +export declare interface IonNav extends Components.IonNav { + /** + * Event fired when the nav will change components + */ + ionNavWillChange: EventEmitter>; + /** + * Event fired when the nav has changed components + */ + ionNavDidChange: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-nav', + customElement: IonNavCmp, inputs: ['animated', 'animation', 'root', 'rootParams', 'swipeGesture'], methods: ['push', 'insert', 'insertPages', 'pop', 'popTo', 'popToRoot', 'removeIndex', 'setRoot', 'setPages', 'getActive', 'getByIndex', 'canGoBack', 'getPrevious'] }) @@ -951,14 +1233,9 @@ export declare interface IonNav extends Components.IonNav {} selector: 'ion-nav', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['animated', 'animation', 'root', 'rootParams', 'swipeGesture'], - outputs: ['ionNavWillChange', 'ionNavDidChange'] + inputs: ['animated', 'animation', 'root', 'rootParams', 'swipeGesture'] }) export class IonNav { - /** Event fired when the nav will change components */ - ionNavWillChange!: EventEmitter>; - /** Event fired when the nav has changed components */ - ionNavDidChange!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -969,7 +1246,10 @@ export class IonNav { export declare interface IonNavLink extends Components.IonNavLink {} + @ProxyCmp({ + tagName: 'ion-nav-link', + customElement: IonNavLinkCmp, inputs: ['component', 'componentProps', 'routerAnimation', 'routerDirection'] }) @Component({ @@ -988,7 +1268,10 @@ export class IonNavLink { export declare interface IonNote extends Components.IonNote {} + @ProxyCmp({ + tagName: 'ion-note', + customElement: IonNoteCmp, inputs: ['color', 'mode'] }) @Component({ @@ -1007,7 +1290,10 @@ export class IonNote { export declare interface IonProgressBar extends Components.IonProgressBar {} + @ProxyCmp({ + tagName: 'ion-progress-bar', + customElement: IonProgressBarCmp, inputs: ['buffer', 'color', 'mode', 'reversed', 'type', 'value'] }) @Component({ @@ -1025,22 +1311,30 @@ export class IonProgressBar { } -export declare interface IonRadio extends Components.IonRadio {} +export declare interface IonRadio extends Components.IonRadio { + /** + * Emitted when the radio button has focus. + */ + ionFocus: EventEmitter>; + /** + * Emitted when the radio button loses focus. + */ + ionBlur: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-radio', + customElement: IonRadioCmp, inputs: ['color', 'disabled', 'mode', 'name', 'value'] }) @Component({ selector: 'ion-radio', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['color', 'disabled', 'mode', 'name', 'value'], - outputs: ['ionFocus', 'ionBlur'] + inputs: ['color', 'disabled', 'mode', 'name', 'value'] }) export class IonRadio { - /** Emitted when the radio button has focus. */ - ionFocus!: EventEmitter>; - /** Emitted when the radio button loses focus. */ - ionBlur!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -1049,21 +1343,27 @@ export class IonRadio { } } -import { RadioGroupChangeEventDetail as IRadioGroupRadioGroupChangeEventDetail } from '@ionic/core'; -export declare interface IonRadioGroup extends Components.IonRadioGroup {} +import type { RadioGroupChangeEventDetail as IRadioGroupRadioGroupChangeEventDetail } from '@ionic/core/components'; +export declare interface IonRadioGroup extends Components.IonRadioGroup { + /** + * Emitted when the value has changed. + */ + ionChange: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-radio-group', + customElement: IonRadioGroupCmp, inputs: ['allowEmptySelection', 'name', 'value'] }) @Component({ selector: 'ion-radio-group', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['allowEmptySelection', 'name', 'value'], - outputs: ['ionChange'] + inputs: ['allowEmptySelection', 'name', 'value'] }) export class IonRadioGroup { - /** Emitted when the value has changed. */ - ionChange!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -1072,25 +1372,35 @@ export class IonRadioGroup { } } -import { RangeChangeEventDetail as IRangeRangeChangeEventDetail } from '@ionic/core'; -export declare interface IonRange extends Components.IonRange {} +import type { RangeChangeEventDetail as IRangeRangeChangeEventDetail } from '@ionic/core/components'; +export declare interface IonRange extends Components.IonRange { + /** + * Emitted when the value property has changed. + */ + ionChange: EventEmitter>; + /** + * Emitted when the range has focus. + */ + ionFocus: EventEmitter>; + /** + * Emitted when the range loses focus. + */ + ionBlur: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-range', + customElement: IonRangeCmp, inputs: ['color', 'debounce', 'disabled', 'dualKnobs', 'max', 'min', 'mode', 'name', 'pin', 'pinFormatter', 'snaps', 'step', 'ticks', 'value'] }) @Component({ selector: 'ion-range', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['color', 'debounce', 'disabled', 'dualKnobs', 'max', 'min', 'mode', 'name', 'pin', 'pinFormatter', 'snaps', 'step', 'ticks', 'value'], - outputs: ['ionChange', 'ionFocus', 'ionBlur'] + inputs: ['color', 'debounce', 'disabled', 'dualKnobs', 'max', 'min', 'mode', 'name', 'pin', 'pinFormatter', 'snaps', 'step', 'ticks', 'value'] }) export class IonRange { - /** Emitted when the value property has changed. */ - ionChange!: EventEmitter>; - /** Emitted when the range has focus. */ - ionFocus!: EventEmitter>; - /** Emitted when the range loses focus. */ - ionBlur!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -1099,9 +1409,29 @@ export class IonRange { } } -import { RefresherEventDetail as IRefresherRefresherEventDetail } from '@ionic/core'; -export declare interface IonRefresher extends Components.IonRefresher {} +import type { RefresherEventDetail as IRefresherRefresherEventDetail } from '@ionic/core/components'; +export declare interface IonRefresher extends Components.IonRefresher { + /** + * Emitted when the user lets go of the content and has pulled down +further than the `pullMin` or pulls the content down and exceeds the pullMax. +Updates the refresher state to `refreshing`. The `complete()` method should be +called when the async operation has completed. + */ + ionRefresh: EventEmitter>; + /** + * Emitted while the user is pulling down the content and exposing the refresher. + */ + ionPull: EventEmitter>; + /** + * Emitted when the user begins to start pulling down. + */ + ionStart: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-refresher', + customElement: IonRefresherCmp, inputs: ['closeDuration', 'disabled', 'pullFactor', 'pullMax', 'pullMin', 'snapbackDuration'], methods: ['complete', 'cancel', 'getProgress'] }) @@ -1109,19 +1439,9 @@ export declare interface IonRefresher extends Components.IonRefresher {} selector: 'ion-refresher', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['closeDuration', 'disabled', 'pullFactor', 'pullMax', 'pullMin', 'snapbackDuration'], - outputs: ['ionRefresh', 'ionPull', 'ionStart'] + inputs: ['closeDuration', 'disabled', 'pullFactor', 'pullMax', 'pullMin', 'snapbackDuration'] }) export class IonRefresher { - /** Emitted when the user lets go of the content and has pulled down -further than the `pullMin` or pulls the content down and exceeds the pullMax. -Updates the refresher state to `refreshing`. The `complete()` method should be -called when the async operation has completed. */ - ionRefresh!: EventEmitter>; - /** Emitted while the user is pulling down the content and exposing the refresher. */ - ionPull!: EventEmitter>; - /** Emitted when the user begins to start pulling down. */ - ionStart!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -1132,7 +1452,10 @@ called when the async operation has completed. */ export declare interface IonRefresherContent extends Components.IonRefresherContent {} + @ProxyCmp({ + tagName: 'ion-refresher-content', + customElement: IonRefresherContentCmp, inputs: ['pullingIcon', 'pullingText', 'refreshingSpinner', 'refreshingText'] }) @Component({ @@ -1152,6 +1475,10 @@ export class IonRefresherContent { export declare interface IonReorder extends Components.IonReorder {} +@ProxyCmp({ + tagName: 'ion-reorder', + customElement: IonReorderCmp +}) @Component({ selector: 'ion-reorder', changeDetection: ChangeDetectionStrategy.OnPush, @@ -1165,9 +1492,20 @@ export class IonReorder { } } -import { ItemReorderEventDetail as IReorderGroupItemReorderEventDetail } from '@ionic/core'; -export declare interface IonReorderGroup extends Components.IonReorderGroup {} +import type { ItemReorderEventDetail as IReorderGroupItemReorderEventDetail } from '@ionic/core/components'; +export declare interface IonReorderGroup extends Components.IonReorderGroup { + /** + * Event that needs to be listened to in order to complete the reorder action. +Once the event has been emitted, the `complete()` method then needs +to be called in order to finalize the reorder action. + */ + ionItemReorder: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-reorder-group', + customElement: IonReorderGroupCmp, inputs: ['disabled'], methods: ['complete'] }) @@ -1175,14 +1513,9 @@ export declare interface IonReorderGroup extends Components.IonReorderGroup {} selector: 'ion-reorder-group', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['disabled'], - outputs: ['ionItemReorder'] + inputs: ['disabled'] }) export class IonReorderGroup { - /** Event that needs to be listened to in order to complete the reorder action. -Once the event has been emitted, the `complete()` method then needs -to be called in order to finalize the reorder action. */ - ionItemReorder!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -1193,7 +1526,10 @@ to be called in order to finalize the reorder action. */ export declare interface IonRippleEffect extends Components.IonRippleEffect {} + @ProxyCmp({ + tagName: 'ion-ripple-effect', + customElement: IonRippleEffectCmp, inputs: ['type'], methods: ['addRipple'] }) @@ -1214,6 +1550,10 @@ export class IonRippleEffect { export declare interface IonRow extends Components.IonRow {} +@ProxyCmp({ + tagName: 'ion-row', + customElement: IonRowCmp +}) @Component({ selector: 'ion-row', changeDetection: ChangeDetectionStrategy.OnPush, @@ -1227,9 +1567,38 @@ export class IonRow { } } -import { SearchbarChangeEventDetail as ISearchbarSearchbarChangeEventDetail } from '@ionic/core'; -export declare interface IonSearchbar extends Components.IonSearchbar {} +import type { SearchbarChangeEventDetail as ISearchbarSearchbarChangeEventDetail } from '@ionic/core/components'; +export declare interface IonSearchbar extends Components.IonSearchbar { + /** + * Emitted when a keyboard input occurred. + */ + ionInput: EventEmitter>; + /** + * Emitted when the value has changed. + */ + ionChange: EventEmitter>; + /** + * Emitted when the cancel button is clicked. + */ + ionCancel: EventEmitter>; + /** + * Emitted when the clear input button is clicked. + */ + ionClear: EventEmitter>; + /** + * Emitted when the input loses focus. + */ + ionBlur: EventEmitter>; + /** + * Emitted when the input has focus. + */ + ionFocus: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-searchbar', + customElement: IonSearchbarCmp, inputs: ['animated', 'autocomplete', 'autocorrect', 'cancelButtonIcon', 'cancelButtonText', 'clearIcon', 'color', 'debounce', 'disabled', 'enterkeyhint', 'inputmode', 'mode', 'placeholder', 'searchIcon', 'showCancelButton', 'showClearButton', 'spellcheck', 'type', 'value'], methods: ['setFocus', 'getInputElement'] }) @@ -1237,22 +1606,9 @@ export declare interface IonSearchbar extends Components.IonSearchbar {} selector: 'ion-searchbar', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['animated', 'autocomplete', 'autocorrect', 'cancelButtonIcon', 'cancelButtonText', 'clearIcon', 'color', 'debounce', 'disabled', 'enterkeyhint', 'inputmode', 'mode', 'placeholder', 'searchIcon', 'showCancelButton', 'showClearButton', 'spellcheck', 'type', 'value'], - outputs: ['ionInput', 'ionChange', 'ionCancel', 'ionClear', 'ionBlur', 'ionFocus'] + inputs: ['animated', 'autocomplete', 'autocorrect', 'cancelButtonIcon', 'cancelButtonText', 'clearIcon', 'color', 'debounce', 'disabled', 'enterkeyhint', 'inputmode', 'mode', 'placeholder', 'searchIcon', 'showCancelButton', 'showClearButton', 'spellcheck', 'type', 'value'] }) export class IonSearchbar { - /** Emitted when a keyboard input occurred. */ - ionInput!: EventEmitter>; - /** Emitted when the value has changed. */ - ionChange!: EventEmitter>; - /** Emitted when the cancel button is clicked. */ - ionCancel!: EventEmitter>; - /** Emitted when the clear input button is clicked. */ - ionClear!: EventEmitter>; - /** Emitted when the input loses focus. */ - ionBlur!: EventEmitter>; - /** Emitted when the input has focus. */ - ionFocus!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -1261,22 +1617,28 @@ export class IonSearchbar { } } -import { SegmentChangeEventDetail as ISegmentSegmentChangeEventDetail } from '@ionic/core'; -export declare interface IonSegment extends Components.IonSegment {} +import type { SegmentChangeEventDetail as ISegmentSegmentChangeEventDetail } from '@ionic/core/components'; +export declare interface IonSegment extends Components.IonSegment { + /** + * Emitted when the value property has changed and any +dragging pointer has been released from `ion-segment`. + */ + ionChange: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-segment', + customElement: IonSegmentCmp, inputs: ['color', 'disabled', 'mode', 'scrollable', 'selectOnFocus', 'swipeGesture', 'value'] }) @Component({ selector: 'ion-segment', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['color', 'disabled', 'mode', 'scrollable', 'selectOnFocus', 'swipeGesture', 'value'], - outputs: ['ionChange'] + inputs: ['color', 'disabled', 'mode', 'scrollable', 'selectOnFocus', 'swipeGesture', 'value'] }) export class IonSegment { - /** Emitted when the value property has changed and any -dragging pointer has been released from `ion-segment`. */ - ionChange!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -1287,7 +1649,10 @@ dragging pointer has been released from `ion-segment`. */ export declare interface IonSegmentButton extends Components.IonSegmentButton {} + @ProxyCmp({ + tagName: 'ion-segment-button', + customElement: IonSegmentButtonCmp, inputs: ['disabled', 'layout', 'mode', 'type', 'value'] }) @Component({ @@ -1304,9 +1669,30 @@ export class IonSegmentButton { } } -import { SelectChangeEventDetail as ISelectSelectChangeEventDetail } from '@ionic/core'; -export declare interface IonSelect extends Components.IonSelect {} +import type { SelectChangeEventDetail as ISelectSelectChangeEventDetail } from '@ionic/core/components'; +export declare interface IonSelect extends Components.IonSelect { + /** + * Emitted when the value has changed. + */ + ionChange: EventEmitter>; + /** + * Emitted when the selection is cancelled. + */ + ionCancel: EventEmitter>; + /** + * Emitted when the select has focus. + */ + ionFocus: EventEmitter>; + /** + * Emitted when the select loses focus. + */ + ionBlur: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-select', + customElement: IonSelectCmp, inputs: ['cancelText', 'compareWith', 'disabled', 'interface', 'interfaceOptions', 'mode', 'multiple', 'name', 'okText', 'placeholder', 'selectedText', 'value'], methods: ['open'] }) @@ -1314,18 +1700,9 @@ export declare interface IonSelect extends Components.IonSelect {} selector: 'ion-select', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['cancelText', 'compareWith', 'disabled', 'interface', 'interfaceOptions', 'mode', 'multiple', 'name', 'okText', 'placeholder', 'selectedText', 'value'], - outputs: ['ionChange', 'ionCancel', 'ionFocus', 'ionBlur'] + inputs: ['cancelText', 'compareWith', 'disabled', 'interface', 'interfaceOptions', 'mode', 'multiple', 'name', 'okText', 'placeholder', 'selectedText', 'value'] }) export class IonSelect { - /** Emitted when the value has changed. */ - ionChange!: EventEmitter>; - /** Emitted when the selection is cancelled. */ - ionCancel!: EventEmitter>; - /** Emitted when the select has focus. */ - ionFocus!: EventEmitter>; - /** Emitted when the select loses focus. */ - ionBlur!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -1336,7 +1713,10 @@ export class IonSelect { export declare interface IonSelectOption extends Components.IonSelectOption {} + @ProxyCmp({ + tagName: 'ion-select-option', + customElement: IonSelectOptionCmp, inputs: ['disabled', 'value'] }) @Component({ @@ -1355,7 +1735,10 @@ export class IonSelectOption { export declare interface IonSkeletonText extends Components.IonSkeletonText {} + @ProxyCmp({ + tagName: 'ion-skeleton-text', + customElement: IonSkeletonTextCmp, inputs: ['animated'] }) @Component({ @@ -1375,6 +1758,10 @@ export class IonSkeletonText { export declare interface IonSlide extends Components.IonSlide {} +@ProxyCmp({ + tagName: 'ion-slide', + customElement: IonSlideCmp +}) @Component({ selector: 'ion-slide', changeDetection: ChangeDetectionStrategy.OnPush, @@ -1389,8 +1776,77 @@ export class IonSlide { } -export declare interface IonSlides extends Components.IonSlides {} -@ProxyCmp({ +export declare interface IonSlides extends Components.IonSlides { + /** + * Emitted after Swiper initialization + */ + ionSlidesDidLoad: EventEmitter>; + /** + * Emitted when the user taps/clicks on the slide's container. + */ + ionSlideTap: EventEmitter>; + /** + * Emitted when the user double taps on the slide's container. + */ + ionSlideDoubleTap: EventEmitter>; + /** + * Emitted before the active slide has changed. + */ + ionSlideWillChange: EventEmitter>; + /** + * Emitted after the active slide has changed. + */ + ionSlideDidChange: EventEmitter>; + /** + * Emitted when the next slide has started. + */ + ionSlideNextStart: EventEmitter>; + /** + * Emitted when the previous slide has started. + */ + ionSlidePrevStart: EventEmitter>; + /** + * Emitted when the next slide has ended. + */ + ionSlideNextEnd: EventEmitter>; + /** + * Emitted when the previous slide has ended. + */ + ionSlidePrevEnd: EventEmitter>; + /** + * Emitted when the slide transition has started. + */ + ionSlideTransitionStart: EventEmitter>; + /** + * Emitted when the slide transition has ended. + */ + ionSlideTransitionEnd: EventEmitter>; + /** + * Emitted when the slider is actively being moved. + */ + ionSlideDrag: EventEmitter>; + /** + * Emitted when the slider is at its initial position. + */ + ionSlideReachStart: EventEmitter>; + /** + * Emitted when the slider is at the last slide. + */ + ionSlideReachEnd: EventEmitter>; + /** + * Emitted when the user first touches the slider. + */ + ionSlideTouchStart: EventEmitter>; + /** + * Emitted when the user releases the touch. + */ + ionSlideTouchEnd: EventEmitter>; + +} + +@ProxyCmp({ + tagName: 'ion-slides', + customElement: IonSlidesCmp, inputs: ['mode', 'options', 'pager', 'scrollbar'], methods: ['update', 'updateAutoHeight', 'slideTo', 'slideNext', 'slidePrev', 'getActiveIndex', 'getPreviousIndex', 'length', 'isEnd', 'isBeginning', 'startAutoplay', 'stopAutoplay', 'lockSwipeToNext', 'lockSwipeToPrev', 'lockSwipes', 'getSwiper'] }) @@ -1398,42 +1854,9 @@ export declare interface IonSlides extends Components.IonSlides {} selector: 'ion-slides', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['mode', 'options', 'pager', 'scrollbar'], - outputs: ['ionSlidesDidLoad', 'ionSlideTap', 'ionSlideDoubleTap', 'ionSlideWillChange', 'ionSlideDidChange', 'ionSlideNextStart', 'ionSlidePrevStart', 'ionSlideNextEnd', 'ionSlidePrevEnd', 'ionSlideTransitionStart', 'ionSlideTransitionEnd', 'ionSlideDrag', 'ionSlideReachStart', 'ionSlideReachEnd', 'ionSlideTouchStart', 'ionSlideTouchEnd'] + inputs: ['mode', 'options', 'pager', 'scrollbar'] }) export class IonSlides { - /** Emitted after Swiper initialization */ - ionSlidesDidLoad!: EventEmitter>; - /** Emitted when the user taps/clicks on the slide's container. */ - ionSlideTap!: EventEmitter>; - /** Emitted when the user double taps on the slide's container. */ - ionSlideDoubleTap!: EventEmitter>; - /** Emitted before the active slide has changed. */ - ionSlideWillChange!: EventEmitter>; - /** Emitted after the active slide has changed. */ - ionSlideDidChange!: EventEmitter>; - /** Emitted when the next slide has started. */ - ionSlideNextStart!: EventEmitter>; - /** Emitted when the previous slide has started. */ - ionSlidePrevStart!: EventEmitter>; - /** Emitted when the next slide has ended. */ - ionSlideNextEnd!: EventEmitter>; - /** Emitted when the previous slide has ended. */ - ionSlidePrevEnd!: EventEmitter>; - /** Emitted when the slide transition has started. */ - ionSlideTransitionStart!: EventEmitter>; - /** Emitted when the slide transition has ended. */ - ionSlideTransitionEnd!: EventEmitter>; - /** Emitted when the slider is actively being moved. */ - ionSlideDrag!: EventEmitter>; - /** Emitted when the slider is at its initial position. */ - ionSlideReachStart!: EventEmitter>; - /** Emitted when the slider is at the last slide. */ - ionSlideReachEnd!: EventEmitter>; - /** Emitted when the user first touches the slider. */ - ionSlideTouchStart!: EventEmitter>; - /** Emitted when the user releases the touch. */ - ionSlideTouchEnd!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -1444,7 +1867,10 @@ export class IonSlides { export declare interface IonSpinner extends Components.IonSpinner {} + @ProxyCmp({ + tagName: 'ion-spinner', + customElement: IonSpinnerCmp, inputs: ['color', 'duration', 'name', 'paused'] }) @Component({ @@ -1462,20 +1888,26 @@ export class IonSpinner { } -export declare interface IonSplitPane extends Components.IonSplitPane {} +export declare interface IonSplitPane extends Components.IonSplitPane { + /** + * Expression to be called when the split-pane visibility has changed + */ + ionSplitPaneVisible: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-split-pane', + customElement: IonSplitPaneCmp, inputs: ['contentId', 'disabled', 'when'] }) @Component({ selector: 'ion-split-pane', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['contentId', 'disabled', 'when'], - outputs: ['ionSplitPaneVisible'] + inputs: ['contentId', 'disabled', 'when'] }) export class IonSplitPane { - /** Expression to be called when the split-pane visibility has changed */ - ionSplitPaneVisible!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -1486,7 +1918,10 @@ export class IonSplitPane { export declare interface IonTabBar extends Components.IonTabBar {} + @ProxyCmp({ + tagName: 'ion-tab-bar', + customElement: IonTabBarCmp, inputs: ['color', 'mode', 'selectedTab', 'translucent'] }) @Component({ @@ -1505,7 +1940,10 @@ export class IonTabBar { export declare interface IonTabButton extends Components.IonTabButton {} + @ProxyCmp({ + tagName: 'ion-tab-button', + customElement: IonTabButtonCmp, inputs: ['disabled', 'download', 'href', 'layout', 'mode', 'rel', 'selected', 'tab', 'target'] }) @Component({ @@ -1524,7 +1962,10 @@ export class IonTabButton { export declare interface IonText extends Components.IonText {} + @ProxyCmp({ + tagName: 'ion-text', + customElement: IonTextCmp, inputs: ['color', 'mode'] }) @Component({ @@ -1541,9 +1982,30 @@ export class IonText { } } -import { TextareaChangeEventDetail as ITextareaTextareaChangeEventDetail } from '@ionic/core'; -export declare interface IonTextarea extends Components.IonTextarea {} +import type { TextareaChangeEventDetail as ITextareaTextareaChangeEventDetail } from '@ionic/core/components'; +export declare interface IonTextarea extends Components.IonTextarea { + /** + * Emitted when the input value has changed. + */ + ionChange: EventEmitter>; + /** + * Emitted when a keyboard input occurred. + */ + ionInput: EventEmitter>; + /** + * Emitted when the input loses focus. + */ + ionBlur: EventEmitter>; + /** + * Emitted when the input has focus. + */ + ionFocus: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-textarea', + customElement: IonTextareaCmp, inputs: ['autoGrow', 'autocapitalize', 'autofocus', 'clearOnEdit', 'color', 'cols', 'debounce', 'disabled', 'enterkeyhint', 'inputmode', 'maxlength', 'minlength', 'mode', 'name', 'placeholder', 'readonly', 'required', 'rows', 'spellcheck', 'value', 'wrap'], methods: ['setFocus', 'getInputElement'] }) @@ -1551,18 +2013,9 @@ export declare interface IonTextarea extends Components.IonTextarea {} selector: 'ion-textarea', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['autoGrow', 'autocapitalize', 'autofocus', 'clearOnEdit', 'color', 'cols', 'debounce', 'disabled', 'enterkeyhint', 'inputmode', 'maxlength', 'minlength', 'mode', 'name', 'placeholder', 'readonly', 'required', 'rows', 'spellcheck', 'value', 'wrap'], - outputs: ['ionChange', 'ionInput', 'ionBlur', 'ionFocus'] + inputs: ['autoGrow', 'autocapitalize', 'autofocus', 'clearOnEdit', 'color', 'cols', 'debounce', 'disabled', 'enterkeyhint', 'inputmode', 'maxlength', 'minlength', 'mode', 'name', 'placeholder', 'readonly', 'required', 'rows', 'spellcheck', 'value', 'wrap'] }) export class IonTextarea { - /** Emitted when the input value has changed. */ - ionChange!: EventEmitter>; - /** Emitted when a keyboard input occurred. */ - ionInput!: EventEmitter>; - /** Emitted when the input loses focus. */ - ionBlur!: EventEmitter>; - /** Emitted when the input has focus. */ - ionFocus!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -1574,6 +2027,10 @@ export class IonTextarea { export declare interface IonThumbnail extends Components.IonThumbnail {} +@ProxyCmp({ + tagName: 'ion-thumbnail', + customElement: IonThumbnailCmp +}) @Component({ selector: 'ion-thumbnail', changeDetection: ChangeDetectionStrategy.OnPush, @@ -1589,7 +2046,10 @@ export class IonThumbnail { export declare interface IonTitle extends Components.IonTitle {} + @ProxyCmp({ + tagName: 'ion-title', + customElement: IonTitleCmp, inputs: ['color', 'size'] }) @Component({ @@ -1606,25 +2066,35 @@ export class IonTitle { } } -import { ToggleChangeEventDetail as IToggleToggleChangeEventDetail } from '@ionic/core'; -export declare interface IonToggle extends Components.IonToggle {} +import type { ToggleChangeEventDetail as IToggleToggleChangeEventDetail } from '@ionic/core/components'; +export declare interface IonToggle extends Components.IonToggle { + /** + * Emitted when the value property has changed. + */ + ionChange: EventEmitter>; + /** + * Emitted when the toggle has focus. + */ + ionFocus: EventEmitter>; + /** + * Emitted when the toggle loses focus. + */ + ionBlur: EventEmitter>; + +} + @ProxyCmp({ + tagName: 'ion-toggle', + customElement: IonToggleCmp, inputs: ['checked', 'color', 'disabled', 'mode', 'name', 'value'] }) @Component({ selector: 'ion-toggle', changeDetection: ChangeDetectionStrategy.OnPush, template: '', - inputs: ['checked', 'color', 'disabled', 'mode', 'name', 'value'], - outputs: ['ionChange', 'ionFocus', 'ionBlur'] + inputs: ['checked', 'color', 'disabled', 'mode', 'name', 'value'] }) export class IonToggle { - /** Emitted when the value property has changed. */ - ionChange!: EventEmitter>; - /** Emitted when the toggle has focus. */ - ionFocus!: EventEmitter>; - /** Emitted when the toggle loses focus. */ - ionBlur!: EventEmitter>; protected el: HTMLElement; constructor(c: ChangeDetectorRef, r: ElementRef, protected z: NgZone) { c.detach(); @@ -1635,7 +2105,10 @@ export class IonToggle { export declare interface IonToolbar extends Components.IonToolbar {} + @ProxyCmp({ + tagName: 'ion-toolbar', + customElement: IonToolbarCmp, inputs: ['color', 'mode'] }) @Component({ diff --git a/angular/src/directives/virtual-scroll/virtual-scroll.ts b/angular/src/directives/virtual-scroll/virtual-scroll.ts index 74695d85e7e..ad82ddc8c9c 100644 --- a/angular/src/directives/virtual-scroll/virtual-scroll.ts +++ b/angular/src/directives/virtual-scroll/virtual-scroll.ts @@ -1,5 +1,5 @@ import { ChangeDetectionStrategy, Component, ContentChild, ElementRef, EmbeddedViewRef, IterableDiffer, IterableDiffers, NgZone, SimpleChanges, TrackByFunction } from '@angular/core'; -import { Cell, CellType, FooterHeightFn, HeaderFn, HeaderHeightFn, ItemHeightFn } from '@ionic/core'; +import { Cell, CellType, FooterHeightFn, HeaderFn, HeaderHeightFn, ItemHeightFn } from '@ionic/core/components'; import { ProxyCmp } from '../angular-component-lib/utils'; @@ -8,6 +8,8 @@ import { VirtualHeader } from './virtual-header'; import { VirtualItem } from './virtual-item'; import { VirtualContext } from './virtual-utils'; +import { IonVirtualScroll as IonVirtualScrollCmp } from "@ionic/core/components/ion-virtual-scroll"; + export declare interface IonVirtualScroll { /** * It is important to provide this @@ -113,6 +115,8 @@ export declare interface IonVirtualScroll { } @ProxyCmp({ + tagName: 'ion-virtual-scroll', + customElement: IonVirtualScrollCmp, inputs: ['approxItemHeight', 'approxHeaderHeight', 'approxFooterHeight', 'headerFn', 'footerFn', 'items', 'itemHeight', 'headerHeight', 'footerHeight'], methods: ['checkEnd', 'checkRange', 'positionForItem'] }) diff --git a/angular/src/index.ts b/angular/src/index.ts index bbcce8c154e..11f83d34bf3 100644 --- a/angular/src/index.ts +++ b/angular/src/index.ts @@ -1,3 +1,5 @@ +import 'ionicons'; + // DIRECTIVES export { BooleanValueAccessorDirective as BooleanValueAccessor } from './directives/control-value-accessors/boolean-value-accessor'; export { NumericValueAccessorDirective as NumericValueAccessor } from './directives/control-value-accessors/numeric-value-accesssor'; @@ -16,6 +18,7 @@ export { VirtualHeader } from './directives/virtual-scroll/virtual-header'; export { VirtualFooter } from './directives/virtual-scroll/virtual-footer'; export { IonModal } from './directives/overlays/modal'; export { IonPopover } from './directives/overlays/popover'; +export { IonIcon } from './directives/ion-icon'; export * from './directives/proxies'; // PROVIDERS @@ -52,7 +55,6 @@ export { mdTransitionAnimation, setupConfig, IonicSwiper, - IonicSlides, getPlatforms, isPlatform, getTimeGivenProgression, @@ -125,4 +127,6 @@ export { ToastButton, ToggleChangeEventDetail, ToggleCustomEvent, -} from '@ionic/core'; +} from '@ionic/core/components'; + +document.documentElement.classList.add('ion-ce'); diff --git a/angular/src/ionic-core.ts b/angular/src/ionic-core.ts index efe90c9880f..73d389d2a61 100644 --- a/angular/src/ionic-core.ts +++ b/angular/src/ionic-core.ts @@ -1,7 +1,7 @@ // Re-exports from ionic/core // UTILS -export { IonicSafeString, getPlatforms, isPlatform, createAnimation } from '@ionic/core'; +export { IonicSafeString, getPlatforms, isPlatform, createAnimation } from '@ionic/core/components'; // CORE TYPES export { @@ -18,4 +18,4 @@ export { mdTransitionAnimation, iosTransitionAnimation, NavComponentWithProps, -} from '@ionic/core'; +} from '@ionic/core/components'; diff --git a/angular/src/ionic-module.ts b/angular/src/ionic-module.ts index 28986acd974..96d7987a8a2 100644 --- a/angular/src/ionic-module.ts +++ b/angular/src/ionic-module.ts @@ -1,6 +1,6 @@ import { CommonModule, DOCUMENT } from '@angular/common'; import { ModuleWithProviders, APP_INITIALIZER, NgModule, NgZone } from '@angular/core'; -import { IonicConfig } from '@ionic/core'; +import { IonicConfig } from '@ionic/core/components'; import { appInitialize } from './app-initialize'; import { BooleanValueAccessorDirective } from './directives/control-value-accessors/boolean-value-accessor'; @@ -8,6 +8,7 @@ import { NumericValueAccessorDirective } from './directives/control-value-access import { RadioValueAccessorDirective } from './directives/control-value-accessors/radio-value-accessor'; import { SelectValueAccessorDirective } from './directives/control-value-accessors/select-value-accessor'; import { TextValueAccessorDirective } from './directives/control-value-accessors/text-value-accessor'; +import { IonIcon } from './directives/ion-icon'; import { IonBackButtonDelegateDirective } from './directives/navigation/ion-back-button'; import { IonRouterOutlet } from './directives/navigation/ion-router-outlet'; import { IonTabs } from './directives/navigation/ion-tabs'; @@ -43,7 +44,6 @@ import { IonFooter, IonGrid, IonHeader, - IonIcon, IonImg, IonInfiniteScroll, IonInfiniteScrollContent, diff --git a/angular/src/providers/action-sheet-controller.ts b/angular/src/providers/action-sheet-controller.ts index d2c92bd8e0e..e707be92d1f 100644 --- a/angular/src/providers/action-sheet-controller.ts +++ b/angular/src/providers/action-sheet-controller.ts @@ -1,5 +1,5 @@ import { Injectable } from '@angular/core'; -import { ActionSheetOptions, actionSheetController } from '@ionic/core'; +import { ActionSheetOptions, actionSheetController } from '@ionic/core/components'; import { OverlayBaseController } from '../util/overlay'; diff --git a/angular/src/providers/alert-controller.ts b/angular/src/providers/alert-controller.ts index abffc7577cb..ae26ffe294c 100644 --- a/angular/src/providers/alert-controller.ts +++ b/angular/src/providers/alert-controller.ts @@ -1,5 +1,5 @@ import { Injectable } from '@angular/core'; -import { AlertOptions, alertController } from '@ionic/core'; +import { AlertOptions, alertController } from '@ionic/core/components'; import { OverlayBaseController } from '../util/overlay'; diff --git a/angular/src/providers/angular-delegate.ts b/angular/src/providers/angular-delegate.ts index 6bba41d65a8..260d2f9fc0c 100644 --- a/angular/src/providers/angular-delegate.ts +++ b/angular/src/providers/angular-delegate.ts @@ -14,7 +14,7 @@ import { LIFECYCLE_WILL_ENTER, LIFECYCLE_WILL_LEAVE, LIFECYCLE_WILL_UNLOAD, -} from '@ionic/core'; +} from '@ionic/core/components'; import { NavParams } from '../directives/navigation/nav-params'; diff --git a/angular/src/providers/animation-controller.ts b/angular/src/providers/animation-controller.ts index abd620c5712..eee3c565882 100644 --- a/angular/src/providers/animation-controller.ts +++ b/angular/src/providers/animation-controller.ts @@ -1,5 +1,5 @@ import { Injectable } from '@angular/core'; -import { Animation, createAnimation, getTimeGivenProgression } from '@ionic/core'; +import { Animation, createAnimation, getTimeGivenProgression } from '@ionic/core/components'; @Injectable({ providedIn: 'root', diff --git a/angular/src/providers/config.ts b/angular/src/providers/config.ts index a312a827093..ba84850567f 100644 --- a/angular/src/providers/config.ts +++ b/angular/src/providers/config.ts @@ -1,5 +1,5 @@ import { Injectable, InjectionToken } from '@angular/core'; -import { Config as CoreConfig, IonicConfig } from '@ionic/core'; +import { Config as CoreConfig, IonicConfig } from '@ionic/core/components'; import { IonicWindow } from '../types/interfaces'; diff --git a/angular/src/providers/gesture-controller.ts b/angular/src/providers/gesture-controller.ts index 6450c7bff57..848109508ce 100644 --- a/angular/src/providers/gesture-controller.ts +++ b/angular/src/providers/gesture-controller.ts @@ -1,5 +1,5 @@ import { NgZone, Injectable } from '@angular/core'; -import { Gesture, GestureConfig, createGesture } from '@ionic/core'; +import { Gesture, GestureConfig, createGesture } from '@ionic/core/components'; @Injectable({ providedIn: 'root', @@ -12,9 +12,9 @@ export class GestureController { create(opts: GestureConfig, runInsideAngularZone = false): Gesture { if (runInsideAngularZone) { Object.getOwnPropertyNames(opts).forEach((key) => { - if (typeof opts[key] === 'function') { - const fn = opts[key]; - opts[key] = (...props: any[]) => this.zone.run(() => fn(...props)); + if (typeof (opts as any)[key] === 'function') { + const fn = (opts as any)[key]; + (opts as any)[key] = (...props: any[]) => this.zone.run(() => fn(...props)); } }); } diff --git a/angular/src/providers/loading-controller.ts b/angular/src/providers/loading-controller.ts index a132949ccc1..df3c63f92b3 100644 --- a/angular/src/providers/loading-controller.ts +++ b/angular/src/providers/loading-controller.ts @@ -1,5 +1,5 @@ import { Injectable } from '@angular/core'; -import { LoadingOptions, loadingController } from '@ionic/core'; +import { LoadingOptions, loadingController } from '@ionic/core/components'; import { OverlayBaseController } from '../util/overlay'; diff --git a/angular/src/providers/menu-controller.ts b/angular/src/providers/menu-controller.ts index 9898100613e..ba1876e23b8 100644 --- a/angular/src/providers/menu-controller.ts +++ b/angular/src/providers/menu-controller.ts @@ -1,5 +1,5 @@ import { Injectable } from '@angular/core'; -import { menuController } from '@ionic/core'; +import { menuController } from '@ionic/core/components'; @Injectable({ providedIn: 'root', diff --git a/angular/src/providers/modal-controller.ts b/angular/src/providers/modal-controller.ts index 7acc4fefa63..d36b361c56b 100644 --- a/angular/src/providers/modal-controller.ts +++ b/angular/src/providers/modal-controller.ts @@ -1,5 +1,5 @@ import { ComponentFactoryResolver, Injector, Injectable } from '@angular/core'; -import { ModalOptions, modalController } from '@ionic/core'; +import { ModalOptions, modalController } from '@ionic/core/components'; import { OverlayBaseController } from '../util/overlay'; diff --git a/angular/src/providers/nav-controller.ts b/angular/src/providers/nav-controller.ts index 9fa391267f1..4f926edcc43 100644 --- a/angular/src/providers/nav-controller.ts +++ b/angular/src/providers/nav-controller.ts @@ -1,7 +1,7 @@ import { Location } from '@angular/common'; import { Injectable, Optional } from '@angular/core'; import { NavigationExtras, Router, UrlSerializer, UrlTree, NavigationStart } from '@angular/router'; -import { AnimationBuilder, NavDirection, RouterDirection } from '@ionic/core'; +import { AnimationBuilder, NavDirection, RouterDirection } from '@ionic/core/components'; import { IonRouterOutlet } from '../directives/navigation/ion-router-outlet'; diff --git a/angular/src/providers/picker-controller.ts b/angular/src/providers/picker-controller.ts index a67fb3f7dbf..b113adf3a23 100644 --- a/angular/src/providers/picker-controller.ts +++ b/angular/src/providers/picker-controller.ts @@ -1,5 +1,5 @@ import { Injectable } from '@angular/core'; -import { PickerOptions, pickerController } from '@ionic/core'; +import { PickerOptions, pickerController } from '@ionic/core/components'; import { OverlayBaseController } from '../util/overlay'; diff --git a/angular/src/providers/platform.ts b/angular/src/providers/platform.ts index f8d7d2c2fe5..f5d9b92e71f 100644 --- a/angular/src/providers/platform.ts +++ b/angular/src/providers/platform.ts @@ -1,6 +1,12 @@ import { DOCUMENT } from '@angular/common'; import { NgZone, Inject, Injectable } from '@angular/core'; -import { BackButtonEventDetail, KeyboardEventDetail, Platforms, getPlatforms, isPlatform } from '@ionic/core'; +import { + BackButtonEventDetail, + KeyboardEventDetail, + Platforms, + getPlatforms, + isPlatform, +} from '@ionic/core/components'; import { Subscription, Subject } from 'rxjs'; export interface BackButtonEmitter extends Subject { diff --git a/angular/src/providers/popover-controller.ts b/angular/src/providers/popover-controller.ts index fc7deefd0f7..bc8b6252ab0 100644 --- a/angular/src/providers/popover-controller.ts +++ b/angular/src/providers/popover-controller.ts @@ -1,5 +1,5 @@ import { ComponentFactoryResolver, Injector, Injectable } from '@angular/core'; -import { PopoverOptions, popoverController } from '@ionic/core'; +import { PopoverOptions, popoverController } from '@ionic/core/components'; import { OverlayBaseController } from '../util/overlay'; diff --git a/angular/src/providers/toast-controller.ts b/angular/src/providers/toast-controller.ts index d967b77b9f5..962ae3d8e8e 100644 --- a/angular/src/providers/toast-controller.ts +++ b/angular/src/providers/toast-controller.ts @@ -1,5 +1,5 @@ import { Injectable } from '@angular/core'; -import { ToastOptions, toastController } from '@ionic/core'; +import { ToastOptions, toastController } from '@ionic/core/components'; import { OverlayBaseController } from '../util/overlay'; diff --git a/angular/test/test-app/package-lock.json b/angular/test/test-app/package-lock.json index 533098b4b55..acba50341d7 100644 --- a/angular/test/test-app/package-lock.json +++ b/angular/test/test-app/package-lock.json @@ -18,7 +18,7 @@ "@angular/platform-browser-dynamic": "^12.2.8", "@angular/platform-server": "^12.2.8", "@angular/router": "^12.2.8", - "@ionic/angular": "^5.3.1", + "@ionic/angular": "^6.0.0-rc.2", "@ionic/angular-server": "^5.3.1", "@nguniversal/express-engine": "^12.1.1", "angular-in-memory-web-api": "^0.11.0", @@ -2183,7 +2183,6 @@ "version": "7.15.7", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz", "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==", - "dev": true, "engines": { "node": ">=6.9.0" } @@ -2258,7 +2257,6 @@ "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", - "dev": true, "dependencies": { "@babel/helper-validator-identifier": "^7.14.5", "chalk": "^2.0.0", @@ -3642,7 +3640,6 @@ "version": "0.4.3", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", - "dev": true, "dependencies": { "ajv": "^6.12.4", "debug": "^4.1.1", @@ -3662,7 +3659,6 @@ "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -3678,7 +3674,6 @@ "version": "13.11.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", - "dev": true, "dependencies": { "type-fest": "^0.20.2" }, @@ -3693,7 +3688,6 @@ "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true, "engines": { "node": ">= 4" } @@ -3701,14 +3695,12 @@ "node_modules/@eslint/eslintrc/node_modules/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 + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" }, "node_modules/@eslint/eslintrc/node_modules/type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, "engines": { "node": ">=10" }, @@ -3735,7 +3727,6 @@ "version": "0.5.0", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", - "dev": true, "dependencies": { "@humanwhocodes/object-schema": "^1.2.0", "debug": "^4.1.1", @@ -3748,23 +3739,24 @@ "node_modules/@humanwhocodes/object-schema": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz", - "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", - "dev": true + "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==" }, "node_modules/@ionic/angular": { - "version": "5.8.2", - "resolved": "https://registry.npmjs.org/@ionic/angular/-/angular-5.8.2.tgz", - "integrity": "sha512-m2dE8QcWyCkv4yB+6+9j9Qu6hI28+chWT7A6nmbD7A360bm26LjdvKiJaCEQUxIXH7CpFuYcURZvRrn9gMscNg==", + "version": "6.0.0-rc.2", + "resolved": "https://registry.npmjs.org/@ionic/angular/-/angular-6.0.0-rc.2.tgz", + "integrity": "sha512-6NO5FjU2KsGaMdf0kRdGUUXycZF7Hvq6LhthjiN+h/ms6xT05GMBFLHtixwGkyVZaK3m62n+QS1rKw0sz53bFw==", + "license": "MIT", "dependencies": { - "@ionic/core": "5.8.2", - "tslib": "^1.9.3" + "@ionic/core": "6.0.0-rc.2", + "jsonc-parser": "^3.0.0", + "tslib": "^2.0.0" }, "peerDependencies": { - "@angular/core": ">=8.2.7", - "@angular/forms": ">=8.2.7", - "@angular/router": ">=8.2.7", - "rxjs": ">=6.2.0", - "zone.js": ">=0.8.26" + "@angular/core": ">=12.0.0", + "@angular/forms": ">=12.0.0", + "@angular/router": ">=12.0.0", + "rxjs": ">=6.6.0", + "zone.js": ">=0.11.0" } }, "node_modules/@ionic/angular-server": { @@ -3787,18 +3779,13 @@ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "node_modules/@ionic/angular/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, "node_modules/@ionic/core": { - "version": "5.8.2", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-5.8.2.tgz", - "integrity": "sha512-BWIh6hyhq+tzVvebPMfRa+IhTV5/yXh4wO3a0U3Qo4PL4KDzWyBJfoiPi6bOEc+BAlFnCtOooTTXTumgXXOojg==", + "version": "6.0.0-rc.2", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-6.0.0-rc.2.tgz", + "integrity": "sha512-evf3J01B91zs386bBYz55zjG0I7BXSs/+pySkj+fDHVT/teXYntpUzebm5rqA0/IoUn6QXEdz1x3Nrz8040/Jg==", "dependencies": { - "@stencil/core": "^2.4.0", - "ionicons": "^5.5.3", + "@stencil/core": "~2.10.0", + "ionicons": "^5.5.4", "tslib": "^2.1.0" } }, @@ -3897,7 +3884,6 @@ "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, "dependencies": { "@nodelib/fs.stat": "2.0.5", "run-parallel": "^1.1.9" @@ -3910,7 +3896,6 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, "engines": { "node": ">= 8" } @@ -3919,7 +3904,6 @@ "version": "1.2.8", "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, "dependencies": { "@nodelib/fs.scandir": "2.1.5", "fastq": "^1.6.0" @@ -4238,9 +4222,9 @@ "dev": true }, "node_modules/@stencil/core": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.8.1.tgz", - "integrity": "sha512-iv9J6oLO/lv7/aO45M05yw3pp1J7olY400vlOZgdMVs3s5zHfalY1ZPYM0KyqU4+7DZuadKYbd0aQZ/g2PInZw==", + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.10.0.tgz", + "integrity": "sha512-15rWMTPQ/sp0lSV82HVCXkIya3QLN+uBl7pqK4JnTrp4HiLrzLmNbWjbvgCs55gw0lULbCIGbRIEsFz+Pe/Q+A==", "bin": { "stencil": "bin/stencil" }, @@ -4523,7 +4507,6 @@ "version": "4.28.2", "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.28.2.tgz", "integrity": "sha512-Q0gSCN51eikAgFGY+gnd5p9bhhCUAl0ERMiDKrTzpSoMYRubdB8MJrTTR/BBii8z+iFwz8oihxd0RAdP4l8w8w==", - "dev": true, "dependencies": { "@typescript-eslint/scope-manager": "4.28.2", "@typescript-eslint/types": "4.28.2", @@ -4550,7 +4533,6 @@ "version": "4.28.2", "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.28.2.tgz", "integrity": "sha512-MqbypNjIkJFEFuOwPWNDjq0nqXAKZvDNNs9yNseoGBB1wYfz1G0WHC2AVOy4XD7di3KCcW3+nhZyN6zruqmp2A==", - "dev": true, "dependencies": { "@typescript-eslint/types": "4.28.2", "@typescript-eslint/visitor-keys": "4.28.2" @@ -4567,7 +4549,6 @@ "version": "4.28.2", "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.28.2.tgz", "integrity": "sha512-Gr15fuQVd93uD9zzxbApz3wf7ua3yk4ZujABZlZhaxxKY8ojo448u7XTm/+ETpy0V0dlMtj6t4VdDvdc0JmUhA==", - "dev": true, "engines": { "node": "^8.10.0 || ^10.13.0 || >=11.10.1" }, @@ -4580,7 +4561,6 @@ "version": "4.28.2", "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.28.2.tgz", "integrity": "sha512-86lLstLvK6QjNZjMoYUBMMsULFw0hPHJlk1fzhAVoNjDBuPVxiwvGuPQq3fsBMCxuDJwmX87tM/AXoadhHRljg==", - "dev": true, "dependencies": { "@typescript-eslint/types": "4.28.2", "@typescript-eslint/visitor-keys": "4.28.2", @@ -4607,7 +4587,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true, "engines": { "node": ">=8" } @@ -4616,7 +4595,6 @@ "version": "11.0.4", "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz", "integrity": "sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==", - "dev": true, "dependencies": { "array-union": "^2.1.0", "dir-glob": "^3.0.1", @@ -4635,14 +4613,12 @@ "node_modules/@typescript-eslint/typescript-estree/node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/@typescript-eslint/typescript-estree/node_modules/tsutils": { "version": "3.21.0", "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", - "dev": true, "dependencies": { "tslib": "^1.8.1" }, @@ -4657,7 +4633,6 @@ "version": "4.28.2", "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.28.2.tgz", "integrity": "sha512-aT2B4PLyyRDUVUafXzpZFoc0C9t0za4BJAKP5sgWIhG+jHECQZUEjuQSCIwZdiJJ4w4cgu5r3Kh20SOdtEBl0w==", - "dev": true, "dependencies": { "@typescript-eslint/types": "4.28.2", "eslint-visitor-keys": "^2.0.0" @@ -4994,7 +4969,6 @@ "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true, "peerDependencies": { "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } @@ -5077,7 +5051,6 @@ "version": "8.6.2", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz", "integrity": "sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==", - "dev": true, "dependencies": { "fast-deep-equal": "^3.1.1", "json-schema-traverse": "^1.0.0", @@ -5144,7 +5117,6 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true, "engines": { "node": ">=6" } @@ -5180,7 +5152,6 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, "engines": { "node": ">=8" } @@ -5189,7 +5160,6 @@ "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, "dependencies": { "color-convert": "^1.9.0" }, @@ -5265,7 +5235,6 @@ "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "dev": true, "dependencies": { "sprintf-js": "~1.0.2" } @@ -5273,8 +5242,7 @@ "node_modules/argparse/node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" }, "node_modules/arr-diff": { "version": "4.0.0", @@ -5375,7 +5343,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true, "engines": { "node": ">=8" } @@ -5615,8 +5582,7 @@ "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, "node_modules/base": { "version": "0.11.2", @@ -5857,7 +5823,6 @@ "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -5867,7 +5832,6 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, "dependencies": { "fill-range": "^7.0.1" }, @@ -6241,7 +6205,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true, "engines": { "node": ">=6" } @@ -6293,7 +6256,6 @@ "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, "dependencies": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -6701,7 +6663,6 @@ "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, "dependencies": { "color-name": "1.1.3" } @@ -6709,8 +6670,7 @@ "node_modules/color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" }, "node_modules/colord": { "version": "2.8.0", @@ -6841,8 +6801,7 @@ "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" }, "node_modules/concat-stream": { "version": "1.6.2", @@ -7231,7 +7190,6 @@ "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -8114,7 +8072,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, "dependencies": { "path-type": "^4.0.0" }, @@ -8157,7 +8114,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, "dependencies": { "esutils": "^2.0.2" }, @@ -8316,8 +8272,7 @@ "node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, "node_modules/emojis-list": { "version": "3.0.0", @@ -8511,7 +8466,6 @@ "version": "2.3.6", "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", - "dev": true, "dependencies": { "ansi-colors": "^4.1.1" }, @@ -8611,7 +8565,6 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true, "engines": { "node": ">=0.8.0" } @@ -8650,7 +8603,6 @@ "version": "7.32.0", "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", - "dev": true, "dependencies": { "@babel/code-frame": "7.12.11", "@eslint/eslintrc": "^0.4.3", @@ -8707,7 +8659,6 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, "dependencies": { "esrecurse": "^4.3.0", "estraverse": "^4.1.1" @@ -8720,7 +8671,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true, "engines": { "node": ">=4.0" } @@ -8747,7 +8697,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true, "engines": { "node": ">=10" } @@ -8756,7 +8705,6 @@ "version": "7.12.11", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", - "dev": true, "dependencies": { "@babel/highlight": "^7.10.4" } @@ -8765,7 +8713,6 @@ "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, "dependencies": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -8781,7 +8728,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, "dependencies": { "color-convert": "^2.0.1" }, @@ -8796,7 +8742,6 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -8812,7 +8757,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, "dependencies": { "color-name": "~1.1.4" }, @@ -8823,14 +8767,12 @@ "node_modules/eslint/node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "node_modules/eslint/node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, "engines": { "node": ">=10" }, @@ -8842,7 +8784,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", - "dev": true, "dependencies": { "eslint-visitor-keys": "^1.1.0" }, @@ -8857,7 +8798,6 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true, "engines": { "node": ">=4" } @@ -8866,7 +8806,6 @@ "version": "13.11.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", - "dev": true, "dependencies": { "type-fest": "^0.20.2" }, @@ -8881,7 +8820,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, "engines": { "node": ">=8" } @@ -8890,7 +8828,6 @@ "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true, "engines": { "node": ">= 4" } @@ -8898,14 +8835,12 @@ "node_modules/eslint/node_modules/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 + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" }, "node_modules/eslint/node_modules/levn": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, "dependencies": { "prelude-ls": "^1.2.1", "type-check": "~0.4.0" @@ -8918,7 +8853,6 @@ "version": "0.9.1", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", - "dev": true, "dependencies": { "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", @@ -8935,7 +8869,6 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true, "engines": { "node": ">= 0.8.0" } @@ -8944,7 +8877,6 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, "dependencies": { "has-flag": "^4.0.0" }, @@ -8956,7 +8888,6 @@ "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, "dependencies": { "prelude-ls": "^1.2.1" }, @@ -8968,7 +8899,6 @@ "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true, "engines": { "node": ">=10" }, @@ -8980,7 +8910,6 @@ "version": "7.3.1", "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", - "dev": true, "dependencies": { "acorn": "^7.4.0", "acorn-jsx": "^5.3.1", @@ -8994,7 +8923,6 @@ "version": "7.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true, "bin": { "acorn": "bin/acorn" }, @@ -9006,7 +8934,6 @@ "version": "1.3.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true, "engines": { "node": ">=4" } @@ -9027,7 +8954,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", - "dev": true, "dependencies": { "estraverse": "^5.1.0" }, @@ -9039,7 +8965,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, "dependencies": { "estraverse": "^5.2.0" }, @@ -9574,14 +9499,12 @@ "node_modules/fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" }, "node_modules/fast-glob": { "version": "3.2.7", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", - "dev": true, "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", @@ -9596,8 +9519,7 @@ "node_modules/fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" }, "node_modules/fast-levenshtein": { "version": "2.0.6", @@ -9608,7 +9530,6 @@ "version": "1.13.0", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", - "dev": true, "dependencies": { "reusify": "^1.0.4" } @@ -9651,7 +9572,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, "dependencies": { "flat-cache": "^3.0.4" }, @@ -9679,7 +9599,6 @@ "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, "dependencies": { "to-regex-range": "^5.0.1" }, @@ -9908,7 +9827,6 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "dev": true, "dependencies": { "flatted": "^3.1.0", "rimraf": "^3.0.2" @@ -9920,8 +9838,7 @@ "node_modules/flatted": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", - "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", - "dev": true + "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==" }, "node_modules/flatten": { "version": "1.0.3", @@ -10042,8 +9959,7 @@ "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "node_modules/fsevents": { "version": "2.3.2", @@ -10068,8 +9984,7 @@ "node_modules/functional-red-black-tree": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=" }, "node_modules/gauge": { "version": "2.7.4", @@ -10212,7 +10127,6 @@ "version": "7.1.7", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", - "dev": true, "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -10232,7 +10146,6 @@ "version": "5.1.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, "dependencies": { "is-glob": "^4.0.1" }, @@ -10463,7 +10376,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true, "engines": { "node": ">=4" } @@ -10795,7 +10707,6 @@ "version": "5.1.8", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", - "dev": true, "engines": { "node": ">= 4" } @@ -10835,7 +10746,6 @@ "version": "3.3.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, "dependencies": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" @@ -10851,7 +10761,6 @@ "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, "engines": { "node": ">=4" } @@ -10934,7 +10843,6 @@ "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true, "engines": { "node": ">=0.8.19" } @@ -10970,7 +10878,6 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -11163,11 +11070,11 @@ } }, "node_modules/ionicons": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-5.5.3.tgz", - "integrity": "sha512-L71djrMi8pAad66tpwdnO1vwcyluCFvehzxU1PpH1k/HpYBZhZ5IaYhqXipmqUvu5aEbd4cbRguYyI5Fd4bxTw==", + "version": "5.5.4", + "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-5.5.4.tgz", + "integrity": "sha512-3ph8X9my3inhabWEZ7N0XRA0MnnNQ1v9a602mLNgWsIXnxE9G5BybIZ/pws/OZZ/hoNlvSjk801N03yL9/FNgQ==", "dependencies": { - "@stencil/core": "^2.5.0" + "@stencil/core": "~2.10.0" } }, "node_modules/ip": { @@ -11350,7 +11257,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -11359,7 +11265,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, "engines": { "node": ">=8" } @@ -11368,7 +11273,6 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, "dependencies": { "is-extglob": "^2.1.1" }, @@ -11411,7 +11315,6 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, "engines": { "node": ">=0.12.0" } @@ -11611,8 +11514,7 @@ "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" }, "node_modules/isobject": { "version": "3.0.1", @@ -11740,14 +11642,12 @@ "node_modules/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 + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" }, "node_modules/js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -11866,14 +11766,12 @@ "node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=" }, "node_modules/json-stringify-safe": { "version": "5.0.1", @@ -11905,8 +11803,7 @@ "node_modules/jsonc-parser": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz", - "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==", - "dev": true + "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==" }, "node_modules/jsonfile": { "version": "3.0.1", @@ -12401,8 +12298,7 @@ "node_modules/lodash.clonedeep": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=" }, "node_modules/lodash.debounce": { "version": "4.0.8", @@ -12425,8 +12321,7 @@ "node_modules/lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" }, "node_modules/lodash.once": { "version": "4.1.1", @@ -12437,8 +12332,7 @@ "node_modules/lodash.truncate": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", - "dev": true + "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=" }, "node_modules/lodash.uniq": { "version": "4.5.0", @@ -12618,7 +12512,6 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, "dependencies": { "yallist": "^4.0.0" }, @@ -12822,7 +12715,6 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, "engines": { "node": ">= 8" } @@ -12839,7 +12731,6 @@ "version": "4.0.4", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", - "dev": true, "dependencies": { "braces": "^3.0.1", "picomatch": "^2.2.3" @@ -12897,7 +12788,6 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, "dependencies": { "brace-expansion": "^1.1.7" }, @@ -13131,8 +13021,7 @@ "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=" }, "node_modules/needle": { "version": "2.9.1", @@ -13653,7 +13542,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, "dependencies": { "wrappy": "1" } @@ -13999,7 +13887,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, "dependencies": { "callsites": "^3.0.0" }, @@ -14123,7 +14010,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -14138,7 +14024,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, "engines": { "node": ">=8" } @@ -14158,7 +14043,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true, "engines": { "node": ">=8" } @@ -14185,7 +14069,6 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", - "dev": true, "engines": { "node": ">=8.6" }, @@ -15620,7 +15503,6 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true, "engines": { "node": ">=0.4.0" } @@ -15714,7 +15596,6 @@ "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true, "funding": [ { "type": "github", @@ -15911,7 +15792,6 @@ "version": "3.2.0", "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "dev": true, "engines": { "node": ">=8" }, @@ -16060,7 +15940,6 @@ "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, "engines": { "node": ">=0.10.0" } @@ -16305,7 +16184,6 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true, "engines": { "iojs": ">=1.0.0", "node": ">=0.10.0" @@ -16315,7 +16193,6 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, "dependencies": { "glob": "^7.1.3" }, @@ -16339,7 +16216,6 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, "funding": [ { "type": "github", @@ -16499,7 +16375,6 @@ "version": "7.3.5", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, "dependencies": { "lru-cache": "^6.0.0" }, @@ -16747,7 +16622,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, "dependencies": { "shebang-regex": "^3.0.0" }, @@ -16759,7 +16633,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true, "engines": { "node": ">=8" } @@ -16774,7 +16647,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, "engines": { "node": ">=8" } @@ -17496,7 +17368,6 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -17510,7 +17381,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, "dependencies": { "ansi-regex": "^5.0.1" }, @@ -17540,7 +17410,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true, "engines": { "node": ">=8" }, @@ -17598,7 +17467,6 @@ "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, "dependencies": { "has-flag": "^3.0.0" }, @@ -17654,7 +17522,6 @@ "version": "6.7.2", "resolved": "https://registry.npmjs.org/table/-/table-6.7.2.tgz", "integrity": "sha512-UFZK67uvyNivLeQbVtkiUs8Uuuxv24aSL4/Vil2PJVtMgU8Lx0CYkP12uCGa3kjyQzOSgV1+z9Wkb82fCGsO0g==", - "dev": true, "dependencies": { "ajv": "^8.0.1", "lodash.clonedeep": "^4.5.0", @@ -17671,7 +17538,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, "dependencies": { "color-convert": "^2.0.1" }, @@ -17686,7 +17552,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, "dependencies": { "color-name": "~1.1.4" }, @@ -17697,14 +17562,12 @@ "node_modules/table/node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "node_modules/table/node_modules/slice-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - "dev": true, "dependencies": { "ansi-styles": "^4.0.0", "astral-regex": "^2.0.0", @@ -17936,8 +17799,7 @@ "node_modules/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 + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=" }, "node_modules/tfunk": { "version": "4.0.0", @@ -18098,7 +17960,6 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, "dependencies": { "is-number": "^7.0.0" }, @@ -18294,7 +18155,6 @@ "version": "4.3.5", "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.3.5.tgz", "integrity": "sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA==", - "dev": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -18513,7 +18373,6 @@ "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, "dependencies": { "punycode": "^2.1.0" } @@ -18586,8 +18445,7 @@ "node_modules/v8-compile-cache": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", - "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", - "dev": true + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==" }, "node_modules/validate-npm-package-name": { "version": "3.0.0", @@ -20006,7 +19864,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, "dependencies": { "isexe": "^2.0.0" }, @@ -20148,8 +20005,7 @@ "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, "node_modules/ws": { "version": "7.5.5", @@ -20210,8 +20066,7 @@ "node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/yaml": { "version": "1.10.2", @@ -20419,7 +20274,8 @@ "version": "12.2.8", "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-12.2.8.tgz", "integrity": "sha512-utQrOXm4eS3BEQh2/y8zt5fVF9cuakfVQSPD/pWPKLqZsGc9wB3CHkrQED0EizsBfrsn5yLc3yPh3P8yGUmdRw==", - "dev": true + "dev": true, + "requires": {} }, "ajv": { "version": "6.12.6", @@ -20480,13 +20336,15 @@ "version": "5.1.0", "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", - "dev": true + "dev": true, + "requires": {} }, "postcss-modules-extract-imports": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", - "dev": true + "dev": true, + "requires": {} }, "postcss-modules-local-by-default": { "version": "4.0.0", @@ -20596,7 +20454,8 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-2.0.1.tgz", "integrity": "sha512-i8vLRZTnEH9ubIyfdZCAdIdgnHAUeQeByEeQ2I7oTilvP9oHO6RScpeq3GsFUVqeB8uZgOQ9pw8utofNn32hhQ==", - "dev": true + "dev": true, + "requires": {} }, "postcss-calc": { "version": "8.0.0", @@ -20633,25 +20492,29 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-5.0.1.tgz", "integrity": "sha512-lgZBPTDvWrbAYY1v5GYEv8fEO/WhKOu/hmZqmCYfrpD6eyDWWzAOsl2rF29lpvziKO02Gc5GJQtlpkTmakwOWg==", - "dev": true + "dev": true, + "requires": {} }, "postcss-discard-duplicates": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-5.0.1.tgz", "integrity": "sha512-svx747PWHKOGpAXXQkCc4k/DsWo+6bc5LsVrAsw+OU+Ibi7klFZCyX54gjYzX4TH+f2uzXjRviLARxkMurA2bA==", - "dev": true + "dev": true, + "requires": {} }, "postcss-discard-empty": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-5.0.1.tgz", "integrity": "sha512-vfU8CxAQ6YpMxV2SvMcMIyF2LX1ZzWpy0lqHDsOdaKKLQVQGVP1pzhrI9JlsO65s66uQTfkQBKBD/A5gp9STFw==", - "dev": true + "dev": true, + "requires": {} }, "postcss-discard-overridden": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-5.0.1.tgz", "integrity": "sha512-Y28H7y93L2BpJhrdUR2SR2fnSsT+3TVx1NmVQLbcnZWwIUpJ7mfcTC6Za9M2PG6w8j7UQRfzxqn8jU2VwFxo3Q==", - "dev": true + "dev": true, + "requires": {} }, "postcss-merge-longhand": { "version": "5.0.2", @@ -20724,7 +20587,8 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-5.0.1.tgz", "integrity": "sha512-6J40l6LNYnBdPSk+BHZ8SF+HAkS4q2twe5jnocgd+xWpz/mx/5Sa32m3W1AA8uE8XaXN+eg8trIlfu8V9x61eg==", - "dev": true + "dev": true, + "requires": {} }, "postcss-normalize-display-values": { "version": "5.0.1", @@ -21005,7 +20869,8 @@ "version": "3.2.1", "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-3.2.1.tgz", "integrity": "sha512-1k9ZosJCRFaRbY6hH49JFlRB0fVSbmnyq1iTPjNxUmGVjBNEmwrrHPenhlp+Lgo51BojHSf6pl2FcqYaN3PfVg==", - "dev": true + "dev": true, + "requires": {} }, "stylus-loader": { "version": "6.1.0", @@ -21685,8 +21550,7 @@ "@babel/helper-validator-identifier": { "version": "7.15.7", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz", - "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==", - "dev": true + "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==" }, "@babel/helper-validator-option": { "version": "7.14.5", @@ -21747,7 +21611,6 @@ "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", - "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.14.5", "chalk": "^2.0.0", @@ -22721,7 +22584,6 @@ "version": "0.4.3", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", - "dev": true, "requires": { "ajv": "^6.12.4", "debug": "^4.1.1", @@ -22738,7 +22600,6 @@ "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, "requires": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -22750,7 +22611,6 @@ "version": "13.11.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", - "dev": true, "requires": { "type-fest": "^0.20.2" } @@ -22758,20 +22618,17 @@ "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" }, "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 + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" }, "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==" } } }, @@ -22794,7 +22651,6 @@ "version": "0.5.0", "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", - "dev": true, "requires": { "@humanwhocodes/object-schema": "^1.2.0", "debug": "^4.1.1", @@ -22804,23 +22660,16 @@ "@humanwhocodes/object-schema": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz", - "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", - "dev": true + "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==" }, "@ionic/angular": { - "version": "5.8.2", - "resolved": "https://registry.npmjs.org/@ionic/angular/-/angular-5.8.2.tgz", - "integrity": "sha512-m2dE8QcWyCkv4yB+6+9j9Qu6hI28+chWT7A6nmbD7A360bm26LjdvKiJaCEQUxIXH7CpFuYcURZvRrn9gMscNg==", + "version": "6.0.0-rc.2", + "resolved": "https://registry.npmjs.org/@ionic/angular/-/angular-6.0.0-rc.2.tgz", + "integrity": "sha512-6NO5FjU2KsGaMdf0kRdGUUXycZF7Hvq6LhthjiN+h/ms6xT05GMBFLHtixwGkyVZaK3m62n+QS1rKw0sz53bFw==", "requires": { - "@ionic/core": "5.8.2", - "tslib": "^1.9.3" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } + "@ionic/core": "6.0.0-rc.2", + "jsonc-parser": "^3.0.0", + "tslib": "^2.0.0" } }, "@ionic/angular-server": { @@ -22839,12 +22688,12 @@ } }, "@ionic/core": { - "version": "5.8.2", - "resolved": "https://registry.npmjs.org/@ionic/core/-/core-5.8.2.tgz", - "integrity": "sha512-BWIh6hyhq+tzVvebPMfRa+IhTV5/yXh4wO3a0U3Qo4PL4KDzWyBJfoiPi6bOEc+BAlFnCtOooTTXTumgXXOojg==", + "version": "6.0.0-rc.2", + "resolved": "https://registry.npmjs.org/@ionic/core/-/core-6.0.0-rc.2.tgz", + "integrity": "sha512-evf3J01B91zs386bBYz55zjG0I7BXSs/+pySkj+fDHVT/teXYntpUzebm5rqA0/IoUn6QXEdz1x3Nrz8040/Jg==", "requires": { - "@stencil/core": "^2.4.0", - "ionicons": "^5.5.3", + "@stencil/core": "~2.10.0", + "ionicons": "^5.5.4", "tslib": "^2.1.0" } }, @@ -22915,7 +22764,6 @@ "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, "requires": { "@nodelib/fs.stat": "2.0.5", "run-parallel": "^1.1.9" @@ -22924,14 +22772,12 @@ "@nodelib/fs.stat": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==" }, "@nodelib/fs.walk": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, "requires": { "@nodelib/fs.scandir": "2.1.5", "fastq": "^1.6.0" @@ -23179,9 +23025,9 @@ "dev": true }, "@stencil/core": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.8.1.tgz", - "integrity": "sha512-iv9J6oLO/lv7/aO45M05yw3pp1J7olY400vlOZgdMVs3s5zHfalY1ZPYM0KyqU4+7DZuadKYbd0aQZ/g2PInZw==" + "version": "2.10.0", + "resolved": "https://registry.npmjs.org/@stencil/core/-/core-2.10.0.tgz", + "integrity": "sha512-15rWMTPQ/sp0lSV82HVCXkIya3QLN+uBl7pqK4JnTrp4HiLrzLmNbWjbvgCs55gw0lULbCIGbRIEsFz+Pe/Q+A==" }, "@tootallnate/once": { "version": "1.1.2", @@ -23420,7 +23266,6 @@ "version": "4.28.2", "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.28.2.tgz", "integrity": "sha512-Q0gSCN51eikAgFGY+gnd5p9bhhCUAl0ERMiDKrTzpSoMYRubdB8MJrTTR/BBii8z+iFwz8oihxd0RAdP4l8w8w==", - "dev": true, "requires": { "@typescript-eslint/scope-manager": "4.28.2", "@typescript-eslint/types": "4.28.2", @@ -23432,7 +23277,6 @@ "version": "4.28.2", "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.28.2.tgz", "integrity": "sha512-MqbypNjIkJFEFuOwPWNDjq0nqXAKZvDNNs9yNseoGBB1wYfz1G0WHC2AVOy4XD7di3KCcW3+nhZyN6zruqmp2A==", - "dev": true, "requires": { "@typescript-eslint/types": "4.28.2", "@typescript-eslint/visitor-keys": "4.28.2" @@ -23441,14 +23285,12 @@ "@typescript-eslint/types": { "version": "4.28.2", "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.28.2.tgz", - "integrity": "sha512-Gr15fuQVd93uD9zzxbApz3wf7ua3yk4ZujABZlZhaxxKY8ojo448u7XTm/+ETpy0V0dlMtj6t4VdDvdc0JmUhA==", - "dev": true + "integrity": "sha512-Gr15fuQVd93uD9zzxbApz3wf7ua3yk4ZujABZlZhaxxKY8ojo448u7XTm/+ETpy0V0dlMtj6t4VdDvdc0JmUhA==" }, "@typescript-eslint/typescript-estree": { "version": "4.28.2", "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.28.2.tgz", "integrity": "sha512-86lLstLvK6QjNZjMoYUBMMsULFw0hPHJlk1fzhAVoNjDBuPVxiwvGuPQq3fsBMCxuDJwmX87tM/AXoadhHRljg==", - "dev": true, "requires": { "@typescript-eslint/types": "4.28.2", "@typescript-eslint/visitor-keys": "4.28.2", @@ -23462,14 +23304,12 @@ "array-union": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", - "dev": true + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==" }, "globby": { "version": "11.0.4", "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.4.tgz", "integrity": "sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg==", - "dev": true, "requires": { "array-union": "^2.1.0", "dir-glob": "^3.0.1", @@ -23482,14 +23322,12 @@ "tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "tsutils": { "version": "3.21.0", "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", - "dev": true, "requires": { "tslib": "^1.8.1" } @@ -23500,7 +23338,6 @@ "version": "4.28.2", "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.28.2.tgz", "integrity": "sha512-aT2B4PLyyRDUVUafXzpZFoc0C9t0za4BJAKP5sgWIhG+jHECQZUEjuQSCIwZdiJJ4w4cgu5r3Kh20SOdtEBl0w==", - "dev": true, "requires": { "@typescript-eslint/types": "4.28.2", "eslint-visitor-keys": "^2.0.0" @@ -23780,13 +23617,14 @@ "version": "1.8.0", "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz", "integrity": "sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw==", - "dev": true + "dev": true, + "requires": {} }, "acorn-jsx": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", - "dev": true + "requires": {} }, "acorn-walk": { "version": "7.2.0", @@ -23850,7 +23688,6 @@ "version": "8.6.2", "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.2.tgz", "integrity": "sha512-9807RlWAgT564wT+DjeyU5OFMPjmzxVobvDFmNAhY+5zD6A2ly3jDp6sgnfyDtlIQ+7H97oc/DGCzzfu9rjw9w==", - "dev": true, "requires": { "fast-deep-equal": "^3.1.1", "json-schema-traverse": "^1.0.0", @@ -23862,7 +23699,8 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "dev": true + "dev": true, + "requires": {} }, "ajv-formats": { "version": "2.1.0", @@ -23877,7 +23715,8 @@ "version": "3.5.2", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "dev": true + "dev": true, + "requires": {} }, "alphanum-sort": { "version": "1.0.2", @@ -23888,13 +23727,13 @@ "angular-in-memory-web-api": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/angular-in-memory-web-api/-/angular-in-memory-web-api-0.11.0.tgz", - "integrity": "sha512-QV1qYHm+Zd+wrvlcPLnAcqqGpOmCN1EUj4rRuYHpek8+QqFFdxBNuPZOJCKvU7I97z5QSKHsdc6PNKlpUQr3UA==" + "integrity": "sha512-QV1qYHm+Zd+wrvlcPLnAcqqGpOmCN1EUj4rRuYHpek8+QqFFdxBNuPZOJCKvU7I97z5QSKHsdc6PNKlpUQr3UA==", + "requires": {} }, "ansi-colors": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", - "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", - "dev": true + "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==" }, "ansi-escapes": { "version": "4.3.2", @@ -23914,14 +23753,12 @@ "ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" }, "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" } @@ -23974,7 +23811,6 @@ "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" }, @@ -23982,8 +23818,7 @@ "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", - "dev": true + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" } } }, @@ -24061,8 +23896,7 @@ "astral-regex": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "dev": true + "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==" }, "async": { "version": "3.2.1", @@ -24248,8 +24082,7 @@ "balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "dev": true + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, "base": { "version": "0.11.2", @@ -24454,7 +24287,6 @@ "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" @@ -24464,7 +24296,6 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, "requires": { "fill-range": "^7.0.1" } @@ -24763,8 +24594,7 @@ "callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" }, "camelcase": { "version": "5.3.1", @@ -24806,7 +24636,6 @@ "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, "requires": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -24863,7 +24692,8 @@ "version": "5.2.2", "resolved": "https://registry.npmjs.org/circular-dependency-plugin/-/circular-dependency-plugin-5.2.2.tgz", "integrity": "sha512-g38K9Cm5WRwlaH6g03B9OEz/0qRizI+2I7n+Gz+L5DxXJAPAiWQvwlYNm1V1jkdpUv95bOe/ASm2vfi/G560jQ==", - "dev": true + "dev": true, + "requires": {} }, "class-utils": { "version": "0.3.6", @@ -25115,7 +24945,6 @@ "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, "requires": { "color-name": "1.1.3" } @@ -25123,8 +24952,7 @@ "color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", - "dev": true + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" }, "colord": { "version": "2.8.0", @@ -25239,8 +25067,7 @@ "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" }, "concat-stream": { "version": "1.6.2", @@ -25544,7 +25371,6 @@ "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, "requires": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -26216,7 +26042,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", - "dev": true, "requires": { "path-type": "^4.0.0" } @@ -26256,7 +26081,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, "requires": { "esutils": "^2.0.2" } @@ -26375,8 +26199,7 @@ "emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, "emojis-list": { "version": "3.0.0", @@ -26453,7 +26276,8 @@ "version": "7.4.6", "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", - "dev": true + "dev": true, + "requires": {} } } }, @@ -26495,7 +26319,8 @@ "version": "7.4.6", "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", - "dev": true + "dev": true, + "requires": {} } } }, @@ -26527,7 +26352,6 @@ "version": "2.3.6", "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", - "dev": true, "requires": { "ansi-colors": "^4.1.1" } @@ -26601,8 +26425,7 @@ "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=", - "dev": true + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" }, "escodegen": { "version": "2.0.0", @@ -26628,7 +26451,6 @@ "version": "7.32.0", "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", - "dev": true, "requires": { "@babel/code-frame": "7.12.11", "@eslint/eslintrc": "^0.4.3", @@ -26676,7 +26498,6 @@ "version": "7.12.11", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", - "dev": true, "requires": { "@babel/highlight": "^7.10.4" } @@ -26685,7 +26506,6 @@ "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "dev": true, "requires": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -26697,7 +26517,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, "requires": { "color-convert": "^2.0.1" } @@ -26706,7 +26525,6 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -26716,7 +26534,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, "requires": { "color-name": "~1.1.4" } @@ -26724,20 +26541,17 @@ "color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==" }, "eslint-utils": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", - "dev": true, "requires": { "eslint-visitor-keys": "^1.1.0" }, @@ -26745,8 +26559,7 @@ "eslint-visitor-keys": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==" } } }, @@ -26754,7 +26567,6 @@ "version": "13.11.0", "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", - "dev": true, "requires": { "type-fest": "^0.20.2" } @@ -26762,26 +26574,22 @@ "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" }, "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 + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" }, "levn": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", - "dev": true, "requires": { "prelude-ls": "^1.2.1", "type-check": "~0.4.0" @@ -26791,7 +26599,6 @@ "version": "0.9.1", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", - "dev": true, "requires": { "deep-is": "^0.1.3", "fast-levenshtein": "^2.0.6", @@ -26804,14 +26611,12 @@ "prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==" }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, "requires": { "has-flag": "^4.0.0" } @@ -26820,7 +26625,6 @@ "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, "requires": { "prelude-ls": "^1.2.1" } @@ -26828,8 +26632,7 @@ "type-fest": { "version": "0.20.2", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==" } } }, @@ -26837,7 +26640,6 @@ "version": "5.1.1", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, "requires": { "esrecurse": "^4.3.0", "estraverse": "^4.1.1" @@ -26846,8 +26648,7 @@ "estraverse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" } } }, @@ -26863,14 +26664,12 @@ "eslint-visitor-keys": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "dev": true + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==" }, "espree": { "version": "7.3.1", "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", - "dev": true, "requires": { "acorn": "^7.4.0", "acorn-jsx": "^5.3.1", @@ -26880,14 +26679,12 @@ "acorn": { "version": "7.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==" }, "eslint-visitor-keys": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "dev": true + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==" } } }, @@ -26900,7 +26697,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", - "dev": true, "requires": { "estraverse": "^5.1.0" } @@ -26909,7 +26705,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, "requires": { "estraverse": "^5.2.0" } @@ -27352,14 +27147,12 @@ "fast-deep-equal": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" }, "fast-glob": { "version": "3.2.7", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.7.tgz", "integrity": "sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q==", - "dev": true, "requires": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", @@ -27371,8 +27164,7 @@ "fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", - "dev": true + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" }, "fast-levenshtein": { "version": "2.0.6", @@ -27383,7 +27175,6 @@ "version": "1.13.0", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.13.0.tgz", "integrity": "sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", - "dev": true, "requires": { "reusify": "^1.0.4" } @@ -27420,7 +27211,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dev": true, "requires": { "flat-cache": "^3.0.4" } @@ -27445,7 +27235,6 @@ "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, "requires": { "to-regex-range": "^5.0.1" } @@ -27636,7 +27425,6 @@ "version": "3.0.4", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", - "dev": true, "requires": { "flatted": "^3.1.0", "rimraf": "^3.0.2" @@ -27645,8 +27433,7 @@ "flatted": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", - "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", - "dev": true + "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==" }, "flatten": { "version": "1.0.3", @@ -27731,8 +27518,7 @@ "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "fsevents": { "version": "2.3.2", @@ -27750,8 +27536,7 @@ "functional-red-black-tree": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=" }, "gauge": { "version": "2.7.4", @@ -27866,7 +27651,6 @@ "version": "7.1.7", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", - "dev": true, "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -27880,7 +27664,6 @@ "version": "5.1.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, "requires": { "is-glob": "^4.0.1" } @@ -28073,8 +27856,7 @@ "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" }, "has-symbols": { "version": "1.0.2", @@ -28333,8 +28115,7 @@ "ignore": { "version": "5.1.8", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", - "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", - "dev": true + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==" }, "ignore-walk": { "version": "3.0.4", @@ -28362,7 +28143,6 @@ "version": "3.3.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, "requires": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" @@ -28371,8 +28151,7 @@ "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 + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==" } } }, @@ -28434,8 +28213,7 @@ "imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=" }, "indent-string": { "version": "3.2.0", @@ -28465,7 +28243,6 @@ "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" @@ -28615,11 +28392,11 @@ "dev": true }, "ionicons": { - "version": "5.5.3", - "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-5.5.3.tgz", - "integrity": "sha512-L71djrMi8pAad66tpwdnO1vwcyluCFvehzxU1PpH1k/HpYBZhZ5IaYhqXipmqUvu5aEbd4cbRguYyI5Fd4bxTw==", + "version": "5.5.4", + "resolved": "https://registry.npmjs.org/ionicons/-/ionicons-5.5.4.tgz", + "integrity": "sha512-3ph8X9my3inhabWEZ7N0XRA0MnnNQ1v9a602mLNgWsIXnxE9G5BybIZ/pws/OZZ/hoNlvSjk801N03yL9/FNgQ==", "requires": { - "@stencil/core": "^2.5.0" + "@stencil/core": "~2.10.0" } }, "ip": { @@ -28750,20 +28527,17 @@ "is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=" }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" }, "is-glob": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, "requires": { "is-extglob": "^2.1.1" } @@ -28793,8 +28567,7 @@ "is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" }, "is-number-like": { "version": "1.0.8", @@ -28944,8 +28717,7 @@ "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" }, "isobject": { "version": "3.0.1", @@ -29049,14 +28821,12 @@ "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 + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" }, "js-yaml": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, "requires": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -29151,14 +28921,12 @@ "json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", - "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", - "dev": true + "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==" }, "json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=" }, "json-stringify-safe": { "version": "5.0.1", @@ -29184,8 +28952,7 @@ "jsonc-parser": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.0.0.tgz", - "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==", - "dev": true + "integrity": "sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==" }, "jsonfile": { "version": "3.0.1", @@ -29572,8 +29339,7 @@ "lodash.clonedeep": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=" }, "lodash.debounce": { "version": "4.0.8", @@ -29596,8 +29362,7 @@ "lodash.merge": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", - "dev": true + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" }, "lodash.once": { "version": "4.1.1", @@ -29608,8 +29373,7 @@ "lodash.truncate": { "version": "4.4.2", "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", - "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", - "dev": true + "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=" }, "lodash.uniq": { "version": "4.5.0", @@ -29741,7 +29505,6 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, "requires": { "yallist": "^4.0.0" } @@ -29905,8 +29668,7 @@ "merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==" }, "methods": { "version": "1.1.2", @@ -29917,7 +29679,6 @@ "version": "4.0.4", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", - "dev": true, "requires": { "braces": "^3.0.1", "picomatch": "^2.2.3" @@ -29957,7 +29718,6 @@ "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" } @@ -30141,8 +29901,7 @@ "natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=" }, "needle": { "version": "2.9.1", @@ -30543,7 +30302,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, "requires": { "wrappy": "1" } @@ -30803,7 +30561,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, "requires": { "callsites": "^3.0.0" } @@ -30902,8 +30659,7 @@ "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=", - "dev": true + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" }, "path-is-inside": { "version": "1.0.2", @@ -30914,8 +30670,7 @@ "path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" }, "path-parse": { "version": "1.0.7", @@ -30931,8 +30686,7 @@ "path-type": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" }, "pend": { "version": "1.2.0", @@ -30955,8 +30709,7 @@ "picomatch": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", - "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", - "dev": true + "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==" }, "pify": { "version": "2.3.0", @@ -32017,8 +31770,7 @@ "progress": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==" }, "promise-inflight": { "version": "1.0.1", @@ -32092,8 +31844,7 @@ "queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" }, "ramda": { "version": "0.27.1", @@ -32250,8 +32001,7 @@ "regexpp": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", - "dev": true + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==" }, "regexpu-core": { "version": "4.8.0", @@ -32368,8 +32118,7 @@ "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 + "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==" }, "require-main-filename": { "version": "2.0.0", @@ -32556,14 +32305,12 @@ "reusify": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", - "dev": true + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==" }, "rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, "requires": { "glob": "^7.1.3" } @@ -32578,7 +32325,6 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", - "dev": true, "requires": { "queue-microtask": "^1.2.2" } @@ -32608,7 +32354,8 @@ "version": "0.0.2", "resolved": "https://registry.npmjs.org/rxjs-for-await/-/rxjs-for-await-0.0.2.tgz", "integrity": "sha512-IJ8R/ZCFMHOcDIqoABs82jal00VrZx8Xkgfe7TOKoaRPAW5nH/VFlG23bXpeGdrmtqI9UobFPgUKgCuFc7Lncw==", - "dev": true + "dev": true, + "requires": {} }, "safe-buffer": { "version": "5.1.2", @@ -32702,7 +32449,6 @@ "version": "7.3.5", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", - "dev": true, "requires": { "lru-cache": "^6.0.0" } @@ -32917,7 +32663,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - "dev": true, "requires": { "shebang-regex": "^3.0.0" } @@ -32925,8 +32670,7 @@ "shebang-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - "dev": true + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" }, "signal-exit": { "version": "3.0.5", @@ -32937,8 +32681,7 @@ "slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" }, "slice-ansi": { "version": "0.0.4", @@ -33560,7 +33303,6 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -33571,7 +33313,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, "requires": { "ansi-regex": "^5.0.1" } @@ -33591,8 +33332,7 @@ "strip-json-comments": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==" }, "stylus": { "version": "0.54.8", @@ -33637,7 +33377,6 @@ "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" } @@ -33680,7 +33419,6 @@ "version": "6.7.2", "resolved": "https://registry.npmjs.org/table/-/table-6.7.2.tgz", "integrity": "sha512-UFZK67uvyNivLeQbVtkiUs8Uuuxv24aSL4/Vil2PJVtMgU8Lx0CYkP12uCGa3kjyQzOSgV1+z9Wkb82fCGsO0g==", - "dev": true, "requires": { "ajv": "^8.0.1", "lodash.clonedeep": "^4.5.0", @@ -33694,7 +33432,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, "requires": { "color-convert": "^2.0.1" } @@ -33703,7 +33440,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, "requires": { "color-name": "~1.1.4" } @@ -33711,14 +33447,12 @@ "color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "slice-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - "dev": true, "requires": { "ansi-styles": "^4.0.0", "astral-regex": "^2.0.0", @@ -33876,8 +33610,7 @@ "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 + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=" }, "tfunk": { "version": "4.0.0", @@ -34012,7 +33745,6 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, "requires": { "is-number": "^7.0.0" } @@ -34152,13 +33884,13 @@ "typescript": { "version": "4.3.5", "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.3.5.tgz", - "integrity": "sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA==", - "dev": true + "integrity": "sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA==" }, "typescript-eslint-language-service": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/typescript-eslint-language-service/-/typescript-eslint-language-service-4.1.5.tgz", - "integrity": "sha512-lJ9tH53m8e8fYYwhG5hTpiUHCz4SjY55rT8T4ADrmF/29JPdWkUik8cbZy+KsCsUIG1CEMRz+DOV4S+wVyYivQ==" + "integrity": "sha512-lJ9tH53m8e8fYYwhG5hTpiUHCz4SjY55rT8T4ADrmF/29JPdWkUik8cbZy+KsCsUIG1CEMRz+DOV4S+wVyYivQ==", + "requires": {} }, "ua-parser-js": { "version": "0.7.28", @@ -34310,7 +34042,6 @@ "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", - "dev": true, "requires": { "punycode": "^2.1.0" } @@ -34375,8 +34106,7 @@ "v8-compile-cache": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", - "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", - "dev": true + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==" }, "validate-npm-package-name": { "version": "3.0.0", @@ -35495,7 +35225,6 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, "requires": { "isexe": "^2.0.0" } @@ -35605,13 +35334,13 @@ "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, "ws": { "version": "7.5.5", "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.5.tgz", - "integrity": "sha512-BAkMFcAzl8as1G/hArkxOxq3G7pjUqQ3gzYbLL0/5zNkph70e+lCoxBGnm6AW1+/aiNeV4fnKqZ8m4GZewmH2w==" + "integrity": "sha512-BAkMFcAzl8as1G/hArkxOxq3G7pjUqQ3gzYbLL0/5zNkph70e+lCoxBGnm6AW1+/aiNeV4fnKqZ8m4GZewmH2w==", + "requires": {} }, "xhr2": { "version": "0.2.1", @@ -35643,8 +35372,7 @@ "yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "yaml": { "version": "1.10.2", diff --git a/angular/test/test-app/package.json b/angular/test/test-app/package.json index 8923ddaba8b..548b2672253 100644 --- a/angular/test/test-app/package.json +++ b/angular/test/test-app/package.json @@ -29,7 +29,7 @@ "@angular/platform-browser-dynamic": "^12.2.8", "@angular/platform-server": "^12.2.8", "@angular/router": "^12.2.8", - "@ionic/angular": "^5.3.1", + "@ionic/angular": "^6.0.0-rc.2", "@ionic/angular-server": "^5.3.1", "@nguniversal/express-engine": "^12.1.1", "angular-in-memory-web-api": "^0.11.0", diff --git a/angular/test/test-app/scripts/sync.sh b/angular/test/test-app/scripts/sync.sh index c71695a7234..fc8ae7ba265 100644 --- a/angular/test/test-app/scripts/sync.sh +++ b/angular/test/test-app/scripts/sync.sh @@ -11,8 +11,7 @@ rm -rf node_modules/@ionic/core mkdir node_modules/@ionic/core cp -a ../../../core/css node_modules/@ionic/core/css cp -a ../../../core/dist node_modules/@ionic/core/dist -cp -a ../../../core/hydrate node_modules/@ionic/core/hydrate -cp -a ../../../core/loader node_modules/@ionic/core/loader +cp -a ../../../core/components node_modules/@ionic/core/components cp -a ../../../core/package.json node_modules/@ionic/core/package.json # # Copy ionicons diff --git a/core/package-lock.json b/core/package-lock.json index dba1e4f08c6..3da65b54cd1 100644 --- a/core/package-lock.json +++ b/core/package-lock.json @@ -18,7 +18,7 @@ "@jest/core": "^26.6.3", "@rollup/plugin-node-resolve": "^8.4.0", "@rollup/plugin-virtual": "^2.0.3", - "@stencil/angular-output-target": "^0.2.0", + "@stencil/angular-output-target": "file:stencil-angular-output-target-0.3.0.tgz", "@stencil/react-output-target": "^0.1.0", "@stencil/sass": "1.3.2", "@stencil/vue-output-target": "^0.5.1", @@ -1358,10 +1358,11 @@ } }, "node_modules/@stencil/angular-output-target": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@stencil/angular-output-target/-/angular-output-target-0.2.0.tgz", - "integrity": "sha512-Ptr5vigf8v+EnF9Y9LXTKimcVPfB9arC5FnSuKt5ZdNQ8IATWGLx4fhoD2/LThhkPwG9QtjDj9A4GPidu0Fomg==", - "dev": true + "version": "0.3.0", + "resolved": "file:stencil-angular-output-target-0.3.0.tgz", + "integrity": "sha512-2qtgB7v0iJb8lBrHhW28IB493oySrRjb/ICieTNkTZ3ED1Z6eWEgu0K/pv2l3sTkVUcd0n0bRZNZtyqhzRJYRw==", + "dev": true, + "license": "MIT" }, "node_modules/@stencil/core": { "version": "2.11.0-0", @@ -15037,9 +15038,8 @@ } }, "@stencil/angular-output-target": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/@stencil/angular-output-target/-/angular-output-target-0.2.0.tgz", - "integrity": "sha512-Ptr5vigf8v+EnF9Y9LXTKimcVPfB9arC5FnSuKt5ZdNQ8IATWGLx4fhoD2/LThhkPwG9QtjDj9A4GPidu0Fomg==", + "version": "file:stencil-angular-output-target-0.3.0.tgz", + "integrity": "sha512-2qtgB7v0iJb8lBrHhW28IB493oySrRjb/ICieTNkTZ3ED1Z6eWEgu0K/pv2l3sTkVUcd0n0bRZNZtyqhzRJYRw==", "dev": true }, "@stencil/core": { @@ -15051,7 +15051,8 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/@stencil/react-output-target/-/react-output-target-0.1.0.tgz", "integrity": "sha512-NWeN2S43dwWDIousfojzGXIMkJJhfcdS1JxpwgE7IOqy4tZ+nqlDLPhM6tXvZ3eq4rJm8bkF+3/WbPJNR9xR7Q==", - "dev": true + "dev": true, + "requires": {} }, "@stencil/sass": { "version": "1.3.2", @@ -15063,7 +15064,8 @@ "version": "0.5.1", "resolved": "https://registry.npmjs.org/@stencil/vue-output-target/-/vue-output-target-0.5.1.tgz", "integrity": "sha512-E9HeuUf4DjHO8VFd+faR6T+/JwLtU/2kIA000YTTv0ARPUXuxr/3+U3YMBRPCVFPC5n2jsFxU3E9rTmVH1MGyg==", - "dev": true + "dev": true, + "requires": {} }, "@stylelint/postcss-css-in-js": { "version": "0.37.2", diff --git a/core/package.json b/core/package.json index 6c06bfa2403..44a16c2fc6c 100644 --- a/core/package.json +++ b/core/package.json @@ -40,7 +40,7 @@ "@jest/core": "^26.6.3", "@rollup/plugin-node-resolve": "^8.4.0", "@rollup/plugin-virtual": "^2.0.3", - "@stencil/angular-output-target": "^0.2.0", + "@stencil/angular-output-target": "file:stencil-angular-output-target-0.3.0.tgz", "@stencil/react-output-target": "^0.1.0", "@stencil/sass": "1.3.2", "@stencil/vue-output-target": "^0.5.1", diff --git a/core/src/global/ionic-global.ts b/core/src/global/ionic-global.ts index ac3ac4fd4b4..fd71dee46d3 100644 --- a/core/src/global/ionic-global.ts +++ b/core/src/global/ionic-global.ts @@ -31,6 +31,12 @@ export const initialize = (userConfig: IonicConfig = {}) => { if (userConfig._ce) { platformHelpers.ce = userConfig._ce; } + if (userConfig._raf) { + platformHelpers.raf = userConfig._raf; + } + if (userConfig._jmp) { + platformHelpers.jmp = userConfig._jmp; + } setPlatformHelpers(platformHelpers); // create the Ionic.config from raw config object (if it exists) diff --git a/core/src/utils/config.ts b/core/src/utils/config.ts index 944bc7cfdae..87a500b9a4c 100644 --- a/core/src/utils/config.ts +++ b/core/src/utils/config.ts @@ -198,6 +198,8 @@ export interface IonicConfig { _ael?: (el: any, name: string, cb: any, opts: any) => any; _rel?: (el: any, name: string, cb: any, opts: any) => any; _ce?: (eventName: string, opts: any) => any; + _raf?: (h: any) => any; + _jmp?: (h: any) => any; } export const setupConfig = (config: IonicConfig) => { diff --git a/core/stencil-angular-output-target-0.3.0.tgz b/core/stencil-angular-output-target-0.3.0.tgz new file mode 100644 index 00000000000..82cf2f1df4d Binary files /dev/null and b/core/stencil-angular-output-target-0.3.0.tgz differ diff --git a/core/stencil.config.ts b/core/stencil.config.ts index d6ea5b3c22b..ac4a61c3564 100644 --- a/core/stencil.config.ts +++ b/core/stencil.config.ts @@ -185,6 +185,7 @@ export const config: Config = { // }, angularOutputTarget({ componentCorePackage: '@ionic/core', + includeImportCustomElements: true, directivesProxyFile: '../angular/src/directives/proxies.ts', directivesArrayFile: '../angular/src/directives/proxies-list.txt', excludeComponents: [ @@ -211,7 +212,9 @@ export const config: Config = { // auxiliar 'ion-picker-column', - 'ion-virtual-scroll' + 'ion-virtual-scroll', + + 'ion-icon' ], /** * TODO: Abstract custom Ionic value accessor functionality