diff --git a/NOTICE.txt b/NOTICE.txt index 1aa5c3211f..cbea104abc 100644 --- a/NOTICE.txt +++ b/NOTICE.txt @@ -2956,41 +2956,6 @@ SOFTWARE. --- -## rn-fetch-blob - -This product contains a modified version of 'rn-fetch-blob' by Joltup. - -A module provides upload, download, and files access API. Supports file stream read/write for process large files. - -* HOMEPAGE: - * https://github.com/joltup/rn-fetch-blob#readme - -* LICENSE: MIT - -MIT License - -Copyright (c) 2017 xeiyan@gmail.com - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. - ---- - ## rn-placeholder This product contains a modified version of 'rn-placeholder' by Marvin FRACHET. diff --git a/app/actions/local/timezone.ts b/app/actions/local/timezone.ts index e2081aba3d..f62d00bc3f 100644 --- a/app/actions/local/timezone.ts +++ b/app/actions/local/timezone.ts @@ -17,7 +17,7 @@ export function getDeviceTimezone() { return getTimeZone(); } -export const autoUpdateTimezone = async (serverUrl: string, {deviceTimezone, userId}: {deviceTimezone: string, userId: string}) => { +export const autoUpdateTimezone = async (serverUrl: string, {deviceTimezone, userId}: {deviceTimezone: string; userId: string}) => { const database = DatabaseManager.serverDatabases[serverUrl].database; if (!database) { return {error: `No database present for ${serverUrl}`}; diff --git a/app/actions/remote/push_notification.ts b/app/actions/remote/push_notification.ts index 8139ddbc1c..fc33844c29 100644 --- a/app/actions/remote/push_notification.ts +++ b/app/actions/remote/push_notification.ts @@ -20,7 +20,7 @@ const sortByNewest = (a: Session, b: Session) => { export const scheduleExpiredNotification = async (serverUrl: string, intl: IntlShape) => { const database = DatabaseManager.serverDatabases[serverUrl].database; - const {currentUserId, config}: {currentUserId: string, config: Partial} = await queryCommonSystemValues(database); + const {currentUserId, config}: {currentUserId: string; config: Partial} = await queryCommonSystemValues(database); if (config.ExtendSessionLengthWithActivity === 'true') { PushNotifications.cancelAllLocalNotifications(); diff --git a/app/actions/remote/user.ts b/app/actions/remote/user.ts index 94097c2d88..78cf1cdb27 100644 --- a/app/actions/remote/user.ts +++ b/app/actions/remote/user.ts @@ -24,8 +24,8 @@ import type Role from '@typings/database/models/servers/role'; import type User from '@typings/database/models/servers/user'; type LoadedUser = { - currentUser?: RawUser, - error?: Client4Error + currentUser?: RawUser; + error?: Client4Error; } const HTTP_UNAUTHORIZED = 401; @@ -36,7 +36,7 @@ export const completeLogin = async (serverUrl: string, user: RawUser) => { return {error: `${serverUrl} database not found`}; } - const {config, license}: { config: Partial; license: Partial; } = await queryCommonSystemValues(database); + const {config, license}: { config: Partial; license: Partial } = await queryCommonSystemValues(database); if (!Object.keys(config)?.length || !Object.keys(license)?.length) { return null; diff --git a/app/client/rest/channels.ts b/app/client/rest/channels.ts index 8fd1b95947..1e2036c8a6 100644 --- a/app/client/rest/channels.ts +++ b/app/client/rest/channels.ts @@ -16,7 +16,7 @@ export interface ClientChannelsMix { convertChannelToPrivate: (channelId: string) => Promise; updateChannelPrivacy: (channelId: string, privacy: any) => Promise; patchChannel: (channelId: string, channelPatch: Partial) => Promise; - updateChannelNotifyProps: (props: ChannelNotifyProps & {channel_id: string, user_id: string}) => Promise; + updateChannelNotifyProps: (props: ChannelNotifyProps & {channel_id: string; user_id: string}) => Promise; getChannel: (channelId: string) => Promise; getChannelByName: (teamId: string, channelName: string, includeDeleted?: boolean) => Promise; getChannelByNameAndTeamName: (teamName: string, channelName: string, includeDeleted?: boolean) => Promise; @@ -136,7 +136,7 @@ const ClientChannels = (superclass: any) => class extends superclass { ); }; - updateChannelNotifyProps = async (props: ChannelNotifyProps & {channel_id: string, user_id: string}) => { + updateChannelNotifyProps = async (props: ChannelNotifyProps & {channel_id: string; user_id: string}) => { this.analytics.trackAPI('api_users_update_channel_notifications', {channel_id: props.channel_id}); return this.doFetch( diff --git a/app/client/rest/users.ts b/app/client/rest/users.ts index c5aae2b608..e151fc1203 100644 --- a/app/client/rest/users.ts +++ b/app/client/rest/users.ts @@ -33,7 +33,7 @@ export interface ClientUsersMix { getUserByEmail: (email: string) => Promise; getProfilePictureUrl: (userId: string, lastPictureUpdate: number) => string; getDefaultProfilePictureUrl: (userId: string) => string; - autocompleteUsers: (name: string, teamId: string, channelId: string, options?: Record) => Promise<{users: UserProfile[], out_of_channel?: UserProfile[]}>; + autocompleteUsers: (name: string, teamId: string, channelId: string, options?: Record) => Promise<{users: UserProfile[]; out_of_channel?: UserProfile[]}>; getSessions: (userId: string) => Promise; checkUserMfa: (loginId: string) => Promise<{mfa_required: boolean}>; attachDevice: (deviceId: string) => Promise; diff --git a/app/components/error_text/index.tsx b/app/components/error_text/index.tsx index 48e3c7c71f..8290166102 100644 --- a/app/components/error_text/index.tsx +++ b/app/components/error_text/index.tsx @@ -13,7 +13,7 @@ export type ClientErrorWithIntl = ClientError & {intl: {values?: Record | StyleProp + textStyle?: StyleProp | StyleProp; theme: Theme; } diff --git a/app/components/formatted_text/index.tsx b/app/components/formatted_text/index.tsx index 053fc985ba..291d3a5bcc 100644 --- a/app/components/formatted_text/index.tsx +++ b/app/components/formatted_text/index.tsx @@ -10,7 +10,7 @@ type FormattedTextProps = { defaultMessage: string; values?: Record; testID?: string; - style?: StyleProp | StyleProp + style?: StyleProp | StyleProp; } const FormattedText = (props: FormattedTextProps) => { diff --git a/app/components/loading/index.tsx b/app/components/loading/index.tsx index 4fcb96b509..4baed450d0 100644 --- a/app/components/loading/index.tsx +++ b/app/components/loading/index.tsx @@ -5,9 +5,9 @@ import React from 'react'; import {ActivityIndicator, StyleSheet, View, ViewStyle} from 'react-native'; type LoadingProps = { - color?: string, - size?: 'small' | 'large', - style?: ViewStyle, + color?: string; + size?: 'small' | 'large'; + style?: ViewStyle; } const Loading = ({size = 'large', color = 'grey', style}: LoadingProps) => { diff --git a/app/components/loading/loading.stories.tsx b/app/components/loading/loading.stories.tsx deleted file mode 100644 index c4af994a48..0000000000 --- a/app/components/loading/loading.stories.tsx +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. -// See LICENSE.txt for license information. -import React from 'react'; - -import {storiesOf} from '@storybook/react-native'; -import {withKnobs, select} from '@storybook/addon-knobs'; - -import Loading from './index'; - -storiesOf('Loading Icon Story', module). - addDecorator(withKnobs). - add('loading icon', () => ( - - )); diff --git a/app/database/exceptions/data_operator_exception.ts b/app/database/exceptions/data_operator_exception.ts index 42e3626394..5e3ac68e1f 100644 --- a/app/database/exceptions/data_operator_exception.ts +++ b/app/database/exceptions/data_operator_exception.ts @@ -5,7 +5,7 @@ * DataOperatorException: This exception can be used whenever an issue arises at the operator level. For example, if a required field is missing. */ class DataOperatorException extends Error { - error : Error | undefined; + error: Error | undefined; constructor(message: string, error?: Error) { super(message); this.name = 'DatabaseOperatorException'; diff --git a/app/database/manager/index.ts b/app/database/manager/index.ts index a9b466aa07..10083953f3 100644 --- a/app/database/manager/index.ts +++ b/app/database/manager/index.ts @@ -5,6 +5,7 @@ import {Database, Q} from '@nozbe/watermelondb'; import SQLiteAdapter, {MigrationEvents} from '@nozbe/watermelondb/adapters/sqlite'; import logger from '@nozbe/watermelondb/utils/common/logger'; import {DeviceEventEmitter, Platform} from 'react-native'; +import DeviceInfo from 'react-native-device-info'; import {FileSystem} from 'react-native-unimodules'; import urlParse from 'url-parse'; @@ -64,6 +65,14 @@ class DatabaseManager { for await (const serverUrl of serverUrls) { await this.initServerDatabase(serverUrl); } + this.appDatabase?.operator.handleInfo({ + info: [{ + build_number: DeviceInfo.getBuildNumber(), + created_at: Date.now(), + version_number: DeviceInfo.getVersion(), + }], + prepareRecordsOnly: false, + }); }; /** diff --git a/app/database/operator/base_data_operator/index.ts b/app/database/operator/base_data_operator/index.ts index aee4b7955a..39a51c9e9f 100644 --- a/app/database/operator/base_data_operator/index.ts +++ b/app/database/operator/base_data_operator/index.ts @@ -48,7 +48,7 @@ export default class BaseDataOperator { * @returns {Promise<{ProcessRecordResults}>} */ processRecords = async ({createOrUpdateRawValues, deleteRawValues = [], tableName, findMatchingRecordBy, fieldName}: ProcessRecordsArgs): Promise => { - const getRecords = async (rawValues : RawValue[]) => { + const getRecords = async (rawValues: RawValue[]) => { // We will query a table where one of its fields can match a range of values. Hence, here we are extracting all those potential values. const columnValues: string[] = getRangeOfValues({fieldName, raws: rawValues}); @@ -81,7 +81,7 @@ export default class BaseDataOperator { const createOrUpdateRaws = await getRecords(createOrUpdateRawValues); if (createOrUpdateRawValues.length > 0) { createOrUpdateRawValues.forEach((newElement: RawValue) => { - const findIndex = createOrUpdateRaws.findIndex((existing) => { + const findIndex = createOrUpdateRaws.findIndex((existing: Model) => { return findMatchingRecordBy(existing, newElement); }); @@ -128,7 +128,7 @@ export default class BaseDataOperator { throw new DataOperatorException('Database not defined'); } - let preparedRecords: Promise[] = []; + let preparedRecords: Array> = []; // create operation if (createRaws?.length) { diff --git a/app/database/operator/server_data_operator/handlers/group.ts b/app/database/operator/server_data_operator/handlers/group.ts index 009031163b..5849f1f177 100644 --- a/app/database/operator/server_data_operator/handlers/group.ts +++ b/app/database/operator/server_data_operator/handlers/group.ts @@ -35,10 +35,10 @@ const { } = MM_TABLES.SERVER; export interface GroupHandlerMix { - handleGroupMembership : ({groupMemberships, prepareRecordsOnly}: HandleGroupMembershipArgs) => GroupMembership[] | boolean, - handleGroup : ({groups, prepareRecordsOnly}: HandleGroupArgs) => Group[] | boolean, - handleGroupsInTeam : ({groupsInTeams, prepareRecordsOnly} : HandleGroupsInTeamArgs) => GroupsInTeam[] | boolean, - handleGroupsInChannel : ({groupsInChannels, prepareRecordsOnly}: HandleGroupsInChannelArgs) => GroupsInChannel[] | boolean + handleGroupMembership: ({groupMemberships, prepareRecordsOnly}: HandleGroupMembershipArgs) => GroupMembership[] | boolean; + handleGroup: ({groups, prepareRecordsOnly}: HandleGroupArgs) => Group[] | boolean; + handleGroupsInTeam: ({groupsInTeams, prepareRecordsOnly}: HandleGroupsInTeamArgs) => GroupsInTeam[] | boolean; + handleGroupsInChannel: ({groupsInChannels, prepareRecordsOnly}: HandleGroupsInChannelArgs) => GroupsInChannel[] | boolean; } const GroupHandler = (superclass: any) => class extends superclass { @@ -112,7 +112,7 @@ const GroupHandler = (superclass: any) => class extends superclass { * @throws DataOperatorException * @returns {GroupsInTeam[]} */ - handleGroupsInTeam = async ({groupsInTeams, prepareRecordsOnly = true} : HandleGroupsInTeamArgs) => { + handleGroupsInTeam = async ({groupsInTeams, prepareRecordsOnly = true}: HandleGroupsInTeamArgs) => { let records: GroupsInTeam[] = []; if (!groupsInTeams.length) { diff --git a/app/database/operator/server_data_operator/handlers/post.ts b/app/database/operator/server_data_operator/handlers/post.ts index a78111f669..0d21a850d2 100644 --- a/app/database/operator/server_data_operator/handlers/post.ts +++ b/app/database/operator/server_data_operator/handlers/post.ts @@ -49,7 +49,7 @@ const { } = MM_TABLES.SERVER; export interface PostHandlerMix { - handleDraft: ({drafts, prepareRecordsOnly}: HandleDraftArgs) => Draft[] | boolean + handleDraft: ({drafts, prepareRecordsOnly}: HandleDraftArgs) => Draft[] | boolean; handleFiles: ({files, prepareRecordsOnly}: HandleFilesArgs) => Promise; handlePostMetadata: ({embeds, images, prepareRecordsOnly}: HandlePostMetadataArgs) => Promise; handlePosts: ({orders, values, previousPostId}: HandlePostsArgs) => Promise; @@ -132,8 +132,8 @@ const PostHandler = (superclass: any) => class extends superclass { const postsInThread = []; let reactions: RawReaction[] = []; let emojis: RawCustomEmoji[] = []; - const images: { images: Dictionary; postId: string }[] = []; - const embeds: { embed: RawEmbed[]; postId: string }[] = []; + const images: Array<{ images: Dictionary; postId: string }> = []; + const embeds: Array<{ embed: RawEmbed[]; postId: string }> = []; // We create the 'chain of posts' by linking each posts' previousId to the post before it in the order array const linkedRawPosts: RecordPair[] = createPostsChain({ diff --git a/app/database/operator/server_data_operator/handlers/user.ts b/app/database/operator/server_data_operator/handlers/user.ts index 1418aeca7c..127d9e1ce2 100644 --- a/app/database/operator/server_data_operator/handlers/user.ts +++ b/app/database/operator/server_data_operator/handlers/user.ts @@ -39,10 +39,10 @@ const { } = MM_TABLES.SERVER; export interface UserHandlerMix { - handleChannelMembership : ({channelMemberships, prepareRecordsOnly}: HandleChannelMembershipArgs) => Promise; - handlePreferences : ({preferences, prepareRecordsOnly}: HandlePreferencesArgs) => Promise; - handleReactions : ({reactions, prepareRecordsOnly}: HandleReactionsArgs) => Promise<(Reaction | CustomEmoji)[]>; - handleUsers : ({users, prepareRecordsOnly}: HandleUsersArgs) => Promise; + handleChannelMembership: ({channelMemberships, prepareRecordsOnly}: HandleChannelMembershipArgs) => Promise; + handlePreferences: ({preferences, prepareRecordsOnly}: HandlePreferencesArgs) => Promise; + handleReactions: ({reactions, prepareRecordsOnly}: HandleReactionsArgs) => Promise>; + handleUsers: ({users, prepareRecordsOnly}: HandleUsersArgs) => Promise; } const UserHandler = (superclass: any) => class extends superclass { @@ -117,7 +117,7 @@ const UserHandler = (superclass: any) => class extends superclass { * @returns {Promise<(Reaction| CustomEmoji)[]>} */ handleReactions = async ({reactions, prepareRecordsOnly}: HandleReactionsArgs) => { - let batchRecords: (Reaction| CustomEmoji)[] = []; + let batchRecords: Array = []; if (!reactions.length) { throw new DataOperatorException( diff --git a/app/database/operator/utils/general.ts b/app/database/operator/utils/general.ts index eff819093c..3bfdcee78b 100644 --- a/app/database/operator/utils/general.ts +++ b/app/database/operator/utils/general.ts @@ -88,7 +88,7 @@ export const getRawRecordPairs = (raws: any[]): RecordPair[] => { * @param {RawValue[]} raws * @param {string} key */ -export const getUniqueRawsBy = ({raws, key}:{ raws: RawValue[], key: string}) => { +export const getUniqueRawsBy = ({raws, key}: { raws: RawValue[]; key: string}) => { return [...new Map(raws.map((item) => { const curItemKey = item[key as keyof typeof item]; return [curItemKey, item]; diff --git a/app/init/global_event_handler.ts b/app/init/global_event_handler.ts index 7caf1f848c..2f5b5ce818 100644 --- a/app/init/global_event_handler.ts +++ b/app/init/global_event_handler.ts @@ -102,7 +102,7 @@ class GlobalEventHandler { relaunchApp({launchType: LaunchType.Normal}, true); }; - onServerConfigChanged = ({serverUrl, config}: {serverUrl: string, config: ClientConfig}) => { + onServerConfigChanged = ({serverUrl, config}: {serverUrl: string; config: ClientConfig}) => { this.configureAnalytics(serverUrl, config); if (config.ExtendSessionLengthWithActivity === 'true') { @@ -110,7 +110,7 @@ class GlobalEventHandler { } }; - onServerVersionChanged = async ({serverUrl, serverVersion}: {serverUrl: string, serverVersion?: string}) => { + onServerVersionChanged = async ({serverUrl, serverVersion}: {serverUrl: string; serverVersion?: string}) => { const match = serverVersion?.match(/^[0-9]*.[0-9]*.[0-9]*(-[a-zA-Z0-9.-]*)?/g); const version = match && match[0]; const locale = DEFAULT_LOCALE; diff --git a/app/queries/servers/user.ts b/app/queries/servers/user.ts index c2e2f34ef6..8ca3c1db97 100644 --- a/app/queries/servers/user.ts +++ b/app/queries/servers/user.ts @@ -9,7 +9,7 @@ import type User from '@typings/database/models/servers/user'; import {queryCurrentUserId} from './system'; -export const queryUserById = async ({userId, database}: { userId: string, database: Database}) => { +export const queryUserById = async ({userId, database}: { userId: string; database: Database}) => { try { const userRecord = (await database.collections.get(MM_TABLES.SERVER.USER).find(userId)) as User; return userRecord; diff --git a/app/screens/mfa/index.tsx b/app/screens/mfa/index.tsx index 5643b000b9..334ee99b85 100644 --- a/app/screens/mfa/index.tsx +++ b/app/screens/mfa/index.tsx @@ -26,11 +26,11 @@ import {preventDoubleTap} from '@utils/tap'; import {changeOpacity, makeStyleSheetFromTheme} from '@utils/theme'; type MFAProps = { - config: Partial, - goToChannel: () => void, - license: Partial, - loginId : string, - password: string, + config: Partial; + goToChannel: () => void; + license: Partial; + loginId: string; + password: string; serverUrl: string; theme: Theme; } diff --git a/app/screens/navigation.ts b/app/screens/navigation.ts index 7e15d09135..0e34b27fe5 100644 --- a/app/screens/navigation.ts +++ b/app/screens/navigation.ts @@ -284,7 +284,48 @@ export function showModal(name: string, title: string, passProps = {}, options = export function showModalOverCurrentContext(name: string, passProps = {}, options = {}) { const title = ''; - const animationsEnabled = (Platform.OS === 'android').toString(); + let animations; + switch (Platform.OS) { + case 'android': + animations = { + showModal: { + waitForRender: true, + alpha: { + from: 0, + to: 1, + duration: 250, + }, + }, + dismissModal: { + alpha: { + from: 1, + to: 0, + duration: 250, + }, + }, + }; + break; + default: + animations = { + showModal: { + enter: { + enabled: false, + }, + exit: { + enabled: false, + }, + }, + dismissModal: { + enter: { + enabled: false, + }, + exit: { + enabled: false, + }, + }, + }; + break; + } const defaultOptions = { modalPresentationStyle: 'overCurrentContext', layout: { @@ -295,28 +336,9 @@ export function showModalOverCurrentContext(name: string, passProps = {}, option visible: false, height: 0, }, - animations: { - showModal: { - waitForRender: true, - enabled: animationsEnabled, - alpha: { - from: 0, - to: 1, - duration: 250, - }, - }, - dismissModal: { - enabled: animationsEnabled, - alpha: { - from: 1, - to: 0, - duration: 250, - }, - }, - }, + animations, }; const mergeOptions = merge(defaultOptions, options); - showModal(name, title, passProps, mergeOptions); } diff --git a/app/screens/sso/sso_with_redirect_url.tsx b/app/screens/sso/sso_with_redirect_url.tsx index 910360f07f..8cc80d7155 100644 --- a/app/screens/sso/sso_with_redirect_url.tsx +++ b/app/screens/sso/sso_with_redirect_url.tsx @@ -20,7 +20,7 @@ interface SSOWithRedirectURLProps { loginUrl: string; serverUrl: string; setLoginError: (value: string) => void; - theme: Partial + theme: Partial; } const SSOWithRedirectURL = ({doSSOLogin, loginError, loginUrl, serverUrl, setLoginError, theme}: SSOWithRedirectURLProps) => { diff --git a/app/screens/sso/sso_with_webview.tsx b/app/screens/sso/sso_with_webview.tsx index b86b915044..a3b24dee42 100644 --- a/app/screens/sso/sso_with_webview.tsx +++ b/app/screens/sso/sso_with_webview.tsx @@ -1,7 +1,7 @@ // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. // See LICENSE.txt for license information. -import CookieManager, {Cookies} from '@react-native-cookies/cookies'; +import CookieManager, {Cookie, Cookies} from '@react-native-cookies/cookies'; import React, {useEffect} from 'react'; import {useIntl} from 'react-intl'; import {Alert, Platform, Text, View} from 'react-native'; @@ -63,7 +63,7 @@ interface SSOWithWebViewProps { loginUrl: string; serverUrl: string; ssoType: string; - theme: Partial + theme: Partial; } const SSOWithWebView = ({completeUrlPath, doSSOLogin, loginError, loginUrl, serverUrl, ssoType, theme}: SSOWithWebViewProps) => { @@ -87,10 +87,10 @@ const SSOWithWebView = ({completeUrlPath, doSSOLogin, loginError, loginUrl, serv const removeCookiesFromVisited = () => { if (Platform.OS === 'ios') { - visitedUrls.forEach((visited) => { + visitedUrls.forEach((visited: string) => { CookieManager.get(visited, true).then(async (cookies: Cookies) => { if (cookies) { - const values = Object.values(cookies); + const values = Object.values(cookies) as unknown as Cookie[]; for (const cookie of values) { CookieManager.clearByName(visited, cookie.name, true); } diff --git a/app/utils/client_error.ts b/app/utils/client_error.ts index e3f80d81e0..4a7a8cee1e 100644 --- a/app/utils/client_error.ts +++ b/app/utils/client_error.ts @@ -5,7 +5,7 @@ import {cleanUrlForLogging} from '@utils/logging'; export class ClientError extends Error { details: Error; - intl?: {defaultMessage?: string; id: string;} | { defaultMessage?: string; id: string } | { id: string; defaultMessage?: string; values: any } | { id: string; defaultMessage?: string }; + intl?: {defaultMessage?: string; id: string} | { defaultMessage?: string; id: string } | { id: string; defaultMessage?: string; values: any } | { id: string; defaultMessage?: string }; url: string; server_error_id?: string | number; status_code?: number; diff --git a/app/utils/mattermost_managed.ts b/app/utils/mattermost_managed.ts index 026dd2bc3e..5a313b402d 100644 --- a/app/utils/mattermost_managed.ts +++ b/app/utils/mattermost_managed.ts @@ -5,8 +5,8 @@ import {NativeModules} from 'react-native'; const {MattermostManaged} = NativeModules; -type IOSDeleteDatabase = { databaseName?: string, shouldRemoveDirectory?: boolean } -type IOSAppGroupDetails = { appGroupIdentifier: string, appGroupSharedDirectory: string, appGroupDatabase: string } +type IOSDeleteDatabase = { databaseName?: string; shouldRemoveDirectory?: boolean } +type IOSAppGroupDetails = { appGroupIdentifier: string; appGroupSharedDirectory: string; appGroupDatabase: string } /** * Retrieves information relative to the iOS AppGroup identifier and folders diff --git a/assets/base/i18n/en.json b/assets/base/i18n/en.json index 3fdcbd4eb2..83151fa961 100644 --- a/assets/base/i18n/en.json +++ b/assets/base/i18n/en.json @@ -42,7 +42,6 @@ "mobile.oauth.failed_to_login": "Your login attempt failed. Please try again.", "mobile.oauth.failed_to_open_link": "The link failed to open. Please try again.", "mobile.oauth.failed_to_open_link_no_browser": "The link failed to open. Please verify if a browser is installed in the current space.", - "mobile.oauth.restart_login": "Restart login", "mobile.oauth.something_wrong": "Something went wrong", "mobile.oauth.something_wrong.okButon": "Ok", "mobile.oauth.switch_to_browser": "Please use your browser to complete the login", diff --git a/index.ts b/index.ts index 0124ff3333..8066f96510 100644 --- a/index.ts +++ b/index.ts @@ -26,7 +26,6 @@ if (__DEV__) { 'scaleY', ]); LogBox.ignoreLogs(['Require cycle: node_modules/zod/lib/src/index.js']); - require('storybook/mattermost_storybook.ts'); } setFontFamily(); diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 897fa931de..285cd4f1d1 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -4,12 +4,21 @@ PODS: - BVLinearGradient (2.5.6): - React - DoubleConversion (1.1.6) - - EXConstants (10.1.3): - - UMConstantsInterface + - EXConstants (11.0.1): + - ExpoModulesCore - UMCore - - EXFileSystem (11.0.2): + - EXFileSystem (11.1.3): + - ExpoModulesCore + - UMCore + - ExpoModulesCore (0.2.0): + - ExpoModulesCore/Core (= 0.2.0) + - ExpoModulesCore/Interfaces (= 0.2.0) + - UMCore + - ExpoModulesCore/Core (0.2.0): + - UMCore + - ExpoModulesCore/Interfaces (0.2.0): + - ExpoModulesCore/Core - UMCore - - UMFileSystemInterface - FBLazyVector (0.64.2) - FBReactNativeSpec (0.64.2): - RCT-Folly (= 2020.01.13.00) @@ -19,7 +28,7 @@ PODS: - React-jsi (= 0.64.2) - ReactCommon/turbomodule/core (= 0.64.2) - glog (0.3.5) - - jail-monkey (2.4.0): + - jail-monkey (2.5.0): - React-Core - libwebp (1.2.0): - libwebp/demux (= 1.2.0) @@ -30,9 +39,9 @@ PODS: - libwebp/mux (1.2.0): - libwebp/demux - libwebp/webp (1.2.0) - - Permission-Camera (3.0.4): + - Permission-Camera (3.0.5): - RNPermissions - - Permission-PhotoLibrary (3.0.4): + - Permission-PhotoLibrary (3.0.5): - RNPermissions - RCT-Folly (2020.01.13.00): - boost-for-react-native @@ -236,7 +245,7 @@ PODS: - React-Core - react-native-document-picker (5.2.0): - React-Core - - react-native-emm (1.1.3): + - react-native-emm (1.1.4): - React-Core - react-native-hw-keyboard-event (0.0.4): - React @@ -249,7 +258,7 @@ PODS: - SwiftyJSON (~> 5.0) - react-native-notifications (3.5.0): - React-Core - - react-native-paste-input (0.1.3): + - react-native-paste-input (0.1.4): - React-Core - Swime (= 3.0.6) - react-native-safe-area-context (3.2.0): @@ -259,7 +268,7 @@ PODS: - react-native-video/Video (= 5.1.1) - react-native-video/Video (5.1.1): - React-Core - - react-native-webview (11.6.4): + - react-native-webview (11.6.5): - React-Core - React-perflogger (0.64.2) - React-RCTActionSheet (0.64.2): @@ -329,17 +338,15 @@ PODS: - React-Core - ReactNativeKeyboardTrackingView (5.7.0): - React - - ReactNativeNavigation (7.13.0): + - ReactNativeNavigation (7.17.1): - React-Core - React-RCTImage - React-RCTText - - ReactNativeNavigation/Core (= 7.13.0) - - ReactNativeNavigation/Core (7.13.0): + - ReactNativeNavigation/Core (= 7.17.1) + - ReactNativeNavigation/Core (7.17.1): - React-Core - React-RCTImage - React-RCTText - - rn-fetch-blob (0.12.0): - - React-Core - RNCAsyncStorage (1.12.1): - React-Core - RNCClipboard (1.5.1): @@ -352,7 +359,7 @@ PODS: - React-Core - React-Core/DevSupport - React-RCTNetwork - - RNFastImage (8.3.4): + - RNFastImage (8.3.6): - React-Core - SDWebImage (~> 5.8) - SDWebImageWebPCoder (~> 0.6.1) @@ -364,7 +371,7 @@ PODS: - React-Core - RNLocalize (2.1.1): - React-Core - - RNPermissions (3.0.4): + - RNPermissions (3.0.5): - React-Core - RNReactNativeHapticFeedback (1.11.0): - React-Core @@ -399,17 +406,17 @@ PODS: - Yoga - RNRudderSdk (1.0.0): - React - - Rudder - - RNSentry (2.5.2): + - Rudder (>= 1.0.20) + - RNSentry (2.6.0): - React-Core - Sentry (= 7.0.0) - - RNShare (6.2.1): + - RNShare (6.2.3): - React-Core - RNSVG (12.1.1): - React - RNVectorIcons (8.1.0): - React-Core - - Rudder (1.0.14) + - Rudder (1.0.20) - SDWebImage (5.11.1): - SDWebImage/Core (= 5.11.1) - SDWebImage/Core (5.11.1) @@ -422,27 +429,13 @@ PODS: - Starscream (4.0.4) - SwiftyJSON (5.0.1) - Swime (3.0.6) - - UMAppLoader (2.1.0) - - UMBarCodeScannerInterface (6.1.0): - - UMCore - - UMCameraInterface (6.1.0): - - UMCore - - UMConstantsInterface (6.1.0): - - UMCore + - UMAppLoader (2.2.0) - UMCore (7.1.1) - - UMFaceDetectorInterface (6.1.0) - - UMFileSystemInterface (6.1.0) - - UMFontInterface (6.1.0) - - UMImageLoaderInterface (6.1.0) - - UMPermissionsInterface (6.1.0): - - UMCore - - UMReactNativeAdapter (6.2.2): + - UMReactNativeAdapter (6.3.4): + - ExpoModulesCore - React-Core - UMCore - - UMFontInterface - - UMSensorsInterface (6.1.0): - - UMCore - - UMTaskManagerInterface (6.1.0): + - UMTaskManagerInterface (6.2.0): - UMCore - WatermelonDB (0.22.0): - React @@ -456,6 +449,7 @@ DEPENDENCIES: - DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`) - EXConstants (from `../node_modules/expo-constants/ios`) - EXFileSystem (from `../node_modules/expo-file-system/ios`) + - ExpoModulesCore (from `../node_modules/expo-modules-core/ios`) - FBLazyVector (from `../node_modules/react-native/Libraries/FBLazyVector`) - FBReactNativeSpec (from `../node_modules/react-native/React/FBReactNativeSpec`) - glog (from `../node_modules/react-native/third-party-podspecs/glog.podspec`) @@ -503,7 +497,6 @@ DEPENDENCIES: - ReactNativeExceptionHandler (from `../node_modules/react-native-exception-handler`) - ReactNativeKeyboardTrackingView (from `../node_modules/react-native-keyboard-tracking-view`) - ReactNativeNavigation (from `../node_modules/react-native-navigation`) - - rn-fetch-blob (from `../node_modules/rn-fetch-blob`) - "RNCAsyncStorage (from `../node_modules/@react-native-community/async-storage`)" - "RNCClipboard (from `../node_modules/@react-native-community/clipboard`)" - "RNCMaskedView (from `../node_modules/@react-native-community/masked-view`)" @@ -525,17 +518,8 @@ DEPENDENCIES: - Starscream (from `https://github.com/mattermost/Starscream.git`, commit `1b4b93708fb63d2665625a11e57461772a65364a`) - Swime (= 3.0.6) - UMAppLoader (from `../node_modules/unimodules-app-loader/ios`) - - UMBarCodeScannerInterface (from `../node_modules/unimodules-barcode-scanner-interface/ios`) - - UMCameraInterface (from `../node_modules/unimodules-camera-interface/ios`) - - UMConstantsInterface (from `../node_modules/unimodules-constants-interface/ios`) - "UMCore (from `../node_modules/@unimodules/core/ios`)" - - UMFaceDetectorInterface (from `../node_modules/unimodules-face-detector-interface/ios`) - - UMFileSystemInterface (from `../node_modules/unimodules-file-system-interface/ios`) - - UMFontInterface (from `../node_modules/unimodules-font-interface/ios`) - - UMImageLoaderInterface (from `../node_modules/unimodules-image-loader-interface/ios`) - - UMPermissionsInterface (from `../node_modules/unimodules-permissions-interface/ios`) - "UMReactNativeAdapter (from `../node_modules/@unimodules/react-native-adapter/ios`)" - - UMSensorsInterface (from `../node_modules/unimodules-sensors-interface/ios`) - UMTaskManagerInterface (from `../node_modules/unimodules-task-manager-interface/ios`) - "WatermelonDB (from `../node_modules/@nozbe/watermelondb`)" - XCDYouTubeKit (= 2.8.2) @@ -564,6 +548,8 @@ EXTERNAL SOURCES: :path: "../node_modules/expo-constants/ios" EXFileSystem: :path: "../node_modules/expo-file-system/ios" + ExpoModulesCore: + :path: "../node_modules/expo-modules-core/ios" FBLazyVector: :path: "../node_modules/react-native/Libraries/FBLazyVector" FBReactNativeSpec: @@ -654,8 +640,6 @@ EXTERNAL SOURCES: :path: "../node_modules/react-native-keyboard-tracking-view" ReactNativeNavigation: :path: "../node_modules/react-native-navigation" - rn-fetch-blob: - :path: "../node_modules/rn-fetch-blob" RNCAsyncStorage: :path: "../node_modules/@react-native-community/async-storage" RNCClipboard: @@ -697,28 +681,10 @@ EXTERNAL SOURCES: :git: https://github.com/mattermost/Starscream.git UMAppLoader: :path: "../node_modules/unimodules-app-loader/ios" - UMBarCodeScannerInterface: - :path: "../node_modules/unimodules-barcode-scanner-interface/ios" - UMCameraInterface: - :path: "../node_modules/unimodules-camera-interface/ios" - UMConstantsInterface: - :path: "../node_modules/unimodules-constants-interface/ios" UMCore: :path: "../node_modules/@unimodules/core/ios" - UMFaceDetectorInterface: - :path: "../node_modules/unimodules-face-detector-interface/ios" - UMFileSystemInterface: - :path: "../node_modules/unimodules-file-system-interface/ios" - UMFontInterface: - :path: "../node_modules/unimodules-font-interface/ios" - UMImageLoaderInterface: - :path: "../node_modules/unimodules-image-loader-interface/ios" - UMPermissionsInterface: - :path: "../node_modules/unimodules-permissions-interface/ios" UMReactNativeAdapter: :path: "../node_modules/@unimodules/react-native-adapter/ios" - UMSensorsInterface: - :path: "../node_modules/unimodules-sensors-interface/ios" UMTaskManagerInterface: :path: "../node_modules/unimodules-task-manager-interface/ios" WatermelonDB: @@ -736,15 +702,16 @@ SPEC CHECKSUMS: boost-for-react-native: 39c7adb57c4e60d6c5479dd8623128eb5b3f0f2c BVLinearGradient: e3aad03778a456d77928f594a649e96995f1c872 DoubleConversion: cf9b38bf0b2d048436d9a82ad2abe1404f11e7de - EXConstants: c4dd28acc12039c999612507a5f935556f2c86ce - EXFileSystem: dcf2273f49431e5037347c733a2dc5d08e0d0a9e + EXConstants: 3babb61f8f4bb7dffe85b8b7d6eaa31d903e4d7e + EXFileSystem: 0a04aba8da751b9ac954065911bcf166503f8267 + ExpoModulesCore: 2734852616127a6c1fc23012197890a6f3763dc7 FBLazyVector: e686045572151edef46010a6f819ade377dfeb4b FBReactNativeSpec: cef0cc6d50abc92e8cf52f140aa22b5371cfec0b glog: 73c2498ac6884b13ede40eda8228cb1eee9d9d62 - jail-monkey: 01cd0a75aa1034d08fd851869e6e6c3b063242d7 + jail-monkey: feb2bdedc4d67312cd41a455c22661d804bba985 libwebp: e90b9c01d99205d03b6bb8f2c8c415e5a4ef66f0 - Permission-Camera: 74dc395c37a06ebe915069c5dca954c7a2a5a2e3 - Permission-PhotoLibrary: 440f206f0d36e5951c4c9b28567f60471fdddfb5 + Permission-Camera: ac603073e4128e51e6ca3c39129778f05b4082fa + Permission-PhotoLibrary: 0748c1a490fad126dfe36dbea8234dedfe59cc27 RCT-Folly: ec7a233ccc97cc556cf7237f0db1ff65b986f27c RCTRequired: 6d3e854f0e7260a648badd0d44fc364bc9da9728 RCTTypeSafety: c1f31d19349c6b53085766359caac425926fafaa @@ -760,15 +727,15 @@ SPEC CHECKSUMS: react-native-cameraroll: 88f4e62d9ecd0e1f253abe4f685474f2ea14bfa2 react-native-cookies: 2cb6ef472da68610dfcf0eaee68464c244943abd react-native-document-picker: f1b5398801b332c77bc62ae0eae2116f49bdff26 - react-native-emm: 1652c0f3ebc39ca0cb57a43f60b96f932b7b7f19 + react-native-emm: 0bb1fcf708a59b20731033b53e1b11287df10086 react-native-hw-keyboard-event: b517cefb8d5c659a38049c582de85ff43337dc53 react-native-netinfo: e849fc21ca2f4128a5726c801a82fc6f4a6db50d react-native-network-client: 30ab97e7e6c8d6f2d2b10cc1ebad0cbf9c894c6e react-native-notifications: 89a73cd2cd2648e1734fa10e3507681c9e4f14de - react-native-paste-input: dbf0099efd191ddf53e55a4a454bea0783ce4e1d + react-native-paste-input: 4d6ecc3875153212b5503b6da093277db4ace241 react-native-safe-area-context: f0906bf8bc9835ac9a9d3f97e8bde2a997d8da79 react-native-video: 0bb76b6d6b77da3009611586c7dbf817b947f30e - react-native-webview: 1a19adb5578cdf7f005b7961dcc50c1c6b70f41b + react-native-webview: 2e8fe70dc32b50d3231c23043f8e8b5a5525d346 React-perflogger: 25373e382fed75ce768a443822f07098a15ab737 React-RCTActionSheet: af7796ba49ffe4ca92e7277a5d992d37203f7da5 React-RCTAnimation: 6a2e76ab50c6f25b428d81b76a5a45351c4d77aa @@ -783,46 +750,36 @@ SPEC CHECKSUMS: ReactCommon: 149906e01aa51142707a10665185db879898e966 ReactNativeExceptionHandler: b11ff67c78802b2f62eed0e10e75cb1ef7947c60 ReactNativeKeyboardTrackingView: 02137fac3b2ebd330d74fa54ead48b14750a2306 - ReactNativeNavigation: 4c4ca87edc0da4ee818158a62cb6188088454e5c - rn-fetch-blob: 17961aec08caae68bb8fc0e5b40f93b3acfa6932 + ReactNativeNavigation: 8ccac6aadb88ce59ff1594bfbe1f579b9bb5e81a RNCAsyncStorage: b03032fdbdb725bea0bd9e5ec5a7272865ae7398 RNCClipboard: 41d8d918092ae8e676f18adada19104fa3e68495 RNCMaskedView: 0e1bc4bfa8365eba5fbbb71e07fbdc0555249489 RNDeviceInfo: 8d3a29207835f972bce883723882980143270d55 RNDevMenu: fd325b5554b61fe7f48d9205a3877cf5ee88cd7c - RNFastImage: d4870d58f5936111c56218dbd7fcfc18e65b58ff + RNFastImage: 044259b52d726b183fa401f3521b2e5a864afc0a RNFileViewer: 83cc066ad795b1f986791d03b56fe0ee14b6a69f RNGestureHandler: a479ebd5ed4221a810967000735517df0d2db211 RNKeychain: f75b8c8b2f17d3b2aa1f25b4a0ac5b83d947ff8f RNLocalize: 82a569022724d35461e2dc5b5d015a13c3ca995b - RNPermissions: c46788f4cd402287425983e04a4c9bb4356036eb + RNPermissions: 7043bacbf928eae25808275cfe73799b8f618911 RNReactNativeHapticFeedback: 653a8c126a0f5e88ce15ffe280b3ff37e1fbb285 RNReanimated: 9c13c86454bfd54dab7505c1a054470bfecd2563 - RNRudderSdk: 5d99b1a5a582ab55d6213b38018d35e98818af63 - RNSentry: bfa1e2776c7413570e790cbbf79d2060dd0a565b - RNShare: 5ac8f6532ca4cd80fc71caef1cfbba1854a6a045 + RNRudderSdk: 9aa881c2bf754dc3b05e392340a5e3663a970f0a + RNSentry: a2b02b326ae4fce91ce7c57d3f7dcf8df4f72269 + RNShare: 16c78aeb7a78d19e8f5597e405e87f90d91f8eb9 RNSVG: 551acb6562324b1d52a4e0758f7ca0ec234e278f RNVectorIcons: 31cebfcf94e8cf8686eb5303ae0357da64d7a5a4 - Rudder: 40f3a255fab3f8bbe120e496f90019de68c1aca1 + Rudder: 3eae52018e1a401d3610b3f16f6210026eb327c8 SDWebImage: a7f831e1a65eb5e285e3fb046a23fcfbf08e696d SDWebImageWebPCoder: d0dac55073088d24b2ac1b191a71a8f8d0adac21 Sentry: 89d26e036063b9cb9caa59b6951dd2f8277aa13b Starscream: 5178aed56b316f13fa3bc55694e583d35dd414d9 SwiftyJSON: 2f33a42c6fbc52764d96f13368585094bfd8aa5e Swime: d7b2c277503b6cea317774aedc2dce05613f8b0b - UMAppLoader: fe2708bb0ac5cd70052bc207d06aa3b7e72b9e97 - UMBarCodeScannerInterface: 79f92bea5f7af39b381a4c82298105ceb537408a - UMCameraInterface: 81ff46700da88435f17afedfc88915eaede7e6a6 - UMConstantsInterface: bb94dd46039dcde276ed50225b29e22785e604bf + UMAppLoader: 21af63390e55c82e037fb9752d93114a80ecf16e UMCore: 2f671796d7439604a1cf8ac7bbe5809cd5c50437 - UMFaceDetectorInterface: 791eec55ffca1171992976b7eceb73e69e391c58 - UMFileSystemInterface: f72245e90ce78fa6427180ff0b0904ead13d8161 - UMFontInterface: 5843cff7db85a42ba629aaac53d33091c35524d3 - UMImageLoaderInterface: 9ddffeb644b3f45d4eb0c2f51a2fd95fd5c8d1a4 - UMPermissionsInterface: 40b72935a7d12a3f60dc6b7bb99ce47908380cb1 - UMReactNativeAdapter: 65ada852a648fcb6674acfbfe72ccb095f2f5b75 - UMSensorsInterface: a5e9db661e5d9ae214762033d725989880ae6993 - UMTaskManagerInterface: 203c11259d2699b5b3a4eda4adbc466f5cb5c561 + UMReactNativeAdapter: 684b07b79d5fe52b496d2b50bfe31f68d7daf71a + UMTaskManagerInterface: 2be431101b73604e64fbfffcf759336f9d8fccbb WatermelonDB: 1da309a2b3fe35360e92f5a6bda2156543447955 XCDYouTubeKit: 79baadb0560673a67c771eba45f83e353fd12c1f Yoga: 575c581c63e0d35c9a83f4b46d01d63abc1100ac diff --git a/package-lock.json b/package-lock.json index 954b81eeac..39fca0618e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,47 +10,47 @@ "license": "Apache 2.0", "dependencies": { "@babel/runtime": "7.14.6", - "@formatjs/intl-datetimeformat": "4.1.5", - "@formatjs/intl-getcanonicallocales": "1.7.0", - "@formatjs/intl-locale": "2.4.32", - "@formatjs/intl-numberformat": "7.1.4", - "@formatjs/intl-pluralrules": "4.0.27", - "@formatjs/intl-relativetimeformat": "9.1.6", - "@mattermost/react-native-emm": "1.1.3", + "@formatjs/intl-datetimeformat": "4.1.6", + "@formatjs/intl-getcanonicallocales": "1.7.1", + "@formatjs/intl-locale": "2.4.33", + "@formatjs/intl-numberformat": "7.1.5", + "@formatjs/intl-pluralrules": "4.0.28", + "@formatjs/intl-relativetimeformat": "9.1.7", + "@mattermost/react-native-emm": "1.1.4", "@mattermost/react-native-network-client": "github:mattermost/react-native-network-client", - "@mattermost/react-native-paste-input": "0.1.3", + "@mattermost/react-native-paste-input": "0.1.4", "@nozbe/watermelondb": "0.22.0", - "@nozbe/with-observables": "1.3.0", + "@nozbe/with-observables": "1.4.0", "@react-native-community/async-storage": "1.12.1", "@react-native-community/cameraroll": "4.0.4", "@react-native-community/clipboard": "1.5.1", "@react-native-community/masked-view": "0.1.11", "@react-native-community/netinfo": "6.0.0", "@react-native-cookies/cookies": "6.0.8", - "@rudderstack/rudder-sdk-react-native": "1.0.10", - "@sentry/react-native": "2.5.2", - "commonmark": "github:mattermost/commonmark.js#f6ab98dede6ce4b4e7adea140ac77249bfb2d6ce", - "commonmark-react-renderer": "github:mattermost/commonmark-react-renderer#3a2ac19cab725ad28b170fdc1d397dddedcf87eb", + "@rudderstack/rudder-sdk-react-native": "1.0.12", + "@sentry/react-native": "2.6.0", + "commonmark": "0.30.0", + "commonmark-react-renderer": "4.3.5", "deep-equal": "2.0.5", "deepmerge": "4.2.2", "emoji-regex": "9.2.2", "fuse.js": "6.4.6", - "jail-monkey": "2.4.0", + "jail-monkey": "2.5.0", "mime-db": "1.48.0", "moment-timezone": "0.5.33", - "nock": "13.1.0", + "nock": "13.1.1", "prop-types": "15.7.2", "react": "17.0.2", - "react-intl": "5.17.7", + "react-intl": "5.20.4", "react-native": "0.64.2", "react-native-android-open-settings": "1.3.0", "react-native-button": "3.0.1", - "react-native-calendars": "1.1263.0", + "react-native-calendars": "1.1264.0", "react-native-device-info": "8.1.3", "react-native-document-picker": "5.2.0", "react-native-elements": "3.4.2", "react-native-exception-handler": "2.10.10", - "react-native-fast-image": "8.3.4", + "react-native-fast-image": "8.3.6", "react-native-file-viewer": "2.1.4", "react-native-gesture-handler": "1.10.3", "react-native-haptic-feedback": "1.11.0", @@ -60,21 +60,20 @@ "react-native-keychain": "7.0.0", "react-native-linear-gradient": "2.5.6", "react-native-localize": "2.1.1", - "react-native-navigation": "7.13.0", + "react-native-navigation": "7.17.1", "react-native-notifications": "3.5.0", - "react-native-permissions": "3.0.4", + "react-native-permissions": "3.0.5", "react-native-reanimated": "2.2.0", - "react-native-redash": "16.0.11", + "react-native-redash": "16.1.1", "react-native-safe-area-context": "3.2.0", - "react-native-share": "6.2.1", + "react-native-share": "6.2.3", "react-native-slider": "0.11.0", "react-native-svg": "12.1.1", - "react-native-unimodules": "0.13.3", + "react-native-unimodules": "0.14.5", "react-native-vector-icons": "8.1.0", "react-native-video": "5.1.1", - "react-native-webview": "11.6.4", + "react-native-webview": "11.6.5", "react-native-youtube": "2.0.2", - "rn-fetch-blob": "0.12.0", "rn-placeholder": "3.0.3", "semver": "7.3.5", "serialize-error": "8.1.0", @@ -89,61 +88,65 @@ "@babel/plugin-proposal-decorators": "7.14.5", "@babel/plugin-transform-flow-strip-types": "7.14.5", "@babel/plugin-transform-runtime": "7.14.5", - "@babel/preset-env": "7.14.5", + "@babel/preset-env": "7.14.7", "@babel/preset-typescript": "7.14.5", "@babel/register": "7.14.5", "@react-native-community/eslint-config": "3.0.0", - "@storybook/addon-knobs": "6.2.9", - "@storybook/addon-ondevice-knobs": "5.3.25", - "@storybook/react-native": "5.3.25", - "@storybook/react-native-server": "5.3.23", "@testing-library/react-native": "7.2.0", - "@types/jest": "26.0.23", - "@types/react": "17.0.11", + "@types/jest": "26.0.24", + "@types/react": "17.0.14", "@types/react-intl": "3.0.0", - "@types/react-native": "0.64.10", + "@types/react-native": "0.64.11", "@types/react-native-button": "3.0.0", - "@types/react-native-share": "3.3.2", - "@types/react-native-video": "5.0.6", + "@types/react-native-share": "3.3.3", + "@types/react-native-video": "5.0.8", "@types/react-test-renderer": "17.0.1", - "@types/semver": "7.3.6", + "@types/semver": "7.3.7", "@types/shallow-equals": "1.0.0", - "@types/tinycolor2": "1.4.2", + "@types/tinycolor2": "1.4.3", "@types/url-parse": "1.4.3", - "@typescript-eslint/eslint-plugin": "4.28.0", - "@typescript-eslint/parser": "4.28.0", + "@typescript-eslint/eslint-plugin": "4.28.2", + "@typescript-eslint/parser": "4.28.2", "babel-eslint": "10.1.0", - "babel-jest": "26.6.3", + "babel-jest": "27.0.6", "babel-loader": "8.2.2", "babel-plugin-module-resolver": "4.1.0", "babel-plugin-transform-remove-console": "6.9.4", "deep-freeze": "0.0.1", "detox": "18.18.1", - "eslint": "7.29.0", + "eslint": "7.30.0", "eslint-plugin-header": "3.1.1", "eslint-plugin-jest": "24.3.6", - "eslint-plugin-mattermost": "github:mattermost/eslint-plugin-mattermost#070ce792d105482ffb2b27cfc0b7e78b3d20acee", + "eslint-plugin-mattermost": "github:mattermost/eslint-plugin-mattermost#46ad99355644a719bf32082f472048f526605181", "eslint-plugin-react": "7.24.0", "eslint-plugin-react-hooks": "4.2.0", - "husky": "6.0.0", + "husky": "7.0.1", "isomorphic-fetch": "3.0.0", "jest": "26.6.3", "jest-cli": "26.6.3", "jetifier": "2.0.0", - "metro-react-native-babel-preset": "0.66.0", + "metro-react-native-babel-preset": "0.66.1", "mmjstool": "github:mattermost/mattermost-utilities#519b99a4e51e6c67a0dbd46a6efdff27dc835aaa", "mock-async-storage": "2.2.0", "patch-package": "6.4.7", "react-native-dev-menu": "4.0.2", - "react-native-dotenv": "2.5.5", + "react-native-dotenv": "3.0.0", "react-native-storybook-loader": "2.0.4", "react-test-renderer": "17.0.2", "ts-jest": "27.0.3", - "typescript": "4.3.4", + "typescript": "4.3.5", "underscore": "1.13.1", "util": "0.12.4" } }, + "node_modules/@arcanis/slice-ansi": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@arcanis/slice-ansi/-/slice-ansi-1.0.2.tgz", + "integrity": "sha512-lDL63z0W/L/WTgqrwVOuNyMAsTv+pvjybd21z9SWdStmQoXT59E/iVWwat3gYjcdTNBf6oHAMoyFm8dtjpXEYw==", + "dependencies": { + "grapheme-splitter": "^1.0.4" + } + }, "node_modules/@babel/cli": { "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.14.5.tgz", @@ -1494,21 +1497,6 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-transform-react-constant-elements": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.14.5.tgz", - "integrity": "sha512-NBqLEx1GxllIOXJInJAQbrnwwYJsV3WaMHIcOwD8rhYS0AabTWn7kHdHgPgu5RmHLU0q4DMxhAMu8ue/KampgQ==", - "dev": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/plugin-transform-react-display-name": { "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.14.5.tgz", @@ -1741,16 +1729,16 @@ } }, "node_modules/@babel/preset-env": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.14.5.tgz", - "integrity": "sha512-ci6TsS0bjrdPpWGnQ+m4f+JSSzDKlckqKIJJt9UZ/+g7Zz9k0N8lYU8IeLg/01o2h8LyNZDMLGgRLDTxpudLsA==", + "version": "7.14.7", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.14.7.tgz", + "integrity": "sha512-itOGqCKLsSUl0Y+1nSfhbuuOlTs0MJk2Iv7iSH+XT/mR8U1zRLO7NjWlYXB47yhK4J/7j+HYty/EhFZDYKa/VA==", "dependencies": { - "@babel/compat-data": "^7.14.5", + "@babel/compat-data": "^7.14.7", "@babel/helper-compilation-targets": "^7.14.5", "@babel/helper-plugin-utils": "^7.14.5", "@babel/helper-validator-option": "^7.14.5", "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.14.5", - "@babel/plugin-proposal-async-generator-functions": "^7.14.5", + "@babel/plugin-proposal-async-generator-functions": "^7.14.7", "@babel/plugin-proposal-class-properties": "^7.14.5", "@babel/plugin-proposal-class-static-block": "^7.14.5", "@babel/plugin-proposal-dynamic-import": "^7.14.5", @@ -1759,7 +1747,7 @@ "@babel/plugin-proposal-logical-assignment-operators": "^7.14.5", "@babel/plugin-proposal-nullish-coalescing-operator": "^7.14.5", "@babel/plugin-proposal-numeric-separator": "^7.14.5", - "@babel/plugin-proposal-object-rest-spread": "^7.14.5", + "@babel/plugin-proposal-object-rest-spread": "^7.14.7", "@babel/plugin-proposal-optional-catch-binding": "^7.14.5", "@babel/plugin-proposal-optional-chaining": "^7.14.5", "@babel/plugin-proposal-private-methods": "^7.14.5", @@ -1785,7 +1773,7 @@ "@babel/plugin-transform-block-scoping": "^7.14.5", "@babel/plugin-transform-classes": "^7.14.5", "@babel/plugin-transform-computed-properties": "^7.14.5", - "@babel/plugin-transform-destructuring": "^7.14.5", + "@babel/plugin-transform-destructuring": "^7.14.7", "@babel/plugin-transform-dotall-regex": "^7.14.5", "@babel/plugin-transform-duplicate-keys": "^7.14.5", "@babel/plugin-transform-exponentiation-operator": "^7.14.5", @@ -1797,7 +1785,7 @@ "@babel/plugin-transform-modules-commonjs": "^7.14.5", "@babel/plugin-transform-modules-systemjs": "^7.14.5", "@babel/plugin-transform-modules-umd": "^7.14.5", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.14.5", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.14.7", "@babel/plugin-transform-new-target": "^7.14.5", "@babel/plugin-transform-object-super": "^7.14.5", "@babel/plugin-transform-parameters": "^7.14.5", @@ -1805,7 +1793,7 @@ "@babel/plugin-transform-regenerator": "^7.14.5", "@babel/plugin-transform-reserved-words": "^7.14.5", "@babel/plugin-transform-shorthand-properties": "^7.14.5", - "@babel/plugin-transform-spread": "^7.14.5", + "@babel/plugin-transform-spread": "^7.14.6", "@babel/plugin-transform-sticky-regex": "^7.14.5", "@babel/plugin-transform-template-literals": "^7.14.5", "@babel/plugin-transform-typeof-symbol": "^7.14.5", @@ -1816,7 +1804,7 @@ "babel-plugin-polyfill-corejs2": "^0.2.2", "babel-plugin-polyfill-corejs3": "^0.2.2", "babel-plugin-polyfill-regenerator": "^0.2.2", - "core-js-compat": "^3.14.0", + "core-js-compat": "^3.15.0", "semver": "^6.3.0" }, "engines": { @@ -1975,6 +1963,11 @@ "node": ">=0.1.95" } }, + "node_modules/@deepcode/dcignore": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@deepcode/dcignore/-/dcignore-1.0.2.tgz", + "integrity": "sha512-DPgxtHuJwBORpqRkPXzzOT+uoPRVJmaN7LR+pmeL6DQM90kj6G6GFUH1i/YpRH8NbML8ZGEDwB9f9u4UwD2pzg==" + }, "node_modules/@egjs/hammerjs": { "version": "2.0.17", "resolved": "https://registry.npmjs.org/@egjs/hammerjs/-/hammerjs-2.0.17.tgz", @@ -1986,165 +1979,6 @@ "node": ">=0.8.0" } }, - "node_modules/@emotion/cache": { - "version": "10.0.29", - "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-10.0.29.tgz", - "integrity": "sha512-fU2VtSVlHiF27empSbxi1O2JFdNWZO+2NFHfwO0pxgTep6Xa3uGb+3pVKfLww2l/IBGLNEZl5Xf/++A4wAYDYQ==", - "dev": true, - "dependencies": { - "@emotion/sheet": "0.9.4", - "@emotion/stylis": "0.8.5", - "@emotion/utils": "0.11.3", - "@emotion/weak-memoize": "0.2.5" - } - }, - "node_modules/@emotion/core": { - "version": "10.1.1", - "resolved": "https://registry.npmjs.org/@emotion/core/-/core-10.1.1.tgz", - "integrity": "sha512-ZMLG6qpXR8x031NXD8HJqugy/AZSkAuMxxqB46pmAR7ze47MhNJ56cdoX243QPZdGctrdfo+s08yZTiwaUcRKA==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.5.5", - "@emotion/cache": "^10.0.27", - "@emotion/css": "^10.0.27", - "@emotion/serialize": "^0.11.15", - "@emotion/sheet": "0.9.4", - "@emotion/utils": "0.11.3" - }, - "peerDependencies": { - "react": ">=16.3.0" - } - }, - "node_modules/@emotion/css": { - "version": "10.0.27", - "resolved": "https://registry.npmjs.org/@emotion/css/-/css-10.0.27.tgz", - "integrity": "sha512-6wZjsvYeBhyZQYNrGoR5yPMYbMBNEnanDrqmsqS1mzDm1cOTu12shvl2j4QHNS36UaTE0USIJawCH9C8oW34Zw==", - "dev": true, - "dependencies": { - "@emotion/serialize": "^0.11.15", - "@emotion/utils": "0.11.3", - "babel-plugin-emotion": "^10.0.27" - } - }, - "node_modules/@emotion/hash": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz", - "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==", - "dev": true - }, - "node_modules/@emotion/is-prop-valid": { - "version": "0.8.8", - "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz", - "integrity": "sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==", - "dev": true, - "dependencies": { - "@emotion/memoize": "0.7.4" - } - }, - "node_modules/@emotion/memoize": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz", - "integrity": "sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==", - "dev": true - }, - "node_modules/@emotion/native": { - "version": "10.0.27", - "resolved": "https://registry.npmjs.org/@emotion/native/-/native-10.0.27.tgz", - "integrity": "sha512-3qxR2XFizGfABKKbX9kAYc0PHhKuCEuyxshoq3TaMEbi9asWHdQVChg32ULpblm4XAf9oxaitAU7J9SfdwFxtw==", - "dev": true, - "dependencies": { - "@emotion/primitives-core": "10.0.27" - }, - "peerDependencies": { - "react-native": ">=0.14.0 <1" - } - }, - "node_modules/@emotion/primitives-core": { - "version": "10.0.27", - "resolved": "https://registry.npmjs.org/@emotion/primitives-core/-/primitives-core-10.0.27.tgz", - "integrity": "sha512-fRBEDNPSFFOrBJ0OcheuElayrNTNdLF9DzMxtL0sFgsCFvvadlzwJHhJMSwEJuxwARm9GhVLr1p8G8JGkK98lQ==", - "dev": true, - "dependencies": { - "css-to-react-native": "^2.2.1" - }, - "peerDependencies": { - "@emotion/core": "^10.0.27", - "react": ">=16.3.0" - } - }, - "node_modules/@emotion/serialize": { - "version": "0.11.16", - "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-0.11.16.tgz", - "integrity": "sha512-G3J4o8by0VRrO+PFeSc3js2myYNOXVJ3Ya+RGVxnshRYgsvErfAOglKAiy1Eo1vhzxqtUvjCyS5gtewzkmvSSg==", - "dev": true, - "dependencies": { - "@emotion/hash": "0.8.0", - "@emotion/memoize": "0.7.4", - "@emotion/unitless": "0.7.5", - "@emotion/utils": "0.11.3", - "csstype": "^2.5.7" - } - }, - "node_modules/@emotion/sheet": { - "version": "0.9.4", - "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-0.9.4.tgz", - "integrity": "sha512-zM9PFmgVSqBw4zL101Q0HrBVTGmpAxFZH/pYx/cjJT5advXguvcgjHFTCaIO3enL/xr89vK2bh0Mfyj9aa0ANA==", - "dev": true - }, - "node_modules/@emotion/styled": { - "version": "10.0.27", - "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-10.0.27.tgz", - "integrity": "sha512-iK/8Sh7+NLJzyp9a5+vIQIXTYxfT4yB/OJbjzQanB2RZpvmzBQOHZWhpAMZWYEKRNNbsD6WfBw5sVWkb6WzS/Q==", - "dev": true, - "dependencies": { - "@emotion/styled-base": "^10.0.27", - "babel-plugin-emotion": "^10.0.27" - }, - "peerDependencies": { - "@emotion/core": "^10.0.27", - "react": ">=16.3.0" - } - }, - "node_modules/@emotion/styled-base": { - "version": "10.0.31", - "resolved": "https://registry.npmjs.org/@emotion/styled-base/-/styled-base-10.0.31.tgz", - "integrity": "sha512-wTOE1NcXmqMWlyrtwdkqg87Mu6Rj1MaukEoEmEkHirO5IoHDJ8LgCQL4MjJODgxWxXibGR3opGp1p7YvkNEdXQ==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.5.5", - "@emotion/is-prop-valid": "0.8.8", - "@emotion/serialize": "^0.11.15", - "@emotion/utils": "0.11.3" - }, - "peerDependencies": { - "@emotion/core": "^10.0.28", - "react": ">=16.3.0" - } - }, - "node_modules/@emotion/stylis": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", - "integrity": "sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==", - "dev": true - }, - "node_modules/@emotion/unitless": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", - "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==", - "dev": true - }, - "node_modules/@emotion/utils": { - "version": "0.11.3", - "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-0.11.3.tgz", - "integrity": "sha512-0o4l6pZC+hI88+bzuaX/6BgOvQVhbt2PfmxauVaYOGgbsAw14wdKyvMCZXnsnsHys94iadcF+RG/wZyx6+ZZBw==", - "dev": true - }, - "node_modules/@emotion/weak-memoize": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz", - "integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA==", - "dev": true - }, "node_modules/@eslint/eslintrc": { "version": "0.4.2", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.2.tgz", @@ -2193,16 +2027,16 @@ } }, "node_modules/@expo/config": { - "version": "3.3.43", - "resolved": "https://registry.npmjs.org/@expo/config/-/config-3.3.43.tgz", - "integrity": "sha512-5a78fQqTKk7RhgrW5XzHS8ylCo9YRjZrheLyVDNNfvwAD8YjeBz6bFWsItZPpAIoaDgkLh0a8uhc11DCmqoKpw==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@expo/config/-/config-4.0.4.tgz", + "integrity": "sha512-O3xRlwMCidOgk1WHIy6eOjh2yp0h/kgBDRNKqPe21+YDiOufyTGGNvbWgHwoax8goa1iMg443WQO7GhvaH286g==", "dependencies": { "@babel/core": "7.9.0", "@babel/plugin-proposal-class-properties": "~7.12.13", "@babel/preset-env": "~7.12.13", "@babel/preset-typescript": "~7.12.13", - "@expo/config-plugins": "1.0.33", - "@expo/config-types": "^40.0.0-beta.2", + "@expo/config-plugins": "2.0.4", + "@expo/config-types": "^41.0.0", "@expo/json-file": "8.2.30", "fs-extra": "9.0.0", "getenv": "^1.0.0", @@ -2214,15 +2048,14 @@ } }, "node_modules/@expo/config-plugins": { - "version": "1.0.33", - "resolved": "https://registry.npmjs.org/@expo/config-plugins/-/config-plugins-1.0.33.tgz", - "integrity": "sha512-YQJop0c69LKD/6ZJJto7klS7TDmzgs44TI0Z5RBqesOjYlDwNFcQk2Rl2BaA1wlAYkH+rRrhN2+WjjSyD9HiPg==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@expo/config-plugins/-/config-plugins-2.0.4.tgz", + "integrity": "sha512-JGt/X2tFr7H8KBQrKfbGo9hmCubQraMxq5sj3bqDdKmDOLcE1a/EDCP9g0U4GHsa425J8VDIkQUHYz3h3ndEXQ==", "dependencies": { - "@expo/config-types": "^40.0.0-beta.2", - "@expo/configure-splash-screen": "0.4.0", - "@expo/image-utils": "0.3.14", + "@expo/config-types": "^41.0.0", "@expo/json-file": "8.2.30", "@expo/plist": "0.0.13", + "debug": "^4.3.1", "find-up": "~5.0.0", "fs-extra": "9.0.0", "getenv": "^1.0.0", @@ -2367,9 +2200,9 @@ } }, "node_modules/@expo/config-types": { - "version": "40.0.0-beta.2", - "resolved": "https://registry.npmjs.org/@expo/config-types/-/config-types-40.0.0-beta.2.tgz", - "integrity": "sha512-t9pHCQMXOP4nwd7LGXuHkLlFy0JdfknRSCAeVF4Kw2/y+5OBbR9hW9ZVnetpBf0kORrekgiI7K/qDaa3hh5+Qg==" + "version": "41.0.0", + "resolved": "https://registry.npmjs.org/@expo/config-types/-/config-types-41.0.0.tgz", + "integrity": "sha512-Ax0pHuY5OQaSrzplOkT9DdpdmNzaVDnq9VySb4Ujq7UJ4U4jriLy8u93W98zunOXpcu0iiKubPsqD6lCiq0pig==" }, "node_modules/@expo/config/node_modules/@babel/core": { "version": "7.9.0", @@ -2589,187 +2422,6 @@ "node": ">= 10.0.0" } }, - "node_modules/@expo/configure-splash-screen": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/@expo/configure-splash-screen/-/configure-splash-screen-0.4.0.tgz", - "integrity": "sha512-IDPnr2/DW1tYpDHqedFYNCDzRTf9HYinWFQ7fOelNZLuOCMoErLbSStA5zfkv46o69AgcCpteqgKHSoxsIBz5g==", - "dependencies": { - "color-string": "^1.5.3", - "commander": "^5.1.0", - "fs-extra": "^9.0.0", - "glob": "^7.1.6", - "lodash": "^4.17.15", - "pngjs": "^5.0.0", - "xcode": "^3.0.0", - "xml-js": "^1.6.11" - }, - "bin": { - "configure-splash-screen": "build/index-cli.js", - "expo-splash-screen": "build/index-cli.js" - }, - "engines": { - "node": ">=12" - } - }, - "node_modules/@expo/configure-splash-screen/node_modules/commander": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", - "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==", - "engines": { - "node": ">= 6" - } - }, - "node_modules/@expo/configure-splash-screen/node_modules/fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", - "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@expo/configure-splash-screen/node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dependencies": { - "universalify": "^2.0.0" - }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/@expo/configure-splash-screen/node_modules/universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@expo/image-utils": { - "version": "0.3.14", - "resolved": "https://registry.npmjs.org/@expo/image-utils/-/image-utils-0.3.14.tgz", - "integrity": "sha512-n+JkLZ71CWuNKLVVsPTzMGRwmbeKiVQw/2b99Ro7znCKzJy3tyE5T2C6WBvYh/5h/hjg8TqEODjXXWucRIzMXA==", - "dependencies": { - "@expo/spawn-async": "1.5.0", - "chalk": "^4.0.0", - "fs-extra": "9.0.0", - "getenv": "^1.0.0", - "jimp": "0.12.1", - "mime": "^2.4.4", - "node-fetch": "^2.6.0", - "parse-png": "^2.1.0", - "resolve-from": "^5.0.0", - "semver": "7.3.2", - "tempy": "0.3.0" - } - }, - "node_modules/@expo/image-utils/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@expo/image-utils/node_modules/chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@expo/image-utils/node_modules/fs-extra": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.0.tgz", - "integrity": "sha512-pmEYSk3vYsG/bF651KPUXZ+hvjpgWYw/Gc7W9NFUe3ZVLczKKWIij3IKpOrQcdw4TILtibFslZ0UmR8Vvzig4g==", - "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^1.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@expo/image-utils/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/@expo/image-utils/node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dependencies": { - "universalify": "^2.0.0" - }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/@expo/image-utils/node_modules/jsonfile/node_modules/universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", - "engines": { - "node": ">= 10.0.0" - } - }, - "node_modules/@expo/image-utils/node_modules/semver": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", - "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@expo/image-utils/node_modules/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==", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@expo/image-utils/node_modules/universalify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-1.0.0.tgz", - "integrity": "sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug==", - "engines": { - "node": ">= 10.0.0" - } - }, "node_modules/@expo/json-file": { "version": "8.2.30", "resolved": "https://registry.npmjs.org/@expo/json-file/-/json-file-8.2.30.tgz", @@ -2869,52 +2521,10 @@ "node": ">=8.0" } }, - "node_modules/@expo/spawn-async": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@expo/spawn-async/-/spawn-async-1.5.0.tgz", - "integrity": "sha512-LB7jWkqrHo+5fJHNrLAFdimuSXQ2MQ4lA7SQW5bf/HbsXuV2VrT/jN/M8f/KoWt0uJMGN4k/j7Opx4AvOOxSew==", - "dependencies": { - "cross-spawn": "^6.0.5" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/@expo/spawn-async/node_modules/cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "engines": { - "node": ">=4.8" - } - }, - "node_modules/@expo/spawn-async/node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "engines": { - "node": ">=4" - } - }, - "node_modules/@expo/spawn-async/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "bin": { - "semver": "bin/semver" - } - }, "node_modules/@formatjs/ecma402-abstract": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.9.3.tgz", - "integrity": "sha512-DBrRUL65m4SVtfq+T4Qltd8+upAzfb9K1MX0UZ0hqQ0wpBY0PSIti9XJe0ZQ/j2v/KxpwQ0Jw5NLumKVezJFQg==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.9.4.tgz", + "integrity": "sha512-ePJXI7tWC9PBxQxS7jtbkCLGVmpC8MH8n9Yjmg8dsh9wXK9svu7nAbq76Oiu5Zb+5GVkLkeTVerlSvHCbNImlA==", "dependencies": { "tslib": "^2.1.0" } @@ -2925,51 +2535,35 @@ "integrity": "sha512-mIqBr5uigIlx13eZTOPSEh2buDiy3BCdMYUtewICREQjbb4xarDiVWoXSnrERM7NanZ+0TAHNXSqDe6HpEFQUg==" }, "node_modules/@formatjs/icu-messageformat-parser": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.0.2.tgz", - "integrity": "sha512-3joegEnfoT4qF3uH6KsXYNeRGKOlskWQhdZYN2/Xw3R2ltmMf6PHUnTZ8Up7Gsx9jNT0lDPp4zGTgzHm76Ld3Q==", - "dependencies": { - "@formatjs/ecma402-abstract": "1.8.0", - "@formatjs/icu-skeleton-parser": "1.2.3", - "tslib": "^2.1.0" - } - }, - "node_modules/@formatjs/icu-messageformat-parser/node_modules/@formatjs/ecma402-abstract": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.8.0.tgz", - "integrity": "sha512-X+nxZcIQr0YfYNtw1ZkHjN3YSyi0fEmdAJqRzk24KwNvqLv7GmVfw70mf7ADnwOvkcrSaAdx24GfAqckGTv9ww==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.0.7.tgz", + "integrity": "sha512-gduYfh/YdBTmb1XzLueNaofiGZVMrkaDg0RSa0GNztKWs4QXIRS+28cjcuWNpV0q5S8aiLMkP7SHQpZKnPCHLw==", "dependencies": { + "@formatjs/ecma402-abstract": "1.9.4", + "@formatjs/icu-skeleton-parser": "1.2.8", "tslib": "^2.1.0" } }, "node_modules/@formatjs/icu-skeleton-parser": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.2.3.tgz", - "integrity": "sha512-kXNbOYDgTPV5xSzyxJx2SyVtju/TScXNRzEtL/jl2gOD6RXsYReaqi+sAOVnL+Q5boYRIjd+M9kdqIQlqiZA/Q==", - "dependencies": { - "@formatjs/ecma402-abstract": "1.8.0", - "tslib": "^2.1.0" - } - }, - "node_modules/@formatjs/icu-skeleton-parser/node_modules/@formatjs/ecma402-abstract": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.8.0.tgz", - "integrity": "sha512-X+nxZcIQr0YfYNtw1ZkHjN3YSyi0fEmdAJqRzk24KwNvqLv7GmVfw70mf7ADnwOvkcrSaAdx24GfAqckGTv9ww==", + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.2.8.tgz", + "integrity": "sha512-KLSSAA7Q2Uv7msij8saaOE5rpsHK/2WkfS3737JnDyVTFOYe8l2OarIBUoTC5gi1BnCgiN/1icZlqXwyUX6obA==", "dependencies": { + "@formatjs/ecma402-abstract": "1.9.4", "tslib": "^2.1.0" } }, "node_modules/@formatjs/intl": { - "version": "1.10.8", - "resolved": "https://registry.npmjs.org/@formatjs/intl/-/intl-1.10.8.tgz", - "integrity": "sha512-6oRCu1McizXKTUAg+THdxizba/IqYoUgxTJ4Vf3rE1mMnwOFfZnbJzS7OhdUcdikIkPhvr3GxoSFYsqYbvumQQ==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@formatjs/intl/-/intl-1.13.2.tgz", + "integrity": "sha512-aonTXXaI/Guqr4t87m/XWfmgE9aPefDTLRnCwadxBDkUHw1/HQeUV+lp/3BgiPZfemIdBq9UgdigDCwrpEwrTA==", "dependencies": { - "@formatjs/ecma402-abstract": "1.8.0", + "@formatjs/ecma402-abstract": "1.9.4", "@formatjs/fast-memoize": "1.1.1", - "@formatjs/icu-messageformat-parser": "2.0.2", - "@formatjs/intl-displaynames": "5.1.0", - "@formatjs/intl-listformat": "6.1.0", - "intl-messageformat": "9.6.14", + "@formatjs/icu-messageformat-parser": "2.0.7", + "@formatjs/intl-displaynames": "5.1.6", + "@formatjs/intl-listformat": "6.2.6", + "intl-messageformat": "9.7.1", "tslib": "^2.1.0" }, "peerDependencies": { @@ -2982,100 +2576,74 @@ } }, "node_modules/@formatjs/intl-datetimeformat": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/@formatjs/intl-datetimeformat/-/intl-datetimeformat-4.1.5.tgz", - "integrity": "sha512-qVs1yK5TLoM+j9izkDArPxgMqavMsD6vUYu6lFMo1p9m1lA6V+e92Qe0HYZ2E+QevwWnfoF3DmIw03XuUp564w==", + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/@formatjs/intl-datetimeformat/-/intl-datetimeformat-4.1.6.tgz", + "integrity": "sha512-o4M/RzBNAC/LmOwAd3W/3bsCT7xl9luddNdX9x1uZroS/8Wx6M8sE/KMNDCSZogZtmMasCBvpNmuQoeMyBBASg==", "dependencies": { - "@formatjs/ecma402-abstract": "1.9.3", + "@formatjs/ecma402-abstract": "1.9.4", "tslib": "^2.1.0" } }, "node_modules/@formatjs/intl-displaynames": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@formatjs/intl-displaynames/-/intl-displaynames-5.1.0.tgz", - "integrity": "sha512-2pwIlHcNBZ281ySsz/E6JURVDxWsIxHn/HyxmylxBQMeW2HeFq1YuP6ycAxSMfp+EtWAN4v8TgWJQM+YBI22FA==", - "dependencies": { - "@formatjs/ecma402-abstract": "1.8.0", - "tslib": "^2.1.0" - } - }, - "node_modules/@formatjs/intl-displaynames/node_modules/@formatjs/ecma402-abstract": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.8.0.tgz", - "integrity": "sha512-X+nxZcIQr0YfYNtw1ZkHjN3YSyi0fEmdAJqRzk24KwNvqLv7GmVfw70mf7ADnwOvkcrSaAdx24GfAqckGTv9ww==", + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/@formatjs/intl-displaynames/-/intl-displaynames-5.1.6.tgz", + "integrity": "sha512-s0eDyQFM2gQIPgn+MyaH+UcCvp6ui2ft9UW1gsIkjBkaprRlzKMd3fjxcUFO/I7oyXXA6FYR4qHR8u1I0+PvXA==", "dependencies": { + "@formatjs/ecma402-abstract": "1.9.4", "tslib": "^2.1.0" } }, "node_modules/@formatjs/intl-getcanonicallocales": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@formatjs/intl-getcanonicallocales/-/intl-getcanonicallocales-1.7.0.tgz", - "integrity": "sha512-3pQjp+WCHrFfkUeSuw//LIx/orcykopZX4U/2kY1jTYhATVJbKdU8Rl5V2/d+fw1naKjKYoIjIXGn85Ti396+A==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@formatjs/intl-getcanonicallocales/-/intl-getcanonicallocales-1.7.1.tgz", + "integrity": "sha512-U+q2TNDn5LZataWFbo1vokRUgLYabUeVaSGietn22wr6ZR2O2gpMKiejoVBiyaWTDJYLckN581fsZYoJw59NMg==", "dependencies": { - "cldr-core": "38", "tslib": "^2.1.0" } }, "node_modules/@formatjs/intl-listformat": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@formatjs/intl-listformat/-/intl-listformat-6.1.0.tgz", - "integrity": "sha512-NsDKO0U1mVFZmoyZ0ztFL+biqztDKv1qdSvPA1S5yOYZddDy6G9SpnBZgNjhxUFIBqycNW95ibO/jrI5Ou4s5Q==", - "dependencies": { - "@formatjs/ecma402-abstract": "1.8.0", - "tslib": "^2.1.0" - } - }, - "node_modules/@formatjs/intl-listformat/node_modules/@formatjs/ecma402-abstract": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.8.0.tgz", - "integrity": "sha512-X+nxZcIQr0YfYNtw1ZkHjN3YSyi0fEmdAJqRzk24KwNvqLv7GmVfw70mf7ADnwOvkcrSaAdx24GfAqckGTv9ww==", + "version": "6.2.6", + "resolved": "https://registry.npmjs.org/@formatjs/intl-listformat/-/intl-listformat-6.2.6.tgz", + "integrity": "sha512-6FMdQY1+QKqJW5IhsVPFuEaR/uRiBKP+Y1oDvamZKzDfJ2vQmk9jqSF51VztlZH8XSfdO0IgvBzeRPHahKChQA==", "dependencies": { + "@formatjs/ecma402-abstract": "1.9.4", "tslib": "^2.1.0" } }, "node_modules/@formatjs/intl-locale": { - "version": "2.4.32", - "resolved": "https://registry.npmjs.org/@formatjs/intl-locale/-/intl-locale-2.4.32.tgz", - "integrity": "sha512-jA6f4ASAO3P4mBl+1nxc+lhx6x74wP+ahUOKPK9tPYZmCn7JPTAlit0iWae79vH3wE9TblOTUZ9RwYlOPWzchw==", + "version": "2.4.33", + "resolved": "https://registry.npmjs.org/@formatjs/intl-locale/-/intl-locale-2.4.33.tgz", + "integrity": "sha512-m0bEQHCYrsGTH6tF1ABK6ikHXO1mVLgsjfoKcSHrsy31TksAzELZAdnnr0mtXf5nnvb5UfCnulPHEidQM5fwJw==", "dependencies": { - "@formatjs/ecma402-abstract": "1.9.3", - "@formatjs/intl-getcanonicallocales": "1.7.0", - "cldr-core": "38", + "@formatjs/ecma402-abstract": "1.9.4", + "@formatjs/intl-getcanonicallocales": "1.7.1", "tslib": "^2.1.0" } }, "node_modules/@formatjs/intl-numberformat": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/@formatjs/intl-numberformat/-/intl-numberformat-7.1.4.tgz", - "integrity": "sha512-rOFMlx1oLaQ7tLUwWWaqMvjQ8n4Z/C7jUlBG0qfM4oSOksluKO4MEyJZZeYjRVuNEMipIj34h12t8KicXj6gKg==", + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/@formatjs/intl-numberformat/-/intl-numberformat-7.1.5.tgz", + "integrity": "sha512-1U6IEp/1vf2XzfDjLWqJuQufRZY3/F9UfOCAVp14eYVb/+gZmG4Q3heJQZXOAKnnQl3YGG73Ez7UgFVo/rowGQ==", "dependencies": { - "@formatjs/ecma402-abstract": "1.9.3", + "@formatjs/ecma402-abstract": "1.9.4", "tslib": "^2.1.0" } }, "node_modules/@formatjs/intl-pluralrules": { - "version": "4.0.27", - "resolved": "https://registry.npmjs.org/@formatjs/intl-pluralrules/-/intl-pluralrules-4.0.27.tgz", - "integrity": "sha512-Q4RAXZXuhWwMWK3Vsbf9AIRBa9B+BTiWjNkzlCq77pCRQYo555owWrGxnZUVk2203wygOIkoRYSvP7Tu2RXNFA==", + "version": "4.0.28", + "resolved": "https://registry.npmjs.org/@formatjs/intl-pluralrules/-/intl-pluralrules-4.0.28.tgz", + "integrity": "sha512-sWtOHwEff6/cHuSk5l6zpcB3POPCYlBx3DUGASb7QU6AD/tO/oKW6oRHOCHbBdspkBEsUJByZ9LlP2r0Xw6yPQ==", "dependencies": { - "@formatjs/ecma402-abstract": "1.9.3", + "@formatjs/ecma402-abstract": "1.9.4", "tslib": "^2.1.0" } }, "node_modules/@formatjs/intl-relativetimeformat": { - "version": "9.1.6", - "resolved": "https://registry.npmjs.org/@formatjs/intl-relativetimeformat/-/intl-relativetimeformat-9.1.6.tgz", - "integrity": "sha512-u8hvqtpkiIJEVKzafbpaLQ0tvEFjFvb1WUzXk6rYKXOaKhYEhVaTVjVdCzSKr9bsDHuHMoSiR1SvqsP2ltCUHA==", - "dependencies": { - "@formatjs/ecma402-abstract": "1.9.3", - "tslib": "^2.1.0" - } - }, - "node_modules/@formatjs/intl/node_modules/@formatjs/ecma402-abstract": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.8.0.tgz", - "integrity": "sha512-X+nxZcIQr0YfYNtw1ZkHjN3YSyi0fEmdAJqRzk24KwNvqLv7GmVfw70mf7ADnwOvkcrSaAdx24GfAqckGTv9ww==", + "version": "9.1.7", + "resolved": "https://registry.npmjs.org/@formatjs/intl-relativetimeformat/-/intl-relativetimeformat-9.1.7.tgz", + "integrity": "sha512-uthmRnNg+agzulNxa4Em2Jbll1msbJdkb6CO8JrOg/CFHyXH9YPMaPjCxgzR2wdDeMjBjGnFhbTJZtqz5LN+Uw==", "dependencies": { + "@formatjs/ecma402-abstract": "1.9.4", "tslib": "^2.1.0" } }, @@ -3092,20 +2660,26 @@ "@hapi/hoek": "^9.0.0" } }, - "node_modules/@hypnosphi/create-react-context": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@hypnosphi/create-react-context/-/create-react-context-0.3.1.tgz", - "integrity": "sha512-V1klUed202XahrWJLLOT3EXNeCpFHCcJntdFGI15ntCwau+jfT386w7OFTMaCqOgXUH1fa0w/I1oZs+i/Rfr0A==", + "node_modules/@humanwhocodes/config-array": { + "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": { - "gud": "^1.0.0", - "warning": "^4.0.3" + "@humanwhocodes/object-schema": "^1.2.0", + "debug": "^4.1.1", + "minimatch": "^3.0.4" }, - "peerDependencies": { - "prop-types": "^15.0.0", - "react": ">=0.14.0" + "engines": { + "node": ">=10.10.0" } }, + "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 + }, "node_modules/@istanbuljs/load-nyc-config": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", @@ -4134,438 +3708,10 @@ "node": ">=8" } }, - "node_modules/@jimp/bmp": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/bmp/-/bmp-0.12.1.tgz", - "integrity": "sha512-t16IamuBMv4GiGa1VAMzsgrVKVANxXG81wXECzbikOUkUv7pKJ2vHZDgkLBEsZQ9sAvFCneM1+yoSRpuENrfVQ==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1", - "bmp-js": "^0.1.0" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/core": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/core/-/core-0.12.1.tgz", - "integrity": "sha512-mWfjExYEjHxBal+1gPesGChOQBSpxO7WUQkrO9KM7orboitOdQ15G5UA75ce7XVZ+5t+FQPOLmVkVZzzTQSEJA==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1", - "any-base": "^1.1.0", - "buffer": "^5.2.0", - "exif-parser": "^0.1.12", - "file-type": "^9.0.0", - "load-bmfont": "^1.3.1", - "mkdirp": "^0.5.1", - "phin": "^2.9.1", - "pixelmatch": "^4.0.2", - "tinycolor2": "^1.4.1" - } - }, - "node_modules/@jimp/custom": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/custom/-/custom-0.12.1.tgz", - "integrity": "sha512-bVClp8FEJ/11GFTKeRTrfH7NgUWvVO5/tQzO/68aOwMIhbz9BOYQGh533K9+mSy29VjZJo8jxZ0C9ZwYHuFwfA==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/core": "^0.12.1" - } - }, - "node_modules/@jimp/gif": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/gif/-/gif-0.12.1.tgz", - "integrity": "sha512-cGn/AcvMGUGcqR6ByClGSnrja4AYmTwsGVXTQ1+EmfAdTiy6ztGgZCTDpZ/tq4SpdHXwm9wDHez7damKhTrH0g==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1", - "omggif": "^1.0.9" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/jpeg": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/jpeg/-/jpeg-0.12.1.tgz", - "integrity": "sha512-UoCUHbKLj2CDCETd7LrJnmK/ExDsSfJXmc1pKkfgomvepjXogdl2KTHf141wL6D+9CfSD2VBWQLC5TvjMvcr9A==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1", - "jpeg-js": "^0.4.0" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-blit": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-blit/-/plugin-blit-0.12.1.tgz", - "integrity": "sha512-VRBB6bx6EpQuaH0WX8ytlGNqUQcmuxXBbzL3e+cD0W6MluYibzQy089okvXcyUS72Q+qpSMmUDCVr3pDqLAsSA==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-blur": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-blur/-/plugin-blur-0.12.1.tgz", - "integrity": "sha512-rTFY0yrwVJFNgNsAlYGn2GYCRLVEcPQ6cqAuhNylXuR/7oH3Acul+ZWafeKtvN8D8uMlth/6VP74gruXvwffZw==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-circle": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-circle/-/plugin-circle-0.12.1.tgz", - "integrity": "sha512-+/OiBDjby7RBbQoDX8ZsqJRr1PaGPdTaaKUVGAsrE7KCNO9ODYNFAizB9lpidXkGgJ4Wx5R4mJy21i22oY/a4Q==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-color": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-color/-/plugin-color-0.12.1.tgz", - "integrity": "sha512-xlnK/msWN4uZ+Bu7+UrCs9oMzTSA9QE0jWFnF3h0aBsD8t1LGxozkckHe8nHtC/y/sxIa8BGKSfkiaW+r6FbnA==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1", - "tinycolor2": "^1.4.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-contain": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-contain/-/plugin-contain-0.12.1.tgz", - "integrity": "sha512-WZ/D6G0jhnBh2bkBh610PEh/caGhAUIAxYLsQsfSSlOxPsDhbj3S6hMbFKRgnDvf0hsd5zTIA0j1B0UG4kh18A==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5", - "@jimp/plugin-blit": ">=0.3.5", - "@jimp/plugin-resize": ">=0.3.5", - "@jimp/plugin-scale": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-cover": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-cover/-/plugin-cover-0.12.1.tgz", - "integrity": "sha512-ddWwTQO40GcabJ2UwUYCeuNxnjV4rBTiLprnjGMqAJCzdz3q3Sp20FkRf+H+E22k2v2LHss8dIOFOF4i6ycr9Q==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5", - "@jimp/plugin-crop": ">=0.3.5", - "@jimp/plugin-resize": ">=0.3.5", - "@jimp/plugin-scale": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-crop": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-crop/-/plugin-crop-0.12.1.tgz", - "integrity": "sha512-CKjVkrNO8FDZKYVpMireQW4SgKBSOdF+Ip/1sWssHHe77+jGEKqOjhYju+VhT3dZJ3+75rJNI9II7Kethp+rTw==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-displace": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-displace/-/plugin-displace-0.12.1.tgz", - "integrity": "sha512-MQAw2iuf1/bVJ6P95WWTLA+WBjvIZ7TeGBerkvBaTK8oWdj+NSLNRIYOIoyPbZ7DTL8f1SN4Vd6KD6BZaoWrwg==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-dither": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-dither/-/plugin-dither-0.12.1.tgz", - "integrity": "sha512-mCrBHdx2ViTLJDLcrobqGLlGhZF/Mq41bURWlElQ2ArvrQ3/xR52We9DNDfC08oQ2JVb6q3v1GnCCdn0KNojGQ==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-fisheye": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-fisheye/-/plugin-fisheye-0.12.1.tgz", - "integrity": "sha512-CHvYSXtHNplzkkYzB44tENPDmvfUHiYCnAETTY+Hx58kZ0w8ERZ+OiLhUmiBcvH/QHm/US1iiNjgGUAfeQX6dg==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-flip": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-flip/-/plugin-flip-0.12.1.tgz", - "integrity": "sha512-xi+Yayrnln8A/C9E3yQBExjxwBSeCkt/ZQg1CxLgszVyX/3Zo8+nkV8MJYpkTpj8LCZGTOKlsE05mxu/a3lbJQ==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5", - "@jimp/plugin-rotate": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-gaussian": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-gaussian/-/plugin-gaussian-0.12.1.tgz", - "integrity": "sha512-7O6eKlhL37hsLfV6WAX1Cvce7vOqSwL1oWbBveC1agutDlrtvcTh1s2mQ4Pde654hCJu55mq1Ur10+ote5j3qw==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-invert": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-invert/-/plugin-invert-0.12.1.tgz", - "integrity": "sha512-JTAs7A1Erbxwl+7ph7tgcb2PZ4WzB+3nb2WbfiWU8iCrKj17mMDSc5soaCCycn8wfwqvgB1vhRfGpseOLWxsuQ==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-mask": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-mask/-/plugin-mask-0.12.1.tgz", - "integrity": "sha512-bnDdY0RO/x5Mhqoy+056SN1wEj++sD4muAKqLD2CIT8Zq5M/0TA4hkdf/+lwFy3H2C0YTK39PSE9xyb4jPX3kA==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-normalize": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-normalize/-/plugin-normalize-0.12.1.tgz", - "integrity": "sha512-4kSaI4JLM/PNjHwbnAHgyh51V5IlPfPxYvsZyZ1US32pebWtocxSMaSuOaJUg7OGSkwSDBv81UR2h5D+Dz1b5A==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-print": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-print/-/plugin-print-0.12.1.tgz", - "integrity": "sha512-T0lNS3qU9SwCHOEz7AGrdp50+gqiWGZibOL3350/X/dqoFs1EvGDjKVeWncsGCyLlpfd7M/AibHZgu8Fx2bWng==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1", - "load-bmfont": "^1.4.0" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5", - "@jimp/plugin-blit": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-resize": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-resize/-/plugin-resize-0.12.1.tgz", - "integrity": "sha512-sbNn4tdBGcgGlPt9XFxCuDl4ZOoxa8/Re8nAikyxYhRss2Dqz91ARbBQxOf1vlUGeicQMsjEuWbPQAogTSJRug==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-rotate": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-rotate/-/plugin-rotate-0.12.1.tgz", - "integrity": "sha512-RYkLzwG2ervG6hHy8iepbIVeWdT1kz4Qz044eloqo6c66MK0KAqp228YI8+CAKm0joQnVDC/A0FgRIj/K8uyAw==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5", - "@jimp/plugin-blit": ">=0.3.5", - "@jimp/plugin-crop": ">=0.3.5", - "@jimp/plugin-resize": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-scale": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-scale/-/plugin-scale-0.12.1.tgz", - "integrity": "sha512-zjNVI1fUj+ywfG78T1ZU33g9a5sk4rhEQkkhtny8koAscnVsDN2YaZEKoFli54kqaWh5kSS5DDL7a/9pEfXnFQ==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5", - "@jimp/plugin-resize": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-shadow": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-shadow/-/plugin-shadow-0.12.1.tgz", - "integrity": "sha512-Z82IwvunXWQ2jXegd3W3TYUXpfJcEvNbHodr7Z+oVnwhM1OoQ5QC6RSRQwsj2qXIhbGffQjH8eguHgEgAV+u5w==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5", - "@jimp/plugin-blur": ">=0.3.5", - "@jimp/plugin-resize": ">=0.3.5" - } - }, - "node_modules/@jimp/plugin-threshold": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-threshold/-/plugin-threshold-0.12.1.tgz", - "integrity": "sha512-PFezt5fSk0q+xKvdpuv0eLggy2I7EgYotrK8TRZOT0jimuYFXPF0Z514c6szumoW5kEsRz04L1HkPT1FqI97Yg==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5", - "@jimp/plugin-color": ">=0.8.0", - "@jimp/plugin-resize": ">=0.8.0" - } - }, - "node_modules/@jimp/plugins": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugins/-/plugins-0.12.1.tgz", - "integrity": "sha512-7+Yp29T6BbYo+Oqnc+m7A5AH+O+Oy5xnxvxlfmsp48+SuwEZ4akJp13Gu2PSmRlylENzR7MlWOxzhas5ERNlIg==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/plugin-blit": "^0.12.1", - "@jimp/plugin-blur": "^0.12.1", - "@jimp/plugin-circle": "^0.12.1", - "@jimp/plugin-color": "^0.12.1", - "@jimp/plugin-contain": "^0.12.1", - "@jimp/plugin-cover": "^0.12.1", - "@jimp/plugin-crop": "^0.12.1", - "@jimp/plugin-displace": "^0.12.1", - "@jimp/plugin-dither": "^0.12.1", - "@jimp/plugin-fisheye": "^0.12.1", - "@jimp/plugin-flip": "^0.12.1", - "@jimp/plugin-gaussian": "^0.12.1", - "@jimp/plugin-invert": "^0.12.1", - "@jimp/plugin-mask": "^0.12.1", - "@jimp/plugin-normalize": "^0.12.1", - "@jimp/plugin-print": "^0.12.1", - "@jimp/plugin-resize": "^0.12.1", - "@jimp/plugin-rotate": "^0.12.1", - "@jimp/plugin-scale": "^0.12.1", - "@jimp/plugin-shadow": "^0.12.1", - "@jimp/plugin-threshold": "^0.12.1", - "timm": "^1.6.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/png": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/png/-/png-0.12.1.tgz", - "integrity": "sha512-tOUSJMJzcMAN82F9/Q20IToquIVWzvOe/7NIpVQJn6m+Lq6TtVmd7d8gdcna9AEFm2FIza5lhq2Kta6Xj0KXhQ==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1", - "pngjs": "^3.3.3" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/png/node_modules/pngjs": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", - "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==", - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/@jimp/tiff": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/tiff/-/tiff-0.12.1.tgz", - "integrity": "sha512-bzWDgv3202TKhaBGzV9OFF0PVQWEb4194h9kv5js348SSnbCusz/tzTE1EwKrnbDZThZPgTB1ryKs7D+Q9Mhmg==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "utif": "^2.0.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/types": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/types/-/types-0.12.1.tgz", - "integrity": "sha512-hg5OKXpWWeKGuDrfibrjWWhr7hqb7f552wqnPWSLQpVrdWgjH+hpOv6cOzdo9bsU78qGTelZJPxr0ERRoc+MhQ==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/bmp": "^0.12.1", - "@jimp/gif": "^0.12.1", - "@jimp/jpeg": "^0.12.1", - "@jimp/png": "^0.12.1", - "@jimp/tiff": "^0.12.1", - "timm": "^1.6.1" - }, - "peerDependencies": { - "@jimp/custom": ">=0.3.5" - } - }, - "node_modules/@jimp/utils": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/utils/-/utils-0.12.1.tgz", - "integrity": "sha512-EjPkDQOzV/oZfbolEUgFT6SE++PtCccVBvjuACkttyCfl0P2jnpR49SwstyVLc2u8AwBAZEHHAw9lPYaMjtbXQ==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "regenerator-runtime": "^0.13.3" - } - }, "node_modules/@mattermost/react-native-emm": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@mattermost/react-native-emm/-/react-native-emm-1.1.3.tgz", - "integrity": "sha512-mqNJ6SQlzBp+F0qg411nOlQXJLj9pVUyDoVAbHGRP4p7PcAU2cQEbEyOJ82luLcqj+9+bcoW2tl19bO35FomWQ==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@mattermost/react-native-emm/-/react-native-emm-1.1.4.tgz", + "integrity": "sha512-Boi1lJ/pYHqhfU+xoSSo/qCt1colSVxgUjb0K3mfqvm3fhFtt41aZEg2yX46o6K7Rh1zAZv0zUk0xkYF5LDG4Q==", "peerDependencies": { "react": "*", "react-native": "*" @@ -4585,27 +3731,14 @@ } }, "node_modules/@mattermost/react-native-paste-input": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@mattermost/react-native-paste-input/-/react-native-paste-input-0.1.3.tgz", - "integrity": "sha512-SfMnSjUe8qhVXZW1H41SrB3dScTNsrWqL/c0HhEyoni6oFrsaLlVCkbUKnwr6XBR/HHOR9uhi2i92U8r6W1Guw==", + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/@mattermost/react-native-paste-input/-/react-native-paste-input-0.1.4.tgz", + "integrity": "sha512-ySAfEt9gP3rUKsUgWPMCLAx3iGPAP8Tqen0Hy9tIxkDHYuI8IvRAZbo73gY+3n26QxlkqTngxMxnxAR5n250zg==", "peerDependencies": { "react": "*", "react-native": "*" } }, - "node_modules/@mrmlnc/readdir-enhanced": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", - "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==", - "dev": true, - "dependencies": { - "call-me-maybe": "^1.0.1", - "glob-to-regexp": "^0.3.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/@nicolo-ribaudo/chokidar-2": { "version": "2.1.8-no-fsevents.2", "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/chokidar-2/-/chokidar-2-2.1.8-no-fsevents.2.tgz", @@ -4630,7 +3763,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" @@ -4643,7 +3775,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" } @@ -4652,7 +3783,6 @@ "version": "1.2.7", "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.7.tgz", "integrity": "sha512-BTIhocbPBSrRmHxOAJFtR18oLhxTtAFDAvL8hY1S3iU8k+E60W/YFs4jrixGzQjMpF4qPXxIQHcjVD9dz1C2QA==", - "dev": true, "dependencies": { "@nodelib/fs.scandir": "2.1.5", "fastq": "^1.6.0" @@ -4680,7 +3810,7 @@ "sql-escape-string": "^1.1.0" } }, - "node_modules/@nozbe/with-observables": { + "node_modules/@nozbe/watermelondb/node_modules/@nozbe/with-observables": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/@nozbe/with-observables/-/with-observables-1.3.0.tgz", "integrity": "sha512-pcE8+FeDgDmHJcKjTkFrC3qAoSG6UvofpF65Hs4pCSNn243G7Tu5Fdlo56n9tAXKr7X37f73VmT8g8wXdojO4w==", @@ -4693,16 +3823,41 @@ "react": "^16.4.2||^17" } }, - "node_modules/@popperjs/core": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.9.2.tgz", - "integrity": "sha512-VZMYa7+fXHdwIq1TDhSXoVmSPEGM/aa+6Aiq3nVVJ9bXr24zScr+NlKFKC3iPljA7ho/GAZr+d2jOf5GIRC30Q==", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/popperjs" + "node_modules/@nozbe/with-observables": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@nozbe/with-observables/-/with-observables-1.4.0.tgz", + "integrity": "sha512-vzc0QiYcXK/GmflBGBXTs02ayL25e1l4Cr9aYgSuYCZVqpyMfep9xp89RygNbiibAfVLbgEUa7thxlm3jw8hFw==", + "dependencies": { + "hoist-non-react-statics": "^3.3.2" + }, + "peerDependencies": { + "@types/hoist-non-react-statics": "^3.3.1", + "@types/react": "^16.9.23||^17", + "react": "^16.4.2||^17" } }, + "node_modules/@octetstream/promisify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@octetstream/promisify/-/promisify-2.0.2.tgz", + "integrity": "sha512-7XHoRB61hxsz8lBQrjC1tq/3OEIgpvGWg6DKAdwi7WRzruwkmsdwmOoUXbU4Dtd4RSOMDwed0SkP3y8UlMt1Bg==", + "engines": { + "node": "6.x || >=8.x" + } + }, + "node_modules/@open-policy-agent/opa-wasm": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@open-policy-agent/opa-wasm/-/opa-wasm-1.2.0.tgz", + "integrity": "sha512-CtUBTnzvDrT0NASa8IuGQTxFGgt2vxbLnMYuTA+uDFxOcA4uK4mGFgrhHJtxUZnWHiwemOvKKSY3BMCo7qiAsQ==", + "dependencies": { + "sprintf-js": "^1.1.2", + "utf8": "^3.0.0" + } + }, + "node_modules/@open-policy-agent/opa-wasm/node_modules/sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==" + }, "node_modules/@react-native-community/async-storage": { "version": "1.12.1", "resolved": "https://registry.npmjs.org/@react-native-community/async-storage/-/async-storage-1.12.1.tgz", @@ -5741,9 +4896,9 @@ "integrity": "sha512-0jbp4RxjYopTsIdLl+/Fy2TiwVYHy4mgeu07DG4b/LyM0OS/+lPP5c9sbnt/AMlnF6qz2JRZpPpGw1eMNS6A4w==" }, "node_modules/@rudderstack/rudder-sdk-react-native": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/@rudderstack/rudder-sdk-react-native/-/rudder-sdk-react-native-1.0.10.tgz", - "integrity": "sha512-d1qraDHJCc3f8mpczzMie0RAIJ1UuR557cIKUHbBHda/KeSxeSdBobs1oGxztza1ZCCoZtAjs4i0WdXFr4+gsw==", + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/@rudderstack/rudder-sdk-react-native/-/rudder-sdk-react-native-1.0.12.tgz", + "integrity": "sha512-s/w86gpWwvNaP0H5syJtMyM3AM20OzBUN7cub7qXXuCo0oX56I37420s5+/qif5f7T5pfiFfQYAAboI8Z2l1YA==", "dependencies": { "@babel/runtime": "^7.7.7", "@types/react-native": "^0.62.2", @@ -5895,9 +5050,9 @@ } }, "node_modules/@sentry/react-native": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/@sentry/react-native/-/react-native-2.5.2.tgz", - "integrity": "sha512-AwcDZ+1SQ1EBFwnlYFGwSF/T3KrV1kdir3H9XOtR8WrxaItbwlkqwwP7D1EBMHu02WmuOgJ2a8aJlrhqEJ2pYA==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@sentry/react-native/-/react-native-2.6.0.tgz", + "integrity": "sha512-Sajrg7GWSZ1S26X2mIHRt+wCuc7CuPjdmx8tQfDg6cpswXgqryb0fv99VCpImb4ZB/WiaCTu2z9BSGUiZahnBg==", "dependencies": { "@sentry/browser": "6.7.1", "@sentry/core": "6.7.1", @@ -6007,6 +5162,17 @@ "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==" }, + "node_modules/@sindresorhus/is": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.0.1.tgz", + "integrity": "sha512-Qm9hBEBu18wt1PO2flE7LPb30BHMQt1eQgbV76YntdNk73XZGpn3izvGTYxbGgzXKgbCjiia0uxTd3aTNQrY/g==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/is?sponsor=1" + } + }, "node_modules/@sinonjs/commons": { "version": "1.8.3", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", @@ -6026,840 +5192,256 @@ "@sinonjs/commons": "^1.7.0" } }, - "node_modules/@storybook/addon-knobs": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/addon-knobs/-/addon-knobs-6.2.9.tgz", - "integrity": "sha512-ic3xXy9uWPfIGP4x3VuGnrUmg/Jn9rHKIqZMhRcC7mFDRVlgbekvQxaruC6VY9LW6o8jV/miReSZkJf7M8o0aQ==", - "dev": true, + "node_modules/@snyk/child-process": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@snyk/child-process/-/child-process-0.3.1.tgz", + "integrity": "sha512-iJn0ENqf3xnYQdG/j9+pdqQPTrXCNXWU3I/AXGFx6Zr8IRBqBr5vXGTuwIJBYkq7s6bfIfz5AjUgPShCzeqn0w==", "dependencies": { - "@storybook/addons": "6.2.9", - "@storybook/api": "6.2.9", - "@storybook/channels": "6.2.9", - "@storybook/client-api": "6.2.9", - "@storybook/components": "6.2.9", - "@storybook/core-events": "6.2.9", - "@storybook/theming": "6.2.9", - "copy-to-clipboard": "^3.3.1", - "core-js": "^3.8.2", - "escape-html": "^1.0.3", - "fast-deep-equal": "^3.1.3", - "global": "^4.4.0", - "lodash": "^4.17.20", - "prop-types": "^15.7.2", - "qs": "^6.10.0", - "react-colorful": "^5.0.1", - "react-lifecycles-compat": "^3.0.4", - "react-select": "^3.2.0", - "regenerator-runtime": "^0.13.7" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0", - "react-dom": "^16.8.0 || ^17.0.0" - }, - "peerDependenciesMeta": { - "react": { - "optional": true - }, - "react-dom": { - "optional": true - } - } - }, - "node_modules/@storybook/addon-ondevice-knobs": { - "version": "5.3.25", - "resolved": "https://registry.npmjs.org/@storybook/addon-ondevice-knobs/-/addon-ondevice-knobs-5.3.25.tgz", - "integrity": "sha512-jbPNcbtLv3I7iGUYN7ZCXBPCg2Qr8s06Nz8S+GEYTKr/KqySPi7in2vNeZi7DqYcKe9ZtcbjdCe5emZuIAVu5A==", - "dev": true, - "dependencies": { - "@emotion/native": "^10.0.14", - "@storybook/addons": "5.3.21", - "@storybook/core-events": "5.3.21", - "core-js": "^3.0.1", - "deep-equal": "^1.0.1", - "prop-types": "^15.7.2", - "react-native-modal-datetime-picker": "^7.4.2", - "react-native-modal-selector": "^2.0.2", - "tinycolor2": "^1.4.1" - }, - "peerDependencies": { - "@storybook/addon-knobs": "5.3.21", - "react": "*", - "react-native": "*" - } - }, - "node_modules/@storybook/addon-ondevice-knobs/node_modules/@reach/router": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@reach/router/-/router-1.3.4.tgz", - "integrity": "sha512-+mtn9wjlB9NN2CNnnC/BRYtwdKBfSyyasPYraNAyvaV1occr/5NnB4CVzjEZipNHwYebQwcndGUmpFzxAUoqSA==", - "dev": true, - "dependencies": { - "create-react-context": "0.3.0", - "invariant": "^2.2.3", - "prop-types": "^15.6.1", - "react-lifecycles-compat": "^3.0.4" - }, - "peerDependencies": { - "react": "15.x || 16.x || 16.4.0-alpha.0911da3", - "react-dom": "15.x || 16.x || 16.4.0-alpha.0911da3" - } - }, - "node_modules/@storybook/addon-ondevice-knobs/node_modules/@storybook/addons": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/addons/-/addons-5.3.21.tgz", - "integrity": "sha512-Ji/21WADTLVbTbiKcZ64BcL0Es+h1Afxx3kNmGJqPSTUYroCwIFCT9mUzCqU6G+YyWaISAmTii5UJkTwMkChwA==", - "dev": true, - "dependencies": { - "@storybook/api": "5.3.21", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "core-js": "^3.0.1", - "global": "^4.3.2", - "util-deprecate": "^1.0.2" - } - }, - "node_modules/@storybook/addon-ondevice-knobs/node_modules/@storybook/api": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/api/-/api-5.3.21.tgz", - "integrity": "sha512-K1o4an/Rx8daKRDooks6qzN6ZGyqizeacZZbair3F8CsSfTgrr2zCcf9pgKojLQa9koEmMHlcdb2KnS+GwPEgA==", - "dev": true, - "dependencies": { - "@reach/router": "^1.2.1", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "@storybook/csf": "0.0.1", - "@storybook/router": "5.3.21", - "@storybook/theming": "5.3.21", - "@types/reach__router": "^1.2.3", - "core-js": "^3.0.1", - "fast-deep-equal": "^2.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "prop-types": "^15.6.2", - "react": "^16.8.3", - "semver": "^6.0.0", - "shallow-equal": "^1.1.0", - "store2": "^2.7.1", - "telejson": "^3.2.0", - "util-deprecate": "^1.0.2" - }, - "peerDependencies": { - "regenerator-runtime": "*" - } - }, - "node_modules/@storybook/addon-ondevice-knobs/node_modules/@storybook/api/node_modules/@storybook/router": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/router/-/router-5.3.21.tgz", - "integrity": "sha512-c29m5UikK5Q1lyd6FltOGFhIcpd6PIb855YS3OUNe3F6ZA1tfJ+aNKrCBc65d1c+fvCGG76dYYYv0RvwEmKXXg==", - "dev": true, - "dependencies": { - "@reach/router": "^1.2.1", - "@storybook/csf": "0.0.1", - "@types/reach__router": "^1.2.3", - "core-js": "^3.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "qs": "^6.6.0", - "util-deprecate": "^1.0.2" - }, - "peerDependencies": { - "react": "*", - "react-dom": "*" - } - }, - "node_modules/@storybook/addon-ondevice-knobs/node_modules/@storybook/api/node_modules/@storybook/theming": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-5.3.21.tgz", - "integrity": "sha512-FZbxjizqdO9lV5LUixPio/7+6UdPiswCzTJn8Hcot9uwwgfnrViRdN7xyjmSYRqv9nHP3OlYbtdeCAgZ4aPq8g==", - "dev": true, - "dependencies": { - "@emotion/core": "^10.0.20", - "@emotion/styled": "^10.0.17", - "@storybook/client-logger": "5.3.21", - "core-js": "^3.0.1", - "deep-object-diff": "^1.1.0", - "emotion-theming": "^10.0.19", - "global": "^4.3.2", - "memoizerific": "^1.11.3", - "polished": "^3.3.1", - "prop-types": "^15.7.2", - "resolve-from": "^5.0.0", - "ts-dedent": "^1.1.0" - }, - "peerDependencies": { - "react": "*", - "react-dom": "*" - } - }, - "node_modules/@storybook/addon-ondevice-knobs/node_modules/@storybook/api/node_modules/react": { - "version": "16.14.0", - "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", - "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", - "dev": true, - "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@storybook/addon-ondevice-knobs/node_modules/@storybook/channels": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-5.3.21.tgz", - "integrity": "sha512-OXoFs9XtBVg/cCk6lYMrxkzaNlJRf54ABdorp7YAAj7S9tRL1JxOZHxmjNQwEoiRvssmem2rAWtEAxfuEANsAA==", - "dev": true, - "dependencies": { - "core-js": "^3.0.1" - } - }, - "node_modules/@storybook/addon-ondevice-knobs/node_modules/@storybook/client-logger": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-5.3.21.tgz", - "integrity": "sha512-OzQkwpZ5SK9cXD9Mv6lxPGPot+hSZvnkEW12kpt1AHfJz4ET26YTDOI3oetPsjfRJo6qYLeQX8+wF7rklfXbzA==", - "dev": true, - "dependencies": { - "core-js": "^3.0.1" - } - }, - "node_modules/@storybook/addon-ondevice-knobs/node_modules/@storybook/core-events": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-5.3.21.tgz", - "integrity": "sha512-/Zsm1sKAh6pzQv8jQUmuhM7nuM01ZljIRKy8p2HjPNlMjDB5yaRkBfyeAUXUg+qXNI6aHVWa4jGdPEdwwY4oLA==", - "dev": true, - "dependencies": { - "core-js": "^3.0.1" - } - }, - "node_modules/@storybook/addon-ondevice-knobs/node_modules/create-react-context": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/create-react-context/-/create-react-context-0.3.0.tgz", - "integrity": "sha512-dNldIoSuNSvlTJ7slIKC/ZFGKexBMBrrcc+TTe1NdmROnaASuLPvqpwj9v4XS4uXZ8+YPu0sNmShX2rXI5LNsw==", - "dev": true, - "dependencies": { - "gud": "^1.0.0", - "warning": "^4.0.3" - }, - "peerDependencies": { - "prop-types": "^15.0.0", - "react": "^0.14.0 || ^15.0.0 || ^16.0.0" - } - }, - "node_modules/@storybook/addon-ondevice-knobs/node_modules/deep-equal": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", - "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", - "dev": true, - "dependencies": { - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.1", - "is-regex": "^1.0.4", - "object-is": "^1.0.1", - "object-keys": "^1.1.1", - "regexp.prototype.flags": "^1.2.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/@storybook/addon-ondevice-knobs/node_modules/fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "node_modules/@storybook/addon-ondevice-knobs/node_modules/isobject": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", - "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@storybook/addon-ondevice-knobs/node_modules/polished": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/polished/-/polished-3.7.2.tgz", - "integrity": "sha512-pQKtpZGmsZrW8UUpQMAnR7s3ppHeMQVNyMDKtUyKwuvDmklzcEyM5Kllb3JyE/sE/x7arDmyd35i+4vp99H6sQ==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.12.5" + "debug": "^4.1.1", + "source-map-support": "^0.5.16", + "tslib": "^1.10.0" }, "engines": { "node": ">=10" } }, - "node_modules/@storybook/addon-ondevice-knobs/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } + "node_modules/@snyk/child-process/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/@storybook/addon-ondevice-knobs/node_modules/telejson": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/telejson/-/telejson-3.3.0.tgz", - "integrity": "sha512-er08AylQ+LEbDLp1GRezORZu5wKOHaBczF6oYJtgC3Idv10qZ8A3p6ffT+J5BzDKkV9MqBvu8HAKiIIOp6KJ2w==", - "dev": true, + "node_modules/@snyk/cli-interface": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@snyk/cli-interface/-/cli-interface-2.11.0.tgz", + "integrity": "sha512-T3xfDqrEFKclHGdJx4/5+D5F7e76/99f33guE4RTlVITBhy7VVnjz4t/NDr3UYqcC0MgAmiC4bSVYHnlshuwJw==", "dependencies": { - "@types/is-function": "^1.0.0", - "global": "^4.4.0", - "is-function": "^1.0.1", - "is-regex": "^1.0.4", - "is-symbol": "^1.0.3", - "isobject": "^4.0.0", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3" - } - }, - "node_modules/@storybook/addon-ondevice-knobs/node_modules/ts-dedent": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-1.2.0.tgz", - "integrity": "sha512-6zSJp23uQI+Txyz5LlXMXAHpUhY4Hi0oluXny0OgIR7g/Cromq4vDBnhtbBdyIV34g0pgwxUvnvg+jLJe4c1NA==", - "dev": true, - "engines": { - "node": ">=6.10" - } - }, - "node_modules/@storybook/addons": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/addons/-/addons-6.2.9.tgz", - "integrity": "sha512-GnmEKbJwiN1jncN9NSA8CuR1i2XAlasPcl/Zn0jkfV9WitQeczVcJCPw86SGH84AD+tTBCyF2i9UC0KaOV1YBQ==", - "dev": true, - "dependencies": { - "@storybook/api": "6.2.9", - "@storybook/channels": "6.2.9", - "@storybook/client-logger": "6.2.9", - "@storybook/core-events": "6.2.9", - "@storybook/router": "6.2.9", - "@storybook/theming": "6.2.9", - "core-js": "^3.8.2", - "global": "^4.4.0", - "regenerator-runtime": "^0.13.7" + "@types/graphlib": "^2" }, "peerDependencies": { - "react": "^16.8.0 || ^17.0.0", - "react-dom": "^16.8.0 || ^17.0.0" + "@snyk/dep-graph": "^1" } }, - "node_modules/@storybook/api": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/api/-/api-6.2.9.tgz", - "integrity": "sha512-okkA3HAScE9tGnYBrjTOcgzT+L1lRHNoEh3ZfGgh1u/XNEyHGNkj4grvkd6nX7BzRcYQ/l2VkcKCqmOjUnSkVQ==", - "dev": true, + "node_modules/@snyk/cloud-config-parser": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@snyk/cloud-config-parser/-/cloud-config-parser-1.9.3.tgz", + "integrity": "sha512-qv9NsIESPtyC2vKkqA7wEFePNuklksnQWJTWX8Cy3CQoCpZk80XwH50OVpDIU2szgnkWUm1XNSahG/IwVMSbOw==", "dependencies": { - "@reach/router": "^1.3.4", - "@storybook/channels": "6.2.9", - "@storybook/client-logger": "6.2.9", - "@storybook/core-events": "6.2.9", - "@storybook/csf": "0.0.1", - "@storybook/router": "6.2.9", - "@storybook/semver": "^7.3.2", - "@storybook/theming": "6.2.9", - "@types/reach__router": "^1.3.7", - "core-js": "^3.8.2", - "fast-deep-equal": "^3.1.3", - "global": "^4.4.0", - "lodash": "^4.17.20", - "memoizerific": "^1.11.3", - "qs": "^6.10.0", - "regenerator-runtime": "^0.13.7", - "store2": "^2.12.0", - "telejson": "^5.1.0", - "ts-dedent": "^2.0.0", - "util-deprecate": "^1.0.2" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0", - "react-dom": "^16.8.0 || ^17.0.0" - } - }, - "node_modules/@storybook/api/node_modules/@reach/router": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@reach/router/-/router-1.3.4.tgz", - "integrity": "sha512-+mtn9wjlB9NN2CNnnC/BRYtwdKBfSyyasPYraNAyvaV1occr/5NnB4CVzjEZipNHwYebQwcndGUmpFzxAUoqSA==", - "dev": true, - "dependencies": { - "create-react-context": "0.3.0", - "invariant": "^2.2.3", - "prop-types": "^15.6.1", - "react-lifecycles-compat": "^3.0.4" - }, - "peerDependencies": { - "react": "15.x || 16.x || 16.4.0-alpha.0911da3", - "react-dom": "15.x || 16.x || 16.4.0-alpha.0911da3" - } - }, - "node_modules/@storybook/api/node_modules/create-react-context": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/create-react-context/-/create-react-context-0.3.0.tgz", - "integrity": "sha512-dNldIoSuNSvlTJ7slIKC/ZFGKexBMBrrcc+TTe1NdmROnaASuLPvqpwj9v4XS4uXZ8+YPu0sNmShX2rXI5LNsw==", - "dev": true, - "dependencies": { - "gud": "^1.0.0", - "warning": "^4.0.3" - }, - "peerDependencies": { - "prop-types": "^15.0.0", - "react": "^0.14.0 || ^15.0.0 || ^16.0.0" - } - }, - "node_modules/@storybook/channel-postmessage": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/channel-postmessage/-/channel-postmessage-6.2.9.tgz", - "integrity": "sha512-OqV+gLeeCHR0KExsIz0B7gD17Cjd9D+I75qnBsLWM9inWO5kc/WZ5svw8Bvjlcm6snWpvxUaT8L+svuqcPSmww==", - "dev": true, - "dependencies": { - "@storybook/channels": "6.2.9", - "@storybook/client-logger": "6.2.9", - "@storybook/core-events": "6.2.9", - "core-js": "^3.8.2", - "global": "^4.4.0", - "qs": "^6.10.0", - "telejson": "^5.1.0" - } - }, - "node_modules/@storybook/channel-websocket": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/channel-websocket/-/channel-websocket-5.3.21.tgz", - "integrity": "sha512-9TcsCvgZMdCZu2urudyLhshuQxjCsFUd8pu6ZzcxBFn5a8kgb1oKEv9pD0A9S+uQ2ramYgtqykRiG4Z3/JeuyA==", - "dev": true, - "dependencies": { - "@storybook/channels": "5.3.21", - "core-js": "^3.0.1", - "global": "^4.3.2", - "telejson": "^3.2.0" - } - }, - "node_modules/@storybook/channel-websocket/node_modules/@storybook/channels": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-5.3.21.tgz", - "integrity": "sha512-OXoFs9XtBVg/cCk6lYMrxkzaNlJRf54ABdorp7YAAj7S9tRL1JxOZHxmjNQwEoiRvssmem2rAWtEAxfuEANsAA==", - "dev": true, - "dependencies": { - "core-js": "^3.0.1" - } - }, - "node_modules/@storybook/channel-websocket/node_modules/isobject": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", - "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@storybook/channel-websocket/node_modules/telejson": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/telejson/-/telejson-3.3.0.tgz", - "integrity": "sha512-er08AylQ+LEbDLp1GRezORZu5wKOHaBczF6oYJtgC3Idv10qZ8A3p6ffT+J5BzDKkV9MqBvu8HAKiIIOp6KJ2w==", - "dev": true, - "dependencies": { - "@types/is-function": "^1.0.0", - "global": "^4.4.0", - "is-function": "^1.0.1", - "is-regex": "^1.0.4", - "is-symbol": "^1.0.3", - "isobject": "^4.0.0", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3" - } - }, - "node_modules/@storybook/channels": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-6.2.9.tgz", - "integrity": "sha512-6dC8Fb2ipNyOQXnUZMDeEUaJGH5DMLzyHlGLhVyDtrO5WR6bO8mQdkzf4+5dSKXgCBNX0BSkssXth4pDjn18rg==", - "dev": true, - "dependencies": { - "core-js": "^3.8.2", - "ts-dedent": "^2.0.0", - "util-deprecate": "^1.0.2" - } - }, - "node_modules/@storybook/client-api": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/client-api/-/client-api-6.2.9.tgz", - "integrity": "sha512-aLvEUVkbvv6Qo/2mF4rFCecdqi2CGOUDdsV1a6EFIVS/9gXFdpirsOwKHo9qNjacGdWPlBYGCUcbrw+DvNaSFA==", - "dev": true, - "dependencies": { - "@storybook/addons": "6.2.9", - "@storybook/channel-postmessage": "6.2.9", - "@storybook/channels": "6.2.9", - "@storybook/client-logger": "6.2.9", - "@storybook/core-events": "6.2.9", - "@storybook/csf": "0.0.1", - "@types/qs": "^6.9.5", - "@types/webpack-env": "^1.16.0", - "core-js": "^3.8.2", - "global": "^4.4.0", - "lodash": "^4.17.20", - "memoizerific": "^1.11.3", - "qs": "^6.10.0", - "regenerator-runtime": "^0.13.7", - "stable": "^0.1.8", - "store2": "^2.12.0", - "ts-dedent": "^2.0.0", - "util-deprecate": "^1.0.2" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0", - "react-dom": "^16.8.0 || ^17.0.0" - } - }, - "node_modules/@storybook/client-logger": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-6.2.9.tgz", - "integrity": "sha512-IfOQZuvpjh66qBInQCJOb9S0dTGpzZ/Cxlcvokp+PYt95KztaWN3mPm+HaDQCeRsrWNe0Bpm1zuickcJ6dBOXg==", - "dev": true, - "dependencies": { - "core-js": "^3.8.2", - "global": "^4.4.0" - } - }, - "node_modules/@storybook/components": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/components/-/components-6.2.9.tgz", - "integrity": "sha512-hnV1MI2aB2g1sJ7NJphpxi7TwrMZQ/tpCJeHnkjmzyC6ez1MXqcBXGrEEdSXzRfAxjQTOEpu6H1mnns0xMP0Ag==", - "dev": true, - "dependencies": { - "@popperjs/core": "^2.6.0", - "@storybook/client-logger": "6.2.9", - "@storybook/csf": "0.0.1", - "@storybook/theming": "6.2.9", - "@types/color-convert": "^2.0.0", - "@types/overlayscrollbars": "^1.12.0", - "@types/react-syntax-highlighter": "11.0.5", - "color-convert": "^2.0.1", - "core-js": "^3.8.2", - "fast-deep-equal": "^3.1.3", - "global": "^4.4.0", - "lodash": "^4.17.20", - "markdown-to-jsx": "^7.1.0", - "memoizerific": "^1.11.3", - "overlayscrollbars": "^1.13.1", - "polished": "^4.0.5", - "prop-types": "^15.7.2", - "react-colorful": "^5.0.1", - "react-popper-tooltip": "^3.1.1", - "react-syntax-highlighter": "^13.5.3", - "react-textarea-autosize": "^8.3.0", - "regenerator-runtime": "^0.13.7", - "ts-dedent": "^2.0.0", - "util-deprecate": "^1.0.2" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0", - "react-dom": "^16.8.0 || ^17.0.0" - } - }, - "node_modules/@storybook/core": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/core/-/core-5.3.21.tgz", - "integrity": "sha512-plD47WIsn/JoyRJDOpmH7N7mEMo/jiA8ZlOitLW55zYvzUn8UrVpRFpMYo91OJxiCT6JFoaEh3XtNdhbgUwnPA==", - "dev": true, - "dependencies": { - "@babel/plugin-proposal-class-properties": "^7.7.0", - "@babel/plugin-proposal-object-rest-spread": "^7.6.2", - "@babel/plugin-syntax-dynamic-import": "^7.2.0", - "@babel/plugin-transform-react-constant-elements": "^7.2.0", - "@babel/preset-env": "^7.4.5", - "@storybook/addons": "5.3.21", - "@storybook/channel-postmessage": "5.3.21", - "@storybook/client-api": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "@storybook/csf": "0.0.1", - "@storybook/node-logger": "5.3.21", - "@storybook/router": "5.3.21", - "@storybook/theming": "5.3.21", - "@storybook/ui": "5.3.21", - "airbnb-js-shims": "^2.2.1", - "ansi-to-html": "^0.6.11", - "autoprefixer": "^9.7.2", - "babel-plugin-add-react-displayname": "^0.0.5", - "babel-plugin-emotion": "^10.0.20", - "babel-plugin-macros": "^2.7.0", - "babel-preset-minify": "^0.5.0 || 0.6.0-alpha.5", - "boxen": "^4.1.0", - "case-sensitive-paths-webpack-plugin": "^2.2.0", - "chalk": "^3.0.0", - "cli-table3": "0.5.1", - "commander": "^4.0.1", - "core-js": "^3.0.1", - "corejs-upgrade-webpack-plugin": "^2.2.0", - "css-loader": "^3.0.0", - "detect-port": "^1.3.0", - "dotenv-webpack": "^1.7.0", - "ejs": "^2.7.4", - "express": "^4.17.0", - "file-loader": "^4.2.0", - "file-system-cache": "^1.0.5", - "find-cache-dir": "^3.0.0", - "find-up": "^4.1.0", - "fs-extra": "^8.0.1", - "glob-base": "^0.3.0", - "global": "^4.3.2", - "html-webpack-plugin": "^4.0.0-beta.2", - "inquirer": "^7.0.0", - "interpret": "^2.0.0", - "ip": "^1.1.5", - "json5": "^2.1.1", - "lazy-universal-dotenv": "^3.0.1", - "micromatch": "^4.0.2", - "node-fetch": "^2.6.0", - "open": "^7.0.0", - "pnp-webpack-plugin": "1.5.0", - "postcss-flexbugs-fixes": "^4.1.0", - "postcss-loader": "^3.0.0", - "pretty-hrtime": "^1.0.3", - "qs": "^6.6.0", - "raw-loader": "^3.1.0", - "react-dev-utils": "^9.0.0", - "regenerator-runtime": "^0.13.3", - "resolve": "^1.11.0", - "resolve-from": "^5.0.0", - "semver": "^6.0.0", - "serve-favicon": "^2.5.0", - "shelljs": "^0.8.3", - "style-loader": "^1.0.0", - "terser-webpack-plugin": "^2.1.2", - "ts-dedent": "^1.1.0", - "unfetch": "^4.1.0", - "url-loader": "^2.0.1", - "util-deprecate": "^1.0.2", - "webpack": "^4.33.0", - "webpack-dev-middleware": "^3.7.0", - "webpack-hot-middleware": "^2.25.0", - "webpack-virtual-modules": "^0.2.0" - }, - "peerDependencies": { - "@babel/core": "*", - "babel-loader": "^7.0.0 || ^8.0.0", - "react": "*", - "react-dom": "*" - } - }, - "node_modules/@storybook/core-events": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-6.2.9.tgz", - "integrity": "sha512-xQmbX/oYQK1QsAGN8hriXX5SUKOoTUe3L4dVaVHxJqy7MReRWJpprJmCpbAPJzWS6WCbDFfCM5kVEexHLOzJlQ==", - "dev": true, - "dependencies": { - "core-js": "^3.8.2" - } - }, - "node_modules/@storybook/core/node_modules/@reach/router": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@reach/router/-/router-1.3.4.tgz", - "integrity": "sha512-+mtn9wjlB9NN2CNnnC/BRYtwdKBfSyyasPYraNAyvaV1occr/5NnB4CVzjEZipNHwYebQwcndGUmpFzxAUoqSA==", - "dev": true, - "dependencies": { - "create-react-context": "0.3.0", - "invariant": "^2.2.3", - "prop-types": "^15.6.1", - "react-lifecycles-compat": "^3.0.4" - }, - "peerDependencies": { - "react": "15.x || 16.x || 16.4.0-alpha.0911da3", - "react-dom": "15.x || 16.x || 16.4.0-alpha.0911da3" - } - }, - "node_modules/@storybook/core/node_modules/@storybook/addons": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/addons/-/addons-5.3.21.tgz", - "integrity": "sha512-Ji/21WADTLVbTbiKcZ64BcL0Es+h1Afxx3kNmGJqPSTUYroCwIFCT9mUzCqU6G+YyWaISAmTii5UJkTwMkChwA==", - "dev": true, - "dependencies": { - "@storybook/api": "5.3.21", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "core-js": "^3.0.1", - "global": "^4.3.2", - "util-deprecate": "^1.0.2" - } - }, - "node_modules/@storybook/core/node_modules/@storybook/api": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/api/-/api-5.3.21.tgz", - "integrity": "sha512-K1o4an/Rx8daKRDooks6qzN6ZGyqizeacZZbair3F8CsSfTgrr2zCcf9pgKojLQa9koEmMHlcdb2KnS+GwPEgA==", - "dev": true, - "dependencies": { - "@reach/router": "^1.2.1", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "@storybook/csf": "0.0.1", - "@storybook/router": "5.3.21", - "@storybook/theming": "5.3.21", - "@types/reach__router": "^1.2.3", - "core-js": "^3.0.1", - "fast-deep-equal": "^2.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "prop-types": "^15.6.2", - "react": "^16.8.3", - "semver": "^6.0.0", - "shallow-equal": "^1.1.0", - "store2": "^2.7.1", - "telejson": "^3.2.0", - "util-deprecate": "^1.0.2" - }, - "peerDependencies": { - "regenerator-runtime": "*" - } - }, - "node_modules/@storybook/core/node_modules/@storybook/api/node_modules/react": { - "version": "16.14.0", - "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", - "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", - "dev": true, - "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2" + "esprima": "^4.0.1", + "tslib": "^1.10.0", + "yaml-js": "^0.3.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/@storybook/core/node_modules/@storybook/channel-postmessage": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/channel-postmessage/-/channel-postmessage-5.3.21.tgz", - "integrity": "sha512-CfoP7aEbZtJ35R9zeujMRdIwprETUi+Ve+y84DhXYQ2uJ0rR3vO4zHLZnxMMyJ5VnYOfuO042uch07+EKBz40Q==", - "dev": true, - "dependencies": { - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "core-js": "^3.0.1", - "global": "^4.3.2", - "telejson": "^3.2.0" - } + "node_modules/@snyk/cloud-config-parser/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/@storybook/core/node_modules/@storybook/channels": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-5.3.21.tgz", - "integrity": "sha512-OXoFs9XtBVg/cCk6lYMrxkzaNlJRf54ABdorp7YAAj7S9tRL1JxOZHxmjNQwEoiRvssmem2rAWtEAxfuEANsAA==", - "dev": true, + "node_modules/@snyk/cocoapods-lockfile-parser": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/@snyk/cocoapods-lockfile-parser/-/cocoapods-lockfile-parser-3.6.2.tgz", + "integrity": "sha512-ca2JKOnSRzYHJkhOB9gYmdRZHmd02b/uBd/S0D5W+L9nIMS7sUBV5jfhKwVgrYPIpVNIc0XCI9rxK4TfkQRpiA==", "dependencies": { - "core-js": "^3.0.1" - } - }, - "node_modules/@storybook/core/node_modules/@storybook/client-api": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/client-api/-/client-api-5.3.21.tgz", - "integrity": "sha512-vS4DfA2Avvl7JNQymO4e3RUNoTWIGVfZJ70Irnd6PTAZNojbCXTYuigDavrmyf83F3g5rQpwmSAPjuoi/X/FRA==", - "dev": true, - "dependencies": { - "@storybook/addons": "5.3.21", - "@storybook/channel-postmessage": "5.3.21", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "@storybook/csf": "0.0.1", - "@types/webpack-env": "^1.15.0", - "core-js": "^3.0.1", - "eventemitter3": "^4.0.0", - "global": "^4.3.2", - "is-plain-object": "^3.0.0", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "qs": "^6.6.0", - "stable": "^0.1.8", - "ts-dedent": "^1.1.0", - "util-deprecate": "^1.0.2" - } - }, - "node_modules/@storybook/core/node_modules/@storybook/client-logger": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-5.3.21.tgz", - "integrity": "sha512-OzQkwpZ5SK9cXD9Mv6lxPGPot+hSZvnkEW12kpt1AHfJz4ET26YTDOI3oetPsjfRJo6qYLeQX8+wF7rklfXbzA==", - "dev": true, - "dependencies": { - "core-js": "^3.0.1" - } - }, - "node_modules/@storybook/core/node_modules/@storybook/core-events": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-5.3.21.tgz", - "integrity": "sha512-/Zsm1sKAh6pzQv8jQUmuhM7nuM01ZljIRKy8p2HjPNlMjDB5yaRkBfyeAUXUg+qXNI6aHVWa4jGdPEdwwY4oLA==", - "dev": true, - "dependencies": { - "core-js": "^3.0.1" - } - }, - "node_modules/@storybook/core/node_modules/@storybook/router": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/router/-/router-5.3.21.tgz", - "integrity": "sha512-c29m5UikK5Q1lyd6FltOGFhIcpd6PIb855YS3OUNe3F6ZA1tfJ+aNKrCBc65d1c+fvCGG76dYYYv0RvwEmKXXg==", - "dev": true, - "dependencies": { - "@reach/router": "^1.2.1", - "@storybook/csf": "0.0.1", - "@types/reach__router": "^1.2.3", - "core-js": "^3.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "qs": "^6.6.0", - "util-deprecate": "^1.0.2" - }, - "peerDependencies": { - "react": "*", - "react-dom": "*" - } - }, - "node_modules/@storybook/core/node_modules/@storybook/theming": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-5.3.21.tgz", - "integrity": "sha512-FZbxjizqdO9lV5LUixPio/7+6UdPiswCzTJn8Hcot9uwwgfnrViRdN7xyjmSYRqv9nHP3OlYbtdeCAgZ4aPq8g==", - "dev": true, - "dependencies": { - "@emotion/core": "^10.0.20", - "@emotion/styled": "^10.0.17", - "@storybook/client-logger": "5.3.21", - "core-js": "^3.0.1", - "deep-object-diff": "^1.1.0", - "emotion-theming": "^10.0.19", - "global": "^4.3.2", - "memoizerific": "^1.11.3", - "polished": "^3.3.1", - "prop-types": "^15.7.2", - "resolve-from": "^5.0.0", - "ts-dedent": "^1.1.0" - }, - "peerDependencies": { - "react": "*", - "react-dom": "*" - } - }, - "node_modules/@storybook/core/node_modules/ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, - "dependencies": { - "type-fest": "^0.21.3" + "@snyk/dep-graph": "^1.23.1", + "@types/js-yaml": "^3.12.1", + "js-yaml": "^3.13.1", + "tslib": "^1.10.0" }, "engines": { "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@storybook/core/node_modules/ansi-styles": { + "node_modules/@snyk/cocoapods-lockfile-parser/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/@snyk/code-client": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/@snyk/code-client/-/code-client-3.9.0.tgz", + "integrity": "sha512-sscrpiODOlQI87B4OFIClnoZmHEHzJ7vULYhikS/R/2KavG4vGPw7Qe2to5rximxR3VFdWQ0wNVFB0RkU2mjPQ==", + "dependencies": { + "@deepcode/dcignore": "^1.0.2", + "@snyk/fast-glob": "^3.2.6-patch", + "@types/flat-cache": "^2.0.0", + "@types/lodash.chunk": "^4.2.6", + "@types/lodash.omit": "^4.5.6", + "@types/lodash.union": "^4.6.6", + "@types/sarif": "^2.1.3", + "@types/uuid": "^8.3.0", + "axios": "^0.21.1", + "ignore": "^5.1.8", + "lodash.chunk": "^4.2.0", + "lodash.omit": "^4.5.0", + "lodash.union": "^4.6.0", + "multimatch": "^5.0.0", + "queue": "^6.0.1", + "uuid": "^8.3.2" + } + }, + "node_modules/@snyk/code-client/node_modules/ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/@snyk/code-client/node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/@snyk/composer-lockfile-parser": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@snyk/composer-lockfile-parser/-/composer-lockfile-parser-1.4.1.tgz", + "integrity": "sha512-wNANv235j95NFsQuODIXCiQZ9kcyg9fz92Kg1zoGvaP3kN/ma7fgCnvQL/dyml6iouQJR5aZovjhrrfEFoKtiQ==", + "dependencies": { + "lodash.findkey": "^4.6.0", + "lodash.get": "^4.4.2", + "lodash.invert": "^4.3.0", + "lodash.isempty": "^4.4.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@snyk/dep-graph": { + "version": "1.28.1", + "resolved": "https://registry.npmjs.org/@snyk/dep-graph/-/dep-graph-1.28.1.tgz", + "integrity": "sha512-ti5fPYivhBGCJ7rZGznMX2UJE1M5lR811WvVyBWTRJwLYVFYkhxRXKfgZUXEB0tq8vpo3V7tm3syrBd5TLPIMA==", + "dependencies": { + "event-loop-spinner": "^2.1.0", + "lodash.clone": "^4.5.0", + "lodash.constant": "^3.0.0", + "lodash.filter": "^4.6.0", + "lodash.foreach": "^4.5.0", + "lodash.isempty": "^4.4.0", + "lodash.isequal": "^4.5.0", + "lodash.isfunction": "^3.0.9", + "lodash.isundefined": "^3.0.1", + "lodash.keys": "^4.2.0", + "lodash.map": "^4.6.0", + "lodash.reduce": "^4.6.0", + "lodash.size": "^4.2.0", + "lodash.transform": "^4.6.0", + "lodash.union": "^4.6.0", + "lodash.values": "^4.3.0", + "object-hash": "^2.0.3", + "semver": "^7.0.0", + "tslib": "^1.13.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@snyk/dep-graph/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/@snyk/docker-registry-v2-client": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@snyk/docker-registry-v2-client/-/docker-registry-v2-client-2.2.2.tgz", + "integrity": "sha512-JkkpVZ8WIWWquazoSTSFlMhYOwt+tk+EMSwOxfu/C/wtaESADCORJBe52z0fAnc+xt3eVUVrM+7prJCIJeSrMg==", + "dependencies": { + "needle": "^2.5.0", + "parse-link-header": "^1.0.1", + "tslib": "^1.10.0" + } + }, + "node_modules/@snyk/docker-registry-v2-client/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/@snyk/fast-glob": { + "version": "3.2.6-patch", + "resolved": "https://registry.npmjs.org/@snyk/fast-glob/-/fast-glob-3.2.6-patch.tgz", + "integrity": "sha512-E/Pfdze/WFfxwyuTFcfhQN1SwyUsc43yuCoW63RVBCaxTD6OzhVD2Pvc/Sy7BjiWUfmelzyKkIBpoow8zZX7Zg==", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "@snyk/glob-parent": "^5.1.2-patch.1", + "merge2": "^1.3.0", + "micromatch": "^4.0.2", + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@snyk/fix": { + "version": "1.650.0", + "resolved": "https://registry.npmjs.org/@snyk/fix/-/fix-1.650.0.tgz", + "integrity": "sha512-qzwb0+DMrjxTsBXAcC74gb2X17925SapCBNo6DybLbOZXNJ6IFvtdN5ucd2FguEojfVyB4HVqkpbawc0bbfGtA==", + "dependencies": { + "@snyk/dep-graph": "^1.21.0", + "@snyk/fix-pipenv-pipfile": "0.5.4", + "@snyk/fix-poetry": "0.7.2", + "chalk": "4.1.1", + "debug": "^4.3.1", + "lodash.groupby": "4.6.0", + "lodash.sortby": "^4.7.0", + "ora": "5.4.0", + "p-map": "^4.0.0", + "strip-ansi": "6.0.0", + "toml": "3.0.0" + }, + "bin": { + "snyk-fix": "dist/index.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@snyk/fix-pipenv-pipfile": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/@snyk/fix-pipenv-pipfile/-/fix-pipenv-pipfile-0.5.4.tgz", + "integrity": "sha512-n1Sg21htJG+gqw2Q9JYsIFxT5IDtELifbQZheiLhOl8sgfoD6oCNyf07IwUqzPrW2wRpmCrTUtuO08+KGnzJpg==", + "dependencies": { + "@snyk/child-process": "^0.3.1", + "bottleneck": "2.19.5", + "debug": "4.3.1", + "tslib": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@snyk/fix-pipenv-pipfile/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/@snyk/fix-poetry": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@snyk/fix-poetry/-/fix-poetry-0.7.2.tgz", + "integrity": "sha512-abBdeOb326exreUDnCkELw9GVOR7qdUQmX0sKyE1baz3i9WaWI5Wy0bWHqjw9oGE5ZP8Ki/xtzkHU2W57D++Zg==", + "dependencies": { + "@snyk/child-process": "^0.3.1", + "bottleneck": "2.19.5", + "debug": "4.3.1", + "tslib": "^1.10.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@snyk/fix-poetry/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/@snyk/fix/node_modules/ansi-styles": { "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" }, @@ -6870,130 +5452,10 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@storybook/core/node_modules/chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@storybook/core/node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, - "dependencies": { - "restore-cursor": "^3.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@storybook/core/node_modules/cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", - "dev": true, - "engines": { - "node": ">= 10" - } - }, - "node_modules/@storybook/core/node_modules/create-react-context": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/create-react-context/-/create-react-context-0.3.0.tgz", - "integrity": "sha512-dNldIoSuNSvlTJ7slIKC/ZFGKexBMBrrcc+TTe1NdmROnaASuLPvqpwj9v4XS4uXZ8+YPu0sNmShX2rXI5LNsw==", - "dev": true, - "dependencies": { - "gud": "^1.0.0", - "warning": "^4.0.3" - }, - "peerDependencies": { - "prop-types": "^15.0.0", - "react": "^0.14.0 || ^15.0.0 || ^16.0.0" - } - }, - "node_modules/@storybook/core/node_modules/fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "node_modules/@storybook/core/node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/@storybook/core/node_modules/find-cache-dir": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz", - "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==", - "dev": true, - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/avajs/find-cache-dir?sponsor=1" - } - }, - "node_modules/@storybook/core/node_modules/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, - "engines": { - "node": ">=8" - } - }, - "node_modules/@storybook/core/node_modules/inquirer": { - "version": "7.3.3", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", - "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", - "dev": true, - "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.19", - "mute-stream": "0.0.8", - "run-async": "^2.4.0", - "rxjs": "^6.6.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" - }, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/@storybook/core/node_modules/inquirer/node_modules/chalk": { + "node_modules/@snyk/fix/node_modules/chalk": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", - "dev": true, "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -7005,74 +5467,65 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@storybook/core/node_modules/is-plain-object": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.1.tgz", - "integrity": "sha512-Xnpx182SBMrr/aBik8y+GuR4U1L9FqMSojwDQwPMmxyC6bvEqly9UBCxhauBF5vNh2gwWJNX6oDV7O+OM4z34g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@storybook/core/node_modules/isobject": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", - "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@storybook/core/node_modules/make-dir": { + "node_modules/@snyk/fix/node_modules/cli-cursor": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", "dependencies": { - "semver": "^6.0.0" + "restore-cursor": "^3.1.0" }, "engines": { "node": ">=8" + } + }, + "node_modules/@snyk/fix/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@snyk/fix/node_modules/ora": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.0.tgz", + "integrity": "sha512-1StwyXQGoU6gdjYkyVcqOLnVlbKj+6yPNNOxJVgpt9t4eksKjiriiHuxktLYkgllwk+D6MbC4ihH84L1udRXPg==", + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@storybook/core/node_modules/mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "node_modules/@storybook/core/node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, + "node_modules/@snyk/fix/node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/@storybook/core/node_modules/polished": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/polished/-/polished-3.7.2.tgz", - "integrity": "sha512-pQKtpZGmsZrW8UUpQMAnR7s3ppHeMQVNyMDKtUyKwuvDmklzcEyM5Kllb3JyE/sE/x7arDmyd35i+4vp99H6sQ==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.12.5" + "aggregate-error": "^3.0.0" }, "engines": { "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@storybook/core/node_modules/restore-cursor": { + "node_modules/@snyk/fix/node_modules/restore-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, "dependencies": { "onetime": "^5.1.0", "signal-exit": "^3.0.2" @@ -7081,20 +5534,10 @@ "node": ">=8" } }, - "node_modules/@storybook/core/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@storybook/core/node_modules/supports-color": { + "node_modules/@snyk/fix/node_modules/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, "dependencies": { "has-flag": "^4.0.0" }, @@ -7102,71 +5545,106 @@ "node": ">=8" } }, - "node_modules/@storybook/core/node_modules/telejson": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/telejson/-/telejson-3.3.0.tgz", - "integrity": "sha512-er08AylQ+LEbDLp1GRezORZu5wKOHaBczF6oYJtgC3Idv10qZ8A3p6ffT+J5BzDKkV9MqBvu8HAKiIIOp6KJ2w==", - "dev": true, - "dependencies": { - "@types/is-function": "^1.0.0", - "global": "^4.4.0", - "is-function": "^1.0.1", - "is-regex": "^1.0.4", - "is-symbol": "^1.0.3", - "isobject": "^4.0.0", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3" - } - }, - "node_modules/@storybook/core/node_modules/ts-dedent": { + "node_modules/@snyk/gemfile": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-1.2.0.tgz", - "integrity": "sha512-6zSJp23uQI+Txyz5LlXMXAHpUhY4Hi0oluXny0OgIR7g/Cromq4vDBnhtbBdyIV34g0pgwxUvnvg+jLJe4c1NA==", - "dev": true, + "resolved": "https://registry.npmjs.org/@snyk/gemfile/-/gemfile-1.2.0.tgz", + "integrity": "sha512-nI7ELxukf7pT4/VraL4iabtNNMz8mUo7EXlqCFld8O5z6mIMLX9llps24iPpaIZOwArkY3FWA+4t+ixyvtTSIA==", "engines": { - "node": ">=6.10" + "node": ">= 4.2.4" } }, - "node_modules/@storybook/core/node_modules/type-fest": { - "version": "0.21.3", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true, + "node_modules/@snyk/glob-parent": { + "version": "5.1.2-patch.1", + "resolved": "https://registry.npmjs.org/@snyk/glob-parent/-/glob-parent-5.1.2-patch.1.tgz", + "integrity": "sha512-OkUPdHgxIWKAAzceG1nraNA0kgI+eS0I9wph8tll9UL0slD2mIWSj4mAqroGovaEXm8nHedoUfuDRGEb6wnzCQ==", + "dependencies": { + "is-glob": "^4.0.1" + }, "engines": { - "node": ">=10" + "node": ">= 6" + } + }, + "node_modules/@snyk/graphlib": { + "version": "2.1.9-patch.3", + "resolved": "https://registry.npmjs.org/@snyk/graphlib/-/graphlib-2.1.9-patch.3.tgz", + "integrity": "sha512-bBY9b9ulfLj0v2Eer0yFYa3syVeIxVKl2EpxSrsVeT4mjA0CltZyHsF0JjoaGXP27nItTdJS5uVsj1NA+3aE+Q==", + "dependencies": { + "lodash.clone": "^4.5.0", + "lodash.constant": "^3.0.0", + "lodash.filter": "^4.6.0", + "lodash.foreach": "^4.5.0", + "lodash.has": "^4.5.2", + "lodash.isempty": "^4.4.0", + "lodash.isfunction": "^3.0.9", + "lodash.isundefined": "^3.0.1", + "lodash.keys": "^4.2.0", + "lodash.map": "^4.6.0", + "lodash.reduce": "^4.6.0", + "lodash.size": "^4.2.0", + "lodash.transform": "^4.6.0", + "lodash.union": "^4.6.0", + "lodash.values": "^4.3.0" + } + }, + "node_modules/@snyk/inquirer": { + "version": "7.3.3-patch", + "resolved": "https://registry.npmjs.org/@snyk/inquirer/-/inquirer-7.3.3-patch.tgz", + "integrity": "sha512-aWiQSOacH2lOpJ1ard9ErABcH4tdJogdr+mg1U67iZJOPO9n2gFgAwz1TQJDyPkv4/A5mh4hT2rg03Uq+KBn2Q==", + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash.assign": "^4.2.0", + "lodash.assignin": "^4.2.0", + "lodash.clone": "^4.5.0", + "lodash.defaults": "^4.2.0", + "lodash.filter": "^4.6.0", + "lodash.find": "^4.6.0", + "lodash.findindex": "^4.6.0", + "lodash.flatten": "^4.4.0", + "lodash.isboolean": "^3.0.3", + "lodash.isfunction": "^3.0.9", + "lodash.isnumber": "^3.0.3", + "lodash.isplainobject": "^4.0.6", + "lodash.isstring": "^4.0.1", + "lodash.last": "^3.0.0", + "lodash.map": "^4.6.0", + "lodash.omit": "^4.5.0", + "lodash.set": "^4.3.2", + "lodash.sum": "^4.0.2", + "lodash.uniq": "^4.5.0", + "mute-stream": "0.0.8", + "run-async": "^2.4.0", + "rxjs": "^6.6.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@snyk/inquirer/node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@storybook/csf": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/@storybook/csf/-/csf-0.0.1.tgz", - "integrity": "sha512-USTLkZze5gkel8MYCujSRBVIrUQ3YPBrLOx7GNk/0wttvVtlzWXAq9eLbQ4p/NicGxP+3T7KPEMVV//g+yubpw==", - "dev": true, - "dependencies": { - "lodash": "^4.17.15" - } - }, - "node_modules/@storybook/node-logger": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/node-logger/-/node-logger-5.3.21.tgz", - "integrity": "sha512-8xibncy873JXePCK5MC0qem1MKtWI1Lc4hv6rwURSwYpZtkO7yElay3XAFGUSfz8qFJkoDBmMTxBR3fp4Dln7g==", - "dev": true, - "dependencies": { - "@types/npmlog": "^4.1.2", - "chalk": "^3.0.0", - "core-js": "^3.0.1", - "npmlog": "^4.1.2", - "pretty-hrtime": "^1.0.3", - "regenerator-runtime": "^0.13.3" - } - }, - "node_modules/@storybook/node-logger/node_modules/ansi-styles": { + "node_modules/@snyk/inquirer/node_modules/ansi-styles": { "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" }, @@ -7177,33 +5655,83 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/@storybook/node-logger/node_modules/chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, + "node_modules/@snyk/inquirer/node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" }, "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/@storybook/node-logger/node_modules/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, + "node_modules/@snyk/inquirer/node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dependencies": { + "restore-cursor": "^3.1.0" + }, "engines": { "node": ">=8" } }, - "node_modules/@storybook/node-logger/node_modules/supports-color": { + "node_modules/@snyk/inquirer/node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/@snyk/inquirer/node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@snyk/inquirer/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@snyk/inquirer/node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" + }, + "node_modules/@snyk/inquirer/node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@snyk/inquirer/node_modules/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, "dependencies": { "has-flag": "^4.0.0" }, @@ -7211,1160 +5739,161 @@ "node": ">=8" } }, - "node_modules/@storybook/react-native": { - "version": "5.3.25", - "resolved": "https://registry.npmjs.org/@storybook/react-native/-/react-native-5.3.25.tgz", - "integrity": "sha512-KPctJdk1++k4byblqTwULmxKDADsRAMat9BgMTx3Gewk4PjMbsbKCvRK7+AlJeNjz/kEsf9L6Y25y8lrw3rPXA==", - "dev": true, - "dependencies": { - "@emotion/core": "^10.0.20", - "@emotion/native": "^10.0.14", - "@storybook/addons": "5.3.21", - "@storybook/channel-websocket": "5.3.21", - "@storybook/channels": "5.3.21", - "@storybook/client-api": "5.3.21", - "@storybook/core-events": "5.3.21", - "core-js": "^3.0.1", - "emotion-theming": "^10.0.19", - "react-native-swipe-gestures": "^1.0.4" - }, - "engines": { - "node": ">=8.0.0" - }, - "peerDependencies": { - "react": "*", - "react-native": ">=0.57.0" - } - }, - "node_modules/@storybook/react-native-server": { - "version": "5.3.23", - "resolved": "https://registry.npmjs.org/@storybook/react-native-server/-/react-native-server-5.3.23.tgz", - "integrity": "sha512-1jGHwikc6BVoEW8tdJeYvnY1N2+cHyzit9xiXL9WXofiiYERoL4ENj1pgVp+AGA+yUYBsuSzeN7Hqp/LwdJ1Ug==", - "dev": true, - "dependencies": { - "@storybook/addons": "5.3.21", - "@storybook/api": "5.3.21", - "@storybook/channel-websocket": "5.3.21", - "@storybook/core": "5.3.21", - "@storybook/core-events": "5.3.21", - "@storybook/ui": "5.3.21", - "commander": "^4.0.1", - "core-js": "^3.0.1", - "global": "^4.3.2", - "react": "^16.6.0", - "react-dom": "^16.8.3", - "uuid": "^3.3.2", - "webpack": "^4.33.0", - "ws": "^7.1.2" - }, - "bin": { - "start-storybook": "bin/index.js", - "storybook-server": "bin/index.js" - }, - "engines": { - "node": ">=8.0.0" - }, - "peerDependencies": { - "babel-loader": "^7.0.0 || ^8.0.0" - } - }, - "node_modules/@storybook/react-native-server/node_modules/@reach/router": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@reach/router/-/router-1.3.4.tgz", - "integrity": "sha512-+mtn9wjlB9NN2CNnnC/BRYtwdKBfSyyasPYraNAyvaV1occr/5NnB4CVzjEZipNHwYebQwcndGUmpFzxAUoqSA==", - "dev": true, - "dependencies": { - "create-react-context": "0.3.0", - "invariant": "^2.2.3", - "prop-types": "^15.6.1", - "react-lifecycles-compat": "^3.0.4" - }, - "peerDependencies": { - "react": "15.x || 16.x || 16.4.0-alpha.0911da3", - "react-dom": "15.x || 16.x || 16.4.0-alpha.0911da3" - } - }, - "node_modules/@storybook/react-native-server/node_modules/@storybook/addons": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/addons/-/addons-5.3.21.tgz", - "integrity": "sha512-Ji/21WADTLVbTbiKcZ64BcL0Es+h1Afxx3kNmGJqPSTUYroCwIFCT9mUzCqU6G+YyWaISAmTii5UJkTwMkChwA==", - "dev": true, - "dependencies": { - "@storybook/api": "5.3.21", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "core-js": "^3.0.1", - "global": "^4.3.2", - "util-deprecate": "^1.0.2" - } - }, - "node_modules/@storybook/react-native-server/node_modules/@storybook/api": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/api/-/api-5.3.21.tgz", - "integrity": "sha512-K1o4an/Rx8daKRDooks6qzN6ZGyqizeacZZbair3F8CsSfTgrr2zCcf9pgKojLQa9koEmMHlcdb2KnS+GwPEgA==", - "dev": true, - "dependencies": { - "@reach/router": "^1.2.1", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "@storybook/csf": "0.0.1", - "@storybook/router": "5.3.21", - "@storybook/theming": "5.3.21", - "@types/reach__router": "^1.2.3", - "core-js": "^3.0.1", - "fast-deep-equal": "^2.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "prop-types": "^15.6.2", - "react": "^16.8.3", - "semver": "^6.0.0", - "shallow-equal": "^1.1.0", - "store2": "^2.7.1", - "telejson": "^3.2.0", - "util-deprecate": "^1.0.2" - }, - "peerDependencies": { - "regenerator-runtime": "*" - } - }, - "node_modules/@storybook/react-native-server/node_modules/@storybook/api/node_modules/@storybook/router": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/router/-/router-5.3.21.tgz", - "integrity": "sha512-c29m5UikK5Q1lyd6FltOGFhIcpd6PIb855YS3OUNe3F6ZA1tfJ+aNKrCBc65d1c+fvCGG76dYYYv0RvwEmKXXg==", - "dev": true, - "dependencies": { - "@reach/router": "^1.2.1", - "@storybook/csf": "0.0.1", - "@types/reach__router": "^1.2.3", - "core-js": "^3.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "qs": "^6.6.0", - "util-deprecate": "^1.0.2" - }, - "peerDependencies": { - "react": "*", - "react-dom": "*" - } - }, - "node_modules/@storybook/react-native-server/node_modules/@storybook/api/node_modules/@storybook/theming": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-5.3.21.tgz", - "integrity": "sha512-FZbxjizqdO9lV5LUixPio/7+6UdPiswCzTJn8Hcot9uwwgfnrViRdN7xyjmSYRqv9nHP3OlYbtdeCAgZ4aPq8g==", - "dev": true, - "dependencies": { - "@emotion/core": "^10.0.20", - "@emotion/styled": "^10.0.17", - "@storybook/client-logger": "5.3.21", - "core-js": "^3.0.1", - "deep-object-diff": "^1.1.0", - "emotion-theming": "^10.0.19", - "global": "^4.3.2", - "memoizerific": "^1.11.3", - "polished": "^3.3.1", - "prop-types": "^15.7.2", - "resolve-from": "^5.0.0", - "ts-dedent": "^1.1.0" - }, - "peerDependencies": { - "react": "*", - "react-dom": "*" - } - }, - "node_modules/@storybook/react-native-server/node_modules/@storybook/channels": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-5.3.21.tgz", - "integrity": "sha512-OXoFs9XtBVg/cCk6lYMrxkzaNlJRf54ABdorp7YAAj7S9tRL1JxOZHxmjNQwEoiRvssmem2rAWtEAxfuEANsAA==", - "dev": true, - "dependencies": { - "core-js": "^3.0.1" - } - }, - "node_modules/@storybook/react-native-server/node_modules/@storybook/client-logger": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-5.3.21.tgz", - "integrity": "sha512-OzQkwpZ5SK9cXD9Mv6lxPGPot+hSZvnkEW12kpt1AHfJz4ET26YTDOI3oetPsjfRJo6qYLeQX8+wF7rklfXbzA==", - "dev": true, - "dependencies": { - "core-js": "^3.0.1" - } - }, - "node_modules/@storybook/react-native-server/node_modules/@storybook/core-events": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-5.3.21.tgz", - "integrity": "sha512-/Zsm1sKAh6pzQv8jQUmuhM7nuM01ZljIRKy8p2HjPNlMjDB5yaRkBfyeAUXUg+qXNI6aHVWa4jGdPEdwwY4oLA==", - "dev": true, - "dependencies": { - "core-js": "^3.0.1" - } - }, - "node_modules/@storybook/react-native-server/node_modules/create-react-context": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/create-react-context/-/create-react-context-0.3.0.tgz", - "integrity": "sha512-dNldIoSuNSvlTJ7slIKC/ZFGKexBMBrrcc+TTe1NdmROnaASuLPvqpwj9v4XS4uXZ8+YPu0sNmShX2rXI5LNsw==", - "dev": true, - "dependencies": { - "gud": "^1.0.0", - "warning": "^4.0.3" - }, - "peerDependencies": { - "prop-types": "^15.0.0", - "react": "^0.14.0 || ^15.0.0 || ^16.0.0" - } - }, - "node_modules/@storybook/react-native-server/node_modules/fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "node_modules/@storybook/react-native-server/node_modules/isobject": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", - "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@storybook/react-native-server/node_modules/polished": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/polished/-/polished-3.7.2.tgz", - "integrity": "sha512-pQKtpZGmsZrW8UUpQMAnR7s3ppHeMQVNyMDKtUyKwuvDmklzcEyM5Kllb3JyE/sE/x7arDmyd35i+4vp99H6sQ==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.12.5" - }, + "node_modules/@snyk/inquirer/node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", "engines": { "node": ">=10" - } - }, - "node_modules/@storybook/react-native-server/node_modules/react": { - "version": "16.14.0", - "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", - "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", - "dev": true, - "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@storybook/react-native-server/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@storybook/react-native-server/node_modules/telejson": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/telejson/-/telejson-3.3.0.tgz", - "integrity": "sha512-er08AylQ+LEbDLp1GRezORZu5wKOHaBczF6oYJtgC3Idv10qZ8A3p6ffT+J5BzDKkV9MqBvu8HAKiIIOp6KJ2w==", - "dev": true, - "dependencies": { - "@types/is-function": "^1.0.0", - "global": "^4.4.0", - "is-function": "^1.0.1", - "is-regex": "^1.0.4", - "is-symbol": "^1.0.3", - "isobject": "^4.0.0", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3" - } - }, - "node_modules/@storybook/react-native-server/node_modules/ts-dedent": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-1.2.0.tgz", - "integrity": "sha512-6zSJp23uQI+Txyz5LlXMXAHpUhY4Hi0oluXny0OgIR7g/Cromq4vDBnhtbBdyIV34g0pgwxUvnvg+jLJe4c1NA==", - "dev": true, - "engines": { - "node": ">=6.10" - } - }, - "node_modules/@storybook/react-native/node_modules/@reach/router": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@reach/router/-/router-1.3.4.tgz", - "integrity": "sha512-+mtn9wjlB9NN2CNnnC/BRYtwdKBfSyyasPYraNAyvaV1occr/5NnB4CVzjEZipNHwYebQwcndGUmpFzxAUoqSA==", - "dev": true, - "dependencies": { - "create-react-context": "0.3.0", - "invariant": "^2.2.3", - "prop-types": "^15.6.1", - "react-lifecycles-compat": "^3.0.4" - }, - "peerDependencies": { - "react": "15.x || 16.x || 16.4.0-alpha.0911da3", - "react-dom": "15.x || 16.x || 16.4.0-alpha.0911da3" - } - }, - "node_modules/@storybook/react-native/node_modules/@storybook/addons": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/addons/-/addons-5.3.21.tgz", - "integrity": "sha512-Ji/21WADTLVbTbiKcZ64BcL0Es+h1Afxx3kNmGJqPSTUYroCwIFCT9mUzCqU6G+YyWaISAmTii5UJkTwMkChwA==", - "dev": true, - "dependencies": { - "@storybook/api": "5.3.21", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "core-js": "^3.0.1", - "global": "^4.3.2", - "util-deprecate": "^1.0.2" - } - }, - "node_modules/@storybook/react-native/node_modules/@storybook/api": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/api/-/api-5.3.21.tgz", - "integrity": "sha512-K1o4an/Rx8daKRDooks6qzN6ZGyqizeacZZbair3F8CsSfTgrr2zCcf9pgKojLQa9koEmMHlcdb2KnS+GwPEgA==", - "dev": true, - "dependencies": { - "@reach/router": "^1.2.1", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "@storybook/csf": "0.0.1", - "@storybook/router": "5.3.21", - "@storybook/theming": "5.3.21", - "@types/reach__router": "^1.2.3", - "core-js": "^3.0.1", - "fast-deep-equal": "^2.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "prop-types": "^15.6.2", - "react": "^16.8.3", - "semver": "^6.0.0", - "shallow-equal": "^1.1.0", - "store2": "^2.7.1", - "telejson": "^3.2.0", - "util-deprecate": "^1.0.2" - }, - "peerDependencies": { - "regenerator-runtime": "*" - } - }, - "node_modules/@storybook/react-native/node_modules/@storybook/api/node_modules/@storybook/router": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/router/-/router-5.3.21.tgz", - "integrity": "sha512-c29m5UikK5Q1lyd6FltOGFhIcpd6PIb855YS3OUNe3F6ZA1tfJ+aNKrCBc65d1c+fvCGG76dYYYv0RvwEmKXXg==", - "dev": true, - "dependencies": { - "@reach/router": "^1.2.1", - "@storybook/csf": "0.0.1", - "@types/reach__router": "^1.2.3", - "core-js": "^3.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "qs": "^6.6.0", - "util-deprecate": "^1.0.2" - }, - "peerDependencies": { - "react": "*", - "react-dom": "*" - } - }, - "node_modules/@storybook/react-native/node_modules/@storybook/api/node_modules/@storybook/theming": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-5.3.21.tgz", - "integrity": "sha512-FZbxjizqdO9lV5LUixPio/7+6UdPiswCzTJn8Hcot9uwwgfnrViRdN7xyjmSYRqv9nHP3OlYbtdeCAgZ4aPq8g==", - "dev": true, - "dependencies": { - "@emotion/core": "^10.0.20", - "@emotion/styled": "^10.0.17", - "@storybook/client-logger": "5.3.21", - "core-js": "^3.0.1", - "deep-object-diff": "^1.1.0", - "emotion-theming": "^10.0.19", - "global": "^4.3.2", - "memoizerific": "^1.11.3", - "polished": "^3.3.1", - "prop-types": "^15.7.2", - "resolve-from": "^5.0.0", - "ts-dedent": "^1.1.0" - }, - "peerDependencies": { - "react": "*", - "react-dom": "*" - } - }, - "node_modules/@storybook/react-native/node_modules/@storybook/api/node_modules/react": { - "version": "16.14.0", - "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", - "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", - "dev": true, - "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@storybook/react-native/node_modules/@storybook/channel-postmessage": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/channel-postmessage/-/channel-postmessage-5.3.21.tgz", - "integrity": "sha512-CfoP7aEbZtJ35R9zeujMRdIwprETUi+Ve+y84DhXYQ2uJ0rR3vO4zHLZnxMMyJ5VnYOfuO042uch07+EKBz40Q==", - "dev": true, - "dependencies": { - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "core-js": "^3.0.1", - "global": "^4.3.2", - "telejson": "^3.2.0" - } - }, - "node_modules/@storybook/react-native/node_modules/@storybook/channels": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-5.3.21.tgz", - "integrity": "sha512-OXoFs9XtBVg/cCk6lYMrxkzaNlJRf54ABdorp7YAAj7S9tRL1JxOZHxmjNQwEoiRvssmem2rAWtEAxfuEANsAA==", - "dev": true, - "dependencies": { - "core-js": "^3.0.1" - } - }, - "node_modules/@storybook/react-native/node_modules/@storybook/client-api": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/client-api/-/client-api-5.3.21.tgz", - "integrity": "sha512-vS4DfA2Avvl7JNQymO4e3RUNoTWIGVfZJ70Irnd6PTAZNojbCXTYuigDavrmyf83F3g5rQpwmSAPjuoi/X/FRA==", - "dev": true, - "dependencies": { - "@storybook/addons": "5.3.21", - "@storybook/channel-postmessage": "5.3.21", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "@storybook/csf": "0.0.1", - "@types/webpack-env": "^1.15.0", - "core-js": "^3.0.1", - "eventemitter3": "^4.0.0", - "global": "^4.3.2", - "is-plain-object": "^3.0.0", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "qs": "^6.6.0", - "stable": "^0.1.8", - "ts-dedent": "^1.1.0", - "util-deprecate": "^1.0.2" - } - }, - "node_modules/@storybook/react-native/node_modules/@storybook/client-logger": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-5.3.21.tgz", - "integrity": "sha512-OzQkwpZ5SK9cXD9Mv6lxPGPot+hSZvnkEW12kpt1AHfJz4ET26YTDOI3oetPsjfRJo6qYLeQX8+wF7rklfXbzA==", - "dev": true, - "dependencies": { - "core-js": "^3.0.1" - } - }, - "node_modules/@storybook/react-native/node_modules/@storybook/core-events": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-5.3.21.tgz", - "integrity": "sha512-/Zsm1sKAh6pzQv8jQUmuhM7nuM01ZljIRKy8p2HjPNlMjDB5yaRkBfyeAUXUg+qXNI6aHVWa4jGdPEdwwY4oLA==", - "dev": true, - "dependencies": { - "core-js": "^3.0.1" - } - }, - "node_modules/@storybook/react-native/node_modules/create-react-context": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/create-react-context/-/create-react-context-0.3.0.tgz", - "integrity": "sha512-dNldIoSuNSvlTJ7slIKC/ZFGKexBMBrrcc+TTe1NdmROnaASuLPvqpwj9v4XS4uXZ8+YPu0sNmShX2rXI5LNsw==", - "dev": true, - "dependencies": { - "gud": "^1.0.0", - "warning": "^4.0.3" - }, - "peerDependencies": { - "prop-types": "^15.0.0", - "react": "^0.14.0 || ^15.0.0 || ^16.0.0" - } - }, - "node_modules/@storybook/react-native/node_modules/fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "node_modules/@storybook/react-native/node_modules/is-plain-object": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.1.tgz", - "integrity": "sha512-Xnpx182SBMrr/aBik8y+GuR4U1L9FqMSojwDQwPMmxyC6bvEqly9UBCxhauBF5vNh2gwWJNX6oDV7O+OM4z34g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@storybook/react-native/node_modules/isobject": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", - "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@storybook/react-native/node_modules/polished": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/polished/-/polished-3.7.2.tgz", - "integrity": "sha512-pQKtpZGmsZrW8UUpQMAnR7s3ppHeMQVNyMDKtUyKwuvDmklzcEyM5Kllb3JyE/sE/x7arDmyd35i+4vp99H6sQ==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.12.5" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@storybook/react-native/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@storybook/react-native/node_modules/telejson": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/telejson/-/telejson-3.3.0.tgz", - "integrity": "sha512-er08AylQ+LEbDLp1GRezORZu5wKOHaBczF6oYJtgC3Idv10qZ8A3p6ffT+J5BzDKkV9MqBvu8HAKiIIOp6KJ2w==", - "dev": true, - "dependencies": { - "@types/is-function": "^1.0.0", - "global": "^4.4.0", - "is-function": "^1.0.1", - "is-regex": "^1.0.4", - "is-symbol": "^1.0.3", - "isobject": "^4.0.0", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3" - } - }, - "node_modules/@storybook/react-native/node_modules/ts-dedent": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-1.2.0.tgz", - "integrity": "sha512-6zSJp23uQI+Txyz5LlXMXAHpUhY4Hi0oluXny0OgIR7g/Cromq4vDBnhtbBdyIV34g0pgwxUvnvg+jLJe4c1NA==", - "dev": true, - "engines": { - "node": ">=6.10" - } - }, - "node_modules/@storybook/router": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/router/-/router-6.2.9.tgz", - "integrity": "sha512-7Bn1OFoItCl8whXRT8N1qp1Lky7kzXJ3aslWp5E8HcM8rxh4OYXfbaeiyJEJxBTGC5zxgY+tAEXHFjsAviFROg==", - "dev": true, - "dependencies": { - "@reach/router": "^1.3.4", - "@storybook/client-logger": "6.2.9", - "@types/reach__router": "^1.3.7", - "core-js": "^3.8.2", - "fast-deep-equal": "^3.1.3", - "global": "^4.4.0", - "lodash": "^4.17.20", - "memoizerific": "^1.11.3", - "qs": "^6.10.0", - "ts-dedent": "^2.0.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0", - "react-dom": "^16.8.0 || ^17.0.0" - } - }, - "node_modules/@storybook/router/node_modules/@reach/router": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@reach/router/-/router-1.3.4.tgz", - "integrity": "sha512-+mtn9wjlB9NN2CNnnC/BRYtwdKBfSyyasPYraNAyvaV1occr/5NnB4CVzjEZipNHwYebQwcndGUmpFzxAUoqSA==", - "dev": true, - "dependencies": { - "create-react-context": "0.3.0", - "invariant": "^2.2.3", - "prop-types": "^15.6.1", - "react-lifecycles-compat": "^3.0.4" - }, - "peerDependencies": { - "react": "15.x || 16.x || 16.4.0-alpha.0911da3", - "react-dom": "15.x || 16.x || 16.4.0-alpha.0911da3" - } - }, - "node_modules/@storybook/router/node_modules/create-react-context": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/create-react-context/-/create-react-context-0.3.0.tgz", - "integrity": "sha512-dNldIoSuNSvlTJ7slIKC/ZFGKexBMBrrcc+TTe1NdmROnaASuLPvqpwj9v4XS4uXZ8+YPu0sNmShX2rXI5LNsw==", - "dev": true, - "dependencies": { - "gud": "^1.0.0", - "warning": "^4.0.3" - }, - "peerDependencies": { - "prop-types": "^15.0.0", - "react": "^0.14.0 || ^15.0.0 || ^16.0.0" - } - }, - "node_modules/@storybook/semver": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/@storybook/semver/-/semver-7.3.2.tgz", - "integrity": "sha512-SWeszlsiPsMI0Ps0jVNtH64cI5c0UF3f7KgjVKJoNP30crQ6wUSddY2hsdeczZXEKVJGEn50Q60flcGsQGIcrg==", - "dev": true, - "dependencies": { - "core-js": "^3.6.5", - "find-up": "^4.1.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@storybook/theming": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-6.2.9.tgz", - "integrity": "sha512-183oJW7AD7Fhqg5NT4ct3GJntwteAb9jZnQ6yhf9JSdY+fk8OhxRbPf7ov0au2gYACcGrWDd9K5pYQsvWlP5gA==", - "dev": true, - "dependencies": { - "@emotion/core": "^10.1.1", - "@emotion/is-prop-valid": "^0.8.6", - "@emotion/styled": "^10.0.27", - "@storybook/client-logger": "6.2.9", - "core-js": "^3.8.2", - "deep-object-diff": "^1.1.0", - "emotion-theming": "^10.0.27", - "global": "^4.4.0", - "memoizerific": "^1.11.3", - "polished": "^4.0.5", - "resolve-from": "^5.0.0", - "ts-dedent": "^2.0.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0", - "react-dom": "^16.8.0 || ^17.0.0" - } - }, - "node_modules/@storybook/ui": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/ui/-/ui-5.3.21.tgz", - "integrity": "sha512-OUf8JYY9LN+XfzLSZE6KtboITGDL6C8Z0W9QOXM5LJwFLv4PkANK/f9qsB5vVHFm7vhoO96butFzs6SjTKhxkw==", - "dev": true, - "dependencies": { - "@emotion/core": "^10.0.20", - "@storybook/addons": "5.3.21", - "@storybook/api": "5.3.21", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/components": "5.3.21", - "@storybook/core-events": "5.3.21", - "@storybook/router": "5.3.21", - "@storybook/theming": "5.3.21", - "copy-to-clipboard": "^3.0.8", - "core-js": "^3.0.1", - "core-js-pure": "^3.0.1", - "emotion-theming": "^10.0.19", - "fast-deep-equal": "^2.0.1", - "fuse.js": "^3.4.6", - "global": "^4.3.2", - "lodash": "^4.17.15", - "markdown-to-jsx": "^6.11.4", - "memoizerific": "^1.11.3", - "polished": "^3.3.1", - "prop-types": "^15.7.2", - "qs": "^6.6.0", - "react": "^16.8.3", - "react-dom": "^16.8.3", - "react-draggable": "^4.0.3", - "react-helmet-async": "^1.0.2", - "react-hotkeys": "2.0.0", - "react-sizeme": "^2.6.7", - "regenerator-runtime": "^0.13.2", - "resolve-from": "^5.0.0", - "semver": "^6.0.0", - "store2": "^2.7.1", - "telejson": "^3.2.0", - "util-deprecate": "^1.0.2" - } - }, - "node_modules/@storybook/ui/node_modules/@reach/router": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@reach/router/-/router-1.3.4.tgz", - "integrity": "sha512-+mtn9wjlB9NN2CNnnC/BRYtwdKBfSyyasPYraNAyvaV1occr/5NnB4CVzjEZipNHwYebQwcndGUmpFzxAUoqSA==", - "dev": true, - "dependencies": { - "create-react-context": "0.3.0", - "invariant": "^2.2.3", - "prop-types": "^15.6.1", - "react-lifecycles-compat": "^3.0.4" - }, - "peerDependencies": { - "react": "15.x || 16.x || 16.4.0-alpha.0911da3", - "react-dom": "15.x || 16.x || 16.4.0-alpha.0911da3" - } - }, - "node_modules/@storybook/ui/node_modules/@storybook/addons": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/addons/-/addons-5.3.21.tgz", - "integrity": "sha512-Ji/21WADTLVbTbiKcZ64BcL0Es+h1Afxx3kNmGJqPSTUYroCwIFCT9mUzCqU6G+YyWaISAmTii5UJkTwMkChwA==", - "dev": true, - "dependencies": { - "@storybook/api": "5.3.21", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "core-js": "^3.0.1", - "global": "^4.3.2", - "util-deprecate": "^1.0.2" - } - }, - "node_modules/@storybook/ui/node_modules/@storybook/api": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/api/-/api-5.3.21.tgz", - "integrity": "sha512-K1o4an/Rx8daKRDooks6qzN6ZGyqizeacZZbair3F8CsSfTgrr2zCcf9pgKojLQa9koEmMHlcdb2KnS+GwPEgA==", - "dev": true, - "dependencies": { - "@reach/router": "^1.2.1", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "@storybook/csf": "0.0.1", - "@storybook/router": "5.3.21", - "@storybook/theming": "5.3.21", - "@types/reach__router": "^1.2.3", - "core-js": "^3.0.1", - "fast-deep-equal": "^2.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "prop-types": "^15.6.2", - "react": "^16.8.3", - "semver": "^6.0.0", - "shallow-equal": "^1.1.0", - "store2": "^2.7.1", - "telejson": "^3.2.0", - "util-deprecate": "^1.0.2" - }, - "peerDependencies": { - "regenerator-runtime": "*" - } - }, - "node_modules/@storybook/ui/node_modules/@storybook/channels": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-5.3.21.tgz", - "integrity": "sha512-OXoFs9XtBVg/cCk6lYMrxkzaNlJRf54ABdorp7YAAj7S9tRL1JxOZHxmjNQwEoiRvssmem2rAWtEAxfuEANsAA==", - "dev": true, - "dependencies": { - "core-js": "^3.0.1" - } - }, - "node_modules/@storybook/ui/node_modules/@storybook/client-logger": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-5.3.21.tgz", - "integrity": "sha512-OzQkwpZ5SK9cXD9Mv6lxPGPot+hSZvnkEW12kpt1AHfJz4ET26YTDOI3oetPsjfRJo6qYLeQX8+wF7rklfXbzA==", - "dev": true, - "dependencies": { - "core-js": "^3.0.1" - } - }, - "node_modules/@storybook/ui/node_modules/@storybook/components": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/components/-/components-5.3.21.tgz", - "integrity": "sha512-42QQk6qZl6wrtajP8yNCfmNS2t8Iod5QY+4V/l6iNnnT9O+j6cWOlnO+ZyvjNv0Xm0zIOt+VyVjdkKh8FUjQmA==", - "dev": true, - "dependencies": { - "@storybook/client-logger": "5.3.21", - "@storybook/theming": "5.3.21", - "@types/react-syntax-highlighter": "11.0.4", - "@types/react-textarea-autosize": "^4.3.3", - "core-js": "^3.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "markdown-to-jsx": "^6.11.4", - "memoizerific": "^1.11.3", - "polished": "^3.3.1", - "popper.js": "^1.14.7", - "prop-types": "^15.7.2", - "react": "^16.8.3", - "react-dom": "^16.8.3", - "react-focus-lock": "^2.1.0", - "react-helmet-async": "^1.0.2", - "react-popper-tooltip": "^2.8.3", - "react-syntax-highlighter": "^11.0.2", - "react-textarea-autosize": "^7.1.0", - "simplebar-react": "^1.0.0-alpha.6", - "ts-dedent": "^1.1.0" - }, - "peerDependencies": { - "react": "*", - "react-dom": "*" - } - }, - "node_modules/@storybook/ui/node_modules/@storybook/core-events": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-5.3.21.tgz", - "integrity": "sha512-/Zsm1sKAh6pzQv8jQUmuhM7nuM01ZljIRKy8p2HjPNlMjDB5yaRkBfyeAUXUg+qXNI6aHVWa4jGdPEdwwY4oLA==", - "dev": true, - "dependencies": { - "core-js": "^3.0.1" - } - }, - "node_modules/@storybook/ui/node_modules/@storybook/router": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/router/-/router-5.3.21.tgz", - "integrity": "sha512-c29m5UikK5Q1lyd6FltOGFhIcpd6PIb855YS3OUNe3F6ZA1tfJ+aNKrCBc65d1c+fvCGG76dYYYv0RvwEmKXXg==", - "dev": true, - "dependencies": { - "@reach/router": "^1.2.1", - "@storybook/csf": "0.0.1", - "@types/reach__router": "^1.2.3", - "core-js": "^3.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "qs": "^6.6.0", - "util-deprecate": "^1.0.2" - }, - "peerDependencies": { - "react": "*", - "react-dom": "*" - } - }, - "node_modules/@storybook/ui/node_modules/@storybook/theming": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-5.3.21.tgz", - "integrity": "sha512-FZbxjizqdO9lV5LUixPio/7+6UdPiswCzTJn8Hcot9uwwgfnrViRdN7xyjmSYRqv9nHP3OlYbtdeCAgZ4aPq8g==", - "dev": true, - "dependencies": { - "@emotion/core": "^10.0.20", - "@emotion/styled": "^10.0.17", - "@storybook/client-logger": "5.3.21", - "core-js": "^3.0.1", - "deep-object-diff": "^1.1.0", - "emotion-theming": "^10.0.19", - "global": "^4.3.2", - "memoizerific": "^1.11.3", - "polished": "^3.3.1", - "prop-types": "^15.7.2", - "resolve-from": "^5.0.0", - "ts-dedent": "^1.1.0" - }, - "peerDependencies": { - "react": "*", - "react-dom": "*" - } - }, - "node_modules/@storybook/ui/node_modules/@types/react-syntax-highlighter": { - "version": "11.0.4", - "resolved": "https://registry.npmjs.org/@types/react-syntax-highlighter/-/react-syntax-highlighter-11.0.4.tgz", - "integrity": "sha512-9GfTo3a0PHwQeTVoqs0g5bS28KkSY48pp5659wA+Dp4MqceDEa8EHBqrllJvvtyusszyJhViUEap0FDvlk/9Zg==", - "dev": true, - "dependencies": { - "@types/react": "*" - } - }, - "node_modules/@storybook/ui/node_modules/create-react-context": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/create-react-context/-/create-react-context-0.3.0.tgz", - "integrity": "sha512-dNldIoSuNSvlTJ7slIKC/ZFGKexBMBrrcc+TTe1NdmROnaASuLPvqpwj9v4XS4uXZ8+YPu0sNmShX2rXI5LNsw==", - "dev": true, - "dependencies": { - "gud": "^1.0.0", - "warning": "^4.0.3" - }, - "peerDependencies": { - "prop-types": "^15.0.0", - "react": "^0.14.0 || ^15.0.0 || ^16.0.0" - } - }, - "node_modules/@storybook/ui/node_modules/deep-equal": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", - "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", - "dev": true, - "dependencies": { - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.1", - "is-regex": "^1.0.4", - "object-is": "^1.0.1", - "object-keys": "^1.1.1", - "regexp.prototype.flags": "^1.2.0" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@storybook/ui/node_modules/fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "node_modules/@storybook/ui/node_modules/fuse.js": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/fuse.js/-/fuse.js-3.6.1.tgz", - "integrity": "sha512-hT9yh/tiinkmirKrlv4KWOjztdoZo1mx9Qh4KvWqC7isoXwdUY3PNWUxceF4/qO9R6riA2C29jdTOeQOIROjgw==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/@storybook/ui/node_modules/hastscript": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-5.1.2.tgz", - "integrity": "sha512-WlztFuK+Lrvi3EggsqOkQ52rKbxkXL3RwB6t5lwoa8QLMemoWfBuL43eDrwOamJyR7uKQKdmKYaBH1NZBiIRrQ==", - "dev": true, + "node_modules/@snyk/java-call-graph-builder": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@snyk/java-call-graph-builder/-/java-call-graph-builder-1.23.0.tgz", + "integrity": "sha512-Go/UV33/R0SW10nvshrs/s8GjY2mnbJaRV4Xkj4zGrwpK80lL30th6LDpXDKEdXPZ66EbYGS1Q9gGlL7GzOdeA==", "dependencies": { - "comma-separated-tokens": "^1.0.0", - "hast-util-parse-selector": "^2.0.0", - "property-information": "^5.0.0", - "space-separated-tokens": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/@storybook/ui/node_modules/highlight.js": { - "version": "9.13.1", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-9.13.1.tgz", - "integrity": "sha512-Sc28JNQNDzaH6PORtRLMvif9RSn1mYuOoX3omVjnb0+HbpPygU2ALBI0R/wsiqCb4/fcp07Gdo8g+fhtFrQl6A==", - "deprecated": "Version no longer supported. Upgrade to @latest", - "dev": true, - "engines": { - "node": "*" - } - }, - "node_modules/@storybook/ui/node_modules/isobject": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", - "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@storybook/ui/node_modules/lowlight": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/lowlight/-/lowlight-1.11.0.tgz", - "integrity": "sha512-xrGGN6XLL7MbTMdPD6NfWPwY43SNkjf/d0mecSx/CW36fUZTjRHEq0/Cdug3TWKtRXLWi7iMl1eP0olYxj/a4A==", - "dev": true, - "dependencies": { - "fault": "^1.0.2", - "highlight.js": "~9.13.0" - } - }, - "node_modules/@storybook/ui/node_modules/markdown-to-jsx": { - "version": "6.11.4", - "resolved": "https://registry.npmjs.org/markdown-to-jsx/-/markdown-to-jsx-6.11.4.tgz", - "integrity": "sha512-3lRCD5Sh+tfA52iGgfs/XZiw33f7fFX9Bn55aNnVNUd2GzLDkOWyKYYD8Yju2B1Vn+feiEdgJs8T6Tg0xNokPw==", - "dev": true, - "dependencies": { - "prop-types": "^15.6.2", - "unquote": "^1.1.0" + "@snyk/graphlib": "2.1.9-patch.3", + "ci-info": "^2.0.0", + "debug": "^4.1.1", + "glob": "^7.1.6", + "jszip": "^3.2.2", + "needle": "^2.3.3", + "progress": "^2.0.3", + "snyk-config": "^4.0.0-rc.2", + "source-map-support": "^0.5.7", + "temp-dir": "^2.0.0", + "tmp": "^0.2.1", + "tslib": "^1.9.3", + "xml-js": "^1.6.11" }, "engines": { - "node": ">= 4" + "node": ">=8" + } + }, + "node_modules/@snyk/java-call-graph-builder/node_modules/temp-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", + "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@snyk/java-call-graph-builder/node_modules/tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dependencies": { + "rimraf": "^3.0.0" }, - "peerDependencies": { - "react": ">= 0.14.0" + "engines": { + "node": ">=8.17.0" } }, - "node_modules/@storybook/ui/node_modules/parse-entities": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-1.2.2.tgz", - "integrity": "sha512-NzfpbxW/NPrzZ/yYSoQxyqUZMZXIdCfE0OIN4ESsnptHJECoUk3FZktxNuzQf4tjt5UEopnxpYJbvYuxIFDdsg==", - "dev": true, - "dependencies": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" - } + "node_modules/@snyk/java-call-graph-builder/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/@storybook/ui/node_modules/polished": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/polished/-/polished-3.7.2.tgz", - "integrity": "sha512-pQKtpZGmsZrW8UUpQMAnR7s3ppHeMQVNyMDKtUyKwuvDmklzcEyM5Kllb3JyE/sE/x7arDmyd35i+4vp99H6sQ==", - "dev": true, + "node_modules/@snyk/mix-parser": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@snyk/mix-parser/-/mix-parser-1.3.2.tgz", + "integrity": "sha512-0Aq9vcgmjH0d9Gk5q0k6l4ZOvSHPf6/BCQGDVOpKp0hwOkXWnpDOLLPxL+uBCktuH9zTYQFB0aTk91kQImZqmA==", "dependencies": { - "@babel/runtime": "^7.12.5" + "@snyk/dep-graph": "^1.28.0", + "tslib": "^2.0.0" }, "engines": { "node": ">=10" } }, - "node_modules/@storybook/ui/node_modules/prismjs": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.17.1.tgz", - "integrity": "sha512-PrEDJAFdUGbOP6xK/UsfkC5ghJsPJviKgnQOoxaDbBjwc8op68Quupwt1DeAFoG8GImPhiKXAvvsH7wDSLsu1Q==", - "dev": true, - "optionalDependencies": { - "clipboard": "^2.0.0" - } - }, - "node_modules/@storybook/ui/node_modules/react": { - "version": "16.14.0", - "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", - "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", - "dev": true, + "node_modules/@snyk/rpm-parser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@snyk/rpm-parser/-/rpm-parser-2.2.1.tgz", + "integrity": "sha512-OAON0bPf3c5fgM/GK9DX0aZErB6SnuRyYlPH0rqI1TXGsKrYnVELhaE6ctNbEfPTQuY9r6q0vM+UYDaFM/YliA==", "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2" + "event-loop-spinner": "^2.0.0" }, "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, - "node_modules/@storybook/ui/node_modules/react-popper": { - "version": "1.3.11", - "resolved": "https://registry.npmjs.org/react-popper/-/react-popper-1.3.11.tgz", - "integrity": "sha512-VSA/bS+pSndSF2fiasHK/PTEEAyOpX60+H5EPAjoArr8JGm+oihu4UbrqcEBpQibJxBVCpYyjAX7abJ+7DoYVg==", - "dev": true, + "node_modules/@snyk/snyk-cocoapods-plugin": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/@snyk/snyk-cocoapods-plugin/-/snyk-cocoapods-plugin-2.5.2.tgz", + "integrity": "sha512-WHhnwyoGOhjFOjBXqUfszD84SErrtjHjium/4xFbqKpEE+yuwxs8OwV/S29BtxhYiGtjpD1azv5QtH30VUMl0A==", "dependencies": { - "@babel/runtime": "^7.1.2", - "@hypnosphi/create-react-context": "^0.3.1", - "deep-equal": "^1.1.1", - "popper.js": "^1.14.4", - "prop-types": "^15.6.1", - "typed-styles": "^0.0.7", - "warning": "^4.0.2" + "@snyk/cli-interface": "^2.11.0", + "@snyk/cocoapods-lockfile-parser": "3.6.2", + "@snyk/dep-graph": "^1.23.1", + "source-map-support": "^0.5.7", + "tslib": "^2.0.0" }, - "peerDependencies": { - "react": "0.14.x || ^15.0.0 || ^16.0.0 || ^17.0.0" - } - }, - "node_modules/@storybook/ui/node_modules/react-popper-tooltip": { - "version": "2.11.1", - "resolved": "https://registry.npmjs.org/react-popper-tooltip/-/react-popper-tooltip-2.11.1.tgz", - "integrity": "sha512-04A2f24GhyyMicKvg/koIOQ5BzlrRbKiAgP6L+Pdj1MVX3yJ1NeZ8+EidndQsbejFT55oW1b++wg2Z8KlAyhfQ==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.9.2", - "react-popper": "^1.3.7" - }, - "peerDependencies": { - "react": "^16.6.0", - "react-dom": "^16.6.0" - } - }, - "node_modules/@storybook/ui/node_modules/react-sizeme": { - "version": "2.6.12", - "resolved": "https://registry.npmjs.org/react-sizeme/-/react-sizeme-2.6.12.tgz", - "integrity": "sha512-tL4sCgfmvapYRZ1FO2VmBmjPVzzqgHA7kI8lSJ6JS6L78jXFNRdOZFpXyK6P1NBZvKPPCZxReNgzZNUajAerZw==", - "dev": true, - "dependencies": { - "element-resize-detector": "^1.2.1", - "invariant": "^2.2.4", - "shallowequal": "^1.1.0", - "throttle-debounce": "^2.1.0" - }, - "peerDependencies": { - "react": "^0.14.0 || ^15.0.0-0 || ^16.0.0", - "react-dom": "^0.14.0 || ^15.0.0-0 || ^16.0.0" - } - }, - "node_modules/@storybook/ui/node_modules/react-syntax-highlighter": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/react-syntax-highlighter/-/react-syntax-highlighter-11.0.2.tgz", - "integrity": "sha512-kqmpM2OH5OodInbEADKARwccwSQWBfZi0970l5Jhp4h39q9Q65C4frNcnd6uHE5pR00W8pOWj9HDRntj2G4Rww==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.3.1", - "highlight.js": "~9.13.0", - "lowlight": "~1.11.0", - "prismjs": "^1.8.4", - "refractor": "^2.4.1" - }, - "peerDependencies": { - "react": ">= 0.14.0" - } - }, - "node_modules/@storybook/ui/node_modules/react-textarea-autosize": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-7.1.2.tgz", - "integrity": "sha512-uH3ORCsCa3C6LHxExExhF4jHoXYCQwE5oECmrRsunlspaDAbS4mGKNlWZqjLfInWtFQcf0o1n1jC/NGXFdUBCg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.1.2", - "prop-types": "^15.6.0" - }, - "peerDependencies": { - "react": ">=0.14.0 <17.0.0" - } - }, - "node_modules/@storybook/ui/node_modules/refractor": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/refractor/-/refractor-2.10.1.tgz", - "integrity": "sha512-Xh9o7hQiQlDbxo5/XkOX6H+x/q8rmlmZKr97Ie1Q8ZM32IRRd3B/UxuA/yXDW79DBSXGWxm2yRTbcTVmAciJRw==", - "dev": true, - "dependencies": { - "hastscript": "^5.0.0", - "parse-entities": "^1.1.2", - "prismjs": "~1.17.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/@storybook/ui/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/@storybook/ui/node_modules/simplebar-react": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/simplebar-react/-/simplebar-react-1.2.3.tgz", - "integrity": "sha512-1EOWJzFC7eqHUp1igD1/tb8GBv5aPQA5ZMvpeDnVkpNJ3jAuvmrL2kir3HuijlxhG7njvw9ssxjjBa89E5DrJg==", - "dev": true, - "dependencies": { - "prop-types": "^15.6.1", - "simplebar": "^4.2.3" - }, - "peerDependencies": { - "react": "^0.14.9 || ^15.3.0 || ^16.0.0-rc || ^16.0", - "react-dom": "^0.14.9 || ^15.3.0 || ^16.0.0-rc || ^16.0" - } - }, - "node_modules/@storybook/ui/node_modules/telejson": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/telejson/-/telejson-3.3.0.tgz", - "integrity": "sha512-er08AylQ+LEbDLp1GRezORZu5wKOHaBczF6oYJtgC3Idv10qZ8A3p6ffT+J5BzDKkV9MqBvu8HAKiIIOp6KJ2w==", - "dev": true, - "dependencies": { - "@types/is-function": "^1.0.0", - "global": "^4.4.0", - "is-function": "^1.0.1", - "is-regex": "^1.0.4", - "is-symbol": "^1.0.3", - "isobject": "^4.0.0", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3" - } - }, - "node_modules/@storybook/ui/node_modules/ts-dedent": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-1.2.0.tgz", - "integrity": "sha512-6zSJp23uQI+Txyz5LlXMXAHpUhY4Hi0oluXny0OgIR7g/Cromq4vDBnhtbBdyIV34g0pgwxUvnvg+jLJe4c1NA==", - "dev": true, "engines": { - "node": ">=6.10" + "node": ">=8" + } + }, + "node_modules/@snyk/snyk-docker-pull": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/@snyk/snyk-docker-pull/-/snyk-docker-pull-3.6.2.tgz", + "integrity": "sha512-Ngebbk2LLMYNj5iMeTrt066nzWZ3oc8I5aN5A1qXpXmuAv8hW/hA1pfF3qwWrskl0RbPIhcSnY833e8l+drjEQ==", + "dependencies": { + "@snyk/docker-registry-v2-client": "^2.2.2", + "child-process": "^1.0.2", + "tar-stream": "^2.2.0", + "tmp": "^0.2.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@snyk/snyk-docker-pull/node_modules/tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dependencies": { + "rimraf": "^3.0.0" + }, + "engines": { + "node": ">=8.17.0" + } + }, + "node_modules/@snyk/snyk-hex-plugin": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@snyk/snyk-hex-plugin/-/snyk-hex-plugin-1.1.4.tgz", + "integrity": "sha512-kLfFGckSmyKe667UGPyWzR/H7/Trkt4fD8O/ktElOx1zWgmivpLm0Symb4RCfEmz9irWv+N6zIKRrfSNdytcPQ==", + "dependencies": { + "@snyk/dep-graph": "^1.28.0", + "@snyk/mix-parser": "^1.1.1", + "debug": "^4.3.1", + "tmp": "^0.0.33", + "tslib": "^2.0.0", + "upath": "2.0.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@snyk/snyk-hex-plugin/node_modules/upath": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/upath/-/upath-2.0.1.tgz", + "integrity": "sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==", + "engines": { + "node": ">=4", + "yarn": "*" + } + }, + "node_modules/@szmarczak/http-timer": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.5.tgz", + "integrity": "sha512-PyRA9sm1Yayuj5OIoJ1hGt2YISX45w9WcFbh6ddT0Z/0yaFxOtGLInr4jUfU1EAFVs0Yfyfev4RNwBlUaHdlDQ==", + "dependencies": { + "defer-to-connect": "^2.0.0" + }, + "engines": { + "node": ">=10" } }, "node_modules/@testing-library/react-native": { @@ -8391,9 +5920,9 @@ } }, "node_modules/@types/babel__core": { - "version": "7.1.14", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.14.tgz", - "integrity": "sha512-zGZJzzBUVDo/eV6KgbE0f0ZI7dInEYvo12Rb70uNQDshC3SkRMb67ja0GgRHZgAX3Za6rhaWlvbDO8rrGyAb1g==", + "version": "7.1.15", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.15.tgz", + "integrity": "sha512-bxlMKPDbY8x5h6HBwVzEOk2C8fb6SLfYQ5Jw3uBYuYF1lfWk/kbLd81la82vrIkBb0l+JdmrZaDikPrNxpS/Ew==", "dev": true, "dependencies": { "@babel/parser": "^7.1.0", @@ -8404,18 +5933,18 @@ } }, "node_modules/@types/babel__generator": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.2.tgz", - "integrity": "sha512-MdSJnBjl+bdwkLskZ3NGFp9YcXGx5ggLpQQPqtgakVhsWK0hTtNYhjpZLlWQTviGTvF8at+Bvli3jV7faPdgeQ==", + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.3.tgz", + "integrity": "sha512-/GWCmzJWqV7diQW54smJZzWbSFf4QYtF71WCKhcx6Ru/tFyQIY2eiiITcCAeuPbNSvT9YCGkVMqqvSk2Z0mXiA==", "dev": true, "dependencies": { "@babel/types": "^7.0.0" } }, "node_modules/@types/babel__template": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.0.tgz", - "integrity": "sha512-NTPErx4/FiPCGScH7foPyr+/1Dkzkni+rHiYHHoTjvwou7AQzJkNeD60A9CXRy+ZEN2B1bggmkTMCDb+Mv5k+A==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", + "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", "dev": true, "dependencies": { "@babel/parser": "^7.1.0", @@ -8431,20 +5960,31 @@ "@babel/types": "^7.3.0" } }, - "node_modules/@types/color-convert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@types/color-convert/-/color-convert-2.0.0.tgz", - "integrity": "sha512-m7GG7IKKGuJUXvkZ1qqG3ChccdIM/qBBo913z+Xft0nKCX4hAU/IxKwZBU4cpRZ7GS5kV4vOblUkILtSShCPXQ==", - "dev": true, + "node_modules/@types/cacheable-request": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.2.tgz", + "integrity": "sha512-B3xVo+dlKM6nnKTcmm5ZtY/OL8bOAOd2Olee9M1zft65ox50OzjEHW91sDiU9j6cvW8Ejg1/Qkf4xd2kugApUA==", "dependencies": { - "@types/color-name": "*" + "@types/http-cache-semantics": "*", + "@types/keyv": "*", + "@types/node": "*", + "@types/responselike": "*" } }, - "node_modules/@types/color-name": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", - "dev": true + "node_modules/@types/debug": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.6.tgz", + "integrity": "sha512-7fDOJFA/x8B+sO1901BmHlf5dE1cxBU8mRXj8QOEDnn16hhGJv/IHxJtZhvsabZsIMn0eLIyeOKAeqSNJJYTpA==" + }, + "node_modules/@types/emscripten": { + "version": "1.39.5", + "resolved": "https://registry.npmjs.org/@types/emscripten/-/emscripten-1.39.5.tgz", + "integrity": "sha512-DIOOg+POSrYl+OlNRHQuIEqCd8DCtynG57H862UCce16nXJX7J8eWxNGgOcf8Eyge8zXeSs27mz1UcFu8L/L7g==" + }, + "node_modules/@types/flat-cache": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@types/flat-cache/-/flat-cache-2.0.0.tgz", + "integrity": "sha512-fHeEsm9hvmZ+QHpw6Fkvf19KIhuqnYLU6vtWLjd5BsMd/qVi7iTkMioDZl0mQmfNRA1A6NwvhrSRNr9hGYZGww==" }, "node_modules/@types/graceful-fs": { "version": "4.1.5", @@ -8454,20 +5994,16 @@ "@types/node": "*" } }, + "node_modules/@types/graphlib": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/@types/graphlib/-/graphlib-2.1.8.tgz", + "integrity": "sha512-8nbbyD3zABRA9ePoBgAl2ym8cIwKQXTfv1gaIRTdY99yEOCaHfmjBeRp+BIemS8NtOqoWK7mfzWxjNrxLK3T5w==" + }, "node_modules/@types/hammerjs": { "version": "2.0.39", "resolved": "https://registry.npmjs.org/@types/hammerjs/-/hammerjs-2.0.39.tgz", "integrity": "sha512-lYR2Y/tV2ujpk/WyUc7S0VLI0a9hrtVIN9EwnrNo5oSEJI2cK2/XrgwOQmXLL3eTulOESvh9qP6si9+DWM9cOA==" }, - "node_modules/@types/hast": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.1.tgz", - "integrity": "sha512-viwwrB+6xGzw+G1eWpF9geV3fnsDgXqHG+cqgiHrvQfDUW5hzhCyV7Sy3UJxhfRFBsgky2SSW33qi/YrIkjX5Q==", - "dev": true, - "dependencies": { - "@types/unist": "*" - } - }, "node_modules/@types/hoist-non-react-statics": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz", @@ -8477,17 +6013,10 @@ "hoist-non-react-statics": "^3.3.0" } }, - "node_modules/@types/html-minifier-terser": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", - "integrity": "sha512-giAlZwstKbmvMk1OO7WXSj4OZ0keXAcl2TQq4LWHiiPH2ByaH7WeUzng+Qej8UPxxv+8lRTuouo0iaNDBuzIBA==", - "dev": true - }, - "node_modules/@types/is-function": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@types/is-function/-/is-function-1.0.0.tgz", - "integrity": "sha512-iTs9HReBu7evG77Q4EC8hZnqRt57irBDkK9nvmHroiOIVwYMQc4IvYvdRgwKfYepunIY7Oh/dBuuld+Gj9uo6w==", - "dev": true + "node_modules/@types/http-cache-semantics": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz", + "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==" }, "node_modules/@types/istanbul-lib-coverage": { "version": "2.0.3", @@ -8511,21 +6040,68 @@ } }, "node_modules/@types/jest": { - "version": "26.0.23", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-26.0.23.tgz", - "integrity": "sha512-ZHLmWMJ9jJ9PTiT58juykZpL7KjwJywFN3Rr2pTSkyQfydf/rk22yS7W8p5DaVUMQ2BQC7oYiU3FjbTM/mYrOA==", + "version": "26.0.24", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-26.0.24.tgz", + "integrity": "sha512-E/X5Vib8BWqZNRlDxj9vYXhsDwPYbPINqKF9BsnSoon4RQ0D9moEuLD8txgyypFLH7J4+Lho9Nr/c8H0Fi+17w==", "dev": true, "dependencies": { "jest-diff": "^26.0.0", "pretty-format": "^26.0.0" } }, + "node_modules/@types/js-yaml": { + "version": "3.12.7", + "resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-3.12.7.tgz", + "integrity": "sha512-S6+8JAYTE1qdsc9HMVsfY7+SgSuUU/Tp6TYTmITW0PZxiyIMvol3Gy//y69Wkhs0ti4py5qgR3uZH6uz/DNzJQ==" + }, "node_modules/@types/json-schema": { "version": "7.0.7", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.7.tgz", "integrity": "sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==", "dev": true }, + "node_modules/@types/keyv": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.2.tgz", + "integrity": "sha512-/FvAK2p4jQOaJ6CGDHJTqZcUtbZe820qIeTg7o0Shg7drB4JHeL+V/dhSaly7NXx6u8eSee+r7coT+yuJEvDLg==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/lodash": { + "version": "4.14.171", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.171.tgz", + "integrity": "sha512-7eQ2xYLLI/LsicL2nejW9Wyko3lcpN6O/z0ZLHrEQsg280zIdCv1t/0m6UtBjUHokCGBQ3gYTbHzDkZ1xOBwwg==" + }, + "node_modules/@types/lodash.chunk": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@types/lodash.chunk/-/lodash.chunk-4.2.6.tgz", + "integrity": "sha512-SPlusB7jxXyGcTXYcUdWr7WmhArO/rmTq54VN88iKMxGUhyg79I4Q8n4riGn3kjaTjOJrVlHhxgX/d7woak5BQ==", + "dependencies": { + "@types/lodash": "*" + } + }, + "node_modules/@types/lodash.omit": { + "version": "4.5.6", + "resolved": "https://registry.npmjs.org/@types/lodash.omit/-/lodash.omit-4.5.6.tgz", + "integrity": "sha512-KXPpOSNX2h0DAG2w7ajpk7TXvWF28ZHs5nJhOJyP0BQHkehgr948RVsToItMme6oi0XJkp19CbuNXkIX8FiBlQ==", + "dependencies": { + "@types/lodash": "*" + } + }, + "node_modules/@types/lodash.union": { + "version": "4.6.6", + "resolved": "https://registry.npmjs.org/@types/lodash.union/-/lodash.union-4.6.6.tgz", + "integrity": "sha512-Wu0ZEVNcyCz8eAn6TlUbYWZoGbH9E+iOHxAZbwUoCEXdUiy6qpcz5o44mMXViM4vlPLLCPlkAubEP1gokoSZaw==", + "dependencies": { + "@types/lodash": "*" + } + }, + "node_modules/@types/minimatch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==" + }, "node_modules/@types/node": { "version": "16.0.0", "resolved": "https://registry.npmjs.org/@types/node/-/node-16.0.0.tgz", @@ -8537,24 +6113,6 @@ "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==", "dev": true }, - "node_modules/@types/npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/@types/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-4QQmOF5KlwfxJ5IGXFIudkeLCdMABz03RcUXu+LCb24zmln8QW6aDjuGl4d4XPVLf2j+FnjelHTP7dvceAFbhA==", - "dev": true - }, - "node_modules/@types/overlayscrollbars": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@types/overlayscrollbars/-/overlayscrollbars-1.12.0.tgz", - "integrity": "sha512-h/pScHNKi4mb+TrJGDon8Yb06ujFG0mSg12wIO0sWMUF3dQIe2ExRRdNRviaNt9IjxIiOfnRr7FsQAdHwK4sMg==", - "dev": true - }, - "node_modules/@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, "node_modules/@types/prettier": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.3.1.tgz", @@ -8566,25 +6124,10 @@ "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.3.tgz", "integrity": "sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw==" }, - "node_modules/@types/qs": { - "version": "6.9.6", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.6.tgz", - "integrity": "sha512-0/HnwIfW4ki2D8L8c9GVcG5I72s9jP5GSLVF0VIXDW00kmIpA6O33G7a8n59Tmh7Nz0WUC3rSb7PTY/sdW2JzA==", - "dev": true - }, - "node_modules/@types/reach__router": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/@types/reach__router/-/reach__router-1.3.8.tgz", - "integrity": "sha512-cjjT0FPdwuvhLWpCDt2WCh4sdBqNzJe3XhxXmRQGsY3IvT58M8sE4E7A0QaFYuJs3ar+McSJTiJxdYKWAXbBhw==", - "dev": true, - "dependencies": { - "@types/react": "*" - } - }, "node_modules/@types/react": { - "version": "17.0.11", - "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.11.tgz", - "integrity": "sha512-yFRQbD+whVonItSk7ZzP/L+gPTJVBkL/7shLEF+i9GC/1cV3JmUxEQz6+9ylhUpWSDuqo1N9qEvqS6vTj4USUA==", + "version": "17.0.14", + "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.14.tgz", + "integrity": "sha512-0WwKHUbWuQWOce61UexYuWTGuGY/8JvtUe/dtQ6lR4sZ3UiylHotJeWpf3ArP9+DSGUoLY3wbU59VyMrJps5VQ==", "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -8602,9 +6145,9 @@ } }, "node_modules/@types/react-native": { - "version": "0.64.10", - "resolved": "https://registry.npmjs.org/@types/react-native/-/react-native-0.64.10.tgz", - "integrity": "sha512-3Kb9QM5/WZ6p58yZ7VPbvjvi6Wc/ZkESgJhKso1gKkNuHBe/4WL6586R2JRDiz9Tsxal9lMnbj3fligBVGl8PA==", + "version": "0.64.11", + "resolved": "https://registry.npmjs.org/@types/react-native/-/react-native-0.64.11.tgz", + "integrity": "sha512-WgOJtQpFyH063MHZugOHq8Qr0J0UnASmz0NvSNRXEOd8ySkuNvLmlkiITr+L85o2BPj3hB/wx8IiK16dW/uVkQ==", "dependencies": { "@types/react": "*" } @@ -8620,9 +6163,9 @@ } }, "node_modules/@types/react-native-share": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/@types/react-native-share/-/react-native-share-3.3.2.tgz", - "integrity": "sha512-D/kIZvafsCFBONYZ37pekeE7/b/Zs+K0mRtT05SJ0aGZjSDnPyRmazrfyOrzOOIufEBH/vXrlb3yFkmdbCkwaA==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@types/react-native-share/-/react-native-share-3.3.3.tgz", + "integrity": "sha512-aZNKQjXtsuooG21wSsT8WUMkD+TiSNGi6i1XEKHLEFD3CSRUGAJI/PFXPzdWGsPw7Z0z4xW3IDKCbjyu0grRVg==", "dev": true, "dependencies": { "@types/react": "*", @@ -8639,24 +6182,15 @@ } }, "node_modules/@types/react-native-video": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/@types/react-native-video/-/react-native-video-5.0.6.tgz", - "integrity": "sha512-elf7Y7qornIySK5yR9yOINtQcqXScSQoe9yz5Kuisq/IV5Kf3BprsNGHloRXT+WYVQflii6+EJwyAUs1R4izAw==", + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/@types/react-native-video/-/react-native-video-5.0.8.tgz", + "integrity": "sha512-gxwDE+0+R9FozEaMavgbR1ctHclSzt/YLRDDMubeQAcs4hq/DyafSOcvsGn9CT8uB35HRxGJCpuuLyTuwjG2yw==", "dev": true, "dependencies": { "@types/react": "*", "@types/react-native": "*" } }, - "node_modules/@types/react-syntax-highlighter": { - "version": "11.0.5", - "resolved": "https://registry.npmjs.org/@types/react-syntax-highlighter/-/react-syntax-highlighter-11.0.5.tgz", - "integrity": "sha512-VIOi9i2Oj5XsmWWoB72p3KlZoEbdRAcechJa8Ztebw7bDl2YmR+odxIqhtJGp1q2EozHs02US+gzxJ9nuf56qg==", - "dev": true, - "dependencies": { - "@types/react": "*" - } - }, "node_modules/@types/react-test-renderer": { "version": "17.0.1", "resolved": "https://registry.npmjs.org/@types/react-test-renderer/-/react-test-renderer-17.0.1.tgz", @@ -8666,30 +6200,33 @@ "@types/react": "*" } }, - "node_modules/@types/react-textarea-autosize": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/@types/react-textarea-autosize/-/react-textarea-autosize-4.3.5.tgz", - "integrity": "sha512-PiDL83kPMTolyZAWW3lyzO6ktooTb9tFTntVy7CA83/qFLWKLJ5bLeRboy6J6j3b1e8h2Eec6gBTEOOJRjV14A==", - "dev": true, - "dependencies": { - "@types/react": "*" - } - }, "node_modules/@types/react/node_modules/csstype": { "version": "3.0.8", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.8.tgz", "integrity": "sha512-jXKhWqXPmlUeoQnF/EhTtTl4C9SnrxSH/jZUih3jmO6lBKr99rP3/+FmrMj4EFpOXzMtXHAZkd3x0E6h6Fgflw==" }, + "node_modules/@types/responselike": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.0.tgz", + "integrity": "sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/sarif": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@types/sarif/-/sarif-2.1.4.tgz", + "integrity": "sha512-4xKHMdg3foh3Va1fxTzY1qt8QVqmaJpGWsVvtjQrJBn+/bkig2pWFKJ4FPI2yLI4PAj0SUKiPO4Vd7ggYIMZjQ==" + }, "node_modules/@types/scheduler": { "version": "0.16.1", "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.1.tgz", "integrity": "sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA==" }, "node_modules/@types/semver": { - "version": "7.3.6", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.6.tgz", - "integrity": "sha512-0caWDWmpCp0uifxFh+FaqK3CuZ2SkRR/ZRxAV5+zNdC3QVUi6wyOJnefhPvtNt8NQWXB5OA93BUvZsXpWat2Xw==", - "dev": true + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-4g1jrL98mdOIwSOUh6LTlB0Cs9I0dQPwINUhBg7C6pN4HLr8GS8xsksJxilW6S6dQHVi2K/o+lQuQcg7LroCnw==" }, "node_modules/@types/shallow-equals": { "version": "1.0.0", @@ -8697,53 +6234,22 @@ "integrity": "sha512-XtGSj7GYPfJwaklDtMEONj+kmpyCP8OLYoPqp/ROM8BL1VaF2IgYbxiEKfLvOyHN7c2d1KAFYzy6EIu8CSFt1A==", "dev": true }, - "node_modules/@types/source-list-map": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", - "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", - "dev": true - }, "node_modules/@types/stack-utils": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", "dev": true }, - "node_modules/@types/tapable": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.8.tgz", - "integrity": "sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ==", - "dev": true - }, "node_modules/@types/tinycolor2": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/@types/tinycolor2/-/tinycolor2-1.4.2.tgz", - "integrity": "sha512-PeHg/AtdW6aaIO2a+98Xj7rWY4KC1E6yOy7AFknJQ7VXUGNrMlyxDFxJo7HqLtjQms/ZhhQX52mLVW/EX3JGOw==", + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@types/tinycolor2/-/tinycolor2-1.4.3.tgz", + "integrity": "sha512-Kf1w9NE5HEgGxCRyIcRXR/ZYtDv0V8FVPtYHwLxl0O+maGX0erE77pQlD0gpP+/KByMZ87mOA79SjifhSB3PjQ==", "dev": true }, - "node_modules/@types/uglify-js": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.13.1.tgz", - "integrity": "sha512-O3MmRAk6ZuAKa9CHgg0Pr0+lUOqoMLpc9AS4R8ano2auvsg7IE8syF3Xh/NPr26TWklxYcqoEEFdzLLs1fV9PQ==", - "dev": true, - "dependencies": { - "source-map": "^0.6.1" - } - }, - "node_modules/@types/uglify-js/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/@types/unist": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.4.tgz", - "integrity": "sha512-zfyYsDTK1HTGYXU3fTiM76+om93HcFtsZd2M0bO/CL4DiETV7mSa/pIVN/6+G3esOqEMdg2An5cHHbK5t+9w+A==", - "dev": true + "node_modules/@types/treeify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/treeify/-/treeify-1.0.0.tgz", + "integrity": "sha512-ONpcZAEYlbPx4EtJwfTyCDQJGUpKf4sEcuySdCVjK5Fj/3vHp5HII1fqa1/+qrsLnpYELCQTfVW/awsGJePoIg==" }, "node_modules/@types/url-parse": { "version": "1.4.3", @@ -8751,67 +6257,10 @@ "integrity": "sha512-4kHAkbV/OfW2kb5BLVUuUMoumB3CP8rHqlw48aHvFy5tf9ER0AfOonBlX29l/DD68G70DmyhRlSYfQPSYpC5Vw==", "dev": true }, - "node_modules/@types/webpack": { - "version": "4.41.30", - "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.30.tgz", - "integrity": "sha512-GUHyY+pfuQ6haAfzu4S14F+R5iGRwN6b2FRNJY7U0NilmFAqbsOfK6j1HwuLBAqwRIT+pVdNDJGJ6e8rpp0KHA==", - "dev": true, - "dependencies": { - "@types/node": "*", - "@types/tapable": "^1", - "@types/uglify-js": "*", - "@types/webpack-sources": "*", - "anymatch": "^3.0.0", - "source-map": "^0.6.0" - } - }, - "node_modules/@types/webpack-env": { - "version": "1.16.2", - "resolved": "https://registry.npmjs.org/@types/webpack-env/-/webpack-env-1.16.2.tgz", - "integrity": "sha512-vKx7WNQNZDyJveYcHAm9ZxhqSGLYwoyLhrHjLBOkw3a7cT76sTdjgtwyijhk1MaHyRIuSztcVwrUOO/NEu68Dw==", - "dev": true - }, - "node_modules/@types/webpack-sources": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-2.1.1.tgz", - "integrity": "sha512-MjM1R6iuw8XaVbtkCBz0N349cyqBjJHCbQiOeppe3VBeFvxqs74RKHAVt9LkxTnUWc7YLZOEsUfPUnmK6SBPKQ==", - "dev": true, - "dependencies": { - "@types/node": "*", - "@types/source-list-map": "*", - "source-map": "^0.7.3" - } - }, - "node_modules/@types/webpack-sources/node_modules/source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@types/webpack/node_modules/anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@types/webpack/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "node_modules/@types/uuid": { + "version": "8.3.1", + "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.1.tgz", + "integrity": "sha512-Y2mHTRAbqfFkpjldbkHGY8JIzRN6XqYRliG8/24FcHm2D2PwW24fl5xMRTVGdrb7iMrwCaIEbLWerGIkXuFWVg==" }, "node_modules/@types/yargs": { "version": "15.0.14", @@ -8827,13 +6276,13 @@ "integrity": "sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw==" }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "4.28.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.28.0.tgz", - "integrity": "sha512-KcF6p3zWhf1f8xO84tuBailV5cN92vhS+VT7UJsPzGBm9VnQqfI9AsiMUFUCYHTYPg1uCCo+HyiDnpDuvkAMfQ==", + "version": "4.28.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.28.2.tgz", + "integrity": "sha512-PGqpLLzHSxq956rzNGasO3GsAPf2lY9lDUBXhS++SKonglUmJypaUtcKzRtUte8CV7nruwnDxtLUKpVxs0wQBw==", "dev": true, "dependencies": { - "@typescript-eslint/experimental-utils": "4.28.0", - "@typescript-eslint/scope-manager": "4.28.0", + "@typescript-eslint/experimental-utils": "4.28.2", + "@typescript-eslint/scope-manager": "4.28.2", "debug": "^4.3.1", "functional-red-black-tree": "^1.0.1", "regexpp": "^3.1.0", @@ -8858,15 +6307,15 @@ } }, "node_modules/@typescript-eslint/experimental-utils": { - "version": "4.28.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.28.0.tgz", - "integrity": "sha512-9XD9s7mt3QWMk82GoyUpc/Ji03vz4T5AYlHF9DcoFNfJ/y3UAclRsfGiE2gLfXtyC+JRA3trR7cR296TEb1oiQ==", + "version": "4.28.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.28.2.tgz", + "integrity": "sha512-MwHPsL6qo98RC55IoWWP8/opTykjTp4JzfPu1VfO2Z0MshNP0UZ1GEV5rYSSnZSUI8VD7iHvtIPVGW5Nfh7klQ==", "dev": true, "dependencies": { "@types/json-schema": "^7.0.7", - "@typescript-eslint/scope-manager": "4.28.0", - "@typescript-eslint/types": "4.28.0", - "@typescript-eslint/typescript-estree": "4.28.0", + "@typescript-eslint/scope-manager": "4.28.2", + "@typescript-eslint/types": "4.28.2", + "@typescript-eslint/typescript-estree": "4.28.2", "eslint-scope": "^5.1.1", "eslint-utils": "^3.0.0" }, @@ -8882,14 +6331,14 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "4.28.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.28.0.tgz", - "integrity": "sha512-7x4D22oPY8fDaOCvkuXtYYTQ6mTMmkivwEzS+7iml9F9VkHGbbZ3x4fHRwxAb5KeuSkLqfnYjs46tGx2Nour4A==", + "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.0", - "@typescript-eslint/types": "4.28.0", - "@typescript-eslint/typescript-estree": "4.28.0", + "@typescript-eslint/scope-manager": "4.28.2", + "@typescript-eslint/types": "4.28.2", + "@typescript-eslint/typescript-estree": "4.28.2", "debug": "^4.3.1" }, "engines": { @@ -8909,13 +6358,13 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "4.28.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.28.0.tgz", - "integrity": "sha512-eCALCeScs5P/EYjwo6se9bdjtrh8ByWjtHzOkC4Tia6QQWtQr3PHovxh3TdYTuFcurkYI4rmFsRFpucADIkseg==", + "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.0", - "@typescript-eslint/visitor-keys": "4.28.0" + "@typescript-eslint/types": "4.28.2", + "@typescript-eslint/visitor-keys": "4.28.2" }, "engines": { "node": "^8.10.0 || ^10.13.0 || >=11.10.1" @@ -8926,9 +6375,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "4.28.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.28.0.tgz", - "integrity": "sha512-p16xMNKKoiJCVZY5PW/AfILw2xe1LfruTcfAKBj3a+wgNYP5I9ZEKNDOItoRt53p4EiPV6iRSICy8EPanG9ZVA==", + "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" @@ -8939,13 +6388,13 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "4.28.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.28.0.tgz", - "integrity": "sha512-m19UQTRtxMzKAm8QxfKpvh6OwQSXaW1CdZPoCaQuLwAq7VZMNuhJmZR4g5281s2ECt658sldnJfdpSZZaxUGMQ==", + "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.0", - "@typescript-eslint/visitor-keys": "4.28.0", + "@typescript-eslint/types": "4.28.2", + "@typescript-eslint/visitor-keys": "4.28.2", "debug": "^4.3.1", "globby": "^11.0.3", "is-glob": "^4.0.1", @@ -8966,12 +6415,12 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "4.28.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.28.0.tgz", - "integrity": "sha512-PjJyTWwrlrvM5jazxYF5ZPs/nl0kHDZMVbuIcbpawVXaDPelp3+S9zpOz5RmVUfS/fD5l5+ZXNKnWhNYjPzCvw==", + "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.0", + "@typescript-eslint/types": "4.28.2", "eslint-visitor-keys": "^2.0.0" }, "engines": { @@ -8998,10 +6447,11 @@ } }, "node_modules/@unimodules/react-native-adapter": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/@unimodules/react-native-adapter/-/react-native-adapter-6.2.2.tgz", - "integrity": "sha512-hBXL+IX3u+4TcAHu9lIItdycA7pYWZn3Tt7s5TTna9QKHjyrwo0zVss27LkpJ40tXRHyh/GJ8VzN2CD+0M5I2A==", + "version": "6.3.4", + "resolved": "https://registry.npmjs.org/@unimodules/react-native-adapter/-/react-native-adapter-6.3.4.tgz", + "integrity": "sha512-o2sX+QrYo2hmK0vNbxlULy319IxjgTWVraGxatrXeYPCbFEDM/u+nCLlCgGTz6ZrYN7dHnA0Xq3uoerhUPE0gg==", "dependencies": { + "expo-modules-autolinking": "^0.0.3", "invariant": "^2.2.4" } }, @@ -9010,6 +6460,7 @@ "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", "dev": true, + "peer": true, "dependencies": { "@webassemblyjs/helper-module-context": "1.9.0", "@webassemblyjs/helper-wasm-bytecode": "1.9.0", @@ -9020,25 +6471,29 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", - "dev": true + "dev": true, + "peer": true }, "node_modules/@webassemblyjs/helper-api-error": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", - "dev": true + "dev": true, + "peer": true }, "node_modules/@webassemblyjs/helper-buffer": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz", "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==", - "dev": true + "dev": true, + "peer": true }, "node_modules/@webassemblyjs/helper-code-frame": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", "dev": true, + "peer": true, "dependencies": { "@webassemblyjs/wast-printer": "1.9.0" } @@ -9047,13 +6502,15 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", - "dev": true + "dev": true, + "peer": true }, "node_modules/@webassemblyjs/helper-module-context": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", "dev": true, + "peer": true, "dependencies": { "@webassemblyjs/ast": "1.9.0" } @@ -9062,13 +6519,15 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", - "dev": true + "dev": true, + "peer": true }, "node_modules/@webassemblyjs/helper-wasm-section": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz", "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", "dev": true, + "peer": true, "dependencies": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-buffer": "1.9.0", @@ -9081,6 +6540,7 @@ "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz", "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", "dev": true, + "peer": true, "dependencies": { "@xtuc/ieee754": "^1.2.0" } @@ -9090,6 +6550,7 @@ "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz", "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", "dev": true, + "peer": true, "dependencies": { "@xtuc/long": "4.2.2" } @@ -9098,13 +6559,15 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz", "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==", - "dev": true + "dev": true, + "peer": true }, "node_modules/@webassemblyjs/wasm-edit": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz", "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", "dev": true, + "peer": true, "dependencies": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-buffer": "1.9.0", @@ -9121,6 +6584,7 @@ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz", "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", "dev": true, + "peer": true, "dependencies": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-wasm-bytecode": "1.9.0", @@ -9134,6 +6598,7 @@ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz", "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", "dev": true, + "peer": true, "dependencies": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-buffer": "1.9.0", @@ -9146,6 +6611,7 @@ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz", "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", "dev": true, + "peer": true, "dependencies": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-api-error": "1.9.0", @@ -9160,6 +6626,7 @@ "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", "dev": true, + "peer": true, "dependencies": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/floating-point-hex-parser": "1.9.0", @@ -9174,6 +6641,7 @@ "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", "dev": true, + "peer": true, "dependencies": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/wast-parser": "1.9.0", @@ -9184,19 +6652,336 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true + "dev": true, + "peer": true }, "node_modules/@xtuc/long": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true + "dev": true, + "peer": true + }, + "node_modules/@yarnpkg/core": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/core/-/core-2.4.0.tgz", + "integrity": "sha512-FYjcPNTfDfMKLFafQPt49EY28jnYC82Z2S7oMwLPUh144BL8v8YXzb4aCnFyi5nFC5h2kcrJfZh7+Pm/qvCqGw==", + "dependencies": { + "@arcanis/slice-ansi": "^1.0.2", + "@types/semver": "^7.1.0", + "@types/treeify": "^1.0.0", + "@yarnpkg/fslib": "^2.4.0", + "@yarnpkg/json-proxy": "^2.1.0", + "@yarnpkg/libzip": "^2.2.1", + "@yarnpkg/parsers": "^2.3.0", + "@yarnpkg/pnp": "^2.3.2", + "@yarnpkg/shell": "^2.4.1", + "binjumper": "^0.1.4", + "camelcase": "^5.3.1", + "chalk": "^3.0.0", + "ci-info": "^2.0.0", + "clipanion": "^2.6.2", + "cross-spawn": "7.0.3", + "diff": "^4.0.1", + "globby": "^11.0.1", + "got": "^11.7.0", + "json-file-plus": "^3.3.1", + "lodash": "^4.17.15", + "micromatch": "^4.0.2", + "mkdirp": "^0.5.1", + "p-limit": "^2.2.0", + "pluralize": "^7.0.0", + "pretty-bytes": "^5.1.0", + "semver": "^7.1.2", + "stream-to-promise": "^2.2.0", + "tar-stream": "^2.0.1", + "treeify": "^1.1.0", + "tslib": "^1.13.0", + "tunnel": "^0.0.6" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/@yarnpkg/core/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@yarnpkg/core/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@yarnpkg/core/node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@yarnpkg/core/node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/@yarnpkg/core/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@yarnpkg/core/node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@yarnpkg/core/node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@yarnpkg/core/node_modules/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@yarnpkg/core/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/@yarnpkg/core/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@yarnpkg/fslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/fslib/-/fslib-2.4.0.tgz", + "integrity": "sha512-CwffYY9owtl3uImNOn1K4jl5iIb/L16a9UZ9Q3lkBARk6tlUsPrNFX00eoUlFcLn49TTfd3zdN6higloGCyncw==", + "dependencies": { + "@yarnpkg/libzip": "^2.2.1", + "tslib": "^1.13.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/@yarnpkg/fslib/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/@yarnpkg/json-proxy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/json-proxy/-/json-proxy-2.1.0.tgz", + "integrity": "sha512-rOgCg2DkyviLgr80mUMTt9vzdf5RGOujQB26yPiXjlz4WNePLBshKlTNG9rKSoKQSOYEQcw6cUmosfOKDatrCw==", + "dependencies": { + "@yarnpkg/fslib": "^2.1.0", + "tslib": "^1.13.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/@yarnpkg/json-proxy/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/@yarnpkg/libzip": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@yarnpkg/libzip/-/libzip-2.2.1.tgz", + "integrity": "sha512-AYDJXrkzayoDd3ZlVgFJ+LyDX+Zj/cki3vxIpcYxejtgkl3aquVWOxlC0DD9WboBWsJFIP1MjrUbchLyh++/7A==", + "dependencies": { + "@types/emscripten": "^1.38.0", + "tslib": "^1.13.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/@yarnpkg/libzip/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/@yarnpkg/lockfile": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", - "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", - "dev": true + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==" + }, + "node_modules/@yarnpkg/parsers": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-2.3.0.tgz", + "integrity": "sha512-qgz0QUgOvnhtF92kaluIhIIKBUHlYlHUBQxqh5v9+sxEQvUeF6G6PKiFlzo3E6O99XwvNEGpVu1xZPoSGyGscQ==", + "dependencies": { + "js-yaml": "^3.10.0", + "tslib": "^1.13.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/@yarnpkg/parsers/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/@yarnpkg/pnp": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/@yarnpkg/pnp/-/pnp-2.3.2.tgz", + "integrity": "sha512-JdwHu1WBCISqJEhIwx6Hbpe8MYsYbkGMxoxolkDiAeJ9IGEe08mQcbX1YmUDV1ozSWlm9JZE90nMylcDsXRFpA==", + "dependencies": { + "@types/node": "^13.7.0", + "@yarnpkg/fslib": "^2.4.0", + "tslib": "^1.13.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/@yarnpkg/pnp/node_modules/@types/node": { + "version": "13.13.52", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.52.tgz", + "integrity": "sha512-s3nugnZumCC//n4moGGe6tkNMyYEdaDBitVjwPxXmR5lnMG5dHePinH2EdxkG3Rh1ghFHHixAG4NJhpJW1rthQ==" + }, + "node_modules/@yarnpkg/pnp/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/@yarnpkg/shell": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@yarnpkg/shell/-/shell-2.4.1.tgz", + "integrity": "sha512-oNNJkH8ZI5uwu0dMkJf737yMSY1WXn9gp55DqSA5wAOhKvV5DJTXFETxkVgBQhO6Bow9tMGSpvowTMD/oAW/9g==", + "dependencies": { + "@yarnpkg/fslib": "^2.4.0", + "@yarnpkg/parsers": "^2.3.0", + "clipanion": "^2.6.2", + "cross-spawn": "7.0.3", + "fast-glob": "^3.2.2", + "micromatch": "^4.0.2", + "stream-buffers": "^3.0.2", + "tslib": "^1.13.0" + }, + "bin": { + "shell": "lib/cli.js" + }, + "engines": { + "node": ">=10.19.0" + } + }, + "node_modules/@yarnpkg/shell/node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@yarnpkg/shell/node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@yarnpkg/shell/node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "engines": { + "node": ">=8" + } + }, + "node_modules/@yarnpkg/shell/node_modules/stream-buffers": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/stream-buffers/-/stream-buffers-3.0.2.tgz", + "integrity": "sha512-DQi1h8VEBA/lURbSwFtEHnSTb9s2/pwLEaFuNhXwy1Dx3Sa0lOuYT2yNUr4/j2fs8oCAMANtrZ5OrPZtyVs3MQ==", + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/@yarnpkg/shell/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/@yarnpkg/shell/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } }, "node_modules/abab": { "version": "2.0.5", @@ -9204,6 +6989,11 @@ "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==", "dev": true }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + }, "node_modules/abort-controller": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", @@ -9277,15 +7067,6 @@ "node": ">=0.4.0" } }, - "node_modules/address": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/address/-/address-1.1.2.tgz", - "integrity": "sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA==", - "dev": true, - "engines": { - "node": ">= 0.12.0" - } - }, "node_modules/agent-base": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", @@ -9301,7 +7082,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, "dependencies": { "clean-stack": "^2.0.0", "indent-string": "^4.0.0" @@ -9310,31 +7090,6 @@ "node": ">=8" } }, - "node_modules/airbnb-js-shims": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/airbnb-js-shims/-/airbnb-js-shims-2.2.1.tgz", - "integrity": "sha512-wJNXPH66U2xjgo1Zwyjf9EydvJ2Si94+vSdk6EERcBfB2VZkeltpqIats0cqIZMLCXP3zcyaUKGYQeIBT6XjsQ==", - "dev": true, - "dependencies": { - "array-includes": "^3.0.3", - "array.prototype.flat": "^1.2.1", - "array.prototype.flatmap": "^1.2.1", - "es5-shim": "^4.5.13", - "es6-shim": "^0.35.5", - "function.prototype.name": "^1.1.0", - "globalthis": "^1.0.0", - "object.entries": "^1.1.0", - "object.fromentries": "^2.0.0 || ^1.0.0", - "object.getownpropertydescriptors": "^2.0.3", - "object.values": "^1.1.0", - "promise.allsettled": "^1.0.0", - "promise.prototype.finally": "^3.1.0", - "string.prototype.matchall": "^4.0.0 || ^3.0.1", - "string.prototype.padend": "^3.0.0", - "string.prototype.padstart": "^3.0.0", - "symbol.prototype.description": "^1.0.0" - } - }, "node_modules/ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", @@ -9356,6 +7111,7 @@ "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", "dev": true, + "peer": true, "peerDependencies": { "ajv": ">=5.0.0" } @@ -9378,7 +7134,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.0.tgz", "integrity": "sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw==", - "dev": true, "dependencies": { "string-width": "^3.0.0" } @@ -9387,7 +7142,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true, "engines": { "node": ">=6" } @@ -9395,14 +7149,12 @@ "node_modules/ansi-align/node_modules/emoji-regex": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" }, "node_modules/ansi-align/node_modules/string-width": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, "dependencies": { "emoji-regex": "^7.0.1", "is-fullwidth-code-point": "^2.0.0", @@ -9416,7 +7168,6 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, "dependencies": { "ansi-regex": "^4.1.0" }, @@ -9470,18 +7221,6 @@ "node": ">=6" } }, - "node_modules/ansi-html": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", - "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=", - "dev": true, - "engines": [ - "node >= 0.8.0" - ], - "bin": { - "ansi-html": "bin/ansi-html" - } - }, "node_modules/ansi-regex": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", @@ -9514,25 +7253,15 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" }, - "node_modules/ansi-to-html": { - "version": "0.6.15", - "resolved": "https://registry.npmjs.org/ansi-to-html/-/ansi-to-html-0.6.15.tgz", - "integrity": "sha512-28ijx2aHJGdzbs+O5SNQF65r6rrKYnkuwTYm8lZlChuoJ9P1vVzIpWO20sQTqTPDXYp6NFwk326vApTtLVFXpQ==", - "dev": true, - "dependencies": { - "entities": "^2.0.0" - }, - "bin": { - "ansi-to-html": "bin/ansi-to-html" - }, - "engines": { - "node": ">=8.0.0" - } + "node_modules/ansicolors": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz", + "integrity": "sha1-ZlWX3oap/+Oqm/vmyuXG6kJrSXk=" }, - "node_modules/any-base": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/any-base/-/any-base-1.1.0.tgz", - "integrity": "sha512-uMgjozySS8adZZYePpaWs8cxB9/kdzmpX6SgJZ+wbz1K5eYk5QMYDVJaZKhxyIHUdnnJkfR7SVgStgH7LkGUyg==" + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=" }, "node_modules/anymatch": { "version": "2.0.0", @@ -9647,12 +7376,6 @@ "node": ">=0.10.0" } }, - "node_modules/app-root-dir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/app-root-dir/-/app-root-dir-1.0.2.tgz", - "integrity": "sha1-OBh+wt6nV3//Az/8sSFyaS/24Rg=", - "dev": true - }, "node_modules/appdirsjs": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/appdirsjs/-/appdirsjs-1.2.5.tgz", @@ -9675,6 +7398,11 @@ "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" }, + "node_modules/archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=" + }, "node_modules/are-we-there-yet": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", @@ -9716,17 +7444,19 @@ "node": ">=0.10.0" } }, + "node_modules/array-differ": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz", + "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==", + "engines": { + "node": ">=8" + } + }, "node_modules/array-filter": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=" }, - "node_modules/array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", - "dev": true - }, "node_modules/array-includes": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz", @@ -9760,7 +7490,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" } @@ -9769,6 +7498,7 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "peer": true, "engines": { "node": ">=0.10.0" } @@ -9781,23 +7511,6 @@ "node": ">=0.10.0" } }, - "node_modules/array.prototype.flat": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", - "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/array.prototype.flatmap": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", @@ -9816,44 +7529,25 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/array.prototype.map": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array.prototype.map/-/array.prototype.map-1.0.3.tgz", - "integrity": "sha512-nNcb30v0wfDyIe26Yif3PcV1JXQp4zEeEfupG7L4SRjnD6HLbO5b2a7eVSba53bOx4YCHYMBHt+Fp4vYstneRA==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "es-array-method-boxes-properly": "^1.0.0", - "is-string": "^1.0.5" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/asap": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" }, + "node_modules/asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, "node_modules/asn1.js": { "version": "5.4.1", "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", "dev": true, + "peer": true, "dependencies": { "bn.js": "^4.0.0", "inherits": "^2.0.1", @@ -9865,13 +7559,15 @@ "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true + "dev": true, + "peer": true }, "node_modules/assert": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", "dev": true, + "peer": true, "dependencies": { "object-assign": "^4.1.1", "util": "0.10.3" @@ -9881,13 +7577,15 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", - "dev": true + "dev": true, + "peer": true }, "node_modules/assert/node_modules/util": { "version": "0.10.3", "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", "dev": true, + "peer": true, "dependencies": { "inherits": "2.0.1" } @@ -9931,7 +7629,8 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", - "dev": true + "dev": true, + "optional": true }, "node_modules/async-hook-jl": { "version": "1.7.6", @@ -10002,28 +7701,6 @@ "node": ">= 4.5.0" } }, - "node_modules/autoprefixer": { - "version": "9.8.6", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.6.tgz", - "integrity": "sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg==", - "dev": true, - "dependencies": { - "browserslist": "^4.12.0", - "caniuse-lite": "^1.0.30001109", - "colorette": "^1.2.1", - "normalize-range": "^0.1.2", - "num2fraction": "^1.2.2", - "postcss": "^7.0.32", - "postcss-value-parser": "^4.1.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, - "funding": { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" - } - }, "node_modules/available-typed-arrays": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.4.tgz", @@ -10035,76 +7712,12 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, + "node_modules/axios": { + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", + "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", "dependencies": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - } - }, - "node_modules/babel-code-frame/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/babel-code-frame/node_modules/ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/babel-code-frame/node_modules/chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "dependencies": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/babel-code-frame/node_modules/js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "node_modules/babel-code-frame/node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/babel-code-frame/node_modules/supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true, - "engines": { - "node": ">=0.8.0" + "follow-redirects": "^1.10.0" } }, "node_modules/babel-core": { @@ -10145,68 +7758,77 @@ "node": ">=4" } }, - "node_modules/babel-helper-evaluate-path": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/babel-helper-evaluate-path/-/babel-helper-evaluate-path-0.5.0.tgz", - "integrity": "sha512-mUh0UhS607bGh5wUMAQfOpt2JX2ThXMtppHRdRU1kL7ZLRWIXxoV2UIV1r2cAeeNeU1M5SB5/RSUgUxrK8yOkA==", - "dev": true - }, - "node_modules/babel-helper-flip-expressions": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/babel-helper-flip-expressions/-/babel-helper-flip-expressions-0.4.3.tgz", - "integrity": "sha1-NpZzahKKwYvCUlS19AoizrPB0/0=", - "dev": true - }, - "node_modules/babel-helper-is-nodes-equiv": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/babel-helper-is-nodes-equiv/-/babel-helper-is-nodes-equiv-0.0.1.tgz", - "integrity": "sha1-NOmzALFHnd2Y7HfqC76TQt/jloQ=", - "dev": true - }, - "node_modules/babel-helper-is-void-0": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/babel-helper-is-void-0/-/babel-helper-is-void-0-0.4.3.tgz", - "integrity": "sha1-fZwBtFYee5Xb2g9u7kj1tg5nMT4=", - "dev": true - }, - "node_modules/babel-helper-mark-eval-scopes": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/babel-helper-mark-eval-scopes/-/babel-helper-mark-eval-scopes-0.4.3.tgz", - "integrity": "sha1-0kSjvvmESHJgP/tG4izorN9VFWI=", - "dev": true - }, - "node_modules/babel-helper-remove-or-void": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/babel-helper-remove-or-void/-/babel-helper-remove-or-void-0.4.3.tgz", - "integrity": "sha1-pPA7QAd6D/6I5F0HAQ3uJB/1rmA=", - "dev": true - }, - "node_modules/babel-helper-to-multiple-sequence-expressions": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/babel-helper-to-multiple-sequence-expressions/-/babel-helper-to-multiple-sequence-expressions-0.5.0.tgz", - "integrity": "sha512-m2CvfDW4+1qfDdsrtf4dwOslQC3yhbgyBFptncp4wvtdrDHqueW7slsYv4gArie056phvQFhT2nRcGS4bnm6mA==", - "dev": true - }, "node_modules/babel-jest": { - "version": "26.6.3", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-26.6.3.tgz", - "integrity": "sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA==", + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.0.6.tgz", + "integrity": "sha512-iTJyYLNc4wRofASmofpOc5NK9QunwMk+TLFgGXsTFS8uEqmd8wdI7sga0FPe2oVH3b5Agt/EAK1QjPEuKL8VfA==", "dev": true, "dependencies": { - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/babel__core": "^7.1.7", + "@jest/transform": "^27.0.6", + "@jest/types": "^27.0.6", + "@types/babel__core": "^7.1.14", "babel-plugin-istanbul": "^6.0.0", - "babel-preset-jest": "^26.6.2", + "babel-preset-jest": "^27.0.6", "chalk": "^4.0.0", "graceful-fs": "^4.2.4", "slash": "^3.0.0" }, "engines": { - "node": ">= 10.14.2" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, "peerDependencies": { - "@babel/core": "^7.0.0" + "@babel/core": "^7.8.0" + } + }, + "node_modules/babel-jest/node_modules/@jest/transform": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.0.6.tgz", + "integrity": "sha512-rj5Dw+mtIcntAUnMlW/Vju5mr73u8yg+irnHwzgtgoeI6cCPOvUwQ0D1uQtc/APmWgvRweEb1g05pkUpxH3iCA==", + "dev": true, + "dependencies": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.0.6", + "babel-plugin-istanbul": "^6.0.0", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.4", + "jest-haste-map": "^27.0.6", + "jest-regex-util": "^27.0.6", + "jest-util": "^27.0.6", + "micromatch": "^4.0.4", + "pirates": "^4.0.1", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/babel-jest/node_modules/@jest/types": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.0.6.tgz", + "integrity": "sha512-aSquT1qa9Pik26JK5/3rvnYb4bGtm1VFNesHKmNTwmPIgOrixvhL2ghIvFRNEpzy3gU+rUgjIF/KodbkFAl++g==", + "dev": true, + "dependencies": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/babel-jest/node_modules/@types/yargs": { + "version": "16.0.4", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.4.tgz", + "integrity": "sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==", + "dev": true, + "dependencies": { + "@types/yargs-parser": "*" } }, "node_modules/babel-jest/node_modules/ansi-styles": { @@ -10224,6 +7846,19 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/babel-jest/node_modules/anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, "node_modules/babel-jest/node_modules/chalk": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", @@ -10240,6 +7875,12 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, + "node_modules/babel-jest/node_modules/ci-info": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.2.0.tgz", + "integrity": "sha512-dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A==", + "dev": true + }, "node_modules/babel-jest/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -10249,6 +7890,112 @@ "node": ">=8" } }, + "node_modules/babel-jest/node_modules/is-ci": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.0.tgz", + "integrity": "sha512-kDXyttuLeslKAHYL/K28F2YkM3x5jvFPEw3yXbRptXydjD9rpLEz+C5K5iutY9ZiUu6AP41JdvRQwF4Iqs4ZCQ==", + "dev": true, + "dependencies": { + "ci-info": "^3.1.1" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/babel-jest/node_modules/jest-haste-map": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.0.6.tgz", + "integrity": "sha512-4ldjPXX9h8doB2JlRzg9oAZ2p6/GpQUNAeiYXqcpmrKbP0Qev0wdZlxSMOmz8mPOEnt4h6qIzXFLDi8RScX/1w==", + "dev": true, + "dependencies": { + "@jest/types": "^27.0.6", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "graceful-fs": "^4.2.4", + "jest-regex-util": "^27.0.6", + "jest-serializer": "^27.0.6", + "jest-util": "^27.0.6", + "jest-worker": "^27.0.6", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + }, + "optionalDependencies": { + "fsevents": "^2.3.2" + } + }, + "node_modules/babel-jest/node_modules/jest-regex-util": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.0.6.tgz", + "integrity": "sha512-SUhPzBsGa1IKm8hx2F4NfTGGp+r7BXJ4CulsZ1k2kI+mGLG+lxGrs76veN2LF/aUdGosJBzKgXmNCw+BzFqBDQ==", + "dev": true, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/babel-jest/node_modules/jest-serializer": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.0.6.tgz", + "integrity": "sha512-PtGdVK9EGC7dsaziskfqaAPib6wTViY3G8E5wz9tLVPhHyiDNTZn/xjZ4khAw+09QkoOVpn7vF5nPSN6dtBexA==", + "dev": true, + "dependencies": { + "@types/node": "*", + "graceful-fs": "^4.2.4" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/babel-jest/node_modules/jest-util": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.0.6.tgz", + "integrity": "sha512-1JjlaIh+C65H/F7D11GNkGDDZtDfMEM8EBXsvd+l/cxtgQ6QhxuloOaiayt89DxUvDarbVhqI98HhgrM1yliFQ==", + "dev": true, + "dependencies": { + "@jest/types": "^27.0.6", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^3.0.0", + "picomatch": "^2.2.3" + }, + "engines": { + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" + } + }, + "node_modules/babel-jest/node_modules/jest-worker": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.0.6.tgz", + "integrity": "sha512-qupxcj/dRuA3xHPMUd40gr2EaAurFbkwzOh7wfPaeE9id7hyjURRQoqNfHifHK3XjJU6YJJUQKILGUnwGPEOCA==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/babel-jest/node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, "node_modules/babel-jest/node_modules/slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", @@ -10258,6 +8005,15 @@ "node": ">=8" } }, + "node_modules/babel-jest/node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/babel-jest/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -10342,12 +8098,6 @@ "semver": "bin/semver.js" } }, - "node_modules/babel-plugin-add-react-displayname": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/babel-plugin-add-react-displayname/-/babel-plugin-add-react-displayname-0.0.5.tgz", - "integrity": "sha1-M51M3be2X9YtHfnbn+BN4TQSK9U=", - "dev": true - }, "node_modules/babel-plugin-dynamic-import-node": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", @@ -10356,24 +8106,6 @@ "object.assign": "^4.1.0" } }, - "node_modules/babel-plugin-emotion": { - "version": "10.2.2", - "resolved": "https://registry.npmjs.org/babel-plugin-emotion/-/babel-plugin-emotion-10.2.2.tgz", - "integrity": "sha512-SMSkGoqTbTyUTDeuVuPIWifPdUGkTk1Kf9BWRiXIOIcuyMfsdp2EjeiiFvOzX8NOBvEh/ypKYvUh2rkgAJMCLA==", - "dev": true, - "dependencies": { - "@babel/helper-module-imports": "^7.0.0", - "@emotion/hash": "0.8.0", - "@emotion/memoize": "0.7.4", - "@emotion/serialize": "^0.11.16", - "babel-plugin-macros": "^2.0.0", - "babel-plugin-syntax-jsx": "^6.18.0", - "convert-source-map": "^1.5.0", - "escape-string-regexp": "^1.0.5", - "find-root": "^1.1.0", - "source-map": "^0.5.7" - } - }, "node_modules/babel-plugin-istanbul": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz", @@ -10391,9 +8123,9 @@ } }, "node_modules/babel-plugin-jest-hoist": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz", - "integrity": "sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw==", + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.0.6.tgz", + "integrity": "sha512-CewFeM9Vv2gM7Yr9n5eyyLVPRSiBnk6lKZRjgwYnGKSl9M14TMn2vkN02wTF04OGuSDLEzlWiMzvjXuW9mB6Gw==", "dev": true, "dependencies": { "@babel/template": "^7.3.3", @@ -10402,112 +8134,7 @@ "@types/babel__traverse": "^7.0.6" }, "engines": { - "node": ">= 10.14.2" - } - }, - "node_modules/babel-plugin-macros": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz", - "integrity": "sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.7.2", - "cosmiconfig": "^6.0.0", - "resolve": "^1.12.0" - } - }, - "node_modules/babel-plugin-minify-builtins": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-builtins/-/babel-plugin-minify-builtins-0.5.0.tgz", - "integrity": "sha512-wpqbN7Ov5hsNwGdzuzvFcjgRlzbIeVv1gMIlICbPj0xkexnfoIDe7q+AZHMkQmAE/F9R5jkrB6TLfTegImlXag==", - "dev": true - }, - "node_modules/babel-plugin-minify-constant-folding": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-constant-folding/-/babel-plugin-minify-constant-folding-0.5.0.tgz", - "integrity": "sha512-Vj97CTn/lE9hR1D+jKUeHfNy+m1baNiJ1wJvoGyOBUx7F7kJqDZxr9nCHjO/Ad+irbR3HzR6jABpSSA29QsrXQ==", - "dev": true, - "dependencies": { - "babel-helper-evaluate-path": "^0.5.0" - } - }, - "node_modules/babel-plugin-minify-dead-code-elimination": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-dead-code-elimination/-/babel-plugin-minify-dead-code-elimination-0.5.1.tgz", - "integrity": "sha512-x8OJOZIrRmQBcSqxBcLbMIK8uPmTvNWPXH2bh5MDCW1latEqYiRMuUkPImKcfpo59pTUB2FT7HfcgtG8ZlR5Qg==", - "dev": true, - "dependencies": { - "babel-helper-evaluate-path": "^0.5.0", - "babel-helper-mark-eval-scopes": "^0.4.3", - "babel-helper-remove-or-void": "^0.4.3", - "lodash": "^4.17.11" - } - }, - "node_modules/babel-plugin-minify-flip-comparisons": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-flip-comparisons/-/babel-plugin-minify-flip-comparisons-0.4.3.tgz", - "integrity": "sha1-AMqHDLjxO0XAOLPB68DyJyk8llo=", - "dev": true, - "dependencies": { - "babel-helper-is-void-0": "^0.4.3" - } - }, - "node_modules/babel-plugin-minify-guarded-expressions": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-guarded-expressions/-/babel-plugin-minify-guarded-expressions-0.4.4.tgz", - "integrity": "sha512-RMv0tM72YuPPfLT9QLr3ix9nwUIq+sHT6z8Iu3sLbqldzC1Dls8DPCywzUIzkTx9Zh1hWX4q/m9BPoPed9GOfA==", - "dev": true, - "dependencies": { - "babel-helper-evaluate-path": "^0.5.0", - "babel-helper-flip-expressions": "^0.4.3" - } - }, - "node_modules/babel-plugin-minify-infinity": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-infinity/-/babel-plugin-minify-infinity-0.4.3.tgz", - "integrity": "sha1-37h2obCKBldjhO8/kuZTumB7Oco=", - "dev": true - }, - "node_modules/babel-plugin-minify-mangle-names": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-mangle-names/-/babel-plugin-minify-mangle-names-0.5.0.tgz", - "integrity": "sha512-3jdNv6hCAw6fsX1p2wBGPfWuK69sfOjfd3zjUXkbq8McbohWy23tpXfy5RnToYWggvqzuMOwlId1PhyHOfgnGw==", - "dev": true, - "dependencies": { - "babel-helper-mark-eval-scopes": "^0.4.3" - } - }, - "node_modules/babel-plugin-minify-numeric-literals": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-numeric-literals/-/babel-plugin-minify-numeric-literals-0.4.3.tgz", - "integrity": "sha1-jk/VYcefeAEob/YOjF/Z3u6TwLw=", - "dev": true - }, - "node_modules/babel-plugin-minify-replace": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-replace/-/babel-plugin-minify-replace-0.5.0.tgz", - "integrity": "sha512-aXZiaqWDNUbyNNNpWs/8NyST+oU7QTpK7J9zFEFSA0eOmtUNMU3fczlTTTlnCxHmq/jYNFEmkkSG3DDBtW3Y4Q==", - "dev": true - }, - "node_modules/babel-plugin-minify-simplify": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-simplify/-/babel-plugin-minify-simplify-0.5.1.tgz", - "integrity": "sha512-OSYDSnoCxP2cYDMk9gxNAed6uJDiDz65zgL6h8d3tm8qXIagWGMLWhqysT6DY3Vs7Fgq7YUDcjOomhVUb+xX6A==", - "dev": true, - "dependencies": { - "babel-helper-evaluate-path": "^0.5.0", - "babel-helper-flip-expressions": "^0.4.3", - "babel-helper-is-nodes-equiv": "^0.0.1", - "babel-helper-to-multiple-sequence-expressions": "^0.5.0" - } - }, - "node_modules/babel-plugin-minify-type-constructors": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-type-constructors/-/babel-plugin-minify-type-constructors-0.4.3.tgz", - "integrity": "sha1-G8bxW4f3qxCF1CszC3F2V6IVZQA=", - "dev": true, - "dependencies": { - "babel-helper-is-void-0": "^0.4.3" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" } }, "node_modules/babel-plugin-module-resolver": { @@ -10570,89 +8197,17 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/babel-plugin-syntax-jsx": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", - "integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=", - "dev": true - }, "node_modules/babel-plugin-syntax-trailing-function-commas": { "version": "7.0.0-beta.0", "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz", "integrity": "sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ==" }, - "node_modules/babel-plugin-transform-inline-consecutive-adds": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-inline-consecutive-adds/-/babel-plugin-transform-inline-consecutive-adds-0.4.3.tgz", - "integrity": "sha1-Mj1Ho+pjqDp6w8gRro5pQfrysNE=", - "dev": true - }, - "node_modules/babel-plugin-transform-member-expression-literals": { - "version": "6.9.4", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-member-expression-literals/-/babel-plugin-transform-member-expression-literals-6.9.4.tgz", - "integrity": "sha1-NwOcmgwzE6OUlfqsL/OmtbnQOL8=", - "dev": true - }, - "node_modules/babel-plugin-transform-merge-sibling-variables": { - "version": "6.9.4", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-merge-sibling-variables/-/babel-plugin-transform-merge-sibling-variables-6.9.4.tgz", - "integrity": "sha1-hbQi/DN3tEnJ0c3kQIcgNTJAHa4=", - "dev": true - }, - "node_modules/babel-plugin-transform-minify-booleans": { - "version": "6.9.4", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-minify-booleans/-/babel-plugin-transform-minify-booleans-6.9.4.tgz", - "integrity": "sha1-rLs+VqNVXdI5KOS1gtKFFi3SsZg=", - "dev": true - }, - "node_modules/babel-plugin-transform-property-literals": { - "version": "6.9.4", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-property-literals/-/babel-plugin-transform-property-literals-6.9.4.tgz", - "integrity": "sha1-mMHSHiVXNlc/k+zlRFn2ziSYXTk=", - "dev": true, - "dependencies": { - "esutils": "^2.0.2" - } - }, - "node_modules/babel-plugin-transform-regexp-constructors": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-regexp-constructors/-/babel-plugin-transform-regexp-constructors-0.4.3.tgz", - "integrity": "sha1-WLd3W2OvzzMyj66aX4j71PsLSWU=", - "dev": true - }, "node_modules/babel-plugin-transform-remove-console": { "version": "6.9.4", "resolved": "https://registry.npmjs.org/babel-plugin-transform-remove-console/-/babel-plugin-transform-remove-console-6.9.4.tgz", "integrity": "sha1-uYA2DAZzhOJLNXpYjYB9PINSd4A=", "dev": true }, - "node_modules/babel-plugin-transform-remove-debugger": { - "version": "6.9.4", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-remove-debugger/-/babel-plugin-transform-remove-debugger-6.9.4.tgz", - "integrity": "sha1-QrcnYxyXl44estGZp67IShgznvI=", - "dev": true - }, - "node_modules/babel-plugin-transform-remove-undefined": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-remove-undefined/-/babel-plugin-transform-remove-undefined-0.5.0.tgz", - "integrity": "sha512-+M7fJYFaEE/M9CXa0/IRkDbiV3wRELzA1kKQFCJ4ifhrzLKn/9VCCgj9OFmYWwBd8IB48YdgPkHYtbYq+4vtHQ==", - "dev": true, - "dependencies": { - "babel-helper-evaluate-path": "^0.5.0" - } - }, - "node_modules/babel-plugin-transform-simplify-comparison-operators": { - "version": "6.9.4", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-simplify-comparison-operators/-/babel-plugin-transform-simplify-comparison-operators-6.9.4.tgz", - "integrity": "sha1-9ir+CWyrDh9ootdT/fKDiIRxzrk=", - "dev": true - }, - "node_modules/babel-plugin-transform-undefined-to-void": { - "version": "6.9.4", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-undefined-to-void/-/babel-plugin-transform-undefined-to-void-6.9.4.tgz", - "integrity": "sha1-viQcqBQEAwZ4t0hxcyK4nQyP4oA=", - "dev": true - }, "node_modules/babel-preset-current-node-syntax": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", @@ -10714,52 +8269,21 @@ } }, "node_modules/babel-preset-jest": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz", - "integrity": "sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ==", + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.0.6.tgz", + "integrity": "sha512-WObA0/Biw2LrVVwZkF/2GqbOdzhKD6Fkdwhoy9ASIrOWr/zodcSpQh72JOkEn6NWyjmnPDjNSqaGN4KnpKzhXw==", "dev": true, "dependencies": { - "babel-plugin-jest-hoist": "^26.6.2", + "babel-plugin-jest-hoist": "^27.0.6", "babel-preset-current-node-syntax": "^1.0.0" }, "engines": { - "node": ">= 10.14.2" + "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0" }, "peerDependencies": { "@babel/core": "^7.0.0" } }, - "node_modules/babel-preset-minify": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/babel-preset-minify/-/babel-preset-minify-0.5.1.tgz", - "integrity": "sha512-1IajDumYOAPYImkHbrKeiN5AKKP9iOmRoO2IPbIuVp0j2iuCcj0n7P260z38siKMZZ+85d3mJZdtW8IgOv+Tzg==", - "dev": true, - "dependencies": { - "babel-plugin-minify-builtins": "^0.5.0", - "babel-plugin-minify-constant-folding": "^0.5.0", - "babel-plugin-minify-dead-code-elimination": "^0.5.1", - "babel-plugin-minify-flip-comparisons": "^0.4.3", - "babel-plugin-minify-guarded-expressions": "^0.4.4", - "babel-plugin-minify-infinity": "^0.4.3", - "babel-plugin-minify-mangle-names": "^0.5.0", - "babel-plugin-minify-numeric-literals": "^0.4.3", - "babel-plugin-minify-replace": "^0.5.0", - "babel-plugin-minify-simplify": "^0.5.1", - "babel-plugin-minify-type-constructors": "^0.4.3", - "babel-plugin-transform-inline-consecutive-adds": "^0.4.3", - "babel-plugin-transform-member-expression-literals": "^6.9.4", - "babel-plugin-transform-merge-sibling-variables": "^6.9.4", - "babel-plugin-transform-minify-booleans": "^6.9.4", - "babel-plugin-transform-property-literals": "^6.9.4", - "babel-plugin-transform-regexp-constructors": "^0.4.3", - "babel-plugin-transform-remove-console": "^6.9.4", - "babel-plugin-transform-remove-debugger": "^6.9.4", - "babel-plugin-transform-remove-undefined": "^0.5.0", - "babel-plugin-transform-simplify-comparison-operators": "^6.9.4", - "babel-plugin-transform-undefined-to-void": "^6.9.4", - "lodash": "^4.17.11" - } - }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -10782,11 +8306,6 @@ "node": ">=0.10.0" } }, - "node_modules/base-64": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/base-64/-/base-64-0.1.0.tgz", - "integrity": "sha1-eAqZyE59YAJgNhURxId2E78k9rs=" - }, "node_modules/base/node_modules/define-property": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", @@ -10852,11 +8371,13 @@ } ] }, - "node_modules/batch-processor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/batch-processor/-/batch-processor-1.0.0.tgz", - "integrity": "sha1-dclcMrdI4IUNEMKxaPa9vpiRrOg=", - "dev": true + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dependencies": { + "tweetnacl": "^0.14.3" + } }, "node_modules/big-integer": { "version": "1.6.48", @@ -10880,6 +8401,7 @@ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", "dev": true, + "optional": true, "engines": { "node": ">=0.10.0" } @@ -10890,10 +8412,42 @@ "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", "dev": true, "optional": true, + "peer": true, "dependencies": { "file-uri-to-path": "1.0.0" } }, + "node_modules/binjumper": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/binjumper/-/binjumper-0.1.4.tgz", + "integrity": "sha512-Gdxhj+U295tIM6cO4bJO1jsvSjBVHNpj2o/OwW7pqDEtaqF6KdOxjtbo93jMMKAkP7+u09+bV8DhSqjIv4qR3w==", + "engines": { + "node": ">=10.12.0" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/bl/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, "node_modules/bluebird": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", @@ -10905,137 +8459,27 @@ "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.18.0.tgz", "integrity": "sha512-vE52okJvzsVWhcgUHOv+69OG3Mdg151xyn41aVQN/5W5S+S43qZhxECtYLAEHMSFWX6Mv5IZrzj3T5+JqXfj5Q==" }, - "node_modules/bmp-js": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/bmp-js/-/bmp-js-0.1.0.tgz", - "integrity": "sha1-4Fpj95amwf8l9Hcex62twUjAcjM=" - }, "node_modules/bn.js": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==", - "dev": true - }, - "node_modules/body-parser": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", - "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", "dev": true, - "dependencies": { - "bytes": "3.1.0", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.7.0", - "raw-body": "2.4.0", - "type-is": "~1.6.17" - }, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/body-parser/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/body-parser/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "node_modules/body-parser/node_modules/qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", - "dev": true, - "engines": { - "node": ">=0.6" - } + "peer": true }, "node_modules/boolbase": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" }, - "node_modules/boxen": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-4.2.0.tgz", - "integrity": "sha512-eB4uT9RGzg2odpER62bBwSLvUeGC+WbRjjyyFhGsKnc8wp/m0+hQsMUvUe3H2V0D5vw0nBdO1hCJoZo5mKeuIQ==", - "dev": true, - "dependencies": { - "ansi-align": "^3.0.0", - "camelcase": "^5.3.1", - "chalk": "^3.0.0", - "cli-boxes": "^2.2.0", - "string-width": "^4.1.0", - "term-size": "^2.1.0", - "type-fest": "^0.8.1", - "widest-line": "^3.1.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "node_modules/boolean": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/boolean/-/boolean-3.1.2.tgz", + "integrity": "sha512-YN6UmV0FfLlBVvRvNPx3pz5W/mUoYB24J4WSXOKP/OOJpi+Oq6WYqPaNTHzjI0QzwWtnvEd5CGYyQPgp1jFxnw==" }, - "node_modules/boxen/node_modules/ansi-styles": { - "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" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/boxen/node_modules/chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/boxen/node_modules/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, - "engines": { - "node": ">=8" - } - }, - "node_modules/boxen/node_modules/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, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } + "node_modules/bottleneck": { + "version": "2.19.5", + "resolved": "https://registry.npmjs.org/bottleneck/-/bottleneck-2.19.5.tgz", + "integrity": "sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==" }, "node_modules/bplist-creator": { "version": "0.0.8", @@ -11089,7 +8533,8 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "dev": true + "dev": true, + "peer": true }, "node_modules/browser-process-hrtime": { "version": "1.0.0", @@ -11109,6 +8554,7 @@ "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", "dev": true, + "peer": true, "dependencies": { "buffer-xor": "^1.0.3", "cipher-base": "^1.0.0", @@ -11123,6 +8569,7 @@ "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", "dev": true, + "peer": true, "dependencies": { "browserify-aes": "^1.0.4", "browserify-des": "^1.0.0", @@ -11134,6 +8581,7 @@ "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", "dev": true, + "peer": true, "dependencies": { "cipher-base": "^1.0.1", "des.js": "^1.0.0", @@ -11146,6 +8594,7 @@ "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", "dev": true, + "peer": true, "dependencies": { "bn.js": "^5.0.0", "randombytes": "^2.0.1" @@ -11156,6 +8605,7 @@ "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", "dev": true, + "peer": true, "dependencies": { "bn.js": "^5.1.1", "browserify-rsa": "^4.0.1", @@ -11173,6 +8623,7 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "dev": true, + "peer": true, "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -11200,13 +8651,15 @@ "type": "consulting", "url": "https://feross.org/support" } - ] + ], + "peer": true }, "node_modules/browserify-zlib": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", "dev": true, + "peer": true, "dependencies": { "pako": "~1.0.5" } @@ -11290,14 +8743,6 @@ "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" }, - "node_modules/buffer-equal": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-0.0.1.tgz", - "integrity": "sha1-kbx0sR6kBbyRa8aqkI+q+ltKrEs=", - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/buffer-fill": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", @@ -11312,13 +8757,15 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", - "dev": true + "dev": true, + "peer": true }, "node_modules/builtin-status-codes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", - "dev": true + "dev": true, + "peer": true }, "node_modules/bunyan": { "version": "1.8.15", @@ -11354,71 +8801,6 @@ "bunyan": "*" } }, - "node_modules/bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/cacache": { - "version": "13.0.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-13.0.1.tgz", - "integrity": "sha512-5ZvAxd05HDDU+y9BVvcqYu2LLXmPnQ0hW62h32g4xBTgL/MppR4/04NHfj/ycM2y6lmTnbw6HVi+1eN0Psba6w==", - "dev": true, - "dependencies": { - "chownr": "^1.1.2", - "figgy-pudding": "^3.5.1", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.2", - "infer-owner": "^1.0.4", - "lru-cache": "^5.1.1", - "minipass": "^3.0.0", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "p-map": "^3.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^2.7.1", - "ssri": "^7.0.0", - "unique-filename": "^1.1.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/cacache/node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "dependencies": { - "yallist": "^3.0.2" - } - }, - "node_modules/cacache/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/cacache/node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - }, "node_modules/cache-base": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", @@ -11438,6 +8820,31 @@ "node": ">=0.10.0" } }, + "node_modules/cacheable-lookup": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", + "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==", + "engines": { + "node": ">=10.6.0" + } + }, + "node_modules/cacheable-request": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.2.tgz", + "integrity": "sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==", + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^4.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^6.0.1", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/call-bind": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", @@ -11450,12 +8857,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/call-me-maybe": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", - "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=", - "dev": true - }, "node_modules/caller-callsite": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", @@ -11495,16 +8896,6 @@ "node": ">=6" } }, - "node_modules/camel-case": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", - "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", - "dev": true, - "dependencies": { - "pascal-case": "^3.1.2", - "tslib": "^2.0.3" - } - }, "node_modules/camelcase": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", @@ -11513,18 +8904,6 @@ "node": ">=6" } }, - "node_modules/camelize": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.0.tgz", - "integrity": "sha1-FkpUg+Yw+kMh5a8HAg5TGDGyYJs=", - "dev": true - }, - "node_modules/can-use-dom": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/can-use-dom/-/can-use-dom-0.1.0.tgz", - "integrity": "sha1-IsxKNKCrxDlQ9CxkEQJKP2NmtFo=", - "dev": true - }, "node_modules/caniuse-lite": { "version": "1.0.30001241", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001241.tgz", @@ -11545,15 +8924,6 @@ "node": "6.* || 8.* || >= 10.*" } }, - "node_modules/case-sensitive-paths-webpack-plugin": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz", - "integrity": "sha512-roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", @@ -11581,41 +8951,16 @@ "node": ">=10" } }, - "node_modules/character-entities": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", - "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-entities-legacy": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", - "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/character-reference-invalid": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", - "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/chardet": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" }, + "node_modules/child-process": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/child-process/-/child-process-1.0.2.tgz", + "integrity": "sha1-mJdNx+0e5MYin44wX6cxOmiFp/I=" + }, "node_modules/child-process-promise": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/child-process-promise/-/child-process-promise-2.2.1.tgz", @@ -11743,13 +9088,15 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true + "dev": true, + "peer": true }, "node_modules/chrome-trace-event": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", "dev": true, + "peer": true, "engines": { "node": ">=6.0" } @@ -11764,6 +9111,7 @@ "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", "dev": true, + "peer": true, "dependencies": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" @@ -11789,43 +9137,10 @@ "node": ">=0.10.0" } }, - "node_modules/classnames": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.1.tgz", - "integrity": "sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA==", - "dev": true - }, - "node_modules/cldr-core": { - "version": "38.1.0", - "resolved": "https://registry.npmjs.org/cldr-core/-/cldr-core-38.1.0.tgz", - "integrity": "sha512-Da9xKjDp4qGGIX0VDsBqTan09iR5nuYD2a/KkfEaUyqKhu6wFVNRiCpPDXeRbpVwPBY6PgemV8WiHatMhcpy4A==" - }, - "node_modules/clean-css": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz", - "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==", - "dev": true, - "dependencies": { - "source-map": "~0.6.0" - }, - "engines": { - "node": ">= 4.0" - } - }, - "node_modules/clean-css/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/clean-stack": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true, "engines": { "node": ">=6" } @@ -11834,7 +9149,6 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", - "dev": true, "engines": { "node": ">=6" }, @@ -11853,6 +9167,14 @@ "node": ">=4" } }, + "node_modules/cli-spinner": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/cli-spinner/-/cli-spinner-0.2.10.tgz", + "integrity": "sha512-U0sSQ+JJvSLi1pAYuJykwiA8Dsr15uHEy85iCJ6A+0DjVxivr3d+N2Wjvodeg89uP5K6TswFkKBfAD7B3YSn/Q==", + "engines": { + "node": ">=0.10" + } + }, "node_modules/cli-spinners": { "version": "2.6.0", "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.0.tgz", @@ -11864,72 +9186,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/cli-table3": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.5.1.tgz", - "integrity": "sha512-7Qg2Jrep1S/+Q3EceiZtQcDPWxhAvBw+ERf1162v4sikJrvojMHFqXt8QIVha8UlH9rgU0BeWPytZ9/TzYqlUw==", - "dev": true, - "dependencies": { - "object-assign": "^4.1.0", - "string-width": "^2.1.1" - }, - "engines": { - "node": ">=6" - }, - "optionalDependencies": { - "colors": "^1.1.2" - } - }, - "node_modules/cli-table3/node_modules/ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/cli-table3/node_modules/string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "dependencies": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/cli-table3/node_modules/strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "dependencies": { - "ansi-regex": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/cli-width": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==" }, - "node_modules/clipboard": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.8.tgz", - "integrity": "sha512-Y6WO0unAIQp5bLmk1zdThRhgJt/x3ks6f30s3oE3H1mgIEU33XyQjEf8gsf6DxC7NPX8Y1SsNWjUjL/ywLnnbQ==", - "dev": true, - "optional": true, - "dependencies": { - "good-listener": "^1.2.2", - "select": "^1.1.2", - "tiny-emitter": "^2.0.0" - } + "node_modules/clipanion": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/clipanion/-/clipanion-2.6.2.tgz", + "integrity": "sha512-0tOHJNMF9+4R3qcbBL+4IxLErpaYSYvzs10aXuECDbZdJOuJHdagJMAqvLdeaUQTI/o2uSCDRpet6ywDiKOAYw==" }, "node_modules/cliui": { "version": "7.0.4", @@ -11962,6 +9227,14 @@ "node": ">=6" } }, + "node_modules/clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "dependencies": { + "mimic-response": "^1.0.0" + } + }, "node_modules/cls-hooked": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/cls-hooked/-/cls-hooked-4.2.2.tgz", @@ -12093,16 +9366,6 @@ "node": ">= 0.8" } }, - "node_modules/comma-separated-tokens": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz", - "integrity": "sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/command-exists": { "version": "1.2.9", "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", @@ -12123,16 +9386,14 @@ "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=" }, "node_modules/commonmark": { - "version": "0.28.1", - "resolved": "git+ssh://git@github.com/mattermost/commonmark.js.git#f6ab98dede6ce4b4e7adea140ac77249bfb2d6ce", - "integrity": "sha512-hxZzvq91H9iLOxQ87EP6Xxqe7IjBEPRwZL3gOAlFHtnj+Xvju/AGMLuzXEWVLp01cNwvXZsSj9etT4DWl6sxyQ==", - "license": "BSD-2-Clause", + "version": "0.30.0", + "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.30.0.tgz", + "integrity": "sha512-j1yoUo4gxPND1JWV9xj5ELih0yMv1iCWDG6eEQIPLSWLxzCXiFoyS7kvB+WwU+tZMf4snwJMMtaubV0laFpiBA==", "dependencies": { - "entities": "~ 1.1.1", - "mdurl": "~ 1.0.1", - "minimist": "~ 1.2.0", - "string.prototype.repeat": "^0.2.0", - "xregexp": "4.1.1" + "entities": "~2.0", + "mdurl": "~1.0.1", + "minimist": ">=1.2.2", + "string.prototype.repeat": "^0.2.0" }, "bin": { "commonmark": "bin/commonmark" @@ -12142,12 +9403,10 @@ } }, "node_modules/commonmark-react-renderer": { - "version": "4.3.3", - "resolved": "git+ssh://git@github.com/mattermost/commonmark-react-renderer.git#3a2ac19cab725ad28b170fdc1d397dddedcf87eb", - "integrity": "sha512-YmkUcCDg6A24HaN9AqT2FlSZbnhn8BmIwYkuIBj/OPnyQKZN7vbIf/I9jkiZeXnwuogpewPWpi8aW3PrEkSM1w==", - "license": "MIT", + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/commonmark-react-renderer/-/commonmark-react-renderer-4.3.5.tgz", + "integrity": "sha512-UwUgplz8kFSMCe9+Dg/BcV75lc7R/V6mvMYJq2p29i5aaIBd0252k9HeSGa2VtEPHfg2/trS9qC7iAxnO7r6ng==", "dependencies": { - "in-publish": "^2.0.0", "lodash.assign": "^4.2.0", "lodash.isplainobject": "^4.0.6", "pascalcase": "^0.1.1", @@ -12159,9 +9418,9 @@ } }, "node_modules/commonmark/node_modules/entities": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", - "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz", + "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==" }, "node_modules/compare-versions": { "version": "3.6.0", @@ -12235,6 +9494,7 @@ "engines": [ "node >= 0.8" ], + "peer": true, "dependencies": { "buffer-from": "^1.0.0", "inherits": "^2.0.3", @@ -12242,6 +9502,44 @@ "typedarray": "^0.0.6" } }, + "node_modules/configstore": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "dependencies": { + "dot-prop": "^5.2.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/configstore/node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/configstore/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/connect": { "version": "3.7.0", "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", @@ -12273,7 +9571,8 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", - "dev": true + "dev": true, + "peer": true }, "node_modules/console-control-strings": { "version": "1.1.0", @@ -12284,28 +9583,8 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", - "dev": true - }, - "node_modules/content-disposition": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", - "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", "dev": true, - "dependencies": { - "safe-buffer": "5.1.2" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "dev": true, - "engines": { - "node": ">= 0.6" - } + "peer": true }, "node_modules/continuation-local-storage": { "version": "3.2.1", @@ -12325,26 +9604,12 @@ "safe-buffer": "~5.1.1" } }, - "node_modules/cookie": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", - "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", - "dev": true - }, "node_modules/copy-concurrently": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", "dev": true, + "peer": true, "dependencies": { "aproba": "^1.1.1", "fs-write-stream-atomic": "^1.0.8", @@ -12359,6 +9624,7 @@ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", "dev": true, + "peer": true, "dependencies": { "glob": "^7.1.3" }, @@ -12374,20 +9640,10 @@ "node": ">=0.10.0" } }, - "node_modules/copy-to-clipboard": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.1.tgz", - "integrity": "sha512-i13qo6kIHTTpCm8/Wup+0b1mVWETvu2kIMzKoK8FpkLkFxlt0znUAHcMzox+T8sPlqtZXq3CulEjQHsYiGFJUw==", - "dev": true, - "dependencies": { - "toggle-selection": "^1.0.6" - } - }, "node_modules/core-js": { "version": "3.15.2", "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.15.2.tgz", "integrity": "sha512-tKs41J7NJVuaya8DxIOCnl8QuPHx5/ZVbFo1oKgVl1qHFBBrDctzQGtuLjPpRdNTWmKPH6oEvgN/MUID+l485Q==", - "dev": true, "hasInstallScript": true, "funding": { "type": "opencollective", @@ -12415,53 +9671,17 @@ "semver": "bin/semver.js" } }, - "node_modules/core-js-pure": { - "version": "3.15.2", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.15.2.tgz", - "integrity": "sha512-D42L7RYh1J2grW8ttxoY1+17Y4wXZeKe7uyplAI3FkNQyI5OgBIAjUfFiTPfL1rs0qLpxaabITNbjKl1Sp82tA==", - "dev": true, - "hasInstallScript": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/core-js" - } - }, "node_modules/core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, - "node_modules/corejs-upgrade-webpack-plugin": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/corejs-upgrade-webpack-plugin/-/corejs-upgrade-webpack-plugin-2.2.0.tgz", - "integrity": "sha512-J0QMp9GNoiw91Kj/dkIQFZeiCXgXoja/Wlht1SPybxerBWh4NCmb0pOgCv61lrlQZETwvVVfAFAA3IqoEO9aqQ==", - "dev": true, - "dependencies": { - "resolve-from": "^5.0.0", - "webpack": "^4.38.0" - } - }, - "node_modules/cosmiconfig": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", - "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", - "dev": true, - "dependencies": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.1.0", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.7.2" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/create-ecdh": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", "dev": true, + "peer": true, "dependencies": { "bn.js": "^4.1.0", "elliptic": "^6.5.3" @@ -12471,13 +9691,15 @@ "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true + "dev": true, + "peer": true }, "node_modules/create-hash": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", "dev": true, + "peer": true, "dependencies": { "cipher-base": "^1.0.1", "inherits": "^2.0.1", @@ -12491,6 +9713,7 @@ "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", "dev": true, + "peer": true, "dependencies": { "cipher-base": "^1.0.3", "create-hash": "^1.1.0", @@ -12523,6 +9746,7 @@ "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", "dev": true, + "peer": true, "dependencies": { "browserify-cipher": "^1.0.0", "browserify-sign": "^4.0.0", @@ -12541,60 +9765,11 @@ } }, "node_modules/crypto-random-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", - "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", "engines": { - "node": ">=4" - } - }, - "node_modules/css-color-keywords": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", - "integrity": "sha1-/qJhbcZ2spYmhrOvjb2+GAskTgU=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/css-loader": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-3.6.0.tgz", - "integrity": "sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ==", - "dev": true, - "dependencies": { - "camelcase": "^5.3.1", - "cssesc": "^3.0.0", - "icss-utils": "^4.1.1", - "loader-utils": "^1.2.3", - "normalize-path": "^3.0.0", - "postcss": "^7.0.32", - "postcss-modules-extract-imports": "^2.0.0", - "postcss-modules-local-by-default": "^3.0.2", - "postcss-modules-scope": "^2.2.0", - "postcss-modules-values": "^3.0.0", - "postcss-value-parser": "^4.1.0", - "schema-utils": "^2.7.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">= 8.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/css-loader/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" + "node": ">=8" } }, "node_modules/css-select": { @@ -12608,23 +9783,6 @@ "nth-check": "^1.0.2" } }, - "node_modules/css-to-react-native": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-2.3.2.tgz", - "integrity": "sha512-VOFaeZA053BqvvvqIA8c9n0+9vFppVBAHCp6JgFTtTMU3Mzi+XnelJ9XC9ul3BqFzZyQ5N+H0SnwsWT2Ebchxw==", - "dev": true, - "dependencies": { - "camelize": "^1.0.0", - "css-color-keywords": "^1.0.0", - "postcss-value-parser": "^3.3.0" - } - }, - "node_modules/css-to-react-native/node_modules/postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - }, "node_modules/css-tree": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", @@ -12656,18 +9814,6 @@ "url": "https://github.com/sponsors/fb55" } }, - "node_modules/cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true, - "bin": { - "cssesc": "bin/cssesc" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/cssom": { "version": "0.4.4", "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", @@ -12692,17 +9838,12 @@ "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", "dev": true }, - "node_modules/csstype": { - "version": "2.6.17", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.17.tgz", - "integrity": "sha512-u1wmTI1jJGzCJzWndZo8mk4wnPTZd1eOIYTYvuEyOQGfmDl3TrabCCfKnOC86FZwW/9djqTl933UF/cS425i9A==", - "dev": true - }, "node_modules/cyclist": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", - "dev": true + "dev": true, + "peer": true }, "node_modules/data-urls": { "version": "2.0.0", @@ -12765,6 +9906,31 @@ "node": ">=0.10" } }, + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/decompress-response/node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/dedent": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", @@ -12809,6 +9975,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "engines": { + "node": ">=4.0.0" + } + }, "node_modules/deep-freeze": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/deep-freeze/-/deep-freeze-0.0.1.tgz", @@ -12821,12 +9995,6 @@ "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", "dev": true }, - "node_modules/deep-object-diff": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/deep-object-diff/-/deep-object-diff-1.1.0.tgz", - "integrity": "sha512-b+QLs5vHgS+IoSNcUE4n9HP2NwcHj7aqnJWsjPtuG75Rh5TOaGt0OjAYInh77d5T16V5cRDC+Pw/6ZZZiETBGw==", - "dev": true - }, "node_modules/deepmerge": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", @@ -12843,6 +10011,14 @@ "clone": "^1.0.2" } }, + "node_modules/defer-to-connect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", + "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==", + "engines": { + "node": ">=10" + } + }, "node_modules/define-properties": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", @@ -12865,6 +10041,49 @@ "node": ">=0.10.0" } }, + "node_modules/del": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-6.0.0.tgz", + "integrity": "sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ==", + "dependencies": { + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del/node_modules/p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/del/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, "node_modules/delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -12874,13 +10093,6 @@ "node": ">=0.4.0" } }, - "node_modules/delegate": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz", - "integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==", - "dev": true, - "optional": true - }, "node_modules/delegates": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", @@ -12904,6 +10116,7 @@ "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", "dev": true, + "peer": true, "dependencies": { "inherits": "^2.0.1", "minimalistic-assert": "^1.0.0" @@ -12941,75 +10154,10 @@ "node": ">=8" } }, - "node_modules/detect-node-es": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", - "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==", - "dev": true - }, - "node_modules/detect-port": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/detect-port/-/detect-port-1.3.0.tgz", - "integrity": "sha512-E+B1gzkl2gqxt1IhUzwjrxBKRqx1UzC3WLONHinn8S3T6lwV/agVCyitiFOsGJ/eYuEUBvD71MZHy3Pv1G9doQ==", - "dev": true, - "dependencies": { - "address": "^1.0.1", - "debug": "^2.6.0" - }, - "bin": { - "detect": "bin/detect-port", - "detect-port": "bin/detect-port" - }, - "engines": { - "node": ">= 4.2.1" - } - }, - "node_modules/detect-port-alt": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz", - "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==", - "dev": true, - "dependencies": { - "address": "^1.0.1", - "debug": "^2.6.0" - }, - "bin": { - "detect": "bin/detect-port", - "detect-port": "bin/detect-port" - }, - "engines": { - "node": ">= 4.2.1" - } - }, - "node_modules/detect-port-alt/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/detect-port-alt/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "node_modules/detect-port/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/detect-port/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true + "node_modules/detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" }, "node_modules/detox": { "version": "18.18.1", @@ -13118,6 +10266,7 @@ "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", "dev": true, + "peer": true, "dependencies": { "bn.js": "^4.1.0", "miller-rabin": "^4.0.0", @@ -13128,13 +10277,13 @@ "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true + "dev": true, + "peer": true }, "node_modules/dir-glob": { "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" }, @@ -13142,6 +10291,44 @@ "node": ">=8" } }, + "node_modules/docker-modem": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/docker-modem/-/docker-modem-2.1.3.tgz", + "integrity": "sha512-cwaRptBmYZwu/FyhGcqBm2MzXA77W2/E6eVkpOZVDk6PkI9Bjj84xPrXiHMA+OWjzNy+DFjgKh8Q+1hMR7/OHg==", + "dependencies": { + "debug": "^4.1.1", + "readable-stream": "^3.5.0", + "split-ca": "^1.0.1", + "ssh2": "^0.8.7" + }, + "engines": { + "node": ">= 8.0" + } + }, + "node_modules/docker-modem/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/dockerfile-ast": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/dockerfile-ast/-/dockerfile-ast-0.2.1.tgz", + "integrity": "sha512-ut04CVM1G6zIITTcYPDIXhPZk9mCa21m4dfW8FcDDGxwgTQhYyHDu6U7M8klZ7QsjqVcJhryKi+TGOX6bjgKdQ==", + "dependencies": { + "vscode-languageserver-types": "^3.16.0" + }, + "engines": { + "node": "*" + } + }, "node_modules/doctrine": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", @@ -13154,31 +10341,6 @@ "node": ">=6.0.0" } }, - "node_modules/dom-converter": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", - "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", - "dev": true, - "dependencies": { - "utila": "~0.4" - } - }, - "node_modules/dom-helpers": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", - "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.8.7", - "csstype": "^3.0.2" - } - }, - "node_modules/dom-helpers/node_modules/csstype": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.8.tgz", - "integrity": "sha512-jXKhWqXPmlUeoQnF/EhTtTl4C9SnrxSH/jZUih3jmO6lBKr99rP3/+FmrMj4EFpOXzMtXHAZkd3x0E6h6Fgflw==", - "dev": true - }, "node_modules/dom-serializer": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", @@ -13199,16 +10361,12 @@ } ] }, - "node_modules/dom-walk": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", - "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==" - }, "node_modules/domain-browser": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", "dev": true, + "peer": true, "engines": { "node": ">=0.4", "npm": ">=1.2" @@ -13240,33 +10398,6 @@ "node": ">=8" } }, - "node_modules/domhandler": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.2.0.tgz", - "integrity": "sha512-zk7sgt970kzPks2Bf+dwT/PLzghLnsivb9CcxkvR8Mzr66Olr0Ofd8neSbglHJHaHa2MadfoSdNlKYAaafmWfA==", - "dev": true, - "dependencies": { - "domelementtype": "^2.2.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/domhandler/node_modules/domelementtype": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", - "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ] - }, "node_modules/domutils": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", @@ -13276,52 +10407,46 @@ "domelementtype": "1" } }, - "node_modules/dot-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", - "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", - "dev": true, + "node_modules/dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, - "node_modules/dotenv": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-6.2.0.tgz", - "integrity": "sha512-HygQCKUBSFl8wKQZBSemMywRWcEDNidvNbjGVyZu3nbZ8qq9ubiPoGLMdRDpfSrpkkm9BXYFkpKxxFX38o/76w==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/dotenv-defaults": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/dotenv-defaults/-/dotenv-defaults-1.1.1.tgz", - "integrity": "sha512-6fPRo9o/3MxKvmRZBD3oNFdxODdhJtIy1zcJeUSCs6HCy4tarUpd+G67UTU9tF6OWXeSPqsm4fPAB+2eY9Rt9Q==", - "dev": true, - "dependencies": { - "dotenv": "^6.2.0" - } - }, - "node_modules/dotenv-expand": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-5.1.0.tgz", - "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==", - "dev": true - }, - "node_modules/dotenv-webpack": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/dotenv-webpack/-/dotenv-webpack-1.8.0.tgz", - "integrity": "sha512-o8pq6NLBehtrqA8Jv8jFQNtG9nhRtVqmoD4yWbgUyoU3+9WBlPe+c2EAiaJok9RB28QvrWvdWLZGeTT5aATDMg==", - "dev": true, - "dependencies": { - "dotenv-defaults": "^1.0.2" + "is-obj": "^2.0.0" }, - "peerDependencies": { - "webpack": "^1 || ^2 || ^3 || ^4" + "engines": { + "node": ">=8" } }, + "node_modules/dot-prop/node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/dotnet-deps-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/dotnet-deps-parser/-/dotnet-deps-parser-5.0.0.tgz", + "integrity": "sha512-1l9K4UnQQHSfKgeHeLrxnB53AidCZqPyf9dkRL4/fZl8//NPiiDD43zHtgylw8DHlO7gvM8+O5a0UPHesNYZKw==", + "dependencies": { + "lodash.isempty": "^4.4.0", + "lodash.set": "^4.3.2", + "lodash.uniq": "^4.5.0", + "source-map-support": "^0.5.7", + "tslib": "^1.10.0", + "xml2js": "0.4.23" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dotnet-deps-parser/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/dtrace-provider": { "version": "0.8.8", "resolved": "https://registry.npmjs.org/dtrace-provider/-/dtrace-provider-0.8.8.tgz", @@ -13336,17 +10461,15 @@ "node": ">=0.10" } }, - "node_modules/duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", - "dev": true + "node_modules/duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" }, "node_modules/duplexify": { "version": "3.7.1", "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", - "dev": true, "dependencies": { "end-of-stream": "^1.0.0", "inherits": "^2.0.1", @@ -13359,28 +10482,17 @@ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, - "node_modules/ejs": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.7.4.tgz", - "integrity": "sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==", - "dev": true, - "hasInstallScript": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/electron-to-chromium": { "version": "1.3.766", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.766.tgz", "integrity": "sha512-u2quJ862q9reRKh/je3GXis3w38+RoXH1J9N3XjtsS6NzmUAosNsyZgUVFZPN/ZlJ3v6T0rTyZR3q/J5c6Sy5w==" }, - "node_modules/element-resize-detector": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/element-resize-detector/-/element-resize-detector-1.2.3.tgz", - "integrity": "sha512-+dhNzUgLpq9ol5tyhoG7YLoXL3ssjfFW+0gpszXPwRU6NjGr1fVHMEAF8fVzIiRJq57Nre0RFeIjJwI8Nh2NmQ==", - "dev": true, + "node_modules/elfy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/elfy/-/elfy-1.0.0.tgz", + "integrity": "sha512-4Kp3AA94jC085IJox+qnvrZ3PudqTi4gQNvIoTZfJJ9IqkRuCoqP60vCVYlIg00c5aYusi5Wjh2bf0cHYt+6gQ==", "dependencies": { - "batch-processor": "1.0.0" + "endian-reader": "^0.3.0" } }, "node_modules/elliptic": { @@ -13388,6 +10500,7 @@ "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", "dev": true, + "peer": true, "dependencies": { "bn.js": "^4.11.9", "brorand": "^1.1.0", @@ -13402,7 +10515,16 @@ "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true + "dev": true, + "peer": true + }, + "node_modules/email-validator": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/email-validator/-/email-validator-2.0.4.tgz", + "integrity": "sha512-gYCwo7kh5S3IDyZPLZf6hSS0MnZT8QmJFqYvbqlDZSbwdZlY6QZWxJ4i/6UhITOJ4XzyI647Bm2MXKCLqnJ4nQ==", + "engines": { + "node": ">4.0" + } }, "node_modules/eme-encryption-scheme-polyfill": { "version": "2.0.3", @@ -13444,21 +10566,6 @@ "node": ">= 4" } }, - "node_modules/emotion-theming": { - "version": "10.0.27", - "resolved": "https://registry.npmjs.org/emotion-theming/-/emotion-theming-10.0.27.tgz", - "integrity": "sha512-MlF1yu/gYh8u+sLUqA0YuA9JX0P4Hb69WlKc/9OLo+WCXuX6sy/KoIa+qJimgmr2dWqnypYKYPX37esjDBbhdw==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.5.5", - "@emotion/weak-memoize": "0.2.5", - "hoist-non-react-statics": "^3.3.0" - }, - "peerDependencies": { - "@emotion/core": "^10.0.27", - "react": ">=16.3.0" - } - }, "node_modules/encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", @@ -13475,6 +10582,11 @@ "once": "^1.4.0" } }, + "node_modules/endian-reader": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/endian-reader/-/endian-reader-0.3.0.tgz", + "integrity": "sha1-hOykNrgK7Q0GOcRykTOLky7+UKA=" + }, "node_modules/enhanced-resolve": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz", @@ -13608,12 +10720,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/es-array-method-boxes-properly": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", - "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", - "dev": true - }, "node_modules/es-get-iterator": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.2.tgz", @@ -13648,20 +10754,10 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/es5-shim": { - "version": "4.5.15", - "resolved": "https://registry.npmjs.org/es5-shim/-/es5-shim-4.5.15.tgz", - "integrity": "sha512-FYpuxEjMeDvU4rulKqFdukQyZSTpzhg4ScQHrAosrlVpR6GFyaw14f74yn2+4BugniIS0Frpg7TvwZocU4ZMTw==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/es6-shim": { - "version": "0.35.6", - "resolved": "https://registry.npmjs.org/es6-shim/-/es6-shim-0.35.6.tgz", - "integrity": "sha512-EmTr31wppcaIAgblChZiuN/l9Y7DPyw8Xtbg7fIVngn6zMW+IEBJDJngeKC3x6wr0V/vcA2wqeFnaw1bFJbDdA==", - "dev": true + "node_modules/es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==" }, "node_modules/escalade": { "version": "3.1.1", @@ -13671,6 +10767,14 @@ "node": ">=6" } }, + "node_modules/escape-goat": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", + "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", + "engines": { + "node": ">=8" + } + }, "node_modules/escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", @@ -13777,13 +10881,14 @@ } }, "node_modules/eslint": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.29.0.tgz", - "integrity": "sha512-82G/JToB9qIy/ArBzIWG9xvvwL3R86AlCjtGw+A29OMZDqhTybz/MByORSukGxeI+YPCR4coYyITKk8BFH9nDA==", + "version": "7.30.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.30.0.tgz", + "integrity": "sha512-VLqz80i3as3NdloY44BQSJpFw534L9Oh+6zJOUaViV4JPd+DaHwutqP7tcpkW3YiXbK6s05RZl7yl7cQn+lijg==", "dev": true, "dependencies": { "@babel/code-frame": "7.12.11", "@eslint/eslintrc": "^0.4.2", + "@humanwhocodes/config-array": "^0.5.0", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -13923,8 +11028,8 @@ "node_modules/eslint-plugin-mattermost": { "name": "eslint-config-mattermost", "version": "1.0.0", - "resolved": "git+ssh://git@github.com/mattermost/eslint-plugin-mattermost.git#070ce792d105482ffb2b27cfc0b7e78b3d20acee", - "integrity": "sha512-B+ZquIX9ivUep96vnyZ9XBq1ViN0Ls6i+cWX8e8JilW3LEFke8vWYLT4zoCG0Ogm83iU2E4kcOow2z5xsiiTzg==", + "resolved": "git+ssh://git@github.com/mattermost/eslint-plugin-mattermost.git#46ad99355644a719bf32082f472048f526605181", + "integrity": "sha512-XIsRlgdUmVaJ+9P5sy45uN/cVzi5rPP2w/w06yuEIEYAH6CuVzjiY/dBjDqFKOi/Ebnoo40ur2oCtD3+yzrgVw==", "dev": true, "license": "Apache 2.0" }, @@ -14351,6 +11456,14 @@ "node": ">= 0.6" } }, + "node_modules/event-loop-spinner": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/event-loop-spinner/-/event-loop-spinner-2.1.0.tgz", + "integrity": "sha512-RJ10wL8/F9AlfBgRCvYctJIXSb9XkVmSCK3GGUvPD3dJrvTjDeDT0tmhcbEC6I2NEjNM9xD38HQJ4F/f/gb4VQ==", + "dependencies": { + "tslib": "^2.1.0" + } + }, "node_modules/event-target-shim": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", @@ -14359,38 +11472,22 @@ "node": ">=6" } }, - "node_modules/eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true - }, "node_modules/events": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", "dev": true, + "peer": true, "engines": { "node": ">=0.8.x" } }, - "node_modules/eventsource": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.1.0.tgz", - "integrity": "sha512-VSJjT5oCNrFvCS6igjzPAt5hBzQ2qPBFIbJ03zLI9SE0mxwZpMw6BfJrbFHm1a141AavMEB8JHmBhWAd66PfCg==", - "dev": true, - "dependencies": { - "original": "^1.0.0" - }, - "engines": { - "node": ">=0.12.0" - } - }, "node_modules/evp_bytestokey": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", "dev": true, + "peer": true, "dependencies": { "md5.js": "^1.3.4", "safe-buffer": "^5.1.1" @@ -14486,11 +11583,6 @@ "node": ">= 8" } }, - "node_modules/exif-parser": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/exif-parser/-/exif-parser-0.1.12.tgz", - "integrity": "sha1-WKnS1ywCwfbwKg70qRZicrd2CSI=" - }, "node_modules/exit": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", @@ -14733,98 +11825,356 @@ } }, "node_modules/expo-constants": { - "version": "10.1.3", - "resolved": "https://registry.npmjs.org/expo-constants/-/expo-constants-10.1.3.tgz", - "integrity": "sha512-Eq/xeshnhSoe4ok89d5lrHvI9jq3bMe1FhJUbiHVGcGmW8mGCotwbQBIfDkkMrAKnSOwQq/Qfyg0XBxnG2XFjw==", + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/expo-constants/-/expo-constants-11.0.1.tgz", + "integrity": "sha512-yolJSfsNAVmuNDc+NNxBzUKbZRXPM35edoMpv8xdmRBMpOWkRmTdpBIFAYAKCtrGruw2tkIQhnLmCD2aDycvTg==", "dependencies": { - "@expo/config": "^3.3.35", + "@expo/config": "^4.0.0", + "expo-modules-core": "~0.2.0", "uuid": "^3.3.2" } }, "node_modules/expo-file-system": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/expo-file-system/-/expo-file-system-11.0.2.tgz", - "integrity": "sha512-nodNvUVa+US4N4xnj5BFw8W9ZF/qCHJVC2t45cHWrBiwkVVxz45wjE7uSHUmkMWyWT7a/7AJuL3XJfYp7h90IQ==", + "version": "11.1.3", + "resolved": "https://registry.npmjs.org/expo-file-system/-/expo-file-system-11.1.3.tgz", + "integrity": "sha512-FBRcD6ojrkrZiTZ8O7Fbo833HhZtkhKtLDj4RNZIMpF1i+ZBD2bmeMcfLMeRHNYcBeJno9C4AVXoNQFqDCGQDg==", "dependencies": { - "@expo/config-plugins": "^1.0.18", + "@expo/config-plugins": "^3.0.0", + "expo-modules-core": "~0.2.0", "uuid": "^3.4.0" } }, - "node_modules/expo-image-loader": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/expo-image-loader/-/expo-image-loader-2.1.1.tgz", - "integrity": "sha512-EeItNIsmw4g+FIb9S9AHE7FAWQkuiIguFMua/RQ2mFHKFZYa/BU32MGagY+e4LzasBVbDKWgd3NHO+EYC6XeEA==" - }, - "node_modules/expo-permissions": { - "version": "12.0.1", - "resolved": "https://registry.npmjs.org/expo-permissions/-/expo-permissions-12.0.1.tgz", - "integrity": "sha512-TtypNPPLG4SdVEKBlrArLLZIyhlhE+3B4dhz2HaY1Mve2rcvKE0C7z/e1WoUVU8+LgcdKoNGwg/wRVeCkxeEhg==" - }, - "node_modules/express": { - "version": "4.17.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", - "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", - "dev": true, + "node_modules/expo-file-system/node_modules/@expo/config-plugins": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@expo/config-plugins/-/config-plugins-3.0.3.tgz", + "integrity": "sha512-+DWHd/2L3O+njVercxGSzcBUXMm5CSzdvIK+7dU+FRhoiF57y2NzBhfNQcReYx/EY1coBrYOsMtENPhV1tWoWQ==", "dependencies": { - "accepts": "~1.3.7", - "array-flatten": "1.1.1", - "body-parser": "1.19.0", - "content-disposition": "0.5.3", - "content-type": "~1.0.4", - "cookie": "0.4.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~1.1.2", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "~1.1.2", - "fresh": "0.5.2", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.5", - "qs": "6.7.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.1.2", - "send": "0.17.1", - "serve-static": "1.14.1", - "setprototypeof": "1.1.1", - "statuses": "~1.5.0", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" + "@expo/config-types": "^41.0.0", + "@expo/json-file": "8.2.30", + "@expo/plist": "0.0.13", + "debug": "^4.3.1", + "find-up": "~5.0.0", + "fs-extra": "9.0.0", + "getenv": "^1.0.0", + "glob": "7.1.6", + "resolve-from": "^5.0.0", + "slash": "^3.0.0", + "xcode": "^3.0.1", + "xml2js": "^0.4.23" + } + }, + "node_modules/expo-file-system/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">= 0.10.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/express/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, + "node_modules/expo-file-system/node_modules/fs-extra": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.0.tgz", + "integrity": "sha512-pmEYSk3vYsG/bF651KPUXZ+hvjpgWYw/Gc7W9NFUe3ZVLczKKWIij3IKpOrQcdw4TILtibFslZ0UmR8Vvzig4g==", "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/express/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "node_modules/express/node_modules/qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", - "dev": true, + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^1.0.0" + }, "engines": { - "node": ">=0.6" + "node": ">=10" } }, + "node_modules/expo-file-system/node_modules/glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/expo-file-system/node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/expo-file-system/node_modules/jsonfile/node_modules/universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/expo-file-system/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/expo-file-system/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/expo-file-system/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/expo-file-system/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/expo-file-system/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/expo-file-system/node_modules/universalify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-1.0.0.tgz", + "integrity": "sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/expo-image-loader": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/expo-image-loader/-/expo-image-loader-2.2.0.tgz", + "integrity": "sha512-kTs/lW8LUXYFQ5t8wkdJs0A41zd7dIB8uRRC0a9L0EurSGUvQWiVTbHQoLo/GYWL7nM85OaPAe2qkHfcz5KeyA==" + }, + "node_modules/expo-modules-autolinking": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/expo-modules-autolinking/-/expo-modules-autolinking-0.0.3.tgz", + "integrity": "sha512-azkCRYj/DxbK4udDuDxA9beYzQTwpJ5a9QA0bBgha2jHtWdFGF4ZZWSY+zNA5mtU3KqzYt8jWHfoqgSvKyu1Aw==", + "dependencies": { + "chalk": "^4.1.0", + "commander": "^7.2.0", + "fast-glob": "^3.2.5", + "find-up": "~5.0.0", + "fs-extra": "^9.1.0" + }, + "bin": { + "expo-modules-autolinking": "bin/expo-modules-autolinking.js" + } + }, + "node_modules/expo-modules-autolinking/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/expo-modules-autolinking/node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/expo-modules-autolinking/node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/expo-modules-autolinking/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/expo-modules-autolinking/node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/expo-modules-autolinking/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/expo-modules-autolinking/node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/expo-modules-autolinking/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/expo-modules-autolinking/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/expo-modules-autolinking/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/expo-modules-autolinking/node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/expo-modules-autolinking/node_modules/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/expo-modules-autolinking/node_modules/universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/expo-modules-core": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/expo-modules-core/-/expo-modules-core-0.2.0.tgz", + "integrity": "sha512-inpfZ5X/BaTtbj2wG9PA9AC0MN8VyId6KSRlVuEg7+ziurHBy/kKDFxpOddUokhwiln2uhoYPSStJjR/tKypdw==" + }, "node_modules/extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", @@ -14935,7 +12285,6 @@ "version": "3.2.6", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.6.tgz", "integrity": "sha512-GnLuqj/pvQ7pX8/L4J84nijv6sAnlwvSDpMkJi9i7nPmPxGtRPkBSStfvDW5l6nMdX9VWe+pkKWFTgD+vF2QSQ==", - "dev": true, "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", @@ -14960,39 +12309,13 @@ "dev": true }, "node_modules/fastq": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.0.tgz", - "integrity": "sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g==", - "dev": true, + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.1.tgz", + "integrity": "sha512-HOnr8Mc60eNYl1gzwp6r5RoUyAn5/glBolUzP/Ez6IFVPMPirxn/9phgL6zhOtaTy7ISwPvQ+wT+hfcRZh/bzw==", "dependencies": { "reusify": "^1.0.4" } }, - "node_modules/fault": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/fault/-/fault-1.0.4.tgz", - "integrity": "sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==", - "dev": true, - "dependencies": { - "format": "^0.2.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "dev": true, - "dependencies": { - "websocket-driver": ">=0.5.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, "node_modules/fb-watchman": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz", @@ -15032,7 +12355,8 @@ "version": "3.5.2", "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", - "dev": true + "dev": true, + "peer": true }, "node_modules/figures": { "version": "2.0.0", @@ -15089,81 +12413,13 @@ "node": "*" } }, - "node_modules/file-loader": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-4.3.0.tgz", - "integrity": "sha512-aKrYPYjF1yG3oX0kWRrqrSMfgftm7oJW5M+m4owoldH5C51C0RkIwB++JbRvEW3IU6/ZG5n8UvEcdgwOt2UOWA==", - "dev": true, - "dependencies": { - "loader-utils": "^1.2.3", - "schema-utils": "^2.5.0" - }, - "engines": { - "node": ">= 8.9.0" - }, - "peerDependencies": { - "webpack": "^4.0.0" - } - }, - "node_modules/file-system-cache": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/file-system-cache/-/file-system-cache-1.0.5.tgz", - "integrity": "sha1-hCWbNqK7uNPW6xAh0xMv/mTP/08=", - "dev": true, - "dependencies": { - "bluebird": "^3.3.5", - "fs-extra": "^0.30.0", - "ramda": "^0.21.0" - } - }, - "node_modules/file-system-cache/node_modules/fs-extra": { - "version": "0.30.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.30.0.tgz", - "integrity": "sha1-8jP/zAjU2n1DLapEl3aYnbHfk/A=", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^2.1.0", - "klaw": "^1.0.0", - "path-is-absolute": "^1.0.0", - "rimraf": "^2.2.8" - } - }, - "node_modules/file-system-cache/node_modules/jsonfile": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", - "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", - "dev": true, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/file-system-cache/node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - } - }, - "node_modules/file-type": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-9.0.0.tgz", - "integrity": "sha512-Qe/5NJrgIOlwijpq3B7BEpzPFcgzggOTagZmkXQY4LA6bsXKTUstK7Wp12lEJ/mLKTpvIZxmIuRcLYWT6ov9lw==", - "engines": { - "node": ">=6" - } - }, "node_modules/file-uri-to-path": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", "dev": true, - "optional": true + "optional": true, + "peer": true }, "node_modules/filehound": { "version": "1.16.5", @@ -15179,15 +12435,6 @@ "unit-compare": "^1.0.1" } }, - "node_modules/filesize": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/filesize/-/filesize-3.6.1.tgz", - "integrity": "sha512-7KjR1vv6qnicaPMi1iiTcI85CyYwRO/PSFCu6SvqL8jN2Wjt/NIYQTFtFs7fSDCYOstUkEWIQGFUg5YZQfjlcg==", - "dev": true, - "engines": { - "node": ">= 0.4.0" - } - }, "node_modules/fill-range": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", @@ -15267,12 +12514,6 @@ "node": ">=6" } }, - "node_modules/find-root": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", - "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", - "dev": true - }, "node_modules/find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -15446,9 +12687,9 @@ "dev": true }, "node_modules/flow-parser": { - "version": "0.90.0", - "resolved": "https://registry.npmjs.org/flow-parser/-/flow-parser-0.90.0.tgz", - "integrity": "sha512-a6Ohgdzvf2e1/F8sI98qcPLtDIjLayRkRgAwrWHzHFMHCNq92jyRbRG0w5fGjs6xdI320Ud39HkI0Dk5OPs17g==", + "version": "0.154.0", + "resolved": "https://registry.npmjs.org/flow-parser/-/flow-parser-0.154.0.tgz", + "integrity": "sha512-cH9xY/ljOgmqG1n7PU1jffiHhRggoloauwOrOlCWBEX4Y+ml6GA8g//tCVKU+6PO4BXoPF22TFHkS5E1bN3JOQ==", "engines": { "node": ">=0.4.0" } @@ -15458,21 +12699,29 @@ "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", "dev": true, + "peer": true, "dependencies": { "inherits": "^2.0.3", "readable-stream": "^2.3.6" } }, - "node_modules/focus-lock": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/focus-lock/-/focus-lock-0.9.1.tgz", - "integrity": "sha512-/2Nj60Cps6yOLSO+CkVbeSKfwfns5XbX6HOedIK9PdzODP04N9c3xqOcPXayN0WsT9YjJvAnXmI0NdqNIDf5Kw==", - "dev": true, - "dependencies": { - "tslib": "^2.0.3" - }, + "node_modules/follow-redirects": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz", + "integrity": "sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], "engines": { - "node": ">=10" + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } } }, "node_modules/for-in": { @@ -15488,199 +12737,6 @@ "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=" }, - "node_modules/fork-ts-checker-webpack-plugin": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-1.5.0.tgz", - "integrity": "sha512-zEhg7Hz+KhZlBhILYpXy+Beu96gwvkROWJiTXOCyOOMMrdBIRPvsBpBqgTI4jfJGrJXcqGwJR8zsBGDmzY0jsA==", - "dev": true, - "dependencies": { - "babel-code-frame": "^6.22.0", - "chalk": "^2.4.1", - "chokidar": "^2.0.4", - "micromatch": "^3.1.10", - "minimatch": "^3.0.4", - "semver": "^5.6.0", - "tapable": "^1.0.0", - "worker-rpc": "^0.1.0" - }, - "engines": { - "node": ">=6.11.5", - "yarn": ">=1.0.0" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", - "deprecated": "Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.", - "dev": true, - "dependencies": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - }, - "optionalDependencies": { - "fsevents": "^1.2.7" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "dependencies": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/fsevents": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", - "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", - "deprecated": "fsevents 1 will break on node v14+ and could be using insecure binaries. Upgrade to fsevents 2.", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "dependencies": { - "bindings": "^1.5.0", - "nan": "^2.12.1" - }, - "engines": { - "node": ">= 4.0" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, - "dependencies": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/glob-parent/node_modules/is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, "node_modules/form-data": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", @@ -15695,24 +12751,6 @@ "node": ">= 6" } }, - "node_modules/format": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", - "integrity": "sha1-1hcBB+nv3E7TDJ3DkBbflCtctYs=", - "dev": true, - "engines": { - "node": ">=0.4.x" - } - }, - "node_modules/forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/fragment-cache": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", @@ -15737,11 +12775,17 @@ "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", "dev": true, + "peer": true, "dependencies": { "inherits": "^2.0.1", "readable-stream": "^2.0.0" } }, + "node_modules/fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, "node_modules/fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -15759,7 +12803,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, "dependencies": { "minipass": "^3.0.0" }, @@ -15778,6 +12821,7 @@ "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", "dev": true, + "peer": true, "dependencies": { "graceful-fs": "^4.1.2", "iferr": "^0.1.5", @@ -15808,39 +12852,12 @@ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, - "node_modules/function.prototype.name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.4.tgz", - "integrity": "sha512-iqy1pIotY/RmhdFZygSSlW0wko2yxkSCKqsuv4pr8QESohpYyG/Z7B/XXvPRKTJS//960rgguE5mSRUsDdaJrQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2", - "functions-have-names": "^1.2.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "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 }, - "node_modules/functions-have-names": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.2.tgz", - "integrity": "sha512-bLgc3asbWdwPbx2mNk2S49kmJCuQeu0nfmaOgbs8WIyzzkw3r4htszdIi9Q9EMezDPTYuJx2wvjZ/EwgAthpnA==", - "dev": true, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/funpermaproxy": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/funpermaproxy/-/funpermaproxy-1.0.1.tgz", @@ -16066,7 +13083,6 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "dev": true, "dependencies": { "pump": "^3.0.0" }, @@ -16112,54 +13128,10 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/glob-base": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", - "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", - "dev": true, - "dependencies": { - "glob-parent": "^2.0.0", - "is-glob": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/glob-base/node_modules/glob-parent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", - "dev": true, - "dependencies": { - "is-glob": "^2.0.0" - } - }, - "node_modules/glob-base/node_modules/is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/glob-base/node_modules/is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true, - "dependencies": { - "is-extglob": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/glob-parent": { "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" }, @@ -16167,19 +13139,68 @@ "node": ">= 6" } }, - "node_modules/glob-to-regexp": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz", - "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=", - "dev": true - }, - "node_modules/global": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", - "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", + "node_modules/global-agent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-2.2.0.tgz", + "integrity": "sha512-+20KpaW6DDLqhG7JDiJpD1JvNvb8ts+TNl7BPOYcURqCrXqnN1Vf+XVOrkKJAFPqfX+oEhsdzOj1hLWkBTdNJg==", "dependencies": { - "min-document": "^2.19.0", - "process": "^0.11.10" + "boolean": "^3.0.1", + "core-js": "^3.6.5", + "es6-error": "^4.1.1", + "matcher": "^3.0.0", + "roarr": "^2.15.3", + "semver": "^7.3.2", + "serialize-error": "^7.0.1" + }, + "engines": { + "node": ">=10.0" + } + }, + "node_modules/global-agent/node_modules/serialize-error": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", + "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", + "dependencies": { + "type-fest": "^0.13.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/global-agent/node_modules/type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/global-dirs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.0.tgz", + "integrity": "sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==", + "dependencies": { + "ini": "2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/global-dirs/node_modules/ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "engines": { + "node": ">=10" } }, "node_modules/global-modules": { @@ -16220,7 +13241,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.2.tgz", "integrity": "sha512-ZQnSFO1la8P7auIOQECnm0sSuoMeaSq0EEdXMBFF2QJO4uNcwbyhSgG3MruWNbFTqCLmxVwGOl7LZ9kASvHdeQ==", - "dev": true, "dependencies": { "define-properties": "^1.1.3" }, @@ -16235,7 +13255,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", @@ -16255,7 +13274,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" } @@ -16264,19 +13282,32 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true, "engines": { "node": ">=8" } }, - "node_modules/good-listener": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz", - "integrity": "sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=", - "dev": true, - "optional": true, + "node_modules/got": { + "version": "11.8.2", + "resolved": "https://registry.npmjs.org/got/-/got-11.8.2.tgz", + "integrity": "sha512-D0QywKgIe30ODs+fm8wMZiAcZjypcCodPNuMz5H9Mny7RJ+IjJ10BdmGW7OM7fHXP+O7r6ZwapQ/YQmMSvB0UQ==", "dependencies": { - "delegate": "^3.1.2" + "@sindresorhus/is": "^4.0.0", + "@szmarczak/http-timer": "^4.0.5", + "@types/cacheable-request": "^6.0.1", + "@types/responselike": "^1.0.0", + "cacheable-lookup": "^5.0.3", + "cacheable-request": "^7.0.1", + "decompress-response": "^6.0.0", + "http2-wrapper": "^1.0.0-beta.5.2", + "lowercase-keys": "^2.0.0", + "p-cancelable": "^2.0.0", + "responselike": "^2.0.0" + }, + "engines": { + "node": ">=10.19.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/got?sponsor=1" } }, "node_modules/graceful-fs": { @@ -16284,6 +13315,11 @@ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==" }, + "node_modules/grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==" + }, "node_modules/growl": { "version": "1.10.5", "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", @@ -16301,25 +13337,35 @@ "dev": true, "optional": true }, - "node_modules/gud": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gud/-/gud-1.0.0.tgz", - "integrity": "sha512-zGEOVKFM5sVPPrYs7J5/hYEw2Pof8KCyOwyhG8sAF26mCAeUFAcYPu1mwB7hhpIP29zOIBaDqwuHdLp0jvZXjw==", - "dev": true - }, - "node_modules/gzip-size": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-5.1.1.tgz", - "integrity": "sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA==", - "dev": true, + "node_modules/gunzip-maybe": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/gunzip-maybe/-/gunzip-maybe-1.4.2.tgz", + "integrity": "sha512-4haO1M4mLO91PW57BMsDFf75UmwoRX0GkdD+Faw+Lr+r/OZrOCS0pIBwOL1xCKQqnQzbNFGgK2V2CpBUPeFNTw==", "dependencies": { - "duplexer": "^0.1.1", - "pify": "^4.0.1" + "browserify-zlib": "^0.1.4", + "is-deflate": "^1.0.0", + "is-gzip": "^1.0.0", + "peek-stream": "^1.1.0", + "pumpify": "^1.3.3", + "through2": "^2.0.3" }, - "engines": { - "node": ">=6" + "bin": { + "gunzip-maybe": "bin.js" } }, + "node_modules/gunzip-maybe/node_modules/browserify-zlib": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz", + "integrity": "sha1-uzX4pRn2AOD6a4SFJByXnQFB+y0=", + "dependencies": { + "pako": "~0.2.0" + } + }, + "node_modules/gunzip-maybe/node_modules/pako": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", + "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=" + }, "node_modules/has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", @@ -16331,27 +13377,6 @@ "node": ">= 0.4.0" } }, - "node_modules/has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-ansi/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/has-bigints": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", @@ -16420,11 +13445,20 @@ "node": ">=0.10.0" } }, + "node_modules/has-yarn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", + "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", + "engines": { + "node": ">=8" + } + }, "node_modules/hash-base": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", "dev": true, + "peer": true, "dependencies": { "inherits": "^2.0.4", "readable-stream": "^3.6.0", @@ -16439,6 +13473,7 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "dev": true, + "peer": true, "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -16466,50 +13501,26 @@ "type": "consulting", "url": "https://feross.org/support" } - ] + ], + "peer": true }, "node_modules/hash.js": { "version": "1.1.7", "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", "dev": true, + "peer": true, "dependencies": { "inherits": "^2.0.3", "minimalistic-assert": "^1.0.1" } }, - "node_modules/hast-util-parse-selector": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz", - "integrity": "sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, - "node_modules/hastscript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-6.0.0.tgz", - "integrity": "sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==", - "dev": true, - "dependencies": { - "@types/hast": "^2.0.0", - "comma-separated-tokens": "^1.0.0", - "hast-util-parse-selector": "^2.0.0", - "property-information": "^5.0.0", - "space-separated-tokens": "^1.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/unified" - } - }, "node_modules/he": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", "dev": true, + "peer": true, "bin": { "he": "bin/he" } @@ -16538,20 +13549,12 @@ "node": ">= 8" } }, - "node_modules/highlight.js": { - "version": "10.7.3", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.3.tgz", - "integrity": "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==", - "dev": true, - "engines": { - "node": "*" - } - }, "node_modules/hmac-drbg": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", "dev": true, + "peer": true, "dependencies": { "hash.js": "^1.0.3", "minimalistic-assert": "^1.0.0", @@ -16596,120 +13599,16 @@ "node": ">=10" } }, - "node_modules/html-entities": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.4.0.tgz", - "integrity": "sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA==", - "dev": true - }, "node_modules/html-escaper": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, - "node_modules/html-minifier-terser": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", - "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==", - "dev": true, - "dependencies": { - "camel-case": "^4.1.1", - "clean-css": "^4.2.3", - "commander": "^4.1.1", - "he": "^1.2.0", - "param-case": "^3.0.3", - "relateurl": "^0.2.7", - "terser": "^4.6.3" - }, - "bin": { - "html-minifier-terser": "cli.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/html-webpack-plugin": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz", - "integrity": "sha512-q5oYdzjKUIPQVjOosjgvCHQOv9Ett9CYYHlgvJeXG0qQvdSojnBq4vAdQBwn1+yGveAwHCoe/rMR86ozX3+c2A==", - "dev": true, - "dependencies": { - "@types/html-minifier-terser": "^5.0.0", - "@types/tapable": "^1.0.5", - "@types/webpack": "^4.41.8", - "html-minifier-terser": "^5.0.1", - "loader-utils": "^1.2.3", - "lodash": "^4.17.20", - "pretty-error": "^2.1.1", - "tapable": "^1.1.3", - "util.promisify": "1.0.0" - }, - "engines": { - "node": ">=6.9" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/htmlparser2": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", - "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", - "dev": true, - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.0.0", - "domutils": "^2.5.2", - "entities": "^2.0.0" - } - }, - "node_modules/htmlparser2/node_modules/dom-serializer": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", - "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", - "dev": true, - "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/htmlparser2/node_modules/domelementtype": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", - "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ] - }, - "node_modules/htmlparser2/node_modules/domutils": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.7.0.tgz", - "integrity": "sha512-8eaHa17IwJUPAiB+SoTYBo5mCdeMgdcAoXJ59m6DT1vw+5iLS3gNoqYaRowaBKtGVrOF1Jz4yDTgYKLK2kvfJg==", - "dev": true, - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } + "node_modules/http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" }, "node_modules/http-errors": { "version": "1.7.2", @@ -16731,12 +13630,6 @@ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" }, - "node_modules/http-parser-js": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.3.tgz", - "integrity": "sha512-t7hjvef/5HEK7RWTdUzVUhl8zkEu+LlaE0IYzdMuvbSDipxBRpOn4Uhw8ZyECEa808iVT8XCjzo6xmYt4CiLZg==", - "dev": true - }, "node_modules/http-proxy-agent": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", @@ -16751,11 +13644,24 @@ "node": ">= 6" } }, + "node_modules/http2-wrapper": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", + "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", + "dependencies": { + "quick-lru": "^5.1.1", + "resolve-alpn": "^1.0.0" + }, + "engines": { + "node": ">=10.19.0" + } + }, "node_modules/https-browserify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", - "dev": true + "dev": true, + "peer": true }, "node_modules/https-proxy-agent": { "version": "5.0.0", @@ -16779,13 +13685,16 @@ } }, "node_modules/husky": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/husky/-/husky-6.0.0.tgz", - "integrity": "sha512-SQS2gDTB7tBN486QSoKPKQItZw97BMOd+Kdb6ghfpBc0yXyzrddI0oDV5MkDAbuB4X2mO3/nj60TRMcYxwzZeQ==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/husky/-/husky-7.0.1.tgz", + "integrity": "sha512-gceRaITVZ+cJH9sNHqx5tFwbzlLCVxtVZcusME8JYQ8Edy5mpGDOqD8QBCdMhpyo9a+JXddnujQ4rpY2Ff9SJA==", "dev": true, "bin": { "husky": "lib/bin.js" }, + "engines": { + "node": ">=12" + }, "funding": { "url": "https://github.com/sponsors/typicode" } @@ -16801,18 +13710,6 @@ "node": ">=0.10.0" } }, - "node_modules/icss-utils": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", - "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", - "dev": true, - "dependencies": { - "postcss": "^7.0.14" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/ieee754": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", @@ -16836,7 +13733,8 @@ "version": "0.1.5", "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", - "dev": true + "dev": true, + "peer": true }, "node_modules/ignore": { "version": "4.0.6", @@ -16863,29 +13761,11 @@ "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=" }, - "node_modules/immer": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/immer/-/immer-1.10.0.tgz", - "integrity": "sha512-O3sR1/opvCDGLEVcvrGTMtLac8GJ5IwZC4puPrLuRj3l7ICKvkmA0vGuU9OW8mV9WIBRnaxp5GJh9IEAaNOoYg==", - "dev": true - }, "node_modules/immutable": { "version": "4.0.0-rc.12", "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.0.0-rc.12.tgz", "integrity": "sha512-0M2XxkZLx/mi3t8NVwIm1g8nHoEmM9p9UBl/G9k4+hm0kBgOVdMV/B3CY5dQ8qG8qc80NN4gDV4HQv6FTJ5q7A==" }, - "node_modules/import-cwd": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz", - "integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=", - "dev": true, - "dependencies": { - "import-from": "^2.1.0" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/import-fresh": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", @@ -16911,23 +13791,10 @@ "node": ">=4" } }, - "node_modules/import-from": { + "node_modules/import-lazy": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", - "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=", - "dev": true, - "dependencies": { - "resolve-from": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/import-from/node_modules/resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", - "dev": true, + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", "engines": { "node": ">=4" } @@ -16968,22 +13835,10 @@ "node": ">=0.8.19" } }, - "node_modules/in-publish": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.1.tgz", - "integrity": "sha512-oDM0kUSNFC31ShNxHKUyfZKy8ZeXZBWMjMdZHKLOk13uvT27VTL/QzRGfRUcevJhpkZAvlhPYuXkF7eNWrtyxQ==", - "bin": { - "in-install": "in-install.js", - "in-publish": "in-publish.js", - "not-in-install": "not-in-install.js", - "not-in-publish": "not-in-publish.js" - } - }, "node_modules/indent-string": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true, "engines": { "node": ">=8" } @@ -16992,7 +13847,8 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true + "dev": true, + "peer": true }, "node_modules/inflight": { "version": "1.0.6", @@ -17011,8 +13867,7 @@ "node_modules/ini": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" }, "node_modules/inquirer": { "version": "6.5.2", @@ -17102,21 +13957,20 @@ } }, "node_modules/interpret": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz", - "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==", - "dev": true, + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", "engines": { "node": ">= 0.10" } }, "node_modules/intl-messageformat": { - "version": "9.6.14", - "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-9.6.14.tgz", - "integrity": "sha512-9JN9PfPTtp8OGqV5ndlwmjYhqj1Baz1OHMlzNhLNkt35mqThUh0wvtS7+X5QUnJFAgopNPlw2KF5LH0kYUs4eA==", + "version": "9.7.1", + "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-9.7.1.tgz", + "integrity": "sha512-DNiuD+/59G9qaYu3U0KgwCV0zpN9XRoUvc8izSNCNAA5MknhiIUONFE0WtScP+E/7JfoENu+CX57P/SURRbI0A==", "dependencies": { "@formatjs/fast-memoize": "1.1.1", - "@formatjs/icu-messageformat-parser": "2.0.2", + "@formatjs/icu-messageformat-parser": "2.0.7", "tslib": "^2.1.0" } }, @@ -17142,13 +13996,12 @@ "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" }, - "node_modules/ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "dev": true, + "node_modules/is": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/is/-/is-3.3.0.tgz", + "integrity": "sha512-nW24QBoPcFGGHJGUwnfpI7Yc5CdqWNdsyHQszVE/z2pKHXzh7FZ5GWhJqSyaQ9wMkQnsTx+kAI8bHlCX4tKdbg==", "engines": { - "node": ">= 0.10" + "node": "*" } }, "node_modules/is-accessor-descriptor": { @@ -17173,30 +14026,6 @@ "node": ">=0.10.0" } }, - "node_modules/is-alphabetical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", - "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/is-alphanumerical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", - "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", - "dev": true, - "dependencies": { - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/is-arguments": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.0.tgz", @@ -17229,6 +14058,7 @@ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", "dev": true, + "optional": true, "dependencies": { "binary-extensions": "^1.0.0" }, @@ -17321,15 +14151,10 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-decimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", - "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } + "node_modules/is-deflate": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-deflate/-/is-deflate-1.0.0.tgz", + "integrity": "sha1-yGKQHDwWH7CdrHzcfnhPgOmPLxQ=" }, "node_modules/is-descriptor": { "version": "0.1.6", @@ -17364,7 +14189,6 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true, "bin": { "is-docker": "cli.js" }, @@ -17387,7 +14211,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" } @@ -17400,11 +14223,6 @@ "node": ">=4" } }, - "node_modules/is-function": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.2.tgz", - "integrity": "sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==" - }, "node_modules/is-generator-fn": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", @@ -17430,7 +14248,6 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, "dependencies": { "is-extglob": "^2.1.1" }, @@ -17438,14 +14255,35 @@ "node": ">=0.10.0" } }, - "node_modules/is-hexadecimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", - "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==", - "dev": true, + "node_modules/is-gzip": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-gzip/-/is-gzip-1.0.0.tgz", + "integrity": "sha1-bKiwe5nHeZgCWQDlVc7Y7YCHmoM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-installed-globally": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", + "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", + "dependencies": { + "global-dirs": "^3.0.0", + "is-path-inside": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "engines": { + "node": ">=8" } }, "node_modules/is-map": { @@ -17467,6 +14305,17 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-npm": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", + "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-number": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", @@ -17508,6 +14357,22 @@ "node": ">=0.10.0" } }, + "node_modules/is-path-cwd": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "engines": { + "node": ">=8" + } + }, "node_modules/is-plain-obj": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", @@ -17549,15 +14414,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-root": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", - "integrity": "sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/is-set": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", @@ -17570,7 +14426,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", - "dev": true, "engines": { "node": ">=8" } @@ -17627,8 +14482,6 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true, - "peer": true, "engines": { "node": ">=10" }, @@ -17664,7 +14517,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, "dependencies": { "is-docker": "^2.0.0" }, @@ -17672,6 +14524,11 @@ "node": ">=8" } }, + "node_modules/is-yarn-global": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", + "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==" + }, "node_modules/isarray": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", @@ -17828,29 +14685,10 @@ "node": ">=8" } }, - "node_modules/iterate-iterator": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/iterate-iterator/-/iterate-iterator-1.0.1.tgz", - "integrity": "sha512-3Q6tudGN05kbkDQDI4CqjaBf4qf85w6W6GnuZDtUVYwKgtC1q8yxYX7CZed7N+tLzQqS6roujWvszf13T+n9aw==", - "dev": true - }, - "node_modules/iterate-value": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/iterate-value/-/iterate-value-1.0.2.tgz", - "integrity": "sha512-A6fMAio4D2ot2r/TYzr4yUWrmwNdsN5xL7+HUiyACE4DXm+q8HtPcnFTp+NnW3k4N05tZ7FVYFFb2CR13NxyHQ==", - "dev": true, - "dependencies": { - "es-get-iterator": "^1.0.2", - "iterate-iterator": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/jail-monkey": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/jail-monkey/-/jail-monkey-2.4.0.tgz", - "integrity": "sha512-A2lAjbUK9KFwS7cDdKyzZ+vFCn5+yFJumCk9MXaMeyTTB3lFQ5aag8Wu0wY5m9qrNLPdIkgeiwNt8452OOOs7g==" + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/jail-monkey/-/jail-monkey-2.5.0.tgz", + "integrity": "sha512-z5xZZ7My25RELBIPFgYWfEmtcPQm8fHxQWJ5uq1g0gfyv7xclDely8Sicv43dtOGZjvpDqjhBm/sgHuQJ2hd3A==" }, "node_modules/jest": { "version": "26.6.3", @@ -18712,6 +15550,59 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, + "node_modules/jest-config/node_modules/babel-jest": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-26.6.3.tgz", + "integrity": "sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA==", + "dev": true, + "dependencies": { + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/babel__core": "^7.1.7", + "babel-plugin-istanbul": "^6.0.0", + "babel-preset-jest": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "slash": "^3.0.0" + }, + "engines": { + "node": ">= 10.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, + "node_modules/jest-config/node_modules/babel-plugin-jest-hoist": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz", + "integrity": "sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw==", + "dev": true, + "dependencies": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" + }, + "engines": { + "node": ">= 10.14.2" + } + }, + "node_modules/jest-config/node_modules/babel-preset-jest": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz", + "integrity": "sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ==", + "dev": true, + "dependencies": { + "babel-plugin-jest-hoist": "^26.6.2", + "babel-preset-current-node-syntax": "^1.0.0" + }, + "engines": { + "node": ">= 10.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" + } + }, "node_modules/jest-config/node_modules/chalk": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", @@ -18776,6 +15667,15 @@ "node": ">= 10.14.2" } }, + "node_modules/jest-config/node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/jest-config/node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -20768,18 +17668,6 @@ "jetify": "bin/jetify" } }, - "node_modules/jimp": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/jimp/-/jimp-0.12.1.tgz", - "integrity": "sha512-0soPJif+yjmzmOF+4cF2hyhxUWWpXpQntsm2joJXFFoRcQiPzsG4dbLKYqYPT3Fc6PjZ8MaLtCkDqqckVSfmRw==", - "dependencies": { - "@babel/runtime": "^7.7.2", - "@jimp/custom": "^0.12.1", - "@jimp/plugins": "^0.12.1", - "@jimp/types": "^0.12.1", - "regenerator-runtime": "^0.13.3" - } - }, "node_modules/joi": { "version": "17.4.0", "resolved": "https://registry.npmjs.org/joi/-/joi-17.4.0.tgz", @@ -20792,11 +17680,6 @@ "@sideway/pinpoint": "^2.0.0" } }, - "node_modules/jpeg-js": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/jpeg-js/-/jpeg-js-0.4.3.tgz", - "integrity": "sha512-ru1HWKek8octvUHFHvE5ZzQ1yAsJmIvRdGWvSoKV52XKyuyYA437QWDttXT8eZXDSbuMpHlLzPDZUPd6idIz+Q==" - }, "node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -21023,6 +17906,26 @@ "node": ">=4" } }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==" + }, + "node_modules/json-file-plus": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/json-file-plus/-/json-file-plus-3.3.1.tgz", + "integrity": "sha512-wo0q1UuiV5NsDPQDup1Km8IwEeqe+olr8tkWxeJq9Bjtcp7DZ0l+yrg28fSC3DEtrE311mhTZ54QGS6oiqnZEA==", + "dependencies": { + "is": "^3.2.1", + "node.extend": "^2.0.0", + "object.assign": "^4.1.0", + "promiseback": "^2.0.2", + "safer-buffer": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", @@ -21051,12 +17954,6 @@ "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" }, - "node_modules/json3": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.3.tgz", - "integrity": "sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA==", - "dev": true - }, "node_modules/json5": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", @@ -21100,11 +17997,38 @@ "node": ">=4.0" } }, + "node_modules/jszip": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.6.0.tgz", + "integrity": "sha512-jgnQoG9LKnWO3mnVNBnfhkh0QknICd1FGSrXcgrl67zioyJ4wgx25o9ZqwNtrROSflGBCGYnJfjrIyRIby1OoQ==", + "dependencies": { + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "set-immediate-shim": "~1.0.1" + } + }, + "node_modules/jszip/node_modules/lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "dependencies": { + "immediate": "~3.0.5" + } + }, "node_modules/keymirror": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/keymirror/-/keymirror-0.1.1.tgz", "integrity": "sha1-kYiJ6hP40KQufFVyUO7nE63JXDU=" }, + "node_modules/keyv": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.0.3.tgz", + "integrity": "sha512-zdGa2TOpSZPq5mU6iowDARnMBZgtCqJ11dJROFi6tg6kTn4nuUdU09lFyLFSaHrWqpIJ+EBq4E8/Dc0Vx5vLdA==", + "dependencies": { + "json-buffer": "3.0.1" + } + }, "node_modules/kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", @@ -21138,31 +18062,15 @@ "node": ">=6" } }, - "node_modules/lazy-universal-dotenv": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/lazy-universal-dotenv/-/lazy-universal-dotenv-3.0.1.tgz", - "integrity": "sha512-prXSYk799h3GY3iOWnC6ZigYzMPjxN2svgjJ9shk7oMadSNX3wXy0B6F32PMJv7qtMnrIbUxoEHzbutvxR2LBQ==", - "dev": true, + "node_modules/latest-version": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", + "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", "dependencies": { - "@babel/runtime": "^7.5.0", - "app-root-dir": "^1.0.2", - "core-js": "^3.0.4", - "dotenv": "^8.0.0", - "dotenv-expand": "^5.1.0" + "package-json": "^6.3.0" }, "engines": { - "node": ">=6.0.0", - "npm": ">=6.0.0", - "yarn": ">=1.0.0" - } - }, - "node_modules/lazy-universal-dotenv/node_modules/dotenv": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz", - "integrity": "sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==", - "dev": true, - "engines": { - "node": ">=10" + "node": ">=8" } }, "node_modules/lcid": { @@ -21212,32 +18120,6 @@ "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", "dev": true }, - "node_modules/load-bmfont": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/load-bmfont/-/load-bmfont-1.4.1.tgz", - "integrity": "sha512-8UyQoYmdRDy81Brz6aLAUhfZLwr5zV0L3taTQ4hju7m6biuwiWiJXjPhBJxbUQJA8PrkvJ/7Enqmwk2sM14soA==", - "dependencies": { - "buffer-equal": "0.0.1", - "mime": "^1.3.4", - "parse-bmfont-ascii": "^1.0.3", - "parse-bmfont-binary": "^1.0.5", - "parse-bmfont-xml": "^1.1.4", - "phin": "^2.9.1", - "xhr": "^2.0.1", - "xtend": "^4.0.0" - } - }, - "node_modules/load-bmfont/node_modules/mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "bin": { - "mime": "cli.js" - }, - "engines": { - "node": ">=4" - } - }, "node_modules/load-json-file": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", @@ -21289,6 +18171,7 @@ "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", "dev": true, + "peer": true, "engines": { "node": ">=4.3.0 <5.0.0 || >=5.10" } @@ -21353,27 +18236,146 @@ "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=" }, + "node_modules/lodash.assignin": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", + "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=" + }, + "node_modules/lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=" + }, + "node_modules/lodash.chunk": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.chunk/-/lodash.chunk-4.2.0.tgz", + "integrity": "sha1-ZuXOH3btJ7QwPYxlEujRIW6BBrw=" + }, + "node_modules/lodash.clone": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clone/-/lodash.clone-4.5.0.tgz", + "integrity": "sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y=" + }, "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.constant": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash.constant/-/lodash.constant-3.0.0.tgz", + "integrity": "sha1-v+Bczn5RWzEokl1jYhOEIL1iSRA=" }, "node_modules/lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=" }, + "node_modules/lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" + }, + "node_modules/lodash.filter": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", + "integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=" + }, + "node_modules/lodash.find": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.find/-/lodash.find-4.6.0.tgz", + "integrity": "sha1-ywcE1Hq3F4n/oN6Ll92Sb7iLE7E=" + }, + "node_modules/lodash.findindex": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.findindex/-/lodash.findindex-4.6.0.tgz", + "integrity": "sha1-oyRd7mH7m24GJLU1ElYku2nBEQY=" + }, + "node_modules/lodash.findkey": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.findkey/-/lodash.findkey-4.6.0.tgz", + "integrity": "sha1-gwWOkDtRy7dZ0JzPVG3qPqOcRxg=" + }, + "node_modules/lodash.flatmap": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.flatmap/-/lodash.flatmap-4.5.0.tgz", + "integrity": "sha1-74y/QI9uSCaGYzRTBcaswLd4cC4=" + }, + "node_modules/lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=" + }, + "node_modules/lodash.flattendeep": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", + "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=" + }, + "node_modules/lodash.foreach": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", + "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=" + }, "node_modules/lodash.frompairs": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/lodash.frompairs/-/lodash.frompairs-4.0.1.tgz", "integrity": "sha1-vE5SB/onV8E25XNhTpZkUGsrG9I=" }, + "node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=" + }, + "node_modules/lodash.groupby": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.groupby/-/lodash.groupby-4.6.0.tgz", + "integrity": "sha1-Cwih3PaDl8OXhVwyOXg4Mt90A9E=" + }, + "node_modules/lodash.has": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/lodash.has/-/lodash.has-4.5.2.tgz", + "integrity": "sha1-0Z9NwQlQWMzL4rDN9O4P5Ko3yGI=" + }, + "node_modules/lodash.invert": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.invert/-/lodash.invert-4.3.0.tgz", + "integrity": "sha1-j/4g1LYW9WvqjxqgxuvYDc90Ku4=" + }, + "node_modules/lodash.isboolean": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", + "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY=" + }, + "node_modules/lodash.isempty": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.isempty/-/lodash.isempty-4.4.0.tgz", + "integrity": "sha1-b4bL7di+TsmHvpqvM8loTbGzHn4=" + }, "node_modules/lodash.isequal": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" }, + "node_modules/lodash.isfunction": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz", + "integrity": "sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw==" + }, + "node_modules/lodash.isnumber": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", + "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w=" + }, + "node_modules/lodash.isobject": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/lodash.isobject/-/lodash.isobject-3.0.2.tgz", + "integrity": "sha1-PI+41bW/S/kK4G4U8qUwpO2TXh0=" + }, + "node_modules/lodash.isobjectlike": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/lodash.isobjectlike/-/lodash.isobjectlike-4.0.0.tgz", + "integrity": "sha1-dCxfxlrdJ5JNPSQZFoGqmheytg0=" + }, "node_modules/lodash.isplainobject": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", @@ -21384,33 +18386,71 @@ "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=" }, - "node_modules/lodash.memoize": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=", - "dev": true + "node_modules/lodash.isundefined": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash.isundefined/-/lodash.isundefined-3.0.1.tgz", + "integrity": "sha1-I+89lTVWUgOmbO/VuDD4SJEa+0g=" + }, + "node_modules/lodash.keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-4.2.0.tgz", + "integrity": "sha1-oIYCrBLk+4P5H8H7ejYKTZujUgU=" + }, + "node_modules/lodash.last": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash.last/-/lodash.last-3.0.0.tgz", + "integrity": "sha1-JC9mMRLdTG5jcoxgo8kJ0b2tvUw=" + }, + "node_modules/lodash.map": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", + "integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=" }, "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.omit": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.omit/-/lodash.omit-4.5.0.tgz", "integrity": "sha1-brGa5aHuHdnfC5aeZs4Lf6MLXmA=" }, + "node_modules/lodash.orderby": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.orderby/-/lodash.orderby-4.6.0.tgz", + "integrity": "sha1-5pfwTOXXhSL1TZM4syuBozk+TrM=" + }, "node_modules/lodash.pick": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=" }, + "node_modules/lodash.reduce": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", + "integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=" + }, "node_modules/lodash.set": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz", "integrity": "sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM=" }, + "node_modules/lodash.size": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.size/-/lodash.size-4.2.0.tgz", + "integrity": "sha1-cf517T6r2yvLc6GwtPUcOS7ie4Y=" + }, + "node_modules/lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=" + }, + "node_modules/lodash.sum": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/lodash.sum/-/lodash.sum-4.0.2.tgz", + "integrity": "sha1-rZDjl5ZdgD1PH/eqWy0Bl/O0Y3s=" + }, "node_modules/lodash.template": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", @@ -21433,18 +18473,46 @@ "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=" }, + "node_modules/lodash.topairs": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.topairs/-/lodash.topairs-4.3.0.tgz", + "integrity": "sha1-O23qo31g+xFnE8RsXxfqGQ7EjWQ=" + }, + "node_modules/lodash.transform": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.transform/-/lodash.transform-4.6.0.tgz", + "integrity": "sha1-EjBkIvYzJK7YSD0/ODMrX2cFR6A=" + }, "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 }, + "node_modules/lodash.union": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", + "integrity": "sha1-SLtQiECfFvGCFmZkHETdGqrjzYg=" + }, + "node_modules/lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=" + }, + "node_modules/lodash.upperfirst": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/lodash.upperfirst/-/lodash.upperfirst-4.3.1.tgz", + "integrity": "sha1-E2Xt9DFIBIHvDRxolXpe2Z1J984=" + }, + "node_modules/lodash.values": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.values/-/lodash.values-4.3.0.tgz", + "integrity": "sha1-o6bCsOvsxcLLocF+bmIP6BtT00c=" + }, "node_modules/log-symbols": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "peer": true, "dependencies": { "chalk": "^4.1.0", "is-unicode-supported": "^0.1.0" @@ -21460,8 +18528,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "peer": true, "dependencies": { "color-convert": "^2.0.1" }, @@ -21476,8 +18542,6 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", - "dev": true, - "peer": true, "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -21493,8 +18557,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, - "peer": true, "engines": { "node": ">=8" } @@ -21503,8 +18565,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, - "peer": true, "dependencies": { "has-flag": "^4.0.0" }, @@ -21625,39 +18685,34 @@ "loose-envify": "cli.js" } }, - "node_modules/lower-case": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", - "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", - "dev": true, - "dependencies": { - "tslib": "^2.0.3" - } - }, - "node_modules/lowlight": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/lowlight/-/lowlight-1.20.0.tgz", - "integrity": "sha512-8Ktj+prEb1RoCPkEOrPMYUN/nCggB7qAWe3a7OpMjWQkh3l2RD5wKRQ+o8Q8YuI9RG/xs95waaI/E6ym/7NsTw==", - "dev": true, - "dependencies": { - "fault": "^1.0.0", - "highlight.js": "~10.7.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" + "node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "engines": { + "node": ">=8" } }, "node_modules/lru-cache": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, "dependencies": { "pseudomap": "^1.0.2", "yallist": "^2.1.2" } }, + "node_modules/macos-release": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/macos-release/-/macos-release-2.5.0.tgz", + "integrity": "sha512-EIgv+QZ9r+814gjJj0Bt5vSLJLzswGmSUbUpbi9AIr/fsN2IWFBl2NucV9PAiek+U1STK468tEkxmVYUtuAN3g==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/make-dir": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", @@ -21711,12 +18766,6 @@ "node": ">=0.10.0" } }, - "node_modules/map-or-similar": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/map-or-similar/-/map-or-similar-1.5.0.tgz", - "integrity": "sha1-beJlMXSt+12e3DPGnT6Sobdvrwg=", - "dev": true - }, "node_modules/map-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", @@ -21728,16 +18777,26 @@ "node": ">=0.10.0" } }, - "node_modules/markdown-to-jsx": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/markdown-to-jsx/-/markdown-to-jsx-7.1.3.tgz", - "integrity": "sha512-jtQ6VyT7rMT5tPV0g2EJakEnXLiPksnvlYtwQsVVZ611JsWGN8bQ1tVSDX4s6JllfEH6wmsYxNjTUAMrPmNA8w==", - "dev": true, - "engines": { - "node": ">= 10" + "node_modules/matcher": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz", + "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", + "dependencies": { + "escape-string-regexp": "^4.0.0" }, - "peerDependencies": { - "react": ">= 0.14.0" + "engines": { + "node": ">=10" + } + }, + "node_modules/matcher/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==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/md5-file": { @@ -21759,6 +18818,7 @@ "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", "dev": true, + "peer": true, "dependencies": { "hash-base": "^3.0.0", "inherits": "^2.0.1", @@ -21775,15 +18835,6 @@ "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=" }, - "node_modules/media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/mem": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", @@ -21802,31 +18853,17 @@ "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-5.2.1.tgz", "integrity": "sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==" }, - "node_modules/memoizerific": { - "version": "1.11.3", - "resolved": "https://registry.npmjs.org/memoizerific/-/memoizerific-1.11.3.tgz", - "integrity": "sha1-fIekZGREwy11Q4VwkF8tvRsagFo=", - "dev": true, - "dependencies": { - "map-or-similar": "^1.5.0" - } - }, "node_modules/memory-fs": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", "dev": true, + "peer": true, "dependencies": { "errno": "^0.1.3", "readable-stream": "^2.0.1" } }, - "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", - "dev": true - }, "node_modules/merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", @@ -21836,20 +18873,10 @@ "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" } }, - "node_modules/methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", - "dev": true, - "engines": { - "node": ">= 0.6" - } - }, "node_modules/metro": { "version": "0.64.0", "resolved": "https://registry.npmjs.org/metro/-/metro-0.64.0.tgz", @@ -22164,12 +19191,12 @@ } }, "node_modules/metro-react-native-babel-preset": { - "version": "0.66.0", - "resolved": "https://registry.npmjs.org/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.66.0.tgz", - "integrity": "sha512-rO3yayxplLNxFDc7HyMShN+psgEb2mbw15EMreNvgV8QnXNYHmgU6e15tLbtEvC8LuftOLuSufEdSmR/ykm+aA==", + "version": "0.66.1", + "resolved": "https://registry.npmjs.org/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.66.1.tgz", + "integrity": "sha512-iNY1CsnhXBJGHkjiq+rn17CVgd0OldTosagEiYLTRMoU1u+dGjPNh5BO6ldpGmyDJScG8Uwd0RuMQoAusDrjVw==", "dev": true, "dependencies": { - "@babel/core": "^7.0.0", + "@babel/core": "^7.14.0", "@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-export-default-from": "^7.0.0", "@babel/plugin-proposal-nullish-coalescing-operator": "^7.0.0", @@ -22583,12 +19610,6 @@ "node": ">=6" } }, - "node_modules/microevent.ts": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/microevent.ts/-/microevent.ts-0.1.1.tgz", - "integrity": "sha512-jo1OfR4TaEwd5HOrt5+tAZ9mqT4jmpNAusXtyfNzqVm9uiSYFZlKM1wYL4oU7azZW/PxQW53wM0S6OR1JHNa2g==", - "dev": true - }, "node_modules/micromatch": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", @@ -22647,6 +19668,7 @@ "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", "dev": true, + "peer": true, "dependencies": { "bn.js": "^4.0.0", "brorand": "^1.0.1" @@ -22659,7 +19681,8 @@ "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true + "dev": true, + "peer": true }, "node_modules/mime": { "version": "2.5.2", @@ -22699,25 +19722,27 @@ "node": ">=6" } }, - "node_modules/min-document": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", - "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", - "dependencies": { - "dom-walk": "^0.1.0" + "node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "engines": { + "node": ">=4" } }, "node_modules/minimalistic-assert": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true + "dev": true, + "peer": true }, "node_modules/minimalistic-crypto-utils": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", - "dev": true + "dev": true, + "peer": true }, "node_modules/minimatch": { "version": "3.0.4", @@ -22739,7 +19764,6 @@ "version": "3.1.3", "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.3.tgz", "integrity": "sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg==", - "dev": true, "dependencies": { "yallist": "^4.0.0" }, @@ -22747,53 +19771,34 @@ "node": ">=8" } }, - "node_modules/minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", - "dev": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/minipass/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/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minizlib/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/mississippi": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", "dev": true, + "peer": true, "dependencies": { "concat-stream": "^1.5.0", "duplexify": "^3.4.2", @@ -22902,6 +19907,15 @@ "node": ">=6" } }, + "node_modules/mmjstool/node_modules/flow-parser": { + "version": "0.90.0", + "resolved": "https://registry.npmjs.org/flow-parser/-/flow-parser-0.90.0.tgz", + "integrity": "sha512-a6Ohgdzvf2e1/F8sI98qcPLtDIjLayRkRgAwrWHzHFMHCNq92jyRbRG0w5fGjs6xdI320Ud39HkI0Dk5OPs17g==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/mmjstool/node_modules/get-caller-file": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", @@ -23060,6 +20074,11 @@ "decamelize": "^1.2.0" } }, + "node_modules/mobx": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/mobx/-/mobx-4.3.1.tgz", + "integrity": "sha1-M05aq0kWsdQ/D682BaZLG0s8y40=" + }, "node_modules/mocha": { "version": "9.0.2", "resolved": "https://registry.npmjs.org/mocha/-/mocha-9.0.2.tgz", @@ -23312,6 +20331,7 @@ "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", "dev": true, + "peer": true, "dependencies": { "aproba": "^1.1.1", "copy-concurrently": "^1.0.0", @@ -23326,6 +20346,7 @@ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", "dev": true, + "peer": true, "dependencies": { "glob": "^7.1.3" }, @@ -23338,6 +20359,32 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, + "node_modules/multimatch": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-5.0.0.tgz", + "integrity": "sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA==", + "dependencies": { + "@types/minimatch": "^3.0.3", + "array-differ": "^3.0.0", + "array-union": "^2.1.0", + "arrify": "^2.0.1", + "minimatch": "^3.0.4" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/multimatch/node_modules/arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==", + "engines": { + "node": ">=8" + } + }, "node_modules/mustache": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/mustache/-/mustache-4.2.0.tgz", @@ -23524,6 +20571,30 @@ "ncp": "bin/ncp" } }, + "node_modules/needle": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-2.6.0.tgz", + "integrity": "sha512-KKYdza4heMsEfSWD7VPUIz3zX2XDwOyX2d+geb4vrERZMT5RMU6ujjaD+I5Yr54uZxQ2w6XRTAhHBbSCyovZBg==", + "dependencies": { + "debug": "^3.2.6", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" + } + }, + "node_modules/needle/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dependencies": { + "ms": "^2.1.1" + } + }, "node_modules/negotiator": { "version": "0.6.2", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", @@ -23542,16 +20613,6 @@ "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" }, - "node_modules/no-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", - "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", - "dev": true, - "dependencies": { - "lower-case": "^2.0.2", - "tslib": "^2.0.3" - } - }, "node_modules/nocache": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/nocache/-/nocache-2.1.0.tgz", @@ -23561,9 +20622,9 @@ } }, "node_modules/nock": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/nock/-/nock-13.1.0.tgz", - "integrity": "sha512-3N3DUY8XYrxxzWazQ+nSBpiaJ3q6gcpNh4gXovC/QBxrsvNp4tq+wsLHF6mJ3nrn3lPLn7KCJqKxy/9aD+0fdw==", + "version": "13.1.1", + "resolved": "https://registry.npmjs.org/nock/-/nock-13.1.1.tgz", + "integrity": "sha512-YKTR9MjfK3kS9/l4nuTxyYm30cgOExRHzkLNhL8nhEUyU4f8Za/dRxOqjhVT1vGs0svWo3dDnJTUX1qxYeWy5w==", "dependencies": { "debug": "^4.1.0", "json-stringify-safe": "^5.0.1", @@ -23603,6 +20664,7 @@ "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", "dev": true, + "peer": true, "dependencies": { "assert": "^1.1.1", "browserify-zlib": "^0.2.0", @@ -23634,6 +20696,7 @@ "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", "dev": true, + "peer": true, "dependencies": { "base64-js": "^1.0.2", "ieee754": "^1.1.4", @@ -23644,31 +20707,36 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true + "dev": true, + "peer": true }, "node_modules/node-libs-browser/node_modules/isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "dev": true, + "peer": true }, "node_modules/node-libs-browser/node_modules/path-browserify": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", - "dev": true + "dev": true, + "peer": true }, "node_modules/node-libs-browser/node_modules/punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true + "dev": true, + "peer": true }, "node_modules/node-libs-browser/node_modules/util": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", "dev": true, + "peer": true, "dependencies": { "inherits": "2.0.3" } @@ -23748,6 +20816,18 @@ "node": ">=6.0.0" } }, + "node_modules/node.extend": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node.extend/-/node.extend-2.0.2.tgz", + "integrity": "sha512-pDT4Dchl94/+kkgdwyS2PauDFjZG0Hk0IcHIB+LkW27HLDtdoeMxHTxZh39DYbPP8UflWXWj9JcdDozF+YDOpQ==", + "dependencies": { + "has": "^1.0.3", + "is": "^3.2.1" + }, + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/normalize-package-data": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", @@ -23777,15 +20857,6 @@ "node": ">=0.10.0" } }, - "node_modules/normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/normalize-svg-path": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/normalize-svg-path/-/normalize-svg-path-1.1.0.tgz", @@ -23794,6 +20865,17 @@ "svg-arc-to-cubic-bezier": "^3.0.0" } }, + "node_modules/normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/npm-run-path": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", @@ -23830,12 +20912,6 @@ "resolved": "https://registry.npmjs.org/nullthrows/-/nullthrows-1.1.1.tgz", "integrity": "sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==" }, - "node_modules/num2fraction": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", - "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", - "dev": true - }, "node_modules/number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", @@ -23887,6 +20963,14 @@ "node": ">=0.10.0" } }, + "node_modules/object-hash": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz", + "integrity": "sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==", + "engines": { + "node": ">= 6" + } + }, "node_modules/object-inspect": { "version": "1.10.3", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", @@ -23978,23 +21062,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/object.getownpropertydescriptors": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.2.tgz", - "integrity": "sha512-WtxeKSzfBjlzL+F9b7M7hewDzMwy+C8NRssHd1YrNlzHzIDrXcXiNOMrezdAEM4UXixgV+vvnyBeN7Rygl2ttQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2" - }, - "engines": { - "node": ">= 0.8" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/object.pick": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", @@ -24023,11 +21090,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/omggif": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/omggif/-/omggif-1.0.10.tgz", - "integrity": "sha512-LMJTtvgc/nugXj0Vcrrs68Mn2D1r0zf630VNtqtpI1FEO7e+O9FP4gqs9AcnBaSEeoHIPm28u6qgPR0oyEpGSw==" - }, "node_modules/on-finished": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", @@ -24059,7 +21121,6 @@ "version": "5.1.2", "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, "dependencies": { "mimic-fn": "^2.1.0" }, @@ -24074,7 +21135,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", - "dev": true, "dependencies": { "is-docker": "^2.0.0", "is-wsl": "^2.1.1" @@ -24184,20 +21244,12 @@ "node": ">=6" } }, - "node_modules/original": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz", - "integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==", - "dev": true, - "dependencies": { - "url-parse": "^1.4.3" - } - }, "node_modules/os-browserify": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", - "dev": true + "dev": true, + "peer": true }, "node_modules/os-locale": { "version": "3.1.0", @@ -24298,6 +21350,18 @@ "semver": "bin/semver" } }, + "node_modules/os-name": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-name/-/os-name-3.1.0.tgz", + "integrity": "sha512-h8L+8aNjNcMpo/mAIBPn5PXCM16iyPGjHNWo6U1YO8sJTMHtEtyczI6QJnLoplswm6goopQkqc7OAnjhWcugVg==", + "dependencies": { + "macos-release": "^2.2.0", + "windows-release": "^3.1.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", @@ -24306,11 +21370,13 @@ "node": ">=0.10.0" } }, - "node_modules/overlayscrollbars": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/overlayscrollbars/-/overlayscrollbars-1.13.1.tgz", - "integrity": "sha512-gIQfzgGgu1wy80EB4/6DaJGHMEGmizq27xHIESrzXq0Y/J0Ay1P3DWk6tuVmEPIZH15zaBlxeEJOqdJKmowHCQ==", - "dev": true + "node_modules/p-cancelable": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", + "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==", + "engines": { + "node": ">=8" + } }, "node_modules/p-defer": { "version": "1.0.0", @@ -24373,18 +21439,6 @@ "node": ">=8" } }, - "node_modules/p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "dev": true, - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/p-try": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", @@ -24393,6 +21447,165 @@ "node": ">=6" } }, + "node_modules/package-json": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", + "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", + "dependencies": { + "got": "^9.6.0", + "registry-auth-token": "^4.0.0", + "registry-url": "^5.0.0", + "semver": "^6.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/package-json/node_modules/@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/package-json/node_modules/@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dependencies": { + "defer-to-connect": "^1.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/package-json/node_modules/cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/package-json/node_modules/decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "dependencies": { + "mimic-response": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/package-json/node_modules/defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" + }, + "node_modules/package-json/node_modules/got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "dependencies": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/package-json/node_modules/got/node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/package-json/node_modules/got/node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/package-json/node_modules/json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=" + }, + "node_modules/package-json/node_modules/keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "dependencies": { + "json-buffer": "3.0.0" + } + }, + "node_modules/package-json/node_modules/normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/package-json/node_modules/p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/package-json/node_modules/responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "dependencies": { + "lowercase-keys": "^1.0.0" + } + }, + "node_modules/package-json/node_modules/responselike/node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/package-json/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", @@ -24403,22 +21616,13 @@ "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", "dev": true, + "peer": true, "dependencies": { "cyclist": "^1.0.1", "inherits": "^2.0.3", "readable-stream": "^2.1.5" } }, - "node_modules/param-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", - "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", - "dev": true, - "dependencies": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -24436,6 +21640,7 @@ "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", "dev": true, + "peer": true, "dependencies": { "asn1.js": "^5.2.0", "browserify-aes": "^1.0.0", @@ -24444,48 +21649,6 @@ "safe-buffer": "^5.1.1" } }, - "node_modules/parse-bmfont-ascii": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/parse-bmfont-ascii/-/parse-bmfont-ascii-1.0.6.tgz", - "integrity": "sha1-Eaw8P/WPfCAgqyJ2kHkQjU36AoU=" - }, - "node_modules/parse-bmfont-binary": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/parse-bmfont-binary/-/parse-bmfont-binary-1.0.6.tgz", - "integrity": "sha1-0Di0dtPp3Z2x4RoLDlOiJ5K2kAY=" - }, - "node_modules/parse-bmfont-xml": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/parse-bmfont-xml/-/parse-bmfont-xml-1.1.4.tgz", - "integrity": "sha512-bjnliEOmGv3y1aMEfREMBJ9tfL3WR0i0CKPj61DnSLaoxWR3nLrsQrEbCId/8rF4NyRF0cCqisSVXyQYWM+mCQ==", - "dependencies": { - "xml-parse-from-string": "^1.0.0", - "xml2js": "^0.4.5" - } - }, - "node_modules/parse-entities": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", - "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", - "dev": true, - "dependencies": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/parse-headers": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.3.tgz", - "integrity": "sha512-QhhZ+DCCit2Coi2vmAKbq5RGTRcQUOE2+REgv8vdyu7MnYx2eZztegqtTx99TZ86GTIwqiy3+4nQTWZ2tgmdCA==" - }, "node_modules/parse-json": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", @@ -24504,6 +21667,14 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/parse-link-header": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-link-header/-/parse-link-header-1.0.1.tgz", + "integrity": "sha1-vt/g0hGK64S+deewJUGeyKYRQKc=", + "dependencies": { + "xtend": "~4.0.1" + } + }, "node_modules/parse-passwd": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", @@ -24513,25 +21684,6 @@ "node": ">=0.10.0" } }, - "node_modules/parse-png": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/parse-png/-/parse-png-2.1.0.tgz", - "integrity": "sha512-Nt/a5SfCLiTnQAjx3fHlqp8hRgTL3z7kTQZzvIMS9uCAepnCyjpdEc6M/sz69WqMBdaDBw9sF1F1UaHROYzGkQ==", - "dependencies": { - "pngjs": "^3.3.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/parse-png/node_modules/pngjs": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", - "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==", - "engines": { - "node": ">=4.0.0" - } - }, "node_modules/parse-svg-path": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/parse-svg-path/-/parse-svg-path-0.1.2.tgz", @@ -24551,16 +21703,6 @@ "node": ">= 0.8" } }, - "node_modules/pascal-case": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", - "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", - "dev": true, - "dependencies": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "node_modules/pascalcase": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", @@ -24665,7 +21807,9 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", - "dev": true + "dev": true, + "optional": true, + "peer": true }, "node_modules/path-exists": { "version": "3.0.0", @@ -24687,7 +21831,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" } @@ -24697,17 +21840,10 @@ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, - "node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", - "dev": true - }, "node_modules/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, "engines": { "node": ">=8" } @@ -24717,6 +21853,7 @@ "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", "dev": true, + "peer": true, "dependencies": { "create-hash": "^1.1.2", "create-hmac": "^1.1.4", @@ -24728,10 +21865,15 @@ "node": ">=0.12" } }, - "node_modules/phin": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/phin/-/phin-2.9.3.tgz", - "integrity": "sha512-CzFr90qM24ju5f88quFC/6qohjC144rehe5n6DH900lgXmUe86+xCKc10ev56gRKC4/BkHUoG4uSiQgBiIXwDA==" + "node_modules/peek-stream": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/peek-stream/-/peek-stream-1.1.3.tgz", + "integrity": "sha512-FhJ+YbOSBb9/rIl2ZeE/QHEsWn7PqNYt8ARAY3kIgNGOk13g9FGyIY6JIl/xB/3TFRVoTv5as0l11weORrTekA==", + "dependencies": { + "buffer-from": "^1.0.0", + "duplexify": "^3.5.0", + "through2": "^2.0.3" + } }, "node_modules/picomatch": { "version": "2.3.0", @@ -24784,25 +21926,6 @@ "node": ">= 6" } }, - "node_modules/pixelmatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/pixelmatch/-/pixelmatch-4.0.2.tgz", - "integrity": "sha1-j0fc7FARtHe2fbA8JDvB8wheiFQ=", - "dependencies": { - "pngjs": "^3.0.0" - }, - "bin": { - "pixelmatch": "bin/pixelmatch" - } - }, - "node_modules/pixelmatch/node_modules/pngjs": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", - "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==", - "engines": { - "node": ">=4.0.0" - } - }, "node_modules/pkg-dir": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", @@ -24910,47 +22033,12 @@ "node": ">=6" } }, - "node_modules/pngjs": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-5.0.0.tgz", - "integrity": "sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==", + "node_modules/pluralize": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", + "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/pnp-webpack-plugin": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/pnp-webpack-plugin/-/pnp-webpack-plugin-1.5.0.tgz", - "integrity": "sha512-jd9olUr9D7do+RN8Wspzhpxhgp1n6Vd0NtQ4SFkmIACZoEL1nkyAdW9Ygrinjec0vgDcWjscFQQ1gDW8rsfKTg==", - "dev": true, - "dependencies": { - "ts-pnp": "^1.1.2" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/polished": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/polished/-/polished-4.1.3.tgz", - "integrity": "sha512-ocPAcVBUOryJEKe0z2KLd1l9EBa1r5mSwlKpExmrLzsnIzJo4axsoU9O2BjOTkDGDT4mZ0WFE5XKTlR3nLnZOA==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.14.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/popper.js": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", - "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", - "deprecated": "You can find the new Popper v2 at @popperjs/core, this package is dedicated to the legacy v1", - "dev": true, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/popperjs" + "node": ">=4" } }, "node_modules/posix-character-classes": { @@ -24961,219 +22049,6 @@ "node": ">=0.10.0" } }, - "node_modules/postcss": { - "version": "7.0.36", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", - "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", - "dev": true, - "dependencies": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, - "engines": { - "node": ">=6.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-flexbugs-fixes": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-4.2.1.tgz", - "integrity": "sha512-9SiofaZ9CWpQWxOwRh1b/r85KD5y7GgvsNt1056k6OYLvWUun0czCvogfJgylC22uJTwW1KzY3Gz65NZRlvoiQ==", - "dev": true, - "dependencies": { - "postcss": "^7.0.26" - } - }, - "node_modules/postcss-load-config": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.1.2.tgz", - "integrity": "sha512-/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw==", - "dev": true, - "dependencies": { - "cosmiconfig": "^5.0.0", - "import-cwd": "^2.0.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - } - }, - "node_modules/postcss-load-config/node_modules/cosmiconfig": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", - "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", - "dev": true, - "dependencies": { - "import-fresh": "^2.0.0", - "is-directory": "^0.3.1", - "js-yaml": "^3.13.1", - "parse-json": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-load-config/node_modules/import-fresh": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", - "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", - "dev": true, - "dependencies": { - "caller-path": "^2.0.0", - "resolve-from": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-load-config/node_modules/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, - "dependencies": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-load-config/node_modules/resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-loader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-3.0.0.tgz", - "integrity": "sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==", - "dev": true, - "dependencies": { - "loader-utils": "^1.1.0", - "postcss": "^7.0.0", - "postcss-load-config": "^2.0.0", - "schema-utils": "^1.0.0" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/postcss-loader/node_modules/schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "dependencies": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - }, - "engines": { - "node": ">= 4" - } - }, - "node_modules/postcss-modules-extract-imports": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", - "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", - "dev": true, - "dependencies": { - "postcss": "^7.0.5" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/postcss-modules-local-by-default": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", - "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", - "dev": true, - "dependencies": { - "icss-utils": "^4.1.1", - "postcss": "^7.0.32", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/postcss-modules-scope": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", - "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", - "dev": true, - "dependencies": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/postcss-modules-values": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", - "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", - "dev": true, - "dependencies": { - "icss-utils": "^4.0.0", - "postcss": "^7.0.6" - } - }, - "node_modules/postcss-selector-parser": { - "version": "6.0.6", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz", - "integrity": "sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==", - "dev": true, - "dependencies": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/postcss-value-parser": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", - "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==", - "dev": true - }, - "node_modules/postcss/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/postcss/node_modules/supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", @@ -25183,6 +22058,14 @@ "node": ">= 0.8.0" } }, + "node_modules/prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", + "engines": { + "node": ">=4" + } + }, "node_modules/prettier": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.3.2.tgz", @@ -25207,14 +22090,15 @@ "node": ">=6.0.0" } }, - "node_modules/pretty-error": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.2.tgz", - "integrity": "sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==", - "dev": true, - "dependencies": { - "lodash": "^4.17.20", - "renderkid": "^2.0.4" + "node_modules/pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/pretty-format": { @@ -25250,25 +22134,12 @@ "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz", "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==" }, - "node_modules/pretty-hrtime": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", - "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, - "node_modules/prismjs": { - "version": "1.24.1", - "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.24.1.tgz", - "integrity": "sha512-mNPsedLuk90RVJioIky8ANZEwYm5w9LcvCXrxHlwf4fNVSn8jEipMybMkWUyyF0JhnC+C4VcOVSBuHRKs1L5Ow==", - "dev": true - }, "node_modules/process": { "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "dev": true, + "peer": true, "engines": { "node": ">= 0.6.0" } @@ -25294,30 +22165,12 @@ "asap": "~2.0.6" } }, - "node_modules/promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", - "dev": true - }, - "node_modules/promise-polyfill": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/promise-polyfill/-/promise-polyfill-6.1.0.tgz", - "integrity": "sha1-36lpQ+qcEh/KTem1hoyznTRy4Fc=", - "dev": true - }, - "node_modules/promise.allsettled": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/promise.allsettled/-/promise.allsettled-1.0.4.tgz", - "integrity": "sha512-o73CbvQh/OnPFShxHcHxk0baXR2a1m4ozb85ha0H14VEoi/EJJLa9mnPfEWJx9RjA9MLfhdjZ8I6HhWtBa64Ag==", - "dev": true, + "node_modules/promise-deferred": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/promise-deferred/-/promise-deferred-2.0.3.tgz", + "integrity": "sha512-n10XaoznCzLfyPFOlEE8iurezHpxrYzyjgq/1eW9Wk1gJwur/N7BdBmjJYJpqMeMcXK4wEbzo2EvZQcqjYcKUQ==", "dependencies": { - "array.prototype.map": "^1.0.3", - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2", - "get-intrinsic": "^1.0.2", - "iterate-value": "^1.0.2" + "promise": "^7.3.1" }, "engines": { "node": ">= 0.4" @@ -25326,15 +22179,53 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/promise.prototype.finally": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/promise.prototype.finally/-/promise.prototype.finally-3.1.2.tgz", - "integrity": "sha512-A2HuJWl2opDH0EafgdjwEw7HysI8ff/n4lW4QEVBCUXFk9QeGecBWv0Deph0UmLe3tTNYegz8MOjsVuE6SMoJA==", - "dev": true, + "node_modules/promise-deferred/node_modules/promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", "dependencies": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.0", - "function-bind": "^1.1.1" + "asap": "~2.0.3" + } + }, + "node_modules/promise-fs": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/promise-fs/-/promise-fs-2.1.1.tgz", + "integrity": "sha512-43p7e4QzAQ3w6eyN0+gbBL7jXiZFWLWYITg9wIObqkBySu/a5K1EDcQ/S6UyB/bmiZWDA4NjTbcopKLTaKcGSw==", + "dependencies": { + "@octetstream/promisify": "2.0.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/promise-inflight": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", + "dev": true, + "peer": true + }, + "node_modules/promise-polyfill": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/promise-polyfill/-/promise-polyfill-6.1.0.tgz", + "integrity": "sha1-36lpQ+qcEh/KTem1hoyznTRy4Fc=", + "dev": true + }, + "node_modules/promise-queue": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/promise-queue/-/promise-queue-2.2.5.tgz", + "integrity": "sha1-L29ffA9tCBCelnZZx5uIqe1ek7Q=", + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/promiseback": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/promiseback/-/promiseback-2.0.3.tgz", + "integrity": "sha512-VZXdCwS0ppVNTIRfNsCvVwJAaP2b+pxQF7lM8DMWfmpNWyTxB6O5YNbzs+8z0ki/KIBHKHk308NTIl4kJUem3w==", + "dependencies": { + "is-callable": "^1.1.5", + "promise-deferred": "^2.0.3" }, "engines": { "node": ">= 0.4" @@ -25384,32 +22275,6 @@ "signal-exit": "^3.0.2" } }, - "node_modules/property-information": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-5.6.0.tgz", - "integrity": "sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==", - "dev": true, - "dependencies": { - "xtend": "^4.0.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, - "node_modules/proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dev": true, - "dependencies": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - }, - "engines": { - "node": ">= 0.10" - } - }, "node_modules/proxy-from-env": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", @@ -25424,8 +22289,7 @@ "node_modules/pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", - "dev": true + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" }, "node_modules/psl": { "version": "1.8.0", @@ -25438,6 +22302,7 @@ "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", "dev": true, + "peer": true, "dependencies": { "bn.js": "^4.1.0", "browserify-rsa": "^4.0.0", @@ -25451,7 +22316,8 @@ "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true + "dev": true, + "peer": true }, "node_modules/pump": { "version": "3.0.0", @@ -25466,7 +22332,6 @@ "version": "1.5.1", "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", - "dev": true, "dependencies": { "duplexify": "^3.6.0", "inherits": "^2.0.3", @@ -25477,7 +22342,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", - "dev": true, "dependencies": { "end-of-stream": "^1.1.0", "once": "^1.3.1" @@ -25492,19 +22356,15 @@ "node": ">=6" } }, - "node_modules/qs": { - "version": "6.10.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz", - "integrity": "sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==", - "dev": true, + "node_modules/pupa": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", + "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", "dependencies": { - "side-channel": "^1.0.4" + "escape-goat": "^2.0.0" }, "engines": { - "node": ">=0.6" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=8" } }, "node_modules/querystring": { @@ -25513,6 +22373,7 @@ "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", "deprecated": "The", "dev": true, + "peer": true, "engines": { "node": ">=0.4.x" } @@ -25522,6 +22383,7 @@ "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", "dev": true, + "peer": true, "engines": { "node": ">=0.4.x" } @@ -25531,11 +22393,18 @@ "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" }, + "node_modules/queue": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", + "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==", + "dependencies": { + "inherits": "~2.0.3" + } + }, "node_modules/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, "funding": [ { "type": "github", @@ -25551,6 +22420,17 @@ } ] }, + "node_modules/quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/r2": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/r2/-/r2-2.0.1.tgz", @@ -25561,17 +22441,12 @@ "typedarray-to-buffer": "^3.1.2" } }, - "node_modules/ramda": { - "version": "0.21.0", - "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.21.0.tgz", - "integrity": "sha1-oAGr7bP/YQd9T/HVd9RN536NCjU=", - "dev": true - }, "node_modules/randombytes": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", "dev": true, + "peer": true, "dependencies": { "safe-buffer": "^5.1.0" } @@ -25581,6 +22456,7 @@ "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", "dev": true, + "peer": true, "dependencies": { "randombytes": "^2.0.5", "safe-buffer": "^5.1.0" @@ -25594,35 +22470,26 @@ "node": ">= 0.6" } }, - "node_modules/raw-body": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", - "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", - "dev": true, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", "dependencies": { - "bytes": "3.1.0", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" }, - "engines": { - "node": ">= 0.8" + "bin": { + "rc": "cli.js" } }, - "node_modules/raw-loader": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-3.1.0.tgz", - "integrity": "sha512-lzUVMuJ06HF4rYveaz9Tv0WRlUMxJ0Y1hgSkkgg+50iEdaI0TthyEDe08KIHb0XsF6rn8WYTqPCaGTZg3sX+qA==", - "dev": true, - "dependencies": { - "loader-utils": "^1.1.0", - "schema-utils": "^2.0.1" - }, + "node_modules/rc/node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", "engines": { - "node": ">= 8.9.0" - }, - "peerDependencies": { - "webpack": "^4.3.0" + "node": ">=0.10.0" } }, "node_modules/react": { @@ -25637,590 +22504,6 @@ "node": ">=0.10.0" } }, - "node_modules/react-clientside-effect": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/react-clientside-effect/-/react-clientside-effect-1.2.5.tgz", - "integrity": "sha512-2bL8qFW1TGBHozGGbVeyvnggRpMjibeZM2536AKNENLECutp2yfs44IL8Hmpn8qjFQ2K7A9PnYf3vc7aQq/cPA==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.12.13" - }, - "peerDependencies": { - "react": "^15.3.0 || ^16.0.0 || ^17.0.0" - } - }, - "node_modules/react-colorful": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/react-colorful/-/react-colorful-5.2.3.tgz", - "integrity": "sha512-lAge4syxosZg9SX8fJiwOLd9ZJSW3poPBtypnz1aMiFoHsRnK5G3+INGGx9DGtsrso4h5uFYbiFpjAfWyK3Kag==", - "dev": true, - "peerDependencies": { - "react": ">=16.8.0", - "react-dom": ">=16.8.0" - } - }, - "node_modules/react-dev-utils": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-9.1.0.tgz", - "integrity": "sha512-X2KYF/lIGyGwP/F/oXgGDF24nxDA2KC4b7AFto+eqzc/t838gpSGiaU8trTqHXOohuLxxc5qi1eDzsl9ucPDpg==", - "dev": true, - "dependencies": { - "@babel/code-frame": "7.5.5", - "address": "1.1.2", - "browserslist": "4.7.0", - "chalk": "2.4.2", - "cross-spawn": "6.0.5", - "detect-port-alt": "1.1.6", - "escape-string-regexp": "1.0.5", - "filesize": "3.6.1", - "find-up": "3.0.0", - "fork-ts-checker-webpack-plugin": "1.5.0", - "global-modules": "2.0.0", - "globby": "8.0.2", - "gzip-size": "5.1.1", - "immer": "1.10.0", - "inquirer": "6.5.0", - "is-root": "2.1.0", - "loader-utils": "1.2.3", - "open": "^6.3.0", - "pkg-up": "2.0.0", - "react-error-overlay": "^6.0.3", - "recursive-readdir": "2.2.2", - "shell-quote": "1.7.2", - "sockjs-client": "1.4.0", - "strip-ansi": "5.2.0", - "text-table": "0.2.0" - }, - "engines": { - "node": ">=8.10" - } - }, - "node_modules/react-dev-utils/node_modules/@babel/code-frame": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.5.5.tgz", - "integrity": "sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw==", - "dev": true, - "dependencies": { - "@babel/highlight": "^7.0.0" - } - }, - "node_modules/react-dev-utils/node_modules/@nodelib/fs.stat": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", - "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/react-dev-utils/node_modules/ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/react-dev-utils/node_modules/array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "dev": true, - "dependencies": { - "array-uniq": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dev-utils/node_modules/browserslist": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.7.0.tgz", - "integrity": "sha512-9rGNDtnj+HaahxiVV38Gn8n8Lr8REKsel68v1sPFfIGEK6uSXTY3h9acgiT1dZVtOOUtifo/Dn8daDQ5dUgVsA==", - "dev": true, - "dependencies": { - "caniuse-lite": "^1.0.30000989", - "electron-to-chromium": "^1.3.247", - "node-releases": "^1.1.29" - }, - "bin": { - "browserslist": "cli.js" - } - }, - "node_modules/react-dev-utils/node_modules/cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "dependencies": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - }, - "engines": { - "node": ">=4.8" - } - }, - "node_modules/react-dev-utils/node_modules/define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "dependencies": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dev-utils/node_modules/dir-glob": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", - "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", - "dev": true, - "dependencies": { - "arrify": "^1.0.1", - "path-type": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/emojis-list": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", - "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, - "node_modules/react-dev-utils/node_modules/extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, - "dependencies": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dev-utils/node_modules/fast-glob": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", - "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", - "dev": true, - "dependencies": { - "@mrmlnc/readdir-enhanced": "^2.2.1", - "@nodelib/fs.stat": "^1.1.2", - "glob-parent": "^3.1.0", - "is-glob": "^4.0.0", - "merge2": "^1.2.3", - "micromatch": "^3.1.10" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/react-dev-utils/node_modules/find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "dependencies": { - "locate-path": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/react-dev-utils/node_modules/glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, - "dependencies": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - } - }, - "node_modules/react-dev-utils/node_modules/glob-parent/node_modules/is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "dependencies": { - "is-extglob": "^2.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dev-utils/node_modules/globby": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-8.0.2.tgz", - "integrity": "sha512-yTzMmKygLp8RUpG1Ymu2VXPSJQZjNAZPD4ywgYEaG7e4tBJeUQBO8OpXrf1RCNcEs5alsoJYPAMiIHP0cmeC7w==", - "dev": true, - "dependencies": { - "array-union": "^1.0.1", - "dir-glob": "2.0.0", - "fast-glob": "^2.0.2", - "glob": "^7.1.2", - "ignore": "^3.3.5", - "pify": "^3.0.0", - "slash": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/ignore": { - "version": "3.3.10", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", - "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", - "dev": true - }, - "node_modules/react-dev-utils/node_modules/inquirer": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.5.0.tgz", - "integrity": "sha512-scfHejeG/lVZSpvCXpsB4j/wQNPM5JC8kiElOI0OUTwmc1RTpXr4H32/HOlQHcZiYl2z2VElwuCVDRG8vFmbnA==", - "dev": true, - "dependencies": { - "ansi-escapes": "^3.2.0", - "chalk": "^2.4.2", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^3.0.3", - "figures": "^2.0.0", - "lodash": "^4.17.12", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rxjs": "^6.4.0", - "string-width": "^2.1.0", - "strip-ansi": "^5.1.0", - "through": "^2.3.6" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/react-dev-utils/node_modules/is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dev-utils/node_modules/is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "dependencies": { - "kind-of": "^6.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dev-utils/node_modules/is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "dependencies": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dev-utils/node_modules/is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "dependencies": { - "is-plain-object": "^2.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dev-utils/node_modules/is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "dependencies": { - "minimist": "^1.2.0" - }, - "bin": { - "json5": "lib/cli.js" - } - }, - "node_modules/react-dev-utils/node_modules/loader-utils": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", - "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^2.0.0", - "json5": "^1.0.1" - }, - "engines": { - "node": ">=4.0.0" - } - }, - "node_modules/react-dev-utils/node_modules/locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/react-dev-utils/node_modules/micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "dependencies": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dev-utils/node_modules/open": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/open/-/open-6.4.0.tgz", - "integrity": "sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==", - "dev": true, - "dependencies": { - "is-wsl": "^1.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/react-dev-utils/node_modules/p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "dependencies": { - "p-limit": "^2.0.0" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/react-dev-utils/node_modules/p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, - "dependencies": { - "pify": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz", - "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", - "dev": true, - "dependencies": { - "find-up": "^2.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/pkg-up/node_modules/find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "dependencies": { - "locate-path": "^2.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/pkg-up/node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "dependencies": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/pkg-up/node_modules/p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "dependencies": { - "p-try": "^1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/pkg-up/node_modules/p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "dependencies": { - "p-limit": "^1.1.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/react-dev-utils/node_modules/slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/react-dev-utils/node_modules/string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "dependencies": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/string-width/node_modules/ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/string-width/node_modules/strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "dependencies": { - "ansi-regex": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/react-dev-utils/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/react-devtools-core": { "version": "4.13.5", "resolved": "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-4.13.5.tgz", @@ -26230,114 +22513,19 @@ "ws": "^7" } }, - "node_modules/react-dom": { - "version": "16.14.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.14.0.tgz", - "integrity": "sha512-1gCeQXDLoIqMgqD3IO2Ah9bnf0w9kzhwN5q4FGnHZ67hBm9yePzB5JJAIQCc8x3pFnNlwFq4RidZggNAAkzWWw==", - "dev": true, - "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2", - "scheduler": "^0.19.1" - }, - "peerDependencies": { - "react": "^16.14.0" - } - }, - "node_modules/react-draggable": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/react-draggable/-/react-draggable-4.4.3.tgz", - "integrity": "sha512-jV4TE59MBuWm7gb6Ns3Q1mxX8Azffb7oTtDtBgFkxRvhDp38YAARmRplrj0+XGkhOJB5XziArX+4HUUABtyZ0w==", - "dev": true, - "dependencies": { - "classnames": "^2.2.5", - "prop-types": "^15.6.0" - } - }, - "node_modules/react-error-overlay": { - "version": "6.0.9", - "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.9.tgz", - "integrity": "sha512-nQTTcUu+ATDbrSD1BZHr5kgSD4oF8OFjxun8uAaL8RwPBacGBNPf/yAuVVdx17N8XNzRDMrZ9XcKZHCjPW+9ew==", - "dev": true - }, - "node_modules/react-fast-compare": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.0.tgz", - "integrity": "sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA==", - "dev": true - }, - "node_modules/react-focus-lock": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/react-focus-lock/-/react-focus-lock-2.5.1.tgz", - "integrity": "sha512-gOToRZKVEymGEjFaTRUKgJsdYQrNosoiK7yZnXnnd8bYew4vMzk3Rxb0Q4nyrGwsFuUmgQiSAulQirA0J+v4hA==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.0.0", - "focus-lock": "^0.9.1", - "prop-types": "^15.6.2", - "react-clientside-effect": "^1.2.2", - "use-callback-ref": "^1.2.1", - "use-sidecar": "^1.0.1" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0" - } - }, - "node_modules/react-helmet-async": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/react-helmet-async/-/react-helmet-async-1.0.9.tgz", - "integrity": "sha512-N+iUlo9WR3/u9qGMmP4jiYfaD6pe9IvDTapZLFJz2D3xlTlCM1Bzy4Ab3g72Nbajo/0ZyW+W9hdz8Hbe4l97pQ==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.12.5", - "invariant": "^2.2.4", - "prop-types": "^15.7.2", - "react-fast-compare": "^3.2.0", - "shallowequal": "^1.1.0" - }, - "peerDependencies": { - "react": "^16.6.0 || ^17.0.0", - "react-dom": "^16.6.0 || ^17.0.0" - } - }, - "node_modules/react-hotkeys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/react-hotkeys/-/react-hotkeys-2.0.0.tgz", - "integrity": "sha512-3n3OU8vLX/pfcJrR3xJ1zlww6KS1kEJt0Whxc4FiGV+MJrQ1mYSYI3qS/11d2MJDFm8IhOXMTFQirfu6AVOF6Q==", - "dev": true, - "dependencies": { - "prop-types": "^15.6.1" - }, - "peerDependencies": { - "react": ">= 0.14.0" - } - }, - "node_modules/react-input-autosize": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/react-input-autosize/-/react-input-autosize-3.0.0.tgz", - "integrity": "sha512-nL9uS7jEs/zu8sqwFE5MAPx6pPkNAriACQ2rGLlqmKr2sPGtN7TXTyDdQt4lbNXVx7Uzadb40x8qotIuru6Rhg==", - "dev": true, - "dependencies": { - "prop-types": "^15.5.8" - }, - "peerDependencies": { - "react": "^16.3.0 || ^17.0.0" - } - }, "node_modules/react-intl": { - "version": "5.17.7", - "resolved": "https://registry.npmjs.org/react-intl/-/react-intl-5.17.7.tgz", - "integrity": "sha512-j4/gp7HIfnOnXEp38qtv0PWN9X6zthWHIhWEaAGoOa6ywQlT9o6/gB0D72gwohyYBRVW1hH0pmht6KsRZBfEww==", + "version": "5.20.4", + "resolved": "https://registry.npmjs.org/react-intl/-/react-intl-5.20.4.tgz", + "integrity": "sha512-lYUL8hWkRHbpVtedGSjpQ1kK/x2AAGZHGgOHsU0SFDufHo2aS7xdvRcaxXD3PMVDuh53KcU+vTaun+bcrwKpbA==", "dependencies": { - "@formatjs/ecma402-abstract": "1.8.0", - "@formatjs/icu-messageformat-parser": "2.0.2", - "@formatjs/intl": "1.10.8", - "@formatjs/intl-displaynames": "5.1.0", - "@formatjs/intl-listformat": "6.1.0", + "@formatjs/ecma402-abstract": "1.9.4", + "@formatjs/icu-messageformat-parser": "2.0.7", + "@formatjs/intl": "1.13.2", + "@formatjs/intl-displaynames": "5.1.6", + "@formatjs/intl-listformat": "6.2.6", "@types/hoist-non-react-statics": "^3.3.1", "hoist-non-react-statics": "^3.3.2", - "intl-messageformat": "9.6.14", + "intl-messageformat": "9.7.1", "tslib": "^2.1.0" }, "peerDependencies": { @@ -26350,14 +22538,6 @@ } } }, - "node_modules/react-intl/node_modules/@formatjs/ecma402-abstract": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.8.0.tgz", - "integrity": "sha512-X+nxZcIQr0YfYNtw1ZkHjN3YSyi0fEmdAJqRzk24KwNvqLv7GmVfw70mf7ADnwOvkcrSaAdx24GfAqckGTv9ww==", - "dependencies": { - "tslib": "^2.1.0" - } - }, "node_modules/react-is": { "version": "16.13.1", "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", @@ -26366,8 +22546,7 @@ "node_modules/react-lifecycles-compat": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", - "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==", - "dev": true + "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" }, "node_modules/react-native": { "version": "0.64.2", @@ -26422,15 +22601,6 @@ "resolved": "https://registry.npmjs.org/react-native-android-open-settings/-/react-native-android-open-settings-1.3.0.tgz", "integrity": "sha512-h4FTWRtTLRVNS7RK4Bg2gAXe8G5bFZL8Jtmfk2rG2a/N/wJR+v1rAY2BxRkC48lQTqwQCIAQRbWgLVkJ8XmaLQ==" }, - "node_modules/react-native-animatable": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/react-native-animatable/-/react-native-animatable-1.3.3.tgz", - "integrity": "sha512-2ckIxZQAsvWn25Ho+DK3d1mXIgj7tITkrS4pYDvx96WyOttSvzzFeQnM2od0+FUMzILbdHDsDEqZvnz1DYNQ1w==", - "dev": true, - "dependencies": { - "prop-types": "^15.7.2" - } - }, "node_modules/react-native-button": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/react-native-button/-/react-native-button-3.0.1.tgz", @@ -26443,9 +22613,9 @@ } }, "node_modules/react-native-calendars": { - "version": "1.1263.0", - "resolved": "https://registry.npmjs.org/react-native-calendars/-/react-native-calendars-1.1263.0.tgz", - "integrity": "sha512-O9Pl9YeV3SVeXoXnuxgf4itl+hhJceLu4cCvxX+rcI/2FgIDGD30R/cblxGmSXznbLGj9SZtuJDXmG9Bnd7TEA==", + "version": "1.1264.0", + "resolved": "https://registry.npmjs.org/react-native-calendars/-/react-native-calendars-1.1264.0.tgz", + "integrity": "sha512-MX9Dy9xDtdmvGEA9rQWas1NVxvC2T6tEYrx7NvX8w0pWpYqsq5sVS4N+Y/vHBmcbiykStgrHTcWCP1bBLee3yg==", "dependencies": { "hoist-non-react-statics": "^3.3.1", "immutable": "^4.0.0-rc.12", @@ -26503,18 +22673,18 @@ } }, "node_modules/react-native-dotenv": { - "version": "2.5.5", - "resolved": "https://registry.npmjs.org/react-native-dotenv/-/react-native-dotenv-2.5.5.tgz", - "integrity": "sha512-ODaFNUX52ZYfBLJ8WSEm87nv+HrwxeEoZchuwsPyEWwsC4ARRhklfsKTf1dg09UpPS31zx5IUV431fLvcepCsA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/react-native-dotenv/-/react-native-dotenv-3.0.0.tgz", + "integrity": "sha512-qVw1Vjmg5HMHf8FK+9ta5NdQKcBi1PBnaqumBSYK+8TTbXtxhr8TEod2hLvEVCh4g8V5prjsk4yP4M3cy7Q1Rg==", "dev": true, "dependencies": { - "dotenv": "^8.0.0" + "dotenv": "^10.0.0" } }, "node_modules/react-native-dotenv/node_modules/dotenv": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz", - "integrity": "sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", + "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", "dev": true, "engines": { "node": ">=10" @@ -26550,11 +22720,11 @@ } }, "node_modules/react-native-fast-image": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/react-native-fast-image/-/react-native-fast-image-8.3.4.tgz", - "integrity": "sha512-LpzAdjUphihUpVEBn5fEv5AILe55rHav0YiZroPZ1rumKDhAl4u2cG01ku2Pb7l8sayjTsNu7FuURAlXUUDsow==", + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/react-native-fast-image/-/react-native-fast-image-8.3.6.tgz", + "integrity": "sha512-vjecBJXg9mCXGGfoUZ94SBEP1SYOkRN/w9SORH7D86PIQUVIqGbxW/Di3N79GI8Wsbay8qI7IWVHK7x26kIHbw==", "peerDependencies": { - "react": "^16.8.6", + "react": "^16.8.6 || ^17.0.0", "react-native": ">=0.60.0" } }, @@ -26644,48 +22814,16 @@ "react-native": ">=0.60.0" } }, - "node_modules/react-native-modal": { - "version": "11.10.0", - "resolved": "https://registry.npmjs.org/react-native-modal/-/react-native-modal-11.10.0.tgz", - "integrity": "sha512-syRYDJYSh16bR37R5EKU9T/wC+5bEOfF17IUqf5URdhbEDd+hxyMInC++l45E8oI+MtdOaEp9yAws5xDqk8dnA==", - "dev": true, - "dependencies": { - "prop-types": "^15.6.2", - "react-native-animatable": "1.3.3" - }, - "peerDependencies": { - "react": "*", - "react-native": "*" - } - }, - "node_modules/react-native-modal-datetime-picker": { - "version": "7.6.1", - "resolved": "https://registry.npmjs.org/react-native-modal-datetime-picker/-/react-native-modal-datetime-picker-7.6.1.tgz", - "integrity": "sha512-Ovq0p20Tbw6uWGV0VIDcCQ5qTaHxC9gEcYmB2a4fD1ksCSwCil9RJBEhC7VirvplvAGCKOKs3bblaKFmhiOBkg==", - "dev": true, - "dependencies": { - "prop-types": "^15.7.2", - "react-native-modal": "^11.0.2" - } - }, - "node_modules/react-native-modal-selector": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/react-native-modal-selector/-/react-native-modal-selector-2.0.3.tgz", - "integrity": "sha512-d1ejtVi40p34p3eDC55r93Qb1UWUq2oSuIU+GRBhbrcwNcxWbstRAU8Him2BYbns5g/jzyeOQOJzyEnKCMniBw==", - "dev": true, - "dependencies": { - "prop-types": "^15.5.10" - } - }, "node_modules/react-native-navigation": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/react-native-navigation/-/react-native-navigation-7.13.0.tgz", - "integrity": "sha512-/mdNuTlz9YVplJRB7Rv3g5cDgHCtw4RyG6ATdvrIJvMJOCU57ivCHuZkZDI/YQv7Txm48XD/EUkNahFFUATFZg==", + "version": "7.17.1", + "resolved": "https://registry.npmjs.org/react-native-navigation/-/react-native-navigation-7.17.1.tgz", + "integrity": "sha512-y2RWzjgoNq/8RkkRAeI5m/3x8QQCxm8R+4dWPnD96tb9wjVbFhz995L/cGF8o0+DwtBV5AutGOsl2CovV7Mvgg==", "dependencies": { "hoist-non-react-statics": "3.x.x", "lodash": "4.17.x", "prop-types": "15.x.x", "react-lifecycles-compat": "2.0.0", + "remx": "3.x.x", "tslib": "1.9.3" }, "bin": { @@ -26716,9 +22854,9 @@ } }, "node_modules/react-native-permissions": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/react-native-permissions/-/react-native-permissions-3.0.4.tgz", - "integrity": "sha512-GMd0l0TA/qupidGFfKAVNaboewQkJSW+l3ndwv1cu+tBGI+TRfJdMjg8Q714wn9roZlXsZ3z407qT2xPdQmGdg==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/react-native-permissions/-/react-native-permissions-3.0.5.tgz", + "integrity": "sha512-hcvLtHhTyOTXC+CCv79d4Qtdnj6PGuY5Ms0fhW8V6Et1T/mPvzO6++Du4jwEv/oHZ62qMWKUDq0/Tsh63QHuyQ==", "peerDependencies": { "react": ">=16.13.1", "react-native": ">=0.63.3", @@ -26754,9 +22892,9 @@ } }, "node_modules/react-native-redash": { - "version": "16.0.11", - "resolved": "https://registry.npmjs.org/react-native-redash/-/react-native-redash-16.0.11.tgz", - "integrity": "sha512-9yTpeabkAoWASzmhEkynNh1wDTrLVtbE+x9dOV1DI23vRa7k1HI+Y1jOUNOPyRG2ddgHampNq9iHtsLnkK4mtw==", + "version": "16.1.1", + "resolved": "https://registry.npmjs.org/react-native-redash/-/react-native-redash-16.1.1.tgz", + "integrity": "sha512-pD3GMNqRz/5bUnX0ni4MMOBlVwH2dJnd7u6M80VqYGI87IfcuP6Sn1z171r0nUUeYvJ7blJQs0OKKmTsJIbWew==", "dependencies": { "abs-svg-path": "^0.1.1", "normalize-svg-path": "^1.0.1", @@ -26779,9 +22917,9 @@ } }, "node_modules/react-native-share": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/react-native-share/-/react-native-share-6.2.1.tgz", - "integrity": "sha512-LtT29le01c3k/1sWoumZDyAxigq/JrW4skv8Ri7eySgfIeXrjgnkk1SSR3bt4NrRO74knVngPwtb5xv/UCPP3w==" + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/react-native-share/-/react-native-share-6.2.3.tgz", + "integrity": "sha512-dVWCQLPF3B64/XNuCjQx/hnq8Hz+llQ17srrsO3QdguChi1FRnfVfv2wcfr3hgL8whEWCz9CyDDvbqsmhUagDQ==" }, "node_modules/react-native-size-matters": { "version": "0.3.1", @@ -26924,31 +23062,22 @@ "integrity": "sha512-Ns7Bn9H/Tyw278+5SQx9oAblDZ7JixyzeOczcBK8dipQk2pD7Djkcfnf1nB/8RErAmMLL9iXgW0QHqiII8AhKw==" }, "node_modules/react-native-unimodules": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/react-native-unimodules/-/react-native-unimodules-0.13.3.tgz", - "integrity": "sha512-fjbNbAcvJHF8Ywqe77oveRW1WfaAKCQGV4a3Fxgpai17oNHq1LFwwKw0crFo0k7Njm5u7kCMVNbm9ZILNBfABQ==", + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/react-native-unimodules/-/react-native-unimodules-0.14.5.tgz", + "integrity": "sha512-AfgbkFUHIkpCytxd2UsNbE0cAmzKpgiQ+ma5iGlzK7fZelMJIv7XEuqFfKT4CZhYgetg5ZHf+ZNr140B/N1RgA==", "hasInstallScript": true, "dependencies": { - "@unimodules/core": "~7.1.0", - "@unimodules/react-native-adapter": "~6.2.2", + "@unimodules/core": "~7.1.1", + "@unimodules/react-native-adapter": "~6.3.4", "chalk": "^2.4.2", - "expo-asset": "~8.3.1", - "expo-constants": "~10.1.3", - "expo-file-system": "~11.0.2", - "expo-image-loader": "~2.1.1", - "expo-permissions": "~12.0.1", + "expo-asset": "~8.3.2", + "expo-constants": "~11.0.1", + "expo-file-system": "~11.1.3", + "expo-image-loader": "~2.2.0", + "expo-modules-core": "~0.2.0", "find-up": "~5.0.0", - "unimodules-app-loader": "~2.1.0", - "unimodules-barcode-scanner-interface": "~6.1.0", - "unimodules-camera-interface": "~6.1.0", - "unimodules-constants-interface": "~6.1.0", - "unimodules-face-detector-interface": "~6.1.0", - "unimodules-file-system-interface": "~6.1.0", - "unimodules-font-interface": "~6.1.0", - "unimodules-image-loader-interface": "~6.1.0", - "unimodules-permissions-interface": "~6.1.0", - "unimodules-sensors-interface": "~6.1.0", - "unimodules-task-manager-interface": "~6.1.0" + "unimodules-app-loader": "~2.2.0", + "unimodules-task-manager-interface": "~6.2.0" } }, "node_modules/react-native-unimodules/node_modules/find-up": { @@ -27046,9 +23175,9 @@ } }, "node_modules/react-native-webview": { - "version": "11.6.4", - "resolved": "https://registry.npmjs.org/react-native-webview/-/react-native-webview-11.6.4.tgz", - "integrity": "sha512-ahW9KL/iBooDRdQwBgPEWOl5Awjwvmo5FtV83WzbgUpQxDJ+ZRzZDpbmwcjLtd6R67yWg6dk1inqKQTrmkWiXQ==", + "version": "11.6.5", + "resolved": "https://registry.npmjs.org/react-native-webview/-/react-native-webview-11.6.5.tgz", + "integrity": "sha512-5U+hI8snkCrFeDy+bUTszwhzcJIenaaOy3ubhY77HZq7R0pFIZzRYWkT0YXe1ymRYW9mSU96nr6S0AVDk8qkMw==", "dependencies": { "escape-string-regexp": "2.0.0", "invariant": "2.2.4" @@ -27149,35 +23278,6 @@ "async-limiter": "~1.0.0" } }, - "node_modules/react-popper": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/react-popper/-/react-popper-2.2.5.tgz", - "integrity": "sha512-kxGkS80eQGtLl18+uig1UIf9MKixFSyPxglsgLBxlYnyDf65BiY9B3nZSc6C9XUNDgStROB0fMQlTEz1KxGddw==", - "dev": true, - "dependencies": { - "react-fast-compare": "^3.0.1", - "warning": "^4.0.2" - }, - "peerDependencies": { - "@popperjs/core": "^2.0.0", - "react": "^16.8.0 || ^17" - } - }, - "node_modules/react-popper-tooltip": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/react-popper-tooltip/-/react-popper-tooltip-3.1.1.tgz", - "integrity": "sha512-EnERAnnKRptQBJyaee5GJScWNUKQPDD2ywvzZyUjst/wj5U64C8/CnSYLNEmP2hG0IJ3ZhtDxE8oDN+KOyavXQ==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.12.5", - "@popperjs/core": "^2.5.4", - "react-popper": "^2.2.4" - }, - "peerDependencies": { - "react": "^16.6.0 || ^17.0.0", - "react-dom": "^16.6.0 || ^17.0.0" - } - }, "node_modules/react-refresh": { "version": "0.4.3", "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.4.3.tgz", @@ -27186,26 +23286,6 @@ "node": ">=0.10.0" } }, - "node_modules/react-select": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/react-select/-/react-select-3.2.0.tgz", - "integrity": "sha512-B/q3TnCZXEKItO0fFN/I0tWOX3WJvi/X2wtdffmwSQVRwg5BpValScTO1vdic9AxlUgmeSzib2hAZAwIUQUZGQ==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.4.4", - "@emotion/cache": "^10.0.9", - "@emotion/core": "^10.0.9", - "@emotion/css": "^10.0.9", - "memoize-one": "^5.0.0", - "prop-types": "^15.6.0", - "react-input-autosize": "^3.0.0", - "react-transition-group": "^4.3.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0", - "react-dom": "^16.8.0 || ^17.0.0" - } - }, "node_modules/react-shallow-renderer": { "version": "16.14.1", "resolved": "https://registry.npmjs.org/react-shallow-renderer/-/react-shallow-renderer-16.14.1.tgz", @@ -27219,22 +23299,6 @@ "react": "^16.0.0 || ^17.0.0" } }, - "node_modules/react-syntax-highlighter": { - "version": "13.5.3", - "resolved": "https://registry.npmjs.org/react-syntax-highlighter/-/react-syntax-highlighter-13.5.3.tgz", - "integrity": "sha512-crPaF+QGPeHNIblxxCdf2Lg936NAHKhNhuMzRL3F9ct6aYXL3NcZtCL0Rms9+qVo6Y1EQLdXGypBNSbPL/r+qg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.3.1", - "highlight.js": "^10.1.1", - "lowlight": "^1.14.0", - "prismjs": "^1.21.0", - "refractor": "^3.1.0" - }, - "peerDependencies": { - "react": ">= 0.14.0" - } - }, "node_modules/react-test-renderer": { "version": "17.0.2", "resolved": "https://registry.npmjs.org/react-test-renderer/-/react-test-renderer-17.0.2.tgz", @@ -27266,39 +23330,6 @@ "object-assign": "^4.1.1" } }, - "node_modules/react-textarea-autosize": { - "version": "8.3.3", - "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.3.3.tgz", - "integrity": "sha512-2XlHXK2TDxS6vbQaoPbMOfQ8GK7+irc2fVK6QFIcC8GOnH3zI/v481n+j1L0WaPVvKxwesnY93fEfH++sus2rQ==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.10.2", - "use-composed-ref": "^1.0.0", - "use-latest": "^1.0.0" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0" - } - }, - "node_modules/react-transition-group": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.2.tgz", - "integrity": "sha512-/RNYfRAMlZwDSr6z4zNKV6xu53/e2BuaBbGhbyYIXTrmgu/bGHzmqOs7mJSJBHy9Ud+ApHx3QjrkKSp1pxvlFg==", - "dev": true, - "dependencies": { - "@babel/runtime": "^7.5.5", - "dom-helpers": "^5.0.1", - "loose-envify": "^1.4.0", - "prop-types": "^15.6.2" - }, - "peerDependencies": { - "react": ">=16.6.0", - "react-dom": ">=16.6.0" - } - }, "node_modules/read-env": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/read-env/-/read-env-1.3.0.tgz", @@ -27380,6 +23411,7 @@ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", "dev": true, + "optional": true, "dependencies": { "graceful-fs": "^4.1.11", "micromatch": "^3.1.10", @@ -27394,6 +23426,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", "dev": true, + "optional": true, "dependencies": { "is-descriptor": "^1.0.2", "isobject": "^3.0.1" @@ -27407,6 +23440,7 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", "dev": true, + "optional": true, "dependencies": { "assign-symbols": "^1.0.0", "is-extendable": "^1.0.1" @@ -27420,6 +23454,7 @@ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, + "optional": true, "dependencies": { "kind-of": "^6.0.0" }, @@ -27432,6 +23467,7 @@ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, + "optional": true, "dependencies": { "kind-of": "^6.0.0" }, @@ -27444,6 +23480,7 @@ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, + "optional": true, "dependencies": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", @@ -27458,6 +23495,7 @@ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "dev": true, + "optional": true, "dependencies": { "is-plain-object": "^2.0.4" }, @@ -27470,6 +23508,7 @@ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "dev": true, + "optional": true, "dependencies": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", @@ -27522,33 +23561,6 @@ "node": ">= 0.10" } }, - "node_modules/recursive-readdir": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz", - "integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==", - "dev": true, - "dependencies": { - "minimatch": "3.0.4" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/refractor": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/refractor/-/refractor-3.4.0.tgz", - "integrity": "sha512-dBeD02lC5eytm9Gld2Mx0cMcnR+zhSnsTfPpWqFaMgUMJfC9A6bcN3Br/NaXrnBJcuxnLFR90k1jrkaSyV8umg==", - "dev": true, - "dependencies": { - "hastscript": "^6.0.0", - "parse-entities": "^2.0.0", - "prismjs": "~1.24.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/regenerate": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", @@ -27656,6 +23668,28 @@ "node": ">=4" } }, + "node_modules/registry-auth-token": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.1.tgz", + "integrity": "sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw==", + "dependencies": { + "rc": "^1.2.8" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/registry-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", + "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "dependencies": { + "rc": "^1.2.8" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/regjsgen": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz", @@ -27680,132 +23714,51 @@ "jsesc": "bin/jsesc" } }, - "node_modules/relateurl": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", - "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, "node_modules/remove-trailing-separator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" }, - "node_modules/renderkid": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.7.tgz", - "integrity": "sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ==", - "dev": true, + "node_modules/remx": { + "version": "3.0.611", + "resolved": "https://registry.npmjs.org/remx/-/remx-3.0.611.tgz", + "integrity": "sha512-CIVaNrwIkKRpmYFnA/OOI49T8OBN6NIHUOzefK3G3VEb4mvu3EblMqeBUbnAuY17KahYEE8xtsBR5pxcWBps6Q==", "dependencies": { - "css-select": "^4.1.3", - "dom-converter": "^0.2.0", - "htmlparser2": "^6.1.0", - "lodash": "^4.17.21", - "strip-ansi": "^3.0.1" + "hoist-non-react-statics": "^2.5.5", + "lodash.isfunction": "^3.0.9", + "lodash.isobjectlike": "^4.0.0", + "mobx": "4.0.0 - 4.3.1", + "mobx-react": "^5.2.3", + "snyk": "^1.192.3" + }, + "peerDependencies": { + "react": "x" } }, - "node_modules/renderkid/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } + "node_modules/remx/node_modules/hoist-non-react-statics": { + "version": "2.5.5", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz", + "integrity": "sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw==" }, - "node_modules/renderkid/node_modules/css-select": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.1.3.tgz", - "integrity": "sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA==", - "dev": true, + "node_modules/remx/node_modules/mobx-react": { + "version": "5.4.4", + "resolved": "https://registry.npmjs.org/mobx-react/-/mobx-react-5.4.4.tgz", + "integrity": "sha512-2mTzpyEjVB/RGk2i6KbcmP4HWcAUFox5ZRCrGvSyz49w20I4C4qql63grPpYrS9E9GKwgydBHQlA4y665LuRCQ==", "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^5.0.0", - "domhandler": "^4.2.0", - "domutils": "^2.6.0", - "nth-check": "^2.0.0" + "hoist-non-react-statics": "^3.0.0", + "react-lifecycles-compat": "^3.0.2" }, - "funding": { - "url": "https://github.com/sponsors/fb55" + "peerDependencies": { + "mobx": "^4.0.0 || ^5.0.0", + "react": "^0.13.0 || ^0.14.0 || ^15.0.0 || ^16.0.0" } }, - "node_modules/renderkid/node_modules/css-what": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.0.1.tgz", - "integrity": "sha512-FYDTSHb/7KXsWICVsxdmiExPjCfRC4qRFBdVwv7Ax9hMnvMmEjP9RfxTEZ3qPZGmADDn2vAKSo9UcN1jKVYscg==", - "dev": true, - "engines": { - "node": ">= 6" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/renderkid/node_modules/dom-serializer": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", - "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", - "dev": true, + "node_modules/remx/node_modules/mobx-react/node_modules/hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", "dependencies": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/renderkid/node_modules/domelementtype": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", - "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ] - }, - "node_modules/renderkid/node_modules/domutils": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.7.0.tgz", - "integrity": "sha512-8eaHa17IwJUPAiB+SoTYBo5mCdeMgdcAoXJ59m6DT1vw+5iLS3gNoqYaRowaBKtGVrOF1Jz4yDTgYKLK2kvfJg==", - "dev": true, - "dependencies": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/renderkid/node_modules/nth-check": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.0.tgz", - "integrity": "sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q==", - "dev": true, - "dependencies": { - "boolbase": "^1.0.0" - }, - "funding": { - "url": "https://github.com/fb55/nth-check?sponsor=1" - } - }, - "node_modules/renderkid/node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" + "react-is": "^16.7.0" } }, "node_modules/repeat-element": { @@ -27856,12 +23809,6 @@ "integrity": "sha512-qUgANli03jjAyGlnbYVAV5vvnOmJnODyABz51RdBN7M4WaVu8mecZWgyQNkG8Yqe3KRGRt0l4K4B3XVEULC4CA==", "dev": true }, - "node_modules/resize-observer-polyfill": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", - "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==", - "dev": true - }, "node_modules/resolve": { "version": "1.20.0", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", @@ -27874,6 +23821,11 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/resolve-alpn": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.1.2.tgz", + "integrity": "sha512-8OyfzhAtA32LVUsJSke3auIyINcwdh5l3cvYKdKO0nvsYSKuiLfTM5i78PJswFPT8y6cPW+L1v6/hE95chcpDA==" + }, "node_modules/resolve-cwd": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", @@ -27943,6 +23895,14 @@ "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", "deprecated": "https://github.com/lydell/resolve-url#deprecated" }, + "node_modules/responselike": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.0.tgz", + "integrity": "sha512-xH48u3FTB9VsZw7R+vvgaKeLKzT6jOogbQhEe/jewwnZgzPcnyWui2Av6JpoYZF/91uueC+lqhWqeURw5/qhCw==", + "dependencies": { + "lowercase-keys": "^2.0.0" + } + }, "node_modules/restore-cursor": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", @@ -27995,7 +23955,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" @@ -28005,7 +23964,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" }, @@ -28021,36 +23979,12 @@ "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", "dev": true, + "peer": true, "dependencies": { "hash-base": "^3.0.0", "inherits": "^2.0.1" } }, - "node_modules/rn-fetch-blob": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/rn-fetch-blob/-/rn-fetch-blob-0.12.0.tgz", - "integrity": "sha512-+QnR7AsJ14zqpVVUbzbtAjq0iI8c9tCg49tIoKO2ezjzRunN7YL6zFSFSWZm6d+mE/l9r+OeDM3jmb2tBb2WbA==", - "dependencies": { - "base-64": "0.1.0", - "glob": "7.0.6" - } - }, - "node_modules/rn-fetch-blob/node_modules/glob": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.6.tgz", - "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.2", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - } - }, "node_modules/rn-placeholder": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/rn-placeholder/-/rn-placeholder-3.0.3.tgz", @@ -28060,6 +23994,27 @@ "react-native": "^0.63.2" } }, + "node_modules/roarr": { + "version": "2.15.4", + "resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.4.tgz", + "integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==", + "dependencies": { + "boolean": "^3.0.1", + "detect-node": "^2.0.4", + "globalthis": "^1.0.1", + "json-stringify-safe": "^5.0.1", + "semver-compare": "^1.0.0", + "sprintf-js": "^1.1.2" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/roarr/node_modules/sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==" + }, "node_modules/rsvp": { "version": "4.8.5", "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", @@ -28080,7 +24035,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", @@ -28104,6 +24058,7 @@ "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", "dev": true, + "peer": true, "dependencies": { "aproba": "^1.1.1" } @@ -28384,16 +24339,6 @@ "node": ">=10" } }, - "node_modules/scheduler": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.19.1.tgz", - "integrity": "sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA==", - "dev": true, - "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" - } - }, "node_modules/schema-utils": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", @@ -28412,13 +24357,6 @@ "url": "https://opencollective.com/webpack" } }, - "node_modules/select": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz", - "integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0=", - "dev": true, - "optional": true - }, "node_modules/semver": { "version": "7.3.5", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", @@ -28433,6 +24371,30 @@ "node": ">=10" } }, + "node_modules/semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=" + }, + "node_modules/semver-diff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", + "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "dependencies": { + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/semver-diff/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/semver/node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -28536,34 +24498,6 @@ "randombytes": "^2.1.0" } }, - "node_modules/serve-favicon": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/serve-favicon/-/serve-favicon-2.5.0.tgz", - "integrity": "sha1-k10kDN/g9YBTB/3+ln2IlCosvPA=", - "dev": true, - "dependencies": { - "etag": "~1.8.1", - "fresh": "0.5.2", - "ms": "2.1.1", - "parseurl": "~1.3.2", - "safe-buffer": "5.1.1" - }, - "engines": { - "node": ">= 0.8.0" - } - }, - "node_modules/serve-favicon/node_modules/ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - }, - "node_modules/serve-favicon/node_modules/safe-buffer": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", - "dev": true - }, "node_modules/serve-static": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", @@ -28583,6 +24517,14 @@ "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" }, + "node_modules/set-immediate-shim": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", + "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/set-value": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", @@ -28612,6 +24554,7 @@ "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", "dev": true, + "peer": true, "dependencies": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" @@ -28639,23 +24582,11 @@ "node": ">=8" } }, - "node_modules/shallow-equal": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/shallow-equal/-/shallow-equal-1.2.1.tgz", - "integrity": "sha512-S4vJDjHHMBaiZuT9NPb616CSmLf618jawtv3sufLl6ivK8WocjAo58cXwbRV1cgqxH0Qbv+iUt6m05eqEa2IRA==", - "dev": true - }, "node_modules/shallow-equals": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/shallow-equals/-/shallow-equals-1.0.0.tgz", "integrity": "sha1-JLdL8cY0wR7Uxxgqbfb7MA3OQ5A=" }, - "node_modules/shallowequal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", - "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==", - "dev": true - }, "node_modules/shebang-command": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", @@ -28696,14 +24627,6 @@ "node": ">=4" } }, - "node_modules/shelljs/node_modules/interpret": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", - "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", - "engines": { - "node": ">= 0.10" - } - }, "node_modules/shellwords": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", @@ -28758,20 +24681,6 @@ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" }, - "node_modules/simplebar": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/simplebar/-/simplebar-4.2.3.tgz", - "integrity": "sha512-9no0pK7/1y+8/oTF3sy/+kx0PjQ3uk4cYwld5F1CJGk2gx+prRyUq8GRfvcVLq5niYWSozZdX73a2wIr1o9l/g==", - "dev": true, - "dependencies": { - "can-use-dom": "^0.1.0", - "core-js": "^3.0.1", - "lodash.debounce": "^4.0.8", - "lodash.memoize": "^4.1.2", - "lodash.throttle": "^4.1.1", - "resize-observer-polyfill": "^1.5.1" - } - }, "node_modules/sisteransi": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", @@ -28919,29 +24828,1116 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" }, - "node_modules/sockjs-client": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.4.0.tgz", - "integrity": "sha512-5zaLyO8/nri5cua0VtOrFXBPK1jbL4+1cebT/mmKA1E1ZXOvJrII75bPu0l0k843G/+iAbhEqzyKr0w/eCCj7g==", - "dev": true, + "node_modules/snyk": { + "version": "1.657.0", + "resolved": "https://registry.npmjs.org/snyk/-/snyk-1.657.0.tgz", + "integrity": "sha512-wTJ5k49SopXL9Sm8Ltlp+HVVpakpaxkt//IRzOTEN75CMd/NpLtCSD34oAbUfo+tTrN1Ig8MSXGk5Z3XQm2d7w==", "dependencies": { - "debug": "^3.2.5", - "eventsource": "^1.0.7", - "faye-websocket": "~0.11.1", - "inherits": "^2.0.3", - "json3": "^3.3.2", - "url-parse": "^1.4.3" + "@open-policy-agent/opa-wasm": "^1.2.0", + "@snyk/cli-interface": "2.11.0", + "@snyk/cloud-config-parser": "^1.9.2", + "@snyk/code-client": "3.9.0", + "@snyk/dep-graph": "^1.27.1", + "@snyk/fix": "1.650.0", + "@snyk/gemfile": "1.2.0", + "@snyk/graphlib": "^2.1.9-patch.3", + "@snyk/inquirer": "^7.3.3-patch", + "@snyk/snyk-cocoapods-plugin": "2.5.2", + "@snyk/snyk-hex-plugin": "1.1.4", + "abbrev": "^1.1.1", + "ansi-escapes": "3.2.0", + "chalk": "^2.4.2", + "cli-spinner": "0.2.10", + "configstore": "^5.0.1", + "debug": "^4.1.1", + "diff": "^4.0.1", + "glob": "^7.1.7", + "global-agent": "^2.1.12", + "lodash.assign": "^4.2.0", + "lodash.camelcase": "^4.3.0", + "lodash.clonedeep": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.flattendeep": "^4.4.0", + "lodash.get": "^4.4.2", + "lodash.groupby": "^4.6.0", + "lodash.isempty": "^4.4.0", + "lodash.isobject": "^3.0.2", + "lodash.map": "^4.6.0", + "lodash.merge": "^4.6.2", + "lodash.omit": "^4.5.0", + "lodash.orderby": "^4.6.0", + "lodash.sortby": "^4.7.0", + "lodash.uniq": "^4.5.0", + "lodash.upperfirst": "^4.3.1", + "lodash.values": "^4.3.0", + "micromatch": "4.0.2", + "needle": "2.6.0", + "open": "^7.0.3", + "ora": "5.4.0", + "os-name": "^3.0.0", + "promise-queue": "^2.2.5", + "proxy-from-env": "^1.0.0", + "rimraf": "^2.6.3", + "semver": "^6.0.0", + "snyk-config": "4.0.0", + "snyk-cpp-plugin": "2.2.1", + "snyk-docker-plugin": "4.21.3", + "snyk-go-plugin": "1.17.0", + "snyk-gradle-plugin": "3.16.0", + "snyk-module": "3.1.0", + "snyk-mvn-plugin": "2.26.1", + "snyk-nodejs-lockfile-parser": "1.35.0", + "snyk-nuget-plugin": "1.21.1", + "snyk-php-plugin": "1.9.2", + "snyk-policy": "1.19.0", + "snyk-python-plugin": "1.19.11", + "snyk-resolve": "1.1.0", + "snyk-resolve-deps": "4.7.2", + "snyk-sbt-plugin": "2.11.2", + "snyk-try-require": "1.3.1", + "source-map-support": "^0.5.11", + "strip-ansi": "^5.2.0", + "tar": "^6.1.0", + "tempy": "^1.0.1", + "update-notifier": "^5.1.0", + "uuid": "^8.3.2", + "wrap-ansi": "^5.1.0", + "yaml": "^1.10.2" + }, + "bin": { + "snyk": "dist/cli/index.js" + }, + "engines": { + "node": ">=10" } }, - "node_modules/sockjs-client/node_modules/debug": { + "node_modules/snyk-config": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/snyk-config/-/snyk-config-4.0.0.tgz", + "integrity": "sha512-E6jNe0oUjjzVASWBOAc/mA23DhbzABDF9MI6UZvl0gylh2NSXSXw2/LjlqMNOKL2c1qkbSkzLOdIX5XACoLCAQ==", + "dependencies": { + "async": "^3.2.0", + "debug": "^4.1.1", + "lodash.merge": "^4.6.2", + "minimist": "^1.2.5" + } + }, + "node_modules/snyk-config/node_modules/async": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.0.tgz", + "integrity": "sha512-TR2mEZFVOj2pLStYxLht7TyfuRzaydfpxr3k9RpHIzMgw7A64dzsdqCxH1WJyQdoe8T10nDXd9wnEigmiuHIZw==" + }, + "node_modules/snyk-cpp-plugin": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/snyk-cpp-plugin/-/snyk-cpp-plugin-2.2.1.tgz", + "integrity": "sha512-NFwVLMCqKTocY66gcim0ukF6e31VRDJqDapg5sy3vCHqlD1OCNUXSK/aI4VQEEndDrsnFmQepsL5KpEU0dDRIQ==", + "dependencies": { + "@snyk/dep-graph": "^1.19.3", + "chalk": "^4.1.0", + "debug": "^4.1.1", + "hosted-git-info": "^3.0.7", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-cpp-plugin/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/snyk-cpp-plugin/node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/snyk-cpp-plugin/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-cpp-plugin/node_modules/hosted-git-info": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz", + "integrity": "sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/snyk-cpp-plugin/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/snyk-cpp-plugin/node_modules/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-cpp-plugin/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/snyk-docker-plugin": { + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-4.21.3.tgz", + "integrity": "sha512-u54T2ooQatEWeeFRgzpEl6PpyzEHjNU78VkMg2FarNzuNPdmVsE/Wb6rs8JsB8shTLS6jWp9XCY2zmkpr9Zgag==", + "dependencies": { + "@snyk/dep-graph": "^1.28.0", + "@snyk/rpm-parser": "^2.0.0", + "@snyk/snyk-docker-pull": "3.6.2", + "chalk": "^2.4.2", + "debug": "^4.1.1", + "docker-modem": "2.1.3", + "dockerfile-ast": "0.2.1", + "elfy": "^1.0.0", + "event-loop-spinner": "^2.0.0", + "gunzip-maybe": "^1.4.2", + "mkdirp": "^1.0.4", + "semver": "^7.3.4", + "snyk-nodejs-lockfile-parser": "1.35.1", + "tar-stream": "^2.1.0", + "tmp": "^0.2.1", + "tslib": "^1", + "uuid": "^8.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-docker-plugin/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "node_modules/snyk-docker-plugin/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/snyk-docker-plugin/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/snyk-docker-plugin/node_modules/snyk-nodejs-lockfile-parser": { + "version": "1.35.1", + "resolved": "https://registry.npmjs.org/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.35.1.tgz", + "integrity": "sha512-NiXN+MdWaZxseXVDgCM4CZ5aBgI5LloUbwUP9c3oMZDih9Zj6Vf5edDcL8eM3BGl+a6LceJzB6w+xrIqKCXgQA==", + "dependencies": { + "@snyk/graphlib": "2.1.9-patch.3", + "@yarnpkg/core": "^2.4.0", + "@yarnpkg/lockfile": "^1.1.0", + "event-loop-spinner": "^2.0.0", + "js-yaml": "^4.1.0", + "lodash.clonedeep": "^4.5.0", + "lodash.flatmap": "^4.5.0", + "lodash.isempty": "^4.4.0", + "lodash.set": "^4.3.2", + "lodash.topairs": "^4.3.0", + "snyk-config": "^4.0.0-rc.2", + "tslib": "^1.9.3", + "uuid": "^8.3.0" + }, + "bin": { + "parse-nodejs-lockfile": "bin/index.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/snyk-docker-plugin/node_modules/tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dependencies": { + "rimraf": "^3.0.0" + }, + "engines": { + "node": ">=8.17.0" + } + }, + "node_modules/snyk-docker-plugin/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/snyk-docker-plugin/node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/snyk-go-parser": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/snyk-go-parser/-/snyk-go-parser-1.4.1.tgz", + "integrity": "sha512-StU3uHB85VMEkcgXta63M0Fgd+9cs5sMCjQXTBoYTdE4dxarPn7U67yCuwkRRdZdny1ZXtzfY8LKns9i0+dy9w==", + "dependencies": { + "toml": "^3.0.0", + "tslib": "^1.10.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/snyk-go-parser/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/snyk-go-plugin": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/snyk-go-plugin/-/snyk-go-plugin-1.17.0.tgz", + "integrity": "sha512-1jAYPRgMapO2BYL+HWsUq5gsAiDGmI0Pn7omc0lk24tcUOMhUB+1hb0u9WBMNzHvXBjevBkjOctjpnt2hMKN6Q==", + "dependencies": { + "@snyk/dep-graph": "^1.23.1", + "@snyk/graphlib": "2.1.9-patch.3", + "debug": "^4.1.1", + "snyk-go-parser": "1.4.1", + "tmp": "0.2.1", + "tslib": "^1.10.0" + } + }, + "node_modules/snyk-go-plugin/node_modules/tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dependencies": { + "rimraf": "^3.0.0" + }, + "engines": { + "node": ">=8.17.0" + } + }, + "node_modules/snyk-go-plugin/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/snyk-gradle-plugin": { + "version": "3.16.0", + "resolved": "https://registry.npmjs.org/snyk-gradle-plugin/-/snyk-gradle-plugin-3.16.0.tgz", + "integrity": "sha512-PQegG8GOweJvUDSroysO1E0RK3MxphSUvNG5siRqGHJQ8s+dw9DddYN8kMn5+pTrfzo6zddgDPJxjqsfNR+NIw==", + "dependencies": { + "@snyk/cli-interface": "2.11.0", + "@snyk/dep-graph": "^1.28.0", + "@snyk/java-call-graph-builder": "1.23.0", + "@types/debug": "^4.1.4", + "chalk": "^3.0.0", + "debug": "^4.1.1", + "tmp": "0.2.1", + "tslib": "^2.0.0" + } + }, + "node_modules/snyk-gradle-plugin/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/snyk-gradle-plugin/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-gradle-plugin/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-gradle-plugin/node_modules/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-gradle-plugin/node_modules/tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dependencies": { + "rimraf": "^3.0.0" + }, + "engines": { + "node": ">=8.17.0" + } + }, + "node_modules/snyk-module": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/snyk-module/-/snyk-module-3.1.0.tgz", + "integrity": "sha512-HHuOYEAACpUpkFgU8HT57mmxmonaJ4O3YADoSkVhnhkmJ+AowqZyJOau703dYHNrq2DvQ7qYw81H7yyxS1Nfjw==", + "dependencies": { + "debug": "^4.1.1", + "hosted-git-info": "^3.0.4" + } + }, + "node_modules/snyk-module/node_modules/hosted-git-info": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz", + "integrity": "sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/snyk-module/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/snyk-module/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/snyk-mvn-plugin": { + "version": "2.26.1", + "resolved": "https://registry.npmjs.org/snyk-mvn-plugin/-/snyk-mvn-plugin-2.26.1.tgz", + "integrity": "sha512-DCs53aRT/uK2e1jXzeVG2d+Ll0bmY/YHL+jEYaWJko8XwGoVwqCrVOkRyzXd2KOZUk3gpD6MaxIrBWsc8RJzRA==", + "dependencies": { + "@snyk/cli-interface": "2.11.0", + "@snyk/dep-graph": "^1.23.1", + "@snyk/java-call-graph-builder": "1.21.0", + "debug": "^4.1.1", + "glob": "^7.1.6", + "needle": "^2.5.0", + "tmp": "^0.1.0", + "tslib": "1.11.1" + } + }, + "node_modules/snyk-mvn-plugin/node_modules/@snyk/java-call-graph-builder": { + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/@snyk/java-call-graph-builder/-/java-call-graph-builder-1.21.0.tgz", + "integrity": "sha512-i0c4N0+pYjpXEgqAkFniM3Q9YANvy+RtbbkQMPIvdEw41+XJISfEHzZ968ZmGWcoi480cgo5t9oxZEadFuHzyg==", + "dependencies": { + "@snyk/graphlib": "2.1.9-patch.3", + "ci-info": "^2.0.0", + "debug": "^4.1.1", + "glob": "^7.1.6", + "jszip": "^3.2.2", + "needle": "^2.3.3", + "progress": "^2.0.3", + "snyk-config": "^4.0.0-rc.2", + "source-map-support": "^0.5.7", + "temp-dir": "^2.0.0", + "tmp": "^0.2.1", + "tslib": "^1.9.3", + "xml-js": "^1.6.11" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-mvn-plugin/node_modules/@snyk/java-call-graph-builder/node_modules/tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dependencies": { + "rimraf": "^3.0.0" + }, + "engines": { + "node": ">=8.17.0" + } + }, + "node_modules/snyk-mvn-plugin/node_modules/temp-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", + "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-mvn-plugin/node_modules/tmp": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.1.0.tgz", + "integrity": "sha512-J7Z2K08jbGcdA1kkQpJSqLF6T0tdQqpR2pnSUXsIchbPdTI9v3e85cLW0d6WDhwuAleOV71j2xWs8qMPfK7nKw==", + "dependencies": { + "rimraf": "^2.6.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/snyk-mvn-plugin/node_modules/tmp/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/snyk-mvn-plugin/node_modules/tslib": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", + "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==" + }, + "node_modules/snyk-nodejs-lockfile-parser": { + "version": "1.35.0", + "resolved": "https://registry.npmjs.org/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.35.0.tgz", + "integrity": "sha512-fSjer9Ic8cdA2HvInUmhwbAhoLFXIokAzGB1PeGKwr0zzyfo3dSX3ReTMEbkhrEg+h0eES13px/KiiJ0EKRKMg==", + "dependencies": { + "@snyk/graphlib": "2.1.9-patch.3", + "@yarnpkg/core": "^2.4.0", + "@yarnpkg/lockfile": "^1.1.0", + "event-loop-spinner": "^2.0.0", + "got": "11.8.2", + "js-yaml": "^4.1.0", + "lodash.clonedeep": "^4.5.0", + "lodash.flatmap": "^4.5.0", + "lodash.isempty": "^4.4.0", + "lodash.set": "^4.3.2", + "lodash.topairs": "^4.3.0", + "p-map": "2.1.0", + "snyk-config": "^4.0.0-rc.2", + "tslib": "^1.9.3", + "uuid": "^8.3.0" + }, + "bin": { + "parse-nodejs-lockfile": "bin/index.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/snyk-nodejs-lockfile-parser/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "node_modules/snyk-nodejs-lockfile-parser/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/snyk-nodejs-lockfile-parser/node_modules/p-map": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", + "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/snyk-nodejs-lockfile-parser/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/snyk-nodejs-lockfile-parser/node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/snyk-nuget-plugin": { + "version": "1.21.1", + "resolved": "https://registry.npmjs.org/snyk-nuget-plugin/-/snyk-nuget-plugin-1.21.1.tgz", + "integrity": "sha512-nRtedIvrow5ODqOKkQWolKrxn8ZoNL3iNJGuW0jNhwv+/9K0XE1UORM5F1ENAsd+nzCSO/kiYAXCc5CNK8HWEw==", + "dependencies": { + "debug": "^4.1.1", + "dotnet-deps-parser": "5.0.0", + "jszip": "3.4.0", + "snyk-paket-parser": "1.6.0", + "tslib": "^1.11.2", + "xml2js": "^0.4.17" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-nuget-plugin/node_modules/jszip": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.4.0.tgz", + "integrity": "sha512-gZAOYuPl4EhPTXT0GjhI3o+ZAz3su6EhLrKUoAivcKqyqC7laS5JEv4XWZND9BgcDcF83vI85yGbDmDR6UhrIg==", + "dependencies": { + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "set-immediate-shim": "~1.0.1" + } + }, + "node_modules/snyk-nuget-plugin/node_modules/lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "dependencies": { + "immediate": "~3.0.5" + } + }, + "node_modules/snyk-nuget-plugin/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/snyk-paket-parser": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/snyk-paket-parser/-/snyk-paket-parser-1.6.0.tgz", + "integrity": "sha512-6htFynjBe/nakclEHUZ1A3j5Eu32/0pNve5Qm4MFn3YQmJgj7UcAO8hdyK3QfzEY29/kAv/rkJQg+SKshn+N9Q==", + "dependencies": { + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/snyk-paket-parser/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/snyk-php-plugin": { + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/snyk-php-plugin/-/snyk-php-plugin-1.9.2.tgz", + "integrity": "sha512-IQcdsQBqqXVRY5DatlI7ASy4flbhtU2V7cr4P2rK9rkFnVHO6LHcitwKXVZa9ocdOmpZDzk7U6iwHJkVFcR6OA==", + "dependencies": { + "@snyk/cli-interface": "^2.9.1", + "@snyk/composer-lockfile-parser": "^1.4.1", + "tslib": "1.11.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-php-plugin/node_modules/tslib": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", + "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==" + }, + "node_modules/snyk-poetry-lockfile-parser": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/snyk-poetry-lockfile-parser/-/snyk-poetry-lockfile-parser-1.1.6.tgz", + "integrity": "sha512-MoekbWOZPj9umfukjk2bd2o3eRj0OyO+58sxq9crMtHmTlze4h0/Uj4+fb0JFPBOtBO3c2zwbA+dvFQmpKoOTA==", + "dependencies": { + "@snyk/cli-interface": "^2.9.2", + "@snyk/dep-graph": "^1.23.0", + "debug": "^4.2.0", + "toml": "^3.0.0", + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk-policy": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/snyk-policy/-/snyk-policy-1.19.0.tgz", + "integrity": "sha512-XYjhOTRPFA7NfDUsH6uH1fbML2OgSFsqdUPbud7x01urNP9CHXgUgAD4NhKMi3dVQK+7IdYadWt0wrFWw4y+qg==", + "dependencies": { + "debug": "^4.1.1", + "email-validator": "^2.0.4", + "js-yaml": "^3.13.1", + "lodash.clonedeep": "^4.5.0", + "promise-fs": "^2.1.1", + "semver": "^6.0.0", + "snyk-module": "^3.0.0", + "snyk-resolve": "^1.1.0", + "snyk-try-require": "^2.0.0" + } + }, + "node_modules/snyk-policy/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dependencies": { + "yallist": "^3.0.2" + } + }, + "node_modules/snyk-policy/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/snyk-policy/node_modules/snyk-try-require": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/snyk-try-require/-/snyk-try-require-2.0.1.tgz", + "integrity": "sha512-VCOfFIvqLMXgCXEdooQgu3A40XYIFBnj0X8Y01RJ5iAbu08b4WKGN/uAKaRVF30dABS4EcjsalmCO+YlKUPEIA==", + "dependencies": { + "debug": "^4.1.1", + "lodash.clonedeep": "^4.3.0", + "lru-cache": "^5.1.1" + } + }, + "node_modules/snyk-policy/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + }, + "node_modules/snyk-python-plugin": { + "version": "1.19.11", + "resolved": "https://registry.npmjs.org/snyk-python-plugin/-/snyk-python-plugin-1.19.11.tgz", + "integrity": "sha512-zUKbSbw+wU1FCUDYt+IDjaES0pc1UKBECOqjHSJMxWm9VhstvPtI4KccetwOfne2oUcmaEJJvcEp4s9VTK04XQ==", + "dependencies": { + "@snyk/cli-interface": "^2.0.3", + "snyk-poetry-lockfile-parser": "^1.1.6", + "tmp": "0.2.1" + } + }, + "node_modules/snyk-python-plugin/node_modules/tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "dependencies": { + "rimraf": "^3.0.0" + }, + "engines": { + "node": ">=8.17.0" + } + }, + "node_modules/snyk-resolve": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/snyk-resolve/-/snyk-resolve-1.1.0.tgz", + "integrity": "sha512-OZMF8I8TOu0S58Z/OS9mr8jkEzGAPByCsAkrWlcmZgPaE0RsxVKVIFPhbMNy/JlYswgGDYYIEsNw+e0j1FnTrw==", + "dependencies": { + "debug": "^4.1.1", + "promise-fs": "^2.1.1" + } + }, + "node_modules/snyk-resolve-deps": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/snyk-resolve-deps/-/snyk-resolve-deps-4.7.2.tgz", + "integrity": "sha512-Bmtr7QdRL2b3Js+mPDmvXbkprOpzO8aUFXqR0nJKAOlUVQqZ84yiuT0n/mssEiJJ0vP+k0kZvTeiTwgio4KZRg==", + "dependencies": { + "ansicolors": "^0.3.2", + "debug": "^4.1.1", + "lodash.assign": "^4.2.0", + "lodash.assignin": "^4.2.0", + "lodash.clone": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.get": "^4.4.2", + "lodash.set": "^4.3.2", + "lru-cache": "^4.0.0", + "semver": "^5.5.1", + "snyk-module": "^3.1.0", + "snyk-resolve": "^1.0.0", + "snyk-tree": "^1.0.0", + "snyk-try-require": "^1.1.1", + "then-fs": "^2.0.0" + } + }, + "node_modules/snyk-resolve-deps/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/snyk-sbt-plugin": { + "version": "2.11.2", + "resolved": "https://registry.npmjs.org/snyk-sbt-plugin/-/snyk-sbt-plugin-2.11.2.tgz", + "integrity": "sha512-EY9foT2bpl+Dbzj28zewJs7VyAhA4uQIiBABNCi9iaIXGfQLkhiXswkcwysOHxm6RxrXbMsbci0OvuDD7zh4Dg==", + "dependencies": { + "debug": "^4.1.1", + "semver": "^6.1.2", + "tmp": "^0.1.0", + "tree-kill": "^1.2.2", + "tslib": "^1.10.0" + } + }, + "node_modules/snyk-sbt-plugin/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/snyk-sbt-plugin/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/snyk-sbt-plugin/node_modules/tmp": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.1.0.tgz", + "integrity": "sha512-J7Z2K08jbGcdA1kkQpJSqLF6T0tdQqpR2pnSUXsIchbPdTI9v3e85cLW0d6WDhwuAleOV71j2xWs8qMPfK7nKw==", + "dependencies": { + "rimraf": "^2.6.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/snyk-sbt-plugin/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/snyk-tree": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/snyk-tree/-/snyk-tree-1.0.0.tgz", + "integrity": "sha1-D7cxdtvzLngvGRAClBYESPkRHMg=", + "dependencies": { + "archy": "^1.0.0" + }, + "bin": { + "npm-tree": "lib/index.js" + } + }, + "node_modules/snyk-try-require": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/snyk-try-require/-/snyk-try-require-1.3.1.tgz", + "integrity": "sha1-bgJvkuZK9/zM6h7lPVJIQeQYohI=", + "dependencies": { + "debug": "^3.1.0", + "lodash.clonedeep": "^4.3.0", + "lru-cache": "^4.0.0", + "then-fs": "^2.0.0" + } + }, + "node_modules/snyk-try-require/node_modules/debug": { "version": "3.2.7", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, "dependencies": { "ms": "^2.1.1" } }, + "node_modules/snyk/node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk/node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk/node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "engines": { + "node": ">=0.3.1" + } + }, + "node_modules/snyk/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + }, + "node_modules/snyk/node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/snyk/node_modules/micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk/node_modules/ora": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.0.tgz", + "integrity": "sha512-1StwyXQGoU6gdjYkyVcqOLnVlbKj+6yPNNOxJVgpt9t4eksKjiriiHuxktLYkgllwk+D6MbC4ihH84L1udRXPg==", + "dependencies": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/snyk/node_modules/ora/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/snyk/node_modules/ora/node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/snyk/node_modules/ora/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "dependencies": { + "ansi-regex": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk/node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/snyk/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/snyk/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/snyk/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/snyk/node_modules/strip-ansi/node_modules/ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/snyk/node_modules/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/snyk/node_modules/to-regex-range": { + "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==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/snyk/node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/snyk/node_modules/wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dependencies": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/sort-json": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/sort-json/-/sort-json-2.0.0.tgz", @@ -28969,7 +25965,8 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", - "dev": true + "dev": true, + "peer": true }, "node_modules/source-map": { "version": "0.5.7", @@ -29013,16 +26010,6 @@ "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==" }, - "node_modules/space-separated-tokens": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz", - "integrity": "sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==", - "dev": true, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/wooorm" - } - }, "node_modules/spdx-correct": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", @@ -29055,6 +26042,11 @@ "integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==", "dev": true }, + "node_modules/split-ca": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/split-ca/-/split-ca-1.0.1.tgz", + "integrity": "sha1-bIOv82kvphJW4M0ZfgXp3hV2kaY=" + }, "node_modules/split-string": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", @@ -29099,24 +26091,29 @@ "resolved": "https://registry.npmjs.org/sql-escape-string/-/sql-escape-string-1.1.0.tgz", "integrity": "sha1-/nRLhRSGjA60v7nkqYknHUDzDrk=" }, - "node_modules/ssri": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-7.1.1.tgz", - "integrity": "sha512-w+daCzXN89PseTL99MkA+fxJEcU3wfaE/ah0i0lnOlpG1CYLJ2ZjzEry68YBKfLs4JfoTShrTEsJkAZuNZ/stw==", - "dev": true, + "node_modules/ssh2": { + "version": "0.8.9", + "resolved": "https://registry.npmjs.org/ssh2/-/ssh2-0.8.9.tgz", + "integrity": "sha512-GmoNPxWDMkVpMFa9LVVzQZHF6EW3WKmBwL+4/GeILf2hFmix5Isxm7Amamo8o7bHiU0tC+wXsGcUXOxp8ChPaw==", "dependencies": { - "figgy-pudding": "^3.5.1", - "minipass": "^3.1.1" + "ssh2-streams": "~0.4.10" }, "engines": { - "node": ">= 8" + "node": ">=5.2.0" } }, - "node_modules/stable": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", - "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", - "dev": true + "node_modules/ssh2-streams": { + "version": "0.4.10", + "resolved": "https://registry.npmjs.org/ssh2-streams/-/ssh2-streams-0.4.10.tgz", + "integrity": "sha512-8pnlMjvnIZJvmTzUIIA5nT4jr2ZWNNVHwyXfMGdRJbug9TpI3kd99ffglgfSWqujVv/0gxwMsDn9j9RVst8yhQ==", + "dependencies": { + "asn1": "~0.2.0", + "bcrypt-pbkdf": "^1.0.2", + "streamsearch": "~0.1.2" + }, + "engines": { + "node": ">=5.2.0" + } }, "node_modules/stack-chain": { "version": "1.3.7", @@ -29189,17 +26186,12 @@ "node": ">= 0.6" } }, - "node_modules/store2": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/store2/-/store2-2.12.0.tgz", - "integrity": "sha512-7t+/wpKLanLzSnQPX8WAcuLCCeuSHoWdQuh9SB3xD0kNOM38DNf+0Oa+wmvxmYueRzkmh6IcdKFtvTa+ecgPDw==", - "dev": true - }, "node_modules/stream-browserify": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", "dev": true, + "peer": true, "dependencies": { "inherits": "~2.0.1", "readable-stream": "^2.0.2" @@ -29218,6 +26210,7 @@ "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", "dev": true, + "peer": true, "dependencies": { "end-of-stream": "^1.1.0", "stream-shift": "^1.0.0" @@ -29228,6 +26221,7 @@ "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", "dev": true, + "peer": true, "dependencies": { "builtin-status-codes": "^3.0.0", "inherits": "^2.0.1", @@ -29239,8 +26233,49 @@ "node_modules/stream-shift": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", - "dev": true + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==" + }, + "node_modules/stream-to-array": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/stream-to-array/-/stream-to-array-2.3.0.tgz", + "integrity": "sha1-u/azn19D7DC8cbq8s3VXrOzzQ1M=", + "dependencies": { + "any-promise": "^1.1.0" + } + }, + "node_modules/stream-to-promise": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/stream-to-promise/-/stream-to-promise-2.2.0.tgz", + "integrity": "sha1-se2y4cjLESidG1A8CNPyrvUeZQ8=", + "dependencies": { + "any-promise": "~1.3.0", + "end-of-stream": "~1.1.0", + "stream-to-array": "~2.3.0" + } + }, + "node_modules/stream-to-promise/node_modules/end-of-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.1.0.tgz", + "integrity": "sha1-6TUyWLqpEIll78QcsO+K3i88+wc=", + "dependencies": { + "once": "~1.3.0" + } + }, + "node_modules/stream-to-promise/node_modules/once": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", + "integrity": "sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA=", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/streamsearch": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-0.1.2.tgz", + "integrity": "sha1-gIudDlb8Jz2Am6VzOOkpkZoanxo=", + "engines": { + "node": ">=0.8.0" + } }, "node_modules/string_decoder": { "version": "1.1.1", @@ -29313,40 +26348,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/string.prototype.padend": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.2.tgz", - "integrity": "sha512-/AQFLdYvePENU3W5rgurfWSMU6n+Ww8n/3cUt7E+vPBB/D7YDG8x+qjoFs4M/alR2bW7Qg6xMjVwWUOvuQ0XpQ==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/string.prototype.padstart": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/string.prototype.padstart/-/string.prototype.padstart-3.1.2.tgz", - "integrity": "sha512-HDpngIP3pd0DeazrfqzuBrQZa+D2arKWquEHfGt5LzVjd+roLC3cjqVI0X8foaZz5rrrhcu8oJAQamW8on9dqw==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/string.prototype.repeat": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-0.2.0.tgz", @@ -29425,40 +26426,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/style-loader": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.3.0.tgz", - "integrity": "sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q==", - "dev": true, - "dependencies": { - "loader-utils": "^2.0.0", - "schema-utils": "^2.7.0" - }, - "engines": { - "node": ">= 8.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/style-loader/node_modules/loader-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", - "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", - "dev": true, - "dependencies": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - }, - "engines": { - "node": ">=8.9.0" - } - }, "node_modules/sudo-prompt": { "version": "9.2.1", "resolved": "https://registry.npmjs.org/sudo-prompt/-/sudo-prompt-9.2.1.tgz", @@ -29520,24 +26487,6 @@ "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", "dev": true }, - "node_modules/symbol.prototype.description": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/symbol.prototype.description/-/symbol.prototype.description-1.0.4.tgz", - "integrity": "sha512-fZkHwJ8ZNRVRzF/+/2OtygyyH06CjC0YZAQRHu9jKKw8RXlJpbizEHvGRUu22Qkg182wJk1ugb5Aovcv3UPrww==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "es-abstract": "^1.18.0-next.2", - "has-symbols": "^1.0.1", - "object.getownpropertydescriptors": "^2.1.2" - }, - "engines": { - "node": ">= 0.11.15" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/table": { "version": "6.7.1", "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", @@ -29645,31 +26594,74 @@ "node": ">=6" } }, - "node_modules/telejson": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/telejson/-/telejson-5.3.3.tgz", - "integrity": "sha512-PjqkJZpzEggA9TBpVtJi1LVptP7tYtXB6rEubwlHap76AMjzvOdKX41CxyaW7ahhzDU1aftXnMCx5kAPDZTQBA==", - "dev": true, + "node_modules/tar": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.0.tgz", + "integrity": "sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA==", "dependencies": { - "@types/is-function": "^1.0.0", - "global": "^4.4.0", - "is-function": "^1.0.2", - "is-regex": "^1.1.2", - "is-symbol": "^1.0.3", - "isobject": "^4.0.0", - "lodash": "^4.17.21", - "memoizerific": "^1.11.3" + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 10" } }, - "node_modules/telejson/node_modules/isobject": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", - "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", - "dev": true, + "node_modules/tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "dependencies": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, + "node_modules/tar-stream/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/tar/node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/tar/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/telnet-client": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/telnet-client/-/telnet-client-1.2.8.tgz", @@ -29699,6 +26691,7 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "dev": true, "engines": { "node": ">=4" } @@ -29725,33 +26718,37 @@ } }, "node_modules/tempy": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/tempy/-/tempy-0.3.0.tgz", - "integrity": "sha512-WrH/pui8YCwmeiAoxV+lpRH9HpRtgBhSR2ViBPgpGb/wnYDzp21R4MN45fsCGvLROvY67o3byhJRYRONJyImVQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tempy/-/tempy-1.0.1.tgz", + "integrity": "sha512-biM9brNqxSc04Ee71hzFbryD11nX7VPhQQY32AdDmjFvodsRFz/3ufeoTZ6uYkRFfGo188tENcASNs3vTdsM0w==", "dependencies": { - "temp-dir": "^1.0.0", - "type-fest": "^0.3.1", - "unique-string": "^1.0.0" + "del": "^6.0.0", + "is-stream": "^2.0.0", + "temp-dir": "^2.0.0", + "type-fest": "^0.16.0", + "unique-string": "^2.0.0" }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/tempy/node_modules/temp-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", + "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==", "engines": { "node": ">=8" } }, "node_modules/tempy/node_modules/type-fest": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.16.0.tgz", + "integrity": "sha512-eaBzG6MxNzEn9kiwvtre90cXaNLkmadMWa1zQMs3XORCXNbsH/OewwbxC5ia9dCxIxnTAsSxXJaa/p5y8DlvJg==", "engines": { - "node": ">=6" - } - }, - "node_modules/term-size": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz", - "integrity": "sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==", - "dev": true, - "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -29805,6 +26802,7 @@ "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", "dev": true, + "peer": true, "dependencies": { "commander": "^2.20.0", "source-map": "~0.6.1", @@ -29817,149 +26815,19 @@ "node": ">=6.0.0" } }, - "node_modules/terser-webpack-plugin": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-2.3.8.tgz", - "integrity": "sha512-/fKw3R+hWyHfYx7Bv6oPqmk4HGQcrWLtV3X6ggvPuwPNHSnzvVV51z6OaaCOus4YLjutYGOz3pEpbhe6Up2s1w==", - "dev": true, - "dependencies": { - "cacache": "^13.0.1", - "find-cache-dir": "^3.3.1", - "jest-worker": "^25.4.0", - "p-limit": "^2.3.0", - "schema-utils": "^2.6.6", - "serialize-javascript": "^4.0.0", - "source-map": "^0.6.1", - "terser": "^4.6.12", - "webpack-sources": "^1.4.3" - }, - "engines": { - "node": ">= 8.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/terser-webpack-plugin/node_modules/find-cache-dir": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz", - "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==", - "dev": true, - "dependencies": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/avajs/find-cache-dir?sponsor=1" - } - }, - "node_modules/terser-webpack-plugin/node_modules/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, - "engines": { - "node": ">=8" - } - }, - "node_modules/terser-webpack-plugin/node_modules/jest-worker": { - "version": "25.5.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", - "integrity": "sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw==", - "dev": true, - "dependencies": { - "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" - }, - "engines": { - "node": ">= 8.3" - } - }, - "node_modules/terser-webpack-plugin/node_modules/make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "dependencies": { - "semver": "^6.0.0" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/terser-webpack-plugin/node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "dependencies": { - "find-up": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/terser-webpack-plugin/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, - "node_modules/terser-webpack-plugin/node_modules/serialize-javascript": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", - "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", - "dev": true, - "dependencies": { - "randombytes": "^2.1.0" - } - }, - "node_modules/terser-webpack-plugin/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/terser-webpack-plugin/node_modules/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, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/terser/node_modules/commander": { "version": "2.20.3", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true + "dev": true, + "peer": true }, "node_modules/terser/node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, + "peer": true, "engines": { "node": ">=0.10.0" } @@ -29984,20 +26852,27 @@ "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", "dev": true }, + "node_modules/then-fs": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/then-fs/-/then-fs-2.0.0.tgz", + "integrity": "sha1-cveS3Z0xcFqRrhnr/Piz+WjIHaI=", + "dependencies": { + "promise": ">=3.2 <8" + } + }, + "node_modules/then-fs/node_modules/promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "dependencies": { + "asap": "~2.0.3" + } + }, "node_modules/throat": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz", "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==" }, - "node_modules/throttle-debounce": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-2.3.0.tgz", - "integrity": "sha512-H7oLPV0P7+jgvrk+6mwwwBDmxTaxnu9HMXmloNLXwnNO0ZxZ31Orah2n8lU1eMPvsaowP2CX+USCgyovXfdOFQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", @@ -30017,6 +26892,7 @@ "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", "dev": true, + "peer": true, "dependencies": { "setimmediate": "^1.0.4" }, @@ -30024,18 +26900,6 @@ "node": ">=0.6.0" } }, - "node_modules/timm": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/timm/-/timm-1.7.1.tgz", - "integrity": "sha512-IjZc9KIotudix8bMaBW6QvMuq64BrJWFs1+4V0lXwWGQZwH+LnX87doAYhem4caOEusRP9/g6jVDQmZ8XOk1nw==" - }, - "node_modules/tiny-emitter": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz", - "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==", - "dev": true, - "optional": true - }, "node_modules/tinycolor2": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.4.2.tgz", @@ -30064,7 +26928,8 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", - "dev": true + "dev": true, + "peer": true }, "node_modules/to-fast-properties": { "version": "2.0.0", @@ -30096,6 +26961,14 @@ "node": ">=0.10.0" } }, + "node_modules/to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "engines": { + "node": ">=6" + } + }, "node_modules/to-regex": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", @@ -30192,12 +27065,6 @@ "node": ">=0.10.0" } }, - "node_modules/toggle-selection": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz", - "integrity": "sha1-bkWxJj8gF/oKzH2J14sVuL932jI=", - "dev": true - }, "node_modules/toidentifier": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", @@ -30206,6 +27073,11 @@ "node": ">=0.6" } }, + "node_modules/toml": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/toml/-/toml-3.0.0.tgz", + "integrity": "sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w==" + }, "node_modules/tough-cookie": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", @@ -30232,6 +27104,22 @@ "node": ">=8" } }, + "node_modules/tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", + "bin": { + "tree-kill": "cli.js" + } + }, + "node_modules/treeify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/treeify/-/treeify-1.1.0.tgz", + "integrity": "sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A==", + "engines": { + "node": ">=0.6" + } + }, "node_modules/truncate-utf8-bytes": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz", @@ -30241,21 +27129,6 @@ "utf8-byte-length": "^1.0.1" } }, - "node_modules/ts-dedent": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-2.1.1.tgz", - "integrity": "sha512-riHuwnzAUCfdIeTBNUq7+Yj+ANnrMXo/7+Z74dIdudS7ys2k8aSGMzpJRMFDF7CLwUTbtvi1ZZff/Wl+XxmqIA==", - "dev": true, - "engines": { - "node": ">=6.10" - } - }, - "node_modules/ts-essentials": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/ts-essentials/-/ts-essentials-2.0.12.tgz", - "integrity": "sha512-3IVX4nI6B5cc31/GFFE+i8ey/N2eA0CZDbo6n0yrz0zDX8ZJ8djmU1p+XRz7G3is0F3bB3pu2pAroFdAWQKU3w==", - "dev": true - }, "node_modules/ts-jest": { "version": "27.0.3", "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-27.0.3.tgz", @@ -30408,20 +27281,6 @@ "node": ">=8" } }, - "node_modules/ts-pnp": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ts-pnp/-/ts-pnp-1.2.0.tgz", - "integrity": "sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw==", - "dev": true, - "engines": { - "node": ">=6" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, "node_modules/tslib": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", @@ -30452,7 +27311,21 @@ "version": "0.0.0", "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", - "dev": true + "dev": true, + "peer": true + }, + "node_modules/tunnel": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", + "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", + "engines": { + "node": ">=0.6.11 <=0.7.0 || >=0.7.3" + } + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" }, "node_modules/type-check": { "version": "0.4.0", @@ -30484,30 +27357,12 @@ "node": ">=8" } }, - "node_modules/type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dev": true, - "dependencies": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - }, - "engines": { - "node": ">= 0.6" - } - }, - "node_modules/typed-styles": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/typed-styles/-/typed-styles-0.0.7.tgz", - "integrity": "sha512-pzP0PWoZUhsECYjABgCGQlRGL1n7tOHsgwYv3oIiEpJwGhFTuty/YNeduxQYzXXa3Ge5BdT6sHYIQYpl4uJ+5Q==", - "dev": true - }, "node_modules/typedarray": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true + "dev": true, + "peer": true }, "node_modules/typedarray-to-buffer": { "version": "3.1.5", @@ -30518,9 +27373,9 @@ } }, "node_modules/typescript": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.3.4.tgz", - "integrity": "sha512-uauPG7XZn9F/mo+7MrsRjyvbxFpzemRjKEZXS4AK83oP2KKOJPvb+9cO/gmnv8arWZvhnjVOXz7B49m1l0e9Ew==", + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.3.5.tgz", + "integrity": "sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA==", "devOptional": true, "bin": { "tsc": "bin/tsc", @@ -30602,12 +27457,6 @@ "integrity": "sha512-hzSoAVtJF+3ZtiFX0VgfFPHEDRm7Y/QPjGyNo4TVdnDTdft3tr8hEkD25a1jC+TjTuE7tkHGKkhwCgs9dgBB2g==", "dev": true }, - "node_modules/unfetch": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/unfetch/-/unfetch-4.2.0.tgz", - "integrity": "sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA==", - "dev": true - }, "node_modules/unicode-canonical-property-names-ecmascript": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", @@ -30645,59 +27494,14 @@ } }, "node_modules/unimodules-app-loader": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unimodules-app-loader/-/unimodules-app-loader-2.1.0.tgz", - "integrity": "sha512-W+D+hVXq6jOvBm7QVwODPENz6Lupj73QequNNG+6GCTkqn4ybq/lba9IQvJQT2QzdL3luVHin+eym18cDblMlg==" - }, - "node_modules/unimodules-barcode-scanner-interface": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/unimodules-barcode-scanner-interface/-/unimodules-barcode-scanner-interface-6.1.0.tgz", - "integrity": "sha512-+McBDniXReXNS8PnGDjIyDikb+cRXSfsZMLsF0gohEEV0xdA6HhPvFA0ryv65j2NKOyIiWmEHjv+yDOoewDq3w==" - }, - "node_modules/unimodules-camera-interface": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/unimodules-camera-interface/-/unimodules-camera-interface-6.1.0.tgz", - "integrity": "sha512-Rbszrh54kIB4vA+AzDWFXplBz1UrxQNR6Ls0eJDAKffbjDfyQIP6SgIPjUlzqGVnzknyZ1SMGiFFSFCM4BCOAw==" - }, - "node_modules/unimodules-constants-interface": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/unimodules-constants-interface/-/unimodules-constants-interface-6.1.0.tgz", - "integrity": "sha512-uPLFGufbdefRQeINyUfkw2mVJJg+6kH23RR4ATfUAsrD6vGLuONwduHvRwh+rcL9fzPVM4jsfH6iATrolmiatg==" - }, - "node_modules/unimodules-face-detector-interface": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/unimodules-face-detector-interface/-/unimodules-face-detector-interface-6.1.0.tgz", - "integrity": "sha512-L2E8a2OjMPxfVh/OGt6Y5HWbEaJ9h3Hkmvx02GCferBPKgN3dcxFMaI53d1BVV9QA3r4YuLBP6RrolG/qy/r7A==" - }, - "node_modules/unimodules-file-system-interface": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/unimodules-file-system-interface/-/unimodules-file-system-interface-6.1.0.tgz", - "integrity": "sha512-iJGm6nWF+PhxqFbeqC2Ku4XjglbL9z7aofkSX5S7bZ3Oi4v1NO1UOe9nczU17Ps19sfYZJgkiD4FiQaFCmAnKg==" - }, - "node_modules/unimodules-font-interface": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/unimodules-font-interface/-/unimodules-font-interface-6.1.0.tgz", - "integrity": "sha512-OfSeWx9ew2SNENj/HhctfPU7hqeW0bzVZYGGJ0M6RNcRRWzwA6ltawyYwtuvRe/EEU3LwrFUSKPMCi9867hLyw==" - }, - "node_modules/unimodules-image-loader-interface": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/unimodules-image-loader-interface/-/unimodules-image-loader-interface-6.1.0.tgz", - "integrity": "sha512-o8hZI6J6DGYyo2xSH6J+ipxME0blNfmaWU3P2Y2AUVxbEPdgjT2sVmufRWMKGhrt7gaNW4xF/JUbF9lq4Rui7w==" - }, - "node_modules/unimodules-permissions-interface": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/unimodules-permissions-interface/-/unimodules-permissions-interface-6.1.0.tgz", - "integrity": "sha512-jeJx/y+Vn/Cp1/4su5XJ06UBul83MpXkYEqIOAb2jwaikhmj6tNwko7HpKy9OhfGfrhddCzwtedlro8xxZUk9A==" - }, - "node_modules/unimodules-sensors-interface": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/unimodules-sensors-interface/-/unimodules-sensors-interface-6.1.0.tgz", - "integrity": "sha512-tJDOo3p4q4wmhyuwapNjYeON7cd5OSPYr3qDfMgPPg9m6pYM/FdQJ1PKMNb1NJUckpDgQ67Dows2jAdqkNRZSw==" + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unimodules-app-loader/-/unimodules-app-loader-2.2.0.tgz", + "integrity": "sha512-porQWVWu7meIrCJ+c+H7eJyeC2rHioLUZiv4UcOs33SAyUhR4X05tCC8NIOuQJsF08Fj3a0ck7HUsd5xq+LqKA==" }, "node_modules/unimodules-task-manager-interface": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/unimodules-task-manager-interface/-/unimodules-task-manager-interface-6.1.0.tgz", - "integrity": "sha512-wSsuX5fzd3oCCjHvrRFxysmCswhHZbJflVyAWzgSHtyMgxBOZobGN1C0UQ/plcu/JWY2+maTDPpE9OU6wzzzdg==" + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/unimodules-task-manager-interface/-/unimodules-task-manager-interface-6.2.0.tgz", + "integrity": "sha512-DrRVWF46TI93GbaDWAJ+bKd3vHjZq9pS8oJ6pZQN96qUTWkJ3yqa92yF118JxdGll+YtymxF/ZWCugBFMtISbA==" }, "node_modules/union-value": { "version": "1.0.1", @@ -30718,6 +27522,7 @@ "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", "dev": true, + "peer": true, "dependencies": { "unique-slug": "^2.0.0" } @@ -30727,19 +27532,20 @@ "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", "dev": true, + "peer": true, "dependencies": { "imurmurhash": "^0.1.4" } }, "node_modules/unique-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", - "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", "dependencies": { - "crypto-random-string": "^1.0.0" + "crypto-random-string": "^2.0.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/unit-compare": { @@ -30767,12 +27573,6 @@ "node": ">= 0.8" } }, - "node_modules/unquote": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", - "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=", - "dev": true - }, "node_modules/unset-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", @@ -30827,11 +27627,130 @@ "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", "dev": true, + "optional": true, "engines": { "node": ">=4", "yarn": "*" } }, + "node_modules/update-notifier": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", + "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", + "dependencies": { + "boxen": "^5.0.0", + "chalk": "^4.1.0", + "configstore": "^5.0.1", + "has-yarn": "^2.1.0", + "import-lazy": "^2.1.0", + "is-ci": "^2.0.0", + "is-installed-globally": "^0.4.0", + "is-npm": "^5.0.0", + "is-yarn-global": "^0.3.0", + "latest-version": "^5.1.0", + "pupa": "^2.1.1", + "semver": "^7.3.4", + "semver-diff": "^3.1.1", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/yeoman/update-notifier?sponsor=1" + } + }, + "node_modules/update-notifier/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/update-notifier/node_modules/boxen": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.0.1.tgz", + "integrity": "sha512-49VBlw+PrWEF51aCmy7QIteYPIFZxSpvqBdP/2itCPPlJ49kj9zg/XPRFrdkne2W+CfwXUls8exMvu1RysZpKA==", + "dependencies": { + "ansi-align": "^3.0.0", + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.0", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/update-notifier/node_modules/camelcase": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", + "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/update-notifier/node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/update-notifier/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/update-notifier/node_modules/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==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/update-notifier/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==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/uri-js": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", @@ -30852,34 +27771,12 @@ "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", "dev": true, + "peer": true, "dependencies": { "punycode": "1.3.2", "querystring": "0.2.0" } }, - "node_modules/url-loader": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-2.3.0.tgz", - "integrity": "sha512-goSdg8VY+7nPZKUEChZSEtW5gjbS66USIGCeSJ1OVOJ7Yfuh/36YxCwMi5HVEJh6mqUYOoy3NJ0vlOMrWsSHog==", - "dev": true, - "dependencies": { - "loader-utils": "^1.2.3", - "mime": "^2.4.4", - "schema-utils": "^2.5.0" - }, - "engines": { - "node": ">= 8.9.0" - }, - "peerDependencies": { - "file-loader": "*", - "webpack": "^4.0.0" - }, - "peerDependenciesMeta": { - "file-loader": { - "optional": true - } - } - }, "node_modules/url-parse": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.1.tgz", @@ -30889,11 +27786,23 @@ "requires-port": "^1.0.0" } }, + "node_modules/url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "dependencies": { + "prepend-http": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/url/node_modules/punycode": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", - "dev": true + "dev": true, + "peer": true }, "node_modules/use": { "version": "3.1.1", @@ -30903,89 +27812,6 @@ "node": ">=0.10.0" } }, - "node_modules/use-callback-ref": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.2.5.tgz", - "integrity": "sha512-gN3vgMISAgacF7sqsLPByqoePooY3n2emTH59Ur5d/M8eg4WTWu1xp8i8DHjohftIyEx0S08RiYxbffr4j8Peg==", - "dev": true, - "engines": { - "node": ">=8.5.0" - }, - "peerDependencies": { - "@types/react": "^16.8.0 || ^17.0.0", - "react": "^16.8.0 || ^17.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/use-composed-ref": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.1.0.tgz", - "integrity": "sha512-my1lNHGWsSDAhhVAT4MKs6IjBUtG6ZG11uUqexPH9PptiIZDQOzaF4f5tEbJ2+7qvNbtXNBbU3SfmN+fXlWDhg==", - "dev": true, - "dependencies": { - "ts-essentials": "^2.0.3" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0" - } - }, - "node_modules/use-isomorphic-layout-effect": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.1.tgz", - "integrity": "sha512-L7Evj8FGcwo/wpbv/qvSfrkHFtOpCzvM5yl2KVyDJoylVuSvzphiiasmjgQPttIGBAy2WKiBNR98q8w7PiNgKQ==", - "dev": true, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/use-latest": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/use-latest/-/use-latest-1.2.0.tgz", - "integrity": "sha512-d2TEuG6nSLKQLAfW3By8mKr8HurOlTkul0sOpxbClIv4SQ4iOd7BYr7VIzdbktUCnv7dua/60xzd8igMU6jmyw==", - "dev": true, - "dependencies": { - "use-isomorphic-layout-effect": "^1.0.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0" - }, - "peerDependenciesMeta": { - "@types/react": { - "optional": true - } - } - }, - "node_modules/use-sidecar": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.0.5.tgz", - "integrity": "sha512-k9jnrjYNwN6xYLj1iaGhonDghfvmeTmYjAiGvOr7clwKfPjMXJf4/HOr7oT5tJwYafgp2tG2l3eZEOfoELiMcA==", - "dev": true, - "dependencies": { - "detect-node-es": "^1.1.0", - "tslib": "^1.9.3" - }, - "engines": { - "node": ">=8.5.0" - }, - "peerDependencies": { - "react": "^16.8.0 || ^17.0.0" - } - }, - "node_modules/use-sidecar/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 - }, "node_modules/use-subscription": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/use-subscription/-/use-subscription-1.5.1.tgz", @@ -31095,20 +27921,17 @@ "semver": "bin/semver" } }, + "node_modules/utf8": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", + "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==" + }, "node_modules/utf8-byte-length": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz", "integrity": "sha1-9F8VDExm7uloGGUFq5P8u4rWv2E=", "dev": true }, - "node_modules/utif": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/utif/-/utif-2.0.1.tgz", - "integrity": "sha512-Z/S1fNKCicQTf375lIP9G8Sa1H/phcysstNrrSdZKj1f9g58J4NMgb5IgiEZN9/nLMPDwF0W7hdOe9Qq2IYoLg==", - "dependencies": { - "pako": "^1.0.5" - } - }, "node_modules/util": { "version": "0.12.4", "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", @@ -31128,22 +27951,6 @@ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, - "node_modules/util.promisify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", - "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.2", - "object.getownpropertydescriptors": "^2.0.3" - } - }, - "node_modules/utila": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", - "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=", - "dev": true - }, "node_modules/utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", @@ -31225,7 +28032,13 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", - "dev": true + "dev": true, + "peer": true + }, + "node_modules/vscode-languageserver-types": { + "version": "3.16.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.16.0.tgz", + "integrity": "sha512-k8luDIWJWyenLc5ToFQQMaSrqCHiLwyKPHKPQZ5zz21vM+vIVUSvsRpcbiECH4WR88K2XZqc4ScRcZ7nk/jbeA==" }, "node_modules/w3c-hr-time": { "version": "1.0.2", @@ -31256,20 +28069,12 @@ "makeerror": "1.0.x" } }, - "node_modules/warning": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz", - "integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==", - "dev": true, - "dependencies": { - "loose-envify": "^1.0.0" - } - }, "node_modules/watchpack": { "version": "1.7.5", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz", "integrity": "sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ==", "dev": true, + "peer": true, "dependencies": { "graceful-fs": "^4.1.2", "neo-async": "^2.5.0" @@ -31285,6 +28090,7 @@ "integrity": "sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww==", "dev": true, "optional": true, + "peer": true, "dependencies": { "chokidar": "^2.1.8" } @@ -31296,6 +28102,7 @@ "deprecated": "Chokidar 2 will break on node v14+. Upgrade to chokidar 3 with 15x less dependencies.", "dev": true, "optional": true, + "peer": true, "dependencies": { "anymatch": "^2.0.0", "async-each": "^1.0.1", @@ -31324,6 +28131,7 @@ "os": [ "darwin" ], + "peer": true, "dependencies": { "bindings": "^1.5.0", "nan": "^2.12.1" @@ -31338,6 +28146,7 @@ "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", "dev": true, "optional": true, + "peer": true, "dependencies": { "is-glob": "^3.1.0", "path-dirname": "^1.0.0" @@ -31349,6 +28158,7 @@ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", "dev": true, "optional": true, + "peer": true, "dependencies": { "is-extglob": "^2.1.0" }, @@ -31378,6 +28188,7 @@ "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.46.0.tgz", "integrity": "sha512-6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q==", "dev": true, + "peer": true, "dependencies": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-module-context": "1.9.0", @@ -31529,15 +28340,6 @@ "node": ">=6" } }, - "node_modules/webpack-cli/node_modules/interpret": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", - "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", - "dev": true, - "engines": { - "node": ">= 0.10" - } - }, "node_modules/webpack-cli/node_modules/locate-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", @@ -31688,85 +28490,12 @@ "decamelize": "^1.2.0" } }, - "node_modules/webpack-dev-middleware": { - "version": "3.7.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.7.3.tgz", - "integrity": "sha512-djelc/zGiz9nZj/U7PTBi2ViorGJXEWo/3ltkPbDyxCXhhEXkW0ce99falaok4TPj+AsxLiXJR0EBOb0zh9fKQ==", - "dev": true, - "dependencies": { - "memory-fs": "^0.4.1", - "mime": "^2.4.4", - "mkdirp": "^0.5.1", - "range-parser": "^1.2.1", - "webpack-log": "^2.0.0" - }, - "engines": { - "node": ">= 6" - }, - "peerDependencies": { - "webpack": "^4.0.0 || ^5.0.0" - } - }, - "node_modules/webpack-hot-middleware": { - "version": "2.25.0", - "resolved": "https://registry.npmjs.org/webpack-hot-middleware/-/webpack-hot-middleware-2.25.0.tgz", - "integrity": "sha512-xs5dPOrGPCzuRXNi8F6rwhawWvQQkeli5Ro48PRuQh8pYPCPmNnltP9itiUPT4xI8oW+y0m59lyyeQk54s5VgA==", - "dev": true, - "dependencies": { - "ansi-html": "0.0.7", - "html-entities": "^1.2.0", - "querystring": "^0.2.0", - "strip-ansi": "^3.0.0" - } - }, - "node_modules/webpack-hot-middleware/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/webpack-hot-middleware/node_modules/strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/webpack-log": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz", - "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==", - "dev": true, - "dependencies": { - "ansi-colors": "^3.0.0", - "uuid": "^3.3.2" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/webpack-log/node_modules/ansi-colors": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", - "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/webpack-sources": { "version": "1.4.3", "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", "dev": true, + "peer": true, "dependencies": { "source-list-map": "^2.0.0", "source-map": "~0.6.1" @@ -31777,33 +28506,17 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, + "peer": true, "engines": { "node": ">=0.10.0" } }, - "node_modules/webpack-virtual-modules": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.2.2.tgz", - "integrity": "sha512-kDUmfm3BZrei0y+1NTHJInejzxfhtU8eDj2M7OKb2IWrPFAeO1SOH2KuQ68MSZu9IGEHcxbkKKR1v18FrUSOmA==", - "dev": true, - "dependencies": { - "debug": "^3.0.0" - } - }, - "node_modules/webpack-virtual-modules/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, "node_modules/webpack/node_modules/acorn": { "version": "6.4.2", "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", "dev": true, + "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -31816,6 +28529,7 @@ "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", "dev": true, + "peer": true, "dependencies": { "bluebird": "^3.5.5", "chownr": "^1.1.1", @@ -31839,6 +28553,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", "dev": true, + "peer": true, "dependencies": { "is-descriptor": "^1.0.2", "isobject": "^3.0.1" @@ -31852,6 +28567,7 @@ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", "dev": true, + "peer": true, "dependencies": { "esrecurse": "^4.1.0", "estraverse": "^4.1.1" @@ -31865,6 +28581,7 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", "dev": true, + "peer": true, "dependencies": { "assign-symbols": "^1.0.0", "is-extendable": "^1.0.1" @@ -31878,6 +28595,7 @@ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, + "peer": true, "dependencies": { "kind-of": "^6.0.0" }, @@ -31890,6 +28608,7 @@ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, + "peer": true, "dependencies": { "kind-of": "^6.0.0" }, @@ -31902,6 +28621,7 @@ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, + "peer": true, "dependencies": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", @@ -31916,6 +28636,7 @@ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "dev": true, + "peer": true, "dependencies": { "is-plain-object": "^2.0.4" }, @@ -31928,6 +28649,7 @@ "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", "dev": true, + "peer": true, "engines": { "node": ">=4" } @@ -31937,6 +28659,7 @@ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "dev": true, + "peer": true, "dependencies": { "yallist": "^3.0.2" } @@ -31946,6 +28669,7 @@ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "dev": true, + "peer": true, "dependencies": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", @@ -31970,6 +28694,7 @@ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", "dev": true, + "peer": true, "dependencies": { "glob": "^7.1.3" }, @@ -31982,6 +28707,7 @@ "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", "dev": true, + "peer": true, "dependencies": { "ajv": "^6.1.0", "ajv-errors": "^1.0.0", @@ -31996,6 +28722,7 @@ "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", "dev": true, + "peer": true, "dependencies": { "randombytes": "^2.1.0" } @@ -32005,6 +28732,7 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", "dev": true, + "peer": true, "engines": { "node": ">=0.10.0" } @@ -32014,6 +28742,7 @@ "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", "dev": true, + "peer": true, "dependencies": { "figgy-pudding": "^3.5.1" } @@ -32023,6 +28752,7 @@ "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz", "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==", "dev": true, + "peer": true, "dependencies": { "cacache": "^12.0.2", "find-cache-dir": "^2.1.0", @@ -32045,36 +28775,15 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true + "dev": true, + "peer": true }, "node_modules/webpack/node_modules/yallist": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - }, - "node_modules/websocket-driver": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", "dev": true, - "dependencies": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - }, - "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/websocket-extensions": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true, - "engines": { - "node": ">=0.8.0" - } + "peer": true }, "node_modules/whatwg-encoding": { "version": "1.0.5", @@ -32218,7 +28927,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", - "dev": true, "dependencies": { "string-width": "^4.0.0" }, @@ -32226,6 +28934,98 @@ "node": ">=8" } }, + "node_modules/windows-release": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/windows-release/-/windows-release-3.3.3.tgz", + "integrity": "sha512-OSOGH1QYiW5yVor9TtmXKQvt2vjQqbYS+DqmsZw+r7xDwLXEeT3JGW0ZppFmHx4diyXmxt238KFR3N9jzevBRg==", + "dependencies": { + "execa": "^1.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/windows-release/node_modules/cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/windows-release/node_modules/execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dependencies": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/windows-release/node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/windows-release/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/windows-release/node_modules/npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "dependencies": { + "path-key": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/windows-release/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "engines": { + "node": ">=4" + } + }, + "node_modules/windows-release/node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, "node_modules/word-wrap": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", @@ -32240,19 +29040,11 @@ "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", "dev": true, + "peer": true, "dependencies": { "errno": "~0.1.7" } }, - "node_modules/worker-rpc": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/worker-rpc/-/worker-rpc-0.1.1.tgz", - "integrity": "sha512-P1WjMrUB3qgJNI9jfmpZ/htmBEjFh//6l/5y8SD9hg1Ef5zTTVVoRjTrTEzPrNBQvmhMxkoTsjOXN10GWU7aCg==", - "dev": true, - "dependencies": { - "microevent.ts": "~0.1.1" - } - }, "node_modules/workerpool": { "version": "6.1.5", "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.1.5.tgz", @@ -32299,7 +29091,6 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", - "dev": true, "dependencies": { "imurmurhash": "^0.1.4", "is-typedarray": "^1.0.0", @@ -32352,15 +29143,12 @@ "resolved": "https://registry.npmjs.org/xdate/-/xdate-0.8.2.tgz", "integrity": "sha1-17AzwASF0CaVuvAET06s2j/JYaM=" }, - "node_modules/xhr": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.6.0.tgz", - "integrity": "sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==", - "dependencies": { - "global": "~4.4.0", - "is-function": "^1.0.1", - "parse-headers": "^2.0.0", - "xtend": "^4.0.0" + "node_modules/xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "engines": { + "node": ">=8" } }, "node_modules/xml-js": { @@ -32380,11 +29168,6 @@ "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", "dev": true }, - "node_modules/xml-parse-from-string": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/xml-parse-from-string/-/xml-parse-from-string-1.0.1.tgz", - "integrity": "sha1-qQKekp09vN7RafPG4oI42VpdWig=" - }, "node_modules/xml-parser": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/xml-parser/-/xml-parser-1.2.1.tgz", @@ -32468,11 +29251,6 @@ "node": ">=0.6.0" } }, - "node_modules/xregexp": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.1.1.tgz", - "integrity": "sha512-QJ1gfSUV7kEOLfpKFCjBJRnfPErUzkNKFMso4kDSmGpp3x6ZgkyKf74inxI7PnnQCFYq5TqYJCd7DrgDN8Q05A==" - }, "node_modules/xss-filters": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/xss-filters/-/xss-filters-1.2.7.tgz", @@ -32497,18 +29275,21 @@ "node_modules/yallist": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" }, "node_modules/yaml": { "version": "1.10.2", "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true, "engines": { "node": ">= 6" } }, + "node_modules/yaml-js": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/yaml-js/-/yaml-js-0.3.0.tgz", + "integrity": "sha512-JbTUdsPiCkOyz+JOSqAVc19omTnUBnBQglhuclYov5HpWbEOz8y+ftqWjiMa9Pe/eF/dmCUeNgVs/VWg53GlgQ==" + }, "node_modules/yargs": { "version": "16.2.0", "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", @@ -32579,6 +29360,14 @@ } }, "dependencies": { + "@arcanis/slice-ansi": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@arcanis/slice-ansi/-/slice-ansi-1.0.2.tgz", + "integrity": "sha512-lDL63z0W/L/WTgqrwVOuNyMAsTv+pvjybd21z9SWdStmQoXT59E/iVWwat3gYjcdTNBf6oHAMoyFm8dtjpXEYw==", + "requires": { + "grapheme-splitter": "^1.0.4" + } + }, "@babel/cli": { "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.14.5.tgz", @@ -33463,15 +30252,6 @@ "@babel/helper-plugin-utils": "^7.14.5" } }, - "@babel/plugin-transform-react-constant-elements": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.14.5.tgz", - "integrity": "sha512-NBqLEx1GxllIOXJInJAQbrnwwYJsV3WaMHIcOwD8rhYS0AabTWn7kHdHgPgu5RmHLU0q4DMxhAMu8ue/KampgQ==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.14.5" - } - }, "@babel/plugin-transform-react-display-name": { "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.14.5.tgz", @@ -33613,16 +30393,16 @@ } }, "@babel/preset-env": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.14.5.tgz", - "integrity": "sha512-ci6TsS0bjrdPpWGnQ+m4f+JSSzDKlckqKIJJt9UZ/+g7Zz9k0N8lYU8IeLg/01o2h8LyNZDMLGgRLDTxpudLsA==", + "version": "7.14.7", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.14.7.tgz", + "integrity": "sha512-itOGqCKLsSUl0Y+1nSfhbuuOlTs0MJk2Iv7iSH+XT/mR8U1zRLO7NjWlYXB47yhK4J/7j+HYty/EhFZDYKa/VA==", "requires": { - "@babel/compat-data": "^7.14.5", + "@babel/compat-data": "^7.14.7", "@babel/helper-compilation-targets": "^7.14.5", "@babel/helper-plugin-utils": "^7.14.5", "@babel/helper-validator-option": "^7.14.5", "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.14.5", - "@babel/plugin-proposal-async-generator-functions": "^7.14.5", + "@babel/plugin-proposal-async-generator-functions": "^7.14.7", "@babel/plugin-proposal-class-properties": "^7.14.5", "@babel/plugin-proposal-class-static-block": "^7.14.5", "@babel/plugin-proposal-dynamic-import": "^7.14.5", @@ -33631,7 +30411,7 @@ "@babel/plugin-proposal-logical-assignment-operators": "^7.14.5", "@babel/plugin-proposal-nullish-coalescing-operator": "^7.14.5", "@babel/plugin-proposal-numeric-separator": "^7.14.5", - "@babel/plugin-proposal-object-rest-spread": "^7.14.5", + "@babel/plugin-proposal-object-rest-spread": "^7.14.7", "@babel/plugin-proposal-optional-catch-binding": "^7.14.5", "@babel/plugin-proposal-optional-chaining": "^7.14.5", "@babel/plugin-proposal-private-methods": "^7.14.5", @@ -33657,7 +30437,7 @@ "@babel/plugin-transform-block-scoping": "^7.14.5", "@babel/plugin-transform-classes": "^7.14.5", "@babel/plugin-transform-computed-properties": "^7.14.5", - "@babel/plugin-transform-destructuring": "^7.14.5", + "@babel/plugin-transform-destructuring": "^7.14.7", "@babel/plugin-transform-dotall-regex": "^7.14.5", "@babel/plugin-transform-duplicate-keys": "^7.14.5", "@babel/plugin-transform-exponentiation-operator": "^7.14.5", @@ -33669,7 +30449,7 @@ "@babel/plugin-transform-modules-commonjs": "^7.14.5", "@babel/plugin-transform-modules-systemjs": "^7.14.5", "@babel/plugin-transform-modules-umd": "^7.14.5", - "@babel/plugin-transform-named-capturing-groups-regex": "^7.14.5", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.14.7", "@babel/plugin-transform-new-target": "^7.14.5", "@babel/plugin-transform-object-super": "^7.14.5", "@babel/plugin-transform-parameters": "^7.14.5", @@ -33677,7 +30457,7 @@ "@babel/plugin-transform-regenerator": "^7.14.5", "@babel/plugin-transform-reserved-words": "^7.14.5", "@babel/plugin-transform-shorthand-properties": "^7.14.5", - "@babel/plugin-transform-spread": "^7.14.5", + "@babel/plugin-transform-spread": "^7.14.6", "@babel/plugin-transform-sticky-regex": "^7.14.5", "@babel/plugin-transform-template-literals": "^7.14.5", "@babel/plugin-transform-typeof-symbol": "^7.14.5", @@ -33688,7 +30468,7 @@ "babel-plugin-polyfill-corejs2": "^0.2.2", "babel-plugin-polyfill-corejs3": "^0.2.2", "babel-plugin-polyfill-regenerator": "^0.2.2", - "core-js-compat": "^3.14.0", + "core-js-compat": "^3.15.0", "semver": "^6.3.0" }, "dependencies": { @@ -33801,6 +30581,11 @@ "minimist": "^1.2.0" } }, + "@deepcode/dcignore": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@deepcode/dcignore/-/dcignore-1.0.2.tgz", + "integrity": "sha512-DPgxtHuJwBORpqRkPXzzOT+uoPRVJmaN7LR+pmeL6DQM90kj6G6GFUH1i/YpRH8NbML8ZGEDwB9f9u4UwD2pzg==" + }, "@egjs/hammerjs": { "version": "2.0.17", "resolved": "https://registry.npmjs.org/@egjs/hammerjs/-/hammerjs-2.0.17.tgz", @@ -33809,147 +30594,6 @@ "@types/hammerjs": "^2.0.36" } }, - "@emotion/cache": { - "version": "10.0.29", - "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-10.0.29.tgz", - "integrity": "sha512-fU2VtSVlHiF27empSbxi1O2JFdNWZO+2NFHfwO0pxgTep6Xa3uGb+3pVKfLww2l/IBGLNEZl5Xf/++A4wAYDYQ==", - "dev": true, - "requires": { - "@emotion/sheet": "0.9.4", - "@emotion/stylis": "0.8.5", - "@emotion/utils": "0.11.3", - "@emotion/weak-memoize": "0.2.5" - } - }, - "@emotion/core": { - "version": "10.1.1", - "resolved": "https://registry.npmjs.org/@emotion/core/-/core-10.1.1.tgz", - "integrity": "sha512-ZMLG6qpXR8x031NXD8HJqugy/AZSkAuMxxqB46pmAR7ze47MhNJ56cdoX243QPZdGctrdfo+s08yZTiwaUcRKA==", - "dev": true, - "requires": { - "@babel/runtime": "^7.5.5", - "@emotion/cache": "^10.0.27", - "@emotion/css": "^10.0.27", - "@emotion/serialize": "^0.11.15", - "@emotion/sheet": "0.9.4", - "@emotion/utils": "0.11.3" - } - }, - "@emotion/css": { - "version": "10.0.27", - "resolved": "https://registry.npmjs.org/@emotion/css/-/css-10.0.27.tgz", - "integrity": "sha512-6wZjsvYeBhyZQYNrGoR5yPMYbMBNEnanDrqmsqS1mzDm1cOTu12shvl2j4QHNS36UaTE0USIJawCH9C8oW34Zw==", - "dev": true, - "requires": { - "@emotion/serialize": "^0.11.15", - "@emotion/utils": "0.11.3", - "babel-plugin-emotion": "^10.0.27" - } - }, - "@emotion/hash": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@emotion/hash/-/hash-0.8.0.tgz", - "integrity": "sha512-kBJtf7PH6aWwZ6fka3zQ0p6SBYzx4fl1LoZXE2RrnYST9Xljm7WfKJrU4g/Xr3Beg72MLrp1AWNUmuYJTL7Cow==", - "dev": true - }, - "@emotion/is-prop-valid": { - "version": "0.8.8", - "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz", - "integrity": "sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==", - "dev": true, - "requires": { - "@emotion/memoize": "0.7.4" - } - }, - "@emotion/memoize": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz", - "integrity": "sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==", - "dev": true - }, - "@emotion/native": { - "version": "10.0.27", - "resolved": "https://registry.npmjs.org/@emotion/native/-/native-10.0.27.tgz", - "integrity": "sha512-3qxR2XFizGfABKKbX9kAYc0PHhKuCEuyxshoq3TaMEbi9asWHdQVChg32ULpblm4XAf9oxaitAU7J9SfdwFxtw==", - "dev": true, - "requires": { - "@emotion/primitives-core": "10.0.27" - } - }, - "@emotion/primitives-core": { - "version": "10.0.27", - "resolved": "https://registry.npmjs.org/@emotion/primitives-core/-/primitives-core-10.0.27.tgz", - "integrity": "sha512-fRBEDNPSFFOrBJ0OcheuElayrNTNdLF9DzMxtL0sFgsCFvvadlzwJHhJMSwEJuxwARm9GhVLr1p8G8JGkK98lQ==", - "dev": true, - "requires": { - "css-to-react-native": "^2.2.1" - } - }, - "@emotion/serialize": { - "version": "0.11.16", - "resolved": "https://registry.npmjs.org/@emotion/serialize/-/serialize-0.11.16.tgz", - "integrity": "sha512-G3J4o8by0VRrO+PFeSc3js2myYNOXVJ3Ya+RGVxnshRYgsvErfAOglKAiy1Eo1vhzxqtUvjCyS5gtewzkmvSSg==", - "dev": true, - "requires": { - "@emotion/hash": "0.8.0", - "@emotion/memoize": "0.7.4", - "@emotion/unitless": "0.7.5", - "@emotion/utils": "0.11.3", - "csstype": "^2.5.7" - } - }, - "@emotion/sheet": { - "version": "0.9.4", - "resolved": "https://registry.npmjs.org/@emotion/sheet/-/sheet-0.9.4.tgz", - "integrity": "sha512-zM9PFmgVSqBw4zL101Q0HrBVTGmpAxFZH/pYx/cjJT5advXguvcgjHFTCaIO3enL/xr89vK2bh0Mfyj9aa0ANA==", - "dev": true - }, - "@emotion/styled": { - "version": "10.0.27", - "resolved": "https://registry.npmjs.org/@emotion/styled/-/styled-10.0.27.tgz", - "integrity": "sha512-iK/8Sh7+NLJzyp9a5+vIQIXTYxfT4yB/OJbjzQanB2RZpvmzBQOHZWhpAMZWYEKRNNbsD6WfBw5sVWkb6WzS/Q==", - "dev": true, - "requires": { - "@emotion/styled-base": "^10.0.27", - "babel-plugin-emotion": "^10.0.27" - } - }, - "@emotion/styled-base": { - "version": "10.0.31", - "resolved": "https://registry.npmjs.org/@emotion/styled-base/-/styled-base-10.0.31.tgz", - "integrity": "sha512-wTOE1NcXmqMWlyrtwdkqg87Mu6Rj1MaukEoEmEkHirO5IoHDJ8LgCQL4MjJODgxWxXibGR3opGp1p7YvkNEdXQ==", - "dev": true, - "requires": { - "@babel/runtime": "^7.5.5", - "@emotion/is-prop-valid": "0.8.8", - "@emotion/serialize": "^0.11.15", - "@emotion/utils": "0.11.3" - } - }, - "@emotion/stylis": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", - "integrity": "sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==", - "dev": true - }, - "@emotion/unitless": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", - "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==", - "dev": true - }, - "@emotion/utils": { - "version": "0.11.3", - "resolved": "https://registry.npmjs.org/@emotion/utils/-/utils-0.11.3.tgz", - "integrity": "sha512-0o4l6pZC+hI88+bzuaX/6BgOvQVhbt2PfmxauVaYOGgbsAw14wdKyvMCZXnsnsHys94iadcF+RG/wZyx6+ZZBw==", - "dev": true - }, - "@emotion/weak-memoize": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.2.5.tgz", - "integrity": "sha512-6U71C2Wp7r5XtFtQzYrW5iKFT67OixrSxjI4MptCHzdSVlgabczzqLe0ZSgnub/5Kp4hSbpDB1tMytZY9pwxxA==", - "dev": true - }, "@eslint/eslintrc": { "version": "0.4.2", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.2.tgz", @@ -33985,16 +30629,16 @@ } }, "@expo/config": { - "version": "3.3.43", - "resolved": "https://registry.npmjs.org/@expo/config/-/config-3.3.43.tgz", - "integrity": "sha512-5a78fQqTKk7RhgrW5XzHS8ylCo9YRjZrheLyVDNNfvwAD8YjeBz6bFWsItZPpAIoaDgkLh0a8uhc11DCmqoKpw==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@expo/config/-/config-4.0.4.tgz", + "integrity": "sha512-O3xRlwMCidOgk1WHIy6eOjh2yp0h/kgBDRNKqPe21+YDiOufyTGGNvbWgHwoax8goa1iMg443WQO7GhvaH286g==", "requires": { "@babel/core": "7.9.0", "@babel/plugin-proposal-class-properties": "~7.12.13", "@babel/preset-env": "~7.12.13", "@babel/preset-typescript": "~7.12.13", - "@expo/config-plugins": "1.0.33", - "@expo/config-types": "^40.0.0-beta.2", + "@expo/config-plugins": "2.0.4", + "@expo/config-types": "^41.0.0", "@expo/json-file": "8.2.30", "fs-extra": "9.0.0", "getenv": "^1.0.0", @@ -34187,15 +30831,14 @@ } }, "@expo/config-plugins": { - "version": "1.0.33", - "resolved": "https://registry.npmjs.org/@expo/config-plugins/-/config-plugins-1.0.33.tgz", - "integrity": "sha512-YQJop0c69LKD/6ZJJto7klS7TDmzgs44TI0Z5RBqesOjYlDwNFcQk2Rl2BaA1wlAYkH+rRrhN2+WjjSyD9HiPg==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@expo/config-plugins/-/config-plugins-2.0.4.tgz", + "integrity": "sha512-JGt/X2tFr7H8KBQrKfbGo9hmCubQraMxq5sj3bqDdKmDOLcE1a/EDCP9g0U4GHsa425J8VDIkQUHYz3h3ndEXQ==", "requires": { - "@expo/config-types": "^40.0.0-beta.2", - "@expo/configure-splash-screen": "0.4.0", - "@expo/image-utils": "0.3.14", + "@expo/config-types": "^41.0.0", "@expo/json-file": "8.2.30", "@expo/plist": "0.0.13", + "debug": "^4.3.1", "find-up": "~5.0.0", "fs-extra": "9.0.0", "getenv": "^1.0.0", @@ -34297,143 +30940,9 @@ } }, "@expo/config-types": { - "version": "40.0.0-beta.2", - "resolved": "https://registry.npmjs.org/@expo/config-types/-/config-types-40.0.0-beta.2.tgz", - "integrity": "sha512-t9pHCQMXOP4nwd7LGXuHkLlFy0JdfknRSCAeVF4Kw2/y+5OBbR9hW9ZVnetpBf0kORrekgiI7K/qDaa3hh5+Qg==" - }, - "@expo/configure-splash-screen": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/@expo/configure-splash-screen/-/configure-splash-screen-0.4.0.tgz", - "integrity": "sha512-IDPnr2/DW1tYpDHqedFYNCDzRTf9HYinWFQ7fOelNZLuOCMoErLbSStA5zfkv46o69AgcCpteqgKHSoxsIBz5g==", - "requires": { - "color-string": "^1.5.3", - "commander": "^5.1.0", - "fs-extra": "^9.0.0", - "glob": "^7.1.6", - "lodash": "^4.17.15", - "pngjs": "^5.0.0", - "xcode": "^3.0.0", - "xml-js": "^1.6.11" - }, - "dependencies": { - "commander": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz", - "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==" - }, - "fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", - "requires": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, - "jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "requires": { - "graceful-fs": "^4.1.6", - "universalify": "^2.0.0" - } - }, - "universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==" - } - } - }, - "@expo/image-utils": { - "version": "0.3.14", - "resolved": "https://registry.npmjs.org/@expo/image-utils/-/image-utils-0.3.14.tgz", - "integrity": "sha512-n+JkLZ71CWuNKLVVsPTzMGRwmbeKiVQw/2b99Ro7znCKzJy3tyE5T2C6WBvYh/5h/hjg8TqEODjXXWucRIzMXA==", - "requires": { - "@expo/spawn-async": "1.5.0", - "chalk": "^4.0.0", - "fs-extra": "9.0.0", - "getenv": "^1.0.0", - "jimp": "0.12.1", - "mime": "^2.4.4", - "node-fetch": "^2.6.0", - "parse-png": "^2.1.0", - "resolve-from": "^5.0.0", - "semver": "7.3.2", - "tempy": "0.3.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "fs-extra": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.0.tgz", - "integrity": "sha512-pmEYSk3vYsG/bF651KPUXZ+hvjpgWYw/Gc7W9NFUe3ZVLczKKWIij3IKpOrQcdw4TILtibFslZ0UmR8Vvzig4g==", - "requires": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^1.0.0" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" - }, - "jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "requires": { - "graceful-fs": "^4.1.6", - "universalify": "^2.0.0" - }, - "dependencies": { - "universalify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", - "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==" - } - } - }, - "semver": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", - "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==" - }, - "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==", - "requires": { - "has-flag": "^4.0.0" - } - }, - "universalify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-1.0.0.tgz", - "integrity": "sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug==" - } - } + "version": "41.0.0", + "resolved": "https://registry.npmjs.org/@expo/config-types/-/config-types-41.0.0.tgz", + "integrity": "sha512-Ax0pHuY5OQaSrzplOkT9DdpdmNzaVDnq9VySb4Ujq7UJ4U4jriLy8u93W98zunOXpcu0iiKubPsqD6lCiq0pig==" }, "@expo/json-file": { "version": "8.2.30", @@ -34523,42 +31032,10 @@ } } }, - "@expo/spawn-async": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/@expo/spawn-async/-/spawn-async-1.5.0.tgz", - "integrity": "sha512-LB7jWkqrHo+5fJHNrLAFdimuSXQ2MQ4lA7SQW5bf/HbsXuV2VrT/jN/M8f/KoWt0uJMGN4k/j7Opx4AvOOxSew==", - "requires": { - "cross-spawn": "^6.0.5" - }, - "dependencies": { - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - } - } - }, "@formatjs/ecma402-abstract": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.9.3.tgz", - "integrity": "sha512-DBrRUL65m4SVtfq+T4Qltd8+upAzfb9K1MX0UZ0hqQ0wpBY0PSIti9XJe0ZQ/j2v/KxpwQ0Jw5NLumKVezJFQg==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.9.4.tgz", + "integrity": "sha512-ePJXI7tWC9PBxQxS7jtbkCLGVmpC8MH8n9Yjmg8dsh9wXK9svu7nAbq76Oiu5Zb+5GVkLkeTVerlSvHCbNImlA==", "requires": { "tslib": "^2.1.0" } @@ -34569,159 +31046,107 @@ "integrity": "sha512-mIqBr5uigIlx13eZTOPSEh2buDiy3BCdMYUtewICREQjbb4xarDiVWoXSnrERM7NanZ+0TAHNXSqDe6HpEFQUg==" }, "@formatjs/icu-messageformat-parser": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.0.2.tgz", - "integrity": "sha512-3joegEnfoT4qF3uH6KsXYNeRGKOlskWQhdZYN2/Xw3R2ltmMf6PHUnTZ8Up7Gsx9jNT0lDPp4zGTgzHm76Ld3Q==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.0.7.tgz", + "integrity": "sha512-gduYfh/YdBTmb1XzLueNaofiGZVMrkaDg0RSa0GNztKWs4QXIRS+28cjcuWNpV0q5S8aiLMkP7SHQpZKnPCHLw==", "requires": { - "@formatjs/ecma402-abstract": "1.8.0", - "@formatjs/icu-skeleton-parser": "1.2.3", + "@formatjs/ecma402-abstract": "1.9.4", + "@formatjs/icu-skeleton-parser": "1.2.8", "tslib": "^2.1.0" - }, - "dependencies": { - "@formatjs/ecma402-abstract": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.8.0.tgz", - "integrity": "sha512-X+nxZcIQr0YfYNtw1ZkHjN3YSyi0fEmdAJqRzk24KwNvqLv7GmVfw70mf7ADnwOvkcrSaAdx24GfAqckGTv9ww==", - "requires": { - "tslib": "^2.1.0" - } - } } }, "@formatjs/icu-skeleton-parser": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.2.3.tgz", - "integrity": "sha512-kXNbOYDgTPV5xSzyxJx2SyVtju/TScXNRzEtL/jl2gOD6RXsYReaqi+sAOVnL+Q5boYRIjd+M9kdqIQlqiZA/Q==", + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.2.8.tgz", + "integrity": "sha512-KLSSAA7Q2Uv7msij8saaOE5rpsHK/2WkfS3737JnDyVTFOYe8l2OarIBUoTC5gi1BnCgiN/1icZlqXwyUX6obA==", "requires": { - "@formatjs/ecma402-abstract": "1.8.0", + "@formatjs/ecma402-abstract": "1.9.4", "tslib": "^2.1.0" - }, - "dependencies": { - "@formatjs/ecma402-abstract": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.8.0.tgz", - "integrity": "sha512-X+nxZcIQr0YfYNtw1ZkHjN3YSyi0fEmdAJqRzk24KwNvqLv7GmVfw70mf7ADnwOvkcrSaAdx24GfAqckGTv9ww==", - "requires": { - "tslib": "^2.1.0" - } - } } }, "@formatjs/intl": { - "version": "1.10.8", - "resolved": "https://registry.npmjs.org/@formatjs/intl/-/intl-1.10.8.tgz", - "integrity": "sha512-6oRCu1McizXKTUAg+THdxizba/IqYoUgxTJ4Vf3rE1mMnwOFfZnbJzS7OhdUcdikIkPhvr3GxoSFYsqYbvumQQ==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/@formatjs/intl/-/intl-1.13.2.tgz", + "integrity": "sha512-aonTXXaI/Guqr4t87m/XWfmgE9aPefDTLRnCwadxBDkUHw1/HQeUV+lp/3BgiPZfemIdBq9UgdigDCwrpEwrTA==", "requires": { - "@formatjs/ecma402-abstract": "1.8.0", + "@formatjs/ecma402-abstract": "1.9.4", "@formatjs/fast-memoize": "1.1.1", - "@formatjs/icu-messageformat-parser": "2.0.2", - "@formatjs/intl-displaynames": "5.1.0", - "@formatjs/intl-listformat": "6.1.0", - "intl-messageformat": "9.6.14", + "@formatjs/icu-messageformat-parser": "2.0.7", + "@formatjs/intl-displaynames": "5.1.6", + "@formatjs/intl-listformat": "6.2.6", + "intl-messageformat": "9.7.1", "tslib": "^2.1.0" - }, - "dependencies": { - "@formatjs/ecma402-abstract": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.8.0.tgz", - "integrity": "sha512-X+nxZcIQr0YfYNtw1ZkHjN3YSyi0fEmdAJqRzk24KwNvqLv7GmVfw70mf7ADnwOvkcrSaAdx24GfAqckGTv9ww==", - "requires": { - "tslib": "^2.1.0" - } - } } }, "@formatjs/intl-datetimeformat": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/@formatjs/intl-datetimeformat/-/intl-datetimeformat-4.1.5.tgz", - "integrity": "sha512-qVs1yK5TLoM+j9izkDArPxgMqavMsD6vUYu6lFMo1p9m1lA6V+e92Qe0HYZ2E+QevwWnfoF3DmIw03XuUp564w==", + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/@formatjs/intl-datetimeformat/-/intl-datetimeformat-4.1.6.tgz", + "integrity": "sha512-o4M/RzBNAC/LmOwAd3W/3bsCT7xl9luddNdX9x1uZroS/8Wx6M8sE/KMNDCSZogZtmMasCBvpNmuQoeMyBBASg==", "requires": { - "@formatjs/ecma402-abstract": "1.9.3", + "@formatjs/ecma402-abstract": "1.9.4", "tslib": "^2.1.0" } }, "@formatjs/intl-displaynames": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@formatjs/intl-displaynames/-/intl-displaynames-5.1.0.tgz", - "integrity": "sha512-2pwIlHcNBZ281ySsz/E6JURVDxWsIxHn/HyxmylxBQMeW2HeFq1YuP6ycAxSMfp+EtWAN4v8TgWJQM+YBI22FA==", + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/@formatjs/intl-displaynames/-/intl-displaynames-5.1.6.tgz", + "integrity": "sha512-s0eDyQFM2gQIPgn+MyaH+UcCvp6ui2ft9UW1gsIkjBkaprRlzKMd3fjxcUFO/I7oyXXA6FYR4qHR8u1I0+PvXA==", "requires": { - "@formatjs/ecma402-abstract": "1.8.0", + "@formatjs/ecma402-abstract": "1.9.4", "tslib": "^2.1.0" - }, - "dependencies": { - "@formatjs/ecma402-abstract": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.8.0.tgz", - "integrity": "sha512-X+nxZcIQr0YfYNtw1ZkHjN3YSyi0fEmdAJqRzk24KwNvqLv7GmVfw70mf7ADnwOvkcrSaAdx24GfAqckGTv9ww==", - "requires": { - "tslib": "^2.1.0" - } - } } }, "@formatjs/intl-getcanonicallocales": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/@formatjs/intl-getcanonicallocales/-/intl-getcanonicallocales-1.7.0.tgz", - "integrity": "sha512-3pQjp+WCHrFfkUeSuw//LIx/orcykopZX4U/2kY1jTYhATVJbKdU8Rl5V2/d+fw1naKjKYoIjIXGn85Ti396+A==", + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@formatjs/intl-getcanonicallocales/-/intl-getcanonicallocales-1.7.1.tgz", + "integrity": "sha512-U+q2TNDn5LZataWFbo1vokRUgLYabUeVaSGietn22wr6ZR2O2gpMKiejoVBiyaWTDJYLckN581fsZYoJw59NMg==", "requires": { - "cldr-core": "38", "tslib": "^2.1.0" } }, "@formatjs/intl-listformat": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/@formatjs/intl-listformat/-/intl-listformat-6.1.0.tgz", - "integrity": "sha512-NsDKO0U1mVFZmoyZ0ztFL+biqztDKv1qdSvPA1S5yOYZddDy6G9SpnBZgNjhxUFIBqycNW95ibO/jrI5Ou4s5Q==", + "version": "6.2.6", + "resolved": "https://registry.npmjs.org/@formatjs/intl-listformat/-/intl-listformat-6.2.6.tgz", + "integrity": "sha512-6FMdQY1+QKqJW5IhsVPFuEaR/uRiBKP+Y1oDvamZKzDfJ2vQmk9jqSF51VztlZH8XSfdO0IgvBzeRPHahKChQA==", "requires": { - "@formatjs/ecma402-abstract": "1.8.0", + "@formatjs/ecma402-abstract": "1.9.4", "tslib": "^2.1.0" - }, - "dependencies": { - "@formatjs/ecma402-abstract": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.8.0.tgz", - "integrity": "sha512-X+nxZcIQr0YfYNtw1ZkHjN3YSyi0fEmdAJqRzk24KwNvqLv7GmVfw70mf7ADnwOvkcrSaAdx24GfAqckGTv9ww==", - "requires": { - "tslib": "^2.1.0" - } - } } }, "@formatjs/intl-locale": { - "version": "2.4.32", - "resolved": "https://registry.npmjs.org/@formatjs/intl-locale/-/intl-locale-2.4.32.tgz", - "integrity": "sha512-jA6f4ASAO3P4mBl+1nxc+lhx6x74wP+ahUOKPK9tPYZmCn7JPTAlit0iWae79vH3wE9TblOTUZ9RwYlOPWzchw==", + "version": "2.4.33", + "resolved": "https://registry.npmjs.org/@formatjs/intl-locale/-/intl-locale-2.4.33.tgz", + "integrity": "sha512-m0bEQHCYrsGTH6tF1ABK6ikHXO1mVLgsjfoKcSHrsy31TksAzELZAdnnr0mtXf5nnvb5UfCnulPHEidQM5fwJw==", "requires": { - "@formatjs/ecma402-abstract": "1.9.3", - "@formatjs/intl-getcanonicallocales": "1.7.0", - "cldr-core": "38", + "@formatjs/ecma402-abstract": "1.9.4", + "@formatjs/intl-getcanonicallocales": "1.7.1", "tslib": "^2.1.0" } }, "@formatjs/intl-numberformat": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/@formatjs/intl-numberformat/-/intl-numberformat-7.1.4.tgz", - "integrity": "sha512-rOFMlx1oLaQ7tLUwWWaqMvjQ8n4Z/C7jUlBG0qfM4oSOksluKO4MEyJZZeYjRVuNEMipIj34h12t8KicXj6gKg==", + "version": "7.1.5", + "resolved": "https://registry.npmjs.org/@formatjs/intl-numberformat/-/intl-numberformat-7.1.5.tgz", + "integrity": "sha512-1U6IEp/1vf2XzfDjLWqJuQufRZY3/F9UfOCAVp14eYVb/+gZmG4Q3heJQZXOAKnnQl3YGG73Ez7UgFVo/rowGQ==", "requires": { - "@formatjs/ecma402-abstract": "1.9.3", + "@formatjs/ecma402-abstract": "1.9.4", "tslib": "^2.1.0" } }, "@formatjs/intl-pluralrules": { - "version": "4.0.27", - "resolved": "https://registry.npmjs.org/@formatjs/intl-pluralrules/-/intl-pluralrules-4.0.27.tgz", - "integrity": "sha512-Q4RAXZXuhWwMWK3Vsbf9AIRBa9B+BTiWjNkzlCq77pCRQYo555owWrGxnZUVk2203wygOIkoRYSvP7Tu2RXNFA==", + "version": "4.0.28", + "resolved": "https://registry.npmjs.org/@formatjs/intl-pluralrules/-/intl-pluralrules-4.0.28.tgz", + "integrity": "sha512-sWtOHwEff6/cHuSk5l6zpcB3POPCYlBx3DUGASb7QU6AD/tO/oKW6oRHOCHbBdspkBEsUJByZ9LlP2r0Xw6yPQ==", "requires": { - "@formatjs/ecma402-abstract": "1.9.3", + "@formatjs/ecma402-abstract": "1.9.4", "tslib": "^2.1.0" } }, "@formatjs/intl-relativetimeformat": { - "version": "9.1.6", - "resolved": "https://registry.npmjs.org/@formatjs/intl-relativetimeformat/-/intl-relativetimeformat-9.1.6.tgz", - "integrity": "sha512-u8hvqtpkiIJEVKzafbpaLQ0tvEFjFvb1WUzXk6rYKXOaKhYEhVaTVjVdCzSKr9bsDHuHMoSiR1SvqsP2ltCUHA==", + "version": "9.1.7", + "resolved": "https://registry.npmjs.org/@formatjs/intl-relativetimeformat/-/intl-relativetimeformat-9.1.7.tgz", + "integrity": "sha512-uthmRnNg+agzulNxa4Em2Jbll1msbJdkb6CO8JrOg/CFHyXH9YPMaPjCxgzR2wdDeMjBjGnFhbTJZtqz5LN+Uw==", "requires": { - "@formatjs/ecma402-abstract": "1.9.3", + "@formatjs/ecma402-abstract": "1.9.4", "tslib": "^2.1.0" } }, @@ -34738,16 +31163,23 @@ "@hapi/hoek": "^9.0.0" } }, - "@hypnosphi/create-react-context": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/@hypnosphi/create-react-context/-/create-react-context-0.3.1.tgz", - "integrity": "sha512-V1klUed202XahrWJLLOT3EXNeCpFHCcJntdFGI15ntCwau+jfT386w7OFTMaCqOgXUH1fa0w/I1oZs+i/Rfr0A==", + "@humanwhocodes/config-array": { + "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": { - "gud": "^1.0.0", - "warning": "^4.0.3" + "@humanwhocodes/object-schema": "^1.2.0", + "debug": "^4.1.1", + "minimatch": "^3.0.4" } }, + "@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 + }, "@istanbuljs/load-nyc-config": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", @@ -35530,337 +31962,10 @@ } } }, - "@jimp/bmp": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/bmp/-/bmp-0.12.1.tgz", - "integrity": "sha512-t16IamuBMv4GiGa1VAMzsgrVKVANxXG81wXECzbikOUkUv7pKJ2vHZDgkLBEsZQ9sAvFCneM1+yoSRpuENrfVQ==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1", - "bmp-js": "^0.1.0" - } - }, - "@jimp/core": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/core/-/core-0.12.1.tgz", - "integrity": "sha512-mWfjExYEjHxBal+1gPesGChOQBSpxO7WUQkrO9KM7orboitOdQ15G5UA75ce7XVZ+5t+FQPOLmVkVZzzTQSEJA==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1", - "any-base": "^1.1.0", - "buffer": "^5.2.0", - "exif-parser": "^0.1.12", - "file-type": "^9.0.0", - "load-bmfont": "^1.3.1", - "mkdirp": "^0.5.1", - "phin": "^2.9.1", - "pixelmatch": "^4.0.2", - "tinycolor2": "^1.4.1" - } - }, - "@jimp/custom": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/custom/-/custom-0.12.1.tgz", - "integrity": "sha512-bVClp8FEJ/11GFTKeRTrfH7NgUWvVO5/tQzO/68aOwMIhbz9BOYQGh533K9+mSy29VjZJo8jxZ0C9ZwYHuFwfA==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/core": "^0.12.1" - } - }, - "@jimp/gif": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/gif/-/gif-0.12.1.tgz", - "integrity": "sha512-cGn/AcvMGUGcqR6ByClGSnrja4AYmTwsGVXTQ1+EmfAdTiy6ztGgZCTDpZ/tq4SpdHXwm9wDHez7damKhTrH0g==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1", - "omggif": "^1.0.9" - } - }, - "@jimp/jpeg": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/jpeg/-/jpeg-0.12.1.tgz", - "integrity": "sha512-UoCUHbKLj2CDCETd7LrJnmK/ExDsSfJXmc1pKkfgomvepjXogdl2KTHf141wL6D+9CfSD2VBWQLC5TvjMvcr9A==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1", - "jpeg-js": "^0.4.0" - } - }, - "@jimp/plugin-blit": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-blit/-/plugin-blit-0.12.1.tgz", - "integrity": "sha512-VRBB6bx6EpQuaH0WX8ytlGNqUQcmuxXBbzL3e+cD0W6MluYibzQy089okvXcyUS72Q+qpSMmUDCVr3pDqLAsSA==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - } - }, - "@jimp/plugin-blur": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-blur/-/plugin-blur-0.12.1.tgz", - "integrity": "sha512-rTFY0yrwVJFNgNsAlYGn2GYCRLVEcPQ6cqAuhNylXuR/7oH3Acul+ZWafeKtvN8D8uMlth/6VP74gruXvwffZw==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - } - }, - "@jimp/plugin-circle": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-circle/-/plugin-circle-0.12.1.tgz", - "integrity": "sha512-+/OiBDjby7RBbQoDX8ZsqJRr1PaGPdTaaKUVGAsrE7KCNO9ODYNFAizB9lpidXkGgJ4Wx5R4mJy21i22oY/a4Q==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - } - }, - "@jimp/plugin-color": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-color/-/plugin-color-0.12.1.tgz", - "integrity": "sha512-xlnK/msWN4uZ+Bu7+UrCs9oMzTSA9QE0jWFnF3h0aBsD8t1LGxozkckHe8nHtC/y/sxIa8BGKSfkiaW+r6FbnA==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1", - "tinycolor2": "^1.4.1" - } - }, - "@jimp/plugin-contain": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-contain/-/plugin-contain-0.12.1.tgz", - "integrity": "sha512-WZ/D6G0jhnBh2bkBh610PEh/caGhAUIAxYLsQsfSSlOxPsDhbj3S6hMbFKRgnDvf0hsd5zTIA0j1B0UG4kh18A==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - } - }, - "@jimp/plugin-cover": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-cover/-/plugin-cover-0.12.1.tgz", - "integrity": "sha512-ddWwTQO40GcabJ2UwUYCeuNxnjV4rBTiLprnjGMqAJCzdz3q3Sp20FkRf+H+E22k2v2LHss8dIOFOF4i6ycr9Q==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - } - }, - "@jimp/plugin-crop": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-crop/-/plugin-crop-0.12.1.tgz", - "integrity": "sha512-CKjVkrNO8FDZKYVpMireQW4SgKBSOdF+Ip/1sWssHHe77+jGEKqOjhYju+VhT3dZJ3+75rJNI9II7Kethp+rTw==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - } - }, - "@jimp/plugin-displace": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-displace/-/plugin-displace-0.12.1.tgz", - "integrity": "sha512-MQAw2iuf1/bVJ6P95WWTLA+WBjvIZ7TeGBerkvBaTK8oWdj+NSLNRIYOIoyPbZ7DTL8f1SN4Vd6KD6BZaoWrwg==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - } - }, - "@jimp/plugin-dither": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-dither/-/plugin-dither-0.12.1.tgz", - "integrity": "sha512-mCrBHdx2ViTLJDLcrobqGLlGhZF/Mq41bURWlElQ2ArvrQ3/xR52We9DNDfC08oQ2JVb6q3v1GnCCdn0KNojGQ==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - } - }, - "@jimp/plugin-fisheye": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-fisheye/-/plugin-fisheye-0.12.1.tgz", - "integrity": "sha512-CHvYSXtHNplzkkYzB44tENPDmvfUHiYCnAETTY+Hx58kZ0w8ERZ+OiLhUmiBcvH/QHm/US1iiNjgGUAfeQX6dg==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - } - }, - "@jimp/plugin-flip": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-flip/-/plugin-flip-0.12.1.tgz", - "integrity": "sha512-xi+Yayrnln8A/C9E3yQBExjxwBSeCkt/ZQg1CxLgszVyX/3Zo8+nkV8MJYpkTpj8LCZGTOKlsE05mxu/a3lbJQ==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - } - }, - "@jimp/plugin-gaussian": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-gaussian/-/plugin-gaussian-0.12.1.tgz", - "integrity": "sha512-7O6eKlhL37hsLfV6WAX1Cvce7vOqSwL1oWbBveC1agutDlrtvcTh1s2mQ4Pde654hCJu55mq1Ur10+ote5j3qw==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - } - }, - "@jimp/plugin-invert": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-invert/-/plugin-invert-0.12.1.tgz", - "integrity": "sha512-JTAs7A1Erbxwl+7ph7tgcb2PZ4WzB+3nb2WbfiWU8iCrKj17mMDSc5soaCCycn8wfwqvgB1vhRfGpseOLWxsuQ==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - } - }, - "@jimp/plugin-mask": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-mask/-/plugin-mask-0.12.1.tgz", - "integrity": "sha512-bnDdY0RO/x5Mhqoy+056SN1wEj++sD4muAKqLD2CIT8Zq5M/0TA4hkdf/+lwFy3H2C0YTK39PSE9xyb4jPX3kA==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - } - }, - "@jimp/plugin-normalize": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-normalize/-/plugin-normalize-0.12.1.tgz", - "integrity": "sha512-4kSaI4JLM/PNjHwbnAHgyh51V5IlPfPxYvsZyZ1US32pebWtocxSMaSuOaJUg7OGSkwSDBv81UR2h5D+Dz1b5A==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - } - }, - "@jimp/plugin-print": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-print/-/plugin-print-0.12.1.tgz", - "integrity": "sha512-T0lNS3qU9SwCHOEz7AGrdp50+gqiWGZibOL3350/X/dqoFs1EvGDjKVeWncsGCyLlpfd7M/AibHZgu8Fx2bWng==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1", - "load-bmfont": "^1.4.0" - } - }, - "@jimp/plugin-resize": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-resize/-/plugin-resize-0.12.1.tgz", - "integrity": "sha512-sbNn4tdBGcgGlPt9XFxCuDl4ZOoxa8/Re8nAikyxYhRss2Dqz91ARbBQxOf1vlUGeicQMsjEuWbPQAogTSJRug==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - } - }, - "@jimp/plugin-rotate": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-rotate/-/plugin-rotate-0.12.1.tgz", - "integrity": "sha512-RYkLzwG2ervG6hHy8iepbIVeWdT1kz4Qz044eloqo6c66MK0KAqp228YI8+CAKm0joQnVDC/A0FgRIj/K8uyAw==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - } - }, - "@jimp/plugin-scale": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-scale/-/plugin-scale-0.12.1.tgz", - "integrity": "sha512-zjNVI1fUj+ywfG78T1ZU33g9a5sk4rhEQkkhtny8koAscnVsDN2YaZEKoFli54kqaWh5kSS5DDL7a/9pEfXnFQ==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - } - }, - "@jimp/plugin-shadow": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-shadow/-/plugin-shadow-0.12.1.tgz", - "integrity": "sha512-Z82IwvunXWQ2jXegd3W3TYUXpfJcEvNbHodr7Z+oVnwhM1OoQ5QC6RSRQwsj2qXIhbGffQjH8eguHgEgAV+u5w==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - } - }, - "@jimp/plugin-threshold": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugin-threshold/-/plugin-threshold-0.12.1.tgz", - "integrity": "sha512-PFezt5fSk0q+xKvdpuv0eLggy2I7EgYotrK8TRZOT0jimuYFXPF0Z514c6szumoW5kEsRz04L1HkPT1FqI97Yg==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1" - } - }, - "@jimp/plugins": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/plugins/-/plugins-0.12.1.tgz", - "integrity": "sha512-7+Yp29T6BbYo+Oqnc+m7A5AH+O+Oy5xnxvxlfmsp48+SuwEZ4akJp13Gu2PSmRlylENzR7MlWOxzhas5ERNlIg==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/plugin-blit": "^0.12.1", - "@jimp/plugin-blur": "^0.12.1", - "@jimp/plugin-circle": "^0.12.1", - "@jimp/plugin-color": "^0.12.1", - "@jimp/plugin-contain": "^0.12.1", - "@jimp/plugin-cover": "^0.12.1", - "@jimp/plugin-crop": "^0.12.1", - "@jimp/plugin-displace": "^0.12.1", - "@jimp/plugin-dither": "^0.12.1", - "@jimp/plugin-fisheye": "^0.12.1", - "@jimp/plugin-flip": "^0.12.1", - "@jimp/plugin-gaussian": "^0.12.1", - "@jimp/plugin-invert": "^0.12.1", - "@jimp/plugin-mask": "^0.12.1", - "@jimp/plugin-normalize": "^0.12.1", - "@jimp/plugin-print": "^0.12.1", - "@jimp/plugin-resize": "^0.12.1", - "@jimp/plugin-rotate": "^0.12.1", - "@jimp/plugin-scale": "^0.12.1", - "@jimp/plugin-shadow": "^0.12.1", - "@jimp/plugin-threshold": "^0.12.1", - "timm": "^1.6.1" - } - }, - "@jimp/png": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/png/-/png-0.12.1.tgz", - "integrity": "sha512-tOUSJMJzcMAN82F9/Q20IToquIVWzvOe/7NIpVQJn6m+Lq6TtVmd7d8gdcna9AEFm2FIza5lhq2Kta6Xj0KXhQ==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/utils": "^0.12.1", - "pngjs": "^3.3.3" - }, - "dependencies": { - "pngjs": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", - "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==" - } - } - }, - "@jimp/tiff": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/tiff/-/tiff-0.12.1.tgz", - "integrity": "sha512-bzWDgv3202TKhaBGzV9OFF0PVQWEb4194h9kv5js348SSnbCusz/tzTE1EwKrnbDZThZPgTB1ryKs7D+Q9Mhmg==", - "requires": { - "@babel/runtime": "^7.7.2", - "utif": "^2.0.1" - } - }, - "@jimp/types": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/types/-/types-0.12.1.tgz", - "integrity": "sha512-hg5OKXpWWeKGuDrfibrjWWhr7hqb7f552wqnPWSLQpVrdWgjH+hpOv6cOzdo9bsU78qGTelZJPxr0ERRoc+MhQ==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/bmp": "^0.12.1", - "@jimp/gif": "^0.12.1", - "@jimp/jpeg": "^0.12.1", - "@jimp/png": "^0.12.1", - "@jimp/tiff": "^0.12.1", - "timm": "^1.6.1" - } - }, - "@jimp/utils": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/@jimp/utils/-/utils-0.12.1.tgz", - "integrity": "sha512-EjPkDQOzV/oZfbolEUgFT6SE++PtCccVBvjuACkttyCfl0P2jnpR49SwstyVLc2u8AwBAZEHHAw9lPYaMjtbXQ==", - "requires": { - "@babel/runtime": "^7.7.2", - "regenerator-runtime": "^0.13.3" - } - }, "@mattermost/react-native-emm": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@mattermost/react-native-emm/-/react-native-emm-1.1.3.tgz", - "integrity": "sha512-mqNJ6SQlzBp+F0qg411nOlQXJLj9pVUyDoVAbHGRP4p7PcAU2cQEbEyOJ82luLcqj+9+bcoW2tl19bO35FomWQ==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@mattermost/react-native-emm/-/react-native-emm-1.1.4.tgz", + "integrity": "sha512-Boi1lJ/pYHqhfU+xoSSo/qCt1colSVxgUjb0K3mfqvm3fhFtt41aZEg2yX46o6K7Rh1zAZv0zUk0xkYF5LDG4Q==", "requires": {} }, "@mattermost/react-native-network-client": { @@ -35872,21 +31977,11 @@ } }, "@mattermost/react-native-paste-input": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/@mattermost/react-native-paste-input/-/react-native-paste-input-0.1.3.tgz", - "integrity": "sha512-SfMnSjUe8qhVXZW1H41SrB3dScTNsrWqL/c0HhEyoni6oFrsaLlVCkbUKnwr6XBR/HHOR9uhi2i92U8r6W1Guw==", + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/@mattermost/react-native-paste-input/-/react-native-paste-input-0.1.4.tgz", + "integrity": "sha512-ySAfEt9gP3rUKsUgWPMCLAx3iGPAP8Tqen0Hy9tIxkDHYuI8IvRAZbo73gY+3n26QxlkqTngxMxnxAR5n250zg==", "requires": {} }, - "@mrmlnc/readdir-enhanced": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz", - "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==", - "dev": true, - "requires": { - "call-me-maybe": "^1.0.1", - "glob-to-regexp": "^0.3.0" - } - }, "@nicolo-ribaudo/chokidar-2": { "version": "2.1.8-no-fsevents.2", "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/chokidar-2/-/chokidar-2-2.1.8-no-fsevents.2.tgz", @@ -35911,7 +32006,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" @@ -35920,14 +32014,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.7", "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.7.tgz", "integrity": "sha512-BTIhocbPBSrRmHxOAJFtR18oLhxTtAFDAvL8hY1S3iU8k+E60W/YFs4jrixGzQjMpF4qPXxIQHcjVD9dz1C2QA==", - "dev": true, "requires": { "@nodelib/fs.scandir": "2.1.5", "fastq": "^1.6.0" @@ -35950,21 +32042,46 @@ "lokijs": "npm:@nozbe/lokijs@1.5.12-wmelon2", "rxjs": "^6.5.3", "sql-escape-string": "^1.1.0" + }, + "dependencies": { + "@nozbe/with-observables": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@nozbe/with-observables/-/with-observables-1.3.0.tgz", + "integrity": "sha512-pcE8+FeDgDmHJcKjTkFrC3qAoSG6UvofpF65Hs4pCSNn243G7Tu5Fdlo56n9tAXKr7X37f73VmT8g8wXdojO4w==", + "requires": { + "hoist-non-react-statics": "^3.3.2" + } + } } }, "@nozbe/with-observables": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/@nozbe/with-observables/-/with-observables-1.3.0.tgz", - "integrity": "sha512-pcE8+FeDgDmHJcKjTkFrC3qAoSG6UvofpF65Hs4pCSNn243G7Tu5Fdlo56n9tAXKr7X37f73VmT8g8wXdojO4w==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@nozbe/with-observables/-/with-observables-1.4.0.tgz", + "integrity": "sha512-vzc0QiYcXK/GmflBGBXTs02ayL25e1l4Cr9aYgSuYCZVqpyMfep9xp89RygNbiibAfVLbgEUa7thxlm3jw8hFw==", "requires": { "hoist-non-react-statics": "^3.3.2" } }, - "@popperjs/core": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.9.2.tgz", - "integrity": "sha512-VZMYa7+fXHdwIq1TDhSXoVmSPEGM/aa+6Aiq3nVVJ9bXr24zScr+NlKFKC3iPljA7ho/GAZr+d2jOf5GIRC30Q==", - "dev": true + "@octetstream/promisify": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/@octetstream/promisify/-/promisify-2.0.2.tgz", + "integrity": "sha512-7XHoRB61hxsz8lBQrjC1tq/3OEIgpvGWg6DKAdwi7WRzruwkmsdwmOoUXbU4Dtd4RSOMDwed0SkP3y8UlMt1Bg==" + }, + "@open-policy-agent/opa-wasm": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@open-policy-agent/opa-wasm/-/opa-wasm-1.2.0.tgz", + "integrity": "sha512-CtUBTnzvDrT0NASa8IuGQTxFGgt2vxbLnMYuTA+uDFxOcA4uK4mGFgrhHJtxUZnWHiwemOvKKSY3BMCo7qiAsQ==", + "requires": { + "sprintf-js": "^1.1.2", + "utf8": "^3.0.0" + }, + "dependencies": { + "sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==" + } + } }, "@react-native-community/async-storage": { "version": "1.12.1", @@ -36788,9 +32905,9 @@ "integrity": "sha512-0jbp4RxjYopTsIdLl+/Fy2TiwVYHy4mgeu07DG4b/LyM0OS/+lPP5c9sbnt/AMlnF6qz2JRZpPpGw1eMNS6A4w==" }, "@rudderstack/rudder-sdk-react-native": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/@rudderstack/rudder-sdk-react-native/-/rudder-sdk-react-native-1.0.10.tgz", - "integrity": "sha512-d1qraDHJCc3f8mpczzMie0RAIJ1UuR557cIKUHbBHda/KeSxeSdBobs1oGxztza1ZCCoZtAjs4i0WdXFr4+gsw==", + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/@rudderstack/rudder-sdk-react-native/-/rudder-sdk-react-native-1.0.12.tgz", + "integrity": "sha512-s/w86gpWwvNaP0H5syJtMyM3AM20OzBUN7cub7qXXuCo0oX56I37420s5+/qif5f7T5pfiFfQYAAboI8Z2l1YA==", "requires": { "@babel/runtime": "^7.7.7", "@types/react-native": "^0.62.2", @@ -36930,9 +33047,9 @@ } }, "@sentry/react-native": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/@sentry/react-native/-/react-native-2.5.2.tgz", - "integrity": "sha512-AwcDZ+1SQ1EBFwnlYFGwSF/T3KrV1kdir3H9XOtR8WrxaItbwlkqwwP7D1EBMHu02WmuOgJ2a8aJlrhqEJ2pYA==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/@sentry/react-native/-/react-native-2.6.0.tgz", + "integrity": "sha512-Sajrg7GWSZ1S26X2mIHRt+wCuc7CuPjdmx8tQfDg6cpswXgqryb0fv99VCpImb4ZB/WiaCTu2z9BSGUiZahnBg==", "requires": { "@sentry/browser": "6.7.1", "@sentry/core": "6.7.1", @@ -37020,6 +33137,11 @@ "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz", "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==" }, + "@sindresorhus/is": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.0.1.tgz", + "integrity": "sha512-Qm9hBEBu18wt1PO2flE7LPb30BHMQt1eQgbV76YntdNk73XZGpn3izvGTYxbGgzXKgbCjiia0uxTd3aTNQrY/g==" + }, "@sinonjs/commons": { "version": "1.8.3", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.3.tgz", @@ -37039,739 +33161,395 @@ "@sinonjs/commons": "^1.7.0" } }, - "@storybook/addon-knobs": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/addon-knobs/-/addon-knobs-6.2.9.tgz", - "integrity": "sha512-ic3xXy9uWPfIGP4x3VuGnrUmg/Jn9rHKIqZMhRcC7mFDRVlgbekvQxaruC6VY9LW6o8jV/miReSZkJf7M8o0aQ==", - "dev": true, + "@snyk/child-process": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/@snyk/child-process/-/child-process-0.3.1.tgz", + "integrity": "sha512-iJn0ENqf3xnYQdG/j9+pdqQPTrXCNXWU3I/AXGFx6Zr8IRBqBr5vXGTuwIJBYkq7s6bfIfz5AjUgPShCzeqn0w==", "requires": { - "@storybook/addons": "6.2.9", - "@storybook/api": "6.2.9", - "@storybook/channels": "6.2.9", - "@storybook/client-api": "6.2.9", - "@storybook/components": "6.2.9", - "@storybook/core-events": "6.2.9", - "@storybook/theming": "6.2.9", - "copy-to-clipboard": "^3.3.1", - "core-js": "^3.8.2", - "escape-html": "^1.0.3", - "fast-deep-equal": "^3.1.3", - "global": "^4.4.0", - "lodash": "^4.17.20", - "prop-types": "^15.7.2", - "qs": "^6.10.0", - "react-colorful": "^5.0.1", - "react-lifecycles-compat": "^3.0.4", - "react-select": "^3.2.0", - "regenerator-runtime": "^0.13.7" - } - }, - "@storybook/addon-ondevice-knobs": { - "version": "5.3.25", - "resolved": "https://registry.npmjs.org/@storybook/addon-ondevice-knobs/-/addon-ondevice-knobs-5.3.25.tgz", - "integrity": "sha512-jbPNcbtLv3I7iGUYN7ZCXBPCg2Qr8s06Nz8S+GEYTKr/KqySPi7in2vNeZi7DqYcKe9ZtcbjdCe5emZuIAVu5A==", - "dev": true, - "requires": { - "@emotion/native": "^10.0.14", - "@storybook/addons": "5.3.21", - "@storybook/core-events": "5.3.21", - "core-js": "^3.0.1", - "deep-equal": "^1.0.1", - "prop-types": "^15.7.2", - "react-native-modal-datetime-picker": "^7.4.2", - "react-native-modal-selector": "^2.0.2", - "tinycolor2": "^1.4.1" + "debug": "^4.1.1", + "source-map-support": "^0.5.16", + "tslib": "^1.10.0" }, "dependencies": { - "@reach/router": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@reach/router/-/router-1.3.4.tgz", - "integrity": "sha512-+mtn9wjlB9NN2CNnnC/BRYtwdKBfSyyasPYraNAyvaV1occr/5NnB4CVzjEZipNHwYebQwcndGUmpFzxAUoqSA==", - "dev": true, - "requires": { - "create-react-context": "0.3.0", - "invariant": "^2.2.3", - "prop-types": "^15.6.1", - "react-lifecycles-compat": "^3.0.4" - } - }, - "@storybook/addons": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/addons/-/addons-5.3.21.tgz", - "integrity": "sha512-Ji/21WADTLVbTbiKcZ64BcL0Es+h1Afxx3kNmGJqPSTUYroCwIFCT9mUzCqU6G+YyWaISAmTii5UJkTwMkChwA==", - "dev": true, - "requires": { - "@storybook/api": "5.3.21", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "core-js": "^3.0.1", - "global": "^4.3.2", - "util-deprecate": "^1.0.2" - } - }, - "@storybook/api": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/api/-/api-5.3.21.tgz", - "integrity": "sha512-K1o4an/Rx8daKRDooks6qzN6ZGyqizeacZZbair3F8CsSfTgrr2zCcf9pgKojLQa9koEmMHlcdb2KnS+GwPEgA==", - "dev": true, - "requires": { - "@reach/router": "^1.2.1", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "@storybook/csf": "0.0.1", - "@storybook/router": "5.3.21", - "@storybook/theming": "5.3.21", - "@types/reach__router": "^1.2.3", - "core-js": "^3.0.1", - "fast-deep-equal": "^2.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "prop-types": "^15.6.2", - "react": "^16.8.3", - "semver": "^6.0.0", - "shallow-equal": "^1.1.0", - "store2": "^2.7.1", - "telejson": "^3.2.0", - "util-deprecate": "^1.0.2" - }, - "dependencies": { - "@storybook/router": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/router/-/router-5.3.21.tgz", - "integrity": "sha512-c29m5UikK5Q1lyd6FltOGFhIcpd6PIb855YS3OUNe3F6ZA1tfJ+aNKrCBc65d1c+fvCGG76dYYYv0RvwEmKXXg==", - "dev": true, - "requires": { - "@reach/router": "^1.2.1", - "@storybook/csf": "0.0.1", - "@types/reach__router": "^1.2.3", - "core-js": "^3.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "qs": "^6.6.0", - "util-deprecate": "^1.0.2" - } - }, - "@storybook/theming": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-5.3.21.tgz", - "integrity": "sha512-FZbxjizqdO9lV5LUixPio/7+6UdPiswCzTJn8Hcot9uwwgfnrViRdN7xyjmSYRqv9nHP3OlYbtdeCAgZ4aPq8g==", - "dev": true, - "requires": { - "@emotion/core": "^10.0.20", - "@emotion/styled": "^10.0.17", - "@storybook/client-logger": "5.3.21", - "core-js": "^3.0.1", - "deep-object-diff": "^1.1.0", - "emotion-theming": "^10.0.19", - "global": "^4.3.2", - "memoizerific": "^1.11.3", - "polished": "^3.3.1", - "prop-types": "^15.7.2", - "resolve-from": "^5.0.0", - "ts-dedent": "^1.1.0" - } - }, - "react": { - "version": "16.14.0", - "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", - "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", - "dev": true, - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2" - } - } - } - }, - "@storybook/channels": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-5.3.21.tgz", - "integrity": "sha512-OXoFs9XtBVg/cCk6lYMrxkzaNlJRf54ABdorp7YAAj7S9tRL1JxOZHxmjNQwEoiRvssmem2rAWtEAxfuEANsAA==", - "dev": true, - "requires": { - "core-js": "^3.0.1" - } - }, - "@storybook/client-logger": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-5.3.21.tgz", - "integrity": "sha512-OzQkwpZ5SK9cXD9Mv6lxPGPot+hSZvnkEW12kpt1AHfJz4ET26YTDOI3oetPsjfRJo6qYLeQX8+wF7rklfXbzA==", - "dev": true, - "requires": { - "core-js": "^3.0.1" - } - }, - "@storybook/core-events": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-5.3.21.tgz", - "integrity": "sha512-/Zsm1sKAh6pzQv8jQUmuhM7nuM01ZljIRKy8p2HjPNlMjDB5yaRkBfyeAUXUg+qXNI6aHVWa4jGdPEdwwY4oLA==", - "dev": true, - "requires": { - "core-js": "^3.0.1" - } - }, - "create-react-context": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/create-react-context/-/create-react-context-0.3.0.tgz", - "integrity": "sha512-dNldIoSuNSvlTJ7slIKC/ZFGKexBMBrrcc+TTe1NdmROnaASuLPvqpwj9v4XS4uXZ8+YPu0sNmShX2rXI5LNsw==", - "dev": true, - "requires": { - "gud": "^1.0.0", - "warning": "^4.0.3" - } - }, - "deep-equal": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", - "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", - "dev": true, - "requires": { - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.1", - "is-regex": "^1.0.4", - "object-is": "^1.0.1", - "object-keys": "^1.1.1", - "regexp.prototype.flags": "^1.2.0" - } - }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "isobject": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", - "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", - "dev": true - }, - "polished": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/polished/-/polished-3.7.2.tgz", - "integrity": "sha512-pQKtpZGmsZrW8UUpQMAnR7s3ppHeMQVNyMDKtUyKwuvDmklzcEyM5Kllb3JyE/sE/x7arDmyd35i+4vp99H6sQ==", - "dev": true, - "requires": { - "@babel/runtime": "^7.12.5" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "telejson": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/telejson/-/telejson-3.3.0.tgz", - "integrity": "sha512-er08AylQ+LEbDLp1GRezORZu5wKOHaBczF6oYJtgC3Idv10qZ8A3p6ffT+J5BzDKkV9MqBvu8HAKiIIOp6KJ2w==", - "dev": true, - "requires": { - "@types/is-function": "^1.0.0", - "global": "^4.4.0", - "is-function": "^1.0.1", - "is-regex": "^1.0.4", - "is-symbol": "^1.0.3", - "isobject": "^4.0.0", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3" - } - }, - "ts-dedent": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-1.2.0.tgz", - "integrity": "sha512-6zSJp23uQI+Txyz5LlXMXAHpUhY4Hi0oluXny0OgIR7g/Cromq4vDBnhtbBdyIV34g0pgwxUvnvg+jLJe4c1NA==", - "dev": true + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" } } }, - "@storybook/addons": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/addons/-/addons-6.2.9.tgz", - "integrity": "sha512-GnmEKbJwiN1jncN9NSA8CuR1i2XAlasPcl/Zn0jkfV9WitQeczVcJCPw86SGH84AD+tTBCyF2i9UC0KaOV1YBQ==", - "dev": true, + "@snyk/cli-interface": { + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/@snyk/cli-interface/-/cli-interface-2.11.0.tgz", + "integrity": "sha512-T3xfDqrEFKclHGdJx4/5+D5F7e76/99f33guE4RTlVITBhy7VVnjz4t/NDr3UYqcC0MgAmiC4bSVYHnlshuwJw==", "requires": { - "@storybook/api": "6.2.9", - "@storybook/channels": "6.2.9", - "@storybook/client-logger": "6.2.9", - "@storybook/core-events": "6.2.9", - "@storybook/router": "6.2.9", - "@storybook/theming": "6.2.9", - "core-js": "^3.8.2", - "global": "^4.4.0", - "regenerator-runtime": "^0.13.7" + "@types/graphlib": "^2" } }, - "@storybook/api": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/api/-/api-6.2.9.tgz", - "integrity": "sha512-okkA3HAScE9tGnYBrjTOcgzT+L1lRHNoEh3ZfGgh1u/XNEyHGNkj4grvkd6nX7BzRcYQ/l2VkcKCqmOjUnSkVQ==", - "dev": true, + "@snyk/cloud-config-parser": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@snyk/cloud-config-parser/-/cloud-config-parser-1.9.3.tgz", + "integrity": "sha512-qv9NsIESPtyC2vKkqA7wEFePNuklksnQWJTWX8Cy3CQoCpZk80XwH50OVpDIU2szgnkWUm1XNSahG/IwVMSbOw==", "requires": { - "@reach/router": "^1.3.4", - "@storybook/channels": "6.2.9", - "@storybook/client-logger": "6.2.9", - "@storybook/core-events": "6.2.9", - "@storybook/csf": "0.0.1", - "@storybook/router": "6.2.9", - "@storybook/semver": "^7.3.2", - "@storybook/theming": "6.2.9", - "@types/reach__router": "^1.3.7", - "core-js": "^3.8.2", - "fast-deep-equal": "^3.1.3", - "global": "^4.4.0", - "lodash": "^4.17.20", - "memoizerific": "^1.11.3", - "qs": "^6.10.0", - "regenerator-runtime": "^0.13.7", - "store2": "^2.12.0", - "telejson": "^5.1.0", - "ts-dedent": "^2.0.0", - "util-deprecate": "^1.0.2" + "esprima": "^4.0.1", + "tslib": "^1.10.0", + "yaml-js": "^0.3.0" }, "dependencies": { - "@reach/router": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@reach/router/-/router-1.3.4.tgz", - "integrity": "sha512-+mtn9wjlB9NN2CNnnC/BRYtwdKBfSyyasPYraNAyvaV1occr/5NnB4CVzjEZipNHwYebQwcndGUmpFzxAUoqSA==", - "dev": true, - "requires": { - "create-react-context": "0.3.0", - "invariant": "^2.2.3", - "prop-types": "^15.6.1", - "react-lifecycles-compat": "^3.0.4" - } - }, - "create-react-context": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/create-react-context/-/create-react-context-0.3.0.tgz", - "integrity": "sha512-dNldIoSuNSvlTJ7slIKC/ZFGKexBMBrrcc+TTe1NdmROnaASuLPvqpwj9v4XS4uXZ8+YPu0sNmShX2rXI5LNsw==", - "dev": true, - "requires": { - "gud": "^1.0.0", - "warning": "^4.0.3" - } + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" } } }, - "@storybook/channel-postmessage": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/channel-postmessage/-/channel-postmessage-6.2.9.tgz", - "integrity": "sha512-OqV+gLeeCHR0KExsIz0B7gD17Cjd9D+I75qnBsLWM9inWO5kc/WZ5svw8Bvjlcm6snWpvxUaT8L+svuqcPSmww==", - "dev": true, + "@snyk/cocoapods-lockfile-parser": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/@snyk/cocoapods-lockfile-parser/-/cocoapods-lockfile-parser-3.6.2.tgz", + "integrity": "sha512-ca2JKOnSRzYHJkhOB9gYmdRZHmd02b/uBd/S0D5W+L9nIMS7sUBV5jfhKwVgrYPIpVNIc0XCI9rxK4TfkQRpiA==", "requires": { - "@storybook/channels": "6.2.9", - "@storybook/client-logger": "6.2.9", - "@storybook/core-events": "6.2.9", - "core-js": "^3.8.2", - "global": "^4.4.0", - "qs": "^6.10.0", - "telejson": "^5.1.0" - } - }, - "@storybook/channel-websocket": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/channel-websocket/-/channel-websocket-5.3.21.tgz", - "integrity": "sha512-9TcsCvgZMdCZu2urudyLhshuQxjCsFUd8pu6ZzcxBFn5a8kgb1oKEv9pD0A9S+uQ2ramYgtqykRiG4Z3/JeuyA==", - "dev": true, - "requires": { - "@storybook/channels": "5.3.21", - "core-js": "^3.0.1", - "global": "^4.3.2", - "telejson": "^3.2.0" + "@snyk/dep-graph": "^1.23.1", + "@types/js-yaml": "^3.12.1", + "js-yaml": "^3.13.1", + "tslib": "^1.10.0" }, "dependencies": { - "@storybook/channels": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-5.3.21.tgz", - "integrity": "sha512-OXoFs9XtBVg/cCk6lYMrxkzaNlJRf54ABdorp7YAAj7S9tRL1JxOZHxmjNQwEoiRvssmem2rAWtEAxfuEANsAA==", - "dev": true, - "requires": { - "core-js": "^3.0.1" - } - }, - "isobject": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", - "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", - "dev": true - }, - "telejson": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/telejson/-/telejson-3.3.0.tgz", - "integrity": "sha512-er08AylQ+LEbDLp1GRezORZu5wKOHaBczF6oYJtgC3Idv10qZ8A3p6ffT+J5BzDKkV9MqBvu8HAKiIIOp6KJ2w==", - "dev": true, - "requires": { - "@types/is-function": "^1.0.0", - "global": "^4.4.0", - "is-function": "^1.0.1", - "is-regex": "^1.0.4", - "is-symbol": "^1.0.3", - "isobject": "^4.0.0", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3" - } + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" } } }, - "@storybook/channels": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-6.2.9.tgz", - "integrity": "sha512-6dC8Fb2ipNyOQXnUZMDeEUaJGH5DMLzyHlGLhVyDtrO5WR6bO8mQdkzf4+5dSKXgCBNX0BSkssXth4pDjn18rg==", - "dev": true, + "@snyk/code-client": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/@snyk/code-client/-/code-client-3.9.0.tgz", + "integrity": "sha512-sscrpiODOlQI87B4OFIClnoZmHEHzJ7vULYhikS/R/2KavG4vGPw7Qe2to5rximxR3VFdWQ0wNVFB0RkU2mjPQ==", "requires": { - "core-js": "^3.8.2", - "ts-dedent": "^2.0.0", - "util-deprecate": "^1.0.2" + "@deepcode/dcignore": "^1.0.2", + "@snyk/fast-glob": "^3.2.6-patch", + "@types/flat-cache": "^2.0.0", + "@types/lodash.chunk": "^4.2.6", + "@types/lodash.omit": "^4.5.6", + "@types/lodash.union": "^4.6.6", + "@types/sarif": "^2.1.3", + "@types/uuid": "^8.3.0", + "axios": "^0.21.1", + "ignore": "^5.1.8", + "lodash.chunk": "^4.2.0", + "lodash.omit": "^4.5.0", + "lodash.union": "^4.6.0", + "multimatch": "^5.0.0", + "queue": "^6.0.1", + "uuid": "^8.3.2" + }, + "dependencies": { + "ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==" + }, + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + } } }, - "@storybook/client-api": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/client-api/-/client-api-6.2.9.tgz", - "integrity": "sha512-aLvEUVkbvv6Qo/2mF4rFCecdqi2CGOUDdsV1a6EFIVS/9gXFdpirsOwKHo9qNjacGdWPlBYGCUcbrw+DvNaSFA==", - "dev": true, + "@snyk/composer-lockfile-parser": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@snyk/composer-lockfile-parser/-/composer-lockfile-parser-1.4.1.tgz", + "integrity": "sha512-wNANv235j95NFsQuODIXCiQZ9kcyg9fz92Kg1zoGvaP3kN/ma7fgCnvQL/dyml6iouQJR5aZovjhrrfEFoKtiQ==", "requires": { - "@storybook/addons": "6.2.9", - "@storybook/channel-postmessage": "6.2.9", - "@storybook/channels": "6.2.9", - "@storybook/client-logger": "6.2.9", - "@storybook/core-events": "6.2.9", - "@storybook/csf": "0.0.1", - "@types/qs": "^6.9.5", - "@types/webpack-env": "^1.16.0", - "core-js": "^3.8.2", - "global": "^4.4.0", - "lodash": "^4.17.20", - "memoizerific": "^1.11.3", - "qs": "^6.10.0", - "regenerator-runtime": "^0.13.7", - "stable": "^0.1.8", - "store2": "^2.12.0", - "ts-dedent": "^2.0.0", - "util-deprecate": "^1.0.2" + "lodash.findkey": "^4.6.0", + "lodash.get": "^4.4.2", + "lodash.invert": "^4.3.0", + "lodash.isempty": "^4.4.0" } }, - "@storybook/client-logger": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-6.2.9.tgz", - "integrity": "sha512-IfOQZuvpjh66qBInQCJOb9S0dTGpzZ/Cxlcvokp+PYt95KztaWN3mPm+HaDQCeRsrWNe0Bpm1zuickcJ6dBOXg==", - "dev": true, + "@snyk/dep-graph": { + "version": "1.28.1", + "resolved": "https://registry.npmjs.org/@snyk/dep-graph/-/dep-graph-1.28.1.tgz", + "integrity": "sha512-ti5fPYivhBGCJ7rZGznMX2UJE1M5lR811WvVyBWTRJwLYVFYkhxRXKfgZUXEB0tq8vpo3V7tm3syrBd5TLPIMA==", "requires": { - "core-js": "^3.8.2", - "global": "^4.4.0" + "event-loop-spinner": "^2.1.0", + "lodash.clone": "^4.5.0", + "lodash.constant": "^3.0.0", + "lodash.filter": "^4.6.0", + "lodash.foreach": "^4.5.0", + "lodash.isempty": "^4.4.0", + "lodash.isequal": "^4.5.0", + "lodash.isfunction": "^3.0.9", + "lodash.isundefined": "^3.0.1", + "lodash.keys": "^4.2.0", + "lodash.map": "^4.6.0", + "lodash.reduce": "^4.6.0", + "lodash.size": "^4.2.0", + "lodash.transform": "^4.6.0", + "lodash.union": "^4.6.0", + "lodash.values": "^4.3.0", + "object-hash": "^2.0.3", + "semver": "^7.0.0", + "tslib": "^1.13.0" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } } }, - "@storybook/components": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/components/-/components-6.2.9.tgz", - "integrity": "sha512-hnV1MI2aB2g1sJ7NJphpxi7TwrMZQ/tpCJeHnkjmzyC6ez1MXqcBXGrEEdSXzRfAxjQTOEpu6H1mnns0xMP0Ag==", - "dev": true, + "@snyk/docker-registry-v2-client": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/@snyk/docker-registry-v2-client/-/docker-registry-v2-client-2.2.2.tgz", + "integrity": "sha512-JkkpVZ8WIWWquazoSTSFlMhYOwt+tk+EMSwOxfu/C/wtaESADCORJBe52z0fAnc+xt3eVUVrM+7prJCIJeSrMg==", "requires": { - "@popperjs/core": "^2.6.0", - "@storybook/client-logger": "6.2.9", - "@storybook/csf": "0.0.1", - "@storybook/theming": "6.2.9", - "@types/color-convert": "^2.0.0", - "@types/overlayscrollbars": "^1.12.0", - "@types/react-syntax-highlighter": "11.0.5", - "color-convert": "^2.0.1", - "core-js": "^3.8.2", - "fast-deep-equal": "^3.1.3", - "global": "^4.4.0", - "lodash": "^4.17.20", - "markdown-to-jsx": "^7.1.0", - "memoizerific": "^1.11.3", - "overlayscrollbars": "^1.13.1", - "polished": "^4.0.5", - "prop-types": "^15.7.2", - "react-colorful": "^5.0.1", - "react-popper-tooltip": "^3.1.1", - "react-syntax-highlighter": "^13.5.3", - "react-textarea-autosize": "^8.3.0", - "regenerator-runtime": "^0.13.7", - "ts-dedent": "^2.0.0", - "util-deprecate": "^1.0.2" + "needle": "^2.5.0", + "parse-link-header": "^1.0.1", + "tslib": "^1.10.0" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } } }, - "@storybook/core": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/core/-/core-5.3.21.tgz", - "integrity": "sha512-plD47WIsn/JoyRJDOpmH7N7mEMo/jiA8ZlOitLW55zYvzUn8UrVpRFpMYo91OJxiCT6JFoaEh3XtNdhbgUwnPA==", - "dev": true, + "@snyk/fast-glob": { + "version": "3.2.6-patch", + "resolved": "https://registry.npmjs.org/@snyk/fast-glob/-/fast-glob-3.2.6-patch.tgz", + "integrity": "sha512-E/Pfdze/WFfxwyuTFcfhQN1SwyUsc43yuCoW63RVBCaxTD6OzhVD2Pvc/Sy7BjiWUfmelzyKkIBpoow8zZX7Zg==", "requires": { - "@babel/plugin-proposal-class-properties": "^7.7.0", - "@babel/plugin-proposal-object-rest-spread": "^7.6.2", - "@babel/plugin-syntax-dynamic-import": "^7.2.0", - "@babel/plugin-transform-react-constant-elements": "^7.2.0", - "@babel/preset-env": "^7.4.5", - "@storybook/addons": "5.3.21", - "@storybook/channel-postmessage": "5.3.21", - "@storybook/client-api": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "@storybook/csf": "0.0.1", - "@storybook/node-logger": "5.3.21", - "@storybook/router": "5.3.21", - "@storybook/theming": "5.3.21", - "@storybook/ui": "5.3.21", - "airbnb-js-shims": "^2.2.1", - "ansi-to-html": "^0.6.11", - "autoprefixer": "^9.7.2", - "babel-plugin-add-react-displayname": "^0.0.5", - "babel-plugin-emotion": "^10.0.20", - "babel-plugin-macros": "^2.7.0", - "babel-preset-minify": "^0.5.0 || 0.6.0-alpha.5", - "boxen": "^4.1.0", - "case-sensitive-paths-webpack-plugin": "^2.2.0", - "chalk": "^3.0.0", - "cli-table3": "0.5.1", - "commander": "^4.0.1", - "core-js": "^3.0.1", - "corejs-upgrade-webpack-plugin": "^2.2.0", - "css-loader": "^3.0.0", - "detect-port": "^1.3.0", - "dotenv-webpack": "^1.7.0", - "ejs": "^2.7.4", - "express": "^4.17.0", - "file-loader": "^4.2.0", - "file-system-cache": "^1.0.5", - "find-cache-dir": "^3.0.0", - "find-up": "^4.1.0", - "fs-extra": "^8.0.1", - "glob-base": "^0.3.0", - "global": "^4.3.2", - "html-webpack-plugin": "^4.0.0-beta.2", - "inquirer": "^7.0.0", - "interpret": "^2.0.0", - "ip": "^1.1.5", - "json5": "^2.1.1", - "lazy-universal-dotenv": "^3.0.1", + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "@snyk/glob-parent": "^5.1.2-patch.1", + "merge2": "^1.3.0", "micromatch": "^4.0.2", - "node-fetch": "^2.6.0", - "open": "^7.0.0", - "pnp-webpack-plugin": "1.5.0", - "postcss-flexbugs-fixes": "^4.1.0", - "postcss-loader": "^3.0.0", - "pretty-hrtime": "^1.0.3", - "qs": "^6.6.0", - "raw-loader": "^3.1.0", - "react-dev-utils": "^9.0.0", - "regenerator-runtime": "^0.13.3", - "resolve": "^1.11.0", - "resolve-from": "^5.0.0", - "semver": "^6.0.0", - "serve-favicon": "^2.5.0", - "shelljs": "^0.8.3", - "style-loader": "^1.0.0", - "terser-webpack-plugin": "^2.1.2", - "ts-dedent": "^1.1.0", - "unfetch": "^4.1.0", - "url-loader": "^2.0.1", - "util-deprecate": "^1.0.2", - "webpack": "^4.33.0", - "webpack-dev-middleware": "^3.7.0", - "webpack-hot-middleware": "^2.25.0", - "webpack-virtual-modules": "^0.2.0" + "picomatch": "^2.2.1" + } + }, + "@snyk/fix": { + "version": "1.650.0", + "resolved": "https://registry.npmjs.org/@snyk/fix/-/fix-1.650.0.tgz", + "integrity": "sha512-qzwb0+DMrjxTsBXAcC74gb2X17925SapCBNo6DybLbOZXNJ6IFvtdN5ucd2FguEojfVyB4HVqkpbawc0bbfGtA==", + "requires": { + "@snyk/dep-graph": "^1.21.0", + "@snyk/fix-pipenv-pipfile": "0.5.4", + "@snyk/fix-poetry": "0.7.2", + "chalk": "4.1.1", + "debug": "^4.3.1", + "lodash.groupby": "4.6.0", + "lodash.sortby": "^4.7.0", + "ora": "5.4.0", + "p-map": "^4.0.0", + "strip-ansi": "6.0.0", + "toml": "3.0.0" }, "dependencies": { - "@reach/router": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@reach/router/-/router-1.3.4.tgz", - "integrity": "sha512-+mtn9wjlB9NN2CNnnC/BRYtwdKBfSyyasPYraNAyvaV1occr/5NnB4CVzjEZipNHwYebQwcndGUmpFzxAUoqSA==", - "dev": true, - "requires": { - "create-react-context": "0.3.0", - "invariant": "^2.2.3", - "prop-types": "^15.6.1", - "react-lifecycles-compat": "^3.0.4" - } - }, - "@storybook/addons": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/addons/-/addons-5.3.21.tgz", - "integrity": "sha512-Ji/21WADTLVbTbiKcZ64BcL0Es+h1Afxx3kNmGJqPSTUYroCwIFCT9mUzCqU6G+YyWaISAmTii5UJkTwMkChwA==", - "dev": true, - "requires": { - "@storybook/api": "5.3.21", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "core-js": "^3.0.1", - "global": "^4.3.2", - "util-deprecate": "^1.0.2" - } - }, - "@storybook/api": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/api/-/api-5.3.21.tgz", - "integrity": "sha512-K1o4an/Rx8daKRDooks6qzN6ZGyqizeacZZbair3F8CsSfTgrr2zCcf9pgKojLQa9koEmMHlcdb2KnS+GwPEgA==", - "dev": true, - "requires": { - "@reach/router": "^1.2.1", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "@storybook/csf": "0.0.1", - "@storybook/router": "5.3.21", - "@storybook/theming": "5.3.21", - "@types/reach__router": "^1.2.3", - "core-js": "^3.0.1", - "fast-deep-equal": "^2.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "prop-types": "^15.6.2", - "react": "^16.8.3", - "semver": "^6.0.0", - "shallow-equal": "^1.1.0", - "store2": "^2.7.1", - "telejson": "^3.2.0", - "util-deprecate": "^1.0.2" - }, - "dependencies": { - "react": { - "version": "16.14.0", - "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", - "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", - "dev": true, - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2" - } - } - } - }, - "@storybook/channel-postmessage": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/channel-postmessage/-/channel-postmessage-5.3.21.tgz", - "integrity": "sha512-CfoP7aEbZtJ35R9zeujMRdIwprETUi+Ve+y84DhXYQ2uJ0rR3vO4zHLZnxMMyJ5VnYOfuO042uch07+EKBz40Q==", - "dev": true, - "requires": { - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "core-js": "^3.0.1", - "global": "^4.3.2", - "telejson": "^3.2.0" - } - }, - "@storybook/channels": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-5.3.21.tgz", - "integrity": "sha512-OXoFs9XtBVg/cCk6lYMrxkzaNlJRf54ABdorp7YAAj7S9tRL1JxOZHxmjNQwEoiRvssmem2rAWtEAxfuEANsAA==", - "dev": true, - "requires": { - "core-js": "^3.0.1" - } - }, - "@storybook/client-api": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/client-api/-/client-api-5.3.21.tgz", - "integrity": "sha512-vS4DfA2Avvl7JNQymO4e3RUNoTWIGVfZJ70Irnd6PTAZNojbCXTYuigDavrmyf83F3g5rQpwmSAPjuoi/X/FRA==", - "dev": true, - "requires": { - "@storybook/addons": "5.3.21", - "@storybook/channel-postmessage": "5.3.21", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "@storybook/csf": "0.0.1", - "@types/webpack-env": "^1.15.0", - "core-js": "^3.0.1", - "eventemitter3": "^4.0.0", - "global": "^4.3.2", - "is-plain-object": "^3.0.0", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "qs": "^6.6.0", - "stable": "^0.1.8", - "ts-dedent": "^1.1.0", - "util-deprecate": "^1.0.2" - } - }, - "@storybook/client-logger": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-5.3.21.tgz", - "integrity": "sha512-OzQkwpZ5SK9cXD9Mv6lxPGPot+hSZvnkEW12kpt1AHfJz4ET26YTDOI3oetPsjfRJo6qYLeQX8+wF7rklfXbzA==", - "dev": true, - "requires": { - "core-js": "^3.0.1" - } - }, - "@storybook/core-events": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-5.3.21.tgz", - "integrity": "sha512-/Zsm1sKAh6pzQv8jQUmuhM7nuM01ZljIRKy8p2HjPNlMjDB5yaRkBfyeAUXUg+qXNI6aHVWa4jGdPEdwwY4oLA==", - "dev": true, - "requires": { - "core-js": "^3.0.1" - } - }, - "@storybook/router": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/router/-/router-5.3.21.tgz", - "integrity": "sha512-c29m5UikK5Q1lyd6FltOGFhIcpd6PIb855YS3OUNe3F6ZA1tfJ+aNKrCBc65d1c+fvCGG76dYYYv0RvwEmKXXg==", - "dev": true, - "requires": { - "@reach/router": "^1.2.1", - "@storybook/csf": "0.0.1", - "@types/reach__router": "^1.2.3", - "core-js": "^3.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "qs": "^6.6.0", - "util-deprecate": "^1.0.2" - } - }, - "@storybook/theming": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-5.3.21.tgz", - "integrity": "sha512-FZbxjizqdO9lV5LUixPio/7+6UdPiswCzTJn8Hcot9uwwgfnrViRdN7xyjmSYRqv9nHP3OlYbtdeCAgZ4aPq8g==", - "dev": true, - "requires": { - "@emotion/core": "^10.0.20", - "@emotion/styled": "^10.0.17", - "@storybook/client-logger": "5.3.21", - "core-js": "^3.0.1", - "deep-object-diff": "^1.1.0", - "emotion-theming": "^10.0.19", - "global": "^4.3.2", - "memoizerific": "^1.11.3", - "polished": "^3.3.1", - "prop-types": "^15.7.2", - "resolve-from": "^5.0.0", - "ts-dedent": "^1.1.0" - } - }, - "ansi-escapes": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - "dev": true, - "requires": { - "type-fest": "^0.21.3" - } - }, "ansi-styles": { "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" } }, "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "requires": { + "restore-cursor": "^3.1.0" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "ora": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.0.tgz", + "integrity": "sha512-1StwyXQGoU6gdjYkyVcqOLnVlbKj+6yPNNOxJVgpt9t4eksKjiriiHuxktLYkgllwk+D6MbC4ihH84L1udRXPg==", + "requires": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + } + }, + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "requires": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + } + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "@snyk/fix-pipenv-pipfile": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/@snyk/fix-pipenv-pipfile/-/fix-pipenv-pipfile-0.5.4.tgz", + "integrity": "sha512-n1Sg21htJG+gqw2Q9JYsIFxT5IDtELifbQZheiLhOl8sgfoD6oCNyf07IwUqzPrW2wRpmCrTUtuO08+KGnzJpg==", + "requires": { + "@snyk/child-process": "^0.3.1", + "bottleneck": "2.19.5", + "debug": "4.3.1", + "tslib": "^1.10.0" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@snyk/fix-poetry": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@snyk/fix-poetry/-/fix-poetry-0.7.2.tgz", + "integrity": "sha512-abBdeOb326exreUDnCkELw9GVOR7qdUQmX0sKyE1baz3i9WaWI5Wy0bWHqjw9oGE5ZP8Ki/xtzkHU2W57D++Zg==", + "requires": { + "@snyk/child-process": "^0.3.1", + "bottleneck": "2.19.5", + "debug": "4.3.1", + "tslib": "^1.10.0" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@snyk/gemfile": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@snyk/gemfile/-/gemfile-1.2.0.tgz", + "integrity": "sha512-nI7ELxukf7pT4/VraL4iabtNNMz8mUo7EXlqCFld8O5z6mIMLX9llps24iPpaIZOwArkY3FWA+4t+ixyvtTSIA==" + }, + "@snyk/glob-parent": { + "version": "5.1.2-patch.1", + "resolved": "https://registry.npmjs.org/@snyk/glob-parent/-/glob-parent-5.1.2-patch.1.tgz", + "integrity": "sha512-OkUPdHgxIWKAAzceG1nraNA0kgI+eS0I9wph8tll9UL0slD2mIWSj4mAqroGovaEXm8nHedoUfuDRGEb6wnzCQ==", + "requires": { + "is-glob": "^4.0.1" + } + }, + "@snyk/graphlib": { + "version": "2.1.9-patch.3", + "resolved": "https://registry.npmjs.org/@snyk/graphlib/-/graphlib-2.1.9-patch.3.tgz", + "integrity": "sha512-bBY9b9ulfLj0v2Eer0yFYa3syVeIxVKl2EpxSrsVeT4mjA0CltZyHsF0JjoaGXP27nItTdJS5uVsj1NA+3aE+Q==", + "requires": { + "lodash.clone": "^4.5.0", + "lodash.constant": "^3.0.0", + "lodash.filter": "^4.6.0", + "lodash.foreach": "^4.5.0", + "lodash.has": "^4.5.2", + "lodash.isempty": "^4.4.0", + "lodash.isfunction": "^3.0.9", + "lodash.isundefined": "^3.0.1", + "lodash.keys": "^4.2.0", + "lodash.map": "^4.6.0", + "lodash.reduce": "^4.6.0", + "lodash.size": "^4.2.0", + "lodash.transform": "^4.6.0", + "lodash.union": "^4.6.0", + "lodash.values": "^4.3.0" + } + }, + "@snyk/inquirer": { + "version": "7.3.3-patch", + "resolved": "https://registry.npmjs.org/@snyk/inquirer/-/inquirer-7.3.3-patch.tgz", + "integrity": "sha512-aWiQSOacH2lOpJ1ard9ErABcH4tdJogdr+mg1U67iZJOPO9n2gFgAwz1TQJDyPkv4/A5mh4hT2rg03Uq+KBn2Q==", + "requires": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash.assign": "^4.2.0", + "lodash.assignin": "^4.2.0", + "lodash.clone": "^4.5.0", + "lodash.defaults": "^4.2.0", + "lodash.filter": "^4.6.0", + "lodash.find": "^4.6.0", + "lodash.findindex": "^4.6.0", + "lodash.flatten": "^4.4.0", + "lodash.isboolean": "^3.0.3", + "lodash.isfunction": "^3.0.9", + "lodash.isnumber": "^3.0.3", + "lodash.isplainobject": "^4.0.6", + "lodash.isstring": "^4.0.1", + "lodash.last": "^3.0.0", + "lodash.map": "^4.6.0", + "lodash.omit": "^4.5.0", + "lodash.set": "^4.3.2", + "lodash.sum": "^4.0.2", + "lodash.uniq": "^4.5.0", + "mute-stream": "0.0.8", + "run-async": "^2.4.0", + "rxjs": "^6.6.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" + }, + "dependencies": { + "ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "requires": { + "type-fest": "^0.21.3" + } + }, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -37781,7 +33559,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dev": true, "requires": { "restore-cursor": "^3.1.0" } @@ -37789,1225 +33566,166 @@ "cli-width": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", - "dev": true - }, - "create-react-context": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/create-react-context/-/create-react-context-0.3.0.tgz", - "integrity": "sha512-dNldIoSuNSvlTJ7slIKC/ZFGKexBMBrrcc+TTe1NdmROnaASuLPvqpwj9v4XS4uXZ8+YPu0sNmShX2rXI5LNsw==", - "dev": true, - "requires": { - "gud": "^1.0.0", - "warning": "^4.0.3" - } - }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==" }, "figures": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, "requires": { "escape-string-regexp": "^1.0.5" } }, - "find-cache-dir": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz", - "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - } - }, "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 - }, - "inquirer": { - "version": "7.3.3", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", - "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", - "dev": true, - "requires": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.0", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.19", - "mute-stream": "0.0.8", - "run-async": "^2.4.0", - "rxjs": "^6.6.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" - }, - "dependencies": { - "chalk": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", - "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - } - } - }, - "is-plain-object": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.1.tgz", - "integrity": "sha512-Xnpx182SBMrr/aBik8y+GuR4U1L9FqMSojwDQwPMmxyC6bvEqly9UBCxhauBF5vNh2gwWJNX6oDV7O+OM4z34g==", - "dev": true - }, - "isobject": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", - "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", - "dev": true - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - } + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, "mute-stream": { "version": "0.0.8", "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "requires": { - "find-up": "^4.0.0" - } - }, - "polished": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/polished/-/polished-3.7.2.tgz", - "integrity": "sha512-pQKtpZGmsZrW8UUpQMAnR7s3ppHeMQVNyMDKtUyKwuvDmklzcEyM5Kllb3JyE/sE/x7arDmyd35i+4vp99H6sQ==", - "dev": true, - "requires": { - "@babel/runtime": "^7.12.5" - } + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" }, "restore-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dev": true, "requires": { "onetime": "^5.1.0", "signal-exit": "^3.0.2" } }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, "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" } }, - "telejson": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/telejson/-/telejson-3.3.0.tgz", - "integrity": "sha512-er08AylQ+LEbDLp1GRezORZu5wKOHaBczF6oYJtgC3Idv10qZ8A3p6ffT+J5BzDKkV9MqBvu8HAKiIIOp6KJ2w==", - "dev": true, - "requires": { - "@types/is-function": "^1.0.0", - "global": "^4.4.0", - "is-function": "^1.0.1", - "is-regex": "^1.0.4", - "is-symbol": "^1.0.3", - "isobject": "^4.0.0", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3" - } - }, - "ts-dedent": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-1.2.0.tgz", - "integrity": "sha512-6zSJp23uQI+Txyz5LlXMXAHpUhY4Hi0oluXny0OgIR7g/Cromq4vDBnhtbBdyIV34g0pgwxUvnvg+jLJe4c1NA==", - "dev": true - }, "type-fest": { "version": "0.21.3", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - "dev": true + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==" } } }, - "@storybook/core-events": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-6.2.9.tgz", - "integrity": "sha512-xQmbX/oYQK1QsAGN8hriXX5SUKOoTUe3L4dVaVHxJqy7MReRWJpprJmCpbAPJzWS6WCbDFfCM5kVEexHLOzJlQ==", - "dev": true, + "@snyk/java-call-graph-builder": { + "version": "1.23.0", + "resolved": "https://registry.npmjs.org/@snyk/java-call-graph-builder/-/java-call-graph-builder-1.23.0.tgz", + "integrity": "sha512-Go/UV33/R0SW10nvshrs/s8GjY2mnbJaRV4Xkj4zGrwpK80lL30th6LDpXDKEdXPZ66EbYGS1Q9gGlL7GzOdeA==", "requires": { - "core-js": "^3.8.2" - } - }, - "@storybook/csf": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/@storybook/csf/-/csf-0.0.1.tgz", - "integrity": "sha512-USTLkZze5gkel8MYCujSRBVIrUQ3YPBrLOx7GNk/0wttvVtlzWXAq9eLbQ4p/NicGxP+3T7KPEMVV//g+yubpw==", - "dev": true, - "requires": { - "lodash": "^4.17.15" - } - }, - "@storybook/node-logger": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/node-logger/-/node-logger-5.3.21.tgz", - "integrity": "sha512-8xibncy873JXePCK5MC0qem1MKtWI1Lc4hv6rwURSwYpZtkO7yElay3XAFGUSfz8qFJkoDBmMTxBR3fp4Dln7g==", - "dev": true, - "requires": { - "@types/npmlog": "^4.1.2", - "chalk": "^3.0.0", - "core-js": "^3.0.1", - "npmlog": "^4.1.2", - "pretty-hrtime": "^1.0.3", - "regenerator-runtime": "^0.13.3" + "@snyk/graphlib": "2.1.9-patch.3", + "ci-info": "^2.0.0", + "debug": "^4.1.1", + "glob": "^7.1.6", + "jszip": "^3.2.2", + "needle": "^2.3.3", + "progress": "^2.0.3", + "snyk-config": "^4.0.0-rc.2", + "source-map-support": "^0.5.7", + "temp-dir": "^2.0.0", + "tmp": "^0.2.1", + "tslib": "^1.9.3", + "xml-js": "^1.6.11" }, "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, + "temp-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", + "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==" + }, + "tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", "requires": { - "color-convert": "^2.0.1" + "rimraf": "^3.0.0" } }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@snyk/mix-parser": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@snyk/mix-parser/-/mix-parser-1.3.2.tgz", + "integrity": "sha512-0Aq9vcgmjH0d9Gk5q0k6l4ZOvSHPf6/BCQGDVOpKp0hwOkXWnpDOLLPxL+uBCktuH9zTYQFB0aTk91kQImZqmA==", + "requires": { + "@snyk/dep-graph": "^1.28.0", + "tslib": "^2.0.0" + } + }, + "@snyk/rpm-parser": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@snyk/rpm-parser/-/rpm-parser-2.2.1.tgz", + "integrity": "sha512-OAON0bPf3c5fgM/GK9DX0aZErB6SnuRyYlPH0rqI1TXGsKrYnVELhaE6ctNbEfPTQuY9r6q0vM+UYDaFM/YliA==", + "requires": { + "event-loop-spinner": "^2.0.0" + } + }, + "@snyk/snyk-cocoapods-plugin": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/@snyk/snyk-cocoapods-plugin/-/snyk-cocoapods-plugin-2.5.2.tgz", + "integrity": "sha512-WHhnwyoGOhjFOjBXqUfszD84SErrtjHjium/4xFbqKpEE+yuwxs8OwV/S29BtxhYiGtjpD1azv5QtH30VUMl0A==", + "requires": { + "@snyk/cli-interface": "^2.11.0", + "@snyk/cocoapods-lockfile-parser": "3.6.2", + "@snyk/dep-graph": "^1.23.1", + "source-map-support": "^0.5.7", + "tslib": "^2.0.0" + } + }, + "@snyk/snyk-docker-pull": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/@snyk/snyk-docker-pull/-/snyk-docker-pull-3.6.2.tgz", + "integrity": "sha512-Ngebbk2LLMYNj5iMeTrt066nzWZ3oc8I5aN5A1qXpXmuAv8hW/hA1pfF3qwWrskl0RbPIhcSnY833e8l+drjEQ==", + "requires": { + "@snyk/docker-registry-v2-client": "^2.2.2", + "child-process": "^1.0.2", + "tar-stream": "^2.2.0", + "tmp": "^0.2.1" + }, + "dependencies": { + "tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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 - }, - "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" + "rimraf": "^3.0.0" } } } }, - "@storybook/react-native": { - "version": "5.3.25", - "resolved": "https://registry.npmjs.org/@storybook/react-native/-/react-native-5.3.25.tgz", - "integrity": "sha512-KPctJdk1++k4byblqTwULmxKDADsRAMat9BgMTx3Gewk4PjMbsbKCvRK7+AlJeNjz/kEsf9L6Y25y8lrw3rPXA==", - "dev": true, + "@snyk/snyk-hex-plugin": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/@snyk/snyk-hex-plugin/-/snyk-hex-plugin-1.1.4.tgz", + "integrity": "sha512-kLfFGckSmyKe667UGPyWzR/H7/Trkt4fD8O/ktElOx1zWgmivpLm0Symb4RCfEmz9irWv+N6zIKRrfSNdytcPQ==", "requires": { - "@emotion/core": "^10.0.20", - "@emotion/native": "^10.0.14", - "@storybook/addons": "5.3.21", - "@storybook/channel-websocket": "5.3.21", - "@storybook/channels": "5.3.21", - "@storybook/client-api": "5.3.21", - "@storybook/core-events": "5.3.21", - "core-js": "^3.0.1", - "emotion-theming": "^10.0.19", - "react-native-swipe-gestures": "^1.0.4" + "@snyk/dep-graph": "^1.28.0", + "@snyk/mix-parser": "^1.1.1", + "debug": "^4.3.1", + "tmp": "^0.0.33", + "tslib": "^2.0.0", + "upath": "2.0.1" }, "dependencies": { - "@reach/router": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@reach/router/-/router-1.3.4.tgz", - "integrity": "sha512-+mtn9wjlB9NN2CNnnC/BRYtwdKBfSyyasPYraNAyvaV1occr/5NnB4CVzjEZipNHwYebQwcndGUmpFzxAUoqSA==", - "dev": true, - "requires": { - "create-react-context": "0.3.0", - "invariant": "^2.2.3", - "prop-types": "^15.6.1", - "react-lifecycles-compat": "^3.0.4" - } - }, - "@storybook/addons": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/addons/-/addons-5.3.21.tgz", - "integrity": "sha512-Ji/21WADTLVbTbiKcZ64BcL0Es+h1Afxx3kNmGJqPSTUYroCwIFCT9mUzCqU6G+YyWaISAmTii5UJkTwMkChwA==", - "dev": true, - "requires": { - "@storybook/api": "5.3.21", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "core-js": "^3.0.1", - "global": "^4.3.2", - "util-deprecate": "^1.0.2" - } - }, - "@storybook/api": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/api/-/api-5.3.21.tgz", - "integrity": "sha512-K1o4an/Rx8daKRDooks6qzN6ZGyqizeacZZbair3F8CsSfTgrr2zCcf9pgKojLQa9koEmMHlcdb2KnS+GwPEgA==", - "dev": true, - "requires": { - "@reach/router": "^1.2.1", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "@storybook/csf": "0.0.1", - "@storybook/router": "5.3.21", - "@storybook/theming": "5.3.21", - "@types/reach__router": "^1.2.3", - "core-js": "^3.0.1", - "fast-deep-equal": "^2.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "prop-types": "^15.6.2", - "react": "^16.8.3", - "semver": "^6.0.0", - "shallow-equal": "^1.1.0", - "store2": "^2.7.1", - "telejson": "^3.2.0", - "util-deprecate": "^1.0.2" - }, - "dependencies": { - "@storybook/router": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/router/-/router-5.3.21.tgz", - "integrity": "sha512-c29m5UikK5Q1lyd6FltOGFhIcpd6PIb855YS3OUNe3F6ZA1tfJ+aNKrCBc65d1c+fvCGG76dYYYv0RvwEmKXXg==", - "dev": true, - "requires": { - "@reach/router": "^1.2.1", - "@storybook/csf": "0.0.1", - "@types/reach__router": "^1.2.3", - "core-js": "^3.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "qs": "^6.6.0", - "util-deprecate": "^1.0.2" - } - }, - "@storybook/theming": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-5.3.21.tgz", - "integrity": "sha512-FZbxjizqdO9lV5LUixPio/7+6UdPiswCzTJn8Hcot9uwwgfnrViRdN7xyjmSYRqv9nHP3OlYbtdeCAgZ4aPq8g==", - "dev": true, - "requires": { - "@emotion/core": "^10.0.20", - "@emotion/styled": "^10.0.17", - "@storybook/client-logger": "5.3.21", - "core-js": "^3.0.1", - "deep-object-diff": "^1.1.0", - "emotion-theming": "^10.0.19", - "global": "^4.3.2", - "memoizerific": "^1.11.3", - "polished": "^3.3.1", - "prop-types": "^15.7.2", - "resolve-from": "^5.0.0", - "ts-dedent": "^1.1.0" - } - }, - "react": { - "version": "16.14.0", - "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", - "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", - "dev": true, - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2" - } - } - } - }, - "@storybook/channel-postmessage": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/channel-postmessage/-/channel-postmessage-5.3.21.tgz", - "integrity": "sha512-CfoP7aEbZtJ35R9zeujMRdIwprETUi+Ve+y84DhXYQ2uJ0rR3vO4zHLZnxMMyJ5VnYOfuO042uch07+EKBz40Q==", - "dev": true, - "requires": { - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "core-js": "^3.0.1", - "global": "^4.3.2", - "telejson": "^3.2.0" - } - }, - "@storybook/channels": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-5.3.21.tgz", - "integrity": "sha512-OXoFs9XtBVg/cCk6lYMrxkzaNlJRf54ABdorp7YAAj7S9tRL1JxOZHxmjNQwEoiRvssmem2rAWtEAxfuEANsAA==", - "dev": true, - "requires": { - "core-js": "^3.0.1" - } - }, - "@storybook/client-api": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/client-api/-/client-api-5.3.21.tgz", - "integrity": "sha512-vS4DfA2Avvl7JNQymO4e3RUNoTWIGVfZJ70Irnd6PTAZNojbCXTYuigDavrmyf83F3g5rQpwmSAPjuoi/X/FRA==", - "dev": true, - "requires": { - "@storybook/addons": "5.3.21", - "@storybook/channel-postmessage": "5.3.21", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "@storybook/csf": "0.0.1", - "@types/webpack-env": "^1.15.0", - "core-js": "^3.0.1", - "eventemitter3": "^4.0.0", - "global": "^4.3.2", - "is-plain-object": "^3.0.0", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "qs": "^6.6.0", - "stable": "^0.1.8", - "ts-dedent": "^1.1.0", - "util-deprecate": "^1.0.2" - } - }, - "@storybook/client-logger": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-5.3.21.tgz", - "integrity": "sha512-OzQkwpZ5SK9cXD9Mv6lxPGPot+hSZvnkEW12kpt1AHfJz4ET26YTDOI3oetPsjfRJo6qYLeQX8+wF7rklfXbzA==", - "dev": true, - "requires": { - "core-js": "^3.0.1" - } - }, - "@storybook/core-events": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-5.3.21.tgz", - "integrity": "sha512-/Zsm1sKAh6pzQv8jQUmuhM7nuM01ZljIRKy8p2HjPNlMjDB5yaRkBfyeAUXUg+qXNI6aHVWa4jGdPEdwwY4oLA==", - "dev": true, - "requires": { - "core-js": "^3.0.1" - } - }, - "create-react-context": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/create-react-context/-/create-react-context-0.3.0.tgz", - "integrity": "sha512-dNldIoSuNSvlTJ7slIKC/ZFGKexBMBrrcc+TTe1NdmROnaASuLPvqpwj9v4XS4uXZ8+YPu0sNmShX2rXI5LNsw==", - "dev": true, - "requires": { - "gud": "^1.0.0", - "warning": "^4.0.3" - } - }, - "fast-deep-equal": { + "upath": { "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "is-plain-object": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-3.0.1.tgz", - "integrity": "sha512-Xnpx182SBMrr/aBik8y+GuR4U1L9FqMSojwDQwPMmxyC6bvEqly9UBCxhauBF5vNh2gwWJNX6oDV7O+OM4z34g==", - "dev": true - }, - "isobject": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", - "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", - "dev": true - }, - "polished": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/polished/-/polished-3.7.2.tgz", - "integrity": "sha512-pQKtpZGmsZrW8UUpQMAnR7s3ppHeMQVNyMDKtUyKwuvDmklzcEyM5Kllb3JyE/sE/x7arDmyd35i+4vp99H6sQ==", - "dev": true, - "requires": { - "@babel/runtime": "^7.12.5" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "telejson": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/telejson/-/telejson-3.3.0.tgz", - "integrity": "sha512-er08AylQ+LEbDLp1GRezORZu5wKOHaBczF6oYJtgC3Idv10qZ8A3p6ffT+J5BzDKkV9MqBvu8HAKiIIOp6KJ2w==", - "dev": true, - "requires": { - "@types/is-function": "^1.0.0", - "global": "^4.4.0", - "is-function": "^1.0.1", - "is-regex": "^1.0.4", - "is-symbol": "^1.0.3", - "isobject": "^4.0.0", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3" - } - }, - "ts-dedent": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-1.2.0.tgz", - "integrity": "sha512-6zSJp23uQI+Txyz5LlXMXAHpUhY4Hi0oluXny0OgIR7g/Cromq4vDBnhtbBdyIV34g0pgwxUvnvg+jLJe4c1NA==", - "dev": true + "resolved": "https://registry.npmjs.org/upath/-/upath-2.0.1.tgz", + "integrity": "sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==" } } }, - "@storybook/react-native-server": { - "version": "5.3.23", - "resolved": "https://registry.npmjs.org/@storybook/react-native-server/-/react-native-server-5.3.23.tgz", - "integrity": "sha512-1jGHwikc6BVoEW8tdJeYvnY1N2+cHyzit9xiXL9WXofiiYERoL4ENj1pgVp+AGA+yUYBsuSzeN7Hqp/LwdJ1Ug==", - "dev": true, + "@szmarczak/http-timer": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.5.tgz", + "integrity": "sha512-PyRA9sm1Yayuj5OIoJ1hGt2YISX45w9WcFbh6ddT0Z/0yaFxOtGLInr4jUfU1EAFVs0Yfyfev4RNwBlUaHdlDQ==", "requires": { - "@storybook/addons": "5.3.21", - "@storybook/api": "5.3.21", - "@storybook/channel-websocket": "5.3.21", - "@storybook/core": "5.3.21", - "@storybook/core-events": "5.3.21", - "@storybook/ui": "5.3.21", - "commander": "^4.0.1", - "core-js": "^3.0.1", - "global": "^4.3.2", - "react": "^16.6.0", - "react-dom": "^16.8.3", - "uuid": "^3.3.2", - "webpack": "^4.33.0", - "ws": "^7.1.2" - }, - "dependencies": { - "@reach/router": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@reach/router/-/router-1.3.4.tgz", - "integrity": "sha512-+mtn9wjlB9NN2CNnnC/BRYtwdKBfSyyasPYraNAyvaV1occr/5NnB4CVzjEZipNHwYebQwcndGUmpFzxAUoqSA==", - "dev": true, - "requires": { - "create-react-context": "0.3.0", - "invariant": "^2.2.3", - "prop-types": "^15.6.1", - "react-lifecycles-compat": "^3.0.4" - } - }, - "@storybook/addons": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/addons/-/addons-5.3.21.tgz", - "integrity": "sha512-Ji/21WADTLVbTbiKcZ64BcL0Es+h1Afxx3kNmGJqPSTUYroCwIFCT9mUzCqU6G+YyWaISAmTii5UJkTwMkChwA==", - "dev": true, - "requires": { - "@storybook/api": "5.3.21", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "core-js": "^3.0.1", - "global": "^4.3.2", - "util-deprecate": "^1.0.2" - } - }, - "@storybook/api": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/api/-/api-5.3.21.tgz", - "integrity": "sha512-K1o4an/Rx8daKRDooks6qzN6ZGyqizeacZZbair3F8CsSfTgrr2zCcf9pgKojLQa9koEmMHlcdb2KnS+GwPEgA==", - "dev": true, - "requires": { - "@reach/router": "^1.2.1", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "@storybook/csf": "0.0.1", - "@storybook/router": "5.3.21", - "@storybook/theming": "5.3.21", - "@types/reach__router": "^1.2.3", - "core-js": "^3.0.1", - "fast-deep-equal": "^2.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "prop-types": "^15.6.2", - "react": "^16.8.3", - "semver": "^6.0.0", - "shallow-equal": "^1.1.0", - "store2": "^2.7.1", - "telejson": "^3.2.0", - "util-deprecate": "^1.0.2" - }, - "dependencies": { - "@storybook/router": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/router/-/router-5.3.21.tgz", - "integrity": "sha512-c29m5UikK5Q1lyd6FltOGFhIcpd6PIb855YS3OUNe3F6ZA1tfJ+aNKrCBc65d1c+fvCGG76dYYYv0RvwEmKXXg==", - "dev": true, - "requires": { - "@reach/router": "^1.2.1", - "@storybook/csf": "0.0.1", - "@types/reach__router": "^1.2.3", - "core-js": "^3.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "qs": "^6.6.0", - "util-deprecate": "^1.0.2" - } - }, - "@storybook/theming": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-5.3.21.tgz", - "integrity": "sha512-FZbxjizqdO9lV5LUixPio/7+6UdPiswCzTJn8Hcot9uwwgfnrViRdN7xyjmSYRqv9nHP3OlYbtdeCAgZ4aPq8g==", - "dev": true, - "requires": { - "@emotion/core": "^10.0.20", - "@emotion/styled": "^10.0.17", - "@storybook/client-logger": "5.3.21", - "core-js": "^3.0.1", - "deep-object-diff": "^1.1.0", - "emotion-theming": "^10.0.19", - "global": "^4.3.2", - "memoizerific": "^1.11.3", - "polished": "^3.3.1", - "prop-types": "^15.7.2", - "resolve-from": "^5.0.0", - "ts-dedent": "^1.1.0" - } - } - } - }, - "@storybook/channels": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-5.3.21.tgz", - "integrity": "sha512-OXoFs9XtBVg/cCk6lYMrxkzaNlJRf54ABdorp7YAAj7S9tRL1JxOZHxmjNQwEoiRvssmem2rAWtEAxfuEANsAA==", - "dev": true, - "requires": { - "core-js": "^3.0.1" - } - }, - "@storybook/client-logger": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-5.3.21.tgz", - "integrity": "sha512-OzQkwpZ5SK9cXD9Mv6lxPGPot+hSZvnkEW12kpt1AHfJz4ET26YTDOI3oetPsjfRJo6qYLeQX8+wF7rklfXbzA==", - "dev": true, - "requires": { - "core-js": "^3.0.1" - } - }, - "@storybook/core-events": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-5.3.21.tgz", - "integrity": "sha512-/Zsm1sKAh6pzQv8jQUmuhM7nuM01ZljIRKy8p2HjPNlMjDB5yaRkBfyeAUXUg+qXNI6aHVWa4jGdPEdwwY4oLA==", - "dev": true, - "requires": { - "core-js": "^3.0.1" - } - }, - "create-react-context": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/create-react-context/-/create-react-context-0.3.0.tgz", - "integrity": "sha512-dNldIoSuNSvlTJ7slIKC/ZFGKexBMBrrcc+TTe1NdmROnaASuLPvqpwj9v4XS4uXZ8+YPu0sNmShX2rXI5LNsw==", - "dev": true, - "requires": { - "gud": "^1.0.0", - "warning": "^4.0.3" - } - }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "isobject": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", - "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", - "dev": true - }, - "polished": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/polished/-/polished-3.7.2.tgz", - "integrity": "sha512-pQKtpZGmsZrW8UUpQMAnR7s3ppHeMQVNyMDKtUyKwuvDmklzcEyM5Kllb3JyE/sE/x7arDmyd35i+4vp99H6sQ==", - "dev": true, - "requires": { - "@babel/runtime": "^7.12.5" - } - }, - "react": { - "version": "16.14.0", - "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", - "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", - "dev": true, - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "telejson": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/telejson/-/telejson-3.3.0.tgz", - "integrity": "sha512-er08AylQ+LEbDLp1GRezORZu5wKOHaBczF6oYJtgC3Idv10qZ8A3p6ffT+J5BzDKkV9MqBvu8HAKiIIOp6KJ2w==", - "dev": true, - "requires": { - "@types/is-function": "^1.0.0", - "global": "^4.4.0", - "is-function": "^1.0.1", - "is-regex": "^1.0.4", - "is-symbol": "^1.0.3", - "isobject": "^4.0.0", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3" - } - }, - "ts-dedent": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-1.2.0.tgz", - "integrity": "sha512-6zSJp23uQI+Txyz5LlXMXAHpUhY4Hi0oluXny0OgIR7g/Cromq4vDBnhtbBdyIV34g0pgwxUvnvg+jLJe4c1NA==", - "dev": true - } - } - }, - "@storybook/router": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/router/-/router-6.2.9.tgz", - "integrity": "sha512-7Bn1OFoItCl8whXRT8N1qp1Lky7kzXJ3aslWp5E8HcM8rxh4OYXfbaeiyJEJxBTGC5zxgY+tAEXHFjsAviFROg==", - "dev": true, - "requires": { - "@reach/router": "^1.3.4", - "@storybook/client-logger": "6.2.9", - "@types/reach__router": "^1.3.7", - "core-js": "^3.8.2", - "fast-deep-equal": "^3.1.3", - "global": "^4.4.0", - "lodash": "^4.17.20", - "memoizerific": "^1.11.3", - "qs": "^6.10.0", - "ts-dedent": "^2.0.0" - }, - "dependencies": { - "@reach/router": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@reach/router/-/router-1.3.4.tgz", - "integrity": "sha512-+mtn9wjlB9NN2CNnnC/BRYtwdKBfSyyasPYraNAyvaV1occr/5NnB4CVzjEZipNHwYebQwcndGUmpFzxAUoqSA==", - "dev": true, - "requires": { - "create-react-context": "0.3.0", - "invariant": "^2.2.3", - "prop-types": "^15.6.1", - "react-lifecycles-compat": "^3.0.4" - } - }, - "create-react-context": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/create-react-context/-/create-react-context-0.3.0.tgz", - "integrity": "sha512-dNldIoSuNSvlTJ7slIKC/ZFGKexBMBrrcc+TTe1NdmROnaASuLPvqpwj9v4XS4uXZ8+YPu0sNmShX2rXI5LNsw==", - "dev": true, - "requires": { - "gud": "^1.0.0", - "warning": "^4.0.3" - } - } - } - }, - "@storybook/semver": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/@storybook/semver/-/semver-7.3.2.tgz", - "integrity": "sha512-SWeszlsiPsMI0Ps0jVNtH64cI5c0UF3f7KgjVKJoNP30crQ6wUSddY2hsdeczZXEKVJGEn50Q60flcGsQGIcrg==", - "dev": true, - "requires": { - "core-js": "^3.6.5", - "find-up": "^4.1.0" - } - }, - "@storybook/theming": { - "version": "6.2.9", - "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-6.2.9.tgz", - "integrity": "sha512-183oJW7AD7Fhqg5NT4ct3GJntwteAb9jZnQ6yhf9JSdY+fk8OhxRbPf7ov0au2gYACcGrWDd9K5pYQsvWlP5gA==", - "dev": true, - "requires": { - "@emotion/core": "^10.1.1", - "@emotion/is-prop-valid": "^0.8.6", - "@emotion/styled": "^10.0.27", - "@storybook/client-logger": "6.2.9", - "core-js": "^3.8.2", - "deep-object-diff": "^1.1.0", - "emotion-theming": "^10.0.27", - "global": "^4.4.0", - "memoizerific": "^1.11.3", - "polished": "^4.0.5", - "resolve-from": "^5.0.0", - "ts-dedent": "^2.0.0" - } - }, - "@storybook/ui": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/ui/-/ui-5.3.21.tgz", - "integrity": "sha512-OUf8JYY9LN+XfzLSZE6KtboITGDL6C8Z0W9QOXM5LJwFLv4PkANK/f9qsB5vVHFm7vhoO96butFzs6SjTKhxkw==", - "dev": true, - "requires": { - "@emotion/core": "^10.0.20", - "@storybook/addons": "5.3.21", - "@storybook/api": "5.3.21", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/components": "5.3.21", - "@storybook/core-events": "5.3.21", - "@storybook/router": "5.3.21", - "@storybook/theming": "5.3.21", - "copy-to-clipboard": "^3.0.8", - "core-js": "^3.0.1", - "core-js-pure": "^3.0.1", - "emotion-theming": "^10.0.19", - "fast-deep-equal": "^2.0.1", - "fuse.js": "^3.4.6", - "global": "^4.3.2", - "lodash": "^4.17.15", - "markdown-to-jsx": "^6.11.4", - "memoizerific": "^1.11.3", - "polished": "^3.3.1", - "prop-types": "^15.7.2", - "qs": "^6.6.0", - "react": "^16.8.3", - "react-dom": "^16.8.3", - "react-draggable": "^4.0.3", - "react-helmet-async": "^1.0.2", - "react-hotkeys": "2.0.0", - "react-sizeme": "^2.6.7", - "regenerator-runtime": "^0.13.2", - "resolve-from": "^5.0.0", - "semver": "^6.0.0", - "store2": "^2.7.1", - "telejson": "^3.2.0", - "util-deprecate": "^1.0.2" - }, - "dependencies": { - "@reach/router": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@reach/router/-/router-1.3.4.tgz", - "integrity": "sha512-+mtn9wjlB9NN2CNnnC/BRYtwdKBfSyyasPYraNAyvaV1occr/5NnB4CVzjEZipNHwYebQwcndGUmpFzxAUoqSA==", - "dev": true, - "requires": { - "create-react-context": "0.3.0", - "invariant": "^2.2.3", - "prop-types": "^15.6.1", - "react-lifecycles-compat": "^3.0.4" - } - }, - "@storybook/addons": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/addons/-/addons-5.3.21.tgz", - "integrity": "sha512-Ji/21WADTLVbTbiKcZ64BcL0Es+h1Afxx3kNmGJqPSTUYroCwIFCT9mUzCqU6G+YyWaISAmTii5UJkTwMkChwA==", - "dev": true, - "requires": { - "@storybook/api": "5.3.21", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "core-js": "^3.0.1", - "global": "^4.3.2", - "util-deprecate": "^1.0.2" - } - }, - "@storybook/api": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/api/-/api-5.3.21.tgz", - "integrity": "sha512-K1o4an/Rx8daKRDooks6qzN6ZGyqizeacZZbair3F8CsSfTgrr2zCcf9pgKojLQa9koEmMHlcdb2KnS+GwPEgA==", - "dev": true, - "requires": { - "@reach/router": "^1.2.1", - "@storybook/channels": "5.3.21", - "@storybook/client-logger": "5.3.21", - "@storybook/core-events": "5.3.21", - "@storybook/csf": "0.0.1", - "@storybook/router": "5.3.21", - "@storybook/theming": "5.3.21", - "@types/reach__router": "^1.2.3", - "core-js": "^3.0.1", - "fast-deep-equal": "^2.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "prop-types": "^15.6.2", - "react": "^16.8.3", - "semver": "^6.0.0", - "shallow-equal": "^1.1.0", - "store2": "^2.7.1", - "telejson": "^3.2.0", - "util-deprecate": "^1.0.2" - } - }, - "@storybook/channels": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/channels/-/channels-5.3.21.tgz", - "integrity": "sha512-OXoFs9XtBVg/cCk6lYMrxkzaNlJRf54ABdorp7YAAj7S9tRL1JxOZHxmjNQwEoiRvssmem2rAWtEAxfuEANsAA==", - "dev": true, - "requires": { - "core-js": "^3.0.1" - } - }, - "@storybook/client-logger": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/client-logger/-/client-logger-5.3.21.tgz", - "integrity": "sha512-OzQkwpZ5SK9cXD9Mv6lxPGPot+hSZvnkEW12kpt1AHfJz4ET26YTDOI3oetPsjfRJo6qYLeQX8+wF7rklfXbzA==", - "dev": true, - "requires": { - "core-js": "^3.0.1" - } - }, - "@storybook/components": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/components/-/components-5.3.21.tgz", - "integrity": "sha512-42QQk6qZl6wrtajP8yNCfmNS2t8Iod5QY+4V/l6iNnnT9O+j6cWOlnO+ZyvjNv0Xm0zIOt+VyVjdkKh8FUjQmA==", - "dev": true, - "requires": { - "@storybook/client-logger": "5.3.21", - "@storybook/theming": "5.3.21", - "@types/react-syntax-highlighter": "11.0.4", - "@types/react-textarea-autosize": "^4.3.3", - "core-js": "^3.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "markdown-to-jsx": "^6.11.4", - "memoizerific": "^1.11.3", - "polished": "^3.3.1", - "popper.js": "^1.14.7", - "prop-types": "^15.7.2", - "react": "^16.8.3", - "react-dom": "^16.8.3", - "react-focus-lock": "^2.1.0", - "react-helmet-async": "^1.0.2", - "react-popper-tooltip": "^2.8.3", - "react-syntax-highlighter": "^11.0.2", - "react-textarea-autosize": "^7.1.0", - "simplebar-react": "^1.0.0-alpha.6", - "ts-dedent": "^1.1.0" - } - }, - "@storybook/core-events": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/core-events/-/core-events-5.3.21.tgz", - "integrity": "sha512-/Zsm1sKAh6pzQv8jQUmuhM7nuM01ZljIRKy8p2HjPNlMjDB5yaRkBfyeAUXUg+qXNI6aHVWa4jGdPEdwwY4oLA==", - "dev": true, - "requires": { - "core-js": "^3.0.1" - } - }, - "@storybook/router": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/router/-/router-5.3.21.tgz", - "integrity": "sha512-c29m5UikK5Q1lyd6FltOGFhIcpd6PIb855YS3OUNe3F6ZA1tfJ+aNKrCBc65d1c+fvCGG76dYYYv0RvwEmKXXg==", - "dev": true, - "requires": { - "@reach/router": "^1.2.1", - "@storybook/csf": "0.0.1", - "@types/reach__router": "^1.2.3", - "core-js": "^3.0.1", - "global": "^4.3.2", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3", - "qs": "^6.6.0", - "util-deprecate": "^1.0.2" - } - }, - "@storybook/theming": { - "version": "5.3.21", - "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-5.3.21.tgz", - "integrity": "sha512-FZbxjizqdO9lV5LUixPio/7+6UdPiswCzTJn8Hcot9uwwgfnrViRdN7xyjmSYRqv9nHP3OlYbtdeCAgZ4aPq8g==", - "dev": true, - "requires": { - "@emotion/core": "^10.0.20", - "@emotion/styled": "^10.0.17", - "@storybook/client-logger": "5.3.21", - "core-js": "^3.0.1", - "deep-object-diff": "^1.1.0", - "emotion-theming": "^10.0.19", - "global": "^4.3.2", - "memoizerific": "^1.11.3", - "polished": "^3.3.1", - "prop-types": "^15.7.2", - "resolve-from": "^5.0.0", - "ts-dedent": "^1.1.0" - } - }, - "@types/react-syntax-highlighter": { - "version": "11.0.4", - "resolved": "https://registry.npmjs.org/@types/react-syntax-highlighter/-/react-syntax-highlighter-11.0.4.tgz", - "integrity": "sha512-9GfTo3a0PHwQeTVoqs0g5bS28KkSY48pp5659wA+Dp4MqceDEa8EHBqrllJvvtyusszyJhViUEap0FDvlk/9Zg==", - "dev": true, - "requires": { - "@types/react": "*" - } - }, - "create-react-context": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/create-react-context/-/create-react-context-0.3.0.tgz", - "integrity": "sha512-dNldIoSuNSvlTJ7slIKC/ZFGKexBMBrrcc+TTe1NdmROnaASuLPvqpwj9v4XS4uXZ8+YPu0sNmShX2rXI5LNsw==", - "dev": true, - "requires": { - "gud": "^1.0.0", - "warning": "^4.0.3" - } - }, - "deep-equal": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", - "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", - "dev": true, - "requires": { - "is-arguments": "^1.0.4", - "is-date-object": "^1.0.1", - "is-regex": "^1.0.4", - "object-is": "^1.0.1", - "object-keys": "^1.1.1", - "regexp.prototype.flags": "^1.2.0" - } - }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "fuse.js": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/fuse.js/-/fuse.js-3.6.1.tgz", - "integrity": "sha512-hT9yh/tiinkmirKrlv4KWOjztdoZo1mx9Qh4KvWqC7isoXwdUY3PNWUxceF4/qO9R6riA2C29jdTOeQOIROjgw==", - "dev": true - }, - "hastscript": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-5.1.2.tgz", - "integrity": "sha512-WlztFuK+Lrvi3EggsqOkQ52rKbxkXL3RwB6t5lwoa8QLMemoWfBuL43eDrwOamJyR7uKQKdmKYaBH1NZBiIRrQ==", - "dev": true, - "requires": { - "comma-separated-tokens": "^1.0.0", - "hast-util-parse-selector": "^2.0.0", - "property-information": "^5.0.0", - "space-separated-tokens": "^1.0.0" - } - }, - "highlight.js": { - "version": "9.13.1", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-9.13.1.tgz", - "integrity": "sha512-Sc28JNQNDzaH6PORtRLMvif9RSn1mYuOoX3omVjnb0+HbpPygU2ALBI0R/wsiqCb4/fcp07Gdo8g+fhtFrQl6A==", - "dev": true - }, - "isobject": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", - "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", - "dev": true - }, - "lowlight": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/lowlight/-/lowlight-1.11.0.tgz", - "integrity": "sha512-xrGGN6XLL7MbTMdPD6NfWPwY43SNkjf/d0mecSx/CW36fUZTjRHEq0/Cdug3TWKtRXLWi7iMl1eP0olYxj/a4A==", - "dev": true, - "requires": { - "fault": "^1.0.2", - "highlight.js": "~9.13.0" - } - }, - "markdown-to-jsx": { - "version": "6.11.4", - "resolved": "https://registry.npmjs.org/markdown-to-jsx/-/markdown-to-jsx-6.11.4.tgz", - "integrity": "sha512-3lRCD5Sh+tfA52iGgfs/XZiw33f7fFX9Bn55aNnVNUd2GzLDkOWyKYYD8Yju2B1Vn+feiEdgJs8T6Tg0xNokPw==", - "dev": true, - "requires": { - "prop-types": "^15.6.2", - "unquote": "^1.1.0" - } - }, - "parse-entities": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-1.2.2.tgz", - "integrity": "sha512-NzfpbxW/NPrzZ/yYSoQxyqUZMZXIdCfE0OIN4ESsnptHJECoUk3FZktxNuzQf4tjt5UEopnxpYJbvYuxIFDdsg==", - "dev": true, - "requires": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" - } - }, - "polished": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/polished/-/polished-3.7.2.tgz", - "integrity": "sha512-pQKtpZGmsZrW8UUpQMAnR7s3ppHeMQVNyMDKtUyKwuvDmklzcEyM5Kllb3JyE/sE/x7arDmyd35i+4vp99H6sQ==", - "dev": true, - "requires": { - "@babel/runtime": "^7.12.5" - } - }, - "prismjs": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.17.1.tgz", - "integrity": "sha512-PrEDJAFdUGbOP6xK/UsfkC5ghJsPJviKgnQOoxaDbBjwc8op68Quupwt1DeAFoG8GImPhiKXAvvsH7wDSLsu1Q==", - "dev": true, - "requires": { - "clipboard": "^2.0.0" - } - }, - "react": { - "version": "16.14.0", - "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", - "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", - "dev": true, - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2" - } - }, - "react-popper": { - "version": "1.3.11", - "resolved": "https://registry.npmjs.org/react-popper/-/react-popper-1.3.11.tgz", - "integrity": "sha512-VSA/bS+pSndSF2fiasHK/PTEEAyOpX60+H5EPAjoArr8JGm+oihu4UbrqcEBpQibJxBVCpYyjAX7abJ+7DoYVg==", - "dev": true, - "requires": { - "@babel/runtime": "^7.1.2", - "@hypnosphi/create-react-context": "^0.3.1", - "deep-equal": "^1.1.1", - "popper.js": "^1.14.4", - "prop-types": "^15.6.1", - "typed-styles": "^0.0.7", - "warning": "^4.0.2" - } - }, - "react-popper-tooltip": { - "version": "2.11.1", - "resolved": "https://registry.npmjs.org/react-popper-tooltip/-/react-popper-tooltip-2.11.1.tgz", - "integrity": "sha512-04A2f24GhyyMicKvg/koIOQ5BzlrRbKiAgP6L+Pdj1MVX3yJ1NeZ8+EidndQsbejFT55oW1b++wg2Z8KlAyhfQ==", - "dev": true, - "requires": { - "@babel/runtime": "^7.9.2", - "react-popper": "^1.3.7" - } - }, - "react-sizeme": { - "version": "2.6.12", - "resolved": "https://registry.npmjs.org/react-sizeme/-/react-sizeme-2.6.12.tgz", - "integrity": "sha512-tL4sCgfmvapYRZ1FO2VmBmjPVzzqgHA7kI8lSJ6JS6L78jXFNRdOZFpXyK6P1NBZvKPPCZxReNgzZNUajAerZw==", - "dev": true, - "requires": { - "element-resize-detector": "^1.2.1", - "invariant": "^2.2.4", - "shallowequal": "^1.1.0", - "throttle-debounce": "^2.1.0" - } - }, - "react-syntax-highlighter": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/react-syntax-highlighter/-/react-syntax-highlighter-11.0.2.tgz", - "integrity": "sha512-kqmpM2OH5OodInbEADKARwccwSQWBfZi0970l5Jhp4h39q9Q65C4frNcnd6uHE5pR00W8pOWj9HDRntj2G4Rww==", - "dev": true, - "requires": { - "@babel/runtime": "^7.3.1", - "highlight.js": "~9.13.0", - "lowlight": "~1.11.0", - "prismjs": "^1.8.4", - "refractor": "^2.4.1" - } - }, - "react-textarea-autosize": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-7.1.2.tgz", - "integrity": "sha512-uH3ORCsCa3C6LHxExExhF4jHoXYCQwE5oECmrRsunlspaDAbS4mGKNlWZqjLfInWtFQcf0o1n1jC/NGXFdUBCg==", - "dev": true, - "requires": { - "@babel/runtime": "^7.1.2", - "prop-types": "^15.6.0" - } - }, - "refractor": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/refractor/-/refractor-2.10.1.tgz", - "integrity": "sha512-Xh9o7hQiQlDbxo5/XkOX6H+x/q8rmlmZKr97Ie1Q8ZM32IRRd3B/UxuA/yXDW79DBSXGWxm2yRTbcTVmAciJRw==", - "dev": true, - "requires": { - "hastscript": "^5.0.0", - "parse-entities": "^1.1.2", - "prismjs": "~1.17.0" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "simplebar-react": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/simplebar-react/-/simplebar-react-1.2.3.tgz", - "integrity": "sha512-1EOWJzFC7eqHUp1igD1/tb8GBv5aPQA5ZMvpeDnVkpNJ3jAuvmrL2kir3HuijlxhG7njvw9ssxjjBa89E5DrJg==", - "dev": true, - "requires": { - "prop-types": "^15.6.1", - "simplebar": "^4.2.3" - } - }, - "telejson": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/telejson/-/telejson-3.3.0.tgz", - "integrity": "sha512-er08AylQ+LEbDLp1GRezORZu5wKOHaBczF6oYJtgC3Idv10qZ8A3p6ffT+J5BzDKkV9MqBvu8HAKiIIOp6KJ2w==", - "dev": true, - "requires": { - "@types/is-function": "^1.0.0", - "global": "^4.4.0", - "is-function": "^1.0.1", - "is-regex": "^1.0.4", - "is-symbol": "^1.0.3", - "isobject": "^4.0.0", - "lodash": "^4.17.15", - "memoizerific": "^1.11.3" - } - }, - "ts-dedent": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-1.2.0.tgz", - "integrity": "sha512-6zSJp23uQI+Txyz5LlXMXAHpUhY4Hi0oluXny0OgIR7g/Cromq4vDBnhtbBdyIV34g0pgwxUvnvg+jLJe4c1NA==", - "dev": true - } + "defer-to-connect": "^2.0.0" } }, "@testing-library/react-native": { @@ -39026,9 +33744,9 @@ "dev": true }, "@types/babel__core": { - "version": "7.1.14", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.14.tgz", - "integrity": "sha512-zGZJzzBUVDo/eV6KgbE0f0ZI7dInEYvo12Rb70uNQDshC3SkRMb67ja0GgRHZgAX3Za6rhaWlvbDO8rrGyAb1g==", + "version": "7.1.15", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.15.tgz", + "integrity": "sha512-bxlMKPDbY8x5h6HBwVzEOk2C8fb6SLfYQ5Jw3uBYuYF1lfWk/kbLd81la82vrIkBb0l+JdmrZaDikPrNxpS/Ew==", "dev": true, "requires": { "@babel/parser": "^7.1.0", @@ -39039,18 +33757,18 @@ } }, "@types/babel__generator": { - "version": "7.6.2", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.2.tgz", - "integrity": "sha512-MdSJnBjl+bdwkLskZ3NGFp9YcXGx5ggLpQQPqtgakVhsWK0hTtNYhjpZLlWQTviGTvF8at+Bvli3jV7faPdgeQ==", + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.3.tgz", + "integrity": "sha512-/GWCmzJWqV7diQW54smJZzWbSFf4QYtF71WCKhcx6Ru/tFyQIY2eiiITcCAeuPbNSvT9YCGkVMqqvSk2Z0mXiA==", "dev": true, "requires": { "@babel/types": "^7.0.0" } }, "@types/babel__template": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.0.tgz", - "integrity": "sha512-NTPErx4/FiPCGScH7foPyr+/1Dkzkni+rHiYHHoTjvwou7AQzJkNeD60A9CXRy+ZEN2B1bggmkTMCDb+Mv5k+A==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", + "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", "dev": true, "requires": { "@babel/parser": "^7.1.0", @@ -39066,20 +33784,31 @@ "@babel/types": "^7.3.0" } }, - "@types/color-convert": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@types/color-convert/-/color-convert-2.0.0.tgz", - "integrity": "sha512-m7GG7IKKGuJUXvkZ1qqG3ChccdIM/qBBo913z+Xft0nKCX4hAU/IxKwZBU4cpRZ7GS5kV4vOblUkILtSShCPXQ==", - "dev": true, + "@types/cacheable-request": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.2.tgz", + "integrity": "sha512-B3xVo+dlKM6nnKTcmm5ZtY/OL8bOAOd2Olee9M1zft65ox50OzjEHW91sDiU9j6cvW8Ejg1/Qkf4xd2kugApUA==", "requires": { - "@types/color-name": "*" + "@types/http-cache-semantics": "*", + "@types/keyv": "*", + "@types/node": "*", + "@types/responselike": "*" } }, - "@types/color-name": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", - "dev": true + "@types/debug": { + "version": "4.1.6", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.6.tgz", + "integrity": "sha512-7fDOJFA/x8B+sO1901BmHlf5dE1cxBU8mRXj8QOEDnn16hhGJv/IHxJtZhvsabZsIMn0eLIyeOKAeqSNJJYTpA==" + }, + "@types/emscripten": { + "version": "1.39.5", + "resolved": "https://registry.npmjs.org/@types/emscripten/-/emscripten-1.39.5.tgz", + "integrity": "sha512-DIOOg+POSrYl+OlNRHQuIEqCd8DCtynG57H862UCce16nXJX7J8eWxNGgOcf8Eyge8zXeSs27mz1UcFu8L/L7g==" + }, + "@types/flat-cache": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@types/flat-cache/-/flat-cache-2.0.0.tgz", + "integrity": "sha512-fHeEsm9hvmZ+QHpw6Fkvf19KIhuqnYLU6vtWLjd5BsMd/qVi7iTkMioDZl0mQmfNRA1A6NwvhrSRNr9hGYZGww==" }, "@types/graceful-fs": { "version": "4.1.5", @@ -39089,20 +33818,16 @@ "@types/node": "*" } }, + "@types/graphlib": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/@types/graphlib/-/graphlib-2.1.8.tgz", + "integrity": "sha512-8nbbyD3zABRA9ePoBgAl2ym8cIwKQXTfv1gaIRTdY99yEOCaHfmjBeRp+BIemS8NtOqoWK7mfzWxjNrxLK3T5w==" + }, "@types/hammerjs": { "version": "2.0.39", "resolved": "https://registry.npmjs.org/@types/hammerjs/-/hammerjs-2.0.39.tgz", "integrity": "sha512-lYR2Y/tV2ujpk/WyUc7S0VLI0a9hrtVIN9EwnrNo5oSEJI2cK2/XrgwOQmXLL3eTulOESvh9qP6si9+DWM9cOA==" }, - "@types/hast": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@types/hast/-/hast-2.3.1.tgz", - "integrity": "sha512-viwwrB+6xGzw+G1eWpF9geV3fnsDgXqHG+cqgiHrvQfDUW5hzhCyV7Sy3UJxhfRFBsgky2SSW33qi/YrIkjX5Q==", - "dev": true, - "requires": { - "@types/unist": "*" - } - }, "@types/hoist-non-react-statics": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/@types/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz", @@ -39112,17 +33837,10 @@ "hoist-non-react-statics": "^3.3.0" } }, - "@types/html-minifier-terser": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", - "integrity": "sha512-giAlZwstKbmvMk1OO7WXSj4OZ0keXAcl2TQq4LWHiiPH2ByaH7WeUzng+Qej8UPxxv+8lRTuouo0iaNDBuzIBA==", - "dev": true - }, - "@types/is-function": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@types/is-function/-/is-function-1.0.0.tgz", - "integrity": "sha512-iTs9HReBu7evG77Q4EC8hZnqRt57irBDkK9nvmHroiOIVwYMQc4IvYvdRgwKfYepunIY7Oh/dBuuld+Gj9uo6w==", - "dev": true + "@types/http-cache-semantics": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz", + "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==" }, "@types/istanbul-lib-coverage": { "version": "2.0.3", @@ -39146,21 +33864,68 @@ } }, "@types/jest": { - "version": "26.0.23", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-26.0.23.tgz", - "integrity": "sha512-ZHLmWMJ9jJ9PTiT58juykZpL7KjwJywFN3Rr2pTSkyQfydf/rk22yS7W8p5DaVUMQ2BQC7oYiU3FjbTM/mYrOA==", + "version": "26.0.24", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-26.0.24.tgz", + "integrity": "sha512-E/X5Vib8BWqZNRlDxj9vYXhsDwPYbPINqKF9BsnSoon4RQ0D9moEuLD8txgyypFLH7J4+Lho9Nr/c8H0Fi+17w==", "dev": true, "requires": { "jest-diff": "^26.0.0", "pretty-format": "^26.0.0" } }, + "@types/js-yaml": { + "version": "3.12.7", + "resolved": "https://registry.npmjs.org/@types/js-yaml/-/js-yaml-3.12.7.tgz", + "integrity": "sha512-S6+8JAYTE1qdsc9HMVsfY7+SgSuUU/Tp6TYTmITW0PZxiyIMvol3Gy//y69Wkhs0ti4py5qgR3uZH6uz/DNzJQ==" + }, "@types/json-schema": { "version": "7.0.7", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.7.tgz", "integrity": "sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==", "dev": true }, + "@types/keyv": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.2.tgz", + "integrity": "sha512-/FvAK2p4jQOaJ6CGDHJTqZcUtbZe820qIeTg7o0Shg7drB4JHeL+V/dhSaly7NXx6u8eSee+r7coT+yuJEvDLg==", + "requires": { + "@types/node": "*" + } + }, + "@types/lodash": { + "version": "4.14.171", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.171.tgz", + "integrity": "sha512-7eQ2xYLLI/LsicL2nejW9Wyko3lcpN6O/z0ZLHrEQsg280zIdCv1t/0m6UtBjUHokCGBQ3gYTbHzDkZ1xOBwwg==" + }, + "@types/lodash.chunk": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/@types/lodash.chunk/-/lodash.chunk-4.2.6.tgz", + "integrity": "sha512-SPlusB7jxXyGcTXYcUdWr7WmhArO/rmTq54VN88iKMxGUhyg79I4Q8n4riGn3kjaTjOJrVlHhxgX/d7woak5BQ==", + "requires": { + "@types/lodash": "*" + } + }, + "@types/lodash.omit": { + "version": "4.5.6", + "resolved": "https://registry.npmjs.org/@types/lodash.omit/-/lodash.omit-4.5.6.tgz", + "integrity": "sha512-KXPpOSNX2h0DAG2w7ajpk7TXvWF28ZHs5nJhOJyP0BQHkehgr948RVsToItMme6oi0XJkp19CbuNXkIX8FiBlQ==", + "requires": { + "@types/lodash": "*" + } + }, + "@types/lodash.union": { + "version": "4.6.6", + "resolved": "https://registry.npmjs.org/@types/lodash.union/-/lodash.union-4.6.6.tgz", + "integrity": "sha512-Wu0ZEVNcyCz8eAn6TlUbYWZoGbH9E+iOHxAZbwUoCEXdUiy6qpcz5o44mMXViM4vlPLLCPlkAubEP1gokoSZaw==", + "requires": { + "@types/lodash": "*" + } + }, + "@types/minimatch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==" + }, "@types/node": { "version": "16.0.0", "resolved": "https://registry.npmjs.org/@types/node/-/node-16.0.0.tgz", @@ -39172,24 +33937,6 @@ "integrity": "sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==", "dev": true }, - "@types/npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/@types/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-4QQmOF5KlwfxJ5IGXFIudkeLCdMABz03RcUXu+LCb24zmln8QW6aDjuGl4d4XPVLf2j+FnjelHTP7dvceAFbhA==", - "dev": true - }, - "@types/overlayscrollbars": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@types/overlayscrollbars/-/overlayscrollbars-1.12.0.tgz", - "integrity": "sha512-h/pScHNKi4mb+TrJGDon8Yb06ujFG0mSg12wIO0sWMUF3dQIe2ExRRdNRviaNt9IjxIiOfnRr7FsQAdHwK4sMg==", - "dev": true - }, - "@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==", - "dev": true - }, "@types/prettier": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.3.1.tgz", @@ -39201,25 +33948,10 @@ "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.3.tgz", "integrity": "sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw==" }, - "@types/qs": { - "version": "6.9.6", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.6.tgz", - "integrity": "sha512-0/HnwIfW4ki2D8L8c9GVcG5I72s9jP5GSLVF0VIXDW00kmIpA6O33G7a8n59Tmh7Nz0WUC3rSb7PTY/sdW2JzA==", - "dev": true - }, - "@types/reach__router": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/@types/reach__router/-/reach__router-1.3.8.tgz", - "integrity": "sha512-cjjT0FPdwuvhLWpCDt2WCh4sdBqNzJe3XhxXmRQGsY3IvT58M8sE4E7A0QaFYuJs3ar+McSJTiJxdYKWAXbBhw==", - "dev": true, - "requires": { - "@types/react": "*" - } - }, "@types/react": { - "version": "17.0.11", - "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.11.tgz", - "integrity": "sha512-yFRQbD+whVonItSk7ZzP/L+gPTJVBkL/7shLEF+i9GC/1cV3JmUxEQz6+9ylhUpWSDuqo1N9qEvqS6vTj4USUA==", + "version": "17.0.14", + "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.14.tgz", + "integrity": "sha512-0WwKHUbWuQWOce61UexYuWTGuGY/8JvtUe/dtQ6lR4sZ3UiylHotJeWpf3ArP9+DSGUoLY3wbU59VyMrJps5VQ==", "requires": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -39243,9 +33975,9 @@ } }, "@types/react-native": { - "version": "0.64.10", - "resolved": "https://registry.npmjs.org/@types/react-native/-/react-native-0.64.10.tgz", - "integrity": "sha512-3Kb9QM5/WZ6p58yZ7VPbvjvi6Wc/ZkESgJhKso1gKkNuHBe/4WL6586R2JRDiz9Tsxal9lMnbj3fligBVGl8PA==", + "version": "0.64.11", + "resolved": "https://registry.npmjs.org/@types/react-native/-/react-native-0.64.11.tgz", + "integrity": "sha512-WgOJtQpFyH063MHZugOHq8Qr0J0UnASmz0NvSNRXEOd8ySkuNvLmlkiITr+L85o2BPj3hB/wx8IiK16dW/uVkQ==", "requires": { "@types/react": "*" } @@ -39261,9 +33993,9 @@ } }, "@types/react-native-share": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/@types/react-native-share/-/react-native-share-3.3.2.tgz", - "integrity": "sha512-D/kIZvafsCFBONYZ37pekeE7/b/Zs+K0mRtT05SJ0aGZjSDnPyRmazrfyOrzOOIufEBH/vXrlb3yFkmdbCkwaA==", + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/@types/react-native-share/-/react-native-share-3.3.3.tgz", + "integrity": "sha512-aZNKQjXtsuooG21wSsT8WUMkD+TiSNGi6i1XEKHLEFD3CSRUGAJI/PFXPzdWGsPw7Z0z4xW3IDKCbjyu0grRVg==", "dev": true, "requires": { "@types/react": "*", @@ -39280,24 +34012,15 @@ } }, "@types/react-native-video": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/@types/react-native-video/-/react-native-video-5.0.6.tgz", - "integrity": "sha512-elf7Y7qornIySK5yR9yOINtQcqXScSQoe9yz5Kuisq/IV5Kf3BprsNGHloRXT+WYVQflii6+EJwyAUs1R4izAw==", + "version": "5.0.8", + "resolved": "https://registry.npmjs.org/@types/react-native-video/-/react-native-video-5.0.8.tgz", + "integrity": "sha512-gxwDE+0+R9FozEaMavgbR1ctHclSzt/YLRDDMubeQAcs4hq/DyafSOcvsGn9CT8uB35HRxGJCpuuLyTuwjG2yw==", "dev": true, "requires": { "@types/react": "*", "@types/react-native": "*" } }, - "@types/react-syntax-highlighter": { - "version": "11.0.5", - "resolved": "https://registry.npmjs.org/@types/react-syntax-highlighter/-/react-syntax-highlighter-11.0.5.tgz", - "integrity": "sha512-VIOi9i2Oj5XsmWWoB72p3KlZoEbdRAcechJa8Ztebw7bDl2YmR+odxIqhtJGp1q2EozHs02US+gzxJ9nuf56qg==", - "dev": true, - "requires": { - "@types/react": "*" - } - }, "@types/react-test-renderer": { "version": "17.0.1", "resolved": "https://registry.npmjs.org/@types/react-test-renderer/-/react-test-renderer-17.0.1.tgz", @@ -39307,25 +34030,28 @@ "@types/react": "*" } }, - "@types/react-textarea-autosize": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/@types/react-textarea-autosize/-/react-textarea-autosize-4.3.5.tgz", - "integrity": "sha512-PiDL83kPMTolyZAWW3lyzO6ktooTb9tFTntVy7CA83/qFLWKLJ5bLeRboy6J6j3b1e8h2Eec6gBTEOOJRjV14A==", - "dev": true, + "@types/responselike": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.0.tgz", + "integrity": "sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==", "requires": { - "@types/react": "*" + "@types/node": "*" } }, + "@types/sarif": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@types/sarif/-/sarif-2.1.4.tgz", + "integrity": "sha512-4xKHMdg3foh3Va1fxTzY1qt8QVqmaJpGWsVvtjQrJBn+/bkig2pWFKJ4FPI2yLI4PAj0SUKiPO4Vd7ggYIMZjQ==" + }, "@types/scheduler": { "version": "0.16.1", "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.1.tgz", "integrity": "sha512-EaCxbanVeyxDRTQBkdLb3Bvl/HK7PBK6UJjsSixB0iHKoWxE5uu2Q/DgtpOhPIojN0Zl1whvOd7PoHs2P0s5eA==" }, "@types/semver": { - "version": "7.3.6", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.6.tgz", - "integrity": "sha512-0caWDWmpCp0uifxFh+FaqK3CuZ2SkRR/ZRxAV5+zNdC3QVUi6wyOJnefhPvtNt8NQWXB5OA93BUvZsXpWat2Xw==", - "dev": true + "version": "7.3.7", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.7.tgz", + "integrity": "sha512-4g1jrL98mdOIwSOUh6LTlB0Cs9I0dQPwINUhBg7C6pN4HLr8GS8xsksJxilW6S6dQHVi2K/o+lQuQcg7LroCnw==" }, "@types/shallow-equals": { "version": "1.0.0", @@ -39333,52 +34059,22 @@ "integrity": "sha512-XtGSj7GYPfJwaklDtMEONj+kmpyCP8OLYoPqp/ROM8BL1VaF2IgYbxiEKfLvOyHN7c2d1KAFYzy6EIu8CSFt1A==", "dev": true }, - "@types/source-list-map": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", - "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", - "dev": true - }, "@types/stack-utils": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", "dev": true }, - "@types/tapable": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.8.tgz", - "integrity": "sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ==", - "dev": true - }, "@types/tinycolor2": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/@types/tinycolor2/-/tinycolor2-1.4.2.tgz", - "integrity": "sha512-PeHg/AtdW6aaIO2a+98Xj7rWY4KC1E6yOy7AFknJQ7VXUGNrMlyxDFxJo7HqLtjQms/ZhhQX52mLVW/EX3JGOw==", + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/@types/tinycolor2/-/tinycolor2-1.4.3.tgz", + "integrity": "sha512-Kf1w9NE5HEgGxCRyIcRXR/ZYtDv0V8FVPtYHwLxl0O+maGX0erE77pQlD0gpP+/KByMZ87mOA79SjifhSB3PjQ==", "dev": true }, - "@types/uglify-js": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.13.1.tgz", - "integrity": "sha512-O3MmRAk6ZuAKa9CHgg0Pr0+lUOqoMLpc9AS4R8ano2auvsg7IE8syF3Xh/NPr26TWklxYcqoEEFdzLLs1fV9PQ==", - "dev": true, - "requires": { - "source-map": "^0.6.1" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "@types/unist": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.4.tgz", - "integrity": "sha512-zfyYsDTK1HTGYXU3fTiM76+om93HcFtsZd2M0bO/CL4DiETV7mSa/pIVN/6+G3esOqEMdg2An5cHHbK5t+9w+A==", - "dev": true + "@types/treeify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/treeify/-/treeify-1.0.0.tgz", + "integrity": "sha512-ONpcZAEYlbPx4EtJwfTyCDQJGUpKf4sEcuySdCVjK5Fj/3vHp5HII1fqa1/+qrsLnpYELCQTfVW/awsGJePoIg==" }, "@types/url-parse": { "version": "1.4.3", @@ -39386,62 +34082,10 @@ "integrity": "sha512-4kHAkbV/OfW2kb5BLVUuUMoumB3CP8rHqlw48aHvFy5tf9ER0AfOonBlX29l/DD68G70DmyhRlSYfQPSYpC5Vw==", "dev": true }, - "@types/webpack": { - "version": "4.41.30", - "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.30.tgz", - "integrity": "sha512-GUHyY+pfuQ6haAfzu4S14F+R5iGRwN6b2FRNJY7U0NilmFAqbsOfK6j1HwuLBAqwRIT+pVdNDJGJ6e8rpp0KHA==", - "dev": true, - "requires": { - "@types/node": "*", - "@types/tapable": "^1", - "@types/uglify-js": "*", - "@types/webpack-sources": "*", - "anymatch": "^3.0.0", - "source-map": "^0.6.0" - }, - "dependencies": { - "anymatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", - "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "@types/webpack-env": { - "version": "1.16.2", - "resolved": "https://registry.npmjs.org/@types/webpack-env/-/webpack-env-1.16.2.tgz", - "integrity": "sha512-vKx7WNQNZDyJveYcHAm9ZxhqSGLYwoyLhrHjLBOkw3a7cT76sTdjgtwyijhk1MaHyRIuSztcVwrUOO/NEu68Dw==", - "dev": true - }, - "@types/webpack-sources": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-2.1.1.tgz", - "integrity": "sha512-MjM1R6iuw8XaVbtkCBz0N349cyqBjJHCbQiOeppe3VBeFvxqs74RKHAVt9LkxTnUWc7YLZOEsUfPUnmK6SBPKQ==", - "dev": true, - "requires": { - "@types/node": "*", - "@types/source-list-map": "*", - "source-map": "^0.7.3" - }, - "dependencies": { - "source-map": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true - } - } + "@types/uuid": { + "version": "8.3.1", + "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.1.tgz", + "integrity": "sha512-Y2mHTRAbqfFkpjldbkHGY8JIzRN6XqYRliG8/24FcHm2D2PwW24fl5xMRTVGdrb7iMrwCaIEbLWerGIkXuFWVg==" }, "@types/yargs": { "version": "15.0.14", @@ -39457,13 +34101,13 @@ "integrity": "sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw==" }, "@typescript-eslint/eslint-plugin": { - "version": "4.28.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.28.0.tgz", - "integrity": "sha512-KcF6p3zWhf1f8xO84tuBailV5cN92vhS+VT7UJsPzGBm9VnQqfI9AsiMUFUCYHTYPg1uCCo+HyiDnpDuvkAMfQ==", + "version": "4.28.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.28.2.tgz", + "integrity": "sha512-PGqpLLzHSxq956rzNGasO3GsAPf2lY9lDUBXhS++SKonglUmJypaUtcKzRtUte8CV7nruwnDxtLUKpVxs0wQBw==", "dev": true, "requires": { - "@typescript-eslint/experimental-utils": "4.28.0", - "@typescript-eslint/scope-manager": "4.28.0", + "@typescript-eslint/experimental-utils": "4.28.2", + "@typescript-eslint/scope-manager": "4.28.2", "debug": "^4.3.1", "functional-red-black-tree": "^1.0.1", "regexpp": "^3.1.0", @@ -39472,55 +34116,55 @@ } }, "@typescript-eslint/experimental-utils": { - "version": "4.28.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.28.0.tgz", - "integrity": "sha512-9XD9s7mt3QWMk82GoyUpc/Ji03vz4T5AYlHF9DcoFNfJ/y3UAclRsfGiE2gLfXtyC+JRA3trR7cR296TEb1oiQ==", + "version": "4.28.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-4.28.2.tgz", + "integrity": "sha512-MwHPsL6qo98RC55IoWWP8/opTykjTp4JzfPu1VfO2Z0MshNP0UZ1GEV5rYSSnZSUI8VD7iHvtIPVGW5Nfh7klQ==", "dev": true, "requires": { "@types/json-schema": "^7.0.7", - "@typescript-eslint/scope-manager": "4.28.0", - "@typescript-eslint/types": "4.28.0", - "@typescript-eslint/typescript-estree": "4.28.0", + "@typescript-eslint/scope-manager": "4.28.2", + "@typescript-eslint/types": "4.28.2", + "@typescript-eslint/typescript-estree": "4.28.2", "eslint-scope": "^5.1.1", "eslint-utils": "^3.0.0" } }, "@typescript-eslint/parser": { - "version": "4.28.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.28.0.tgz", - "integrity": "sha512-7x4D22oPY8fDaOCvkuXtYYTQ6mTMmkivwEzS+7iml9F9VkHGbbZ3x4fHRwxAb5KeuSkLqfnYjs46tGx2Nour4A==", + "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.0", - "@typescript-eslint/types": "4.28.0", - "@typescript-eslint/typescript-estree": "4.28.0", + "@typescript-eslint/scope-manager": "4.28.2", + "@typescript-eslint/types": "4.28.2", + "@typescript-eslint/typescript-estree": "4.28.2", "debug": "^4.3.1" } }, "@typescript-eslint/scope-manager": { - "version": "4.28.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-4.28.0.tgz", - "integrity": "sha512-eCALCeScs5P/EYjwo6se9bdjtrh8ByWjtHzOkC4Tia6QQWtQr3PHovxh3TdYTuFcurkYI4rmFsRFpucADIkseg==", + "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.0", - "@typescript-eslint/visitor-keys": "4.28.0" + "@typescript-eslint/types": "4.28.2", + "@typescript-eslint/visitor-keys": "4.28.2" } }, "@typescript-eslint/types": { - "version": "4.28.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.28.0.tgz", - "integrity": "sha512-p16xMNKKoiJCVZY5PW/AfILw2xe1LfruTcfAKBj3a+wgNYP5I9ZEKNDOItoRt53p4EiPV6iRSICy8EPanG9ZVA==", + "version": "4.28.2", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-4.28.2.tgz", + "integrity": "sha512-Gr15fuQVd93uD9zzxbApz3wf7ua3yk4ZujABZlZhaxxKY8ojo448u7XTm/+ETpy0V0dlMtj6t4VdDvdc0JmUhA==", "dev": true }, "@typescript-eslint/typescript-estree": { - "version": "4.28.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-4.28.0.tgz", - "integrity": "sha512-m19UQTRtxMzKAm8QxfKpvh6OwQSXaW1CdZPoCaQuLwAq7VZMNuhJmZR4g5281s2ECt658sldnJfdpSZZaxUGMQ==", + "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.0", - "@typescript-eslint/visitor-keys": "4.28.0", + "@typescript-eslint/types": "4.28.2", + "@typescript-eslint/visitor-keys": "4.28.2", "debug": "^4.3.1", "globby": "^11.0.3", "is-glob": "^4.0.1", @@ -39529,12 +34173,12 @@ } }, "@typescript-eslint/visitor-keys": { - "version": "4.28.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-4.28.0.tgz", - "integrity": "sha512-PjJyTWwrlrvM5jazxYF5ZPs/nl0kHDZMVbuIcbpawVXaDPelp3+S9zpOz5RmVUfS/fD5l5+ZXNKnWhNYjPzCvw==", + "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.0", + "@typescript-eslint/types": "4.28.2", "eslint-visitor-keys": "^2.0.0" } }, @@ -39554,10 +34198,11 @@ } }, "@unimodules/react-native-adapter": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/@unimodules/react-native-adapter/-/react-native-adapter-6.2.2.tgz", - "integrity": "sha512-hBXL+IX3u+4TcAHu9lIItdycA7pYWZn3Tt7s5TTna9QKHjyrwo0zVss27LkpJ40tXRHyh/GJ8VzN2CD+0M5I2A==", + "version": "6.3.4", + "resolved": "https://registry.npmjs.org/@unimodules/react-native-adapter/-/react-native-adapter-6.3.4.tgz", + "integrity": "sha512-o2sX+QrYo2hmK0vNbxlULy319IxjgTWVraGxatrXeYPCbFEDM/u+nCLlCgGTz6ZrYN7dHnA0Xq3uoerhUPE0gg==", "requires": { + "expo-modules-autolinking": "^0.0.3", "invariant": "^2.2.4" } }, @@ -39566,6 +34211,7 @@ "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz", "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==", "dev": true, + "peer": true, "requires": { "@webassemblyjs/helper-module-context": "1.9.0", "@webassemblyjs/helper-wasm-bytecode": "1.9.0", @@ -39576,25 +34222,29 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz", "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==", - "dev": true + "dev": true, + "peer": true }, "@webassemblyjs/helper-api-error": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz", "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==", - "dev": true + "dev": true, + "peer": true }, "@webassemblyjs/helper-buffer": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz", "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==", - "dev": true + "dev": true, + "peer": true }, "@webassemblyjs/helper-code-frame": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz", "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==", "dev": true, + "peer": true, "requires": { "@webassemblyjs/wast-printer": "1.9.0" } @@ -39603,13 +34253,15 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz", "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==", - "dev": true + "dev": true, + "peer": true }, "@webassemblyjs/helper-module-context": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz", "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==", "dev": true, + "peer": true, "requires": { "@webassemblyjs/ast": "1.9.0" } @@ -39618,13 +34270,15 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz", "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==", - "dev": true + "dev": true, + "peer": true }, "@webassemblyjs/helper-wasm-section": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz", "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==", "dev": true, + "peer": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-buffer": "1.9.0", @@ -39637,6 +34291,7 @@ "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz", "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==", "dev": true, + "peer": true, "requires": { "@xtuc/ieee754": "^1.2.0" } @@ -39646,6 +34301,7 @@ "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz", "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==", "dev": true, + "peer": true, "requires": { "@xtuc/long": "4.2.2" } @@ -39654,13 +34310,15 @@ "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz", "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==", - "dev": true + "dev": true, + "peer": true }, "@webassemblyjs/wasm-edit": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz", "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==", "dev": true, + "peer": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-buffer": "1.9.0", @@ -39677,6 +34335,7 @@ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz", "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==", "dev": true, + "peer": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-wasm-bytecode": "1.9.0", @@ -39690,6 +34349,7 @@ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz", "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==", "dev": true, + "peer": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-buffer": "1.9.0", @@ -39702,6 +34362,7 @@ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz", "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==", "dev": true, + "peer": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-api-error": "1.9.0", @@ -39716,6 +34377,7 @@ "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz", "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==", "dev": true, + "peer": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/floating-point-hex-parser": "1.9.0", @@ -39730,6 +34392,7 @@ "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz", "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==", "dev": true, + "peer": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/wast-parser": "1.9.0", @@ -39740,19 +34403,275 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true + "dev": true, + "peer": true }, "@xtuc/long": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true + "dev": true, + "peer": true + }, + "@yarnpkg/core": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/core/-/core-2.4.0.tgz", + "integrity": "sha512-FYjcPNTfDfMKLFafQPt49EY28jnYC82Z2S7oMwLPUh144BL8v8YXzb4aCnFyi5nFC5h2kcrJfZh7+Pm/qvCqGw==", + "requires": { + "@arcanis/slice-ansi": "^1.0.2", + "@types/semver": "^7.1.0", + "@types/treeify": "^1.0.0", + "@yarnpkg/fslib": "^2.4.0", + "@yarnpkg/json-proxy": "^2.1.0", + "@yarnpkg/libzip": "^2.2.1", + "@yarnpkg/parsers": "^2.3.0", + "@yarnpkg/pnp": "^2.3.2", + "@yarnpkg/shell": "^2.4.1", + "binjumper": "^0.1.4", + "camelcase": "^5.3.1", + "chalk": "^3.0.0", + "ci-info": "^2.0.0", + "clipanion": "^2.6.2", + "cross-spawn": "7.0.3", + "diff": "^4.0.1", + "globby": "^11.0.1", + "got": "^11.7.0", + "json-file-plus": "^3.3.1", + "lodash": "^4.17.15", + "micromatch": "^4.0.2", + "mkdirp": "^0.5.1", + "p-limit": "^2.2.0", + "pluralize": "^7.0.0", + "pretty-bytes": "^5.1.0", + "semver": "^7.1.2", + "stream-to-promise": "^2.2.0", + "tar-stream": "^2.0.1", + "treeify": "^1.1.0", + "tslib": "^1.13.0", + "tunnel": "^0.0.6" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "requires": { + "isexe": "^2.0.0" + } + } + } + }, + "@yarnpkg/fslib": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/fslib/-/fslib-2.4.0.tgz", + "integrity": "sha512-CwffYY9owtl3uImNOn1K4jl5iIb/L16a9UZ9Q3lkBARk6tlUsPrNFX00eoUlFcLn49TTfd3zdN6higloGCyncw==", + "requires": { + "@yarnpkg/libzip": "^2.2.1", + "tslib": "^1.13.0" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@yarnpkg/json-proxy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/json-proxy/-/json-proxy-2.1.0.tgz", + "integrity": "sha512-rOgCg2DkyviLgr80mUMTt9vzdf5RGOujQB26yPiXjlz4WNePLBshKlTNG9rKSoKQSOYEQcw6cUmosfOKDatrCw==", + "requires": { + "@yarnpkg/fslib": "^2.1.0", + "tslib": "^1.13.0" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@yarnpkg/libzip": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@yarnpkg/libzip/-/libzip-2.2.1.tgz", + "integrity": "sha512-AYDJXrkzayoDd3ZlVgFJ+LyDX+Zj/cki3vxIpcYxejtgkl3aquVWOxlC0DD9WboBWsJFIP1MjrUbchLyh++/7A==", + "requires": { + "@types/emscripten": "^1.38.0", + "tslib": "^1.13.0" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } }, "@yarnpkg/lockfile": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", - "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", - "dev": true + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==" + }, + "@yarnpkg/parsers": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-2.3.0.tgz", + "integrity": "sha512-qgz0QUgOvnhtF92kaluIhIIKBUHlYlHUBQxqh5v9+sxEQvUeF6G6PKiFlzo3E6O99XwvNEGpVu1xZPoSGyGscQ==", + "requires": { + "js-yaml": "^3.10.0", + "tslib": "^1.13.0" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@yarnpkg/pnp": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/@yarnpkg/pnp/-/pnp-2.3.2.tgz", + "integrity": "sha512-JdwHu1WBCISqJEhIwx6Hbpe8MYsYbkGMxoxolkDiAeJ9IGEe08mQcbX1YmUDV1ozSWlm9JZE90nMylcDsXRFpA==", + "requires": { + "@types/node": "^13.7.0", + "@yarnpkg/fslib": "^2.4.0", + "tslib": "^1.13.0" + }, + "dependencies": { + "@types/node": { + "version": "13.13.52", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.52.tgz", + "integrity": "sha512-s3nugnZumCC//n4moGGe6tkNMyYEdaDBitVjwPxXmR5lnMG5dHePinH2EdxkG3Rh1ghFHHixAG4NJhpJW1rthQ==" + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@yarnpkg/shell": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@yarnpkg/shell/-/shell-2.4.1.tgz", + "integrity": "sha512-oNNJkH8ZI5uwu0dMkJf737yMSY1WXn9gp55DqSA5wAOhKvV5DJTXFETxkVgBQhO6Bow9tMGSpvowTMD/oAW/9g==", + "requires": { + "@yarnpkg/fslib": "^2.4.0", + "@yarnpkg/parsers": "^2.3.0", + "clipanion": "^2.6.2", + "cross-spawn": "7.0.3", + "fast-glob": "^3.2.2", + "micromatch": "^4.0.2", + "stream-buffers": "^3.0.2", + "tslib": "^1.13.0" + }, + "dependencies": { + "cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "requires": { + "shebang-regex": "^3.0.0" + } + }, + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==" + }, + "stream-buffers": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/stream-buffers/-/stream-buffers-3.0.2.tgz", + "integrity": "sha512-DQi1h8VEBA/lURbSwFtEHnSTb9s2/pwLEaFuNhXwy1Dx3Sa0lOuYT2yNUr4/j2fs8oCAMANtrZ5OrPZtyVs3MQ==" + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "requires": { + "isexe": "^2.0.0" + } + } + } }, "abab": { "version": "2.0.5", @@ -39760,6 +34679,11 @@ "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==", "dev": true }, + "abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + }, "abort-controller": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", @@ -39816,12 +34740,6 @@ "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", "dev": true }, - "address": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/address/-/address-1.1.2.tgz", - "integrity": "sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA==", - "dev": true - }, "agent-base": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", @@ -39834,37 +34752,11 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dev": true, "requires": { "clean-stack": "^2.0.0", "indent-string": "^4.0.0" } }, - "airbnb-js-shims": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/airbnb-js-shims/-/airbnb-js-shims-2.2.1.tgz", - "integrity": "sha512-wJNXPH66U2xjgo1Zwyjf9EydvJ2Si94+vSdk6EERcBfB2VZkeltpqIats0cqIZMLCXP3zcyaUKGYQeIBT6XjsQ==", - "dev": true, - "requires": { - "array-includes": "^3.0.3", - "array.prototype.flat": "^1.2.1", - "array.prototype.flatmap": "^1.2.1", - "es5-shim": "^4.5.13", - "es6-shim": "^0.35.5", - "function.prototype.name": "^1.1.0", - "globalthis": "^1.0.0", - "object.entries": "^1.1.0", - "object.fromentries": "^2.0.0 || ^1.0.0", - "object.getownpropertydescriptors": "^2.0.3", - "object.values": "^1.1.0", - "promise.allsettled": "^1.0.0", - "promise.prototype.finally": "^3.1.0", - "string.prototype.matchall": "^4.0.0 || ^3.0.1", - "string.prototype.padend": "^3.0.0", - "string.prototype.padstart": "^3.0.0", - "symbol.prototype.description": "^1.0.0" - } - }, "ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", @@ -39882,6 +34774,7 @@ "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", "dev": true, + "peer": true, "requires": {} }, "ajv-keywords": { @@ -39900,7 +34793,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.0.tgz", "integrity": "sha512-ZpClVKqXN3RGBmKibdfWzqCY4lnjEuoNzU5T0oEFpfd/z5qJHVarukridD4juLO2FXMiwUQxr9WqQtaYa8XRYw==", - "dev": true, "requires": { "string-width": "^3.0.0" }, @@ -39908,20 +34800,17 @@ "ansi-regex": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" }, "emoji-regex": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" }, "string-width": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, "requires": { "emoji-regex": "^7.0.1", "is-fullwidth-code-point": "^2.0.0", @@ -39932,7 +34821,6 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, "requires": { "ansi-regex": "^4.1.0" } @@ -39975,12 +34863,6 @@ } } }, - "ansi-html": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/ansi-html/-/ansi-html-0.0.7.tgz", - "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=", - "dev": true - }, "ansi-regex": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", @@ -40009,19 +34891,15 @@ } } }, - "ansi-to-html": { - "version": "0.6.15", - "resolved": "https://registry.npmjs.org/ansi-to-html/-/ansi-to-html-0.6.15.tgz", - "integrity": "sha512-28ijx2aHJGdzbs+O5SNQF65r6rrKYnkuwTYm8lZlChuoJ9P1vVzIpWO20sQTqTPDXYp6NFwk326vApTtLVFXpQ==", - "dev": true, - "requires": { - "entities": "^2.0.0" - } + "ansicolors": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/ansicolors/-/ansicolors-0.3.2.tgz", + "integrity": "sha1-ZlWX3oap/+Oqm/vmyuXG6kJrSXk=" }, - "any-base": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/any-base/-/any-base-1.1.0.tgz", - "integrity": "sha512-uMgjozySS8adZZYePpaWs8cxB9/kdzmpX6SgJZ+wbz1K5eYk5QMYDVJaZKhxyIHUdnnJkfR7SVgStgH7LkGUyg==" + "any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=" }, "anymatch": { "version": "2.0.0", @@ -40114,12 +34992,6 @@ } } }, - "app-root-dir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/app-root-dir/-/app-root-dir-1.0.2.tgz", - "integrity": "sha1-OBh+wt6nV3//Az/8sSFyaS/24Rg=", - "dev": true - }, "appdirsjs": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/appdirsjs/-/appdirsjs-1.2.5.tgz", @@ -40142,6 +35014,11 @@ "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" }, + "archy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz", + "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=" + }, "are-we-there-yet": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", @@ -40174,17 +35051,16 @@ "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" }, + "array-differ": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz", + "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==" + }, "array-filter": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-0.0.1.tgz", "integrity": "sha1-fajPLiZijtcygDWB/SH2fKzS7uw=" }, - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", - "dev": true - }, "array-includes": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz", @@ -40211,30 +35087,19 @@ "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==" }, "array-uniq": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", + "peer": true }, "array-unique": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" }, - "array.prototype.flat": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", - "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1" - } - }, "array.prototype.flatmap": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", @@ -40247,35 +35112,25 @@ "function-bind": "^1.1.1" } }, - "array.prototype.map": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/array.prototype.map/-/array.prototype.map-1.0.3.tgz", - "integrity": "sha512-nNcb30v0wfDyIe26Yif3PcV1JXQp4zEeEfupG7L4SRjnD6HLbO5b2a7eVSba53bOx4YCHYMBHt+Fp4vYstneRA==", - "dev": true, - "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "es-array-method-boxes-properly": "^1.0.0", - "is-string": "^1.0.5" - } - }, - "arrify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", - "dev": true - }, "asap": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" }, + "asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "requires": { + "safer-buffer": "~2.1.0" + } + }, "asn1.js": { "version": "5.4.1", "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", "dev": true, + "peer": true, "requires": { "bn.js": "^4.0.0", "inherits": "^2.0.1", @@ -40287,7 +35142,8 @@ "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true + "dev": true, + "peer": true } } }, @@ -40296,6 +35152,7 @@ "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", "dev": true, + "peer": true, "requires": { "object-assign": "^4.1.1", "util": "0.10.3" @@ -40305,13 +35162,15 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", - "dev": true + "dev": true, + "peer": true }, "util": { "version": "0.10.3", "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", "dev": true, + "peer": true, "requires": { "inherits": "2.0.1" } @@ -40348,7 +35207,8 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", - "dev": true + "dev": true, + "optional": true }, "async-hook-jl": { "version": "1.7.6", @@ -40403,83 +35263,17 @@ "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==" }, - "autoprefixer": { - "version": "9.8.6", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.6.tgz", - "integrity": "sha512-XrvP4VVHdRBCdX1S3WXVD8+RyG9qeb1D5Sn1DeLiG2xfSpzellk5k54xbUERJ3M5DggQxes39UGOTP8CFrEGbg==", - "dev": true, - "requires": { - "browserslist": "^4.12.0", - "caniuse-lite": "^1.0.30001109", - "colorette": "^1.2.1", - "normalize-range": "^0.1.2", - "num2fraction": "^1.2.2", - "postcss": "^7.0.32", - "postcss-value-parser": "^4.1.0" - } - }, "available-typed-arrays": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.4.tgz", "integrity": "sha512-SA5mXJWrId1TaQjfxUYghbqQ/hYioKmLJvPJyDuYRtXXenFNMjj4hSSt1Cf1xsuXSXrtxrVC5Ot4eU6cOtBDdA==" }, - "babel-code-frame": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", - "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", - "dev": true, + "axios": { + "version": "0.21.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.1.tgz", + "integrity": "sha512-dKQiRHxGD9PPRIUNIWvZhPTPpl1rf/OxTYKsqKUDjBwYylTvV7SjSHJb9ratfyzM6wCdLCOYLzs73qpg5c4iGA==", "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - } - }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true - } + "follow-redirects": "^1.10.0" } }, "babel-core": { @@ -40510,64 +35304,67 @@ } } }, - "babel-helper-evaluate-path": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/babel-helper-evaluate-path/-/babel-helper-evaluate-path-0.5.0.tgz", - "integrity": "sha512-mUh0UhS607bGh5wUMAQfOpt2JX2ThXMtppHRdRU1kL7ZLRWIXxoV2UIV1r2cAeeNeU1M5SB5/RSUgUxrK8yOkA==", - "dev": true - }, - "babel-helper-flip-expressions": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/babel-helper-flip-expressions/-/babel-helper-flip-expressions-0.4.3.tgz", - "integrity": "sha1-NpZzahKKwYvCUlS19AoizrPB0/0=", - "dev": true - }, - "babel-helper-is-nodes-equiv": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/babel-helper-is-nodes-equiv/-/babel-helper-is-nodes-equiv-0.0.1.tgz", - "integrity": "sha1-NOmzALFHnd2Y7HfqC76TQt/jloQ=", - "dev": true - }, - "babel-helper-is-void-0": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/babel-helper-is-void-0/-/babel-helper-is-void-0-0.4.3.tgz", - "integrity": "sha1-fZwBtFYee5Xb2g9u7kj1tg5nMT4=", - "dev": true - }, - "babel-helper-mark-eval-scopes": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/babel-helper-mark-eval-scopes/-/babel-helper-mark-eval-scopes-0.4.3.tgz", - "integrity": "sha1-0kSjvvmESHJgP/tG4izorN9VFWI=", - "dev": true - }, - "babel-helper-remove-or-void": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/babel-helper-remove-or-void/-/babel-helper-remove-or-void-0.4.3.tgz", - "integrity": "sha1-pPA7QAd6D/6I5F0HAQ3uJB/1rmA=", - "dev": true - }, - "babel-helper-to-multiple-sequence-expressions": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/babel-helper-to-multiple-sequence-expressions/-/babel-helper-to-multiple-sequence-expressions-0.5.0.tgz", - "integrity": "sha512-m2CvfDW4+1qfDdsrtf4dwOslQC3yhbgyBFptncp4wvtdrDHqueW7slsYv4gArie056phvQFhT2nRcGS4bnm6mA==", - "dev": true - }, "babel-jest": { - "version": "26.6.3", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-26.6.3.tgz", - "integrity": "sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA==", + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-27.0.6.tgz", + "integrity": "sha512-iTJyYLNc4wRofASmofpOc5NK9QunwMk+TLFgGXsTFS8uEqmd8wdI7sga0FPe2oVH3b5Agt/EAK1QjPEuKL8VfA==", "dev": true, "requires": { - "@jest/transform": "^26.6.2", - "@jest/types": "^26.6.2", - "@types/babel__core": "^7.1.7", + "@jest/transform": "^27.0.6", + "@jest/types": "^27.0.6", + "@types/babel__core": "^7.1.14", "babel-plugin-istanbul": "^6.0.0", - "babel-preset-jest": "^26.6.2", + "babel-preset-jest": "^27.0.6", "chalk": "^4.0.0", "graceful-fs": "^4.2.4", "slash": "^3.0.0" }, "dependencies": { + "@jest/transform": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-27.0.6.tgz", + "integrity": "sha512-rj5Dw+mtIcntAUnMlW/Vju5mr73u8yg+irnHwzgtgoeI6cCPOvUwQ0D1uQtc/APmWgvRweEb1g05pkUpxH3iCA==", + "dev": true, + "requires": { + "@babel/core": "^7.1.0", + "@jest/types": "^27.0.6", + "babel-plugin-istanbul": "^6.0.0", + "chalk": "^4.0.0", + "convert-source-map": "^1.4.0", + "fast-json-stable-stringify": "^2.0.0", + "graceful-fs": "^4.2.4", + "jest-haste-map": "^27.0.6", + "jest-regex-util": "^27.0.6", + "jest-util": "^27.0.6", + "micromatch": "^4.0.4", + "pirates": "^4.0.1", + "slash": "^3.0.0", + "source-map": "^0.6.1", + "write-file-atomic": "^3.0.0" + } + }, + "@jest/types": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.0.6.tgz", + "integrity": "sha512-aSquT1qa9Pik26JK5/3rvnYb4bGtm1VFNesHKmNTwmPIgOrixvhL2ghIvFRNEpzy3gU+rUgjIF/KodbkFAl++g==", + "dev": true, + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^3.0.0", + "@types/node": "*", + "@types/yargs": "^16.0.0", + "chalk": "^4.0.0" + } + }, + "@types/yargs": { + "version": "16.0.4", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.4.tgz", + "integrity": "sha512-T8Yc9wt/5LbJyCaLiHPReJa0kApcIgJ7Bn735GjItUfh08Z1pJvu8QZqb9s+mMvKV6WUQRV7K2R46YbjMXTTJw==", + "dev": true, + "requires": { + "@types/yargs-parser": "*" + } + }, "ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -40577,6 +35374,16 @@ "color-convert": "^2.0.1" } }, + "anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dev": true, + "requires": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + } + }, "chalk": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", @@ -40587,18 +35394,112 @@ "supports-color": "^7.1.0" } }, + "ci-info": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.2.0.tgz", + "integrity": "sha512-dVqRX7fLUm8J6FgHJ418XuIgDLZDkYcDFTeL6TA2gt5WlIZUQrrH6EZrNClwT/H0FateUsZkGIOPRrLbP+PR9A==", + "dev": true + }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, + "is-ci": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.0.tgz", + "integrity": "sha512-kDXyttuLeslKAHYL/K28F2YkM3x5jvFPEw3yXbRptXydjD9rpLEz+C5K5iutY9ZiUu6AP41JdvRQwF4Iqs4ZCQ==", + "dev": true, + "requires": { + "ci-info": "^3.1.1" + } + }, + "jest-haste-map": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-27.0.6.tgz", + "integrity": "sha512-4ldjPXX9h8doB2JlRzg9oAZ2p6/GpQUNAeiYXqcpmrKbP0Qev0wdZlxSMOmz8mPOEnt4h6qIzXFLDi8RScX/1w==", + "dev": true, + "requires": { + "@jest/types": "^27.0.6", + "@types/graceful-fs": "^4.1.2", + "@types/node": "*", + "anymatch": "^3.0.3", + "fb-watchman": "^2.0.0", + "fsevents": "^2.3.2", + "graceful-fs": "^4.2.4", + "jest-regex-util": "^27.0.6", + "jest-serializer": "^27.0.6", + "jest-util": "^27.0.6", + "jest-worker": "^27.0.6", + "micromatch": "^4.0.4", + "walker": "^1.0.7" + } + }, + "jest-regex-util": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-27.0.6.tgz", + "integrity": "sha512-SUhPzBsGa1IKm8hx2F4NfTGGp+r7BXJ4CulsZ1k2kI+mGLG+lxGrs76veN2LF/aUdGosJBzKgXmNCw+BzFqBDQ==", + "dev": true + }, + "jest-serializer": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-27.0.6.tgz", + "integrity": "sha512-PtGdVK9EGC7dsaziskfqaAPib6wTViY3G8E5wz9tLVPhHyiDNTZn/xjZ4khAw+09QkoOVpn7vF5nPSN6dtBexA==", + "dev": true, + "requires": { + "@types/node": "*", + "graceful-fs": "^4.2.4" + } + }, + "jest-util": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-27.0.6.tgz", + "integrity": "sha512-1JjlaIh+C65H/F7D11GNkGDDZtDfMEM8EBXsvd+l/cxtgQ6QhxuloOaiayt89DxUvDarbVhqI98HhgrM1yliFQ==", + "dev": true, + "requires": { + "@jest/types": "^27.0.6", + "@types/node": "*", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "is-ci": "^3.0.0", + "picomatch": "^2.2.3" + } + }, + "jest-worker": { + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.0.6.tgz", + "integrity": "sha512-qupxcj/dRuA3xHPMUd40gr2EaAurFbkwzOh7wfPaeE9id7hyjURRQoqNfHifHK3XjJU6YJJUQKILGUnwGPEOCA==", + "dev": true, + "requires": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "dependencies": { + "supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, "slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true }, + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "dev": true + }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -40659,12 +35560,6 @@ } } }, - "babel-plugin-add-react-displayname": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/babel-plugin-add-react-displayname/-/babel-plugin-add-react-displayname-0.0.5.tgz", - "integrity": "sha1-M51M3be2X9YtHfnbn+BN4TQSK9U=", - "dev": true - }, "babel-plugin-dynamic-import-node": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", @@ -40673,24 +35568,6 @@ "object.assign": "^4.1.0" } }, - "babel-plugin-emotion": { - "version": "10.2.2", - "resolved": "https://registry.npmjs.org/babel-plugin-emotion/-/babel-plugin-emotion-10.2.2.tgz", - "integrity": "sha512-SMSkGoqTbTyUTDeuVuPIWifPdUGkTk1Kf9BWRiXIOIcuyMfsdp2EjeiiFvOzX8NOBvEh/ypKYvUh2rkgAJMCLA==", - "dev": true, - "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@emotion/hash": "0.8.0", - "@emotion/memoize": "0.7.4", - "@emotion/serialize": "^0.11.16", - "babel-plugin-macros": "^2.0.0", - "babel-plugin-syntax-jsx": "^6.18.0", - "convert-source-map": "^1.5.0", - "escape-string-regexp": "^1.0.5", - "find-root": "^1.1.0", - "source-map": "^0.5.7" - } - }, "babel-plugin-istanbul": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz", @@ -40705,9 +35582,9 @@ } }, "babel-plugin-jest-hoist": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz", - "integrity": "sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw==", + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-27.0.6.tgz", + "integrity": "sha512-CewFeM9Vv2gM7Yr9n5eyyLVPRSiBnk6lKZRjgwYnGKSl9M14TMn2vkN02wTF04OGuSDLEzlWiMzvjXuW9mB6Gw==", "dev": true, "requires": { "@babel/template": "^7.3.3", @@ -40716,111 +35593,6 @@ "@types/babel__traverse": "^7.0.6" } }, - "babel-plugin-macros": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz", - "integrity": "sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==", - "dev": true, - "requires": { - "@babel/runtime": "^7.7.2", - "cosmiconfig": "^6.0.0", - "resolve": "^1.12.0" - } - }, - "babel-plugin-minify-builtins": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-builtins/-/babel-plugin-minify-builtins-0.5.0.tgz", - "integrity": "sha512-wpqbN7Ov5hsNwGdzuzvFcjgRlzbIeVv1gMIlICbPj0xkexnfoIDe7q+AZHMkQmAE/F9R5jkrB6TLfTegImlXag==", - "dev": true - }, - "babel-plugin-minify-constant-folding": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-constant-folding/-/babel-plugin-minify-constant-folding-0.5.0.tgz", - "integrity": "sha512-Vj97CTn/lE9hR1D+jKUeHfNy+m1baNiJ1wJvoGyOBUx7F7kJqDZxr9nCHjO/Ad+irbR3HzR6jABpSSA29QsrXQ==", - "dev": true, - "requires": { - "babel-helper-evaluate-path": "^0.5.0" - } - }, - "babel-plugin-minify-dead-code-elimination": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-dead-code-elimination/-/babel-plugin-minify-dead-code-elimination-0.5.1.tgz", - "integrity": "sha512-x8OJOZIrRmQBcSqxBcLbMIK8uPmTvNWPXH2bh5MDCW1latEqYiRMuUkPImKcfpo59pTUB2FT7HfcgtG8ZlR5Qg==", - "dev": true, - "requires": { - "babel-helper-evaluate-path": "^0.5.0", - "babel-helper-mark-eval-scopes": "^0.4.3", - "babel-helper-remove-or-void": "^0.4.3", - "lodash": "^4.17.11" - } - }, - "babel-plugin-minify-flip-comparisons": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-flip-comparisons/-/babel-plugin-minify-flip-comparisons-0.4.3.tgz", - "integrity": "sha1-AMqHDLjxO0XAOLPB68DyJyk8llo=", - "dev": true, - "requires": { - "babel-helper-is-void-0": "^0.4.3" - } - }, - "babel-plugin-minify-guarded-expressions": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-guarded-expressions/-/babel-plugin-minify-guarded-expressions-0.4.4.tgz", - "integrity": "sha512-RMv0tM72YuPPfLT9QLr3ix9nwUIq+sHT6z8Iu3sLbqldzC1Dls8DPCywzUIzkTx9Zh1hWX4q/m9BPoPed9GOfA==", - "dev": true, - "requires": { - "babel-helper-evaluate-path": "^0.5.0", - "babel-helper-flip-expressions": "^0.4.3" - } - }, - "babel-plugin-minify-infinity": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-infinity/-/babel-plugin-minify-infinity-0.4.3.tgz", - "integrity": "sha1-37h2obCKBldjhO8/kuZTumB7Oco=", - "dev": true - }, - "babel-plugin-minify-mangle-names": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-mangle-names/-/babel-plugin-minify-mangle-names-0.5.0.tgz", - "integrity": "sha512-3jdNv6hCAw6fsX1p2wBGPfWuK69sfOjfd3zjUXkbq8McbohWy23tpXfy5RnToYWggvqzuMOwlId1PhyHOfgnGw==", - "dev": true, - "requires": { - "babel-helper-mark-eval-scopes": "^0.4.3" - } - }, - "babel-plugin-minify-numeric-literals": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-numeric-literals/-/babel-plugin-minify-numeric-literals-0.4.3.tgz", - "integrity": "sha1-jk/VYcefeAEob/YOjF/Z3u6TwLw=", - "dev": true - }, - "babel-plugin-minify-replace": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-replace/-/babel-plugin-minify-replace-0.5.0.tgz", - "integrity": "sha512-aXZiaqWDNUbyNNNpWs/8NyST+oU7QTpK7J9zFEFSA0eOmtUNMU3fczlTTTlnCxHmq/jYNFEmkkSG3DDBtW3Y4Q==", - "dev": true - }, - "babel-plugin-minify-simplify": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-simplify/-/babel-plugin-minify-simplify-0.5.1.tgz", - "integrity": "sha512-OSYDSnoCxP2cYDMk9gxNAed6uJDiDz65zgL6h8d3tm8qXIagWGMLWhqysT6DY3Vs7Fgq7YUDcjOomhVUb+xX6A==", - "dev": true, - "requires": { - "babel-helper-evaluate-path": "^0.5.0", - "babel-helper-flip-expressions": "^0.4.3", - "babel-helper-is-nodes-equiv": "^0.0.1", - "babel-helper-to-multiple-sequence-expressions": "^0.5.0" - } - }, - "babel-plugin-minify-type-constructors": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/babel-plugin-minify-type-constructors/-/babel-plugin-minify-type-constructors-0.4.3.tgz", - "integrity": "sha1-G8bxW4f3qxCF1CszC3F2V6IVZQA=", - "dev": true, - "requires": { - "babel-helper-is-void-0": "^0.4.3" - } - }, "babel-plugin-module-resolver": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/babel-plugin-module-resolver/-/babel-plugin-module-resolver-4.1.0.tgz", @@ -40868,89 +35640,17 @@ "@babel/helper-define-polyfill-provider": "^0.2.2" } }, - "babel-plugin-syntax-jsx": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", - "integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=", - "dev": true - }, "babel-plugin-syntax-trailing-function-commas": { "version": "7.0.0-beta.0", "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-7.0.0-beta.0.tgz", "integrity": "sha512-Xj9XuRuz3nTSbaTXWv3itLOcxyF4oPD8douBBmj7U9BBC6nEBYfyOJYQMf/8PJAFotC62UY5dFfIGEPr7WswzQ==" }, - "babel-plugin-transform-inline-consecutive-adds": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-inline-consecutive-adds/-/babel-plugin-transform-inline-consecutive-adds-0.4.3.tgz", - "integrity": "sha1-Mj1Ho+pjqDp6w8gRro5pQfrysNE=", - "dev": true - }, - "babel-plugin-transform-member-expression-literals": { - "version": "6.9.4", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-member-expression-literals/-/babel-plugin-transform-member-expression-literals-6.9.4.tgz", - "integrity": "sha1-NwOcmgwzE6OUlfqsL/OmtbnQOL8=", - "dev": true - }, - "babel-plugin-transform-merge-sibling-variables": { - "version": "6.9.4", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-merge-sibling-variables/-/babel-plugin-transform-merge-sibling-variables-6.9.4.tgz", - "integrity": "sha1-hbQi/DN3tEnJ0c3kQIcgNTJAHa4=", - "dev": true - }, - "babel-plugin-transform-minify-booleans": { - "version": "6.9.4", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-minify-booleans/-/babel-plugin-transform-minify-booleans-6.9.4.tgz", - "integrity": "sha1-rLs+VqNVXdI5KOS1gtKFFi3SsZg=", - "dev": true - }, - "babel-plugin-transform-property-literals": { - "version": "6.9.4", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-property-literals/-/babel-plugin-transform-property-literals-6.9.4.tgz", - "integrity": "sha1-mMHSHiVXNlc/k+zlRFn2ziSYXTk=", - "dev": true, - "requires": { - "esutils": "^2.0.2" - } - }, - "babel-plugin-transform-regexp-constructors": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-regexp-constructors/-/babel-plugin-transform-regexp-constructors-0.4.3.tgz", - "integrity": "sha1-WLd3W2OvzzMyj66aX4j71PsLSWU=", - "dev": true - }, "babel-plugin-transform-remove-console": { "version": "6.9.4", "resolved": "https://registry.npmjs.org/babel-plugin-transform-remove-console/-/babel-plugin-transform-remove-console-6.9.4.tgz", "integrity": "sha1-uYA2DAZzhOJLNXpYjYB9PINSd4A=", "dev": true }, - "babel-plugin-transform-remove-debugger": { - "version": "6.9.4", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-remove-debugger/-/babel-plugin-transform-remove-debugger-6.9.4.tgz", - "integrity": "sha1-QrcnYxyXl44estGZp67IShgznvI=", - "dev": true - }, - "babel-plugin-transform-remove-undefined": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-remove-undefined/-/babel-plugin-transform-remove-undefined-0.5.0.tgz", - "integrity": "sha512-+M7fJYFaEE/M9CXa0/IRkDbiV3wRELzA1kKQFCJ4ifhrzLKn/9VCCgj9OFmYWwBd8IB48YdgPkHYtbYq+4vtHQ==", - "dev": true, - "requires": { - "babel-helper-evaluate-path": "^0.5.0" - } - }, - "babel-plugin-transform-simplify-comparison-operators": { - "version": "6.9.4", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-simplify-comparison-operators/-/babel-plugin-transform-simplify-comparison-operators-6.9.4.tgz", - "integrity": "sha1-9ir+CWyrDh9ootdT/fKDiIRxzrk=", - "dev": true - }, - "babel-plugin-transform-undefined-to-void": { - "version": "6.9.4", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-undefined-to-void/-/babel-plugin-transform-undefined-to-void-6.9.4.tgz", - "integrity": "sha1-viQcqBQEAwZ4t0hxcyK4nQyP4oA=", - "dev": true - }, "babel-preset-current-node-syntax": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", @@ -41006,46 +35706,15 @@ } }, "babel-preset-jest": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz", - "integrity": "sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ==", + "version": "27.0.6", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-27.0.6.tgz", + "integrity": "sha512-WObA0/Biw2LrVVwZkF/2GqbOdzhKD6Fkdwhoy9ASIrOWr/zodcSpQh72JOkEn6NWyjmnPDjNSqaGN4KnpKzhXw==", "dev": true, "requires": { - "babel-plugin-jest-hoist": "^26.6.2", + "babel-plugin-jest-hoist": "^27.0.6", "babel-preset-current-node-syntax": "^1.0.0" } }, - "babel-preset-minify": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/babel-preset-minify/-/babel-preset-minify-0.5.1.tgz", - "integrity": "sha512-1IajDumYOAPYImkHbrKeiN5AKKP9iOmRoO2IPbIuVp0j2iuCcj0n7P260z38siKMZZ+85d3mJZdtW8IgOv+Tzg==", - "dev": true, - "requires": { - "babel-plugin-minify-builtins": "^0.5.0", - "babel-plugin-minify-constant-folding": "^0.5.0", - "babel-plugin-minify-dead-code-elimination": "^0.5.1", - "babel-plugin-minify-flip-comparisons": "^0.4.3", - "babel-plugin-minify-guarded-expressions": "^0.4.4", - "babel-plugin-minify-infinity": "^0.4.3", - "babel-plugin-minify-mangle-names": "^0.5.0", - "babel-plugin-minify-numeric-literals": "^0.4.3", - "babel-plugin-minify-replace": "^0.5.0", - "babel-plugin-minify-simplify": "^0.5.1", - "babel-plugin-minify-type-constructors": "^0.4.3", - "babel-plugin-transform-inline-consecutive-adds": "^0.4.3", - "babel-plugin-transform-member-expression-literals": "^6.9.4", - "babel-plugin-transform-merge-sibling-variables": "^6.9.4", - "babel-plugin-transform-minify-booleans": "^6.9.4", - "babel-plugin-transform-property-literals": "^6.9.4", - "babel-plugin-transform-regexp-constructors": "^0.4.3", - "babel-plugin-transform-remove-console": "^6.9.4", - "babel-plugin-transform-remove-debugger": "^6.9.4", - "babel-plugin-transform-remove-undefined": "^0.5.0", - "babel-plugin-transform-simplify-comparison-operators": "^6.9.4", - "babel-plugin-transform-undefined-to-void": "^6.9.4", - "lodash": "^4.17.11" - } - }, "balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -41101,21 +35770,18 @@ } } }, - "base-64": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/base-64/-/base-64-0.1.0.tgz", - "integrity": "sha1-eAqZyE59YAJgNhURxId2E78k9rs=" - }, "base64-js": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==" }, - "batch-processor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/batch-processor/-/batch-processor-1.0.0.tgz", - "integrity": "sha1-dclcMrdI4IUNEMKxaPa9vpiRrOg=", - "dev": true + "bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "requires": { + "tweetnacl": "^0.14.3" + } }, "big-integer": { "version": "1.6.48", @@ -41132,7 +35798,8 @@ "version": "1.13.1", "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true + "dev": true, + "optional": true }, "bindings": { "version": "1.5.0", @@ -41140,10 +35807,38 @@ "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", "dev": true, "optional": true, + "peer": true, "requires": { "file-uri-to-path": "1.0.0" } }, + "binjumper": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/binjumper/-/binjumper-0.1.4.tgz", + "integrity": "sha512-Gdxhj+U295tIM6cO4bJO1jsvSjBVHNpj2o/OwW7pqDEtaqF6KdOxjtbo93jMMKAkP7+u09+bV8DhSqjIv4qR3w==" + }, + "bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "requires": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, "bluebird": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", @@ -41155,114 +35850,27 @@ "resolved": "https://registry.npmjs.org/blueimp-md5/-/blueimp-md5-2.18.0.tgz", "integrity": "sha512-vE52okJvzsVWhcgUHOv+69OG3Mdg151xyn41aVQN/5W5S+S43qZhxECtYLAEHMSFWX6Mv5IZrzj3T5+JqXfj5Q==" }, - "bmp-js": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/bmp-js/-/bmp-js-0.1.0.tgz", - "integrity": "sha1-4Fpj95amwf8l9Hcex62twUjAcjM=" - }, "bn.js": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz", "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==", - "dev": true - }, - "body-parser": { - "version": "1.19.0", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", - "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", "dev": true, - "requires": { - "bytes": "3.1.0", - "content-type": "~1.0.4", - "debug": "2.6.9", - "depd": "~1.1.2", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "on-finished": "~2.3.0", - "qs": "6.7.0", - "raw-body": "2.4.0", - "type-is": "~1.6.17" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - }, - "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", - "dev": true - } - } + "peer": true }, "boolbase": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" }, - "boxen": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/boxen/-/boxen-4.2.0.tgz", - "integrity": "sha512-eB4uT9RGzg2odpER62bBwSLvUeGC+WbRjjyyFhGsKnc8wp/m0+hQsMUvUe3H2V0D5vw0nBdO1hCJoZo5mKeuIQ==", - "dev": true, - "requires": { - "ansi-align": "^3.0.0", - "camelcase": "^5.3.1", - "chalk": "^3.0.0", - "cli-boxes": "^2.2.0", - "string-width": "^4.1.0", - "term-size": "^2.1.0", - "type-fest": "^0.8.1", - "widest-line": "^3.1.0" - }, - "dependencies": { - "ansi-styles": { - "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" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "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 - }, - "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" - } - } - } + "boolean": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/boolean/-/boolean-3.1.2.tgz", + "integrity": "sha512-YN6UmV0FfLlBVvRvNPx3pz5W/mUoYB24J4WSXOKP/OOJpi+Oq6WYqPaNTHzjI0QzwWtnvEd5CGYyQPgp1jFxnw==" + }, + "bottleneck": { + "version": "2.19.5", + "resolved": "https://registry.npmjs.org/bottleneck/-/bottleneck-2.19.5.tgz", + "integrity": "sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==" }, "bplist-creator": { "version": "0.0.8", @@ -41310,7 +35918,8 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "dev": true + "dev": true, + "peer": true }, "browser-process-hrtime": { "version": "1.0.0", @@ -41330,6 +35939,7 @@ "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", "dev": true, + "peer": true, "requires": { "buffer-xor": "^1.0.3", "cipher-base": "^1.0.0", @@ -41344,6 +35954,7 @@ "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", "dev": true, + "peer": true, "requires": { "browserify-aes": "^1.0.4", "browserify-des": "^1.0.0", @@ -41355,6 +35966,7 @@ "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", "dev": true, + "peer": true, "requires": { "cipher-base": "^1.0.1", "des.js": "^1.0.0", @@ -41367,6 +35979,7 @@ "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", "dev": true, + "peer": true, "requires": { "bn.js": "^5.0.0", "randombytes": "^2.0.1" @@ -41377,6 +35990,7 @@ "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", "dev": true, + "peer": true, "requires": { "bn.js": "^5.1.1", "browserify-rsa": "^4.0.1", @@ -41394,6 +36008,7 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "dev": true, + "peer": true, "requires": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -41404,7 +36019,8 @@ "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true + "dev": true, + "peer": true } } }, @@ -41413,6 +36029,7 @@ "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", "dev": true, + "peer": true, "requires": { "pako": "~1.0.5" } @@ -41469,11 +36086,6 @@ "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" }, - "buffer-equal": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-0.0.1.tgz", - "integrity": "sha1-kbx0sR6kBbyRa8aqkI+q+ltKrEs=" - }, "buffer-fill": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", @@ -41488,13 +36100,15 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", - "dev": true + "dev": true, + "peer": true }, "builtin-status-codes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", - "dev": true + "dev": true, + "peer": true }, "bunyan": { "version": "1.8.15", @@ -41518,64 +36132,6 @@ "exception-formatter": "^1.0.4" } }, - "bytes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", - "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", - "dev": true - }, - "cacache": { - "version": "13.0.1", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-13.0.1.tgz", - "integrity": "sha512-5ZvAxd05HDDU+y9BVvcqYu2LLXmPnQ0hW62h32g4xBTgL/MppR4/04NHfj/ycM2y6lmTnbw6HVi+1eN0Psba6w==", - "dev": true, - "requires": { - "chownr": "^1.1.2", - "figgy-pudding": "^3.5.1", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.2", - "infer-owner": "^1.0.4", - "lru-cache": "^5.1.1", - "minipass": "^3.0.0", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", - "p-map": "^3.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^2.7.1", - "ssri": "^7.0.0", - "unique-filename": "^1.1.1" - }, - "dependencies": { - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - } - } - }, "cache-base": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", @@ -41592,6 +36148,25 @@ "unset-value": "^1.0.0" } }, + "cacheable-lookup": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz", + "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==" + }, + "cacheable-request": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.2.tgz", + "integrity": "sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==", + "requires": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^4.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^6.0.1", + "responselike": "^2.0.0" + } + }, "call-bind": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", @@ -41601,12 +36176,6 @@ "get-intrinsic": "^1.0.2" } }, - "call-me-maybe": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", - "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=", - "dev": true - }, "caller-callsite": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", @@ -41636,33 +36205,11 @@ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "dev": true }, - "camel-case": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz", - "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==", - "dev": true, - "requires": { - "pascal-case": "^3.1.2", - "tslib": "^2.0.3" - } - }, "camelcase": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" }, - "camelize": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/camelize/-/camelize-1.0.0.tgz", - "integrity": "sha1-FkpUg+Yw+kMh5a8HAg5TGDGyYJs=", - "dev": true - }, - "can-use-dom": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/can-use-dom/-/can-use-dom-0.1.0.tgz", - "integrity": "sha1-IsxKNKCrxDlQ9CxkEQJKP2NmtFo=", - "dev": true - }, "caniuse-lite": { "version": "1.0.30001241", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001241.tgz", @@ -41676,12 +36223,6 @@ "rsvp": "^4.8.4" } }, - "case-sensitive-paths-webpack-plugin": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz", - "integrity": "sha512-roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw==", - "dev": true - }, "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", @@ -41703,29 +36244,16 @@ "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", "dev": true }, - "character-entities": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz", - "integrity": "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==", - "dev": true - }, - "character-entities-legacy": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.4.tgz", - "integrity": "sha512-3Xnr+7ZFS1uxeiUDvV02wQ+QDbc55o97tIV5zHScSPJpcLm/r0DFPcoY3tYRp+VZukxuMeKgXYmsXQHO05zQeA==", - "dev": true - }, - "character-reference-invalid": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz", - "integrity": "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==", - "dev": true - }, "chardet": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" }, + "child-process": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/child-process/-/child-process-1.0.2.tgz", + "integrity": "sha1-mJdNx+0e5MYin44wX6cxOmiFp/I=" + }, "child-process-promise": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/child-process-promise/-/child-process-promise-2.2.1.tgz", @@ -41826,13 +36354,15 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", - "dev": true + "dev": true, + "peer": true }, "chrome-trace-event": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", - "dev": true + "dev": true, + "peer": true }, "ci-info": { "version": "2.0.0", @@ -41844,6 +36374,7 @@ "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", "dev": true, + "peer": true, "requires": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" @@ -41866,45 +36397,15 @@ "static-extend": "^0.1.1" } }, - "classnames": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.3.1.tgz", - "integrity": "sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA==", - "dev": true - }, - "cldr-core": { - "version": "38.1.0", - "resolved": "https://registry.npmjs.org/cldr-core/-/cldr-core-38.1.0.tgz", - "integrity": "sha512-Da9xKjDp4qGGIX0VDsBqTan09iR5nuYD2a/KkfEaUyqKhu6wFVNRiCpPDXeRbpVwPBY6PgemV8WiHatMhcpy4A==" - }, - "clean-css": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.3.tgz", - "integrity": "sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA==", - "dev": true, - "requires": { - "source-map": "~0.6.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, "clean-stack": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "dev": true + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" }, "cli-boxes": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", - "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", - "dev": true + "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==" }, "cli-cursor": { "version": "2.1.0", @@ -41914,65 +36415,25 @@ "restore-cursor": "^2.0.0" } }, + "cli-spinner": { + "version": "0.2.10", + "resolved": "https://registry.npmjs.org/cli-spinner/-/cli-spinner-0.2.10.tgz", + "integrity": "sha512-U0sSQ+JJvSLi1pAYuJykwiA8Dsr15uHEy85iCJ6A+0DjVxivr3d+N2Wjvodeg89uP5K6TswFkKBfAD7B3YSn/Q==" + }, "cli-spinners": { "version": "2.6.0", "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.0.tgz", "integrity": "sha512-t+4/y50K/+4xcCRosKkA7W4gTr1MySvLV0q+PxmG7FJ5g+66ChKurYjxBCjHggHH3HA5Hh9cy+lcUGWDqVH+4Q==" }, - "cli-table3": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.5.1.tgz", - "integrity": "sha512-7Qg2Jrep1S/+Q3EceiZtQcDPWxhAvBw+ERf1162v4sikJrvojMHFqXt8QIVha8UlH9rgU0BeWPytZ9/TzYqlUw==", - "dev": true, - "requires": { - "colors": "^1.1.2", - "object-assign": "^4.1.0", - "string-width": "^2.1.1" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - } - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, "cli-width": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==" }, - "clipboard": { - "version": "2.0.8", - "resolved": "https://registry.npmjs.org/clipboard/-/clipboard-2.0.8.tgz", - "integrity": "sha512-Y6WO0unAIQp5bLmk1zdThRhgJt/x3ks6f30s3oE3H1mgIEU33XyQjEf8gsf6DxC7NPX8Y1SsNWjUjL/ywLnnbQ==", - "dev": true, - "optional": true, - "requires": { - "good-listener": "^1.2.2", - "select": "^1.1.2", - "tiny-emitter": "^2.0.0" - } + "clipanion": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/clipanion/-/clipanion-2.6.2.tgz", + "integrity": "sha512-0tOHJNMF9+4R3qcbBL+4IxLErpaYSYvzs10aXuECDbZdJOuJHdagJMAqvLdeaUQTI/o2uSCDRpet6ywDiKOAYw==" }, "cliui": { "version": "7.0.4", @@ -41999,6 +36460,14 @@ "shallow-clone": "^3.0.0" } }, + "clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "requires": { + "mimic-response": "^1.0.0" + } + }, "cls-hooked": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/cls-hooked/-/cls-hooked-4.2.2.tgz", @@ -42109,12 +36578,6 @@ "delayed-stream": "~1.0.0" } }, - "comma-separated-tokens": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz", - "integrity": "sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw==", - "dev": true - }, "command-exists": { "version": "1.2.9", "resolved": "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz", @@ -42132,30 +36595,28 @@ "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=" }, "commonmark": { - "version": "git+ssh://git@github.com/mattermost/commonmark.js.git#f6ab98dede6ce4b4e7adea140ac77249bfb2d6ce", - "integrity": "sha512-hxZzvq91H9iLOxQ87EP6Xxqe7IjBEPRwZL3gOAlFHtnj+Xvju/AGMLuzXEWVLp01cNwvXZsSj9etT4DWl6sxyQ==", - "from": "commonmark@github:mattermost/commonmark.js#f6ab98dede6ce4b4e7adea140ac77249bfb2d6ce", + "version": "0.30.0", + "resolved": "https://registry.npmjs.org/commonmark/-/commonmark-0.30.0.tgz", + "integrity": "sha512-j1yoUo4gxPND1JWV9xj5ELih0yMv1iCWDG6eEQIPLSWLxzCXiFoyS7kvB+WwU+tZMf4snwJMMtaubV0laFpiBA==", "requires": { - "entities": "~ 1.1.1", - "mdurl": "~ 1.0.1", - "minimist": "~ 1.2.0", - "string.prototype.repeat": "^0.2.0", - "xregexp": "4.1.1" + "entities": "~2.0", + "mdurl": "~1.0.1", + "minimist": ">=1.2.2", + "string.prototype.repeat": "^0.2.0" }, "dependencies": { "entities": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", - "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.3.tgz", + "integrity": "sha512-MyoZ0jgnLvB2X3Lg5HqpFmn1kybDiIfEQmKzTb5apr51Rb+T3KdmMiqa70T+bhGnyv7bQ6WMj2QMHpGMmlrUYQ==" } } }, "commonmark-react-renderer": { - "version": "git+ssh://git@github.com/mattermost/commonmark-react-renderer.git#3a2ac19cab725ad28b170fdc1d397dddedcf87eb", - "integrity": "sha512-YmkUcCDg6A24HaN9AqT2FlSZbnhn8BmIwYkuIBj/OPnyQKZN7vbIf/I9jkiZeXnwuogpewPWpi8aW3PrEkSM1w==", - "from": "commonmark-react-renderer@github:mattermost/commonmark-react-renderer#3a2ac19cab725ad28b170fdc1d397dddedcf87eb", + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/commonmark-react-renderer/-/commonmark-react-renderer-4.3.5.tgz", + "integrity": "sha512-UwUgplz8kFSMCe9+Dg/BcV75lc7R/V6mvMYJq2p29i5aaIBd0252k9HeSGa2VtEPHfg2/trS9qC7iAxnO7r6ng==", "requires": { - "in-publish": "^2.0.0", "lodash.assign": "^4.2.0", "lodash.isplainobject": "^4.0.6", "pascalcase": "^0.1.1", @@ -42224,6 +36685,7 @@ "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", "dev": true, + "peer": true, "requires": { "buffer-from": "^1.0.0", "inherits": "^2.0.3", @@ -42231,6 +36693,34 @@ "typedarray": "^0.0.6" } }, + "configstore": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "requires": { + "dot-prop": "^5.2.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" + }, + "dependencies": { + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "requires": { + "semver": "^6.0.0" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, "connect": { "version": "3.7.0", "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz", @@ -42261,7 +36751,8 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", - "dev": true + "dev": true, + "peer": true }, "console-control-strings": { "version": "1.1.0", @@ -42272,22 +36763,8 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", - "dev": true - }, - "content-disposition": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", - "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", "dev": true, - "requires": { - "safe-buffer": "5.1.2" - } - }, - "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", - "dev": true + "peer": true }, "continuation-local-storage": { "version": "3.2.1", @@ -42307,23 +36784,12 @@ "safe-buffer": "~5.1.1" } }, - "cookie": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", - "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==", - "dev": true - }, - "cookie-signature": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", - "dev": true - }, "copy-concurrently": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", "dev": true, + "peer": true, "requires": { "aproba": "^1.1.1", "fs-write-stream-atomic": "^1.0.8", @@ -42338,6 +36804,7 @@ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", "dev": true, + "peer": true, "requires": { "glob": "^7.1.3" } @@ -42349,20 +36816,10 @@ "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" }, - "copy-to-clipboard": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/copy-to-clipboard/-/copy-to-clipboard-3.3.1.tgz", - "integrity": "sha512-i13qo6kIHTTpCm8/Wup+0b1mVWETvu2kIMzKoK8FpkLkFxlt0znUAHcMzox+T8sPlqtZXq3CulEjQHsYiGFJUw==", - "dev": true, - "requires": { - "toggle-selection": "^1.0.6" - } - }, "core-js": { "version": "3.15.2", "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.15.2.tgz", - "integrity": "sha512-tKs41J7NJVuaya8DxIOCnl8QuPHx5/ZVbFo1oKgVl1qHFBBrDctzQGtuLjPpRdNTWmKPH6oEvgN/MUID+l485Q==", - "dev": true + "integrity": "sha512-tKs41J7NJVuaya8DxIOCnl8QuPHx5/ZVbFo1oKgVl1qHFBBrDctzQGtuLjPpRdNTWmKPH6oEvgN/MUID+l485Q==" }, "core-js-compat": { "version": "3.15.2", @@ -42380,45 +36837,17 @@ } } }, - "core-js-pure": { - "version": "3.15.2", - "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.15.2.tgz", - "integrity": "sha512-D42L7RYh1J2grW8ttxoY1+17Y4wXZeKe7uyplAI3FkNQyI5OgBIAjUfFiTPfL1rs0qLpxaabITNbjKl1Sp82tA==", - "dev": true - }, "core-util-is": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, - "corejs-upgrade-webpack-plugin": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/corejs-upgrade-webpack-plugin/-/corejs-upgrade-webpack-plugin-2.2.0.tgz", - "integrity": "sha512-J0QMp9GNoiw91Kj/dkIQFZeiCXgXoja/Wlht1SPybxerBWh4NCmb0pOgCv61lrlQZETwvVVfAFAA3IqoEO9aqQ==", - "dev": true, - "requires": { - "resolve-from": "^5.0.0", - "webpack": "^4.38.0" - } - }, - "cosmiconfig": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", - "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", - "dev": true, - "requires": { - "@types/parse-json": "^4.0.0", - "import-fresh": "^3.1.0", - "parse-json": "^5.0.0", - "path-type": "^4.0.0", - "yaml": "^1.7.2" - } - }, "create-ecdh": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", "dev": true, + "peer": true, "requires": { "bn.js": "^4.1.0", "elliptic": "^6.5.3" @@ -42428,7 +36857,8 @@ "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true + "dev": true, + "peer": true } } }, @@ -42437,6 +36867,7 @@ "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", "dev": true, + "peer": true, "requires": { "cipher-base": "^1.0.1", "inherits": "^2.0.1", @@ -42450,6 +36881,7 @@ "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", "dev": true, + "peer": true, "requires": { "cipher-base": "^1.0.3", "create-hash": "^1.1.0", @@ -42482,6 +36914,7 @@ "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", "dev": true, + "peer": true, "requires": { "browserify-cipher": "^1.0.0", "browserify-sign": "^4.0.0", @@ -42497,44 +36930,9 @@ } }, "crypto-random-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz", - "integrity": "sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4=" - }, - "css-color-keywords": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/css-color-keywords/-/css-color-keywords-1.0.0.tgz", - "integrity": "sha1-/qJhbcZ2spYmhrOvjb2+GAskTgU=", - "dev": true - }, - "css-loader": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-3.6.0.tgz", - "integrity": "sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ==", - "dev": true, - "requires": { - "camelcase": "^5.3.1", - "cssesc": "^3.0.0", - "icss-utils": "^4.1.1", - "loader-utils": "^1.2.3", - "normalize-path": "^3.0.0", - "postcss": "^7.0.32", - "postcss-modules-extract-imports": "^2.0.0", - "postcss-modules-local-by-default": "^3.0.2", - "postcss-modules-scope": "^2.2.0", - "postcss-modules-values": "^3.0.0", - "postcss-value-parser": "^4.1.0", - "schema-utils": "^2.7.0", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - } - } + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==" }, "css-select": { "version": "2.1.0", @@ -42547,25 +36945,6 @@ "nth-check": "^1.0.2" } }, - "css-to-react-native": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-2.3.2.tgz", - "integrity": "sha512-VOFaeZA053BqvvvqIA8c9n0+9vFppVBAHCp6JgFTtTMU3Mzi+XnelJ9XC9ul3BqFzZyQ5N+H0SnwsWT2Ebchxw==", - "dev": true, - "requires": { - "camelize": "^1.0.0", - "css-color-keywords": "^1.0.0", - "postcss-value-parser": "^3.3.0" - }, - "dependencies": { - "postcss-value-parser": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", - "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", - "dev": true - } - } - }, "css-tree": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz", @@ -42587,12 +36966,6 @@ "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz", "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==" }, - "cssesc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", - "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", - "dev": true - }, "cssom": { "version": "0.4.4", "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", @@ -42616,17 +36989,12 @@ } } }, - "csstype": { - "version": "2.6.17", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.17.tgz", - "integrity": "sha512-u1wmTI1jJGzCJzWndZo8mk4wnPTZd1eOIYTYvuEyOQGfmDl3TrabCCfKnOC86FZwW/9djqTl933UF/cS425i9A==", - "dev": true - }, "cyclist": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", - "dev": true + "dev": true, + "peer": true }, "data-urls": { "version": "2.0.0", @@ -42669,6 +37037,21 @@ "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" }, + "decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "requires": { + "mimic-response": "^3.1.0" + }, + "dependencies": { + "mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==" + } + } + }, "dedent": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", @@ -42706,6 +37089,11 @@ "which-typed-array": "^1.1.2" } }, + "deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==" + }, "deep-freeze": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/deep-freeze/-/deep-freeze-0.0.1.tgz", @@ -42718,12 +37106,6 @@ "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", "dev": true }, - "deep-object-diff": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/deep-object-diff/-/deep-object-diff-1.1.0.tgz", - "integrity": "sha512-b+QLs5vHgS+IoSNcUE4n9HP2NwcHj7aqnJWsjPtuG75Rh5TOaGt0OjAYInh77d5T16V5cRDC+Pw/6ZZZiETBGw==", - "dev": true - }, "deepmerge": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz", @@ -42737,6 +37119,11 @@ "clone": "^1.0.2" } }, + "defer-to-connect": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", + "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==" + }, "define-properties": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", @@ -42753,19 +37140,42 @@ "is-descriptor": "^0.1.0" } }, + "del": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-6.0.0.tgz", + "integrity": "sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ==", + "requires": { + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + }, + "dependencies": { + "p-map": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" + } + } + }, "delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", "dev": true }, - "delegate": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/delegate/-/delegate-3.2.0.tgz", - "integrity": "sha512-IofjkYBZaZivn0V8nnsMJGBr4jVLxHDheKSW88PyxS5QC4Vo9ZbZVvhzlSxY87fVq3STR6r+4cGepyHkcWOQSw==", - "dev": true, - "optional": true - }, "delegates": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", @@ -42786,6 +37196,7 @@ "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", "dev": true, + "peer": true, "requires": { "inherits": "^2.0.1", "minimalistic-assert": "^1.0.0" @@ -42814,65 +37225,10 @@ "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", "dev": true }, - "detect-node-es": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", - "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==", - "dev": true - }, - "detect-port": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/detect-port/-/detect-port-1.3.0.tgz", - "integrity": "sha512-E+B1gzkl2gqxt1IhUzwjrxBKRqx1UzC3WLONHinn8S3T6lwV/agVCyitiFOsGJ/eYuEUBvD71MZHy3Pv1G9doQ==", - "dev": true, - "requires": { - "address": "^1.0.1", - "debug": "^2.6.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } - }, - "detect-port-alt": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/detect-port-alt/-/detect-port-alt-1.1.6.tgz", - "integrity": "sha512-5tQykt+LqfJFBEYaDITx7S7cR7mJ/zQmLXZ2qt5w04ainYZw6tBf9dBunMjVeVOdYVRUzUOE4HkY5J7+uttb5Q==", - "dev": true, - "requires": { - "address": "^1.0.1", - "debug": "^2.6.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true - } - } + "detect-node": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz", + "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==" }, "detox": { "version": "18.18.1", @@ -42962,6 +37318,7 @@ "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", "dev": true, + "peer": true, "requires": { "bn.js": "^4.1.0", "miller-rabin": "^4.0.0", @@ -42972,7 +37329,8 @@ "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true + "dev": true, + "peer": true } } }, @@ -42980,11 +37338,41 @@ "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" } }, + "docker-modem": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/docker-modem/-/docker-modem-2.1.3.tgz", + "integrity": "sha512-cwaRptBmYZwu/FyhGcqBm2MzXA77W2/E6eVkpOZVDk6PkI9Bjj84xPrXiHMA+OWjzNy+DFjgKh8Q+1hMR7/OHg==", + "requires": { + "debug": "^4.1.1", + "readable-stream": "^3.5.0", + "split-ca": "^1.0.1", + "ssh2": "^0.8.7" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + } + } + }, + "dockerfile-ast": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/dockerfile-ast/-/dockerfile-ast-0.2.1.tgz", + "integrity": "sha512-ut04CVM1G6zIITTcYPDIXhPZk9mCa21m4dfW8FcDDGxwgTQhYyHDu6U7M8klZ7QsjqVcJhryKi+TGOX6bjgKdQ==", + "requires": { + "vscode-languageserver-types": "^3.16.0" + } + }, "doctrine": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", @@ -42994,33 +37382,6 @@ "esutils": "^2.0.2" } }, - "dom-converter": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", - "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", - "dev": true, - "requires": { - "utila": "~0.4" - } - }, - "dom-helpers": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz", - "integrity": "sha512-nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==", - "dev": true, - "requires": { - "@babel/runtime": "^7.8.7", - "csstype": "^3.0.2" - }, - "dependencies": { - "csstype": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.8.tgz", - "integrity": "sha512-jXKhWqXPmlUeoQnF/EhTtTl4C9SnrxSH/jZUih3jmO6lBKr99rP3/+FmrMj4EFpOXzMtXHAZkd3x0E6h6Fgflw==", - "dev": true - } - } - }, "dom-serializer": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", @@ -43037,16 +37398,12 @@ } } }, - "dom-walk": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", - "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==" - }, "domain-browser": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", - "dev": true + "dev": true, + "peer": true }, "domelementtype": { "version": "1.3.1", @@ -43070,23 +37427,6 @@ } } }, - "domhandler": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.2.0.tgz", - "integrity": "sha512-zk7sgt970kzPks2Bf+dwT/PLzghLnsivb9CcxkvR8Mzr66Olr0Ofd8neSbglHJHaHa2MadfoSdNlKYAaafmWfA==", - "dev": true, - "requires": { - "domelementtype": "^2.2.0" - }, - "dependencies": { - "domelementtype": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", - "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", - "dev": true - } - } - }, "domutils": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", @@ -43096,44 +37436,39 @@ "domelementtype": "1" } }, - "dot-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz", - "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==", - "dev": true, + "dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", "requires": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" + "is-obj": "^2.0.0" + }, + "dependencies": { + "is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==" + } } }, - "dotenv": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-6.2.0.tgz", - "integrity": "sha512-HygQCKUBSFl8wKQZBSemMywRWcEDNidvNbjGVyZu3nbZ8qq9ubiPoGLMdRDpfSrpkkm9BXYFkpKxxFX38o/76w==", - "dev": true - }, - "dotenv-defaults": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/dotenv-defaults/-/dotenv-defaults-1.1.1.tgz", - "integrity": "sha512-6fPRo9o/3MxKvmRZBD3oNFdxODdhJtIy1zcJeUSCs6HCy4tarUpd+G67UTU9tF6OWXeSPqsm4fPAB+2eY9Rt9Q==", - "dev": true, + "dotnet-deps-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/dotnet-deps-parser/-/dotnet-deps-parser-5.0.0.tgz", + "integrity": "sha512-1l9K4UnQQHSfKgeHeLrxnB53AidCZqPyf9dkRL4/fZl8//NPiiDD43zHtgylw8DHlO7gvM8+O5a0UPHesNYZKw==", "requires": { - "dotenv": "^6.2.0" - } - }, - "dotenv-expand": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-5.1.0.tgz", - "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==", - "dev": true - }, - "dotenv-webpack": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/dotenv-webpack/-/dotenv-webpack-1.8.0.tgz", - "integrity": "sha512-o8pq6NLBehtrqA8Jv8jFQNtG9nhRtVqmoD4yWbgUyoU3+9WBlPe+c2EAiaJok9RB28QvrWvdWLZGeTT5aATDMg==", - "dev": true, - "requires": { - "dotenv-defaults": "^1.0.2" + "lodash.isempty": "^4.4.0", + "lodash.set": "^4.3.2", + "lodash.uniq": "^4.5.0", + "source-map-support": "^0.5.7", + "tslib": "^1.10.0", + "xml2js": "0.4.23" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } } }, "dtrace-provider": { @@ -43146,17 +37481,15 @@ "nan": "^2.14.0" } }, - "duplexer": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", - "dev": true + "duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" }, "duplexify": { "version": "3.7.1", "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", - "dev": true, "requires": { "end-of-stream": "^1.0.0", "inherits": "^2.0.1", @@ -43169,24 +37502,17 @@ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, - "ejs": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.7.4.tgz", - "integrity": "sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==", - "dev": true - }, "electron-to-chromium": { "version": "1.3.766", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.766.tgz", "integrity": "sha512-u2quJ862q9reRKh/je3GXis3w38+RoXH1J9N3XjtsS6NzmUAosNsyZgUVFZPN/ZlJ3v6T0rTyZR3q/J5c6Sy5w==" }, - "element-resize-detector": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/element-resize-detector/-/element-resize-detector-1.2.3.tgz", - "integrity": "sha512-+dhNzUgLpq9ol5tyhoG7YLoXL3ssjfFW+0gpszXPwRU6NjGr1fVHMEAF8fVzIiRJq57Nre0RFeIjJwI8Nh2NmQ==", - "dev": true, + "elfy": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/elfy/-/elfy-1.0.0.tgz", + "integrity": "sha512-4Kp3AA94jC085IJox+qnvrZ3PudqTi4gQNvIoTZfJJ9IqkRuCoqP60vCVYlIg00c5aYusi5Wjh2bf0cHYt+6gQ==", "requires": { - "batch-processor": "1.0.0" + "endian-reader": "^0.3.0" } }, "elliptic": { @@ -43194,6 +37520,7 @@ "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz", "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==", "dev": true, + "peer": true, "requires": { "bn.js": "^4.11.9", "brorand": "^1.1.0", @@ -43208,10 +37535,16 @@ "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true + "dev": true, + "peer": true } } }, + "email-validator": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/email-validator/-/email-validator-2.0.4.tgz", + "integrity": "sha512-gYCwo7kh5S3IDyZPLZf6hSS0MnZT8QmJFqYvbqlDZSbwdZlY6QZWxJ4i/6UhITOJ4XzyI647Bm2MXKCLqnJ4nQ==" + }, "eme-encryption-scheme-polyfill": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/eme-encryption-scheme-polyfill/-/eme-encryption-scheme-polyfill-2.0.3.tgz", @@ -43243,17 +37576,6 @@ "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", "dev": true }, - "emotion-theming": { - "version": "10.0.27", - "resolved": "https://registry.npmjs.org/emotion-theming/-/emotion-theming-10.0.27.tgz", - "integrity": "sha512-MlF1yu/gYh8u+sLUqA0YuA9JX0P4Hb69WlKc/9OLo+WCXuX6sy/KoIa+qJimgmr2dWqnypYKYPX37esjDBbhdw==", - "dev": true, - "requires": { - "@babel/runtime": "^7.5.5", - "@emotion/weak-memoize": "0.2.5", - "hoist-non-react-statics": "^3.3.0" - } - }, "encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", @@ -43267,6 +37589,11 @@ "once": "^1.4.0" } }, + "endian-reader": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/endian-reader/-/endian-reader-0.3.0.tgz", + "integrity": "sha1-hOykNrgK7Q0GOcRykTOLky7+UKA=" + }, "enhanced-resolve": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz", @@ -43372,12 +37699,6 @@ "unbox-primitive": "^1.0.1" } }, - "es-array-method-boxes-properly": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz", - "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", - "dev": true - }, "es-get-iterator": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.2.tgz", @@ -43403,23 +37724,21 @@ "is-symbol": "^1.0.2" } }, - "es5-shim": { - "version": "4.5.15", - "resolved": "https://registry.npmjs.org/es5-shim/-/es5-shim-4.5.15.tgz", - "integrity": "sha512-FYpuxEjMeDvU4rulKqFdukQyZSTpzhg4ScQHrAosrlVpR6GFyaw14f74yn2+4BugniIS0Frpg7TvwZocU4ZMTw==", - "dev": true - }, - "es6-shim": { - "version": "0.35.6", - "resolved": "https://registry.npmjs.org/es6-shim/-/es6-shim-0.35.6.tgz", - "integrity": "sha512-EmTr31wppcaIAgblChZiuN/l9Y7DPyw8Xtbg7fIVngn6zMW+IEBJDJngeKC3x6wr0V/vcA2wqeFnaw1bFJbDdA==", - "dev": true + "es6-error": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz", + "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==" }, "escalade": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" }, + "escape-goat": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", + "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==" + }, "escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", @@ -43498,13 +37817,14 @@ } }, "eslint": { - "version": "7.29.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.29.0.tgz", - "integrity": "sha512-82G/JToB9qIy/ArBzIWG9xvvwL3R86AlCjtGw+A29OMZDqhTybz/MByORSukGxeI+YPCR4coYyITKk8BFH9nDA==", + "version": "7.30.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.30.0.tgz", + "integrity": "sha512-VLqz80i3as3NdloY44BQSJpFw534L9Oh+6zJOUaViV4JPd+DaHwutqP7tcpkW3YiXbK6s05RZl7yl7cQn+lijg==", "dev": true, "requires": { "@babel/code-frame": "7.12.11", "@eslint/eslintrc": "^0.4.2", + "@humanwhocodes/config-array": "^0.5.0", "ajv": "^6.10.0", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", @@ -43715,10 +38035,10 @@ } }, "eslint-plugin-mattermost": { - "version": "git+ssh://git@github.com/mattermost/eslint-plugin-mattermost.git#070ce792d105482ffb2b27cfc0b7e78b3d20acee", - "integrity": "sha512-B+ZquIX9ivUep96vnyZ9XBq1ViN0Ls6i+cWX8e8JilW3LEFke8vWYLT4zoCG0Ogm83iU2E4kcOow2z5xsiiTzg==", + "version": "git+ssh://git@github.com/mattermost/eslint-plugin-mattermost.git#46ad99355644a719bf32082f472048f526605181", + "integrity": "sha512-XIsRlgdUmVaJ+9P5sy45uN/cVzi5rPP2w/w06yuEIEYAH6CuVzjiY/dBjDqFKOi/Ebnoo40ur2oCtD3+yzrgVw==", "dev": true, - "from": "eslint-plugin-mattermost@github:mattermost/eslint-plugin-mattermost#070ce792d105482ffb2b27cfc0b7e78b3d20acee" + "from": "eslint-plugin-mattermost@github:mattermost/eslint-plugin-mattermost#46ad99355644a719bf32082f472048f526605181" }, "eslint-plugin-prettier": { "version": "3.1.2", @@ -43898,37 +38218,32 @@ "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" }, + "event-loop-spinner": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/event-loop-spinner/-/event-loop-spinner-2.1.0.tgz", + "integrity": "sha512-RJ10wL8/F9AlfBgRCvYctJIXSb9XkVmSCK3GGUvPD3dJrvTjDeDT0tmhcbEC6I2NEjNM9xD38HQJ4F/f/gb4VQ==", + "requires": { + "tslib": "^2.1.0" + } + }, "event-target-shim": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==" }, - "eventemitter3": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", - "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", - "dev": true - }, "events": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true - }, - "eventsource": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.1.0.tgz", - "integrity": "sha512-VSJjT5oCNrFvCS6igjzPAt5hBzQ2qPBFIbJ03zLI9SE0mxwZpMw6BfJrbFHm1a141AavMEB8JHmBhWAd66PfCg==", "dev": true, - "requires": { - "original": "^1.0.0" - } + "peer": true }, "evp_bytestokey": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", "dev": true, + "peer": true, "requires": { "md5.js": "^1.3.4", "safe-buffer": "^5.1.1" @@ -44002,11 +38317,6 @@ } } }, - "exif-parser": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/exif-parser/-/exif-parser-0.1.12.tgz", - "integrity": "sha1-WKnS1ywCwfbwKg70qRZicrd2CSI=" - }, "exit": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", @@ -44204,94 +38514,256 @@ } }, "expo-constants": { - "version": "10.1.3", - "resolved": "https://registry.npmjs.org/expo-constants/-/expo-constants-10.1.3.tgz", - "integrity": "sha512-Eq/xeshnhSoe4ok89d5lrHvI9jq3bMe1FhJUbiHVGcGmW8mGCotwbQBIfDkkMrAKnSOwQq/Qfyg0XBxnG2XFjw==", + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/expo-constants/-/expo-constants-11.0.1.tgz", + "integrity": "sha512-yolJSfsNAVmuNDc+NNxBzUKbZRXPM35edoMpv8xdmRBMpOWkRmTdpBIFAYAKCtrGruw2tkIQhnLmCD2aDycvTg==", "requires": { - "@expo/config": "^3.3.35", + "@expo/config": "^4.0.0", + "expo-modules-core": "~0.2.0", "uuid": "^3.3.2" } }, "expo-file-system": { - "version": "11.0.2", - "resolved": "https://registry.npmjs.org/expo-file-system/-/expo-file-system-11.0.2.tgz", - "integrity": "sha512-nodNvUVa+US4N4xnj5BFw8W9ZF/qCHJVC2t45cHWrBiwkVVxz45wjE7uSHUmkMWyWT7a/7AJuL3XJfYp7h90IQ==", + "version": "11.1.3", + "resolved": "https://registry.npmjs.org/expo-file-system/-/expo-file-system-11.1.3.tgz", + "integrity": "sha512-FBRcD6ojrkrZiTZ8O7Fbo833HhZtkhKtLDj4RNZIMpF1i+ZBD2bmeMcfLMeRHNYcBeJno9C4AVXoNQFqDCGQDg==", "requires": { - "@expo/config-plugins": "^1.0.18", + "@expo/config-plugins": "^3.0.0", + "expo-modules-core": "~0.2.0", "uuid": "^3.4.0" + }, + "dependencies": { + "@expo/config-plugins": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@expo/config-plugins/-/config-plugins-3.0.3.tgz", + "integrity": "sha512-+DWHd/2L3O+njVercxGSzcBUXMm5CSzdvIK+7dU+FRhoiF57y2NzBhfNQcReYx/EY1coBrYOsMtENPhV1tWoWQ==", + "requires": { + "@expo/config-types": "^41.0.0", + "@expo/json-file": "8.2.30", + "@expo/plist": "0.0.13", + "debug": "^4.3.1", + "find-up": "~5.0.0", + "fs-extra": "9.0.0", + "getenv": "^1.0.0", + "glob": "7.1.6", + "resolve-from": "^5.0.0", + "slash": "^3.0.0", + "xcode": "^3.0.1", + "xml2js": "^0.4.23" + } + }, + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "fs-extra": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.0.0.tgz", + "integrity": "sha512-pmEYSk3vYsG/bF651KPUXZ+hvjpgWYw/Gc7W9NFUe3ZVLczKKWIij3IKpOrQcdw4TILtibFslZ0UmR8Vvzig4g==", + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^1.0.0" + } + }, + "glob": { + "version": "7.1.6", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", + "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + }, + "dependencies": { + "universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==" + } + } + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "requires": { + "p-locate": "^5.0.0" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "requires": { + "p-limit": "^3.0.2" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" + }, + "universalify": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-1.0.0.tgz", + "integrity": "sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug==" + } } }, "expo-image-loader": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/expo-image-loader/-/expo-image-loader-2.1.1.tgz", - "integrity": "sha512-EeItNIsmw4g+FIb9S9AHE7FAWQkuiIguFMua/RQ2mFHKFZYa/BU32MGagY+e4LzasBVbDKWgd3NHO+EYC6XeEA==" + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/expo-image-loader/-/expo-image-loader-2.2.0.tgz", + "integrity": "sha512-kTs/lW8LUXYFQ5t8wkdJs0A41zd7dIB8uRRC0a9L0EurSGUvQWiVTbHQoLo/GYWL7nM85OaPAe2qkHfcz5KeyA==" }, - "expo-permissions": { - "version": "12.0.1", - "resolved": "https://registry.npmjs.org/expo-permissions/-/expo-permissions-12.0.1.tgz", - "integrity": "sha512-TtypNPPLG4SdVEKBlrArLLZIyhlhE+3B4dhz2HaY1Mve2rcvKE0C7z/e1WoUVU8+LgcdKoNGwg/wRVeCkxeEhg==" - }, - "express": { - "version": "4.17.1", - "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", - "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", - "dev": true, + "expo-modules-autolinking": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/expo-modules-autolinking/-/expo-modules-autolinking-0.0.3.tgz", + "integrity": "sha512-azkCRYj/DxbK4udDuDxA9beYzQTwpJ5a9QA0bBgha2jHtWdFGF4ZZWSY+zNA5mtU3KqzYt8jWHfoqgSvKyu1Aw==", "requires": { - "accepts": "~1.3.7", - "array-flatten": "1.1.1", - "body-parser": "1.19.0", - "content-disposition": "0.5.3", - "content-type": "~1.0.4", - "cookie": "0.4.0", - "cookie-signature": "1.0.6", - "debug": "2.6.9", - "depd": "~1.1.2", - "encodeurl": "~1.0.2", - "escape-html": "~1.0.3", - "etag": "~1.8.1", - "finalhandler": "~1.1.2", - "fresh": "0.5.2", - "merge-descriptors": "1.0.1", - "methods": "~1.1.2", - "on-finished": "~2.3.0", - "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.5", - "qs": "6.7.0", - "range-parser": "~1.2.1", - "safe-buffer": "5.1.2", - "send": "0.17.1", - "serve-static": "1.14.1", - "setprototypeof": "1.1.1", - "statuses": "~1.5.0", - "type-is": "~1.6.18", - "utils-merge": "1.0.1", - "vary": "~1.1.2" + "chalk": "^4.1.0", + "commander": "^7.2.0", + "fast-glob": "^3.2.5", + "find-up": "~5.0.0", + "fs-extra": "^9.1.0" }, "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "requires": { - "ms": "2.0.0" + "color-convert": "^2.0.1" } }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", - "dev": true + "chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } }, - "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", - "dev": true + "commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==" + }, + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "requires": { + "p-locate": "^5.0.0" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "requires": { + "p-limit": "^3.0.2" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + }, + "universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==" } } }, + "expo-modules-core": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/expo-modules-core/-/expo-modules-core-0.2.0.tgz", + "integrity": "sha512-inpfZ5X/BaTtbj2wG9PA9AC0MN8VyId6KSRlVuEg7+ziurHBy/kKDFxpOddUokhwiln2uhoYPSStJjR/tKypdw==" + }, "extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", @@ -44383,7 +38855,6 @@ "version": "3.2.6", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.6.tgz", "integrity": "sha512-GnLuqj/pvQ7pX8/L4J84nijv6sAnlwvSDpMkJi9i7nPmPxGtRPkBSStfvDW5l6nMdX9VWe+pkKWFTgD+vF2QSQ==", - "dev": true, "requires": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", @@ -44405,32 +38876,13 @@ "dev": true }, "fastq": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.0.tgz", - "integrity": "sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g==", - "dev": true, + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.11.1.tgz", + "integrity": "sha512-HOnr8Mc60eNYl1gzwp6r5RoUyAn5/glBolUzP/Ez6IFVPMPirxn/9phgL6zhOtaTy7ISwPvQ+wT+hfcRZh/bzw==", "requires": { "reusify": "^1.0.4" } }, - "fault": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/fault/-/fault-1.0.4.tgz", - "integrity": "sha512-CJ0HCB5tL5fYTEA7ToAq5+kTwd++Borf1/bifxd9iT70QcXr4MRrO3Llf8Ifs70q+SJcGHFtnIE/Nw6giCtECA==", - "dev": true, - "requires": { - "format": "^0.2.0" - } - }, - "faye-websocket": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz", - "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==", - "dev": true, - "requires": { - "websocket-driver": ">=0.5.1" - } - }, "fb-watchman": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz", @@ -44472,7 +38924,8 @@ "version": "3.5.2", "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", - "dev": true + "dev": true, + "peer": true }, "figures": { "version": "2.0.0", @@ -44522,71 +38975,13 @@ } } }, - "file-loader": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-4.3.0.tgz", - "integrity": "sha512-aKrYPYjF1yG3oX0kWRrqrSMfgftm7oJW5M+m4owoldH5C51C0RkIwB++JbRvEW3IU6/ZG5n8UvEcdgwOt2UOWA==", - "dev": true, - "requires": { - "loader-utils": "^1.2.3", - "schema-utils": "^2.5.0" - } - }, - "file-system-cache": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/file-system-cache/-/file-system-cache-1.0.5.tgz", - "integrity": "sha1-hCWbNqK7uNPW6xAh0xMv/mTP/08=", - "dev": true, - "requires": { - "bluebird": "^3.3.5", - "fs-extra": "^0.30.0", - "ramda": "^0.21.0" - }, - "dependencies": { - "fs-extra": { - "version": "0.30.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-0.30.0.tgz", - "integrity": "sha1-8jP/zAjU2n1DLapEl3aYnbHfk/A=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "jsonfile": "^2.1.0", - "klaw": "^1.0.0", - "path-is-absolute": "^1.0.0", - "rimraf": "^2.2.8" - } - }, - "jsonfile": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz", - "integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6" - } - }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, - "file-type": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/file-type/-/file-type-9.0.0.tgz", - "integrity": "sha512-Qe/5NJrgIOlwijpq3B7BEpzPFcgzggOTagZmkXQY4LA6bsXKTUstK7Wp12lEJ/mLKTpvIZxmIuRcLYWT6ov9lw==" - }, "file-uri-to-path": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", "dev": true, - "optional": true + "optional": true, + "peer": true }, "filehound": { "version": "1.16.5", @@ -44602,12 +38997,6 @@ "unit-compare": "^1.0.1" } }, - "filesize": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/filesize/-/filesize-3.6.1.tgz", - "integrity": "sha512-7KjR1vv6qnicaPMi1iiTcI85CyYwRO/PSFCu6SvqL8jN2Wjt/NIYQTFtFs7fSDCYOstUkEWIQGFUg5YZQfjlcg==", - "dev": true - }, "fill-range": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", @@ -44676,12 +39065,6 @@ "pkg-dir": "^3.0.0" } }, - "find-root": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", - "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==", - "dev": true - }, "find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", @@ -44823,28 +39206,25 @@ "dev": true }, "flow-parser": { - "version": "0.90.0", - "resolved": "https://registry.npmjs.org/flow-parser/-/flow-parser-0.90.0.tgz", - "integrity": "sha512-a6Ohgdzvf2e1/F8sI98qcPLtDIjLayRkRgAwrWHzHFMHCNq92jyRbRG0w5fGjs6xdI320Ud39HkI0Dk5OPs17g==" + "version": "0.154.0", + "resolved": "https://registry.npmjs.org/flow-parser/-/flow-parser-0.154.0.tgz", + "integrity": "sha512-cH9xY/ljOgmqG1n7PU1jffiHhRggoloauwOrOlCWBEX4Y+ml6GA8g//tCVKU+6PO4BXoPF22TFHkS5E1bN3JOQ==" }, "flush-write-stream": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", "dev": true, + "peer": true, "requires": { "inherits": "^2.0.3", "readable-stream": "^2.3.6" } }, - "focus-lock": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/focus-lock/-/focus-lock-0.9.1.tgz", - "integrity": "sha512-/2Nj60Cps6yOLSO+CkVbeSKfwfns5XbX6HOedIK9PdzODP04N9c3xqOcPXayN0WsT9YjJvAnXmI0NdqNIDf5Kw==", - "dev": true, - "requires": { - "tslib": "^2.0.3" - } + "follow-redirects": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.1.tgz", + "integrity": "sha512-HWqDgT7ZEkqRzBvc2s64vSZ/hfOceEol3ac/7tKwzuvEyWx3/4UegXh5oBOIotkGsObyk3xznnSRVADBgWSQVg==" }, "for-in": { "version": "1.0.2", @@ -44856,161 +39236,6 @@ "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=" }, - "fork-ts-checker-webpack-plugin": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-1.5.0.tgz", - "integrity": "sha512-zEhg7Hz+KhZlBhILYpXy+Beu96gwvkROWJiTXOCyOOMMrdBIRPvsBpBqgTI4jfJGrJXcqGwJR8zsBGDmzY0jsA==", - "dev": true, - "requires": { - "babel-code-frame": "^6.22.0", - "chalk": "^2.4.1", - "chokidar": "^2.0.4", - "micromatch": "^3.1.10", - "minimatch": "^3.0.4", - "semver": "^5.6.0", - "tapable": "^1.0.0", - "worker-rpc": "^0.1.0" - }, - "dependencies": { - "chokidar": { - "version": "2.1.8", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", - "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", - "dev": true, - "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.1", - "braces": "^2.3.2", - "fsevents": "^1.2.7", - "glob-parent": "^3.1.0", - "inherits": "^2.0.3", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "normalize-path": "^3.0.0", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.2.1", - "upath": "^1.1.1" - } - }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - } - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - } - }, - "fsevents": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", - "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", - "dev": true, - "optional": true, - "requires": { - "bindings": "^1.5.0", - "nan": "^2.12.1" - } - }, - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - } - } - }, "form-data": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", @@ -45022,18 +39247,6 @@ "mime-types": "^2.1.12" } }, - "format": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/format/-/format-0.2.2.tgz", - "integrity": "sha1-1hcBB+nv3E7TDJ3DkBbflCtctYs=", - "dev": true - }, - "forwarded": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", - "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", - "dev": true - }, "fragment-cache": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", @@ -45052,11 +39265,17 @@ "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", "dev": true, + "peer": true, "requires": { "inherits": "^2.0.1", "readable-stream": "^2.0.0" } }, + "fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, "fs-extra": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", @@ -45071,7 +39290,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dev": true, "requires": { "minipass": "^3.0.0" } @@ -45087,6 +39305,7 @@ "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", "dev": true, + "peer": true, "requires": { "graceful-fs": "^4.1.2", "iferr": "^0.1.5", @@ -45110,30 +39329,12 @@ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, - "function.prototype.name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.4.tgz", - "integrity": "sha512-iqy1pIotY/RmhdFZygSSlW0wko2yxkSCKqsuv4pr8QESohpYyG/Z7B/XXvPRKTJS//960rgguE5mSRUsDdaJrQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2", - "functions-have-names": "^1.2.2" - } - }, "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 }, - "functions-have-names": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.2.tgz", - "integrity": "sha512-bLgc3asbWdwPbx2mNk2S49kmJCuQeu0nfmaOgbs8WIyzzkw3r4htszdIi9Q9EMezDPTYuJx2wvjZ/EwgAthpnA==", - "dev": true - }, "funpermaproxy": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/funpermaproxy/-/funpermaproxy-1.0.1.tgz", @@ -45309,7 +39510,6 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", - "dev": true, "requires": { "pump": "^3.0.0" } @@ -45337,64 +39537,56 @@ "path-is-absolute": "^1.0.0" } }, - "glob-base": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", - "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", - "dev": true, - "requires": { - "glob-parent": "^2.0.0", - "is-glob": "^2.0.0" - }, - "dependencies": { - "glob-parent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", - "dev": true, - "requires": { - "is-glob": "^2.0.0" - } - }, - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", - "dev": true - }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true, - "requires": { - "is-extglob": "^1.0.0" - } - } - } - }, "glob-parent": { "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" } }, - "glob-to-regexp": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz", - "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=", - "dev": true - }, - "global": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", - "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", + "global-agent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-2.2.0.tgz", + "integrity": "sha512-+20KpaW6DDLqhG7JDiJpD1JvNvb8ts+TNl7BPOYcURqCrXqnN1Vf+XVOrkKJAFPqfX+oEhsdzOj1hLWkBTdNJg==", "requires": { - "min-document": "^2.19.0", - "process": "^0.11.10" + "boolean": "^3.0.1", + "core-js": "^3.6.5", + "es6-error": "^4.1.1", + "matcher": "^3.0.0", + "roarr": "^2.15.3", + "semver": "^7.3.2", + "serialize-error": "^7.0.1" + }, + "dependencies": { + "serialize-error": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz", + "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==", + "requires": { + "type-fest": "^0.13.1" + } + }, + "type-fest": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==" + } + } + }, + "global-dirs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.0.tgz", + "integrity": "sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==", + "requires": { + "ini": "2.0.0" + }, + "dependencies": { + "ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==" + } } }, "global-modules": { @@ -45426,7 +39618,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.2.tgz", "integrity": "sha512-ZQnSFO1la8P7auIOQECnm0sSuoMeaSq0EEdXMBFF2QJO4uNcwbyhSgG3MruWNbFTqCLmxVwGOl7LZ9kASvHdeQ==", - "dev": true, "requires": { "define-properties": "^1.1.3" } @@ -45435,7 +39626,6 @@ "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", @@ -45448,25 +39638,31 @@ "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==" }, "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==" } } }, - "good-listener": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz", - "integrity": "sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=", - "dev": true, - "optional": true, + "got": { + "version": "11.8.2", + "resolved": "https://registry.npmjs.org/got/-/got-11.8.2.tgz", + "integrity": "sha512-D0QywKgIe30ODs+fm8wMZiAcZjypcCodPNuMz5H9Mny7RJ+IjJ10BdmGW7OM7fHXP+O7r6ZwapQ/YQmMSvB0UQ==", "requires": { - "delegate": "^3.1.2" + "@sindresorhus/is": "^4.0.0", + "@szmarczak/http-timer": "^4.0.5", + "@types/cacheable-request": "^6.0.1", + "@types/responselike": "^1.0.0", + "cacheable-lookup": "^5.0.3", + "cacheable-request": "^7.0.1", + "decompress-response": "^6.0.0", + "http2-wrapper": "^1.0.0-beta.5.2", + "lowercase-keys": "^2.0.0", + "p-cancelable": "^2.0.0", + "responselike": "^2.0.0" } }, "graceful-fs": { @@ -45474,6 +39670,11 @@ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==" }, + "grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==" + }, "growl": { "version": "1.10.5", "resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz", @@ -45488,20 +39689,32 @@ "dev": true, "optional": true }, - "gud": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gud/-/gud-1.0.0.tgz", - "integrity": "sha512-zGEOVKFM5sVPPrYs7J5/hYEw2Pof8KCyOwyhG8sAF26mCAeUFAcYPu1mwB7hhpIP29zOIBaDqwuHdLp0jvZXjw==", - "dev": true - }, - "gzip-size": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-5.1.1.tgz", - "integrity": "sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA==", - "dev": true, + "gunzip-maybe": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/gunzip-maybe/-/gunzip-maybe-1.4.2.tgz", + "integrity": "sha512-4haO1M4mLO91PW57BMsDFf75UmwoRX0GkdD+Faw+Lr+r/OZrOCS0pIBwOL1xCKQqnQzbNFGgK2V2CpBUPeFNTw==", "requires": { - "duplexer": "^0.1.1", - "pify": "^4.0.1" + "browserify-zlib": "^0.1.4", + "is-deflate": "^1.0.0", + "is-gzip": "^1.0.0", + "peek-stream": "^1.1.0", + "pumpify": "^1.3.3", + "through2": "^2.0.3" + }, + "dependencies": { + "browserify-zlib": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.1.4.tgz", + "integrity": "sha1-uzX4pRn2AOD6a4SFJByXnQFB+y0=", + "requires": { + "pako": "~0.2.0" + } + }, + "pako": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/pako/-/pako-0.2.9.tgz", + "integrity": "sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=" + } } }, "has": { @@ -45512,23 +39725,6 @@ "function-bind": "^1.1.1" } }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - } - } - }, "has-bigints": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz", @@ -45578,11 +39774,17 @@ } } }, + "has-yarn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", + "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==" + }, "hash-base": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", "dev": true, + "peer": true, "requires": { "inherits": "^2.0.4", "readable-stream": "^3.6.0", @@ -45594,6 +39796,7 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "dev": true, + "peer": true, "requires": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -45604,7 +39807,8 @@ "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true + "dev": true, + "peer": true } } }, @@ -45613,35 +39817,18 @@ "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", "dev": true, + "peer": true, "requires": { "inherits": "^2.0.3", "minimalistic-assert": "^1.0.1" } }, - "hast-util-parse-selector": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.2.5.tgz", - "integrity": "sha512-7j6mrk/qqkSehsM92wQjdIgWM2/BW61u/53G6xmC8i1OmEdKLHbk419QKQUjz6LglWsfqoiHmyMRkP1BGjecNQ==", - "dev": true - }, - "hastscript": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/hastscript/-/hastscript-6.0.0.tgz", - "integrity": "sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==", - "dev": true, - "requires": { - "@types/hast": "^2.0.0", - "comma-separated-tokens": "^1.0.0", - "hast-util-parse-selector": "^2.0.0", - "property-information": "^5.0.0", - "space-separated-tokens": "^1.0.0" - } - }, "he": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", - "dev": true + "dev": true, + "peer": true }, "hermes-engine": { "version": "0.7.2", @@ -45663,17 +39850,12 @@ } } }, - "highlight.js": { - "version": "10.7.3", - "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.3.tgz", - "integrity": "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==", - "dev": true - }, "hmac-drbg": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", "dev": true, + "peer": true, "requires": { "hash.js": "^1.0.3", "minimalistic-assert": "^1.0.0", @@ -45712,91 +39894,16 @@ "whatwg-encoding": "^1.0.5" } }, - "html-entities": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.4.0.tgz", - "integrity": "sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA==", - "dev": true - }, "html-escaper": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", "dev": true }, - "html-minifier-terser": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz", - "integrity": "sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg==", - "dev": true, - "requires": { - "camel-case": "^4.1.1", - "clean-css": "^4.2.3", - "commander": "^4.1.1", - "he": "^1.2.0", - "param-case": "^3.0.3", - "relateurl": "^0.2.7", - "terser": "^4.6.3" - } - }, - "html-webpack-plugin": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.5.2.tgz", - "integrity": "sha512-q5oYdzjKUIPQVjOosjgvCHQOv9Ett9CYYHlgvJeXG0qQvdSojnBq4vAdQBwn1+yGveAwHCoe/rMR86ozX3+c2A==", - "dev": true, - "requires": { - "@types/html-minifier-terser": "^5.0.0", - "@types/tapable": "^1.0.5", - "@types/webpack": "^4.41.8", - "html-minifier-terser": "^5.0.1", - "loader-utils": "^1.2.3", - "lodash": "^4.17.20", - "pretty-error": "^2.1.1", - "tapable": "^1.1.3", - "util.promisify": "1.0.0" - } - }, - "htmlparser2": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz", - "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.0.0", - "domutils": "^2.5.2", - "entities": "^2.0.0" - }, - "dependencies": { - "dom-serializer": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", - "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - } - }, - "domelementtype": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", - "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", - "dev": true - }, - "domutils": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.7.0.tgz", - "integrity": "sha512-8eaHa17IwJUPAiB+SoTYBo5mCdeMgdcAoXJ59m6DT1vw+5iLS3gNoqYaRowaBKtGVrOF1Jz4yDTgYKLK2kvfJg==", - "dev": true, - "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - } - } - } + "http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" }, "http-errors": { "version": "1.7.2", @@ -45817,12 +39924,6 @@ } } }, - "http-parser-js": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.3.tgz", - "integrity": "sha512-t7hjvef/5HEK7RWTdUzVUhl8zkEu+LlaE0IYzdMuvbSDipxBRpOn4Uhw8ZyECEa808iVT8XCjzo6xmYt4CiLZg==", - "dev": true - }, "http-proxy-agent": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", @@ -45834,11 +39935,21 @@ "debug": "4" } }, + "http2-wrapper": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz", + "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==", + "requires": { + "quick-lru": "^5.1.1", + "resolve-alpn": "^1.0.0" + } + }, "https-browserify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", - "dev": true + "dev": true, + "peer": true }, "https-proxy-agent": { "version": "5.0.0", @@ -45856,9 +39967,9 @@ "dev": true }, "husky": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/husky/-/husky-6.0.0.tgz", - "integrity": "sha512-SQS2gDTB7tBN486QSoKPKQItZw97BMOd+Kdb6ghfpBc0yXyzrddI0oDV5MkDAbuB4X2mO3/nj60TRMcYxwzZeQ==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/husky/-/husky-7.0.1.tgz", + "integrity": "sha512-gceRaITVZ+cJH9sNHqx5tFwbzlLCVxtVZcusME8JYQ8Edy5mpGDOqD8QBCdMhpyo9a+JXddnujQ4rpY2Ff9SJA==", "dev": true }, "iconv-lite": { @@ -45869,15 +39980,6 @@ "safer-buffer": ">= 2.1.2 < 3" } }, - "icss-utils": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", - "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", - "dev": true, - "requires": { - "postcss": "^7.0.14" - } - }, "ieee754": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", @@ -45887,7 +39989,8 @@ "version": "0.1.5", "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", - "dev": true + "dev": true, + "peer": true }, "ignore": { "version": "4.0.6", @@ -45905,26 +40008,11 @@ "resolved": "https://registry.npmjs.org/immediate/-/immediate-3.0.6.tgz", "integrity": "sha1-nbHb0Pr43m++D13V5Wu2BigN5ps=" }, - "immer": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/immer/-/immer-1.10.0.tgz", - "integrity": "sha512-O3sR1/opvCDGLEVcvrGTMtLac8GJ5IwZC4puPrLuRj3l7ICKvkmA0vGuU9OW8mV9WIBRnaxp5GJh9IEAaNOoYg==", - "dev": true - }, "immutable": { "version": "4.0.0-rc.12", "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.0.0-rc.12.tgz", "integrity": "sha512-0M2XxkZLx/mi3t8NVwIm1g8nHoEmM9p9UBl/G9k4+hm0kBgOVdMV/B3CY5dQ8qG8qc80NN4gDV4HQv6FTJ5q7A==" }, - "import-cwd": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz", - "integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=", - "dev": true, - "requires": { - "import-from": "^2.1.0" - } - }, "import-fresh": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", @@ -45943,22 +40031,10 @@ } } }, - "import-from": { + "import-lazy": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", - "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=", - "dev": true, - "requires": { - "resolve-from": "^3.0.0" - }, - "dependencies": { - "resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", - "dev": true - } - } + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=" }, "import-local": { "version": "3.0.2", @@ -45986,22 +40062,17 @@ "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=" }, - "in-publish": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.1.tgz", - "integrity": "sha512-oDM0kUSNFC31ShNxHKUyfZKy8ZeXZBWMjMdZHKLOk13uvT27VTL/QzRGfRUcevJhpkZAvlhPYuXkF7eNWrtyxQ==" - }, "indent-string": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "dev": true + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" }, "infer-owner": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "dev": true + "dev": true, + "peer": true }, "inflight": { "version": "1.0.6", @@ -46020,8 +40091,7 @@ "ini": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", - "dev": true + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" }, "inquirer": { "version": "6.5.2", @@ -46094,18 +40164,17 @@ } }, "interpret": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz", - "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==", - "dev": true + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", + "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==" }, "intl-messageformat": { - "version": "9.6.14", - "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-9.6.14.tgz", - "integrity": "sha512-9JN9PfPTtp8OGqV5ndlwmjYhqj1Baz1OHMlzNhLNkt35mqThUh0wvtS7+X5QUnJFAgopNPlw2KF5LH0kYUs4eA==", + "version": "9.7.1", + "resolved": "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-9.7.1.tgz", + "integrity": "sha512-DNiuD+/59G9qaYu3U0KgwCV0zpN9XRoUvc8izSNCNAA5MknhiIUONFE0WtScP+E/7JfoENu+CX57P/SURRbI0A==", "requires": { "@formatjs/fast-memoize": "1.1.1", - "@formatjs/icu-messageformat-parser": "2.0.2", + "@formatjs/icu-messageformat-parser": "2.0.7", "tslib": "^2.1.0" } }, @@ -46128,11 +40197,10 @@ "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" }, - "ipaddr.js": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", - "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "dev": true + "is": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/is/-/is-3.3.0.tgz", + "integrity": "sha512-nW24QBoPcFGGHJGUwnfpI7Yc5CdqWNdsyHQszVE/z2pKHXzh7FZ5GWhJqSyaQ9wMkQnsTx+kAI8bHlCX4tKdbg==" }, "is-accessor-descriptor": { "version": "0.1.6", @@ -46152,22 +40220,6 @@ } } }, - "is-alphabetical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.4.tgz", - "integrity": "sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg==", - "dev": true - }, - "is-alphanumerical": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz", - "integrity": "sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A==", - "dev": true, - "requires": { - "is-alphabetical": "^1.0.0", - "is-decimal": "^1.0.0" - } - }, "is-arguments": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.0.tgz", @@ -46191,6 +40243,7 @@ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", "dev": true, + "optional": true, "requires": { "binary-extensions": "^1.0.0" } @@ -46252,11 +40305,10 @@ "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.4.tgz", "integrity": "sha512-/b4ZVsG7Z5XVtIxs/h9W8nvfLgSAyKYdtGWQLbqy6jA1icmgjf8WCoTKgeS4wy5tYaPePouzFMANbnj94c2Z+A==" }, - "is-decimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", - "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", - "dev": true + "is-deflate": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-deflate/-/is-deflate-1.0.0.tgz", + "integrity": "sha1-yGKQHDwWH7CdrHzcfnhPgOmPLxQ=" }, "is-descriptor": { "version": "0.1.6", @@ -46283,8 +40335,7 @@ "is-docker": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==" }, "is-extendable": { "version": "0.1.1", @@ -46294,19 +40345,13 @@ "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": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" }, - "is-function": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.2.tgz", - "integrity": "sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==" - }, "is-generator-fn": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", @@ -46323,16 +40368,28 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", - "dev": true, "requires": { "is-extglob": "^2.1.1" } }, - "is-hexadecimal": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.4.tgz", - "integrity": "sha512-gyPJuv83bHMpocVYoqof5VDiZveEoGoFL8m3BXNb2VW8Xs+rz9kqO8LOQ5DH6EsuvilT1ApazU0pyl+ytbPtlw==", - "dev": true + "is-gzip": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-gzip/-/is-gzip-1.0.0.tgz", + "integrity": "sha1-bKiwe5nHeZgCWQDlVc7Y7YCHmoM=" + }, + "is-installed-globally": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", + "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", + "requires": { + "global-dirs": "^3.0.0", + "is-path-inside": "^3.0.2" + } + }, + "is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==" }, "is-map": { "version": "2.0.2", @@ -46344,6 +40401,11 @@ "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==" }, + "is-npm": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", + "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==" + }, "is-number": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", @@ -46372,6 +40434,16 @@ "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=" }, + "is-path-cwd": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==" + }, + "is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==" + }, "is-plain-obj": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", @@ -46401,12 +40473,6 @@ "has-symbols": "^1.0.2" } }, - "is-root": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", - "integrity": "sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==", - "dev": true - }, "is-set": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", @@ -46415,8 +40481,7 @@ "is-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", - "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", - "dev": true + "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==" }, "is-string": { "version": "1.0.6", @@ -46451,9 +40516,7 @@ "is-unicode-supported": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "dev": true, - "peer": true + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==" }, "is-weakmap": { "version": "2.0.1", @@ -46474,11 +40537,15 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, "requires": { "is-docker": "^2.0.0" } }, + "is-yarn-global": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", + "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==" + }, "isarray": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", @@ -46602,26 +40669,10 @@ "istanbul-lib-report": "^3.0.0" } }, - "iterate-iterator": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/iterate-iterator/-/iterate-iterator-1.0.1.tgz", - "integrity": "sha512-3Q6tudGN05kbkDQDI4CqjaBf4qf85w6W6GnuZDtUVYwKgtC1q8yxYX7CZed7N+tLzQqS6roujWvszf13T+n9aw==", - "dev": true - }, - "iterate-value": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/iterate-value/-/iterate-value-1.0.2.tgz", - "integrity": "sha512-A6fMAio4D2ot2r/TYzr4yUWrmwNdsN5xL7+HUiyACE4DXm+q8HtPcnFTp+NnW3k4N05tZ7FVYFFb2CR13NxyHQ==", - "dev": true, - "requires": { - "es-get-iterator": "^1.0.2", - "iterate-iterator": "^1.0.1" - } - }, "jail-monkey": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/jail-monkey/-/jail-monkey-2.4.0.tgz", - "integrity": "sha512-A2lAjbUK9KFwS7cDdKyzZ+vFCn5+yFJumCk9MXaMeyTTB3lFQ5aag8Wu0wY5m9qrNLPdIkgeiwNt8452OOOs7g==" + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/jail-monkey/-/jail-monkey-2.5.0.tgz", + "integrity": "sha512-z5xZZ7My25RELBIPFgYWfEmtcPQm8fHxQWJ5uq1g0gfyv7xclDely8Sicv43dtOGZjvpDqjhBm/sgHuQJ2hd3A==" }, "jest": { "version": "26.6.3", @@ -47313,6 +41364,44 @@ "color-convert": "^2.0.1" } }, + "babel-jest": { + "version": "26.6.3", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-26.6.3.tgz", + "integrity": "sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA==", + "dev": true, + "requires": { + "@jest/transform": "^26.6.2", + "@jest/types": "^26.6.2", + "@types/babel__core": "^7.1.7", + "babel-plugin-istanbul": "^6.0.0", + "babel-preset-jest": "^26.6.2", + "chalk": "^4.0.0", + "graceful-fs": "^4.2.4", + "slash": "^3.0.0" + } + }, + "babel-plugin-jest-hoist": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz", + "integrity": "sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw==", + "dev": true, + "requires": { + "@babel/template": "^7.3.3", + "@babel/types": "^7.3.3", + "@types/babel__core": "^7.0.0", + "@types/babel__traverse": "^7.0.6" + } + }, + "babel-preset-jest": { + "version": "26.6.2", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz", + "integrity": "sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ==", + "dev": true, + "requires": { + "babel-plugin-jest-hoist": "^26.6.2", + "babel-preset-current-node-syntax": "^1.0.0" + } + }, "chalk": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", @@ -47359,6 +41448,12 @@ "@types/node": "*" } }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true + }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -48887,18 +42982,6 @@ "integrity": "sha512-J4Au9KuT74te+PCCCHKgAjyLlEa+2VyIAEPNCdE5aNkAJ6FAJcAqcdzEkSnzNksIa9NkGmC4tPiClk2e7tCJuQ==", "dev": true }, - "jimp": { - "version": "0.12.1", - "resolved": "https://registry.npmjs.org/jimp/-/jimp-0.12.1.tgz", - "integrity": "sha512-0soPJif+yjmzmOF+4cF2hyhxUWWpXpQntsm2joJXFFoRcQiPzsG4dbLKYqYPT3Fc6PjZ8MaLtCkDqqckVSfmRw==", - "requires": { - "@babel/runtime": "^7.7.2", - "@jimp/custom": "^0.12.1", - "@jimp/plugins": "^0.12.1", - "@jimp/types": "^0.12.1", - "regenerator-runtime": "^0.13.3" - } - }, "joi": { "version": "17.4.0", "resolved": "https://registry.npmjs.org/joi/-/joi-17.4.0.tgz", @@ -48911,11 +42994,6 @@ "@sideway/pinpoint": "^2.0.0" } }, - "jpeg-js": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/jpeg-js/-/jpeg-js-0.4.3.tgz", - "integrity": "sha512-ru1HWKek8octvUHFHvE5ZzQ1yAsJmIvRdGWvSoKV52XKyuyYA437QWDttXT8eZXDSbuMpHlLzPDZUPd6idIz+Q==" - }, "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -49093,6 +43171,23 @@ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==" }, + "json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==" + }, + "json-file-plus": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/json-file-plus/-/json-file-plus-3.3.1.tgz", + "integrity": "sha512-wo0q1UuiV5NsDPQDup1Km8IwEeqe+olr8tkWxeJq9Bjtcp7DZ0l+yrg28fSC3DEtrE311mhTZ54QGS6oiqnZEA==", + "requires": { + "is": "^3.2.1", + "node.extend": "^2.0.0", + "object.assign": "^4.1.0", + "promiseback": "^2.0.2", + "safer-buffer": "^2.0.2" + } + }, "json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", @@ -49121,12 +43216,6 @@ "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" }, - "json3": { - "version": "3.3.3", - "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.3.tgz", - "integrity": "sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA==", - "dev": true - }, "json5": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", @@ -49158,11 +43247,40 @@ "object.assign": "^4.1.2" } }, + "jszip": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.6.0.tgz", + "integrity": "sha512-jgnQoG9LKnWO3mnVNBnfhkh0QknICd1FGSrXcgrl67zioyJ4wgx25o9ZqwNtrROSflGBCGYnJfjrIyRIby1OoQ==", + "requires": { + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "set-immediate-shim": "~1.0.1" + }, + "dependencies": { + "lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "requires": { + "immediate": "~3.0.5" + } + } + } + }, "keymirror": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/keymirror/-/keymirror-0.1.1.tgz", "integrity": "sha1-kYiJ6hP40KQufFVyUO7nE63JXDU=" }, + "keyv": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.0.3.tgz", + "integrity": "sha512-zdGa2TOpSZPq5mU6iowDARnMBZgtCqJ11dJROFi6tg6kTn4nuUdU09lFyLFSaHrWqpIJ+EBq4E8/Dc0Vx5vLdA==", + "requires": { + "json-buffer": "3.0.1" + } + }, "kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", @@ -49190,25 +43308,12 @@ "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==" }, - "lazy-universal-dotenv": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/lazy-universal-dotenv/-/lazy-universal-dotenv-3.0.1.tgz", - "integrity": "sha512-prXSYk799h3GY3iOWnC6ZigYzMPjxN2svgjJ9shk7oMadSNX3wXy0B6F32PMJv7qtMnrIbUxoEHzbutvxR2LBQ==", - "dev": true, + "latest-version": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", + "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", "requires": { - "@babel/runtime": "^7.5.0", - "app-root-dir": "^1.0.2", - "core-js": "^3.0.4", - "dotenv": "^8.0.0", - "dotenv-expand": "^5.1.0" - }, - "dependencies": { - "dotenv": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz", - "integrity": "sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==", - "dev": true - } + "package-json": "^6.3.0" } }, "lcid": { @@ -49249,28 +43354,6 @@ "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", "dev": true }, - "load-bmfont": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/load-bmfont/-/load-bmfont-1.4.1.tgz", - "integrity": "sha512-8UyQoYmdRDy81Brz6aLAUhfZLwr5zV0L3taTQ4hju7m6biuwiWiJXjPhBJxbUQJA8PrkvJ/7Enqmwk2sM14soA==", - "requires": { - "buffer-equal": "0.0.1", - "mime": "^1.3.4", - "parse-bmfont-ascii": "^1.0.3", - "parse-bmfont-binary": "^1.0.5", - "parse-bmfont-xml": "^1.1.4", - "phin": "^2.9.1", - "xhr": "^2.0.1", - "xtend": "^4.0.0" - }, - "dependencies": { - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" - } - } - }, "load-json-file": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", @@ -49311,7 +43394,8 @@ "version": "2.4.0", "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", - "dev": true + "dev": true, + "peer": true }, "loader-utils": { "version": "1.4.0", @@ -49366,27 +43450,146 @@ "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz", "integrity": "sha1-DZnzzNem0mHRm9rrkkUAXShYCOc=" }, + "lodash.assignin": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", + "integrity": "sha1-uo31+4QesKPoBEIysOJjqNxqKKI=" + }, + "lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=" + }, + "lodash.chunk": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.chunk/-/lodash.chunk-4.2.0.tgz", + "integrity": "sha1-ZuXOH3btJ7QwPYxlEujRIW6BBrw=" + }, + "lodash.clone": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clone/-/lodash.clone-4.5.0.tgz", + "integrity": "sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y=" + }, "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.constant": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash.constant/-/lodash.constant-3.0.0.tgz", + "integrity": "sha1-v+Bczn5RWzEokl1jYhOEIL1iSRA=" }, "lodash.debounce": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=" }, + "lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=" + }, + "lodash.filter": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", + "integrity": "sha1-ZosdSYFgOuHMWm+nYBQ+SAtMSs4=" + }, + "lodash.find": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.find/-/lodash.find-4.6.0.tgz", + "integrity": "sha1-ywcE1Hq3F4n/oN6Ll92Sb7iLE7E=" + }, + "lodash.findindex": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.findindex/-/lodash.findindex-4.6.0.tgz", + "integrity": "sha1-oyRd7mH7m24GJLU1ElYku2nBEQY=" + }, + "lodash.findkey": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.findkey/-/lodash.findkey-4.6.0.tgz", + "integrity": "sha1-gwWOkDtRy7dZ0JzPVG3qPqOcRxg=" + }, + "lodash.flatmap": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.flatmap/-/lodash.flatmap-4.5.0.tgz", + "integrity": "sha1-74y/QI9uSCaGYzRTBcaswLd4cC4=" + }, + "lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=" + }, + "lodash.flattendeep": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz", + "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=" + }, + "lodash.foreach": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", + "integrity": "sha1-Gmo16s5AEoDH8G3d7DUWWrJ+PlM=" + }, "lodash.frompairs": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/lodash.frompairs/-/lodash.frompairs-4.0.1.tgz", "integrity": "sha1-vE5SB/onV8E25XNhTpZkUGsrG9I=" }, + "lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=" + }, + "lodash.groupby": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.groupby/-/lodash.groupby-4.6.0.tgz", + "integrity": "sha1-Cwih3PaDl8OXhVwyOXg4Mt90A9E=" + }, + "lodash.has": { + "version": "4.5.2", + "resolved": "https://registry.npmjs.org/lodash.has/-/lodash.has-4.5.2.tgz", + "integrity": "sha1-0Z9NwQlQWMzL4rDN9O4P5Ko3yGI=" + }, + "lodash.invert": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.invert/-/lodash.invert-4.3.0.tgz", + "integrity": "sha1-j/4g1LYW9WvqjxqgxuvYDc90Ku4=" + }, + "lodash.isboolean": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", + "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY=" + }, + "lodash.isempty": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.isempty/-/lodash.isempty-4.4.0.tgz", + "integrity": "sha1-b4bL7di+TsmHvpqvM8loTbGzHn4=" + }, "lodash.isequal": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" }, + "lodash.isfunction": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz", + "integrity": "sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw==" + }, + "lodash.isnumber": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", + "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w=" + }, + "lodash.isobject": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/lodash.isobject/-/lodash.isobject-3.0.2.tgz", + "integrity": "sha1-PI+41bW/S/kK4G4U8qUwpO2TXh0=" + }, + "lodash.isobjectlike": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/lodash.isobjectlike/-/lodash.isobjectlike-4.0.0.tgz", + "integrity": "sha1-dCxfxlrdJ5JNPSQZFoGqmheytg0=" + }, "lodash.isplainobject": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", @@ -49397,33 +43600,71 @@ "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=" }, - "lodash.memoize": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=", - "dev": true + "lodash.isundefined": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/lodash.isundefined/-/lodash.isundefined-3.0.1.tgz", + "integrity": "sha1-I+89lTVWUgOmbO/VuDD4SJEa+0g=" + }, + "lodash.keys": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-4.2.0.tgz", + "integrity": "sha1-oIYCrBLk+4P5H8H7ejYKTZujUgU=" + }, + "lodash.last": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash.last/-/lodash.last-3.0.0.tgz", + "integrity": "sha1-JC9mMRLdTG5jcoxgo8kJ0b2tvUw=" + }, + "lodash.map": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", + "integrity": "sha1-dx7Hg540c9nEzeKLGTlMNWL09tM=" }, "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.omit": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.omit/-/lodash.omit-4.5.0.tgz", "integrity": "sha1-brGa5aHuHdnfC5aeZs4Lf6MLXmA=" }, + "lodash.orderby": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.orderby/-/lodash.orderby-4.6.0.tgz", + "integrity": "sha1-5pfwTOXXhSL1TZM4syuBozk+TrM=" + }, "lodash.pick": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", "integrity": "sha1-UvBWEP/53tQiYRRB7R/BI6AwAbM=" }, + "lodash.reduce": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", + "integrity": "sha1-8atrg5KZrUj3hKu/R2WW8DuRTTs=" + }, "lodash.set": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/lodash.set/-/lodash.set-4.3.2.tgz", "integrity": "sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM=" }, + "lodash.size": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.size/-/lodash.size-4.2.0.tgz", + "integrity": "sha1-cf517T6r2yvLc6GwtPUcOS7ie4Y=" + }, + "lodash.sortby": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", + "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=" + }, + "lodash.sum": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/lodash.sum/-/lodash.sum-4.0.2.tgz", + "integrity": "sha1-rZDjl5ZdgD1PH/eqWy0Bl/O0Y3s=" + }, "lodash.template": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", @@ -49446,18 +43687,46 @@ "resolved": "https://registry.npmjs.org/lodash.throttle/-/lodash.throttle-4.1.1.tgz", "integrity": "sha1-wj6RtxAkKscMN/HhzaknTMOb8vQ=" }, + "lodash.topairs": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.topairs/-/lodash.topairs-4.3.0.tgz", + "integrity": "sha1-O23qo31g+xFnE8RsXxfqGQ7EjWQ=" + }, + "lodash.transform": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.transform/-/lodash.transform-4.6.0.tgz", + "integrity": "sha1-EjBkIvYzJK7YSD0/ODMrX2cFR6A=" + }, "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 }, + "lodash.union": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.union/-/lodash.union-4.6.0.tgz", + "integrity": "sha1-SLtQiECfFvGCFmZkHETdGqrjzYg=" + }, + "lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=" + }, + "lodash.upperfirst": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/lodash.upperfirst/-/lodash.upperfirst-4.3.1.tgz", + "integrity": "sha1-E2Xt9DFIBIHvDRxolXpe2Z1J984=" + }, + "lodash.values": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.values/-/lodash.values-4.3.0.tgz", + "integrity": "sha1-o6bCsOvsxcLLocF+bmIP6BtT00c=" + }, "log-symbols": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", - "dev": true, - "peer": true, "requires": { "chalk": "^4.1.0", "is-unicode-supported": "^0.1.0" @@ -49467,8 +43736,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "peer": true, "requires": { "color-convert": "^2.0.1" } @@ -49477,8 +43744,6 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", - "dev": true, - "peer": true, "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -49487,16 +43752,12 @@ "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, - "peer": true + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, "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, - "peer": true, "requires": { "has-flag": "^4.0.0" } @@ -49593,35 +43854,25 @@ "js-tokens": "^3.0.0 || ^4.0.0" } }, - "lower-case": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz", - "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==", - "dev": true, - "requires": { - "tslib": "^2.0.3" - } - }, - "lowlight": { - "version": "1.20.0", - "resolved": "https://registry.npmjs.org/lowlight/-/lowlight-1.20.0.tgz", - "integrity": "sha512-8Ktj+prEb1RoCPkEOrPMYUN/nCggB7qAWe3a7OpMjWQkh3l2RD5wKRQ+o8Q8YuI9RG/xs95waaI/E6ym/7NsTw==", - "dev": true, - "requires": { - "fault": "^1.0.0", - "highlight.js": "~10.7.0" - } + "lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==" }, "lru-cache": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dev": true, "requires": { "pseudomap": "^1.0.2", "yallist": "^2.1.2" } }, + "macos-release": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/macos-release/-/macos-release-2.5.0.tgz", + "integrity": "sha512-EIgv+QZ9r+814gjJj0Bt5vSLJLzswGmSUbUpbi9AIr/fsN2IWFBl2NucV9PAiek+U1STK468tEkxmVYUtuAN3g==" + }, "make-dir": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", @@ -49665,12 +43916,6 @@ "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" }, - "map-or-similar": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/map-or-similar/-/map-or-similar-1.5.0.tgz", - "integrity": "sha1-beJlMXSt+12e3DPGnT6Sobdvrwg=", - "dev": true - }, "map-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", @@ -49679,12 +43924,20 @@ "object-visit": "^1.0.0" } }, - "markdown-to-jsx": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/markdown-to-jsx/-/markdown-to-jsx-7.1.3.tgz", - "integrity": "sha512-jtQ6VyT7rMT5tPV0g2EJakEnXLiPksnvlYtwQsVVZ611JsWGN8bQ1tVSDX4s6JllfEH6wmsYxNjTUAMrPmNA8w==", - "dev": true, - "requires": {} + "matcher": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz", + "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==", + "requires": { + "escape-string-regexp": "^4.0.0" + }, + "dependencies": { + "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==" + } + } }, "md5-file": { "version": "3.2.3", @@ -49699,6 +43952,7 @@ "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", "dev": true, + "peer": true, "requires": { "hash-base": "^3.0.0", "inherits": "^2.0.1", @@ -49715,12 +43969,6 @@ "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", "integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=" }, - "media-typer": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", - "dev": true - }, "mem": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", @@ -49736,31 +43984,17 @@ "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-5.2.1.tgz", "integrity": "sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q==" }, - "memoizerific": { - "version": "1.11.3", - "resolved": "https://registry.npmjs.org/memoizerific/-/memoizerific-1.11.3.tgz", - "integrity": "sha1-fIekZGREwy11Q4VwkF8tvRsagFo=", - "dev": true, - "requires": { - "map-or-similar": "^1.5.0" - } - }, "memory-fs": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", "dev": true, + "peer": true, "requires": { "errno": "^0.1.3", "readable-stream": "^2.0.1" } }, - "merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", - "dev": true - }, "merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", @@ -49769,14 +44003,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 - }, - "methods": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", - "dev": true + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==" }, "metro": { "version": "0.64.0", @@ -50247,12 +44474,12 @@ } }, "metro-react-native-babel-preset": { - "version": "0.66.0", - "resolved": "https://registry.npmjs.org/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.66.0.tgz", - "integrity": "sha512-rO3yayxplLNxFDc7HyMShN+psgEb2mbw15EMreNvgV8QnXNYHmgU6e15tLbtEvC8LuftOLuSufEdSmR/ykm+aA==", + "version": "0.66.1", + "resolved": "https://registry.npmjs.org/metro-react-native-babel-preset/-/metro-react-native-babel-preset-0.66.1.tgz", + "integrity": "sha512-iNY1CsnhXBJGHkjiq+rn17CVgd0OldTosagEiYLTRMoU1u+dGjPNh5BO6ldpGmyDJScG8Uwd0RuMQoAusDrjVw==", "dev": true, "requires": { - "@babel/core": "^7.0.0", + "@babel/core": "^7.14.0", "@babel/plugin-proposal-class-properties": "^7.0.0", "@babel/plugin-proposal-export-default-from": "^7.0.0", "@babel/plugin-proposal-nullish-coalescing-operator": "^7.0.0", @@ -50428,12 +44655,6 @@ "nullthrows": "^1.1.1" } }, - "microevent.ts": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/microevent.ts/-/microevent.ts-0.1.1.tgz", - "integrity": "sha512-jo1OfR4TaEwd5HOrt5+tAZ9mqT4jmpNAusXtyfNzqVm9uiSYFZlKM1wYL4oU7azZW/PxQW53wM0S6OR1JHNa2g==", - "dev": true - }, "micromatch": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", @@ -50479,6 +44700,7 @@ "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", "dev": true, + "peer": true, "requires": { "bn.js": "^4.0.0", "brorand": "^1.0.1" @@ -50488,7 +44710,8 @@ "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true + "dev": true, + "peer": true } } }, @@ -50515,25 +44738,24 @@ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==" }, - "min-document": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", - "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", - "requires": { - "dom-walk": "^0.1.0" - } + "mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==" }, "minimalistic-assert": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true + "dev": true, + "peer": true }, "minimalistic-crypto-utils": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", - "dev": true + "dev": true, + "peer": true }, "minimatch": { "version": "3.0.4", @@ -50552,7 +44774,6 @@ "version": "3.1.3", "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.3.tgz", "integrity": "sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg==", - "dev": true, "requires": { "yallist": "^4.0.0" }, @@ -50560,36 +44781,24 @@ "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==" } } }, - "minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "dev": true, + "minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "dev": true, - "requires": { - "minipass": "^3.0.0" - } - }, - "minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", - "dev": true, - "requires": { - "minipass": "^3.0.0" + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "dependencies": { + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } } }, "mississippi": { @@ -50597,6 +44806,7 @@ "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", "dev": true, + "peer": true, "requires": { "concat-stream": "^1.5.0", "duplexify": "^3.4.2", @@ -50683,6 +44893,12 @@ "locate-path": "^3.0.0" } }, + "flow-parser": { + "version": "0.90.0", + "resolved": "https://registry.npmjs.org/flow-parser/-/flow-parser-0.90.0.tgz", + "integrity": "sha512-a6Ohgdzvf2e1/F8sI98qcPLtDIjLayRkRgAwrWHzHFMHCNq92jyRbRG0w5fGjs6xdI320Ud39HkI0Dk5OPs17g==", + "dev": true + }, "get-caller-file": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", @@ -50818,6 +45034,11 @@ } } }, + "mobx": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/mobx/-/mobx-4.3.1.tgz", + "integrity": "sha1-M05aq0kWsdQ/D682BaZLG0s8y40=" + }, "mocha": { "version": "9.0.2", "resolved": "https://registry.npmjs.org/mocha/-/mocha-9.0.2.tgz", @@ -51000,6 +45221,7 @@ "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", "dev": true, + "peer": true, "requires": { "aproba": "^1.1.1", "copy-concurrently": "^1.0.0", @@ -51014,6 +45236,7 @@ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", "dev": true, + "peer": true, "requires": { "glob": "^7.1.3" } @@ -51025,6 +45248,25 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, + "multimatch": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/multimatch/-/multimatch-5.0.0.tgz", + "integrity": "sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA==", + "requires": { + "@types/minimatch": "^3.0.3", + "array-differ": "^3.0.0", + "array-union": "^2.1.0", + "arrify": "^2.0.1", + "minimatch": "^3.0.4" + }, + "dependencies": { + "arrify": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", + "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==" + } + } + }, "mustache": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/mustache/-/mustache-4.2.0.tgz", @@ -51173,6 +45415,26 @@ "dev": true, "optional": true }, + "needle": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-2.6.0.tgz", + "integrity": "sha512-KKYdza4heMsEfSWD7VPUIz3zX2XDwOyX2d+geb4vrERZMT5RMU6ujjaD+I5Yr54uZxQ2w6XRTAhHBbSCyovZBg==", + "requires": { + "debug": "^3.2.6", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" + }, + "dependencies": { + "debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "requires": { + "ms": "^2.1.1" + } + } + } + }, "negotiator": { "version": "0.6.2", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", @@ -51188,25 +45450,15 @@ "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" }, - "no-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz", - "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==", - "dev": true, - "requires": { - "lower-case": "^2.0.2", - "tslib": "^2.0.3" - } - }, "nocache": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/nocache/-/nocache-2.1.0.tgz", "integrity": "sha512-0L9FvHG3nfnnmaEQPjT9xhfN4ISk0A8/2j4M37Np4mcDesJjHgEUfgPhdCyZuFI954tjokaIj/A3NdpFNdEh4Q==" }, "nock": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/nock/-/nock-13.1.0.tgz", - "integrity": "sha512-3N3DUY8XYrxxzWazQ+nSBpiaJ3q6gcpNh4gXovC/QBxrsvNp4tq+wsLHF6mJ3nrn3lPLn7KCJqKxy/9aD+0fdw==", + "version": "13.1.1", + "resolved": "https://registry.npmjs.org/nock/-/nock-13.1.1.tgz", + "integrity": "sha512-YKTR9MjfK3kS9/l4nuTxyYm30cgOExRHzkLNhL8nhEUyU4f8Za/dRxOqjhVT1vGs0svWo3dDnJTUX1qxYeWy5w==", "requires": { "debug": "^4.1.0", "json-stringify-safe": "^5.0.1", @@ -51237,6 +45489,7 @@ "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", "dev": true, + "peer": true, "requires": { "assert": "^1.1.1", "browserify-zlib": "^0.2.0", @@ -51268,6 +45521,7 @@ "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", "dev": true, + "peer": true, "requires": { "base64-js": "^1.0.2", "ieee754": "^1.1.4", @@ -51278,31 +45532,36 @@ "version": "2.0.3", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true + "dev": true, + "peer": true }, "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "dev": true, + "peer": true }, "path-browserify": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", - "dev": true + "dev": true, + "peer": true }, "punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true + "dev": true, + "peer": true }, "util": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", "dev": true, + "peer": true, "requires": { "inherits": "2.0.3" } @@ -51364,6 +45623,15 @@ "integrity": "sha512-ma6oU4Sk0qOoKEAymVoTvk8EdXEobdS7m/mAGhDJ8Rouugho48crHBORAmy5BoOcv8wraPM6xumapQp5hl4iIQ==", "dev": true }, + "node.extend": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node.extend/-/node.extend-2.0.2.tgz", + "integrity": "sha512-pDT4Dchl94/+kkgdwyS2PauDFjZG0Hk0IcHIB+LkW27HLDtdoeMxHTxZh39DYbPP8UflWXWj9JcdDozF+YDOpQ==", + "requires": { + "has": "^1.0.3", + "is": "^3.2.1" + } + }, "normalize-package-data": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", @@ -51389,12 +45657,6 @@ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" }, - "normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", - "dev": true - }, "normalize-svg-path": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/normalize-svg-path/-/normalize-svg-path-1.1.0.tgz", @@ -51403,6 +45665,11 @@ "svg-arc-to-cubic-bezier": "^3.0.0" } }, + "normalize-url": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz", + "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==" + }, "npm-run-path": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", @@ -51436,12 +45703,6 @@ "resolved": "https://registry.npmjs.org/nullthrows/-/nullthrows-1.1.1.tgz", "integrity": "sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw==" }, - "num2fraction": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", - "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", - "dev": true - }, "number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", @@ -51483,6 +45744,11 @@ } } }, + "object-hash": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz", + "integrity": "sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==" + }, "object-inspect": { "version": "1.10.3", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.10.3.tgz", @@ -51544,17 +45810,6 @@ "has": "^1.0.3" } }, - "object.getownpropertydescriptors": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.2.tgz", - "integrity": "sha512-WtxeKSzfBjlzL+F9b7M7hewDzMwy+C8NRssHd1YrNlzHzIDrXcXiNOMrezdAEM4UXixgV+vvnyBeN7Rygl2ttQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2" - } - }, "object.pick": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", @@ -51574,11 +45829,6 @@ "es-abstract": "^1.18.2" } }, - "omggif": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/omggif/-/omggif-1.0.10.tgz", - "integrity": "sha512-LMJTtvgc/nugXj0Vcrrs68Mn2D1r0zf630VNtqtpI1FEO7e+O9FP4gqs9AcnBaSEeoHIPm28u6qgPR0oyEpGSw==" - }, "on-finished": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", @@ -51604,7 +45854,6 @@ "version": "5.1.2", "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, "requires": { "mimic-fn": "^2.1.0" } @@ -51613,7 +45862,6 @@ "version": "7.4.2", "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", - "dev": true, "requires": { "is-docker": "^2.0.0", "is-wsl": "^2.1.1" @@ -51694,20 +45942,12 @@ } } }, - "original": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz", - "integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==", - "dev": true, - "requires": { - "url-parse": "^1.4.3" - } - }, "os-browserify": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", - "dev": true + "dev": true, + "peer": true }, "os-locale": { "version": "3.1.0", @@ -51786,16 +46026,24 @@ } } }, + "os-name": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-name/-/os-name-3.1.0.tgz", + "integrity": "sha512-h8L+8aNjNcMpo/mAIBPn5PXCM16iyPGjHNWo6U1YO8sJTMHtEtyczI6QJnLoplswm6goopQkqc7OAnjhWcugVg==", + "requires": { + "macos-release": "^2.2.0", + "windows-release": "^3.1.0" + } + }, "os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" }, - "overlayscrollbars": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/overlayscrollbars/-/overlayscrollbars-1.13.1.tgz", - "integrity": "sha512-gIQfzgGgu1wy80EB4/6DaJGHMEGmizq27xHIESrzXq0Y/J0Ay1P3DWk6tuVmEPIZH15zaBlxeEJOqdJKmowHCQ==", - "dev": true + "p-cancelable": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz", + "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==" }, "p-defer": { "version": "1.0.0", @@ -51834,20 +46082,140 @@ "p-limit": "^2.2.0" } }, - "p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, "p-try": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" }, + "package-json": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", + "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", + "requires": { + "got": "^9.6.0", + "registry-auth-token": "^4.0.0", + "registry-url": "^5.0.0", + "semver": "^6.2.0" + }, + "dependencies": { + "@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==" + }, + "@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "requires": { + "defer-to-connect": "^1.0.1" + } + }, + "cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "requires": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + } + }, + "decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "requires": { + "mimic-response": "^1.0.0" + } + }, + "defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" + }, + "got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "requires": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "dependencies": { + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "requires": { + "pump": "^3.0.0" + } + }, + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==" + } + } + }, + "json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=" + }, + "keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "requires": { + "json-buffer": "3.0.0" + } + }, + "normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==" + }, + "p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==" + }, + "responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "requires": { + "lowercase-keys": "^1.0.0" + }, + "dependencies": { + "lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==" + } + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, "pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", @@ -51858,22 +46226,13 @@ "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", "dev": true, + "peer": true, "requires": { "cyclist": "^1.0.1", "inherits": "^2.0.3", "readable-stream": "^2.1.5" } }, - "param-case": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz", - "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==", - "dev": true, - "requires": { - "dot-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -51888,6 +46247,7 @@ "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", "dev": true, + "peer": true, "requires": { "asn1.js": "^5.2.0", "browserify-aes": "^1.0.0", @@ -51896,44 +46256,6 @@ "safe-buffer": "^5.1.1" } }, - "parse-bmfont-ascii": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/parse-bmfont-ascii/-/parse-bmfont-ascii-1.0.6.tgz", - "integrity": "sha1-Eaw8P/WPfCAgqyJ2kHkQjU36AoU=" - }, - "parse-bmfont-binary": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/parse-bmfont-binary/-/parse-bmfont-binary-1.0.6.tgz", - "integrity": "sha1-0Di0dtPp3Z2x4RoLDlOiJ5K2kAY=" - }, - "parse-bmfont-xml": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/parse-bmfont-xml/-/parse-bmfont-xml-1.1.4.tgz", - "integrity": "sha512-bjnliEOmGv3y1aMEfREMBJ9tfL3WR0i0CKPj61DnSLaoxWR3nLrsQrEbCId/8rF4NyRF0cCqisSVXyQYWM+mCQ==", - "requires": { - "xml-parse-from-string": "^1.0.0", - "xml2js": "^0.4.5" - } - }, - "parse-entities": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz", - "integrity": "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==", - "dev": true, - "requires": { - "character-entities": "^1.0.0", - "character-entities-legacy": "^1.0.0", - "character-reference-invalid": "^1.0.0", - "is-alphanumerical": "^1.0.0", - "is-decimal": "^1.0.0", - "is-hexadecimal": "^1.0.0" - } - }, - "parse-headers": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.3.tgz", - "integrity": "sha512-QhhZ+DCCit2Coi2vmAKbq5RGTRcQUOE2+REgv8vdyu7MnYx2eZztegqtTx99TZ86GTIwqiy3+4nQTWZ2tgmdCA==" - }, "parse-json": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", @@ -51946,27 +46268,20 @@ "lines-and-columns": "^1.1.6" } }, + "parse-link-header": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-link-header/-/parse-link-header-1.0.1.tgz", + "integrity": "sha1-vt/g0hGK64S+deewJUGeyKYRQKc=", + "requires": { + "xtend": "~4.0.1" + } + }, "parse-passwd": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", "dev": true }, - "parse-png": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/parse-png/-/parse-png-2.1.0.tgz", - "integrity": "sha512-Nt/a5SfCLiTnQAjx3fHlqp8hRgTL3z7kTQZzvIMS9uCAepnCyjpdEc6M/sz69WqMBdaDBw9sF1F1UaHROYzGkQ==", - "requires": { - "pngjs": "^3.3.0" - }, - "dependencies": { - "pngjs": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", - "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==" - } - } - }, "parse-svg-path": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/parse-svg-path/-/parse-svg-path-0.1.2.tgz", @@ -51983,16 +46298,6 @@ "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" }, - "pascal-case": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz", - "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==", - "dev": true, - "requires": { - "no-case": "^3.0.4", - "tslib": "^2.0.3" - } - }, "pascalcase": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", @@ -52075,7 +46380,9 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", - "dev": true + "dev": true, + "optional": true, + "peer": true }, "path-exists": { "version": "3.0.0", @@ -52090,31 +46397,24 @@ "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", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, - "path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=", - "dev": true - }, "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==" }, "pbkdf2": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", "dev": true, + "peer": true, "requires": { "create-hash": "^1.1.2", "create-hmac": "^1.1.4", @@ -52123,10 +46423,15 @@ "sha.js": "^2.4.8" } }, - "phin": { - "version": "2.9.3", - "resolved": "https://registry.npmjs.org/phin/-/phin-2.9.3.tgz", - "integrity": "sha512-CzFr90qM24ju5f88quFC/6qohjC144rehe5n6DH900lgXmUe86+xCKc10ev56gRKC4/BkHUoG4uSiQgBiIXwDA==" + "peek-stream": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/peek-stream/-/peek-stream-1.1.3.tgz", + "integrity": "sha512-FhJ+YbOSBb9/rIl2ZeE/QHEsWn7PqNYt8ARAY3kIgNGOk13g9FGyIY6JIl/xB/3TFRVoTv5as0l11weORrTekA==", + "requires": { + "buffer-from": "^1.0.0", + "duplexify": "^3.5.0", + "through2": "^2.0.3" + } }, "picomatch": { "version": "2.3.0", @@ -52161,21 +46466,6 @@ "node-modules-regexp": "^1.0.0" } }, - "pixelmatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/pixelmatch/-/pixelmatch-4.0.2.tgz", - "integrity": "sha1-j0fc7FARtHe2fbA8JDvB8wheiFQ=", - "requires": { - "pngjs": "^3.0.0" - }, - "dependencies": { - "pngjs": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", - "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==" - } - } - }, "pkg-dir": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", @@ -52260,215 +46550,27 @@ "xmldom": "^0.5.0" } }, - "pngjs": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-5.0.0.tgz", - "integrity": "sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==" - }, - "pnp-webpack-plugin": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/pnp-webpack-plugin/-/pnp-webpack-plugin-1.5.0.tgz", - "integrity": "sha512-jd9olUr9D7do+RN8Wspzhpxhgp1n6Vd0NtQ4SFkmIACZoEL1nkyAdW9Ygrinjec0vgDcWjscFQQ1gDW8rsfKTg==", - "dev": true, - "requires": { - "ts-pnp": "^1.1.2" - } - }, - "polished": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/polished/-/polished-4.1.3.tgz", - "integrity": "sha512-ocPAcVBUOryJEKe0z2KLd1l9EBa1r5mSwlKpExmrLzsnIzJo4axsoU9O2BjOTkDGDT4mZ0WFE5XKTlR3nLnZOA==", - "dev": true, - "requires": { - "@babel/runtime": "^7.14.0" - } - }, - "popper.js": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz", - "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==", - "dev": true + "pluralize": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", + "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==" }, "posix-character-classes": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" }, - "postcss": { - "version": "7.0.36", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.36.tgz", - "integrity": "sha512-BebJSIUMwJHRH0HAQoxN4u1CN86glsrwsW0q7T+/m44eXOUAxSNdHRkNZPYz5vVUbg17hFgOQDE7fZk7li3pZw==", - "dev": true, - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - }, - "dependencies": { - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } - } - }, - "postcss-flexbugs-fixes": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-4.2.1.tgz", - "integrity": "sha512-9SiofaZ9CWpQWxOwRh1b/r85KD5y7GgvsNt1056k6OYLvWUun0czCvogfJgylC22uJTwW1KzY3Gz65NZRlvoiQ==", - "dev": true, - "requires": { - "postcss": "^7.0.26" - } - }, - "postcss-load-config": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.1.2.tgz", - "integrity": "sha512-/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw==", - "dev": true, - "requires": { - "cosmiconfig": "^5.0.0", - "import-cwd": "^2.0.0" - }, - "dependencies": { - "cosmiconfig": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", - "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", - "dev": true, - "requires": { - "import-fresh": "^2.0.0", - "is-directory": "^0.3.1", - "js-yaml": "^3.13.1", - "parse-json": "^4.0.0" - } - }, - "import-fresh": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz", - "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=", - "dev": true, - "requires": { - "caller-path": "^2.0.0", - "resolve-from": "^3.0.0" - } - }, - "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", - "dev": true, - "requires": { - "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" - } - }, - "resolve-from": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", - "dev": true - } - } - }, - "postcss-loader": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-3.0.0.tgz", - "integrity": "sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==", - "dev": true, - "requires": { - "loader-utils": "^1.1.0", - "postcss": "^7.0.0", - "postcss-load-config": "^2.0.0", - "schema-utils": "^1.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - } - } - }, - "postcss-modules-extract-imports": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", - "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", - "dev": true, - "requires": { - "postcss": "^7.0.5" - } - }, - "postcss-modules-local-by-default": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", - "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", - "dev": true, - "requires": { - "icss-utils": "^4.1.1", - "postcss": "^7.0.32", - "postcss-selector-parser": "^6.0.2", - "postcss-value-parser": "^4.1.0" - } - }, - "postcss-modules-scope": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", - "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", - "dev": true, - "requires": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0" - } - }, - "postcss-modules-values": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", - "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", - "dev": true, - "requires": { - "icss-utils": "^4.0.0", - "postcss": "^7.0.6" - } - }, - "postcss-selector-parser": { - "version": "6.0.6", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz", - "integrity": "sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==", - "dev": true, - "requires": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - } - }, - "postcss-value-parser": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", - "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==", - "dev": true - }, "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 }, + "prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=" + }, "prettier": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.3.2.tgz", @@ -52484,15 +46586,10 @@ "fast-diff": "^1.1.2" } }, - "pretty-error": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.2.tgz", - "integrity": "sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==", - "dev": true, - "requires": { - "lodash": "^4.17.20", - "renderkid": "^2.0.4" - } + "pretty-bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz", + "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==" }, "pretty-format": { "version": "26.6.2", @@ -52520,22 +46617,12 @@ } } }, - "pretty-hrtime": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz", - "integrity": "sha1-t+PqQkNaTJsnWdmeDyAesZWALuE=", - "dev": true - }, - "prismjs": { - "version": "1.24.1", - "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.24.1.tgz", - "integrity": "sha512-mNPsedLuk90RVJioIky8ANZEwYm5w9LcvCXrxHlwf4fNVSn8jEipMybMkWUyyF0JhnC+C4VcOVSBuHRKs1L5Ow==", - "dev": true - }, "process": { "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "dev": true, + "peer": true }, "process-nextick-args": { "version": "2.0.1", @@ -52555,11 +46642,38 @@ "asap": "~2.0.6" } }, + "promise-deferred": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/promise-deferred/-/promise-deferred-2.0.3.tgz", + "integrity": "sha512-n10XaoznCzLfyPFOlEE8iurezHpxrYzyjgq/1eW9Wk1gJwur/N7BdBmjJYJpqMeMcXK4wEbzo2EvZQcqjYcKUQ==", + "requires": { + "promise": "^7.3.1" + }, + "dependencies": { + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "requires": { + "asap": "~2.0.3" + } + } + } + }, + "promise-fs": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/promise-fs/-/promise-fs-2.1.1.tgz", + "integrity": "sha512-43p7e4QzAQ3w6eyN0+gbBL7jXiZFWLWYITg9wIObqkBySu/a5K1EDcQ/S6UyB/bmiZWDA4NjTbcopKLTaKcGSw==", + "requires": { + "@octetstream/promisify": "2.0.2" + } + }, "promise-inflight": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", - "dev": true + "dev": true, + "peer": true }, "promise-polyfill": { "version": "6.1.0", @@ -52567,29 +46681,18 @@ "integrity": "sha1-36lpQ+qcEh/KTem1hoyznTRy4Fc=", "dev": true }, - "promise.allsettled": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/promise.allsettled/-/promise.allsettled-1.0.4.tgz", - "integrity": "sha512-o73CbvQh/OnPFShxHcHxk0baXR2a1m4ozb85ha0H14VEoi/EJJLa9mnPfEWJx9RjA9MLfhdjZ8I6HhWtBa64Ag==", - "dev": true, - "requires": { - "array.prototype.map": "^1.0.3", - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2", - "get-intrinsic": "^1.0.2", - "iterate-value": "^1.0.2" - } + "promise-queue": { + "version": "2.2.5", + "resolved": "https://registry.npmjs.org/promise-queue/-/promise-queue-2.2.5.tgz", + "integrity": "sha1-L29ffA9tCBCelnZZx5uIqe1ek7Q=" }, - "promise.prototype.finally": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/promise.prototype.finally/-/promise.prototype.finally-3.1.2.tgz", - "integrity": "sha512-A2HuJWl2opDH0EafgdjwEw7HysI8ff/n4lW4QEVBCUXFk9QeGecBWv0Deph0UmLe3tTNYegz8MOjsVuE6SMoJA==", - "dev": true, + "promiseback": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/promiseback/-/promiseback-2.0.3.tgz", + "integrity": "sha512-VZXdCwS0ppVNTIRfNsCvVwJAaP2b+pxQF7lM8DMWfmpNWyTxB6O5YNbzs+8z0ki/KIBHKHk308NTIl4kJUem3w==", "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.0", - "function-bind": "^1.1.1" + "is-callable": "^1.1.5", + "promise-deferred": "^2.0.3" } }, "prompts": { @@ -52627,25 +46730,6 @@ "signal-exit": "^3.0.2" } }, - "property-information": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/property-information/-/property-information-5.6.0.tgz", - "integrity": "sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==", - "dev": true, - "requires": { - "xtend": "^4.0.0" - } - }, - "proxy-addr": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", - "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", - "dev": true, - "requires": { - "forwarded": "0.2.0", - "ipaddr.js": "1.9.1" - } - }, "proxy-from-env": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", @@ -52660,8 +46744,7 @@ "pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", - "dev": true + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" }, "psl": { "version": "1.8.0", @@ -52674,6 +46757,7 @@ "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", "dev": true, + "peer": true, "requires": { "bn.js": "^4.1.0", "browserify-rsa": "^4.0.0", @@ -52687,7 +46771,8 @@ "version": "4.12.0", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "dev": true + "dev": true, + "peer": true } } }, @@ -52704,7 +46789,6 @@ "version": "1.5.1", "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", - "dev": true, "requires": { "duplexify": "^3.6.0", "inherits": "^2.0.3", @@ -52715,7 +46799,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", - "dev": true, "requires": { "end-of-stream": "^1.1.0", "once": "^1.3.1" @@ -52729,37 +46812,50 @@ "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", "dev": true }, - "qs": { - "version": "6.10.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz", - "integrity": "sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==", - "dev": true, + "pupa": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", + "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", "requires": { - "side-channel": "^1.0.4" + "escape-goat": "^2.0.0" } }, "querystring": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", - "dev": true + "dev": true, + "peer": true }, "querystring-es3": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", - "dev": true + "dev": true, + "peer": true }, "querystringify": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==" }, + "queue": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/queue/-/queue-6.0.2.tgz", + "integrity": "sha512-iHZWu+q3IdFZFX36ro/lKBkSvfkztY5Y7HMiPlOUjhupPcG2JMfst2KKEpu5XndviX/3UhFbRngUPNKtgvtZiA==", + "requires": { + "inherits": "~2.0.3" + } + }, "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==" + }, + "quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==" }, "r2": { "version": "2.0.1", @@ -52771,17 +46867,12 @@ "typedarray-to-buffer": "^3.1.2" } }, - "ramda": { - "version": "0.21.0", - "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.21.0.tgz", - "integrity": "sha1-oAGr7bP/YQd9T/HVd9RN536NCjU=", - "dev": true - }, "randombytes": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", "dev": true, + "peer": true, "requires": { "safe-buffer": "^5.1.0" } @@ -52791,6 +46882,7 @@ "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", "dev": true, + "peer": true, "requires": { "randombytes": "^2.0.5", "safe-buffer": "^5.1.0" @@ -52801,26 +46893,22 @@ "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" }, - "raw-body": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", - "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", - "dev": true, + "rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", "requires": { - "bytes": "3.1.0", - "http-errors": "1.7.2", - "iconv-lite": "0.4.24", - "unpipe": "1.0.0" - } - }, - "raw-loader": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-3.1.0.tgz", - "integrity": "sha512-lzUVMuJ06HF4rYveaz9Tv0WRlUMxJ0Y1hgSkkgg+50iEdaI0TthyEDe08KIHb0XsF6rn8WYTqPCaGTZg3sX+qA==", - "dev": true, - "requires": { - "loader-utils": "^1.1.0", - "schema-utils": "^2.0.1" + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "dependencies": { + "strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" + } } }, "react": { @@ -52832,469 +46920,6 @@ "object-assign": "^4.1.1" } }, - "react-clientside-effect": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/react-clientside-effect/-/react-clientside-effect-1.2.5.tgz", - "integrity": "sha512-2bL8qFW1TGBHozGGbVeyvnggRpMjibeZM2536AKNENLECutp2yfs44IL8Hmpn8qjFQ2K7A9PnYf3vc7aQq/cPA==", - "dev": true, - "requires": { - "@babel/runtime": "^7.12.13" - } - }, - "react-colorful": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/react-colorful/-/react-colorful-5.2.3.tgz", - "integrity": "sha512-lAge4syxosZg9SX8fJiwOLd9ZJSW3poPBtypnz1aMiFoHsRnK5G3+INGGx9DGtsrso4h5uFYbiFpjAfWyK3Kag==", - "dev": true, - "requires": {} - }, - "react-dev-utils": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-9.1.0.tgz", - "integrity": "sha512-X2KYF/lIGyGwP/F/oXgGDF24nxDA2KC4b7AFto+eqzc/t838gpSGiaU8trTqHXOohuLxxc5qi1eDzsl9ucPDpg==", - "dev": true, - "requires": { - "@babel/code-frame": "7.5.5", - "address": "1.1.2", - "browserslist": "4.7.0", - "chalk": "2.4.2", - "cross-spawn": "6.0.5", - "detect-port-alt": "1.1.6", - "escape-string-regexp": "1.0.5", - "filesize": "3.6.1", - "find-up": "3.0.0", - "fork-ts-checker-webpack-plugin": "1.5.0", - "global-modules": "2.0.0", - "globby": "8.0.2", - "gzip-size": "5.1.1", - "immer": "1.10.0", - "inquirer": "6.5.0", - "is-root": "2.1.0", - "loader-utils": "1.2.3", - "open": "^6.3.0", - "pkg-up": "2.0.0", - "react-error-overlay": "^6.0.3", - "recursive-readdir": "2.2.2", - "shell-quote": "1.7.2", - "sockjs-client": "1.4.0", - "strip-ansi": "5.2.0", - "text-table": "0.2.0" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.5.5.tgz", - "integrity": "sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw==", - "dev": true, - "requires": { - "@babel/highlight": "^7.0.0" - } - }, - "@nodelib/fs.stat": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz", - "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==", - "dev": true - }, - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", - "dev": true, - "requires": { - "array-uniq": "^1.0.1" - } - }, - "browserslist": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.7.0.tgz", - "integrity": "sha512-9rGNDtnj+HaahxiVV38Gn8n8Lr8REKsel68v1sPFfIGEK6uSXTY3h9acgiT1dZVtOOUtifo/Dn8daDQ5dUgVsA==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30000989", - "electron-to-chromium": "^1.3.247", - "node-releases": "^1.1.29" - } - }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", - "dev": true, - "requires": { - "is-descriptor": "^1.0.2", - "isobject": "^3.0.1" - } - }, - "dir-glob": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", - "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", - "dev": true, - "requires": { - "arrify": "^1.0.1", - "path-type": "^3.0.0" - } - }, - "emojis-list": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", - "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", - "dev": true - }, - "extend-shallow": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", - "dev": true, - "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - } - }, - "fast-glob": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", - "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", - "dev": true, - "requires": { - "@mrmlnc/readdir-enhanced": "^2.2.1", - "@nodelib/fs.stat": "^1.1.2", - "glob-parent": "^3.1.0", - "is-glob": "^4.0.0", - "merge2": "^1.2.3", - "micromatch": "^3.1.10" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", - "dev": true, - "requires": { - "is-glob": "^3.1.0", - "path-dirname": "^1.0.0" - }, - "dependencies": { - "is-glob": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", - "dev": true, - "requires": { - "is-extglob": "^2.1.0" - } - } - } - }, - "globby": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-8.0.2.tgz", - "integrity": "sha512-yTzMmKygLp8RUpG1Ymu2VXPSJQZjNAZPD4ywgYEaG7e4tBJeUQBO8OpXrf1RCNcEs5alsoJYPAMiIHP0cmeC7w==", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "dir-glob": "2.0.0", - "fast-glob": "^2.0.2", - "glob": "^7.1.2", - "ignore": "^3.3.5", - "pify": "^3.0.0", - "slash": "^1.0.0" - } - }, - "ignore": { - "version": "3.3.10", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", - "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", - "dev": true - }, - "inquirer": { - "version": "6.5.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.5.0.tgz", - "integrity": "sha512-scfHejeG/lVZSpvCXpsB4j/wQNPM5JC8kiElOI0OUTwmc1RTpXr4H32/HOlQHcZiYl2z2VElwuCVDRG8vFmbnA==", - "dev": true, - "requires": { - "ansi-escapes": "^3.2.0", - "chalk": "^2.4.2", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^3.0.3", - "figures": "^2.0.0", - "lodash": "^4.17.12", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rxjs": "^6.4.0", - "string-width": "^2.1.0", - "strip-ansi": "^5.1.0", - "through": "^2.3.6" - } - }, - "is-accessor-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", - "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-data-descriptor": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", - "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", - "dev": true, - "requires": { - "kind-of": "^6.0.0" - } - }, - "is-descriptor": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", - "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^1.0.0", - "is-data-descriptor": "^1.0.0", - "kind-of": "^6.0.2" - } - }, - "is-extendable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", - "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", - "dev": true, - "requires": { - "is-plain-object": "^2.0.4" - } - }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true - }, - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", - "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^2.0.0", - "json5": "^1.0.1" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, - "requires": { - "arr-diff": "^4.0.0", - "array-unique": "^0.3.2", - "braces": "^2.3.1", - "define-property": "^2.0.2", - "extend-shallow": "^3.0.2", - "extglob": "^2.0.4", - "fragment-cache": "^0.2.1", - "kind-of": "^6.0.2", - "nanomatch": "^1.2.9", - "object.pick": "^1.3.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.2" - } - }, - "open": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/open/-/open-6.4.0.tgz", - "integrity": "sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==", - "dev": true, - "requires": { - "is-wsl": "^1.1.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", - "dev": true - }, - "path-key": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true - }, - "path-type": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", - "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", - "dev": true, - "requires": { - "pify": "^3.0.0" - } - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - }, - "pkg-up": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz", - "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", - "dev": true, - "requires": { - "find-up": "^2.1.0" - }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.0" - } - } - } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", - "dev": true - }, - "slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", - "dev": true - }, - "string-width": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", - "dev": true, - "requires": { - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^4.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true - }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, - "requires": { - "ansi-regex": "^3.0.0" - } - } - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } - } - } - }, "react-devtools-core": { "version": "4.13.5", "resolved": "https://registry.npmjs.org/react-devtools-core/-/react-devtools-core-4.13.5.tgz", @@ -53304,109 +46929,20 @@ "ws": "^7" } }, - "react-dom": { - "version": "16.14.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.14.0.tgz", - "integrity": "sha512-1gCeQXDLoIqMgqD3IO2Ah9bnf0w9kzhwN5q4FGnHZ67hBm9yePzB5JJAIQCc8x3pFnNlwFq4RidZggNAAkzWWw==", - "dev": true, - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2", - "scheduler": "^0.19.1" - } - }, - "react-draggable": { - "version": "4.4.3", - "resolved": "https://registry.npmjs.org/react-draggable/-/react-draggable-4.4.3.tgz", - "integrity": "sha512-jV4TE59MBuWm7gb6Ns3Q1mxX8Azffb7oTtDtBgFkxRvhDp38YAARmRplrj0+XGkhOJB5XziArX+4HUUABtyZ0w==", - "dev": true, - "requires": { - "classnames": "^2.2.5", - "prop-types": "^15.6.0" - } - }, - "react-error-overlay": { - "version": "6.0.9", - "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.9.tgz", - "integrity": "sha512-nQTTcUu+ATDbrSD1BZHr5kgSD4oF8OFjxun8uAaL8RwPBacGBNPf/yAuVVdx17N8XNzRDMrZ9XcKZHCjPW+9ew==", - "dev": true - }, - "react-fast-compare": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.0.tgz", - "integrity": "sha512-rtGImPZ0YyLrscKI9xTpV8psd6I8VAtjKCzQDlzyDvqJA8XOW78TXYQwNRNd8g8JZnDu8q9Fu/1v4HPAVwVdHA==", - "dev": true - }, - "react-focus-lock": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/react-focus-lock/-/react-focus-lock-2.5.1.tgz", - "integrity": "sha512-gOToRZKVEymGEjFaTRUKgJsdYQrNosoiK7yZnXnnd8bYew4vMzk3Rxb0Q4nyrGwsFuUmgQiSAulQirA0J+v4hA==", - "dev": true, - "requires": { - "@babel/runtime": "^7.0.0", - "focus-lock": "^0.9.1", - "prop-types": "^15.6.2", - "react-clientside-effect": "^1.2.2", - "use-callback-ref": "^1.2.1", - "use-sidecar": "^1.0.1" - } - }, - "react-helmet-async": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/react-helmet-async/-/react-helmet-async-1.0.9.tgz", - "integrity": "sha512-N+iUlo9WR3/u9qGMmP4jiYfaD6pe9IvDTapZLFJz2D3xlTlCM1Bzy4Ab3g72Nbajo/0ZyW+W9hdz8Hbe4l97pQ==", - "dev": true, - "requires": { - "@babel/runtime": "^7.12.5", - "invariant": "^2.2.4", - "prop-types": "^15.7.2", - "react-fast-compare": "^3.2.0", - "shallowequal": "^1.1.0" - } - }, - "react-hotkeys": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/react-hotkeys/-/react-hotkeys-2.0.0.tgz", - "integrity": "sha512-3n3OU8vLX/pfcJrR3xJ1zlww6KS1kEJt0Whxc4FiGV+MJrQ1mYSYI3qS/11d2MJDFm8IhOXMTFQirfu6AVOF6Q==", - "dev": true, - "requires": { - "prop-types": "^15.6.1" - } - }, - "react-input-autosize": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/react-input-autosize/-/react-input-autosize-3.0.0.tgz", - "integrity": "sha512-nL9uS7jEs/zu8sqwFE5MAPx6pPkNAriACQ2rGLlqmKr2sPGtN7TXTyDdQt4lbNXVx7Uzadb40x8qotIuru6Rhg==", - "dev": true, - "requires": { - "prop-types": "^15.5.8" - } - }, "react-intl": { - "version": "5.17.7", - "resolved": "https://registry.npmjs.org/react-intl/-/react-intl-5.17.7.tgz", - "integrity": "sha512-j4/gp7HIfnOnXEp38qtv0PWN9X6zthWHIhWEaAGoOa6ywQlT9o6/gB0D72gwohyYBRVW1hH0pmht6KsRZBfEww==", + "version": "5.20.4", + "resolved": "https://registry.npmjs.org/react-intl/-/react-intl-5.20.4.tgz", + "integrity": "sha512-lYUL8hWkRHbpVtedGSjpQ1kK/x2AAGZHGgOHsU0SFDufHo2aS7xdvRcaxXD3PMVDuh53KcU+vTaun+bcrwKpbA==", "requires": { - "@formatjs/ecma402-abstract": "1.8.0", - "@formatjs/icu-messageformat-parser": "2.0.2", - "@formatjs/intl": "1.10.8", - "@formatjs/intl-displaynames": "5.1.0", - "@formatjs/intl-listformat": "6.1.0", + "@formatjs/ecma402-abstract": "1.9.4", + "@formatjs/icu-messageformat-parser": "2.0.7", + "@formatjs/intl": "1.13.2", + "@formatjs/intl-displaynames": "5.1.6", + "@formatjs/intl-listformat": "6.2.6", "@types/hoist-non-react-statics": "^3.3.1", "hoist-non-react-statics": "^3.3.2", - "intl-messageformat": "9.6.14", + "intl-messageformat": "9.7.1", "tslib": "^2.1.0" - }, - "dependencies": { - "@formatjs/ecma402-abstract": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.8.0.tgz", - "integrity": "sha512-X+nxZcIQr0YfYNtw1ZkHjN3YSyi0fEmdAJqRzk24KwNvqLv7GmVfw70mf7ADnwOvkcrSaAdx24GfAqckGTv9ww==", - "requires": { - "tslib": "^2.1.0" - } - } } }, "react-is": { @@ -53417,8 +46953,7 @@ "react-lifecycles-compat": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz", - "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==", - "dev": true + "integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==" }, "react-native": { "version": "0.64.2", @@ -53483,15 +47018,6 @@ "resolved": "https://registry.npmjs.org/react-native-android-open-settings/-/react-native-android-open-settings-1.3.0.tgz", "integrity": "sha512-h4FTWRtTLRVNS7RK4Bg2gAXe8G5bFZL8Jtmfk2rG2a/N/wJR+v1rAY2BxRkC48lQTqwQCIAQRbWgLVkJ8XmaLQ==" }, - "react-native-animatable": { - "version": "1.3.3", - "resolved": "https://registry.npmjs.org/react-native-animatable/-/react-native-animatable-1.3.3.tgz", - "integrity": "sha512-2ckIxZQAsvWn25Ho+DK3d1mXIgj7tITkrS4pYDvx96WyOttSvzzFeQnM2od0+FUMzILbdHDsDEqZvnz1DYNQ1w==", - "dev": true, - "requires": { - "prop-types": "^15.7.2" - } - }, "react-native-button": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/react-native-button/-/react-native-button-3.0.1.tgz", @@ -53501,9 +47027,9 @@ } }, "react-native-calendars": { - "version": "1.1263.0", - "resolved": "https://registry.npmjs.org/react-native-calendars/-/react-native-calendars-1.1263.0.tgz", - "integrity": "sha512-O9Pl9YeV3SVeXoXnuxgf4itl+hhJceLu4cCvxX+rcI/2FgIDGD30R/cblxGmSXznbLGj9SZtuJDXmG9Bnd7TEA==", + "version": "1.1264.0", + "resolved": "https://registry.npmjs.org/react-native-calendars/-/react-native-calendars-1.1264.0.tgz", + "integrity": "sha512-MX9Dy9xDtdmvGEA9rQWas1NVxvC2T6tEYrx7NvX8w0pWpYqsq5sVS4N+Y/vHBmcbiykStgrHTcWCP1bBLee3yg==", "requires": { "hoist-non-react-statics": "^3.3.1", "immutable": "^4.0.0-rc.12", @@ -53552,18 +47078,18 @@ "requires": {} }, "react-native-dotenv": { - "version": "2.5.5", - "resolved": "https://registry.npmjs.org/react-native-dotenv/-/react-native-dotenv-2.5.5.tgz", - "integrity": "sha512-ODaFNUX52ZYfBLJ8WSEm87nv+HrwxeEoZchuwsPyEWwsC4ARRhklfsKTf1dg09UpPS31zx5IUV431fLvcepCsA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/react-native-dotenv/-/react-native-dotenv-3.0.0.tgz", + "integrity": "sha512-qVw1Vjmg5HMHf8FK+9ta5NdQKcBi1PBnaqumBSYK+8TTbXtxhr8TEod2hLvEVCh4g8V5prjsk4yP4M3cy7Q1Rg==", "dev": true, "requires": { - "dotenv": "^8.0.0" + "dotenv": "^10.0.0" }, "dependencies": { "dotenv": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz", - "integrity": "sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==", + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-10.0.0.tgz", + "integrity": "sha512-rlBi9d8jpv9Sf1klPjNfFAuWDjKLwTIJJ/VxtoTwIR6hnZxcEOQCZg2oIL3MWBYw5GpUDKOEnND7LXTbIpQ03Q==", "dev": true } } @@ -53590,9 +47116,9 @@ "requires": {} }, "react-native-fast-image": { - "version": "8.3.4", - "resolved": "https://registry.npmjs.org/react-native-fast-image/-/react-native-fast-image-8.3.4.tgz", - "integrity": "sha512-LpzAdjUphihUpVEBn5fEv5AILe55rHav0YiZroPZ1rumKDhAl4u2cG01ku2Pb7l8sayjTsNu7FuURAlXUUDsow==", + "version": "8.3.6", + "resolved": "https://registry.npmjs.org/react-native-fast-image/-/react-native-fast-image-8.3.6.tgz", + "integrity": "sha512-vjecBJXg9mCXGGfoUZ94SBEP1SYOkRN/w9SORH7D86PIQUVIqGbxW/Di3N79GI8Wsbay8qI7IWVHK7x26kIHbw==", "requires": {} }, "react-native-file-viewer": { @@ -53663,44 +47189,16 @@ "integrity": "sha512-+uyz2/b0vyLq19fcb7r1qU1gqmzbp3aC6EMTvOVXwfBuiN+aJXR/fDdFOJJ8D7+bLccKeuS2zBDrazh+ZayX/g==", "requires": {} }, - "react-native-modal": { - "version": "11.10.0", - "resolved": "https://registry.npmjs.org/react-native-modal/-/react-native-modal-11.10.0.tgz", - "integrity": "sha512-syRYDJYSh16bR37R5EKU9T/wC+5bEOfF17IUqf5URdhbEDd+hxyMInC++l45E8oI+MtdOaEp9yAws5xDqk8dnA==", - "dev": true, - "requires": { - "prop-types": "^15.6.2", - "react-native-animatable": "1.3.3" - } - }, - "react-native-modal-datetime-picker": { - "version": "7.6.1", - "resolved": "https://registry.npmjs.org/react-native-modal-datetime-picker/-/react-native-modal-datetime-picker-7.6.1.tgz", - "integrity": "sha512-Ovq0p20Tbw6uWGV0VIDcCQ5qTaHxC9gEcYmB2a4fD1ksCSwCil9RJBEhC7VirvplvAGCKOKs3bblaKFmhiOBkg==", - "dev": true, - "requires": { - "prop-types": "^15.7.2", - "react-native-modal": "^11.0.2" - } - }, - "react-native-modal-selector": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/react-native-modal-selector/-/react-native-modal-selector-2.0.3.tgz", - "integrity": "sha512-d1ejtVi40p34p3eDC55r93Qb1UWUq2oSuIU+GRBhbrcwNcxWbstRAU8Him2BYbns5g/jzyeOQOJzyEnKCMniBw==", - "dev": true, - "requires": { - "prop-types": "^15.5.10" - } - }, "react-native-navigation": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/react-native-navigation/-/react-native-navigation-7.13.0.tgz", - "integrity": "sha512-/mdNuTlz9YVplJRB7Rv3g5cDgHCtw4RyG6ATdvrIJvMJOCU57ivCHuZkZDI/YQv7Txm48XD/EUkNahFFUATFZg==", + "version": "7.17.1", + "resolved": "https://registry.npmjs.org/react-native-navigation/-/react-native-navigation-7.17.1.tgz", + "integrity": "sha512-y2RWzjgoNq/8RkkRAeI5m/3x8QQCxm8R+4dWPnD96tb9wjVbFhz995L/cGF8o0+DwtBV5AutGOsl2CovV7Mvgg==", "requires": { "hoist-non-react-statics": "3.x.x", "lodash": "4.17.x", "prop-types": "15.x.x", "react-lifecycles-compat": "2.0.0", + "remx": "3.x.x", "tslib": "1.9.3" }, "dependencies": { @@ -53723,9 +47221,9 @@ "requires": {} }, "react-native-permissions": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/react-native-permissions/-/react-native-permissions-3.0.4.tgz", - "integrity": "sha512-GMd0l0TA/qupidGFfKAVNaboewQkJSW+l3ndwv1cu+tBGI+TRfJdMjg8Q714wn9roZlXsZ3z407qT2xPdQmGdg==", + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/react-native-permissions/-/react-native-permissions-3.0.5.tgz", + "integrity": "sha512-hcvLtHhTyOTXC+CCv79d4Qtdnj6PGuY5Ms0fhW8V6Et1T/mPvzO6++Du4jwEv/oHZ62qMWKUDq0/Tsh63QHuyQ==", "requires": {} }, "react-native-ratings": { @@ -53748,9 +47246,9 @@ } }, "react-native-redash": { - "version": "16.0.11", - "resolved": "https://registry.npmjs.org/react-native-redash/-/react-native-redash-16.0.11.tgz", - "integrity": "sha512-9yTpeabkAoWASzmhEkynNh1wDTrLVtbE+x9dOV1DI23vRa7k1HI+Y1jOUNOPyRG2ddgHampNq9iHtsLnkK4mtw==", + "version": "16.1.1", + "resolved": "https://registry.npmjs.org/react-native-redash/-/react-native-redash-16.1.1.tgz", + "integrity": "sha512-pD3GMNqRz/5bUnX0ni4MMOBlVwH2dJnd7u6M80VqYGI87IfcuP6Sn1z171r0nUUeYvJ7blJQs0OKKmTsJIbWew==", "requires": { "abs-svg-path": "^0.1.1", "normalize-svg-path": "^1.0.1", @@ -53764,9 +47262,9 @@ "requires": {} }, "react-native-share": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/react-native-share/-/react-native-share-6.2.1.tgz", - "integrity": "sha512-LtT29le01c3k/1sWoumZDyAxigq/JrW4skv8Ri7eySgfIeXrjgnkk1SSR3bt4NrRO74knVngPwtb5xv/UCPP3w==" + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/react-native-share/-/react-native-share-6.2.3.tgz", + "integrity": "sha512-dVWCQLPF3B64/XNuCjQx/hnq8Hz+llQ17srrsO3QdguChi1FRnfVfv2wcfr3hgL8whEWCz9CyDDvbqsmhUagDQ==" }, "react-native-size-matters": { "version": "0.3.1", @@ -53884,30 +47382,21 @@ "integrity": "sha512-Ns7Bn9H/Tyw278+5SQx9oAblDZ7JixyzeOczcBK8dipQk2pD7Djkcfnf1nB/8RErAmMLL9iXgW0QHqiII8AhKw==" }, "react-native-unimodules": { - "version": "0.13.3", - "resolved": "https://registry.npmjs.org/react-native-unimodules/-/react-native-unimodules-0.13.3.tgz", - "integrity": "sha512-fjbNbAcvJHF8Ywqe77oveRW1WfaAKCQGV4a3Fxgpai17oNHq1LFwwKw0crFo0k7Njm5u7kCMVNbm9ZILNBfABQ==", + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/react-native-unimodules/-/react-native-unimodules-0.14.5.tgz", + "integrity": "sha512-AfgbkFUHIkpCytxd2UsNbE0cAmzKpgiQ+ma5iGlzK7fZelMJIv7XEuqFfKT4CZhYgetg5ZHf+ZNr140B/N1RgA==", "requires": { - "@unimodules/core": "~7.1.0", - "@unimodules/react-native-adapter": "~6.2.2", + "@unimodules/core": "~7.1.1", + "@unimodules/react-native-adapter": "~6.3.4", "chalk": "^2.4.2", - "expo-asset": "~8.3.1", - "expo-constants": "~10.1.3", - "expo-file-system": "~11.0.2", - "expo-image-loader": "~2.1.1", - "expo-permissions": "~12.0.1", + "expo-asset": "~8.3.2", + "expo-constants": "~11.0.1", + "expo-file-system": "~11.1.3", + "expo-image-loader": "~2.2.0", + "expo-modules-core": "~0.2.0", "find-up": "~5.0.0", - "unimodules-app-loader": "~2.1.0", - "unimodules-barcode-scanner-interface": "~6.1.0", - "unimodules-camera-interface": "~6.1.0", - "unimodules-constants-interface": "~6.1.0", - "unimodules-face-detector-interface": "~6.1.0", - "unimodules-file-system-interface": "~6.1.0", - "unimodules-font-interface": "~6.1.0", - "unimodules-image-loader-interface": "~6.1.0", - "unimodules-permissions-interface": "~6.1.0", - "unimodules-sensors-interface": "~6.1.0", - "unimodules-task-manager-interface": "~6.1.0" + "unimodules-app-loader": "~2.2.0", + "unimodules-task-manager-interface": "~6.2.0" }, "dependencies": { "find-up": { @@ -53976,9 +47465,9 @@ } }, "react-native-webview": { - "version": "11.6.4", - "resolved": "https://registry.npmjs.org/react-native-webview/-/react-native-webview-11.6.4.tgz", - "integrity": "sha512-ahW9KL/iBooDRdQwBgPEWOl5Awjwvmo5FtV83WzbgUpQxDJ+ZRzZDpbmwcjLtd6R67yWg6dk1inqKQTrmkWiXQ==", + "version": "11.6.5", + "resolved": "https://registry.npmjs.org/react-native-webview/-/react-native-webview-11.6.5.tgz", + "integrity": "sha512-5U+hI8snkCrFeDy+bUTszwhzcJIenaaOy3ubhY77HZq7R0pFIZzRYWkT0YXe1ymRYW9mSU96nr6S0AVDk8qkMw==", "requires": { "escape-string-regexp": "2.0.0", "invariant": "2.2.4" @@ -54053,48 +47542,11 @@ "prop-types": "^15.5.0" } }, - "react-popper": { - "version": "2.2.5", - "resolved": "https://registry.npmjs.org/react-popper/-/react-popper-2.2.5.tgz", - "integrity": "sha512-kxGkS80eQGtLl18+uig1UIf9MKixFSyPxglsgLBxlYnyDf65BiY9B3nZSc6C9XUNDgStROB0fMQlTEz1KxGddw==", - "dev": true, - "requires": { - "react-fast-compare": "^3.0.1", - "warning": "^4.0.2" - } - }, - "react-popper-tooltip": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/react-popper-tooltip/-/react-popper-tooltip-3.1.1.tgz", - "integrity": "sha512-EnERAnnKRptQBJyaee5GJScWNUKQPDD2ywvzZyUjst/wj5U64C8/CnSYLNEmP2hG0IJ3ZhtDxE8oDN+KOyavXQ==", - "dev": true, - "requires": { - "@babel/runtime": "^7.12.5", - "@popperjs/core": "^2.5.4", - "react-popper": "^2.2.4" - } - }, "react-refresh": { "version": "0.4.3", "resolved": "https://registry.npmjs.org/react-refresh/-/react-refresh-0.4.3.tgz", "integrity": "sha512-Hwln1VNuGl/6bVwnd0Xdn1e84gT/8T9aYNL+HAKDArLCS7LWjwr7StE30IEYbIkx0Vi3vs+coQxe+SQDbGbbpA==" }, - "react-select": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/react-select/-/react-select-3.2.0.tgz", - "integrity": "sha512-B/q3TnCZXEKItO0fFN/I0tWOX3WJvi/X2wtdffmwSQVRwg5BpValScTO1vdic9AxlUgmeSzib2hAZAwIUQUZGQ==", - "dev": true, - "requires": { - "@babel/runtime": "^7.4.4", - "@emotion/cache": "^10.0.9", - "@emotion/core": "^10.0.9", - "@emotion/css": "^10.0.9", - "memoize-one": "^5.0.0", - "prop-types": "^15.6.0", - "react-input-autosize": "^3.0.0", - "react-transition-group": "^4.3.0" - } - }, "react-shallow-renderer": { "version": "16.14.1", "resolved": "https://registry.npmjs.org/react-shallow-renderer/-/react-shallow-renderer-16.14.1.tgz", @@ -54105,19 +47557,6 @@ "react-is": "^16.12.0 || ^17.0.0" } }, - "react-syntax-highlighter": { - "version": "13.5.3", - "resolved": "https://registry.npmjs.org/react-syntax-highlighter/-/react-syntax-highlighter-13.5.3.tgz", - "integrity": "sha512-crPaF+QGPeHNIblxxCdf2Lg936NAHKhNhuMzRL3F9ct6aYXL3NcZtCL0Rms9+qVo6Y1EQLdXGypBNSbPL/r+qg==", - "dev": true, - "requires": { - "@babel/runtime": "^7.3.1", - "highlight.js": "^10.1.1", - "lowlight": "^1.14.0", - "prismjs": "^1.21.0", - "refractor": "^3.1.0" - } - }, "react-test-renderer": { "version": "17.0.2", "resolved": "https://registry.npmjs.org/react-test-renderer/-/react-test-renderer-17.0.2.tgz", @@ -54148,29 +47587,6 @@ } } }, - "react-textarea-autosize": { - "version": "8.3.3", - "resolved": "https://registry.npmjs.org/react-textarea-autosize/-/react-textarea-autosize-8.3.3.tgz", - "integrity": "sha512-2XlHXK2TDxS6vbQaoPbMOfQ8GK7+irc2fVK6QFIcC8GOnH3zI/v481n+j1L0WaPVvKxwesnY93fEfH++sus2rQ==", - "dev": true, - "requires": { - "@babel/runtime": "^7.10.2", - "use-composed-ref": "^1.0.0", - "use-latest": "^1.0.0" - } - }, - "react-transition-group": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.2.tgz", - "integrity": "sha512-/RNYfRAMlZwDSr6z4zNKV6xu53/e2BuaBbGhbyYIXTrmgu/bGHzmqOs7mJSJBHy9Ud+ApHx3QjrkKSp1pxvlFg==", - "dev": true, - "requires": { - "@babel/runtime": "^7.5.5", - "dom-helpers": "^5.0.1", - "loose-envify": "^1.4.0", - "prop-types": "^15.6.2" - } - }, "read-env": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/read-env/-/read-env-1.3.0.tgz", @@ -54243,6 +47659,7 @@ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", "dev": true, + "optional": true, "requires": { "graceful-fs": "^4.1.11", "micromatch": "^3.1.10", @@ -54254,6 +47671,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", "dev": true, + "optional": true, "requires": { "is-descriptor": "^1.0.2", "isobject": "^3.0.1" @@ -54264,6 +47682,7 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", "dev": true, + "optional": true, "requires": { "assign-symbols": "^1.0.0", "is-extendable": "^1.0.1" @@ -54274,6 +47693,7 @@ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, + "optional": true, "requires": { "kind-of": "^6.0.0" } @@ -54283,6 +47703,7 @@ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, + "optional": true, "requires": { "kind-of": "^6.0.0" } @@ -54292,6 +47713,7 @@ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, + "optional": true, "requires": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", @@ -54303,6 +47725,7 @@ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "dev": true, + "optional": true, "requires": { "is-plain-object": "^2.0.4" } @@ -54312,6 +47735,7 @@ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "dev": true, + "optional": true, "requires": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", @@ -54356,26 +47780,6 @@ "resolve": "^1.1.6" } }, - "recursive-readdir": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz", - "integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==", - "dev": true, - "requires": { - "minimatch": "3.0.4" - } - }, - "refractor": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/refractor/-/refractor-3.4.0.tgz", - "integrity": "sha512-dBeD02lC5eytm9Gld2Mx0cMcnR+zhSnsTfPpWqFaMgUMJfC9A6bcN3Br/NaXrnBJcuxnLFR90k1jrkaSyV8umg==", - "dev": true, - "requires": { - "hastscript": "^6.0.0", - "parse-entities": "^2.0.0", - "prismjs": "~1.24.0" - } - }, "regenerate": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", @@ -54458,6 +47862,22 @@ "unicode-match-property-value-ecmascript": "^1.2.0" } }, + "registry-auth-token": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.1.tgz", + "integrity": "sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw==", + "requires": { + "rc": "^1.2.8" + } + }, + "registry-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", + "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "requires": { + "rc": "^1.2.8" + } + }, "regjsgen": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz", @@ -54478,99 +47898,46 @@ } } }, - "relateurl": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", - "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=", - "dev": true - }, "remove-trailing-separator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" }, - "renderkid": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.7.tgz", - "integrity": "sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ==", - "dev": true, + "remx": { + "version": "3.0.611", + "resolved": "https://registry.npmjs.org/remx/-/remx-3.0.611.tgz", + "integrity": "sha512-CIVaNrwIkKRpmYFnA/OOI49T8OBN6NIHUOzefK3G3VEb4mvu3EblMqeBUbnAuY17KahYEE8xtsBR5pxcWBps6Q==", "requires": { - "css-select": "^4.1.3", - "dom-converter": "^0.2.0", - "htmlparser2": "^6.1.0", - "lodash": "^4.17.21", - "strip-ansi": "^3.0.1" + "hoist-non-react-statics": "^2.5.5", + "lodash.isfunction": "^3.0.9", + "lodash.isobjectlike": "^4.0.0", + "mobx": "4.0.0 - 4.3.1", + "mobx-react": "^5.2.3", + "snyk": "^1.192.3" }, "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true + "hoist-non-react-statics": { + "version": "2.5.5", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz", + "integrity": "sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw==" }, - "css-select": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.1.3.tgz", - "integrity": "sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA==", - "dev": true, + "mobx-react": { + "version": "5.4.4", + "resolved": "https://registry.npmjs.org/mobx-react/-/mobx-react-5.4.4.tgz", + "integrity": "sha512-2mTzpyEjVB/RGk2i6KbcmP4HWcAUFox5ZRCrGvSyz49w20I4C4qql63grPpYrS9E9GKwgydBHQlA4y665LuRCQ==", "requires": { - "boolbase": "^1.0.0", - "css-what": "^5.0.0", - "domhandler": "^4.2.0", - "domutils": "^2.6.0", - "nth-check": "^2.0.0" - } - }, - "css-what": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.0.1.tgz", - "integrity": "sha512-FYDTSHb/7KXsWICVsxdmiExPjCfRC4qRFBdVwv7Ax9hMnvMmEjP9RfxTEZ3qPZGmADDn2vAKSo9UcN1jKVYscg==", - "dev": true - }, - "dom-serializer": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz", - "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==", - "dev": true, - "requires": { - "domelementtype": "^2.0.1", - "domhandler": "^4.2.0", - "entities": "^2.0.0" - } - }, - "domelementtype": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz", - "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==", - "dev": true - }, - "domutils": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.7.0.tgz", - "integrity": "sha512-8eaHa17IwJUPAiB+SoTYBo5mCdeMgdcAoXJ59m6DT1vw+5iLS3gNoqYaRowaBKtGVrOF1Jz4yDTgYKLK2kvfJg==", - "dev": true, - "requires": { - "dom-serializer": "^1.0.1", - "domelementtype": "^2.2.0", - "domhandler": "^4.2.0" - } - }, - "nth-check": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.0.tgz", - "integrity": "sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q==", - "dev": true, - "requires": { - "boolbase": "^1.0.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" + "hoist-non-react-statics": "^3.0.0", + "react-lifecycles-compat": "^3.0.2" + }, + "dependencies": { + "hoist-non-react-statics": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz", + "integrity": "sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw==", + "requires": { + "react-is": "^16.7.0" + } + } } } } @@ -54611,12 +47978,6 @@ "integrity": "sha512-qUgANli03jjAyGlnbYVAV5vvnOmJnODyABz51RdBN7M4WaVu8mecZWgyQNkG8Yqe3KRGRt0l4K4B3XVEULC4CA==", "dev": true }, - "resize-observer-polyfill": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz", - "integrity": "sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==", - "dev": true - }, "resolve": { "version": "1.20.0", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", @@ -54626,6 +47987,11 @@ "path-parse": "^1.0.6" } }, + "resolve-alpn": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.1.2.tgz", + "integrity": "sha512-8OyfzhAtA32LVUsJSke3auIyINcwdh5l3cvYKdKO0nvsYSKuiLfTM5i78PJswFPT8y6cPW+L1v6/hE95chcpDA==" + }, "resolve-cwd": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", @@ -54681,6 +48047,14 @@ "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" }, + "responselike": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.0.tgz", + "integrity": "sha512-xH48u3FTB9VsZw7R+vvgaKeLKzT6jOogbQhEe/jewwnZgzPcnyWui2Av6JpoYZF/91uueC+lqhWqeURw5/qhCw==", + "requires": { + "lowercase-keys": "^2.0.0" + } + }, "restore-cursor": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", @@ -54719,14 +48093,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" } @@ -54736,41 +48108,38 @@ "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", "dev": true, + "peer": true, "requires": { "hash-base": "^3.0.0", "inherits": "^2.0.1" } }, - "rn-fetch-blob": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/rn-fetch-blob/-/rn-fetch-blob-0.12.0.tgz", - "integrity": "sha512-+QnR7AsJ14zqpVVUbzbtAjq0iI8c9tCg49tIoKO2ezjzRunN7YL6zFSFSWZm6d+mE/l9r+OeDM3jmb2tBb2WbA==", - "requires": { - "base-64": "0.1.0", - "glob": "7.0.6" - }, - "dependencies": { - "glob": { - "version": "7.0.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.0.6.tgz", - "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=", - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.2", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } - } - }, "rn-placeholder": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/rn-placeholder/-/rn-placeholder-3.0.3.tgz", "integrity": "sha512-EmVeLT8zDcTPilQZ2OHO/IiYUy2gApKGgbshDZBX0C4qxsn0cFATwgwOwyz8O7Vwg1Hul97Ci95hu7d6Js6XMQ==", "requires": {} }, + "roarr": { + "version": "2.15.4", + "resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.4.tgz", + "integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==", + "requires": { + "boolean": "^3.0.1", + "detect-node": "^2.0.4", + "globalthis": "^1.0.1", + "json-stringify-safe": "^5.0.1", + "semver-compare": "^1.0.0", + "sprintf-js": "^1.1.2" + }, + "dependencies": { + "sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==" + } + } + }, "rsvp": { "version": "4.8.5", "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", @@ -54785,7 +48154,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" } @@ -54795,6 +48163,7 @@ "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", "dev": true, + "peer": true, "requires": { "aproba": "^1.1.1" } @@ -55024,16 +48393,6 @@ "xmlchars": "^2.2.0" } }, - "scheduler": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.19.1.tgz", - "integrity": "sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA==", - "dev": true, - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" - } - }, "schema-utils": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", @@ -55045,13 +48404,6 @@ "ajv-keywords": "^3.5.2" } }, - "select": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz", - "integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0=", - "dev": true, - "optional": true - }, "semver": { "version": "7.3.5", "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", @@ -55075,6 +48427,26 @@ } } }, + "semver-compare": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=" + }, + "semver-diff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", + "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "requires": { + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, "send": { "version": "0.17.1", "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", @@ -55147,33 +48519,6 @@ "randombytes": "^2.1.0" } }, - "serve-favicon": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/serve-favicon/-/serve-favicon-2.5.0.tgz", - "integrity": "sha1-k10kDN/g9YBTB/3+ln2IlCosvPA=", - "dev": true, - "requires": { - "etag": "~1.8.1", - "fresh": "0.5.2", - "ms": "2.1.1", - "parseurl": "~1.3.2", - "safe-buffer": "5.1.1" - }, - "dependencies": { - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - }, - "safe-buffer": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", - "dev": true - } - } - }, "serve-static": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", @@ -55190,6 +48535,11 @@ "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" }, + "set-immediate-shim": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", + "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=" + }, "set-value": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", @@ -55216,6 +48566,7 @@ "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", "dev": true, + "peer": true, "requires": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" @@ -55237,23 +48588,11 @@ "kind-of": "^6.0.2" } }, - "shallow-equal": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/shallow-equal/-/shallow-equal-1.2.1.tgz", - "integrity": "sha512-S4vJDjHHMBaiZuT9NPb616CSmLf618jawtv3sufLl6ivK8WocjAo58cXwbRV1cgqxH0Qbv+iUt6m05eqEa2IRA==", - "dev": true - }, "shallow-equals": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/shallow-equals/-/shallow-equals-1.0.0.tgz", "integrity": "sha1-JLdL8cY0wR7Uxxgqbfb7MA3OQ5A=" }, - "shallowequal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", - "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==", - "dev": true - }, "shebang-command": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", @@ -55280,13 +48619,6 @@ "glob": "^7.0.0", "interpret": "^1.0.0", "rechoir": "^0.6.2" - }, - "dependencies": { - "interpret": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", - "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==" - } } }, "shellwords": { @@ -55342,20 +48674,6 @@ } } }, - "simplebar": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/simplebar/-/simplebar-4.2.3.tgz", - "integrity": "sha512-9no0pK7/1y+8/oTF3sy/+kx0PjQ3uk4cYwld5F1CJGk2gx+prRyUq8GRfvcVLq5niYWSozZdX73a2wIr1o9l/g==", - "dev": true, - "requires": { - "can-use-dom": "^0.1.0", - "core-js": "^3.0.1", - "lodash.debounce": "^4.0.8", - "lodash.memoize": "^4.1.2", - "lodash.throttle": "^4.1.1", - "resize-observer-polyfill": "^1.5.1" - } - }, "sisteransi": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", @@ -55476,25 +48794,932 @@ } } }, - "sockjs-client": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.4.0.tgz", - "integrity": "sha512-5zaLyO8/nri5cua0VtOrFXBPK1jbL4+1cebT/mmKA1E1ZXOvJrII75bPu0l0k843G/+iAbhEqzyKr0w/eCCj7g==", - "dev": true, + "snyk": { + "version": "1.657.0", + "resolved": "https://registry.npmjs.org/snyk/-/snyk-1.657.0.tgz", + "integrity": "sha512-wTJ5k49SopXL9Sm8Ltlp+HVVpakpaxkt//IRzOTEN75CMd/NpLtCSD34oAbUfo+tTrN1Ig8MSXGk5Z3XQm2d7w==", "requires": { - "debug": "^3.2.5", - "eventsource": "^1.0.7", - "faye-websocket": "~0.11.1", - "inherits": "^2.0.3", - "json3": "^3.3.2", - "url-parse": "^1.4.3" + "@open-policy-agent/opa-wasm": "^1.2.0", + "@snyk/cli-interface": "2.11.0", + "@snyk/cloud-config-parser": "^1.9.2", + "@snyk/code-client": "3.9.0", + "@snyk/dep-graph": "^1.27.1", + "@snyk/fix": "1.650.0", + "@snyk/gemfile": "1.2.0", + "@snyk/graphlib": "^2.1.9-patch.3", + "@snyk/inquirer": "^7.3.3-patch", + "@snyk/snyk-cocoapods-plugin": "2.5.2", + "@snyk/snyk-hex-plugin": "1.1.4", + "abbrev": "^1.1.1", + "ansi-escapes": "3.2.0", + "chalk": "^2.4.2", + "cli-spinner": "0.2.10", + "configstore": "^5.0.1", + "debug": "^4.1.1", + "diff": "^4.0.1", + "glob": "^7.1.7", + "global-agent": "^2.1.12", + "lodash.assign": "^4.2.0", + "lodash.camelcase": "^4.3.0", + "lodash.clonedeep": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.flattendeep": "^4.4.0", + "lodash.get": "^4.4.2", + "lodash.groupby": "^4.6.0", + "lodash.isempty": "^4.4.0", + "lodash.isobject": "^3.0.2", + "lodash.map": "^4.6.0", + "lodash.merge": "^4.6.2", + "lodash.omit": "^4.5.0", + "lodash.orderby": "^4.6.0", + "lodash.sortby": "^4.7.0", + "lodash.uniq": "^4.5.0", + "lodash.upperfirst": "^4.3.1", + "lodash.values": "^4.3.0", + "micromatch": "4.0.2", + "needle": "2.6.0", + "open": "^7.0.3", + "ora": "5.4.0", + "os-name": "^3.0.0", + "promise-queue": "^2.2.5", + "proxy-from-env": "^1.0.0", + "rimraf": "^2.6.3", + "semver": "^6.0.0", + "snyk-config": "4.0.0", + "snyk-cpp-plugin": "2.2.1", + "snyk-docker-plugin": "4.21.3", + "snyk-go-plugin": "1.17.0", + "snyk-gradle-plugin": "3.16.0", + "snyk-module": "3.1.0", + "snyk-mvn-plugin": "2.26.1", + "snyk-nodejs-lockfile-parser": "1.35.0", + "snyk-nuget-plugin": "1.21.1", + "snyk-php-plugin": "1.9.2", + "snyk-policy": "1.19.0", + "snyk-python-plugin": "1.19.11", + "snyk-resolve": "1.1.0", + "snyk-resolve-deps": "4.7.2", + "snyk-sbt-plugin": "2.11.2", + "snyk-try-require": "1.3.1", + "source-map-support": "^0.5.11", + "strip-ansi": "^5.2.0", + "tar": "^6.1.0", + "tempy": "^1.0.1", + "update-notifier": "^5.1.0", + "uuid": "^8.3.2", + "wrap-ansi": "^5.1.0", + "yaml": "^1.10.2" + }, + "dependencies": { + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "requires": { + "fill-range": "^7.0.1" + } + }, + "cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "requires": { + "restore-cursor": "^3.1.0" + } + }, + "diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==" + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + }, + "fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "requires": { + "to-regex-range": "^5.0.1" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" + }, + "micromatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", + "requires": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "ora": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.0.tgz", + "integrity": "sha512-1StwyXQGoU6gdjYkyVcqOLnVlbKj+6yPNNOxJVgpt9t4eksKjiriiHuxktLYkgllwk+D6MbC4ihH84L1udRXPg==", + "requires": { + "bl": "^4.1.0", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.5.0", + "is-interactive": "^1.0.0", + "is-unicode-supported": "^0.1.0", + "log-symbols": "^4.1.0", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "requires": { + "ansi-regex": "^5.0.0" + } + } + } + }, + "restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "requires": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + } + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "requires": { + "glob": "^7.1.3" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + }, + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "requires": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + } + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "requires": { + "ansi-regex": "^4.1.0" + }, + "dependencies": { + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" + } + } + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + }, + "to-regex-range": { + "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==", + "requires": { + "is-number": "^7.0.0" + } + }, + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + }, + "wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "requires": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + } + } + } + }, + "snyk-config": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/snyk-config/-/snyk-config-4.0.0.tgz", + "integrity": "sha512-E6jNe0oUjjzVASWBOAc/mA23DhbzABDF9MI6UZvl0gylh2NSXSXw2/LjlqMNOKL2c1qkbSkzLOdIX5XACoLCAQ==", + "requires": { + "async": "^3.2.0", + "debug": "^4.1.1", + "lodash.merge": "^4.6.2", + "minimist": "^1.2.5" + }, + "dependencies": { + "async": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.0.tgz", + "integrity": "sha512-TR2mEZFVOj2pLStYxLht7TyfuRzaydfpxr3k9RpHIzMgw7A64dzsdqCxH1WJyQdoe8T10nDXd9wnEigmiuHIZw==" + } + } + }, + "snyk-cpp-plugin": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/snyk-cpp-plugin/-/snyk-cpp-plugin-2.2.1.tgz", + "integrity": "sha512-NFwVLMCqKTocY66gcim0ukF6e31VRDJqDapg5sy3vCHqlD1OCNUXSK/aI4VQEEndDrsnFmQepsL5KpEU0dDRIQ==", + "requires": { + "@snyk/dep-graph": "^1.19.3", + "chalk": "^4.1.0", + "debug": "^4.1.1", + "hosted-git-info": "^3.0.7", + "tslib": "^2.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "hosted-git-info": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz", + "integrity": "sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw==", + "requires": { + "lru-cache": "^6.0.0" + } + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } + }, + "snyk-docker-plugin": { + "version": "4.21.3", + "resolved": "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-4.21.3.tgz", + "integrity": "sha512-u54T2ooQatEWeeFRgzpEl6PpyzEHjNU78VkMg2FarNzuNPdmVsE/Wb6rs8JsB8shTLS6jWp9XCY2zmkpr9Zgag==", + "requires": { + "@snyk/dep-graph": "^1.28.0", + "@snyk/rpm-parser": "^2.0.0", + "@snyk/snyk-docker-pull": "3.6.2", + "chalk": "^2.4.2", + "debug": "^4.1.1", + "docker-modem": "2.1.3", + "dockerfile-ast": "0.2.1", + "elfy": "^1.0.0", + "event-loop-spinner": "^2.0.0", + "gunzip-maybe": "^1.4.2", + "mkdirp": "^1.0.4", + "semver": "^7.3.4", + "snyk-nodejs-lockfile-parser": "1.35.1", + "tar-stream": "^2.1.0", + "tmp": "^0.2.1", + "tslib": "^1", + "uuid": "^8.2.0" + }, + "dependencies": { + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "requires": { + "argparse": "^2.0.1" + } + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" + }, + "snyk-nodejs-lockfile-parser": { + "version": "1.35.1", + "resolved": "https://registry.npmjs.org/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.35.1.tgz", + "integrity": "sha512-NiXN+MdWaZxseXVDgCM4CZ5aBgI5LloUbwUP9c3oMZDih9Zj6Vf5edDcL8eM3BGl+a6LceJzB6w+xrIqKCXgQA==", + "requires": { + "@snyk/graphlib": "2.1.9-patch.3", + "@yarnpkg/core": "^2.4.0", + "@yarnpkg/lockfile": "^1.1.0", + "event-loop-spinner": "^2.0.0", + "js-yaml": "^4.1.0", + "lodash.clonedeep": "^4.5.0", + "lodash.flatmap": "^4.5.0", + "lodash.isempty": "^4.4.0", + "lodash.set": "^4.3.2", + "lodash.topairs": "^4.3.0", + "snyk-config": "^4.0.0-rc.2", + "tslib": "^1.9.3", + "uuid": "^8.3.0" + } + }, + "tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "requires": { + "rimraf": "^3.0.0" + } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + } + } + }, + "snyk-go-parser": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/snyk-go-parser/-/snyk-go-parser-1.4.1.tgz", + "integrity": "sha512-StU3uHB85VMEkcgXta63M0Fgd+9cs5sMCjQXTBoYTdE4dxarPn7U67yCuwkRRdZdny1ZXtzfY8LKns9i0+dy9w==", + "requires": { + "toml": "^3.0.0", + "tslib": "^1.10.0" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "snyk-go-plugin": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/snyk-go-plugin/-/snyk-go-plugin-1.17.0.tgz", + "integrity": "sha512-1jAYPRgMapO2BYL+HWsUq5gsAiDGmI0Pn7omc0lk24tcUOMhUB+1hb0u9WBMNzHvXBjevBkjOctjpnt2hMKN6Q==", + "requires": { + "@snyk/dep-graph": "^1.23.1", + "@snyk/graphlib": "2.1.9-patch.3", + "debug": "^4.1.1", + "snyk-go-parser": "1.4.1", + "tmp": "0.2.1", + "tslib": "^1.10.0" + }, + "dependencies": { + "tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "requires": { + "rimraf": "^3.0.0" + } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "snyk-gradle-plugin": { + "version": "3.16.0", + "resolved": "https://registry.npmjs.org/snyk-gradle-plugin/-/snyk-gradle-plugin-3.16.0.tgz", + "integrity": "sha512-PQegG8GOweJvUDSroysO1E0RK3MxphSUvNG5siRqGHJQ8s+dw9DddYN8kMn5+pTrfzo6zddgDPJxjqsfNR+NIw==", + "requires": { + "@snyk/cli-interface": "2.11.0", + "@snyk/dep-graph": "^1.28.0", + "@snyk/java-call-graph-builder": "1.23.0", + "@types/debug": "^4.1.4", + "chalk": "^3.0.0", + "debug": "^4.1.1", + "tmp": "0.2.1", + "tslib": "^2.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + }, + "tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "requires": { + "rimraf": "^3.0.0" + } + } + } + }, + "snyk-module": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/snyk-module/-/snyk-module-3.1.0.tgz", + "integrity": "sha512-HHuOYEAACpUpkFgU8HT57mmxmonaJ4O3YADoSkVhnhkmJ+AowqZyJOau703dYHNrq2DvQ7qYw81H7yyxS1Nfjw==", + "requires": { + "debug": "^4.1.1", + "hosted-git-info": "^3.0.4" + }, + "dependencies": { + "hosted-git-info": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-3.0.8.tgz", + "integrity": "sha512-aXpmwoOhRBrw6X3j0h5RloK4x1OzsxMPyxqIHyNfSe2pypkVTZFpEiRoSipPEPlMrh0HW/XsjkJ5WgnCirpNUw==", + "requires": { + "lru-cache": "^6.0.0" + } + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } + }, + "snyk-mvn-plugin": { + "version": "2.26.1", + "resolved": "https://registry.npmjs.org/snyk-mvn-plugin/-/snyk-mvn-plugin-2.26.1.tgz", + "integrity": "sha512-DCs53aRT/uK2e1jXzeVG2d+Ll0bmY/YHL+jEYaWJko8XwGoVwqCrVOkRyzXd2KOZUk3gpD6MaxIrBWsc8RJzRA==", + "requires": { + "@snyk/cli-interface": "2.11.0", + "@snyk/dep-graph": "^1.23.1", + "@snyk/java-call-graph-builder": "1.21.0", + "debug": "^4.1.1", + "glob": "^7.1.6", + "needle": "^2.5.0", + "tmp": "^0.1.0", + "tslib": "1.11.1" + }, + "dependencies": { + "@snyk/java-call-graph-builder": { + "version": "1.21.0", + "resolved": "https://registry.npmjs.org/@snyk/java-call-graph-builder/-/java-call-graph-builder-1.21.0.tgz", + "integrity": "sha512-i0c4N0+pYjpXEgqAkFniM3Q9YANvy+RtbbkQMPIvdEw41+XJISfEHzZ968ZmGWcoi480cgo5t9oxZEadFuHzyg==", + "requires": { + "@snyk/graphlib": "2.1.9-patch.3", + "ci-info": "^2.0.0", + "debug": "^4.1.1", + "glob": "^7.1.6", + "jszip": "^3.2.2", + "needle": "^2.3.3", + "progress": "^2.0.3", + "snyk-config": "^4.0.0-rc.2", + "source-map-support": "^0.5.7", + "temp-dir": "^2.0.0", + "tmp": "^0.2.1", + "tslib": "^1.9.3", + "xml-js": "^1.6.11" + }, + "dependencies": { + "tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "requires": { + "rimraf": "^3.0.0" + } + } + } + }, + "temp-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", + "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==" + }, + "tmp": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.1.0.tgz", + "integrity": "sha512-J7Z2K08jbGcdA1kkQpJSqLF6T0tdQqpR2pnSUXsIchbPdTI9v3e85cLW0d6WDhwuAleOV71j2xWs8qMPfK7nKw==", + "requires": { + "rimraf": "^2.6.3" + }, + "dependencies": { + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "requires": { + "glob": "^7.1.3" + } + } + } + }, + "tslib": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", + "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==" + } + } + }, + "snyk-nodejs-lockfile-parser": { + "version": "1.35.0", + "resolved": "https://registry.npmjs.org/snyk-nodejs-lockfile-parser/-/snyk-nodejs-lockfile-parser-1.35.0.tgz", + "integrity": "sha512-fSjer9Ic8cdA2HvInUmhwbAhoLFXIokAzGB1PeGKwr0zzyfo3dSX3ReTMEbkhrEg+h0eES13px/KiiJ0EKRKMg==", + "requires": { + "@snyk/graphlib": "2.1.9-patch.3", + "@yarnpkg/core": "^2.4.0", + "@yarnpkg/lockfile": "^1.1.0", + "event-loop-spinner": "^2.0.0", + "got": "11.8.2", + "js-yaml": "^4.1.0", + "lodash.clonedeep": "^4.5.0", + "lodash.flatmap": "^4.5.0", + "lodash.isempty": "^4.4.0", + "lodash.set": "^4.3.2", + "lodash.topairs": "^4.3.0", + "p-map": "2.1.0", + "snyk-config": "^4.0.0-rc.2", + "tslib": "^1.9.3", + "uuid": "^8.3.0" + }, + "dependencies": { + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "requires": { + "argparse": "^2.0.1" + } + }, + "p-map": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", + "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==" + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + } + } + }, + "snyk-nuget-plugin": { + "version": "1.21.1", + "resolved": "https://registry.npmjs.org/snyk-nuget-plugin/-/snyk-nuget-plugin-1.21.1.tgz", + "integrity": "sha512-nRtedIvrow5ODqOKkQWolKrxn8ZoNL3iNJGuW0jNhwv+/9K0XE1UORM5F1ENAsd+nzCSO/kiYAXCc5CNK8HWEw==", + "requires": { + "debug": "^4.1.1", + "dotnet-deps-parser": "5.0.0", + "jszip": "3.4.0", + "snyk-paket-parser": "1.6.0", + "tslib": "^1.11.2", + "xml2js": "^0.4.17" + }, + "dependencies": { + "jszip": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/jszip/-/jszip-3.4.0.tgz", + "integrity": "sha512-gZAOYuPl4EhPTXT0GjhI3o+ZAz3su6EhLrKUoAivcKqyqC7laS5JEv4XWZND9BgcDcF83vI85yGbDmDR6UhrIg==", + "requires": { + "lie": "~3.3.0", + "pako": "~1.0.2", + "readable-stream": "~2.3.6", + "set-immediate-shim": "~1.0.1" + } + }, + "lie": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/lie/-/lie-3.3.0.tgz", + "integrity": "sha512-UaiMJzeWRlEujzAuw5LokY1L5ecNQYZKfmyZ9L7wDHb/p5etKaxXhohBcrw0EYby+G/NA52vRSN4N39dxHAIwQ==", + "requires": { + "immediate": "~3.0.5" + } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "snyk-paket-parser": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/snyk-paket-parser/-/snyk-paket-parser-1.6.0.tgz", + "integrity": "sha512-6htFynjBe/nakclEHUZ1A3j5Eu32/0pNve5Qm4MFn3YQmJgj7UcAO8hdyK3QfzEY29/kAv/rkJQg+SKshn+N9Q==", + "requires": { + "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==" + } + } + }, + "snyk-php-plugin": { + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/snyk-php-plugin/-/snyk-php-plugin-1.9.2.tgz", + "integrity": "sha512-IQcdsQBqqXVRY5DatlI7ASy4flbhtU2V7cr4P2rK9rkFnVHO6LHcitwKXVZa9ocdOmpZDzk7U6iwHJkVFcR6OA==", + "requires": { + "@snyk/cli-interface": "^2.9.1", + "@snyk/composer-lockfile-parser": "^1.4.1", + "tslib": "1.11.1" + }, + "dependencies": { + "tslib": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", + "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==" + } + } + }, + "snyk-poetry-lockfile-parser": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/snyk-poetry-lockfile-parser/-/snyk-poetry-lockfile-parser-1.1.6.tgz", + "integrity": "sha512-MoekbWOZPj9umfukjk2bd2o3eRj0OyO+58sxq9crMtHmTlze4h0/Uj4+fb0JFPBOtBO3c2zwbA+dvFQmpKoOTA==", + "requires": { + "@snyk/cli-interface": "^2.9.2", + "@snyk/dep-graph": "^1.23.0", + "debug": "^4.2.0", + "toml": "^3.0.0", + "tslib": "^2.0.0" + } + }, + "snyk-policy": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/snyk-policy/-/snyk-policy-1.19.0.tgz", + "integrity": "sha512-XYjhOTRPFA7NfDUsH6uH1fbML2OgSFsqdUPbud7x01urNP9CHXgUgAD4NhKMi3dVQK+7IdYadWt0wrFWw4y+qg==", + "requires": { + "debug": "^4.1.1", + "email-validator": "^2.0.4", + "js-yaml": "^3.13.1", + "lodash.clonedeep": "^4.5.0", + "promise-fs": "^2.1.1", + "semver": "^6.0.0", + "snyk-module": "^3.0.0", + "snyk-resolve": "^1.1.0", + "snyk-try-require": "^2.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "requires": { + "yallist": "^3.0.2" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + }, + "snyk-try-require": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/snyk-try-require/-/snyk-try-require-2.0.1.tgz", + "integrity": "sha512-VCOfFIvqLMXgCXEdooQgu3A40XYIFBnj0X8Y01RJ5iAbu08b4WKGN/uAKaRVF30dABS4EcjsalmCO+YlKUPEIA==", + "requires": { + "debug": "^4.1.1", + "lodash.clonedeep": "^4.3.0", + "lru-cache": "^5.1.1" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + } + } + }, + "snyk-python-plugin": { + "version": "1.19.11", + "resolved": "https://registry.npmjs.org/snyk-python-plugin/-/snyk-python-plugin-1.19.11.tgz", + "integrity": "sha512-zUKbSbw+wU1FCUDYt+IDjaES0pc1UKBECOqjHSJMxWm9VhstvPtI4KccetwOfne2oUcmaEJJvcEp4s9VTK04XQ==", + "requires": { + "@snyk/cli-interface": "^2.0.3", + "snyk-poetry-lockfile-parser": "^1.1.6", + "tmp": "0.2.1" + }, + "dependencies": { + "tmp": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz", + "integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==", + "requires": { + "rimraf": "^3.0.0" + } + } + } + }, + "snyk-resolve": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/snyk-resolve/-/snyk-resolve-1.1.0.tgz", + "integrity": "sha512-OZMF8I8TOu0S58Z/OS9mr8jkEzGAPByCsAkrWlcmZgPaE0RsxVKVIFPhbMNy/JlYswgGDYYIEsNw+e0j1FnTrw==", + "requires": { + "debug": "^4.1.1", + "promise-fs": "^2.1.1" + } + }, + "snyk-resolve-deps": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/snyk-resolve-deps/-/snyk-resolve-deps-4.7.2.tgz", + "integrity": "sha512-Bmtr7QdRL2b3Js+mPDmvXbkprOpzO8aUFXqR0nJKAOlUVQqZ84yiuT0n/mssEiJJ0vP+k0kZvTeiTwgio4KZRg==", + "requires": { + "ansicolors": "^0.3.2", + "debug": "^4.1.1", + "lodash.assign": "^4.2.0", + "lodash.assignin": "^4.2.0", + "lodash.clone": "^4.5.0", + "lodash.flatten": "^4.4.0", + "lodash.get": "^4.4.2", + "lodash.set": "^4.3.2", + "lru-cache": "^4.0.0", + "semver": "^5.5.1", + "snyk-module": "^3.1.0", + "snyk-resolve": "^1.0.0", + "snyk-tree": "^1.0.0", + "snyk-try-require": "^1.1.1", + "then-fs": "^2.0.0" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } + } + }, + "snyk-sbt-plugin": { + "version": "2.11.2", + "resolved": "https://registry.npmjs.org/snyk-sbt-plugin/-/snyk-sbt-plugin-2.11.2.tgz", + "integrity": "sha512-EY9foT2bpl+Dbzj28zewJs7VyAhA4uQIiBABNCi9iaIXGfQLkhiXswkcwysOHxm6RxrXbMsbci0OvuDD7zh4Dg==", + "requires": { + "debug": "^4.1.1", + "semver": "^6.1.2", + "tmp": "^0.1.0", + "tree-kill": "^1.2.2", + "tslib": "^1.10.0" + }, + "dependencies": { + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "requires": { + "glob": "^7.1.3" + } + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + }, + "tmp": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.1.0.tgz", + "integrity": "sha512-J7Z2K08jbGcdA1kkQpJSqLF6T0tdQqpR2pnSUXsIchbPdTI9v3e85cLW0d6WDhwuAleOV71j2xWs8qMPfK7nKw==", + "requires": { + "rimraf": "^2.6.3" + } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "snyk-tree": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/snyk-tree/-/snyk-tree-1.0.0.tgz", + "integrity": "sha1-D7cxdtvzLngvGRAClBYESPkRHMg=", + "requires": { + "archy": "^1.0.0" + } + }, + "snyk-try-require": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/snyk-try-require/-/snyk-try-require-1.3.1.tgz", + "integrity": "sha1-bgJvkuZK9/zM6h7lPVJIQeQYohI=", + "requires": { + "debug": "^3.1.0", + "lodash.clonedeep": "^4.3.0", + "lru-cache": "^4.0.0", + "then-fs": "^2.0.0" }, "dependencies": { "debug": { "version": "3.2.7", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, "requires": { "ms": "^2.1.1" } @@ -55524,7 +49749,8 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", - "dev": true + "dev": true, + "peer": true }, "source-map": { "version": "0.5.7", @@ -55564,12 +49790,6 @@ "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz", "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==" }, - "space-separated-tokens": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.5.tgz", - "integrity": "sha512-q/JSVd1Lptzhf5bkYm4ob4iWPjx0KiRe3sRFBNrVqbJkFaBm5vbbowy1mymoPNLRa52+oadOhJ+K49wsSeSjTA==", - "dev": true - }, "spdx-correct": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", @@ -55602,6 +49822,11 @@ "integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==", "dev": true }, + "split-ca": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/split-ca/-/split-ca-1.0.1.tgz", + "integrity": "sha1-bIOv82kvphJW4M0ZfgXp3hV2kaY=" + }, "split-string": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", @@ -55639,21 +49864,23 @@ "resolved": "https://registry.npmjs.org/sql-escape-string/-/sql-escape-string-1.1.0.tgz", "integrity": "sha1-/nRLhRSGjA60v7nkqYknHUDzDrk=" }, - "ssri": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-7.1.1.tgz", - "integrity": "sha512-w+daCzXN89PseTL99MkA+fxJEcU3wfaE/ah0i0lnOlpG1CYLJ2ZjzEry68YBKfLs4JfoTShrTEsJkAZuNZ/stw==", - "dev": true, + "ssh2": { + "version": "0.8.9", + "resolved": "https://registry.npmjs.org/ssh2/-/ssh2-0.8.9.tgz", + "integrity": "sha512-GmoNPxWDMkVpMFa9LVVzQZHF6EW3WKmBwL+4/GeILf2hFmix5Isxm7Amamo8o7bHiU0tC+wXsGcUXOxp8ChPaw==", "requires": { - "figgy-pudding": "^3.5.1", - "minipass": "^3.1.1" + "ssh2-streams": "~0.4.10" } }, - "stable": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", - "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", - "dev": true + "ssh2-streams": { + "version": "0.4.10", + "resolved": "https://registry.npmjs.org/ssh2-streams/-/ssh2-streams-0.4.10.tgz", + "integrity": "sha512-8pnlMjvnIZJvmTzUIIA5nT4jr2ZWNNVHwyXfMGdRJbug9TpI3kd99ffglgfSWqujVv/0gxwMsDn9j9RVst8yhQ==", + "requires": { + "asn1": "~0.2.0", + "bcrypt-pbkdf": "^1.0.2", + "streamsearch": "~0.1.2" + } }, "stack-chain": { "version": "1.3.7", @@ -55712,17 +49939,12 @@ "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" }, - "store2": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/store2/-/store2-2.12.0.tgz", - "integrity": "sha512-7t+/wpKLanLzSnQPX8WAcuLCCeuSHoWdQuh9SB3xD0kNOM38DNf+0Oa+wmvxmYueRzkmh6IcdKFtvTa+ecgPDw==", - "dev": true - }, "stream-browserify": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", "dev": true, + "peer": true, "requires": { "inherits": "~2.0.1", "readable-stream": "^2.0.2" @@ -55738,6 +49960,7 @@ "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", "dev": true, + "peer": true, "requires": { "end-of-stream": "^1.1.0", "stream-shift": "^1.0.0" @@ -55748,6 +49971,7 @@ "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", "dev": true, + "peer": true, "requires": { "builtin-status-codes": "^3.0.0", "inherits": "^2.0.1", @@ -55759,8 +49983,48 @@ "stream-shift": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", - "dev": true + "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==" + }, + "stream-to-array": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/stream-to-array/-/stream-to-array-2.3.0.tgz", + "integrity": "sha1-u/azn19D7DC8cbq8s3VXrOzzQ1M=", + "requires": { + "any-promise": "^1.1.0" + } + }, + "stream-to-promise": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/stream-to-promise/-/stream-to-promise-2.2.0.tgz", + "integrity": "sha1-se2y4cjLESidG1A8CNPyrvUeZQ8=", + "requires": { + "any-promise": "~1.3.0", + "end-of-stream": "~1.1.0", + "stream-to-array": "~2.3.0" + }, + "dependencies": { + "end-of-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.1.0.tgz", + "integrity": "sha1-6TUyWLqpEIll78QcsO+K3i88+wc=", + "requires": { + "once": "~1.3.0" + } + }, + "once": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", + "integrity": "sha1-suJhVXzkwxTsgwTz+oJmPkKXyiA=", + "requires": { + "wrappy": "1" + } + } + } + }, + "streamsearch": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-0.1.2.tgz", + "integrity": "sha1-gIudDlb8Jz2Am6VzOOkpkZoanxo=" }, "string_decoder": { "version": "1.1.1", @@ -55823,28 +50087,6 @@ "side-channel": "^1.0.4" } }, - "string.prototype.padend": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.2.tgz", - "integrity": "sha512-/AQFLdYvePENU3W5rgurfWSMU6n+Ww8n/3cUt7E+vPBB/D7YDG8x+qjoFs4M/alR2bW7Qg6xMjVwWUOvuQ0XpQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2" - } - }, - "string.prototype.padstart": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/string.prototype.padstart/-/string.prototype.padstart-3.1.2.tgz", - "integrity": "sha512-HDpngIP3pd0DeazrfqzuBrQZa+D2arKWquEHfGt5LzVjd+roLC3cjqVI0X8foaZz5rrrhcu8oJAQamW8on9dqw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.2" - } - }, "string.prototype.repeat": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-0.2.0.tgz", @@ -55899,29 +50141,6 @@ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true }, - "style-loader": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.3.0.tgz", - "integrity": "sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q==", - "dev": true, - "requires": { - "loader-utils": "^2.0.0", - "schema-utils": "^2.7.0" - }, - "dependencies": { - "loader-utils": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", - "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^2.1.2" - } - } - } - }, "sudo-prompt": { "version": "9.2.1", "resolved": "https://registry.npmjs.org/sudo-prompt/-/sudo-prompt-9.2.1.tgz", @@ -55973,18 +50192,6 @@ "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", "dev": true }, - "symbol.prototype.description": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/symbol.prototype.description/-/symbol.prototype.description-1.0.4.tgz", - "integrity": "sha512-fZkHwJ8ZNRVRzF/+/2OtygyyH06CjC0YZAQRHu9jKKw8RXlJpbizEHvGRUu22Qkg182wJk1ugb5Aovcv3UPrww==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "es-abstract": "^1.18.0-next.2", - "has-symbols": "^1.0.1", - "object.getownpropertydescriptors": "^2.1.2" - } - }, "table": { "version": "6.7.1", "resolved": "https://registry.npmjs.org/table/-/table-6.7.1.tgz", @@ -56063,27 +50270,57 @@ "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", "dev": true }, - "telejson": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/telejson/-/telejson-5.3.3.tgz", - "integrity": "sha512-PjqkJZpzEggA9TBpVtJi1LVptP7tYtXB6rEubwlHap76AMjzvOdKX41CxyaW7ahhzDU1aftXnMCx5kAPDZTQBA==", - "dev": true, + "tar": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.0.tgz", + "integrity": "sha512-DUCttfhsnLCjwoDoFcI+B2iJgYa93vBnDUATYEeRx6sntCTdN01VnqsIuTlALXla/LWooNg0yEGeB+Y8WdFxGA==", "requires": { - "@types/is-function": "^1.0.0", - "global": "^4.4.0", - "is-function": "^1.0.2", - "is-regex": "^1.1.2", - "is-symbol": "^1.0.3", - "isobject": "^4.0.0", - "lodash": "^4.17.21", - "memoizerific": "^1.11.3" + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" }, "dependencies": { - "isobject": { + "chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==" + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" + }, + "yallist": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-4.0.0.tgz", - "integrity": "sha512-S/2fF5wH8SJA/kmwr6HYhK/RI/OkhD84k8ntalo0iJjZikgq1XFvR5M8NPT1x5F7fBwCG3qHfnzeP/Vh/ZxCUA==", - "dev": true + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } + }, + "tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "requires": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "dependencies": { + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } } } }, @@ -56115,7 +50352,8 @@ "temp-dir": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz", - "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=" + "integrity": "sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0=", + "dev": true }, "tempfile": { "version": "2.0.0", @@ -56128,28 +50366,29 @@ } }, "tempy": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/tempy/-/tempy-0.3.0.tgz", - "integrity": "sha512-WrH/pui8YCwmeiAoxV+lpRH9HpRtgBhSR2ViBPgpGb/wnYDzp21R4MN45fsCGvLROvY67o3byhJRYRONJyImVQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/tempy/-/tempy-1.0.1.tgz", + "integrity": "sha512-biM9brNqxSc04Ee71hzFbryD11nX7VPhQQY32AdDmjFvodsRFz/3ufeoTZ6uYkRFfGo188tENcASNs3vTdsM0w==", "requires": { - "temp-dir": "^1.0.0", - "type-fest": "^0.3.1", - "unique-string": "^1.0.0" + "del": "^6.0.0", + "is-stream": "^2.0.0", + "temp-dir": "^2.0.0", + "type-fest": "^0.16.0", + "unique-string": "^2.0.0" }, "dependencies": { + "temp-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-2.0.0.tgz", + "integrity": "sha512-aoBAniQmmwtcKp/7BzsH8Cxzv8OL736p7v1ihGb5e9DJ9kTwGWHrQrVB5+lfVDzfGrdRzXch+ig7LHaY1JTOrg==" + }, "type-fest": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", - "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==" + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.16.0.tgz", + "integrity": "sha512-eaBzG6MxNzEn9kiwvtre90cXaNLkmadMWa1zQMs3XORCXNbsH/OewwbxC5ia9dCxIxnTAsSxXJaa/p5y8DlvJg==" } } }, - "term-size": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz", - "integrity": "sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==", - "dev": true - }, "terminal-link": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", @@ -56182,6 +50421,7 @@ "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", "dev": true, + "peer": true, "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", @@ -56192,107 +50432,15 @@ "version": "2.20.3", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true + "dev": true, + "peer": true }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "terser-webpack-plugin": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-2.3.8.tgz", - "integrity": "sha512-/fKw3R+hWyHfYx7Bv6oPqmk4HGQcrWLtV3X6ggvPuwPNHSnzvVV51z6OaaCOus4YLjutYGOz3pEpbhe6Up2s1w==", - "dev": true, - "requires": { - "cacache": "^13.0.1", - "find-cache-dir": "^3.3.1", - "jest-worker": "^25.4.0", - "p-limit": "^2.3.0", - "schema-utils": "^2.6.6", - "serialize-javascript": "^4.0.0", - "source-map": "^0.6.1", - "terser": "^4.6.12", - "webpack-sources": "^1.4.3" - }, - "dependencies": { - "find-cache-dir": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz", - "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==", "dev": true, - "requires": { - "commondir": "^1.0.1", - "make-dir": "^3.0.2", - "pkg-dir": "^4.1.0" - } - }, - "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 - }, - "jest-worker": { - "version": "25.5.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.5.0.tgz", - "integrity": "sha512-/dsSmUkIy5EBGfv/IjjqmFxrNAUpBERfGs1oHROyD7yxjG/w+t0GOJDX8O1k32ySmd7+a5IhnJU2qQFcJ4n1vw==", - "dev": true, - "requires": { - "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" - } - }, - "make-dir": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", - "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", - "dev": true, - "requires": { - "semver": "^6.0.0" - } - }, - "pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, - "requires": { - "find-up": "^4.0.0" - } - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "serialize-javascript": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", - "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", - "dev": true, - "requires": { - "randombytes": "^2.1.0" - } - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - }, - "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" - } + "peer": true } } }, @@ -56313,17 +50461,29 @@ "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", "dev": true }, + "then-fs": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/then-fs/-/then-fs-2.0.0.tgz", + "integrity": "sha1-cveS3Z0xcFqRrhnr/Piz+WjIHaI=", + "requires": { + "promise": ">=3.2 <8" + }, + "dependencies": { + "promise": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", + "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", + "requires": { + "asap": "~2.0.3" + } + } + } + }, "throat": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz", "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==" }, - "throttle-debounce": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/throttle-debounce/-/throttle-debounce-2.3.0.tgz", - "integrity": "sha512-H7oLPV0P7+jgvrk+6mwwwBDmxTaxnu9HMXmloNLXwnNO0ZxZ31Orah2n8lU1eMPvsaowP2CX+USCgyovXfdOFQ==", - "dev": true - }, "through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", @@ -56343,22 +50503,11 @@ "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", "dev": true, + "peer": true, "requires": { "setimmediate": "^1.0.4" } }, - "timm": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/timm/-/timm-1.7.1.tgz", - "integrity": "sha512-IjZc9KIotudix8bMaBW6QvMuq64BrJWFs1+4V0lXwWGQZwH+LnX87doAYhem4caOEusRP9/g6jVDQmZ8XOk1nw==" - }, - "tiny-emitter": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz", - "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==", - "dev": true, - "optional": true - }, "tinycolor2": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.4.2.tgz", @@ -56381,7 +50530,8 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", - "dev": true + "dev": true, + "peer": true }, "to-fast-properties": { "version": "2.0.0", @@ -56406,6 +50556,11 @@ } } }, + "to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==" + }, "to-regex": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", @@ -56480,17 +50635,16 @@ "repeat-string": "^1.6.1" } }, - "toggle-selection": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz", - "integrity": "sha1-bkWxJj8gF/oKzH2J14sVuL932jI=", - "dev": true - }, "toidentifier": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" }, + "toml": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/toml/-/toml-3.0.0.tgz", + "integrity": "sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w==" + }, "tough-cookie": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", @@ -56511,6 +50665,16 @@ "punycode": "^2.1.1" } }, + "tree-kill": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", + "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==" + }, + "treeify": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/treeify/-/treeify-1.1.0.tgz", + "integrity": "sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A==" + }, "truncate-utf8-bytes": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/truncate-utf8-bytes/-/truncate-utf8-bytes-1.0.2.tgz", @@ -56520,18 +50684,6 @@ "utf8-byte-length": "^1.0.1" } }, - "ts-dedent": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-2.1.1.tgz", - "integrity": "sha512-riHuwnzAUCfdIeTBNUq7+Yj+ANnrMXo/7+Z74dIdudS7ys2k8aSGMzpJRMFDF7CLwUTbtvi1ZZff/Wl+XxmqIA==", - "dev": true - }, - "ts-essentials": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/ts-essentials/-/ts-essentials-2.0.12.tgz", - "integrity": "sha512-3IVX4nI6B5cc31/GFFE+i8ey/N2eA0CZDbo6n0yrz0zDX8ZJ8djmU1p+XRz7G3is0F3bB3pu2pAroFdAWQKU3w==", - "dev": true - }, "ts-jest": { "version": "27.0.3", "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-27.0.3.tgz", @@ -56643,12 +50795,6 @@ } } }, - "ts-pnp": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/ts-pnp/-/ts-pnp-1.2.0.tgz", - "integrity": "sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw==", - "dev": true - }, "tslib": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.0.tgz", @@ -56675,7 +50821,18 @@ "version": "0.0.0", "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", - "dev": true + "dev": true, + "peer": true + }, + "tunnel": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", + "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==" + }, + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" }, "type-check": { "version": "0.4.0", @@ -56698,27 +50855,12 @@ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", "dev": true }, - "type-is": { - "version": "1.6.18", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", - "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", - "dev": true, - "requires": { - "media-typer": "0.3.0", - "mime-types": "~2.1.24" - } - }, - "typed-styles": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/typed-styles/-/typed-styles-0.0.7.tgz", - "integrity": "sha512-pzP0PWoZUhsECYjABgCGQlRGL1n7tOHsgwYv3oIiEpJwGhFTuty/YNeduxQYzXXa3Ge5BdT6sHYIQYpl4uJ+5Q==", - "dev": true - }, "typedarray": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true + "dev": true, + "peer": true }, "typedarray-to-buffer": { "version": "3.1.5", @@ -56729,9 +50871,9 @@ } }, "typescript": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.3.4.tgz", - "integrity": "sha512-uauPG7XZn9F/mo+7MrsRjyvbxFpzemRjKEZXS4AK83oP2KKOJPvb+9cO/gmnv8arWZvhnjVOXz7B49m1l0e9Ew==", + "version": "4.3.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.3.5.tgz", + "integrity": "sha512-DqQgihaQ9cUrskJo9kIyW/+g0Vxsk8cDtZ52a3NGh0YNTfpUSArXSohyUGnvbPazEPLu398C0UxmKSOrPumUzA==", "devOptional": true }, "ua-parser-js": { @@ -56782,12 +50924,6 @@ "integrity": "sha512-hzSoAVtJF+3ZtiFX0VgfFPHEDRm7Y/QPjGyNo4TVdnDTdft3tr8hEkD25a1jC+TjTuE7tkHGKkhwCgs9dgBB2g==", "dev": true }, - "unfetch": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/unfetch/-/unfetch-4.2.0.tgz", - "integrity": "sha512-F9p7yYCn6cIW9El1zi0HI6vqpeIvBsr3dSuRO6Xuppb1u5rXpCPmMvLSyECLhybr9isec8Ohl0hPekMVrEinDA==", - "dev": true - }, "unicode-canonical-property-names-ecmascript": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", @@ -56813,59 +50949,14 @@ "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==" }, "unimodules-app-loader": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/unimodules-app-loader/-/unimodules-app-loader-2.1.0.tgz", - "integrity": "sha512-W+D+hVXq6jOvBm7QVwODPENz6Lupj73QequNNG+6GCTkqn4ybq/lba9IQvJQT2QzdL3luVHin+eym18cDblMlg==" - }, - "unimodules-barcode-scanner-interface": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/unimodules-barcode-scanner-interface/-/unimodules-barcode-scanner-interface-6.1.0.tgz", - "integrity": "sha512-+McBDniXReXNS8PnGDjIyDikb+cRXSfsZMLsF0gohEEV0xdA6HhPvFA0ryv65j2NKOyIiWmEHjv+yDOoewDq3w==" - }, - "unimodules-camera-interface": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/unimodules-camera-interface/-/unimodules-camera-interface-6.1.0.tgz", - "integrity": "sha512-Rbszrh54kIB4vA+AzDWFXplBz1UrxQNR6Ls0eJDAKffbjDfyQIP6SgIPjUlzqGVnzknyZ1SMGiFFSFCM4BCOAw==" - }, - "unimodules-constants-interface": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/unimodules-constants-interface/-/unimodules-constants-interface-6.1.0.tgz", - "integrity": "sha512-uPLFGufbdefRQeINyUfkw2mVJJg+6kH23RR4ATfUAsrD6vGLuONwduHvRwh+rcL9fzPVM4jsfH6iATrolmiatg==" - }, - "unimodules-face-detector-interface": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/unimodules-face-detector-interface/-/unimodules-face-detector-interface-6.1.0.tgz", - "integrity": "sha512-L2E8a2OjMPxfVh/OGt6Y5HWbEaJ9h3Hkmvx02GCferBPKgN3dcxFMaI53d1BVV9QA3r4YuLBP6RrolG/qy/r7A==" - }, - "unimodules-file-system-interface": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/unimodules-file-system-interface/-/unimodules-file-system-interface-6.1.0.tgz", - "integrity": "sha512-iJGm6nWF+PhxqFbeqC2Ku4XjglbL9z7aofkSX5S7bZ3Oi4v1NO1UOe9nczU17Ps19sfYZJgkiD4FiQaFCmAnKg==" - }, - "unimodules-font-interface": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/unimodules-font-interface/-/unimodules-font-interface-6.1.0.tgz", - "integrity": "sha512-OfSeWx9ew2SNENj/HhctfPU7hqeW0bzVZYGGJ0M6RNcRRWzwA6ltawyYwtuvRe/EEU3LwrFUSKPMCi9867hLyw==" - }, - "unimodules-image-loader-interface": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/unimodules-image-loader-interface/-/unimodules-image-loader-interface-6.1.0.tgz", - "integrity": "sha512-o8hZI6J6DGYyo2xSH6J+ipxME0blNfmaWU3P2Y2AUVxbEPdgjT2sVmufRWMKGhrt7gaNW4xF/JUbF9lq4Rui7w==" - }, - "unimodules-permissions-interface": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/unimodules-permissions-interface/-/unimodules-permissions-interface-6.1.0.tgz", - "integrity": "sha512-jeJx/y+Vn/Cp1/4su5XJ06UBul83MpXkYEqIOAb2jwaikhmj6tNwko7HpKy9OhfGfrhddCzwtedlro8xxZUk9A==" - }, - "unimodules-sensors-interface": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/unimodules-sensors-interface/-/unimodules-sensors-interface-6.1.0.tgz", - "integrity": "sha512-tJDOo3p4q4wmhyuwapNjYeON7cd5OSPYr3qDfMgPPg9m6pYM/FdQJ1PKMNb1NJUckpDgQ67Dows2jAdqkNRZSw==" + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/unimodules-app-loader/-/unimodules-app-loader-2.2.0.tgz", + "integrity": "sha512-porQWVWu7meIrCJ+c+H7eJyeC2rHioLUZiv4UcOs33SAyUhR4X05tCC8NIOuQJsF08Fj3a0ck7HUsd5xq+LqKA==" }, "unimodules-task-manager-interface": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/unimodules-task-manager-interface/-/unimodules-task-manager-interface-6.1.0.tgz", - "integrity": "sha512-wSsuX5fzd3oCCjHvrRFxysmCswhHZbJflVyAWzgSHtyMgxBOZobGN1C0UQ/plcu/JWY2+maTDPpE9OU6wzzzdg==" + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/unimodules-task-manager-interface/-/unimodules-task-manager-interface-6.2.0.tgz", + "integrity": "sha512-DrRVWF46TI93GbaDWAJ+bKd3vHjZq9pS8oJ6pZQN96qUTWkJ3yqa92yF118JxdGll+YtymxF/ZWCugBFMtISbA==" }, "union-value": { "version": "1.0.1", @@ -56883,6 +50974,7 @@ "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", "dev": true, + "peer": true, "requires": { "unique-slug": "^2.0.0" } @@ -56892,16 +50984,17 @@ "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", "dev": true, + "peer": true, "requires": { "imurmurhash": "^0.1.4" } }, "unique-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", - "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", "requires": { - "crypto-random-string": "^1.0.0" + "crypto-random-string": "^2.0.0" } }, "unit-compare": { @@ -56923,12 +51016,6 @@ "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" }, - "unquote": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", - "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=", - "dev": true - }, "unset-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", @@ -56974,7 +51061,86 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", - "dev": true + "dev": true, + "optional": true + }, + "update-notifier": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", + "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", + "requires": { + "boxen": "^5.0.0", + "chalk": "^4.1.0", + "configstore": "^5.0.1", + "has-yarn": "^2.1.0", + "import-lazy": "^2.1.0", + "is-ci": "^2.0.0", + "is-installed-globally": "^0.4.0", + "is-npm": "^5.0.0", + "is-yarn-global": "^0.3.0", + "latest-version": "^5.1.0", + "pupa": "^2.1.1", + "semver": "^7.3.4", + "semver-diff": "^3.1.1", + "xdg-basedir": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "requires": { + "color-convert": "^2.0.1" + } + }, + "boxen": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.0.1.tgz", + "integrity": "sha512-49VBlw+PrWEF51aCmy7QIteYPIFZxSpvqBdP/2itCPPlJ49kj9zg/XPRFrdkne2W+CfwXUls8exMvu1RysZpKA==", + "requires": { + "ansi-align": "^3.0.0", + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.0", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" + } + }, + "camelcase": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", + "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==" + }, + "chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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==", + "requires": { + "has-flag": "^4.0.0" + } + }, + "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==" + } + } }, "uri-js": { "version": "4.4.1", @@ -56995,6 +51161,7 @@ "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", "dev": true, + "peer": true, "requires": { "punycode": "1.3.2", "querystring": "0.2.0" @@ -57004,21 +51171,11 @@ "version": "1.3.2", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", - "dev": true + "dev": true, + "peer": true } } }, - "url-loader": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-2.3.0.tgz", - "integrity": "sha512-goSdg8VY+7nPZKUEChZSEtW5gjbS66USIGCeSJ1OVOJ7Yfuh/36YxCwMi5HVEJh6mqUYOoy3NJ0vlOMrWsSHog==", - "dev": true, - "requires": { - "loader-utils": "^1.2.3", - "mime": "^2.4.4", - "schema-utils": "^2.5.0" - } - }, "url-parse": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.1.tgz", @@ -57028,61 +51185,19 @@ "requires-port": "^1.0.0" } }, + "url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "requires": { + "prepend-http": "^2.0.0" + } + }, "use": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" }, - "use-callback-ref": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.2.5.tgz", - "integrity": "sha512-gN3vgMISAgacF7sqsLPByqoePooY3n2emTH59Ur5d/M8eg4WTWu1xp8i8DHjohftIyEx0S08RiYxbffr4j8Peg==", - "dev": true, - "requires": {} - }, - "use-composed-ref": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/use-composed-ref/-/use-composed-ref-1.1.0.tgz", - "integrity": "sha512-my1lNHGWsSDAhhVAT4MKs6IjBUtG6ZG11uUqexPH9PptiIZDQOzaF4f5tEbJ2+7qvNbtXNBbU3SfmN+fXlWDhg==", - "dev": true, - "requires": { - "ts-essentials": "^2.0.3" - } - }, - "use-isomorphic-layout-effect": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/use-isomorphic-layout-effect/-/use-isomorphic-layout-effect-1.1.1.tgz", - "integrity": "sha512-L7Evj8FGcwo/wpbv/qvSfrkHFtOpCzvM5yl2KVyDJoylVuSvzphiiasmjgQPttIGBAy2WKiBNR98q8w7PiNgKQ==", - "dev": true, - "requires": {} - }, - "use-latest": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/use-latest/-/use-latest-1.2.0.tgz", - "integrity": "sha512-d2TEuG6nSLKQLAfW3By8mKr8HurOlTkul0sOpxbClIv4SQ4iOd7BYr7VIzdbktUCnv7dua/60xzd8igMU6jmyw==", - "dev": true, - "requires": { - "use-isomorphic-layout-effect": "^1.0.0" - } - }, - "use-sidecar": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.0.5.tgz", - "integrity": "sha512-k9jnrjYNwN6xYLj1iaGhonDghfvmeTmYjAiGvOr7clwKfPjMXJf4/HOr7oT5tJwYafgp2tG2l3eZEOfoELiMcA==", - "dev": true, - "requires": { - "detect-node-es": "^1.1.0", - "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==", - "dev": true - } - } - }, "use-subscription": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/use-subscription/-/use-subscription-1.5.1.tgz", @@ -57167,20 +51282,17 @@ } } }, + "utf8": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", + "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==" + }, "utf8-byte-length": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/utf8-byte-length/-/utf8-byte-length-1.0.4.tgz", "integrity": "sha1-9F8VDExm7uloGGUFq5P8u4rWv2E=", "dev": true }, - "utif": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/utif/-/utif-2.0.1.tgz", - "integrity": "sha512-Z/S1fNKCicQTf375lIP9G8Sa1H/phcysstNrrSdZKj1f9g58J4NMgb5IgiEZN9/nLMPDwF0W7hdOe9Qq2IYoLg==", - "requires": { - "pako": "^1.0.5" - } - }, "util": { "version": "0.12.4", "resolved": "https://registry.npmjs.org/util/-/util-0.12.4.tgz", @@ -57200,22 +51312,6 @@ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, - "util.promisify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", - "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", - "dev": true, - "requires": { - "define-properties": "^1.1.2", - "object.getownpropertydescriptors": "^2.0.3" - } - }, - "utila": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", - "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=", - "dev": true - }, "utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", @@ -57280,7 +51376,13 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", - "dev": true + "dev": true, + "peer": true + }, + "vscode-languageserver-types": { + "version": "3.16.0", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.16.0.tgz", + "integrity": "sha512-k8luDIWJWyenLc5ToFQQMaSrqCHiLwyKPHKPQZ5zz21vM+vIVUSvsRpcbiECH4WR88K2XZqc4ScRcZ7nk/jbeA==" }, "w3c-hr-time": { "version": "1.0.2", @@ -57308,20 +51410,12 @@ "makeerror": "1.0.x" } }, - "warning": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/warning/-/warning-4.0.3.tgz", - "integrity": "sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==", - "dev": true, - "requires": { - "loose-envify": "^1.0.0" - } - }, "watchpack": { "version": "1.7.5", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz", "integrity": "sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ==", "dev": true, + "peer": true, "requires": { "chokidar": "^3.4.1", "graceful-fs": "^4.1.2", @@ -57335,6 +51429,7 @@ "integrity": "sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww==", "dev": true, "optional": true, + "peer": true, "requires": { "chokidar": "^2.1.8" }, @@ -57345,6 +51440,7 @@ "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", "dev": true, "optional": true, + "peer": true, "requires": { "anymatch": "^2.0.0", "async-each": "^1.0.1", @@ -57366,6 +51462,7 @@ "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", "dev": true, "optional": true, + "peer": true, "requires": { "bindings": "^1.5.0", "nan": "^2.12.1" @@ -57377,6 +51474,7 @@ "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", "dev": true, "optional": true, + "peer": true, "requires": { "is-glob": "^3.1.0", "path-dirname": "^1.0.0" @@ -57388,6 +51486,7 @@ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", "dev": true, "optional": true, + "peer": true, "requires": { "is-extglob": "^2.1.0" } @@ -57415,6 +51514,7 @@ "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.46.0.tgz", "integrity": "sha512-6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q==", "dev": true, + "peer": true, "requires": { "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-module-context": "1.9.0", @@ -57445,13 +51545,15 @@ "version": "6.4.2", "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", - "dev": true + "dev": true, + "peer": true }, "cacache": { "version": "12.0.4", "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", "dev": true, + "peer": true, "requires": { "bluebird": "^3.5.5", "chownr": "^1.1.1", @@ -57475,6 +51577,7 @@ "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", "dev": true, + "peer": true, "requires": { "is-descriptor": "^1.0.2", "isobject": "^3.0.1" @@ -57485,6 +51588,7 @@ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", "dev": true, + "peer": true, "requires": { "esrecurse": "^4.1.0", "estraverse": "^4.1.1" @@ -57495,6 +51599,7 @@ "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", "dev": true, + "peer": true, "requires": { "assign-symbols": "^1.0.0", "is-extendable": "^1.0.1" @@ -57505,6 +51610,7 @@ "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, + "peer": true, "requires": { "kind-of": "^6.0.0" } @@ -57514,6 +51620,7 @@ "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, + "peer": true, "requires": { "kind-of": "^6.0.0" } @@ -57523,6 +51630,7 @@ "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, + "peer": true, "requires": { "is-accessor-descriptor": "^1.0.0", "is-data-descriptor": "^1.0.0", @@ -57534,6 +51642,7 @@ "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "dev": true, + "peer": true, "requires": { "is-plain-object": "^2.0.4" } @@ -57542,13 +51651,15 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true + "dev": true, + "peer": true }, "lru-cache": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "dev": true, + "peer": true, "requires": { "yallist": "^3.0.2" } @@ -57558,6 +51669,7 @@ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "dev": true, + "peer": true, "requires": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", @@ -57579,6 +51691,7 @@ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", "dev": true, + "peer": true, "requires": { "glob": "^7.1.3" } @@ -57588,6 +51701,7 @@ "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", "dev": true, + "peer": true, "requires": { "ajv": "^6.1.0", "ajv-errors": "^1.0.0", @@ -57599,6 +51713,7 @@ "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", "dev": true, + "peer": true, "requires": { "randombytes": "^2.1.0" } @@ -57607,13 +51722,15 @@ "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "dev": true, + "peer": true }, "ssri": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz", "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==", "dev": true, + "peer": true, "requires": { "figgy-pudding": "^3.5.1" } @@ -57623,6 +51740,7 @@ "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz", "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==", "dev": true, + "peer": true, "requires": { "cacache": "^12.0.2", "find-cache-dir": "^2.1.0", @@ -57639,13 +51757,15 @@ "version": "4.0.3", "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", - "dev": true + "dev": true, + "peer": true }, "yallist": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true + "dev": true, + "peer": true } } }, @@ -57729,12 +51849,6 @@ "resolve-cwd": "^2.0.0" } }, - "interpret": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz", - "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==", - "dev": true - }, "locate-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", @@ -57857,71 +51971,12 @@ } } }, - "webpack-dev-middleware": { - "version": "3.7.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.7.3.tgz", - "integrity": "sha512-djelc/zGiz9nZj/U7PTBi2ViorGJXEWo/3ltkPbDyxCXhhEXkW0ce99falaok4TPj+AsxLiXJR0EBOb0zh9fKQ==", - "dev": true, - "requires": { - "memory-fs": "^0.4.1", - "mime": "^2.4.4", - "mkdirp": "^0.5.1", - "range-parser": "^1.2.1", - "webpack-log": "^2.0.0" - } - }, - "webpack-hot-middleware": { - "version": "2.25.0", - "resolved": "https://registry.npmjs.org/webpack-hot-middleware/-/webpack-hot-middleware-2.25.0.tgz", - "integrity": "sha512-xs5dPOrGPCzuRXNi8F6rwhawWvQQkeli5Ro48PRuQh8pYPCPmNnltP9itiUPT4xI8oW+y0m59lyyeQk54s5VgA==", - "dev": true, - "requires": { - "ansi-html": "0.0.7", - "html-entities": "^1.2.0", - "querystring": "^0.2.0", - "strip-ansi": "^3.0.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - } - } - }, - "webpack-log": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz", - "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==", - "dev": true, - "requires": { - "ansi-colors": "^3.0.0", - "uuid": "^3.3.2" - }, - "dependencies": { - "ansi-colors": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", - "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==", - "dev": true - } - } - }, "webpack-sources": { "version": "1.4.3", "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", "dev": true, + "peer": true, "requires": { "source-list-map": "^2.0.0", "source-map": "~0.6.1" @@ -57931,47 +51986,11 @@ "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true - } - } - }, - "webpack-virtual-modules": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.2.2.tgz", - "integrity": "sha512-kDUmfm3BZrei0y+1NTHJInejzxfhtU8eDj2M7OKb2IWrPFAeO1SOH2KuQ68MSZu9IGEHcxbkKKR1v18FrUSOmA==", - "dev": true, - "requires": { - "debug": "^3.0.0" - }, - "dependencies": { - "debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, - "requires": { - "ms": "^2.1.1" - } + "peer": true } } }, - "websocket-driver": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", - "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", - "dev": true, - "requires": { - "http-parser-js": ">=0.5.1", - "safe-buffer": ">=5.1.0", - "websocket-extensions": ">=0.1.1" - } - }, - "websocket-extensions": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", - "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true - }, "whatwg-encoding": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", @@ -58089,11 +52108,77 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", - "dev": true, "requires": { "string-width": "^4.0.0" } }, + "windows-release": { + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/windows-release/-/windows-release-3.3.3.tgz", + "integrity": "sha512-OSOGH1QYiW5yVor9TtmXKQvt2vjQqbYS+DqmsZw+r7xDwLXEeT3JGW0ZppFmHx4diyXmxt238KFR3N9jzevBRg==", + "requires": { + "execa": "^1.0.0" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "requires": { + "pump": "^3.0.0" + } + }, + "is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" + }, + "npm-run-path": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", + "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", + "requires": { + "path-key": "^2.0.0" + } + }, + "path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } + } + }, "word-wrap": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", @@ -58105,19 +52190,11 @@ "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", "dev": true, + "peer": true, "requires": { "errno": "~0.1.7" } }, - "worker-rpc": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/worker-rpc/-/worker-rpc-0.1.1.tgz", - "integrity": "sha512-P1WjMrUB3qgJNI9jfmpZ/htmBEjFh//6l/5y8SD9hg1Ef5zTTVVoRjTrTEzPrNBQvmhMxkoTsjOXN10GWU7aCg==", - "dev": true, - "requires": { - "microevent.ts": "~0.1.1" - } - }, "workerpool": { "version": "6.1.5", "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.1.5.tgz", @@ -58154,7 +52231,6 @@ "version": "3.0.3", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", - "dev": true, "requires": { "imurmurhash": "^0.1.4", "is-typedarray": "^1.0.0", @@ -58189,16 +52265,10 @@ "resolved": "https://registry.npmjs.org/xdate/-/xdate-0.8.2.tgz", "integrity": "sha1-17AzwASF0CaVuvAET06s2j/JYaM=" }, - "xhr": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.6.0.tgz", - "integrity": "sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==", - "requires": { - "global": "~4.4.0", - "is-function": "^1.0.1", - "parse-headers": "^2.0.0", - "xtend": "^4.0.0" - } + "xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==" }, "xml-js": { "version": "1.6.11", @@ -58214,11 +52284,6 @@ "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", "dev": true }, - "xml-parse-from-string": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/xml-parse-from-string/-/xml-parse-from-string-1.0.1.tgz", - "integrity": "sha1-qQKekp09vN7RafPG4oI42VpdWig=" - }, "xml-parser": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/xml-parser/-/xml-parser-1.2.1.tgz", @@ -58291,11 +52356,6 @@ "integrity": "sha512-fg03WRxtkCV6ohClePNAECYsmpKKTv5L8y/X3Dn1hQrec3POx2jHZ/0P2qQ6HvsrU1BmeqXcof3NGGueG6LxwQ==", "peer": true }, - "xregexp": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.1.1.tgz", - "integrity": "sha512-QJ1gfSUV7kEOLfpKFCjBJRnfPErUzkNKFMso4kDSmGpp3x6ZgkyKf74inxI7PnnQCFYq5TqYJCd7DrgDN8Q05A==" - }, "xss-filters": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/xss-filters/-/xss-filters-1.2.7.tgz", @@ -58314,14 +52374,17 @@ "yallist": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" }, "yaml": { "version": "1.10.2", "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==" + }, + "yaml-js": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/yaml-js/-/yaml-js-0.3.0.tgz", + "integrity": "sha512-JbTUdsPiCkOyz+JOSqAVc19omTnUBnBQglhuclYov5HpWbEOz8y+ftqWjiMa9Pe/eF/dmCUeNgVs/VWg53GlgQ==" }, "yargs": { "version": "16.2.0", diff --git a/package.json b/package.json index 79f1091695..6f5a34a51c 100644 --- a/package.json +++ b/package.json @@ -8,47 +8,47 @@ "private": true, "dependencies": { "@babel/runtime": "7.14.6", - "@formatjs/intl-datetimeformat": "4.1.5", - "@formatjs/intl-getcanonicallocales": "1.7.0", - "@formatjs/intl-locale": "2.4.32", - "@formatjs/intl-numberformat": "7.1.4", - "@formatjs/intl-pluralrules": "4.0.27", - "@formatjs/intl-relativetimeformat": "9.1.6", - "@mattermost/react-native-emm": "1.1.3", + "@formatjs/intl-datetimeformat": "4.1.6", + "@formatjs/intl-getcanonicallocales": "1.7.1", + "@formatjs/intl-locale": "2.4.33", + "@formatjs/intl-numberformat": "7.1.5", + "@formatjs/intl-pluralrules": "4.0.28", + "@formatjs/intl-relativetimeformat": "9.1.7", + "@mattermost/react-native-emm": "1.1.4", "@mattermost/react-native-network-client": "github:mattermost/react-native-network-client", - "@mattermost/react-native-paste-input": "0.1.3", + "@mattermost/react-native-paste-input": "0.1.4", "@nozbe/watermelondb": "0.22.0", - "@nozbe/with-observables": "1.3.0", + "@nozbe/with-observables": "1.4.0", "@react-native-community/async-storage": "1.12.1", "@react-native-community/cameraroll": "4.0.4", "@react-native-community/clipboard": "1.5.1", - "@react-native-cookies/cookies": "6.0.8", "@react-native-community/masked-view": "0.1.11", "@react-native-community/netinfo": "6.0.0", - "@rudderstack/rudder-sdk-react-native": "1.0.10", - "@sentry/react-native": "2.5.2", - "commonmark": "github:mattermost/commonmark.js#f6ab98dede6ce4b4e7adea140ac77249bfb2d6ce", - "commonmark-react-renderer": "github:mattermost/commonmark-react-renderer#3a2ac19cab725ad28b170fdc1d397dddedcf87eb", + "@react-native-cookies/cookies": "6.0.8", + "@rudderstack/rudder-sdk-react-native": "1.0.12", + "@sentry/react-native": "2.6.0", + "commonmark": "0.30.0", + "commonmark-react-renderer": "4.3.5", "deep-equal": "2.0.5", "deepmerge": "4.2.2", "emoji-regex": "9.2.2", "fuse.js": "6.4.6", - "jail-monkey": "2.4.0", + "jail-monkey": "2.5.0", "mime-db": "1.48.0", "moment-timezone": "0.5.33", - "nock": "13.1.0", + "nock": "13.1.1", "prop-types": "15.7.2", "react": "17.0.2", - "react-intl": "5.17.7", + "react-intl": "5.20.4", "react-native": "0.64.2", "react-native-android-open-settings": "1.3.0", "react-native-button": "3.0.1", - "react-native-calendars": "1.1263.0", + "react-native-calendars": "1.1264.0", "react-native-device-info": "8.1.3", "react-native-document-picker": "5.2.0", "react-native-elements": "3.4.2", "react-native-exception-handler": "2.10.10", - "react-native-fast-image": "8.3.4", + "react-native-fast-image": "8.3.6", "react-native-file-viewer": "2.1.4", "react-native-gesture-handler": "1.10.3", "react-native-haptic-feedback": "1.11.0", @@ -58,21 +58,20 @@ "react-native-keychain": "7.0.0", "react-native-linear-gradient": "2.5.6", "react-native-localize": "2.1.1", - "react-native-navigation": "7.13.0", + "react-native-navigation": "7.17.1", "react-native-notifications": "3.5.0", - "react-native-permissions": "3.0.4", + "react-native-permissions": "3.0.5", "react-native-reanimated": "2.2.0", - "react-native-redash": "16.0.11", + "react-native-redash": "16.1.1", "react-native-safe-area-context": "3.2.0", - "react-native-share": "6.2.1", + "react-native-share": "6.2.3", "react-native-slider": "0.11.0", "react-native-svg": "12.1.1", - "react-native-unimodules": "0.13.3", + "react-native-unimodules": "0.14.5", "react-native-vector-icons": "8.1.0", "react-native-video": "5.1.1", - "react-native-webview": "11.6.4", + "react-native-webview": "11.6.5", "react-native-youtube": "2.0.2", - "rn-fetch-blob": "0.12.0", "rn-placeholder": "3.0.3", "semver": "7.3.5", "serialize-error": "8.1.0", @@ -87,57 +86,53 @@ "@babel/plugin-proposal-decorators": "7.14.5", "@babel/plugin-transform-flow-strip-types": "7.14.5", "@babel/plugin-transform-runtime": "7.14.5", - "@babel/preset-env": "7.14.5", + "@babel/preset-env": "7.14.7", "@babel/preset-typescript": "7.14.5", "@babel/register": "7.14.5", "@react-native-community/eslint-config": "3.0.0", - "@storybook/addon-knobs": "6.2.9", - "@storybook/addon-ondevice-knobs": "5.3.25", - "@storybook/react-native": "5.3.25", - "@storybook/react-native-server": "5.3.23", "@testing-library/react-native": "7.2.0", - "@types/jest": "26.0.23", - "@types/react": "17.0.11", + "@types/jest": "26.0.24", + "@types/react": "17.0.14", "@types/react-intl": "3.0.0", - "@types/react-native": "0.64.10", + "@types/react-native": "0.64.11", "@types/react-native-button": "3.0.0", - "@types/react-native-share": "3.3.2", - "@types/react-native-video": "5.0.6", + "@types/react-native-share": "3.3.3", + "@types/react-native-video": "5.0.8", "@types/react-test-renderer": "17.0.1", - "@types/semver": "7.3.6", + "@types/semver": "7.3.7", "@types/shallow-equals": "1.0.0", - "@types/tinycolor2": "1.4.2", + "@types/tinycolor2": "1.4.3", "@types/url-parse": "1.4.3", - "@typescript-eslint/eslint-plugin": "4.28.0", - "@typescript-eslint/parser": "4.28.0", + "@typescript-eslint/eslint-plugin": "4.28.2", + "@typescript-eslint/parser": "4.28.2", "babel-eslint": "10.1.0", - "babel-jest": "26.6.3", + "babel-jest": "27.0.6", "babel-loader": "8.2.2", "babel-plugin-module-resolver": "4.1.0", "babel-plugin-transform-remove-console": "6.9.4", "deep-freeze": "0.0.1", "detox": "18.18.1", - "eslint": "7.29.0", + "eslint": "7.30.0", "eslint-plugin-header": "3.1.1", "eslint-plugin-jest": "24.3.6", - "eslint-plugin-mattermost": "github:mattermost/eslint-plugin-mattermost#070ce792d105482ffb2b27cfc0b7e78b3d20acee", + "eslint-plugin-mattermost": "github:mattermost/eslint-plugin-mattermost#46ad99355644a719bf32082f472048f526605181", "eslint-plugin-react": "7.24.0", "eslint-plugin-react-hooks": "4.2.0", - "husky": "6.0.0", + "husky": "7.0.1", "isomorphic-fetch": "3.0.0", "jest": "26.6.3", "jest-cli": "26.6.3", "jetifier": "2.0.0", - "metro-react-native-babel-preset": "0.66.0", + "metro-react-native-babel-preset": "0.66.1", "mmjstool": "github:mattermost/mattermost-utilities#519b99a4e51e6c67a0dbd46a6efdff27dc835aaa", "mock-async-storage": "2.2.0", "patch-package": "6.4.7", "react-native-dev-menu": "4.0.2", - "react-native-dotenv": "2.5.5", + "react-native-dotenv": "3.0.0", "react-native-storybook-loader": "2.0.4", "react-test-renderer": "17.0.2", "ts-jest": "27.0.3", - "typescript": "4.3.4", + "typescript": "4.3.5", "underscore": "1.13.1", "util": "0.12.4" }, diff --git a/patches/commonmark+0.30.0.patch b/patches/commonmark+0.30.0.patch new file mode 100644 index 0000000000..fadbf3a422 --- /dev/null +++ b/patches/commonmark+0.30.0.patch @@ -0,0 +1,6470 @@ +diff --git a/node_modules/commonmark/dist/commonmark.js b/node_modules/commonmark/dist/commonmark.js +index c1b33d7..61daeb4 100644 +--- a/node_modules/commonmark/dist/commonmark.js ++++ b/node_modules/commonmark/dist/commonmark.js +@@ -11,12 +11,22 @@ + case "block_quote": + case "list": + case "item": ++ case "table": ++ case "table_row": ++ case "table_cell": + case "paragraph": + case "heading": + case "emph": + case "strong": ++ case "del": + case "link": + case "image": ++ case "at_mention": ++ case "channel_link": ++ case "emoji": ++ case "hashtag": ++ case "mention_highlight": ++ case "search_highlight": + case "custom_inline": + case "custom_block": + return true; +@@ -87,12 +97,22 @@ + this._listData = {}; + this._info = null; + this._destination = null; ++ this._size = null; + this._title = null; + this._isFenced = false; + this._fenceChar = null; + this._fenceLength = 0; + this._fenceOffset = null; + this._level = null; ++ this._mentionName = null; ++ this._emojiName = null; ++ this._hashtag = null; ++ ++ // used by tables ++ this._alignColumns = []; ++ this._isHeading = false; ++ this._align = ""; ++ + this._onEnter = null; + this._onExit = null; + }; +@@ -165,6 +185,15 @@ + } + }); + ++ Object.defineProperty(proto, "size", { ++ get: function() { ++ return this._size; ++ }, ++ set: function(s) { ++ this._size = s; ++ } ++ }); ++ + Object.defineProperty(proto, "title", { + get: function() { + return this._title; +@@ -228,6 +257,57 @@ + } + }); + ++ Object.defineProperty(proto, "mentionName", { ++ get: function() { ++ return this._mentionName; ++ }, ++ }); ++ ++ Object.defineProperty(proto, "channelName", { ++ get: function() { ++ return this._channelName; ++ }, ++ }); ++ ++ Object.defineProperty(proto, "emojiName", { ++ get: function() { ++ return this._emojiName; ++ }, ++ }); ++ ++ Object.defineProperty(proto, "hashtag", { ++ get: function() { ++ return this._hashtag; ++ }, ++ }); ++ ++ Object.defineProperty(proto, "alignColumns", { ++ get: function() { ++ return this._alignColumns; ++ }, ++ set: function(s) { ++ this._alignColumns = s; ++ } ++ }); ++ ++ Object.defineProperty(proto, "isHeading", { ++ get: function() { ++ return this._isHeading; ++ }, ++ set: function(t) { ++ this._isHeading = t; ++ } ++ }); ++ ++ Object.defineProperty(proto, "align", { ++ get: function() { ++ return this._align; ++ }, ++ set: function(s) { ++ this._align = s; ++ } ++ }); ++ + Object.defineProperty(proto, "onEnter", { + get: function() { + return this._onEnter; +@@ -7521,7 +7601,12 @@ + } + }; + ++ var reWWW = /^www\d{0,3}\./i; + var normalizeURI = function(uri) { ++ if (reWWW.test(uri)) { ++ uri = 'http://' + uri; ++ } ++ + try { + return encode_1(uri); + } catch (err) { +@@ -7616,174 +7701,3873 @@ + }; + } + +- /*! http://mths.be/repeat v0.2.0 by @mathias */ +- if (!String.prototype.repeat) { +- (function() { +- var defineProperty = (function() { +- // IE 8 only supports `Object.defineProperty` on DOM elements +- try { +- var object = {}; +- var $defineProperty = Object.defineProperty; +- var result = $defineProperty(object, object, object) && $defineProperty; +- } catch(error) {} +- return result; +- }()); +- var repeat = function(count) { +- if (this == null) { +- throw TypeError(); +- } +- var string = String(this); +- // `ToInteger` +- var n = count ? Number(count) : 0; +- if (n != n) { // better `isNaN` +- n = 0; +- } +- // Account for out-of-bounds indices +- if (n < 0 || n == Infinity) { +- throw RangeError(); +- } +- var result = ''; +- while (n) { +- if (n % 2 == 1) { +- result += string; +- } +- if (n > 1) { +- string += string; +- } +- n >>= 1; +- } +- return result; +- }; +- if (defineProperty) { +- defineProperty(String.prototype, 'repeat', { +- 'value': repeat, +- 'configurable': true, +- 'writable': true +- }); +- } else { +- String.prototype.repeat = repeat; +- } +- }()); +- } ++ /*! ++ * XRegExp 5.0.2 ++ * ++ * Steven Levithan (c) 2007-present MIT License ++ */ + +- var normalizeURI$1 = normalizeURI; +- var unescapeString$1 = unescapeString; ++ /** ++ * XRegExp provides augmented, extensible regular expressions. You get additional regex syntax and ++ * flags, beyond what browsers support natively. XRegExp is also a regex utility belt with tools to ++ * make your client-side grepping simpler and more powerful, while freeing you from related ++ * cross-browser inconsistencies. ++ */ + +- // Constants for character codes: ++ // ==--------------------------== ++ // Private stuff ++ // ==--------------------------== + +- var C_NEWLINE = 10; +- var C_ASTERISK = 42; +- var C_UNDERSCORE = 95; +- var C_BACKTICK = 96; +- var C_OPEN_BRACKET = 91; +- var C_CLOSE_BRACKET = 93; +- var C_LESSTHAN = 60; +- var C_BANG = 33; +- var C_BACKSLASH$1 = 92; +- var C_AMPERSAND = 38; +- var C_OPEN_PAREN = 40; +- var C_CLOSE_PAREN = 41; +- var C_COLON = 58; +- var C_SINGLEQUOTE = 39; +- var C_DOUBLEQUOTE = 34; ++ // Property name used for extended regex instance data ++ const REGEX_DATA = 'xregexp'; ++ // Optional features that can be installed and uninstalled ++ const features = { ++ astral: false, ++ namespacing: true ++ }; ++ // Storage for fixed/extended native methods ++ const fixed = {}; ++ // Storage for regexes cached by `XRegExp.cache` ++ let regexCache = {}; ++ // Storage for pattern details cached by the `XRegExp` constructor ++ let patternCache = {}; ++ // Storage for regex syntax tokens added internally or by `XRegExp.addToken` ++ const tokens = []; ++ // Token scopes ++ const defaultScope = 'default'; ++ const classScope = 'class'; ++ // Regexes that match native regex syntax, including octals ++ const nativeTokens = { ++ // Any native multicharacter token in default scope, or any single character ++ 'default': /\\(?:0(?:[0-3][0-7]{0,2}|[4-7][0-7]?)?|[1-9]\d*|x[\dA-Fa-f]{2}|u(?:[\dA-Fa-f]{4}|{[\dA-Fa-f]+})|c[A-Za-z]|[\s\S])|\(\?(?:[:=!]|<[=!])|[?*+]\?|{\d+(?:,\d*)?}\??|[\s\S]/, ++ // Any native multicharacter token in character class scope, or any single character ++ 'class': /\\(?:[0-3][0-7]{0,2}|[4-7][0-7]?|x[\dA-Fa-f]{2}|u(?:[\dA-Fa-f]{4}|{[\dA-Fa-f]+})|c[A-Za-z]|[\s\S])|[\s\S]/ ++ }; ++ // Any backreference or dollar-prefixed character in replacement strings ++ const replacementToken = /\$(?:\{([^\}]+)\}|<([^>]+)>|(\d\d?|[\s\S]?))/g; ++ // Check for correct `exec` handling of nonparticipating capturing groups ++ const correctExecNpcg = /()??/.exec('')[1] === undefined; ++ // Check for ES6 `flags` prop support ++ const hasFlagsProp = /x/.flags !== undefined; ++ ++ function hasNativeFlag(flag) { ++ // Can't check based on the presence of properties/getters since browsers might support such ++ // properties even when they don't support the corresponding flag in regex construction (tested ++ // in Chrome 48, where `'unicode' in /x/` is true but trying to construct a regex with flag `u` ++ // throws an error) ++ let isSupported = true; ++ try { ++ // Can't use regex literals for testing even in a `try` because regex literals with ++ // unsupported flags cause a compilation error in IE ++ new RegExp('', flag); ++ ++ // Work around a broken/incomplete IE11 polyfill for sticky introduced in core-js 3.6.0 ++ if (flag === 'y') { ++ // Using function to avoid babel transform to regex literal ++ const gy = (() => 'gy')(); ++ const incompleteY = '.a'.replace(new RegExp('a', gy), '.') === '..'; ++ if (incompleteY) { ++ isSupported = false; ++ } ++ } ++ } catch (exception) { ++ isSupported = false; ++ } ++ return isSupported; ++ } ++ // Check for ES2018 `s` flag support ++ const hasNativeS = hasNativeFlag('s'); ++ // Check for ES6 `u` flag support ++ const hasNativeU = hasNativeFlag('u'); ++ // Check for ES6 `y` flag support ++ const hasNativeY = hasNativeFlag('y'); ++ // Tracker for known flags, including addon flags ++ const registeredFlags = { ++ g: true, ++ i: true, ++ m: true, ++ s: hasNativeS, ++ u: hasNativeU, ++ y: hasNativeY ++ }; ++ // Flags to remove when passing to native `RegExp` constructor ++ const nonnativeFlags = hasNativeS ? /[^gimsuy]+/g : /[^gimuy]+/g; + +- // Some regexps used in inline parser: ++ /** ++ * Attaches extended data and `XRegExp.prototype` properties to a regex object. ++ * ++ * @private ++ * @param {RegExp} regex Regex to augment. ++ * @param {Array} captureNames Array with capture names, or `null`. ++ * @param {String} xSource XRegExp pattern used to generate `regex`, or `null` if N/A. ++ * @param {String} xFlags XRegExp flags used to generate `regex`, or `null` if N/A. ++ * @param {Boolean} [isInternalOnly=false] Whether the regex will be used only for internal ++ * operations, and never exposed to users. For internal-only regexes, we can improve perf by ++ * skipping some operations like attaching `XRegExp.prototype` properties. ++ * @returns {!RegExp} Augmented regex. ++ */ ++ function augment(regex, captureNames, xSource, xFlags, isInternalOnly) { ++ regex[REGEX_DATA] = { ++ captureNames ++ }; + +- var ESCAPABLE$1 = ESCAPABLE; +- var ESCAPED_CHAR = "\\\\" + ESCAPABLE$1; ++ if (isInternalOnly) { ++ return regex; ++ } + +- var ENTITY$1 = ENTITY; +- var reHtmlTag$1 = reHtmlTag; ++ // Can't auto-inherit these since the XRegExp constructor returns a nonprimitive value ++ if (regex.__proto__) { ++ regex.__proto__ = XRegExp.prototype; ++ } else { ++ for (const p in XRegExp.prototype) { ++ // An `XRegExp.prototype.hasOwnProperty(p)` check wouldn't be worth it here, since this ++ // is performance sensitive, and enumerable `Object.prototype` or `RegExp.prototype` ++ // extensions exist on `regex.prototype` anyway ++ regex[p] = XRegExp.prototype[p]; ++ } ++ } + +- var rePunctuation = new RegExp( +- /^[!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061E\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u0AF0\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166D\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E42\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC9\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDF3C-\uDF3E]|\uD809[\uDC70-\uDC74]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]/ +- ); ++ regex[REGEX_DATA].source = xSource; ++ // Emulate the ES6 `flags` prop by ensuring flags are in alphabetical order ++ regex[REGEX_DATA].flags = xFlags ? xFlags.split('').sort().join('') : xFlags; + +- var reLinkTitle = new RegExp( +- '^(?:"(' + +- ESCAPED_CHAR + +- '|[^"\\x00])*"' + +- "|" + +- "'(" + +- ESCAPED_CHAR + +- "|[^'\\x00])*'" + +- "|" + +- "\\((" + +- ESCAPED_CHAR + +- "|[^()\\x00])*\\))" +- ); ++ return regex; ++ } + +- var reLinkDestinationBraces = /^(?:<(?:[^<>\n\\\x00]|\\.)*>)/; ++ /** ++ * Removes any duplicate characters from the provided string. ++ * ++ * @private ++ * @param {String} str String to remove duplicate characters from. ++ * @returns {string} String with any duplicate characters removed. ++ */ ++ function clipDuplicates(str) { ++ return str.replace(/([\s\S])(?=[\s\S]*\1)/g, ''); ++ } + +- var reEscapable = new RegExp("^" + ESCAPABLE$1); ++ /** ++ * Copies a regex object while preserving extended data and augmenting with `XRegExp.prototype` ++ * properties. The copy has a fresh `lastIndex` property (set to zero). Allows adding and removing ++ * flags g and y while copying the regex. ++ * ++ * @private ++ * @param {RegExp} regex Regex to copy. ++ * @param {Object} [options] Options object with optional properties: ++ * - `addG` {Boolean} Add flag g while copying the regex. ++ * - `addY` {Boolean} Add flag y while copying the regex. ++ * - `removeG` {Boolean} Remove flag g while copying the regex. ++ * - `removeY` {Boolean} Remove flag y while copying the regex. ++ * - `isInternalOnly` {Boolean} Whether the copied regex will be used only for internal ++ * operations, and never exposed to users. For internal-only regexes, we can improve perf by ++ * skipping some operations like attaching `XRegExp.prototype` properties. ++ * - `source` {String} Overrides `.source`, for special cases. ++ * @returns {RegExp} Copy of the provided regex, possibly with modified flags. ++ */ ++ function copyRegex(regex, options) { ++ if (!XRegExp.isRegExp(regex)) { ++ throw new TypeError('Type RegExp expected'); ++ } + +- var reEntityHere = new RegExp("^" + ENTITY$1, "i"); ++ const xData = regex[REGEX_DATA] || {}; ++ let flags = getNativeFlags(regex); ++ let flagsToAdd = ''; ++ let flagsToRemove = ''; ++ let xregexpSource = null; ++ let xregexpFlags = null; + +- var reTicks = /`+/; ++ options = options || {}; + +- var reTicksHere = /^`+/; ++ if (options.removeG) {flagsToRemove += 'g';} ++ if (options.removeY) {flagsToRemove += 'y';} ++ if (flagsToRemove) { ++ flags = flags.replace(new RegExp(`[${flagsToRemove}]+`, 'g'), ''); ++ } + +- var reEllipses = /\.\.\./g; ++ if (options.addG) {flagsToAdd += 'g';} ++ if (options.addY) {flagsToAdd += 'y';} ++ if (flagsToAdd) { ++ flags = clipDuplicates(flags + flagsToAdd); ++ } + +- var reDash = /--+/g; ++ if (!options.isInternalOnly) { ++ if (xData.source !== undefined) { ++ xregexpSource = xData.source; ++ } ++ // null or undefined; don't want to add to `flags` if the previous value was null, since ++ // that indicates we're not tracking original precompilation flags ++ if (xData.flags != null) { ++ // Flags are only added for non-internal regexes by `XRegExp.globalize`. Flags are never ++ // removed for non-internal regexes, so don't need to handle it ++ xregexpFlags = flagsToAdd ? clipDuplicates(xData.flags + flagsToAdd) : xData.flags; ++ } ++ } + +- var reEmailAutolink = /^<([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)>/; ++ // Augment with `XRegExp.prototype` properties, but use the native `RegExp` constructor to avoid ++ // searching for special tokens. That would be wrong for regexes constructed by `RegExp`, and ++ // unnecessary for regexes constructed by `XRegExp` because the regex has already undergone the ++ // translation to native regex syntax ++ regex = augment( ++ new RegExp(options.source || regex.source, flags), ++ hasNamedCapture(regex) ? xData.captureNames.slice(0) : null, ++ xregexpSource, ++ xregexpFlags, ++ options.isInternalOnly ++ ); + +- var reAutolink = /^<[A-Za-z][A-Za-z0-9.+-]{1,31}:[^<>\x00-\x20]*>/i; ++ return regex; ++ } + +- var reSpnl = /^ *(?:\n *)?/; ++ /** ++ * Converts hexadecimal to decimal. ++ * ++ * @private ++ * @param {String} hex ++ * @returns {number} ++ */ ++ function dec(hex) { ++ return parseInt(hex, 16); ++ } + +- var reWhitespaceChar = /^[ \t\n\x0b\x0c\x0d]/; ++ /** ++ * Returns a pattern that can be used in a native RegExp in place of an ignorable token such as an ++ * inline comment or whitespace with flag x. This is used directly as a token handler function ++ * passed to `XRegExp.addToken`. ++ * ++ * @private ++ * @param {String} match Match arg of `XRegExp.addToken` handler ++ * @param {String} scope Scope arg of `XRegExp.addToken` handler ++ * @param {String} flags Flags arg of `XRegExp.addToken` handler ++ * @returns {string} Either '' or '(?:)', depending on which is needed in the context of the match. ++ */ ++ function getContextualTokenSeparator(match, scope, flags) { ++ const matchEndPos = match.index + match[0].length; ++ const precedingChar = match.input[match.index - 1]; ++ const followingChar = match.input[matchEndPos]; ++ if ( ++ // No need to separate tokens if at the beginning or end of a group, before or after a ++ // group, or before or after a `|` ++ /^[()|]$/.test(precedingChar) || ++ /^[()|]$/.test(followingChar) || ++ // No need to separate tokens if at the beginning or end of the pattern ++ match.index === 0 || ++ matchEndPos === match.input.length || ++ // No need to separate tokens if at the beginning of a noncapturing group or lookaround. ++ // Looks only at the last 4 chars (at most) for perf when constructing long regexes. ++ /\(\?(?:[:=!]|<[=!])$/.test(match.input.substring(match.index - 4, match.index)) || ++ // Avoid separating tokens when the following token is a quantifier ++ isQuantifierNext(match.input, matchEndPos, flags) ++ ) { ++ return ''; ++ } ++ // Keep tokens separated. This avoids e.g. inadvertedly changing `\1 1` or `\1(?#)1` to `\11`. ++ // This also ensures all tokens remain as discrete atoms, e.g. it prevents converting the ++ // syntax error `(? :` into `(?:`. ++ return '(?:)'; ++ } + +- var reUnicodeWhitespaceChar = /^\s/; ++ /** ++ * Returns native `RegExp` flags used by a regex object. ++ * ++ * @private ++ * @param {RegExp} regex Regex to check. ++ * @returns {string} Native flags in use. ++ */ ++ function getNativeFlags(regex) { ++ return hasFlagsProp ? ++ regex.flags : ++ // Explicitly using `RegExp.prototype.toString` (rather than e.g. `String` or concatenation ++ // with an empty string) allows this to continue working predictably when ++ // `XRegExp.proptotype.toString` is overridden ++ /\/([a-z]*)$/i.exec(RegExp.prototype.toString.call(regex))[1]; ++ } + +- var reFinalSpace = / *$/; ++ /** ++ * Determines whether a regex has extended instance data used to track capture names. ++ * ++ * @private ++ * @param {RegExp} regex Regex to check. ++ * @returns {boolean} Whether the regex uses named capture. ++ */ ++ function hasNamedCapture(regex) { ++ return !!(regex[REGEX_DATA] && regex[REGEX_DATA].captureNames); ++ } + +- var reInitialSpace = /^ */; ++ /** ++ * Converts decimal to hexadecimal. ++ * ++ * @private ++ * @param {Number|String} dec ++ * @returns {string} ++ */ ++ function hex(dec) { ++ return parseInt(dec, 10).toString(16); ++ } + +- var reSpaceAtEndOfLine = /^ *(?:\n|$)/; ++ /** ++ * Checks whether the next nonignorable token after the specified position is a quantifier. ++ * ++ * @private ++ * @param {String} pattern Pattern to search within. ++ * @param {Number} pos Index in `pattern` to search at. ++ * @param {String} flags Flags used by the pattern. ++ * @returns {Boolean} Whether the next nonignorable token is a quantifier. ++ */ ++ function isQuantifierNext(pattern, pos, flags) { ++ const inlineCommentPattern = '\\(\\?#[^)]*\\)'; ++ const lineCommentPattern = '#[^#\\n]*'; ++ const quantifierPattern = '[?*+]|{\\d+(?:,\\d*)?}'; ++ const regex = flags.includes('x') ? ++ // Ignore any leading whitespace, line comments, and inline comments ++ new RegExp(`^(?:\\s|${lineCommentPattern}|${inlineCommentPattern})*(?:${quantifierPattern})`) : ++ // Ignore any leading inline comments ++ new RegExp(`^(?:${inlineCommentPattern})*(?:${quantifierPattern})`); ++ return regex.test(pattern.slice(pos)); ++ } + +- var reLinkLabel = /^\[(?:[^\\\[\]]|\\.){0,1000}\]/s; ++ /** ++ * Determines whether a value is of the specified type, by resolving its internal [[Class]]. ++ * ++ * @private ++ * @param {*} value Object to check. ++ * @param {String} type Type to check for, in TitleCase. ++ * @returns {boolean} Whether the object matches the type. ++ */ ++ function isType(value, type) { ++ return Object.prototype.toString.call(value) === `[object ${type}]`; ++ } + +- // Matches a string of non-special characters. +- var reMain = /^[^\n`\[\]\\!<&*_'"]+/m; ++ /** ++ * Returns the object, or throws an error if it is `null` or `undefined`. This is used to follow ++ * the ES5 abstract operation `ToObject`. ++ * ++ * @private ++ * @param {*} value Object to check and return. ++ * @returns {*} The provided object. ++ */ ++ function nullThrows(value) { ++ // null or undefined ++ if (value == null) { ++ throw new TypeError('Cannot convert null or undefined to object'); ++ } + +- var text = function(s) { +- var node = new Node("text"); +- node._literal = s; +- return node; +- }; ++ return value; ++ } + +- // normalize a reference in reference link (remove []s, trim, +- // collapse internal space, unicode case fold. +- // See commonmark/commonmark.js#168. +- var normalizeReference = function(string) { +- return string +- .slice(1, string.length - 1) +- .trim() +- .replace(/[ \t\r\n]+/, " ") +- .toLowerCase() +- .toUpperCase(); +- }; ++ /** ++ * Adds leading zeros if shorter than four characters. Used for fixed-length hexadecimal values. ++ * ++ * @private ++ * @param {String} str ++ * @returns {string} ++ */ ++ function pad4(str) { ++ while (str.length < 4) { ++ str = `0${str}`; ++ } ++ return str; ++ } + +- // INLINE PARSER ++ /** ++ * Checks for flag-related errors, and strips/applies flags in a leading mode modifier. Offloads ++ * the flag preparation logic from the `XRegExp` constructor. ++ * ++ * @private ++ * @param {String} pattern Regex pattern, possibly with a leading mode modifier. ++ * @param {String} flags Any combination of flags. ++ * @returns {!Object} Object with properties `pattern` and `flags`. ++ */ ++ function prepareFlags(pattern, flags) { ++ // Recent browsers throw on duplicate flags, so copy this behavior for nonnative flags ++ if (clipDuplicates(flags) !== flags) { ++ throw new SyntaxError(`Invalid duplicate regex flag ${flags}`); ++ } + +- // These are methods of an InlineParser object, defined below. +- // An InlineParser keeps track of a subject (a string to be +- // parsed) and a position in that subject. ++ // Strip and apply a leading mode modifier with any combination of flags except g or y ++ pattern = pattern.replace(/^\(\?([\w$]+)\)/, ($0, $1) => { ++ if (/[gy]/.test($1)) { ++ throw new SyntaxError(`Cannot use flag g or y in mode modifier ${$0}`); ++ } ++ // Allow duplicate flags within the mode modifier ++ flags = clipDuplicates(flags + $1); ++ return ''; ++ }); ++ ++ // Throw on unknown native or nonnative flags ++ for (const flag of flags) { ++ if (!registeredFlags[flag]) { ++ throw new SyntaxError(`Unknown regex flag ${flag}`); ++ } ++ } + +- // If re matches at current position in the subject, advance +- // position in subject and return the match; otherwise return null. ++ return { ++ pattern, ++ flags ++ }; ++ } ++ ++ /** ++ * Prepares an options object from the given value. ++ * ++ * @private ++ * @param {String|Object} value Value to convert to an options object. ++ * @returns {Object} Options object. ++ */ ++ function prepareOptions(value) { ++ const options = {}; ++ ++ if (isType(value, 'String')) { ++ XRegExp.forEach(value, /[^\s,]+/, (match) => { ++ options[match] = true; ++ }); ++ ++ return options; ++ } ++ ++ return value; ++ } ++ ++ /** ++ * Registers a flag so it doesn't throw an 'unknown flag' error. ++ * ++ * @private ++ * @param {String} flag Single-character flag to register. ++ */ ++ function registerFlag(flag) { ++ if (!/^[\w$]$/.test(flag)) { ++ throw new Error('Flag must be a single character A-Za-z0-9_$'); ++ } ++ ++ registeredFlags[flag] = true; ++ } ++ ++ /** ++ * Runs built-in and custom regex syntax tokens in reverse insertion order at the specified ++ * position, until a match is found. ++ * ++ * @private ++ * @param {String} pattern Original pattern from which an XRegExp object is being built. ++ * @param {String} flags Flags being used to construct the regex. ++ * @param {Number} pos Position to search for tokens within `pattern`. ++ * @param {Number} scope Regex scope to apply: 'default' or 'class'. ++ * @param {Object} context Context object to use for token handler functions. ++ * @returns {Object} Object with properties `matchLength`, `output`, and `reparse`; or `null`. ++ */ ++ function runTokens(pattern, flags, pos, scope, context) { ++ let i = tokens.length; ++ const leadChar = pattern[pos]; ++ let result = null; ++ let match; ++ let t; ++ ++ // Run in reverse insertion order ++ while (i--) { ++ t = tokens[i]; ++ if ( ++ (t.leadChar && t.leadChar !== leadChar) || ++ (t.scope !== scope && t.scope !== 'all') || ++ (t.flag && !flags.includes(t.flag)) ++ ) { ++ continue; ++ } ++ ++ match = XRegExp.exec(pattern, t.regex, pos, 'sticky'); ++ if (match) { ++ result = { ++ matchLength: match[0].length, ++ output: t.handler.call(context, match, scope, flags), ++ reparse: t.reparse ++ }; ++ // Finished with token tests ++ break; ++ } ++ } ++ ++ return result; ++ } ++ ++ /** ++ * Enables or disables implicit astral mode opt-in. When enabled, flag A is automatically added to ++ * all new regexes created by XRegExp. This causes an error to be thrown when creating regexes if ++ * the Unicode Base addon is not available, since flag A is registered by that addon. ++ * ++ * @private ++ * @param {Boolean} on `true` to enable; `false` to disable. ++ */ ++ function setAstral(on) { ++ features.astral = on; ++ } ++ ++ /** ++ * Adds named capture groups to the `groups` property of match arrays. See here for details: ++ * https://github.com/tc39/proposal-regexp-named-groups ++ * ++ * @private ++ * @param {Boolean} on `true` to enable; `false` to disable. ++ */ ++ function setNamespacing(on) { ++ features.namespacing = on; ++ } ++ ++ // ==--------------------------== ++ // Constructor ++ // ==--------------------------== ++ ++ /** ++ * Creates an extended regular expression object for matching text with a pattern. Differs from a ++ * native regular expression in that additional syntax and flags are supported. The returned object ++ * is in fact a native `RegExp` and works with all native methods. ++ * ++ * @class XRegExp ++ * @constructor ++ * @param {String|RegExp} pattern Regex pattern string, or an existing regex object to copy. ++ * @param {String} [flags] Any combination of flags. ++ * Native flags: ++ * - `g` - global ++ * - `i` - ignore case ++ * - `m` - multiline anchors ++ * - `u` - unicode (ES6) ++ * - `y` - sticky (Firefox 3+, ES6) ++ * Additional XRegExp flags: ++ * - `n` - explicit capture ++ * - `s` - dot matches all (aka singleline) - works even when not natively supported ++ * - `x` - free-spacing and line comments (aka extended) ++ * - `A` - astral (requires the Unicode Base addon) ++ * Flags cannot be provided when constructing one `RegExp` from another. ++ * @returns {RegExp} Extended regular expression object. ++ * @example ++ * ++ * // With named capture and flag x ++ * XRegExp(`(? [0-9]{4} ) -? # year ++ * (? [0-9]{2} ) -? # month ++ * (? [0-9]{2} ) # day`, 'x'); ++ * ++ * // Providing a regex object copies it. Native regexes are recompiled using native (not XRegExp) ++ * // syntax. Copies maintain extended data, are augmented with `XRegExp.prototype` properties, and ++ * // have fresh `lastIndex` properties (set to zero). ++ * XRegExp(/regex/); ++ */ ++ function XRegExp(pattern, flags) { ++ if (XRegExp.isRegExp(pattern)) { ++ if (flags !== undefined) { ++ throw new TypeError('Cannot supply flags when copying a RegExp'); ++ } ++ return copyRegex(pattern); ++ } ++ ++ // Copy the argument behavior of `RegExp` ++ pattern = pattern === undefined ? '' : String(pattern); ++ flags = flags === undefined ? '' : String(flags); ++ ++ if (XRegExp.isInstalled('astral') && !flags.includes('A')) { ++ // This causes an error to be thrown if the Unicode Base addon is not available ++ flags += 'A'; ++ } ++ ++ if (!patternCache[pattern]) { ++ patternCache[pattern] = {}; ++ } ++ ++ if (!patternCache[pattern][flags]) { ++ const context = { ++ hasNamedCapture: false, ++ captureNames: [] ++ }; ++ let scope = defaultScope; ++ let output = ''; ++ let pos = 0; ++ let result; ++ ++ // Check for flag-related errors, and strip/apply flags in a leading mode modifier ++ const applied = prepareFlags(pattern, flags); ++ let appliedPattern = applied.pattern; ++ const appliedFlags = applied.flags; ++ ++ // Use XRegExp's tokens to translate the pattern to a native regex pattern. ++ // `appliedPattern.length` may change on each iteration if tokens use `reparse` ++ while (pos < appliedPattern.length) { ++ do { ++ // Check for custom tokens at the current position ++ result = runTokens(appliedPattern, appliedFlags, pos, scope, context); ++ // If the matched token used the `reparse` option, splice its output into the ++ // pattern before running tokens again at the same position ++ if (result && result.reparse) { ++ appliedPattern = appliedPattern.slice(0, pos) + ++ result.output + ++ appliedPattern.slice(pos + result.matchLength); ++ } ++ } while (result && result.reparse); ++ ++ if (result) { ++ output += result.output; ++ pos += (result.matchLength || 1); ++ } else { ++ // Get the native token at the current position ++ const [token] = XRegExp.exec(appliedPattern, nativeTokens[scope], pos, 'sticky'); ++ output += token; ++ pos += token.length; ++ if (token === '[' && scope === defaultScope) { ++ scope = classScope; ++ } else if (token === ']' && scope === classScope) { ++ scope = defaultScope; ++ } ++ } ++ } ++ ++ patternCache[pattern][flags] = { ++ // Use basic cleanup to collapse repeated empty groups like `(?:)(?:)` to `(?:)`. Empty ++ // groups are sometimes inserted during regex transpilation in order to keep tokens ++ // separated. However, more than one empty group in a row is never needed. ++ pattern: output.replace(/(?:\(\?:\))+/g, '(?:)'), ++ // Strip all but native flags ++ flags: appliedFlags.replace(nonnativeFlags, ''), ++ // `context.captureNames` has an item for each capturing group, even if unnamed ++ captures: context.hasNamedCapture ? context.captureNames : null ++ }; ++ } ++ ++ const generated = patternCache[pattern][flags]; ++ return augment( ++ new RegExp(generated.pattern, generated.flags), ++ generated.captures, ++ pattern, ++ flags ++ ); ++ } ++ ++ // Add `RegExp.prototype` to the prototype chain ++ XRegExp.prototype = new RegExp(); ++ ++ // ==--------------------------== ++ // Public properties ++ // ==--------------------------== ++ ++ /** ++ * The XRegExp version number as a string containing three dot-separated parts. For example, ++ * '2.0.0-beta-3'. ++ * ++ * @static ++ * @memberOf XRegExp ++ * @type String ++ */ ++ XRegExp.version = '5.0.2'; ++ ++ // ==--------------------------== ++ // Public methods ++ // ==--------------------------== ++ ++ // Intentionally undocumented; used in tests and addons ++ XRegExp._clipDuplicates = clipDuplicates; ++ XRegExp._hasNativeFlag = hasNativeFlag; ++ XRegExp._dec = dec; ++ XRegExp._hex = hex; ++ XRegExp._pad4 = pad4; ++ ++ /** ++ * Extends XRegExp syntax and allows custom flags. This is used internally and can be used to ++ * create XRegExp addons. If more than one token can match the same string, the last added wins. ++ * ++ * @memberOf XRegExp ++ * @param {RegExp} regex Regex object that matches the new token. ++ * @param {Function} handler Function that returns a new pattern string (using native regex syntax) ++ * to replace the matched token within all future XRegExp regexes. Has access to persistent ++ * properties of the regex being built, through `this`. Invoked with three arguments: ++ * - The match array, with named backreference properties. ++ * - The regex scope where the match was found: 'default' or 'class'. ++ * - The flags used by the regex, including any flags in a leading mode modifier. ++ * The handler function becomes part of the XRegExp construction process, so be careful not to ++ * construct XRegExps within the function or you will trigger infinite recursion. ++ * @param {Object} [options] Options object with optional properties: ++ * - `scope` {String} Scope where the token applies: 'default', 'class', or 'all'. ++ * - `flag` {String} Single-character flag that triggers the token. This also registers the ++ * flag, which prevents XRegExp from throwing an 'unknown flag' error when the flag is used. ++ * - `optionalFlags` {String} Any custom flags checked for within the token `handler` that are ++ * not required to trigger the token. This registers the flags, to prevent XRegExp from ++ * throwing an 'unknown flag' error when any of the flags are used. ++ * - `reparse` {Boolean} Whether the `handler` function's output should not be treated as ++ * final, and instead be reparseable by other tokens (including the current token). Allows ++ * token chaining or deferring. ++ * - `leadChar` {String} Single character that occurs at the beginning of any successful match ++ * of the token (not always applicable). This doesn't change the behavior of the token unless ++ * you provide an erroneous value. However, providing it can increase the token's performance ++ * since the token can be skipped at any positions where this character doesn't appear. ++ * @example ++ * ++ * // Basic usage: Add \a for the ALERT control code ++ * XRegExp.addToken( ++ * /\\a/, ++ * () => '\\x07', ++ * {scope: 'all'} ++ * ); ++ * XRegExp('\\a[\\a-\\n]+').test('\x07\n\x07'); // -> true ++ * ++ * // Add the U (ungreedy) flag from PCRE and RE2, which reverses greedy and lazy quantifiers. ++ * // Since `scope` is not specified, it uses 'default' (i.e., transformations apply outside of ++ * // character classes only) ++ * XRegExp.addToken( ++ * /([?*+]|{\d+(?:,\d*)?})(\??)/, ++ * (match) => `${match[1]}${match[2] ? '' : '?'}`, ++ * {flag: 'U'} ++ * ); ++ * XRegExp('a+', 'U').exec('aaa')[0]; // -> 'a' ++ * XRegExp('a+?', 'U').exec('aaa')[0]; // -> 'aaa' ++ */ ++ XRegExp.addToken = (regex, handler, options) => { ++ options = options || {}; ++ let {optionalFlags} = options; ++ ++ if (options.flag) { ++ registerFlag(options.flag); ++ } ++ ++ if (optionalFlags) { ++ optionalFlags = optionalFlags.split(''); ++ for (const flag of optionalFlags) { ++ registerFlag(flag); ++ } ++ } ++ ++ // Add to the private list of syntax tokens ++ tokens.push({ ++ regex: copyRegex(regex, { ++ addG: true, ++ addY: hasNativeY, ++ isInternalOnly: true ++ }), ++ handler, ++ scope: options.scope || defaultScope, ++ flag: options.flag, ++ reparse: options.reparse, ++ leadChar: options.leadChar ++ }); ++ ++ // Reset the pattern cache used by the `XRegExp` constructor, since the same pattern and flags ++ // might now produce different results ++ XRegExp.cache.flush('patterns'); ++ }; ++ ++ /** ++ * Caches and returns the result of calling `XRegExp(pattern, flags)`. On any subsequent call with ++ * the same pattern and flag combination, the cached copy of the regex is returned. ++ * ++ * @memberOf XRegExp ++ * @param {String} pattern Regex pattern string. ++ * @param {String} [flags] Any combination of XRegExp flags. ++ * @returns {RegExp} Cached XRegExp object. ++ * @example ++ * ++ * let match; ++ * while (match = XRegExp.cache('.', 'gs').exec('abc')) { ++ * // The regex is compiled once only ++ * } ++ */ ++ XRegExp.cache = (pattern, flags) => { ++ if (!regexCache[pattern]) { ++ regexCache[pattern] = {}; ++ } ++ return regexCache[pattern][flags] || ( ++ regexCache[pattern][flags] = XRegExp(pattern, flags) ++ ); ++ }; ++ ++ // Intentionally undocumented; used in tests ++ XRegExp.cache.flush = (cacheName) => { ++ if (cacheName === 'patterns') { ++ // Flush the pattern cache used by the `XRegExp` constructor ++ patternCache = {}; ++ } else { ++ // Flush the regex cache populated by `XRegExp.cache` ++ regexCache = {}; ++ } ++ }; ++ ++ /** ++ * Escapes any regular expression metacharacters, for use when matching literal strings. The result ++ * can safely be used at any position within a regex that uses any flags. ++ * ++ * @memberOf XRegExp ++ * @param {String} str String to escape. ++ * @returns {string} String with regex metacharacters escaped. ++ * @example ++ * ++ * XRegExp.escape('Escaped? <.>'); ++ * // -> 'Escaped\?\u0020<\.>' ++ */ ++ // Following are the contexts where each metacharacter needs to be escaped because it would ++ // otherwise have a special meaning, change the meaning of surrounding characters, or cause an ++ // error. Context 'default' means outside character classes only. ++ // - `\` - context: all ++ // - `[()*+?.$|` - context: default ++ // - `]` - context: default with flag u or if forming the end of a character class ++ // - `{}` - context: default with flag u or if part of a valid/complete quantifier pattern ++ // - `,` - context: default if in a position that causes an unescaped `{` to turn into a quantifier. ++ // Ex: `/^a{1\,2}$/` matches `'a{1,2}'`, but `/^a{1,2}$/` matches `'a'` or `'aa'` ++ // - `#` and - context: default with flag x ++ // - `^` - context: default, and context: class if it's the first character in the class ++ // - `-` - context: class if part of a valid character class range ++ XRegExp.escape = (str) => String(nullThrows(str)). ++ // Escape most special chars with a backslash ++ replace(/[\\\[\]{}()*+?.^$|]/g, '\\$&'). ++ // Convert to \uNNNN for special chars that can't be escaped when used with ES6 flag `u` ++ replace(/[\s#\-,]/g, (match) => `\\u${pad4(hex(match.charCodeAt(0)))}`); ++ ++ /** ++ * Executes a regex search in a specified string. Returns a match array or `null`. If the provided ++ * regex uses named capture, named capture properties are included on the match array's `groups` ++ * property. Optional `pos` and `sticky` arguments specify the search start position, and whether ++ * the match must start at the specified position only. The `lastIndex` property of the provided ++ * regex is not used, but is updated for compatibility. Also fixes browser bugs compared to the ++ * native `RegExp.prototype.exec` and can be used reliably cross-browser. ++ * ++ * @memberOf XRegExp ++ * @param {String} str String to search. ++ * @param {RegExp} regex Regex to search with. ++ * @param {Number} [pos=0] Zero-based index at which to start the search. ++ * @param {Boolean|String} [sticky=false] Whether the match must start at the specified position ++ * only. The string `'sticky'` is accepted as an alternative to `true`. ++ * @returns {Array} Match array with named capture properties on the `groups` object, or `null`. If ++ * the `namespacing` feature is off, named capture properties are directly on the match array. ++ * @example ++ * ++ * // Basic use, with named capturing group ++ * let match = XRegExp.exec('U+2620', XRegExp('U\\+(?[0-9A-F]{4})')); ++ * match.groups.hex; // -> '2620' ++ * ++ * // With pos and sticky, in a loop ++ * let pos = 2, result = [], match; ++ * while (match = XRegExp.exec('<1><2><3><4>5<6>', /<(\d)>/, pos, 'sticky')) { ++ * result.push(match[1]); ++ * pos = match.index + match[0].length; ++ * } ++ * // result -> ['2', '3', '4'] ++ */ ++ XRegExp.exec = (str, regex, pos, sticky) => { ++ let cacheKey = 'g'; ++ let addY = false; ++ let fakeY = false; ++ let match; ++ ++ addY = hasNativeY && !!(sticky || (regex.sticky && sticky !== false)); ++ if (addY) { ++ cacheKey += 'y'; ++ } else if (sticky) { ++ // Simulate sticky matching by appending an empty capture to the original regex. The ++ // resulting regex will succeed no matter what at the current index (set with `lastIndex`), ++ // and will not search the rest of the subject string. We'll know that the original regex ++ // has failed if that last capture is `''` rather than `undefined` (i.e., if that last ++ // capture participated in the match). ++ fakeY = true; ++ cacheKey += 'FakeY'; ++ } ++ ++ regex[REGEX_DATA] = regex[REGEX_DATA] || {}; ++ ++ // Shares cached copies with `XRegExp.match`/`replace` ++ const r2 = regex[REGEX_DATA][cacheKey] || ( ++ regex[REGEX_DATA][cacheKey] = copyRegex(regex, { ++ addG: true, ++ addY, ++ source: fakeY ? `${regex.source}|()` : undefined, ++ removeY: sticky === false, ++ isInternalOnly: true ++ }) ++ ); ++ ++ pos = pos || 0; ++ r2.lastIndex = pos; ++ ++ // Fixed `exec` required for `lastIndex` fix, named backreferences, etc. ++ match = fixed.exec.call(r2, str); ++ ++ // Get rid of the capture added by the pseudo-sticky matcher if needed. An empty string means ++ // the original regexp failed (see above). ++ if (fakeY && match && match.pop() === '') { ++ match = null; ++ } ++ ++ if (regex.global) { ++ regex.lastIndex = match ? r2.lastIndex : 0; ++ } ++ ++ return match; ++ }; ++ ++ /** ++ * Executes a provided function once per regex match. Searches always start at the beginning of the ++ * string and continue until the end, regardless of the state of the regex's `global` property and ++ * initial `lastIndex`. ++ * ++ * @memberOf XRegExp ++ * @param {String} str String to search. ++ * @param {RegExp} regex Regex to search with. ++ * @param {Function} callback Function to execute for each match. Invoked with four arguments: ++ * - The match array, with named backreference properties. ++ * - The zero-based match index. ++ * - The string being traversed. ++ * - The regex object being used to traverse the string. ++ * @example ++ * ++ * // Extracts every other digit from a string ++ * const evens = []; ++ * XRegExp.forEach('1a2345', /\d/, (match, i) => { ++ * if (i % 2) evens.push(+match[0]); ++ * }); ++ * // evens -> [2, 4] ++ */ ++ XRegExp.forEach = (str, regex, callback) => { ++ let pos = 0; ++ let i = -1; ++ let match; ++ ++ while ((match = XRegExp.exec(str, regex, pos))) { ++ // Because `regex` is provided to `callback`, the function could use the deprecated/ ++ // nonstandard `RegExp.prototype.compile` to mutate the regex. However, since `XRegExp.exec` ++ // doesn't use `lastIndex` to set the search position, this can't lead to an infinite loop, ++ // at least. Actually, because of the way `XRegExp.exec` caches globalized versions of ++ // regexes, mutating the regex will not have any effect on the iteration or matched strings, ++ // which is a nice side effect that brings extra safety. ++ callback(match, ++i, str, regex); ++ ++ pos = match.index + (match[0].length || 1); ++ } ++ }; ++ ++ /** ++ * Copies a regex object and adds flag `g`. The copy maintains extended data, is augmented with ++ * `XRegExp.prototype` properties, and has a fresh `lastIndex` property (set to zero). Native ++ * regexes are not recompiled using XRegExp syntax. ++ * ++ * @memberOf XRegExp ++ * @param {RegExp} regex Regex to globalize. ++ * @returns {RegExp} Copy of the provided regex with flag `g` added. ++ * @example ++ * ++ * const globalCopy = XRegExp.globalize(/regex/); ++ * globalCopy.global; // -> true ++ */ ++ XRegExp.globalize = (regex) => copyRegex(regex, {addG: true}); ++ ++ /** ++ * Installs optional features according to the specified options. Can be undone using ++ * `XRegExp.uninstall`. ++ * ++ * @memberOf XRegExp ++ * @param {Object|String} options Options object or string. ++ * @example ++ * ++ * // With an options object ++ * XRegExp.install({ ++ * // Enables support for astral code points in Unicode addons (implicitly sets flag A) ++ * astral: true, ++ * ++ * // Adds named capture groups to the `groups` property of matches ++ * namespacing: true ++ * }); ++ * ++ * // With an options string ++ * XRegExp.install('astral namespacing'); ++ */ ++ XRegExp.install = (options) => { ++ options = prepareOptions(options); ++ ++ if (!features.astral && options.astral) { ++ setAstral(true); ++ } ++ ++ if (!features.namespacing && options.namespacing) { ++ setNamespacing(true); ++ } ++ }; ++ ++ /** ++ * Checks whether an individual optional feature is installed. ++ * ++ * @memberOf XRegExp ++ * @param {String} feature Name of the feature to check. One of: ++ * - `astral` ++ * - `namespacing` ++ * @returns {boolean} Whether the feature is installed. ++ * @example ++ * ++ * XRegExp.isInstalled('astral'); ++ */ ++ XRegExp.isInstalled = (feature) => !!(features[feature]); ++ ++ /** ++ * Returns `true` if an object is a regex; `false` if it isn't. This works correctly for regexes ++ * created in another frame, when `instanceof` and `constructor` checks would fail. ++ * ++ * @memberOf XRegExp ++ * @param {*} value Object to check. ++ * @returns {boolean} Whether the object is a `RegExp` object. ++ * @example ++ * ++ * XRegExp.isRegExp('string'); // -> false ++ * XRegExp.isRegExp(/regex/i); // -> true ++ * XRegExp.isRegExp(RegExp('^', 'm')); // -> true ++ * XRegExp.isRegExp(XRegExp('(?s).')); // -> true ++ */ ++ XRegExp.isRegExp = (value) => Object.prototype.toString.call(value) === '[object RegExp]'; ++ // Same as `isType(value, 'RegExp')`, but avoiding that function call here for perf since ++ // `isRegExp` is used heavily by internals including regex construction ++ ++ /** ++ * Returns the first matched string, or in global mode, an array containing all matched strings. ++ * This is essentially a more convenient re-implementation of `String.prototype.match` that gives ++ * the result types you actually want (string instead of `exec`-style array in match-first mode, ++ * and an empty array instead of `null` when no matches are found in match-all mode). It also lets ++ * you override flag g and ignore `lastIndex`, and fixes browser bugs. ++ * ++ * @memberOf XRegExp ++ * @param {String} str String to search. ++ * @param {RegExp} regex Regex to search with. ++ * @param {String} [scope='one'] Use 'one' to return the first match as a string. Use 'all' to ++ * return an array of all matched strings. If not explicitly specified and `regex` uses flag g, ++ * `scope` is 'all'. ++ * @returns {String|Array} In match-first mode: First match as a string, or `null`. In match-all ++ * mode: Array of all matched strings, or an empty array. ++ * @example ++ * ++ * // Match first ++ * XRegExp.match('abc', /\w/); // -> 'a' ++ * XRegExp.match('abc', /\w/g, 'one'); // -> 'a' ++ * XRegExp.match('abc', /x/g, 'one'); // -> null ++ * ++ * // Match all ++ * XRegExp.match('abc', /\w/g); // -> ['a', 'b', 'c'] ++ * XRegExp.match('abc', /\w/, 'all'); // -> ['a', 'b', 'c'] ++ * XRegExp.match('abc', /x/, 'all'); // -> [] ++ */ ++ XRegExp.match = (str, regex, scope) => { ++ const global = (regex.global && scope !== 'one') || scope === 'all'; ++ const cacheKey = ((global ? 'g' : '') + (regex.sticky ? 'y' : '')) || 'noGY'; ++ ++ regex[REGEX_DATA] = regex[REGEX_DATA] || {}; ++ ++ // Shares cached copies with `XRegExp.exec`/`replace` ++ const r2 = regex[REGEX_DATA][cacheKey] || ( ++ regex[REGEX_DATA][cacheKey] = copyRegex(regex, { ++ addG: !!global, ++ removeG: scope === 'one', ++ isInternalOnly: true ++ }) ++ ); ++ ++ const result = String(nullThrows(str)).match(r2); ++ ++ if (regex.global) { ++ regex.lastIndex = ( ++ (scope === 'one' && result) ? ++ // Can't use `r2.lastIndex` since `r2` is nonglobal in this case ++ (result.index + result[0].length) : 0 ++ ); ++ } ++ ++ return global ? (result || []) : (result && result[0]); ++ }; ++ ++ /** ++ * Retrieves the matches from searching a string using a chain of regexes that successively search ++ * within previous matches. The provided `chain` array can contain regexes and or objects with ++ * `regex` and `backref` properties. When a backreference is specified, the named or numbered ++ * backreference is passed forward to the next regex or returned. ++ * ++ * @memberOf XRegExp ++ * @param {String} str String to search. ++ * @param {Array} chain Regexes that each search for matches within preceding results. ++ * @returns {Array} Matches by the last regex in the chain, or an empty array. ++ * @example ++ * ++ * // Basic usage; matches numbers within tags ++ * XRegExp.matchChain('1 2 3 4 a 56', [ ++ * XRegExp('(?is).*?'), ++ * /\d+/ ++ * ]); ++ * // -> ['2', '4', '56'] ++ * ++ * // Passing forward and returning specific backreferences ++ * const html = `XRegExp ++ * Google`; ++ * XRegExp.matchChain(html, [ ++ * {regex: //i, backref: 1}, ++ * {regex: XRegExp('(?i)^https?://(?[^/?#]+)'), backref: 'domain'} ++ * ]); ++ * // -> ['xregexp.com', 'www.google.com'] ++ */ ++ XRegExp.matchChain = (str, chain) => (function recurseChain(values, level) { ++ const item = chain[level].regex ? chain[level] : {regex: chain[level]}; ++ const matches = []; ++ ++ function addMatch(match) { ++ if (item.backref) { ++ const ERR_UNDEFINED_GROUP = `Backreference to undefined group: ${item.backref}`; ++ const isNamedBackref = isNaN(item.backref); ++ ++ if (isNamedBackref && XRegExp.isInstalled('namespacing')) { ++ // `groups` has `null` as prototype, so using `in` instead of `hasOwnProperty` ++ if (!(match.groups && item.backref in match.groups)) { ++ throw new ReferenceError(ERR_UNDEFINED_GROUP); ++ } ++ } else if (!match.hasOwnProperty(item.backref)) { ++ throw new ReferenceError(ERR_UNDEFINED_GROUP); ++ } ++ ++ const backrefValue = isNamedBackref && XRegExp.isInstalled('namespacing') ? ++ match.groups[item.backref] : ++ match[item.backref]; ++ ++ matches.push(backrefValue || ''); ++ } else { ++ matches.push(match[0]); ++ } ++ } ++ ++ for (const value of values) { ++ XRegExp.forEach(value, item.regex, addMatch); ++ } ++ ++ return ((level === chain.length - 1) || !matches.length) ? ++ matches : ++ recurseChain(matches, level + 1); ++ }([str], 0)); ++ ++ /** ++ * Returns a new string with one or all matches of a pattern replaced. The pattern can be a string ++ * or regex, and the replacement can be a string or a function to be called for each match. To ++ * perform a global search and replace, use the optional `scope` argument or include flag g if using ++ * a regex. Replacement strings can use `$` or `${n}` for named and numbered backreferences. ++ * Replacement functions can use named backreferences via the last argument. Also fixes browser bugs ++ * compared to the native `String.prototype.replace` and can be used reliably cross-browser. ++ * ++ * @memberOf XRegExp ++ * @param {String} str String to search. ++ * @param {RegExp|String} search Search pattern to be replaced. ++ * @param {String|Function} replacement Replacement string or a function invoked to create it. ++ * Replacement strings can include special replacement syntax: ++ * - $$ - Inserts a literal $ character. ++ * - $&, $0 - Inserts the matched substring. ++ * - $` - Inserts the string that precedes the matched substring (left context). ++ * - $' - Inserts the string that follows the matched substring (right context). ++ * - $n, $nn - Where n/nn are digits referencing an existing capturing group, inserts ++ * backreference n/nn. ++ * - $, ${n} - Where n is a name or any number of digits that reference an existing capturing ++ * group, inserts backreference n. ++ * Replacement functions are invoked with three or more arguments: ++ * - args[0] - The matched substring (corresponds to `$&` above). If the `namespacing` feature ++ * is off, named backreferences are accessible as properties of this argument. ++ * - args[1..n] - One argument for each backreference (corresponding to `$1`, `$2`, etc. above). ++ * If the regex has no capturing groups, no arguments appear in this position. ++ * - args[n+1] - The zero-based index of the match within the entire search string. ++ * - args[n+2] - The total string being searched. ++ * - args[n+3] - If the the search pattern is a regex with named capturing groups, the last ++ * argument is the groups object. Its keys are the backreference names and its values are the ++ * backreference values. If the `namespacing` feature is off, this argument is not present. ++ * @param {String} [scope] Use 'one' to replace the first match only, or 'all'. Defaults to 'one'. ++ * Defaults to 'all' if using a regex with flag g. ++ * @returns {String} New string with one or all matches replaced. ++ * @example ++ * ++ * // Regex search, using named backreferences in replacement string ++ * const name = XRegExp('(?\\w+) (?\\w+)'); ++ * XRegExp.replace('John Smith', name, '$, $'); ++ * // -> 'Smith, John' ++ * ++ * // Regex search, using named backreferences in replacement function ++ * XRegExp.replace('John Smith', name, (...args) => { ++ * const groups = args[args.length - 1]; ++ * return `${groups.last}, ${groups.first}`; ++ * }); ++ * // -> 'Smith, John' ++ * ++ * // String search, with replace-all ++ * XRegExp.replace('RegExp builds RegExps', 'RegExp', 'XRegExp', 'all'); ++ * // -> 'XRegExp builds XRegExps' ++ */ ++ XRegExp.replace = (str, search, replacement, scope) => { ++ const isRegex = XRegExp.isRegExp(search); ++ const global = (search.global && scope !== 'one') || scope === 'all'; ++ const cacheKey = ((global ? 'g' : '') + (search.sticky ? 'y' : '')) || 'noGY'; ++ let s2 = search; ++ ++ if (isRegex) { ++ search[REGEX_DATA] = search[REGEX_DATA] || {}; ++ ++ // Shares cached copies with `XRegExp.exec`/`match`. Since a copy is used, `search`'s ++ // `lastIndex` isn't updated *during* replacement iterations ++ s2 = search[REGEX_DATA][cacheKey] || ( ++ search[REGEX_DATA][cacheKey] = copyRegex(search, { ++ addG: !!global, ++ removeG: scope === 'one', ++ isInternalOnly: true ++ }) ++ ); ++ } else if (global) { ++ s2 = new RegExp(XRegExp.escape(String(search)), 'g'); ++ } ++ ++ // Fixed `replace` required for named backreferences, etc. ++ const result = fixed.replace.call(nullThrows(str), s2, replacement); ++ ++ if (isRegex && search.global) { ++ // Fixes IE, Safari bug (last tested IE 9, Safari 5.1) ++ search.lastIndex = 0; ++ } ++ ++ return result; ++ }; ++ ++ /** ++ * Performs batch processing of string replacements. Used like `XRegExp.replace`, but accepts an ++ * array of replacement details. Later replacements operate on the output of earlier replacements. ++ * Replacement details are accepted as an array with a regex or string to search for, the ++ * replacement string or function, and an optional scope of 'one' or 'all'. Uses the XRegExp ++ * replacement text syntax, which supports named backreference properties via `$` or ++ * `${name}`. ++ * ++ * @memberOf XRegExp ++ * @param {String} str String to search. ++ * @param {Array} replacements Array of replacement detail arrays. ++ * @returns {String} New string with all replacements. ++ * @example ++ * ++ * str = XRegExp.replaceEach(str, [ ++ * [XRegExp('(?a)'), 'z$'], ++ * [/b/gi, 'y'], ++ * [/c/g, 'x', 'one'], // scope 'one' overrides /g ++ * [/d/, 'w', 'all'], // scope 'all' overrides lack of /g ++ * ['e', 'v', 'all'], // scope 'all' allows replace-all for strings ++ * [/f/g, (match) => match.toUpperCase()] ++ * ]); ++ */ ++ XRegExp.replaceEach = (str, replacements) => { ++ for (const r of replacements) { ++ str = XRegExp.replace(str, r[0], r[1], r[2]); ++ } ++ ++ return str; ++ }; ++ ++ /** ++ * Splits a string into an array of strings using a regex or string separator. Matches of the ++ * separator are not included in the result array. However, if `separator` is a regex that contains ++ * capturing groups, backreferences are spliced into the result each time `separator` is matched. ++ * Fixes browser bugs compared to the native `String.prototype.split` and can be used reliably ++ * cross-browser. ++ * ++ * @memberOf XRegExp ++ * @param {String} str String to split. ++ * @param {RegExp|String} separator Regex or string to use for separating the string. ++ * @param {Number} [limit] Maximum number of items to include in the result array. ++ * @returns {Array} Array of substrings. ++ * @example ++ * ++ * // Basic use ++ * XRegExp.split('a b c', ' '); ++ * // -> ['a', 'b', 'c'] ++ * ++ * // With limit ++ * XRegExp.split('a b c', ' ', 2); ++ * // -> ['a', 'b'] ++ * ++ * // Backreferences in result array ++ * XRegExp.split('..word1..', /([a-z]+)(\d+)/i); ++ * // -> ['..', 'word', '1', '..'] ++ */ ++ XRegExp.split = (str, separator, limit) => fixed.split.call(nullThrows(str), separator, limit); ++ ++ /** ++ * Executes a regex search in a specified string. Returns `true` or `false`. Optional `pos` and ++ * `sticky` arguments specify the search start position, and whether the match must start at the ++ * specified position only. The `lastIndex` property of the provided regex is not used, but is ++ * updated for compatibility. Also fixes browser bugs compared to the native ++ * `RegExp.prototype.test` and can be used reliably cross-browser. ++ * ++ * @memberOf XRegExp ++ * @param {String} str String to search. ++ * @param {RegExp} regex Regex to search with. ++ * @param {Number} [pos=0] Zero-based index at which to start the search. ++ * @param {Boolean|String} [sticky=false] Whether the match must start at the specified position ++ * only. The string `'sticky'` is accepted as an alternative to `true`. ++ * @returns {boolean} Whether the regex matched the provided value. ++ * @example ++ * ++ * // Basic use ++ * XRegExp.test('abc', /c/); // -> true ++ * ++ * // With pos and sticky ++ * XRegExp.test('abc', /c/, 0, 'sticky'); // -> false ++ * XRegExp.test('abc', /c/, 2, 'sticky'); // -> true ++ */ ++ // Do this the easy way :-) ++ XRegExp.test = (str, regex, pos, sticky) => !!XRegExp.exec(str, regex, pos, sticky); ++ ++ /** ++ * Uninstalls optional features according to the specified options. Used to undo the actions of ++ * `XRegExp.install`. ++ * ++ * @memberOf XRegExp ++ * @param {Object|String} options Options object or string. ++ * @example ++ * ++ * // With an options object ++ * XRegExp.uninstall({ ++ * // Disables support for astral code points in Unicode addons (unless enabled per regex) ++ * astral: true, ++ * ++ * // Don't add named capture groups to the `groups` property of matches ++ * namespacing: true ++ * }); ++ * ++ * // With an options string ++ * XRegExp.uninstall('astral namespacing'); ++ */ ++ XRegExp.uninstall = (options) => { ++ options = prepareOptions(options); ++ ++ if (features.astral && options.astral) { ++ setAstral(false); ++ } ++ ++ if (features.namespacing && options.namespacing) { ++ setNamespacing(false); ++ } ++ }; ++ ++ /** ++ * Returns an XRegExp object that is the union of the given patterns. Patterns can be provided as ++ * regex objects or strings. Metacharacters are escaped in patterns provided as strings. ++ * Backreferences in provided regex objects are automatically renumbered to work correctly within ++ * the larger combined pattern. Native flags used by provided regexes are ignored in favor of the ++ * `flags` argument. ++ * ++ * @memberOf XRegExp ++ * @param {Array} patterns Regexes and strings to combine. ++ * @param {String} [flags] Any combination of XRegExp flags. ++ * @param {Object} [options] Options object with optional properties: ++ * - `conjunction` {String} Type of conjunction to use: 'or' (default) or 'none'. ++ * @returns {RegExp} Union of the provided regexes and strings. ++ * @example ++ * ++ * XRegExp.union(['a+b*c', /(dogs)\1/, /(cats)\1/], 'i'); ++ * // -> /a\+b\*c|(dogs)\1|(cats)\2/i ++ * ++ * XRegExp.union([/man/, /bear/, /pig/], 'i', {conjunction: 'none'}); ++ * // -> /manbearpig/i ++ */ ++ XRegExp.union = (patterns, flags, options) => { ++ options = options || {}; ++ const conjunction = options.conjunction || 'or'; ++ let numCaptures = 0; ++ let numPriorCaptures; ++ let captureNames; ++ ++ function rewrite(match, paren, backref) { ++ const name = captureNames[numCaptures - numPriorCaptures]; ++ ++ // Capturing group ++ if (paren) { ++ ++numCaptures; ++ // If the current capture has a name, preserve the name ++ if (name) { ++ return `(?<${name}>`; ++ } ++ // Backreference ++ } else if (backref) { ++ // Rewrite the backreference ++ return `\\${+backref + numPriorCaptures}`; ++ } ++ ++ return match; ++ } ++ ++ if (!(isType(patterns, 'Array') && patterns.length)) { ++ throw new TypeError('Must provide a nonempty array of patterns to merge'); ++ } ++ ++ const parts = /(\()(?!\?)|\\([1-9]\d*)|\\[\s\S]|\[(?:[^\\\]]|\\[\s\S])*\]/g; ++ const output = []; ++ for (const pattern of patterns) { ++ if (XRegExp.isRegExp(pattern)) { ++ numPriorCaptures = numCaptures; ++ captureNames = (pattern[REGEX_DATA] && pattern[REGEX_DATA].captureNames) || []; ++ ++ // Rewrite backreferences. Passing to XRegExp dies on octals and ensures patterns are ++ // independently valid; helps keep this simple. Named captures are put back ++ output.push(XRegExp(pattern.source).source.replace(parts, rewrite)); ++ } else { ++ output.push(XRegExp.escape(pattern)); ++ } ++ } ++ ++ const separator = conjunction === 'none' ? '' : '|'; ++ return XRegExp(output.join(separator), flags); ++ }; ++ ++ // ==--------------------------== ++ // Fixed/extended native methods ++ // ==--------------------------== ++ ++ /** ++ * Adds named capture support (with backreferences returned as `result.name`), and fixes browser ++ * bugs in the native `RegExp.prototype.exec`. Use via `XRegExp.exec`. ++ * ++ * @memberOf RegExp ++ * @param {String} str String to search. ++ * @returns {Array} Match array with named backreference properties, or `null`. ++ */ ++ fixed.exec = function(str) { ++ const origLastIndex = this.lastIndex; ++ const match = RegExp.prototype.exec.apply(this, arguments); ++ ++ if (match) { ++ // Fix browsers whose `exec` methods don't return `undefined` for nonparticipating capturing ++ // groups. This fixes IE 5.5-8, but not IE 9's quirks mode or emulation of older IEs. IE 9 ++ // in standards mode follows the spec. ++ if (!correctExecNpcg && match.length > 1 && match.includes('')) { ++ const r2 = copyRegex(this, { ++ removeG: true, ++ isInternalOnly: true ++ }); ++ // Using `str.slice(match.index)` rather than `match[0]` in case lookahead allowed ++ // matching due to characters outside the match ++ String(str).slice(match.index).replace(r2, (...args) => { ++ const len = args.length; ++ // Skip index 0 and the last 2 ++ for (let i = 1; i < len - 2; ++i) { ++ if (args[i] === undefined) { ++ match[i] = undefined; ++ } ++ } ++ }); ++ } ++ ++ // Attach named capture properties ++ if (this[REGEX_DATA] && this[REGEX_DATA].captureNames) { ++ let groupsObject = match; ++ if (XRegExp.isInstalled('namespacing')) { ++ // https://tc39.github.io/proposal-regexp-named-groups/#sec-regexpbuiltinexec ++ match.groups = Object.create(null); ++ groupsObject = match.groups; ++ } ++ // Skip index 0 ++ for (let i = 1; i < match.length; ++i) { ++ const name = this[REGEX_DATA].captureNames[i - 1]; ++ if (name) { ++ groupsObject[name] = match[i]; ++ } ++ } ++ // Preserve any existing `groups` obj that came from native ES2018 named capture ++ } else if (!match.groups && XRegExp.isInstalled('namespacing')) { ++ match.groups = undefined; ++ } ++ ++ // Fix browsers that increment `lastIndex` after zero-length matches ++ if (this.global && !match[0].length && (this.lastIndex > match.index)) { ++ this.lastIndex = match.index; ++ } ++ } ++ ++ if (!this.global) { ++ // Fixes IE, Opera bug (last tested IE 9, Opera 11.6) ++ this.lastIndex = origLastIndex; ++ } ++ ++ return match; ++ }; ++ ++ /** ++ * Fixes browser bugs in the native `RegExp.prototype.test`. ++ * ++ * @memberOf RegExp ++ * @param {String} str String to search. ++ * @returns {boolean} Whether the regex matched the provided value. ++ */ ++ fixed.test = function(str) { ++ // Do this the easy way :-) ++ return !!fixed.exec.call(this, str); ++ }; ++ ++ /** ++ * Adds named capture support (with backreferences returned as `result.name`), and fixes browser ++ * bugs in the native `String.prototype.match`. ++ * ++ * @memberOf String ++ * @param {RegExp|*} regex Regex to search with. If not a regex object, it is passed to `RegExp`. ++ * @returns {Array} If `regex` uses flag g, an array of match strings or `null`. Without flag g, ++ * the result of calling `regex.exec(this)`. ++ */ ++ fixed.match = function(regex) { ++ if (!XRegExp.isRegExp(regex)) { ++ // Use the native `RegExp` rather than `XRegExp` ++ regex = new RegExp(regex); ++ } else if (regex.global) { ++ const result = String.prototype.match.apply(this, arguments); ++ // Fixes IE bug ++ regex.lastIndex = 0; ++ ++ return result; ++ } ++ ++ return fixed.exec.call(regex, nullThrows(this)); ++ }; ++ ++ /** ++ * Adds support for `${n}` (or `$`) tokens for named and numbered backreferences in replacement ++ * text, and provides named backreferences to replacement functions as `arguments[0].name`. Also ++ * fixes browser bugs in replacement text syntax when performing a replacement using a nonregex ++ * search value, and the value of a replacement regex's `lastIndex` property during replacement ++ * iterations and upon completion. Note that this doesn't support SpiderMonkey's proprietary third ++ * (`flags`) argument. Use via `XRegExp.replace`. ++ * ++ * @memberOf String ++ * @param {RegExp|String} search Search pattern to be replaced. ++ * @param {String|Function} replacement Replacement string or a function invoked to create it. ++ * @returns {string} New string with one or all matches replaced. ++ */ ++ fixed.replace = function(search, replacement) { ++ const isRegex = XRegExp.isRegExp(search); ++ let origLastIndex; ++ let captureNames; ++ let result; ++ ++ if (isRegex) { ++ if (search[REGEX_DATA]) { ++ ({captureNames} = search[REGEX_DATA]); ++ } ++ // Only needed if `search` is nonglobal ++ origLastIndex = search.lastIndex; ++ } else { ++ search += ''; // Type-convert ++ } ++ ++ // Don't use `typeof`; some older browsers return 'function' for regex objects ++ if (isType(replacement, 'Function')) { ++ // Stringifying `this` fixes a bug in IE < 9 where the last argument in replacement ++ // functions isn't type-converted to a string ++ result = String(this).replace(search, (...args) => { ++ if (captureNames) { ++ let groupsObject; ++ ++ if (XRegExp.isInstalled('namespacing')) { ++ // https://tc39.github.io/proposal-regexp-named-groups/#sec-regexpbuiltinexec ++ groupsObject = Object.create(null); ++ args.push(groupsObject); ++ } else { ++ // Change the `args[0]` string primitive to a `String` object that can store ++ // properties. This really does need to use `String` as a constructor ++ args[0] = new String(args[0]); ++ [groupsObject] = args; ++ } ++ ++ // Store named backreferences ++ for (let i = 0; i < captureNames.length; ++i) { ++ if (captureNames[i]) { ++ groupsObject[captureNames[i]] = args[i + 1]; ++ } ++ } ++ } ++ // ES6 specs the context for replacement functions as `undefined` ++ return replacement(...args); ++ }); ++ } else { ++ // Ensure that the last value of `args` will be a string when given nonstring `this`, ++ // while still throwing on null or undefined context ++ result = String(nullThrows(this)).replace(search, (...args) => { ++ return String(replacement).replace(replacementToken, replacer); ++ ++ function replacer($0, bracketed, angled, dollarToken) { ++ bracketed = bracketed || angled; ++ ++ // ES2018 added a new trailing `groups` arg that's passed to replacement functions ++ // when the search regex uses native named capture ++ const numNonCaptureArgs = isType(args[args.length - 1], 'Object') ? 4 : 3; ++ const numCaptures = args.length - numNonCaptureArgs; ++ ++ // Handle named or numbered backreference with curly or angled braces: ${n}, $ ++ if (bracketed) { ++ // Handle backreference to numbered capture, if `bracketed` is an integer. Use ++ // `0` for the entire match. Any number of leading zeros may be used. ++ if (/^\d+$/.test(bracketed)) { ++ // Type-convert and drop leading zeros ++ const n = +bracketed; ++ if (n <= numCaptures) { ++ return args[n] || ''; ++ } ++ } ++ ++ // Handle backreference to named capture. If the name does not refer to an ++ // existing capturing group, it's an error. Also handles the error for numbered ++ // backference that does not refer to an existing group. ++ // Using `indexOf` since having groups with the same name is already an error, ++ // otherwise would need `lastIndexOf`. ++ const n = captureNames ? captureNames.indexOf(bracketed) : -1; ++ if (n < 0) { ++ throw new SyntaxError(`Backreference to undefined group ${$0}`); ++ } ++ return args[n + 1] || ''; ++ } ++ ++ // Handle `$`-prefixed variable ++ // Handle space/blank first because type conversion with `+` drops space padding ++ // and converts spaces and empty strings to `0` ++ if (dollarToken === '' || dollarToken === ' ') { ++ throw new SyntaxError(`Invalid token ${$0}`); ++ } ++ if (dollarToken === '&' || +dollarToken === 0) { // $&, $0 (not followed by 1-9), $00 ++ return args[0]; ++ } ++ if (dollarToken === '$') { // $$ ++ return '$'; ++ } ++ if (dollarToken === '`') { // $` (left context) ++ return args[args.length - 1].slice(0, args[args.length - 2]); ++ } ++ if (dollarToken === "'") { // $' (right context) ++ return args[args.length - 1].slice(args[args.length - 2] + args[0].length); ++ } ++ ++ // Handle numbered backreference without braces ++ // Type-convert and drop leading zero ++ dollarToken = +dollarToken; ++ // XRegExp behavior for `$n` and `$nn`: ++ // - Backrefs end after 1 or 2 digits. Use `${..}` or `$<..>` for more digits. ++ // - `$1` is an error if no capturing groups. ++ // - `$10` is an error if less than 10 capturing groups. Use `${1}0` or `$<1>0` ++ // instead. ++ // - `$01` is `$1` if at least one capturing group, else it's an error. ++ // - `$0` (not followed by 1-9) and `$00` are the entire match. ++ // Native behavior, for comparison: ++ // - Backrefs end after 1 or 2 digits. Cannot reference capturing group 100+. ++ // - `$1` is a literal `$1` if no capturing groups. ++ // - `$10` is `$1` followed by a literal `0` if less than 10 capturing groups. ++ // - `$01` is `$1` if at least one capturing group, else it's a literal `$01`. ++ // - `$0` is a literal `$0`. ++ if (!isNaN(dollarToken)) { ++ if (dollarToken > numCaptures) { ++ throw new SyntaxError(`Backreference to undefined group ${$0}`); ++ } ++ return args[dollarToken] || ''; ++ } ++ ++ // `$` followed by an unsupported char is an error, unlike native JS ++ throw new SyntaxError(`Invalid token ${$0}`); ++ } ++ }); ++ } ++ ++ if (isRegex) { ++ if (search.global) { ++ // Fixes IE, Safari bug (last tested IE 9, Safari 5.1) ++ search.lastIndex = 0; ++ } else { ++ // Fixes IE, Opera bug (last tested IE 9, Opera 11.6) ++ search.lastIndex = origLastIndex; ++ } ++ } ++ ++ return result; ++ }; ++ ++ /** ++ * Fixes browser bugs in the native `String.prototype.split`. Use via `XRegExp.split`. ++ * ++ * @memberOf String ++ * @param {RegExp|String} separator Regex or string to use for separating the string. ++ * @param {Number} [limit] Maximum number of items to include in the result array. ++ * @returns {!Array} Array of substrings. ++ */ ++ fixed.split = function(separator, limit) { ++ if (!XRegExp.isRegExp(separator)) { ++ // Browsers handle nonregex split correctly, so use the faster native method ++ return String.prototype.split.apply(this, arguments); ++ } ++ ++ const str = String(this); ++ const output = []; ++ const origLastIndex = separator.lastIndex; ++ let lastLastIndex = 0; ++ let lastLength; ++ ++ // Values for `limit`, per the spec: ++ // If undefined: pow(2,32) - 1 ++ // If 0, Infinity, or NaN: 0 ++ // If positive number: limit = floor(limit); if (limit >= pow(2,32)) limit -= pow(2,32); ++ // If negative number: pow(2,32) - floor(abs(limit)) ++ // If other: Type-convert, then use the above rules ++ // This line fails in very strange ways for some values of `limit` in Opera 10.5-10.63, unless ++ // Opera Dragonfly is open (go figure). It works in at least Opera 9.5-10.1 and 11+ ++ limit = (limit === undefined ? -1 : limit) >>> 0; ++ ++ XRegExp.forEach(str, separator, (match) => { ++ // This condition is not the same as `if (match[0].length)` ++ if ((match.index + match[0].length) > lastLastIndex) { ++ output.push(str.slice(lastLastIndex, match.index)); ++ if (match.length > 1 && match.index < str.length) { ++ Array.prototype.push.apply(output, match.slice(1)); ++ } ++ lastLength = match[0].length; ++ lastLastIndex = match.index + lastLength; ++ } ++ }); ++ ++ if (lastLastIndex === str.length) { ++ if (!separator.test('') || lastLength) { ++ output.push(''); ++ } ++ } else { ++ output.push(str.slice(lastLastIndex)); ++ } ++ ++ separator.lastIndex = origLastIndex; ++ return output.length > limit ? output.slice(0, limit) : output; ++ }; ++ ++ // ==--------------------------== ++ // Built-in syntax/flag tokens ++ // ==--------------------------== ++ ++ /* ++ * Letter escapes that natively match literal characters: `\a`, `\A`, etc. These should be ++ * SyntaxErrors but are allowed in web reality. XRegExp makes them errors for cross-browser ++ * consistency and to reserve their syntax, but lets them be superseded by addons. ++ */ ++ XRegExp.addToken( ++ /\\([ABCE-RTUVXYZaeg-mopqyz]|c(?![A-Za-z])|u(?![\dA-Fa-f]{4}|{[\dA-Fa-f]+})|x(?![\dA-Fa-f]{2}))/, ++ (match, scope) => { ++ // \B is allowed in default scope only ++ if (match[1] === 'B' && scope === defaultScope) { ++ return match[0]; ++ } ++ throw new SyntaxError(`Invalid escape ${match[0]}`); ++ }, ++ { ++ scope: 'all', ++ leadChar: '\\' ++ } ++ ); ++ ++ /* ++ * Unicode code point escape with curly braces: `\u{N..}`. `N..` is any one or more digit ++ * hexadecimal number from 0-10FFFF, and can include leading zeros. Requires the native ES6 `u` flag ++ * to support code points greater than U+FFFF. Avoids converting code points above U+FFFF to ++ * surrogate pairs (which could be done without flag `u`), since that could lead to broken behavior ++ * if you follow a `\u{N..}` token that references a code point above U+FFFF with a quantifier, or ++ * if you use the same in a character class. ++ */ ++ XRegExp.addToken( ++ /\\u{([\dA-Fa-f]+)}/, ++ (match, scope, flags) => { ++ const code = dec(match[1]); ++ if (code > 0x10FFFF) { ++ throw new SyntaxError(`Invalid Unicode code point ${match[0]}`); ++ } ++ if (code <= 0xFFFF) { ++ // Converting to \uNNNN avoids needing to escape the literal character and keep it ++ // separate from preceding tokens ++ return `\\u${pad4(hex(code))}`; ++ } ++ // If `code` is between 0xFFFF and 0x10FFFF, require and defer to native handling ++ if (hasNativeU && flags.includes('u')) { ++ return match[0]; ++ } ++ throw new SyntaxError('Cannot use Unicode code point above \\u{FFFF} without flag u'); ++ }, ++ { ++ scope: 'all', ++ leadChar: '\\' ++ } ++ ); ++ ++ /* ++ * Comment pattern: `(?# )`. Inline comments are an alternative to the line comments allowed in ++ * free-spacing mode (flag x). ++ */ ++ XRegExp.addToken( ++ /\(\?#[^)]*\)/, ++ getContextualTokenSeparator, ++ {leadChar: '('} ++ ); ++ ++ /* ++ * Whitespace and line comments, in free-spacing mode (aka extended mode, flag x) only. ++ */ ++ XRegExp.addToken( ++ /\s+|#[^\n]*\n?/, ++ getContextualTokenSeparator, ++ {flag: 'x'} ++ ); ++ ++ /* ++ * Dot, in dotAll mode (aka singleline mode, flag s) only. ++ */ ++ if (!hasNativeS) { ++ XRegExp.addToken( ++ /\./, ++ () => '[\\s\\S]', ++ { ++ flag: 's', ++ leadChar: '.' ++ } ++ ); ++ } ++ ++ /* ++ * Named backreference: `\k`. Backreference names can use RegExpIdentifierName characters ++ * only. Also allows numbered backreferences as `\k`. ++ */ ++ XRegExp.addToken( ++ /\\k<([^>]+)>/, ++ function(match) { ++ // Groups with the same name is an error, else would need `lastIndexOf` ++ const index = isNaN(match[1]) ? (this.captureNames.indexOf(match[1]) + 1) : +match[1]; ++ const endIndex = match.index + match[0].length; ++ if (!index || index > this.captureNames.length) { ++ throw new SyntaxError(`Backreference to undefined group ${match[0]}`); ++ } ++ // Keep backreferences separate from subsequent literal numbers. This avoids e.g. ++ // inadvertedly changing `(?)\k1` to `()\11`. ++ return `\\${index}${ ++ endIndex === match.input.length || isNaN(match.input[endIndex]) ? ++ '' : '(?:)' ++ }`; ++ }, ++ {leadChar: '\\'} ++ ); ++ ++ /* ++ * Numbered backreference or octal, plus any following digits: `\0`, `\11`, etc. Octals except `\0` ++ * not followed by 0-9 and backreferences to unopened capture groups throw an error. Other matches ++ * are returned unaltered. IE < 9 doesn't support backreferences above `\99` in regex syntax. ++ */ ++ XRegExp.addToken( ++ /\\(\d+)/, ++ function(match, scope) { ++ if ( ++ !( ++ scope === defaultScope && ++ /^[1-9]/.test(match[1]) && ++ +match[1] <= this.captureNames.length ++ ) && ++ match[1] !== '0' ++ ) { ++ throw new SyntaxError(`Cannot use octal escape or backreference to undefined group ${match[0]}`); ++ } ++ return match[0]; ++ }, ++ { ++ scope: 'all', ++ leadChar: '\\' ++ } ++ ); ++ ++ /* ++ * Named capturing group; match the opening delimiter only: `(?`. Capture names can use the ++ * RegExpIdentifierName characters only. Names can't be integers. Supports Python-style ++ * `(?P` as an alternate syntax to avoid issues in some older versions of Opera which natively ++ * supported the Python-style syntax. Otherwise, XRegExp might treat numbered backreferences to ++ * Python-style named capture as octals. ++ */ ++ XRegExp.addToken( ++ /\(\?P?<([\p{ID_Start}$_][\p{ID_Continue}$_\u200C\u200D]*)>/u, ++ function(match) { ++ if (!XRegExp.isInstalled('namespacing') && (match[1] === 'length' || match[1] === '__proto__')) { ++ throw new SyntaxError(`Cannot use reserved word as capture name ${match[0]}`); ++ } ++ if (this.captureNames.includes(match[1])) { ++ throw new SyntaxError(`Cannot use same name for multiple groups ${match[0]}`); ++ } ++ this.captureNames.push(match[1]); ++ this.hasNamedCapture = true; ++ return '('; ++ }, ++ {leadChar: '('} ++ ); ++ ++ /* ++ * Capturing group; match the opening parenthesis only. Required for support of named capturing ++ * groups. Also adds explicit capture mode (flag n). ++ */ ++ XRegExp.addToken( ++ /\((?!\?)/, ++ function(match, scope, flags) { ++ if (flags.includes('n')) { ++ return '(?:'; ++ } ++ this.captureNames.push(null); ++ return '('; ++ }, ++ { ++ optionalFlags: 'n', ++ leadChar: '(' ++ } ++ ); ++ ++ /*! ++ * XRegExp.build 5.0.2 ++ * ++ * Steven Levithan (c) 2012-present MIT License ++ */ ++ ++ var build = (XRegExp) => { ++ const REGEX_DATA = 'xregexp'; ++ const subParts = /(\()(?!\?)|\\([1-9]\d*)|\\[\s\S]|\[(?:[^\\\]]|\\[\s\S])*\]/g; ++ const parts = XRegExp.union([/\({{([\w$]+)}}\)|{{([\w$]+)}}/, subParts], 'g', { ++ conjunction: 'or' ++ }); ++ ++ /** ++ * Strips a leading `^` and trailing unescaped `$`, if both are present. ++ * ++ * @private ++ * @param {String} pattern Pattern to process. ++ * @returns {String} Pattern with edge anchors removed. ++ */ ++ function deanchor(pattern) { ++ // Allow any number of empty noncapturing groups before/after anchors, because regexes ++ // built/generated by XRegExp sometimes include them ++ const leadingAnchor = /^(?:\(\?:\))*\^/; ++ const trailingAnchor = /\$(?:\(\?:\))*$/; ++ ++ if ( ++ leadingAnchor.test(pattern) && ++ trailingAnchor.test(pattern) && ++ // Ensure that the trailing `$` isn't escaped ++ trailingAnchor.test(pattern.replace(/\\[\s\S]/g, '')) ++ ) { ++ return pattern.replace(leadingAnchor, '').replace(trailingAnchor, ''); ++ } ++ ++ return pattern; ++ } ++ ++ /** ++ * Converts the provided value to an XRegExp. Native RegExp flags are not preserved. ++ * ++ * @private ++ * @param {String|RegExp} value Value to convert. ++ * @param {Boolean} [addFlagX] Whether to apply the `x` flag in cases when `value` is not ++ * already a regex generated by XRegExp ++ * @returns {RegExp} XRegExp object with XRegExp syntax applied. ++ */ ++ function asXRegExp(value, addFlagX) { ++ const flags = addFlagX ? 'x' : ''; ++ return XRegExp.isRegExp(value) ? ++ (value[REGEX_DATA] && value[REGEX_DATA].captureNames ? ++ // Don't recompile, to preserve capture names ++ value : ++ // Recompile as XRegExp ++ XRegExp(value.source, flags) ++ ) : ++ // Compile string as XRegExp ++ XRegExp(value, flags); ++ } ++ ++ function interpolate(substitution) { ++ return substitution instanceof RegExp ? substitution : XRegExp.escape(substitution); ++ } ++ ++ function reduceToSubpatternsObject(subpatterns, interpolated, subpatternIndex) { ++ subpatterns[`subpattern${subpatternIndex}`] = interpolated; ++ return subpatterns; ++ } ++ ++ function embedSubpatternAfter(raw, subpatternIndex, rawLiterals) { ++ const hasSubpattern = subpatternIndex < rawLiterals.length - 1; ++ return raw + (hasSubpattern ? `{{subpattern${subpatternIndex}}}` : ''); ++ } ++ ++ /** ++ * Provides tagged template literals that create regexes with XRegExp syntax and flags. The ++ * provided pattern is handled as a raw string, so backslashes don't need to be escaped. ++ * ++ * Interpolation of strings and regexes shares the features of `XRegExp.build`. Interpolated ++ * patterns are treated as atomic units when quantified, interpolated strings have their special ++ * characters escaped, a leading `^` and trailing unescaped `$` are stripped from interpolated ++ * regexes if both are present, and any backreferences within an interpolated regex are ++ * rewritten to work within the overall pattern. ++ * ++ * @memberOf XRegExp ++ * @param {String} [flags] Any combination of XRegExp flags. ++ * @returns {Function} Handler for template literals that construct regexes with XRegExp syntax. ++ * @example ++ * ++ * XRegExp.tag()`\b\w+\b`.test('word'); // -> true ++ * ++ * const hours = /1[0-2]|0?[1-9]/; ++ * const minutes = /(?[0-5][0-9])/; ++ * const time = XRegExp.tag('x')`\b ${hours} : ${minutes} \b`; ++ * time.test('10:59'); // -> true ++ * XRegExp.exec('10:59', time).groups.minutes; // -> '59' ++ * ++ * const backref1 = /(a)\1/; ++ * const backref2 = /(b)\1/; ++ * XRegExp.tag()`${backref1}${backref2}`.test('aabb'); // -> true ++ */ ++ XRegExp.tag = (flags) => (literals, ...substitutions) => { ++ const subpatterns = substitutions.map(interpolate).reduce(reduceToSubpatternsObject, {}); ++ const pattern = literals.raw.map(embedSubpatternAfter).join(''); ++ return XRegExp.build(pattern, subpatterns, flags); ++ }; ++ ++ /** ++ * Builds regexes using named subpatterns, for readability and pattern reuse. Backreferences in ++ * the outer pattern and provided subpatterns are automatically renumbered to work correctly. ++ * Native flags used by provided subpatterns are ignored in favor of the `flags` argument. ++ * ++ * @memberOf XRegExp ++ * @param {String} pattern XRegExp pattern using `{{name}}` for embedded subpatterns. Allows ++ * `({{name}})` as shorthand for `(?{{name}})`. Patterns cannot be embedded within ++ * character classes. ++ * @param {Object} subs Lookup object for named subpatterns. Values can be strings or regexes. A ++ * leading `^` and trailing unescaped `$` are stripped from subpatterns, if both are present. ++ * @param {String} [flags] Any combination of XRegExp flags. ++ * @returns {RegExp} Regex with interpolated subpatterns. ++ * @example ++ * ++ * const time = XRegExp.build('(?x)^ {{hours}} ({{minutes}}) $', { ++ * hours: XRegExp.build('{{h12}} : | {{h24}}', { ++ * h12: /1[0-2]|0?[1-9]/, ++ * h24: /2[0-3]|[01][0-9]/ ++ * }, 'x'), ++ * minutes: /^[0-5][0-9]$/ ++ * }); ++ * time.test('10:59'); // -> true ++ * XRegExp.exec('10:59', time).groups.minutes; // -> '59' ++ */ ++ XRegExp.build = (pattern, subs, flags) => { ++ flags = flags || ''; ++ // Used with `asXRegExp` calls for `pattern` and subpatterns in `subs`, to work around how ++ // some browsers convert `RegExp('\n')` to a regex that contains the literal characters `\` ++ // and `n`. See more details at . ++ const addFlagX = flags.includes('x'); ++ const inlineFlags = /^\(\?([\w$]+)\)/.exec(pattern); ++ // Add flags within a leading mode modifier to the overall pattern's flags ++ if (inlineFlags) { ++ flags = XRegExp._clipDuplicates(flags + inlineFlags[1]); ++ } ++ ++ const data = {}; ++ for (const p in subs) { ++ if (subs.hasOwnProperty(p)) { ++ // Passing to XRegExp enables extended syntax and ensures independent validity, ++ // lest an unescaped `(`, `)`, `[`, or trailing `\` breaks the `(?:)` wrapper. For ++ // subpatterns provided as native regexes, it dies on octals and adds the property ++ // used to hold extended regex instance data, for simplicity. ++ const sub = asXRegExp(subs[p], addFlagX); ++ data[p] = { ++ // Deanchoring allows embedding independently useful anchored regexes. If you ++ // really need to keep your anchors, double them (i.e., `^^...$$`). ++ pattern: deanchor(sub.source), ++ names: sub[REGEX_DATA].captureNames || [] ++ }; ++ } ++ } ++ ++ // Passing to XRegExp dies on octals and ensures the outer pattern is independently valid; ++ // helps keep this simple. Named captures will be put back. ++ const patternAsRegex = asXRegExp(pattern, addFlagX); ++ ++ // 'Caps' is short for 'captures' ++ let numCaps = 0; ++ let numPriorCaps; ++ let numOuterCaps = 0; ++ const outerCapsMap = [0]; ++ const outerCapNames = patternAsRegex[REGEX_DATA].captureNames || []; ++ const output = patternAsRegex.source.replace(parts, ($0, $1, $2, $3, $4) => { ++ const subName = $1 || $2; ++ let capName; ++ let intro; ++ let localCapIndex; ++ // Named subpattern ++ if (subName) { ++ if (!data.hasOwnProperty(subName)) { ++ throw new ReferenceError(`Undefined property ${$0}`); ++ } ++ // Named subpattern was wrapped in a capturing group ++ if ($1) { ++ capName = outerCapNames[numOuterCaps]; ++ outerCapsMap[++numOuterCaps] = ++numCaps; ++ // If it's a named group, preserve the name. Otherwise, use the subpattern name ++ // as the capture name ++ intro = `(?<${capName || subName}>`; ++ } else { ++ intro = '(?:'; ++ } ++ numPriorCaps = numCaps; ++ const rewrittenSubpattern = data[subName].pattern.replace(subParts, (match, paren, backref) => { ++ // Capturing group ++ if (paren) { ++ capName = data[subName].names[numCaps - numPriorCaps]; ++ ++numCaps; ++ // If the current capture has a name, preserve the name ++ if (capName) { ++ return `(?<${capName}>`; ++ } ++ // Backreference ++ } else if (backref) { ++ localCapIndex = +backref - 1; ++ // Rewrite the backreference ++ return data[subName].names[localCapIndex] ? ++ // Need to preserve the backreference name in case using flag `n` ++ `\\k<${data[subName].names[localCapIndex]}>` : ++ `\\${+backref + numPriorCaps}`; ++ } ++ return match; ++ }); ++ return `${intro}${rewrittenSubpattern})`; ++ } ++ // Capturing group ++ if ($3) { ++ capName = outerCapNames[numOuterCaps]; ++ outerCapsMap[++numOuterCaps] = ++numCaps; ++ // If the current capture has a name, preserve the name ++ if (capName) { ++ return `(?<${capName}>`; ++ } ++ // Backreference ++ } else if ($4) { ++ localCapIndex = +$4 - 1; ++ // Rewrite the backreference ++ return outerCapNames[localCapIndex] ? ++ // Need to preserve the backreference name in case using flag `n` ++ `\\k<${outerCapNames[localCapIndex]}>` : ++ `\\${outerCapsMap[+$4]}`; ++ } ++ return $0; ++ }); ++ ++ return XRegExp(output, flags); ++ }; ++ }; ++ ++ /*! ++ * XRegExp.matchRecursive 5.0.2 ++ * ++ * Steven Levithan (c) 2009-present MIT License ++ */ ++ ++ var matchRecursive = (XRegExp) => { ++ ++ /** ++ * Returns a match detail object composed of the provided values. ++ * ++ * @private ++ */ ++ function row(name, value, start, end) { ++ return { ++ name, ++ value, ++ start, ++ end ++ }; ++ } ++ ++ /** ++ * Returns an array of match strings between outermost left and right delimiters, or an array of ++ * objects with detailed match parts and position data. An error is thrown if delimiters are ++ * unbalanced within the data. ++ * ++ * @memberOf XRegExp ++ * @param {String} str String to search. ++ * @param {String} left Left delimiter as an XRegExp pattern. ++ * @param {String} right Right delimiter as an XRegExp pattern. ++ * @param {String} [flags] Any combination of XRegExp flags, used for the left and right delimiters. ++ * @param {Object} [options] Lets you specify `valueNames` and `escapeChar` options. ++ * @returns {!Array} Array of matches, or an empty array. ++ * @example ++ * ++ * // Basic usage ++ * let str = '(t((e))s)t()(ing)'; ++ * XRegExp.matchRecursive(str, '\\(', '\\)', 'g'); ++ * // -> ['t((e))s', '', 'ing'] ++ * ++ * // Extended information mode with valueNames ++ * str = 'Here is
an
example'; ++ * XRegExp.matchRecursive(str, '', '', 'gi', { ++ * valueNames: ['between', 'left', 'match', 'right'] ++ * }); ++ * // -> [ ++ * // {name: 'between', value: 'Here is ', start: 0, end: 8}, ++ * // {name: 'left', value: '
', start: 8, end: 13}, ++ * // {name: 'match', value: '
an
', start: 13, end: 27}, ++ * // {name: 'right', value: '
', start: 27, end: 33}, ++ * // {name: 'between', value: ' example', start: 33, end: 41} ++ * // ] ++ * ++ * // Omitting unneeded parts with null valueNames, and using escapeChar ++ * str = '...{1}.\\{{function(x,y){return {y:x}}}'; ++ * XRegExp.matchRecursive(str, '{', '}', 'g', { ++ * valueNames: ['literal', null, 'value', null], ++ * escapeChar: '\\' ++ * }); ++ * // -> [ ++ * // {name: 'literal', value: '...', start: 0, end: 3}, ++ * // {name: 'value', value: '1', start: 4, end: 5}, ++ * // {name: 'literal', value: '.\\{', start: 6, end: 9}, ++ * // {name: 'value', value: 'function(x,y){return {y:x}}', start: 10, end: 37} ++ * // ] ++ * ++ * // Sticky mode via flag y ++ * str = '<1><<<2>>><3>4<5>'; ++ * XRegExp.matchRecursive(str, '<', '>', 'gy'); ++ * // -> ['1', '<<2>>', '3'] ++ */ ++ XRegExp.matchRecursive = (str, left, right, flags, options) => { ++ flags = flags || ''; ++ options = options || {}; ++ const global = flags.includes('g'); ++ const sticky = flags.includes('y'); ++ // Flag `y` is controlled internally ++ const basicFlags = flags.replace(/y/g, ''); ++ let {escapeChar} = options; ++ const vN = options.valueNames; ++ const output = []; ++ let openTokens = 0; ++ let delimStart = 0; ++ let delimEnd = 0; ++ let lastOuterEnd = 0; ++ let outerStart; ++ let innerStart; ++ let leftMatch; ++ let rightMatch; ++ let esc; ++ left = XRegExp(left, basicFlags); ++ right = XRegExp(right, basicFlags); ++ ++ if (escapeChar) { ++ if (escapeChar.length > 1) { ++ throw new Error('Cannot use more than one escape character'); ++ } ++ escapeChar = XRegExp.escape(escapeChar); ++ // Example of concatenated `esc` regex: ++ // `escapeChar`: '%' ++ // `left`: '<' ++ // `right`: '>' ++ // Regex is: /(?:%[\S\s]|(?:(?!<|>)[^%])+)+/ ++ esc = new RegExp( ++ `(?:${escapeChar}[\\S\\s]|(?:(?!${ ++ // Using `XRegExp.union` safely rewrites backreferences in `left` and `right`. ++ // Intentionally not passing `basicFlags` to `XRegExp.union` since any syntax ++ // transformation resulting from those flags was already applied to `left` and ++ // `right` when they were passed through the XRegExp constructor above. ++ XRegExp.union([left, right], '', {conjunction: 'or'}).source ++ })[^${escapeChar}])+)+`, ++ // Flags `gy` not needed here ++ flags.replace(XRegExp._hasNativeFlag('s') ? /[^imsu]/g : /[^imu]/g, '') ++ ); ++ } ++ ++ while (true) { ++ // If using an escape character, advance to the delimiter's next starting position, ++ // skipping any escaped characters in between ++ if (escapeChar) { ++ delimEnd += (XRegExp.exec(str, esc, delimEnd, 'sticky') || [''])[0].length; ++ } ++ leftMatch = XRegExp.exec(str, left, delimEnd); ++ rightMatch = XRegExp.exec(str, right, delimEnd); ++ // Keep the leftmost match only ++ if (leftMatch && rightMatch) { ++ if (leftMatch.index <= rightMatch.index) { ++ rightMatch = null; ++ } else { ++ leftMatch = null; ++ } ++ } ++ // Paths (LM: leftMatch, RM: rightMatch, OT: openTokens): ++ // LM | RM | OT | Result ++ // 1 | 0 | 1 | loop ++ // 1 | 0 | 0 | loop ++ // 0 | 1 | 1 | loop ++ // 0 | 1 | 0 | throw ++ // 0 | 0 | 1 | throw ++ // 0 | 0 | 0 | break ++ // The paths above don't include the sticky mode special case. The loop ends after the ++ // first completed match if not `global`. ++ if (leftMatch || rightMatch) { ++ delimStart = (leftMatch || rightMatch).index; ++ delimEnd = delimStart + (leftMatch || rightMatch)[0].length; ++ } else if (!openTokens) { ++ break; ++ } ++ if (sticky && !openTokens && delimStart > lastOuterEnd) { ++ break; ++ } ++ if (leftMatch) { ++ if (!openTokens) { ++ outerStart = delimStart; ++ innerStart = delimEnd; ++ } ++ ++openTokens; ++ } else if (rightMatch && openTokens) { ++ if (!--openTokens) { ++ if (vN) { ++ if (vN[0] && outerStart > lastOuterEnd) { ++ output.push(row(vN[0], str.slice(lastOuterEnd, outerStart), lastOuterEnd, outerStart)); ++ } ++ if (vN[1]) { ++ output.push(row(vN[1], str.slice(outerStart, innerStart), outerStart, innerStart)); ++ } ++ if (vN[2]) { ++ output.push(row(vN[2], str.slice(innerStart, delimStart), innerStart, delimStart)); ++ } ++ if (vN[3]) { ++ output.push(row(vN[3], str.slice(delimStart, delimEnd), delimStart, delimEnd)); ++ } ++ } else { ++ output.push(str.slice(innerStart, delimStart)); ++ } ++ lastOuterEnd = delimEnd; ++ if (!global) { ++ break; ++ } ++ } ++ } else { ++ const delimSide = rightMatch ? 'right' : 'left'; ++ const errorPos = rightMatch ? delimStart : outerStart; ++ throw new Error(`Unbalanced ${delimSide} delimiter found in string at position ${errorPos}`); ++ } ++ // If the delimiter matched an empty string, avoid an infinite loop ++ if (delimStart === delimEnd) { ++ ++delimEnd; ++ } ++ } ++ ++ if (global && !sticky && vN && vN[0] && str.length > lastOuterEnd) { ++ output.push(row(vN[0], str.slice(lastOuterEnd), lastOuterEnd, str.length)); ++ } ++ ++ return output; ++ }; ++ }; ++ ++ /*! ++ * XRegExp Unicode Base 5.0.2 ++ * ++ * Steven Levithan (c) 2008-present MIT License ++ */ ++ ++ var unicodeBase = (XRegExp) => { ++ ++ /** ++ * Adds base support for Unicode matching: ++ * - Adds syntax `\p{..}` for matching Unicode tokens. Tokens can be inverted using `\P{..}` or ++ * `\p{^..}`. Token names ignore case, spaces, hyphens, and underscores. You can omit the ++ * braces for token names that are a single letter (e.g. `\pL` or `PL`). ++ * - Adds flag A (astral), which enables 21-bit Unicode support. ++ * - Adds the `XRegExp.addUnicodeData` method used by other addons to provide character data. ++ * ++ * Unicode Base relies on externally provided Unicode character data. Official addons are ++ * available to provide data for Unicode categories, scripts, and properties. ++ * ++ * @requires XRegExp ++ */ ++ ++ // ==--------------------------== ++ // Private stuff ++ // ==--------------------------== ++ ++ // Storage for Unicode data ++ const unicode = {}; ++ const unicodeTypes = {}; ++ ++ // Reuse utils ++ const dec = XRegExp._dec; ++ const hex = XRegExp._hex; ++ const pad4 = XRegExp._pad4; ++ ++ // Generates a token lookup name: lowercase, with hyphens, spaces, and underscores removed ++ function normalize(name) { ++ return name.replace(/[- _]+/g, '').toLowerCase(); ++ } ++ ++ // Gets the decimal code of a literal code unit, \xHH, \uHHHH, or a backslash-escaped literal ++ function charCode(chr) { ++ const esc = /^\\[xu](.+)/.exec(chr); ++ return esc ? ++ dec(esc[1]) : ++ chr.charCodeAt(chr[0] === '\\' ? 1 : 0); ++ } ++ ++ // Inverts a list of ordered BMP characters and ranges ++ function invertBmp(range) { ++ let output = ''; ++ let lastEnd = -1; ++ ++ XRegExp.forEach( ++ range, ++ /(\\x..|\\u....|\\?[\s\S])(?:-(\\x..|\\u....|\\?[\s\S]))?/, ++ (m) => { ++ const start = charCode(m[1]); ++ if (start > (lastEnd + 1)) { ++ output += `\\u${pad4(hex(lastEnd + 1))}`; ++ if (start > (lastEnd + 2)) { ++ output += `-\\u${pad4(hex(start - 1))}`; ++ } ++ } ++ lastEnd = charCode(m[2] || m[1]); ++ } ++ ); ++ ++ if (lastEnd < 0xFFFF) { ++ output += `\\u${pad4(hex(lastEnd + 1))}`; ++ if (lastEnd < 0xFFFE) { ++ output += '-\\uFFFF'; ++ } ++ } ++ ++ return output; ++ } ++ ++ // Generates an inverted BMP range on first use ++ function cacheInvertedBmp(slug) { ++ const prop = 'b!'; ++ return ( ++ unicode[slug][prop] || ++ (unicode[slug][prop] = invertBmp(unicode[slug].bmp)) ++ ); ++ } ++ ++ // Combines and optionally negates BMP and astral data ++ function buildAstral(slug, isNegated) { ++ const item = unicode[slug]; ++ let combined = ''; ++ ++ if (item.bmp && !item.isBmpLast) { ++ combined = `[${item.bmp}]${item.astral ? '|' : ''}`; ++ } ++ if (item.astral) { ++ combined += item.astral; ++ } ++ if (item.isBmpLast && item.bmp) { ++ combined += `${item.astral ? '|' : ''}[${item.bmp}]`; ++ } ++ ++ // Astral Unicode tokens always match a code point, never a code unit ++ return isNegated ? ++ `(?:(?!${combined})(?:[\uD800-\uDBFF][\uDC00-\uDFFF]|[\0-\uFFFF]))` : ++ `(?:${combined})`; ++ } ++ ++ // Builds a complete astral pattern on first use ++ function cacheAstral(slug, isNegated) { ++ const prop = isNegated ? 'a!' : 'a='; ++ return ( ++ unicode[slug][prop] || ++ (unicode[slug][prop] = buildAstral(slug, isNegated)) ++ ); ++ } ++ ++ // ==--------------------------== ++ // Core functionality ++ // ==--------------------------== ++ ++ /* ++ * Add astral mode (flag A) and Unicode token syntax: `\p{..}`, `\P{..}`, `\p{^..}`, `\pC`. ++ */ ++ XRegExp.addToken( ++ // Use `*` instead of `+` to avoid capturing `^` as the token name in `\p{^}` ++ /\\([pP])(?:{(\^?)(?:(\w+)=)?([^}]*)}|([A-Za-z]))/, ++ (match, scope, flags) => { ++ const ERR_DOUBLE_NEG = 'Invalid double negation '; ++ const ERR_UNKNOWN_NAME = 'Unknown Unicode token '; ++ const ERR_UNKNOWN_REF = 'Unicode token missing data '; ++ const ERR_ASTRAL_ONLY = 'Astral mode required for Unicode token '; ++ const ERR_ASTRAL_IN_CLASS = 'Astral mode does not support Unicode tokens within character classes'; ++ const [ ++ fullToken, ++ pPrefix, ++ caretNegation, ++ typePrefix, ++ tokenName, ++ tokenSingleCharName ++ ] = match; ++ // Negated via \P{..} or \p{^..} ++ let isNegated = pPrefix === 'P' || !!caretNegation; ++ // Switch from BMP (0-FFFF) to astral (0-10FFFF) mode via flag A ++ const isAstralMode = flags.includes('A'); ++ // Token lookup name. Check `tokenSingleCharName` first to avoid passing `undefined` ++ // via `\p{}` ++ let slug = normalize(tokenSingleCharName || tokenName); ++ // Token data object ++ let item = unicode[slug]; ++ ++ if (pPrefix === 'P' && caretNegation) { ++ throw new SyntaxError(ERR_DOUBLE_NEG + fullToken); ++ } ++ if (!unicode.hasOwnProperty(slug)) { ++ throw new SyntaxError(ERR_UNKNOWN_NAME + fullToken); ++ } ++ ++ if (typePrefix) { ++ if (!(unicodeTypes[typePrefix] && unicodeTypes[typePrefix][slug])) { ++ throw new SyntaxError(ERR_UNKNOWN_NAME + fullToken); ++ } ++ } ++ ++ // Switch to the negated form of the referenced Unicode token ++ if (item.inverseOf) { ++ slug = normalize(item.inverseOf); ++ if (!unicode.hasOwnProperty(slug)) { ++ throw new ReferenceError(`${ERR_UNKNOWN_REF + fullToken} -> ${item.inverseOf}`); ++ } ++ item = unicode[slug]; ++ isNegated = !isNegated; ++ } ++ ++ if (!(item.bmp || isAstralMode)) { ++ throw new SyntaxError(ERR_ASTRAL_ONLY + fullToken); ++ } ++ if (isAstralMode) { ++ if (scope === 'class') { ++ throw new SyntaxError(ERR_ASTRAL_IN_CLASS); ++ } ++ ++ return cacheAstral(slug, isNegated); ++ } ++ ++ return scope === 'class' ? ++ (isNegated ? cacheInvertedBmp(slug) : item.bmp) : ++ `${(isNegated ? '[^' : '[') + item.bmp}]`; ++ }, ++ { ++ scope: 'all', ++ optionalFlags: 'A', ++ leadChar: '\\' ++ } ++ ); ++ ++ /** ++ * Adds to the list of Unicode tokens that XRegExp regexes can match via `\p` or `\P`. ++ * ++ * @memberOf XRegExp ++ * @param {Array} data Objects with named character ranges. Each object may have properties ++ * `name`, `alias`, `isBmpLast`, `inverseOf`, `bmp`, and `astral`. All but `name` are ++ * optional, although one of `bmp` or `astral` is required (unless `inverseOf` is set). If ++ * `astral` is absent, the `bmp` data is used for BMP and astral modes. If `bmp` is absent, ++ * the name errors in BMP mode but works in astral mode. If both `bmp` and `astral` are ++ * provided, the `bmp` data only is used in BMP mode, and the combination of `bmp` and ++ * `astral` data is used in astral mode. `isBmpLast` is needed when a token matches orphan ++ * high surrogates *and* uses surrogate pairs to match astral code points. The `bmp` and ++ * `astral` data should be a combination of literal characters and `\xHH` or `\uHHHH` escape ++ * sequences, with hyphens to create ranges. Any regex metacharacters in the data should be ++ * escaped, apart from range-creating hyphens. The `astral` data can additionally use ++ * character classes and alternation, and should use surrogate pairs to represent astral code ++ * points. `inverseOf` can be used to avoid duplicating character data if a Unicode token is ++ * defined as the exact inverse of another token. ++ * @param {String} [typePrefix] Enables optionally using this type as a prefix for all of the ++ * provided Unicode tokens, e.g. if given `'Type'`, then `\p{TokenName}` can also be written ++ * as `\p{Type=TokenName}`. ++ * @example ++ * ++ * // Basic use ++ * XRegExp.addUnicodeData([{ ++ * name: 'XDigit', ++ * alias: 'Hexadecimal', ++ * bmp: '0-9A-Fa-f' ++ * }]); ++ * XRegExp('\\p{XDigit}:\\p{Hexadecimal}+').test('0:3D'); // -> true ++ */ ++ XRegExp.addUnicodeData = (data, typePrefix) => { ++ const ERR_NO_NAME = 'Unicode token requires name'; ++ const ERR_NO_DATA = 'Unicode token has no character data '; ++ ++ if (typePrefix) { ++ // Case sensitive to match ES2018 ++ unicodeTypes[typePrefix] = {}; ++ } ++ ++ for (const item of data) { ++ if (!item.name) { ++ throw new Error(ERR_NO_NAME); ++ } ++ if (!(item.inverseOf || item.bmp || item.astral)) { ++ throw new Error(ERR_NO_DATA + item.name); ++ } ++ ++ const normalizedName = normalize(item.name); ++ unicode[normalizedName] = item; ++ if (typePrefix) { ++ unicodeTypes[typePrefix][normalizedName] = true; ++ } ++ ++ if (item.alias) { ++ const normalizedAlias = normalize(item.alias); ++ unicode[normalizedAlias] = item; ++ if (typePrefix) { ++ unicodeTypes[typePrefix][normalizedAlias] = true; ++ } ++ } ++ } ++ ++ // Reset the pattern cache used by the `XRegExp` constructor, since the same pattern and ++ // flags might now produce different results ++ XRegExp.cache.flush('patterns'); ++ }; ++ ++ /** ++ * @ignore ++ * ++ * Return a reference to the internal Unicode definition structure for the given Unicode ++ * Property if the given name is a legal Unicode Property for use in XRegExp `\p` or `\P` regex ++ * constructs. ++ * ++ * @memberOf XRegExp ++ * @param {String} name Name by which the Unicode Property may be recognized (case-insensitive), ++ * e.g. `'N'` or `'Number'`. The given name is matched against all registered Unicode ++ * Properties and Property Aliases. ++ * @returns {Object} Reference to definition structure when the name matches a Unicode Property. ++ * ++ * @note ++ * For more info on Unicode Properties, see also http://unicode.org/reports/tr18/#Categories. ++ * ++ * @note ++ * This method is *not* part of the officially documented API and may change or be removed in ++ * the future. It is meant for userland code that wishes to reuse the (large) internal Unicode ++ * structures set up by XRegExp. ++ */ ++ XRegExp._getUnicodeProperty = (name) => { ++ const slug = normalize(name); ++ return unicode[slug]; ++ }; ++ }; ++ ++ var categories = [ ++ { ++ 'name': 'C', ++ 'alias': 'Other', ++ 'isBmpLast': true, ++ 'bmp': '\0-\x1F\x7F-\x9F\xAD\u0378\u0379\u0380-\u0383\u038B\u038D\u03A2\u0530\u0557\u0558\u058B\u058C\u0590\u05C8-\u05CF\u05EB-\u05EE\u05F5-\u0605\u061C\u061D\u06DD\u070E\u070F\u074B\u074C\u07B2-\u07BF\u07FB\u07FC\u082E\u082F\u083F\u085C\u085D\u085F\u086B-\u089F\u08B5\u08C8-\u08D2\u08E2\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA\u09BB\u09C5\u09C6\u09C9\u09CA\u09CF-\u09D6\u09D8-\u09DB\u09DE\u09E4\u09E5\u09FF\u0A00\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A\u0A3B\u0A3D\u0A43-\u0A46\u0A49\u0A4A\u0A4E-\u0A50\u0A52-\u0A58\u0A5D\u0A5F-\u0A65\u0A77-\u0A80\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA\u0ABB\u0AC6\u0ACA\u0ACE\u0ACF\u0AD1-\u0ADF\u0AE4\u0AE5\u0AF2-\u0AF8\u0B00\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A\u0B3B\u0B45\u0B46\u0B49\u0B4A\u0B4E-\u0B54\u0B58-\u0B5B\u0B5E\u0B64\u0B65\u0B78-\u0B81\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BBD\u0BC3-\u0BC5\u0BC9\u0BCE\u0BCF\u0BD1-\u0BD6\u0BD8-\u0BE5\u0BFB-\u0BFF\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C45\u0C49\u0C4E-\u0C54\u0C57\u0C5B-\u0C5F\u0C64\u0C65\u0C70-\u0C76\u0C8D\u0C91\u0CA9\u0CB4\u0CBA\u0CBB\u0CC5\u0CC9\u0CCE-\u0CD4\u0CD7-\u0CDD\u0CDF\u0CE4\u0CE5\u0CF0\u0CF3-\u0CFF\u0D0D\u0D11\u0D45\u0D49\u0D50-\u0D53\u0D64\u0D65\u0D80\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0DC9\u0DCB-\u0DCE\u0DD5\u0DD7\u0DE0-\u0DE5\u0DF0\u0DF1\u0DF5-\u0E00\u0E3B-\u0E3E\u0E5C-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EBE\u0EBF\u0EC5\u0EC7\u0ECE\u0ECF\u0EDA\u0EDB\u0EE0-\u0EFF\u0F48\u0F6D-\u0F70\u0F98\u0FBD\u0FCD\u0FDB-\u0FFF\u10C6\u10C8-\u10CC\u10CE\u10CF\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B\u135C\u137D-\u137F\u139A-\u139F\u13F6\u13F7\u13FE\u13FF\u169D-\u169F\u16F9-\u16FF\u170D\u1715-\u171F\u1737-\u173F\u1754-\u175F\u176D\u1771\u1774-\u177F\u17DE\u17DF\u17EA-\u17EF\u17FA-\u17FF\u180E\u180F\u181A-\u181F\u1879-\u187F\u18AB-\u18AF\u18F6-\u18FF\u191F\u192C-\u192F\u193C-\u193F\u1941-\u1943\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19CF\u19DB-\u19DD\u1A1C\u1A1D\u1A5F\u1A7D\u1A7E\u1A8A-\u1A8F\u1A9A-\u1A9F\u1AAE\u1AAF\u1AC1-\u1AFF\u1B4C-\u1B4F\u1B7D-\u1B7F\u1BF4-\u1BFB\u1C38-\u1C3A\u1C4A-\u1C4C\u1C89-\u1C8F\u1CBB\u1CBC\u1CC8-\u1CCF\u1CFB-\u1CFF\u1DFA\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FC5\u1FD4\u1FD5\u1FDC\u1FF0\u1FF1\u1FF5\u1FFF\u200B-\u200F\u202A-\u202E\u2060-\u206F\u2072\u2073\u208F\u209D-\u209F\u20C0-\u20CF\u20F1-\u20FF\u218C-\u218F\u2427-\u243F\u244B-\u245F\u2B74\u2B75\u2B96\u2C2F\u2C5F\u2CF4-\u2CF8\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D71-\u2D7E\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF\u2E53-\u2E7F\u2E9A\u2EF4-\u2EFF\u2FD6-\u2FEF\u2FFC-\u2FFF\u3040\u3097\u3098\u3100-\u3104\u3130\u318F\u31E4-\u31EF\u321F\u9FFD-\u9FFF\uA48D-\uA48F\uA4C7-\uA4CF\uA62C-\uA63F\uA6F8-\uA6FF\uA7C0\uA7C1\uA7CB-\uA7F4\uA82D-\uA82F\uA83A-\uA83F\uA878-\uA87F\uA8C6-\uA8CD\uA8DA-\uA8DF\uA954-\uA95E\uA97D-\uA97F\uA9CE\uA9DA-\uA9DD\uA9FF\uAA37-\uAA3F\uAA4E\uAA4F\uAA5A\uAA5B\uAAC3-\uAADA\uAAF7-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB6C-\uAB6F\uABEE\uABEF\uABFA-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uF8FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBC2-\uFBD2\uFD40-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFE\uFDFF\uFE1A-\uFE1F\uFE53\uFE67\uFE6C-\uFE6F\uFE75\uFEFD-\uFF00\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFDF\uFFE7\uFFEF-\uFFFB\uFFFE\uFFFF', ++ 'astral': '\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDCFF\uDD03-\uDD06\uDD34-\uDD36\uDD8F\uDD9D-\uDD9F\uDDA1-\uDDCF\uDDFE-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEDF\uDEFC-\uDEFF\uDF24-\uDF2C\uDF4B-\uDF4F\uDF7B-\uDF7F\uDF9E\uDFC4-\uDFC7\uDFD6-\uDFFF]|\uD801[\uDC9E\uDC9F\uDCAA-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDD6E\uDD70-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56\uDC9F-\uDCA6\uDCB0-\uDCDF\uDCF3\uDCF6-\uDCFA\uDD1C-\uDD1E\uDD3A-\uDD3E\uDD40-\uDD7F\uDDB8-\uDDBB\uDDD0\uDDD1\uDE04\uDE07-\uDE0B\uDE14\uDE18\uDE36\uDE37\uDE3B-\uDE3E\uDE49-\uDE4F\uDE59-\uDE5F\uDEA0-\uDEBF\uDEE7-\uDEEA\uDEF7-\uDEFF\uDF36-\uDF38\uDF56\uDF57\uDF73-\uDF77\uDF92-\uDF98\uDF9D-\uDFA8\uDFB0-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCF9\uDD28-\uDD2F\uDD3A-\uDE5F\uDE7F\uDEAA\uDEAE\uDEAF\uDEB2-\uDEFF\uDF28-\uDF2F\uDF5A-\uDFAF\uDFCC-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC4E-\uDC51\uDC70-\uDC7E\uDCBD\uDCC2-\uDCCF\uDCE9-\uDCEF\uDCFA-\uDCFF\uDD35\uDD48-\uDD4F\uDD77-\uDD7F\uDDE0\uDDF5-\uDDFF\uDE12\uDE3F-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEAA-\uDEAF\uDEEB-\uDEEF\uDEFA-\uDEFF\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A\uDF45\uDF46\uDF49\uDF4A\uDF4E\uDF4F\uDF51-\uDF56\uDF58-\uDF5C\uDF64\uDF65\uDF6D-\uDF6F\uDF75-\uDFFF]|\uD805[\uDC5C\uDC62-\uDC7F\uDCC8-\uDCCF\uDCDA-\uDD7F\uDDB6\uDDB7\uDDDE-\uDDFF\uDE45-\uDE4F\uDE5A-\uDE5F\uDE6D-\uDE7F\uDEB9-\uDEBF\uDECA-\uDEFF\uDF1B\uDF1C\uDF2C-\uDF2F\uDF40-\uDFFF]|\uD806[\uDC3C-\uDC9F\uDCF3-\uDCFE\uDD07\uDD08\uDD0A\uDD0B\uDD14\uDD17\uDD36\uDD39\uDD3A\uDD47-\uDD4F\uDD5A-\uDD9F\uDDA8\uDDA9\uDDD8\uDDD9\uDDE5-\uDDFF\uDE48-\uDE4F\uDEA3-\uDEBF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC37\uDC46-\uDC4F\uDC6D-\uDC6F\uDC90\uDC91\uDCA8\uDCB7-\uDCFF\uDD07\uDD0A\uDD37-\uDD39\uDD3B\uDD3E\uDD48-\uDD4F\uDD5A-\uDD5F\uDD66\uDD69\uDD8F\uDD92\uDD99-\uDD9F\uDDAA-\uDEDF\uDEF9-\uDFAF\uDFB1-\uDFBF\uDFF2-\uDFFE]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC6F\uDC75-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80B\uD80E-\uD810\uD812-\uD819\uD824-\uD82B\uD82D\uD82E\uD830-\uD833\uD837\uD839\uD83F\uD87B-\uD87D\uD87F\uD885-\uDB3F\uDB41-\uDBFF][\uDC00-\uDFFF]|\uD80D[\uDC2F-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F\uDE6A-\uDE6D\uDE70-\uDECF\uDEEE\uDEEF\uDEF6-\uDEFF\uDF46-\uDF4F\uDF5A\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE9B-\uDEFF\uDF4B-\uDF4E\uDF88-\uDF8E\uDFA0-\uDFDF\uDFE5-\uDFEF\uDFF2-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD823[\uDCD6-\uDCFF\uDD09-\uDFFF]|\uD82C[\uDD1F-\uDD4F\uDD53-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A\uDC9B\uDCA0-\uDFFF]|\uD834[\uDCF6-\uDCFF\uDD27\uDD28\uDD73-\uDD7A\uDDE9-\uDDFF\uDE46-\uDEDF\uDEF4-\uDEFF\uDF57-\uDF5F\uDF79-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDFCC\uDFCD]|\uD836[\uDE8C-\uDE9A\uDEA0\uDEB0-\uDFFF]|\uD838[\uDC07\uDC19\uDC1A\uDC22\uDC25\uDC2B-\uDCFF\uDD2D-\uDD2F\uDD3E\uDD3F\uDD4A-\uDD4D\uDD50-\uDEBF\uDEFA-\uDEFE\uDF00-\uDFFF]|\uD83A[\uDCC5\uDCC6\uDCD7-\uDCFF\uDD4C-\uDD4F\uDD5A-\uDD5D\uDD60-\uDFFF]|\uD83B[\uDC00-\uDC70\uDCB5-\uDD00\uDD3E-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDEEF\uDEF2-\uDFFF]|\uD83C[\uDC2C-\uDC2F\uDC94-\uDC9F\uDCAF\uDCB0\uDCC0\uDCD0\uDCF6-\uDCFF\uDDAE-\uDDE5\uDE03-\uDE0F\uDE3C-\uDE3F\uDE49-\uDE4F\uDE52-\uDE5F\uDE66-\uDEFF]|\uD83D[\uDED8-\uDEDF\uDEED-\uDEEF\uDEFD-\uDEFF\uDF74-\uDF7F\uDFD9-\uDFDF\uDFEC-\uDFFF]|\uD83E[\uDC0C-\uDC0F\uDC48-\uDC4F\uDC5A-\uDC5F\uDC88-\uDC8F\uDCAE\uDCAF\uDCB2-\uDCFF\uDD79\uDDCC\uDE54-\uDE5F\uDE6E\uDE6F\uDE75-\uDE77\uDE7B-\uDE7F\uDE87-\uDE8F\uDEA9-\uDEAF\uDEB7-\uDEBF\uDEC3-\uDECF\uDED7-\uDEFF\uDF93\uDFCB-\uDFEF\uDFFA-\uDFFF]|\uD869[\uDEDE-\uDEFF]|\uD86D[\uDF35-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uD884[\uDF4B-\uDFFF]|\uDB40[\uDC00-\uDCFF\uDDF0-\uDFFF]' ++ }, ++ { ++ 'name': 'Cc', ++ 'alias': 'Control', ++ 'bmp': '\0-\x1F\x7F-\x9F' ++ }, ++ { ++ 'name': 'Cf', ++ 'alias': 'Format', ++ 'bmp': '\xAD\u0600-\u0605\u061C\u06DD\u070F\u08E2\u180E\u200B-\u200F\u202A-\u202E\u2060-\u2064\u2066-\u206F\uFEFF\uFFF9-\uFFFB', ++ 'astral': '\uD804[\uDCBD\uDCCD]|\uD80D[\uDC30-\uDC38]|\uD82F[\uDCA0-\uDCA3]|\uD834[\uDD73-\uDD7A]|\uDB40[\uDC01\uDC20-\uDC7F]' ++ }, ++ { ++ 'name': 'Cn', ++ 'alias': 'Unassigned', ++ 'bmp': '\u0378\u0379\u0380-\u0383\u038B\u038D\u03A2\u0530\u0557\u0558\u058B\u058C\u0590\u05C8-\u05CF\u05EB-\u05EE\u05F5-\u05FF\u061D\u070E\u074B\u074C\u07B2-\u07BF\u07FB\u07FC\u082E\u082F\u083F\u085C\u085D\u085F\u086B-\u089F\u08B5\u08C8-\u08D2\u0984\u098D\u098E\u0991\u0992\u09A9\u09B1\u09B3-\u09B5\u09BA\u09BB\u09C5\u09C6\u09C9\u09CA\u09CF-\u09D6\u09D8-\u09DB\u09DE\u09E4\u09E5\u09FF\u0A00\u0A04\u0A0B-\u0A0E\u0A11\u0A12\u0A29\u0A31\u0A34\u0A37\u0A3A\u0A3B\u0A3D\u0A43-\u0A46\u0A49\u0A4A\u0A4E-\u0A50\u0A52-\u0A58\u0A5D\u0A5F-\u0A65\u0A77-\u0A80\u0A84\u0A8E\u0A92\u0AA9\u0AB1\u0AB4\u0ABA\u0ABB\u0AC6\u0ACA\u0ACE\u0ACF\u0AD1-\u0ADF\u0AE4\u0AE5\u0AF2-\u0AF8\u0B00\u0B04\u0B0D\u0B0E\u0B11\u0B12\u0B29\u0B31\u0B34\u0B3A\u0B3B\u0B45\u0B46\u0B49\u0B4A\u0B4E-\u0B54\u0B58-\u0B5B\u0B5E\u0B64\u0B65\u0B78-\u0B81\u0B84\u0B8B-\u0B8D\u0B91\u0B96-\u0B98\u0B9B\u0B9D\u0BA0-\u0BA2\u0BA5-\u0BA7\u0BAB-\u0BAD\u0BBA-\u0BBD\u0BC3-\u0BC5\u0BC9\u0BCE\u0BCF\u0BD1-\u0BD6\u0BD8-\u0BE5\u0BFB-\u0BFF\u0C0D\u0C11\u0C29\u0C3A-\u0C3C\u0C45\u0C49\u0C4E-\u0C54\u0C57\u0C5B-\u0C5F\u0C64\u0C65\u0C70-\u0C76\u0C8D\u0C91\u0CA9\u0CB4\u0CBA\u0CBB\u0CC5\u0CC9\u0CCE-\u0CD4\u0CD7-\u0CDD\u0CDF\u0CE4\u0CE5\u0CF0\u0CF3-\u0CFF\u0D0D\u0D11\u0D45\u0D49\u0D50-\u0D53\u0D64\u0D65\u0D80\u0D84\u0D97-\u0D99\u0DB2\u0DBC\u0DBE\u0DBF\u0DC7-\u0DC9\u0DCB-\u0DCE\u0DD5\u0DD7\u0DE0-\u0DE5\u0DF0\u0DF1\u0DF5-\u0E00\u0E3B-\u0E3E\u0E5C-\u0E80\u0E83\u0E85\u0E8B\u0EA4\u0EA6\u0EBE\u0EBF\u0EC5\u0EC7\u0ECE\u0ECF\u0EDA\u0EDB\u0EE0-\u0EFF\u0F48\u0F6D-\u0F70\u0F98\u0FBD\u0FCD\u0FDB-\u0FFF\u10C6\u10C8-\u10CC\u10CE\u10CF\u1249\u124E\u124F\u1257\u1259\u125E\u125F\u1289\u128E\u128F\u12B1\u12B6\u12B7\u12BF\u12C1\u12C6\u12C7\u12D7\u1311\u1316\u1317\u135B\u135C\u137D-\u137F\u139A-\u139F\u13F6\u13F7\u13FE\u13FF\u169D-\u169F\u16F9-\u16FF\u170D\u1715-\u171F\u1737-\u173F\u1754-\u175F\u176D\u1771\u1774-\u177F\u17DE\u17DF\u17EA-\u17EF\u17FA-\u17FF\u180F\u181A-\u181F\u1879-\u187F\u18AB-\u18AF\u18F6-\u18FF\u191F\u192C-\u192F\u193C-\u193F\u1941-\u1943\u196E\u196F\u1975-\u197F\u19AC-\u19AF\u19CA-\u19CF\u19DB-\u19DD\u1A1C\u1A1D\u1A5F\u1A7D\u1A7E\u1A8A-\u1A8F\u1A9A-\u1A9F\u1AAE\u1AAF\u1AC1-\u1AFF\u1B4C-\u1B4F\u1B7D-\u1B7F\u1BF4-\u1BFB\u1C38-\u1C3A\u1C4A-\u1C4C\u1C89-\u1C8F\u1CBB\u1CBC\u1CC8-\u1CCF\u1CFB-\u1CFF\u1DFA\u1F16\u1F17\u1F1E\u1F1F\u1F46\u1F47\u1F4E\u1F4F\u1F58\u1F5A\u1F5C\u1F5E\u1F7E\u1F7F\u1FB5\u1FC5\u1FD4\u1FD5\u1FDC\u1FF0\u1FF1\u1FF5\u1FFF\u2065\u2072\u2073\u208F\u209D-\u209F\u20C0-\u20CF\u20F1-\u20FF\u218C-\u218F\u2427-\u243F\u244B-\u245F\u2B74\u2B75\u2B96\u2C2F\u2C5F\u2CF4-\u2CF8\u2D26\u2D28-\u2D2C\u2D2E\u2D2F\u2D68-\u2D6E\u2D71-\u2D7E\u2D97-\u2D9F\u2DA7\u2DAF\u2DB7\u2DBF\u2DC7\u2DCF\u2DD7\u2DDF\u2E53-\u2E7F\u2E9A\u2EF4-\u2EFF\u2FD6-\u2FEF\u2FFC-\u2FFF\u3040\u3097\u3098\u3100-\u3104\u3130\u318F\u31E4-\u31EF\u321F\u9FFD-\u9FFF\uA48D-\uA48F\uA4C7-\uA4CF\uA62C-\uA63F\uA6F8-\uA6FF\uA7C0\uA7C1\uA7CB-\uA7F4\uA82D-\uA82F\uA83A-\uA83F\uA878-\uA87F\uA8C6-\uA8CD\uA8DA-\uA8DF\uA954-\uA95E\uA97D-\uA97F\uA9CE\uA9DA-\uA9DD\uA9FF\uAA37-\uAA3F\uAA4E\uAA4F\uAA5A\uAA5B\uAAC3-\uAADA\uAAF7-\uAB00\uAB07\uAB08\uAB0F\uAB10\uAB17-\uAB1F\uAB27\uAB2F\uAB6C-\uAB6F\uABEE\uABEF\uABFA-\uABFF\uD7A4-\uD7AF\uD7C7-\uD7CA\uD7FC-\uD7FF\uFA6E\uFA6F\uFADA-\uFAFF\uFB07-\uFB12\uFB18-\uFB1C\uFB37\uFB3D\uFB3F\uFB42\uFB45\uFBC2-\uFBD2\uFD40-\uFD4F\uFD90\uFD91\uFDC8-\uFDEF\uFDFE\uFDFF\uFE1A-\uFE1F\uFE53\uFE67\uFE6C-\uFE6F\uFE75\uFEFD\uFEFE\uFF00\uFFBF-\uFFC1\uFFC8\uFFC9\uFFD0\uFFD1\uFFD8\uFFD9\uFFDD-\uFFDF\uFFE7\uFFEF-\uFFF8\uFFFE\uFFFF', ++ 'astral': '\uD800[\uDC0C\uDC27\uDC3B\uDC3E\uDC4E\uDC4F\uDC5E-\uDC7F\uDCFB-\uDCFF\uDD03-\uDD06\uDD34-\uDD36\uDD8F\uDD9D-\uDD9F\uDDA1-\uDDCF\uDDFE-\uDE7F\uDE9D-\uDE9F\uDED1-\uDEDF\uDEFC-\uDEFF\uDF24-\uDF2C\uDF4B-\uDF4F\uDF7B-\uDF7F\uDF9E\uDFC4-\uDFC7\uDFD6-\uDFFF]|\uD801[\uDC9E\uDC9F\uDCAA-\uDCAF\uDCD4-\uDCD7\uDCFC-\uDCFF\uDD28-\uDD2F\uDD64-\uDD6E\uDD70-\uDDFF\uDF37-\uDF3F\uDF56-\uDF5F\uDF68-\uDFFF]|\uD802[\uDC06\uDC07\uDC09\uDC36\uDC39-\uDC3B\uDC3D\uDC3E\uDC56\uDC9F-\uDCA6\uDCB0-\uDCDF\uDCF3\uDCF6-\uDCFA\uDD1C-\uDD1E\uDD3A-\uDD3E\uDD40-\uDD7F\uDDB8-\uDDBB\uDDD0\uDDD1\uDE04\uDE07-\uDE0B\uDE14\uDE18\uDE36\uDE37\uDE3B-\uDE3E\uDE49-\uDE4F\uDE59-\uDE5F\uDEA0-\uDEBF\uDEE7-\uDEEA\uDEF7-\uDEFF\uDF36-\uDF38\uDF56\uDF57\uDF73-\uDF77\uDF92-\uDF98\uDF9D-\uDFA8\uDFB0-\uDFFF]|\uD803[\uDC49-\uDC7F\uDCB3-\uDCBF\uDCF3-\uDCF9\uDD28-\uDD2F\uDD3A-\uDE5F\uDE7F\uDEAA\uDEAE\uDEAF\uDEB2-\uDEFF\uDF28-\uDF2F\uDF5A-\uDFAF\uDFCC-\uDFDF\uDFF7-\uDFFF]|\uD804[\uDC4E-\uDC51\uDC70-\uDC7E\uDCC2-\uDCCC\uDCCE\uDCCF\uDCE9-\uDCEF\uDCFA-\uDCFF\uDD35\uDD48-\uDD4F\uDD77-\uDD7F\uDDE0\uDDF5-\uDDFF\uDE12\uDE3F-\uDE7F\uDE87\uDE89\uDE8E\uDE9E\uDEAA-\uDEAF\uDEEB-\uDEEF\uDEFA-\uDEFF\uDF04\uDF0D\uDF0E\uDF11\uDF12\uDF29\uDF31\uDF34\uDF3A\uDF45\uDF46\uDF49\uDF4A\uDF4E\uDF4F\uDF51-\uDF56\uDF58-\uDF5C\uDF64\uDF65\uDF6D-\uDF6F\uDF75-\uDFFF]|\uD805[\uDC5C\uDC62-\uDC7F\uDCC8-\uDCCF\uDCDA-\uDD7F\uDDB6\uDDB7\uDDDE-\uDDFF\uDE45-\uDE4F\uDE5A-\uDE5F\uDE6D-\uDE7F\uDEB9-\uDEBF\uDECA-\uDEFF\uDF1B\uDF1C\uDF2C-\uDF2F\uDF40-\uDFFF]|\uD806[\uDC3C-\uDC9F\uDCF3-\uDCFE\uDD07\uDD08\uDD0A\uDD0B\uDD14\uDD17\uDD36\uDD39\uDD3A\uDD47-\uDD4F\uDD5A-\uDD9F\uDDA8\uDDA9\uDDD8\uDDD9\uDDE5-\uDDFF\uDE48-\uDE4F\uDEA3-\uDEBF\uDEF9-\uDFFF]|\uD807[\uDC09\uDC37\uDC46-\uDC4F\uDC6D-\uDC6F\uDC90\uDC91\uDCA8\uDCB7-\uDCFF\uDD07\uDD0A\uDD37-\uDD39\uDD3B\uDD3E\uDD48-\uDD4F\uDD5A-\uDD5F\uDD66\uDD69\uDD8F\uDD92\uDD99-\uDD9F\uDDAA-\uDEDF\uDEF9-\uDFAF\uDFB1-\uDFBF\uDFF2-\uDFFE]|\uD808[\uDF9A-\uDFFF]|\uD809[\uDC6F\uDC75-\uDC7F\uDD44-\uDFFF]|[\uD80A\uD80B\uD80E-\uD810\uD812-\uD819\uD824-\uD82B\uD82D\uD82E\uD830-\uD833\uD837\uD839\uD83F\uD87B-\uD87D\uD87F\uD885-\uDB3F\uDB41-\uDB7F][\uDC00-\uDFFF]|\uD80D[\uDC2F\uDC39-\uDFFF]|\uD811[\uDE47-\uDFFF]|\uD81A[\uDE39-\uDE3F\uDE5F\uDE6A-\uDE6D\uDE70-\uDECF\uDEEE\uDEEF\uDEF6-\uDEFF\uDF46-\uDF4F\uDF5A\uDF62\uDF78-\uDF7C\uDF90-\uDFFF]|\uD81B[\uDC00-\uDE3F\uDE9B-\uDEFF\uDF4B-\uDF4E\uDF88-\uDF8E\uDFA0-\uDFDF\uDFE5-\uDFEF\uDFF2-\uDFFF]|\uD821[\uDFF8-\uDFFF]|\uD823[\uDCD6-\uDCFF\uDD09-\uDFFF]|\uD82C[\uDD1F-\uDD4F\uDD53-\uDD63\uDD68-\uDD6F\uDEFC-\uDFFF]|\uD82F[\uDC6B-\uDC6F\uDC7D-\uDC7F\uDC89-\uDC8F\uDC9A\uDC9B\uDCA4-\uDFFF]|\uD834[\uDCF6-\uDCFF\uDD27\uDD28\uDDE9-\uDDFF\uDE46-\uDEDF\uDEF4-\uDEFF\uDF57-\uDF5F\uDF79-\uDFFF]|\uD835[\uDC55\uDC9D\uDCA0\uDCA1\uDCA3\uDCA4\uDCA7\uDCA8\uDCAD\uDCBA\uDCBC\uDCC4\uDD06\uDD0B\uDD0C\uDD15\uDD1D\uDD3A\uDD3F\uDD45\uDD47-\uDD49\uDD51\uDEA6\uDEA7\uDFCC\uDFCD]|\uD836[\uDE8C-\uDE9A\uDEA0\uDEB0-\uDFFF]|\uD838[\uDC07\uDC19\uDC1A\uDC22\uDC25\uDC2B-\uDCFF\uDD2D-\uDD2F\uDD3E\uDD3F\uDD4A-\uDD4D\uDD50-\uDEBF\uDEFA-\uDEFE\uDF00-\uDFFF]|\uD83A[\uDCC5\uDCC6\uDCD7-\uDCFF\uDD4C-\uDD4F\uDD5A-\uDD5D\uDD60-\uDFFF]|\uD83B[\uDC00-\uDC70\uDCB5-\uDD00\uDD3E-\uDDFF\uDE04\uDE20\uDE23\uDE25\uDE26\uDE28\uDE33\uDE38\uDE3A\uDE3C-\uDE41\uDE43-\uDE46\uDE48\uDE4A\uDE4C\uDE50\uDE53\uDE55\uDE56\uDE58\uDE5A\uDE5C\uDE5E\uDE60\uDE63\uDE65\uDE66\uDE6B\uDE73\uDE78\uDE7D\uDE7F\uDE8A\uDE9C-\uDEA0\uDEA4\uDEAA\uDEBC-\uDEEF\uDEF2-\uDFFF]|\uD83C[\uDC2C-\uDC2F\uDC94-\uDC9F\uDCAF\uDCB0\uDCC0\uDCD0\uDCF6-\uDCFF\uDDAE-\uDDE5\uDE03-\uDE0F\uDE3C-\uDE3F\uDE49-\uDE4F\uDE52-\uDE5F\uDE66-\uDEFF]|\uD83D[\uDED8-\uDEDF\uDEED-\uDEEF\uDEFD-\uDEFF\uDF74-\uDF7F\uDFD9-\uDFDF\uDFEC-\uDFFF]|\uD83E[\uDC0C-\uDC0F\uDC48-\uDC4F\uDC5A-\uDC5F\uDC88-\uDC8F\uDCAE\uDCAF\uDCB2-\uDCFF\uDD79\uDDCC\uDE54-\uDE5F\uDE6E\uDE6F\uDE75-\uDE77\uDE7B-\uDE7F\uDE87-\uDE8F\uDEA9-\uDEAF\uDEB7-\uDEBF\uDEC3-\uDECF\uDED7-\uDEFF\uDF93\uDFCB-\uDFEF\uDFFA-\uDFFF]|\uD869[\uDEDE-\uDEFF]|\uD86D[\uDF35-\uDF3F]|\uD86E[\uDC1E\uDC1F]|\uD873[\uDEA2-\uDEAF]|\uD87A[\uDFE1-\uDFFF]|\uD87E[\uDE1E-\uDFFF]|\uD884[\uDF4B-\uDFFF]|\uDB40[\uDC00\uDC02-\uDC1F\uDC80-\uDCFF\uDDF0-\uDFFF]|[\uDBBF\uDBFF][\uDFFE\uDFFF]' ++ }, ++ { ++ 'name': 'Co', ++ 'alias': 'Private_Use', ++ 'bmp': '\uE000-\uF8FF', ++ 'astral': '[\uDB80-\uDBBE\uDBC0-\uDBFE][\uDC00-\uDFFF]|[\uDBBF\uDBFF][\uDC00-\uDFFD]' ++ }, ++ { ++ 'name': 'Cs', ++ 'alias': 'Surrogate', ++ 'bmp': '\uD800-\uDFFF' ++ }, ++ { ++ 'name': 'L', ++ 'alias': 'Letter', ++ 'bmp': 'A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08C7\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\u9FFC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7BF\uA7C2-\uA7CA\uA7F5-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC', ++ 'astral': '\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD23\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A]|\uD806[\uDC00-\uDC2B\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF50\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82C[\uDC00-\uDD1E\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD838[\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDEC0-\uDEEB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDD\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A]' ++ }, ++ { ++ 'name': 'LC', ++ 'alias': 'Cased_Letter', ++ 'bmp': 'A-Za-z\xB5\xC0-\xD6\xD8-\xF6\xF8-\u01BA\u01BC-\u01BF\u01C4-\u0293\u0295-\u02AF\u0370-\u0373\u0376\u0377\u037B-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0560-\u0588\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FD-\u10FF\u13A0-\u13F5\u13F8-\u13FD\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1D00-\u1D2B\u1D6B-\u1D77\u1D79-\u1D9A\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2134\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2C7B\u2C7E-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\uA640-\uA66D\uA680-\uA69B\uA722-\uA76F\uA771-\uA787\uA78B-\uA78E\uA790-\uA7BF\uA7C2-\uA7CA\uA7F5\uA7F6\uA7FA\uAB30-\uAB5A\uAB60-\uAB68\uAB70-\uABBF\uFB00-\uFB06\uFB13-\uFB17\uFF21-\uFF3A\uFF41-\uFF5A', ++ 'astral': '\uD801[\uDC00-\uDC4F\uDCB0-\uDCD3\uDCD8-\uDCFB]|\uD803[\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD806[\uDCA0-\uDCDF]|\uD81B[\uDE40-\uDE7F]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDD00-\uDD43]' ++ }, ++ { ++ 'name': 'Ll', ++ 'alias': 'Lowercase_Letter', ++ 'bmp': 'a-z\xB5\xDF-\xF6\xF8-\xFF\u0101\u0103\u0105\u0107\u0109\u010B\u010D\u010F\u0111\u0113\u0115\u0117\u0119\u011B\u011D\u011F\u0121\u0123\u0125\u0127\u0129\u012B\u012D\u012F\u0131\u0133\u0135\u0137\u0138\u013A\u013C\u013E\u0140\u0142\u0144\u0146\u0148\u0149\u014B\u014D\u014F\u0151\u0153\u0155\u0157\u0159\u015B\u015D\u015F\u0161\u0163\u0165\u0167\u0169\u016B\u016D\u016F\u0171\u0173\u0175\u0177\u017A\u017C\u017E-\u0180\u0183\u0185\u0188\u018C\u018D\u0192\u0195\u0199-\u019B\u019E\u01A1\u01A3\u01A5\u01A8\u01AA\u01AB\u01AD\u01B0\u01B4\u01B6\u01B9\u01BA\u01BD-\u01BF\u01C6\u01C9\u01CC\u01CE\u01D0\u01D2\u01D4\u01D6\u01D8\u01DA\u01DC\u01DD\u01DF\u01E1\u01E3\u01E5\u01E7\u01E9\u01EB\u01ED\u01EF\u01F0\u01F3\u01F5\u01F9\u01FB\u01FD\u01FF\u0201\u0203\u0205\u0207\u0209\u020B\u020D\u020F\u0211\u0213\u0215\u0217\u0219\u021B\u021D\u021F\u0221\u0223\u0225\u0227\u0229\u022B\u022D\u022F\u0231\u0233-\u0239\u023C\u023F\u0240\u0242\u0247\u0249\u024B\u024D\u024F-\u0293\u0295-\u02AF\u0371\u0373\u0377\u037B-\u037D\u0390\u03AC-\u03CE\u03D0\u03D1\u03D5-\u03D7\u03D9\u03DB\u03DD\u03DF\u03E1\u03E3\u03E5\u03E7\u03E9\u03EB\u03ED\u03EF-\u03F3\u03F5\u03F8\u03FB\u03FC\u0430-\u045F\u0461\u0463\u0465\u0467\u0469\u046B\u046D\u046F\u0471\u0473\u0475\u0477\u0479\u047B\u047D\u047F\u0481\u048B\u048D\u048F\u0491\u0493\u0495\u0497\u0499\u049B\u049D\u049F\u04A1\u04A3\u04A5\u04A7\u04A9\u04AB\u04AD\u04AF\u04B1\u04B3\u04B5\u04B7\u04B9\u04BB\u04BD\u04BF\u04C2\u04C4\u04C6\u04C8\u04CA\u04CC\u04CE\u04CF\u04D1\u04D3\u04D5\u04D7\u04D9\u04DB\u04DD\u04DF\u04E1\u04E3\u04E5\u04E7\u04E9\u04EB\u04ED\u04EF\u04F1\u04F3\u04F5\u04F7\u04F9\u04FB\u04FD\u04FF\u0501\u0503\u0505\u0507\u0509\u050B\u050D\u050F\u0511\u0513\u0515\u0517\u0519\u051B\u051D\u051F\u0521\u0523\u0525\u0527\u0529\u052B\u052D\u052F\u0560-\u0588\u10D0-\u10FA\u10FD-\u10FF\u13F8-\u13FD\u1C80-\u1C88\u1D00-\u1D2B\u1D6B-\u1D77\u1D79-\u1D9A\u1E01\u1E03\u1E05\u1E07\u1E09\u1E0B\u1E0D\u1E0F\u1E11\u1E13\u1E15\u1E17\u1E19\u1E1B\u1E1D\u1E1F\u1E21\u1E23\u1E25\u1E27\u1E29\u1E2B\u1E2D\u1E2F\u1E31\u1E33\u1E35\u1E37\u1E39\u1E3B\u1E3D\u1E3F\u1E41\u1E43\u1E45\u1E47\u1E49\u1E4B\u1E4D\u1E4F\u1E51\u1E53\u1E55\u1E57\u1E59\u1E5B\u1E5D\u1E5F\u1E61\u1E63\u1E65\u1E67\u1E69\u1E6B\u1E6D\u1E6F\u1E71\u1E73\u1E75\u1E77\u1E79\u1E7B\u1E7D\u1E7F\u1E81\u1E83\u1E85\u1E87\u1E89\u1E8B\u1E8D\u1E8F\u1E91\u1E93\u1E95-\u1E9D\u1E9F\u1EA1\u1EA3\u1EA5\u1EA7\u1EA9\u1EAB\u1EAD\u1EAF\u1EB1\u1EB3\u1EB5\u1EB7\u1EB9\u1EBB\u1EBD\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1EC9\u1ECB\u1ECD\u1ECF\u1ED1\u1ED3\u1ED5\u1ED7\u1ED9\u1EDB\u1EDD\u1EDF\u1EE1\u1EE3\u1EE5\u1EE7\u1EE9\u1EEB\u1EED\u1EEF\u1EF1\u1EF3\u1EF5\u1EF7\u1EF9\u1EFB\u1EFD\u1EFF-\u1F07\u1F10-\u1F15\u1F20-\u1F27\u1F30-\u1F37\u1F40-\u1F45\u1F50-\u1F57\u1F60-\u1F67\u1F70-\u1F7D\u1F80-\u1F87\u1F90-\u1F97\u1FA0-\u1FA7\u1FB0-\u1FB4\u1FB6\u1FB7\u1FBE\u1FC2-\u1FC4\u1FC6\u1FC7\u1FD0-\u1FD3\u1FD6\u1FD7\u1FE0-\u1FE7\u1FF2-\u1FF4\u1FF6\u1FF7\u210A\u210E\u210F\u2113\u212F\u2134\u2139\u213C\u213D\u2146-\u2149\u214E\u2184\u2C30-\u2C5E\u2C61\u2C65\u2C66\u2C68\u2C6A\u2C6C\u2C71\u2C73\u2C74\u2C76-\u2C7B\u2C81\u2C83\u2C85\u2C87\u2C89\u2C8B\u2C8D\u2C8F\u2C91\u2C93\u2C95\u2C97\u2C99\u2C9B\u2C9D\u2C9F\u2CA1\u2CA3\u2CA5\u2CA7\u2CA9\u2CAB\u2CAD\u2CAF\u2CB1\u2CB3\u2CB5\u2CB7\u2CB9\u2CBB\u2CBD\u2CBF\u2CC1\u2CC3\u2CC5\u2CC7\u2CC9\u2CCB\u2CCD\u2CCF\u2CD1\u2CD3\u2CD5\u2CD7\u2CD9\u2CDB\u2CDD\u2CDF\u2CE1\u2CE3\u2CE4\u2CEC\u2CEE\u2CF3\u2D00-\u2D25\u2D27\u2D2D\uA641\uA643\uA645\uA647\uA649\uA64B\uA64D\uA64F\uA651\uA653\uA655\uA657\uA659\uA65B\uA65D\uA65F\uA661\uA663\uA665\uA667\uA669\uA66B\uA66D\uA681\uA683\uA685\uA687\uA689\uA68B\uA68D\uA68F\uA691\uA693\uA695\uA697\uA699\uA69B\uA723\uA725\uA727\uA729\uA72B\uA72D\uA72F-\uA731\uA733\uA735\uA737\uA739\uA73B\uA73D\uA73F\uA741\uA743\uA745\uA747\uA749\uA74B\uA74D\uA74F\uA751\uA753\uA755\uA757\uA759\uA75B\uA75D\uA75F\uA761\uA763\uA765\uA767\uA769\uA76B\uA76D\uA76F\uA771-\uA778\uA77A\uA77C\uA77F\uA781\uA783\uA785\uA787\uA78C\uA78E\uA791\uA793-\uA795\uA797\uA799\uA79B\uA79D\uA79F\uA7A1\uA7A3\uA7A5\uA7A7\uA7A9\uA7AF\uA7B5\uA7B7\uA7B9\uA7BB\uA7BD\uA7BF\uA7C3\uA7C8\uA7CA\uA7F6\uA7FA\uAB30-\uAB5A\uAB60-\uAB68\uAB70-\uABBF\uFB00-\uFB06\uFB13-\uFB17\uFF41-\uFF5A', ++ 'astral': '\uD801[\uDC28-\uDC4F\uDCD8-\uDCFB]|\uD803[\uDCC0-\uDCF2]|\uD806[\uDCC0-\uDCDF]|\uD81B[\uDE60-\uDE7F]|\uD835[\uDC1A-\uDC33\uDC4E-\uDC54\uDC56-\uDC67\uDC82-\uDC9B\uDCB6-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDCCF\uDCEA-\uDD03\uDD1E-\uDD37\uDD52-\uDD6B\uDD86-\uDD9F\uDDBA-\uDDD3\uDDEE-\uDE07\uDE22-\uDE3B\uDE56-\uDE6F\uDE8A-\uDEA5\uDEC2-\uDEDA\uDEDC-\uDEE1\uDEFC-\uDF14\uDF16-\uDF1B\uDF36-\uDF4E\uDF50-\uDF55\uDF70-\uDF88\uDF8A-\uDF8F\uDFAA-\uDFC2\uDFC4-\uDFC9\uDFCB]|\uD83A[\uDD22-\uDD43]' ++ }, ++ { ++ 'name': 'Lm', ++ 'alias': 'Modifier_Letter', ++ 'bmp': '\u02B0-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0374\u037A\u0559\u0640\u06E5\u06E6\u07F4\u07F5\u07FA\u081A\u0824\u0828\u0971\u0E46\u0EC6\u10FC\u17D7\u1843\u1AA7\u1C78-\u1C7D\u1D2C-\u1D6A\u1D78\u1D9B-\u1DBF\u2071\u207F\u2090-\u209C\u2C7C\u2C7D\u2D6F\u2E2F\u3005\u3031-\u3035\u303B\u309D\u309E\u30FC-\u30FE\uA015\uA4F8-\uA4FD\uA60C\uA67F\uA69C\uA69D\uA717-\uA71F\uA770\uA788\uA7F8\uA7F9\uA9CF\uA9E6\uAA70\uAADD\uAAF3\uAAF4\uAB5C-\uAB5F\uAB69\uFF70\uFF9E\uFF9F', ++ 'astral': '\uD81A[\uDF40-\uDF43]|\uD81B[\uDF93-\uDF9F\uDFE0\uDFE1\uDFE3]|\uD838[\uDD37-\uDD3D]|\uD83A\uDD4B' ++ }, ++ { ++ 'name': 'Lo', ++ 'alias': 'Other_Letter', ++ 'bmp': '\xAA\xBA\u01BB\u01C0-\u01C3\u0294\u05D0-\u05EA\u05EF-\u05F2\u0620-\u063F\u0641-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u0800-\u0815\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08C7\u0904-\u0939\u093D\u0950\u0958-\u0961\u0972-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E45\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u1100-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17DC\u1820-\u1842\u1844-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C77\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u2135-\u2138\u2D30-\u2D67\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3006\u303C\u3041-\u3096\u309F\u30A1-\u30FA\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\u9FFC\uA000-\uA014\uA016-\uA48C\uA4D0-\uA4F7\uA500-\uA60B\uA610-\uA61F\uA62A\uA62B\uA66E\uA6A0-\uA6E5\uA78F\uA7F7\uA7FB-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9E0-\uA9E4\uA9E7-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA6F\uAA71-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB\uAADC\uAAE0-\uAAEA\uAAF2\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF66-\uFF6F\uFF71-\uFF9D\uFFA0-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC', ++ 'astral': '\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF40\uDF42-\uDF49\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF]|\uD801[\uDC50-\uDC9D\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDD00-\uDD23\uDE80-\uDEA9\uDEB0\uDEB1\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD44\uDD47\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDEB8\uDF00-\uDF1A]|\uD806[\uDC00-\uDC2B\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD2F\uDD3F\uDD41\uDDA0-\uDDA7\uDDAA-\uDDD0\uDDE1\uDDE3\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE89\uDE9D\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD89\uDD98\uDEE0-\uDEF2\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF4A\uDF50]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82C[\uDC00-\uDD1E\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD838[\uDD00-\uDD2C\uDD4E\uDEC0-\uDEEB]|\uD83A[\uDC00-\uDCC4]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDEDD\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A]' ++ }, ++ { ++ 'name': 'Lt', ++ 'alias': 'Titlecase_Letter', ++ 'bmp': '\u01C5\u01C8\u01CB\u01F2\u1F88-\u1F8F\u1F98-\u1F9F\u1FA8-\u1FAF\u1FBC\u1FCC\u1FFC' ++ }, ++ { ++ 'name': 'Lu', ++ 'alias': 'Uppercase_Letter', ++ 'bmp': 'A-Z\xC0-\xD6\xD8-\xDE\u0100\u0102\u0104\u0106\u0108\u010A\u010C\u010E\u0110\u0112\u0114\u0116\u0118\u011A\u011C\u011E\u0120\u0122\u0124\u0126\u0128\u012A\u012C\u012E\u0130\u0132\u0134\u0136\u0139\u013B\u013D\u013F\u0141\u0143\u0145\u0147\u014A\u014C\u014E\u0150\u0152\u0154\u0156\u0158\u015A\u015C\u015E\u0160\u0162\u0164\u0166\u0168\u016A\u016C\u016E\u0170\u0172\u0174\u0176\u0178\u0179\u017B\u017D\u0181\u0182\u0184\u0186\u0187\u0189-\u018B\u018E-\u0191\u0193\u0194\u0196-\u0198\u019C\u019D\u019F\u01A0\u01A2\u01A4\u01A6\u01A7\u01A9\u01AC\u01AE\u01AF\u01B1-\u01B3\u01B5\u01B7\u01B8\u01BC\u01C4\u01C7\u01CA\u01CD\u01CF\u01D1\u01D3\u01D5\u01D7\u01D9\u01DB\u01DE\u01E0\u01E2\u01E4\u01E6\u01E8\u01EA\u01EC\u01EE\u01F1\u01F4\u01F6-\u01F8\u01FA\u01FC\u01FE\u0200\u0202\u0204\u0206\u0208\u020A\u020C\u020E\u0210\u0212\u0214\u0216\u0218\u021A\u021C\u021E\u0220\u0222\u0224\u0226\u0228\u022A\u022C\u022E\u0230\u0232\u023A\u023B\u023D\u023E\u0241\u0243-\u0246\u0248\u024A\u024C\u024E\u0370\u0372\u0376\u037F\u0386\u0388-\u038A\u038C\u038E\u038F\u0391-\u03A1\u03A3-\u03AB\u03CF\u03D2-\u03D4\u03D8\u03DA\u03DC\u03DE\u03E0\u03E2\u03E4\u03E6\u03E8\u03EA\u03EC\u03EE\u03F4\u03F7\u03F9\u03FA\u03FD-\u042F\u0460\u0462\u0464\u0466\u0468\u046A\u046C\u046E\u0470\u0472\u0474\u0476\u0478\u047A\u047C\u047E\u0480\u048A\u048C\u048E\u0490\u0492\u0494\u0496\u0498\u049A\u049C\u049E\u04A0\u04A2\u04A4\u04A6\u04A8\u04AA\u04AC\u04AE\u04B0\u04B2\u04B4\u04B6\u04B8\u04BA\u04BC\u04BE\u04C0\u04C1\u04C3\u04C5\u04C7\u04C9\u04CB\u04CD\u04D0\u04D2\u04D4\u04D6\u04D8\u04DA\u04DC\u04DE\u04E0\u04E2\u04E4\u04E6\u04E8\u04EA\u04EC\u04EE\u04F0\u04F2\u04F4\u04F6\u04F8\u04FA\u04FC\u04FE\u0500\u0502\u0504\u0506\u0508\u050A\u050C\u050E\u0510\u0512\u0514\u0516\u0518\u051A\u051C\u051E\u0520\u0522\u0524\u0526\u0528\u052A\u052C\u052E\u0531-\u0556\u10A0-\u10C5\u10C7\u10CD\u13A0-\u13F5\u1C90-\u1CBA\u1CBD-\u1CBF\u1E00\u1E02\u1E04\u1E06\u1E08\u1E0A\u1E0C\u1E0E\u1E10\u1E12\u1E14\u1E16\u1E18\u1E1A\u1E1C\u1E1E\u1E20\u1E22\u1E24\u1E26\u1E28\u1E2A\u1E2C\u1E2E\u1E30\u1E32\u1E34\u1E36\u1E38\u1E3A\u1E3C\u1E3E\u1E40\u1E42\u1E44\u1E46\u1E48\u1E4A\u1E4C\u1E4E\u1E50\u1E52\u1E54\u1E56\u1E58\u1E5A\u1E5C\u1E5E\u1E60\u1E62\u1E64\u1E66\u1E68\u1E6A\u1E6C\u1E6E\u1E70\u1E72\u1E74\u1E76\u1E78\u1E7A\u1E7C\u1E7E\u1E80\u1E82\u1E84\u1E86\u1E88\u1E8A\u1E8C\u1E8E\u1E90\u1E92\u1E94\u1E9E\u1EA0\u1EA2\u1EA4\u1EA6\u1EA8\u1EAA\u1EAC\u1EAE\u1EB0\u1EB2\u1EB4\u1EB6\u1EB8\u1EBA\u1EBC\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1EC8\u1ECA\u1ECC\u1ECE\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EDA\u1EDC\u1EDE\u1EE0\u1EE2\u1EE4\u1EE6\u1EE8\u1EEA\u1EEC\u1EEE\u1EF0\u1EF2\u1EF4\u1EF6\u1EF8\u1EFA\u1EFC\u1EFE\u1F08-\u1F0F\u1F18-\u1F1D\u1F28-\u1F2F\u1F38-\u1F3F\u1F48-\u1F4D\u1F59\u1F5B\u1F5D\u1F5F\u1F68-\u1F6F\u1FB8-\u1FBB\u1FC8-\u1FCB\u1FD8-\u1FDB\u1FE8-\u1FEC\u1FF8-\u1FFB\u2102\u2107\u210B-\u210D\u2110-\u2112\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u2130-\u2133\u213E\u213F\u2145\u2183\u2C00-\u2C2E\u2C60\u2C62-\u2C64\u2C67\u2C69\u2C6B\u2C6D-\u2C70\u2C72\u2C75\u2C7E-\u2C80\u2C82\u2C84\u2C86\u2C88\u2C8A\u2C8C\u2C8E\u2C90\u2C92\u2C94\u2C96\u2C98\u2C9A\u2C9C\u2C9E\u2CA0\u2CA2\u2CA4\u2CA6\u2CA8\u2CAA\u2CAC\u2CAE\u2CB0\u2CB2\u2CB4\u2CB6\u2CB8\u2CBA\u2CBC\u2CBE\u2CC0\u2CC2\u2CC4\u2CC6\u2CC8\u2CCA\u2CCC\u2CCE\u2CD0\u2CD2\u2CD4\u2CD6\u2CD8\u2CDA\u2CDC\u2CDE\u2CE0\u2CE2\u2CEB\u2CED\u2CF2\uA640\uA642\uA644\uA646\uA648\uA64A\uA64C\uA64E\uA650\uA652\uA654\uA656\uA658\uA65A\uA65C\uA65E\uA660\uA662\uA664\uA666\uA668\uA66A\uA66C\uA680\uA682\uA684\uA686\uA688\uA68A\uA68C\uA68E\uA690\uA692\uA694\uA696\uA698\uA69A\uA722\uA724\uA726\uA728\uA72A\uA72C\uA72E\uA732\uA734\uA736\uA738\uA73A\uA73C\uA73E\uA740\uA742\uA744\uA746\uA748\uA74A\uA74C\uA74E\uA750\uA752\uA754\uA756\uA758\uA75A\uA75C\uA75E\uA760\uA762\uA764\uA766\uA768\uA76A\uA76C\uA76E\uA779\uA77B\uA77D\uA77E\uA780\uA782\uA784\uA786\uA78B\uA78D\uA790\uA792\uA796\uA798\uA79A\uA79C\uA79E\uA7A0\uA7A2\uA7A4\uA7A6\uA7A8\uA7AA-\uA7AE\uA7B0-\uA7B4\uA7B6\uA7B8\uA7BA\uA7BC\uA7BE\uA7C2\uA7C4-\uA7C7\uA7C9\uA7F5\uFF21-\uFF3A', ++ 'astral': '\uD801[\uDC00-\uDC27\uDCB0-\uDCD3]|\uD803[\uDC80-\uDCB2]|\uD806[\uDCA0-\uDCBF]|\uD81B[\uDE40-\uDE5F]|\uD835[\uDC00-\uDC19\uDC34-\uDC4D\uDC68-\uDC81\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB5\uDCD0-\uDCE9\uDD04\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD38\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD6C-\uDD85\uDDA0-\uDDB9\uDDD4-\uDDED\uDE08-\uDE21\uDE3C-\uDE55\uDE70-\uDE89\uDEA8-\uDEC0\uDEE2-\uDEFA\uDF1C-\uDF34\uDF56-\uDF6E\uDF90-\uDFA8\uDFCA]|\uD83A[\uDD00-\uDD21]' ++ }, ++ { ++ 'name': 'M', ++ 'alias': 'Mark', ++ 'bmp': '\u0300-\u036F\u0483-\u0489\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D3-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C00-\u0C04\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F\u109A-\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u180B-\u180D\u1885\u1886\u18A9\u1920-\u192B\u1930-\u193B\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F\u1AB0-\u1AC0\u1B00-\u1B04\u1B34-\u1B44\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BE6-\u1BF3\u1C24-\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DF9\u1DFB-\u1DFF\u20D0-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\uA66F-\uA672\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9E5\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F', ++ 'astral': '\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD803[\uDD24-\uDD27\uDEAB\uDEAC\uDF46-\uDF50]|\uD804[\uDC00-\uDC02\uDC38-\uDC46\uDC7F-\uDC82\uDCB0-\uDCBA\uDD00-\uDD02\uDD27-\uDD34\uDD45\uDD46\uDD73\uDD80-\uDD82\uDDB3-\uDDC0\uDDC9-\uDDCC\uDDCE\uDDCF\uDE2C-\uDE37\uDE3E\uDEDF-\uDEEA\uDF00-\uDF03\uDF3B\uDF3C\uDF3E-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF62\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC35-\uDC46\uDC5E\uDCB0-\uDCC3\uDDAF-\uDDB5\uDDB8-\uDDC0\uDDDC\uDDDD\uDE30-\uDE40\uDEAB-\uDEB7\uDF1D-\uDF2B]|\uD806[\uDC2C-\uDC3A\uDD30-\uDD35\uDD37\uDD38\uDD3B-\uDD3E\uDD40\uDD42\uDD43\uDDD1-\uDDD7\uDDDA-\uDDE0\uDDE4\uDE01-\uDE0A\uDE33-\uDE39\uDE3B-\uDE3E\uDE47\uDE51-\uDE5B\uDE8A-\uDE99]|\uD807[\uDC2F-\uDC36\uDC38-\uDC3F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD31-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD45\uDD47\uDD8A-\uDD8E\uDD90\uDD91\uDD93-\uDD97\uDEF3-\uDEF6]|\uD81A[\uDEF0-\uDEF4\uDF30-\uDF36]|\uD81B[\uDF4F\uDF51-\uDF87\uDF8F-\uDF92\uDFE4\uDFF0\uDFF1]|\uD82F[\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A\uDD30-\uDD36\uDEEC-\uDEEF]|\uD83A[\uDCD0-\uDCD6\uDD44-\uDD4A]|\uDB40[\uDD00-\uDDEF]' ++ }, ++ { ++ 'name': 'Mc', ++ 'alias': 'Spacing_Mark', ++ 'bmp': '\u0903\u093B\u093E-\u0940\u0949-\u094C\u094E\u094F\u0982\u0983\u09BE-\u09C0\u09C7\u09C8\u09CB\u09CC\u09D7\u0A03\u0A3E-\u0A40\u0A83\u0ABE-\u0AC0\u0AC9\u0ACB\u0ACC\u0B02\u0B03\u0B3E\u0B40\u0B47\u0B48\u0B4B\u0B4C\u0B57\u0BBE\u0BBF\u0BC1\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCC\u0BD7\u0C01-\u0C03\u0C41-\u0C44\u0C82\u0C83\u0CBE\u0CC0-\u0CC4\u0CC7\u0CC8\u0CCA\u0CCB\u0CD5\u0CD6\u0D02\u0D03\u0D3E-\u0D40\u0D46-\u0D48\u0D4A-\u0D4C\u0D57\u0D82\u0D83\u0DCF-\u0DD1\u0DD8-\u0DDF\u0DF2\u0DF3\u0F3E\u0F3F\u0F7F\u102B\u102C\u1031\u1038\u103B\u103C\u1056\u1057\u1062-\u1064\u1067-\u106D\u1083\u1084\u1087-\u108C\u108F\u109A-\u109C\u17B6\u17BE-\u17C5\u17C7\u17C8\u1923-\u1926\u1929-\u192B\u1930\u1931\u1933-\u1938\u1A19\u1A1A\u1A55\u1A57\u1A61\u1A63\u1A64\u1A6D-\u1A72\u1B04\u1B35\u1B3B\u1B3D-\u1B41\u1B43\u1B44\u1B82\u1BA1\u1BA6\u1BA7\u1BAA\u1BE7\u1BEA-\u1BEC\u1BEE\u1BF2\u1BF3\u1C24-\u1C2B\u1C34\u1C35\u1CE1\u1CF7\u302E\u302F\uA823\uA824\uA827\uA880\uA881\uA8B4-\uA8C3\uA952\uA953\uA983\uA9B4\uA9B5\uA9BA\uA9BB\uA9BE-\uA9C0\uAA2F\uAA30\uAA33\uAA34\uAA4D\uAA7B\uAA7D\uAAEB\uAAEE\uAAEF\uAAF5\uABE3\uABE4\uABE6\uABE7\uABE9\uABEA\uABEC', ++ 'astral': '\uD804[\uDC00\uDC02\uDC82\uDCB0-\uDCB2\uDCB7\uDCB8\uDD2C\uDD45\uDD46\uDD82\uDDB3-\uDDB5\uDDBF\uDDC0\uDDCE\uDE2C-\uDE2E\uDE32\uDE33\uDE35\uDEE0-\uDEE2\uDF02\uDF03\uDF3E\uDF3F\uDF41-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF57\uDF62\uDF63]|\uD805[\uDC35-\uDC37\uDC40\uDC41\uDC45\uDCB0-\uDCB2\uDCB9\uDCBB-\uDCBE\uDCC1\uDDAF-\uDDB1\uDDB8-\uDDBB\uDDBE\uDE30-\uDE32\uDE3B\uDE3C\uDE3E\uDEAC\uDEAE\uDEAF\uDEB6\uDF20\uDF21\uDF26]|\uD806[\uDC2C-\uDC2E\uDC38\uDD30-\uDD35\uDD37\uDD38\uDD3D\uDD40\uDD42\uDDD1-\uDDD3\uDDDC-\uDDDF\uDDE4\uDE39\uDE57\uDE58\uDE97]|\uD807[\uDC2F\uDC3E\uDCA9\uDCB1\uDCB4\uDD8A-\uDD8E\uDD93\uDD94\uDD96\uDEF5\uDEF6]|\uD81B[\uDF51-\uDF87\uDFF0\uDFF1]|\uD834[\uDD65\uDD66\uDD6D-\uDD72]' ++ }, ++ { ++ 'name': 'Me', ++ 'alias': 'Enclosing_Mark', ++ 'bmp': '\u0488\u0489\u1ABE\u20DD-\u20E0\u20E2-\u20E4\uA670-\uA672' ++ }, ++ { ++ 'name': 'Mn', ++ 'alias': 'Nonspacing_Mark', ++ 'bmp': '\u0300-\u036F\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u0711\u0730-\u074A\u07A6-\u07B0\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u08D3-\u08E1\u08E3-\u0902\u093A\u093C\u0941-\u0948\u094D\u0951-\u0957\u0962\u0963\u0981\u09BC\u09C1-\u09C4\u09CD\u09E2\u09E3\u09FE\u0A01\u0A02\u0A3C\u0A41\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A70\u0A71\u0A75\u0A81\u0A82\u0ABC\u0AC1-\u0AC5\u0AC7\u0AC8\u0ACD\u0AE2\u0AE3\u0AFA-\u0AFF\u0B01\u0B3C\u0B3F\u0B41-\u0B44\u0B4D\u0B55\u0B56\u0B62\u0B63\u0B82\u0BC0\u0BCD\u0C00\u0C04\u0C3E-\u0C40\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C81\u0CBC\u0CBF\u0CC6\u0CCC\u0CCD\u0CE2\u0CE3\u0D00\u0D01\u0D3B\u0D3C\u0D41-\u0D44\u0D4D\u0D62\u0D63\u0D81\u0DCA\u0DD2-\u0DD4\u0DD6\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECD\u0F18\u0F19\u0F35\u0F37\u0F39\u0F71-\u0F7E\u0F80-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102D-\u1030\u1032-\u1037\u1039\u103A\u103D\u103E\u1058\u1059\u105E-\u1060\u1071-\u1074\u1082\u1085\u1086\u108D\u109D\u135D-\u135F\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4\u17B5\u17B7-\u17BD\u17C6\u17C9-\u17D3\u17DD\u180B-\u180D\u1885\u1886\u18A9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193B\u1A17\u1A18\u1A1B\u1A56\u1A58-\u1A5E\u1A60\u1A62\u1A65-\u1A6C\u1A73-\u1A7C\u1A7F\u1AB0-\u1ABD\u1ABF\u1AC0\u1B00-\u1B03\u1B34\u1B36-\u1B3A\u1B3C\u1B42\u1B6B-\u1B73\u1B80\u1B81\u1BA2-\u1BA5\u1BA8\u1BA9\u1BAB-\u1BAD\u1BE6\u1BE8\u1BE9\u1BED\u1BEF-\u1BF1\u1C2C-\u1C33\u1C36\u1C37\u1CD0-\u1CD2\u1CD4-\u1CE0\u1CE2-\u1CE8\u1CED\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF9\u1DFB-\u1DFF\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302D\u3099\u309A\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA825\uA826\uA82C\uA8C4\uA8C5\uA8E0-\uA8F1\uA8FF\uA926-\uA92D\uA947-\uA951\uA980-\uA982\uA9B3\uA9B6-\uA9B9\uA9BC\uA9BD\uA9E5\uAA29-\uAA2E\uAA31\uAA32\uAA35\uAA36\uAA43\uAA4C\uAA7C\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEC\uAAED\uAAF6\uABE5\uABE8\uABED\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F', ++ 'astral': '\uD800[\uDDFD\uDEE0\uDF76-\uDF7A]|\uD802[\uDE01-\uDE03\uDE05\uDE06\uDE0C-\uDE0F\uDE38-\uDE3A\uDE3F\uDEE5\uDEE6]|\uD803[\uDD24-\uDD27\uDEAB\uDEAC\uDF46-\uDF50]|\uD804[\uDC01\uDC38-\uDC46\uDC7F-\uDC81\uDCB3-\uDCB6\uDCB9\uDCBA\uDD00-\uDD02\uDD27-\uDD2B\uDD2D-\uDD34\uDD73\uDD80\uDD81\uDDB6-\uDDBE\uDDC9-\uDDCC\uDDCF\uDE2F-\uDE31\uDE34\uDE36\uDE37\uDE3E\uDEDF\uDEE3-\uDEEA\uDF00\uDF01\uDF3B\uDF3C\uDF40\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC38-\uDC3F\uDC42-\uDC44\uDC46\uDC5E\uDCB3-\uDCB8\uDCBA\uDCBF\uDCC0\uDCC2\uDCC3\uDDB2-\uDDB5\uDDBC\uDDBD\uDDBF\uDDC0\uDDDC\uDDDD\uDE33-\uDE3A\uDE3D\uDE3F\uDE40\uDEAB\uDEAD\uDEB0-\uDEB5\uDEB7\uDF1D-\uDF1F\uDF22-\uDF25\uDF27-\uDF2B]|\uD806[\uDC2F-\uDC37\uDC39\uDC3A\uDD3B\uDD3C\uDD3E\uDD43\uDDD4-\uDDD7\uDDDA\uDDDB\uDDE0\uDE01-\uDE0A\uDE33-\uDE38\uDE3B-\uDE3E\uDE47\uDE51-\uDE56\uDE59-\uDE5B\uDE8A-\uDE96\uDE98\uDE99]|\uD807[\uDC30-\uDC36\uDC38-\uDC3D\uDC3F\uDC92-\uDCA7\uDCAA-\uDCB0\uDCB2\uDCB3\uDCB5\uDCB6\uDD31-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD45\uDD47\uDD90\uDD91\uDD95\uDD97\uDEF3\uDEF4]|\uD81A[\uDEF0-\uDEF4\uDF30-\uDF36]|\uD81B[\uDF4F\uDF8F-\uDF92\uDFE4]|\uD82F[\uDC9D\uDC9E]|\uD834[\uDD67-\uDD69\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A\uDD30-\uDD36\uDEEC-\uDEEF]|\uD83A[\uDCD0-\uDCD6\uDD44-\uDD4A]|\uDB40[\uDD00-\uDDEF]' ++ }, ++ { ++ 'name': 'N', ++ 'alias': 'Number', ++ 'bmp': '0-9\xB2\xB3\xB9\xBC-\xBE\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u09F4-\u09F9\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0B72-\u0B77\u0BE6-\u0BF2\u0C66-\u0C6F\u0C78-\u0C7E\u0CE6-\u0CEF\u0D58-\u0D5E\u0D66-\u0D78\u0DE6-\u0DEF\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F33\u1040-\u1049\u1090-\u1099\u1369-\u137C\u16EE-\u16F0\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1946-\u194F\u19D0-\u19DA\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\u2070\u2074-\u2079\u2080-\u2089\u2150-\u2182\u2185-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2CFD\u3007\u3021-\u3029\u3038-\u303A\u3192-\u3195\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\uA620-\uA629\uA6E6-\uA6EF\uA830-\uA835\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uA9F0-\uA9F9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19', ++ 'astral': '\uD800[\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDEE1-\uDEFB\uDF20-\uDF23\uDF41\uDF4A\uDFD1-\uDFD5]|\uD801[\uDCA0-\uDCA9]|\uD802[\uDC58-\uDC5F\uDC79-\uDC7F\uDCA7-\uDCAF\uDCFB-\uDCFF\uDD16-\uDD1B\uDDBC\uDDBD\uDDC0-\uDDCF\uDDD2-\uDDFF\uDE40-\uDE48\uDE7D\uDE7E\uDE9D-\uDE9F\uDEEB-\uDEEF\uDF58-\uDF5F\uDF78-\uDF7F\uDFA9-\uDFAF]|\uD803[\uDCFA-\uDCFF\uDD30-\uDD39\uDE60-\uDE7E\uDF1D-\uDF26\uDF51-\uDF54\uDFC5-\uDFCB]|\uD804[\uDC52-\uDC6F\uDCF0-\uDCF9\uDD36-\uDD3F\uDDD0-\uDDD9\uDDE1-\uDDF4\uDEF0-\uDEF9]|\uD805[\uDC50-\uDC59\uDCD0-\uDCD9\uDE50-\uDE59\uDEC0-\uDEC9\uDF30-\uDF3B]|\uD806[\uDCE0-\uDCF2\uDD50-\uDD59]|\uD807[\uDC50-\uDC6C\uDD50-\uDD59\uDDA0-\uDDA9\uDFC0-\uDFD4]|\uD809[\uDC00-\uDC6E]|\uD81A[\uDE60-\uDE69\uDF50-\uDF59\uDF5B-\uDF61]|\uD81B[\uDE80-\uDE96]|\uD834[\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDFCE-\uDFFF]|\uD838[\uDD40-\uDD49\uDEF0-\uDEF9]|\uD83A[\uDCC7-\uDCCF\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9]' ++ }, ++ { ++ 'name': 'Nd', ++ 'alias': 'Decimal_Number', ++ 'bmp': '0-9\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0BE6-\u0BEF\u0C66-\u0C6F\u0CE6-\u0CEF\u0D66-\u0D6F\u0DE6-\u0DEF\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F29\u1040-\u1049\u1090-\u1099\u17E0-\u17E9\u1810-\u1819\u1946-\u194F\u19D0-\u19D9\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\uA620-\uA629\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uA9F0-\uA9F9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19', ++ 'astral': '\uD801[\uDCA0-\uDCA9]|\uD803[\uDD30-\uDD39]|\uD804[\uDC66-\uDC6F\uDCF0-\uDCF9\uDD36-\uDD3F\uDDD0-\uDDD9\uDEF0-\uDEF9]|\uD805[\uDC50-\uDC59\uDCD0-\uDCD9\uDE50-\uDE59\uDEC0-\uDEC9\uDF30-\uDF39]|\uD806[\uDCE0-\uDCE9\uDD50-\uDD59]|\uD807[\uDC50-\uDC59\uDD50-\uDD59\uDDA0-\uDDA9]|\uD81A[\uDE60-\uDE69\uDF50-\uDF59]|\uD835[\uDFCE-\uDFFF]|\uD838[\uDD40-\uDD49\uDEF0-\uDEF9]|\uD83A[\uDD50-\uDD59]|\uD83E[\uDFF0-\uDFF9]' ++ }, ++ { ++ 'name': 'Nl', ++ 'alias': 'Letter_Number', ++ 'bmp': '\u16EE-\u16F0\u2160-\u2182\u2185-\u2188\u3007\u3021-\u3029\u3038-\u303A\uA6E6-\uA6EF', ++ 'astral': '\uD800[\uDD40-\uDD74\uDF41\uDF4A\uDFD1-\uDFD5]|\uD809[\uDC00-\uDC6E]' ++ }, ++ { ++ 'name': 'No', ++ 'alias': 'Other_Number', ++ 'bmp': '\xB2\xB3\xB9\xBC-\xBE\u09F4-\u09F9\u0B72-\u0B77\u0BF0-\u0BF2\u0C78-\u0C7E\u0D58-\u0D5E\u0D70-\u0D78\u0F2A-\u0F33\u1369-\u137C\u17F0-\u17F9\u19DA\u2070\u2074-\u2079\u2080-\u2089\u2150-\u215F\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2CFD\u3192-\u3195\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\uA830-\uA835', ++ 'astral': '\uD800[\uDD07-\uDD33\uDD75-\uDD78\uDD8A\uDD8B\uDEE1-\uDEFB\uDF20-\uDF23]|\uD802[\uDC58-\uDC5F\uDC79-\uDC7F\uDCA7-\uDCAF\uDCFB-\uDCFF\uDD16-\uDD1B\uDDBC\uDDBD\uDDC0-\uDDCF\uDDD2-\uDDFF\uDE40-\uDE48\uDE7D\uDE7E\uDE9D-\uDE9F\uDEEB-\uDEEF\uDF58-\uDF5F\uDF78-\uDF7F\uDFA9-\uDFAF]|\uD803[\uDCFA-\uDCFF\uDE60-\uDE7E\uDF1D-\uDF26\uDF51-\uDF54\uDFC5-\uDFCB]|\uD804[\uDC52-\uDC65\uDDE1-\uDDF4]|\uD805[\uDF3A\uDF3B]|\uD806[\uDCEA-\uDCF2]|\uD807[\uDC5A-\uDC6C\uDFC0-\uDFD4]|\uD81A[\uDF5B-\uDF61]|\uD81B[\uDE80-\uDE96]|\uD834[\uDEE0-\uDEF3\uDF60-\uDF78]|\uD83A[\uDCC7-\uDCCF]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D]|\uD83C[\uDD00-\uDD0C]' ++ }, ++ { ++ 'name': 'P', ++ 'alias': 'Punctuation', ++ 'bmp': '!-#%-\\*,-\\/:;\\?@\\[-\\]_\\{\\}\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061E\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C77\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4F\u2E52\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65', ++ 'astral': '\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDEAD\uDF55-\uDF59]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDF3C-\uDF3E]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDFFF]|\uD809[\uDC70-\uDC74]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD81B[\uDE97-\uDE9A\uDFE2]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]|\uD83A[\uDD5E\uDD5F]' ++ }, ++ { ++ 'name': 'Pc', ++ 'alias': 'Connector_Punctuation', ++ 'bmp': '_\u203F\u2040\u2054\uFE33\uFE34\uFE4D-\uFE4F\uFF3F' ++ }, ++ { ++ 'name': 'Pd', ++ 'alias': 'Dash_Punctuation', ++ 'bmp': '\\-\u058A\u05BE\u1400\u1806\u2010-\u2015\u2E17\u2E1A\u2E3A\u2E3B\u2E40\u301C\u3030\u30A0\uFE31\uFE32\uFE58\uFE63\uFF0D', ++ 'astral': '\uD803\uDEAD' ++ }, ++ { ++ 'name': 'Pe', ++ 'alias': 'Close_Punctuation', ++ 'bmp': '\\)\\]\\}\u0F3B\u0F3D\u169C\u2046\u207E\u208E\u2309\u230B\u232A\u2769\u276B\u276D\u276F\u2771\u2773\u2775\u27C6\u27E7\u27E9\u27EB\u27ED\u27EF\u2984\u2986\u2988\u298A\u298C\u298E\u2990\u2992\u2994\u2996\u2998\u29D9\u29DB\u29FD\u2E23\u2E25\u2E27\u2E29\u3009\u300B\u300D\u300F\u3011\u3015\u3017\u3019\u301B\u301E\u301F\uFD3E\uFE18\uFE36\uFE38\uFE3A\uFE3C\uFE3E\uFE40\uFE42\uFE44\uFE48\uFE5A\uFE5C\uFE5E\uFF09\uFF3D\uFF5D\uFF60\uFF63' ++ }, ++ { ++ 'name': 'Pf', ++ 'alias': 'Final_Punctuation', ++ 'bmp': '\xBB\u2019\u201D\u203A\u2E03\u2E05\u2E0A\u2E0D\u2E1D\u2E21' ++ }, ++ { ++ 'name': 'Pi', ++ 'alias': 'Initial_Punctuation', ++ 'bmp': '\xAB\u2018\u201B\u201C\u201F\u2039\u2E02\u2E04\u2E09\u2E0C\u2E1C\u2E20' ++ }, ++ { ++ 'name': 'Po', ++ 'alias': 'Other_Punctuation', ++ 'bmp': '!-#%-\'\\*,\\.\\/:;\\?@\\\xA1\xA7\xB6\xB7\xBF\u037E\u0387\u055A-\u055F\u0589\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061E\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C77\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u166E\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u1805\u1807-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2016\u2017\u2020-\u2027\u2030-\u2038\u203B-\u203E\u2041-\u2043\u2047-\u2051\u2053\u2055-\u205E\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00\u2E01\u2E06-\u2E08\u2E0B\u2E0E-\u2E16\u2E18\u2E19\u2E1B\u2E1E\u2E1F\u2E2A-\u2E2E\u2E30-\u2E39\u2E3C-\u2E3F\u2E41\u2E43-\u2E4F\u2E52\u3001-\u3003\u303D\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFE10-\uFE16\uFE19\uFE30\uFE45\uFE46\uFE49-\uFE4C\uFE50-\uFE52\uFE54-\uFE57\uFE5F-\uFE61\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF07\uFF0A\uFF0C\uFF0E\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3C\uFF61\uFF64\uFF65', ++ 'astral': '\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDF55-\uDF59]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDF3C-\uDF3E]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDFFF]|\uD809[\uDC70-\uDC74]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD81B[\uDE97-\uDE9A\uDFE2]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]|\uD83A[\uDD5E\uDD5F]' ++ }, ++ { ++ 'name': 'Ps', ++ 'alias': 'Open_Punctuation', ++ 'bmp': '\\(\\[\\{\u0F3A\u0F3C\u169B\u201A\u201E\u2045\u207D\u208D\u2308\u230A\u2329\u2768\u276A\u276C\u276E\u2770\u2772\u2774\u27C5\u27E6\u27E8\u27EA\u27EC\u27EE\u2983\u2985\u2987\u2989\u298B\u298D\u298F\u2991\u2993\u2995\u2997\u29D8\u29DA\u29FC\u2E22\u2E24\u2E26\u2E28\u2E42\u3008\u300A\u300C\u300E\u3010\u3014\u3016\u3018\u301A\u301D\uFD3F\uFE17\uFE35\uFE37\uFE39\uFE3B\uFE3D\uFE3F\uFE41\uFE43\uFE47\uFE59\uFE5B\uFE5D\uFF08\uFF3B\uFF5B\uFF5F\uFF62' ++ }, ++ { ++ 'name': 'S', ++ 'alias': 'Symbol', ++ 'bmp': '\\$\\+<->\\^`\\|~\xA2-\xA6\xA8\xA9\xAC\xAE-\xB1\xB4\xB8\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0384\u0385\u03F6\u0482\u058D-\u058F\u0606-\u0608\u060B\u060E\u060F\u06DE\u06E9\u06FD\u06FE\u07F6\u07FE\u07FF\u09F2\u09F3\u09FA\u09FB\u0AF1\u0B70\u0BF3-\u0BFA\u0C7F\u0D4F\u0D79\u0E3F\u0F01-\u0F03\u0F13\u0F15-\u0F17\u0F1A-\u0F1F\u0F34\u0F36\u0F38\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE\u0FCF\u0FD5-\u0FD8\u109E\u109F\u1390-\u1399\u166D\u17DB\u1940\u19DE-\u19FF\u1B61-\u1B6A\u1B74-\u1B7C\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u2044\u2052\u207A-\u207C\u208A-\u208C\u20A0-\u20BF\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F\u218A\u218B\u2190-\u2307\u230C-\u2328\u232B-\u2426\u2440-\u244A\u249C-\u24E9\u2500-\u2767\u2794-\u27C4\u27C7-\u27E5\u27F0-\u2982\u2999-\u29D7\u29DC-\u29FB\u29FE-\u2B73\u2B76-\u2B95\u2B97-\u2BFF\u2CE5-\u2CEA\u2E50\u2E51\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3004\u3012\u3013\u3020\u3036\u3037\u303E\u303F\u309B\u309C\u3190\u3191\u3196-\u319F\u31C0-\u31E3\u3200-\u321E\u322A-\u3247\u3250\u3260-\u327F\u328A-\u32B0\u32C0-\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA700-\uA716\uA720\uA721\uA789\uA78A\uA828-\uA82B\uA836-\uA839\uAA77-\uAA79\uAB5B\uAB6A\uAB6B\uFB29\uFBB2-\uFBC1\uFDFC\uFDFD\uFE62\uFE64-\uFE66\uFE69\uFF04\uFF0B\uFF1C-\uFF1E\uFF3E\uFF40\uFF5C\uFF5E\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFFC\uFFFD', ++ 'astral': '\uD800[\uDD37-\uDD3F\uDD79-\uDD89\uDD8C-\uDD8E\uDD90-\uDD9C\uDDA0\uDDD0-\uDDFC]|\uD802[\uDC77\uDC78\uDEC8]|\uD805\uDF3F|\uD807[\uDFD5-\uDFF1]|\uD81A[\uDF3C-\uDF3F\uDF45]|\uD82F\uDC9C|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD64\uDD6A-\uDD6C\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDE8\uDE00-\uDE41\uDE45\uDF00-\uDF56]|\uD835[\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85\uDE86]|\uD838[\uDD4F\uDEFF]|\uD83B[\uDCAC\uDCB0\uDD2E\uDEF0\uDEF1]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD0D-\uDDAD\uDDE6-\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFF]|\uD83D[\uDC00-\uDED7\uDEE0-\uDEEC\uDEF0-\uDEFC\uDF00-\uDF73\uDF80-\uDFD8\uDFE0-\uDFEB]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0\uDCB1\uDD00-\uDD78\uDD7A-\uDDCB\uDDCD-\uDE53\uDE60-\uDE6D\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6\uDF00-\uDF92\uDF94-\uDFCA]' ++ }, ++ { ++ 'name': 'Sc', ++ 'alias': 'Currency_Symbol', ++ 'bmp': '\\$\xA2-\xA5\u058F\u060B\u07FE\u07FF\u09F2\u09F3\u09FB\u0AF1\u0BF9\u0E3F\u17DB\u20A0-\u20BF\uA838\uFDFC\uFE69\uFF04\uFFE0\uFFE1\uFFE5\uFFE6', ++ 'astral': '\uD807[\uDFDD-\uDFE0]|\uD838\uDEFF|\uD83B\uDCB0' ++ }, ++ { ++ 'name': 'Sk', ++ 'alias': 'Modifier_Symbol', ++ 'bmp': '\\^`\xA8\xAF\xB4\xB8\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0384\u0385\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u309B\u309C\uA700-\uA716\uA720\uA721\uA789\uA78A\uAB5B\uAB6A\uAB6B\uFBB2-\uFBC1\uFF3E\uFF40\uFFE3', ++ 'astral': '\uD83C[\uDFFB-\uDFFF]' ++ }, ++ { ++ 'name': 'Sm', ++ 'alias': 'Math_Symbol', ++ 'bmp': '\\+<->\\|~\xAC\xB1\xD7\xF7\u03F6\u0606-\u0608\u2044\u2052\u207A-\u207C\u208A-\u208C\u2118\u2140-\u2144\u214B\u2190-\u2194\u219A\u219B\u21A0\u21A3\u21A6\u21AE\u21CE\u21CF\u21D2\u21D4\u21F4-\u22FF\u2320\u2321\u237C\u239B-\u23B3\u23DC-\u23E1\u25B7\u25C1\u25F8-\u25FF\u266F\u27C0-\u27C4\u27C7-\u27E5\u27F0-\u27FF\u2900-\u2982\u2999-\u29D7\u29DC-\u29FB\u29FE-\u2AFF\u2B30-\u2B44\u2B47-\u2B4C\uFB29\uFE62\uFE64-\uFE66\uFF0B\uFF1C-\uFF1E\uFF5C\uFF5E\uFFE2\uFFE9-\uFFEC', ++ 'astral': '\uD835[\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3]|\uD83B[\uDEF0\uDEF1]' ++ }, ++ { ++ 'name': 'So', ++ 'alias': 'Other_Symbol', ++ 'bmp': '\xA6\xA9\xAE\xB0\u0482\u058D\u058E\u060E\u060F\u06DE\u06E9\u06FD\u06FE\u07F6\u09FA\u0B70\u0BF3-\u0BF8\u0BFA\u0C7F\u0D4F\u0D79\u0F01-\u0F03\u0F13\u0F15-\u0F17\u0F1A-\u0F1F\u0F34\u0F36\u0F38\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE\u0FCF\u0FD5-\u0FD8\u109E\u109F\u1390-\u1399\u166D\u1940\u19DE-\u19FF\u1B61-\u1B6A\u1B74-\u1B7C\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116\u2117\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u214A\u214C\u214D\u214F\u218A\u218B\u2195-\u2199\u219C-\u219F\u21A1\u21A2\u21A4\u21A5\u21A7-\u21AD\u21AF-\u21CD\u21D0\u21D1\u21D3\u21D5-\u21F3\u2300-\u2307\u230C-\u231F\u2322-\u2328\u232B-\u237B\u237D-\u239A\u23B4-\u23DB\u23E2-\u2426\u2440-\u244A\u249C-\u24E9\u2500-\u25B6\u25B8-\u25C0\u25C2-\u25F7\u2600-\u266E\u2670-\u2767\u2794-\u27BF\u2800-\u28FF\u2B00-\u2B2F\u2B45\u2B46\u2B4D-\u2B73\u2B76-\u2B95\u2B97-\u2BFF\u2CE5-\u2CEA\u2E50\u2E51\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3004\u3012\u3013\u3020\u3036\u3037\u303E\u303F\u3190\u3191\u3196-\u319F\u31C0-\u31E3\u3200-\u321E\u322A-\u3247\u3250\u3260-\u327F\u328A-\u32B0\u32C0-\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA828-\uA82B\uA836\uA837\uA839\uAA77-\uAA79\uFDFD\uFFE4\uFFE8\uFFED\uFFEE\uFFFC\uFFFD', ++ 'astral': '\uD800[\uDD37-\uDD3F\uDD79-\uDD89\uDD8C-\uDD8E\uDD90-\uDD9C\uDDA0\uDDD0-\uDDFC]|\uD802[\uDC77\uDC78\uDEC8]|\uD805\uDF3F|\uD807[\uDFD5-\uDFDC\uDFE1-\uDFF1]|\uD81A[\uDF3C-\uDF3F\uDF45]|\uD82F\uDC9C|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD64\uDD6A-\uDD6C\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDE8\uDE00-\uDE41\uDE45\uDF00-\uDF56]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85\uDE86]|\uD838\uDD4F|\uD83B[\uDCAC\uDD2E]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD0D-\uDDAD\uDDE6-\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFA]|\uD83D[\uDC00-\uDED7\uDEE0-\uDEEC\uDEF0-\uDEFC\uDF00-\uDF73\uDF80-\uDFD8\uDFE0-\uDFEB]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0\uDCB1\uDD00-\uDD78\uDD7A-\uDDCB\uDDCD-\uDE53\uDE60-\uDE6D\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6\uDF00-\uDF92\uDF94-\uDFCA]' ++ }, ++ { ++ 'name': 'Z', ++ 'alias': 'Separator', ++ 'bmp': ' \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000' ++ }, ++ { ++ 'name': 'Zl', ++ 'alias': 'Line_Separator', ++ 'bmp': '\u2028' ++ }, ++ { ++ 'name': 'Zp', ++ 'alias': 'Paragraph_Separator', ++ 'bmp': '\u2029' ++ }, ++ { ++ 'name': 'Zs', ++ 'alias': 'Space_Separator', ++ 'bmp': ' \xA0\u1680\u2000-\u200A\u202F\u205F\u3000' ++ } ++ ]; ++ ++ /*! ++ * XRegExp Unicode Categories 5.0.2 ++ * ++ * Steven Levithan (c) 2010-present MIT License ++ * Unicode data by Mathias Bynens ++ */ ++ ++ var unicodeCategories = (XRegExp) => { ++ ++ /** ++ * Adds support for Unicode's general categories. E.g., `\p{Lu}` or `\p{Uppercase Letter}`. See ++ * category descriptions in UAX #44 . Token ++ * names are case insensitive, and any spaces, hyphens, and underscores are ignored. ++ * ++ * Uses Unicode 13.0.0. ++ * ++ * @requires XRegExp, Unicode Base ++ */ ++ ++ if (!XRegExp.addUnicodeData) { ++ throw new ReferenceError('Unicode Base must be loaded before Unicode Categories'); ++ } ++ ++ XRegExp.addUnicodeData(categories); ++ }; ++ ++ var properties = [ ++ { ++ 'name': 'ASCII', ++ 'bmp': '\0-\x7F' ++ }, ++ { ++ 'name': 'Alphabetic', ++ 'bmp': 'A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0345\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05B0-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05EF-\u05F2\u0610-\u061A\u0620-\u0657\u0659-\u065F\u066E-\u06D3\u06D5-\u06DC\u06E1-\u06E8\u06ED-\u06EF\u06FA-\u06FC\u06FF\u0710-\u073F\u074D-\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0817\u081A-\u082C\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08C7\u08D4-\u08DF\u08E3-\u08E9\u08F0-\u093B\u093D-\u094C\u094E-\u0950\u0955-\u0963\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD-\u09C4\u09C7\u09C8\u09CB\u09CC\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09F0\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3E-\u0A42\u0A47\u0A48\u0A4B\u0A4C\u0A51\u0A59-\u0A5C\u0A5E\u0A70-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD-\u0AC5\u0AC7-\u0AC9\u0ACB\u0ACC\u0AD0\u0AE0-\u0AE3\u0AF9-\u0AFC\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D-\u0B44\u0B47\u0B48\u0B4B\u0B4C\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCC\u0BD0\u0BD7\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4C\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCC\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CF1\u0CF2\u0D00-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D-\u0D44\u0D46-\u0D48\u0D4A-\u0D4C\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D7A-\u0D7F\u0D81-\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E46\u0E4D\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0ECD\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F71-\u0F81\u0F88-\u0F97\u0F99-\u0FBC\u1000-\u1036\u1038\u103B-\u103F\u1050-\u108F\u109A-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1713\u1720-\u1733\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17B3\u17B6-\u17C8\u17D7\u17DC\u1820-\u1878\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u1938\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A1B\u1A20-\u1A5E\u1A61-\u1A74\u1AA7\u1ABF\u1AC0\u1B00-\u1B33\u1B35-\u1B43\u1B45-\u1B4B\u1B80-\u1BA9\u1BAC-\u1BAF\u1BBA-\u1BE5\u1BE7-\u1BF1\u1C00-\u1C36\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1DE7-\u1DF4\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u24B6-\u24E9\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\u9FFC\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA674-\uA67B\uA67F-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7BF\uA7C2-\uA7CA\uA7F5-\uA805\uA807-\uA827\uA840-\uA873\uA880-\uA8C3\uA8C5\uA8F2-\uA8F7\uA8FB\uA8FD-\uA8FF\uA90A-\uA92A\uA930-\uA952\uA960-\uA97C\uA980-\uA9B2\uA9B4-\uA9BF\uA9CF\uA9E0-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA60-\uAA76\uAA7A-\uAABE\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF5\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABEA\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC', ++ 'astral': '\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2\uDD00-\uDD27\uDE80-\uDEA9\uDEAB\uDEAC\uDEB0\uDEB1\uDF00-\uDF1C\uDF27\uDF30-\uDF45\uDFB0-\uDFC4\uDFE0-\uDFF6]|\uD804[\uDC00-\uDC45\uDC82-\uDCB8\uDCD0-\uDCE8\uDD00-\uDD32\uDD44-\uDD47\uDD50-\uDD72\uDD76\uDD80-\uDDBF\uDDC1-\uDDC4\uDDCE\uDDCF\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE34\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEE8\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D-\uDF44\uDF47\uDF48\uDF4B\uDF4C\uDF50\uDF57\uDF5D-\uDF63]|\uD805[\uDC00-\uDC41\uDC43-\uDC45\uDC47-\uDC4A\uDC5F-\uDC61\uDC80-\uDCC1\uDCC4\uDCC5\uDCC7\uDD80-\uDDB5\uDDB8-\uDDBE\uDDD8-\uDDDD\uDE00-\uDE3E\uDE40\uDE44\uDE80-\uDEB5\uDEB8\uDF00-\uDF1A\uDF1D-\uDF2A]|\uD806[\uDC00-\uDC38\uDCA0-\uDCDF\uDCFF-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD35\uDD37\uDD38\uDD3B\uDD3C\uDD3F-\uDD42\uDDA0-\uDDA7\uDDAA-\uDDD7\uDDDA-\uDDDF\uDDE1\uDDE3\uDDE4\uDE00-\uDE32\uDE35-\uDE3E\uDE50-\uDE97\uDE9D\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC3E\uDC40\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD41\uDD43\uDD46\uDD47\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD8E\uDD90\uDD91\uDD93-\uDD96\uDD98\uDEE0-\uDEF6\uDFB0]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD822\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDE40-\uDE7F\uDF00-\uDF4A\uDF4F-\uDF87\uDF8F-\uDF9F\uDFE0\uDFE1\uDFE3\uDFF0\uDFF1]|\uD821[\uDC00-\uDFF7]|\uD823[\uDC00-\uDCD5\uDD00-\uDD08]|\uD82C[\uDC00-\uDD1E\uDD50-\uDD52\uDD64-\uDD67\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9E]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A\uDD00-\uDD2C\uDD37-\uDD3D\uDD4E\uDEC0-\uDEEB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43\uDD47\uDD4B]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD83C[\uDD30-\uDD49\uDD50-\uDD69\uDD70-\uDD89]|\uD869[\uDC00-\uDEDD\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A]' ++ }, ++ { ++ 'name': 'Any', ++ 'isBmpLast': true, ++ 'bmp': '\0-\uFFFF', ++ 'astral': '[\uD800-\uDBFF][\uDC00-\uDFFF]' ++ }, ++ { ++ 'name': 'Default_Ignorable_Code_Point', ++ 'bmp': '\xAD\u034F\u061C\u115F\u1160\u17B4\u17B5\u180B-\u180E\u200B-\u200F\u202A-\u202E\u2060-\u206F\u3164\uFE00-\uFE0F\uFEFF\uFFA0\uFFF0-\uFFF8', ++ 'astral': '\uD82F[\uDCA0-\uDCA3]|\uD834[\uDD73-\uDD7A]|[\uDB40-\uDB43][\uDC00-\uDFFF]' ++ }, ++ { ++ 'name': 'Lowercase', ++ 'bmp': 'a-z\xAA\xB5\xBA\xDF-\xF6\xF8-\xFF\u0101\u0103\u0105\u0107\u0109\u010B\u010D\u010F\u0111\u0113\u0115\u0117\u0119\u011B\u011D\u011F\u0121\u0123\u0125\u0127\u0129\u012B\u012D\u012F\u0131\u0133\u0135\u0137\u0138\u013A\u013C\u013E\u0140\u0142\u0144\u0146\u0148\u0149\u014B\u014D\u014F\u0151\u0153\u0155\u0157\u0159\u015B\u015D\u015F\u0161\u0163\u0165\u0167\u0169\u016B\u016D\u016F\u0171\u0173\u0175\u0177\u017A\u017C\u017E-\u0180\u0183\u0185\u0188\u018C\u018D\u0192\u0195\u0199-\u019B\u019E\u01A1\u01A3\u01A5\u01A8\u01AA\u01AB\u01AD\u01B0\u01B4\u01B6\u01B9\u01BA\u01BD-\u01BF\u01C6\u01C9\u01CC\u01CE\u01D0\u01D2\u01D4\u01D6\u01D8\u01DA\u01DC\u01DD\u01DF\u01E1\u01E3\u01E5\u01E7\u01E9\u01EB\u01ED\u01EF\u01F0\u01F3\u01F5\u01F9\u01FB\u01FD\u01FF\u0201\u0203\u0205\u0207\u0209\u020B\u020D\u020F\u0211\u0213\u0215\u0217\u0219\u021B\u021D\u021F\u0221\u0223\u0225\u0227\u0229\u022B\u022D\u022F\u0231\u0233-\u0239\u023C\u023F\u0240\u0242\u0247\u0249\u024B\u024D\u024F-\u0293\u0295-\u02B8\u02C0\u02C1\u02E0-\u02E4\u0345\u0371\u0373\u0377\u037A-\u037D\u0390\u03AC-\u03CE\u03D0\u03D1\u03D5-\u03D7\u03D9\u03DB\u03DD\u03DF\u03E1\u03E3\u03E5\u03E7\u03E9\u03EB\u03ED\u03EF-\u03F3\u03F5\u03F8\u03FB\u03FC\u0430-\u045F\u0461\u0463\u0465\u0467\u0469\u046B\u046D\u046F\u0471\u0473\u0475\u0477\u0479\u047B\u047D\u047F\u0481\u048B\u048D\u048F\u0491\u0493\u0495\u0497\u0499\u049B\u049D\u049F\u04A1\u04A3\u04A5\u04A7\u04A9\u04AB\u04AD\u04AF\u04B1\u04B3\u04B5\u04B7\u04B9\u04BB\u04BD\u04BF\u04C2\u04C4\u04C6\u04C8\u04CA\u04CC\u04CE\u04CF\u04D1\u04D3\u04D5\u04D7\u04D9\u04DB\u04DD\u04DF\u04E1\u04E3\u04E5\u04E7\u04E9\u04EB\u04ED\u04EF\u04F1\u04F3\u04F5\u04F7\u04F9\u04FB\u04FD\u04FF\u0501\u0503\u0505\u0507\u0509\u050B\u050D\u050F\u0511\u0513\u0515\u0517\u0519\u051B\u051D\u051F\u0521\u0523\u0525\u0527\u0529\u052B\u052D\u052F\u0560-\u0588\u10D0-\u10FA\u10FD-\u10FF\u13F8-\u13FD\u1C80-\u1C88\u1D00-\u1DBF\u1E01\u1E03\u1E05\u1E07\u1E09\u1E0B\u1E0D\u1E0F\u1E11\u1E13\u1E15\u1E17\u1E19\u1E1B\u1E1D\u1E1F\u1E21\u1E23\u1E25\u1E27\u1E29\u1E2B\u1E2D\u1E2F\u1E31\u1E33\u1E35\u1E37\u1E39\u1E3B\u1E3D\u1E3F\u1E41\u1E43\u1E45\u1E47\u1E49\u1E4B\u1E4D\u1E4F\u1E51\u1E53\u1E55\u1E57\u1E59\u1E5B\u1E5D\u1E5F\u1E61\u1E63\u1E65\u1E67\u1E69\u1E6B\u1E6D\u1E6F\u1E71\u1E73\u1E75\u1E77\u1E79\u1E7B\u1E7D\u1E7F\u1E81\u1E83\u1E85\u1E87\u1E89\u1E8B\u1E8D\u1E8F\u1E91\u1E93\u1E95-\u1E9D\u1E9F\u1EA1\u1EA3\u1EA5\u1EA7\u1EA9\u1EAB\u1EAD\u1EAF\u1EB1\u1EB3\u1EB5\u1EB7\u1EB9\u1EBB\u1EBD\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1EC9\u1ECB\u1ECD\u1ECF\u1ED1\u1ED3\u1ED5\u1ED7\u1ED9\u1EDB\u1EDD\u1EDF\u1EE1\u1EE3\u1EE5\u1EE7\u1EE9\u1EEB\u1EED\u1EEF\u1EF1\u1EF3\u1EF5\u1EF7\u1EF9\u1EFB\u1EFD\u1EFF-\u1F07\u1F10-\u1F15\u1F20-\u1F27\u1F30-\u1F37\u1F40-\u1F45\u1F50-\u1F57\u1F60-\u1F67\u1F70-\u1F7D\u1F80-\u1F87\u1F90-\u1F97\u1FA0-\u1FA7\u1FB0-\u1FB4\u1FB6\u1FB7\u1FBE\u1FC2-\u1FC4\u1FC6\u1FC7\u1FD0-\u1FD3\u1FD6\u1FD7\u1FE0-\u1FE7\u1FF2-\u1FF4\u1FF6\u1FF7\u2071\u207F\u2090-\u209C\u210A\u210E\u210F\u2113\u212F\u2134\u2139\u213C\u213D\u2146-\u2149\u214E\u2170-\u217F\u2184\u24D0-\u24E9\u2C30-\u2C5E\u2C61\u2C65\u2C66\u2C68\u2C6A\u2C6C\u2C71\u2C73\u2C74\u2C76-\u2C7D\u2C81\u2C83\u2C85\u2C87\u2C89\u2C8B\u2C8D\u2C8F\u2C91\u2C93\u2C95\u2C97\u2C99\u2C9B\u2C9D\u2C9F\u2CA1\u2CA3\u2CA5\u2CA7\u2CA9\u2CAB\u2CAD\u2CAF\u2CB1\u2CB3\u2CB5\u2CB7\u2CB9\u2CBB\u2CBD\u2CBF\u2CC1\u2CC3\u2CC5\u2CC7\u2CC9\u2CCB\u2CCD\u2CCF\u2CD1\u2CD3\u2CD5\u2CD7\u2CD9\u2CDB\u2CDD\u2CDF\u2CE1\u2CE3\u2CE4\u2CEC\u2CEE\u2CF3\u2D00-\u2D25\u2D27\u2D2D\uA641\uA643\uA645\uA647\uA649\uA64B\uA64D\uA64F\uA651\uA653\uA655\uA657\uA659\uA65B\uA65D\uA65F\uA661\uA663\uA665\uA667\uA669\uA66B\uA66D\uA681\uA683\uA685\uA687\uA689\uA68B\uA68D\uA68F\uA691\uA693\uA695\uA697\uA699\uA69B-\uA69D\uA723\uA725\uA727\uA729\uA72B\uA72D\uA72F-\uA731\uA733\uA735\uA737\uA739\uA73B\uA73D\uA73F\uA741\uA743\uA745\uA747\uA749\uA74B\uA74D\uA74F\uA751\uA753\uA755\uA757\uA759\uA75B\uA75D\uA75F\uA761\uA763\uA765\uA767\uA769\uA76B\uA76D\uA76F-\uA778\uA77A\uA77C\uA77F\uA781\uA783\uA785\uA787\uA78C\uA78E\uA791\uA793-\uA795\uA797\uA799\uA79B\uA79D\uA79F\uA7A1\uA7A3\uA7A5\uA7A7\uA7A9\uA7AF\uA7B5\uA7B7\uA7B9\uA7BB\uA7BD\uA7BF\uA7C3\uA7C8\uA7CA\uA7F6\uA7F8-\uA7FA\uAB30-\uAB5A\uAB5C-\uAB68\uAB70-\uABBF\uFB00-\uFB06\uFB13-\uFB17\uFF41-\uFF5A', ++ 'astral': '\uD801[\uDC28-\uDC4F\uDCD8-\uDCFB]|\uD803[\uDCC0-\uDCF2]|\uD806[\uDCC0-\uDCDF]|\uD81B[\uDE60-\uDE7F]|\uD835[\uDC1A-\uDC33\uDC4E-\uDC54\uDC56-\uDC67\uDC82-\uDC9B\uDCB6-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDCCF\uDCEA-\uDD03\uDD1E-\uDD37\uDD52-\uDD6B\uDD86-\uDD9F\uDDBA-\uDDD3\uDDEE-\uDE07\uDE22-\uDE3B\uDE56-\uDE6F\uDE8A-\uDEA5\uDEC2-\uDEDA\uDEDC-\uDEE1\uDEFC-\uDF14\uDF16-\uDF1B\uDF36-\uDF4E\uDF50-\uDF55\uDF70-\uDF88\uDF8A-\uDF8F\uDFAA-\uDFC2\uDFC4-\uDFC9\uDFCB]|\uD83A[\uDD22-\uDD43]' ++ }, ++ { ++ 'name': 'Noncharacter_Code_Point', ++ 'bmp': '\uFDD0-\uFDEF\uFFFE\uFFFF', ++ 'astral': '[\uD83F\uD87F\uD8BF\uD8FF\uD93F\uD97F\uD9BF\uD9FF\uDA3F\uDA7F\uDABF\uDAFF\uDB3F\uDB7F\uDBBF\uDBFF][\uDFFE\uDFFF]' ++ }, ++ { ++ 'name': 'Uppercase', ++ 'bmp': 'A-Z\xC0-\xD6\xD8-\xDE\u0100\u0102\u0104\u0106\u0108\u010A\u010C\u010E\u0110\u0112\u0114\u0116\u0118\u011A\u011C\u011E\u0120\u0122\u0124\u0126\u0128\u012A\u012C\u012E\u0130\u0132\u0134\u0136\u0139\u013B\u013D\u013F\u0141\u0143\u0145\u0147\u014A\u014C\u014E\u0150\u0152\u0154\u0156\u0158\u015A\u015C\u015E\u0160\u0162\u0164\u0166\u0168\u016A\u016C\u016E\u0170\u0172\u0174\u0176\u0178\u0179\u017B\u017D\u0181\u0182\u0184\u0186\u0187\u0189-\u018B\u018E-\u0191\u0193\u0194\u0196-\u0198\u019C\u019D\u019F\u01A0\u01A2\u01A4\u01A6\u01A7\u01A9\u01AC\u01AE\u01AF\u01B1-\u01B3\u01B5\u01B7\u01B8\u01BC\u01C4\u01C7\u01CA\u01CD\u01CF\u01D1\u01D3\u01D5\u01D7\u01D9\u01DB\u01DE\u01E0\u01E2\u01E4\u01E6\u01E8\u01EA\u01EC\u01EE\u01F1\u01F4\u01F6-\u01F8\u01FA\u01FC\u01FE\u0200\u0202\u0204\u0206\u0208\u020A\u020C\u020E\u0210\u0212\u0214\u0216\u0218\u021A\u021C\u021E\u0220\u0222\u0224\u0226\u0228\u022A\u022C\u022E\u0230\u0232\u023A\u023B\u023D\u023E\u0241\u0243-\u0246\u0248\u024A\u024C\u024E\u0370\u0372\u0376\u037F\u0386\u0388-\u038A\u038C\u038E\u038F\u0391-\u03A1\u03A3-\u03AB\u03CF\u03D2-\u03D4\u03D8\u03DA\u03DC\u03DE\u03E0\u03E2\u03E4\u03E6\u03E8\u03EA\u03EC\u03EE\u03F4\u03F7\u03F9\u03FA\u03FD-\u042F\u0460\u0462\u0464\u0466\u0468\u046A\u046C\u046E\u0470\u0472\u0474\u0476\u0478\u047A\u047C\u047E\u0480\u048A\u048C\u048E\u0490\u0492\u0494\u0496\u0498\u049A\u049C\u049E\u04A0\u04A2\u04A4\u04A6\u04A8\u04AA\u04AC\u04AE\u04B0\u04B2\u04B4\u04B6\u04B8\u04BA\u04BC\u04BE\u04C0\u04C1\u04C3\u04C5\u04C7\u04C9\u04CB\u04CD\u04D0\u04D2\u04D4\u04D6\u04D8\u04DA\u04DC\u04DE\u04E0\u04E2\u04E4\u04E6\u04E8\u04EA\u04EC\u04EE\u04F0\u04F2\u04F4\u04F6\u04F8\u04FA\u04FC\u04FE\u0500\u0502\u0504\u0506\u0508\u050A\u050C\u050E\u0510\u0512\u0514\u0516\u0518\u051A\u051C\u051E\u0520\u0522\u0524\u0526\u0528\u052A\u052C\u052E\u0531-\u0556\u10A0-\u10C5\u10C7\u10CD\u13A0-\u13F5\u1C90-\u1CBA\u1CBD-\u1CBF\u1E00\u1E02\u1E04\u1E06\u1E08\u1E0A\u1E0C\u1E0E\u1E10\u1E12\u1E14\u1E16\u1E18\u1E1A\u1E1C\u1E1E\u1E20\u1E22\u1E24\u1E26\u1E28\u1E2A\u1E2C\u1E2E\u1E30\u1E32\u1E34\u1E36\u1E38\u1E3A\u1E3C\u1E3E\u1E40\u1E42\u1E44\u1E46\u1E48\u1E4A\u1E4C\u1E4E\u1E50\u1E52\u1E54\u1E56\u1E58\u1E5A\u1E5C\u1E5E\u1E60\u1E62\u1E64\u1E66\u1E68\u1E6A\u1E6C\u1E6E\u1E70\u1E72\u1E74\u1E76\u1E78\u1E7A\u1E7C\u1E7E\u1E80\u1E82\u1E84\u1E86\u1E88\u1E8A\u1E8C\u1E8E\u1E90\u1E92\u1E94\u1E9E\u1EA0\u1EA2\u1EA4\u1EA6\u1EA8\u1EAA\u1EAC\u1EAE\u1EB0\u1EB2\u1EB4\u1EB6\u1EB8\u1EBA\u1EBC\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1EC8\u1ECA\u1ECC\u1ECE\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EDA\u1EDC\u1EDE\u1EE0\u1EE2\u1EE4\u1EE6\u1EE8\u1EEA\u1EEC\u1EEE\u1EF0\u1EF2\u1EF4\u1EF6\u1EF8\u1EFA\u1EFC\u1EFE\u1F08-\u1F0F\u1F18-\u1F1D\u1F28-\u1F2F\u1F38-\u1F3F\u1F48-\u1F4D\u1F59\u1F5B\u1F5D\u1F5F\u1F68-\u1F6F\u1FB8-\u1FBB\u1FC8-\u1FCB\u1FD8-\u1FDB\u1FE8-\u1FEC\u1FF8-\u1FFB\u2102\u2107\u210B-\u210D\u2110-\u2112\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u2130-\u2133\u213E\u213F\u2145\u2160-\u216F\u2183\u24B6-\u24CF\u2C00-\u2C2E\u2C60\u2C62-\u2C64\u2C67\u2C69\u2C6B\u2C6D-\u2C70\u2C72\u2C75\u2C7E-\u2C80\u2C82\u2C84\u2C86\u2C88\u2C8A\u2C8C\u2C8E\u2C90\u2C92\u2C94\u2C96\u2C98\u2C9A\u2C9C\u2C9E\u2CA0\u2CA2\u2CA4\u2CA6\u2CA8\u2CAA\u2CAC\u2CAE\u2CB0\u2CB2\u2CB4\u2CB6\u2CB8\u2CBA\u2CBC\u2CBE\u2CC0\u2CC2\u2CC4\u2CC6\u2CC8\u2CCA\u2CCC\u2CCE\u2CD0\u2CD2\u2CD4\u2CD6\u2CD8\u2CDA\u2CDC\u2CDE\u2CE0\u2CE2\u2CEB\u2CED\u2CF2\uA640\uA642\uA644\uA646\uA648\uA64A\uA64C\uA64E\uA650\uA652\uA654\uA656\uA658\uA65A\uA65C\uA65E\uA660\uA662\uA664\uA666\uA668\uA66A\uA66C\uA680\uA682\uA684\uA686\uA688\uA68A\uA68C\uA68E\uA690\uA692\uA694\uA696\uA698\uA69A\uA722\uA724\uA726\uA728\uA72A\uA72C\uA72E\uA732\uA734\uA736\uA738\uA73A\uA73C\uA73E\uA740\uA742\uA744\uA746\uA748\uA74A\uA74C\uA74E\uA750\uA752\uA754\uA756\uA758\uA75A\uA75C\uA75E\uA760\uA762\uA764\uA766\uA768\uA76A\uA76C\uA76E\uA779\uA77B\uA77D\uA77E\uA780\uA782\uA784\uA786\uA78B\uA78D\uA790\uA792\uA796\uA798\uA79A\uA79C\uA79E\uA7A0\uA7A2\uA7A4\uA7A6\uA7A8\uA7AA-\uA7AE\uA7B0-\uA7B4\uA7B6\uA7B8\uA7BA\uA7BC\uA7BE\uA7C2\uA7C4-\uA7C7\uA7C9\uA7F5\uFF21-\uFF3A', ++ 'astral': '\uD801[\uDC00-\uDC27\uDCB0-\uDCD3]|\uD803[\uDC80-\uDCB2]|\uD806[\uDCA0-\uDCBF]|\uD81B[\uDE40-\uDE5F]|\uD835[\uDC00-\uDC19\uDC34-\uDC4D\uDC68-\uDC81\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB5\uDCD0-\uDCE9\uDD04\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD38\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD6C-\uDD85\uDDA0-\uDDB9\uDDD4-\uDDED\uDE08-\uDE21\uDE3C-\uDE55\uDE70-\uDE89\uDEA8-\uDEC0\uDEE2-\uDEFA\uDF1C-\uDF34\uDF56-\uDF6E\uDF90-\uDFA8\uDFCA]|\uD83A[\uDD00-\uDD21]|\uD83C[\uDD30-\uDD49\uDD50-\uDD69\uDD70-\uDD89]' ++ }, ++ { ++ 'name': 'White_Space', ++ 'bmp': '\t-\r \x85\xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000' ++ } ++ ]; ++ ++ /*! ++ * XRegExp Unicode Properties 5.0.2 ++ * ++ * Steven Levithan (c) 2012-present MIT License ++ * Unicode data by Mathias Bynens ++ */ ++ ++ var unicodeProperties = (XRegExp) => { ++ ++ /** ++ * Adds properties to meet the UTS #18 Level 1 RL1.2 requirements for Unicode regex support. See ++ * . Following are definitions of these properties from ++ * UAX #44 : ++ * ++ * - Alphabetic ++ * Characters with the Alphabetic property. Generated from: Lowercase + Uppercase + Lt + Lm + ++ * Lo + Nl + Other_Alphabetic. ++ * ++ * - Default_Ignorable_Code_Point ++ * For programmatic determination of default ignorable code points. New characters that should ++ * be ignored in rendering (unless explicitly supported) will be assigned in these ranges, ++ * permitting programs to correctly handle the default rendering of such characters when not ++ * otherwise supported. ++ * ++ * - Lowercase ++ * Characters with the Lowercase property. Generated from: Ll + Other_Lowercase. ++ * ++ * - Noncharacter_Code_Point ++ * Code points permanently reserved for internal use. ++ * ++ * - Uppercase ++ * Characters with the Uppercase property. Generated from: Lu + Other_Uppercase. ++ * ++ * - White_Space ++ * Spaces, separator characters and other control characters which should be treated by ++ * programming languages as "white space" for the purpose of parsing elements. ++ * ++ * The properties ASCII, Any, and Assigned are also included but are not defined in UAX #44. UTS ++ * #18 RL1.2 additionally requires support for Unicode scripts and general categories. These are ++ * included in XRegExp's Unicode Categories and Unicode Scripts addons. ++ * ++ * Token names are case insensitive, and any spaces, hyphens, and underscores are ignored. ++ * ++ * Uses Unicode 13.0.0. ++ * ++ * @requires XRegExp, Unicode Base ++ */ ++ ++ if (!XRegExp.addUnicodeData) { ++ throw new ReferenceError('Unicode Base must be loaded before Unicode Properties'); ++ } ++ ++ const unicodeData = properties; ++ ++ // Add non-generated data ++ unicodeData.push({ ++ name: 'Assigned', ++ // Since this is defined as the inverse of Unicode category Cn (Unassigned), the Unicode ++ // Categories addon is required to use this property ++ inverseOf: 'Cn' ++ }); ++ ++ XRegExp.addUnicodeData(unicodeData); ++ }; ++ ++ var scripts = [ ++ { ++ 'name': 'Adlam', ++ 'astral': '\uD83A[\uDD00-\uDD4B\uDD50-\uDD59\uDD5E\uDD5F]' ++ }, ++ { ++ 'name': 'Ahom', ++ 'astral': '\uD805[\uDF00-\uDF1A\uDF1D-\uDF2B\uDF30-\uDF3F]' ++ }, ++ { ++ 'name': 'Anatolian_Hieroglyphs', ++ 'astral': '\uD811[\uDC00-\uDE46]' ++ }, ++ { ++ 'name': 'Arabic', ++ 'bmp': '\u0600-\u0604\u0606-\u060B\u060D-\u061A\u061C\u061E\u0620-\u063F\u0641-\u064A\u0656-\u066F\u0671-\u06DC\u06DE-\u06FF\u0750-\u077F\u08A0-\u08B4\u08B6-\u08C7\u08D3-\u08E1\u08E3-\u08FF\uFB50-\uFBC1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFD\uFE70-\uFE74\uFE76-\uFEFC', ++ 'astral': '\uD803[\uDE60-\uDE7E]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB\uDEF0\uDEF1]' ++ }, ++ { ++ 'name': 'Armenian', ++ 'bmp': '\u0531-\u0556\u0559-\u058A\u058D-\u058F\uFB13-\uFB17' ++ }, ++ { ++ 'name': 'Avestan', ++ 'astral': '\uD802[\uDF00-\uDF35\uDF39-\uDF3F]' ++ }, ++ { ++ 'name': 'Balinese', ++ 'bmp': '\u1B00-\u1B4B\u1B50-\u1B7C' ++ }, ++ { ++ 'name': 'Bamum', ++ 'bmp': '\uA6A0-\uA6F7', ++ 'astral': '\uD81A[\uDC00-\uDE38]' ++ }, ++ { ++ 'name': 'Bassa_Vah', ++ 'astral': '\uD81A[\uDED0-\uDEED\uDEF0-\uDEF5]' ++ }, ++ { ++ 'name': 'Batak', ++ 'bmp': '\u1BC0-\u1BF3\u1BFC-\u1BFF' ++ }, ++ { ++ 'name': 'Bengali', ++ 'bmp': '\u0980-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09FE' ++ }, ++ { ++ 'name': 'Bhaiksuki', ++ 'astral': '\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC45\uDC50-\uDC6C]' ++ }, ++ { ++ 'name': 'Bopomofo', ++ 'bmp': '\u02EA\u02EB\u3105-\u312F\u31A0-\u31BF' ++ }, ++ { ++ 'name': 'Brahmi', ++ 'astral': '\uD804[\uDC00-\uDC4D\uDC52-\uDC6F\uDC7F]' ++ }, ++ { ++ 'name': 'Braille', ++ 'bmp': '\u2800-\u28FF' ++ }, ++ { ++ 'name': 'Buginese', ++ 'bmp': '\u1A00-\u1A1B\u1A1E\u1A1F' ++ }, ++ { ++ 'name': 'Buhid', ++ 'bmp': '\u1740-\u1753' ++ }, ++ { ++ 'name': 'Canadian_Aboriginal', ++ 'bmp': '\u1400-\u167F\u18B0-\u18F5' ++ }, ++ { ++ 'name': 'Carian', ++ 'astral': '\uD800[\uDEA0-\uDED0]' ++ }, ++ { ++ 'name': 'Caucasian_Albanian', ++ 'astral': '\uD801[\uDD30-\uDD63\uDD6F]' ++ }, ++ { ++ 'name': 'Chakma', ++ 'astral': '\uD804[\uDD00-\uDD34\uDD36-\uDD47]' ++ }, ++ { ++ 'name': 'Cham', ++ 'bmp': '\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA5C-\uAA5F' ++ }, ++ { ++ 'name': 'Cherokee', ++ 'bmp': '\u13A0-\u13F5\u13F8-\u13FD\uAB70-\uABBF' ++ }, ++ { ++ 'name': 'Chorasmian', ++ 'astral': '\uD803[\uDFB0-\uDFCB]' ++ }, ++ { ++ 'name': 'Common', ++ 'bmp': '\0-@\\[-`\\{-\xA9\xAB-\xB9\xBB-\xBF\xD7\xF7\u02B9-\u02DF\u02E5-\u02E9\u02EC-\u02FF\u0374\u037E\u0385\u0387\u0605\u060C\u061B\u061F\u0640\u06DD\u08E2\u0964\u0965\u0E3F\u0FD5-\u0FD8\u10FB\u16EB-\u16ED\u1735\u1736\u1802\u1803\u1805\u1CD3\u1CE1\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5-\u1CF7\u1CFA\u2000-\u200B\u200E-\u2064\u2066-\u2070\u2074-\u207E\u2080-\u208E\u20A0-\u20BF\u2100-\u2125\u2127-\u2129\u212C-\u2131\u2133-\u214D\u214F-\u215F\u2189-\u218B\u2190-\u2426\u2440-\u244A\u2460-\u27FF\u2900-\u2B73\u2B76-\u2B95\u2B97-\u2BFF\u2E00-\u2E52\u2FF0-\u2FFB\u3000-\u3004\u3006\u3008-\u3020\u3030-\u3037\u303C-\u303F\u309B\u309C\u30A0\u30FB\u30FC\u3190-\u319F\u31C0-\u31E3\u3220-\u325F\u327F-\u32CF\u32FF\u3358-\u33FF\u4DC0-\u4DFF\uA700-\uA721\uA788-\uA78A\uA830-\uA839\uA92E\uA9CF\uAB5B\uAB6A\uAB6B\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFEFF\uFF01-\uFF20\uFF3B-\uFF40\uFF5B-\uFF65\uFF70\uFF9E\uFF9F\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFF9-\uFFFD', ++ 'astral': '\uD800[\uDD00-\uDD02\uDD07-\uDD33\uDD37-\uDD3F\uDD90-\uDD9C\uDDD0-\uDDFC\uDEE1-\uDEFB]|\uD81B[\uDFE2\uDFE3]|\uD82F[\uDCA0-\uDCA3]|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD66\uDD6A-\uDD7A\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDE8\uDEE0-\uDEF3\uDF00-\uDF56\uDF60-\uDF78]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDFCB\uDFCE-\uDFFF]|\uD83B[\uDC71-\uDCB4\uDD01-\uDD3D]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD00-\uDDAD\uDDE6-\uDDFF\uDE01\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFF]|\uD83D[\uDC00-\uDED7\uDEE0-\uDEEC\uDEF0-\uDEFC\uDF00-\uDF73\uDF80-\uDFD8\uDFE0-\uDFEB]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0\uDCB1\uDD00-\uDD78\uDD7A-\uDDCB\uDDCD-\uDE53\uDE60-\uDE6D\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6\uDF00-\uDF92\uDF94-\uDFCA\uDFF0-\uDFF9]|\uDB40[\uDC01\uDC20-\uDC7F]' ++ }, ++ { ++ 'name': 'Coptic', ++ 'bmp': '\u03E2-\u03EF\u2C80-\u2CF3\u2CF9-\u2CFF' ++ }, ++ { ++ 'name': 'Cuneiform', ++ 'astral': '\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC70-\uDC74\uDC80-\uDD43]' ++ }, ++ { ++ 'name': 'Cypriot', ++ 'astral': '\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F]' ++ }, ++ { ++ 'name': 'Cyrillic', ++ 'bmp': '\u0400-\u0484\u0487-\u052F\u1C80-\u1C88\u1D2B\u1D78\u2DE0-\u2DFF\uA640-\uA69F\uFE2E\uFE2F' ++ }, ++ { ++ 'name': 'Deseret', ++ 'astral': '\uD801[\uDC00-\uDC4F]' ++ }, ++ { ++ 'name': 'Devanagari', ++ 'bmp': '\u0900-\u0950\u0955-\u0963\u0966-\u097F\uA8E0-\uA8FF' ++ }, ++ { ++ 'name': 'Dives_Akuru', ++ 'astral': '\uD806[\uDD00-\uDD06\uDD09\uDD0C-\uDD13\uDD15\uDD16\uDD18-\uDD35\uDD37\uDD38\uDD3B-\uDD46\uDD50-\uDD59]' ++ }, ++ { ++ 'name': 'Dogra', ++ 'astral': '\uD806[\uDC00-\uDC3B]' ++ }, ++ { ++ 'name': 'Duployan', ++ 'astral': '\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9C-\uDC9F]' ++ }, ++ { ++ 'name': 'Egyptian_Hieroglyphs', ++ 'astral': '\uD80C[\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E\uDC30-\uDC38]' ++ }, ++ { ++ 'name': 'Elbasan', ++ 'astral': '\uD801[\uDD00-\uDD27]' ++ }, ++ { ++ 'name': 'Elymaic', ++ 'astral': '\uD803[\uDFE0-\uDFF6]' ++ }, ++ { ++ 'name': 'Ethiopic', ++ 'bmp': '\u1200-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u137C\u1380-\u1399\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E' ++ }, ++ { ++ 'name': 'Georgian', ++ 'bmp': '\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u10FF\u1C90-\u1CBA\u1CBD-\u1CBF\u2D00-\u2D25\u2D27\u2D2D' ++ }, ++ { ++ 'name': 'Glagolitic', ++ 'bmp': '\u2C00-\u2C2E\u2C30-\u2C5E', ++ 'astral': '\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]' ++ }, ++ { ++ 'name': 'Gothic', ++ 'astral': '\uD800[\uDF30-\uDF4A]' ++ }, ++ { ++ 'name': 'Grantha', ++ 'astral': '\uD804[\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]' ++ }, ++ { ++ 'name': 'Greek', ++ 'bmp': '\u0370-\u0373\u0375-\u0377\u037A-\u037D\u037F\u0384\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03E1\u03F0-\u03FF\u1D26-\u1D2A\u1D5D-\u1D61\u1D66-\u1D6A\u1DBF\u1F00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FC4\u1FC6-\u1FD3\u1FD6-\u1FDB\u1FDD-\u1FEF\u1FF2-\u1FF4\u1FF6-\u1FFE\u2126\uAB65', ++ 'astral': '\uD800[\uDD40-\uDD8E\uDDA0]|\uD834[\uDE00-\uDE45]' ++ }, ++ { ++ 'name': 'Gujarati', ++ 'bmp': '\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AF1\u0AF9-\u0AFF' ++ }, ++ { ++ 'name': 'Gunjala_Gondi', ++ 'astral': '\uD807[\uDD60-\uDD65\uDD67\uDD68\uDD6A-\uDD8E\uDD90\uDD91\uDD93-\uDD98\uDDA0-\uDDA9]' ++ }, ++ { ++ 'name': 'Gurmukhi', ++ 'bmp': '\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A76' ++ }, ++ { ++ 'name': 'Han', ++ 'bmp': '\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u3005\u3007\u3021-\u3029\u3038-\u303B\u3400-\u4DBF\u4E00-\u9FFC\uF900-\uFA6D\uFA70-\uFAD9', ++ 'astral': '\uD81B[\uDFF0\uDFF1]|[\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879\uD880-\uD883][\uDC00-\uDFFF]|\uD869[\uDC00-\uDEDD\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uD884[\uDC00-\uDF4A]' ++ }, ++ { ++ 'name': 'Hangul', ++ 'bmp': '\u1100-\u11FF\u302E\u302F\u3131-\u318E\u3200-\u321E\u3260-\u327E\uA960-\uA97C\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uFFA0-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC' ++ }, ++ { ++ 'name': 'Hanifi_Rohingya', ++ 'astral': '\uD803[\uDD00-\uDD27\uDD30-\uDD39]' ++ }, ++ { ++ 'name': 'Hanunoo', ++ 'bmp': '\u1720-\u1734' ++ }, ++ { ++ 'name': 'Hatran', ++ 'astral': '\uD802[\uDCE0-\uDCF2\uDCF4\uDCF5\uDCFB-\uDCFF]' ++ }, ++ { ++ 'name': 'Hebrew', ++ 'bmp': '\u0591-\u05C7\u05D0-\u05EA\u05EF-\u05F4\uFB1D-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFB4F' ++ }, ++ { ++ 'name': 'Hiragana', ++ 'bmp': '\u3041-\u3096\u309D-\u309F', ++ 'astral': '\uD82C[\uDC01-\uDD1E\uDD50-\uDD52]|\uD83C\uDE00' ++ }, ++ { ++ 'name': 'Imperial_Aramaic', ++ 'astral': '\uD802[\uDC40-\uDC55\uDC57-\uDC5F]' ++ }, ++ { ++ 'name': 'Inherited', ++ 'bmp': '\u0300-\u036F\u0485\u0486\u064B-\u0655\u0670\u0951-\u0954\u1AB0-\u1AC0\u1CD0-\u1CD2\u1CD4-\u1CE0\u1CE2-\u1CE8\u1CED\u1CF4\u1CF8\u1CF9\u1DC0-\u1DF9\u1DFB-\u1DFF\u200C\u200D\u20D0-\u20F0\u302A-\u302D\u3099\u309A\uFE00-\uFE0F\uFE20-\uFE2D', ++ 'astral': '\uD800[\uDDFD\uDEE0]|\uD804\uDF3B|\uD834[\uDD67-\uDD69\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD]|\uDB40[\uDD00-\uDDEF]' ++ }, ++ { ++ 'name': 'Inscriptional_Pahlavi', ++ 'astral': '\uD802[\uDF60-\uDF72\uDF78-\uDF7F]' ++ }, ++ { ++ 'name': 'Inscriptional_Parthian', ++ 'astral': '\uD802[\uDF40-\uDF55\uDF58-\uDF5F]' ++ }, ++ { ++ 'name': 'Javanese', ++ 'bmp': '\uA980-\uA9CD\uA9D0-\uA9D9\uA9DE\uA9DF' ++ }, ++ { ++ 'name': 'Kaithi', ++ 'astral': '\uD804[\uDC80-\uDCC1\uDCCD]' ++ }, ++ { ++ 'name': 'Kannada', ++ 'bmp': '\u0C80-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2' ++ }, ++ { ++ 'name': 'Katakana', ++ 'bmp': '\u30A1-\u30FA\u30FD-\u30FF\u31F0-\u31FF\u32D0-\u32FE\u3300-\u3357\uFF66-\uFF6F\uFF71-\uFF9D', ++ 'astral': '\uD82C[\uDC00\uDD64-\uDD67]' ++ }, ++ { ++ 'name': 'Kayah_Li', ++ 'bmp': '\uA900-\uA92D\uA92F' ++ }, ++ { ++ 'name': 'Kharoshthi', ++ 'astral': '\uD802[\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE35\uDE38-\uDE3A\uDE3F-\uDE48\uDE50-\uDE58]' ++ }, ++ { ++ 'name': 'Khitan_Small_Script', ++ 'astral': '\uD81B\uDFE4|\uD822[\uDF00-\uDFFF]|\uD823[\uDC00-\uDCD5]' ++ }, ++ { ++ 'name': 'Khmer', ++ 'bmp': '\u1780-\u17DD\u17E0-\u17E9\u17F0-\u17F9\u19E0-\u19FF' ++ }, ++ { ++ 'name': 'Khojki', ++ 'astral': '\uD804[\uDE00-\uDE11\uDE13-\uDE3E]' ++ }, ++ { ++ 'name': 'Khudawadi', ++ 'astral': '\uD804[\uDEB0-\uDEEA\uDEF0-\uDEF9]' ++ }, ++ { ++ 'name': 'Lao', ++ 'bmp': '\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF' ++ }, ++ { ++ 'name': 'Latin', ++ 'bmp': 'A-Za-z\xAA\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02B8\u02E0-\u02E4\u1D00-\u1D25\u1D2C-\u1D5C\u1D62-\u1D65\u1D6B-\u1D77\u1D79-\u1DBE\u1E00-\u1EFF\u2071\u207F\u2090-\u209C\u212A\u212B\u2132\u214E\u2160-\u2188\u2C60-\u2C7F\uA722-\uA787\uA78B-\uA7BF\uA7C2-\uA7CA\uA7F5-\uA7FF\uAB30-\uAB5A\uAB5C-\uAB64\uAB66-\uAB69\uFB00-\uFB06\uFF21-\uFF3A\uFF41-\uFF5A' ++ }, ++ { ++ 'name': 'Lepcha', ++ 'bmp': '\u1C00-\u1C37\u1C3B-\u1C49\u1C4D-\u1C4F' ++ }, ++ { ++ 'name': 'Limbu', ++ 'bmp': '\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1940\u1944-\u194F' ++ }, ++ { ++ 'name': 'Linear_A', ++ 'astral': '\uD801[\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]' ++ }, ++ { ++ 'name': 'Linear_B', ++ 'astral': '\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA]' ++ }, ++ { ++ 'name': 'Lisu', ++ 'bmp': '\uA4D0-\uA4FF', ++ 'astral': '\uD807\uDFB0' ++ }, ++ { ++ 'name': 'Lycian', ++ 'astral': '\uD800[\uDE80-\uDE9C]' ++ }, ++ { ++ 'name': 'Lydian', ++ 'astral': '\uD802[\uDD20-\uDD39\uDD3F]' ++ }, ++ { ++ 'name': 'Mahajani', ++ 'astral': '\uD804[\uDD50-\uDD76]' ++ }, ++ { ++ 'name': 'Makasar', ++ 'astral': '\uD807[\uDEE0-\uDEF8]' ++ }, ++ { ++ 'name': 'Malayalam', ++ 'bmp': '\u0D00-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4F\u0D54-\u0D63\u0D66-\u0D7F' ++ }, ++ { ++ 'name': 'Mandaic', ++ 'bmp': '\u0840-\u085B\u085E' ++ }, ++ { ++ 'name': 'Manichaean', ++ 'astral': '\uD802[\uDEC0-\uDEE6\uDEEB-\uDEF6]' ++ }, ++ { ++ 'name': 'Marchen', ++ 'astral': '\uD807[\uDC70-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6]' ++ }, ++ { ++ 'name': 'Masaram_Gondi', ++ 'astral': '\uD807[\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]' ++ }, ++ { ++ 'name': 'Medefaidrin', ++ 'astral': '\uD81B[\uDE40-\uDE9A]' ++ }, ++ { ++ 'name': 'Meetei_Mayek', ++ 'bmp': '\uAAE0-\uAAF6\uABC0-\uABED\uABF0-\uABF9' ++ }, ++ { ++ 'name': 'Mende_Kikakui', ++ 'astral': '\uD83A[\uDC00-\uDCC4\uDCC7-\uDCD6]' ++ }, ++ { ++ 'name': 'Meroitic_Cursive', ++ 'astral': '\uD802[\uDDA0-\uDDB7\uDDBC-\uDDCF\uDDD2-\uDDFF]' ++ }, ++ { ++ 'name': 'Meroitic_Hieroglyphs', ++ 'astral': '\uD802[\uDD80-\uDD9F]' ++ }, ++ { ++ 'name': 'Miao', ++ 'astral': '\uD81B[\uDF00-\uDF4A\uDF4F-\uDF87\uDF8F-\uDF9F]' ++ }, ++ { ++ 'name': 'Modi', ++ 'astral': '\uD805[\uDE00-\uDE44\uDE50-\uDE59]' ++ }, ++ { ++ 'name': 'Mongolian', ++ 'bmp': '\u1800\u1801\u1804\u1806-\u180E\u1810-\u1819\u1820-\u1878\u1880-\u18AA', ++ 'astral': '\uD805[\uDE60-\uDE6C]' ++ }, ++ { ++ 'name': 'Mro', ++ 'astral': '\uD81A[\uDE40-\uDE5E\uDE60-\uDE69\uDE6E\uDE6F]' ++ }, ++ { ++ 'name': 'Multani', ++ 'astral': '\uD804[\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA9]' ++ }, ++ { ++ 'name': 'Myanmar', ++ 'bmp': '\u1000-\u109F\uA9E0-\uA9FE\uAA60-\uAA7F' ++ }, ++ { ++ 'name': 'Nabataean', ++ 'astral': '\uD802[\uDC80-\uDC9E\uDCA7-\uDCAF]' ++ }, ++ { ++ 'name': 'Nandinagari', ++ 'astral': '\uD806[\uDDA0-\uDDA7\uDDAA-\uDDD7\uDDDA-\uDDE4]' ++ }, ++ { ++ 'name': 'New_Tai_Lue', ++ 'bmp': '\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19DA\u19DE\u19DF' ++ }, ++ { ++ 'name': 'Newa', ++ 'astral': '\uD805[\uDC00-\uDC5B\uDC5D-\uDC61]' ++ }, ++ { ++ 'name': 'Nko', ++ 'bmp': '\u07C0-\u07FA\u07FD-\u07FF' ++ }, ++ { ++ 'name': 'Nushu', ++ 'astral': '\uD81B\uDFE1|\uD82C[\uDD70-\uDEFB]' ++ }, ++ { ++ 'name': 'Nyiakeng_Puachue_Hmong', ++ 'astral': '\uD838[\uDD00-\uDD2C\uDD30-\uDD3D\uDD40-\uDD49\uDD4E\uDD4F]' ++ }, ++ { ++ 'name': 'Ogham', ++ 'bmp': '\u1680-\u169C' ++ }, ++ { ++ 'name': 'Ol_Chiki', ++ 'bmp': '\u1C50-\u1C7F' ++ }, ++ { ++ 'name': 'Old_Hungarian', ++ 'astral': '\uD803[\uDC80-\uDCB2\uDCC0-\uDCF2\uDCFA-\uDCFF]' ++ }, ++ { ++ 'name': 'Old_Italic', ++ 'astral': '\uD800[\uDF00-\uDF23\uDF2D-\uDF2F]' ++ }, ++ { ++ 'name': 'Old_North_Arabian', ++ 'astral': '\uD802[\uDE80-\uDE9F]' ++ }, ++ { ++ 'name': 'Old_Permic', ++ 'astral': '\uD800[\uDF50-\uDF7A]' ++ }, ++ { ++ 'name': 'Old_Persian', ++ 'astral': '\uD800[\uDFA0-\uDFC3\uDFC8-\uDFD5]' ++ }, ++ { ++ 'name': 'Old_Sogdian', ++ 'astral': '\uD803[\uDF00-\uDF27]' ++ }, ++ { ++ 'name': 'Old_South_Arabian', ++ 'astral': '\uD802[\uDE60-\uDE7F]' ++ }, ++ { ++ 'name': 'Old_Turkic', ++ 'astral': '\uD803[\uDC00-\uDC48]' ++ }, ++ { ++ 'name': 'Oriya', ++ 'bmp': '\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B77' ++ }, ++ { ++ 'name': 'Osage', ++ 'astral': '\uD801[\uDCB0-\uDCD3\uDCD8-\uDCFB]' ++ }, ++ { ++ 'name': 'Osmanya', ++ 'astral': '\uD801[\uDC80-\uDC9D\uDCA0-\uDCA9]' ++ }, ++ { ++ 'name': 'Pahawh_Hmong', ++ 'astral': '\uD81A[\uDF00-\uDF45\uDF50-\uDF59\uDF5B-\uDF61\uDF63-\uDF77\uDF7D-\uDF8F]' ++ }, ++ { ++ 'name': 'Palmyrene', ++ 'astral': '\uD802[\uDC60-\uDC7F]' ++ }, ++ { ++ 'name': 'Pau_Cin_Hau', ++ 'astral': '\uD806[\uDEC0-\uDEF8]' ++ }, ++ { ++ 'name': 'Phags_Pa', ++ 'bmp': '\uA840-\uA877' ++ }, ++ { ++ 'name': 'Phoenician', ++ 'astral': '\uD802[\uDD00-\uDD1B\uDD1F]' ++ }, ++ { ++ 'name': 'Psalter_Pahlavi', ++ 'astral': '\uD802[\uDF80-\uDF91\uDF99-\uDF9C\uDFA9-\uDFAF]' ++ }, ++ { ++ 'name': 'Rejang', ++ 'bmp': '\uA930-\uA953\uA95F' ++ }, ++ { ++ 'name': 'Runic', ++ 'bmp': '\u16A0-\u16EA\u16EE-\u16F8' ++ }, ++ { ++ 'name': 'Samaritan', ++ 'bmp': '\u0800-\u082D\u0830-\u083E' ++ }, ++ { ++ 'name': 'Saurashtra', ++ 'bmp': '\uA880-\uA8C5\uA8CE-\uA8D9' ++ }, ++ { ++ 'name': 'Sharada', ++ 'astral': '\uD804[\uDD80-\uDDDF]' ++ }, ++ { ++ 'name': 'Shavian', ++ 'astral': '\uD801[\uDC50-\uDC7F]' ++ }, ++ { ++ 'name': 'Siddham', ++ 'astral': '\uD805[\uDD80-\uDDB5\uDDB8-\uDDDD]' ++ }, ++ { ++ 'name': 'SignWriting', ++ 'astral': '\uD836[\uDC00-\uDE8B\uDE9B-\uDE9F\uDEA1-\uDEAF]' ++ }, ++ { ++ 'name': 'Sinhala', ++ 'bmp': '\u0D81-\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2-\u0DF4', ++ 'astral': '\uD804[\uDDE1-\uDDF4]' ++ }, ++ { ++ 'name': 'Sogdian', ++ 'astral': '\uD803[\uDF30-\uDF59]' ++ }, ++ { ++ 'name': 'Sora_Sompeng', ++ 'astral': '\uD804[\uDCD0-\uDCE8\uDCF0-\uDCF9]' ++ }, ++ { ++ 'name': 'Soyombo', ++ 'astral': '\uD806[\uDE50-\uDEA2]' ++ }, ++ { ++ 'name': 'Sundanese', ++ 'bmp': '\u1B80-\u1BBF\u1CC0-\u1CC7' ++ }, ++ { ++ 'name': 'Syloti_Nagri', ++ 'bmp': '\uA800-\uA82C' ++ }, ++ { ++ 'name': 'Syriac', ++ 'bmp': '\u0700-\u070D\u070F-\u074A\u074D-\u074F\u0860-\u086A' ++ }, ++ { ++ 'name': 'Tagalog', ++ 'bmp': '\u1700-\u170C\u170E-\u1714' ++ }, ++ { ++ 'name': 'Tagbanwa', ++ 'bmp': '\u1760-\u176C\u176E-\u1770\u1772\u1773' ++ }, ++ { ++ 'name': 'Tai_Le', ++ 'bmp': '\u1950-\u196D\u1970-\u1974' ++ }, ++ { ++ 'name': 'Tai_Tham', ++ 'bmp': '\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA0-\u1AAD' ++ }, ++ { ++ 'name': 'Tai_Viet', ++ 'bmp': '\uAA80-\uAAC2\uAADB-\uAADF' ++ }, ++ { ++ 'name': 'Takri', ++ 'astral': '\uD805[\uDE80-\uDEB8\uDEC0-\uDEC9]' ++ }, ++ { ++ 'name': 'Tamil', ++ 'bmp': '\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BFA', ++ 'astral': '\uD807[\uDFC0-\uDFF1\uDFFF]' ++ }, ++ { ++ 'name': 'Tangut', ++ 'astral': '\uD81B\uDFE0|[\uD81C-\uD820][\uDC00-\uDFFF]|\uD821[\uDC00-\uDFF7]|\uD822[\uDC00-\uDEFF]|\uD823[\uDD00-\uDD08]' ++ }, ++ { ++ 'name': 'Telugu', ++ 'bmp': '\u0C00-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C77-\u0C7F' ++ }, ++ { ++ 'name': 'Thaana', ++ 'bmp': '\u0780-\u07B1' ++ }, ++ { ++ 'name': 'Thai', ++ 'bmp': '\u0E01-\u0E3A\u0E40-\u0E5B' ++ }, ++ { ++ 'name': 'Tibetan', ++ 'bmp': '\u0F00-\u0F47\u0F49-\u0F6C\u0F71-\u0F97\u0F99-\u0FBC\u0FBE-\u0FCC\u0FCE-\u0FD4\u0FD9\u0FDA' ++ }, ++ { ++ 'name': 'Tifinagh', ++ 'bmp': '\u2D30-\u2D67\u2D6F\u2D70\u2D7F' ++ }, ++ { ++ 'name': 'Tirhuta', ++ 'astral': '\uD805[\uDC80-\uDCC7\uDCD0-\uDCD9]' ++ }, ++ { ++ 'name': 'Ugaritic', ++ 'astral': '\uD800[\uDF80-\uDF9D\uDF9F]' ++ }, ++ { ++ 'name': 'Vai', ++ 'bmp': '\uA500-\uA62B' ++ }, ++ { ++ 'name': 'Wancho', ++ 'astral': '\uD838[\uDEC0-\uDEF9\uDEFF]' ++ }, ++ { ++ 'name': 'Warang_Citi', ++ 'astral': '\uD806[\uDCA0-\uDCF2\uDCFF]' ++ }, ++ { ++ 'name': 'Yezidi', ++ 'astral': '\uD803[\uDE80-\uDEA9\uDEAB-\uDEAD\uDEB0\uDEB1]' ++ }, ++ { ++ 'name': 'Yi', ++ 'bmp': '\uA000-\uA48C\uA490-\uA4C6' ++ }, ++ { ++ 'name': 'Zanabazar_Square', ++ 'astral': '\uD806[\uDE00-\uDE47]' ++ } ++ ]; ++ ++ /*! ++ * XRegExp Unicode Scripts 5.0.2 ++ * ++ * Steven Levithan (c) 2010-present MIT License ++ * Unicode data by Mathias Bynens ++ */ ++ ++ var unicodeScripts = (XRegExp) => { ++ ++ /** ++ * Adds support for all Unicode scripts. E.g., `\p{Latin}`. Token names are case insensitive, ++ * and any spaces, hyphens, and underscores are ignored. ++ * ++ * Uses Unicode 13.0.0. ++ * ++ * @requires XRegExp, Unicode Base ++ */ ++ ++ if (!XRegExp.addUnicodeData) { ++ throw new ReferenceError('Unicode Base must be loaded before Unicode Scripts'); ++ } ++ ++ XRegExp.addUnicodeData(scripts, 'Script'); ++ }; ++ ++ build(XRegExp); ++ matchRecursive(XRegExp); ++ unicodeBase(XRegExp); ++ unicodeCategories(XRegExp); ++ unicodeProperties(XRegExp); ++ unicodeScripts(XRegExp); ++ ++ /*! http://mths.be/repeat v0.2.0 by @mathias */ ++ if (!String.prototype.repeat) { ++ (function() { ++ var defineProperty = (function() { ++ // IE 8 only supports `Object.defineProperty` on DOM elements ++ try { ++ var object = {}; ++ var $defineProperty = Object.defineProperty; ++ var result = $defineProperty(object, object, object) && $defineProperty; ++ } catch(error) {} ++ return result; ++ }()); ++ var repeat = function(count) { ++ if (this == null) { ++ throw TypeError(); ++ } ++ var string = String(this); ++ // `ToInteger` ++ var n = count ? Number(count) : 0; ++ if (n != n) { // better `isNaN` ++ n = 0; ++ } ++ // Account for out-of-bounds indices ++ if (n < 0 || n == Infinity) { ++ throw RangeError(); ++ } ++ var result = ''; ++ while (n) { ++ if (n % 2 == 1) { ++ result += string; ++ } ++ if (n > 1) { ++ string += string; ++ } ++ n >>= 1; ++ } ++ return result; ++ }; ++ if (defineProperty) { ++ defineProperty(String.prototype, 'repeat', { ++ 'value': repeat, ++ 'configurable': true, ++ 'writable': true ++ }); ++ } else { ++ String.prototype.repeat = repeat; ++ } ++ }()); ++ } ++ ++ var normalizeURI$1 = normalizeURI; ++ var unescapeString$1 = unescapeString; ++ ++ // Constants for character codes: ++ ++ var C_NEWLINE = 10; ++ var C_ASTERISK = 42; ++ var C_UNDERSCORE = 95; ++ var C_BACKTICK = 96; ++ var C_OPEN_BRACKET = 91; ++ var C_CLOSE_BRACKET = 93; ++ var C_LESSTHAN = 60; ++ var C_BANG = 33; ++ var C_BACKSLASH$1 = 92; ++ var C_AMPERSAND = 38; ++ var C_OPEN_PAREN = 40; ++ var C_CLOSE_PAREN = 41; ++ var C_COLON = 58; ++ var C_SINGLEQUOTE = 39; ++ var C_DOUBLEQUOTE = 34; ++ var C_AT_SIGN = 64; ++ var C_SEMICOLON = 59; ++ var C_UPPER_X = 88; ++ var C_LOWER_X = 120; ++ var C_TILDE = 126; ++ var C_NUMBER_SIGN = 35; ++ ++ // Some regexps used in inline parser: ++ ++ var ESCAPABLE$1 = ESCAPABLE; ++ var ESCAPED_CHAR = "\\\\" + ESCAPABLE$1; ++ ++ var ENTITY$1 = ENTITY; ++ var reHtmlTag$1 = reHtmlTag; ++ ++ var rePunctuation = new RegExp( ++ /^[!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061E\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u0AF0\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166D\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E42\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC9\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDF3C-\uDF3E]|\uD809[\uDC70-\uDC74]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]/ ++ ); ++ ++ var reLinkSize = new RegExp('^=([0-9]*)x([0-9]*)'); ++ ++ var reLinkTitle = new RegExp( ++ '^(?:"(' + ++ ESCAPED_CHAR + ++ '|[^"\\x00])*"' + ++ "|" + ++ "'(" + ++ ESCAPED_CHAR + ++ "|[^'\\x00])*'" + ++ "|" + ++ "\\((" + ++ ESCAPED_CHAR + ++ "|[^()\\x00])*\\))" ++ ); ++ ++ var reLinkDestinationBraces = /^(?:<(?:[^<>\n\\\x00]|\\.)*>)/; ++ ++ var reEscapable = new RegExp("^" + ESCAPABLE$1); ++ ++ var reEntityHere = new RegExp("^" + ENTITY$1, "i"); ++ ++ var reTicks = /`+/; ++ ++ var reTicksHere = /^`+/; ++ ++ var reEllipses = /\.\.\./g; ++ ++ var reDash = /--+/g; ++ ++ var reEmailAutolink = /^<([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)>/; ++ ++ var reAutolink = /^<[A-Za-z][A-Za-z0-9.+-]{1,31}:[^<>\x00-\x20]*>/i; ++ ++ var reSpnl = /^ *(?:\n *)?/; ++ ++ var reWhitespaceChar = /^[ \t\n\x0b\x0c\x0d]/; ++ ++ var reUnicodeWhitespaceChar = /^\s/; ++ ++ var reFinalSpace = / *$/; ++ ++ var reInitialSpace = /^ */; ++ ++ var reSpaceAtEndOfLine = /^ *(?:\n|$)/; ++ ++ var reNonWord = /^\W+$/; ++ ++ var reLinkLabel = /^\[(?:[^\\\[\]]|\\.){0,1000}\]/s; ++ ++ var reDelimChar = /^[*_~]/; ++ ++ var reDelimCharAll = /^[\W]/; ++ ++ // Adapted from https://github.com/gregjacobs/Autolinker.js ++ var emailAlphaNumericChars = "\\p{L}\\p{Nd}"; ++ var emailSpecialCharacters = '!#$%&\'*+\\-\\/=?^_`{|}~'; ++ var emailRestrictedSpecialCharacters = "\\s(),:;<>@\\[\\]"; ++ var emailValidCharacters = emailAlphaNumericChars + emailSpecialCharacters; ++ var emailValidRestrictedCharacters = emailValidCharacters + emailRestrictedSpecialCharacters; ++ ++ // Matches a proper email address ++ var emailStartPattern = "(?:[" + emailValidCharacters + "](?:[" + emailValidCharacters + ']|\\.(?!\\.|@))*|\\"[' + emailValidRestrictedCharacters + '.]+\\")@'; ++ ++ // Matches a string of non-special characters. ++ var reMain = XRegExp.cache('^[\\s\\S]+?(?=[\\n`\\[\\]\\\\!<&*_\'"@:;xX~#]|[a-z][a-z0-9.+-]{1,31}:|www\\d{0,3}\\.|[' + emailValidCharacters + ".]{1,64}@|$)"); ++ ++ var text = function(s) { ++ var node = new Node("text"); ++ node._literal = s; ++ return node; ++ }; ++ ++ // normalize a reference in reference link (remove []s, trim, ++ // collapse internal space, unicode case fold. ++ // See commonmark/commonmark.js#168. ++ var normalizeReference = function(string) { ++ return string ++ .slice(1, string.length - 1) ++ .trim() ++ .replace(/[ \t\r\n]+/, " ") ++ .toLowerCase() ++ .toUpperCase(); ++ }; ++ ++ // INLINE PARSER ++ ++ // These are methods of an InlineParser object, defined below. ++ // An InlineParser keeps track of a subject (a string to be ++ // parsed) and a position in that subject. ++ ++ // If re matches at current position in the subject, advance ++ // position in subject and return the match; otherwise return null. + var match = function(re) { ++ var m = this.matchRegex(re); ++ if (m === null) { ++ return null; ++ } else { ++ return m[0]; ++ } ++ }; ++ ++ var matchRegex = function(re) { + var m = re.exec(this.subject.slice(this.pos)); + if (m === null) { + return null; + } else { + this.pos += m.index + m[0].length; +- return m[0]; ++ return m; ++ } ++ }; ++ ++ var tryMatch = function(re) { ++ var m = re.exec(this.subject.slice(this.pos)); ++ if (m === null) { ++ return null; ++ } else { ++ return m; + } + }; + ++ var acceptMatch = function(m) { ++ this.pos += m.index + m[0].length; ++ }; ++ + // Returns the code for the character at the current subject position, or -1 + // there are no more characters. + var peek = function() { +@@ -7831,6 +11615,11 @@ + } else { + node._literal = contents; + } ++ ++ if (block.type === "table_cell") { ++ node._literal = node._literal.replace(/\\\|/g, "|"); ++ } ++ + block.appendChild(node); + return true; + } +@@ -7925,7 +11714,8 @@ + } + } + +- if (numdelims === 0) { ++ if (numdelims === 0 || (cc === C_TILDE && numdelims < 2)) { ++ this.pos -= numdelims; + return null; + } + +@@ -7954,7 +11744,7 @@ + if (cc === C_UNDERSCORE) { + can_open = left_flanking && (!right_flanking || before_is_punctuation); + can_close = right_flanking && (!left_flanking || after_is_punctuation); +- } else if (cc === C_SINGLEQUOTE || cc === C_DOUBLEQUOTE) { ++ } else if (cc === C_SINGLEQUOTE || cc === C_DOUBLEQUOTE || cc === C_TILDE) { + can_open = left_flanking && !right_flanking; + can_close = right_flanking; + } else { +@@ -7965,7 +11755,7 @@ + return { numdelims: numdelims, can_open: can_open, can_close: can_close }; + }; + +- // Handle a delimiter marker for emphasis or a quote. ++ // Handle a delimiter marker for emphasis, quotes, or deleted text. + var handleDelim = function(cc, block) { + var res = this.scanDelims(cc); + if (!res) { +@@ -8080,7 +11870,7 @@ + (closer.can_open || opener.can_close) && + closer.origdelims % 3 !== 0 && + (opener.origdelims + closer.origdelims) % 3 === 0; +- if (opener.cc === closer.cc && opener.can_open && !odd_match) { ++ if (opener.cc === closer.cc && opener.can_open && (!odd_match || opener.cc === C_TILDE)) { + opener_found = true; + break; + } +@@ -8140,6 +11930,40 @@ + closer = tempstack; + } + } ++ ++ } else if (closercc === C_TILDE) { ++ if (!opener_found) { ++ closer = closer.next; ++ } else { ++ opener_inl = opener.node; ++ closer_inl = closer.node; ++ ++ // build contents for new del element ++ var emph = new Node("del"); ++ ++ tmp = opener_inl._next; ++ while (tmp && tmp !== closer_inl) { ++ next = tmp._next; ++ tmp.unlink(); ++ emph.appendChild(tmp); ++ tmp = next; ++ } ++ ++ opener_inl.insertAfter(emph); ++ ++ // remove elts between opener and closer in delimiters stack ++ removeDelimitersBetween(opener, closer); ++ ++ // remove the opening and closing delimiters ++ opener_inl.unlink(); ++ this.removeDelimiter(opener); ++ ++ closer_inl.unlink(); ++ tempstack = closer.next; ++ this.removeDelimiter(closer); ++ closer = tempstack; ++ } ++ + } else if (closercc === C_SINGLEQUOTE) { + closer.node._literal = "\u2019"; + if (opener_found) { +@@ -8172,6 +11996,29 @@ + } + }; + ++ var parseLinkSize = function() { ++ var size_matches = this.match(reLinkSize); ++ ++ if (size_matches === null) { ++ return null; ++ } else { ++ var detailed = size_matches.match(reLinkSize); ++ var width = detailed[1]; ++ var height = detailed[2]; ++ var size = {}; ++ ++ if (width) { ++ size.width = parseInt(width); ++ } ++ ++ if (height) { ++ size.height = parseInt(height); ++ } ++ ++ return size; ++ } ++ }; ++ + // Attempt to parse link title (sans quotes), returning the string + // or null if no match. + var parseLinkTitle = function() { +@@ -8285,6 +12132,7 @@ + var startpos; + var is_image; + var dest; ++ var size; + var title; + var matched = false; + var reflabel; +@@ -8324,6 +12172,8 @@ + this.spnl() && + (dest = this.parseLinkDestination()) !== null && + this.spnl() && ++ (size = this.parseLinkSize() || true) && ++ this.spnl() && + // make sure there's a space before the title: + ((reWhitespaceChar.test(this.subject.charAt(this.pos - 1)) && + (title = this.parseLinkTitle())) || +@@ -8369,6 +12219,7 @@ + var node = new Node(is_image ? "image" : "link"); + node._destination = dest; + node._title = title || ""; ++ node._size = size; + + var tmp, next; + tmp = opener.node._next; +@@ -8407,30 +12258,259 @@ + } + }; + +- var addBracket = function(node, index, image) { +- if (this.brackets !== null) { +- this.brackets.bracketAfter = true; ++ var addBracket = function(node, index, image) { ++ if (this.brackets !== null) { ++ this.brackets.bracketAfter = true; ++ } ++ this.brackets = { ++ node: node, ++ previous: this.brackets, ++ previousDelimiter: this.delimiters, ++ index: index, ++ image: image, ++ active: true ++ }; ++ }; ++ ++ var removeBracket = function() { ++ this.brackets = this.brackets.previous; ++ }; ++ ++ // Attempt to parse an entity. ++ var parseEntity = function(block) { ++ var m; ++ if ((m = this.match(reEntityHere))) { ++ block.appendChild(text(lib_9(m))); ++ return true; ++ } else { ++ return false; ++ } ++ }; ++ ++ // Attempt to parse a url ++ var reUrl = XRegExp.cache('^(?:[A-Za-z][A-Za-z\\d-.+]*:(?:\\/{1,3}|[\\pL\\d%])|www\\d{0,3}[.]|[\\pL\\d.\\-]+[.]\\pL{2,4}\\/)(?:\\[[\\da-f:]+\\]|[^\\s`!()\\[\\]{;:\'",<>?«»“”‘’*_]|[*_]+(?=[^_*\\s])|[`!\\[\\]{;:\'",<>?«»“”‘’](?=[^\\s()<>])|\\((?:[^\\s()<>]|(?:\\([^\\s()<>]+\\)))*\\))+', 'i'); ++ var parseUrl = function(block) { ++ if (this.brackets) { ++ // Don't perform autolinking while inside an explicit link ++ return false; ++ } ++ ++ var m; ++ if ((m = this.tryMatch(reUrl))) { ++ // Only link urls after non-word, non-formatting characters ++ if (this.pos !== 0 && this.subject[this.pos - 1] !== "_" && !reNonWord.test(this.subject[this.pos - 1])) { ++ return false; ++ } ++ ++ // Step back to remove trailing punctuation like how GitHub does ++ // https://github.com/github/cmark/blob/master/extensions/autolink.c#L58 ++ var url = m[0]; ++ while ((/[?!.,,:*_~'"]$/).test(url)) { ++ url = url.substring(0, url.length - 1); ++ } ++ ++ if (this.options.urlFilter && !this.options.urlFilter(url)) { ++ return false; ++ } ++ ++ this.pos += m.index + url.length; ++ ++ var node = new Node("link"); ++ node._destination = normalizeURI$1(url); ++ node._title = ""; ++ node.appendChild(text(url)); ++ block.appendChild(node); ++ ++ return true; ++ } else { ++ return false; ++ } ++ }; ++ ++ // Attempt to parse an at mention ++ var reAtMention = /^@([a-z][a-z0-9._-]*)/i; ++ var parseAtMention = function(block) { ++ if (this.brackets) { ++ // Don't perform autolinking while inside an explicit link ++ return false; ++ } ++ ++ var m; ++ if ((m = this.tryMatch(reAtMention))) { ++ // Only allow at mentions after non-word characters ++ if (this.pos === 0 || reNonWord.test(this.subject[this.pos - 1])) { ++ this.acceptMatch(m); ++ ++ // It's up to the renderer to determine what part of this is actually a username ++ var node = new Node("at_mention"); ++ node._mentionName = m[1]; ++ node.appendChild(text(m[0])); ++ block.appendChild(node); ++ return true; ++ } else { ++ return false; ++ } ++ } else { ++ return false; ++ } ++ }; ++ ++ // Attempt to parse a channel link ++ var reChannelLink = /^~([a-z0-9_-]+)/i; ++ var parseChannelLink = function(block) { ++ if (this.brackets) { ++ // Don't perform autolinking while inside an explicit link ++ return false; ++ } ++ ++ var m; ++ if ((m = this.tryMatch(reChannelLink))) { ++ // Only allow channel links after non-word characters ++ if (this.pos === 0 || reNonWord.test(this.subject[this.pos - 1])) { ++ this.acceptMatch(m); ++ ++ // It's up to the renderer to determine if this is actually a channel link ++ var node = new Node("channel_link"); ++ node._channelName = m[1]; ++ node.appendChild(text(m[0])); ++ block.appendChild(node); ++ return true; ++ } else { ++ return false; ++ } ++ } else { ++ return false; ++ } ++ }; ++ ++ // Attempt to parse a named emoji ++ var reEmoji = /^:([a-z0-9_\-+]+):\B/i; ++ var parseEmoji = function(block) { ++ var m; ++ if ((m = this.tryMatch(reEmoji))) { ++ // Only allow emojis after non-word characters ++ if (this.pos === 0 || reNonWord.test(this.subject[this.pos - 1])) { ++ this.acceptMatch(m); ++ ++ // It's up to the renderer to determine if this is a real emoji ++ var node = new Node("emoji"); ++ node._literal = m[0]; ++ node._emojiName = m[1]; ++ node.appendChild(text(m[0])); ++ block.appendChild(node); ++ return true; ++ } else { ++ return false; ++ } ++ } else { ++ return false; ++ } ++ }; ++ ++ // Attempt to parse an emoticon (eg. :D, <3) ++ var reEmoticon = /^(?:(:-?\))|(;-?\))|(:o)|(:-o)|(:-?])|(:-?d)|(x-d)|(:-?p)|(:-?[[@])|(:-?\()|(:[`'’]-?\()|(:-?\/)|(:-?s)|(:-?\|)|(:-?\$)|(:-x)|(<3|<3)|(<\/3|<\/3))(?=$|\W)/i; ++ var EMOTICONS = [ ++ "slightly_smiling_face", ++ "wink", ++ "open_mouth", ++ "scream", ++ "smirk", ++ "smile", ++ "stuck_out_tongue_closed_eyes", ++ "stuck_out_tongue", ++ "rage", ++ "slightly_frowning_face", ++ "cry", ++ "confused", ++ "confounded", ++ "neutral_face", ++ "flushed", ++ "mask", ++ "heart", ++ "broken_heart" ++ ]; ++ var parseEmoticon = function(block) { ++ var m; ++ if ((m = this.tryMatch(reEmoticon))) { ++ // Only allow emoticons after whitespace or a delimiter ++ if (this.pos === 0 || reWhitespaceChar.test(this.subject[this.pos - 1]) || reDelimCharAll.test(this.subject[this.pos - 1])) { ++ this.acceptMatch(m); ++ ++ var node = new Node("emoji"); ++ node._literal = m[0]; ++ ++ // Capture groups in the regex correspond to entries in EMOTICONS ++ for (var i = 0; i < EMOTICONS.length; i++) { ++ if (m[i + 1]) { ++ node._emojiName = EMOTICONS[i]; ++ } ++ } ++ ++ node.appendChild(text(m[0])); ++ block.appendChild(node); ++ return true; ++ } else { ++ return false; ++ } ++ } else { ++ return false; ++ } ++ }; ++ ++ var reEmail = XRegExp.cache("^" + emailStartPattern + "[\\pL\\d.\\-]+[.]\\pL{2,4}(?=$|[^\\p{L}])"); ++ var parseEmail = function(block) { ++ if (this.brackets) { ++ // Don't perform autolinking while inside an explicit link ++ return false; + } +- this.brackets = { +- node: node, +- previous: this.brackets, +- previousDelimiter: this.delimiters, +- index: index, +- image: image, +- active: true +- }; +- }; + +- var removeBracket = function() { +- this.brackets = this.brackets.previous; ++ var m; ++ if ((m = this.tryMatch(reEmail))) { ++ // Only allow at mentions after non-word characters ++ if (this.pos === 0 || reNonWord.test(this.subject[this.pos - 1])) { ++ this.acceptMatch(m); ++ ++ var dest = m[0]; ++ ++ var node = new Node("link"); ++ node._destination = normalizeURI$1("mailto:" + dest); ++ node._title = ""; ++ ++ node.appendChild(text(m[0])); ++ block.appendChild(node); ++ return true; ++ } else { ++ return false; ++ } ++ } else { ++ return false; ++ } + }; + +- // Attempt to parse an entity. +- var parseEntity = function(block) { ++ var reHashtag = XRegExp.cache("^#(\\pL[\\pL\\d\\-_.]*[\\pL\\d])"); ++ var parseHashtag = function(block) { ++ if (this.brackets) { ++ // Don't perform autolinking while inside an explicit link ++ return false; ++ } ++ + var m; +- if ((m = this.match(reEntityHere))) { +- block.appendChild(text(lib_9(m))); +- return true; ++ if ((m = this.tryMatch(reHashtag, true))) { ++ // Only allow hashtags after a non-word character or a delimiter and only allow hashtags that are long enough ++ if ( ++ (this.pos === 0 || reNonWord.test(this.subject[this.pos - 1]) || reDelimChar.test(this.subject[this.pos - 1])) && ++ m[1].length >= this.options.minimumHashtagLength ++ ) { ++ this.acceptMatch(m); ++ ++ var node = new Node("hashtag"); ++ node._hashtag = m[1]; ++ node.appendChild(text(m[0])); ++ block.appendChild(node); ++ return true; ++ } else { ++ return false; ++ } + } else { + return false; + } +@@ -8619,18 +12699,43 @@ + res = this.parseCloseBracket(block); + break; + case C_LESSTHAN: +- res = this.parseAutolink(block) || this.parseHtmlTag(block); ++ res = this.parseAutolink(block) || this.parseHtmlTag(block) || this.parseEmoticon(block); + break; + case C_AMPERSAND: +- res = this.parseEntity(block); ++ res = this.parseEmoticon(block) || this.parseEntity(block); + break; +- default: +- res = this.parseString(block); ++ case C_AT_SIGN: ++ res = this.parseAtMention(block); ++ break; ++ case C_TILDE: ++ res = this.handleDelim(c, block) || this.parseChannelLink(block); ++ break; ++ case C_COLON: ++ res = this.parseEmoji(block) || this.parseEmoticon(block); + break; ++ case C_SEMICOLON: ++ res = this.parseEmoticon(block); ++ break; ++ case C_UPPER_X: ++ case C_LOWER_X: ++ res = this.parseEmoticon(block); ++ break; ++ case C_NUMBER_SIGN: ++ res = this.parseHashtag(block); ++ break; ++ } ++ ++ if (!res) { ++ res = this.parseEmail(block); + } ++ + if (!res) { +- this.pos += 1; +- block.appendChild(text(fromCodePoint(c))); ++ res = this.parseUrl(block); ++ } ++ ++ // parseString always captures at least a single character ++ if (!res) { ++ res = this.parseString(block); + } + + return true; +@@ -8657,6 +12762,9 @@ + pos: 0, + refmap: {}, + match: match, ++ matchRegex: matchRegex, ++ tryMatch: tryMatch, ++ acceptMatch: acceptMatch, + peek: peek, + spnl: spnl, + parseBackticks: parseBackticks, +@@ -8665,6 +12773,7 @@ + parseHtmlTag: parseHtmlTag, + scanDelims: scanDelims, + handleDelim: handleDelim, ++ parseLinkSize: parseLinkSize, + parseLinkTitle: parseLinkTitle, + parseLinkDestination: parseLinkDestination, + parseLinkLabel: parseLinkLabel, +@@ -8674,6 +12783,13 @@ + addBracket: addBracket, + removeBracket: removeBracket, + parseEntity: parseEntity, ++ parseUrl: parseUrl, ++ parseAtMention: parseAtMention, ++ parseChannelLink: parseChannelLink, ++ parseEmoji: parseEmoji, ++ parseEmoticon: parseEmoticon, ++ parseEmail: parseEmail, ++ parseHashtag: parseHashtag, + parseString: parseString, + parseNewline: parseNewline, + parseReference: parseReference, +@@ -8716,7 +12832,9 @@ + + var reThematicBreak = /^(?:\*[ \t]*){3,}$|^(?:_[ \t]*){3,}$|^(?:-[ \t]*){3,}$/; + +- var reMaybeSpecial = /^[#`~*+_=<>0-9-]/; ++ var reMaybeSpecial = /^[#`~*+_=<>0-9-|]/; ++ ++ var reMaybeDelimiterRow = /[|\-]/; + + var reNonSpace = /[^ \t\f\v\r\n]/; + +@@ -8734,6 +12852,12 @@ + + var reLineEnding = /\r\n|\n|\r/; + ++ var reTableDelimiter = /^[ \t]{0,3}((?:\|[ \t]*)?:?-+:?[ \t]*(?:\|(?:[ \t]*:?-+:?[ \t]*)?)*\|?)$/; ++ ++ var reTableRow = /^(\|?)(?:(?:\\\||[^|])*\|?)+$/; ++ ++ var reTablePipeSpaceEnding = /\|\s+$/; ++ + // Returns true if string contains only space characters. + var isBlank = function(s) { + return !reNonSpace.test(s); +@@ -8751,6 +12875,10 @@ + } + }; + ++ var trimSpacesAfterPipe = function(ln) { ++ return ln.replace(reTablePipeSpaceEnding,"|"); ++ }; ++ + // DOC PARSER + + // These are methods of a Parser object, defined below. +@@ -9112,6 +13240,84 @@ + }, + acceptsLines: true + }, ++ table: { ++ continue: function(parser) { ++ if (parser.blank) { ++ // next line is blank so the table has ended ++ return 1; ++ } else if (parser.indented) { ++ // next line is indented so its part of a list or code block ++ return 1; ++ } ++ ++ return 0; ++ }, ++ finalize: function(parser, block) { ++ var numberOfColumns = block.alignColumns.length; ++ ++ for (var row = block.firstChild; row; row = row.next) { ++ var i = 0; ++ for (var cell = row.firstChild; cell; cell = cell.next) { ++ // copy column alignment to each cell ++ cell.align = block.alignColumns[i]; ++ ++ i += 1; ++ ++ // if there's more columns in a row than the header row, GitHub cuts them off ++ if (i + 1 > numberOfColumns) { ++ cell._next = null; ++ row._lastChild = cell; ++ break; ++ } ++ } ++ ++ // GitHub adds extra empty cells to make sure all rows are equal width ++ while (i < numberOfColumns) { ++ var cell = new Node("table_cell"); ++ ++ cell._string_content = ""; ++ cell.isHeading = row.isHeading; ++ cell.align = block.alignColumns[i]; ++ ++ row.appendChild(cell); ++ i += 1; ++ } ++ } ++ }, ++ canContain: function(t) { return (t === "table_row"); }, ++ acceptsLines: false ++ }, ++ table_row: { ++ continue: function(parser) { ++ if (parser.blank) { ++ return 2; ++ } ++ ++ return 1; ++ }, ++ finalize: function(parser, block) { ++ // mark the header row since it'll have special treatment when rendering ++ if (block === block.parent.firstChild) { ++ block.isHeading = true; ++ ++ for (var cell = block.firstChild; cell; cell = cell.next) { ++ cell.isHeading = true; ++ } ++ } ++ }, ++ canContain: function(t) { return (t === "table_cell"); }, ++ acceptsLines: false ++ }, ++ table_cell: { ++ continue: function() { ++ return 1; ++ }, ++ finalize: function() { ++ return; ++ }, ++ canContain: function() { return false; }, ++ acceptsLines: false ++ }, + paragraph: { + continue: function(parser) { + return parser.blank ? 1 : 0; +@@ -9352,9 +13558,127 @@ + } else { + return 0; + } ++ }, ++ ++ // table ++ function(parser, container) { ++ if (container.type !== "document") { ++ return 0; ++ } ++ ++ if (parser.indented) { ++ return 0; ++ } ++ ++ if (!parser.nextLine) { ++ // tables require at least two rows (header and delimiter) ++ return 0; ++ } ++ ++ // check for a delimiter first since it's stricter than the header row ++ const nextLine = trimSpacesAfterPipe(parser.nextLine); ++ var delimiterMatch = reTableDelimiter.exec(nextLine); ++ if (!delimiterMatch || delimiterMatch[0].indexOf("|") === -1) { ++ return 0; ++ } ++ ++ const currentLine = trimSpacesAfterPipe(parser.currentLine); ++ var headerMatch = reTableRow.exec(currentLine.slice(parser.nextNonspace)); ++ if (!headerMatch) { ++ return 0; ++ } ++ ++ var delimiterCells = parseTableCells(delimiterMatch[1]); ++ var headerCells = parseTableCells(headerMatch[0]); ++ ++ if (delimiterCells.length !== headerCells.length) { ++ // the first two rows must be the same length for this to be considered a table ++ return 0; ++ } ++ ++ parser.closeUnmatchedBlocks(); ++ ++ parser.advanceNextNonspace(); ++ parser.addChild("table", parser.offset); ++ ++ // store the alignments of the columns and then skip the delimiter line since we've ++ // gotten what we need from it ++ parser.tip.alignColumns = delimiterCells.map(getCellAlignment); ++ ++ parser.skipNextLine(); ++ ++ return 1; ++ }, ++ ++ // table_row ++ function(parser, container) { ++ if (container.type !== "table") { ++ return 0; ++ } ++ ++ if (parser.blank) { ++ return 2; ++ } ++ ++ var rowMatch = reTableRow.exec(parser.currentLine.slice(parser.nextNonspace)); ++ if (!rowMatch) { ++ return 0; ++ } ++ ++ parser.closeUnmatchedBlocks(); ++ parser.advanceNextNonspace(); ++ ++ parser.addChild("table_row", parser.offset); ++ ++ // advance past leading | if one exists ++ parser.advanceOffset(rowMatch[1].length, false); ++ ++ // parse the row into cells ++ var cells = parseTableCells(rowMatch[0]); ++ var length = cells.length; ++ for (var i = 0; i < length; i++) { ++ parser.addChild("table_cell", parser.offset); ++ ++ parser.tip._string_content = cells[i].trim(); ++ ++ parser.advanceOffset(cells[i].length + 1); ++ } ++ ++ return 2; + } + ]; + ++ var parseTableCells = function(row) { ++ // remove starting pipe to make life easier ++ row = row.replace(/^\|/, ""); ++ ++ var reTableCell = /\||((?:\\\||[^|])+)\|?/g; ++ ++ var match; ++ var cells = []; ++ while (match = reTableCell.exec(row)) { ++ cells.push(match[1] || ""); ++ } ++ ++ return cells; ++ }; ++ ++ var getCellAlignment = function(cell) { ++ cell = cell.trim(); ++ ++ if (cell.charAt(0) === ":") { ++ if (cell.charAt(cell.length - 1) === ":") { ++ return "center"; ++ } else { ++ return "left"; ++ } ++ } else if (cell.endsWith(":")) { ++ return "right"; ++ } else { ++ return ""; ++ } ++ }; ++ + var advanceOffset = function(count, columns) { + var currentLine = this.currentLine; + var charsToTab, charsToAdvance; +@@ -9416,7 +13740,7 @@ + // Analyze a line of text and update the document appropriately. + // We parse markdown text by calling this on each line of input, + // then finalizing the document. +- var incorporateLine = function(ln) { ++ var incorporateLine = function(ln, nextLn) { + var all_matched = true; + var t; + +@@ -9434,6 +13758,7 @@ + } + + this.currentLine = ln; ++ this.nextLine = nextLn; + + // For each containing block, try to parse the associated line start. + // Bail out on failure: container will point to the last matching block. +@@ -9475,8 +13800,10 @@ + + // this is a little performance optimization: + if ( +- !this.indented && +- !reMaybeSpecial.test(ln.slice(this.nextNonspace)) ++ !this.indented && // starts indented code blocks ++ !reMaybeSpecial.test(ln.slice(this.nextNonspace)) && // starts lists, block quotes, etc ++ (container.type !== "table" && container.type !== "table_row") && // start table rows ++ (nextLn && !reMaybeDelimiterRow.test(nextLn.slice(this.nextNonspace))) // starts tables + ) { + this.advanceNextNonspace(); + break; +@@ -9508,7 +13835,11 @@ + // appropriate container. + + // First check for a lazy paragraph continuation: +- if (!this.allClosed && !this.blank && this.tip.type === "paragraph") { ++ if ( ++ !this.allClosed && !this.blank && ++ this.tip.type === "paragraph" && ++ !(this.tip._parent.type === "item" && this.indent === 0) ++ ) { + // lazy paragraph continuation + this.addLine(); + } else { +@@ -9567,6 +13898,10 @@ + this.lastLineLength = ln.length; + }; + ++ var skipNextLine = function() { ++ this.shouldSkipNextLine = true; ++ }; ++ + // Finalize a block. Close it and do any necessary postprocessing, + // e.g. creating string_content from strings, setting the 'tight' + // or 'loose' status of a list, and parsing the beginnings +@@ -9592,7 +13927,7 @@ + while ((event = walker.next())) { + node = event.node; + t = node.type; +- if (!event.entering && (t === "paragraph" || t === "heading")) { ++ if (!event.entering && (t === "paragraph" || t === "heading" || t === "table_cell")) { + this.inlineParser.parse(node); + } + } +@@ -9617,6 +13952,7 @@ + this.column = 0; + this.lastMatchedContainer = this.doc; + this.currentLine = ""; ++ this.shouldSkipNextLine = false; + if (this.options.time) { + console.time("preparing input"); + } +@@ -9633,7 +13969,11 @@ + console.time("block parsing"); + } + for (var i = 0; i < len; i++) { +- this.incorporateLine(lines[i]); ++ if (this.shouldSkipNextLine) { ++ this.shouldSkipNextLine = false; ++ continue; ++ } ++ this.incorporateLine(lines[i], lines[i + 1]); + } + while (this.tip) { + this.finalize(this.tip, len); +@@ -9653,6 +13993,12 @@ + + // The Parser object. + function Parser(options) { ++ options = options || {}; ++ ++ if (options.minimumHashtagLength == null) { ++ options.minimumHashtagLength = 3; ++ } ++ + return { + doc: new Document(), + blocks: blocks, +@@ -9680,11 +14026,12 @@ + addLine: addLine, + addChild: addChild, + incorporateLine: incorporateLine, ++ skipNextLine: skipNextLine, + finalize: finalize, + processInlines: processInlines, + closeUnmatchedBlocks: closeUnmatchedBlocks, + parse: parse, +- options: options || {} ++ options: options + }; + } + +@@ -9833,6 +14180,63 @@ + } + } + ++ function at_mention(node, entering) { ++ if (entering) { ++ var attrs = this.attrs(node); ++ ++ if (node.mentionName) { ++ attrs.push(["data-mention-name", this.esc(node.mentionName)]); ++ } ++ ++ this.tag("span", attrs); ++ } else { ++ this.tag("/span"); ++ } ++ } ++ ++ function channel_link(node, entering) { ++ if (entering) { ++ var attrs = this.attrs(node); ++ ++ if (node.channelName) { ++ attrs.push(["data-channel-name", this.esc(node.channelName)]); ++ } ++ ++ this.tag("span", attrs); ++ } else { ++ this.tag("/span"); ++ } ++ } ++ ++ function emoji(node, entering) { ++ if (entering) { ++ var attrs = this.attrs(node); ++ ++ if (node.emojiName) { ++ attrs.push(["data-emoji-name", this.esc(node.emojiName)]); ++ attrs.push(["data-literal", this.esc(node.literal)]); ++ } ++ ++ this.tag("span", attrs); ++ } else { ++ this.tag("/span"); ++ } ++ } ++ ++ function hashtag(node, entering) { ++ if (entering) { ++ var attrs = this.attrs(node); ++ ++ if (node.hashtag) { ++ attrs.push(["data-hashtag", this.esc(node.hashtag)]); ++ } ++ ++ this.tag("span", attrs); ++ } else { ++ this.tag("/span"); ++ } ++ } ++ + function image$1(node, entering) { + if (entering) { + if (this.disableTags === 0) { +@@ -9849,6 +14253,15 @@ + if (node.title) { + this.lit('" title="' + this.esc(node.title)); + } ++ if (node.size) { ++ if (node.size.width) { ++ this.lit('" width="' + node.size.width); ++ } ++ ++ if (node.size.height) { ++ this.lit('" height="' + node.size.height); ++ } ++ } + this.lit('" />'); + } + } +@@ -9862,6 +14275,10 @@ + this.tag(entering ? "strong" : "/strong"); + } + ++ function del(node, entering) { ++ this.tag(entering ? "del" : "/del"); ++ } ++ + function paragraph(node, entering) { + var grandparent = node.parent.parent, + attrs = this.attrs(node); +@@ -9961,6 +14378,63 @@ + } + } + ++ function table(node, entering) { ++ var attrs = this.attrs(node); ++ if (entering) { ++ this.cr(); ++ this.tag("table", attrs); ++ this.cr(); ++ } else { ++ this.tag("/table"); ++ this.cr(); ++ } ++ } ++ ++ function table_row(node, entering) { ++ var attrs = this.attrs(node); ++ if (entering) { ++ if (node === node.parent.firstChild) { ++ this.cr(); ++ this.tag("thead"); ++ this.cr(); ++ } else if (node === node.parent.firstChild.next) { ++ this.cr(); ++ this.tag("tbody"); ++ this.cr(); ++ } ++ ++ this.cr(); ++ this.tag("tr", attrs); ++ this.cr(); ++ } else { ++ this.tag("/tr"); ++ ++ if (node === node.parent.firstChild) { ++ this.cr(); // we're not consistent about how these tags are laid out because this is what GitHub does ++ this.tag("/thead"); ++ } else if (node === node.parent.lastChild) { ++ this.tag("/tbody"); ++ } ++ } ++ } ++ ++ function table_cell(node, entering) { ++ var attrs = this.attrs(node); ++ ++ var tag = node.isHeading ? "th" : "td"; ++ ++ if (node.align) { ++ attrs.push(["align", node.align]); ++ } ++ ++ if (entering) { ++ this.tag(tag, attrs); ++ } else { ++ this.tag("/" + tag); ++ this.cr(); ++ } ++ } ++ + function html_inline(node) { + if (this.options.safe) { + this.lit(""); +@@ -10032,9 +14506,14 @@ + HtmlRenderer.prototype.softbreak = softbreak; + HtmlRenderer.prototype.linebreak = linebreak; + HtmlRenderer.prototype.link = link; ++ HtmlRenderer.prototype.at_mention = at_mention; ++ HtmlRenderer.prototype.channel_link = channel_link; ++ HtmlRenderer.prototype.emoji = emoji; ++ HtmlRenderer.prototype.hashtag = hashtag; + HtmlRenderer.prototype.image = image$1; + HtmlRenderer.prototype.emph = emph; + HtmlRenderer.prototype.strong = strong; ++ HtmlRenderer.prototype.del = del; + HtmlRenderer.prototype.paragraph = paragraph; + HtmlRenderer.prototype.heading = heading; + HtmlRenderer.prototype.code = code; +@@ -10043,6 +14522,9 @@ + HtmlRenderer.prototype.block_quote = block_quote; + HtmlRenderer.prototype.list = list; + HtmlRenderer.prototype.item = item; ++ HtmlRenderer.prototype.table = table; ++ HtmlRenderer.prototype.table_row = table_row; ++ HtmlRenderer.prototype.table_cell = table_cell; + HtmlRenderer.prototype.custom_inline = custom_inline; + HtmlRenderer.prototype.custom_block = custom_block; + +@@ -10152,6 +14634,13 @@ + attrs.push(["destination", node.destination]); + attrs.push(["title", node.title]); + break; ++ case "at_mention": ++ attrs.push(["mention-name", node.mentionName]); ++ break; ++ case "emoji": ++ attrs.push(["emoji-name", node.emojiName]); ++ attrs.push(["literal", node.literal]); ++ break; + case "custom_inline": + case "custom_block": + attrs.push(["on_enter", node.onEnter]); +diff --git a/node_modules/commonmark/lib/blocks.js b/node_modules/commonmark/lib/blocks.js +index 9262a4d..8ffa01b 100644 +--- a/node_modules/commonmark/lib/blocks.js ++++ b/node_modules/commonmark/lib/blocks.js +@@ -35,7 +35,9 @@ var reHtmlBlockClose = [ + + var reThematicBreak = /^(?:\*[ \t]*){3,}$|^(?:_[ \t]*){3,}$|^(?:-[ \t]*){3,}$/; + +-var reMaybeSpecial = /^[#`~*+_=<>0-9-]/; ++var reMaybeSpecial = /^[#`~*+_=<>0-9-|]/; ++ ++var reMaybeDelimiterRow = /[|\-]/; + + var reNonSpace = /[^ \t\f\v\r\n]/; + +@@ -53,6 +55,12 @@ var reSetextHeadingLine = /^(?:=+|-+)[ \t]*$/; + + var reLineEnding = /\r\n|\n|\r/; + ++var reTableDelimiter = /^[ \t]{0,3}((?:\|[ \t]*)?:?-+:?[ \t]*(?:\|(?:[ \t]*:?-+:?[ \t]*)?)*\|?)$/; ++ ++var reTableRow = /^(\|?)(?:(?:\\\||[^|])*\|?)+$/; ++ ++var reTablePipeSpaceEnding = /\|\s+$/; ++ + // Returns true if string contains only space characters. + var isBlank = function(s) { + return !reNonSpace.test(s); +@@ -70,6 +78,10 @@ var peek = function(ln, pos) { + } + }; + ++var trimSpacesAfterPipe = function(ln) { ++ return ln.replace(reTablePipeSpaceEnding,"|"); ++} ++ + // DOC PARSER + + // These are methods of a Parser object, defined below. +@@ -431,6 +443,84 @@ var blocks = { + }, + acceptsLines: true + }, ++ table: { ++ continue: function(parser) { ++ if (parser.blank) { ++ // next line is blank so the table has ended ++ return 1; ++ } else if (parser.indented) { ++ // next line is indented so its part of a list or code block ++ return 1; ++ } ++ ++ return 0; ++ }, ++ finalize: function(parser, block) { ++ var numberOfColumns = block.alignColumns.length; ++ ++ for (var row = block.firstChild; row; row = row.next) { ++ var i = 0; ++ for (var cell = row.firstChild; cell; cell = cell.next) { ++ // copy column alignment to each cell ++ cell.align = block.alignColumns[i]; ++ ++ i += 1; ++ ++ // if there's more columns in a row than the header row, GitHub cuts them off ++ if (i + 1 > numberOfColumns) { ++ cell._next = null; ++ row._lastChild = cell; ++ break; ++ } ++ } ++ ++ // GitHub adds extra empty cells to make sure all rows are equal width ++ while (i < numberOfColumns) { ++ var cell = new Node("table_cell"); ++ ++ cell._string_content = ""; ++ cell.isHeading = row.isHeading; ++ cell.align = block.alignColumns[i]; ++ ++ row.appendChild(cell); ++ i += 1; ++ } ++ } ++ }, ++ canContain: function(t) { return (t === "table_row"); }, ++ acceptsLines: false ++ }, ++ table_row: { ++ continue: function(parser) { ++ if (parser.blank) { ++ return 2; ++ } ++ ++ return 1; ++ }, ++ finalize: function(parser, block) { ++ // mark the header row since it'll have special treatment when rendering ++ if (block === block.parent.firstChild) { ++ block.isHeading = true; ++ ++ for (var cell = block.firstChild; cell; cell = cell.next) { ++ cell.isHeading = true; ++ } ++ } ++ }, ++ canContain: function(t) { return (t === "table_cell"); }, ++ acceptsLines: false ++ }, ++ table_cell: { ++ continue: function() { ++ return 1; ++ }, ++ finalize: function() { ++ return; ++ }, ++ canContain: function() { return false; }, ++ acceptsLines: false ++ }, + paragraph: { + continue: function(parser) { + return parser.blank ? 1 : 0; +@@ -671,9 +761,127 @@ var blockStarts = [ + } else { + return 0; + } ++ }, ++ ++ // table ++ function(parser, container) { ++ if (container.type !== "document") { ++ return 0; ++ } ++ ++ if (parser.indented) { ++ return 0; ++ } ++ ++ if (!parser.nextLine) { ++ // tables require at least two rows (header and delimiter) ++ return 0; ++ } ++ ++ // check for a delimiter first since it's stricter than the header row ++ const nextLine = trimSpacesAfterPipe(parser.nextLine); ++ var delimiterMatch = reTableDelimiter.exec(nextLine); ++ if (!delimiterMatch || delimiterMatch[0].indexOf("|") === -1) { ++ return 0; ++ } ++ ++ const currentLine = trimSpacesAfterPipe(parser.currentLine); ++ var headerMatch = reTableRow.exec(currentLine.slice(parser.nextNonspace)); ++ if (!headerMatch) { ++ return 0; ++ } ++ ++ var delimiterCells = parseTableCells(delimiterMatch[1]); ++ var headerCells = parseTableCells(headerMatch[0]); ++ ++ if (delimiterCells.length !== headerCells.length) { ++ // the first two rows must be the same length for this to be considered a table ++ return 0; ++ } ++ ++ parser.closeUnmatchedBlocks(); ++ ++ parser.advanceNextNonspace(); ++ parser.addChild("table", parser.offset); ++ ++ // store the alignments of the columns and then skip the delimiter line since we've ++ // gotten what we need from it ++ parser.tip.alignColumns = delimiterCells.map(getCellAlignment); ++ ++ parser.skipNextLine(); ++ ++ return 1; ++ }, ++ ++ // table_row ++ function(parser, container) { ++ if (container.type !== "table") { ++ return 0; ++ } ++ ++ if (parser.blank) { ++ return 2; ++ } ++ ++ var rowMatch = reTableRow.exec(parser.currentLine.slice(parser.nextNonspace)); ++ if (!rowMatch) { ++ return 0; ++ } ++ ++ parser.closeUnmatchedBlocks(); ++ parser.advanceNextNonspace(); ++ ++ parser.addChild("table_row", parser.offset); ++ ++ // advance past leading | if one exists ++ parser.advanceOffset(rowMatch[1].length, false); ++ ++ // parse the row into cells ++ var cells = parseTableCells(rowMatch[0]); ++ var length = cells.length; ++ for (var i = 0; i < length; i++) { ++ parser.addChild("table_cell", parser.offset); ++ ++ parser.tip._string_content = cells[i].trim(); ++ ++ parser.advanceOffset(cells[i].length + 1); ++ } ++ ++ return 2; + } + ]; + ++var parseTableCells = function(row) { ++ // remove starting pipe to make life easier ++ row = row.replace(/^\|/, ""); ++ ++ var reTableCell = /\||((?:\\\||[^|])+)\|?/g; ++ ++ var match; ++ var cells = []; ++ while (match = reTableCell.exec(row)) { ++ cells.push(match[1] || ""); ++ } ++ ++ return cells; ++}; ++ ++var getCellAlignment = function(cell) { ++ cell = cell.trim(); ++ ++ if (cell.charAt(0) === ":") { ++ if (cell.charAt(cell.length - 1) === ":") { ++ return "center"; ++ } else { ++ return "left"; ++ } ++ } else if (cell.endsWith(":")) { ++ return "right"; ++ } else { ++ return ""; ++ } ++}; ++ + var advanceOffset = function(count, columns) { + var currentLine = this.currentLine; + var charsToTab, charsToAdvance; +@@ -735,7 +943,7 @@ var findNextNonspace = function() { + // Analyze a line of text and update the document appropriately. + // We parse markdown text by calling this on each line of input, + // then finalizing the document. +-var incorporateLine = function(ln) { ++var incorporateLine = function(ln, nextLn) { + var all_matched = true; + var t; + +@@ -753,6 +961,7 @@ var incorporateLine = function(ln) { + } + + this.currentLine = ln; ++ this.nextLine = nextLn; + + // For each containing block, try to parse the associated line start. + // Bail out on failure: container will point to the last matching block. +@@ -794,8 +1003,10 @@ var incorporateLine = function(ln) { + + // this is a little performance optimization: + if ( +- !this.indented && +- !reMaybeSpecial.test(ln.slice(this.nextNonspace)) ++ !this.indented && // starts indented code blocks ++ !reMaybeSpecial.test(ln.slice(this.nextNonspace)) && // starts lists, block quotes, etc ++ (container.type !== "table" && container.type !== "table_row") && // start table rows ++ (nextLn && !reMaybeDelimiterRow.test(nextLn.slice(this.nextNonspace))) // starts tables + ) { + this.advanceNextNonspace(); + break; +@@ -827,7 +1038,11 @@ var incorporateLine = function(ln) { + // appropriate container. + + // First check for a lazy paragraph continuation: +- if (!this.allClosed && !this.blank && this.tip.type === "paragraph") { ++ if ( ++ !this.allClosed && !this.blank && ++ this.tip.type === "paragraph" && ++ !(this.tip._parent.type === "item" && this.indent === 0) ++ ) { + // lazy paragraph continuation + this.addLine(); + } else { +@@ -886,6 +1101,10 @@ var incorporateLine = function(ln) { + this.lastLineLength = ln.length; + }; + ++var skipNextLine = function() { ++ this.shouldSkipNextLine = true; ++}; ++ + // Finalize a block. Close it and do any necessary postprocessing, + // e.g. creating string_content from strings, setting the 'tight' + // or 'loose' status of a list, and parsing the beginnings +@@ -911,7 +1130,7 @@ var processInlines = function(block) { + while ((event = walker.next())) { + node = event.node; + t = node.type; +- if (!event.entering && (t === "paragraph" || t === "heading")) { ++ if (!event.entering && (t === "paragraph" || t === "heading" || t === "table_cell")) { + this.inlineParser.parse(node); + } + } +@@ -936,6 +1155,7 @@ var parse = function(input) { + this.column = 0; + this.lastMatchedContainer = this.doc; + this.currentLine = ""; ++ this.shouldSkipNextLine = false; + if (this.options.time) { + console.time("preparing input"); + } +@@ -952,7 +1172,11 @@ var parse = function(input) { + console.time("block parsing"); + } + for (var i = 0; i < len; i++) { +- this.incorporateLine(lines[i]); ++ if (this.shouldSkipNextLine) { ++ this.shouldSkipNextLine = false; ++ continue; ++ } ++ this.incorporateLine(lines[i], lines[i + 1]); + } + while (this.tip) { + this.finalize(this.tip, len); +@@ -972,6 +1196,12 @@ var parse = function(input) { + + // The Parser object. + function Parser(options) { ++ options = options || {}; ++ ++ if (options.minimumHashtagLength == null) { ++ options.minimumHashtagLength = 3; ++ } ++ + return { + doc: new Document(), + blocks: blocks, +@@ -999,11 +1229,12 @@ function Parser(options) { + addLine: addLine, + addChild: addChild, + incorporateLine: incorporateLine, ++ skipNextLine: skipNextLine, + finalize: finalize, + processInlines: processInlines, + closeUnmatchedBlocks: closeUnmatchedBlocks, + parse: parse, +- options: options || {} ++ options: options + }; + } + +diff --git a/node_modules/commonmark/lib/common.js b/node_modules/commonmark/lib/common.js +index 298e9b0..cf27955 100644 +--- a/node_modules/commonmark/lib/common.js ++++ b/node_modules/commonmark/lib/common.js +@@ -71,7 +71,12 @@ var unescapeString = function(s) { + } + }; + ++var reWWW = /^www\d{0,3}\./i; + var normalizeURI = function(uri) { ++ if (reWWW.test(uri)) { ++ uri = 'http://' + uri; ++ } ++ + try { + return encode(uri); + } catch (err) { +diff --git a/node_modules/commonmark/lib/inlines.js b/node_modules/commonmark/lib/inlines.js +index 5d2a545..312b4a0 100644 +--- a/node_modules/commonmark/lib/inlines.js ++++ b/node_modules/commonmark/lib/inlines.js +@@ -4,6 +4,7 @@ import Node from "./node.js"; + import * as common from "./common.js"; + import fromCodePoint from "./from-code-point.js"; + import { decodeHTML } from "entities"; ++import XRegExp from "xregexp"; + import "string.prototype.repeat"; // Polyfill for String.prototype.repeat + + var normalizeURI = common.normalizeURI; +@@ -26,6 +27,12 @@ var C_CLOSE_PAREN = 41; + var C_COLON = 58; + var C_SINGLEQUOTE = 39; + var C_DOUBLEQUOTE = 34; ++var C_AT_SIGN = 64; ++var C_SEMICOLON = 59; ++var C_UPPER_X = 88; ++var C_LOWER_X = 120; ++var C_TILDE = 126; ++var C_NUMBER_SIGN = 35; + + // Some regexps used in inline parser: + +@@ -39,6 +46,8 @@ var rePunctuation = new RegExp( + /^[!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061E\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u0AF0\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166D\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E42\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC9\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDF3C-\uDF3E]|\uD809[\uDC70-\uDC74]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]/ + ); + ++var reLinkSize = new RegExp('^=([0-9]*)x([0-9]*)'); ++ + var reLinkTitle = new RegExp( + '^(?:"(' + + ESCAPED_CHAR + +@@ -83,10 +92,26 @@ var reInitialSpace = /^ */; + + var reSpaceAtEndOfLine = /^ *(?:\n|$)/; + ++var reNonWord = /^\W+$/; ++ + var reLinkLabel = /^\[(?:[^\\\[\]]|\\.){0,1000}\]/s; + ++var reDelimChar = /^[*_~]/; ++ ++var reDelimCharAll = /^[\W]/ ++ ++// Adapted from https://github.com/gregjacobs/Autolinker.js ++var emailAlphaNumericChars = "\\p{L}\\p{Nd}"; ++var emailSpecialCharacters = '!#$%&\'*+\\-\\/=?^_`{|}~'; ++var emailRestrictedSpecialCharacters = "\\s(),:;<>@\\[\\]"; ++var emailValidCharacters = emailAlphaNumericChars + emailSpecialCharacters; ++var emailValidRestrictedCharacters = emailValidCharacters + emailRestrictedSpecialCharacters; ++ ++// Matches a proper email address ++var emailStartPattern = "(?:[" + emailValidCharacters + "](?:[" + emailValidCharacters + ']|\\.(?!\\.|@))*|\\"[' + emailValidRestrictedCharacters + '.]+\\")@'; ++ + // Matches a string of non-special characters. +-var reMain = /^[^\n`\[\]\\!<&*_'"]+/m; ++var reMain = XRegExp.cache('^[\\s\\S]+?(?=[\\n`\\[\\]\\\\!<&*_\'"@:;xX~#]|[a-z][a-z0-9.+-]{1,31}:|www\\d{0,3}\\.|[' + emailValidCharacters + ".]{1,64}@|$)"); + + var text = function(s) { + var node = new Node("text"); +@@ -115,15 +140,37 @@ var normalizeReference = function(string) { + // If re matches at current position in the subject, advance + // position in subject and return the match; otherwise return null. + var match = function(re) { ++ var m = this.matchRegex(re); ++ if (m === null) { ++ return null; ++ } else { ++ return m[0]; ++ } ++}; ++ ++var matchRegex = function(re) { + var m = re.exec(this.subject.slice(this.pos)); + if (m === null) { + return null; + } else { + this.pos += m.index + m[0].length; +- return m[0]; ++ return m; + } + }; + ++var tryMatch = function(re) { ++ var m = re.exec(this.subject.slice(this.pos)); ++ if (m === null) { ++ return null; ++ } else { ++ return m; ++ } ++}; ++ ++var acceptMatch = function(m) { ++ this.pos += m.index + m[0].length; ++}; ++ + // Returns the code for the character at the current subject position, or -1 + // there are no more characters. + var peek = function() { +@@ -171,6 +218,11 @@ var parseBackticks = function(block) { + } else { + node._literal = contents; + } ++ ++ if (block.type === "table_cell") { ++ node._literal = node._literal.replace(/\\\|/g, "|"); ++ } ++ + block.appendChild(node); + return true; + } +@@ -265,7 +317,8 @@ var scanDelims = function(cc) { + } + } + +- if (numdelims === 0) { ++ if (numdelims === 0 || (cc === C_TILDE && numdelims < 2)) { ++ this.pos -= numdelims; + return null; + } + +@@ -294,7 +347,7 @@ var scanDelims = function(cc) { + if (cc === C_UNDERSCORE) { + can_open = left_flanking && (!right_flanking || before_is_punctuation); + can_close = right_flanking && (!left_flanking || after_is_punctuation); +- } else if (cc === C_SINGLEQUOTE || cc === C_DOUBLEQUOTE) { ++ } else if (cc === C_SINGLEQUOTE || cc === C_DOUBLEQUOTE || cc === C_TILDE) { + can_open = left_flanking && !right_flanking; + can_close = right_flanking; + } else { +@@ -305,7 +358,7 @@ var scanDelims = function(cc) { + return { numdelims: numdelims, can_open: can_open, can_close: can_close }; + }; + +-// Handle a delimiter marker for emphasis or a quote. ++// Handle a delimiter marker for emphasis, quotes, or deleted text. + var handleDelim = function(cc, block) { + var res = this.scanDelims(cc); + if (!res) { +@@ -420,7 +473,7 @@ var processEmphasis = function(stack_bottom) { + (closer.can_open || opener.can_close) && + closer.origdelims % 3 !== 0 && + (opener.origdelims + closer.origdelims) % 3 === 0; +- if (opener.cc === closer.cc && opener.can_open && !odd_match) { ++ if (opener.cc === closer.cc && opener.can_open && (!odd_match || opener.cc === C_TILDE)) { + opener_found = true; + break; + } +@@ -480,6 +533,40 @@ var processEmphasis = function(stack_bottom) { + closer = tempstack; + } + } ++ ++ } else if (closercc === C_TILDE) { ++ if (!opener_found) { ++ closer = closer.next; ++ } else { ++ opener_inl = opener.node; ++ closer_inl = closer.node; ++ ++ // build contents for new del element ++ var emph = new Node("del"); ++ ++ tmp = opener_inl._next; ++ while (tmp && tmp !== closer_inl) { ++ next = tmp._next; ++ tmp.unlink(); ++ emph.appendChild(tmp); ++ tmp = next; ++ } ++ ++ opener_inl.insertAfter(emph); ++ ++ // remove elts between opener and closer in delimiters stack ++ removeDelimitersBetween(opener, closer); ++ ++ // remove the opening and closing delimiters ++ opener_inl.unlink(); ++ this.removeDelimiter(opener); ++ ++ closer_inl.unlink(); ++ tempstack = closer.next; ++ this.removeDelimiter(closer); ++ closer = tempstack; ++ } ++ + } else if (closercc === C_SINGLEQUOTE) { + closer.node._literal = "\u2019"; + if (opener_found) { +@@ -512,6 +599,29 @@ var processEmphasis = function(stack_bottom) { + } + }; + ++var parseLinkSize = function() { ++ var size_matches = this.match(reLinkSize); ++ ++ if (size_matches === null) { ++ return null; ++ } else { ++ var detailed = size_matches.match(reLinkSize); ++ var width = detailed[1]; ++ var height = detailed[2]; ++ var size = {}; ++ ++ if (width) { ++ size.width = parseInt(width); ++ } ++ ++ if (height) { ++ size.height = parseInt(height); ++ } ++ ++ return size; ++ } ++} ++ + // Attempt to parse link title (sans quotes), returning the string + // or null if no match. + var parseLinkTitle = function() { +@@ -625,6 +735,7 @@ var parseCloseBracket = function(block) { + var startpos; + var is_image; + var dest; ++ var size; + var title; + var matched = false; + var reflabel; +@@ -664,6 +775,8 @@ var parseCloseBracket = function(block) { + this.spnl() && + (dest = this.parseLinkDestination()) !== null && + this.spnl() && ++ (size = this.parseLinkSize() || true) && ++ this.spnl() && + // make sure there's a space before the title: + ((reWhitespaceChar.test(this.subject.charAt(this.pos - 1)) && + (title = this.parseLinkTitle())) || +@@ -709,6 +822,7 @@ var parseCloseBracket = function(block) { + var node = new Node(is_image ? "image" : "link"); + node._destination = dest; + node._title = title || ""; ++ node._size = size; + + var tmp, next; + tmp = opener.node._next; +@@ -776,6 +890,235 @@ var parseEntity = function(block) { + } + }; + ++// Attempt to parse a url ++var reUrl = XRegExp.cache('^(?:[A-Za-z][A-Za-z\\d-.+]*:(?:\\/{1,3}|[\\pL\\d%])|www\\d{0,3}[.]|[\\pL\\d.\\-]+[.]\\pL{2,4}\\/)(?:\\[[\\da-f:]+\\]|[^\\s`!()\\[\\]{;:\'",<>?«»“”‘’*_]|[*_]+(?=[^_*\\s])|[`!\\[\\]{;:\'",<>?«»“”‘’](?=[^\\s()<>])|\\((?:[^\\s()<>]|(?:\\([^\\s()<>]+\\)))*\\))+', 'i'); ++var parseUrl = function(block) { ++ if (this.brackets) { ++ // Don't perform autolinking while inside an explicit link ++ return false; ++ } ++ ++ var m; ++ if ((m = this.tryMatch(reUrl))) { ++ // Only link urls after non-word, non-formatting characters ++ if (this.pos !== 0 && this.subject[this.pos - 1] !== "_" && !reNonWord.test(this.subject[this.pos - 1])) { ++ return false; ++ } ++ ++ // Step back to remove trailing punctuation like how GitHub does ++ // https://github.com/github/cmark/blob/master/extensions/autolink.c#L58 ++ var url = m[0]; ++ while ((/[?!.,,:*_~'"]$/).test(url)) { ++ url = url.substring(0, url.length - 1); ++ } ++ ++ if (this.options.urlFilter && !this.options.urlFilter(url)) { ++ return false; ++ } ++ ++ this.pos += m.index + url.length; ++ ++ var node = new Node("link"); ++ node._destination = normalizeURI(url); ++ node._title = ""; ++ node.appendChild(text(url)); ++ block.appendChild(node); ++ ++ return true; ++ } else { ++ return false; ++ } ++} ++ ++// Attempt to parse an at mention ++var reAtMention = /^@([a-z][a-z0-9._-]*)/i; ++var parseAtMention = function(block) { ++ if (this.brackets) { ++ // Don't perform autolinking while inside an explicit link ++ return false; ++ } ++ ++ var m; ++ if ((m = this.tryMatch(reAtMention))) { ++ // Only allow at mentions after non-word characters ++ if (this.pos === 0 || reNonWord.test(this.subject[this.pos - 1])) { ++ this.acceptMatch(m); ++ ++ // It's up to the renderer to determine what part of this is actually a username ++ var node = new Node("at_mention"); ++ node._mentionName = m[1]; ++ node.appendChild(text(m[0])); ++ block.appendChild(node); ++ return true; ++ } else { ++ return false; ++ } ++ } else { ++ return false; ++ } ++} ++ ++// Attempt to parse a channel link ++var reChannelLink = /^~([a-z0-9_-]+)/i; ++var parseChannelLink = function(block) { ++ if (this.brackets) { ++ // Don't perform autolinking while inside an explicit link ++ return false; ++ } ++ ++ var m; ++ if ((m = this.tryMatch(reChannelLink))) { ++ // Only allow channel links after non-word characters ++ if (this.pos === 0 || reNonWord.test(this.subject[this.pos - 1])) { ++ this.acceptMatch(m); ++ ++ // It's up to the renderer to determine if this is actually a channel link ++ var node = new Node("channel_link"); ++ node._channelName = m[1]; ++ node.appendChild(text(m[0])); ++ block.appendChild(node); ++ return true; ++ } else { ++ return false; ++ } ++ } else { ++ return false; ++ } ++} ++ ++// Attempt to parse a named emoji ++var reEmoji = /^:([a-z0-9_\-+]+):\B/i; ++var parseEmoji = function(block) { ++ var m; ++ if ((m = this.tryMatch(reEmoji))) { ++ // Only allow emojis after non-word characters ++ if (this.pos === 0 || reNonWord.test(this.subject[this.pos - 1])) { ++ this.acceptMatch(m); ++ ++ // It's up to the renderer to determine if this is a real emoji ++ var node = new Node("emoji"); ++ node._literal = m[0]; ++ node._emojiName = m[1]; ++ node.appendChild(text(m[0])); ++ block.appendChild(node); ++ return true; ++ } else { ++ return false; ++ } ++ } else { ++ return false; ++ } ++} ++ ++// Attempt to parse an emoticon (eg. :D, <3) ++var reEmoticon = /^(?:(:-?\))|(;-?\))|(:o)|(:-o)|(:-?])|(:-?d)|(x-d)|(:-?p)|(:-?[[@])|(:-?\()|(:[`'’]-?\()|(:-?\/)|(:-?s)|(:-?\|)|(:-?\$)|(:-x)|(<3|<3)|(<\/3|<\/3))(?=$|\W)/i; ++var EMOTICONS = [ ++ "slightly_smiling_face", ++ "wink", ++ "open_mouth", ++ "scream", ++ "smirk", ++ "smile", ++ "stuck_out_tongue_closed_eyes", ++ "stuck_out_tongue", ++ "rage", ++ "slightly_frowning_face", ++ "cry", ++ "confused", ++ "confounded", ++ "neutral_face", ++ "flushed", ++ "mask", ++ "heart", ++ "broken_heart" ++]; ++var parseEmoticon = function(block) { ++ var m; ++ if ((m = this.tryMatch(reEmoticon))) { ++ // Only allow emoticons after whitespace or a delimiter ++ if (this.pos === 0 || reWhitespaceChar.test(this.subject[this.pos - 1]) || reDelimCharAll.test(this.subject[this.pos - 1])) { ++ this.acceptMatch(m); ++ ++ var node = new Node("emoji"); ++ node._literal = m[0]; ++ ++ // Capture groups in the regex correspond to entries in EMOTICONS ++ for (var i = 0; i < EMOTICONS.length; i++) { ++ if (m[i + 1]) { ++ node._emojiName = EMOTICONS[i]; ++ } ++ } ++ ++ node.appendChild(text(m[0])); ++ block.appendChild(node); ++ return true; ++ } else { ++ return false; ++ } ++ } else { ++ return false; ++ } ++} ++ ++var reEmail = XRegExp.cache("^" + emailStartPattern + "[\\pL\\d.\\-]+[.]\\pL{2,4}(?=$|[^\\p{L}])"); ++var parseEmail = function(block) { ++ if (this.brackets) { ++ // Don't perform autolinking while inside an explicit link ++ return false; ++ } ++ ++ var m; ++ if ((m = this.tryMatch(reEmail))) { ++ // Only allow at mentions after non-word characters ++ if (this.pos === 0 || reNonWord.test(this.subject[this.pos - 1])) { ++ this.acceptMatch(m); ++ ++ var dest = m[0]; ++ ++ var node = new Node("link"); ++ node._destination = normalizeURI("mailto:" + dest); ++ node._title = ""; ++ ++ node.appendChild(text(m[0])); ++ block.appendChild(node); ++ return true; ++ } else { ++ return false; ++ } ++ } else { ++ return false; ++ } ++} ++ ++var reHashtag = XRegExp.cache("^#(\\pL[\\pL\\d\\-_.]*[\\pL\\d])"); ++var parseHashtag = function(block) { ++ if (this.brackets) { ++ // Don't perform autolinking while inside an explicit link ++ return false; ++ } ++ ++ var m; ++ if ((m = this.tryMatch(reHashtag, true))) { ++ // Only allow hashtags after a non-word character or a delimiter and only allow hashtags that are long enough ++ if ( ++ (this.pos === 0 || reNonWord.test(this.subject[this.pos - 1]) || reDelimChar.test(this.subject[this.pos - 1])) && ++ m[1].length >= this.options.minimumHashtagLength ++ ) { ++ this.acceptMatch(m); ++ ++ var node = new Node("hashtag"); ++ node._hashtag = m[1]; ++ node.appendChild(text(m[0])); ++ block.appendChild(node); ++ return true; ++ } else { ++ return false; ++ } ++ } else { ++ return false; ++ } ++} ++ + // Parse a run of ordinary characters, or a single character with + // a special meaning in markdown, as a plain string. + var parseString = function(block) { +@@ -959,18 +1302,45 @@ var parseInline = function(block) { + res = this.parseCloseBracket(block); + break; + case C_LESSTHAN: +- res = this.parseAutolink(block) || this.parseHtmlTag(block); ++ res = this.parseAutolink(block) || this.parseHtmlTag(block) || this.parseEmoticon(block); + break; + case C_AMPERSAND: +- res = this.parseEntity(block); ++ res = this.parseEmoticon(block) || this.parseEntity(block); ++ break; ++ case C_AT_SIGN: ++ res = this.parseAtMention(block); ++ break; ++ case C_TILDE: ++ res = this.handleDelim(c, block) || this.parseChannelLink(block); ++ break; ++ case C_COLON: ++ res = this.parseEmoji(block) || this.parseEmoticon(block); ++ break; ++ case C_SEMICOLON: ++ res = this.parseEmoticon(block); ++ break; ++ case C_UPPER_X: ++ case C_LOWER_X: ++ res = this.parseEmoticon(block); ++ break; ++ case C_NUMBER_SIGN: ++ res = this.parseHashtag(block); + break; + default: +- res = this.parseString(block); + break; + } ++ + if (!res) { +- this.pos += 1; +- block.appendChild(text(fromCodePoint(c))); ++ res = this.parseEmail(block); ++ } ++ ++ if (!res) { ++ res = this.parseUrl(block); ++ } ++ ++ // parseString always captures at least a single character ++ if (!res) { ++ res = this.parseString(block); + } + + return true; +@@ -997,6 +1367,9 @@ function InlineParser(options) { + pos: 0, + refmap: {}, + match: match, ++ matchRegex: matchRegex, ++ tryMatch: tryMatch, ++ acceptMatch: acceptMatch, + peek: peek, + spnl: spnl, + parseBackticks: parseBackticks, +@@ -1005,6 +1378,7 @@ function InlineParser(options) { + parseHtmlTag: parseHtmlTag, + scanDelims: scanDelims, + handleDelim: handleDelim, ++ parseLinkSize: parseLinkSize, + parseLinkTitle: parseLinkTitle, + parseLinkDestination: parseLinkDestination, + parseLinkLabel: parseLinkLabel, +@@ -1014,6 +1388,13 @@ function InlineParser(options) { + addBracket: addBracket, + removeBracket: removeBracket, + parseEntity: parseEntity, ++ parseUrl: parseUrl, ++ parseAtMention: parseAtMention, ++ parseChannelLink: parseChannelLink, ++ parseEmoji: parseEmoji, ++ parseEmoticon: parseEmoticon, ++ parseEmail: parseEmail, ++ parseHashtag: parseHashtag, + parseString: parseString, + parseNewline: parseNewline, + parseReference: parseReference, +diff --git a/node_modules/commonmark/lib/node.js b/node_modules/commonmark/lib/node.js +index 0e9c4b6..cbbe795 100644 +--- a/node_modules/commonmark/lib/node.js ++++ b/node_modules/commonmark/lib/node.js +@@ -6,12 +6,22 @@ function isContainer(node) { + case "block_quote": + case "list": + case "item": ++ case "table": ++ case "table_row": ++ case "table_cell": + case "paragraph": + case "heading": + case "emph": + case "strong": ++ case "del": + case "link": + case "image": ++ case "at_mention": ++ case "channel_link": ++ case "emoji": ++ case "hashtag": ++ case "mention_highlight": ++ case "search_highlight": + case "custom_inline": + case "custom_block": + return true; +@@ -82,12 +92,22 @@ var Node = function(nodeType, sourcepos) { + this._listData = {}; + this._info = null; + this._destination = null; ++ this._size = null; + this._title = null; + this._isFenced = false; + this._fenceChar = null; + this._fenceLength = 0; + this._fenceOffset = null; + this._level = null; ++ this._mentionName = null; ++ this._emojiName = null; ++ this._hashtag = null; ++ ++ // used by tables ++ this._alignColumns = []; ++ this._isHeading = false; ++ this._align = ""; ++ + this._onEnter = null; + this._onExit = null; + }; +@@ -160,6 +180,15 @@ Object.defineProperty(proto, "destination", { + } + }); + ++Object.defineProperty(proto, "size", { ++ get: function() { ++ return this._size; ++ }, ++ set: function(s) { ++ this._size = s; ++ } ++}); ++ + Object.defineProperty(proto, "title", { + get: function() { + return this._title; +@@ -223,6 +252,57 @@ Object.defineProperty(proto, "listDelimiter", { + } + }); + ++Object.defineProperty(proto, "mentionName", { ++ get: function() { ++ return this._mentionName; ++ }, ++}); ++ ++Object.defineProperty(proto, "channelName", { ++ get: function() { ++ return this._channelName; ++ }, ++}); ++ ++Object.defineProperty(proto, "emojiName", { ++ get: function() { ++ return this._emojiName; ++ }, ++}); ++ ++Object.defineProperty(proto, "hashtag", { ++ get: function() { ++ return this._hashtag; ++ }, ++}); ++ ++Object.defineProperty(proto, "alignColumns", { ++ get: function() { ++ return this._alignColumns; ++ }, ++ set: function(s) { ++ this._alignColumns = s; ++ } ++}); ++ ++Object.defineProperty(proto, "isHeading", { ++ get: function() { ++ return this._isHeading; ++ }, ++ set: function(t) { ++ this._isHeading = t; ++ } ++}); ++ ++Object.defineProperty(proto, "align", { ++ get: function() { ++ return this._align; ++ }, ++ set: function(s) { ++ this._align = s; ++ } ++}); ++ + Object.defineProperty(proto, "onEnter", { + get: function() { + return this._onEnter; +diff --git a/node_modules/commonmark/lib/render/html.js b/node_modules/commonmark/lib/render/html.js +index 2963dea..eac00e9 100644 +--- a/node_modules/commonmark/lib/render/html.js ++++ b/node_modules/commonmark/lib/render/html.js +@@ -76,6 +76,63 @@ function link(node, entering) { + } + } + ++function at_mention(node, entering) { ++ if (entering) { ++ var attrs = this.attrs(node); ++ ++ if (node.mentionName) { ++ attrs.push(["data-mention-name", this.esc(node.mentionName)]); ++ } ++ ++ this.tag("span", attrs); ++ } else { ++ this.tag("/span"); ++ } ++} ++ ++function channel_link(node, entering) { ++ if (entering) { ++ var attrs = this.attrs(node); ++ ++ if (node.channelName) { ++ attrs.push(["data-channel-name", this.esc(node.channelName)]); ++ } ++ ++ this.tag("span", attrs); ++ } else { ++ this.tag("/span"); ++ } ++} ++ ++function emoji(node, entering) { ++ if (entering) { ++ var attrs = this.attrs(node); ++ ++ if (node.emojiName) { ++ attrs.push(["data-emoji-name", this.esc(node.emojiName)]); ++ attrs.push(["data-literal", this.esc(node.literal)]); ++ } ++ ++ this.tag("span", attrs); ++ } else { ++ this.tag("/span"); ++ } ++} ++ ++function hashtag(node, entering) { ++ if (entering) { ++ var attrs = this.attrs(node); ++ ++ if (node.hashtag) { ++ attrs.push(["data-hashtag", this.esc(node.hashtag)]); ++ } ++ ++ this.tag("span", attrs); ++ } else { ++ this.tag("/span"); ++ } ++} ++ + function image(node, entering) { + if (entering) { + if (this.disableTags === 0) { +@@ -92,6 +149,15 @@ function image(node, entering) { + if (node.title) { + this.lit('" title="' + this.esc(node.title)); + } ++ if (node.size) { ++ if (node.size.width) { ++ this.lit('" width="' + node.size.width); ++ } ++ ++ if (node.size.height) { ++ this.lit('" height="' + node.size.height); ++ } ++ } + this.lit('" />'); + } + } +@@ -105,6 +171,10 @@ function strong(node, entering) { + this.tag(entering ? "strong" : "/strong"); + } + ++function del(node, entering) { ++ this.tag(entering ? "del" : "/del"); ++} ++ + function paragraph(node, entering) { + var grandparent = node.parent.parent, + attrs = this.attrs(node); +@@ -204,6 +274,63 @@ function item(node, entering) { + } + } + ++function table(node, entering) { ++ var attrs = this.attrs(node); ++ if (entering) { ++ this.cr(); ++ this.tag("table", attrs); ++ this.cr(); ++ } else { ++ this.tag("/table"); ++ this.cr(); ++ } ++} ++ ++function table_row(node, entering) { ++ var attrs = this.attrs(node); ++ if (entering) { ++ if (node === node.parent.firstChild) { ++ this.cr(); ++ this.tag("thead"); ++ this.cr(); ++ } else if (node === node.parent.firstChild.next) { ++ this.cr(); ++ this.tag("tbody"); ++ this.cr(); ++ } ++ ++ this.cr(); ++ this.tag("tr", attrs); ++ this.cr(); ++ } else { ++ this.tag("/tr"); ++ ++ if (node === node.parent.firstChild) { ++ this.cr(); // we're not consistent about how these tags are laid out because this is what GitHub does ++ this.tag("/thead"); ++ } else if (node === node.parent.lastChild) { ++ this.tag("/tbody"); ++ } ++ } ++} ++ ++function table_cell(node, entering) { ++ var attrs = this.attrs(node); ++ ++ var tag = node.isHeading ? "th" : "td"; ++ ++ if (node.align) { ++ attrs.push(["align", node.align]); ++ } ++ ++ if (entering) { ++ this.tag(tag, attrs); ++ } else { ++ this.tag("/" + tag); ++ this.cr(); ++ } ++} ++ + function html_inline(node) { + if (this.options.safe) { + this.lit(""); +@@ -275,9 +402,14 @@ HtmlRenderer.prototype.html_block = html_block; + HtmlRenderer.prototype.softbreak = softbreak; + HtmlRenderer.prototype.linebreak = linebreak; + HtmlRenderer.prototype.link = link; ++HtmlRenderer.prototype.at_mention = at_mention; ++HtmlRenderer.prototype.channel_link = channel_link; ++HtmlRenderer.prototype.emoji = emoji; ++HtmlRenderer.prototype.hashtag = hashtag; + HtmlRenderer.prototype.image = image; + HtmlRenderer.prototype.emph = emph; + HtmlRenderer.prototype.strong = strong; ++HtmlRenderer.prototype.del = del; + HtmlRenderer.prototype.paragraph = paragraph; + HtmlRenderer.prototype.heading = heading; + HtmlRenderer.prototype.code = code; +@@ -286,6 +418,9 @@ HtmlRenderer.prototype.thematic_break = thematic_break; + HtmlRenderer.prototype.block_quote = block_quote; + HtmlRenderer.prototype.list = list; + HtmlRenderer.prototype.item = item; ++HtmlRenderer.prototype.table = table; ++HtmlRenderer.prototype.table_row = table_row; ++HtmlRenderer.prototype.table_cell = table_cell; + HtmlRenderer.prototype.custom_inline = custom_inline; + HtmlRenderer.prototype.custom_block = custom_block; + +diff --git a/node_modules/commonmark/lib/render/xml.js b/node_modules/commonmark/lib/render/xml.js +index f39331a..b669481 100644 +--- a/node_modules/commonmark/lib/render/xml.js ++++ b/node_modules/commonmark/lib/render/xml.js +@@ -103,6 +103,13 @@ function render(ast) { + attrs.push(["destination", node.destination]); + attrs.push(["title", node.title]); + break; ++ case "at_mention": ++ attrs.push(["mention-name", node.mentionName]); ++ break; ++ case "emoji": ++ attrs.push(["emoji-name", node.emojiName]); ++ attrs.push(["literal", node.literal]); ++ break; + case "custom_inline": + case "custom_block": + attrs.push(["on_enter", node.onEnter]); diff --git a/patches/commonmark-react-renderer+4.3.5.patch b/patches/commonmark-react-renderer+4.3.5.patch new file mode 100644 index 0000000000..54b40bb33a --- /dev/null +++ b/patches/commonmark-react-renderer+4.3.5.patch @@ -0,0 +1,351 @@ +diff --git a/node_modules/commonmark-react-renderer/src/commonmark-react-renderer.js b/node_modules/commonmark-react-renderer/src/commonmark-react-renderer.js +index 91b0001..05b80fa 100644 +--- a/node_modules/commonmark-react-renderer/src/commonmark-react-renderer.js ++++ b/node_modules/commonmark-react-renderer/src/commonmark-react-renderer.js +@@ -12,7 +12,12 @@ var typeAliases = { + htmlblock: 'html_block', + htmlinline: 'html_inline', + codeblock: 'code_block', +- hardbreak: 'linebreak' ++ hardbreak: 'linebreak', ++ atmention: 'at_mention', ++ channellink: 'channel_link', ++ editedindicator: 'edited_indicator', ++ tableRow: 'table_row', ++ tableCell: 'table_cell' + }; + + var defaultRenderers = { +@@ -24,6 +29,7 @@ var defaultRenderers = { + link: 'a', + paragraph: 'p', + strong: 'strong', ++ del: 'del', + thematic_break: 'hr', // eslint-disable-line camelcase + + html_block: HtmlRenderer, // eslint-disable-line camelcase +@@ -52,7 +58,71 @@ var defaultRenderers = { + }, + + text: null, +- softbreak: null ++ softbreak: null, ++ ++ at_mention: function AtMention(props) { ++ var newProps = getCoreProps(props); ++ if (props.username) { ++ props['data-mention-name'] = props.username; ++ } ++ ++ return createElement('span', newProps, props.children); ++ }, ++ channel_link: function ChannelLink(props) { ++ var newProps = getCoreProps(props); ++ if (props.channelName) { ++ props['data-channel-name'] = props.channelName; ++ } ++ ++ return createElement('span', newProps, props.children); ++ }, ++ emoji: function Emoji(props) { ++ var newProps = getCoreProps(props); ++ if (props.emojiName) { ++ props['data-emoji-name'] = props.emojiName; ++ } ++ ++ return createElement('span', newProps, props.children); ++ }, ++ edited_indicator: null, ++ hashtag: function Hashtag(props) { ++ var newProps = getCoreProps(props); ++ if (props.hashtag) { ++ props['data-hashtag'] = props.hashtag; ++ } ++ ++ return createElement('span', newProps, props.children); ++ }, ++ mention_highlight: function MentionHighlight(props) { ++ var newProps = getCoreProps(props); ++ newProps['data-mention-highlight'] = 'true'; ++ return createElement('span', newProps, props.children); ++ }, ++ search_highlight: function SearchHighlight(props) { ++ var newProps = getCoreProps(props); ++ newProps['data-search-highlight'] = 'true'; ++ return createElement('span', newProps, props.children); ++ }, ++ ++ table: function Table(props) { ++ var childrenArray = React.Children.toArray(props.children); ++ ++ var children = [createElement('thead', {'key': 'thead'}, childrenArray.slice(0, 1))]; ++ if (childrenArray.length > 1) { ++ children.push(createElement('tbody', {'key': 'tbody'}, childrenArray.slice(1))); ++ } ++ ++ return createElement('table', getCoreProps(props), children); ++ }, ++ table_row: 'tr', ++ table_cell: function TableCell(props) { ++ var newProps = getCoreProps(props); ++ if (props.align) { ++ newProps.className = 'align-' + props.align; ++ } ++ ++ return createElement('td', newProps, props.children); ++ } + }; + + var coreTypes = Object.keys(defaultRenderers); +@@ -147,7 +217,7 @@ function flattenPosition(pos) { + } + + // For some nodes, we want to include more props than for others +-function getNodeProps(node, key, opts, renderer) { ++function getNodeProps(node, key, opts, renderer, context) { + var props = { key: key }, undef; + + // `sourcePos` is true if the user wants source information (line/column info from markdown source) +@@ -194,16 +264,49 @@ function getNodeProps(node, key, opts, renderer) { + + // Commonmark treats image description as children. We just want the text + props.alt = node.react.children.join(''); +- node.react.children = undef; + break; + case 'list': + props.start = node.listStart; + props.type = node.listType; + props.tight = node.listTight; + break; ++ case 'at_mention': ++ props.mentionName = node.mentionName; ++ break; ++ case 'channel_link': ++ props.channelName = node.channelName; ++ break; ++ case 'emoji': ++ props.emojiName = node.emojiName; ++ props.literal = node.literal; ++ break; ++ case 'hashtag': ++ props.hashtag = node.hashtag; ++ break; ++ case 'paragraph': ++ props.first = !(node._prev && node._prev.type === 'paragraph'); ++ props.last = !(node._next && node._next.type === 'paragraph'); ++ break; ++ case 'edited_indicator': ++ break; ++ case 'table': ++ props.numRows = countRows(node); ++ props.numColumns = countColumns(node); ++ break; ++ case 'table_row': ++ props.isHeading = node.isHeading; ++ break; ++ case 'table_cell': ++ props.isHeading = node.isHeading; ++ props.align = node.align; ++ break; + default: + } + ++ if (opts.getExtraPropsForNode) { ++ props = Object.assign(props, opts.getExtraPropsForNode(node)); ++ } ++ + if (typeof renderer !== 'string') { + props.literal = node.literal; + } +@@ -213,9 +316,29 @@ function getNodeProps(node, key, opts, renderer) { + props.children = children.reduce(reduceChildren, []) || null; + } + ++ props.context = context.slice(); ++ + return props; + } + ++function countChildren(node) { ++ var count = 0; ++ ++ for (var child = node.firstChild; child; child = child.next) { ++ count += 1; ++ } ++ ++ return count; ++} ++ ++function countRows(table) { ++ return countChildren(table); ++} ++ ++function countColumns(table) { ++ return countChildren(table.firstChild); ++} ++ + function getPosition(node) { + if (!node) { + return null; +@@ -238,26 +361,23 @@ function renderNodes(block) { + transformLinkUri: this.transformLinkUri, + transformImageUri: this.transformImageUri, + softBreak: this.softBreak, +- linkTarget: this.linkTarget ++ linkTarget: this.linkTarget, ++ getExtraPropsForNode: this.getExtraPropsForNode + }; + +- var e, node, entering, leaving, type, doc, key, nodeProps, prevPos, prevIndex = 0; ++ var e; ++ var doc; ++ var context = []; ++ var index = 0; + while ((e = walker.next())) { +- var pos = getPosition(e.node.sourcepos ? e.node : e.node.parent); +- if (prevPos === pos) { +- key = pos + prevIndex; +- prevIndex++; +- } else { +- key = pos; +- prevIndex = 0; +- } ++ var key = String(index); ++ index += 1; + +- prevPos = pos; +- entering = e.entering; +- leaving = !entering; +- node = e.node; +- type = normalizeTypeName(node.type); +- nodeProps = null; ++ var entering = e.entering; ++ var leaving = !entering; ++ var node = e.node; ++ var type = normalizeTypeName(node.type); ++ var nodeProps = null; + + // If we have not assigned a document yet, assume the current node is just that + if (!doc) { +@@ -270,7 +390,7 @@ function renderNodes(block) { + } + + // In HTML, we don't want paragraphs inside of list items +- if (type === 'paragraph' && isGrandChildOfList(node)) { ++ if (!this.renderParagraphsInLists && type === 'paragraph' && isGrandChildOfList(node)) { + continue; + } + +@@ -289,7 +409,7 @@ function renderNodes(block) { + if (this.allowNode && (isCompleteParent || !node.isContainer)) { + var nodeChildren = isCompleteParent ? node.react.children : []; + +- nodeProps = getNodeProps(node, key, propOptions, renderer); ++ nodeProps = getNodeProps(node, key, propOptions, renderer, context); + disallowedByUser = !this.allowNode({ + type: pascalCase(type), + renderer: this.renderers[type], +@@ -298,6 +418,30 @@ function renderNodes(block) { + }); + } + ++ if (node.isContainer) { ++ var contextType = node.type; ++ if (node.level) { ++ contextType = node.type + node.level; ++ } else if (node.type === 'table_row' && node.parent.firstChild === node) { ++ contextType = 'table_header_row'; ++ } else { ++ contextType = node.type; ++ } ++ ++ if (entering) { ++ context.push(contextType); ++ } else { ++ var popped = context.pop(); ++ ++ if (!popped) { ++ throw new Error('Attempted to pop empty stack'); ++ } else if (!popped === contextType) { ++ throw new Error('Popped context of type `' + pascalCase(popped) + ++ '` when expecting context of type `' + pascalCase(contextType) + '`'); ++ } ++ } ++ } ++ + if (!isDocument && (disallowedByUser || disallowedByConfig)) { + if (!this.unwrapDisallowed && entering && node.isContainer) { + walker.resumeAt(node, false); +@@ -313,15 +457,25 @@ function renderNodes(block) { + ); + } + +- if (node.isContainer && entering) { ++ if (context.length > this.maxDepth) { ++ // Do nothing, we should not regularly be nested this deeply and we don't want to cause React to ++ // overflow the stack ++ } else if (node.isContainer && entering) { + node.react = { + component: renderer, + props: {}, + children: [] + }; + } else { +- var childProps = nodeProps || getNodeProps(node, key, propOptions, renderer); +- if (renderer) { ++ var childProps = nodeProps || getNodeProps(node, key, propOptions, renderer, context); ++ if (renderer === ReactRenderer.forwardChildren) { ++ if (childProps.children) { ++ for (var i = 0; i < childProps.children.length; i++) { ++ var child = childProps.children[i]; ++ addChild(node, child); ++ } ++ } ++ } else if (renderer) { + childProps = typeof renderer === 'string' + ? childProps + : assign(childProps, {nodeKey: childProps.key}); +@@ -341,6 +495,10 @@ function renderNodes(block) { + } + } + ++ if (context.length !== 0) { ++ throw new Error('Expected context to be empty after rendering, but has `' + context.join(', ') + '`'); ++ } ++ + return doc.react.children; + } + +@@ -401,21 +559,31 @@ function ReactRenderer(options) { + renderers: assign({}, defaultRenderers, normalizeRenderers(opts.renderers)), + escapeHtml: Boolean(opts.escapeHtml), + skipHtml: Boolean(opts.skipHtml), ++ renderParagraphsInLists: Boolean(opts.renderParagraphsInLists), + transformLinkUri: linkFilter, + transformImageUri: imageFilter, + allowNode: opts.allowNode, + allowedTypes: allowedTypes, + unwrapDisallowed: Boolean(opts.unwrapDisallowed), + render: renderNodes, +- linkTarget: opts.linkTarget || false ++ linkTarget: opts.linkTarget || false, ++ maxDepth: opts.maxDepth || 30, ++ getExtraPropsForNode: opts.getExtraPropsForNode + }; + } + ++function forwardChildren(props) { ++ return props.children; ++} ++ + ReactRenderer.uriTransformer = defaultLinkUriFilter; + ReactRenderer.types = coreTypes.map(pascalCase); + ReactRenderer.renderers = coreTypes.reduce(function(renderers, type) { + renderers[pascalCase(type)] = defaultRenderers[type]; + return renderers; + }, {}); ++ReactRenderer.countRows = countRows; ++ReactRenderer.countColumns = countColumns; ++ReactRenderer.forwardChildren = forwardChildren; + + module.exports = ReactRenderer; diff --git a/patches/react-native-fast-image+8.3.4.patch b/patches/react-native-fast-image+8.3.5.patch similarity index 100% rename from patches/react-native-fast-image+8.3.4.patch rename to patches/react-native-fast-image+8.3.5.patch diff --git a/patches/react-native-navigation+7.13.0.patch b/patches/react-native-navigation+7.17.1.patch similarity index 62% rename from patches/react-native-navigation+7.13.0.patch rename to patches/react-native-navigation+7.17.1.patch index 4fe498edf8..6353c3a1e2 100644 --- a/patches/react-native-navigation+7.13.0.patch +++ b/patches/react-native-navigation+7.17.1.patch @@ -1,5 +1,5 @@ diff --git a/node_modules/react-native-navigation/lib/android/app/src/main/java/com/reactnativenavigation/react/NavigationModule.java b/node_modules/react-native-navigation/lib/android/app/src/main/java/com/reactnativenavigation/react/NavigationModule.java -index 4e4f498..b7ddd86 100644 +index 3b4e398..8e91f6b 100644 --- a/node_modules/react-native-navigation/lib/android/app/src/main/java/com/reactnativenavigation/react/NavigationModule.java +++ b/node_modules/react-native-navigation/lib/android/app/src/main/java/com/reactnativenavigation/react/NavigationModule.java @@ -55,14 +55,18 @@ public class NavigationModule extends ReactContextBaseJavaModule { @@ -29,7 +29,7 @@ index 4e4f498..b7ddd86 100644 } }); } -@@ -201,8 +205,12 @@ public class NavigationModule extends ReactContextBaseJavaModule { +@@ -210,8 +214,12 @@ public class NavigationModule extends ReactContextBaseJavaModule { protected void handle(Runnable task) { UiThread.post(() -> { @@ -44,6 +44,32 @@ index 4e4f498..b7ddd86 100644 } }); } +diff --git a/node_modules/react-native-navigation/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/viewcontroller/ViewController.java b/node_modules/react-native-navigation/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/viewcontroller/ViewController.java +index 1e5751e..f921605 100644 +--- a/node_modules/react-native-navigation/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/viewcontroller/ViewController.java ++++ b/node_modules/react-native-navigation/lib/android/app/src/main/java/com/reactnativenavigation/viewcontrollers/viewcontroller/ViewController.java +@@ -1,10 +1,12 @@ + package com.reactnativenavigation.viewcontrollers.viewcontroller; + + import android.app.Activity; ++import android.content.Context; + import android.view.View; + import android.view.ViewGroup; + import android.view.ViewManager; + import android.view.ViewTreeObserver; ++import android.view.inputmethod.InputMethodManager; + + import androidx.annotation.CallSuper; + import androidx.annotation.CheckResult; +@@ -276,6 +278,8 @@ public abstract class ViewController implements ViewTreeObs + ((Destroyable) view).destroy(); + } + if (view != null) { ++ InputMethodManager imm = (InputMethodManager)activity.getSystemService(Context.INPUT_METHOD_SERVICE); ++ imm.hideSoftInputFromWindow(view.getWindowToken(), 0); + view.getViewTreeObserver().removeOnGlobalLayoutListener(this); + view.setOnHierarchyChangeListener(null); + if (view.getParent() instanceof ViewGroup) { diff --git a/node_modules/react-native-navigation/lib/ios/RNNOverlayWindow.m b/node_modules/react-native-navigation/lib/ios/RNNOverlayWindow.m index 815e1c6..a35a087 100644 --- a/node_modules/react-native-navigation/lib/ios/RNNOverlayWindow.m @@ -68,19 +94,17 @@ index 815e1c6..a35a087 100644 } diff --git a/node_modules/react-native-navigation/lib/ios/RNNViewLocation.m b/node_modules/react-native-navigation/lib/ios/RNNViewLocation.m -index 6b9981d..f725701 100644 +index 2e60123..56830c8 100644 --- a/node_modules/react-native-navigation/lib/ios/RNNViewLocation.m +++ b/node_modules/react-native-navigation/lib/ios/RNNViewLocation.m -@@ -31,11 +31,7 @@ +@@ -21,8 +21,8 @@ + self.toBounds = [self convertViewBounds:toElement]; + self.fromCenter = [self convertViewCenter:fromElement]; + self.toCenter = [self convertViewCenter:toElement]; +- self.fromPath = [self resolveViewPath:fromElement withSuperView:fromElement.superview]; +- self.toPath = [self resolveViewPath:toElement withSuperView:toElement.superview]; ++ self.fromPath = fromElement.bounds; ++ self.toPath = toElement.bounds; - - (CATransform3D)getTransform:(UIView *)view { - if (view) { -- if (!CATransform3DEqualToTransform(view.layer.transform, CATransform3DIdentity)) { -- return view.layer.transform; -- } else { -- return [self getTransform:view.superview]; -- } -+ return view.layer.transform; - } - - return CATransform3DIdentity; + return self; + } diff --git a/patches/rn-fetch-blob+0.12.0.patch b/patches/rn-fetch-blob+0.12.0.patch deleted file mode 100644 index a97a6efe8d..0000000000 --- a/patches/rn-fetch-blob+0.12.0.patch +++ /dev/null @@ -1,7792 +0,0 @@ -diff --git a/node_modules/rn-fetch-blob/android/build.gradle b/node_modules/rn-fetch-blob/android/build.gradle -index a4ca7a4..f3cd184 100644 ---- a/node_modules/rn-fetch-blob/android/build.gradle -+++ b/node_modules/rn-fetch-blob/android/build.gradle -@@ -37,10 +37,13 @@ android { - } - productFlavors { - } -+ compileOptions { -+ sourceCompatibility 1.8 -+ targetCompatibility 1.8 -+ } - } - - dependencies { - implementation "com.facebook.react:react-native:${safeExtGet('reactNativeVersion', '+')}" -- //compile 'com.squareup.okhttp3:okhttp:+' -- //{RNFetchBlob_PRE_0.28_DEPDENDENCY} -+ implementation "com.squareup.okhttp3:okhttp:3.13.1" - } -diff --git a/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlob.java b/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlob.java -index 602d51d..78b7929 100644 ---- a/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlob.java -+++ b/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlob.java -@@ -179,6 +179,11 @@ public class RNFetchBlob extends ReactContextBaseJavaModule { - RNFetchBlobFS.exists(path, callback); - } - -+ @ReactMethod -+ public void existsWithDiffExt(String path, Callback callback) { -+ RNFetchBlobFS.existsWithDiffExt(path, callback); -+ } -+ - @ReactMethod - public void cp(final String path, final String dest, final Callback callback) { - threadPool.execute(new Runnable() { -diff --git a/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobBody.java b/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobBody.java -index adbe48b..b87d383 100644 ---- a/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobBody.java -+++ b/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobBody.java -@@ -195,8 +195,8 @@ class RNFetchBlobBody extends RequestBody{ - ReactApplicationContext ctx = RNFetchBlob.RCTContext; - - for(FormField field : fields) { -- String data = field.data; -- String name = field.name; -+ String data = field.data.trim(); -+ String name = field.name.trim(); - // skip invalid fields - if(name == null || data == null) - continue; -@@ -256,8 +256,7 @@ class RNFetchBlobBody extends RequestBody{ - } - // data field - else { -- header += "Content-Disposition: form-data; name=\"" + name + "\"\r\n"; -- header += "Content-Type: " + field.mime + "\r\n\r\n"; -+ header += "Content-Disposition: form-data; name=\"" + name + "\"\r\n\r\n"; - os.write(header.getBytes()); - byte[] fieldData = field.data.getBytes(); - os.write(fieldData); -diff --git a/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobConst.java b/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobConst.java -index b86902a..f1a16de 100644 ---- a/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobConst.java -+++ b/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobConst.java -@@ -6,6 +6,7 @@ public class RNFetchBlobConst { - public static final String EVENT_PROGRESS = "RNFetchBlobProgress"; - public static final String EVENT_HTTP_STATE = "RNFetchBlobState"; - public static final String EVENT_MESSAGE = "RNFetchBlobMessage"; -+ public static final String EVENT_SSL_TRUST_MESSAGE = "RNFetchBlobSslProblem"; - public static final String FILE_PREFIX = "RNFetchBlob-file://"; - public static final String CONTENT_PREFIX = "RNFetchBlob-content://"; - public static final String FILE_PREFIX_BUNDLE_ASSET = "bundle-assets://"; -diff --git a/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobFS.java b/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobFS.java -index a4d7015..f430865 100644 ---- a/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobFS.java -+++ b/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobFS.java -@@ -29,6 +29,7 @@ import java.util.ArrayList; - import java.util.HashMap; - import java.util.Map; - import java.util.UUID; -+import java.util.regex.Pattern; - - class RNFetchBlobFS { - -@@ -677,6 +678,46 @@ class RNFetchBlobFS { - } - } - -+ /** -+ * Check if the file exists with a different extension and, if so, -+ * return the file path. -+ * @param path Path to check -+ * @param callback JS context callback -+ */ -+ static void existsWithDiffExt(String path, Callback callback) { -+ File file = new File(path); -+ String parent = file.getParent(); -+ if (parent == null) { -+ callback.invoke(""); -+ return; -+ } -+ -+ File directory = new File(parent); -+ if (!directory.exists()) { -+ callback.invoke(""); -+ return; -+ } -+ -+ String filename = file.getName(); -+ int extIndex = filename.lastIndexOf("."); -+ filename = extIndex == -1 ? filename : filename.substring(0, extIndex); -+ -+ final Pattern p = Pattern.compile(filename + "\\.[a-z]{3,4}"); -+ File[] files = directory.listFiles(new FileFilter() { -+ @Override -+ public boolean accept(File file) { -+ return p.matcher(file.getName()).matches(); -+ } -+ }); -+ -+ String filePath = ""; -+ if (files != null && files.length != 0) { -+ filePath = files[0].getAbsolutePath(); -+ } -+ -+ callback.invoke(filePath); -+ } -+ - /** - * List content of folder - * @param path Target folder -diff --git a/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobReq.java b/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobReq.java -index a8abd71..9078855 100644 ---- a/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobReq.java -+++ b/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobReq.java -@@ -233,7 +233,7 @@ public class RNFetchBlobReq extends BroadcastReceiver implements Runnable { - if (this.options.trusty) { - clientBuilder = RNFetchBlobUtils.getUnsafeOkHttpClient(client); - } else { -- clientBuilder = client.newBuilder(); -+ clientBuilder = RNFetchBlobUtils.newOkHttpClientBuilder(client); // Emits warning if SSL connection problem encountered. - } - - // wifi only, need ACCESS_NETWORK_STATE permission -@@ -407,6 +407,7 @@ public class RNFetchBlobReq extends BroadcastReceiver implements Runnable { - extended = new RNFetchBlobFileResp( - RNFetchBlob.RCTContext, - taskId, -+ originalResponse.headers(), - originalResponse.body(), - destPath, - options.overwrite); -@@ -556,16 +557,13 @@ public class RNFetchBlobReq extends BroadcastReceiver implements Runnable { - return; - } - try { -- encoder.encode(ByteBuffer.wrap(b).asCharBuffer()); -- // if the data contains invalid characters the following lines will be -- // skipped. -+ // Trying to decode the response directly as UTF-8. - String utf8 = new String(b); - callback.invoke(null, RNFetchBlobConst.RNFB_RESPONSE_UTF8, utf8); - } -- // This usually mean the data is contains invalid unicode characters but still valid data, -- // it's binary data, so send it as a normal string -- catch(CharacterCodingException ignored) { -- -+ // This usually mean the data is contains invalid unicode characters, it's -+ // binary data -+ catch(Exception ignored) { - if(responseFormat == ResponseFormat.UTF8) { - String utf8 = new String(b); - callback.invoke(null, RNFetchBlobConst.RNFB_RESPONSE_UTF8, utf8); -@@ -591,7 +589,19 @@ public class RNFetchBlobReq extends BroadcastReceiver implements Runnable { - // ignored.printStackTrace(); - } - -- RNFetchBlobFileResp rnFetchBlobFileResp = (RNFetchBlobFileResp) responseBody; -+ RNFetchBlobFileResp rnFetchBlobFileResp; -+ -+ try { -+ rnFetchBlobFileResp = (RNFetchBlobFileResp) responseBody; -+ } catch (ClassCastException ex) { -+ // unexpected response type -+ if (responseBody != null) { -+ callback.invoke("Unexpected FileStorage response file: " + responseBody.toString(), null); -+ } else { -+ callback.invoke("Unexpected FileStorage response with no file.", null); -+ } -+ return; -+ } - - if(rnFetchBlobFileResp != null && !rnFetchBlobFileResp.isDownloadComplete()){ - callback.invoke("Download interrupted.", null); -diff --git a/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobUtils.java b/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobUtils.java -index ab35fdd..a856e05 100644 ---- a/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobUtils.java -+++ b/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/RNFetchBlobUtils.java -@@ -6,12 +6,17 @@ import com.facebook.react.modules.core.DeviceEventManagerModule; - - import java.security.MessageDigest; - import java.security.cert.CertificateException; -+import java.security.KeyStore; -+import java.security.NoSuchAlgorithmException; -+import java.security.KeyStoreException; - - import javax.net.ssl.HostnameVerifier; -+import javax.net.ssl.HttpsURLConnection; - import javax.net.ssl.SSLContext; - import javax.net.ssl.SSLSession; - import javax.net.ssl.SSLSocketFactory; - import javax.net.ssl.TrustManager; -+import javax.net.ssl.TrustManagerFactory; - import javax.net.ssl.X509TrustManager; - - import okhttp3.OkHttpClient; -@@ -43,14 +48,16 @@ public class RNFetchBlobUtils { - - } - -- public static void emitWarningEvent(String data) { -+ public static void emitWarningEvent(String data, String... messageType) { -+ String msgType = messageType.length > 0 ? messageType[0] : RNFetchBlobConst.EVENT_MESSAGE; -+ - WritableMap args = Arguments.createMap(); - args.putString("event", "warn"); - args.putString("detail", data); - - // emit event to js context - RNFetchBlob.RCTContext.getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class) -- .emit(RNFetchBlobConst.EVENT_MESSAGE, args); -+ .emit(msgType, args); - } - - public static OkHttpClient.Builder getUnsafeOkHttpClient(OkHttpClient client) { -@@ -92,4 +99,72 @@ public class RNFetchBlobUtils { - throw new RuntimeException(e); - } - } -+ -+ // Uses default, secure trust manager for connection validation. -+ public static OkHttpClient.Builder newOkHttpClientBuilder(OkHttpClient client) { -+ try { -+ final X509TrustManager defaultTrustManager = getDefaultTrustManager(); -+ -+ final X509TrustManager x509TrustManager = new X509TrustManager() { -+ @Override -+ public void checkClientTrusted(java.security.cert.X509Certificate[] chain, String authType) throws CertificateException { -+ defaultTrustManager.checkClientTrusted(chain, authType); -+ } -+ -+ @Override -+ public void checkServerTrusted(java.security.cert.X509Certificate[] chain, final String authType) throws CertificateException { -+ try { -+ defaultTrustManager.checkServerTrusted(chain, authType); -+ } catch(CertificateException ce) { -+ emitWarningEvent("RNFetchBlob custom: Server presented problem with SSL handshake.", RNFetchBlobConst.EVENT_SSL_TRUST_MESSAGE); -+ throw ce; -+ } -+ } -+ -+ @Override -+ public java.security.cert.X509Certificate[] getAcceptedIssuers() { -+ return defaultTrustManager.getAcceptedIssuers(); -+ } -+ }; -+ -+ final TrustManager[] trustManagers = new TrustManager[]{x509TrustManager}; -+ -+ final SSLContext sslContext = SSLContext.getInstance("TLS"); -+ sslContext.init(null, trustManagers, new java.security.SecureRandom()); -+ -+ final SSLSocketFactory sslSocketFactory = sslContext.getSocketFactory(); -+ OkHttpClient.Builder builder = client.newBuilder(); -+ builder.sslSocketFactory(sslSocketFactory, x509TrustManager); -+ -+ builder.hostnameVerifier(new HostnameVerifier() { -+ @Override -+ public boolean verify(String hostname, SSLSession session) { -+ HostnameVerifier hv = HttpsURLConnection.getDefaultHostnameVerifier(); -+ boolean result = hv.verify(hostname, session); -+ if (!result) { -+ emitWarningEvent("RNFetchBlob custom: Server presented problem with hostname verification.", RNFetchBlobConst.EVENT_SSL_TRUST_MESSAGE); -+ } -+ return result; -+ } -+ }); -+ -+ return builder; -+ -+ } catch (Exception e) { -+ throw new RuntimeException(e); -+ } -+ } -+ -+ public static X509TrustManager getDefaultTrustManager() throws NoSuchAlgorithmException, KeyStoreException { -+ TrustManagerFactory trustManagerFactory = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm()); -+ trustManagerFactory.init((KeyStore) null); // Using null here initialises the TrustManagerFactory with the default trust store. -+ -+ X509TrustManager defaultTrustManager = null; -+ for (TrustManager tm : trustManagerFactory.getTrustManagers()) { -+ if (tm instanceof X509TrustManager) { -+ defaultTrustManager = (X509TrustManager) tm; -+ } -+ } -+ return defaultTrustManager; -+ } - } -diff --git a/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/Response/RNFetchBlobFileResp.java b/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/Response/RNFetchBlobFileResp.java -index 2470eef..4e92989 100644 ---- a/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/Response/RNFetchBlobFileResp.java -+++ b/node_modules/rn-fetch-blob/android/src/main/java/com/RNFetchBlob/Response/RNFetchBlobFileResp.java -@@ -14,6 +14,7 @@ import java.io.File; - import java.io.FileOutputStream; - import java.io.IOException; - -+import okhttp3.Headers; - import okhttp3.MediaType; - import okhttp3.ResponseBody; - import okio.Buffer; -@@ -28,6 +29,7 @@ import okio.Timeout; - public class RNFetchBlobFileResp extends ResponseBody { - - String mTaskId; -+ Headers headers; - ResponseBody originalBody; - String mPath; - long bytesDownloaded = 0; -@@ -35,10 +37,11 @@ public class RNFetchBlobFileResp extends ResponseBody { - FileOutputStream ofStream; - boolean isEndMarkerReceived; - -- public RNFetchBlobFileResp(ReactApplicationContext ctx, String taskId, ResponseBody body, String path, boolean overwrite) throws IOException { -+ public RNFetchBlobFileResp(ReactApplicationContext ctx, String taskId, Headers headers, ResponseBody body, String path, boolean overwrite) throws IOException { - super(); - this.rctContext = ctx; - this.mTaskId = taskId; -+ this.headers = headers; - this.originalBody = body; - assert path != null; - this.mPath = path; -@@ -67,7 +70,18 @@ public class RNFetchBlobFileResp extends ResponseBody { - - @Override - public long contentLength() { -- return originalBody.contentLength(); -+ long expectedBytes = originalBody.contentLength(); -+ String uncompressHeader = "X-Uncompressed-Content-Length"; -+ String uncompressedLength = headers.get(uncompressHeader); -+ if (uncompressedLength == null) { -+ uncompressedLength = headers.get(uncompressHeader.toLowerCase()); -+ } -+ -+ if (uncompressedLength != null && uncompressedLength.length() > 0) { -+ expectedBytes = Long.parseLong(uncompressedLength); -+ } -+ -+ return expectedBytes; - } - - public boolean isDownloadComplete() { -@@ -94,6 +108,7 @@ public class RNFetchBlobFileResp extends ResponseBody { - // End marker has been received for chunked download - isEndMarkerReceived = true; - } -+ - RNFetchBlobProgressConfig reportConfig = RNFetchBlobReq.getReportProgress(mTaskId); - - if (contentLength() != 0) { -diff --git a/node_modules/rn-fetch-blob/cba/index.js b/node_modules/rn-fetch-blob/cba/index.js -new file mode 100644 -index 0000000..f3730ac ---- /dev/null -+++ b/node_modules/rn-fetch-blob/cba/index.js -@@ -0,0 +1,7 @@ -+import {NativeModules} from 'react-native' -+ -+const RNFetchBlob = NativeModules.RNFetchBlob -+ -+export default { -+ selectCertificate: RNFetchBlob.selectCertificate -+} -diff --git a/node_modules/rn-fetch-blob/fs.js b/node_modules/rn-fetch-blob/fs.js -index 77bbe7a..c0292ec 100644 ---- a/node_modules/rn-fetch-blob/fs.js -+++ b/node_modules/rn-fetch-blob/fs.js -@@ -348,6 +348,27 @@ function exists(path: string): Promise { - - } - -+/** -+ * Check if the file exists with a different extension. -+ * @param {string} path Path to check -+ * @return {Promise} -+ */ -+function existsWithDiffExt(path: string): Promise { -+ return new Promise((resolve, reject) => { -+ if (typeof path !== 'string') { -+ return reject(addCode('EINVAL', new TypeError('Missing argument "path" '))) -+ } -+ try { -+ RNFetchBlob.existsWithDiffExt(path, (fileWithExt) => { -+ resolve(fileWithExt) -+ }) -+ }catch (err){ -+ reject(addCode('EUNSPECIFIED', new Error(err))) -+ } -+ }) -+ -+} -+ - function slice(src: string, dest: string, start: number, end: number): Promise { - if (typeof src !== 'string' || typeof dest !== 'string') { - return reject(addCode('EINVAL', new TypeError('Missing argument "src" and/or "destination"'))) -@@ -419,6 +440,7 @@ export default { - readFile, - hash, - exists, -+ existsWithDiffExt, - createFile, - isDir, - stat, -@@ -427,5 +449,5 @@ export default { - dirs, - slice, - asset, -- df -+ df, - } -diff --git a/node_modules/rn-fetch-blob/index.d.ts b/node_modules/rn-fetch-blob/index.d.ts -index 58dc9e1..7a2bc3f 100644 ---- a/node_modules/rn-fetch-blob/index.d.ts -+++ b/node_modules/rn-fetch-blob/index.d.ts -@@ -627,6 +627,8 @@ export interface RNFetchBlobConfig { - * Fix IOS request timeout issue #368 by change default request setting to defaultSessionConfiguration, and make backgroundSessionConfigurationWithIdentifier optional - */ - IOSBackgroundTask?: boolean; -+ -+ certificate?: string; - } - - export interface AddAndroidDownloads { -diff --git a/node_modules/rn-fetch-blob/index.js b/node_modules/rn-fetch-blob/index.js -index 8ab5e96..66b0b60 100644 ---- a/node_modules/rn-fetch-blob/index.js -+++ b/node_modules/rn-fetch-blob/index.js -@@ -25,6 +25,8 @@ import _ from 'lodash' - import android from './android' - import ios from './ios' - import JSONStream from './json-stream' -+import cba from './cba'; -+ - const { - RNFetchBlobSession, - readStream, -@@ -574,5 +576,6 @@ export default { - fs, - wrap, - polyfill, -- JSONStream -+ JSONStream, -+ cba, - } -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer.storyboard b/node_modules/rn-fetch-blob/ios/KeyShareConsumer.storyboard -new file mode 100644 -index 0000000..19e70b9 ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer.storyboard -@@ -0,0 +1,74 @@ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -+ -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/CBAViewController.h b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/CBAViewController.h -new file mode 100644 -index 0000000..09017a1 ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/CBAViewController.h -@@ -0,0 +1,39 @@ -+// -+// ViewController.h -+// KeyShareConsumer -+ -+#import -+#import "KeyChainDataSource.h" -+#import -+ -+@interface CBAViewController : UIViewController -+{ -+ //provides information about key chain contents -+ KeyChainDataSource* keyChain; -+ -+ //table view to display summary of key chain contents -+ IBOutlet UITableView* tableViewKeyChain; -+ -+ //string to receive password entered by user -+ NSString* passwordFromUser; -+ -+ //buffer to receive PKCS12 file read from iCloud -+ NSData* pkcs12Data; -+} -+ -+//Callbacks used by KeyDetailViewController for iTunes file sharing -+- (void)import:(int)index; -+- (void)dismissWithoutImporting:(int)index; -+- (void)setCallback:(RCTResponseSenderBlock)callback; -+ -+//Button click handlers -+- (IBAction)openImportDocumentPicker:(id)sender; -+- (IBAction)close:(id)sender; -+ -+@property (nonatomic, retain) UITableView *tableViewKeyChain; -+@property (nonatomic, retain) KeyChainDataSource *keyChain; -+@property (nonatomic, strong) NSMutableArray *composeCallbacks; -+@property (nonatomic, assign) int imageWidth; -+ -+@end -+ -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/CBAViewController.m b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/CBAViewController.m -new file mode 100644 -index 0000000..102d2d6 ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/CBAViewController.m -@@ -0,0 +1,459 @@ -+// -+// ViewController.m -+// KeyShareConsumer -+ -+#import "CBAViewController.h" -+#import -+#import -+#import -+ -+#import "ZipFile.h" -+#import "FileInZipInfo.h" -+#import "ZipReadStream.h" -+ -+@interface CBAViewController () -+@end -+ -+@implementation CBAViewController -+@synthesize tableViewKeyChain; -+@synthesize keyChain; -+ -+//------------------------------------------------------------------------------ -+#pragma mark - View controller functions -+//------------------------------------------------------------------------------ -+- (void)viewDidLoad -+{ -+ [super viewDidLoad]; -+ -+ //Set this class as the table delegate -+ [tableViewKeyChain setDelegate:self]; -+ -+ //Create a key chain data source object targeting identities -+ keyChain = [[KeyChainDataSource alloc] initWithMode:KSM_Identities]; -+ -+ //load the key chain to serve as backend for the table view -+ [keyChain LoadKeyChainContents]; -+} -+ -+- (void)setCallback:(RCTResponseSenderBlock)callback { -+ if (_composeCallbacks == nil) { -+ _composeCallbacks = [[NSMutableArray alloc] init]; -+ } -+ -+ [_composeCallbacks addObject:callback]; -+} -+ -+- (RCTResponseSenderBlock)getCallback { -+ RCTResponseSenderBlock callback = [_composeCallbacks lastObject]; -+ [_composeCallbacks removeLastObject]; -+ return callback; -+} -+ -+- (void)didReceiveMemoryWarning -+{ -+ [super didReceiveMemoryWarning]; -+ // Dispose of any resources that can be recreated. -+} -+ -+//------------------------------------------------------------------------------ -+#pragma mark - Button click handlers -+//------------------------------------------------------------------------------ -+- (IBAction)openImportDocumentPicker:(id)sender -+{ -+ //Clear the pasteboard, since a password may be provided via that mechanism -+ UIPasteboard *pasteboard = [UIPasteboard generalPasteboard]; -+ [pasteboard setString:@""]; -+ passwordFromUser = @""; -+ -+ NSUserDefaults* standardDefaults = [NSUserDefaults standardUserDefaults]; -+ [standardDefaults synchronize]; -+ -+ NSMutableArray* utis = [[NSMutableArray alloc]init]; -+ -+ if([standardDefaults boolForKey:@"toggle_com_rsa_pkcs12"]) -+ [utis addObject:@"com.rsa.pkcs-12"]; -+ if([standardDefaults boolForKey:@"toggle_purebred_select_all"]) -+ [utis addObject:@"purebred.select.all"]; -+ if([standardDefaults boolForKey:@"toggle_purebred_select_all_user"]) -+ [utis addObject:@"purebred.select.all_user"]; -+ if([standardDefaults boolForKey:@"toggle_purebred_select_signature"]) -+ [utis addObject:@"purebred.select.signature"]; -+ if([standardDefaults boolForKey:@"toggle_purebred_select_encryption"]) -+ [utis addObject:@"purebred.select.encryption"]; -+ if([standardDefaults boolForKey:@"toggle_purebred_select_authentication"]) -+ [utis addObject:@"purebred.select.authentication"]; -+ if([standardDefaults boolForKey:@"toggle_purebred_select_device"]) -+ [utis addObject:@"purebred.select.device"]; -+ if([standardDefaults boolForKey:@"toggle_purebred_select_no_filter"]) -+ [utis addObject:@"purebred.select.no_filter"]; -+ if([standardDefaults boolForKey:@"toggle_purebred_zip_all"]) -+ [utis addObject:@"purebred.zip.all"]; -+ if([standardDefaults boolForKey:@"toggle_purebred_zip_all_user"]) -+ [utis addObject:@"purebred.zip.all_user"]; -+ if([standardDefaults boolForKey:@"toggle_purebred_zip_signature"]) -+ [utis addObject:@"purebred.zip.signature"]; -+ if([standardDefaults boolForKey:@"toggle_purebred_zip_encryption"]) -+ [utis addObject:@"purebred.zip.encryption"]; -+ if([standardDefaults boolForKey:@"toggle_purebred_zip_authentication"]) -+ [utis addObject:@"purebred.zip.authentication"]; -+ if([standardDefaults boolForKey:@"toggle_purebred_zip_device"]) -+ [utis addObject:@"purebred.zip.device"]; -+ if([standardDefaults boolForKey:@"toggle_purebred_zip_no_filter"]) -+ [utis addObject:@"purebred.zip.no_filter"]; -+ -+ if(0 == [utis count]) -+ [utis addObject:@"com.rsa.pkcs-12"]; -+ -+ //Display the UIDocumentPickerViewController to enable the user to select a key to import. Purebred Registration only works with UIDocumentPickerModeOpen mode. -+ UIDocumentPickerViewController *documentPicker = [[UIDocumentPickerViewController alloc] initWithDocumentTypes:utis inMode:UIDocumentPickerModeOpen]; -+ documentPicker.delegate = self; -+ documentPicker.modalPresentationStyle = UIModalPresentationFormSheet; -+ [self presentViewController:documentPicker animated:YES completion:nil]; -+} -+ -+- (IBAction)close:(id)sender -+{ -+ [self getCallback](@[[NSNull null]]); -+ [self dismissViewControllerAnimated:@YES completion:nil]; -+} -+ -+//------------------------------------------------------------------------------ -+#pragma mark - UIDocumentPickerViewController delegate functions -+//------------------------------------------------------------------------------ -+- (void)documentPickerWasCancelled:(UIDocumentPickerViewController *)controller -+{ -+ NSLog(@"Cancelled"); -+} -+ -+- (void)documentPicker:(UIDocumentPickerViewController *)controller didPickDocumentAtURL:(NSURL *)url { -+ if(controller.documentPickerMode == UIDocumentPickerModeOpen) -+ { -+ BOOL startAccessingWorked = [url startAccessingSecurityScopedResource]; -+ NSURL *ubiquityURL = [[NSFileManager defaultManager] URLForUbiquityContainerIdentifier:nil]; -+ NSLog(@"ubiquityURL %@",ubiquityURL); -+ NSLog(@"start %d",startAccessingWorked); -+ -+ NSFileCoordinator *fileCoordinator = [[NSFileCoordinator alloc] init]; -+ NSError *error; -+ [fileCoordinator coordinateReadingItemAtURL:url options:0 error:&error byAccessor:^(NSURL *newURL) { -+ NSData *data = [NSData dataWithContentsOfURL:newURL]; -+ -+ NSLog(@"error %@",error); -+ NSLog(@"data %@",data); -+ if(nil == data) -+ return; -+ -+ // Read the password from the pasteboard -+ UIPasteboard *pasteboard = [UIPasteboard generalPasteboard]; -+ NSString* pw = [pasteboard string]; -+ -+ if(nil != pw && 0 != [pw length]) -+ { -+ passwordFromUser = pw; -+ } -+ -+ pkcs12Data = data; -+ }]; -+ [url stopAccessingSecurityScopedResource]; -+ -+ if(nil == passwordFromUser || 0 == [passwordFromUser length]) -+ { -+ UIAlertView * alert = [[UIAlertView alloc] initWithTitle:@"Enter Password" message:@"Please enter the password for the selected PKCS #12 file" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles: @"OK", nil]; -+ alert.alertViewStyle = UIAlertViewStyleSecureTextInput; -+ [alert show]; -+ } -+ else{ -+ [self importP12:pkcs12Data password:passwordFromUser]; -+ } -+ } -+} -+ -+//------------------------------------------------------------------------------ -+#pragma mark - Table view data source -+//------------------------------------------------------------------------------ -+- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView -+{ -+ return 1; -+} -+ -+- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section -+{ -+ //The KeyChainDataSource is written to supply cells in groups where each group is an identity. -+ //This view is written to list each identity on one row. Thus, return the number of sections -+ //recognized by the data source. -+ return [keyChain numItems]; -+} -+#define FONT_SIZE 14.0f -+#define CELL_CONTENT_MARGIN 10.0f -+ -+- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath; -+{ -+ NSString *text = [keyChain GetIdentityNameAtIndex:indexPath.row]; -+ -+ CGRect frameRect = [tableView frame]; -+ CGSize constraint = CGSizeMake(frameRect.size.width - (CELL_CONTENT_MARGIN * 2), 20000.0f); -+ -+ CGSize size = [text boundingRectWithSize:constraint -+ options:NSStringDrawingUsesLineFragmentOrigin -+ attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:FONT_SIZE]} -+ context:nil].size; -+ -+ CGFloat height = MAX(size.height, 44.0f); -+ -+ return height + (CELL_CONTENT_MARGIN * 2); -+} -+ -+- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath -+{ -+ static NSString *CellIdentifier = @"Cell"; -+ -+ UILabel* label = nil; -+ UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier]; -+ if (cell == nil) -+ { -+ cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] ; -+ -+ label = [[UILabel alloc] initWithFrame:CGRectZero] ; -+ [label setLineBreakMode:NSLineBreakByCharWrapping]; -+ [label setMinimumScaleFactor:FONT_SIZE]; -+ [label setNumberOfLines:0]; -+ [label setFont:[UIFont systemFontOfSize:FONT_SIZE]]; -+ [label setTag:1]; -+ -+ [[cell contentView] addSubview:label]; -+ -+ } -+ NSString *text = [keyChain GetIdentityNameAtIndex:indexPath.row]; -+ -+ CGRect frameRect = [tableView frame]; -+ CGSize constraint = CGSizeMake(frameRect.size.width - (CELL_CONTENT_MARGIN * 2), 20000.0f); -+ -+ CGSize size = [text boundingRectWithSize:constraint -+ options:NSStringDrawingUsesLineFragmentOrigin -+ attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:FONT_SIZE]} -+ context:nil].size; -+ -+ if (!label) -+ label = (UILabel*)[cell viewWithTag:1]; -+ -+ //display the keys icon for each entry in the table -+ UIImage* image = [UIImage imageNamed:@"0155-keys.png"]; -+ if (image != nil) { -+ [cell.imageView setImage:image]; -+ [cell setSeparatorInset:UIEdgeInsetsZero]; -+ } -+ -+ self.imageWidth = 44; -+ -+ [label setText:text]; -+ [label setFrame:CGRectMake((CELL_CONTENT_MARGIN*2) + self.imageWidth, CELL_CONTENT_MARGIN, frameRect.size.width - (CELL_CONTENT_MARGIN * 2) - self.imageWidth, MAX(size.height, 44.0f))]; -+ -+ return cell; -+} -+ -+- (UITableViewCellEditingStyle)tableView:(UITableView *)aTableView -+ editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath -+{ -+ return UITableViewCellEditingStyleDelete; -+} -+ -+- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath -+{ -+ // If the table view is asking to commit a delete command... -+ if (editingStyle == UITableViewCellEditingStyleDelete) -+ { -+ // We remove the row being deleted from the source -+ [keyChain removeObjectAtIndex:[indexPath row]]; -+ -+ [tableView reloadData]; -+ } -+} -+ -+//------------------------------------------------------------------------------ -+#pragma mark - Table view delegate -+//------------------------------------------------------------------------------ -+- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath -+{ -+ NSString *identityToUse = [keyChain GetIdentityNameAtIndex:indexPath.row]; -+ [self getCallback](@[identityToUse]); -+ [self dismissViewControllerAnimated:@YES completion:nil]; -+} -+ -+ -+//------------------------------------------------------------------------------ -+#pragma mark - Utility functions -+//------------------------------------------------------------------------------ -+-(void)resetKeychain { -+ [self deleteAllKeysForSecClass:kSecClassGenericPassword]; -+ [self deleteAllKeysForSecClass:kSecClassInternetPassword]; -+ [self deleteAllKeysForSecClass:kSecClassCertificate]; -+ [self deleteAllKeysForSecClass:kSecClassKey]; -+ [self deleteAllKeysForSecClass:kSecClassIdentity]; -+} -+ -+-(void)deleteAllKeysForSecClass:(CFTypeRef)secClass { -+ NSMutableDictionary* dict = [NSMutableDictionary dictionary]; -+ [dict setObject:(__bridge id)secClass forKey:(__bridge id)kSecClass]; -+ OSStatus result = SecItemDelete((__bridge CFDictionaryRef) dict); -+ NSAssert(result == noErr || result == errSecItemNotFound, @"Error deleting keychain data (%ld)", (long)result); -+} -+ -+//Called to solicit password from user when file is chosen from iCloud (or other non-Purebred source) -+- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex -+{ -+ if(1 == buttonIndex) -+ { -+ passwordFromUser = [[alertView textFieldAtIndex:0] text]; -+ if(nil != passwordFromUser && 0 != [passwordFromUser length]) -+ { -+ [self importP12:pkcs12Data password:passwordFromUser]; -+ } -+ } -+} -+ -+//Called to parse a PKCS12 object, decrypt it and import it into app's key chain -+- (void)importP12:(NSData*) pkcs12DataToImport password:(NSString*)password -+{ -+ CFDataRef inPKCS12Data = (__bridge CFDataRef)pkcs12DataToImport; -+ -+ OSStatus securityError = errSecSuccess; -+ -+ //SecPKCS12Import requires a dictionary with a single value (only one option is supported) -+ NSMutableDictionary * optionsDictionary = [[NSMutableDictionary alloc] init]; -+ [optionsDictionary setObject:(id)password forKey:(id)kSecImportExportPassphrase]; -+ [optionsDictionary setObject:(id)kCFBooleanTrue forKey:(id)kSecReturnRef]; -+ [optionsDictionary setObject:(id)kCFBooleanTrue forKey:(id)kSecReturnData]; -+ [optionsDictionary setObject:(id)kCFBooleanTrue forKey:(id)kSecReturnAttributes]; -+ -+ //Create an array to receive the data parsed from the PKCS12 blob -+ CFArrayRef items = CFArrayCreate(NULL, 0, 0, NULL); -+ -+ //Parse the PKCS12 blob -+ securityError = SecPKCS12Import(inPKCS12Data, (CFDictionaryRef)optionsDictionary, &items); -+ if (securityError == errSecAuthFailed) { -+ NSString *alertMessage = [NSString stringWithFormat:@"Failed to import key from PKCS #12 file with wrong password\nerror code= %d", (int)securityError]; -+ NSLog(@"%@", alertMessage); -+ dispatch_async(dispatch_get_main_queue(), ^{ -+ UIAlertController *alertController = [UIAlertController -+ alertControllerWithTitle:@"Import Error" -+ message:alertMessage -+ preferredStyle:UIAlertControllerStyleAlert]; -+ [alertController addAction:[UIAlertAction actionWithTitle:@"Ok" style:UIAlertActionStyleDefault handler:nil]]; -+ [self presentViewController:alertController animated:YES completion:nil]; -+ }); -+ } -+ else if(securityError == errSecSuccess) -+ { -+ long count = CFArrayGetCount(items); -+ if(count > 1) -+ { -+ NSLog(@"%s %d %s - %s", __FILE__, __LINE__, __PRETTY_FUNCTION__, "SecPKCS12Import returned more than one item. Ignoring all but the first item."); -+ } -+ -+ for(long ii = 0; ii < count; ++ii) -+ { -+ //get the first time from the array populated by SecPKCS12Import -+ if (CFArrayGetCount(items) > 0) { -+ CFDictionaryRef pkcs12Contents = (CFDictionaryRef)CFArrayGetValueAtIndex(items, ii); -+ -+ //we're primarily interested in the identity value -+ if(CFDictionaryContainsKey(pkcs12Contents, kSecImportItemIdentity)) -+ { -+ //Grab the identity from the dictionary -+ SecIdentityRef identity = (SecIdentityRef)CFDictionaryGetValue(pkcs12Contents, kSecImportItemIdentity); -+ -+ SecCertificateRef certRef = NULL; -+ SecIdentityCopyCertificate(identity, &certRef); -+ CFStringRef summaryRef = SecCertificateCopySubjectSummary(certRef); -+ NSString *tagstr = (__bridge_transfer NSString*)summaryRef; -+ -+ NSMutableDictionary* dict = [[NSMutableDictionary alloc]init]; -+ [dict setObject:(id)kCFBooleanTrue forKey:(id)kSecReturnPersistentRef]; -+ [dict setObject:(__bridge id)identity forKey:(id)kSecValueRef]; -+ [dict setObject:tagstr forKey:(id)kSecAttrLabel]; -+// [optionsDictionary setObject:(id)kSecAttrAccessGroup forKey:(id)kSecAttrAccessGroup]; -+ CFTypeRef persistent_ref; -+ securityError = SecItemAdd((CFDictionaryRef)dict, &persistent_ref); -+ -+ if(errSecSuccess != securityError) -+ { -+ NSLog(@"%s %d %s - %s %s", __FILE__, __LINE__, __PRETTY_FUNCTION__, "SecItemAdd failed to import identity harvested from PKCS #12 data with error code ", [[[NSNumber numberWithInt:securityError] stringValue] UTF8String]); -+ -+ if(errSecDuplicateItem == securityError) -+ { -+ NSLog(@"Failed to import because item is there already"); -+ } -+ else -+ { -+ NSString *alertMessage = [NSString stringWithFormat:@"Failed to import key from PKCS #12 file with error code %d", (int)securityError]; -+ NSLog(@"%@", alertMessage); -+ dispatch_async(dispatch_get_main_queue(), ^{ -+ UIAlertController *alertController = [UIAlertController -+ alertControllerWithTitle:@"Import Error" -+ message:alertMessage -+ preferredStyle:UIAlertControllerStyleAlert]; -+ [alertController addAction:[UIAlertAction actionWithTitle:@"Ok" style:UIAlertActionStyleDefault handler:nil]]; -+ [self presentViewController:alertController animated:YES completion:nil]; -+ }); -+ } -+ } -+ -+ [keyChain LoadKeyChainContents]; -+ [[self tableViewKeyChain] reloadData]; -+ } -+ } -+ } -+ } -+ else -+ { -+ //Get the destination folder for the files -+ NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); -+ NSString *documentsDirectory = [paths objectAtIndex:0]; -+ -+ //Generate a file name using the sha1 hash of the certificate with .p8 extension for private key and .der for certificate -+ NSString* zipFile = @"tmp.zip"; -+ NSString *zipPath = [documentsDirectory stringByAppendingPathComponent:zipFile]; -+ -+ [pkcs12DataToImport writeToFile:zipPath atomically:YES]; -+ -+ ZipFile *unzipFile= [[ZipFile alloc] initWithFileName:zipPath mode:ZipFileModeUnzip]; -+ if(NULL != unzipFile) -+ { -+ NSArray *infos= [unzipFile listFileInZipInfos]; -+ [unzipFile goToFirstFileInZip]; -+ -+ for (FileInZipInfo *info in infos) -+ { -+ ZipReadStream *read1= [unzipFile readCurrentFileInZip]; -+ -+ NSData *data= [read1 readDataOfLength:info.length]; -+ -+ if(data) -+ { -+ [self importP12:data password:password]; -+ } -+ -+ -+ [read1 finishedReading]; -+ [unzipFile goToNextFileInZip]; -+ } -+ -+ [unzipFile close]; -+ [[NSFileManager defaultManager] removeItemAtPath:zipPath error:nil]; -+ } -+ else{ -+ NSString *alertMessage = [NSString stringWithFormat:@"Failed to parse or decrypt PKCS #12 file with error code %d", (int)securityError]; -+ NSLog(@"%@", alertMessage); -+ dispatch_async(dispatch_get_main_queue(), ^{ -+ UIAlertController *alertController = [UIAlertController -+ alertControllerWithTitle:@"Import Error" -+ message:alertMessage -+ preferredStyle:UIAlertControllerStyleAlert]; -+ [alertController addAction:[UIAlertAction actionWithTitle:@"Ok" style:UIAlertActionStyleDefault handler:nil]]; -+ [self presentViewController:alertController animated:YES completion:nil]; -+ }); -+ } -+ } -+} -+ -+@end -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/KeyChainDataSource.h b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/KeyChainDataSource.h -new file mode 100644 -index 0000000..7a7ccbe ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/KeyChainDataSource.h -@@ -0,0 +1,85 @@ -+// -+// KeyChainDataSource.h -+// KeyShareConsumer -+ -+#import -+ -+/** -+ KeyChainDataSource has three modes of usage, each defined by the type of -+ item sought in the key chain. -+ */ -+enum KeyChainDataSourceMode -+{ -+ KSM_Certificates, -+ KSM_Identities, -+ KSM_Keys -+}; -+ -+/** -+ The KeyChainDataSource class is intended to function as a data source for table views displaying -+ various information from a key chain. Each KeyStore instance is associated with a type -+ of key chain item, i.e., identity, certificate, key. -+ -+ Each item is a section in the table with various information appropriate to the item -+ displayed in the section. -+ -+ Should only be used with tables with table style UITableViewStyleGrouped. -+ */ -+@interface KeyChainDataSource : NSObject -+{ -+ -+@public -+ //!When false, empty attributes are not returned, when true empty attributes are returned with -+ // empty string value. -+ bool displayEmptyAttributes; -+ -+ //!userQuery can be specified to change the search behavior applied by KeyChainDataSource -+ // before serving data to a table view. -+ NSMutableDictionary* userQuery; -+ -+ //!mode indicates the type of object associated with an instance (set upon instantiation) -+ enum KeyChainDataSourceMode mode; -+ -+@private -+ //!initialized indicates whether LoadKeyChainContents has been successfully executed. -+ bool initialized; -+ -+ //!items contains the values retrieved from the key chain -+ NSMutableArray* items; -+ -+ //!dictionary with friendly attribute names (prepared in init) -+ NSMutableDictionary* attrNames; -+} -+ -+//Public properties -+@property (nonatomic, assign) bool displayEmptyAttributes; -+@property (nonatomic, retain) NSMutableDictionary* userQuery; -+ -+//Private properties -+@property (nonatomic, retain) NSArray* items; -+@property (nonatomic, assign) enum KeyChainDataSourceMode mode; -+@property (nonatomic, assign) bool initialized; -+@property (nonatomic, retain) NSMutableDictionary* attrNames; -+ -+- (id) initWithMode:(enum KeyChainDataSourceMode)mode; -+- (void) ClearContents; -+- (void) LoadKeyChainContents; -+- (NSString*) GetIdentityNameAtIndex:(long)index; -+- (NSString*) GetEmailAddressAtIndex:(long)index; -+- (void) removeObjectAtIndex:(long)index; -+- (int) numItems; -+- (SecIdentityRef) GetIdentityAtIndex:(long)index; -+- (NSData*) GetPKCS12AtIndex:(long)index; -+- (NSData*) GetPrivateKeyAtIndex:(long)index; -+ -+- (int) numAttrGroups:(long)index; -+- (NSString*) getAttrStringAtIndex:(long)index attrGroup:(long)attrGroup; -+ -+- (NSString*) getAttrNameAtSection:(long)sectionIndex attrIndex:(long)attrIndex; -+- (NSString*) getAttrValueAtSection:(long)sectionIndex attrIndex:(long)attrIndex; -+- (NSString*) getAttrValueAtSection:(long)sectionIndex attrType:(CFTypeRef)attrType; -+ -+- (SecCertificateRef) getCertificateAt:(long)index; -+- (SecIdentityRef) GetIdentityByName:(NSString *)name; -+ -+@end -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/KeyChainDataSource.mm b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/KeyChainDataSource.mm -new file mode 100644 -index 0000000..ceb52a8 ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/KeyChainDataSource.mm -@@ -0,0 +1,947 @@ -+// -+// KeyChainDataSource.mm -+// KeyShareConsumer -+ -+#import "KeyChainDataSource.h" -+#import -+ -+#include -+ -+//-------------------------------------------------------------- -+// Arrays containing attributes for each type of item associated -+// with this class: certificate, key, identity -+//-------------------------------------------------------------- -+CFTypeRef g_certAttrs[] = { -+ kSecAttrAccessible, -+ kSecAttrAccessGroup, -+ kSecAttrCertificateType, -+ kSecAttrCertificateEncoding, -+ kSecAttrLabel, -+ kSecAttrSubject, -+ kSecAttrIssuer, -+ kSecAttrSerialNumber, -+ kSecAttrSubjectKeyID, -+ kSecAttrPublicKeyHash, -+ NULL -+}; -+ -+CFTypeRef g_keyAttrs[] = { -+ kSecAttrAccessible, -+ kSecAttrAccessGroup, -+ kSecAttrKeyClass, -+ kSecAttrLabel, -+ kSecAttrApplicationLabel, -+ kSecAttrIsPermanent, -+ kSecAttrApplicationTag, -+ kSecAttrKeyType, -+ kSecAttrKeySizeInBits, -+ kSecAttrEffectiveKeySize, -+ kSecAttrCanEncrypt, -+ kSecAttrCanDecrypt, -+ kSecAttrCanDerive, -+ kSecAttrCanSign, -+ kSecAttrCanVerify, -+ kSecAttrCanWrap, -+ kSecAttrCanUnwrap, -+ NULL -+}; -+ -+CFTypeRef g_identityAttrs[] = { -+ kSecAttrAccessible, -+ kSecAttrAccessGroup, -+ kSecAttrCertificateType, -+ kSecAttrCertificateEncoding, -+ kSecAttrLabel, -+ kSecAttrSubject, -+ kSecAttrIssuer, -+ kSecAttrSerialNumber, -+ kSecAttrSubjectKeyID, -+ kSecAttrPublicKeyHash, -+ kSecAttrKeyClass, -+ kSecAttrApplicationLabel, -+ kSecAttrIsPermanent, -+ kSecAttrApplicationTag, -+ kSecAttrKeyType, -+ kSecAttrKeySizeInBits, -+ kSecAttrEffectiveKeySize, -+ kSecAttrCanEncrypt, -+ kSecAttrCanDecrypt, -+ kSecAttrCanDerive, -+ kSecAttrCanSign, -+ kSecAttrCanVerify, -+ kSecAttrCanWrap, -+ kSecAttrCanUnwrap, -+ NULL -+}; -+ -+//-------------------------------------------------------------- -+// Arrays containing attributes that are grouped together in a -+// single table cell for display purposes, i.e., a single string -+// is returned containing information for all attributes in the -+// group. -+//-------------------------------------------------------------- -+CFTypeRef g_keyRelatedAttrs[] = { -+ kSecAttrKeyClass, -+ kSecAttrKeyType, -+ kSecAttrKeySizeInBits, -+ kSecAttrEffectiveKeySize, -+ NULL -+}; -+ -+CFTypeRef g_capabilityRelatedAttrs[] = { -+ kSecAttrCanEncrypt, -+ kSecAttrCanDecrypt, -+ kSecAttrCanDerive, -+ kSecAttrCanSign, -+ kSecAttrCanVerify, -+ kSecAttrCanWrap, -+ kSecAttrCanUnwrap, -+ NULL -+}; -+ -+CFTypeRef g_certRelatedAttrs[] = { -+ kSecAttrCertificateType, -+ kSecAttrCertificateEncoding, -+ kSecAttrSubject, -+ kSecAttrIssuer, -+ kSecAttrSerialNumber, -+ kSecAttrSubjectKeyID, -+ kSecAttrPublicKeyHash, -+ NULL -+}; -+ -+CFTypeRef g_miscRelatedAttrs[] = { -+ kSecAttrLabel, -+ kSecAttrAccessible, -+ kSecAttrAccessGroup, -+ kSecAttrApplicationLabel, -+ kSecAttrIsPermanent, -+ kSecAttrApplicationTag, -+ NULL -+}; -+ -+//-------------------------------------------------------------- -+// Internal conversion helper functions -+//-------------------------------------------------------------- -+@interface KeyChainDataSource (ConversionRoutines) -+ -+ //These return strings that should be autoreleased -+ + (NSString*) getCFDateAsString:(CFDateRef) date; -+ + (NSString*) getCFNumberAsString:(CFNumberRef) number; -+ + (NSString*) getCFBooleanAsString:(CFBooleanRef) cfBool; -+ + (NSString*) getCertificateTypeAsString:(CFNumberRef) number; -+ + (NSString*) getKeyTypeAsString:(CFNumberRef) number; -+ + (NSString*) getKeyClassAsString:(CFNumberRef) number; -+ + (NSString*) getCertificateEncodingAsString:(CFNumberRef) number; -+ + (NSString*) getAttrAccessibleAsString:(CFStringRef) attrAccessible; -+ -+ //The return freshly alloc'ed string -+ + (NSString*) getDataAsAsciiHexString:(NSData*)data; -+ + (NSString*) getDataAsNameString:(NSData*)data; -+ -+@end -+ -+@implementation KeyChainDataSource (ConversionRoutines) -+ -++ (NSString*) getCFDateAsString:(CFDateRef) date -+{ -+ NSDate* nsDate = (__bridge NSDate*)date; -+ return [nsDate description]; -+} -+ -++ (NSString*) getCFNumberAsString:(CFNumberRef) number -+{ -+ NSNumber* nsNumber = (__bridge NSNumber*)number; -+ return [nsNumber stringValue]; -+} -+ -++ (NSString*) getCFBooleanAsString:(CFBooleanRef) cfBool -+{ -+ if(CFBooleanGetValue(cfBool)) -+ return NSLocalizedString(@"Yes", nil); -+ else -+ return NSLocalizedString(@"No", nil); -+} -+ -++ (NSString*) getCertificateTypeAsString:(CFNumberRef) number -+{ -+ NSNumber* nsNumber = (__bridge NSNumber*)number; -+ switch([nsNumber intValue]) -+ { -+ case 1: -+ return NSLocalizedString(@"X509v1", nil); -+ case 2: -+ return NSLocalizedString(@"X509v2", nil); -+ case 3: -+ return NSLocalizedString(@"X509v3", nil); -+ default: -+ return NSLocalizedString(@"Unknown type", nil); -+ } -+} -+ -++ (NSString*) getKeyClassAsString:(CFNumberRef) number -+{ -+ NSString* nStr = [self getCFNumberAsString:number]; -+ -+ if(NSOrderedSame == [(NSString*)kSecAttrKeyClassPublic compare:nStr]) -+ return NSLocalizedString(@"Public key", nil); -+ else if(NSOrderedSame == [(NSString*)kSecAttrKeyClassPrivate compare:nStr]) -+ return NSLocalizedString(@"Private key", nil); -+ else if(NSOrderedSame == [(NSString*)kSecAttrKeyClassSymmetric compare:nStr]) -+ return NSLocalizedString(@"Symmetric key", nil); -+ else -+ return NSLocalizedString(@"Unknown type", nil); -+} -+ -++ (NSString*) getKeyTypeAsString:(CFNumberRef) number -+{ -+ NSString* nStr = [self getCFNumberAsString:number]; -+ -+ if(NSOrderedSame == [(NSString*)kSecAttrKeyTypeRSA compare:nStr]) -+ return NSLocalizedString(@"RSA", nil); -+ else if(NSOrderedSame == [(NSString*)kSecAttrKeyTypeRSA compare:nStr]) -+ return NSLocalizedString(@"Elliptic curve", nil); -+ else -+ return NSLocalizedString(@"Unknown type", nil); -+} -+ -++ (NSString*) getAttrAccessibleAsString:(CFStringRef) attrAccessible -+{ -+ NSString* nStr = (__bridge NSString*)attrAccessible; -+ -+ if(NSOrderedSame == [(NSString*)kSecAttrAccessibleWhenUnlocked compare:nStr]) -+ return NSLocalizedString(@"kSecAttrAccessibleWhenUnlocked", nil); -+ else if(NSOrderedSame == [(NSString*)kSecAttrAccessibleAfterFirstUnlock compare:nStr]) -+ return NSLocalizedString(@"kSecAttrAccessibleAfterFirstUnlock", nil); -+ else if(NSOrderedSame == [(NSString*)kSecAttrAccessibleAlways compare:nStr]) -+ return NSLocalizedString(@"kSecAttrAccessibleAlways", nil); -+ else if(NSOrderedSame == [(NSString*)kSecAttrAccessibleWhenUnlockedThisDeviceOnly compare:nStr]) -+ return NSLocalizedString(@"kSecAttrAccessibleWhenUnlockedThisDeviceOnly", nil); -+ else if(NSOrderedSame == [(NSString*)kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly compare:nStr]) -+ return NSLocalizedString(@"kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly", nil); -+ else if(NSOrderedSame == [(NSString*)kSecAttrAccessibleAlwaysThisDeviceOnly compare:nStr]) -+ return NSLocalizedString(@"kSecAttrAccessibleAlwaysThisDeviceOnly", nil); -+ else -+ return NSLocalizedString(@"Unknown type", nil); -+} -+ -++ (NSString*) getCertificateEncodingAsString:(CFNumberRef) number -+{ -+ NSNumber* nsNumber = (__bridge NSNumber*)number; -+ if(3 == [nsNumber intValue]) -+ return NSLocalizedString(@"DER", nil); -+ else -+ return NSLocalizedString(@"Unknown type", nil); -+} -+ -++ (NSString *) hexString:(NSData*)data -+{ -+ NSUInteger bytesCount = [data length]; -+ if (bytesCount) { -+ const char *hexChars = "0123456789ABCDEF"; -+ const unsigned char *dataBuffer = (unsigned char*)[data bytes]; -+ char *chars = (char*)malloc(sizeof(char) * (bytesCount * 2 + 1)); -+ char *s = chars; -+ for (unsigned i = 0; i < bytesCount; ++i) { -+ *s++ = hexChars[((*dataBuffer & 0xF0) >> 4)]; -+ *s++ = hexChars[(*dataBuffer & 0x0F)]; -+ dataBuffer++; -+ } -+ *s = '\0'; -+ NSString *hexString = [NSString stringWithUTF8String:chars]; -+ free(chars); -+ return hexString; -+ } -+ return @""; -+} -+ -++ (NSString*) getDataAsAsciiHexString:(NSData*)data -+{ -+ return [self hexString:data]; -+} -+ -++ (NSString*) getDataAsNameString:(NSData*)data -+{ -+ //Implement after linking useful PKE support -+ return nil; -+} -+ -+@end -+ -+//-------------------------------------------------------------- -+// Internal conversion helper functions -+//-------------------------------------------------------------- -+@interface KeyChainDataSource (PrivateMethods) -+ -+- (void) populateAttrMap; -+- (int) countAttributesAtIndex:(long)index; -+- (NSString*) getAttrValueAsString:(CFTypeRef)attribute value:(CFTypeRef)value; -+ -+@end -+ -+@implementation KeyChainDataSource (PrivateMethods) -+ -+- (void) populateAttrMap -+{ -+ if(attrNames) -+ { -+ //[attrNames release]; -+ attrNames = nil; -+ } -+ -+ attrNames = [[NSMutableDictionary alloc] init]; -+ -+ //Set up the friendly names for each attribute that can be read from one -+ //of the three types of items this class cares about. -+ [attrNames setObject:(id)@"Accessible" forKey:(id)kSecAttrAccessible]; -+ [attrNames setObject:(id)@"Access group" forKey:(id)kSecAttrAccessGroup]; -+ [attrNames setObject:(id)@"Certificate type" forKey:(id)kSecAttrCertificateType]; -+ [attrNames setObject:(id)@"Certificate encoding" forKey:(id)kSecAttrCertificateEncoding]; -+ [attrNames setObject:(id)@"Label" forKey:(id)kSecAttrLabel]; -+ -+ //Re-enable these if linking in a certificate parser -+ //[attrNames setObject:(id)@"Subject" forKey:(id)kSecAttrSubject]; -+ //[attrNames setObject:(id)@"Issuer" forKey:(id)kSecAttrIssuer]; -+ [attrNames setObject:(id)@"Serial number" forKey:(id)kSecAttrSerialNumber]; -+ [attrNames setObject:(id)@"Subject key ID" forKey:(id)kSecAttrSubjectKeyID]; -+ [attrNames setObject:(id)@"Public key hash" forKey:(id)kSecAttrPublicKeyHash]; -+ [attrNames setObject:(id)@"Key class" forKey:(id)kSecAttrKeyClass]; -+ [attrNames setObject:(id)@"Application label" forKey:(id)kSecAttrApplicationLabel]; -+ [attrNames setObject:(id)@"Is permanent" forKey:(id)kSecAttrIsPermanent]; -+ [attrNames setObject:(id)@"Application tag" forKey:(id)kSecAttrApplicationTag]; -+ [attrNames setObject:(id)@"Key type" forKey:(id)kSecAttrKeyType]; -+ [attrNames setObject:(id)@"Key size in bits" forKey:(id)kSecAttrKeySizeInBits]; -+ [attrNames setObject:(id)@"Effective key size" forKey:(id)kSecAttrEffectiveKeySize]; -+ [attrNames setObject:(id)@"Can encrypt" forKey:(id)kSecAttrCanEncrypt]; -+ [attrNames setObject:(id)@"Can decrypt" forKey:(id)kSecAttrCanDecrypt]; -+ [attrNames setObject:(id)@"Can derive" forKey:(id)kSecAttrCanDerive]; -+ [attrNames setObject:(id)@"Can sign" forKey:(id)kSecAttrCanSign]; -+ [attrNames setObject:(id)@"Can verify" forKey:(id)kSecAttrCanVerify]; -+ [attrNames setObject:(id)@"Can wrap" forKey:(id)kSecAttrCanWrap]; -+ [attrNames setObject:(id)@"Can unwrap" forKey:(id)kSecAttrCanUnwrap]; -+} -+ -+- (int) countAttributesAtIndex:(long)index -+{ -+ int count = 0; -+ -+ CFTypeRef* attrs = NULL; -+ -+ switch (mode) { -+ case KSM_Certificates: -+ attrs = g_certAttrs; -+ break; -+ case KSM_Identities: -+ attrs = g_identityAttrs; -+ break; -+ case KSM_Keys: -+ attrs = g_keyAttrs; -+ break; -+ default: -+ return 0; -+ } -+ -+ @try -+ { -+ CFDictionaryRef dict = (__bridge CFDictionaryRef)[items objectAtIndex:index]; -+ -+ for(int ii = 0; attrs[ii]; ++ii) -+ { -+ if(true == CFDictionaryGetValueIfPresent(dict, attrs[ii], NULL)) -+ ++count; -+ } -+ } -+ @catch (NSException* rangeException) -+ { -+ return 0; -+ } -+ -+ return count; -+} -+ -+- (NSString*) getAttrValueAsString:(CFTypeRef)attribute value:(CFTypeRef)value -+ { -+ NSString* attributeValueString = nil; -+ -+ if(kSecAttrAccessible == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getAttrAccessibleAsString:(CFStringRef)value]; -+ } -+ else if(kSecAttrAccessGroup == attribute) -+ { -+ attributeValueString = [[NSString alloc] initWithString:(__bridge NSString*)value] ; -+ } -+ else if(kSecAttrCertificateType == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getCertificateTypeAsString:(CFNumberRef)value]; -+ } -+ else if(kSecAttrCertificateEncoding == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getCertificateEncodingAsString:(CFNumberRef)value]; -+ } -+ else if(kSecAttrLabel == attribute) -+ { -+ attributeValueString = [[NSString alloc] initWithString:(__bridge NSString*)value] ; -+ } -+ else if(kSecAttrSubject == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getDataAsNameString:(__bridge NSData*)value]; -+ } -+ else if(kSecAttrIssuer == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getDataAsNameString:(__bridge NSData*)value]; -+ } -+ else if(kSecAttrSerialNumber == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getDataAsAsciiHexString:(__bridge NSData*)value]; -+ } -+ else if(kSecAttrSubjectKeyID == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getDataAsAsciiHexString:(__bridge NSData*)value]; -+ } -+ else if(kSecAttrPublicKeyHash == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getDataAsAsciiHexString:(__bridge NSData*)value]; -+ } -+ else if(kSecAttrKeyClass == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getKeyClassAsString:(CFNumberRef)value]; -+ } -+ else if(kSecAttrApplicationLabel == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getDataAsAsciiHexString:(__bridge NSData*)value]; -+ } -+ else if(kSecAttrIsPermanent == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getCFBooleanAsString:(CFBooleanRef)value]; -+ } -+ else if(kSecAttrApplicationTag == attribute) -+ { -+ if(CFGetTypeID(value) == CFDataGetTypeID()) -+ { -+ NSData* d = (__bridge NSData*)value; -+ attributeValueString = [NSString stringWithUTF8String:(char*)[d bytes]]; -+ } -+ else -+ { -+ attributeValueString = [[NSString alloc] initWithString:(__bridge NSString*)value] ; -+ } -+ } -+ else if(kSecAttrKeyType == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getKeyTypeAsString:(CFNumberRef)value]; -+ } -+ else if(kSecAttrKeySizeInBits == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getCFNumberAsString:(CFNumberRef)value]; -+ } -+ else if(kSecAttrEffectiveKeySize == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getCFNumberAsString:(CFNumberRef)value]; -+ } -+ else if(kSecAttrCanEncrypt == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getCFBooleanAsString:(CFBooleanRef)value]; -+ } -+ else if(kSecAttrCanDecrypt == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getCFBooleanAsString:(CFBooleanRef)value]; -+ } -+ else if(kSecAttrCanDerive == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getCFBooleanAsString:(CFBooleanRef)value]; -+ } -+ else if(kSecAttrCanSign == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getCFBooleanAsString:(CFBooleanRef)value]; -+ } -+ else if(kSecAttrCanVerify == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getCFBooleanAsString:(CFBooleanRef)value]; -+ } -+ else if(kSecAttrCanWrap == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getCFBooleanAsString:(CFBooleanRef)value]; -+ } -+ else if(kSecAttrCanUnwrap == attribute) -+ { -+ attributeValueString = [KeyChainDataSource getCFBooleanAsString:(CFBooleanRef)value]; -+ } -+ else -+ { -+ attributeValueString = @"Unknown value"; -+ } -+ -+ return attributeValueString; -+} -+ -+@end -+ -+//-------------------------------------------------------------- -+// KeyChainDataSource implementation -+//-------------------------------------------------------------- -+@implementation KeyChainDataSource -+ -+//Public members -+@synthesize displayEmptyAttributes; -+@synthesize userQuery; -+ -+//Private members -+@synthesize items; -+@synthesize mode; -+@synthesize initialized; -+@synthesize attrNames; -+ -+- (int) numAttrGroups:(long)index -+{ -+ return [self countAttributesAtIndex:index]; -+} -+ -+- (NSString*) getAttrStringForGroup:(CFTypeRef*)attrArray forItem:(long)index -+{ -+ std::ostringstream oss; -+ for(int ii = 0; attrArray[ii]; ++ii) -+ { -+ NSString* attrName = (NSString*)[attrNames objectForKey:(__bridge id)attrArray[ii]]; -+ if(attrName) -+ { -+ NSString* attrValue = [self getAttrValueAtSection:index attrType:attrArray[ii]]; -+ if(attrValue) -+ { -+ oss << [attrName UTF8String] << ": " << [attrValue UTF8String] << std::endl; -+ } -+ } -+ } -+ NSString* retVal = [[NSString alloc] initWithCString:oss.str().c_str() encoding:NSUTF8StringEncoding] ; -+ return retVal; -+} -+ -+- (NSString*) getAttrStringAtIndex:(long)index attrGroup:(long)attrGroup -+{ -+ return [self getAttrValueAtSection:index attrIndex:attrGroup]; -+} -+ -+/** -+ LoadKeyChainContents prepares a dictionary containing a query filter based on the current mode. -+ The results are stored in the items member variable with mode-specific contents. -+ */ -+- (void) LoadKeyChainContents -+{ -+ [self ClearContents]; -+ -+ OSStatus resultCode = noErr; -+ -+ if(nil == userQuery) -+ { -+ NSMutableDictionary * query = [[NSMutableDictionary alloc] init]; -+ -+ //Set up the invariant pieces of the query -+ [query setObject:(id)kSecMatchLimitAll forKey:(id)kSecMatchLimit]; -+ [query setObject:(id)kCFBooleanTrue forKey:(id)kSecReturnRef]; -+ [query setObject:(id)kCFBooleanTrue forKey:(id)kSecReturnData]; -+ [query setObject:(id)kCFBooleanTrue forKey:(id)kSecReturnAttributes]; -+// [query setObject:@"com.mattermost.rnbeta" forKey:(id)kSecAttrAccessGroup]; -+ -+ //Set up the mode-specific pieces of the query -+ switch(mode) -+ { -+ case KSM_Certificates: -+ { -+ [query setObject:(id)kSecClassCertificate forKey:(id)kSecClass]; -+ break; -+ } -+ case KSM_Identities: -+ { -+ [query setObject:(id)kSecClassIdentity forKey:(id)kSecClass]; -+ break; -+ } -+ case KSM_Keys: -+ { -+ [query setObject:(id)kSecClassKey forKey:(id)kSecClass]; -+ break; -+ } -+ } -+ -+ CFTypeRef result = nil; -+ //Execute the query saving the results in items. -+ resultCode = SecItemCopyMatching((CFDictionaryRef)query, &result); -+ items = (__bridge_transfer NSMutableArray*)result; -+ -+ //[query release]; -+ } -+ else -+ { -+ CFTypeRef result = nil; -+ resultCode = SecItemCopyMatching((CFDictionaryRef)userQuery, &result); -+ items = (__bridge_transfer NSMutableArray*)result; -+ } -+ -+ if(resultCode != noErr) -+ { -+ //clean up anything that might have landed in items -+ [self ClearContents]; -+ } -+ else -+ { -+ //set the initialized flag -+ initialized = true; -+ } -+ -+ return; -+} -+ -+- (SecIdentityRef) GetIdentityByName:(NSString *)name -+{ -+ -+ NSMutableDictionary * query = [[NSMutableDictionary alloc] init]; -+ NSData* tag = [name dataUsingEncoding:NSUTF8StringEncoding]; -+ -+ //Set up the invariant pieces of the query -+ [query setObject:(id)kSecMatchLimitAll forKey:(id)kSecMatchLimit]; -+ [query setObject:(id)kCFBooleanTrue forKey:(id)kSecReturnRef]; -+ [query setObject:(id)kCFBooleanTrue forKey:(id)kSecReturnData]; -+ [query setObject:(id)kCFBooleanTrue forKey:(id)kSecReturnAttributes]; -+ [query setObject:(id)kSecClassIdentity forKey:(id)kSecClass]; -+ [query setObject:name forKey:(id)kSecAttrLabel]; -+ -+ OSStatus resultCode = noErr; -+ CFTypeRef result = nil; -+ //Execute the query saving the results in items. -+ resultCode = SecItemCopyMatching((CFDictionaryRef)query, &result); -+ if (CFArrayGetCount((CFArrayRef)result) > 0) { -+ CFDictionaryRef item = (CFDictionaryRef)CFArrayGetValueAtIndex((CFArrayRef)result, 0); -+ if (item != nil) { -+ SecIdentityRef identity = nil; -+ CFTypeRef value; -+ if(CFDictionaryGetValueIfPresent(item, kSecValueRef, &value)) -+ { -+ identity = (SecIdentityRef)value; -+ } -+ -+ return identity; -+ } -+ } -+ return nil; -+} -+ -+//-------------------------------------------------------------- -+// KeyChainDataSource initialization/destruction -+//-------------------------------------------------------------- -+- (id) init -+{ -+ self = [super init]; -+ if(self) -+ { -+ mode = KSM_Identities; -+ initialized = false; -+ items = nil; -+ displayEmptyAttributes = false; -+ [self populateAttrMap]; -+ } -+ return self; -+} -+ -+- (id) initWithMode:(enum KeyChainDataSourceMode)kcdsMode -+{ -+ self = [super init]; -+ if(self) -+ { -+ mode = kcdsMode; -+ initialized = false; -+ items = nil; -+ displayEmptyAttributes = false; -+ [self populateAttrMap]; -+ } -+ return self; -+} -+ -+- (void)dealloc -+{ -+ //[items release]; -+ items = nil; -+ -+ //[attrNames release]; -+ attrNames = nil; -+ -+ //[userQuery release]; -+ userQuery = nil; -+ -+ [self ClearContents]; -+ //[super dealloc]; -+} -+ -+- (void) ClearContents -+{ -+ //[items release]; -+ items = nil; -+ -+ initialized = false; -+} -+ -+- (int) numItems -+{ -+ //each item gets its own section -+ if(nil == items) -+ return 0; -+ else -+ return [items count]; -+} -+ -+- (NSString*) GetEmailAddressAtIndex:(long)index -+{ -+ //Implement after linking useful PKE support -+ return nil; -+} -+ -+- (NSString*) GetCommonNameAtIndex:(long)index -+{ -+ SecCertificateRef certRef = [self getCertificateAt:index]; -+ if(certRef) -+ { -+ CFStringRef summaryRef = SecCertificateCopySubjectSummary(certRef); -+ return (__bridge_transfer NSString*)summaryRef; -+ } -+ -+ return nil; -+} -+- (NSString*) GetIdentityNameAtIndex:(long)index -+{ -+ //look for email address first, failing that use the default keychain label -+ NSString* emailAddress = [self GetEmailAddressAtIndex:index]; -+ if(!emailAddress) -+ { -+ NSString* subject = [self GetCommonNameAtIndex:index]; -+ if(!subject) -+ return [self getAttrValueAtSection:index attrType:kSecAttrLabel]; -+ else -+ return subject; -+ } -+ else -+ return emailAddress; -+} -+ -+- (SecIdentityRef) GetIdentityAtIndex:(long)index -+{ -+ if(index >= [items count]) -+ return nil; -+ CFDictionaryRef item = (__bridge CFDictionaryRef)[items objectAtIndex:index]; -+ -+ SecIdentityRef identity = nil; -+ CFTypeRef value; -+ if(CFDictionaryGetValueIfPresent(item, kSecValueRef, &value)) -+ { -+ identity = (SecIdentityRef)value; -+ } -+ -+ return identity; -+} -+ -+- (NSData*) GetPrivateKeyAtIndex:(long)index -+{ -+ if(index >= [items count]) -+ return nil; -+ CFDictionaryRef item = (__bridge CFDictionaryRef)[items objectAtIndex:index]; -+ -+ NSData* privateKey = nil; -+ CFTypeRef label; -+ if(CFDictionaryGetValueIfPresent(item, kSecValueData, &label)) -+ { -+ CFDataRef aCFString = (CFDataRef)label; -+ privateKey = (__bridge NSData *)aCFString; -+ } -+ return privateKey; -+} -+ -+- (void) removeObjectAtIndex:(long)index -+{ -+ if(index >= [items count]) -+ return; -+ -+ CFDictionaryRef item = (__bridge CFDictionaryRef)[items objectAtIndex:index]; -+ -+ CFTypeRef value; -+ if(CFDictionaryGetValueIfPresent(item, kSecValueRef, &value)) -+ { -+ SecIdentityRef identity = (SecIdentityRef)value; -+ -+ NSMutableDictionary * query = [[NSMutableDictionary alloc] init]; -+ -+ //Set up the invariant pieces of the query -+ [query setObject:(__bridge id)identity forKey:(id)kSecValueRef]; -+ -+ //Execute the query saving the results in items. -+ OSStatus resultCode = SecItemDelete((CFDictionaryRef) query); -+ query = nil; -+ -+ if(errSecSuccess == resultCode) -+ { -+ [self LoadKeyChainContents]; -+ } -+ else -+ { -+ NSLog(@"Failed to delete selected identity with error code %d.", (int)resultCode); -+ -+ } -+ } -+} -+ -+- (NSString*) getAttrNameAtSection:(long)sectionIndex attrIndex:(long)attrIndex -+{ -+ CFTypeRef attribute, value; -+ NSString* attrFriendlyName = nil; -+ -+ @try -+ { -+ CFDictionaryRef dict = (__bridge CFDictionaryRef)[items objectAtIndex:sectionIndex]; -+ CFTypeRef* attrs = NULL; -+ -+ switch (mode) { -+ case KSM_Certificates: -+ attrs = g_certAttrs; -+ break; -+ case KSM_Identities: -+ attrs = g_identityAttrs; -+ break; -+ case KSM_Keys: -+ attrs = g_keyAttrs; -+ break; -+ default: -+ return 0; -+ } -+ -+ for(int ii = 0, jj = 0; attrs[ii]; ++ii) -+ { -+ if(CFDictionaryGetValueIfPresent(dict, attrs[ii], &value)) -+ { -+ if(jj == attrIndex) -+ { -+ attribute = attrs[ii]; -+ break; -+ } -+ else -+ ++jj; -+ } -+ } -+ } -+ @catch (NSException* rangeException) -+ { -+ return 0; -+ } -+ -+ //get the friendly name of the attribute -+ attrFriendlyName = (NSString*)[attrNames objectForKey:(__bridge id)attribute]; -+ if(nil == attrFriendlyName) -+ attrFriendlyName = NSLocalizedString(@"Unrecognized attribute",nil); -+ -+ return attrFriendlyName; -+} -+ -+/** -+ This function returns the attrIndex-th present value from the sectionIndex-th item -+ */ -+- (NSString*) getAttrValueAtSection:(long)sectionIndex attrIndex:(long)attrIndex -+{ -+ CFTypeRef attribute, value; -+ -+ @try -+ { -+ CFDictionaryRef dict = (__bridge CFDictionaryRef)[items objectAtIndex:sectionIndex]; -+ CFTypeRef* attrs = NULL; -+ -+ switch (mode) { -+ case KSM_Certificates: -+ attrs = g_certAttrs; -+ break; -+ case KSM_Identities: -+ attrs = g_identityAttrs; -+ break; -+ case KSM_Keys: -+ attrs = g_keyAttrs; -+ break; -+ default: -+ return 0; -+ } -+ -+ for(int ii = 0, jj = 0; attrs[ii]; ++ii) -+ { -+ if(CFDictionaryGetValueIfPresent(dict, attrs[ii], &value)) -+ { -+ if(jj == attrIndex) -+ { -+ attribute = attrs[ii]; -+ break; -+ } -+ else -+ ++jj; -+ } -+ } -+ } -+ @catch (NSException* rangeException) -+ { -+ return nil; -+ } -+ -+ return [self getAttrValueAsString:attribute value:value]; -+} -+ -+- (NSString*) getAttrValueAtSection:(long)sectionIndex attrType:(CFTypeRef)attrType -+{ -+ CFTypeRef value; -+ -+ @try -+ { -+ CFDictionaryRef dict = (__bridge CFDictionaryRef)[items objectAtIndex:sectionIndex]; -+ if(!CFDictionaryGetValueIfPresent(dict, attrType, &value)) -+ { -+ return nil; -+ } -+ } -+ @catch (NSException* rangeException) -+ { -+ return nil; -+ } -+ -+ return [self getAttrValueAsString:attrType value:value]; -+} -+ -+- (SecCertificateRef) getCertificateAt:(long)index -+{ -+ if(index >= [items count]) -+ return nil; -+ -+ switch (mode) { -+ case KSM_Certificates: -+ { -+ CFDictionaryRef dict = (__bridge CFDictionaryRef)[items objectAtIndex:index]; -+ SecCertificateRef cert = (SecCertificateRef)CFDictionaryGetValue(dict, kSecValueRef); -+ return cert; -+ } -+ case KSM_Identities: -+ { -+ CFDictionaryRef dict = (__bridge CFDictionaryRef)[items objectAtIndex:index]; -+ SecIdentityRef identity = (SecIdentityRef)CFDictionaryGetValue(dict, kSecValueRef); -+ SecCertificateRef cert = nil; -+ OSStatus stat = SecIdentityCopyCertificate(identity, &cert); -+ if(errSecSuccess == stat) -+ return cert; -+ else -+ return nil; -+ } -+ case KSM_Keys: -+ { -+ return nil; -+ } -+ default: -+ { -+ return nil; -+ } -+ } -+} -+ -+- (NSData*) GetPKCS12AtIndex:(long)index -+{ -+ //Implement after linking useful PKE support -+ return nil; -+} -+ -+@end -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/ioapi.c b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/ioapi.c -new file mode 100644 -index 0000000..f1bee23 ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/ioapi.c -@@ -0,0 +1,177 @@ -+/* ioapi.c -- IO base function header for compress/uncompress .zip -+ files using zlib + zip or unzip API -+ -+ Version 1.01e, February 12th, 2005 -+ -+ Copyright (C) 1998-2005 Gilles Vollant -+*/ -+ -+#include -+#include -+#include -+ -+#include "zlib.h" -+#include "ioapi.h" -+ -+ -+ -+/* I've found an old Unix (a SunOS 4.1.3_U1) without all SEEK_* defined.... */ -+ -+#ifndef SEEK_CUR -+#define SEEK_CUR 1 -+#endif -+ -+#ifndef SEEK_END -+#define SEEK_END 2 -+#endif -+ -+#ifndef SEEK_SET -+#define SEEK_SET 0 -+#endif -+ -+voidpf ZCALLBACK fopen_file_func OF(( -+ voidpf opaque, -+ const char* filename, -+ int mode)); -+ -+uLong ZCALLBACK fread_file_func OF(( -+ voidpf opaque, -+ voidpf stream, -+ void* buf, -+ uLong size)); -+ -+uLong ZCALLBACK fwrite_file_func OF(( -+ voidpf opaque, -+ voidpf stream, -+ const void* buf, -+ uLong size)); -+ -+long ZCALLBACK ftell_file_func OF(( -+ voidpf opaque, -+ voidpf stream)); -+ -+long ZCALLBACK fseek_file_func OF(( -+ voidpf opaque, -+ voidpf stream, -+ uLong offset, -+ int origin)); -+ -+int ZCALLBACK fclose_file_func OF(( -+ voidpf opaque, -+ voidpf stream)); -+ -+int ZCALLBACK ferror_file_func OF(( -+ voidpf opaque, -+ voidpf stream)); -+ -+ -+voidpf ZCALLBACK fopen_file_func (opaque, filename, mode) -+ voidpf opaque; -+ const char* filename; -+ int mode; -+{ -+ FILE* file = NULL; -+ const char* mode_fopen = NULL; -+ if ((mode & ZLIB_FILEFUNC_MODE_READWRITEFILTER)==ZLIB_FILEFUNC_MODE_READ) -+ mode_fopen = "rb"; -+ else -+ if (mode & ZLIB_FILEFUNC_MODE_EXISTING) -+ mode_fopen = "r+b"; -+ else -+ if (mode & ZLIB_FILEFUNC_MODE_CREATE) -+ mode_fopen = "wb"; -+ -+ if ((filename!=NULL) && (mode_fopen != NULL)) -+ file = fopen(filename, mode_fopen); -+ return file; -+} -+ -+ -+uLong ZCALLBACK fread_file_func (opaque, stream, buf, size) -+ voidpf opaque; -+ voidpf stream; -+ void* buf; -+ uLong size; -+{ -+ uLong ret; -+ ret = (uLong)fread(buf, 1, (size_t)size, (FILE *)stream); -+ return ret; -+} -+ -+ -+uLong ZCALLBACK fwrite_file_func (opaque, stream, buf, size) -+ voidpf opaque; -+ voidpf stream; -+ const void* buf; -+ uLong size; -+{ -+ uLong ret; -+ ret = (uLong)fwrite(buf, 1, (size_t)size, (FILE *)stream); -+ return ret; -+} -+ -+long ZCALLBACK ftell_file_func (opaque, stream) -+ voidpf opaque; -+ voidpf stream; -+{ -+ long ret; -+ ret = ftell((FILE *)stream); -+ return ret; -+} -+ -+long ZCALLBACK fseek_file_func (opaque, stream, offset, origin) -+ voidpf opaque; -+ voidpf stream; -+ uLong offset; -+ int origin; -+{ -+ int fseek_origin=0; -+ long ret; -+ switch (origin) -+ { -+ case ZLIB_FILEFUNC_SEEK_CUR : -+ fseek_origin = SEEK_CUR; -+ break; -+ case ZLIB_FILEFUNC_SEEK_END : -+ fseek_origin = SEEK_END; -+ break; -+ case ZLIB_FILEFUNC_SEEK_SET : -+ fseek_origin = SEEK_SET; -+ break; -+ default: return -1; -+ } -+ ret = 0; -+ fseek((FILE *)stream, offset, fseek_origin); -+ return ret; -+} -+ -+int ZCALLBACK fclose_file_func (opaque, stream) -+ voidpf opaque; -+ voidpf stream; -+{ -+ int ret; -+ ret = fclose((FILE *)stream); -+ return ret; -+} -+ -+int ZCALLBACK ferror_file_func (opaque, stream) -+ voidpf opaque; -+ voidpf stream; -+{ -+ int ret; -+ ret = ferror((FILE *)stream); -+ return ret; -+} -+ -+void fill_fopen_filefunc (pzlib_filefunc_def) -+ zlib_filefunc_def* pzlib_filefunc_def; -+{ -+ pzlib_filefunc_def->zopen_file = fopen_file_func; -+ pzlib_filefunc_def->zread_file = fread_file_func; -+ pzlib_filefunc_def->zwrite_file = fwrite_file_func; -+ pzlib_filefunc_def->ztell_file = ftell_file_func; -+ pzlib_filefunc_def->zseek_file = fseek_file_func; -+ pzlib_filefunc_def->zclose_file = fclose_file_func; -+ pzlib_filefunc_def->zerror_file = ferror_file_func; -+ pzlib_filefunc_def->opaque = NULL; -+} -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/ioapi.h b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/ioapi.h -new file mode 100644 -index 0000000..7d457ba ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/ioapi.h -@@ -0,0 +1,75 @@ -+/* ioapi.h -- IO base function header for compress/uncompress .zip -+ files using zlib + zip or unzip API -+ -+ Version 1.01e, February 12th, 2005 -+ -+ Copyright (C) 1998-2005 Gilles Vollant -+*/ -+ -+#ifndef _ZLIBIOAPI_H -+#define _ZLIBIOAPI_H -+ -+ -+#define ZLIB_FILEFUNC_SEEK_CUR (1) -+#define ZLIB_FILEFUNC_SEEK_END (2) -+#define ZLIB_FILEFUNC_SEEK_SET (0) -+ -+#define ZLIB_FILEFUNC_MODE_READ (1) -+#define ZLIB_FILEFUNC_MODE_WRITE (2) -+#define ZLIB_FILEFUNC_MODE_READWRITEFILTER (3) -+ -+#define ZLIB_FILEFUNC_MODE_EXISTING (4) -+#define ZLIB_FILEFUNC_MODE_CREATE (8) -+ -+ -+#ifndef ZCALLBACK -+ -+#if (defined(WIN32) || defined (WINDOWS) || defined (_WINDOWS)) && defined(CALLBACK) && defined (USEWINDOWS_CALLBACK) -+#define ZCALLBACK CALLBACK -+#else -+#define ZCALLBACK -+#endif -+#endif -+ -+#ifdef __cplusplus -+extern "C" { -+#endif -+ -+typedef voidpf (ZCALLBACK *open_file_func) OF((voidpf opaque, const char* filename, int mode)); -+typedef uLong (ZCALLBACK *read_file_func) OF((voidpf opaque, voidpf stream, void* buf, uLong size)); -+typedef uLong (ZCALLBACK *write_file_func) OF((voidpf opaque, voidpf stream, const void* buf, uLong size)); -+typedef long (ZCALLBACK *tell_file_func) OF((voidpf opaque, voidpf stream)); -+typedef long (ZCALLBACK *seek_file_func) OF((voidpf opaque, voidpf stream, uLong offset, int origin)); -+typedef int (ZCALLBACK *close_file_func) OF((voidpf opaque, voidpf stream)); -+typedef int (ZCALLBACK *testerror_file_func) OF((voidpf opaque, voidpf stream)); -+ -+typedef struct zlib_filefunc_def_s -+{ -+ open_file_func zopen_file; -+ read_file_func zread_file; -+ write_file_func zwrite_file; -+ tell_file_func ztell_file; -+ seek_file_func zseek_file; -+ close_file_func zclose_file; -+ testerror_file_func zerror_file; -+ voidpf opaque; -+} zlib_filefunc_def; -+ -+ -+ -+void fill_fopen_filefunc OF((zlib_filefunc_def* pzlib_filefunc_def)); -+ -+#define ZREAD(filefunc,filestream,buf,size) ((*((filefunc).zread_file))((filefunc).opaque,filestream,buf,size)) -+#define ZWRITE(filefunc,filestream,buf,size) ((*((filefunc).zwrite_file))((filefunc).opaque,filestream,buf,size)) -+#define ZTELL(filefunc,filestream) ((*((filefunc).ztell_file))((filefunc).opaque,filestream)) -+#define ZSEEK(filefunc,filestream,pos,mode) ((*((filefunc).zseek_file))((filefunc).opaque,filestream,pos,mode)) -+#define ZCLOSE(filefunc,filestream) ((*((filefunc).zclose_file))((filefunc).opaque,filestream)) -+#define ZERROR(filefunc,filestream) ((*((filefunc).zerror_file))((filefunc).opaque,filestream)) -+ -+ -+#ifdef __cplusplus -+} -+#endif -+ -+#endif -+ -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/mztools.c b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/mztools.c -new file mode 100644 -index 0000000..b51d0e0 ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/mztools.c -@@ -0,0 +1,282 @@ -+/* -+ Additional tools for Minizip -+ Code: Xavier Roche '2004 -+ License: Same as ZLIB (www.gzip.org) -+*/ -+ -+/* Code */ -+#include -+#include -+#include -+#include "zlib.h" -+#include "unzip.h" -+#include "mztools.h" -+ -+#define READ_8(adr) ((unsigned char)*(adr)) -+#define READ_16(adr) ( READ_8(adr) | (READ_8(adr+1) << 8) ) -+#define READ_32(adr) ( READ_16(adr) | (READ_16((adr)+2) << 16) ) -+ -+#define WRITE_8(buff, n) do { \ -+ *((unsigned char*)(buff)) = (unsigned char) ((n) & 0xff); \ -+} while(0) -+#define WRITE_16(buff, n) do { \ -+ WRITE_8((unsigned char*)(buff), n); \ -+ WRITE_8(((unsigned char*)(buff)) + 1, (n) >> 8); \ -+} while(0) -+#define WRITE_32(buff, n) do { \ -+ WRITE_16((unsigned char*)(buff), (n) & 0xffff); \ -+ WRITE_16((unsigned char*)(buff) + 2, (n) >> 16); \ -+} while(0) -+ -+extern int ZEXPORT unzRepair(file, fileOut, fileOutTmp, nRecovered, bytesRecovered) -+const char* file; -+const char* fileOut; -+const char* fileOutTmp; -+uLong* nRecovered; -+uLong* bytesRecovered; -+{ -+ int err = Z_OK; -+ FILE* fpZip = fopen(file, "rb"); -+ FILE* fpOut = fopen(fileOut, "wb"); -+ FILE* fpOutCD = fopen(fileOutTmp, "wb"); -+ if (fpZip != NULL && fpOut != NULL) { -+ int entries = 0; -+ uLong totalBytes = 0; -+ char header[30]; -+ char filename[256]; -+ char extra[1024]; -+ int offset = 0; -+ int offsetCD = 0; -+ while ( fread(header, 1, 30, fpZip) == 30 ) { -+ int currentOffset = offset; -+ -+ /* File entry */ -+ if (READ_32(header) == 0x04034b50) { -+ unsigned int version = READ_16(header + 4); -+ unsigned int gpflag = READ_16(header + 6); -+ unsigned int method = READ_16(header + 8); -+ unsigned int filetime = READ_16(header + 10); -+ unsigned int filedate = READ_16(header + 12); -+ unsigned int crc = READ_32(header + 14); /* crc */ -+ unsigned int cpsize = READ_32(header + 18); /* compressed size */ -+ unsigned int uncpsize = READ_32(header + 22); /* uncompressed sz */ -+ unsigned int fnsize = READ_16(header + 26); /* file name length */ -+ unsigned int extsize = READ_16(header + 28); /* extra field length */ -+ filename[0] = extra[0] = '\0'; -+ -+ /* Header */ -+ if (fwrite(header, 1, 30, fpOut) == 30) { -+ offset += 30; -+ } else { -+ err = Z_ERRNO; -+ break; -+ } -+ -+ /* Filename */ -+ if (fnsize > 0) { -+ if (fread(filename, 1, fnsize, fpZip) == fnsize) { -+ if (fwrite(filename, 1, fnsize, fpOut) == fnsize) { -+ offset += fnsize; -+ } else { -+ err = Z_ERRNO; -+ break; -+ } -+ } else { -+ err = Z_ERRNO; -+ break; -+ } -+ } else { -+ err = Z_STREAM_ERROR; -+ break; -+ } -+ -+ /* Extra field */ -+ if (extsize > 0) { -+ if (fread(extra, 1, extsize, fpZip) == extsize) { -+ if (fwrite(extra, 1, extsize, fpOut) == extsize) { -+ offset += extsize; -+ } else { -+ err = Z_ERRNO; -+ break; -+ } -+ } else { -+ err = Z_ERRNO; -+ break; -+ } -+ } -+ -+ /* Data */ -+ { -+ int dataSize = cpsize; -+ if (dataSize == 0) { -+ dataSize = uncpsize; -+ } -+ if (dataSize > 0) { -+ char* data = malloc(dataSize); -+ if (data != NULL) { -+ if ((int)fread(data, 1, dataSize, fpZip) == dataSize) { -+ if ((int)fwrite(data, 1, dataSize, fpOut) == dataSize) { -+ offset += dataSize; -+ totalBytes += dataSize; -+ } else { -+ err = Z_ERRNO; -+ } -+ } else { -+ err = Z_ERRNO; -+ } -+ free(data); -+ if (err != Z_OK) { -+ break; -+ } -+ } else { -+ err = Z_MEM_ERROR; -+ break; -+ } -+ } -+ } -+ -+ /* Central directory entry */ -+ { -+ char cdeHeader[46]; -+ char* comment = ""; -+ int comsize = (int) strlen(comment); -+ WRITE_32(cdeHeader, 0x02014b50); -+ WRITE_16(cdeHeader + 4, version); -+ WRITE_16(cdeHeader + 6, version); -+ WRITE_16(cdeHeader + 8, gpflag); -+ WRITE_16(cdeHeader + 10, method); -+ WRITE_16(cdeHeader + 12, filetime); -+ WRITE_16(cdeHeader + 14, filedate); -+ WRITE_32(cdeHeader + 16, crc); -+ WRITE_32(cdeHeader + 20, cpsize); -+ WRITE_32(cdeHeader + 24, uncpsize); -+ WRITE_16(cdeHeader + 28, fnsize); -+ WRITE_16(cdeHeader + 30, extsize); -+ WRITE_16(cdeHeader + 32, comsize); -+ WRITE_16(cdeHeader + 34, 0); /* disk # */ -+ WRITE_16(cdeHeader + 36, 0); /* int attrb */ -+ WRITE_32(cdeHeader + 38, 0); /* ext attrb */ -+ WRITE_32(cdeHeader + 42, currentOffset); -+ /* Header */ -+ if (fwrite(cdeHeader, 1, 46, fpOutCD) == 46) { -+ offsetCD += 46; -+ -+ /* Filename */ -+ if (fnsize > 0) { -+ if (fwrite(filename, 1, fnsize, fpOutCD) == fnsize) { -+ offsetCD += fnsize; -+ } else { -+ err = Z_ERRNO; -+ break; -+ } -+ } else { -+ err = Z_STREAM_ERROR; -+ break; -+ } -+ -+ /* Extra field */ -+ if (extsize > 0) { -+ if (fwrite(extra, 1, extsize, fpOutCD) == extsize) { -+ offsetCD += extsize; -+ } else { -+ err = Z_ERRNO; -+ break; -+ } -+ } -+ -+ /* Comment field */ -+ if (comsize > 0) { -+ if ((int)fwrite(comment, 1, comsize, fpOutCD) == comsize) { -+ offsetCD += comsize; -+ } else { -+ err = Z_ERRNO; -+ break; -+ } -+ } -+ -+ -+ } else { -+ err = Z_ERRNO; -+ break; -+ } -+ } -+ -+ /* Success */ -+ entries++; -+ -+ } else { -+ break; -+ } -+ } -+ -+ /* Final central directory */ -+ { -+ int entriesZip = entries; -+ char fcdHeader[22]; -+ char* comment = ""; // "ZIP File recovered by zlib/minizip/mztools"; -+ int comsize = (int) strlen(comment); -+ if (entriesZip > 0xffff) { -+ entriesZip = 0xffff; -+ } -+ WRITE_32(fcdHeader, 0x06054b50); -+ WRITE_16(fcdHeader + 4, 0); /* disk # */ -+ WRITE_16(fcdHeader + 6, 0); /* disk # */ -+ WRITE_16(fcdHeader + 8, entriesZip); /* hack */ -+ WRITE_16(fcdHeader + 10, entriesZip); /* hack */ -+ WRITE_32(fcdHeader + 12, offsetCD); /* size of CD */ -+ WRITE_32(fcdHeader + 16, offset); /* offset to CD */ -+ WRITE_16(fcdHeader + 20, comsize); /* comment */ -+ -+ /* Header */ -+ if (fwrite(fcdHeader, 1, 22, fpOutCD) == 22) { -+ -+ /* Comment field */ -+ if (comsize > 0) { -+ if ((int)fwrite(comment, 1, comsize, fpOutCD) != comsize) { -+ err = Z_ERRNO; -+ } -+ } -+ -+ } else { -+ err = Z_ERRNO; -+ } -+ } -+ -+ /* Final merge (file + central directory) */ -+ fclose(fpOutCD); -+ if (err == Z_OK) { -+ fpOutCD = fopen(fileOutTmp, "rb"); -+ if (fpOutCD != NULL) { -+ int nRead; -+ char buffer[8192]; -+ while ( (nRead = (int)fread(buffer, 1, sizeof(buffer), fpOutCD)) > 0) { -+ if ((int)fwrite(buffer, 1, nRead, fpOut) != nRead) { -+ err = Z_ERRNO; -+ break; -+ } -+ } -+ fclose(fpOutCD); -+ } -+ } -+ -+ /* Close */ -+ fclose(fpZip); -+ fclose(fpOut); -+ -+ /* Wipe temporary file */ -+ (void)remove(fileOutTmp); -+ -+ /* Number of recovered entries */ -+ if (err == Z_OK) { -+ if (nRecovered != NULL) { -+ *nRecovered = entries; -+ } -+ if (bytesRecovered != NULL) { -+ *bytesRecovered = totalBytes; -+ } -+ } -+ } else { -+ err = Z_STREAM_ERROR; -+ } -+ return err; -+} -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/mztools.h b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/mztools.h -new file mode 100644 -index 0000000..eee78dc ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/mztools.h -@@ -0,0 +1,31 @@ -+/* -+ Additional tools for Minizip -+ Code: Xavier Roche '2004 -+ License: Same as ZLIB (www.gzip.org) -+*/ -+ -+#ifndef _zip_tools_H -+#define _zip_tools_H -+ -+#ifdef __cplusplus -+extern "C" { -+#endif -+ -+#ifndef _ZLIB_H -+#include "zlib.h" -+#endif -+ -+#include "unzip.h" -+ -+/* Repair a ZIP file (missing central directory) -+ file: file to recover -+ fileOut: output file after recovery -+ fileOutTmp: temporary file name used for recovery -+*/ -+extern int ZEXPORT unzRepair(const char* file, -+ const char* fileOut, -+ const char* fileOutTmp, -+ uLong* nRecovered, -+ uLong* bytesRecovered); -+ -+#endif -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/unzip.c b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/unzip.c -new file mode 100644 -index 0000000..2cca7e3 ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/unzip.c -@@ -0,0 +1,1600 @@ -+/* unzip.c -- IO for uncompress .zip files using zlib -+ Version 1.01e, February 12th, 2005 -+ -+ Copyright (C) 1998-2005 Gilles Vollant -+ -+ Read unzip.h for more info -+*/ -+ -+/* Decryption code comes from crypt.c by Info-ZIP but has been greatly reduced in terms of -+compatibility with older software. The following is from the original crypt.c. Code -+woven in by Terry Thorsen 1/2003. -+*/ -+/* -+ Copyright (c) 1990-2000 Info-ZIP. All rights reserved. -+ -+ See the accompanying file LICENSE, version 2000-Apr-09 or later -+ (the contents of which are also included in zip.h) for terms of use. -+ If, for some reason, all these files are missing, the Info-ZIP license -+ also may be found at: ftp://ftp.info-zip.org/pub/infozip/license.html -+*/ -+/* -+ crypt.c (full version) by Info-ZIP. Last revised: [see crypt.h] -+ -+ The encryption/decryption parts of this source code (as opposed to the -+ non-echoing password parts) were originally written in Europe. The -+ whole source package can be freely distributed, including from the USA. -+ (Prior to January 2000, re-export from the US was a violation of US law.) -+ */ -+ -+/* -+ This encryption code is a direct transcription of the algorithm from -+ Roger Schlafly, described by Phil Katz in the file appnote.txt. This -+ file (appnote.txt) is distributed with the PKZIP program (even in the -+ version without encryption capabilities). -+ */ -+ -+#define NOCRYPT -+#define NOUNCRYPT -+ -+#include -+#include -+#include -+#include "zlib.h" -+#include "unzip.h" -+ -+#ifdef STDC -+# include -+# include -+# include -+#endif -+#ifdef NO_ERRNO_H -+ extern int errno; -+#else -+# include -+#endif -+ -+ -+#ifndef local -+# define local static -+#endif -+/* compile with -Dlocal if your debugger can't find static symbols */ -+ -+ -+#ifndef CASESENSITIVITYDEFAULT_NO -+# if !defined(unix) && !defined(CASESENSITIVITYDEFAULT_YES) -+# define CASESENSITIVITYDEFAULT_NO -+# endif -+#endif -+ -+ -+#ifndef UNZ_BUFSIZE -+#define UNZ_BUFSIZE (16384) -+#endif -+ -+#ifndef UNZ_MAXFILENAMEINZIP -+#define UNZ_MAXFILENAMEINZIP (256) -+#endif -+ -+#ifndef ALLOC -+# define ALLOC(size) (malloc(size)) -+#endif -+#ifndef TRYFREE -+# define TRYFREE(p) {if (p) free(p);} -+#endif -+ -+#define SIZECENTRALDIRITEM (0x2e) -+#define SIZEZIPLOCALHEADER (0x1e) -+ -+ -+ -+ -+const char unz_copyright[] = -+ " unzip 1.01 Copyright 1998-2004 Gilles Vollant - http://www.winimage.com/zLibDll"; -+ -+/* unz_file_info_interntal contain internal info about a file in zipfile*/ -+typedef struct unz_file_info_internal_s -+{ -+ uLong offset_curfile;/* relative offset of local header 4 bytes */ -+} unz_file_info_internal; -+ -+ -+/* file_in_zip_read_info_s contain internal information about a file in zipfile, -+ when reading and decompress it */ -+typedef struct -+{ -+ char *read_buffer; /* internal buffer for compressed data */ -+ z_stream stream; /* zLib stream structure for inflate */ -+ -+ uLong pos_in_zipfile; /* position in byte on the zipfile, for fseek*/ -+ uLong stream_initialised; /* flag set if stream structure is initialised*/ -+ -+ uLong offset_local_extrafield;/* offset of the local extra field */ -+ uInt size_local_extrafield;/* size of the local extra field */ -+ uLong pos_local_extrafield; /* position in the local extra field in read*/ -+ -+ uLong crc32; /* crc32 of all data uncompressed */ -+ uLong crc32_wait; /* crc32 we must obtain after decompress all */ -+ uLong rest_read_compressed; /* number of byte to be decompressed */ -+ uLong rest_read_uncompressed;/*number of byte to be obtained after decomp*/ -+ zlib_filefunc_def z_filefunc; -+ voidpf filestream; /* io structore of the zipfile */ -+ uLong compression_method; /* compression method (0==store) */ -+ uLong byte_before_the_zipfile;/* byte before the zipfile, (>0 for sfx)*/ -+ int raw; -+} file_in_zip_read_info_s; -+ -+ -+/* unz_s contain internal information about the zipfile -+*/ -+typedef struct -+{ -+ zlib_filefunc_def z_filefunc; -+ voidpf filestream; /* io structore of the zipfile */ -+ unz_global_info gi; /* public global information */ -+ uLong byte_before_the_zipfile;/* byte before the zipfile, (>0 for sfx)*/ -+ uLong num_file; /* number of the current file in the zipfile*/ -+ uLong pos_in_central_dir; /* pos of the current file in the central dir*/ -+ uLong current_file_ok; /* flag about the usability of the current file*/ -+ uLong central_pos; /* position of the beginning of the central dir*/ -+ -+ uLong size_central_dir; /* size of the central directory */ -+ uLong offset_central_dir; /* offset of start of central directory with -+ respect to the starting disk number */ -+ -+ unz_file_info cur_file_info; /* public info about the current file in zip*/ -+ unz_file_info_internal cur_file_info_internal; /* private info about it*/ -+ file_in_zip_read_info_s* pfile_in_zip_read; /* structure about the current -+ file if we are decompressing it */ -+ int encrypted; -+# ifndef NOUNCRYPT -+ unsigned long keys[3]; /* keys defining the pseudo-random sequence */ -+ const unsigned long* pcrc_32_tab; -+# endif -+} unz_s; -+ -+ -+#ifndef NOUNCRYPT -+#include "crypt.h" -+#endif -+ -+/* =========================================================================== -+ Read a byte from a gz_stream; update next_in and avail_in. Return EOF -+ for end of file. -+ IN assertion: the stream s has been sucessfully opened for reading. -+*/ -+ -+ -+local int unzlocal_getByte OF(( -+ const zlib_filefunc_def* pzlib_filefunc_def, -+ voidpf filestream, -+ int *pi)); -+ -+local int unzlocal_getByte(pzlib_filefunc_def,filestream,pi) -+ const zlib_filefunc_def* pzlib_filefunc_def; -+ voidpf filestream; -+ int *pi; -+{ -+ unsigned char c; -+ int err = (int)ZREAD(*pzlib_filefunc_def,filestream,&c,1); -+ if (err==1) -+ { -+ *pi = (int)c; -+ return UNZ_OK; -+ } -+ else -+ { -+ if (ZERROR(*pzlib_filefunc_def,filestream)) -+ return UNZ_ERRNO; -+ else -+ return UNZ_EOF; -+ } -+} -+ -+ -+/* =========================================================================== -+ Reads a long in LSB order from the given gz_stream. Sets -+*/ -+local int unzlocal_getShort OF(( -+ const zlib_filefunc_def* pzlib_filefunc_def, -+ voidpf filestream, -+ uLong *pX)); -+ -+local int unzlocal_getShort (pzlib_filefunc_def,filestream,pX) -+ const zlib_filefunc_def* pzlib_filefunc_def; -+ voidpf filestream; -+ uLong *pX; -+{ -+ uLong x ; -+ int i; -+ int err; -+ -+ err = unzlocal_getByte(pzlib_filefunc_def,filestream,&i); -+ x = (uLong)i; -+ -+ if (err==UNZ_OK) -+ err = unzlocal_getByte(pzlib_filefunc_def,filestream,&i); -+ x += ((uLong)i)<<8; -+ -+ if (err==UNZ_OK) -+ *pX = x; -+ else -+ *pX = 0; -+ return err; -+} -+ -+local int unzlocal_getLong OF(( -+ const zlib_filefunc_def* pzlib_filefunc_def, -+ voidpf filestream, -+ uLong *pX)); -+ -+local int unzlocal_getLong (pzlib_filefunc_def,filestream,pX) -+ const zlib_filefunc_def* pzlib_filefunc_def; -+ voidpf filestream; -+ uLong *pX; -+{ -+ uLong x ; -+ int i; -+ int err; -+ -+ err = unzlocal_getByte(pzlib_filefunc_def,filestream,&i); -+ x = (uLong)i; -+ -+ if (err==UNZ_OK) -+ err = unzlocal_getByte(pzlib_filefunc_def,filestream,&i); -+ x += ((uLong)i)<<8; -+ -+ if (err==UNZ_OK) -+ err = unzlocal_getByte(pzlib_filefunc_def,filestream,&i); -+ x += ((uLong)i)<<16; -+ -+ if (err==UNZ_OK) -+ err = unzlocal_getByte(pzlib_filefunc_def,filestream,&i); -+ x += ((uLong)i)<<24; -+ -+ if (err==UNZ_OK) -+ *pX = x; -+ else -+ *pX = 0; -+ return err; -+} -+ -+ -+/* My own strcmpi / strcasecmp */ -+local int strcmpcasenosensitive_internal (fileName1,fileName2) -+ const char* fileName1; -+ const char* fileName2; -+{ -+ for (;;) -+ { -+ char c1=*(fileName1++); -+ char c2=*(fileName2++); -+ if ((c1>='a') && (c1<='z')) -+ c1 -= 0x20; -+ if ((c2>='a') && (c2<='z')) -+ c2 -= 0x20; -+ if (c1=='\0') -+ return ((c2=='\0') ? 0 : -1); -+ if (c2=='\0') -+ return 1; -+ if (c1c2) -+ return 1; -+ } -+} -+ -+ -+#ifdef CASESENSITIVITYDEFAULT_NO -+#define CASESENSITIVITYDEFAULTVALUE 2 -+#else -+#define CASESENSITIVITYDEFAULTVALUE 1 -+#endif -+ -+#ifndef STRCMPCASENOSENTIVEFUNCTION -+#define STRCMPCASENOSENTIVEFUNCTION strcmpcasenosensitive_internal -+#endif -+ -+/* -+ Compare two filename (fileName1,fileName2). -+ If iCaseSenisivity = 1, comparision is case sensitivity (like strcmp) -+ If iCaseSenisivity = 2, comparision is not case sensitivity (like strcmpi -+ or strcasecmp) -+ If iCaseSenisivity = 0, case sensitivity is defaut of your operating system -+ (like 1 on Unix, 2 on Windows) -+ -+*/ -+extern int ZEXPORT unzStringFileNameCompare (fileName1,fileName2,iCaseSensitivity) -+ const char* fileName1; -+ const char* fileName2; -+ int iCaseSensitivity; -+{ -+ if (iCaseSensitivity==0) -+ iCaseSensitivity=CASESENSITIVITYDEFAULTVALUE; -+ -+ if (iCaseSensitivity==1) -+ return strcmp(fileName1,fileName2); -+ -+ return STRCMPCASENOSENTIVEFUNCTION(fileName1,fileName2); -+} -+ -+#ifndef BUFREADCOMMENT -+#define BUFREADCOMMENT (0x400) -+#endif -+ -+/* -+ Locate the Central directory of a zipfile (at the end, just before -+ the global comment) -+*/ -+local uLong unzlocal_SearchCentralDir OF(( -+ const zlib_filefunc_def* pzlib_filefunc_def, -+ voidpf filestream)); -+ -+local uLong unzlocal_SearchCentralDir(pzlib_filefunc_def,filestream) -+ const zlib_filefunc_def* pzlib_filefunc_def; -+ voidpf filestream; -+{ -+ unsigned char* buf; -+ uLong uSizeFile; -+ uLong uBackRead; -+ uLong uMaxBack=0xffff; /* maximum size of global comment */ -+ uLong uPosFound=0; -+ -+ if (ZSEEK(*pzlib_filefunc_def,filestream,0,ZLIB_FILEFUNC_SEEK_END) != 0) -+ return 0; -+ -+ -+ uSizeFile = ZTELL(*pzlib_filefunc_def,filestream); -+ -+ if (uMaxBack>uSizeFile) -+ uMaxBack = uSizeFile; -+ -+ buf = (unsigned char*)ALLOC(BUFREADCOMMENT+4); -+ if (buf==NULL) -+ return 0; -+ -+ uBackRead = 4; -+ while (uBackReaduMaxBack) -+ uBackRead = uMaxBack; -+ else -+ uBackRead+=BUFREADCOMMENT; -+ uReadPos = uSizeFile-uBackRead ; -+ -+ uReadSize = ((BUFREADCOMMENT+4) < (uSizeFile-uReadPos)) ? -+ (BUFREADCOMMENT+4) : (uSizeFile-uReadPos); -+ if (ZSEEK(*pzlib_filefunc_def,filestream,uReadPos,ZLIB_FILEFUNC_SEEK_SET)!=0) -+ break; -+ -+ if (ZREAD(*pzlib_filefunc_def,filestream,buf,uReadSize)!=uReadSize) -+ break; -+ -+ for (i=(int)uReadSize-3; (i--)>0;) -+ if (((*(buf+i))==0x50) && ((*(buf+i+1))==0x4b) && -+ ((*(buf+i+2))==0x05) && ((*(buf+i+3))==0x06)) -+ { -+ uPosFound = uReadPos+i; -+ break; -+ } -+ -+ if (uPosFound!=0) -+ break; -+ } -+ TRYFREE(buf); -+ return uPosFound; -+} -+ -+/* -+ Open a Zip file. path contain the full pathname (by example, -+ on a Windows NT computer "c:\\test\\zlib114.zip" or on an Unix computer -+ "zlib/zlib114.zip". -+ If the zipfile cannot be opened (file doesn't exist or in not valid), the -+ return value is NULL. -+ Else, the return value is a unzFile Handle, usable with other function -+ of this unzip package. -+*/ -+extern unzFile ZEXPORT unzOpen2 (path, pzlib_filefunc_def) -+ const char *path; -+ zlib_filefunc_def* pzlib_filefunc_def; -+{ -+ unz_s us; -+ unz_s *s; -+ uLong central_pos,uL; -+ -+ uLong number_disk; /* number of the current dist, used for -+ spaning ZIP, unsupported, always 0*/ -+ uLong number_disk_with_CD; /* number the the disk with central dir, used -+ for spaning ZIP, unsupported, always 0*/ -+ uLong number_entry_CD; /* total number of entries in -+ the central dir -+ (same than number_entry on nospan) */ -+ -+ int err=UNZ_OK; -+ -+ if (unz_copyright[0]!=' ') -+ return NULL; -+ -+ if (pzlib_filefunc_def==NULL) -+ fill_fopen_filefunc(&us.z_filefunc); -+ else -+ us.z_filefunc = *pzlib_filefunc_def; -+ -+ us.filestream= (*(us.z_filefunc.zopen_file))(us.z_filefunc.opaque, -+ path, -+ ZLIB_FILEFUNC_MODE_READ | -+ ZLIB_FILEFUNC_MODE_EXISTING); -+ if (us.filestream==NULL) -+ return NULL; -+ -+ central_pos = unzlocal_SearchCentralDir(&us.z_filefunc,us.filestream); -+ if (central_pos==0) -+ err=UNZ_ERRNO; -+ -+ if (ZSEEK(us.z_filefunc, us.filestream, -+ central_pos,ZLIB_FILEFUNC_SEEK_SET)!=0) -+ err=UNZ_ERRNO; -+ -+ /* the signature, already checked */ -+ if (unzlocal_getLong(&us.z_filefunc, us.filestream,&uL)!=UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ /* number of this disk */ -+ if (unzlocal_getShort(&us.z_filefunc, us.filestream,&number_disk)!=UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ /* number of the disk with the start of the central directory */ -+ if (unzlocal_getShort(&us.z_filefunc, us.filestream,&number_disk_with_CD)!=UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ /* total number of entries in the central dir on this disk */ -+ if (unzlocal_getShort(&us.z_filefunc, us.filestream,&us.gi.number_entry)!=UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ /* total number of entries in the central dir */ -+ if (unzlocal_getShort(&us.z_filefunc, us.filestream,&number_entry_CD)!=UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ if ((number_entry_CD!=us.gi.number_entry) || -+ (number_disk_with_CD!=0) || -+ (number_disk!=0)) -+ err=UNZ_BADZIPFILE; -+ -+ /* size of the central directory */ -+ if (unzlocal_getLong(&us.z_filefunc, us.filestream,&us.size_central_dir)!=UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ /* offset of start of central directory with respect to the -+ starting disk number */ -+ if (unzlocal_getLong(&us.z_filefunc, us.filestream,&us.offset_central_dir)!=UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ /* zipfile comment length */ -+ if (unzlocal_getShort(&us.z_filefunc, us.filestream,&us.gi.size_comment)!=UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ if ((central_pospfile_in_zip_read!=NULL) -+ unzCloseCurrentFile(file); -+ -+ ZCLOSE(s->z_filefunc, s->filestream); -+ TRYFREE(s); -+ return UNZ_OK; -+} -+ -+ -+/* -+ Write info about the ZipFile in the *pglobal_info structure. -+ No preparation of the structure is needed -+ return UNZ_OK if there is no problem. */ -+extern int ZEXPORT unzGetGlobalInfo (file,pglobal_info) -+ unzFile file; -+ unz_global_info *pglobal_info; -+{ -+ unz_s* s; -+ if (file==NULL) -+ return UNZ_PARAMERROR; -+ s=(unz_s*)file; -+ *pglobal_info=s->gi; -+ return UNZ_OK; -+} -+ -+ -+/* -+ Translate date/time from Dos format to tm_unz (readable more easilty) -+*/ -+local void unzlocal_DosDateToTmuDate (ulDosDate, ptm) -+ uLong ulDosDate; -+ tm_unz* ptm; -+{ -+ uLong uDate; -+ uDate = (uLong)(ulDosDate>>16); -+ ptm->tm_mday = (uInt)(uDate&0x1f) ; -+ ptm->tm_mon = (uInt)((((uDate)&0x1E0)/0x20)-1) ; -+ ptm->tm_year = (uInt)(((uDate&0x0FE00)/0x0200)+1980) ; -+ -+ ptm->tm_hour = (uInt) ((ulDosDate &0xF800)/0x800); -+ ptm->tm_min = (uInt) ((ulDosDate&0x7E0)/0x20) ; -+ ptm->tm_sec = (uInt) (2*(ulDosDate&0x1f)) ; -+} -+ -+/* -+ Get Info about the current file in the zipfile, with internal only info -+*/ -+local int unzlocal_GetCurrentFileInfoInternal OF((unzFile file, -+ unz_file_info *pfile_info, -+ unz_file_info_internal -+ *pfile_info_internal, -+ char *szFileName, -+ uLong fileNameBufferSize, -+ void *extraField, -+ uLong extraFieldBufferSize, -+ char *szComment, -+ uLong commentBufferSize)); -+ -+local int unzlocal_GetCurrentFileInfoInternal (file, -+ pfile_info, -+ pfile_info_internal, -+ szFileName, fileNameBufferSize, -+ extraField, extraFieldBufferSize, -+ szComment, commentBufferSize) -+ unzFile file; -+ unz_file_info *pfile_info; -+ unz_file_info_internal *pfile_info_internal; -+ char *szFileName; -+ uLong fileNameBufferSize; -+ void *extraField; -+ uLong extraFieldBufferSize; -+ char *szComment; -+ uLong commentBufferSize; -+{ -+ unz_s* s; -+ unz_file_info file_info; -+ unz_file_info_internal file_info_internal; -+ int err=UNZ_OK; -+ uLong uMagic; -+ long lSeek=0; -+ -+ if (file==NULL) -+ return UNZ_PARAMERROR; -+ s=(unz_s*)file; -+ if (ZSEEK(s->z_filefunc, s->filestream, -+ s->pos_in_central_dir+s->byte_before_the_zipfile, -+ ZLIB_FILEFUNC_SEEK_SET)!=0) -+ err=UNZ_ERRNO; -+ -+ -+ /* we check the magic */ -+ if (err==UNZ_OK) -+ if (unzlocal_getLong(&s->z_filefunc, s->filestream,&uMagic) != UNZ_OK) -+ err=UNZ_ERRNO; -+ else if (uMagic!=0x02014b50) -+ err=UNZ_BADZIPFILE; -+ -+ if (unzlocal_getShort(&s->z_filefunc, s->filestream,&file_info.version) != UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ if (unzlocal_getShort(&s->z_filefunc, s->filestream,&file_info.version_needed) != UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ if (unzlocal_getShort(&s->z_filefunc, s->filestream,&file_info.flag) != UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ if (unzlocal_getShort(&s->z_filefunc, s->filestream,&file_info.compression_method) != UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ if (unzlocal_getLong(&s->z_filefunc, s->filestream,&file_info.dosDate) != UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ unzlocal_DosDateToTmuDate(file_info.dosDate,&file_info.tmu_date); -+ -+ if (unzlocal_getLong(&s->z_filefunc, s->filestream,&file_info.crc) != UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ if (unzlocal_getLong(&s->z_filefunc, s->filestream,&file_info.compressed_size) != UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ if (unzlocal_getLong(&s->z_filefunc, s->filestream,&file_info.uncompressed_size) != UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ if (unzlocal_getShort(&s->z_filefunc, s->filestream,&file_info.size_filename) != UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ if (unzlocal_getShort(&s->z_filefunc, s->filestream,&file_info.size_file_extra) != UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ if (unzlocal_getShort(&s->z_filefunc, s->filestream,&file_info.size_file_comment) != UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ if (unzlocal_getShort(&s->z_filefunc, s->filestream,&file_info.disk_num_start) != UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ if (unzlocal_getShort(&s->z_filefunc, s->filestream,&file_info.internal_fa) != UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ if (unzlocal_getLong(&s->z_filefunc, s->filestream,&file_info.external_fa) != UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ if (unzlocal_getLong(&s->z_filefunc, s->filestream,&file_info_internal.offset_curfile) != UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ lSeek+=file_info.size_filename; -+ if ((err==UNZ_OK) && (szFileName!=NULL)) -+ { -+ uLong uSizeRead ; -+ if (file_info.size_filename0) && (fileNameBufferSize>0)) -+ if (ZREAD(s->z_filefunc, s->filestream,szFileName,uSizeRead)!=uSizeRead) -+ err=UNZ_ERRNO; -+ lSeek -= uSizeRead; -+ } -+ -+ -+ if ((err==UNZ_OK) && (extraField!=NULL)) -+ { -+ uLong uSizeRead ; -+ if (file_info.size_file_extraz_filefunc, s->filestream,lSeek,ZLIB_FILEFUNC_SEEK_CUR)==0) -+ lSeek=0; -+ else -+ err=UNZ_ERRNO; -+ if ((file_info.size_file_extra>0) && (extraFieldBufferSize>0)) -+ if (ZREAD(s->z_filefunc, s->filestream,extraField,uSizeRead)!=uSizeRead) -+ err=UNZ_ERRNO; -+ lSeek += file_info.size_file_extra - uSizeRead; -+ } -+ else -+ lSeek+=file_info.size_file_extra; -+ -+ -+ if ((err==UNZ_OK) && (szComment!=NULL)) -+ { -+ uLong uSizeRead ; -+ if (file_info.size_file_commentz_filefunc, s->filestream,lSeek,ZLIB_FILEFUNC_SEEK_CUR)==0) -+ lSeek=0; -+ else -+ err=UNZ_ERRNO; -+ if ((file_info.size_file_comment>0) && (commentBufferSize>0)) -+ if (ZREAD(s->z_filefunc, s->filestream,szComment,uSizeRead)!=uSizeRead) -+ err=UNZ_ERRNO; -+ lSeek+=file_info.size_file_comment - uSizeRead; -+ } -+ else -+ lSeek+=file_info.size_file_comment; -+ -+ if ((err==UNZ_OK) && (pfile_info!=NULL)) -+ *pfile_info=file_info; -+ -+ if ((err==UNZ_OK) && (pfile_info_internal!=NULL)) -+ *pfile_info_internal=file_info_internal; -+ -+ return err; -+} -+ -+ -+ -+/* -+ Write info about the ZipFile in the *pglobal_info structure. -+ No preparation of the structure is needed -+ return UNZ_OK if there is no problem. -+*/ -+extern int ZEXPORT unzGetCurrentFileInfo (file, -+ pfile_info, -+ szFileName, fileNameBufferSize, -+ extraField, extraFieldBufferSize, -+ szComment, commentBufferSize) -+ unzFile file; -+ unz_file_info *pfile_info; -+ char *szFileName; -+ uLong fileNameBufferSize; -+ void *extraField; -+ uLong extraFieldBufferSize; -+ char *szComment; -+ uLong commentBufferSize; -+{ -+ return unzlocal_GetCurrentFileInfoInternal(file,pfile_info,NULL, -+ szFileName,fileNameBufferSize, -+ extraField,extraFieldBufferSize, -+ szComment,commentBufferSize); -+} -+ -+/* -+ Set the current file of the zipfile to the first file. -+ return UNZ_OK if there is no problem -+*/ -+extern int ZEXPORT unzGoToFirstFile (file) -+ unzFile file; -+{ -+ int err=UNZ_OK; -+ unz_s* s; -+ if (file==NULL) -+ return UNZ_PARAMERROR; -+ s=(unz_s*)file; -+ s->pos_in_central_dir=s->offset_central_dir; -+ s->num_file=0; -+ err=unzlocal_GetCurrentFileInfoInternal(file,&s->cur_file_info, -+ &s->cur_file_info_internal, -+ NULL,0,NULL,0,NULL,0); -+ s->current_file_ok = (err == UNZ_OK); -+ return err; -+} -+ -+/* -+ Set the current file of the zipfile to the next file. -+ return UNZ_OK if there is no problem -+ return UNZ_END_OF_LIST_OF_FILE if the actual file was the latest. -+*/ -+extern int ZEXPORT unzGoToNextFile (file) -+ unzFile file; -+{ -+ unz_s* s; -+ int err; -+ -+ if (file==NULL) -+ return UNZ_PARAMERROR; -+ s=(unz_s*)file; -+ if (!s->current_file_ok) -+ return UNZ_END_OF_LIST_OF_FILE; -+ if (s->gi.number_entry != 0xffff) /* 2^16 files overflow hack */ -+ if (s->num_file+1==s->gi.number_entry) -+ return UNZ_END_OF_LIST_OF_FILE; -+ -+ s->pos_in_central_dir += SIZECENTRALDIRITEM + s->cur_file_info.size_filename + -+ s->cur_file_info.size_file_extra + s->cur_file_info.size_file_comment ; -+ s->num_file++; -+ err = unzlocal_GetCurrentFileInfoInternal(file,&s->cur_file_info, -+ &s->cur_file_info_internal, -+ NULL,0,NULL,0,NULL,0); -+ s->current_file_ok = (err == UNZ_OK); -+ return err; -+} -+ -+ -+/* -+ Try locate the file szFileName in the zipfile. -+ For the iCaseSensitivity signification, see unzipStringFileNameCompare -+ -+ return value : -+ UNZ_OK if the file is found. It becomes the current file. -+ UNZ_END_OF_LIST_OF_FILE if the file is not found -+*/ -+extern int ZEXPORT unzLocateFile (file, szFileName, iCaseSensitivity) -+ unzFile file; -+ const char *szFileName; -+ int iCaseSensitivity; -+{ -+ unz_s* s; -+ int err; -+ -+ /* We remember the 'current' position in the file so that we can jump -+ * back there if we fail. -+ */ -+ unz_file_info cur_file_infoSaved; -+ unz_file_info_internal cur_file_info_internalSaved; -+ uLong num_fileSaved; -+ uLong pos_in_central_dirSaved; -+ -+ -+ if (file==NULL) -+ return UNZ_PARAMERROR; -+ -+ if (strlen(szFileName)>=UNZ_MAXFILENAMEINZIP) -+ return UNZ_PARAMERROR; -+ -+ s=(unz_s*)file; -+ if (!s->current_file_ok) -+ return UNZ_END_OF_LIST_OF_FILE; -+ -+ /* Save the current state */ -+ num_fileSaved = s->num_file; -+ pos_in_central_dirSaved = s->pos_in_central_dir; -+ cur_file_infoSaved = s->cur_file_info; -+ cur_file_info_internalSaved = s->cur_file_info_internal; -+ -+ err = unzGoToFirstFile(file); -+ -+ while (err == UNZ_OK) -+ { -+ char szCurrentFileName[UNZ_MAXFILENAMEINZIP+1]; -+ err = unzGetCurrentFileInfo(file,NULL, -+ szCurrentFileName,sizeof(szCurrentFileName)-1, -+ NULL,0,NULL,0); -+ if (err == UNZ_OK) -+ { -+ if (unzStringFileNameCompare(szCurrentFileName, -+ szFileName,iCaseSensitivity)==0) -+ return UNZ_OK; -+ err = unzGoToNextFile(file); -+ } -+ } -+ -+ /* We failed, so restore the state of the 'current file' to where we -+ * were. -+ */ -+ s->num_file = num_fileSaved ; -+ s->pos_in_central_dir = pos_in_central_dirSaved ; -+ s->cur_file_info = cur_file_infoSaved; -+ s->cur_file_info_internal = cur_file_info_internalSaved; -+ return err; -+} -+ -+ -+/* -+/////////////////////////////////////////// -+// Contributed by Ryan Haksi (mailto://cryogen@infoserve.net) -+// I need random access -+// -+// Further optimization could be realized by adding an ability -+// to cache the directory in memory. The goal being a single -+// comprehensive file read to put the file I need in a memory. -+*/ -+ -+/* -+typedef struct unz_file_pos_s -+{ -+ uLong pos_in_zip_directory; // offset in file -+ uLong num_of_file; // # of file -+} unz_file_pos; -+*/ -+ -+extern int ZEXPORT unzGetFilePos(file, file_pos) -+ unzFile file; -+ unz_file_pos* file_pos; -+{ -+ unz_s* s; -+ -+ if (file==NULL || file_pos==NULL) -+ return UNZ_PARAMERROR; -+ s=(unz_s*)file; -+ if (!s->current_file_ok) -+ return UNZ_END_OF_LIST_OF_FILE; -+ -+ file_pos->pos_in_zip_directory = s->pos_in_central_dir; -+ file_pos->num_of_file = s->num_file; -+ -+ return UNZ_OK; -+} -+ -+extern int ZEXPORT unzGoToFilePos(file, file_pos) -+ unzFile file; -+ unz_file_pos* file_pos; -+{ -+ unz_s* s; -+ int err; -+ -+ if (file==NULL || file_pos==NULL) -+ return UNZ_PARAMERROR; -+ s=(unz_s*)file; -+ -+ /* jump to the right spot */ -+ s->pos_in_central_dir = file_pos->pos_in_zip_directory; -+ s->num_file = file_pos->num_of_file; -+ -+ /* set the current file */ -+ err = unzlocal_GetCurrentFileInfoInternal(file,&s->cur_file_info, -+ &s->cur_file_info_internal, -+ NULL,0,NULL,0,NULL,0); -+ /* return results */ -+ s->current_file_ok = (err == UNZ_OK); -+ return err; -+} -+ -+/* -+// Unzip Helper Functions - should be here? -+/////////////////////////////////////////// -+*/ -+ -+/* -+ Read the local header of the current zipfile -+ Check the coherency of the local header and info in the end of central -+ directory about this file -+ store in *piSizeVar the size of extra info in local header -+ (filename and size of extra field data) -+*/ -+local int unzlocal_CheckCurrentFileCoherencyHeader (s,piSizeVar, -+ poffset_local_extrafield, -+ psize_local_extrafield) -+ unz_s* s; -+ uInt* piSizeVar; -+ uLong *poffset_local_extrafield; -+ uInt *psize_local_extrafield; -+{ -+ uLong uMagic,uData,uFlags; -+ uLong size_filename; -+ uLong size_extra_field; -+ int err=UNZ_OK; -+ -+ *piSizeVar = 0; -+ *poffset_local_extrafield = 0; -+ *psize_local_extrafield = 0; -+ -+ if (ZSEEK(s->z_filefunc, s->filestream,s->cur_file_info_internal.offset_curfile + -+ s->byte_before_the_zipfile,ZLIB_FILEFUNC_SEEK_SET)!=0) -+ return UNZ_ERRNO; -+ -+ -+ if (err==UNZ_OK) -+ if (unzlocal_getLong(&s->z_filefunc, s->filestream,&uMagic) != UNZ_OK) -+ err=UNZ_ERRNO; -+ else if (uMagic!=0x04034b50) -+ err=UNZ_BADZIPFILE; -+ -+ if (unzlocal_getShort(&s->z_filefunc, s->filestream,&uData) != UNZ_OK) -+ err=UNZ_ERRNO; -+/* -+ else if ((err==UNZ_OK) && (uData!=s->cur_file_info.wVersion)) -+ err=UNZ_BADZIPFILE; -+*/ -+ if (unzlocal_getShort(&s->z_filefunc, s->filestream,&uFlags) != UNZ_OK) -+ err=UNZ_ERRNO; -+ -+ if (unzlocal_getShort(&s->z_filefunc, s->filestream,&uData) != UNZ_OK) -+ err=UNZ_ERRNO; -+ else if ((err==UNZ_OK) && (uData!=s->cur_file_info.compression_method)) -+ err=UNZ_BADZIPFILE; -+ -+ if ((err==UNZ_OK) && (s->cur_file_info.compression_method!=0) && -+ (s->cur_file_info.compression_method!=Z_DEFLATED)) -+ err=UNZ_BADZIPFILE; -+ -+ if (unzlocal_getLong(&s->z_filefunc, s->filestream,&uData) != UNZ_OK) /* date/time */ -+ err=UNZ_ERRNO; -+ -+ if (unzlocal_getLong(&s->z_filefunc, s->filestream,&uData) != UNZ_OK) /* crc */ -+ err=UNZ_ERRNO; -+ else if ((err==UNZ_OK) && (uData!=s->cur_file_info.crc) && -+ ((uFlags & 8)==0)) -+ err=UNZ_BADZIPFILE; -+ -+ if (unzlocal_getLong(&s->z_filefunc, s->filestream,&uData) != UNZ_OK) /* size compr */ -+ err=UNZ_ERRNO; -+ else if ((err==UNZ_OK) && (uData!=s->cur_file_info.compressed_size) && -+ ((uFlags & 8)==0)) -+ err=UNZ_BADZIPFILE; -+ -+ if (unzlocal_getLong(&s->z_filefunc, s->filestream,&uData) != UNZ_OK) /* size uncompr */ -+ err=UNZ_ERRNO; -+ else if ((err==UNZ_OK) && (uData!=s->cur_file_info.uncompressed_size) && -+ ((uFlags & 8)==0)) -+ err=UNZ_BADZIPFILE; -+ -+ -+ if (unzlocal_getShort(&s->z_filefunc, s->filestream,&size_filename) != UNZ_OK) -+ err=UNZ_ERRNO; -+ else if ((err==UNZ_OK) && (size_filename!=s->cur_file_info.size_filename)) -+ err=UNZ_BADZIPFILE; -+ -+ *piSizeVar += (uInt)size_filename; -+ -+ if (unzlocal_getShort(&s->z_filefunc, s->filestream,&size_extra_field) != UNZ_OK) -+ err=UNZ_ERRNO; -+ *poffset_local_extrafield= s->cur_file_info_internal.offset_curfile + -+ SIZEZIPLOCALHEADER + size_filename; -+ *psize_local_extrafield = (uInt)size_extra_field; -+ -+ *piSizeVar += (uInt)size_extra_field; -+ -+ return err; -+} -+ -+/* -+ Open for reading data the current file in the zipfile. -+ If there is no error and the file is opened, the return value is UNZ_OK. -+*/ -+extern int ZEXPORT unzOpenCurrentFile3 (file, method, level, raw, password) -+ unzFile file; -+ int* method; -+ int* level; -+ int raw; -+ const char* password; -+{ -+ int err=UNZ_OK; -+ uInt iSizeVar; -+ unz_s* s; -+ file_in_zip_read_info_s* pfile_in_zip_read_info; -+ uLong offset_local_extrafield; /* offset of the local extra field */ -+ uInt size_local_extrafield; /* size of the local extra field */ -+# ifndef NOUNCRYPT -+ char source[12]; -+# else -+ if (password != NULL) -+ return UNZ_PARAMERROR; -+# endif -+ -+ if (file==NULL) -+ return UNZ_PARAMERROR; -+ s=(unz_s*)file; -+ if (!s->current_file_ok) -+ return UNZ_PARAMERROR; -+ -+ if (s->pfile_in_zip_read != NULL) -+ unzCloseCurrentFile(file); -+ -+ if (unzlocal_CheckCurrentFileCoherencyHeader(s,&iSizeVar, -+ &offset_local_extrafield,&size_local_extrafield)!=UNZ_OK) -+ return UNZ_BADZIPFILE; -+ -+ pfile_in_zip_read_info = (file_in_zip_read_info_s*) -+ ALLOC(sizeof(file_in_zip_read_info_s)); -+ if (pfile_in_zip_read_info==NULL) -+ return UNZ_INTERNALERROR; -+ -+ pfile_in_zip_read_info->read_buffer=(char*)ALLOC(UNZ_BUFSIZE); -+ pfile_in_zip_read_info->offset_local_extrafield = offset_local_extrafield; -+ pfile_in_zip_read_info->size_local_extrafield = size_local_extrafield; -+ pfile_in_zip_read_info->pos_local_extrafield=0; -+ pfile_in_zip_read_info->raw=raw; -+ -+ if (pfile_in_zip_read_info->read_buffer==NULL) -+ { -+ TRYFREE(pfile_in_zip_read_info); -+ return UNZ_INTERNALERROR; -+ } -+ -+ pfile_in_zip_read_info->stream_initialised=0; -+ -+ if (method!=NULL) -+ *method = (int)s->cur_file_info.compression_method; -+ -+ if (level!=NULL) -+ { -+ *level = 6; -+ switch (s->cur_file_info.flag & 0x06) -+ { -+ case 6 : *level = 1; break; -+ case 4 : *level = 2; break; -+ case 2 : *level = 9; break; -+ } -+ } -+ -+ if ((s->cur_file_info.compression_method!=0) && -+ (s->cur_file_info.compression_method!=Z_DEFLATED)) -+ err=UNZ_BADZIPFILE; -+ -+ pfile_in_zip_read_info->crc32_wait=s->cur_file_info.crc; -+ pfile_in_zip_read_info->crc32=0; -+ pfile_in_zip_read_info->compression_method = -+ s->cur_file_info.compression_method; -+ pfile_in_zip_read_info->filestream=s->filestream; -+ pfile_in_zip_read_info->z_filefunc=s->z_filefunc; -+ pfile_in_zip_read_info->byte_before_the_zipfile=s->byte_before_the_zipfile; -+ -+ pfile_in_zip_read_info->stream.total_out = 0; -+ -+ if ((s->cur_file_info.compression_method==Z_DEFLATED) && -+ (!raw)) -+ { -+ pfile_in_zip_read_info->stream.zalloc = (alloc_func)0; -+ pfile_in_zip_read_info->stream.zfree = (free_func)0; -+ pfile_in_zip_read_info->stream.opaque = (voidpf)0; -+ pfile_in_zip_read_info->stream.next_in = (voidpf)0; -+ pfile_in_zip_read_info->stream.avail_in = 0; -+ -+ err=inflateInit2(&pfile_in_zip_read_info->stream, -MAX_WBITS); -+ if (err == Z_OK) -+ pfile_in_zip_read_info->stream_initialised=1; -+ else -+ { -+ TRYFREE(pfile_in_zip_read_info); -+ return err; -+ } -+ /* windowBits is passed < 0 to tell that there is no zlib header. -+ * Note that in this case inflate *requires* an extra "dummy" byte -+ * after the compressed stream in order to complete decompression and -+ * return Z_STREAM_END. -+ * In unzip, i don't wait absolutely Z_STREAM_END because I known the -+ * size of both compressed and uncompressed data -+ */ -+ } -+ pfile_in_zip_read_info->rest_read_compressed = -+ s->cur_file_info.compressed_size ; -+ pfile_in_zip_read_info->rest_read_uncompressed = -+ s->cur_file_info.uncompressed_size ; -+ -+ -+ pfile_in_zip_read_info->pos_in_zipfile = -+ s->cur_file_info_internal.offset_curfile + SIZEZIPLOCALHEADER + -+ iSizeVar; -+ -+ pfile_in_zip_read_info->stream.avail_in = (uInt)0; -+ -+ s->pfile_in_zip_read = pfile_in_zip_read_info; -+ -+# ifndef NOUNCRYPT -+ if (password != NULL) -+ { -+ int i; -+ s->pcrc_32_tab = get_crc_table(); -+ init_keys(password,s->keys,s->pcrc_32_tab); -+ if (ZSEEK(s->z_filefunc, s->filestream, -+ s->pfile_in_zip_read->pos_in_zipfile + -+ s->pfile_in_zip_read->byte_before_the_zipfile, -+ SEEK_SET)!=0) -+ return UNZ_INTERNALERROR; -+ if(ZREAD(s->z_filefunc, s->filestream,source, 12)<12) -+ return UNZ_INTERNALERROR; -+ -+ for (i = 0; i<12; i++) -+ zdecode(s->keys,s->pcrc_32_tab,source[i]); -+ -+ s->pfile_in_zip_read->pos_in_zipfile+=12; -+ s->encrypted=1; -+ } -+# endif -+ -+ -+ return UNZ_OK; -+} -+ -+extern int ZEXPORT unzOpenCurrentFile (file) -+ unzFile file; -+{ -+ return unzOpenCurrentFile3(file, NULL, NULL, 0, NULL); -+} -+ -+extern int ZEXPORT unzOpenCurrentFilePassword (file, password) -+ unzFile file; -+ const char* password; -+{ -+ return unzOpenCurrentFile3(file, NULL, NULL, 0, password); -+} -+ -+extern int ZEXPORT unzOpenCurrentFile2 (file,method,level,raw) -+ unzFile file; -+ int* method; -+ int* level; -+ int raw; -+{ -+ return unzOpenCurrentFile3(file, method, level, raw, NULL); -+} -+ -+/* -+ Read bytes from the current file. -+ buf contain buffer where data must be copied -+ len the size of buf. -+ -+ return the number of byte copied if somes bytes are copied -+ return 0 if the end of file was reached -+ return <0 with error code if there is an error -+ (UNZ_ERRNO for IO error, or zLib error for uncompress error) -+*/ -+extern int ZEXPORT unzReadCurrentFile (file, buf, len) -+ unzFile file; -+ voidp buf; -+ unsigned len; -+{ -+ int err=UNZ_OK; -+ uInt iRead = 0; -+ unz_s* s; -+ file_in_zip_read_info_s* pfile_in_zip_read_info; -+ if (file==NULL) -+ return UNZ_PARAMERROR; -+ s=(unz_s*)file; -+ pfile_in_zip_read_info=s->pfile_in_zip_read; -+ -+ if (pfile_in_zip_read_info==NULL) -+ return UNZ_PARAMERROR; -+ -+ -+ if (pfile_in_zip_read_info->read_buffer == NULL) -+ return UNZ_END_OF_LIST_OF_FILE; -+ if (len==0) -+ return 0; -+ -+ pfile_in_zip_read_info->stream.next_out = (Bytef*)buf; -+ -+ pfile_in_zip_read_info->stream.avail_out = (uInt)len; -+ -+ if ((len>pfile_in_zip_read_info->rest_read_uncompressed) && -+ (!(pfile_in_zip_read_info->raw))) -+ pfile_in_zip_read_info->stream.avail_out = -+ (uInt)pfile_in_zip_read_info->rest_read_uncompressed; -+ -+ if ((len>pfile_in_zip_read_info->rest_read_compressed+ -+ pfile_in_zip_read_info->stream.avail_in) && -+ (pfile_in_zip_read_info->raw)) -+ pfile_in_zip_read_info->stream.avail_out = -+ (uInt)pfile_in_zip_read_info->rest_read_compressed+ -+ pfile_in_zip_read_info->stream.avail_in; -+ -+ while (pfile_in_zip_read_info->stream.avail_out>0) -+ { -+ if ((pfile_in_zip_read_info->stream.avail_in==0) && -+ (pfile_in_zip_read_info->rest_read_compressed>0)) -+ { -+ uInt uReadThis = UNZ_BUFSIZE; -+ if (pfile_in_zip_read_info->rest_read_compressedrest_read_compressed; -+ if (uReadThis == 0) -+ return UNZ_EOF; -+ if (ZSEEK(pfile_in_zip_read_info->z_filefunc, -+ pfile_in_zip_read_info->filestream, -+ pfile_in_zip_read_info->pos_in_zipfile + -+ pfile_in_zip_read_info->byte_before_the_zipfile, -+ ZLIB_FILEFUNC_SEEK_SET)!=0) -+ return UNZ_ERRNO; -+ if (ZREAD(pfile_in_zip_read_info->z_filefunc, -+ pfile_in_zip_read_info->filestream, -+ pfile_in_zip_read_info->read_buffer, -+ uReadThis)!=uReadThis) -+ return UNZ_ERRNO; -+ -+ -+# ifndef NOUNCRYPT -+ if(s->encrypted) -+ { -+ uInt i; -+ for(i=0;iread_buffer[i] = -+ zdecode(s->keys,s->pcrc_32_tab, -+ pfile_in_zip_read_info->read_buffer[i]); -+ } -+# endif -+ -+ -+ pfile_in_zip_read_info->pos_in_zipfile += uReadThis; -+ -+ pfile_in_zip_read_info->rest_read_compressed-=uReadThis; -+ -+ pfile_in_zip_read_info->stream.next_in = -+ (Bytef*)pfile_in_zip_read_info->read_buffer; -+ pfile_in_zip_read_info->stream.avail_in = (uInt)uReadThis; -+ } -+ -+ if ((pfile_in_zip_read_info->compression_method==0) || (pfile_in_zip_read_info->raw)) -+ { -+ uInt uDoCopy,i ; -+ -+ if ((pfile_in_zip_read_info->stream.avail_in == 0) && -+ (pfile_in_zip_read_info->rest_read_compressed == 0)) -+ return (iRead==0) ? UNZ_EOF : iRead; -+ -+ if (pfile_in_zip_read_info->stream.avail_out < -+ pfile_in_zip_read_info->stream.avail_in) -+ uDoCopy = pfile_in_zip_read_info->stream.avail_out ; -+ else -+ uDoCopy = pfile_in_zip_read_info->stream.avail_in ; -+ -+ for (i=0;istream.next_out+i) = -+ *(pfile_in_zip_read_info->stream.next_in+i); -+ -+ pfile_in_zip_read_info->crc32 = crc32(pfile_in_zip_read_info->crc32, -+ pfile_in_zip_read_info->stream.next_out, -+ uDoCopy); -+ pfile_in_zip_read_info->rest_read_uncompressed-=uDoCopy; -+ pfile_in_zip_read_info->stream.avail_in -= uDoCopy; -+ pfile_in_zip_read_info->stream.avail_out -= uDoCopy; -+ pfile_in_zip_read_info->stream.next_out += uDoCopy; -+ pfile_in_zip_read_info->stream.next_in += uDoCopy; -+ pfile_in_zip_read_info->stream.total_out += uDoCopy; -+ iRead += uDoCopy; -+ } -+ else -+ { -+ uLong uTotalOutBefore,uTotalOutAfter; -+ const Bytef *bufBefore; -+ uLong uOutThis; -+ int flush=Z_SYNC_FLUSH; -+ -+ uTotalOutBefore = pfile_in_zip_read_info->stream.total_out; -+ bufBefore = pfile_in_zip_read_info->stream.next_out; -+ -+ /* -+ if ((pfile_in_zip_read_info->rest_read_uncompressed == -+ pfile_in_zip_read_info->stream.avail_out) && -+ (pfile_in_zip_read_info->rest_read_compressed == 0)) -+ flush = Z_FINISH; -+ */ -+ err=inflate(&pfile_in_zip_read_info->stream,flush); -+ -+ if ((err>=0) && (pfile_in_zip_read_info->stream.msg!=NULL)) -+ err = Z_DATA_ERROR; -+ -+ uTotalOutAfter = pfile_in_zip_read_info->stream.total_out; -+ uOutThis = uTotalOutAfter-uTotalOutBefore; -+ -+ pfile_in_zip_read_info->crc32 = -+ crc32(pfile_in_zip_read_info->crc32,bufBefore, -+ (uInt)(uOutThis)); -+ -+ pfile_in_zip_read_info->rest_read_uncompressed -= -+ uOutThis; -+ -+ iRead += (uInt)(uTotalOutAfter - uTotalOutBefore); -+ -+ if (err==Z_STREAM_END) -+ return (iRead==0) ? UNZ_EOF : iRead; -+ if (err!=Z_OK) -+ break; -+ } -+ } -+ -+ if (err==Z_OK) -+ return iRead; -+ return err; -+} -+ -+ -+/* -+ Give the current position in uncompressed data -+*/ -+extern z_off_t ZEXPORT unztell (file) -+ unzFile file; -+{ -+ unz_s* s; -+ file_in_zip_read_info_s* pfile_in_zip_read_info; -+ if (file==NULL) -+ return UNZ_PARAMERROR; -+ s=(unz_s*)file; -+ pfile_in_zip_read_info=s->pfile_in_zip_read; -+ -+ if (pfile_in_zip_read_info==NULL) -+ return UNZ_PARAMERROR; -+ -+ return (z_off_t)pfile_in_zip_read_info->stream.total_out; -+} -+ -+ -+/* -+ return 1 if the end of file was reached, 0 elsewhere -+*/ -+extern int ZEXPORT unzeof (file) -+ unzFile file; -+{ -+ unz_s* s; -+ file_in_zip_read_info_s* pfile_in_zip_read_info; -+ if (file==NULL) -+ return UNZ_PARAMERROR; -+ s=(unz_s*)file; -+ pfile_in_zip_read_info=s->pfile_in_zip_read; -+ -+ if (pfile_in_zip_read_info==NULL) -+ return UNZ_PARAMERROR; -+ -+ if (pfile_in_zip_read_info->rest_read_uncompressed == 0) -+ return 1; -+ else -+ return 0; -+} -+ -+ -+ -+/* -+ Read extra field from the current file (opened by unzOpenCurrentFile) -+ This is the local-header version of the extra field (sometimes, there is -+ more info in the local-header version than in the central-header) -+ -+ if buf==NULL, it return the size of the local extra field that can be read -+ -+ if buf!=NULL, len is the size of the buffer, the extra header is copied in -+ buf. -+ the return value is the number of bytes copied in buf, or (if <0) -+ the error code -+*/ -+extern int ZEXPORT unzGetLocalExtrafield (file,buf,len) -+ unzFile file; -+ voidp buf; -+ unsigned len; -+{ -+ unz_s* s; -+ file_in_zip_read_info_s* pfile_in_zip_read_info; -+ uInt read_now; -+ uLong size_to_read; -+ -+ if (file==NULL) -+ return UNZ_PARAMERROR; -+ s=(unz_s*)file; -+ pfile_in_zip_read_info=s->pfile_in_zip_read; -+ -+ if (pfile_in_zip_read_info==NULL) -+ return UNZ_PARAMERROR; -+ -+ size_to_read = (pfile_in_zip_read_info->size_local_extrafield - -+ pfile_in_zip_read_info->pos_local_extrafield); -+ -+ if (buf==NULL) -+ return (int)size_to_read; -+ -+ if (len>size_to_read) -+ read_now = (uInt)size_to_read; -+ else -+ read_now = (uInt)len ; -+ -+ if (read_now==0) -+ return 0; -+ -+ if (ZSEEK(pfile_in_zip_read_info->z_filefunc, -+ pfile_in_zip_read_info->filestream, -+ pfile_in_zip_read_info->offset_local_extrafield + -+ pfile_in_zip_read_info->pos_local_extrafield, -+ ZLIB_FILEFUNC_SEEK_SET)!=0) -+ return UNZ_ERRNO; -+ -+ if (ZREAD(pfile_in_zip_read_info->z_filefunc, -+ pfile_in_zip_read_info->filestream, -+ buf,read_now)!=read_now) -+ return UNZ_ERRNO; -+ -+ return (int)read_now; -+} -+ -+/* -+ Close the file in zip opened with unzipOpenCurrentFile -+ Return UNZ_CRCERROR if all the file was read but the CRC is not good -+*/ -+extern int ZEXPORT unzCloseCurrentFile (file) -+ unzFile file; -+{ -+ int err=UNZ_OK; -+ -+ unz_s* s; -+ file_in_zip_read_info_s* pfile_in_zip_read_info; -+ if (file==NULL) -+ return UNZ_PARAMERROR; -+ s=(unz_s*)file; -+ pfile_in_zip_read_info=s->pfile_in_zip_read; -+ -+ if (pfile_in_zip_read_info==NULL) -+ return UNZ_PARAMERROR; -+ -+ -+ if ((pfile_in_zip_read_info->rest_read_uncompressed == 0) && -+ (!pfile_in_zip_read_info->raw)) -+ { -+ if (pfile_in_zip_read_info->crc32 != pfile_in_zip_read_info->crc32_wait) -+ err=UNZ_CRCERROR; -+ } -+ -+ -+ TRYFREE(pfile_in_zip_read_info->read_buffer); -+ pfile_in_zip_read_info->read_buffer = NULL; -+ if (pfile_in_zip_read_info->stream_initialised) -+ inflateEnd(&pfile_in_zip_read_info->stream); -+ -+ pfile_in_zip_read_info->stream_initialised = 0; -+ TRYFREE(pfile_in_zip_read_info); -+ -+ s->pfile_in_zip_read=NULL; -+ -+ return err; -+} -+ -+ -+/* -+ Get the global comment string of the ZipFile, in the szComment buffer. -+ uSizeBuf is the size of the szComment buffer. -+ return the number of byte copied or an error code <0 -+*/ -+extern int ZEXPORT unzGetGlobalComment (file, szComment, uSizeBuf) -+ unzFile file; -+ char *szComment; -+ uLong uSizeBuf; -+{ -+// int err=UNZ_OK; -+ unz_s* s; -+ uLong uReadThis ; -+ if (file==NULL) -+ return UNZ_PARAMERROR; -+ s=(unz_s*)file; -+ -+ uReadThis = uSizeBuf; -+ if (uReadThis>s->gi.size_comment) -+ uReadThis = s->gi.size_comment; -+ -+ if (ZSEEK(s->z_filefunc,s->filestream,s->central_pos+22,ZLIB_FILEFUNC_SEEK_SET)!=0) -+ return UNZ_ERRNO; -+ -+ if (uReadThis>0) -+ { -+ *szComment='\0'; -+ if (ZREAD(s->z_filefunc,s->filestream,szComment,uReadThis)!=uReadThis) -+ return UNZ_ERRNO; -+ } -+ -+ if ((szComment != NULL) && (uSizeBuf > s->gi.size_comment)) -+ *(szComment+s->gi.size_comment)='\0'; -+ return (int)uReadThis; -+} -+ -+/* Additions by RX '2004 */ -+extern uLong ZEXPORT unzGetOffset (file) -+ unzFile file; -+{ -+ unz_s* s; -+ -+ if (file==NULL) -+ return UNZ_PARAMERROR; -+ s=(unz_s*)file; -+ if (!s->current_file_ok) -+ return 0; -+ if (s->gi.number_entry != 0 && s->gi.number_entry != 0xffff) -+ if (s->num_file==s->gi.number_entry) -+ return 0; -+ return s->pos_in_central_dir; -+} -+ -+extern int ZEXPORT unzSetOffset (file, pos) -+ unzFile file; -+ uLong pos; -+{ -+ unz_s* s; -+ int err; -+ -+ if (file==NULL) -+ return UNZ_PARAMERROR; -+ s=(unz_s*)file; -+ -+ s->pos_in_central_dir = pos; -+ s->num_file = s->gi.number_entry; /* hack */ -+ err = unzlocal_GetCurrentFileInfoInternal(file,&s->cur_file_info, -+ &s->cur_file_info_internal, -+ NULL,0,NULL,0,NULL,0); -+ s->current_file_ok = (err == UNZ_OK); -+ return err; -+} -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/unzip.h b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/unzip.h -new file mode 100644 -index 0000000..b247937 ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/unzip.h -@@ -0,0 +1,354 @@ -+/* unzip.h -- IO for uncompress .zip files using zlib -+ Version 1.01e, February 12th, 2005 -+ -+ Copyright (C) 1998-2005 Gilles Vollant -+ -+ This unzip package allow extract file from .ZIP file, compatible with PKZip 2.04g -+ WinZip, InfoZip tools and compatible. -+ -+ Multi volume ZipFile (span) are not supported. -+ Encryption compatible with pkzip 2.04g only supported -+ Old compressions used by old PKZip 1.x are not supported -+ -+ -+ I WAIT FEEDBACK at mail info@winimage.com -+ Visit also http://www.winimage.com/zLibDll/unzip.htm for evolution -+ -+ Condition of use and distribution are the same than zlib : -+ -+ This software is provided 'as-is', without any express or implied -+ warranty. In no event will the authors be held liable for any damages -+ arising from the use of this software. -+ -+ Permission is granted to anyone to use this software for any purpose, -+ including commercial applications, and to alter it and redistribute it -+ freely, subject to the following restrictions: -+ -+ 1. The origin of this software must not be misrepresented; you must not -+ claim that you wrote the original software. If you use this software -+ in a product, an acknowledgment in the product documentation would be -+ appreciated but is not required. -+ 2. Altered source versions must be plainly marked as such, and must not be -+ misrepresented as being the original software. -+ 3. This notice may not be removed or altered from any source distribution. -+ -+ -+*/ -+ -+/* for more info about .ZIP format, see -+ http://www.info-zip.org/pub/infozip/doc/appnote-981119-iz.zip -+ http://www.info-zip.org/pub/infozip/doc/ -+ PkWare has also a specification at : -+ ftp://ftp.pkware.com/probdesc.zip -+*/ -+ -+#ifndef _unz_H -+#define _unz_H -+ -+#ifdef __cplusplus -+extern "C" { -+#endif -+ -+#ifndef _ZLIB_H -+#include "zlib.h" -+#endif -+ -+#ifndef _ZLIBIOAPI_H -+#include "ioapi.h" -+#endif -+ -+#if defined(STRICTUNZIP) || defined(STRICTZIPUNZIP) -+/* like the STRICT of WIN32, we define a pointer that cannot be converted -+ from (void*) without cast */ -+typedef struct TagunzFile__ { int unused; } unzFile__; -+typedef unzFile__ *unzFile; -+#else -+typedef voidp unzFile; -+#endif -+ -+ -+#define UNZ_OK (0) -+#define UNZ_END_OF_LIST_OF_FILE (-100) -+#define UNZ_ERRNO (Z_ERRNO) -+#define UNZ_EOF (0) -+#define UNZ_PARAMERROR (-102) -+#define UNZ_BADZIPFILE (-103) -+#define UNZ_INTERNALERROR (-104) -+#define UNZ_CRCERROR (-105) -+ -+/* tm_unz contain date/time info */ -+typedef struct tm_unz_s -+{ -+ uInt tm_sec; /* seconds after the minute - [0,59] */ -+ uInt tm_min; /* minutes after the hour - [0,59] */ -+ uInt tm_hour; /* hours since midnight - [0,23] */ -+ uInt tm_mday; /* day of the month - [1,31] */ -+ uInt tm_mon; /* months since January - [0,11] */ -+ uInt tm_year; /* years - [1980..2044] */ -+} tm_unz; -+ -+/* unz_global_info structure contain global data about the ZIPfile -+ These data comes from the end of central dir */ -+typedef struct unz_global_info_s -+{ -+ uLong number_entry; /* total number of entries in -+ the central dir on this disk */ -+ uLong size_comment; /* size of the global comment of the zipfile */ -+} unz_global_info; -+ -+ -+/* unz_file_info contain information about a file in the zipfile */ -+typedef struct unz_file_info_s -+{ -+ uLong version; /* version made by 2 bytes */ -+ uLong version_needed; /* version needed to extract 2 bytes */ -+ uLong flag; /* general purpose bit flag 2 bytes */ -+ uLong compression_method; /* compression method 2 bytes */ -+ uLong dosDate; /* last mod file date in Dos fmt 4 bytes */ -+ uLong crc; /* crc-32 4 bytes */ -+ uLong compressed_size; /* compressed size 4 bytes */ -+ uLong uncompressed_size; /* uncompressed size 4 bytes */ -+ uLong size_filename; /* filename length 2 bytes */ -+ uLong size_file_extra; /* extra field length 2 bytes */ -+ uLong size_file_comment; /* file comment length 2 bytes */ -+ -+ uLong disk_num_start; /* disk number start 2 bytes */ -+ uLong internal_fa; /* internal file attributes 2 bytes */ -+ uLong external_fa; /* external file attributes 4 bytes */ -+ -+ tm_unz tmu_date; -+} unz_file_info; -+ -+extern int ZEXPORT unzStringFileNameCompare OF ((const char* fileName1, -+ const char* fileName2, -+ int iCaseSensitivity)); -+/* -+ Compare two filename (fileName1,fileName2). -+ If iCaseSenisivity = 1, comparision is case sensitivity (like strcmp) -+ If iCaseSenisivity = 2, comparision is not case sensitivity (like strcmpi -+ or strcasecmp) -+ If iCaseSenisivity = 0, case sensitivity is defaut of your operating system -+ (like 1 on Unix, 2 on Windows) -+*/ -+ -+ -+extern unzFile ZEXPORT unzOpen OF((const char *path)); -+/* -+ Open a Zip file. path contain the full pathname (by example, -+ on a Windows XP computer "c:\\zlib\\zlib113.zip" or on an Unix computer -+ "zlib/zlib113.zip". -+ If the zipfile cannot be opened (file don't exist or in not valid), the -+ return value is NULL. -+ Else, the return value is a unzFile Handle, usable with other function -+ of this unzip package. -+*/ -+ -+extern unzFile ZEXPORT unzOpen2 OF((const char *path, -+ zlib_filefunc_def* pzlib_filefunc_def)); -+/* -+ Open a Zip file, like unzOpen, but provide a set of file low level API -+ for read/write the zip file (see ioapi.h) -+*/ -+ -+extern int ZEXPORT unzClose OF((unzFile file)); -+/* -+ Close a ZipFile opened with unzipOpen. -+ If there is files inside the .Zip opened with unzOpenCurrentFile (see later), -+ these files MUST be closed with unzipCloseCurrentFile before call unzipClose. -+ return UNZ_OK if there is no problem. */ -+ -+extern int ZEXPORT unzGetGlobalInfo OF((unzFile file, -+ unz_global_info *pglobal_info)); -+/* -+ Write info about the ZipFile in the *pglobal_info structure. -+ No preparation of the structure is needed -+ return UNZ_OK if there is no problem. */ -+ -+ -+extern int ZEXPORT unzGetGlobalComment OF((unzFile file, -+ char *szComment, -+ uLong uSizeBuf)); -+/* -+ Get the global comment string of the ZipFile, in the szComment buffer. -+ uSizeBuf is the size of the szComment buffer. -+ return the number of byte copied or an error code <0 -+*/ -+ -+ -+/***************************************************************************/ -+/* Unzip package allow you browse the directory of the zipfile */ -+ -+extern int ZEXPORT unzGoToFirstFile OF((unzFile file)); -+/* -+ Set the current file of the zipfile to the first file. -+ return UNZ_OK if there is no problem -+*/ -+ -+extern int ZEXPORT unzGoToNextFile OF((unzFile file)); -+/* -+ Set the current file of the zipfile to the next file. -+ return UNZ_OK if there is no problem -+ return UNZ_END_OF_LIST_OF_FILE if the actual file was the latest. -+*/ -+ -+extern int ZEXPORT unzLocateFile OF((unzFile file, -+ const char *szFileName, -+ int iCaseSensitivity)); -+/* -+ Try locate the file szFileName in the zipfile. -+ For the iCaseSensitivity signification, see unzStringFileNameCompare -+ -+ return value : -+ UNZ_OK if the file is found. It becomes the current file. -+ UNZ_END_OF_LIST_OF_FILE if the file is not found -+*/ -+ -+ -+/* ****************************************** */ -+/* Ryan supplied functions */ -+/* unz_file_info contain information about a file in the zipfile */ -+typedef struct unz_file_pos_s -+{ -+ uLong pos_in_zip_directory; /* offset in zip file directory */ -+ uLong num_of_file; /* # of file */ -+} unz_file_pos; -+ -+extern int ZEXPORT unzGetFilePos( -+ unzFile file, -+ unz_file_pos* file_pos); -+ -+extern int ZEXPORT unzGoToFilePos( -+ unzFile file, -+ unz_file_pos* file_pos); -+ -+/* ****************************************** */ -+ -+extern int ZEXPORT unzGetCurrentFileInfo OF((unzFile file, -+ unz_file_info *pfile_info, -+ char *szFileName, -+ uLong fileNameBufferSize, -+ void *extraField, -+ uLong extraFieldBufferSize, -+ char *szComment, -+ uLong commentBufferSize)); -+/* -+ Get Info about the current file -+ if pfile_info!=NULL, the *pfile_info structure will contain somes info about -+ the current file -+ if szFileName!=NULL, the filemane string will be copied in szFileName -+ (fileNameBufferSize is the size of the buffer) -+ if extraField!=NULL, the extra field information will be copied in extraField -+ (extraFieldBufferSize is the size of the buffer). -+ This is the Central-header version of the extra field -+ if szComment!=NULL, the comment string of the file will be copied in szComment -+ (commentBufferSize is the size of the buffer) -+*/ -+ -+/***************************************************************************/ -+/* for reading the content of the current zipfile, you can open it, read data -+ from it, and close it (you can close it before reading all the file) -+ */ -+ -+extern int ZEXPORT unzOpenCurrentFile OF((unzFile file)); -+/* -+ Open for reading data the current file in the zipfile. -+ If there is no error, the return value is UNZ_OK. -+*/ -+ -+extern int ZEXPORT unzOpenCurrentFilePassword OF((unzFile file, -+ const char* password)); -+/* -+ Open for reading data the current file in the zipfile. -+ password is a crypting password -+ If there is no error, the return value is UNZ_OK. -+*/ -+ -+extern int ZEXPORT unzOpenCurrentFile2 OF((unzFile file, -+ int* method, -+ int* level, -+ int raw)); -+/* -+ Same than unzOpenCurrentFile, but open for read raw the file (not uncompress) -+ if raw==1 -+ *method will receive method of compression, *level will receive level of -+ compression -+ note : you can set level parameter as NULL (if you did not want known level, -+ but you CANNOT set method parameter as NULL -+*/ -+ -+extern int ZEXPORT unzOpenCurrentFile3 OF((unzFile file, -+ int* method, -+ int* level, -+ int raw, -+ const char* password)); -+/* -+ Same than unzOpenCurrentFile, but open for read raw the file (not uncompress) -+ if raw==1 -+ *method will receive method of compression, *level will receive level of -+ compression -+ note : you can set level parameter as NULL (if you did not want known level, -+ but you CANNOT set method parameter as NULL -+*/ -+ -+ -+extern int ZEXPORT unzCloseCurrentFile OF((unzFile file)); -+/* -+ Close the file in zip opened with unzOpenCurrentFile -+ Return UNZ_CRCERROR if all the file was read but the CRC is not good -+*/ -+ -+extern int ZEXPORT unzReadCurrentFile OF((unzFile file, -+ voidp buf, -+ unsigned len)); -+/* -+ Read bytes from the current file (opened by unzOpenCurrentFile) -+ buf contain buffer where data must be copied -+ len the size of buf. -+ -+ return the number of byte copied if somes bytes are copied -+ return 0 if the end of file was reached -+ return <0 with error code if there is an error -+ (UNZ_ERRNO for IO error, or zLib error for uncompress error) -+*/ -+ -+extern z_off_t ZEXPORT unztell OF((unzFile file)); -+/* -+ Give the current position in uncompressed data -+*/ -+ -+extern int ZEXPORT unzeof OF((unzFile file)); -+/* -+ return 1 if the end of file was reached, 0 elsewhere -+*/ -+ -+extern int ZEXPORT unzGetLocalExtrafield OF((unzFile file, -+ voidp buf, -+ unsigned len)); -+/* -+ Read extra field from the current file (opened by unzOpenCurrentFile) -+ This is the local-header version of the extra field (sometimes, there is -+ more info in the local-header version than in the central-header) -+ -+ if buf==NULL, it return the size of the local extra field -+ -+ if buf!=NULL, len is the size of the buffer, the extra header is copied in -+ buf. -+ the return value is the number of bytes copied in buf, or (if <0) -+ the error code -+*/ -+ -+/***************************************************************************/ -+ -+/* Get the current file offset */ -+extern uLong ZEXPORT unzGetOffset (unzFile file); -+ -+/* Set the current file offset */ -+extern int ZEXPORT unzSetOffset (unzFile file, uLong pos); -+ -+ -+ -+#ifdef __cplusplus -+} -+#endif -+ -+#endif /* _unz_H */ -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/zip.c b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/zip.c -new file mode 100644 -index 0000000..e261706 ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/zip.c -@@ -0,0 +1,1214 @@ -+/* zip.c -- IO on .zip files using zlib -+ Version 1.01e, February 12th, 2005 -+ -+ 27 Dec 2004 Rolf Kalbermatter -+ Modification to zipOpen2 to support globalComment retrieval. -+ -+ Copyright (C) 1998-2005 Gilles Vollant -+ -+ Read zip.h for more info -+*/ -+ -+#define NOCRYPT -+#define NOUNCRYPT -+ -+#include -+#include -+#include -+#include -+#include "zlib.h" -+#include "zip.h" -+ -+#ifdef STDC -+# include -+# include -+# include -+#endif -+#ifdef NO_ERRNO_H -+ extern int errno; -+#else -+# include -+#endif -+ -+ -+#ifndef local -+# define local static -+#endif -+/* compile with -Dlocal if your debugger can't find static symbols */ -+ -+#ifndef VERSIONMADEBY -+# define VERSIONMADEBY (0x0) /* platform depedent */ -+#endif -+ -+#ifndef Z_BUFSIZE -+#define Z_BUFSIZE (16384) -+#endif -+ -+#ifndef Z_MAXFILENAMEINZIP -+#define Z_MAXFILENAMEINZIP (256) -+#endif -+ -+#ifndef ALLOC -+# define ALLOC(size) (malloc(size)) -+#endif -+#ifndef TRYFREE -+# define TRYFREE(p) {if (p) free(p);} -+#endif -+ -+/* -+#define SIZECENTRALDIRITEM (0x2e) -+#define SIZEZIPLOCALHEADER (0x1e) -+*/ -+ -+/* I've found an old Unix (a SunOS 4.1.3_U1) without all SEEK_* defined.... */ -+ -+#ifndef SEEK_CUR -+#define SEEK_CUR 1 -+#endif -+ -+#ifndef SEEK_END -+#define SEEK_END 2 -+#endif -+ -+#ifndef SEEK_SET -+#define SEEK_SET 0 -+#endif -+ -+#ifndef DEF_MEM_LEVEL -+#if MAX_MEM_LEVEL >= 8 -+# define DEF_MEM_LEVEL 8 -+#else -+# define DEF_MEM_LEVEL MAX_MEM_LEVEL -+#endif -+#endif -+const char zip_copyright[] = -+ " zip 1.01 Copyright 1998-2004 Gilles Vollant - http://www.winimage.com/zLibDll"; -+ -+ -+#define SIZEDATA_INDATABLOCK (4096-(4*4)) -+ -+#define LOCALHEADERMAGIC (0x04034b50) -+#define CENTRALHEADERMAGIC (0x02014b50) -+#define ENDHEADERMAGIC (0x06054b50) -+ -+#define FLAG_LOCALHEADER_OFFSET (0x06) -+#define CRC_LOCALHEADER_OFFSET (0x0e) -+ -+#define SIZECENTRALHEADER (0x2e) /* 46 */ -+ -+typedef struct linkedlist_datablock_internal_s -+{ -+ struct linkedlist_datablock_internal_s* next_datablock; -+ uLong avail_in_this_block; -+ uLong filled_in_this_block; -+ uLong unused; /* for future use and alignement */ -+ unsigned char data[SIZEDATA_INDATABLOCK]; -+} linkedlist_datablock_internal; -+ -+typedef struct linkedlist_data_s -+{ -+ linkedlist_datablock_internal* first_block; -+ linkedlist_datablock_internal* last_block; -+} linkedlist_data; -+ -+ -+typedef struct -+{ -+ z_stream stream; /* zLib stream structure for inflate */ -+ int stream_initialised; /* 1 is stream is initialised */ -+ uInt pos_in_buffered_data; /* last written byte in buffered_data */ -+ -+ uLong pos_local_header; /* offset of the local header of the file -+ currenty writing */ -+ char* central_header; /* central header data for the current file */ -+ uLong size_centralheader; /* size of the central header for cur file */ -+ uLong flag; /* flag of the file currently writing */ -+ -+ int method; /* compression method of file currenty wr.*/ -+ int raw; /* 1 for directly writing raw data */ -+ Byte buffered_data[Z_BUFSIZE];/* buffer contain compressed data to be writ*/ -+ uLong dosDate; -+ uLong crc32; -+ int encrypt; -+#ifndef NOCRYPT -+ unsigned long keys[3]; /* keys defining the pseudo-random sequence */ -+ const unsigned long* pcrc_32_tab; -+ int crypt_header_size; -+#endif -+} curfile_info; -+ -+typedef struct -+{ -+ zlib_filefunc_def z_filefunc; -+ voidpf filestream; /* io structore of the zipfile */ -+ linkedlist_data central_dir;/* datablock with central dir in construction*/ -+ int in_opened_file_inzip; /* 1 if a file in the zip is currently writ.*/ -+ curfile_info ci; /* info on the file curretly writing */ -+ -+ uLong begin_pos; /* position of the beginning of the zipfile */ -+ uLong add_position_when_writting_offset; -+ uLong number_entry; -+#ifndef NO_ADDFILEINEXISTINGZIP -+ char *globalcomment; -+#endif -+} zip_internal; -+ -+ -+ -+#ifndef NOCRYPT -+#define INCLUDECRYPTINGCODE_IFCRYPTALLOWED -+#include "crypt.h" -+#endif -+ -+local linkedlist_datablock_internal* allocate_new_datablock() -+{ -+ linkedlist_datablock_internal* ldi; -+ ldi = (linkedlist_datablock_internal*) -+ ALLOC(sizeof(linkedlist_datablock_internal)); -+ if (ldi!=NULL) -+ { -+ ldi->next_datablock = NULL ; -+ ldi->filled_in_this_block = 0 ; -+ ldi->avail_in_this_block = SIZEDATA_INDATABLOCK ; -+ } -+ return ldi; -+} -+ -+local void free_datablock(ldi) -+ linkedlist_datablock_internal* ldi; -+{ -+ while (ldi!=NULL) -+ { -+ linkedlist_datablock_internal* ldinext = ldi->next_datablock; -+ TRYFREE(ldi); -+ ldi = ldinext; -+ } -+} -+ -+local void init_linkedlist(ll) -+ linkedlist_data* ll; -+{ -+ ll->first_block = ll->last_block = NULL; -+} -+ -+local int add_data_in_datablock(ll,buf,len) -+ linkedlist_data* ll; -+ const void* buf; -+ uLong len; -+{ -+ linkedlist_datablock_internal* ldi; -+ const unsigned char* from_copy; -+ -+ if (ll==NULL) -+ return ZIP_INTERNALERROR; -+ -+ if (ll->last_block == NULL) -+ { -+ ll->first_block = ll->last_block = allocate_new_datablock(); -+ if (ll->first_block == NULL) -+ return ZIP_INTERNALERROR; -+ } -+ -+ ldi = ll->last_block; -+ from_copy = (unsigned char*)buf; -+ -+ while (len>0) -+ { -+ uInt copy_this; -+ uInt i; -+ unsigned char* to_copy; -+ -+ if (ldi->avail_in_this_block==0) -+ { -+ ldi->next_datablock = allocate_new_datablock(); -+ if (ldi->next_datablock == NULL) -+ return ZIP_INTERNALERROR; -+ ldi = ldi->next_datablock ; -+ ll->last_block = ldi; -+ } -+ -+ if (ldi->avail_in_this_block < len) -+ copy_this = (uInt)ldi->avail_in_this_block; -+ else -+ copy_this = (uInt)len; -+ -+ to_copy = &(ldi->data[ldi->filled_in_this_block]); -+ -+ for (i=0;ifilled_in_this_block += copy_this; -+ ldi->avail_in_this_block -= copy_this; -+ from_copy += copy_this ; -+ len -= copy_this; -+ } -+ return ZIP_OK; -+} -+ -+ -+ -+/****************************************************************************/ -+ -+#ifndef NO_ADDFILEINEXISTINGZIP -+/* =========================================================================== -+ Inputs a long in LSB order to the given file -+ nbByte == 1, 2 or 4 (byte, short or long) -+*/ -+ -+local int ziplocal_putValue OF((const zlib_filefunc_def* pzlib_filefunc_def, -+ voidpf filestream, uLong x, int nbByte)); -+local int ziplocal_putValue (pzlib_filefunc_def, filestream, x, nbByte) -+ const zlib_filefunc_def* pzlib_filefunc_def; -+ voidpf filestream; -+ uLong x; -+ int nbByte; -+{ -+ unsigned char buf[4]; -+ int n; -+ for (n = 0; n < nbByte; n++) -+ { -+ buf[n] = (unsigned char)(x & 0xff); -+ x >>= 8; -+ } -+ if (x != 0) -+ { /* data overflow - hack for ZIP64 (X Roche) */ -+ for (n = 0; n < nbByte; n++) -+ { -+ buf[n] = 0xff; -+ } -+ } -+ -+ if (ZWRITE(*pzlib_filefunc_def,filestream,buf,nbByte)!=(uLong)nbByte) -+ return ZIP_ERRNO; -+ else -+ return ZIP_OK; -+} -+ -+local void ziplocal_putValue_inmemory OF((void* dest, uLong x, int nbByte)); -+local void ziplocal_putValue_inmemory (dest, x, nbByte) -+ void* dest; -+ uLong x; -+ int nbByte; -+{ -+ unsigned char* buf=(unsigned char*)dest; -+ int n; -+ for (n = 0; n < nbByte; n++) { -+ buf[n] = (unsigned char)(x & 0xff); -+ x >>= 8; -+ } -+ -+ if (x != 0) -+ { /* data overflow - hack for ZIP64 */ -+ for (n = 0; n < nbByte; n++) -+ { -+ buf[n] = 0xff; -+ } -+ } -+} -+ -+/****************************************************************************/ -+ -+ -+local uLong ziplocal_TmzDateToDosDate(ptm,dosDate) -+ const tm_zip* ptm; -+ uLong dosDate; -+{ -+ uLong year = (uLong)ptm->tm_year; -+ if (year>1980) -+ year-=1980; -+ else if (year>80) -+ year-=80; -+ return -+ (uLong) (((ptm->tm_mday) + (32 * (ptm->tm_mon+1)) + (512 * year)) << 16) | -+ ((ptm->tm_sec/2) + (32* ptm->tm_min) + (2048 * (uLong)ptm->tm_hour)); -+} -+ -+ -+/****************************************************************************/ -+ -+local int ziplocal_getByte OF(( -+ const zlib_filefunc_def* pzlib_filefunc_def, -+ voidpf filestream, -+ int *pi)); -+ -+local int ziplocal_getByte(pzlib_filefunc_def,filestream,pi) -+ const zlib_filefunc_def* pzlib_filefunc_def; -+ voidpf filestream; -+ int *pi; -+{ -+ unsigned char c; -+ int err = (int)ZREAD(*pzlib_filefunc_def,filestream,&c,1); -+ if (err==1) -+ { -+ *pi = (int)c; -+ return ZIP_OK; -+ } -+ else -+ { -+ if (ZERROR(*pzlib_filefunc_def,filestream)) -+ return ZIP_ERRNO; -+ else -+ return ZIP_EOF; -+ } -+} -+ -+ -+/* =========================================================================== -+ Reads a long in LSB order from the given gz_stream. Sets -+*/ -+local int ziplocal_getShort OF(( -+ const zlib_filefunc_def* pzlib_filefunc_def, -+ voidpf filestream, -+ uLong *pX)); -+ -+local int ziplocal_getShort (pzlib_filefunc_def,filestream,pX) -+ const zlib_filefunc_def* pzlib_filefunc_def; -+ voidpf filestream; -+ uLong *pX; -+{ -+ uLong x = 0; -+ int i = 0; -+ int err = 0; -+ -+ err = ziplocal_getByte(pzlib_filefunc_def,filestream,&i); -+ x = (uLong)i; -+ -+ if (err==ZIP_OK) -+ err = ziplocal_getByte(pzlib_filefunc_def,filestream,&i); -+ x += ((uLong)i)<<8; -+ -+ if (err==ZIP_OK) -+ *pX = x; -+ else -+ *pX = 0; -+ return err; -+} -+ -+local int ziplocal_getLong OF(( -+ const zlib_filefunc_def* pzlib_filefunc_def, -+ voidpf filestream, -+ uLong *pX)); -+ -+local int ziplocal_getLong (pzlib_filefunc_def,filestream,pX) -+ const zlib_filefunc_def* pzlib_filefunc_def; -+ voidpf filestream; -+ uLong *pX; -+{ -+ uLong x =0; -+ int i=0; -+ int err=0; -+ -+ err = ziplocal_getByte(pzlib_filefunc_def,filestream,&i); -+ x = (uLong)i; -+ -+ if (err==ZIP_OK) -+ err = ziplocal_getByte(pzlib_filefunc_def,filestream,&i); -+ x += ((uLong)i)<<8; -+ -+ if (err==ZIP_OK) -+ err = ziplocal_getByte(pzlib_filefunc_def,filestream,&i); -+ x += ((uLong)i)<<16; -+ -+ if (err==ZIP_OK) -+ err = ziplocal_getByte(pzlib_filefunc_def,filestream,&i); -+ x += ((uLong)i)<<24; -+ -+ if (err==ZIP_OK) -+ *pX = x; -+ else -+ *pX = 0; -+ return err; -+} -+ -+#ifndef BUFREADCOMMENT -+#define BUFREADCOMMENT (0x400) -+#endif -+/* -+ Locate the Central directory of a zipfile (at the end, just before -+ the global comment) -+*/ -+local uLong ziplocal_SearchCentralDir OF(( -+ const zlib_filefunc_def* pzlib_filefunc_def, -+ voidpf filestream)); -+ -+local uLong ziplocal_SearchCentralDir(pzlib_filefunc_def,filestream) -+ const zlib_filefunc_def* pzlib_filefunc_def; -+ voidpf filestream; -+{ -+ unsigned char* buf; -+ uLong uSizeFile; -+ uLong uBackRead; -+ uLong uMaxBack=0xffff; /* maximum size of global comment */ -+ uLong uPosFound=0; -+ -+ if (ZSEEK(*pzlib_filefunc_def,filestream,0,ZLIB_FILEFUNC_SEEK_END) != 0) -+ return 0; -+ -+ -+ uSizeFile = ZTELL(*pzlib_filefunc_def,filestream); -+ -+ if (uMaxBack>uSizeFile) -+ uMaxBack = uSizeFile; -+ -+ buf = (unsigned char*)ALLOC(BUFREADCOMMENT+4); -+ if (buf==NULL) -+ return 0; -+ -+ uBackRead = 4; -+ while (uBackReaduMaxBack) -+ uBackRead = uMaxBack; -+ else -+ uBackRead+=BUFREADCOMMENT; -+ uReadPos = uSizeFile-uBackRead ; -+ -+ uReadSize = ((BUFREADCOMMENT+4) < (uSizeFile-uReadPos)) ? -+ (BUFREADCOMMENT+4) : (uSizeFile-uReadPos); -+ if (ZSEEK(*pzlib_filefunc_def,filestream,uReadPos,ZLIB_FILEFUNC_SEEK_SET)!=0) -+ break; -+ -+ if (ZREAD(*pzlib_filefunc_def,filestream,buf,uReadSize)!=uReadSize) -+ break; -+ -+ for (i=(int)uReadSize-3; (i--)>0;) -+ if (((*(buf+i))==0x50) && ((*(buf+i+1))==0x4b) && -+ ((*(buf+i+2))==0x05) && ((*(buf+i+3))==0x06)) -+ { -+ uPosFound = uReadPos+i; -+ break; -+ } -+ -+ if (uPosFound!=0) -+ break; -+ } -+ TRYFREE(buf); -+ return uPosFound; -+} -+#endif /* !NO_ADDFILEINEXISTINGZIP*/ -+ -+/************************************************************/ -+extern zipFile ZEXPORT zipOpen2 (pathname, append, globalcomment, pzlib_filefunc_def) -+ const char *pathname; -+ int append; -+ zipcharpc* globalcomment; -+ zlib_filefunc_def* pzlib_filefunc_def; -+{ -+ zip_internal ziinit; -+ zip_internal* zi; -+ int err=ZIP_OK; -+ -+ -+ if (pzlib_filefunc_def==NULL) -+ fill_fopen_filefunc(&ziinit.z_filefunc); -+ else -+ ziinit.z_filefunc = *pzlib_filefunc_def; -+ -+ ziinit.filestream = (*(ziinit.z_filefunc.zopen_file)) -+ (ziinit.z_filefunc.opaque, -+ pathname, -+ (append == APPEND_STATUS_CREATE) ? -+ (ZLIB_FILEFUNC_MODE_READ | ZLIB_FILEFUNC_MODE_WRITE | ZLIB_FILEFUNC_MODE_CREATE) : -+ (ZLIB_FILEFUNC_MODE_READ | ZLIB_FILEFUNC_MODE_WRITE | ZLIB_FILEFUNC_MODE_EXISTING)); -+ -+ if (ziinit.filestream == NULL) -+ return NULL; -+ ziinit.begin_pos = ZTELL(ziinit.z_filefunc,ziinit.filestream); -+ ziinit.in_opened_file_inzip = 0; -+ ziinit.ci.stream_initialised = 0; -+ ziinit.number_entry = 0; -+ ziinit.add_position_when_writting_offset = 0; -+ init_linkedlist(&(ziinit.central_dir)); -+ -+ -+ zi = (zip_internal*)ALLOC(sizeof(zip_internal)); -+ if (zi==NULL) -+ { -+ ZCLOSE(ziinit.z_filefunc,ziinit.filestream); -+ return NULL; -+ } -+ -+ /* now we add file in a zipfile */ -+# ifndef NO_ADDFILEINEXISTINGZIP -+ ziinit.globalcomment = NULL; -+ if (append == APPEND_STATUS_ADDINZIP) -+ { -+ uLong byte_before_the_zipfile;/* byte before the zipfile, (>0 for sfx)*/ -+ -+ uLong size_central_dir; /* size of the central directory */ -+ uLong offset_central_dir; /* offset of start of central directory */ -+ uLong central_pos,uL; -+ -+ uLong number_disk; /* number of the current dist, used for -+ spaning ZIP, unsupported, always 0*/ -+ uLong number_disk_with_CD; /* number the the disk with central dir, used -+ for spaning ZIP, unsupported, always 0*/ -+ uLong number_entry; -+ uLong number_entry_CD; /* total number of entries in -+ the central dir -+ (same than number_entry on nospan) */ -+ uLong size_comment; -+ -+ central_pos = ziplocal_SearchCentralDir(&ziinit.z_filefunc,ziinit.filestream); -+ if (central_pos==0) -+ err=ZIP_ERRNO; -+ -+ if (ZSEEK(ziinit.z_filefunc, ziinit.filestream, -+ central_pos,ZLIB_FILEFUNC_SEEK_SET)!=0) -+ err=ZIP_ERRNO; -+ -+ /* the signature, already checked */ -+ if (ziplocal_getLong(&ziinit.z_filefunc, ziinit.filestream,&uL)!=ZIP_OK) -+ err=ZIP_ERRNO; -+ -+ /* number of this disk */ -+ if (ziplocal_getShort(&ziinit.z_filefunc, ziinit.filestream,&number_disk)!=ZIP_OK) -+ err=ZIP_ERRNO; -+ -+ /* number of the disk with the start of the central directory */ -+ if (ziplocal_getShort(&ziinit.z_filefunc, ziinit.filestream,&number_disk_with_CD)!=ZIP_OK) -+ err=ZIP_ERRNO; -+ -+ /* total number of entries in the central dir on this disk */ -+ if (ziplocal_getShort(&ziinit.z_filefunc, ziinit.filestream,&number_entry)!=ZIP_OK) -+ err=ZIP_ERRNO; -+ -+ /* total number of entries in the central dir */ -+ if (ziplocal_getShort(&ziinit.z_filefunc, ziinit.filestream,&number_entry_CD)!=ZIP_OK) -+ err=ZIP_ERRNO; -+ -+ if ((number_entry_CD!=number_entry) || -+ (number_disk_with_CD!=0) || -+ (number_disk!=0)) -+ err=ZIP_BADZIPFILE; -+ -+ /* size of the central directory */ -+ if (ziplocal_getLong(&ziinit.z_filefunc, ziinit.filestream,&size_central_dir)!=ZIP_OK) -+ err=ZIP_ERRNO; -+ -+ /* offset of start of central directory with respect to the -+ starting disk number */ -+ if (ziplocal_getLong(&ziinit.z_filefunc, ziinit.filestream,&offset_central_dir)!=ZIP_OK) -+ err=ZIP_ERRNO; -+ -+ /* zipfile global comment length */ -+ if (ziplocal_getShort(&ziinit.z_filefunc, ziinit.filestream,&size_comment)!=ZIP_OK) -+ err=ZIP_ERRNO; -+ -+ if ((central_pos0) -+ { -+ ziinit.globalcomment = ALLOC(size_comment+1); -+ if (ziinit.globalcomment) -+ { -+ size_comment = ZREAD(ziinit.z_filefunc, ziinit.filestream,ziinit.globalcomment,size_comment); -+ ziinit.globalcomment[size_comment]=0; -+ } -+ } -+ -+ byte_before_the_zipfile = central_pos - -+ (offset_central_dir+size_central_dir); -+ ziinit.add_position_when_writting_offset = byte_before_the_zipfile; -+ -+ { -+ uLong size_central_dir_to_read = size_central_dir; -+ size_t buf_size = SIZEDATA_INDATABLOCK; -+ void* buf_read = (void*)ALLOC(buf_size); -+ if (ZSEEK(ziinit.z_filefunc, ziinit.filestream, -+ offset_central_dir + byte_before_the_zipfile, -+ ZLIB_FILEFUNC_SEEK_SET) != 0) -+ err=ZIP_ERRNO; -+ -+ while ((size_central_dir_to_read>0) && (err==ZIP_OK)) -+ { -+ uLong read_this = SIZEDATA_INDATABLOCK; -+ if (read_this > size_central_dir_to_read) -+ read_this = size_central_dir_to_read; -+ if (ZREAD(ziinit.z_filefunc, ziinit.filestream,buf_read,read_this) != read_this) -+ err=ZIP_ERRNO; -+ -+ if (err==ZIP_OK) -+ err = add_data_in_datablock(&ziinit.central_dir,buf_read, -+ (uLong)read_this); -+ size_central_dir_to_read-=read_this; -+ } -+ TRYFREE(buf_read); -+ } -+ ziinit.begin_pos = byte_before_the_zipfile; -+ ziinit.number_entry = number_entry_CD; -+ -+ if (ZSEEK(ziinit.z_filefunc, ziinit.filestream, -+ offset_central_dir+byte_before_the_zipfile,ZLIB_FILEFUNC_SEEK_SET)!=0) -+ err=ZIP_ERRNO; -+ } -+ -+ if (globalcomment) -+ { -+ *globalcomment = ziinit.globalcomment; -+ } -+# endif /* !NO_ADDFILEINEXISTINGZIP*/ -+ -+ if (err != ZIP_OK) -+ { -+# ifndef NO_ADDFILEINEXISTINGZIP -+ TRYFREE(ziinit.globalcomment); -+# endif /* !NO_ADDFILEINEXISTINGZIP*/ -+ TRYFREE(zi); -+ return NULL; -+ } -+ else -+ { -+ *zi = ziinit; -+ return (zipFile)zi; -+ } -+} -+ -+extern zipFile ZEXPORT zipOpen (pathname, append) -+ const char *pathname; -+ int append; -+{ -+ return zipOpen2(pathname,append,NULL,NULL); -+} -+ -+extern int ZEXPORT zipOpenNewFileInZip3 (file, filename, zipfi, -+ extrafield_local, size_extrafield_local, -+ extrafield_global, size_extrafield_global, -+ comment, method, level, raw, -+ windowBits, memLevel, strategy, -+ password, crcForCrypting) -+ zipFile file; -+ const char* filename; -+ const zip_fileinfo* zipfi; -+ const void* extrafield_local; -+ uInt size_extrafield_local; -+ const void* extrafield_global; -+ uInt size_extrafield_global; -+ const char* comment; -+ int method; -+ int level; -+ int raw; -+ int windowBits; -+ int memLevel; -+ int strategy; -+ const char* password; -+ uLong crcForCrypting; -+{ -+ zip_internal* zi; -+ uInt size_filename; -+ uInt size_comment; -+ uInt i; -+ int err = ZIP_OK; -+ -+# ifdef NOCRYPT -+ if (password != NULL) -+ return ZIP_PARAMERROR; -+# endif -+ -+ if (file == NULL) -+ return ZIP_PARAMERROR; -+ if ((method!=0) && (method!=Z_DEFLATED)) -+ return ZIP_PARAMERROR; -+ -+ zi = (zip_internal*)file; -+ -+ if (zi->in_opened_file_inzip == 1) -+ { -+ err = zipCloseFileInZip (file); -+ if (err != ZIP_OK) -+ return err; -+ } -+ -+ -+ if (filename==NULL) -+ filename="-"; -+ -+ if (comment==NULL) -+ size_comment = 0; -+ else -+ size_comment = (uInt)strlen(comment); -+ -+ size_filename = (uInt)strlen(filename); -+ -+ if (zipfi == NULL) -+ zi->ci.dosDate = 0; -+ else -+ { -+ if (zipfi->dosDate != 0) -+ zi->ci.dosDate = zipfi->dosDate; -+ else zi->ci.dosDate = ziplocal_TmzDateToDosDate(&zipfi->tmz_date,zipfi->dosDate); -+ } -+ -+ zi->ci.flag = 0; -+ if ((level==8) || (level==9)) -+ zi->ci.flag |= 2; -+ if (level==2) -+ zi->ci.flag |= 4; -+ if (level==1) -+ zi->ci.flag |= 6; -+ if (password != NULL) -+ zi->ci.flag |= 1; -+ -+ zi->ci.crc32 = 0; -+ zi->ci.method = method; -+ zi->ci.encrypt = 0; -+ zi->ci.stream_initialised = 0; -+ zi->ci.pos_in_buffered_data = 0; -+ zi->ci.raw = raw; -+ zi->ci.pos_local_header = ZTELL(zi->z_filefunc,zi->filestream) ; -+ zi->ci.size_centralheader = SIZECENTRALHEADER + size_filename + -+ size_extrafield_global + size_comment; -+ zi->ci.central_header = (char*)ALLOC((uInt)zi->ci.size_centralheader); -+ -+ ziplocal_putValue_inmemory(zi->ci.central_header,(uLong)CENTRALHEADERMAGIC,4); -+ /* version info */ -+ ziplocal_putValue_inmemory(zi->ci.central_header+4,(uLong)VERSIONMADEBY,2); -+ ziplocal_putValue_inmemory(zi->ci.central_header+6,(uLong)20,2); -+ ziplocal_putValue_inmemory(zi->ci.central_header+8,(uLong)zi->ci.flag,2); -+ ziplocal_putValue_inmemory(zi->ci.central_header+10,(uLong)zi->ci.method,2); -+ ziplocal_putValue_inmemory(zi->ci.central_header+12,(uLong)zi->ci.dosDate,4); -+ ziplocal_putValue_inmemory(zi->ci.central_header+16,(uLong)0,4); /*crc*/ -+ ziplocal_putValue_inmemory(zi->ci.central_header+20,(uLong)0,4); /*compr size*/ -+ ziplocal_putValue_inmemory(zi->ci.central_header+24,(uLong)0,4); /*uncompr size*/ -+ ziplocal_putValue_inmemory(zi->ci.central_header+28,(uLong)size_filename,2); -+ ziplocal_putValue_inmemory(zi->ci.central_header+30,(uLong)size_extrafield_global,2); -+ ziplocal_putValue_inmemory(zi->ci.central_header+32,(uLong)size_comment,2); -+ ziplocal_putValue_inmemory(zi->ci.central_header+34,(uLong)0,2); /*disk nm start*/ -+ -+ if (zipfi==NULL) -+ ziplocal_putValue_inmemory(zi->ci.central_header+36,(uLong)0,2); -+ else -+ ziplocal_putValue_inmemory(zi->ci.central_header+36,(uLong)zipfi->internal_fa,2); -+ -+ if (zipfi==NULL) -+ ziplocal_putValue_inmemory(zi->ci.central_header+38,(uLong)0,4); -+ else -+ ziplocal_putValue_inmemory(zi->ci.central_header+38,(uLong)zipfi->external_fa,4); -+ -+ ziplocal_putValue_inmemory(zi->ci.central_header+42,(uLong)zi->ci.pos_local_header- zi->add_position_when_writting_offset,4); -+ -+ for (i=0;ici.central_header+SIZECENTRALHEADER+i) = *(filename+i); -+ -+ for (i=0;ici.central_header+SIZECENTRALHEADER+size_filename+i) = -+ *(((const char*)extrafield_global)+i); -+ -+ for (i=0;ici.central_header+SIZECENTRALHEADER+size_filename+ -+ size_extrafield_global+i) = *(comment+i); -+ if (zi->ci.central_header == NULL) -+ return ZIP_INTERNALERROR; -+ -+ /* write the local header */ -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream,(uLong)LOCALHEADERMAGIC,4); -+ -+ if (err==ZIP_OK) -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream,(uLong)20,2);/* version needed to extract */ -+ if (err==ZIP_OK) -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream,(uLong)zi->ci.flag,2); -+ -+ if (err==ZIP_OK) -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream,(uLong)zi->ci.method,2); -+ -+ if (err==ZIP_OK) -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream,(uLong)zi->ci.dosDate,4); -+ -+ if (err==ZIP_OK) -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream,(uLong)0,4); /* crc 32, unknown */ -+ if (err==ZIP_OK) -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream,(uLong)0,4); /* compressed size, unknown */ -+ if (err==ZIP_OK) -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream,(uLong)0,4); /* uncompressed size, unknown */ -+ -+ if (err==ZIP_OK) -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream,(uLong)size_filename,2); -+ -+ if (err==ZIP_OK) -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream,(uLong)size_extrafield_local,2); -+ -+ if ((err==ZIP_OK) && (size_filename>0)) -+ if (ZWRITE(zi->z_filefunc,zi->filestream,filename,size_filename)!=size_filename) -+ err = ZIP_ERRNO; -+ -+ if ((err==ZIP_OK) && (size_extrafield_local>0)) -+ if (ZWRITE(zi->z_filefunc,zi->filestream,extrafield_local,size_extrafield_local) -+ !=size_extrafield_local) -+ err = ZIP_ERRNO; -+ -+ zi->ci.stream.avail_in = (uInt)0; -+ zi->ci.stream.avail_out = (uInt)Z_BUFSIZE; -+ zi->ci.stream.next_out = zi->ci.buffered_data; -+ zi->ci.stream.total_in = 0; -+ zi->ci.stream.total_out = 0; -+ -+ if ((err==ZIP_OK) && (zi->ci.method == Z_DEFLATED) && (!zi->ci.raw)) -+ { -+ zi->ci.stream.zalloc = (alloc_func)0; -+ zi->ci.stream.zfree = (free_func)0; -+ zi->ci.stream.opaque = (voidpf)0; -+ -+ if (windowBits>0) -+ windowBits = -windowBits; -+ -+ err = deflateInit2(&zi->ci.stream, level, -+ Z_DEFLATED, windowBits, memLevel, strategy); -+ -+ if (err==Z_OK) -+ zi->ci.stream_initialised = 1; -+ } -+# ifndef NOCRYPT -+ zi->ci.crypt_header_size = 0; -+ if ((err==Z_OK) && (password != NULL)) -+ { -+ unsigned char bufHead[RAND_HEAD_LEN]; -+ unsigned int sizeHead; -+ zi->ci.encrypt = 1; -+ zi->ci.pcrc_32_tab = get_crc_table(); -+ /*init_keys(password,zi->ci.keys,zi->ci.pcrc_32_tab);*/ -+ -+ sizeHead=crypthead(password,bufHead,RAND_HEAD_LEN,zi->ci.keys,zi->ci.pcrc_32_tab,crcForCrypting); -+ zi->ci.crypt_header_size = sizeHead; -+ -+ if (ZWRITE(zi->z_filefunc,zi->filestream,bufHead,sizeHead) != sizeHead) -+ err = ZIP_ERRNO; -+ } -+# endif -+ -+ if (err==Z_OK) -+ zi->in_opened_file_inzip = 1; -+ return err; -+} -+ -+extern int ZEXPORT zipOpenNewFileInZip2(file, filename, zipfi, -+ extrafield_local, size_extrafield_local, -+ extrafield_global, size_extrafield_global, -+ comment, method, level, raw) -+ zipFile file; -+ const char* filename; -+ const zip_fileinfo* zipfi; -+ const void* extrafield_local; -+ uInt size_extrafield_local; -+ const void* extrafield_global; -+ uInt size_extrafield_global; -+ const char* comment; -+ int method; -+ int level; -+ int raw; -+{ -+ return zipOpenNewFileInZip3 (file, filename, zipfi, -+ extrafield_local, size_extrafield_local, -+ extrafield_global, size_extrafield_global, -+ comment, method, level, raw, -+ -MAX_WBITS, DEF_MEM_LEVEL, Z_DEFAULT_STRATEGY, -+ NULL, 0); -+} -+ -+extern int ZEXPORT zipOpenNewFileInZip (file, filename, zipfi, -+ extrafield_local, size_extrafield_local, -+ extrafield_global, size_extrafield_global, -+ comment, method, level) -+ zipFile file; -+ const char* filename; -+ const zip_fileinfo* zipfi; -+ const void* extrafield_local; -+ uInt size_extrafield_local; -+ const void* extrafield_global; -+ uInt size_extrafield_global; -+ const char* comment; -+ int method; -+ int level; -+{ -+ return zipOpenNewFileInZip2 (file, filename, zipfi, -+ extrafield_local, size_extrafield_local, -+ extrafield_global, size_extrafield_global, -+ comment, method, level, 0); -+} -+ -+local int zipFlushWriteBuffer(zi) -+ zip_internal* zi; -+{ -+ int err=ZIP_OK; -+ -+ if (zi->ci.encrypt != 0) -+ { -+#ifndef NOCRYPT -+ uInt i; -+ int t; -+ for (i=0;ici.pos_in_buffered_data;i++) -+ zi->ci.buffered_data[i] = zencode(zi->ci.keys, zi->ci.pcrc_32_tab, -+ zi->ci.buffered_data[i],t); -+#endif -+ } -+ if (ZWRITE(zi->z_filefunc,zi->filestream,zi->ci.buffered_data,zi->ci.pos_in_buffered_data) -+ !=zi->ci.pos_in_buffered_data) -+ err = ZIP_ERRNO; -+ zi->ci.pos_in_buffered_data = 0; -+ return err; -+} -+ -+extern int ZEXPORT zipWriteInFileInZip (file, buf, len) -+ zipFile file; -+ const void* buf; -+ unsigned len; -+{ -+ zip_internal* zi; -+ int err=ZIP_OK; -+ -+ if (file == NULL) -+ return ZIP_PARAMERROR; -+ zi = (zip_internal*)file; -+ -+ if (zi->in_opened_file_inzip == 0) -+ return ZIP_PARAMERROR; -+ -+ zi->ci.stream.next_in = (void*)buf; -+ zi->ci.stream.avail_in = len; -+ zi->ci.crc32 = crc32(zi->ci.crc32,buf,len); -+ -+ while ((err==ZIP_OK) && (zi->ci.stream.avail_in>0)) -+ { -+ if (zi->ci.stream.avail_out == 0) -+ { -+ if (zipFlushWriteBuffer(zi) == ZIP_ERRNO) -+ err = ZIP_ERRNO; -+ zi->ci.stream.avail_out = (uInt)Z_BUFSIZE; -+ zi->ci.stream.next_out = zi->ci.buffered_data; -+ } -+ -+ -+ if(err != ZIP_OK) -+ break; -+ -+ if ((zi->ci.method == Z_DEFLATED) && (!zi->ci.raw)) -+ { -+ uLong uTotalOutBefore = zi->ci.stream.total_out; -+ err=deflate(&zi->ci.stream, Z_NO_FLUSH); -+ zi->ci.pos_in_buffered_data += (uInt)(zi->ci.stream.total_out - uTotalOutBefore) ; -+ -+ } -+ else -+ { -+ uInt copy_this,i; -+ if (zi->ci.stream.avail_in < zi->ci.stream.avail_out) -+ copy_this = zi->ci.stream.avail_in; -+ else -+ copy_this = zi->ci.stream.avail_out; -+ for (i=0;ici.stream.next_out)+i) = -+ *(((const char*)zi->ci.stream.next_in)+i); -+ { -+ zi->ci.stream.avail_in -= copy_this; -+ zi->ci.stream.avail_out-= copy_this; -+ zi->ci.stream.next_in+= copy_this; -+ zi->ci.stream.next_out+= copy_this; -+ zi->ci.stream.total_in+= copy_this; -+ zi->ci.stream.total_out+= copy_this; -+ zi->ci.pos_in_buffered_data += copy_this; -+ } -+ } -+ } -+ -+ return err; -+} -+ -+extern int ZEXPORT zipCloseFileInZipRaw (file, uncompressed_size, crc32) -+ zipFile file; -+ uLong uncompressed_size; -+ uLong crc32; -+{ -+ zip_internal* zi; -+ uLong compressed_size; -+ int err=ZIP_OK; -+ -+ if (file == NULL) -+ return ZIP_PARAMERROR; -+ zi = (zip_internal*)file; -+ -+ if (zi->in_opened_file_inzip == 0) -+ return ZIP_PARAMERROR; -+ zi->ci.stream.avail_in = 0; -+ -+ if ((zi->ci.method == Z_DEFLATED) && (!zi->ci.raw)) -+ while (err==ZIP_OK) -+ { -+ uLong uTotalOutBefore; -+ if (zi->ci.stream.avail_out == 0) -+ { -+ if (zipFlushWriteBuffer(zi) == ZIP_ERRNO) -+ err = ZIP_ERRNO; -+ zi->ci.stream.avail_out = (uInt)Z_BUFSIZE; -+ zi->ci.stream.next_out = zi->ci.buffered_data; -+ } -+ uTotalOutBefore = zi->ci.stream.total_out; -+ err=deflate(&zi->ci.stream, Z_FINISH); -+ zi->ci.pos_in_buffered_data += (uInt)(zi->ci.stream.total_out - uTotalOutBefore) ; -+ } -+ -+ if (err==Z_STREAM_END) -+ err=ZIP_OK; /* this is normal */ -+ -+ if ((zi->ci.pos_in_buffered_data>0) && (err==ZIP_OK)) -+ if (zipFlushWriteBuffer(zi)==ZIP_ERRNO) -+ err = ZIP_ERRNO; -+ -+ if ((zi->ci.method == Z_DEFLATED) && (!zi->ci.raw)) -+ { -+ err=deflateEnd(&zi->ci.stream); -+ zi->ci.stream_initialised = 0; -+ } -+ -+ if (!zi->ci.raw) -+ { -+ crc32 = (uLong)zi->ci.crc32; -+ uncompressed_size = (uLong)zi->ci.stream.total_in; -+ } -+ compressed_size = (uLong)zi->ci.stream.total_out; -+# ifndef NOCRYPT -+ compressed_size += zi->ci.crypt_header_size; -+# endif -+ -+ ziplocal_putValue_inmemory(zi->ci.central_header+16,crc32,4); /*crc*/ -+ ziplocal_putValue_inmemory(zi->ci.central_header+20, -+ compressed_size,4); /*compr size*/ -+ if (zi->ci.stream.data_type == Z_ASCII) -+ ziplocal_putValue_inmemory(zi->ci.central_header+36,(uLong)Z_ASCII,2); -+ ziplocal_putValue_inmemory(zi->ci.central_header+24, -+ uncompressed_size,4); /*uncompr size*/ -+ -+ if (err==ZIP_OK) -+ err = add_data_in_datablock(&zi->central_dir,zi->ci.central_header, -+ (uLong)zi->ci.size_centralheader); -+ free(zi->ci.central_header); -+ -+ if (err==ZIP_OK) -+ { -+ long cur_pos_inzip = ZTELL(zi->z_filefunc,zi->filestream); -+ if (ZSEEK(zi->z_filefunc,zi->filestream, -+ zi->ci.pos_local_header + 14,ZLIB_FILEFUNC_SEEK_SET)!=0) -+ err = ZIP_ERRNO; -+ -+ if (err==ZIP_OK) -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream,crc32,4); /* crc 32, unknown */ -+ -+ if (err==ZIP_OK) /* compressed size, unknown */ -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream,compressed_size,4); -+ -+ if (err==ZIP_OK) /* uncompressed size, unknown */ -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream,uncompressed_size,4); -+ -+ if (ZSEEK(zi->z_filefunc,zi->filestream, -+ cur_pos_inzip,ZLIB_FILEFUNC_SEEK_SET)!=0) -+ err = ZIP_ERRNO; -+ } -+ -+ zi->number_entry ++; -+ zi->in_opened_file_inzip = 0; -+ -+ return err; -+} -+ -+extern int ZEXPORT zipCloseFileInZip (file) -+ zipFile file; -+{ -+ return zipCloseFileInZipRaw (file,0,0); -+} -+ -+extern int ZEXPORT zipClose (file, global_comment) -+ zipFile file; -+ const char* global_comment; -+{ -+ zip_internal* zi; -+ int err = 0; -+ uLong size_centraldir = 0; -+ uLong centraldir_pos_inzip; -+ uInt size_global_comment; -+ if (file == NULL) -+ return ZIP_PARAMERROR; -+ zi = (zip_internal*)file; -+ -+ if (zi->in_opened_file_inzip == 1) -+ { -+ err = zipCloseFileInZip (file); -+ } -+ -+#ifndef NO_ADDFILEINEXISTINGZIP -+ if (global_comment==NULL) -+ global_comment = zi->globalcomment; -+#endif -+ if (global_comment==NULL) -+ size_global_comment = 0; -+ else -+ size_global_comment = (uInt)strlen(global_comment); -+ -+ centraldir_pos_inzip = ZTELL(zi->z_filefunc,zi->filestream); -+ if (err==ZIP_OK) -+ { -+ linkedlist_datablock_internal* ldi = zi->central_dir.first_block ; -+ while (ldi!=NULL) -+ { -+ if ((err==ZIP_OK) && (ldi->filled_in_this_block>0)) -+ if (ZWRITE(zi->z_filefunc,zi->filestream, -+ ldi->data,ldi->filled_in_this_block) -+ !=ldi->filled_in_this_block ) -+ err = ZIP_ERRNO; -+ -+ size_centraldir += ldi->filled_in_this_block; -+ ldi = ldi->next_datablock; -+ } -+ } -+ free_datablock(zi->central_dir.first_block); -+ -+ if (err==ZIP_OK) /* Magic End */ -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream,(uLong)ENDHEADERMAGIC,4); -+ -+ if (err==ZIP_OK) /* number of this disk */ -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream,(uLong)0,2); -+ -+ if (err==ZIP_OK) /* number of the disk with the start of the central directory */ -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream,(uLong)0,2); -+ -+ if (err==ZIP_OK) /* total number of entries in the central dir on this disk */ -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream,(uLong)zi->number_entry,2); -+ -+ if (err==ZIP_OK) /* total number of entries in the central dir */ -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream,(uLong)zi->number_entry,2); -+ -+ if (err==ZIP_OK) /* size of the central directory */ -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream,(uLong)size_centraldir,4); -+ -+ if (err==ZIP_OK) /* offset of start of central directory with respect to the -+ starting disk number */ -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream, -+ (uLong)(centraldir_pos_inzip - zi->add_position_when_writting_offset),4); -+ -+ if (err==ZIP_OK) /* zipfile comment length */ -+ err = ziplocal_putValue(&zi->z_filefunc,zi->filestream,(uLong)size_global_comment,2); -+ -+ if ((err==ZIP_OK) && (size_global_comment>0)) -+ if (ZWRITE(zi->z_filefunc,zi->filestream, -+ global_comment,size_global_comment) != size_global_comment) -+ err = ZIP_ERRNO; -+ -+ if (ZCLOSE(zi->z_filefunc,zi->filestream) != 0) -+ if (err == ZIP_OK) -+ err = ZIP_ERRNO; -+ -+#ifndef NO_ADDFILEINEXISTINGZIP -+ TRYFREE(zi->globalcomment); -+#endif -+ TRYFREE(zi); -+ -+ return err; -+} -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/zip.h b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/zip.h -new file mode 100644 -index 0000000..acacce8 ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/MiniZip/zip.h -@@ -0,0 +1,235 @@ -+/* zip.h -- IO for compress .zip files using zlib -+ Version 1.01e, February 12th, 2005 -+ -+ Copyright (C) 1998-2005 Gilles Vollant -+ -+ This unzip package allow creates .ZIP file, compatible with PKZip 2.04g -+ WinZip, InfoZip tools and compatible. -+ Multi volume ZipFile (span) are not supported. -+ Encryption compatible with pkzip 2.04g only supported -+ Old compressions used by old PKZip 1.x are not supported -+ -+ For uncompress .zip file, look at unzip.h -+ -+ -+ I WAIT FEEDBACK at mail info@winimage.com -+ Visit also http://www.winimage.com/zLibDll/unzip.html for evolution -+ -+ Condition of use and distribution are the same than zlib : -+ -+ This software is provided 'as-is', without any express or implied -+ warranty. In no event will the authors be held liable for any damages -+ arising from the use of this software. -+ -+ Permission is granted to anyone to use this software for any purpose, -+ including commercial applications, and to alter it and redistribute it -+ freely, subject to the following restrictions: -+ -+ 1. The origin of this software must not be misrepresented; you must not -+ claim that you wrote the original software. If you use this software -+ in a product, an acknowledgment in the product documentation would be -+ appreciated but is not required. -+ 2. Altered source versions must be plainly marked as such, and must not be -+ misrepresented as being the original software. -+ 3. This notice may not be removed or altered from any source distribution. -+ -+ -+*/ -+ -+/* for more info about .ZIP format, see -+ http://www.info-zip.org/pub/infozip/doc/appnote-981119-iz.zip -+ http://www.info-zip.org/pub/infozip/doc/ -+ PkWare has also a specification at : -+ ftp://ftp.pkware.com/probdesc.zip -+*/ -+ -+#ifndef _zip_H -+#define _zip_H -+ -+#ifdef __cplusplus -+extern "C" { -+#endif -+ -+#ifndef _ZLIB_H -+#include "zlib.h" -+#endif -+ -+#ifndef _ZLIBIOAPI_H -+#include "ioapi.h" -+#endif -+ -+#if defined(STRICTZIP) || defined(STRICTZIPUNZIP) -+/* like the STRICT of WIN32, we define a pointer that cannot be converted -+ from (void*) without cast */ -+typedef struct TagzipFile__ { int unused; } zipFile__; -+typedef zipFile__ *zipFile; -+#else -+typedef voidp zipFile; -+#endif -+ -+#define ZIP_OK (0) -+#define ZIP_EOF (0) -+#define ZIP_ERRNO (Z_ERRNO) -+#define ZIP_PARAMERROR (-102) -+#define ZIP_BADZIPFILE (-103) -+#define ZIP_INTERNALERROR (-104) -+ -+#ifndef DEF_MEM_LEVEL -+# if MAX_MEM_LEVEL >= 8 -+# define DEF_MEM_LEVEL 8 -+# else -+# define DEF_MEM_LEVEL MAX_MEM_LEVEL -+# endif -+#endif -+/* default memLevel */ -+ -+/* tm_zip contain date/time info */ -+typedef struct tm_zip_s -+{ -+ uInt tm_sec; /* seconds after the minute - [0,59] */ -+ uInt tm_min; /* minutes after the hour - [0,59] */ -+ uInt tm_hour; /* hours since midnight - [0,23] */ -+ uInt tm_mday; /* day of the month - [1,31] */ -+ uInt tm_mon; /* months since January - [0,11] */ -+ uInt tm_year; /* years - [1980..2044] */ -+} tm_zip; -+ -+typedef struct -+{ -+ tm_zip tmz_date; /* date in understandable format */ -+ uLong dosDate; /* if dos_date == 0, tmu_date is used */ -+/* uLong flag; */ /* general purpose bit flag 2 bytes */ -+ -+ uLong internal_fa; /* internal file attributes 2 bytes */ -+ uLong external_fa; /* external file attributes 4 bytes */ -+} zip_fileinfo; -+ -+typedef const char* zipcharpc; -+ -+ -+#define APPEND_STATUS_CREATE (0) -+#define APPEND_STATUS_CREATEAFTER (1) -+#define APPEND_STATUS_ADDINZIP (2) -+ -+extern zipFile ZEXPORT zipOpen OF((const char *pathname, int append)); -+/* -+ Create a zipfile. -+ pathname contain on Windows XP a filename like "c:\\zlib\\zlib113.zip" or on -+ an Unix computer "zlib/zlib113.zip". -+ if the file pathname exist and append==APPEND_STATUS_CREATEAFTER, the zip -+ will be created at the end of the file. -+ (useful if the file contain a self extractor code) -+ if the file pathname exist and append==APPEND_STATUS_ADDINZIP, we will -+ add files in existing zip (be sure you don't add file that doesn't exist) -+ If the zipfile cannot be opened, the return value is NULL. -+ Else, the return value is a zipFile Handle, usable with other function -+ of this zip package. -+*/ -+ -+/* Note : there is no delete function into a zipfile. -+ If you want delete file into a zipfile, you must open a zipfile, and create another -+ Of couse, you can use RAW reading and writing to copy the file you did not want delte -+*/ -+ -+extern zipFile ZEXPORT zipOpen2 OF((const char *pathname, -+ int append, -+ zipcharpc* globalcomment, -+ zlib_filefunc_def* pzlib_filefunc_def)); -+ -+extern int ZEXPORT zipOpenNewFileInZip OF((zipFile file, -+ const char* filename, -+ const zip_fileinfo* zipfi, -+ const void* extrafield_local, -+ uInt size_extrafield_local, -+ const void* extrafield_global, -+ uInt size_extrafield_global, -+ const char* comment, -+ int method, -+ int level)); -+/* -+ Open a file in the ZIP for writing. -+ filename : the filename in zip (if NULL, '-' without quote will be used -+ *zipfi contain supplemental information -+ if extrafield_local!=NULL and size_extrafield_local>0, extrafield_local -+ contains the extrafield data the the local header -+ if extrafield_global!=NULL and size_extrafield_global>0, extrafield_global -+ contains the extrafield data the the local header -+ if comment != NULL, comment contain the comment string -+ method contain the compression method (0 for store, Z_DEFLATED for deflate) -+ level contain the level of compression (can be Z_DEFAULT_COMPRESSION) -+*/ -+ -+ -+extern int ZEXPORT zipOpenNewFileInZip2 OF((zipFile file, -+ const char* filename, -+ const zip_fileinfo* zipfi, -+ const void* extrafield_local, -+ uInt size_extrafield_local, -+ const void* extrafield_global, -+ uInt size_extrafield_global, -+ const char* comment, -+ int method, -+ int level, -+ int raw)); -+ -+/* -+ Same than zipOpenNewFileInZip, except if raw=1, we write raw file -+ */ -+ -+extern int ZEXPORT zipOpenNewFileInZip3 OF((zipFile file, -+ const char* filename, -+ const zip_fileinfo* zipfi, -+ const void* extrafield_local, -+ uInt size_extrafield_local, -+ const void* extrafield_global, -+ uInt size_extrafield_global, -+ const char* comment, -+ int method, -+ int level, -+ int raw, -+ int windowBits, -+ int memLevel, -+ int strategy, -+ const char* password, -+ uLong crcForCtypting)); -+ -+/* -+ Same than zipOpenNewFileInZip2, except -+ windowBits,memLevel,,strategy : see parameter strategy in deflateInit2 -+ password : crypting password (NULL for no crypting) -+ crcForCtypting : crc of file to compress (needed for crypting) -+ */ -+ -+ -+extern int ZEXPORT zipWriteInFileInZip OF((zipFile file, -+ const void* buf, -+ unsigned len)); -+/* -+ Write data in the zipfile -+*/ -+ -+extern int ZEXPORT zipCloseFileInZip OF((zipFile file)); -+/* -+ Close the current file in the zipfile -+*/ -+ -+extern int ZEXPORT zipCloseFileInZipRaw OF((zipFile file, -+ uLong uncompressed_size, -+ uLong crc32)); -+/* -+ Close the current file in the zipfile, for fiel opened with -+ parameter raw=1 in zipOpenNewFileInZip2 -+ uncompressed_size and crc32 are value for the uncompressed size -+*/ -+ -+extern int ZEXPORT zipClose OF((zipFile file, -+ const char* global_comment)); -+/* -+ Close the zipfile -+*/ -+ -+#ifdef __cplusplus -+} -+#endif -+ -+#endif /* _zip_H */ -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/FileInZipInfo.h b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/FileInZipInfo.h -new file mode 100644 -index 0000000..76d3ae5 ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/FileInZipInfo.h -@@ -0,0 +1,60 @@ -+// -+// FileInZipInfo.h -+// Objective-Zip v. 0.7.2 -+// -+// Created by Gianluca Bertani on 27/12/09. -+// Copyright 2009-10 Flying Dolphin Studio. All rights reserved. -+// -+// Redistribution and use in source and binary forms, with or without -+// modification, are permitted provided that the following conditions -+// are met: -+// -+// * Redistributions of source code must retain the above copyright notice, -+// this list of conditions and the following disclaimer. -+// * Redistributions in binary form must reproduce the above copyright notice, -+// this list of conditions and the following disclaimer in the documentation -+// and/or other materials provided with the distribution. -+// * Neither the name of Gianluca Bertani nor the names of its contributors -+// may be used to endorse or promote products derived from this software -+// without specific prior written permission. -+// -+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -+// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -+// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -+// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -+// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -+// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -+// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -+// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -+// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -+// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -+// POSSIBILITY OF SUCH DAMAGE. -+// -+ -+#import -+#import "ZipFile.h" -+ -+ -+@interface FileInZipInfo : NSObject { -+ -+@private -+ NSUInteger _length; -+ ZipCompressionLevel _level; -+ BOOL _crypted; -+ NSUInteger _size; -+ NSDate *_date; -+ NSUInteger _crc32; -+ NSString *_name; -+} -+ -+- (id) initWithName:(NSString *)name length:(NSUInteger)length level:(ZipCompressionLevel)level crypted:(BOOL)crypted size:(NSUInteger)size date:(NSDate *)date crc32:(NSUInteger)crc32; -+ -+@property (nonatomic, readonly) NSString *name; -+@property (nonatomic, readonly) NSUInteger length; -+@property (nonatomic, readonly) ZipCompressionLevel level; -+@property (nonatomic, readonly) BOOL crypted; -+@property (nonatomic, readonly) NSUInteger size; -+@property (nonatomic, readonly) NSDate *date; -+@property (nonatomic, readonly) NSUInteger crc32; -+ -+@end -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/FileInZipInfo.m b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/FileInZipInfo.m -new file mode 100644 -index 0000000..1b5ab21 ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/FileInZipInfo.m -@@ -0,0 +1,61 @@ -+// -+// FileInZipInfo.m -+// Objective-Zip v. 0.7.2 -+// -+// Created by Gianluca Bertani on 27/12/09. -+// Copyright 2009-10 Flying Dolphin Studio. All rights reserved. -+// -+// Redistribution and use in source and binary forms, with or without -+// modification, are permitted provided that the following conditions -+// are met: -+// -+// * Redistributions of source code must retain the above copyright notice, -+// this list of conditions and the following disclaimer. -+// * Redistributions in binary form must reproduce the above copyright notice, -+// this list of conditions and the following disclaimer in the documentation -+// and/or other materials provided with the distribution. -+// * Neither the name of Gianluca Bertani nor the names of its contributors -+// may be used to endorse or promote products derived from this software -+// without specific prior written permission. -+// -+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -+// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -+// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -+// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -+// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -+// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -+// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -+// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -+// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -+// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -+// POSSIBILITY OF SUCH DAMAGE. -+// -+ -+#import "FileInZipInfo.h" -+ -+ -+@implementation FileInZipInfo -+ -+- (id) initWithName:(NSString *)name length:(NSUInteger)length level:(ZipCompressionLevel)level crypted:(BOOL)crypted size:(NSUInteger)size date:(NSDate *)date crc32:(NSUInteger)crc32 { -+ if ((self = [super init])) { -+ _name= name; -+ _length= length; -+ _level= level; -+ _crypted= crypted; -+ _size= size; -+ _date= date; -+ _crc32= crc32; -+ } -+ -+ return self; -+} -+ -+@synthesize name= _name; -+@synthesize length= _length; -+@synthesize level= _level; -+@synthesize crypted= _crypted; -+@synthesize size= _size; -+@synthesize date= _date; -+@synthesize crc32= _crc32; -+ -+@end -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipException.h b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipException.h -new file mode 100644 -index 0000000..0ae2728 ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipException.h -@@ -0,0 +1,48 @@ -+// -+// ZipException.h -+// Objective-Zip v. 0.7.2 -+// -+// Created by Gianluca Bertani on 25/12/09. -+// Copyright 2009-10 Flying Dolphin Studio. All rights reserved. -+// -+// Redistribution and use in source and binary forms, with or without -+// modification, are permitted provided that the following conditions -+// are met: -+// -+// * Redistributions of source code must retain the above copyright notice, -+// this list of conditions and the following disclaimer. -+// * Redistributions in binary form must reproduce the above copyright notice, -+// this list of conditions and the following disclaimer in the documentation -+// and/or other materials provided with the distribution. -+// * Neither the name of Gianluca Bertani nor the names of its contributors -+// may be used to endorse or promote products derived from this software -+// without specific prior written permission. -+// -+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -+// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -+// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -+// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -+// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -+// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -+// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -+// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -+// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -+// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -+// POSSIBILITY OF SUCH DAMAGE. -+// -+ -+#import -+ -+ -+@interface ZipException : NSException { -+ -+@private -+ NSInteger _error; -+} -+ -+- (id) initWithReason:(NSString *)reason; -+- (id) initWithError:(NSInteger)error reason:(NSString *)reason; -+ -+@property (nonatomic, readonly) NSInteger error; -+ -+@end -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipException.m b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipException.m -new file mode 100644 -index 0000000..f0b26d9 ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipException.m -@@ -0,0 +1,57 @@ -+// -+// ZipException.m -+// Objective-Zip v. 0.7.2 -+// -+// Created by Gianluca Bertani on 25/12/09. -+// Copyright 2009-10 Flying Dolphin Studio. All rights reserved. -+// -+// Redistribution and use in source and binary forms, with or without -+// modification, are permitted provided that the following conditions -+// are met: -+// -+// * Redistributions of source code must retain the above copyright notice, -+// this list of conditions and the following disclaimer. -+// * Redistributions in binary form must reproduce the above copyright notice, -+// this list of conditions and the following disclaimer in the documentation -+// and/or other materials provided with the distribution. -+// * Neither the name of Gianluca Bertani nor the names of its contributors -+// may be used to endorse or promote products derived from this software -+// without specific prior written permission. -+// -+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -+// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -+// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -+// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -+// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -+// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -+// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -+// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -+// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -+// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -+// POSSIBILITY OF SUCH DAMAGE. -+// -+ -+#import "ZipException.h" -+ -+ -+@implementation ZipException -+ -+- (id) initWithReason:(NSString *)reason { -+ if ((self= [super initWithName:@"ZipException" reason:reason userInfo:nil])) { -+ _error= 0; -+ } -+ -+ return self; -+} -+ -+- (id) initWithError:(NSInteger)error reason:(NSString *)reason { -+ if ((self= [super initWithName:@"ZipException" reason:reason userInfo:nil])) { -+ _error= error; -+ } -+ -+ return self; -+} -+ -+@synthesize error= _error; -+ -+@end -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipFile.h b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipFile.h -new file mode 100644 -index 0000000..79642fd ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipFile.h -@@ -0,0 +1,86 @@ -+// -+// ZipFile.h -+// Objective-Zip v. 0.7.2 -+// -+// Created by Gianluca Bertani on 25/12/09. -+// Copyright 2009-10 Flying Dolphin Studio. All rights reserved. -+// -+// Redistribution and use in source and binary forms, with or without -+// modification, are permitted provided that the following conditions -+// are met: -+// -+// * Redistributions of source code must retain the above copyright notice, -+// this list of conditions and the following disclaimer. -+// * Redistributions in binary form must reproduce the above copyright notice, -+// this list of conditions and the following disclaimer in the documentation -+// and/or other materials provided with the distribution. -+// * Neither the name of Gianluca Bertani nor the names of its contributors -+// may be used to endorse or promote products derived from this software -+// without specific prior written permission. -+// -+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -+// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -+// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -+// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -+// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -+// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -+// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -+// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -+// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -+// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -+// POSSIBILITY OF SUCH DAMAGE. -+// -+ -+#import -+ -+#include "zip.h" -+#include "unzip.h" -+ -+ -+typedef enum { -+ ZipFileModeUnzip, -+ ZipFileModeCreate, -+ ZipFileModeAppend -+} ZipFileMode; -+ -+typedef enum { -+ ZipCompressionLevelDefault= -1, -+ ZipCompressionLevelNone= 0, -+ ZipCompressionLevelFastest= 1, -+ ZipCompressionLevelBest= 9 -+} ZipCompressionLevel; -+ -+@class ZipReadStream; -+@class ZipWriteStream; -+@class FileInZipInfo; -+ -+@interface ZipFile : NSObject { -+ NSString *_fileName; -+ ZipFileMode _mode; -+ -+@private -+ zipFile _zipFile; -+ unzFile _unzFile; -+} -+ -+- (id) initWithFileName:(NSString *)fileName mode:(ZipFileMode)mode; -+ -+- (ZipWriteStream *) writeFileInZipWithName:(NSString *)fileNameInZip compressionLevel:(ZipCompressionLevel)compressionLevel; -+- (ZipWriteStream *) writeFileInZipWithName:(NSString *)fileNameInZip fileDate:(NSDate *)fileDate compressionLevel:(ZipCompressionLevel)compressionLevel; -+- (ZipWriteStream *) writeFileInZipWithName:(NSString *)fileNameInZip fileDate:(NSDate *)fileDate compressionLevel:(ZipCompressionLevel)compressionLevel password:(NSString *)password crc32:(NSUInteger)crc32; -+ -+- (NSUInteger) numFilesInZip; -+- (NSArray *) listFileInZipInfos; -+ -+- (void) goToFirstFileInZip; -+- (BOOL) goToNextFileInZip; -+- (BOOL) locateFileInZip:(NSString *)fileNameInZip; -+ -+- (FileInZipInfo *) getCurrentFileInZipInfo; -+ -+- (ZipReadStream *) readCurrentFileInZip; -+- (ZipReadStream *) readCurrentFileInZipWithPassword:(NSString *)password; -+ -+- (void) close; -+ -+@end -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipFile.m b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipFile.m -new file mode 100644 -index 0000000..ea8a115 ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipFile.m -@@ -0,0 +1,418 @@ -+// -+// ZipFile.m -+// Objective-Zip v. 0.7.2 -+// -+// Created by Gianluca Bertani on 25/12/09. -+// Copyright 2009-10 Flying Dolphin Studio. All rights reserved. -+// -+// Redistribution and use in source and binary forms, with or without -+// modification, are permitted provided that the following conditions -+// are met: -+// -+// * Redistributions of source code must retain the above copyright notice, -+// this list of conditions and the following disclaimer. -+// * Redistributions in binary form must reproduce the above copyright notice, -+// this list of conditions and the following disclaimer in the documentation -+// and/or other materials provided with the distribution. -+// * Neither the name of Gianluca Bertani nor the names of its contributors -+// may be used to endorse or promote products derived from this software -+// without specific prior written permission. -+// -+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -+// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -+// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -+// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -+// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -+// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -+// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -+// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -+// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -+// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -+// POSSIBILITY OF SUCH DAMAGE. -+// -+ -+#import "ZipFile.h" -+#import "ZipException.h" -+#import "ZipReadStream.h" -+#import "ZipWriteStream.h" -+#import "FIleInZipInfo.h" -+ -+#define FILE_IN_ZIP_MAX_NAME_LENGTH (256) -+ -+ -+@implementation ZipFile -+ -+ -+- (id) initWithFileName:(NSString *)fileName mode:(ZipFileMode)mode { -+ if ((self= [super init])) { -+ _fileName= fileName; -+ _mode= mode; -+ -+ switch (mode) { -+ case ZipFileModeUnzip: -+ _unzFile= unzOpen([_fileName cStringUsingEncoding:NSUTF8StringEncoding]); -+ if (_unzFile == NULL) { -+ NSString *reason= [NSString stringWithFormat:@"Can't open '%@'", _fileName]; -+ @throw [[ZipException alloc] initWithReason:reason]; -+ } -+ break; -+ -+ case ZipFileModeCreate: -+ _zipFile= zipOpen([_fileName cStringUsingEncoding:NSUTF8StringEncoding], APPEND_STATUS_CREATE); -+ if (_zipFile == NULL) { -+ NSString *reason= [NSString stringWithFormat:@"Can't open '%@'", _fileName]; -+ @throw [[ZipException alloc] initWithReason:reason]; -+ } -+ break; -+ -+ case ZipFileModeAppend: -+ _zipFile= zipOpen([_fileName cStringUsingEncoding:NSUTF8StringEncoding], APPEND_STATUS_ADDINZIP); -+ if (_zipFile == NULL) { -+ NSString *reason= [NSString stringWithFormat:@"Can't open '%@'", _fileName]; -+ @throw [[ZipException alloc] initWithReason:reason]; -+ } -+ break; -+ -+ default: { -+ NSString *reason= [NSString stringWithFormat:@"Unknown mode %d", _mode]; -+ @throw [[ZipException alloc] initWithReason:reason]; -+ } -+ } -+ } -+ -+ return self; -+} -+ -+- (ZipWriteStream *) writeFileInZipWithName:(NSString *)fileNameInZip compressionLevel:(ZipCompressionLevel)compressionLevel { -+ if (_mode == ZipFileModeUnzip) { -+ NSString *reason= [NSString stringWithFormat:@"Operation not permitted with Unzip mode"]; -+ @throw [[ZipException alloc] initWithReason:reason]; -+ } -+ -+ NSDate *now= [NSDate date]; -+ NSCalendar *calendar= [NSCalendar currentCalendar]; -+ NSDateComponents *date= [calendar components:(NSSecondCalendarUnit | NSMinuteCalendarUnit | NSHourCalendarUnit | NSDayCalendarUnit | NSMonthCalendarUnit | NSYearCalendarUnit) fromDate:now]; -+ zip_fileinfo zi; -+ zi.tmz_date.tm_sec= (uInt)[date second]; -+ zi.tmz_date.tm_min= (uInt)[date minute]; -+ zi.tmz_date.tm_hour= (uInt)[date hour]; -+ zi.tmz_date.tm_mday= (uInt)[date day]; -+ zi.tmz_date.tm_mon= (uInt)[date month] -1; -+ zi.tmz_date.tm_year= (uInt)[date year]; -+ zi.internal_fa= 0; -+ zi.external_fa= 0; -+ zi.dosDate= 0; -+ -+ int err= zipOpenNewFileInZip3( -+ _zipFile, -+ [fileNameInZip cStringUsingEncoding:NSUTF8StringEncoding], -+ &zi, -+ NULL, 0, NULL, 0, NULL, -+ (compressionLevel != ZipCompressionLevelNone) ? Z_DEFLATED : 0, -+ compressionLevel, 0, -+ -MAX_WBITS, DEF_MEM_LEVEL, Z_DEFAULT_STRATEGY, -+ NULL, 0); -+ if (err != ZIP_OK) { -+ NSString *reason= [NSString stringWithFormat:@"Error in opening '%@' in zipfile", fileNameInZip]; -+ @throw [[ZipException alloc] initWithError:err reason:reason]; -+ } -+ -+ return [[ZipWriteStream alloc] initWithZipFileStruct:_zipFile fileNameInZip:fileNameInZip]; -+} -+ -+- (ZipWriteStream *) writeFileInZipWithName:(NSString *)fileNameInZip fileDate:(NSDate *)fileDate compressionLevel:(ZipCompressionLevel)compressionLevel { -+ if (_mode == ZipFileModeUnzip) { -+ NSString *reason= [NSString stringWithFormat:@"Operation not permitted with Unzip mode"]; -+ @throw [[ZipException alloc] initWithReason:reason]; -+ } -+ -+ NSCalendar *calendar= [NSCalendar currentCalendar]; -+ NSDateComponents *date= [calendar components:(NSSecondCalendarUnit | NSMinuteCalendarUnit | NSHourCalendarUnit | NSDayCalendarUnit | NSMonthCalendarUnit | NSYearCalendarUnit) fromDate:fileDate]; -+ zip_fileinfo zi; -+ zi.tmz_date.tm_sec= (uInt)[date second]; -+ zi.tmz_date.tm_min= (uInt)[date minute]; -+ zi.tmz_date.tm_hour= (uInt)[date hour]; -+ zi.tmz_date.tm_mday= (uInt)[date day]; -+ zi.tmz_date.tm_mon= (uInt)[date month] -1; -+ zi.tmz_date.tm_year= (uInt)[date year]; -+ zi.internal_fa= 0; -+ zi.external_fa= 0; -+ zi.dosDate= 0; -+ -+ int err= zipOpenNewFileInZip3( -+ _zipFile, -+ [fileNameInZip cStringUsingEncoding:NSUTF8StringEncoding], -+ &zi, -+ NULL, 0, NULL, 0, NULL, -+ (compressionLevel != ZipCompressionLevelNone) ? Z_DEFLATED : 0, -+ compressionLevel, 0, -+ -MAX_WBITS, DEF_MEM_LEVEL, Z_DEFAULT_STRATEGY, -+ NULL, 0); -+ if (err != ZIP_OK) { -+ NSString *reason= [NSString stringWithFormat:@"Error in opening '%@' in zipfile", fileNameInZip]; -+ @throw [[ZipException alloc] initWithError:err reason:reason]; -+ } -+ -+ return [[ZipWriteStream alloc] initWithZipFileStruct:_zipFile fileNameInZip:fileNameInZip]; -+} -+ -+- (ZipWriteStream *) writeFileInZipWithName:(NSString *)fileNameInZip fileDate:(NSDate *)fileDate compressionLevel:(ZipCompressionLevel)compressionLevel password:(NSString *)password crc32:(NSUInteger)crc32 { -+ if (_mode == ZipFileModeUnzip) { -+ NSString *reason= [NSString stringWithFormat:@"Operation not permitted with Unzip mode"]; -+ @throw [[ZipException alloc] initWithReason:reason]; -+ } -+ -+ NSCalendar *calendar= [NSCalendar currentCalendar]; -+ NSDateComponents *date= [calendar components:(NSSecondCalendarUnit | NSMinuteCalendarUnit | NSHourCalendarUnit | NSDayCalendarUnit | NSMonthCalendarUnit | NSYearCalendarUnit) fromDate:fileDate]; -+ zip_fileinfo zi; -+ zi.tmz_date.tm_sec= (uInt)[date second]; -+ zi.tmz_date.tm_min= (uInt)[date minute]; -+ zi.tmz_date.tm_hour= (uInt)[date hour]; -+ zi.tmz_date.tm_mday= (uInt)[date day]; -+ zi.tmz_date.tm_mon= (uInt)[date month] -1; -+ zi.tmz_date.tm_year= (uInt)[date year]; -+ zi.internal_fa= 0; -+ zi.external_fa= 0; -+ zi.dosDate= 0; -+ -+ int err= zipOpenNewFileInZip3( -+ _zipFile, -+ [fileNameInZip cStringUsingEncoding:NSUTF8StringEncoding], -+ &zi, -+ NULL, 0, NULL, 0, NULL, -+ (compressionLevel != ZipCompressionLevelNone) ? Z_DEFLATED : 0, -+ compressionLevel, 0, -+ -MAX_WBITS, DEF_MEM_LEVEL, Z_DEFAULT_STRATEGY, -+ [password cStringUsingEncoding:NSUTF8StringEncoding], crc32); -+ if (err != ZIP_OK) { -+ NSString *reason= [NSString stringWithFormat:@"Error in opening '%@' in zipfile", fileNameInZip]; -+ @throw [[ZipException alloc] initWithError:err reason:reason]; -+ } -+ -+ return [[ZipWriteStream alloc] initWithZipFileStruct:_zipFile fileNameInZip:fileNameInZip]; -+} -+ -+- (NSUInteger) numFilesInZip { -+ if (_mode != ZipFileModeUnzip) { -+ NSString *reason= [NSString stringWithFormat:@"Operation not permitted without Unzip mode"]; -+ @throw [[ZipException alloc] initWithReason:reason]; -+ } -+ -+ unz_global_info gi; -+ int err= unzGetGlobalInfo(_unzFile, &gi); -+ if (err != UNZ_OK) { -+ NSString *reason= [NSString stringWithFormat:@"Error in getting global info in '%@'", _fileName]; -+ @throw [[ZipException alloc] initWithError:err reason:reason]; -+ } -+ -+ return gi.number_entry; -+} -+ -+- (NSArray *) listFileInZipInfos { -+ int num= (uInt)[self numFilesInZip]; -+ if (num < 1) -+ return [[NSArray alloc] init]; -+ -+ NSMutableArray *files= [[NSMutableArray alloc] initWithCapacity:num]; -+ -+ [self goToFirstFileInZip]; -+ for (int i= 0; i < num; i++) { -+ FileInZipInfo *info= [self getCurrentFileInZipInfo]; -+ [files addObject:info]; -+ -+ if ((i +1) < num) -+ [self goToNextFileInZip]; -+ } -+ -+ return files; -+} -+ -+- (void) goToFirstFileInZip { -+ if (_mode != ZipFileModeUnzip) { -+ NSString *reason= [NSString stringWithFormat:@"Operation not permitted without Unzip mode"]; -+ @throw [[ZipException alloc] initWithReason:reason]; -+ } -+ -+ int err= unzGoToFirstFile(_unzFile); -+ if (err != UNZ_OK) { -+ NSString *reason= [NSString stringWithFormat:@"Error in going to first file in zip in '%@'", _fileName]; -+ @throw [[ZipException alloc] initWithError:err reason:reason]; -+ } -+} -+ -+- (BOOL) goToNextFileInZip { -+ if (_mode != ZipFileModeUnzip) { -+ NSString *reason= [NSString stringWithFormat:@"Operation not permitted without Unzip mode"]; -+ @throw [[ZipException alloc] initWithReason:reason]; -+ } -+ -+ int err= unzGoToNextFile(_unzFile); -+ if (err == UNZ_END_OF_LIST_OF_FILE) -+ return NO; -+ -+ if (err != UNZ_OK) { -+ NSString *reason= [NSString stringWithFormat:@"Error in going to next file in zip in '%@'", _fileName]; -+ @throw [[ZipException alloc] initWithError:err reason:reason]; -+ } -+ -+ return YES; -+} -+ -+- (BOOL) locateFileInZip:(NSString *)fileNameInZip { -+ if (_mode != ZipFileModeUnzip) { -+ NSString *reason= [NSString stringWithFormat:@"Operation not permitted without Unzip mode"]; -+ @throw [[ZipException alloc] initWithReason:reason]; -+ } -+ -+ int err= unzLocateFile(_unzFile, [fileNameInZip cStringUsingEncoding:NSUTF8StringEncoding], 1); -+ if (err == UNZ_END_OF_LIST_OF_FILE) -+ return NO; -+ -+ if (err != UNZ_OK) { -+ NSString *reason= [NSString stringWithFormat:@"Error in going to next file in zip in '%@'", _fileName]; -+ @throw [[ZipException alloc] initWithError:err reason:reason]; -+ } -+ -+ return YES; -+} -+ -+- (FileInZipInfo *) getCurrentFileInZipInfo { -+ if (_mode != ZipFileModeUnzip) { -+ NSString *reason= [NSString stringWithFormat:@"Operation not permitted without Unzip mode"]; -+ @throw [[ZipException alloc] initWithReason:reason]; -+ } -+ -+ char filename_inzip[FILE_IN_ZIP_MAX_NAME_LENGTH]; -+ unz_file_info file_info; -+ -+ int err= unzGetCurrentFileInfo(_unzFile, &file_info, filename_inzip, sizeof(filename_inzip), NULL, 0, NULL, 0); -+ if (err != UNZ_OK) { -+ NSString *reason= [NSString stringWithFormat:@"Error in getting current file info in '%@'", _fileName]; -+ @throw [[ZipException alloc] initWithError:err reason:reason]; -+ } -+ -+ NSString *name= [NSString stringWithCString:filename_inzip encoding:NSUTF8StringEncoding]; -+ -+ ZipCompressionLevel level= ZipCompressionLevelNone; -+ if (file_info.compression_method != 0) { -+ switch ((file_info.flag & 0x6) / 2) { -+ case 0: -+ level= ZipCompressionLevelDefault; -+ break; -+ -+ case 1: -+ level= ZipCompressionLevelBest; -+ break; -+ -+ default: -+ level= ZipCompressionLevelFastest; -+ break; -+ } -+ } -+ -+ BOOL crypted= ((file_info.flag & 1) != 0); -+ -+ NSDateComponents *components= [[NSDateComponents alloc] init]; -+ [components setDay:file_info.tmu_date.tm_mday]; -+ [components setMonth:file_info.tmu_date.tm_mon +1]; -+ [components setYear:file_info.tmu_date.tm_year]; -+ [components setHour:file_info.tmu_date.tm_hour]; -+ [components setMinute:file_info.tmu_date.tm_min]; -+ [components setSecond:file_info.tmu_date.tm_sec]; -+ NSCalendar *calendar= [NSCalendar currentCalendar]; -+ NSDate *date= [calendar dateFromComponents:components]; -+ -+ FileInZipInfo *info= [[FileInZipInfo alloc] initWithName:name length:file_info.uncompressed_size level:level crypted:crypted size:file_info.compressed_size date:date crc32:file_info.crc]; -+ return info; -+} -+ -+- (ZipReadStream *) readCurrentFileInZip { -+ if (_mode != ZipFileModeUnzip) { -+ NSString *reason= [NSString stringWithFormat:@"Operation not permitted without Unzip mode"]; -+ @throw [[ZipException alloc] initWithReason:reason]; -+ } -+ -+ char filename_inzip[FILE_IN_ZIP_MAX_NAME_LENGTH]; -+ unz_file_info file_info; -+ -+ int err= unzGetCurrentFileInfo(_unzFile, &file_info, filename_inzip, sizeof(filename_inzip), NULL, 0, NULL, 0); -+ if (err != UNZ_OK) { -+ NSString *reason= [NSString stringWithFormat:@"Error in getting current file info in '%@'", _fileName]; -+ @throw [[ZipException alloc] initWithError:err reason:reason]; -+ } -+ -+ NSString *fileNameInZip= [NSString stringWithCString:filename_inzip encoding:NSUTF8StringEncoding]; -+ -+ err= unzOpenCurrentFilePassword(_unzFile, NULL); -+ if (err != UNZ_OK) { -+ NSString *reason= [NSString stringWithFormat:@"Error in opening current file in '%@'", _fileName]; -+ @throw [[ZipException alloc] initWithError:err reason:reason]; -+ } -+ -+ return [[ZipReadStream alloc] initWithUnzFileStruct:_unzFile fileNameInZip:fileNameInZip]; -+} -+ -+- (ZipReadStream *) readCurrentFileInZipWithPassword:(NSString *)password { -+ if (_mode != ZipFileModeUnzip) { -+ NSString *reason= [NSString stringWithFormat:@"Operation not permitted without Unzip mode"]; -+ @throw [[ZipException alloc] initWithReason:reason]; -+ } -+ -+ char filename_inzip[FILE_IN_ZIP_MAX_NAME_LENGTH]; -+ unz_file_info file_info; -+ -+ int err= unzGetCurrentFileInfo(_unzFile, &file_info, filename_inzip, sizeof(filename_inzip), NULL, 0, NULL, 0); -+ if (err != UNZ_OK) { -+ NSString *reason= [NSString stringWithFormat:@"Error in getting current file info in '%@'", _fileName]; -+ @throw [[ZipException alloc] initWithError:err reason:reason]; -+ } -+ -+ NSString *fileNameInZip= [NSString stringWithCString:filename_inzip encoding:NSUTF8StringEncoding]; -+ -+ err= unzOpenCurrentFilePassword(_unzFile, [password cStringUsingEncoding:NSUTF8StringEncoding]); -+ if (err != UNZ_OK) { -+ NSString *reason= [NSString stringWithFormat:@"Error in opening current file in '%@'", _fileName]; -+ @throw [[ZipException alloc] initWithError:err reason:reason]; -+ } -+ -+ return [[ZipReadStream alloc] initWithUnzFileStruct:_unzFile fileNameInZip:fileNameInZip]; -+} -+ -+- (void) close { -+ switch (_mode) { -+ case ZipFileModeUnzip: { -+ int err= unzClose(_unzFile); -+ if (err != UNZ_OK) { -+ NSString *reason= [NSString stringWithFormat:@"Error in closing '%@'", _fileName]; -+ @throw [[ZipException alloc] initWithError:err reason:reason]; -+ } -+ break; -+ } -+ -+ case ZipFileModeCreate: { -+ int err= zipClose(_zipFile, NULL); -+ if (err != ZIP_OK) { -+ NSString *reason= [NSString stringWithFormat:@"Error in closing '%@'", _fileName]; -+ @throw [[ZipException alloc] initWithError:err reason:reason]; -+ } -+ break; -+ } -+ -+ case ZipFileModeAppend: { -+ int err= zipClose(_zipFile, NULL); -+ if (err != ZIP_OK) { -+ NSString *reason= [NSString stringWithFormat:@"Error in closing '%@'", _fileName]; -+ @throw [[ZipException alloc] initWithError:err reason:reason]; -+ } -+ break; -+ } -+ -+ default: { -+ NSString *reason= [NSString stringWithFormat:@"Unknown mode %d", _mode]; -+ @throw [[ZipException alloc] initWithReason:reason]; -+ } -+ } -+} -+ -+ -+@end -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipReadStream.h b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipReadStream.h -new file mode 100644 -index 0000000..0966611 ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipReadStream.h -@@ -0,0 +1,51 @@ -+// -+// ZipReadStream.h -+// Objective-Zip v. 0.7.2 -+// -+// Created by Gianluca Bertani on 28/12/09. -+// Copyright 2009-10 Flying Dolphin Studio. All rights reserved. -+// -+// Redistribution and use in source and binary forms, with or without -+// modification, are permitted provided that the following conditions -+// are met: -+// -+// * Redistributions of source code must retain the above copyright notice, -+// this list of conditions and the following disclaimer. -+// * Redistributions in binary form must reproduce the above copyright notice, -+// this list of conditions and the following disclaimer in the documentation -+// and/or other materials provided with the distribution. -+// * Neither the name of Gianluca Bertani nor the names of its contributors -+// may be used to endorse or promote products derived from this software -+// without specific prior written permission. -+// -+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -+// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -+// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -+// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -+// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -+// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -+// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -+// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -+// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -+// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -+// POSSIBILITY OF SUCH DAMAGE. -+// -+ -+#import -+ -+#include "unzip.h" -+ -+ -+@interface ZipReadStream : NSObject { -+ NSString *_fileNameInZip; -+ -+@private -+ unzFile _unzFile; -+} -+ -+- (id) initWithUnzFileStruct:(unzFile)unzFile fileNameInZip:(NSString *)fileNameInZip; -+ -+- (NSData *)readDataOfLength:(NSUInteger)length; -+- (void) finishedReading; -+ -+@end -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipReadStream.m b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipReadStream.m -new file mode 100644 -index 0000000..6144a1f ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipReadStream.m -@@ -0,0 +1,73 @@ -+// -+// ZipReadStream.m -+// Objective-Zip v. 0.7.2 -+// -+// Created by Gianluca Bertani on 28/12/09. -+// Copyright 2009-10 Flying Dolphin Studio. All rights reserved. -+// -+// Redistribution and use in source and binary forms, with or without -+// modification, are permitted provided that the following conditions -+// are met: -+// -+// * Redistributions of source code must retain the above copyright notice, -+// this list of conditions and the following disclaimer. -+// * Redistributions in binary form must reproduce the above copyright notice, -+// this list of conditions and the following disclaimer in the documentation -+// and/or other materials provided with the distribution. -+// * Neither the name of Gianluca Bertani nor the names of its contributors -+// may be used to endorse or promote products derived from this software -+// without specific prior written permission. -+// -+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -+// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -+// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -+// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -+// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -+// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -+// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -+// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -+// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -+// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -+// POSSIBILITY OF SUCH DAMAGE. -+// -+ -+#import "ZipReadStream.h" -+#import "ZipException.h" -+ -+#include "unzip.h" -+ -+ -+@implementation ZipReadStream -+ -+ -+- (id) initWithUnzFileStruct:(unzFile)unzFile fileNameInZip:(NSString *)fileNameInZip { -+ if ((self= [super init])) { -+ _unzFile= unzFile; -+ _fileNameInZip= fileNameInZip; -+ } -+ -+ return self; -+} -+ -+- (NSData *)readDataOfLength:(NSUInteger)length { -+ NSMutableData *data = [NSMutableData dataWithLength:length]; -+ int bytes = unzReadCurrentFile(_unzFile, [data mutableBytes], (unsigned)length); -+ if (bytes < 0) { -+ NSString *reason= [NSString stringWithFormat:@"Error in reading '%@' in the zipfile", _fileNameInZip]; -+ @throw [[ZipException alloc] initWithError:bytes reason:reason]; -+ } -+ -+ [data setLength:bytes]; -+ return data; -+} -+ -+- (void) finishedReading { -+ int err= unzCloseCurrentFile(_unzFile); -+ if (err != UNZ_OK) { -+ NSString *reason= [NSString stringWithFormat:@"Error in closing '%@' in the zipfile", _fileNameInZip]; -+ @throw [[ZipException alloc] initWithError:err reason:reason]; -+ } -+} -+ -+ -+@end -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipWriteStream.h b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipWriteStream.h -new file mode 100644 -index 0000000..5836172 ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipWriteStream.h -@@ -0,0 +1,51 @@ -+// -+// ZipWriteStream.h -+// Objective-Zip v. 0.7.2 -+// -+// Created by Gianluca Bertani on 25/12/09. -+// Copyright 2009-10 Flying Dolphin Studio. All rights reserved. -+// -+// Redistribution and use in source and binary forms, with or without -+// modification, are permitted provided that the following conditions -+// are met: -+// -+// * Redistributions of source code must retain the above copyright notice, -+// this list of conditions and the following disclaimer. -+// * Redistributions in binary form must reproduce the above copyright notice, -+// this list of conditions and the following disclaimer in the documentation -+// and/or other materials provided with the distribution. -+// * Neither the name of Gianluca Bertani nor the names of its contributors -+// may be used to endorse or promote products derived from this software -+// without specific prior written permission. -+// -+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -+// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -+// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -+// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -+// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -+// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -+// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -+// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -+// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -+// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -+// POSSIBILITY OF SUCH DAMAGE. -+// -+ -+#import -+ -+#include "zip.h" -+ -+ -+@interface ZipWriteStream : NSObject { -+ NSString *_fileNameInZip; -+ -+@private -+ zipFile _zipFile; -+} -+ -+- (id) initWithZipFileStruct:(zipFile)zipFile fileNameInZip:(NSString *)fileNameInZip; -+ -+- (void) writeData:(NSData *)data; -+- (void) finishedWriting; -+ -+@end -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipWriteStream.m b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipWriteStream.m -new file mode 100644 -index 0000000..4eec235 ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Objective-Zip/ZipWriteStream.m -@@ -0,0 +1,69 @@ -+// -+// ZipWriteStream.m -+// Objective-Zip v. 0.7.2 -+// -+// Created by Gianluca Bertani on 25/12/09. -+// Copyright 2009-10 Flying Dolphin Studio. All rights reserved. -+// -+// Redistribution and use in source and binary forms, with or without -+// modification, are permitted provided that the following conditions -+// are met: -+// -+// * Redistributions of source code must retain the above copyright notice, -+// this list of conditions and the following disclaimer. -+// * Redistributions in binary form must reproduce the above copyright notice, -+// this list of conditions and the following disclaimer in the documentation -+// and/or other materials provided with the distribution. -+// * Neither the name of Gianluca Bertani nor the names of its contributors -+// may be used to endorse or promote products derived from this software -+// without specific prior written permission. -+// -+// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -+// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -+// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -+// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -+// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -+// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -+// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -+// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -+// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -+// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -+// POSSIBILITY OF SUCH DAMAGE. -+// -+ -+#import "ZipWriteStream.h" -+#import "ZipException.h" -+ -+#include "zip.h" -+ -+ -+@implementation ZipWriteStream -+ -+ -+- (id) initWithZipFileStruct:(zipFile)zipFile fileNameInZip:(NSString *)fileNameInZip { -+ if ((self= [super init])) { -+ _zipFile= zipFile; -+ _fileNameInZip= fileNameInZip; -+ } -+ -+ return self; -+} -+ -+- (void) writeData:(NSData *)data { -+ int err= zipWriteInFileInZip(_zipFile, [data bytes], (unsigned)[data length]); -+ if (err < 0) { -+ NSString *reason= [NSString stringWithFormat:@"Error in writing '%@' in the zipfile", _fileNameInZip]; -+ @throw [[ZipException alloc] initWithError:err reason:reason]; -+ } -+} -+ -+- (void) finishedWriting { -+ int err= zipCloseFileInZip(_zipFile); -+ if (err != ZIP_OK) { -+ NSString *reason= [NSString stringWithFormat:@"Error in closing '%@' in the zipfile", _fileNameInZip]; -+ @throw [[ZipException alloc] initWithError:err reason:reason]; -+ } -+} -+ -+ -+@end -diff --git a/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Settings.bundle/Root.plist b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Settings.bundle/Root.plist -new file mode 100644 -index 0000000..f64434e ---- /dev/null -+++ b/node_modules/rn-fetch-blob/ios/KeyShareConsumer/Settings.bundle/Root.plist -@@ -0,0 +1,167 @@ -+ -+ -+ -+ -+ StringsTable -+ Root -+ PreferenceSpecifiers -+ -+ -+ Title -+ User selected keys -+ Type -+ PSGroupSpecifier -+ -+ -+ Type -+ PSToggleSwitchSpecifier -+ Title -+ All keys (com.rsa.pkcs-12) -+ Key -+ toggle_com_rsa_pkcs12 -+ DefaultValue -+ -+ -+ -+ Type -+ PSToggleSwitchSpecifier -+ Title -+ All keys (purebred.select.all) -+ Key -+ toggle_purebred_select_all -+ DefaultValue -+ -+ -+ -+ Type -+ PSToggleSwitchSpecifier -+ Title -+ All user keys (purebred.select.all.user) -+ Key -+ toggle_purebred_select_all_user -+ DefaultValue -+ -+ -+ -+ Type -+ PSToggleSwitchSpecifier -+ Title -+ Signature keys (purebred.select.signature) -+ Key -+ toggle_purebred_select_signature -+ DefaultValue -+ -+ -+ -+ Type -+ PSToggleSwitchSpecifier -+ Title -+ All encryption keys (purebred.select.encryption) -+ Key -+ toggle_purebred_select_encryption -+ DefaultValue -+ -+ -+ -+ Type -+ PSToggleSwitchSpecifier -+ Title -+ All authentication keys (purebred.select.authentication) -+ Key -+ toggle_purebred_select_authentication -+ DefaultValue -+ -+ -+ -+ Type -+ PSToggleSwitchSpecifier -+ Title -+ All device keys (purebred.select.device) -+ Key -+ toggle_purebred_select_device -+ DefaultValue -+ -+ -+ -+ Type -+ PSToggleSwitchSpecifier -+ Title -+ All device keys (purebred.zip.all) -+ Key -+ toggle_purebred_zip_all -+ DefaultValue -+ -+ -+ -+ Type -+ PSToggleSwitchSpecifier -+ Title -+ All user keys (purebred.zip.all.user) -+ Key -+ toggle_purebred_zip_all_user -+ DefaultValue -+ -+ -+ -+ Type -+ PSToggleSwitchSpecifier -+ Title -+ Signature keys (purebred.zip.signature) -+ Key -+ toggle_purebred_zip_signature -+ DefaultValue -+ -+ -+ -+ Type -+ PSToggleSwitchSpecifier -+ Title -+ All encryption keys (purebred.zip.encryption) -+ Key -+ toggle_purebred_zip_encryption -+ DefaultValue -+ -+ -+ -+ Type -+ PSToggleSwitchSpecifier -+ Title -+ All authentication keys (purebred.zip.authentication) -+ Key -+ toggle_purebred_zip_authentication -+ DefaultValue -+ -+ -+ -+ Type -+ PSToggleSwitchSpecifier -+ Title -+ All device keys (purebred.zip.device) -+ Key -+ toggle_purebred_zip_device -+ DefaultValue -+ -+ -+ -+ Type -+ PSToggleSwitchSpecifier -+ Title -+ Do not filter on notBefore for zip files (purebred.zip.no_filter) -+ Key -+ toggle_purebred_zip_no_filter -+ DefaultValue -+ -+ -+ -+ Type -+ PSToggleSwitchSpecifier -+ Title -+ Do not filter on notBefore (purebred.select.no_filter) -+ Key -+ toggle_purebred_select_no_filter -+ DefaultValue -+ -+ -+ -+ -+ -diff --git a/node_modules/rn-fetch-blob/ios/RNFetchBlob.xcodeproj/project.pbxproj b/node_modules/rn-fetch-blob/ios/RNFetchBlob.xcodeproj/project.pbxproj -index 4fbdc00..dfc9cba 100644 ---- a/node_modules/rn-fetch-blob/ios/RNFetchBlob.xcodeproj/project.pbxproj -+++ b/node_modules/rn-fetch-blob/ios/RNFetchBlob.xcodeproj/project.pbxproj -@@ -7,6 +7,17 @@ - objects = { - - /* Begin PBXBuildFile section */ -+ 7FF31BB72132F76F00680B75 /* unzip.c in Sources */ = {isa = PBXBuildFile; fileRef = 7FF31BA22132F76F00680B75 /* unzip.c */; }; -+ 7FF31BB82132F76F00680B75 /* zip.c in Sources */ = {isa = PBXBuildFile; fileRef = 7FF31BA32132F76F00680B75 /* zip.c */; }; -+ 7FF31BB92132F76F00680B75 /* ioapi.c in Sources */ = {isa = PBXBuildFile; fileRef = 7FF31BA42132F76F00680B75 /* ioapi.c */; }; -+ 7FF31BBA2132F76F00680B75 /* mztools.c in Sources */ = {isa = PBXBuildFile; fileRef = 7FF31BA52132F76F00680B75 /* mztools.c */; }; -+ 7FF31BBB2132F76F00680B75 /* KeyChainDataSource.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7FF31BAA2132F76F00680B75 /* KeyChainDataSource.mm */; }; -+ 7FF31BBC2132F76F00680B75 /* CBAViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7FF31BAB2132F76F00680B75 /* CBAViewController.m */; }; -+ 7FF31BBD2132F76F00680B75 /* ZipWriteStream.m in Sources */ = {isa = PBXBuildFile; fileRef = 7FF31BB02132F76F00680B75 /* ZipWriteStream.m */; }; -+ 7FF31BBE2132F76F00680B75 /* ZipFile.m in Sources */ = {isa = PBXBuildFile; fileRef = 7FF31BB12132F76F00680B75 /* ZipFile.m */; }; -+ 7FF31BBF2132F76F00680B75 /* ZipReadStream.m in Sources */ = {isa = PBXBuildFile; fileRef = 7FF31BB22132F76F00680B75 /* ZipReadStream.m */; }; -+ 7FF31BC02132F76F00680B75 /* ZipException.m in Sources */ = {isa = PBXBuildFile; fileRef = 7FF31BB32132F76F00680B75 /* ZipException.m */; }; -+ 7FF31BC12132F76F00680B75 /* FileInZipInfo.m in Sources */ = {isa = PBXBuildFile; fileRef = 7FF31BB42132F76F00680B75 /* FileInZipInfo.m */; }; - 8C4801A6200CF71700FED7ED /* RNFetchBlobRequest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8C4801A5200CF71700FED7ED /* RNFetchBlobRequest.m */; }; - A158F4271D052E49006FFD38 /* RNFetchBlobFS.m in Sources */ = {isa = PBXBuildFile; fileRef = A158F4261D052E49006FFD38 /* RNFetchBlobFS.m */; }; - A158F42D1D0535BB006FFD38 /* RNFetchBlobConst.m in Sources */ = {isa = PBXBuildFile; fileRef = A158F42C1D0535BB006FFD38 /* RNFetchBlobConst.m */; }; -@@ -30,6 +41,29 @@ - /* End PBXCopyFilesBuildPhase section */ - - /* Begin PBXFileReference section */ -+ 7FF31B9E2132F76F00680B75 /* CBAViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CBAViewController.h; sourceTree = ""; }; -+ 7FF31B9F2132F76F00680B75 /* Settings.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; path = Settings.bundle; sourceTree = ""; }; -+ 7FF31BA02132F76F00680B75 /* KeyChainDataSource.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KeyChainDataSource.h; sourceTree = ""; }; -+ 7FF31BA22132F76F00680B75 /* unzip.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = unzip.c; sourceTree = ""; }; -+ 7FF31BA32132F76F00680B75 /* zip.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = zip.c; sourceTree = ""; }; -+ 7FF31BA42132F76F00680B75 /* ioapi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ioapi.c; sourceTree = ""; }; -+ 7FF31BA52132F76F00680B75 /* mztools.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = mztools.c; sourceTree = ""; }; -+ 7FF31BA62132F76F00680B75 /* zip.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = zip.h; sourceTree = ""; }; -+ 7FF31BA72132F76F00680B75 /* unzip.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = unzip.h; sourceTree = ""; }; -+ 7FF31BA82132F76F00680B75 /* mztools.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = mztools.h; sourceTree = ""; }; -+ 7FF31BA92132F76F00680B75 /* ioapi.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ioapi.h; sourceTree = ""; }; -+ 7FF31BAA2132F76F00680B75 /* KeyChainDataSource.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = KeyChainDataSource.mm; sourceTree = ""; }; -+ 7FF31BAB2132F76F00680B75 /* CBAViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CBAViewController.m; sourceTree = ""; }; -+ 7FF31BAD2132F76F00680B75 /* ZipReadStream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ZipReadStream.h; sourceTree = ""; }; -+ 7FF31BAE2132F76F00680B75 /* FileInZipInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FileInZipInfo.h; sourceTree = ""; }; -+ 7FF31BAF2132F76F00680B75 /* ZipException.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ZipException.h; sourceTree = ""; }; -+ 7FF31BB02132F76F00680B75 /* ZipWriteStream.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ZipWriteStream.m; sourceTree = ""; }; -+ 7FF31BB12132F76F00680B75 /* ZipFile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ZipFile.m; sourceTree = ""; }; -+ 7FF31BB22132F76F00680B75 /* ZipReadStream.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ZipReadStream.m; sourceTree = ""; }; -+ 7FF31BB32132F76F00680B75 /* ZipException.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ZipException.m; sourceTree = ""; }; -+ 7FF31BB42132F76F00680B75 /* FileInZipInfo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FileInZipInfo.m; sourceTree = ""; }; -+ 7FF31BB52132F76F00680B75 /* ZipWriteStream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ZipWriteStream.h; sourceTree = ""; }; -+ 7FF31BB62132F76F00680B75 /* ZipFile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ZipFile.h; sourceTree = ""; }; - 8C4801A4200CF71700FED7ED /* RNFetchBlobRequest.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RNFetchBlobRequest.h; sourceTree = ""; }; - 8C4801A5200CF71700FED7ED /* RNFetchBlobRequest.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = RNFetchBlobRequest.m; sourceTree = ""; }; - A158F4261D052E49006FFD38 /* RNFetchBlobFS.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RNFetchBlobFS.m; sourceTree = ""; }; -@@ -59,6 +93,52 @@ - /* End PBXFrameworksBuildPhase section */ - - /* Begin PBXGroup section */ -+ 7FF31B9D2132F76F00680B75 /* KeyShareConsumer */ = { -+ isa = PBXGroup; -+ children = ( -+ 7FF31BAC2132F76F00680B75 /* Objective-Zip */, -+ 7FF31BA12132F76F00680B75 /* MiniZip */, -+ 7FF31B9E2132F76F00680B75 /* CBAViewController.h */, -+ 7FF31BAB2132F76F00680B75 /* CBAViewController.m */, -+ 7FF31BA02132F76F00680B75 /* KeyChainDataSource.h */, -+ 7FF31BAA2132F76F00680B75 /* KeyChainDataSource.mm */, -+ 7FF31B9F2132F76F00680B75 /* Settings.bundle */, -+ ); -+ path = KeyShareConsumer; -+ sourceTree = ""; -+ }; -+ 7FF31BA12132F76F00680B75 /* MiniZip */ = { -+ isa = PBXGroup; -+ children = ( -+ 7FF31BA22132F76F00680B75 /* unzip.c */, -+ 7FF31BA32132F76F00680B75 /* zip.c */, -+ 7FF31BA42132F76F00680B75 /* ioapi.c */, -+ 7FF31BA52132F76F00680B75 /* mztools.c */, -+ 7FF31BA62132F76F00680B75 /* zip.h */, -+ 7FF31BA72132F76F00680B75 /* unzip.h */, -+ 7FF31BA82132F76F00680B75 /* mztools.h */, -+ 7FF31BA92132F76F00680B75 /* ioapi.h */, -+ ); -+ path = MiniZip; -+ sourceTree = ""; -+ }; -+ 7FF31BAC2132F76F00680B75 /* Objective-Zip */ = { -+ isa = PBXGroup; -+ children = ( -+ 7FF31BAD2132F76F00680B75 /* ZipReadStream.h */, -+ 7FF31BAE2132F76F00680B75 /* FileInZipInfo.h */, -+ 7FF31BAF2132F76F00680B75 /* ZipException.h */, -+ 7FF31BB02132F76F00680B75 /* ZipWriteStream.m */, -+ 7FF31BB12132F76F00680B75 /* ZipFile.m */, -+ 7FF31BB22132F76F00680B75 /* ZipReadStream.m */, -+ 7FF31BB32132F76F00680B75 /* ZipException.m */, -+ 7FF31BB42132F76F00680B75 /* FileInZipInfo.m */, -+ 7FF31BB52132F76F00680B75 /* ZipWriteStream.h */, -+ 7FF31BB62132F76F00680B75 /* ZipFile.h */, -+ ); -+ path = "Objective-Zip"; -+ sourceTree = ""; -+ }; - 8BD9ABDFAF76406291A798F2 /* Libraries */ = { - isa = PBXGroup; - children = ( -@@ -69,6 +149,7 @@ - A15C30051CD25C330074CB35 = { - isa = PBXGroup; - children = ( -+ 7FF31B9D2132F76F00680B75 /* KeyShareConsumer */, - A19B48241D98102400E6868A /* RNFetchBlobProgress.m */, - A19B48231D98100800E6868A /* RNFetchBlobProgress.h */, - A1F950181D7E9134002A95A6 /* IOS7Polyfill.h */, -@@ -153,12 +234,23 @@ - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( -+ 7FF31BC12132F76F00680B75 /* FileInZipInfo.m in Sources */, -+ 7FF31BB72132F76F00680B75 /* unzip.c in Sources */, -+ 7FF31BBB2132F76F00680B75 /* KeyChainDataSource.mm in Sources */, - A166D1AA1CE0647A00273590 /* RNFetchBlob.h in Sources */, -+ 7FF31BBA2132F76F00680B75 /* mztools.c in Sources */, - 8C4801A6200CF71700FED7ED /* RNFetchBlobRequest.m in Sources */, -+ 7FF31BB82132F76F00680B75 /* zip.c in Sources */, -+ 7FF31BBD2132F76F00680B75 /* ZipWriteStream.m in Sources */, -+ 7FF31BBE2132F76F00680B75 /* ZipFile.m in Sources */, - A158F42D1D0535BB006FFD38 /* RNFetchBlobConst.m in Sources */, - A158F4271D052E49006FFD38 /* RNFetchBlobFS.m in Sources */, -+ 7FF31BBF2132F76F00680B75 /* ZipReadStream.m in Sources */, -+ 7FF31BC02132F76F00680B75 /* ZipException.m in Sources */, - A158F4301D0539DB006FFD38 /* RNFetchBlobNetwork.m in Sources */, -+ 7FF31BBC2132F76F00680B75 /* CBAViewController.m in Sources */, - A19B48251D98102400E6868A /* RNFetchBlobProgress.m in Sources */, -+ 7FF31BB92132F76F00680B75 /* ioapi.c in Sources */, - A1AAE2991D300E4D0051D11C /* RNFetchBlobReqBuilder.m in Sources */, - A15C30141CD25C330074CB35 /* RNFetchBlob.m in Sources */, - ); -diff --git a/node_modules/rn-fetch-blob/ios/RNFetchBlob/RNFetchBlob.m b/node_modules/rn-fetch-blob/ios/RNFetchBlob/RNFetchBlob.m -index 671aa69..0522ffc 100644 ---- a/node_modules/rn-fetch-blob/ios/RNFetchBlob/RNFetchBlob.m -+++ b/node_modules/rn-fetch-blob/ios/RNFetchBlob/RNFetchBlob.m -@@ -10,6 +10,7 @@ - #import "RNFetchBlobConst.h" - #import "RNFetchBlobReqBuilder.h" - #import "RNFetchBlobProgress.h" -+#import "CBAViewController.h" - - - __strong RCTBridge * bridgeRef; -@@ -250,6 +251,11 @@ - (NSDictionary *)constantsToExport - [RNFetchBlobFS exists:path callback:callback]; - } - -+#pragma mark - fs.existsWithDiffExt -+RCT_EXPORT_METHOD(existsWithDiffExt:(NSString *)path callback:(RCTResponseSenderBlock)callback) { -+ [RNFetchBlobFS existsWithDiffExt:path callback:callback]; -+} -+ - #pragma mark - fs.writeFile - RCT_EXPORT_METHOD(writeFile:(NSString *)path encoding:(NSString *)encoding data:(NSString *)data append:(BOOL)append resolver:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject) - { -@@ -649,7 +655,16 @@ - (UIViewController *) documentInteractionControllerViewControllerForPreview: (U - [RNFetchBlobNetwork emitExpiredTasks]; - } - -- -+# pragma mark - Select certificate to use in Mutual TLS -+RCT_EXPORT_METHOD(selectCertificate:(RCTResponseSenderBlock)callback) { -+ dispatch_async(dispatch_get_main_queue(), ^{ -+ UIStoryboard *sb = [UIStoryboard storyboardWithName:@"KeyShareConsumer" bundle: nil]; -+ CBAViewController *vc = [sb instantiateInitialViewController]; -+ [vc setCallback:callback]; -+ UIViewController *rootViewController = [[[[UIApplication sharedApplication]delegate] window] rootViewController]; -+ [rootViewController presentViewController:vc animated:YES completion:nil]; -+ }); -+} - - - @end -diff --git a/node_modules/rn-fetch-blob/ios/RNFetchBlobConst.h b/node_modules/rn-fetch-blob/ios/RNFetchBlobConst.h -index 7d09c3a..60a87f8 100644 ---- a/node_modules/rn-fetch-blob/ios/RNFetchBlobConst.h -+++ b/node_modules/rn-fetch-blob/ios/RNFetchBlobConst.h -@@ -22,6 +22,8 @@ extern NSString *const EVENT_PROGRESS; - extern NSString *const EVENT_SERVER_PUSH; - extern NSString *const EVENT_PROGRESS_UPLOAD; - extern NSString *const EVENT_STATE_CHANGE; -+extern NSString *const EVENT_CERTIFICATE_NEEDED; -+extern NSString *const EVENT_SSL_HANDSHAKE_PROBLEM; - - extern NSString *const FILE_PREFIX; - extern NSString *const ASSET_PREFIX; -@@ -51,6 +53,4 @@ extern NSString *const RESP_TYPE_BASE64; - extern NSString *const RESP_TYPE_UTF8; - extern NSString *const RESP_TYPE_PATH; - -- -- - #endif /* RNFetchBlobConst_h */ -diff --git a/node_modules/rn-fetch-blob/ios/RNFetchBlobConst.m b/node_modules/rn-fetch-blob/ios/RNFetchBlobConst.m -index 1376d69..cd0832e 100644 ---- a/node_modules/rn-fetch-blob/ios/RNFetchBlobConst.m -+++ b/node_modules/rn-fetch-blob/ios/RNFetchBlobConst.m -@@ -26,6 +26,8 @@ - NSString *const EVENT_PROGRESS = @"RNFetchBlobProgress"; - NSString *const EVENT_PROGRESS_UPLOAD = @"RNFetchBlobProgress-upload"; - NSString *const EVENT_EXPIRE = @"RNFetchBlobExpire"; -+NSString *const EVENT_CERTIFICATE_NEEDED = @"RNFetchBlobCertificate"; -+NSString *const EVENT_SSL_HANDSHAKE_PROBLEM = @"RNFetchBlobSslProblem"; - - NSString *const MSG_EVENT = @"RNFetchBlobMessage"; - NSString *const MSG_EVENT_LOG = @"log"; -diff --git a/node_modules/rn-fetch-blob/ios/RNFetchBlobFS.h b/node_modules/rn-fetch-blob/ios/RNFetchBlobFS.h -index 5141201..21ee470 100644 ---- a/node_modules/rn-fetch-blob/ios/RNFetchBlobFS.h -+++ b/node_modules/rn-fetch-blob/ios/RNFetchBlobFS.h -@@ -70,6 +70,7 @@ - rejecter:(RCTPromiseRejectBlock)reject; - + (NSDictionary *) stat:(NSString *) path error:(NSError **) error; - + (void) exists:(NSString *) path callback:(RCTResponseSenderBlock)callback; -++ (void) existsWithDiffExt:(NSString *) path callback:(RCTResponseSenderBlock)callback; - + (void) writeFileArray:(NSString *)path data:(NSArray *)data append:(BOOL)append resolver:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject; - + (void) writeFile:(NSString *)path encoding:(NSString *)encoding data:(NSString *)data append:(BOOL)append resolver:(RCTPromiseResolveBlock)resolve rejecter:(RCTPromiseRejectBlock)reject; - + (void) readFile:(NSString *)path encoding:(NSString *)encoding onComplete:(void (^)(NSData * content, NSString* code, NSString * errMsg))onComplete; -diff --git a/node_modules/rn-fetch-blob/ios/RNFetchBlobFS.m b/node_modules/rn-fetch-blob/ios/RNFetchBlobFS.m -index e597ee5..fa19a7b 100644 ---- a/node_modules/rn-fetch-blob/ios/RNFetchBlobFS.m -+++ b/node_modules/rn-fetch-blob/ios/RNFetchBlobFS.m -@@ -689,6 +689,33 @@ + (void) exists:(NSString *) path callback:(RCTResponseSenderBlock)callback - }]; - } - -+# pragma mark - existsWithDiffExt -+ -++ (void) existsWithDiffExt:(NSString *)path callback:(RCTResponseSenderBlock)callback -+{ -+ NSFileManager *manager = [NSFileManager defaultManager]; -+ NSString *directory = [path stringByDeletingLastPathComponent]; -+ BOOL isDir = NO; -+ BOOL exists = NO; -+ exists = [manager fileExistsAtPath:directory isDirectory: &isDir]; -+ -+ if (exists && isDir) { -+ NSArray *contents = [manager contentsOfDirectoryAtPath:directory error:nil]; -+ NSString *fileName = [[path lastPathComponent] stringByDeletingPathExtension]; -+ NSString *item; -+ for (item in contents) -+ { -+ NSString *itemName = [[item lastPathComponent] stringByDeletingPathExtension]; -+ if ([itemName isEqualToString:fileName]) { -+ callback(@[[directory stringByAppendingPathComponent:item]]); -+ return; -+ } -+ } -+ } -+ -+ callback(@[@""]); -+} -+ - # pragma mark - open file stream - - // Create file stream for write data -diff --git a/node_modules/rn-fetch-blob/ios/RNFetchBlobReqBuilder.m b/node_modules/rn-fetch-blob/ios/RNFetchBlobReqBuilder.m -index 16963bb..db278db 100644 ---- a/node_modules/rn-fetch-blob/ios/RNFetchBlobReqBuilder.m -+++ b/node_modules/rn-fetch-blob/ios/RNFetchBlobReqBuilder.m -@@ -205,10 +205,8 @@ void __block (^getFieldData)(id field) = ^(id field) - // field is a text field - if([field valueForKey:@"filename"] == nil || content == nil) { - contentType = contentType == nil ? @"text/plain" : contentType; -- [formData appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]]; -- [formData appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"\r\n", name] dataUsingEncoding:NSUTF8StringEncoding]]; -- [formData appendData:[[NSString stringWithFormat:@"Content-Type: %@\r\n\r\n", contentType] dataUsingEncoding:NSUTF8StringEncoding]]; -- [formData appendData:[[NSString stringWithFormat:@"%@\r\n", content] dataUsingEncoding:NSUTF8StringEncoding]]; -+ [formData appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]]; -+ [formData appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"%@\";\r\n\r\n%@", name, content] dataUsingEncoding:NSUTF8StringEncoding]]; - } - // field contains a file - else { -@@ -229,7 +227,7 @@ void __block (^getFieldData)(id field) = ^(id field) - return; - } - NSString * filename = [field valueForKey:@"filename"]; -- [formData appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]]; -+ [formData appendData:[[NSString stringWithFormat:@"\r\n--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]]; - [formData appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"%@\"; filename=\"%@\"\r\n", name, filename] dataUsingEncoding:NSUTF8StringEncoding]]; - [formData appendData:[[NSString stringWithFormat:@"Content-Type: %@\r\n\r\n", contentType] dataUsingEncoding:NSUTF8StringEncoding]]; - [formData appendData:content]; -diff --git a/node_modules/rn-fetch-blob/ios/RNFetchBlobRequest.h b/node_modules/rn-fetch-blob/ios/RNFetchBlobRequest.h -index b550ac2..b603f44 100644 ---- a/node_modules/rn-fetch-blob/ios/RNFetchBlobRequest.h -+++ b/node_modules/rn-fetch-blob/ios/RNFetchBlobRequest.h -@@ -12,6 +12,7 @@ - #import - - #import "RNFetchBlobProgress.h" -+#import "KeyChainDataSource.h" - - #if __has_include() - #import -@@ -33,6 +34,7 @@ - @property (nullable, nonatomic) RNFetchBlobProgress *progressConfig; - @property (nullable, nonatomic) RNFetchBlobProgress *uploadProgressConfig; - @property (nullable, nonatomic, weak) NSURLSessionDataTask *task; -+@property (nonatomic, retain) KeyChainDataSource *keyChain; - - - (void) sendRequest:(NSDictionary * _Nullable )options - contentLength:(long)contentLength -diff --git a/node_modules/rn-fetch-blob/ios/RNFetchBlobRequest.m b/node_modules/rn-fetch-blob/ios/RNFetchBlobRequest.m -index cdbe6b1..6ad5846 100644 ---- a/node_modules/rn-fetch-blob/ios/RNFetchBlobRequest.m -+++ b/node_modules/rn-fetch-blob/ios/RNFetchBlobRequest.m -@@ -51,7 +51,6 @@ @implementation RNFetchBlobRequest - @synthesize options; - @synthesize error; - -- - - (NSString *)md5:(NSString *)input { - const char* str = [input UTF8String]; - unsigned char result[CC_MD5_DIGEST_LENGTH]; -@@ -81,6 +80,10 @@ - (void) sendRequest:(__weak NSDictionary * _Nullable )options - self.receivedBytes = 0; - self.options = options; - -+ if (!self.keyChain) { -+ self.keyChain = [[KeyChainDataSource alloc] initWithMode:KSM_Identities]; -+ } -+ - backgroundTask = [[options valueForKey:@"IOSBackgroundTask"] boolValue]; - // when followRedirect not set in options, defaults to TRUE - followRedirect = [options valueForKey:@"followRedirect"] == nil ? YES : [[options valueForKey:@"followRedirect"] boolValue]; -@@ -129,6 +132,14 @@ - (void) sendRequest:(__weak NSDictionary * _Nullable )options - } - - defaultConfigObject.HTTPMaximumConnectionsPerHost = 10; -+ BOOL waitsForConnectivity = [[options valueForKey:@"waitsForConnectivity"] boolValue] ?: NO; -+ float timeoutIntervalForResource = [options valueForKey:@"timeoutIntervalForResource"] == nil ? -1 : [[options valueForKey:@"timeoutIntervalForResource"] floatValue]; -+ if (waitsForConnectivity) { -+ if (@available(iOS 11.0, *)) { -+ defaultConfigObject.waitsForConnectivity = YES; -+ defaultConfigObject.timeoutIntervalForResource = timeoutIntervalForResource; -+ } -+ } - session = [NSURLSession sessionWithConfiguration:defaultConfigObject delegate:self delegateQueue:operationQueue]; - - if (path || [self.options valueForKey:CONFIG_USE_TEMP]) { -@@ -189,6 +200,13 @@ - (void) URLSession:(NSURLSession *)session dataTask:(NSURLSessionDataTask *)dat - expectedBytes = [response expectedContentLength]; - - NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse*)response; -+ -+ NSDictionary *headers = [httpResponse allHeaderFields]; -+ NSString *uncompressedLength = headers[@"X-Uncompressed-Content-Length"]; -+ if (uncompressedLength != (id)[NSNull null] && uncompressedLength.length > 0) { -+ expectedBytes = [uncompressedLength intValue]; -+ } -+ - NSInteger statusCode = [(NSHTTPURLResponse *)response statusCode]; - NSString * respType = @""; - respStatus = statusCode; -@@ -381,6 +399,14 @@ - (void) URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task didCom - } - - if (error) { -+ if ([error.domain isEqualToString:NSURLErrorDomain] && (error.code == NSURLErrorServerCertificateUntrusted) ) { -+ [self.bridge.eventDispatcher -+ sendDeviceEventWithName:EVENT_SSL_HANDSHAKE_PROBLEM -+ body: nil -+ ]; -+ return; -+ } -+ - if (error.domain == NSURLErrorDomain && error.code == NSURLErrorCancelled) { - errMsg = @"task cancelled"; - } else { -@@ -453,6 +479,30 @@ - (void) URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task didSen - - - (void) URLSession:(NSURLSession *)session didReceiveChallenge:(NSURLAuthenticationChallenge *)challenge completionHandler:(void (^)(NSURLSessionAuthChallengeDisposition, NSURLCredential * _Nullable credantial))completionHandler - { -+ if ([challenge.protectionSpace.authenticationMethod isEqualToString:NSURLAuthenticationMethodClientCertificate]) { -+ NSString *certificateName = [options valueForKey:@"certificate"]; -+ if (![certificateName isKindOfClass:[NSNull class]] && certificateName) { -+ SecIdentityRef identity = [self.keyChain GetIdentityByName:certificateName]; -+ if (identity != nil) { -+ SecCertificateRef certificate = NULL; -+ OSStatus status = SecIdentityCopyCertificate(identity, &certificate); -+ if (!status) { -+ const void *certs[] = {certificate}; -+ CFArrayRef certArray = CFArrayCreate(kCFAllocatorDefault, certs, 1, NULL); -+ NSURLCredential *credential = [NSURLCredential credentialWithIdentity:identity certificates:(__bridge NSArray*)certArray persistence:NSURLCredentialPersistencePermanent]; -+ [challenge.sender useCredential:credential forAuthenticationChallenge:challenge]; -+ completionHandler(NSURLSessionAuthChallengeUseCredential,credential); -+ return; -+ } -+ } -+ } else { -+ [self.bridge.eventDispatcher -+ sendDeviceEventWithName:EVENT_CERTIFICATE_NEEDED -+ body: nil -+ ]; -+ } -+ } -+ - if ([[options valueForKey:CONFIG_TRUSTY] boolValue]) { - completionHandler(NSURLSessionAuthChallengeUseCredential, [NSURLCredential credentialForTrust:challenge.protectionSpace.serverTrust]); - } else { -@@ -480,5 +530,4 @@ - (void) URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task willPe - } - } - -- - @end -diff --git a/node_modules/rn-fetch-blob/polyfill/Fetch.js b/node_modules/rn-fetch-blob/polyfill/Fetch.js -index 3ecb591..2cfb8a5 100644 ---- a/node_modules/rn-fetch-blob/polyfill/Fetch.js -+++ b/node_modules/rn-fetch-blob/polyfill/Fetch.js -@@ -29,7 +29,7 @@ class RNFetchBlobFetchPolyfill { - options.headers = options.headers || {} - let ctype = options['Content-Type'] || options['content-type'] - let ctypeH = options.headers['Content-Type'] || options.headers['content-type'] -- options.headers['Content-Type'] = ctype || ctypeH -+ options.headers['Content-Type'] = ctype || ctypeH || 'application/json' - options.headers['content-type'] = ctype || ctypeH - options.method = options.method || 'GET' - if(body) { -@@ -46,8 +46,6 @@ class RNFetchBlobFetchPolyfill { - // When request body is a Blob, use file URI of the Blob as request body. - else if (body.isRNFetchBlobPolyfill) - promise = Promise.resolve(RNFetchBlob.wrap(body.blobPath)) -- else if (typeof body !== 'object' && options.headers['Content-Type'] !== 'application/json') -- promise = Promise.resolve(JSON.stringify(body)) - else if (typeof body !== 'string') - promise = Promise.resolve(body.toString()) - // send it as-is, leave the native module decide how to send the body. -@@ -60,7 +58,9 @@ class RNFetchBlobFetchPolyfill { - let progressHandler, uploadHandler, cancelHandler - let statefulPromise = promise - .then((body) => { -- let task = RNFetchBlob.config(config) -+ let waitsForConnectivity = options.waitsForConnectivity || false; -+ let timeoutIntervalForResource = options.timeoutIntervalForResource || 30; -+ let task = RNFetchBlob.config({...config, waitsForConnectivity, timeoutIntervalForResource}) - .fetch(options.method, url, options.headers, body) - if(progressHandler) - task.progress(progressHandler) -diff --git a/node_modules/rn-fetch-blob/rn-fetch-blob.podspec b/node_modules/rn-fetch-blob/rn-fetch-blob.podspec -index 4edbd5c..e3ef80c 100644 ---- a/node_modules/rn-fetch-blob/rn-fetch-blob.podspec -+++ b/node_modules/rn-fetch-blob/rn-fetch-blob.podspec -@@ -10,7 +10,7 @@ Pod::Spec.new do |s| - s.homepage = 'n/a' - s.source = { :git => "https://github.com/joltup/rn-fetch-blob" } - s.author = 'Joltup' -- s.source_files = 'ios/**/*.{h,m}' -+ s.source_files = 'ios/**/*.{h,m,mm,c}' - s.platform = :ios, "8.0" - s.dependency 'React-Core' - end -diff --git a/node_modules/rn-fetch-blob/types.js b/node_modules/rn-fetch-blob/types.js -index da256af..3eeb51f 100644 ---- a/node_modules/rn-fetch-blob/types.js -+++ b/node_modules/rn-fetch-blob/types.js -@@ -6,6 +6,8 @@ type RNFetchBlobConfig = { - session : string, - addAndroidDownloads : any, - indicator : bool, -+ certificate?: string, -+ waitsForConnectivity: bool, - followRedirect : bool, - trusty : bool, - wifiOnly : bool diff --git a/storybook/addons.ts b/storybook/addons.ts deleted file mode 100644 index c9e7171932..0000000000 --- a/storybook/addons.ts +++ /dev/null @@ -1,3 +0,0 @@ -// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. -// See LICENSE.txt for license information. -import '@storybook/addon-knobs/register'; diff --git a/storybook/index.ts b/storybook/index.ts deleted file mode 100644 index b871fc154f..0000000000 --- a/storybook/index.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. -// See LICENSE.txt for license information. -import {Platform} from 'react-native'; -import {STORYBOOK_HOST, STORYBOOK_PORT} from '@env'; -import {getStorybookUI, configure} from '@storybook/react-native'; - -// load react-native addons for storybook rn -import '@storybook/addon-ondevice-knobs/register'; - -import {loadStories} from './storyLoader'; - -// import stories -configure(() => { - loadStories(); -}, module); - -// this seems to be required to get react-native-dotenv to load the env variables -// properly. Possibly something related to babel-loader -const port = STORYBOOK_PORT; -const host = STORYBOOK_HOST; - -// Refer to https://github.com/storybookjs/storybook/tree/master/app/react-native#start-command-parameters -// To find allowed options for getStorybookUI -const StorybookUIRoot = getStorybookUI({ - port: port || 7007, - host: host || (Platform.OS === 'ios' ? 'localhost' : '10.0.2.2'), - onDeviceUI: true, - resetStorybook: true, -}); - -export default StorybookUIRoot; diff --git a/storybook/mattermost_storybook.ts b/storybook/mattermost_storybook.ts deleted file mode 100644 index 3f1e6a542e..0000000000 --- a/storybook/mattermost_storybook.ts +++ /dev/null @@ -1,8 +0,0 @@ -// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. -// See LICENSE.txt for license information. -import {Navigation} from 'react-native-navigation'; -import {goToScreen} from '@screens/navigation'; - -import DevMenu from 'react-native-dev-menu'; -DevMenu.addItem('StoryBook', () => goToScreen('StoryBook', 'StoryBook')); -Navigation.registerComponent('StoryBook', () => require('../storybook').default, () => require('../storybook').default); diff --git a/storybook/storyLoader.js b/storybook/storyLoader.js deleted file mode 100644 index e38f062e06..0000000000 --- a/storybook/storyLoader.js +++ /dev/null @@ -1,13 +0,0 @@ -// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved. -// See LICENSE.txt for license information. - -function loadStories() { - // require('../app/components/loading.stories'); -} - -const stories = []; - -module.exports = { - loadStories, - stories, -}; diff --git a/test/setup.ts b/test/setup.ts index 8a7050826f..4f293217e7 100644 --- a/test/setup.ts +++ b/test/setup.ts @@ -231,6 +231,7 @@ jest.mock('react-native-navigation', () => { const RNN = jest.requireActual('react-native-navigation'); RNN.Navigation.setLazyComponentRegistrator = jest.fn(); RNN.Navigation.setDefaultOptions = jest.fn(); + RNN.Navigation.registerComponent = jest.fn(); return { ...RNN, Navigation: { diff --git a/types/api/client_error.d.ts b/types/api/client_error.d.ts index ef93d54264..db0f344125 100644 --- a/types/api/client_error.d.ts +++ b/types/api/client_error.d.ts @@ -3,7 +3,7 @@ interface ClientErrorProps extends Error { details: Error; - intl?: {defaultMessage?: string; id: string;} | { defaultMessage?: string; id: string } | { id: string; defaultMessage?: string; values: any } | { id: string; defaultMessage?: string }; + intl?: {defaultMessage?: string; id: string} | { defaultMessage?: string; id: string } | { id: string; defaultMessage?: string; values: any } | { id: string; defaultMessage?: string }; url: string; server_error_id?: string | number; status_code?: number; diff --git a/types/api/emojis.d.ts b/types/api/emojis.d.ts index 7947d3ac43..5ffa667a2d 100644 --- a/types/api/emojis.d.ts +++ b/types/api/emojis.d.ts @@ -26,7 +26,7 @@ type CustomEmoji = { type SystemEmoji = { filename: string; - aliases: Array; + aliases: string[]; category: EmojiCategory; batch: number; }; diff --git a/types/api/files.d.ts b/types/api/files.d.ts index ff094856b7..49c3b95470 100644 --- a/types/api/files.d.ts +++ b/types/api/files.d.ts @@ -23,7 +23,7 @@ type FileInfo = { type FilesState = { files: Dictionary; - fileIdsByPostId: Dictionary>; + fileIdsByPostId: Dictionary; filePublicLink?: string; }; diff --git a/types/api/groups.d.ts b/types/api/groups.d.ts index c0fbecbc30..4fb759c83a 100644 --- a/types/api/groups.d.ts +++ b/types/api/groups.d.ts @@ -47,8 +47,8 @@ type GroupChannel = { update_at: number; }; type GroupSyncables = { - teams: Array; - channels: Array; + teams: GroupTeam[]; + channels: GroupChannel[]; }; type GroupsState = { syncables: { diff --git a/types/api/integrations.d.ts b/types/api/integrations.d.ts index a15e3b0cf0..a726d0987b 100644 --- a/types/api/integrations.d.ts +++ b/types/api/integrations.d.ts @@ -67,7 +67,7 @@ type DialogElement = { min_length: number; max_length: number; data_source: string; - options: Array; + options: DialogOption[]; }; type InteractiveDialogConfig = { diff --git a/types/api/posts.d.ts b/types/api/posts.d.ts index 31a6ae2fe8..1a5ceae3b0 100644 --- a/types/api/posts.d.ts +++ b/types/api/posts.d.ts @@ -32,11 +32,11 @@ type PostImage = { }; type PostMetadata = { - embeds: Array; - emojis: Array; - files: Array; + embeds: PostEmbed[]; + emojis: CustomEmoji[]; + files: FileInfo[]; images: Dictionary; - reactions: Array; + reactions: Reaction[]; }; type Post = { @@ -60,7 +60,7 @@ type Post = { file_ids?: any[]; metadata: PostMetadata; failed?: boolean; - user_activity_posts?: Array; + user_activity_posts?: Post[]; state?: 'DELETED'; ownPost?: boolean; }; @@ -77,13 +77,13 @@ type PostWithFormatData = Post & { }; type PostOrderBlock = { - order: Array; + order: string[]; recent?: boolean; oldest?: boolean; }; type MessageHistory = { - messages: Array; + messages: string[]; index: { post: number; comment: number; @@ -92,11 +92,11 @@ type MessageHistory = { type PostsState = { posts: IDMappedObjects; - postsInChannel: Dictionary>; + postsInChannel: Dictionary; postsInThread: RelationOneToMany; reactions: RelationOneToOne>; openGraph: RelationOneToOne; - pendingPostIds: Array; + pendingPostIds: string[]; selectedPostId: string; currentFocusedPostId: string; messagesHistory: MessageHistory; diff --git a/types/api/roles.d.ts b/types/api/roles.d.ts index a9d6e92c24..f862cc1371 100644 --- a/types/api/roles.d.ts +++ b/types/api/roles.d.ts @@ -11,7 +11,7 @@ type Role = { create_at: number; update_at: number; delete_at: number; - permissions: Array; + permissions: string[]; scheme_managed: boolean; built_in: boolean; }; diff --git a/types/api/session.d.ts b/types/api/session.d.ts index 2b3a5174f8..77507ac253 100644 --- a/types/api/session.d.ts +++ b/types/api/session.d.ts @@ -2,7 +2,7 @@ // See LICENSE.txt for license information. interface Session { - id: string, + id: string; create_at: string|number; device_id?: string; expires_at: string|number; diff --git a/types/api/users.d.ts b/types/api/users.d.ts index 00084441f4..8a1566ffc5 100644 --- a/types/api/users.d.ts +++ b/types/api/users.d.ts @@ -45,7 +45,7 @@ type UserProfile = { type UsersState = { currentUserId: string; isManualStatus: RelationOneToOne; - mySessions: Array; + mySessions: any[]; profiles: IDMappedObjects; profilesInTeam: RelationOneToMany; profilesNotInTeam: RelationOneToMany; diff --git a/types/database/database.d.ts b/types/database/database.d.ts index 40e65d16cd..76810288c3 100644 --- a/types/database/database.d.ts +++ b/types/database/database.d.ts @@ -59,7 +59,7 @@ export type OperationArgs = { transformer: (TransformerArgs) => Promise; }; -export type Models = Class[]; +export type Models = Array>; // The elements needed to create a new database export type CreateServerDatabaseArgs = { @@ -78,8 +78,8 @@ export type HandleFilesArgs = { }; export type HandlePostMetadataArgs = { - embeds?: { embed: RawEmbed[]; postId: string }[]; - images?: { images: Dictionary; postId: string }[]; + embeds?: Array<{ embed: RawEmbed[]; postId: string }>; + images?: Array<{ images: Dictionary; postId: string }>; prepareRecordsOnly: boolean; }; @@ -151,29 +151,29 @@ type PrepareOnly = { } export type HandleInfoArgs = PrepareOnly & { - info: RawInfo[] + info: RawInfo[]; } export type HandleServersArgs = PrepareOnly & { - servers: RawServers[] + servers: RawServers[]; } export type HandleGlobalArgs = PrepareOnly & { - global: RawGlobal[] + global: RawGlobal[]; } export type HandleRoleArgs = PrepareOnly & { - roles: RawRole[] + roles: RawRole[]; } export type HandleCustomEmojiArgs = PrepareOnly & { - emojis: RawCustomEmoji[] + emojis: RawCustomEmoji[]; } export type HandleSystemArgs = PrepareOnly & { - systems: RawSystem[] + systems: RawSystem[]; } export type HandleTOSArgs = PrepareOnly & { - termOfService: RawTermsOfService[] + termOfService: RawTermsOfService[]; } export type HandleMyChannelArgs = PrepareOnly & { @@ -309,7 +309,7 @@ export type RawChannelInfo = { }; export type RawChannelMembership = { - id? : string; + id?: string; channel_id: string; user_id: string; roles: string; @@ -543,7 +543,7 @@ export type RawPreference = { }; export type RawReaction = { - id? : string; + id?: string; create_at: number; delete_at: number; emoji_name: string; @@ -592,7 +592,7 @@ export type RawTeamChannelHistory = { }; export type RawTeamMembership = { - id? : string; + id?: string; delete_at: number; explicit_roles: string; roles: string; diff --git a/types/database/models/servers/license.ts b/types/database/models/servers/license.ts index 4029806cd3..a3dfb20108 100644 --- a/types/database/models/servers/license.ts +++ b/types/database/models/servers/license.ts @@ -2,32 +2,32 @@ // See LICENSE.txt for license information. export type License = { - Announcement: string, - Cloud: string, - Cluster: string, - Company: string, - Compliance: string, - CustomPermissionsSchemes: string, - CustomTermsOfService: string, - DataRetention: string, - Elasticsearch: string, - EmailNotificationContents: string, - GoogleOAuth: string, - GuestAccounts: string, - GuestAccountsPermissions: string, - IDLoadedPushNotifications: string, - IsLicensed: string, - LDAP: string, - LDAPGroups: string, - LockTeammateNameDisplay: string, - MFA: string, - MHPNS: string, - MessageExport: string, - Metrics: string, - Office365OAuth: string, - OpenId: string, - RemoteClusterService: string, - SAML: string, - SharedChannels: string, - Users: string + Announcement: string; + Cloud: string; + Cluster: string; + Company: string; + Compliance: string; + CustomPermissionsSchemes: string; + CustomTermsOfService: string; + DataRetention: string; + Elasticsearch: string; + EmailNotificationContents: string; + GoogleOAuth: string; + GuestAccounts: string; + GuestAccountsPermissions: string; + IDLoadedPushNotifications: string; + IsLicensed: string; + LDAP: string; + LDAPGroups: string; + LockTeammateNameDisplay: string; + MFA: string; + MHPNS: string; + MessageExport: string; + Metrics: string; + Office365OAuth: string; + OpenId: string; + RemoteClusterService: string; + SAML: string; + SharedChannels: string; + Users: string; } diff --git a/types/global/native_notifications.d.ts b/types/global/native_notifications.d.ts index 9459f242d0..63671426b2 100644 --- a/types/global/native_notifications.d.ts +++ b/types/global/native_notifications.d.ts @@ -10,7 +10,7 @@ interface NativeNotificationPreferences { selectedUri?: string; shouldBlink: boolean; shouldVibrate: boolean; - sounds: Array; + sounds: NativeNotificationSound[]; } interface NativeNotification { diff --git a/types/modules/react-native-slider.d.ts b/types/modules/react-native-slider.d.ts index 9295be4470..5c2d642836 100644 --- a/types/modules/react-native-slider.d.ts +++ b/types/modules/react-native-slider.d.ts @@ -20,46 +20,46 @@ declare module 'react-native-slider' { * *This is not a controlled component*, e.g. if you don't update * the value, the component won't be reset to its inital value. */ - value?: number + value?: number; /** * If true the user won't be able to move the slider. * Default value is false. */ - disabled?: boolean + disabled?: boolean; /** * Initial minimum value of the slider. Default value is 0. */ - minimumValue?: number + minimumValue?: number; /** * Initial maximum value of the slider. Default value is 1. */ - maximumValue?: number + maximumValue?: number; /** * Step value of the slider. The value should be between 0 and * (maximumValue - minimumValue). Default value is 0. */ - step?: number + step?: number; /** * The color used for the track to the left of the button. Overrides the * default blue gradient image. */ - minimumTrackTintColor?: string + minimumTrackTintColor?: string; /** * The color used for the track to the right of the button. Overrides the * default blue gradient image. */ - maximumTrackTintColor?: string + maximumTrackTintColor?: string; /** * The color used for the thumb. */ - thumbTintColor?: string + thumbTintColor?: string; /** * The size of the touch area that allows moving the thumb. @@ -68,64 +68,64 @@ declare module 'react-native-slider' { * to move it easily. * The default is {width: 40, height: 40}. */ - thumbTouchSize?: { width: number; height: number } + thumbTouchSize?: { width: number; height: number }; /** * Callback continuously called while the user is dragging the slider. */ - onValueChange: (value: number) => void + onValueChange: (value: number) => void; /** * Callback called when the user starts changing the value (e.g. when * the slider is pressed). */ - onSlidingStart?: (value: number) => void + onSlidingStart?: (value: number) => void; /** * Callback called when the user finishes changing the value (e.g. when * the slider is released). */ - onSlidingComplete?: (value: number) => void + onSlidingComplete?: (value: number) => void; /** * The style applied to the slider container. */ - style?: StyleProp + style?: StyleProp; /** * The style applied to the track. */ - trackStyle?: StyleProp + trackStyle?: StyleProp; /** * The style applied to the thumb. */ - thumbStyle?: StyleProp + thumbStyle?: StyleProp; /** * Sets an image for the thumb. */ - thumbImage?: ImageSourcePropType + thumbImage?: ImageSourcePropType; /** * Set this to true to visually see the thumb touch rect in green. */ - debugTouchArea?: boolean + debugTouchArea?: boolean; /** * Set to true to animate values with default 'timing' animation type */ - animateTransitions?: boolean + animateTransitions?: boolean; /** * Custom Animation type. 'spring' or 'timing'. */ - animationType?: 'spring' | 'timing' + animationType?: 'spring' | 'timing'; /** * Used to configure the animation parameters. These are the same parameters in the Animated library. */ - animationConfig?: SpringAnimationConfig | TimingAnimationConfig + animationConfig?: SpringAnimationConfig | TimingAnimationConfig; } const Slider: ComponentClass; diff --git a/types/screens/gallery.d.ts b/types/screens/gallery.d.ts index 92f7fba551..83d52ba678 100644 --- a/types/screens/gallery.d.ts +++ b/types/screens/gallery.d.ts @@ -55,7 +55,7 @@ export interface FooterRef { } export interface GalleryProps { - files: Array; + files: FileInfo[]; footerVisible: boolean; height: number; initialIndex: number; @@ -104,11 +104,11 @@ export interface ToastProps { } export interface ToastRef { - show: ShowToast + show: ShowToast; } export interface ToastState { - animation?: Animated.CompositeAnimation, + animation?: Animated.CompositeAnimation; duration?: number; callback?: () => void; }