From 0f335170c537d656b92d25bf4a8897634555596d Mon Sep 17 00:00:00 2001 From: Jake McDermott Date: Wed, 6 May 2020 14:07:22 -0400 Subject: [PATCH 1/8] Remove import aliases from ui_next For posterity, the script used to remove the aliases is included with this commit: python3 tools/dealias.py awx/ui_next/src npm run lint -- --fix npm run prettier --- awx/ui_next/src/App.jsx | 16 +-- awx/ui_next/src/App.test.jsx | 4 +- awx/ui_next/src/RootProvider.jsx | 2 +- awx/ui_next/src/api/Base.js | 2 +- .../src/api/models/Organizations.test.jsx | 2 +- .../src/components/About/About.test.jsx | 2 +- .../AddDropDownButton/AddDropDownButton.jsx | 2 +- .../AddDropDownButton.test.jsx | 2 +- .../components/AddRole/AddResourceRole.jsx | 4 +- .../AddRole/AddResourceRole.test.jsx | 6 +- .../components/AddRole/SelectResourceStep.jsx | 2 +- .../AddRole/SelectResourceStep.test.jsx | 4 +- .../AddRole/SelectRoleStep.test.jsx | 2 +- .../AnsibleSelect/AnsibleSelect.test.jsx | 2 +- .../AssociateModal/AssociateModal.jsx | 8 +- .../AssociateModal/AssociateModal.test.jsx | 7 +- .../components/BrandLogo/BrandLogo.test.jsx | 2 +- .../CardCloseButton/CardCloseButton.test.jsx | 2 +- .../CheckboxListItem/CheckboxListItem.jsx | 2 +- .../components/ChipGroup/ChipGroup.test.jsx | 2 +- .../ClipboardCopyButton.test.jsx | 2 +- .../CodeMirrorInput/VariablesDetail.jsx | 6 +- .../CodeMirrorInput/VariablesDetail.test.jsx | 2 +- .../CodeMirrorInput/VariablesField.jsx | 6 +- .../CodeMirrorInput/VariablesInput.jsx | 4 +- .../CollapsibleSection/CollapsibleSection.jsx | 2 +- .../ContentEmpty/ContentEmpty.test.jsx | 2 +- .../components/ContentError/ContentError.jsx | 4 +- .../ContentError/ContentError.test.jsx | 2 +- .../ContentLoading/ContentLoading.test.jsx | 2 +- .../src/components/CopyButton/CopyButton.jsx | 6 +- .../components/CopyButton/CopyButton.test.jsx | 4 +- .../CredentialChip/CredentialChip.jsx | 4 +- .../CredentialChip/CredentialChip.test.jsx | 2 +- .../DataListToolbar/DataListToolbar.jsx | 2 +- .../DataListToolbar/DataListToolbar.test.jsx | 2 +- .../components/DeleteButton/DeleteButton.jsx | 2 +- .../components/DetailList/UserDateDetail.jsx | 2 +- .../DisassociateButton/DisassociateButton.jsx | 2 +- .../DisassociateButton.test.jsx | 2 +- .../ErrorDetail/ErrorDetail.test.jsx | 2 +- .../ExpandCollapse/ExpandCollapse.test.jsx | 2 +- .../FieldWithPrompt/FieldWithPrompt.jsx | 2 +- .../FieldWithPrompt/FieldWithPrompt.test.jsx | 2 +- .../FormActionGroup/FormActionGroup.jsx | 2 +- .../FormActionGroup/FormActionGroup.test.jsx | 2 +- .../FormField/FormSubmitError.test.jsx | 2 +- .../FormField/PasswordField.test.jsx | 4 +- .../src/components/HostForm/HostForm.jsx | 15 +-- .../src/components/HostForm/HostForm.test.jsx | 4 +- .../src/components/HostToggle/HostToggle.jsx | 8 +- .../components/HostToggle/HostToggle.test.jsx | 6 +- .../src/components/JobList/JobList.jsx | 16 ++- .../src/components/JobList/JobList.test.jsx | 9 +- .../src/components/JobList/JobListItem.jsx | 10 +- .../components/JobList/JobListItem.test.jsx | 2 +- .../components/LaunchButton/LaunchButton.jsx | 8 +- .../LaunchButton/LaunchButton.test.jsx | 10 +- .../components/LaunchPrompt/LaunchPrompt.jsx | 4 +- .../LaunchPrompt/LaunchPrompt.test.jsx | 12 +- .../LaunchPrompt/steps/CredentialsStep.jsx | 18 +-- .../steps/CredentialsStep.test.jsx | 8 +- .../LaunchPrompt/steps/InventoryStep.jsx | 14 +-- .../LaunchPrompt/steps/InventoryStep.test.jsx | 6 +- .../LaunchPrompt/steps/OtherPromptsStep.jsx | 8 +- .../steps/OtherPromptsStep.test.jsx | 2 +- .../LaunchPrompt/steps/PreviewStep.jsx | 2 +- .../LaunchPrompt/steps/SurveyStep.jsx | 8 +- .../LaunchPrompt/steps/useSurveyStep.jsx | 4 +- .../src/components/ListHeader/ListHeader.jsx | 6 +- .../components/ListHeader/ListHeader.test.jsx | 2 +- .../components/Lookup/CredentialLookup.jsx | 12 +- .../Lookup/CredentialLookup.test.jsx | 6 +- .../Lookup/InstanceGroupsLookup.jsx | 8 +- .../src/components/Lookup/InventoryLookup.jsx | 10 +- awx/ui_next/src/components/Lookup/Lookup.jsx | 4 +- .../src/components/Lookup/Lookup.test.jsx | 7 +- .../Lookup/MultiCredentialsLookup.jsx | 10 +- .../Lookup/MultiCredentialsLookup.test.jsx | 9 +- .../components/Lookup/OrganizationLookup.jsx | 8 +- .../Lookup/OrganizationLookup.test.jsx | 6 +- .../src/components/Lookup/ProjectLookup.jsx | 10 +- .../components/Lookup/ProjectLookup.test.jsx | 8 +- .../NotificationList/NotificationList.jsx | 12 +- .../NotificationList.test.jsx | 8 +- .../NotificationList/NotificationListItem.jsx | 3 +- .../NotificationListItem.test.jsx | 2 +- .../components/OptionsList/OptionsList.jsx | 2 +- .../OptionsList/OptionsList.test.jsx | 4 +- .../PageHeaderToolbar.test.jsx | 2 +- .../PaginatedDataList/PaginatedDataList.jsx | 16 +-- .../PaginatedDataList.test.jsx | 2 +- .../PaginatedDataListItem.jsx | 2 +- .../ToolbarAddButton.test.jsx | 2 +- .../ToolbarDeleteButton.test.jsx | 2 +- .../components/Pagination/Pagination.test.jsx | 2 +- .../components/PromptDetail/PromptDetail.jsx | 10 +- .../PromptDetail/PromptDetail.test.jsx | 2 +- .../PromptInventorySourceDetail.jsx | 8 +- .../PromptInventorySourceDetail.test.jsx | 2 +- .../PromptDetail/PromptJobTemplateDetail.jsx | 12 +- .../PromptJobTemplateDetail.test.jsx | 2 +- .../PromptDetail/PromptProjectDetail.jsx | 8 +- .../PromptDetail/PromptProjectDetail.test.jsx | 2 +- .../PromptWFJobTemplateDetail.jsx | 12 +- .../PromptWFJobTemplateDetail.test.jsx | 2 +- .../DeleteRoleConfirmationModal.jsx | 4 +- .../DeleteRoleConfirmationModal.test.jsx | 2 +- .../ResourceAccessList/ResourceAccessList.jsx | 18 +-- .../ResourceAccessList.test.jsx | 11 +- .../ResourceAccessListItem.jsx | 8 +- .../ResourceAccessListItem.test.jsx | 2 +- .../src/components/Schedule/Schedule.jsx | 14 +-- .../src/components/Schedule/Schedule.test.jsx | 9 +- .../Schedule/ScheduleAdd/ScheduleAdd.jsx | 2 +- .../Schedule/ScheduleAdd/ScheduleAdd.test.jsx | 9 +- .../ScheduleDetail/ScheduleDetail.jsx | 28 ++--- .../ScheduleDetail/ScheduleDetail.test.jsx | 9 +- .../Schedule/ScheduleEdit/ScheduleEdit.jsx | 4 +- .../ScheduleEdit/ScheduleEdit.test.jsx | 9 +- .../Schedule/ScheduleList/ScheduleList.jsx | 14 +-- .../ScheduleList/ScheduleList.test.jsx | 6 +- .../ScheduleList/ScheduleListItem.jsx | 10 +- .../ScheduleList/ScheduleListItem.test.jsx | 2 +- .../ScheduleOccurrences.jsx | 6 +- .../ScheduleOccurrences.test.jsx | 2 +- .../ScheduleToggle/ScheduleToggle.jsx | 8 +- .../ScheduleToggle/ScheduleToggle.test.jsx | 6 +- .../src/components/Schedule/Schedules.jsx | 2 +- .../components/Schedule/Schedules.test.jsx | 2 +- .../shared/FrequencyDetailSubform.jsx | 6 +- .../Schedule/shared/ScheduleForm.jsx | 22 ++-- .../Schedule/shared/ScheduleForm.test.jsx | 6 +- .../Schedule/shared/buildRuleObj.js | 2 +- awx/ui_next/src/components/Search/Search.jsx | 4 +- .../src/components/Search/Search.test.jsx | 2 +- .../components/SelectedList/SelectedList.jsx | 2 +- .../SelectedList/SelectedList.test.jsx | 4 +- awx/ui_next/src/components/Sort/Sort.jsx | 4 +- awx/ui_next/src/components/Sort/Sort.test.jsx | 2 +- .../src/components/Sparkline/Sparkline.jsx | 6 +- .../components/Sparkline/Sparkline.test.jsx | 2 +- .../components/Workflow/WorkflowLegend.jsx | 2 +- .../Workflow/WorkflowLegend.test.jsx | 2 +- .../Workflow/WorkflowLinkHelp.test.jsx | 2 +- .../components/Workflow/WorkflowNodeHelp.jsx | 2 +- .../Workflow/WorkflowNodeHelp.test.jsx | 2 +- .../components/Workflow/WorkflowStartNode.jsx | 13 +- .../Workflow/WorkflowStartNode.test.jsx | 2 +- .../src/components/Workflow/WorkflowTools.jsx | 2 +- .../Workflow/WorkflowTools.test.jsx | 2 +- awx/ui_next/src/index.jsx | 54 ++++----- .../screens/Application/Applications.test.jsx | 2 +- .../screens/AuthSetting/AuthSettings.test.jsx | 2 +- .../src/screens/Credential/Credential.jsx | 12 +- .../screens/Credential/Credential.test.jsx | 9 +- .../CredentialAdd/CredentialAdd.jsx | 8 +- .../CredentialAdd/CredentialAdd.test.jsx | 11 +- .../CredentialDetail/CredentialDetail.jsx | 22 ++-- .../CredentialDetail.test.jsx | 9 +- .../CredentialEdit/CredentialEdit.jsx | 8 +- .../CredentialEdit/CredentialEdit.test.jsx | 11 +- .../CredentialList/CredentialList.jsx | 14 +-- .../CredentialList/CredentialList.test.jsx | 9 +- .../CredentialList/CredentialListItem.jsx | 12 +- .../CredentialListItem.test.jsx | 8 +- .../src/screens/Credential/Credentials.jsx | 4 +- .../screens/Credential/Credentials.test.jsx | 2 +- .../Credential/shared/CredentialForm.jsx | 15 ++- .../Credential/shared/CredentialForm.test.jsx | 2 +- .../CredentialSubForms/ManualSubForm.jsx | 9 +- .../CredentialSubForms/SharedFields.jsx | 2 +- .../SourceControlSubForm.jsx | 5 +- .../CredentialType/CredentialTypes.test.jsx | 2 +- .../src/screens/Dashboard/Dashboard.test.jsx | 2 +- awx/ui_next/src/screens/Host/Host.jsx | 14 +-- awx/ui_next/src/screens/Host/Host.test.jsx | 9 +- .../src/screens/Host/HostAdd/HostAdd.jsx | 6 +- .../src/screens/Host/HostAdd/HostAdd.test.jsx | 6 +- .../screens/Host/HostDetail/HostDetail.jsx | 24 ++-- .../Host/HostDetail/HostDetail.test.jsx | 9 +- .../src/screens/Host/HostEdit/HostEdit.jsx | 6 +- .../screens/Host/HostEdit/HostEdit.test.jsx | 6 +- .../src/screens/Host/HostFacts/HostFacts.jsx | 16 +-- .../screens/Host/HostFacts/HostFacts.test.jsx | 9 +- .../screens/Host/HostGroups/HostGroupItem.jsx | 4 +- .../Host/HostGroups/HostGroupItem.test.jsx | 2 +- .../Host/HostGroups/HostGroups.test.jsx | 4 +- .../Host/HostGroups/HostGroupsList.jsx | 20 +-- .../Host/HostGroups/HostGroupsList.test.jsx | 9 +- .../src/screens/Host/HostList/HostList.jsx | 14 +-- .../screens/Host/HostList/HostList.test.jsx | 9 +- .../screens/Host/HostList/HostListItem.jsx | 11 +- .../Host/HostList/HostListItem.test.jsx | 2 +- awx/ui_next/src/screens/Host/Hosts.jsx | 4 +- awx/ui_next/src/screens/Host/Hosts.test.jsx | 2 +- .../InstanceGroup/InstanceGroups.test.jsx | 2 +- .../src/screens/Inventory/Inventories.jsx | 4 +- .../screens/Inventory/Inventories.test.jsx | 2 +- .../src/screens/Inventory/Inventory.jsx | 16 +-- .../src/screens/Inventory/Inventory.test.jsx | 9 +- .../Inventory/InventoryAdd/InventoryAdd.jsx | 6 +- .../InventoryAdd/InventoryAdd.test.jsx | 11 +- .../InventoryDetail/InventoryDetail.jsx | 18 +-- .../InventoryDetail/InventoryDetail.test.jsx | 6 +- .../Inventory/InventoryEdit/InventoryEdit.jsx | 6 +- .../InventoryEdit/InventoryEdit.test.jsx | 11 +- .../InventoryGroup/InventoryGroup.jsx | 12 +- .../InventoryGroup/InventoryGroup.test.jsx | 9 +- .../InventoryGroupAdd/InventoryGroupAdd.jsx | 2 +- .../InventoryGroupAdd.test.jsx | 6 +- .../InventoryGroupDetail.jsx | 16 ++- .../InventoryGroupDetail.test.jsx | 9 +- .../InventoryGroupEdit/InventoryGroupEdit.jsx | 2 +- .../InventoryGroupEdit.test.jsx | 6 +- .../InventoryGroupHostAdd.jsx | 6 +- .../InventoryGroupHostAdd.test.jsx | 6 +- .../AddHostDropdown.test.jsx | 2 +- .../InventoryGroupHostList.jsx | 20 +-- .../InventoryGroupHostList.test.jsx | 11 +- .../InventoryGroupHostListItem.jsx | 10 +- .../InventoryGroupHostListItem.test.jsx | 4 +- .../InventoryGroupHosts.test.jsx | 4 +- .../InventoryGroups/InventoryGroupItem.jsx | 4 +- .../InventoryGroupItem.test.jsx | 2 +- .../InventoryGroups/InventoryGroups.test.jsx | 4 +- .../InventoryGroups/InventoryGroupsList.jsx | 12 +- .../InventoryGroupsList.test.jsx | 9 +- .../Inventory/InventoryHost/InventoryHost.jsx | 18 +-- .../InventoryHost/InventoryHost.test.jsx | 9 +- .../InventoryHostAdd/InventoryHostAdd.jsx | 6 +- .../InventoryHostAdd.test.jsx | 6 +- .../InventoryHostDetail.jsx | 24 ++-- .../InventoryHostDetail.test.jsx | 9 +- .../InventoryHostEdit/InventoryHostEdit.jsx | 6 +- .../InventoryHostEdit.test.jsx | 6 +- .../InventoryHostFacts/InventoryHostFacts.jsx | 16 +-- .../InventoryHostFacts.test.jsx | 9 +- .../InventoryHostGroupItem.jsx | 4 +- .../InventoryHostGroupItem.test.jsx | 2 +- .../InventoryHostGroups.test.jsx | 6 +- .../InventoryHostGroupsList.jsx | 20 +-- .../InventoryHostGroupsList.test.jsx | 9 +- .../InventoryHosts/InventoryHostItem.jsx | 10 +- .../InventoryHosts/InventoryHostItem.test.jsx | 2 +- .../InventoryHosts/InventoryHostList.jsx | 12 +- .../InventoryHosts/InventoryHostList.test.jsx | 9 +- .../InventoryHosts/InventoryHosts.test.jsx | 2 +- .../Inventory/InventoryList/InventoryList.jsx | 16 +-- .../InventoryList/InventoryList.test.jsx | 6 +- .../InventoryList/InventoryListItem.jsx | 7 +- .../InventoryList/InventoryListItem.test.jsx | 6 +- .../InventorySource/InventorySource.jsx | 14 +-- .../InventorySource/InventorySource.test.jsx | 6 +- .../InventorySourceAdd/InventorySourceAdd.jsx | 6 +- .../InventorySourceAdd.test.jsx | 6 +- .../InventorySourceDetail.jsx | 16 +-- .../InventorySourceDetail.test.jsx | 6 +- .../InventorySources/InventorySourceList.jsx | 16 +-- .../InventorySourceList.test.jsx | 13 +- .../InventorySourceListItem.jsx | 2 +- .../InventorySourceListItem.test.jsx | 2 +- .../InventorySourceSyncButton.jsx | 8 +- .../InventorySourceSyncButton.test.jsx | 8 +- .../src/screens/Inventory/SmartInventory.jsx | 14 +-- .../screens/Inventory/SmartInventory.test.jsx | 9 +- .../SmartInventoryDetail.jsx | 2 +- .../SmartInventoryHosts.jsx | 2 +- .../Inventory/shared/InventoryForm.jsx | 19 +-- .../Inventory/shared/InventoryForm.test.jsx | 4 +- .../Inventory/shared/InventoryGroupForm.jsx | 15 ++- .../shared/InventoryGroupForm.test.jsx | 2 +- .../shared/InventoryGroupsDeleteModal.jsx | 2 +- .../Inventory/shared/InventorySourceForm.jsx | 25 ++-- .../shared/InventorySourceForm.test.jsx | 13 +- .../InventorySourceSubForms/SCMSubForm.jsx | 16 +-- .../SCMSubForm.test.jsx | 8 +- .../InventorySourceSubForms/SharedFields.jsx | 13 +- .../InventoryScript/InventoryScripts.test.jsx | 2 +- awx/ui_next/src/screens/Job/Job.jsx | 12 +- awx/ui_next/src/screens/Job/Job.test.jsx | 2 +- .../src/screens/Job/JobDetail/JobDetail.jsx | 28 ++--- .../screens/Job/JobDetail/JobDetail.test.jsx | 8 +- .../screens/Job/JobOutput/HostEventModal.jsx | 8 +- .../Job/JobOutput/HostEventModal.test.jsx | 2 +- .../screens/Job/JobOutput/JobEvent.test.jsx | 2 +- .../Job/JobOutput/JobEventSkeleton.test.jsx | 2 +- .../src/screens/Job/JobOutput/JobOutput.jsx | 14 +-- .../screens/Job/JobOutput/JobOutput.test.jsx | 9 +- .../Job/JobOutput/PageControls.test.jsx | 2 +- .../JobOutput/shared/HostStatusBar.test.jsx | 2 +- .../Job/JobOutput/shared/OutputToolbar.jsx | 4 +- .../JobOutput/shared/OutputToolbar.test.jsx | 2 +- .../src/screens/Job/JobTypeRedirect.jsx | 6 +- awx/ui_next/src/screens/Job/Jobs.jsx | 6 +- awx/ui_next/src/screens/Job/Jobs.test.jsx | 2 +- .../Job/WorkflowOutput/WorkflowOutput.jsx | 12 +- .../WorkflowOutput/WorkflowOutput.test.jsx | 6 +- .../WorkflowOutput/WorkflowOutputGraph.jsx | 11 +- .../WorkflowOutputGraph.test.jsx | 4 +- .../Job/WorkflowOutput/WorkflowOutputLink.jsx | 4 +- .../WorkflowOutputLink.test.jsx | 2 +- .../Job/WorkflowOutput/WorkflowOutputNode.jsx | 10 +- .../WorkflowOutputNode.test.jsx | 4 +- .../WorkflowOutput/WorkflowOutputToolbar.jsx | 10 +- .../WorkflowOutputToolbar.test.jsx | 4 +- .../screens/JobsSetting/JobsSettings.test.jsx | 2 +- .../src/screens/License/License.test.jsx | 2 +- awx/ui_next/src/screens/Login/Login.test.jsx | 9 +- .../ManagementJob/ManagementJobs.test.jsx | 2 +- awx/ui_next/src/screens/NotFound.jsx | 2 +- .../NotificationTemplates.test.jsx | 2 +- .../src/screens/Organization/Organization.jsx | 14 +-- .../Organization/Organization.test.jsx | 11 +- .../OrganizationAdd/OrganizationAdd.jsx | 6 +- .../OrganizationAdd/OrganizationAdd.test.jsx | 9 +- .../OrganizationDetail/OrganizationDetail.jsx | 18 +-- .../OrganizationDetail.test.jsx | 9 +- .../OrganizationEdit/OrganizationEdit.jsx | 6 +- .../OrganizationEdit.test.jsx | 9 +- .../OrganizationList/OrganizationList.jsx | 14 +-- .../OrganizationList.test.jsx | 9 +- .../OrganizationList/OrganizationListItem.jsx | 4 +- .../OrganizationListItem.test.jsx | 2 +- .../OrganizationTeams/OrganizationTeams.jsx | 6 +- .../OrganizationTeams.test.jsx | 11 +- .../screens/Organization/Organizations.jsx | 4 +- .../Organization/Organizations.test.jsx | 4 +- .../Organization/shared/OrganizationForm.jsx | 22 ++-- .../shared/OrganizationForm.test.jsx | 9 +- .../src/screens/Portal/Portal.test.jsx | 2 +- awx/ui_next/src/screens/Project/Project.jsx | 16 +-- .../src/screens/Project/Project.test.jsx | 11 +- .../screens/Project/ProjectAdd/ProjectAdd.jsx | 4 +- .../Project/ProjectAdd/ProjectAdd.test.jsx | 9 +- .../Project/ProjectDetail/ProjectDetail.jsx | 28 +++-- .../ProjectDetail/ProjectDetail.test.jsx | 9 +- .../Project/ProjectEdit/ProjectEdit.jsx | 4 +- .../Project/ProjectEdit/ProjectEdit.test.jsx | 9 +- .../ProjectJobTemplatesList.jsx | 12 +- .../ProjectJobTemplatesListItem.jsx | 11 +- .../ProjectJobTemplatesListItem.test.jsx | 2 +- .../Project/ProjectList/ProjectList.jsx | 14 +-- .../Project/ProjectList/ProjectList.test.jsx | 6 +- .../Project/ProjectList/ProjectListItem.jsx | 15 ++- .../ProjectList/ProjectListItem.test.jsx | 6 +- .../ProjectSchedules/ProjectSchedules.jsx | 2 +- awx/ui_next/src/screens/Project/Projects.jsx | 4 +- .../src/screens/Project/Projects.test.jsx | 2 +- .../screens/Project/shared/ProjectForm.jsx | 23 ++-- .../Project/shared/ProjectForm.test.jsx | 9 +- .../shared/ProjectSubForms/GitSubForm.jsx | 2 +- .../ProjectSubForms/InsightsSubForm.jsx | 4 +- .../shared/ProjectSubForms/ManualSubForm.jsx | 6 +- .../shared/ProjectSubForms/SharedFields.jsx | 8 +- .../Project/shared/ProjectSyncButton.jsx | 6 +- .../Project/shared/ProjectSyncButton.test.jsx | 8 +- .../src/screens/Schedule/AllSchedules.jsx | 6 +- .../screens/Schedule/AllSchedules.test.jsx | 2 +- .../SystemSetting/SystemSettings.test.jsx | 2 +- awx/ui_next/src/screens/Team/Team.jsx | 10 +- awx/ui_next/src/screens/Team/Team.test.jsx | 9 +- .../Team/TeamAccess/TeamAccessList.jsx | 10 +- .../Team/TeamAccess/TeamAccessList.test.jsx | 6 +- .../Team/TeamAccess/TeamAccessListItem.jsx | 2 +- .../TeamAccess/TeamAccessListItem.test.jsx | 2 +- .../src/screens/Team/TeamAdd/TeamAdd.jsx | 6 +- .../src/screens/Team/TeamAdd/TeamAdd.test.jsx | 9 +- .../screens/Team/TeamDetail/TeamDetail.jsx | 16 +-- .../Team/TeamDetail/TeamDetail.test.jsx | 9 +- .../src/screens/Team/TeamEdit/TeamEdit.jsx | 6 +- .../screens/Team/TeamEdit/TeamEdit.test.jsx | 6 +- .../src/screens/Team/TeamList/TeamList.jsx | 14 +-- .../screens/Team/TeamList/TeamList.test.jsx | 6 +- .../screens/Team/TeamList/TeamListItem.jsx | 4 +- .../Team/TeamList/TeamListItem.test.jsx | 2 +- awx/ui_next/src/screens/Team/Teams.jsx | 4 +- awx/ui_next/src/screens/Team/Teams.test.jsx | 4 +- .../src/screens/Team/shared/TeamForm.jsx | 10 +- .../src/screens/Team/shared/TeamForm.test.jsx | 7 +- .../JobTemplateAdd/JobTemplateAdd.jsx | 4 +- .../JobTemplateAdd/JobTemplateAdd.test.jsx | 9 +- .../JobTemplateDetail/JobTemplateDetail.jsx | 24 ++-- .../JobTemplateDetail.test.jsx | 9 +- .../JobTemplateEdit/JobTemplateEdit.jsx | 12 +- .../JobTemplateEdit/JobTemplateEdit.test.jsx | 11 +- .../screens/Template/Survey/SurveyList.jsx | 6 +- .../Template/Survey/SurveyList.test.jsx | 6 +- .../Template/Survey/SurveyListItem.jsx | 5 +- .../Template/Survey/SurveyListItem.test.jsx | 2 +- .../Template/Survey/SurveyPreviewModal.jsx | 2 +- .../Survey/SurveyPreviewModal.test.jsx | 5 +- .../Template/Survey/SurveyQuestionAdd.jsx | 2 +- .../Survey/SurveyQuestionAdd.test.jsx | 2 +- .../Template/Survey/SurveyQuestionEdit.jsx | 4 +- .../Survey/SurveyQuestionEdit.test.jsx | 2 +- .../Template/Survey/SurveyQuestionForm.jsx | 15 ++- .../Survey/SurveyQuestionForm.test.jsx | 2 +- .../screens/Template/Survey/SurveyToolbar.jsx | 2 +- .../Template/Survey/SurveyToolbar.test.jsx | 4 +- awx/ui_next/src/screens/Template/Template.jsx | 20 +-- .../src/screens/Template/Template.test.jsx | 11 +- .../Template/TemplateList/TemplateList.jsx | 16 +-- .../TemplateList/TemplateList.test.jsx | 9 +- .../TemplateList/TemplateListItem.jsx | 18 +-- .../TemplateList/TemplateListItem.test.jsx | 6 +- .../src/screens/Template/TemplateSurvey.jsx | 10 +- .../screens/Template/TemplateSurvey.test.jsx | 6 +- .../src/screens/Template/Templates.jsx | 4 +- .../src/screens/Template/Templates.test.jsx | 2 +- .../screens/Template/WorkflowJobTemplate.jsx | 24 ++-- .../Template/WorkflowJobTemplate.test.jsx | 15 ++- .../WorkflowJobTemplateAdd.jsx | 4 +- .../WorkflowJobTemplateAdd.test.jsx | 16 ++- .../WorkflowJobTemplateDetail.jsx | 24 ++-- .../WorkflowJobTemplateDetail.test.jsx | 2 +- .../WorkflowJobTemplateEdit.jsx | 6 +- .../WorkflowJobTemplateEdit.test.jsx | 16 ++- .../Modals/DeleteAllNodesModal.jsx | 4 +- .../Modals/DeleteAllNodesModal.test.jsx | 4 +- .../Modals/LinkModals/LinkAddModal.jsx | 2 +- .../Modals/LinkModals/LinkAddModal.test.jsx | 4 +- .../Modals/LinkModals/LinkDeleteModal.jsx | 10 +- .../LinkModals/LinkDeleteModal.test.jsx | 4 +- .../Modals/LinkModals/LinkEditModal.jsx | 2 +- .../Modals/LinkModals/LinkEditModal.test.jsx | 4 +- .../Modals/LinkModals/LinkModal.jsx | 10 +- .../Modals/LinkModals/LinkModal.test.jsx | 4 +- .../Modals/NodeModals/NodeAddModal.jsx | 6 +- .../Modals/NodeModals/NodeAddModal.test.jsx | 4 +- .../Modals/NodeModals/NodeDeleteModal.jsx | 10 +- .../NodeModals/NodeDeleteModal.test.jsx | 4 +- .../Modals/NodeModals/NodeEditModal.jsx | 2 +- .../Modals/NodeModals/NodeEditModal.test.jsx | 4 +- .../Modals/NodeModals/NodeModal.jsx | 10 +- .../Modals/NodeModals/NodeModal.test.jsx | 14 +-- .../NodeTypeStep/InventorySourcesList.jsx | 10 +- .../InventorySourcesList.test.jsx | 6 +- .../NodeTypeStep/JobTemplatesList.jsx | 10 +- .../NodeTypeStep/JobTemplatesList.test.jsx | 6 +- .../NodeModals/NodeTypeStep/NodeTypeStep.jsx | 4 +- .../NodeTypeStep/NodeTypeStep.test.jsx | 12 +- .../NodeModals/NodeTypeStep/ProjectsList.jsx | 10 +- .../NodeTypeStep/ProjectsList.test.jsx | 6 +- .../NodeTypeStep/WorkflowJobTemplatesList.jsx | 10 +- .../WorkflowJobTemplatesList.test.jsx | 6 +- .../Modals/NodeModals/NodeViewModal.jsx | 14 +-- .../Modals/NodeModals/NodeViewModal.test.jsx | 13 +- .../Modals/NodeModals/RunStep.jsx | 2 +- .../Modals/NodeModals/RunStep.test.jsx | 2 +- .../Modals/UnsavedChangesModal.jsx | 2 +- .../Modals/UnsavedChangesModal.test.jsx | 4 +- .../Visualizer.jsx | 18 +-- .../Visualizer.test.jsx | 9 +- .../VisualizerGraph.jsx | 17 ++- .../VisualizerGraph.test.jsx | 4 +- .../VisualizerLink.jsx | 12 +- .../VisualizerLink.test.jsx | 4 +- .../VisualizerNode.jsx | 12 +- .../VisualizerNode.test.jsx | 4 +- .../VisualizerStartScreen.jsx | 2 +- .../VisualizerStartScreen.test.jsx | 4 +- .../VisualizerToolbar.jsx | 10 +- .../VisualizerToolbar.test.jsx | 4 +- .../Template/shared/JobTemplateForm.jsx | 28 ++--- .../Template/shared/JobTemplateForm.test.jsx | 16 ++- .../screens/Template/shared/LabelSelect.jsx | 4 +- .../Template/shared/LabelSelect.test.jsx | 4 +- .../Template/shared/PlaybookSelect.jsx | 4 +- .../Template/shared/PlaybookSelect.test.jsx | 6 +- .../Template/shared/WebhookSubForm.jsx | 16 +-- .../Template/shared/WebhookSubForm.test.jsx | 9 +- .../shared/WorkflowJobTemplateForm.jsx | 20 +-- .../shared/WorkflowJobTemplateForm.test.jsx | 16 +-- .../src/screens/UISetting/UISettings.test.jsx | 2 +- awx/ui_next/src/screens/User/User.jsx | 14 +-- awx/ui_next/src/screens/User/User.test.jsx | 9 +- .../User/UserAccess/UserAccessList.jsx | 10 +- .../User/UserAccess/UserAccessList.test.jsx | 6 +- .../User/UserAccess/UserAccessListItem.jsx | 2 +- .../UserAccess/UserAccessListItem.test.jsx | 2 +- .../src/screens/User/UserAdd/UserAdd.jsx | 4 +- .../src/screens/User/UserAdd/UserAdd.test.jsx | 9 +- .../screens/User/UserDetail/UserDetail.jsx | 16 +-- .../User/UserDetail/UserDetail.test.jsx | 9 +- .../src/screens/User/UserEdit/UserEdit.jsx | 4 +- .../screens/User/UserEdit/UserEdit.test.jsx | 6 +- .../src/screens/User/UserList/UserList.jsx | 12 +- .../screens/User/UserList/UserList.test.jsx | 9 +- .../screens/User/UserList/UserListItem.jsx | 4 +- .../User/UserList/UserListItem.test.jsx | 2 +- .../UserOrganizationListItem.jsx | 2 +- .../UserOrganizationListItem.test.jsx | 2 +- .../UserOrganizations.test.jsx | 5 +- .../UserOrganizationsList.jsx | 8 +- .../UserOrganizationsList.test.jsx | 9 +- .../src/screens/User/UserTeams/UserTeams.jsx | 2 +- .../screens/User/UserTokens/UserTokens.jsx | 2 +- awx/ui_next/src/screens/User/Users.jsx | 2 +- awx/ui_next/src/screens/User/Users.test.jsx | 2 +- .../src/screens/User/shared/UserForm.jsx | 12 +- .../src/screens/User/shared/UserForm.test.jsx | 9 +- awx/ui_next/src/util/useRequest.test.jsx | 2 +- tools/dealias.py | 114 ++++++++++++++++++ 504 files changed, 2077 insertions(+), 1707 deletions(-) create mode 100644 tools/dealias.py diff --git a/awx/ui_next/src/App.jsx b/awx/ui_next/src/App.jsx index e0f8482cec..df2291fbd5 100644 --- a/awx/ui_next/src/App.jsx +++ b/awx/ui_next/src/App.jsx @@ -12,14 +12,14 @@ import styled from 'styled-components'; import { t } from '@lingui/macro'; import { withI18n } from '@lingui/react'; -import { ConfigAPI, MeAPI, RootAPI } from '@api'; -import About from '@components/About'; -import AlertModal from '@components/AlertModal'; -import NavExpandableGroup from '@components/NavExpandableGroup'; -import BrandLogo from '@components/BrandLogo'; -import PageHeaderToolbar from '@components/PageHeaderToolbar'; -import ErrorDetail from '@components/ErrorDetail'; -import { ConfigProvider } from '@contexts/Config'; +import { ConfigAPI, MeAPI, RootAPI } from './api'; +import About from './components/About'; +import AlertModal from './components/AlertModal'; +import NavExpandableGroup from './components/NavExpandableGroup'; +import BrandLogo from './components/BrandLogo'; +import PageHeaderToolbar from './components/PageHeaderToolbar'; +import ErrorDetail from './components/ErrorDetail'; +import { ConfigProvider } from './contexts/Config'; const PageHeader = styled(PFPageHeader)` & .pf-c-page__header-brand-link { diff --git a/awx/ui_next/src/App.test.jsx b/awx/ui_next/src/App.test.jsx index 88a1f394a9..6f954a8fa2 100644 --- a/awx/ui_next/src/App.test.jsx +++ b/awx/ui_next/src/App.test.jsx @@ -1,7 +1,7 @@ import React from 'react'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; -import { ConfigAPI, MeAPI, RootAPI } from '@api'; +import { mountWithContexts, waitForElement } from '../testUtils/enzymeHelpers'; +import { ConfigAPI, MeAPI, RootAPI } from './api'; import { asyncFlush } from '../jest.setup'; import App from './App'; diff --git a/awx/ui_next/src/RootProvider.jsx b/awx/ui_next/src/RootProvider.jsx index 92b3e83776..f391f28619 100644 --- a/awx/ui_next/src/RootProvider.jsx +++ b/awx/ui_next/src/RootProvider.jsx @@ -3,7 +3,7 @@ import { I18nProvider } from '@lingui/react'; import { HashRouter } from 'react-router-dom'; -import { getLanguageWithoutRegionCode } from '@util/language'; +import { getLanguageWithoutRegionCode } from './util/language'; import ja from '../build/locales/ja/messages'; import en from '../build/locales/en/messages'; diff --git a/awx/ui_next/src/api/Base.js b/awx/ui_next/src/api/Base.js index fbb6182679..56492715fb 100644 --- a/awx/ui_next/src/api/Base.js +++ b/awx/ui_next/src/api/Base.js @@ -1,6 +1,6 @@ import axios from 'axios'; -import { encodeQueryString } from '@util/qs'; +import { encodeQueryString } from '../util/qs'; const defaultHttp = axios.create({ xsrfCookieName: 'csrftoken', diff --git a/awx/ui_next/src/api/models/Organizations.test.jsx b/awx/ui_next/src/api/models/Organizations.test.jsx index f1c4a05db6..d9f45c9548 100644 --- a/awx/ui_next/src/api/models/Organizations.test.jsx +++ b/awx/ui_next/src/api/models/Organizations.test.jsx @@ -1,4 +1,4 @@ -import { describeNotificationMixin } from '@testUtils/apiReusable'; +import { describeNotificationMixin } from '../../../testUtils/apiReusable'; import Organizations from './Organizations'; describe('OrganizationsAPI', () => { diff --git a/awx/ui_next/src/components/About/About.test.jsx b/awx/ui_next/src/components/About/About.test.jsx index 6e2b015c30..caed85e454 100644 --- a/awx/ui_next/src/components/About/About.test.jsx +++ b/awx/ui_next/src/components/About/About.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import About from './About'; describe('', () => { diff --git a/awx/ui_next/src/components/AddDropDownButton/AddDropDownButton.jsx b/awx/ui_next/src/components/AddDropDownButton/AddDropDownButton.jsx index 288a30733f..78655e44d9 100644 --- a/awx/ui_next/src/components/AddDropDownButton/AddDropDownButton.jsx +++ b/awx/ui_next/src/components/AddDropDownButton/AddDropDownButton.jsx @@ -2,7 +2,7 @@ import React, { useState, useRef, useEffect } from 'react'; import { Link } from 'react-router-dom'; import PropTypes from 'prop-types'; import { Dropdown, DropdownPosition } from '@patternfly/react-core'; -import { ToolbarAddButton } from '@components/PaginatedDataList'; +import { ToolbarAddButton } from '../PaginatedDataList'; function AddDropDownButton({ dropdownItems }) { const [isOpen, setIsOpen] = useState(false); diff --git a/awx/ui_next/src/components/AddDropDownButton/AddDropDownButton.test.jsx b/awx/ui_next/src/components/AddDropDownButton/AddDropDownButton.test.jsx index a30e3f9cd8..2c32607286 100644 --- a/awx/ui_next/src/components/AddDropDownButton/AddDropDownButton.test.jsx +++ b/awx/ui_next/src/components/AddDropDownButton/AddDropDownButton.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import AddDropDownButton from './AddDropDownButton'; describe('', () => { diff --git a/awx/ui_next/src/components/AddRole/AddResourceRole.jsx b/awx/ui_next/src/components/AddRole/AddResourceRole.jsx index af8fb4d9fb..6290f300f2 100644 --- a/awx/ui_next/src/components/AddRole/AddResourceRole.jsx +++ b/awx/ui_next/src/components/AddRole/AddResourceRole.jsx @@ -2,8 +2,8 @@ import React, { Fragment } from 'react'; import PropTypes from 'prop-types'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import SelectableCard from '@components/SelectableCard'; -import Wizard from '@components/Wizard'; +import SelectableCard from '../SelectableCard'; +import Wizard from '../Wizard'; import SelectResourceStep from './SelectResourceStep'; import SelectRoleStep from './SelectRoleStep'; import { TeamsAPI, UsersAPI } from '../../api'; diff --git a/awx/ui_next/src/components/AddRole/AddResourceRole.test.jsx b/awx/ui_next/src/components/AddRole/AddResourceRole.test.jsx index 8def4bf887..8a17a10a97 100644 --- a/awx/ui_next/src/components/AddRole/AddResourceRole.test.jsx +++ b/awx/ui_next/src/components/AddRole/AddResourceRole.test.jsx @@ -1,11 +1,11 @@ /* eslint-disable react/jsx-pascal-case */ import React from 'react'; import { shallow } from 'enzyme'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import AddResourceRole, { _AddResourceRole } from './AddResourceRole'; -import { TeamsAPI, UsersAPI } from '@api'; +import { TeamsAPI, UsersAPI } from '../../api'; -jest.mock('@api'); +jest.mock('../../api'); describe('<_AddResourceRole />', () => { UsersAPI.read.mockResolvedValue({ diff --git a/awx/ui_next/src/components/AddRole/SelectResourceStep.jsx b/awx/ui_next/src/components/AddRole/SelectResourceStep.jsx index fd8f93bdf3..9427bca17b 100644 --- a/awx/ui_next/src/components/AddRole/SelectResourceStep.jsx +++ b/awx/ui_next/src/components/AddRole/SelectResourceStep.jsx @@ -3,7 +3,7 @@ import PropTypes from 'prop-types'; import { withRouter } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { SearchColumns, SortColumns } from '@types'; +import { SearchColumns, SortColumns } from '../../types'; import PaginatedDataList from '../PaginatedDataList'; import DataListToolbar from '../DataListToolbar'; import CheckboxListItem from '../CheckboxListItem'; diff --git a/awx/ui_next/src/components/AddRole/SelectResourceStep.test.jsx b/awx/ui_next/src/components/AddRole/SelectResourceStep.test.jsx index 1bc0e7a2c9..e925044ed5 100644 --- a/awx/ui_next/src/components/AddRole/SelectResourceStep.test.jsx +++ b/awx/ui_next/src/components/AddRole/SelectResourceStep.test.jsx @@ -1,8 +1,8 @@ import React from 'react'; import { createMemoryHistory } from 'history'; import { shallow } from 'enzyme'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import { sleep } from '@testUtils/testUtils'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; +import { sleep } from '../../../testUtils/testUtils'; import SelectResourceStep from './SelectResourceStep'; describe('', () => { diff --git a/awx/ui_next/src/components/AddRole/SelectRoleStep.test.jsx b/awx/ui_next/src/components/AddRole/SelectRoleStep.test.jsx index 957db15070..f280604328 100644 --- a/awx/ui_next/src/components/AddRole/SelectRoleStep.test.jsx +++ b/awx/ui_next/src/components/AddRole/SelectRoleStep.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; import { shallow } from 'enzyme'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import SelectRoleStep from './SelectRoleStep'; describe('', () => { diff --git a/awx/ui_next/src/components/AnsibleSelect/AnsibleSelect.test.jsx b/awx/ui_next/src/components/AnsibleSelect/AnsibleSelect.test.jsx index 4df4c38471..d9bd7c669d 100644 --- a/awx/ui_next/src/components/AnsibleSelect/AnsibleSelect.test.jsx +++ b/awx/ui_next/src/components/AnsibleSelect/AnsibleSelect.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import AnsibleSelect, { _AnsibleSelect } from './AnsibleSelect'; const mockData = [ diff --git a/awx/ui_next/src/components/AssociateModal/AssociateModal.jsx b/awx/ui_next/src/components/AssociateModal/AssociateModal.jsx index 493056b50e..86aa534f12 100644 --- a/awx/ui_next/src/components/AssociateModal/AssociateModal.jsx +++ b/awx/ui_next/src/components/AssociateModal/AssociateModal.jsx @@ -3,10 +3,10 @@ import { useHistory } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Button, Modal } from '@patternfly/react-core'; -import OptionsList from '@components/OptionsList'; -import useRequest from '@util/useRequest'; -import { getQSConfig, parseQueryString } from '@util/qs'; -import useSelected from '@util/useSelected'; +import OptionsList from '../OptionsList'; +import useRequest from '../../util/useRequest'; +import { getQSConfig, parseQueryString } from '../../util/qs'; +import useSelected from '../../util/useSelected'; const QS_CONFIG = getQSConfig('associate', { page: 1, diff --git a/awx/ui_next/src/components/AssociateModal/AssociateModal.test.jsx b/awx/ui_next/src/components/AssociateModal/AssociateModal.test.jsx index f6c4fca934..2b2280b38b 100644 --- a/awx/ui_next/src/components/AssociateModal/AssociateModal.test.jsx +++ b/awx/ui_next/src/components/AssociateModal/AssociateModal.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../testUtils/enzymeHelpers'; import AssociateModal from './AssociateModal'; import mockHosts from './data.hosts.json'; -jest.mock('@api'); +jest.mock('../../api'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/components/BrandLogo/BrandLogo.test.jsx b/awx/ui_next/src/components/BrandLogo/BrandLogo.test.jsx index d0c36612ff..02ba644586 100644 --- a/awx/ui_next/src/components/BrandLogo/BrandLogo.test.jsx +++ b/awx/ui_next/src/components/BrandLogo/BrandLogo.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import BrandLogo from './BrandLogo'; let logoWrapper; diff --git a/awx/ui_next/src/components/CardCloseButton/CardCloseButton.test.jsx b/awx/ui_next/src/components/CardCloseButton/CardCloseButton.test.jsx index 9b79beef92..3564971c72 100644 --- a/awx/ui_next/src/components/CardCloseButton/CardCloseButton.test.jsx +++ b/awx/ui_next/src/components/CardCloseButton/CardCloseButton.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import CardCloseButton from './CardCloseButton'; describe('', () => { diff --git a/awx/ui_next/src/components/CheckboxListItem/CheckboxListItem.jsx b/awx/ui_next/src/components/CheckboxListItem/CheckboxListItem.jsx index d6ec3949d5..befaa10674 100644 --- a/awx/ui_next/src/components/CheckboxListItem/CheckboxListItem.jsx +++ b/awx/ui_next/src/components/CheckboxListItem/CheckboxListItem.jsx @@ -7,7 +7,7 @@ import { DataListCheck, Radio, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; +import DataListCell from '../DataListCell'; const CheckboxListItem = ({ isDisabled = false, diff --git a/awx/ui_next/src/components/ChipGroup/ChipGroup.test.jsx b/awx/ui_next/src/components/ChipGroup/ChipGroup.test.jsx index e1193e26ce..9e36503706 100644 --- a/awx/ui_next/src/components/ChipGroup/ChipGroup.test.jsx +++ b/awx/ui_next/src/components/ChipGroup/ChipGroup.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import ChipGroup from './ChipGroup'; describe('ChipGroup', () => { diff --git a/awx/ui_next/src/components/ClipboardCopyButton/ClipboardCopyButton.test.jsx b/awx/ui_next/src/components/ClipboardCopyButton/ClipboardCopyButton.test.jsx index 0cdbab8302..4ba32fb51d 100644 --- a/awx/ui_next/src/components/ClipboardCopyButton/ClipboardCopyButton.test.jsx +++ b/awx/ui_next/src/components/ClipboardCopyButton/ClipboardCopyButton.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import ClipboardCopyButton from './ClipboardCopyButton'; document.execCommand = jest.fn(); diff --git a/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.jsx b/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.jsx index e7c2b00742..48bed46f4b 100644 --- a/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.jsx +++ b/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.jsx @@ -1,9 +1,9 @@ import React, { useState, useEffect } from 'react'; import { string, node, number } from 'prop-types'; import { Split, SplitItem, TextListItemVariants } from '@patternfly/react-core'; -import { DetailName, DetailValue } from '@components/DetailList'; -import MultiButtonToggle from '@components/MultiButtonToggle'; -import { yamlToJson, jsonToYaml, isJson } from '@util/yaml'; +import { DetailName, DetailValue } from '../DetailList'; +import MultiButtonToggle from '../MultiButtonToggle'; +import { yamlToJson, jsonToYaml, isJson } from '../../util/yaml'; import CodeMirrorInput from './CodeMirrorInput'; import { JSON_MODE, YAML_MODE } from './constants'; diff --git a/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.test.jsx b/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.test.jsx index 5ffdaeb1e7..d745236dc5 100644 --- a/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.test.jsx +++ b/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.test.jsx @@ -3,7 +3,7 @@ import { act } from 'react-dom/test-utils'; import { shallow, mount } from 'enzyme'; import VariablesDetail from './VariablesDetail'; -jest.mock('@api'); +jest.mock('../../api'); describe('', () => { test('should render readonly CodeMirrorInput', () => { diff --git a/awx/ui_next/src/components/CodeMirrorInput/VariablesField.jsx b/awx/ui_next/src/components/CodeMirrorInput/VariablesField.jsx index 54bd70bc2c..7be1a24de9 100644 --- a/awx/ui_next/src/components/CodeMirrorInput/VariablesField.jsx +++ b/awx/ui_next/src/components/CodeMirrorInput/VariablesField.jsx @@ -5,9 +5,9 @@ import { t } from '@lingui/macro'; import { useField } from 'formik'; import styled from 'styled-components'; import { Split, SplitItem } from '@patternfly/react-core'; -import { CheckboxField, FieldTooltip } from '@components/FormField'; -import MultiButtonToggle from '@components/MultiButtonToggle'; -import { yamlToJson, jsonToYaml, isJson } from '@util/yaml'; +import { CheckboxField, FieldTooltip } from '../FormField'; +import MultiButtonToggle from '../MultiButtonToggle'; +import { yamlToJson, jsonToYaml, isJson } from '../../util/yaml'; import CodeMirrorInput from './CodeMirrorInput'; import { JSON_MODE, YAML_MODE } from './constants'; diff --git a/awx/ui_next/src/components/CodeMirrorInput/VariablesInput.jsx b/awx/ui_next/src/components/CodeMirrorInput/VariablesInput.jsx index cf7758b53e..fda9bec4d1 100644 --- a/awx/ui_next/src/components/CodeMirrorInput/VariablesInput.jsx +++ b/awx/ui_next/src/components/CodeMirrorInput/VariablesInput.jsx @@ -2,8 +2,8 @@ import React, { useState } from 'react'; import { string, func, bool, number } from 'prop-types'; import { Split, SplitItem } from '@patternfly/react-core'; import styled from 'styled-components'; -import { yamlToJson, jsonToYaml, isJson } from '@util/yaml'; -import MultiButtonToggle from '@components/MultiButtonToggle'; +import { yamlToJson, jsonToYaml, isJson } from '../../util/yaml'; +import MultiButtonToggle from '../MultiButtonToggle'; import CodeMirrorInput from './CodeMirrorInput'; import { JSON_MODE, YAML_MODE } from './constants'; diff --git a/awx/ui_next/src/components/CollapsibleSection/CollapsibleSection.jsx b/awx/ui_next/src/components/CollapsibleSection/CollapsibleSection.jsx index 77ed5767e5..b9e60385b8 100644 --- a/awx/ui_next/src/components/CollapsibleSection/CollapsibleSection.jsx +++ b/awx/ui_next/src/components/CollapsibleSection/CollapsibleSection.jsx @@ -3,7 +3,7 @@ import { bool, string } from 'prop-types'; import styled from 'styled-components'; import { Button } from '@patternfly/react-core'; import { AngleRightIcon } from '@patternfly/react-icons'; -import omitProps from '@util/omitProps'; +import omitProps from '../../util/omitProps'; import ExpandingContainer from './ExpandingContainer'; // Make button findable by tests diff --git a/awx/ui_next/src/components/ContentEmpty/ContentEmpty.test.jsx b/awx/ui_next/src/components/ContentEmpty/ContentEmpty.test.jsx index a3f1176226..6498dc76cc 100644 --- a/awx/ui_next/src/components/ContentEmpty/ContentEmpty.test.jsx +++ b/awx/ui_next/src/components/ContentEmpty/ContentEmpty.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import ContentEmpty from './ContentEmpty'; diff --git a/awx/ui_next/src/components/ContentError/ContentError.jsx b/awx/ui_next/src/components/ContentError/ContentError.jsx index 7f766f7e91..f0d4f80a1d 100644 --- a/awx/ui_next/src/components/ContentError/ContentError.jsx +++ b/awx/ui_next/src/components/ContentError/ContentError.jsx @@ -10,8 +10,8 @@ import { EmptyStateBody, } from '@patternfly/react-core'; import { ExclamationTriangleIcon } from '@patternfly/react-icons'; -import { RootAPI } from '@api'; -import ErrorDetail from '@components/ErrorDetail'; +import { RootAPI } from '../../api'; +import ErrorDetail from '../ErrorDetail'; async function logout() { await RootAPI.logout(); diff --git a/awx/ui_next/src/components/ContentError/ContentError.test.jsx b/awx/ui_next/src/components/ContentError/ContentError.test.jsx index 8bd0751215..518f0ae8c6 100644 --- a/awx/ui_next/src/components/ContentError/ContentError.test.jsx +++ b/awx/ui_next/src/components/ContentError/ContentError.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import ContentError from './ContentError'; diff --git a/awx/ui_next/src/components/ContentLoading/ContentLoading.test.jsx b/awx/ui_next/src/components/ContentLoading/ContentLoading.test.jsx index 01bac1f3d0..c2816e2582 100644 --- a/awx/ui_next/src/components/ContentLoading/ContentLoading.test.jsx +++ b/awx/ui_next/src/components/ContentLoading/ContentLoading.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import ContentLoading from './ContentLoading'; diff --git a/awx/ui_next/src/components/CopyButton/CopyButton.jsx b/awx/ui_next/src/components/CopyButton/CopyButton.jsx index 500c0c1106..dd1e91a7aa 100644 --- a/awx/ui_next/src/components/CopyButton/CopyButton.jsx +++ b/awx/ui_next/src/components/CopyButton/CopyButton.jsx @@ -5,9 +5,9 @@ import PropTypes from 'prop-types'; import { Button, Tooltip } from '@patternfly/react-core'; import { CopyIcon } from '@patternfly/react-icons'; -import useRequest, { useDismissableError } from '@util/useRequest'; -import AlertModal from '@components/AlertModal'; -import ErrorDetail from '@components/ErrorDetail'; +import useRequest, { useDismissableError } from '../../util/useRequest'; +import AlertModal from '../AlertModal'; +import ErrorDetail from '../ErrorDetail'; function CopyButton({ i18n, copyItem, onLoading, onDoneLoading, helperText }) { const { isLoading, error: copyError, request: copyItemToAPI } = useRequest( diff --git a/awx/ui_next/src/components/CopyButton/CopyButton.test.jsx b/awx/ui_next/src/components/CopyButton/CopyButton.test.jsx index 30708ad16f..0660d57cd0 100644 --- a/awx/ui_next/src/components/CopyButton/CopyButton.test.jsx +++ b/awx/ui_next/src/components/CopyButton/CopyButton.test.jsx @@ -1,8 +1,8 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import CopyButton from './CopyButton'; -jest.mock('@api'); +jest.mock('../../api'); describe('', () => { test('shold mount properly', () => { diff --git a/awx/ui_next/src/components/CredentialChip/CredentialChip.jsx b/awx/ui_next/src/components/CredentialChip/CredentialChip.jsx index bc1cd89bed..13576fa750 100644 --- a/awx/ui_next/src/components/CredentialChip/CredentialChip.jsx +++ b/awx/ui_next/src/components/CredentialChip/CredentialChip.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { shape } from 'prop-types'; -import { toTitleCase } from '@util/strings'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { Credential } from '@types'; import { Chip } from '@patternfly/react-core'; +import { Credential } from '../../types'; +import { toTitleCase } from '../../util/strings'; function CredentialChip({ credential, i18n, ...props }) { let type; diff --git a/awx/ui_next/src/components/CredentialChip/CredentialChip.test.jsx b/awx/ui_next/src/components/CredentialChip/CredentialChip.test.jsx index 7bcdc3dcd6..df678d5d23 100644 --- a/awx/ui_next/src/components/CredentialChip/CredentialChip.test.jsx +++ b/awx/ui_next/src/components/CredentialChip/CredentialChip.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import CredentialChip from './CredentialChip'; describe('CredentialChip', () => { diff --git a/awx/ui_next/src/components/DataListToolbar/DataListToolbar.jsx b/awx/ui_next/src/components/DataListToolbar/DataListToolbar.jsx index baf03ff89d..f8b7adfa8a 100644 --- a/awx/ui_next/src/components/DataListToolbar/DataListToolbar.jsx +++ b/awx/ui_next/src/components/DataListToolbar/DataListToolbar.jsx @@ -16,7 +16,7 @@ import ExpandCollapse from '../ExpandCollapse'; import Search from '../Search'; import Sort from '../Sort'; -import { SearchColumns, SortColumns, QSConfig } from '@types'; +import { SearchColumns, SortColumns, QSConfig } from '../../types'; const DataToolbarContent = styled(_DataToolbarContent)` --pf-c-data-toolbar__content--PaddingLeft: 24px; diff --git a/awx/ui_next/src/components/DataListToolbar/DataListToolbar.test.jsx b/awx/ui_next/src/components/DataListToolbar/DataListToolbar.test.jsx index 09fce3d548..b8b83ee6e2 100644 --- a/awx/ui_next/src/components/DataListToolbar/DataListToolbar.test.jsx +++ b/awx/ui_next/src/components/DataListToolbar/DataListToolbar.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import DataListToolbar from './DataListToolbar'; describe('', () => { diff --git a/awx/ui_next/src/components/DeleteButton/DeleteButton.jsx b/awx/ui_next/src/components/DeleteButton/DeleteButton.jsx index 184caf9ef9..f9fe6cb1ea 100644 --- a/awx/ui_next/src/components/DeleteButton/DeleteButton.jsx +++ b/awx/ui_next/src/components/DeleteButton/DeleteButton.jsx @@ -2,7 +2,7 @@ import React, { useState } from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Button } from '@patternfly/react-core'; -import AlertModal from '@components/AlertModal'; +import AlertModal from '../AlertModal'; function DeleteButton({ onConfirm, diff --git a/awx/ui_next/src/components/DetailList/UserDateDetail.jsx b/awx/ui_next/src/components/DetailList/UserDateDetail.jsx index f65ab665ed..29826175c5 100644 --- a/awx/ui_next/src/components/DetailList/UserDateDetail.jsx +++ b/awx/ui_next/src/components/DetailList/UserDateDetail.jsx @@ -3,7 +3,7 @@ import { node, string } from 'prop-types'; import { Trans } from '@lingui/macro'; import { Link } from 'react-router-dom'; import styled from 'styled-components'; -import { formatDateString } from '@util/dates'; +import { formatDateString } from '../../util/dates'; import _Detail from './Detail'; import { SummaryFieldUser } from '../../types'; diff --git a/awx/ui_next/src/components/DisassociateButton/DisassociateButton.jsx b/awx/ui_next/src/components/DisassociateButton/DisassociateButton.jsx index fdcddfb7e3..dacb44aaae 100644 --- a/awx/ui_next/src/components/DisassociateButton/DisassociateButton.jsx +++ b/awx/ui_next/src/components/DisassociateButton/DisassociateButton.jsx @@ -3,8 +3,8 @@ import { arrayOf, func, object, string } from 'prop-types'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Button, Tooltip } from '@patternfly/react-core'; -import AlertModal from '@components/AlertModal'; import styled from 'styled-components'; +import AlertModal from '../AlertModal'; const ModalNote = styled.div` margin-bottom: var(--pf-global--spacer--xl); diff --git a/awx/ui_next/src/components/DisassociateButton/DisassociateButton.test.jsx b/awx/ui_next/src/components/DisassociateButton/DisassociateButton.test.jsx index 06e6eedbe7..5f0b76d330 100644 --- a/awx/ui_next/src/components/DisassociateButton/DisassociateButton.test.jsx +++ b/awx/ui_next/src/components/DisassociateButton/DisassociateButton.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import DisassociateButton from './DisassociateButton'; describe('', () => { diff --git a/awx/ui_next/src/components/ErrorDetail/ErrorDetail.test.jsx b/awx/ui_next/src/components/ErrorDetail/ErrorDetail.test.jsx index 383c41e4ed..8accea199c 100644 --- a/awx/ui_next/src/components/ErrorDetail/ErrorDetail.test.jsx +++ b/awx/ui_next/src/components/ErrorDetail/ErrorDetail.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import ErrorDetail from './ErrorDetail'; diff --git a/awx/ui_next/src/components/ExpandCollapse/ExpandCollapse.test.jsx b/awx/ui_next/src/components/ExpandCollapse/ExpandCollapse.test.jsx index 6b68787b2e..74b37d6235 100644 --- a/awx/ui_next/src/components/ExpandCollapse/ExpandCollapse.test.jsx +++ b/awx/ui_next/src/components/ExpandCollapse/ExpandCollapse.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import ExpandCollapse from './ExpandCollapse'; describe('', () => { diff --git a/awx/ui_next/src/components/FieldWithPrompt/FieldWithPrompt.jsx b/awx/ui_next/src/components/FieldWithPrompt/FieldWithPrompt.jsx index 9050307c83..19ad76c796 100644 --- a/awx/ui_next/src/components/FieldWithPrompt/FieldWithPrompt.jsx +++ b/awx/ui_next/src/components/FieldWithPrompt/FieldWithPrompt.jsx @@ -2,8 +2,8 @@ import React from 'react'; import { bool, node, string } from 'prop-types'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { CheckboxField, FieldTooltip } from '@components/FormField'; import styled from 'styled-components'; +import { CheckboxField, FieldTooltip } from '../FormField'; const FieldHeader = styled.div` display: flex; diff --git a/awx/ui_next/src/components/FieldWithPrompt/FieldWithPrompt.test.jsx b/awx/ui_next/src/components/FieldWithPrompt/FieldWithPrompt.test.jsx index 4358737144..d99e5e7b41 100644 --- a/awx/ui_next/src/components/FieldWithPrompt/FieldWithPrompt.test.jsx +++ b/awx/ui_next/src/components/FieldWithPrompt/FieldWithPrompt.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; import { Field, Formik } from 'formik'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import FieldWithPrompt from './FieldWithPrompt'; describe('FieldWithPrompt', () => { diff --git a/awx/ui_next/src/components/FormActionGroup/FormActionGroup.jsx b/awx/ui_next/src/components/FormActionGroup/FormActionGroup.jsx index 6d3760d0b7..07620204eb 100644 --- a/awx/ui_next/src/components/FormActionGroup/FormActionGroup.jsx +++ b/awx/ui_next/src/components/FormActionGroup/FormActionGroup.jsx @@ -3,7 +3,7 @@ import PropTypes from 'prop-types'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { ActionGroup, Button } from '@patternfly/react-core'; -import { FormFullWidthLayout } from '@components/FormLayout'; +import { FormFullWidthLayout } from '../FormLayout'; const FormActionGroup = ({ onSubmit, submitDisabled, onCancel, i18n }) => ( diff --git a/awx/ui_next/src/components/FormActionGroup/FormActionGroup.test.jsx b/awx/ui_next/src/components/FormActionGroup/FormActionGroup.test.jsx index d81d9e9e59..5068a85226 100644 --- a/awx/ui_next/src/components/FormActionGroup/FormActionGroup.test.jsx +++ b/awx/ui_next/src/components/FormActionGroup/FormActionGroup.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import FormActionGroup from './FormActionGroup'; diff --git a/awx/ui_next/src/components/FormField/FormSubmitError.test.jsx b/awx/ui_next/src/components/FormField/FormSubmitError.test.jsx index a52211d667..7dd41922bd 100644 --- a/awx/ui_next/src/components/FormField/FormSubmitError.test.jsx +++ b/awx/ui_next/src/components/FormField/FormSubmitError.test.jsx @@ -1,7 +1,7 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; import { Formik } from 'formik'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import FormSubmitError from './FormSubmitError'; describe('', () => { diff --git a/awx/ui_next/src/components/FormField/PasswordField.test.jsx b/awx/ui_next/src/components/FormField/PasswordField.test.jsx index 65fdd55501..2f2ceab52a 100644 --- a/awx/ui_next/src/components/FormField/PasswordField.test.jsx +++ b/awx/ui_next/src/components/FormField/PasswordField.test.jsx @@ -1,7 +1,7 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import { sleep } from '@testUtils/testUtils'; import { Formik } from 'formik'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; +import { sleep } from '../../../testUtils/testUtils'; import PasswordField from './PasswordField'; describe('PasswordField', () => { diff --git a/awx/ui_next/src/components/HostForm/HostForm.jsx b/awx/ui_next/src/components/HostForm/HostForm.jsx index 5e662ea313..8fa1c63bb2 100644 --- a/awx/ui_next/src/components/HostForm/HostForm.jsx +++ b/awx/ui_next/src/components/HostForm/HostForm.jsx @@ -5,15 +5,12 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Form, FormGroup } from '@patternfly/react-core'; -import FormField, { - FormSubmitError, - FieldTooltip, -} from '@components/FormField'; -import FormActionGroup from '@components/FormActionGroup/FormActionGroup'; -import { VariablesField } from '@components/CodeMirrorInput'; -import { InventoryLookup } from '@components/Lookup'; -import { FormColumnLayout, FormFullWidthLayout } from '@components/FormLayout'; -import { required } from '@util/validators'; +import FormField, { FormSubmitError, FieldTooltip } from '../FormField'; +import FormActionGroup from '../FormActionGroup/FormActionGroup'; +import { VariablesField } from '../CodeMirrorInput'; +import { InventoryLookup } from '../Lookup'; +import { FormColumnLayout, FormFullWidthLayout } from '../FormLayout'; +import { required } from '../../util/validators'; const InventoryLookupField = withI18n()(({ i18n, host }) => { const [inventory, setInventory] = useState( diff --git a/awx/ui_next/src/components/HostForm/HostForm.test.jsx b/awx/ui_next/src/components/HostForm/HostForm.test.jsx index c39867641e..23538ad933 100644 --- a/awx/ui_next/src/components/HostForm/HostForm.test.jsx +++ b/awx/ui_next/src/components/HostForm/HostForm.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import HostForm from './HostForm'; -jest.mock('@api'); +jest.mock('../../api'); const mockData = { id: 1, diff --git a/awx/ui_next/src/components/HostToggle/HostToggle.jsx b/awx/ui_next/src/components/HostToggle/HostToggle.jsx index eefdb76fe9..816b7979a3 100644 --- a/awx/ui_next/src/components/HostToggle/HostToggle.jsx +++ b/awx/ui_next/src/components/HostToggle/HostToggle.jsx @@ -2,10 +2,10 @@ import React, { Fragment, useState, useEffect, useCallback } from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Switch, Tooltip } from '@patternfly/react-core'; -import AlertModal from '@components/AlertModal'; -import ErrorDetail from '@components/ErrorDetail'; -import useRequest from '@util/useRequest'; -import { HostsAPI } from '@api'; +import AlertModal from '../AlertModal'; +import ErrorDetail from '../ErrorDetail'; +import useRequest from '../../util/useRequest'; +import { HostsAPI } from '../../api'; function HostToggle({ host, onToggle, className, i18n }) { const [isEnabled, setIsEnabled] = useState(host.enabled); diff --git a/awx/ui_next/src/components/HostToggle/HostToggle.test.jsx b/awx/ui_next/src/components/HostToggle/HostToggle.test.jsx index cef60fb34e..63dd971285 100644 --- a/awx/ui_next/src/components/HostToggle/HostToggle.test.jsx +++ b/awx/ui_next/src/components/HostToggle/HostToggle.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { HostsAPI } from '@api'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { HostsAPI } from '../../api'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import HostToggle from './HostToggle'; -jest.mock('@api'); +jest.mock('../../api'); const mockHost = { id: 1, diff --git a/awx/ui_next/src/components/JobList/JobList.jsx b/awx/ui_next/src/components/JobList/JobList.jsx index 41e0be21d1..a96e5f3924 100644 --- a/awx/ui_next/src/components/JobList/JobList.jsx +++ b/awx/ui_next/src/components/JobList/JobList.jsx @@ -4,14 +4,12 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Card } from '@patternfly/react-core'; -import AlertModal from '@components/AlertModal'; -import DatalistToolbar from '@components/DataListToolbar'; -import ErrorDetail from '@components/ErrorDetail'; -import PaginatedDataList, { - ToolbarDeleteButton, -} from '@components/PaginatedDataList'; -import useRequest, { useDeleteItems } from '@util/useRequest'; -import { getQSConfig, parseQueryString } from '@util/qs'; +import AlertModal from '../AlertModal'; +import DatalistToolbar from '../DataListToolbar'; +import ErrorDetail from '../ErrorDetail'; +import PaginatedDataList, { ToolbarDeleteButton } from '../PaginatedDataList'; +import useRequest, { useDeleteItems } from '../../util/useRequest'; +import { getQSConfig, parseQueryString } from '../../util/qs'; import JobListItem from './JobListItem'; import { AdHocCommandsAPI, @@ -21,7 +19,7 @@ import { SystemJobsAPI, UnifiedJobsAPI, WorkflowJobsAPI, -} from '@api'; +} from '../../api'; function JobList({ i18n, defaultParams, showTypeColumn = false }) { const QS_CONFIG = getQSConfig( diff --git a/awx/ui_next/src/components/JobList/JobList.test.jsx b/awx/ui_next/src/components/JobList/JobList.test.jsx index 75632f2f7b..f2d1e6f71d 100644 --- a/awx/ui_next/src/components/JobList/JobList.test.jsx +++ b/awx/ui_next/src/components/JobList/JobList.test.jsx @@ -1,6 +1,9 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../testUtils/enzymeHelpers'; import { AdHocCommandsAPI, InventoryUpdatesAPI, @@ -9,10 +12,10 @@ import { SystemJobsAPI, UnifiedJobsAPI, WorkflowJobsAPI, -} from '@api'; +} from '../../api'; import JobList from './JobList'; -jest.mock('@api'); +jest.mock('../../api'); const mockResults = [ { diff --git a/awx/ui_next/src/components/JobList/JobListItem.jsx b/awx/ui_next/src/components/JobList/JobListItem.jsx index 19e8089414..296ecba9c7 100644 --- a/awx/ui_next/src/components/JobList/JobListItem.jsx +++ b/awx/ui_next/src/components/JobList/JobListItem.jsx @@ -11,13 +11,13 @@ import { DataListItemCells, Tooltip, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; import { RocketIcon } from '@patternfly/react-icons'; -import LaunchButton from '@components/LaunchButton'; -import StatusIcon from '@components/StatusIcon'; -import { formatDateString } from '@util/dates'; -import { JOB_TYPE_URL_SEGMENTS } from '@constants'; import styled from 'styled-components'; +import DataListCell from '../DataListCell'; +import LaunchButton from '../LaunchButton'; +import StatusIcon from '../StatusIcon'; +import { formatDateString } from '../../util/dates'; +import { JOB_TYPE_URL_SEGMENTS } from '../../constants'; const DataListAction = styled(_DataListAction)` align-items: center; diff --git a/awx/ui_next/src/components/JobList/JobListItem.test.jsx b/awx/ui_next/src/components/JobList/JobListItem.test.jsx index d087b23b95..fc453c3be4 100644 --- a/awx/ui_next/src/components/JobList/JobListItem.test.jsx +++ b/awx/ui_next/src/components/JobList/JobListItem.test.jsx @@ -1,7 +1,7 @@ import React from 'react'; import { createMemoryHistory } from 'history'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import JobListItem from './JobListItem'; diff --git a/awx/ui_next/src/components/LaunchButton/LaunchButton.jsx b/awx/ui_next/src/components/LaunchButton/LaunchButton.jsx index 7d48a7bba9..e2484abb5a 100644 --- a/awx/ui_next/src/components/LaunchButton/LaunchButton.jsx +++ b/awx/ui_next/src/components/LaunchButton/LaunchButton.jsx @@ -4,8 +4,8 @@ import { number, shape } from 'prop-types'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import AlertModal from '@components/AlertModal'; -import ErrorDetail from '@components/ErrorDetail'; +import AlertModal from '../AlertModal'; +import ErrorDetail from '../ErrorDetail'; import { AdHocCommandsAPI, InventorySourcesAPI, @@ -14,8 +14,8 @@ import { ProjectsAPI, WorkflowJobsAPI, WorkflowJobTemplatesAPI, -} from '@api'; -import LaunchPrompt from '@components/LaunchPrompt'; +} from '../../api'; +import LaunchPrompt from '../LaunchPrompt'; function canLaunchWithoutPrompt(launchData) { return ( diff --git a/awx/ui_next/src/components/LaunchButton/LaunchButton.test.jsx b/awx/ui_next/src/components/LaunchButton/LaunchButton.test.jsx index 8ca2b3d167..10fbbd1bf4 100644 --- a/awx/ui_next/src/components/LaunchButton/LaunchButton.test.jsx +++ b/awx/ui_next/src/components/LaunchButton/LaunchButton.test.jsx @@ -1,13 +1,13 @@ import React from 'react'; import { createMemoryHistory } from 'history'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import { sleep } from '@testUtils/testUtils'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; +import { sleep } from '../../../testUtils/testUtils'; import LaunchButton from './LaunchButton'; -import { JobTemplatesAPI, WorkflowJobTemplatesAPI } from '@api'; +import { JobTemplatesAPI, WorkflowJobTemplatesAPI } from '../../api'; -jest.mock('@api/models/WorkflowJobTemplates'); -jest.mock('@api/models/JobTemplates'); +jest.mock('../../api/models/WorkflowJobTemplates'); +jest.mock('../../api/models/JobTemplates'); describe('LaunchButton', () => { JobTemplatesAPI.readLaunch.mockResolvedValue({ diff --git a/awx/ui_next/src/components/LaunchPrompt/LaunchPrompt.jsx b/awx/ui_next/src/components/LaunchPrompt/LaunchPrompt.jsx index 246c54fb91..f9d926d267 100644 --- a/awx/ui_next/src/components/LaunchPrompt/LaunchPrompt.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/LaunchPrompt.jsx @@ -3,8 +3,8 @@ import { Wizard } from '@patternfly/react-core'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Formik } from 'formik'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; +import ContentError from '../../components/ContentError'; +import ContentLoading from '../../components/ContentLoading'; import mergeExtraVars from './mergeExtraVars'; import useSteps from './useSteps'; import getSurveyValues from './getSurveyValues'; diff --git a/awx/ui_next/src/components/LaunchPrompt/LaunchPrompt.test.jsx b/awx/ui_next/src/components/LaunchPrompt/LaunchPrompt.test.jsx index 650e2cc640..5cab9562ff 100644 --- a/awx/ui_next/src/components/LaunchPrompt/LaunchPrompt.test.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/LaunchPrompt.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; import { act, isElementOfType } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { mountWithContexts, waitForElement } from '../../../testUtils/enzymeHelpers'; import LaunchPrompt from './LaunchPrompt'; import InventoryStep from './steps/InventoryStep'; import CredentialsStep from './steps/CredentialsStep'; @@ -11,12 +11,12 @@ import { CredentialsAPI, CredentialTypesAPI, JobTemplatesAPI, -} from '@api'; +} from '../../api'; -jest.mock('@api/models/Inventories'); -jest.mock('@api/models/CredentialTypes'); -jest.mock('@api/models/Credentials'); -jest.mock('@api/models/JobTemplates'); +jest.mock('../../api/models/Inventories'); +jest.mock('../../api/models/CredentialTypes'); +jest.mock('../../api/models/Credentials'); +jest.mock('../../api/models/JobTemplates'); let config; const resource = { diff --git a/awx/ui_next/src/components/LaunchPrompt/steps/CredentialsStep.jsx b/awx/ui_next/src/components/LaunchPrompt/steps/CredentialsStep.jsx index 5288e5f8cc..ccf6cc3178 100644 --- a/awx/ui_next/src/components/LaunchPrompt/steps/CredentialsStep.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/steps/CredentialsStep.jsx @@ -4,15 +4,15 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { useField } from 'formik'; import { ToolbarItem } from '@patternfly/react-core'; -import { CredentialsAPI, CredentialTypesAPI } from '@api'; -import AnsibleSelect from '@components/AnsibleSelect'; -import OptionsList from '@components/OptionsList'; -import ContentLoading from '@components/ContentLoading'; -import CredentialChip from '@components/CredentialChip'; -import ContentError from '@components/ContentError'; -import { getQSConfig, parseQueryString } from '@util/qs'; -import useRequest from '@util/useRequest'; -import { required } from '@util/validators'; +import { CredentialsAPI, CredentialTypesAPI } from '../../../api'; +import AnsibleSelect from '../../../components/AnsibleSelect'; +import OptionsList from '../../../components/OptionsList'; +import ContentLoading from '../../../components/ContentLoading'; +import CredentialChip from '../../../components/CredentialChip'; +import ContentError from '../../../components/ContentError'; +import { getQSConfig, parseQueryString } from '../../../util/qs'; +import useRequest from '../../../util/useRequest'; +import { required } from '../../../util/validators'; const QS_CONFIG = getQSConfig('credential', { page: 1, diff --git a/awx/ui_next/src/components/LaunchPrompt/steps/CredentialsStep.test.jsx b/awx/ui_next/src/components/LaunchPrompt/steps/CredentialsStep.test.jsx index 5038482125..af056990ce 100644 --- a/awx/ui_next/src/components/LaunchPrompt/steps/CredentialsStep.test.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/steps/CredentialsStep.test.jsx @@ -1,12 +1,12 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { Formik } from 'formik'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import CredentialsStep from './CredentialsStep'; -import { CredentialsAPI, CredentialTypesAPI } from '@api'; +import { CredentialsAPI, CredentialTypesAPI } from '../../api'; -jest.mock('@api/models/CredentialTypes'); -jest.mock('@api/models/Credentials'); +jest.mock('../../api/models/CredentialTypes'); +jest.mock('../../api/models/Credentials'); const types = [ { id: 1, kind: 'ssh', name: 'SSH' }, diff --git a/awx/ui_next/src/components/LaunchPrompt/steps/InventoryStep.jsx b/awx/ui_next/src/components/LaunchPrompt/steps/InventoryStep.jsx index d892e0c91b..535fdd19c8 100644 --- a/awx/ui_next/src/components/LaunchPrompt/steps/InventoryStep.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/steps/InventoryStep.jsx @@ -3,13 +3,13 @@ import { useHistory } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { useField } from 'formik'; -import { InventoriesAPI } from '@api'; -import { getQSConfig, parseQueryString } from '@util/qs'; -import useRequest from '@util/useRequest'; -import OptionsList from '@components/OptionsList'; -import ContentLoading from '@components/ContentLoading'; -import ContentError from '@components/ContentError'; -import { required } from '@util/validators'; +import { InventoriesAPI } from '../../../api'; +import { getQSConfig, parseQueryString } from '../../../util/qs'; +import useRequest from '../../../util/useRequest'; +import OptionsList from '../../../components/OptionsList'; +import ContentLoading from '../../../components/ContentLoading'; +import ContentError from '../../../components/ContentError'; +import { required } from '../../../util/validators'; const QS_CONFIG = getQSConfig('inventory', { page: 1, diff --git a/awx/ui_next/src/components/LaunchPrompt/steps/InventoryStep.test.jsx b/awx/ui_next/src/components/LaunchPrompt/steps/InventoryStep.test.jsx index 4bac24478c..260e48cae6 100644 --- a/awx/ui_next/src/components/LaunchPrompt/steps/InventoryStep.test.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/steps/InventoryStep.test.jsx @@ -1,11 +1,11 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { Formik } from 'formik'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import InventoryStep from './InventoryStep'; -import { InventoriesAPI } from '@api'; +import { InventoriesAPI } from '../../api'; -jest.mock('@api/models/Inventories'); +jest.mock('../../api/models/Inventories'); const inventories = [ { id: 1, name: 'inv one', url: '/inventories/1' }, diff --git a/awx/ui_next/src/components/LaunchPrompt/steps/OtherPromptsStep.jsx b/awx/ui_next/src/components/LaunchPrompt/steps/OtherPromptsStep.jsx index 0989368652..6705a4b576 100644 --- a/awx/ui_next/src/components/LaunchPrompt/steps/OtherPromptsStep.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/steps/OtherPromptsStep.jsx @@ -3,11 +3,11 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { useField } from 'formik'; import { Form, FormGroup, Switch } from '@patternfly/react-core'; -import FormField, { FieldTooltip } from '@components/FormField'; -import { TagMultiSelect } from '@components/MultiSelect'; -import AnsibleSelect from '@components/AnsibleSelect'; -import { VariablesField } from '@components/CodeMirrorInput'; import styled from 'styled-components'; +import FormField, { FieldTooltip } from '../FormField'; +import { TagMultiSelect } from '../MultiSelect'; +import AnsibleSelect from '../AnsibleSelect'; +import { VariablesField } from '../CodeMirrorInput'; const FieldHeader = styled.div` display: flex; diff --git a/awx/ui_next/src/components/LaunchPrompt/steps/OtherPromptsStep.test.jsx b/awx/ui_next/src/components/LaunchPrompt/steps/OtherPromptsStep.test.jsx index 58f0856131..76c87e8302 100644 --- a/awx/ui_next/src/components/LaunchPrompt/steps/OtherPromptsStep.test.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/steps/OtherPromptsStep.test.jsx @@ -1,7 +1,7 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { Formik } from 'formik'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import OtherPromptsStep from './OtherPromptsStep'; describe('OtherPromptsStep', () => { diff --git a/awx/ui_next/src/components/LaunchPrompt/steps/PreviewStep.jsx b/awx/ui_next/src/components/LaunchPrompt/steps/PreviewStep.jsx index e8df1ea8ff..2ab8b4f6f5 100644 --- a/awx/ui_next/src/components/LaunchPrompt/steps/PreviewStep.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/steps/PreviewStep.jsx @@ -1,7 +1,7 @@ import React from 'react'; import { useFormikContext } from 'formik'; import yaml from 'js-yaml'; -import PromptDetail from '@components/PromptDetail'; +import PromptDetail from '../../../components/PromptDetail'; import mergeExtraVars, { maskPasswords } from '../mergeExtraVars'; import getSurveyValues from '../getSurveyValues'; diff --git a/awx/ui_next/src/components/LaunchPrompt/steps/SurveyStep.jsx b/awx/ui_next/src/components/LaunchPrompt/steps/SurveyStep.jsx index ba33b8ec11..dd74c202a5 100644 --- a/awx/ui_next/src/components/LaunchPrompt/steps/SurveyStep.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/steps/SurveyStep.jsx @@ -8,8 +8,8 @@ import { SelectOption, SelectVariant, } from '@patternfly/react-core'; -import FormField, { FieldTooltip } from '@components/FormField'; -import AnsibleSelect from '@components/AnsibleSelect'; +import FormField, { FieldTooltip } from '../../../components/FormField'; +import AnsibleSelect from '../../../components/AnsibleSelect'; import { required, minMaxValue, @@ -17,8 +17,8 @@ import { minLength, integer, combine, -} from '@util/validators'; -import { Survey } from '@types'; +} from '../../../util/validators'; +import { Survey } from '../../../types'; function SurveyStep({ survey, i18n }) { const fieldTypes = { diff --git a/awx/ui_next/src/components/LaunchPrompt/steps/useSurveyStep.jsx b/awx/ui_next/src/components/LaunchPrompt/steps/useSurveyStep.jsx index 8b4014b251..7cee7f7f6d 100644 --- a/awx/ui_next/src/components/LaunchPrompt/steps/useSurveyStep.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/steps/useSurveyStep.jsx @@ -1,7 +1,7 @@ import React, { useState, useEffect, useCallback } from 'react'; import { t } from '@lingui/macro'; -import useRequest from '@util/useRequest'; -import { JobTemplatesAPI, WorkflowJobTemplatesAPI } from '@api'; +import useRequest from '../../../util/useRequest'; +import { JobTemplatesAPI, WorkflowJobTemplatesAPI } from '../../../api'; import SurveyStep from './SurveyStep'; import StepName from './StepName'; diff --git a/awx/ui_next/src/components/ListHeader/ListHeader.jsx b/awx/ui_next/src/components/ListHeader/ListHeader.jsx index 5575caf351..ebc745174d 100644 --- a/awx/ui_next/src/components/ListHeader/ListHeader.jsx +++ b/awx/ui_next/src/components/ListHeader/ListHeader.jsx @@ -6,7 +6,7 @@ import { DataToolbar, DataToolbarContent, } from '@patternfly/react-core/dist/umd/experimental'; -import DataListToolbar from '@components/DataListToolbar'; +import DataListToolbar from '../DataListToolbar'; import { encodeNonDefaultQueryString, @@ -14,8 +14,8 @@ import { mergeParams, replaceParams, removeParams, -} from '@util/qs'; -import { QSConfig, SearchColumns, SortColumns } from '@types'; +} from '../../util/qs'; +import { QSConfig, SearchColumns, SortColumns } from '../../types'; const EmptyStateControlsWrapper = styled.div` display: flex; diff --git a/awx/ui_next/src/components/ListHeader/ListHeader.test.jsx b/awx/ui_next/src/components/ListHeader/ListHeader.test.jsx index dc45932333..52263d2ec7 100644 --- a/awx/ui_next/src/components/ListHeader/ListHeader.test.jsx +++ b/awx/ui_next/src/components/ListHeader/ListHeader.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; import { createMemoryHistory } from 'history'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import ListHeader from './ListHeader'; describe('ListHeader', () => { diff --git a/awx/ui_next/src/components/Lookup/CredentialLookup.jsx b/awx/ui_next/src/components/Lookup/CredentialLookup.jsx index bb4629c697..5617ccb8ed 100644 --- a/awx/ui_next/src/components/Lookup/CredentialLookup.jsx +++ b/awx/ui_next/src/components/Lookup/CredentialLookup.jsx @@ -3,13 +3,13 @@ import { bool, func, node, number, string, oneOfType } from 'prop-types'; import { withRouter } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { CredentialsAPI } from '@api'; -import { Credential } from '@types'; -import { getQSConfig, parseQueryString, mergeParams } from '@util/qs'; -import { FieldTooltip } from '@components/FormField'; import { FormGroup } from '@patternfly/react-core'; -import Lookup from '@components/Lookup'; -import OptionsList from '@components/OptionsList'; +import { CredentialsAPI } from '../../api'; +import { Credential } from '../../types'; +import { getQSConfig, parseQueryString, mergeParams } from '../../util/qs'; +import { FieldTooltip } from '../FormField'; +import Lookup from '.'; +import OptionsList from '../OptionsList'; import LookupErrorMessage from './shared/LookupErrorMessage'; const QS_CONFIG = getQSConfig('credentials', { diff --git a/awx/ui_next/src/components/Lookup/CredentialLookup.test.jsx b/awx/ui_next/src/components/Lookup/CredentialLookup.test.jsx index 658229163e..6ef8bcb979 100644 --- a/awx/ui_next/src/components/Lookup/CredentialLookup.test.jsx +++ b/awx/ui_next/src/components/Lookup/CredentialLookup.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import CredentialLookup, { _CredentialLookup } from './CredentialLookup'; -import { CredentialsAPI } from '@api'; +import { CredentialsAPI } from '../../api'; -jest.mock('@api'); +jest.mock('../../api'); describe('CredentialLookup', () => { let wrapper; diff --git a/awx/ui_next/src/components/Lookup/InstanceGroupsLookup.jsx b/awx/ui_next/src/components/Lookup/InstanceGroupsLookup.jsx index d794ed252c..26d1760f57 100644 --- a/awx/ui_next/src/components/Lookup/InstanceGroupsLookup.jsx +++ b/awx/ui_next/src/components/Lookup/InstanceGroupsLookup.jsx @@ -4,10 +4,10 @@ import { withRouter } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { FormGroup } from '@patternfly/react-core'; -import { InstanceGroupsAPI } from '@api'; -import { getQSConfig, parseQueryString } from '@util/qs'; -import { FieldTooltip } from '@components/FormField'; -import OptionsList from '@components/OptionsList'; +import { InstanceGroupsAPI } from '../../api'; +import { getQSConfig, parseQueryString } from '../../util/qs'; +import { FieldTooltip } from '../FormField'; +import OptionsList from '../OptionsList'; import Lookup from './Lookup'; import LookupErrorMessage from './shared/LookupErrorMessage'; diff --git a/awx/ui_next/src/components/Lookup/InventoryLookup.jsx b/awx/ui_next/src/components/Lookup/InventoryLookup.jsx index 92815d943d..b47f2aa583 100644 --- a/awx/ui_next/src/components/Lookup/InventoryLookup.jsx +++ b/awx/ui_next/src/components/Lookup/InventoryLookup.jsx @@ -3,11 +3,11 @@ import { func, bool } from 'prop-types'; import { withRouter } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { InventoriesAPI } from '@api'; -import { Inventory } from '@types'; -import Lookup from '@components/Lookup'; -import OptionsList from '@components/OptionsList'; -import { getQSConfig, parseQueryString } from '@util/qs'; +import { InventoriesAPI } from '../../api'; +import { Inventory } from '../../types'; +import Lookup from '.'; +import OptionsList from '../OptionsList'; +import { getQSConfig, parseQueryString } from '../../util/qs'; import LookupErrorMessage from './shared/LookupErrorMessage'; const QS_CONFIG = getQSConfig('inventory', { diff --git a/awx/ui_next/src/components/Lookup/Lookup.jsx b/awx/ui_next/src/components/Lookup/Lookup.jsx index 6494a35426..1397e7b776 100644 --- a/awx/ui_next/src/components/Lookup/Lookup.jsx +++ b/awx/ui_next/src/components/Lookup/Lookup.jsx @@ -17,13 +17,13 @@ import { InputGroup as PFInputGroup, Modal, } from '@patternfly/react-core'; -import ChipGroup from '@components/ChipGroup'; +import ChipGroup from '../../components/ChipGroup'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import styled from 'styled-components'; import reducer, { initReducer } from './shared/reducer'; -import { QSConfig } from '@types'; +import { QSConfig } from '../../types'; const SearchButton = styled(Button)` ::after { diff --git a/awx/ui_next/src/components/Lookup/Lookup.test.jsx b/awx/ui_next/src/components/Lookup/Lookup.test.jsx index 143ba5a709..7fb1ed464c 100644 --- a/awx/ui_next/src/components/Lookup/Lookup.test.jsx +++ b/awx/ui_next/src/components/Lookup/Lookup.test.jsx @@ -1,8 +1,11 @@ /* eslint-disable react/jsx-pascal-case */ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; -import { getQSConfig } from '@util/qs'; +import { + mountWithContexts, + waitForElement, +} from '../../../testUtils/enzymeHelpers'; +import { getQSConfig } from '../../util/qs'; import Lookup from './Lookup'; /** diff --git a/awx/ui_next/src/components/Lookup/MultiCredentialsLookup.jsx b/awx/ui_next/src/components/Lookup/MultiCredentialsLookup.jsx index c153b1d610..5f1ffeea15 100644 --- a/awx/ui_next/src/components/Lookup/MultiCredentialsLookup.jsx +++ b/awx/ui_next/src/components/Lookup/MultiCredentialsLookup.jsx @@ -4,11 +4,11 @@ import PropTypes from 'prop-types'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { ToolbarItem, Alert } from '@patternfly/react-core'; -import { CredentialsAPI, CredentialTypesAPI } from '@api'; -import AnsibleSelect from '@components/AnsibleSelect'; -import CredentialChip from '@components/CredentialChip'; -import OptionsList from '@components/OptionsList'; -import { getQSConfig, parseQueryString } from '@util/qs'; +import { CredentialsAPI, CredentialTypesAPI } from '../../api'; +import AnsibleSelect from '../AnsibleSelect'; +import CredentialChip from '../CredentialChip'; +import OptionsList from '../OptionsList'; +import { getQSConfig, parseQueryString } from '../../util/qs'; import Lookup from './Lookup'; const QS_CONFIG = getQSConfig('credentials', { diff --git a/awx/ui_next/src/components/Lookup/MultiCredentialsLookup.test.jsx b/awx/ui_next/src/components/Lookup/MultiCredentialsLookup.test.jsx index 08fcf87b18..a73a6b4025 100644 --- a/awx/ui_next/src/components/Lookup/MultiCredentialsLookup.test.jsx +++ b/awx/ui_next/src/components/Lookup/MultiCredentialsLookup.test.jsx @@ -1,10 +1,13 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../testUtils/enzymeHelpers'; import MultiCredentialsLookup from './MultiCredentialsLookup'; -import { CredentialsAPI, CredentialTypesAPI } from '@api'; +import { CredentialsAPI, CredentialTypesAPI } from '../../api'; -jest.mock('@api'); +jest.mock('../../api'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/components/Lookup/OrganizationLookup.jsx b/awx/ui_next/src/components/Lookup/OrganizationLookup.jsx index bf5a77aa0a..1290bca495 100644 --- a/awx/ui_next/src/components/Lookup/OrganizationLookup.jsx +++ b/awx/ui_next/src/components/Lookup/OrganizationLookup.jsx @@ -3,11 +3,11 @@ import { node, func, bool } from 'prop-types'; import { withRouter } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { OrganizationsAPI } from '@api'; -import { Organization } from '@types'; import { FormGroup } from '@patternfly/react-core'; -import { getQSConfig, parseQueryString } from '@util/qs'; -import OptionsList from '@components/OptionsList'; +import { OrganizationsAPI } from '../../api'; +import { Organization } from '../../types'; +import { getQSConfig, parseQueryString } from '../../util/qs'; +import OptionsList from '../OptionsList'; import Lookup from './Lookup'; import LookupErrorMessage from './shared/LookupErrorMessage'; diff --git a/awx/ui_next/src/components/Lookup/OrganizationLookup.test.jsx b/awx/ui_next/src/components/Lookup/OrganizationLookup.test.jsx index 1470537e29..999f8cdb4f 100644 --- a/awx/ui_next/src/components/Lookup/OrganizationLookup.test.jsx +++ b/awx/ui_next/src/components/Lookup/OrganizationLookup.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import OrganizationLookup, { _OrganizationLookup } from './OrganizationLookup'; -import { OrganizationsAPI } from '@api'; +import { OrganizationsAPI } from '../../api'; -jest.mock('@api'); +jest.mock('../../api'); describe('OrganizationLookup', () => { let wrapper; diff --git a/awx/ui_next/src/components/Lookup/ProjectLookup.jsx b/awx/ui_next/src/components/Lookup/ProjectLookup.jsx index 18dda578e2..a45a5b3429 100644 --- a/awx/ui_next/src/components/Lookup/ProjectLookup.jsx +++ b/awx/ui_next/src/components/Lookup/ProjectLookup.jsx @@ -4,11 +4,11 @@ import { withRouter } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { FormGroup } from '@patternfly/react-core'; -import { ProjectsAPI } from '@api'; -import { Project } from '@types'; -import { FieldTooltip } from '@components/FormField'; -import OptionsList from '@components/OptionsList'; -import { getQSConfig, parseQueryString } from '@util/qs'; +import { ProjectsAPI } from '../../api'; +import { Project } from '../../types'; +import { FieldTooltip } from '../FormField'; +import OptionsList from '../OptionsList'; +import { getQSConfig, parseQueryString } from '../../util/qs'; import Lookup from './Lookup'; import LookupErrorMessage from './shared/LookupErrorMessage'; diff --git a/awx/ui_next/src/components/Lookup/ProjectLookup.test.jsx b/awx/ui_next/src/components/Lookup/ProjectLookup.test.jsx index 743067745e..b7be75a02e 100644 --- a/awx/ui_next/src/components/Lookup/ProjectLookup.test.jsx +++ b/awx/ui_next/src/components/Lookup/ProjectLookup.test.jsx @@ -1,11 +1,11 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import { sleep } from '@testUtils/testUtils'; -import { ProjectsAPI } from '@api'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; +import { sleep } from '../../../testUtils/testUtils'; +import { ProjectsAPI } from '../../api'; import ProjectLookup from './ProjectLookup'; -jest.mock('@api'); +jest.mock('../../api'); describe('', () => { test('should auto-select project when only one available', async () => { diff --git a/awx/ui_next/src/components/NotificationList/NotificationList.jsx b/awx/ui_next/src/components/NotificationList/NotificationList.jsx index 3d041dc507..0854c16f99 100644 --- a/awx/ui_next/src/components/NotificationList/NotificationList.jsx +++ b/awx/ui_next/src/components/NotificationList/NotificationList.jsx @@ -4,13 +4,13 @@ import { withRouter } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import AlertModal from '@components/AlertModal'; -import ErrorDetail from '@components/ErrorDetail'; -import NotificationListItem from '@components/NotificationList/NotificationListItem'; -import PaginatedDataList from '@components/PaginatedDataList'; -import { getQSConfig, parseQueryString } from '@util/qs'; +import AlertModal from '../AlertModal'; +import ErrorDetail from '../ErrorDetail'; +import NotificationListItem from './NotificationListItem'; +import PaginatedDataList from '../PaginatedDataList'; +import { getQSConfig, parseQueryString } from '../../util/qs'; -import { NotificationTemplatesAPI } from '@api'; +import { NotificationTemplatesAPI } from '../../api'; const QS_CONFIG = getQSConfig('notification', { page: 1, diff --git a/awx/ui_next/src/components/NotificationList/NotificationList.test.jsx b/awx/ui_next/src/components/NotificationList/NotificationList.test.jsx index b0485542a3..c03f2396ce 100644 --- a/awx/ui_next/src/components/NotificationList/NotificationList.test.jsx +++ b/awx/ui_next/src/components/NotificationList/NotificationList.test.jsx @@ -1,13 +1,13 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import { sleep } from '@testUtils/testUtils'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; +import { sleep } from '../../../testUtils/testUtils'; -import { NotificationTemplatesAPI } from '@api'; +import { NotificationTemplatesAPI } from '../../api'; import NotificationList from './NotificationList'; -jest.mock('@api'); +jest.mock('../../api'); describe('', () => { const data = { diff --git a/awx/ui_next/src/components/NotificationList/NotificationListItem.jsx b/awx/ui_next/src/components/NotificationList/NotificationListItem.jsx index 8abed19246..d42f536084 100644 --- a/awx/ui_next/src/components/NotificationList/NotificationListItem.jsx +++ b/awx/ui_next/src/components/NotificationList/NotificationListItem.jsx @@ -10,9 +10,8 @@ import { DataListItemRow, Switch, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; - import styled from 'styled-components'; +import DataListCell from '../DataListCell'; const DataListAction = styled(_DataListAction)` align-items: center; diff --git a/awx/ui_next/src/components/NotificationList/NotificationListItem.test.jsx b/awx/ui_next/src/components/NotificationList/NotificationListItem.test.jsx index 29b9bbd639..d954bb51b2 100644 --- a/awx/ui_next/src/components/NotificationList/NotificationListItem.test.jsx +++ b/awx/ui_next/src/components/NotificationList/NotificationListItem.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import NotificationListItem from './NotificationListItem'; describe('', () => { diff --git a/awx/ui_next/src/components/OptionsList/OptionsList.jsx b/awx/ui_next/src/components/OptionsList/OptionsList.jsx index e19e85a97c..ea106acbf8 100644 --- a/awx/ui_next/src/components/OptionsList/OptionsList.jsx +++ b/awx/ui_next/src/components/OptionsList/OptionsList.jsx @@ -15,7 +15,7 @@ import SelectedList from '../SelectedList'; import PaginatedDataList from '../PaginatedDataList'; import CheckboxListItem from '../CheckboxListItem'; import DataListToolbar from '../DataListToolbar'; -import { QSConfig, SearchColumns, SortColumns } from '@types'; +import { QSConfig, SearchColumns, SortColumns } from '../../types'; const ModalList = styled.div` .pf-c-data-toolbar__content { diff --git a/awx/ui_next/src/components/OptionsList/OptionsList.test.jsx b/awx/ui_next/src/components/OptionsList/OptionsList.test.jsx index 7d4574020e..34bfed560b 100644 --- a/awx/ui_next/src/components/OptionsList/OptionsList.test.jsx +++ b/awx/ui_next/src/components/OptionsList/OptionsList.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import { getQSConfig } from '@util/qs'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; +import { getQSConfig } from '../../util/qs'; import OptionsList from './OptionsList'; const qsConfig = getQSConfig('test', { order_by: 'foo' }); diff --git a/awx/ui_next/src/components/PageHeaderToolbar/PageHeaderToolbar.test.jsx b/awx/ui_next/src/components/PageHeaderToolbar/PageHeaderToolbar.test.jsx index 27e772891d..7c151d3dc5 100644 --- a/awx/ui_next/src/components/PageHeaderToolbar/PageHeaderToolbar.test.jsx +++ b/awx/ui_next/src/components/PageHeaderToolbar/PageHeaderToolbar.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import PageHeaderToolbar from './PageHeaderToolbar'; describe('PageHeaderToolbar', () => { diff --git a/awx/ui_next/src/components/PaginatedDataList/PaginatedDataList.jsx b/awx/ui_next/src/components/PaginatedDataList/PaginatedDataList.jsx index 3d42271c8c..e69775fd6f 100644 --- a/awx/ui_next/src/components/PaginatedDataList/PaginatedDataList.jsx +++ b/awx/ui_next/src/components/PaginatedDataList/PaginatedDataList.jsx @@ -5,20 +5,20 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { withRouter } from 'react-router-dom'; -import ListHeader from '@components/ListHeader'; -import ContentEmpty from '@components/ContentEmpty'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import Pagination from '@components/Pagination'; -import DataListToolbar from '@components/DataListToolbar'; +import ListHeader from '../ListHeader'; +import ContentEmpty from '../ContentEmpty'; +import ContentError from '../ContentError'; +import ContentLoading from '../ContentLoading'; +import Pagination from '../Pagination'; +import DataListToolbar from '../DataListToolbar'; import { encodeNonDefaultQueryString, parseQueryString, replaceParams, -} from '@util/qs'; +} from '../../util/qs'; -import { QSConfig, SearchColumns, SortColumns } from '@types'; +import { QSConfig, SearchColumns, SortColumns } from '../../types'; import PaginatedDataListItem from './PaginatedDataListItem'; diff --git a/awx/ui_next/src/components/PaginatedDataList/PaginatedDataList.test.jsx b/awx/ui_next/src/components/PaginatedDataList/PaginatedDataList.test.jsx index a3070ee78a..b3a60aa2da 100644 --- a/awx/ui_next/src/components/PaginatedDataList/PaginatedDataList.test.jsx +++ b/awx/ui_next/src/components/PaginatedDataList/PaginatedDataList.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; import { createMemoryHistory } from 'history'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import PaginatedDataList from './PaginatedDataList'; const mockData = [ diff --git a/awx/ui_next/src/components/PaginatedDataList/PaginatedDataListItem.jsx b/awx/ui_next/src/components/PaginatedDataList/PaginatedDataListItem.jsx index 810d07c0db..6db53493cb 100644 --- a/awx/ui_next/src/components/PaginatedDataList/PaginatedDataListItem.jsx +++ b/awx/ui_next/src/components/PaginatedDataList/PaginatedDataListItem.jsx @@ -6,8 +6,8 @@ import { DataListItemCells, TextContent, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; import styled from 'styled-components'; +import DataListCell from '../DataListCell'; const DetailWrapper = styled(TextContent)` display: grid; diff --git a/awx/ui_next/src/components/PaginatedDataList/ToolbarAddButton.test.jsx b/awx/ui_next/src/components/PaginatedDataList/ToolbarAddButton.test.jsx index 009baa3452..ad5bde5bd4 100644 --- a/awx/ui_next/src/components/PaginatedDataList/ToolbarAddButton.test.jsx +++ b/awx/ui_next/src/components/PaginatedDataList/ToolbarAddButton.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import ToolbarAddButton from './ToolbarAddButton'; describe('', () => { diff --git a/awx/ui_next/src/components/PaginatedDataList/ToolbarDeleteButton.test.jsx b/awx/ui_next/src/components/PaginatedDataList/ToolbarDeleteButton.test.jsx index 8383f4294f..843ffa5b4a 100644 --- a/awx/ui_next/src/components/PaginatedDataList/ToolbarDeleteButton.test.jsx +++ b/awx/ui_next/src/components/PaginatedDataList/ToolbarDeleteButton.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import ToolbarDeleteButton from './ToolbarDeleteButton'; const itemA = { diff --git a/awx/ui_next/src/components/Pagination/Pagination.test.jsx b/awx/ui_next/src/components/Pagination/Pagination.test.jsx index 2657464a75..20e3d3c482 100644 --- a/awx/ui_next/src/components/Pagination/Pagination.test.jsx +++ b/awx/ui_next/src/components/Pagination/Pagination.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import Pagination from './Pagination'; diff --git a/awx/ui_next/src/components/PromptDetail/PromptDetail.jsx b/awx/ui_next/src/components/PromptDetail/PromptDetail.jsx index 9e32e60ba2..aa6e1c76df 100644 --- a/awx/ui_next/src/components/PromptDetail/PromptDetail.jsx +++ b/awx/ui_next/src/components/PromptDetail/PromptDetail.jsx @@ -4,13 +4,13 @@ import { withI18n } from '@lingui/react'; import { t, Trans } from '@lingui/macro'; import { Link } from 'react-router-dom'; import styled from 'styled-components'; -import { toTitleCase } from '@util/strings'; +import { toTitleCase } from '../../util/strings'; import { Chip, Divider } from '@patternfly/react-core'; -import CredentialChip from '@components/CredentialChip'; -import ChipGroup from '@components/ChipGroup'; -import { DetailList, Detail, UserDateDetail } from '@components/DetailList'; -import { VariablesDetail } from '@components/CodeMirrorInput'; +import CredentialChip from '../../components/CredentialChip'; +import ChipGroup from '../../components/ChipGroup'; +import { DetailList, Detail, UserDateDetail } from '../../components/DetailList'; +import { VariablesDetail } from '../../components/CodeMirrorInput'; import PromptProjectDetail from './PromptProjectDetail'; import PromptInventorySourceDetail from './PromptInventorySourceDetail'; diff --git a/awx/ui_next/src/components/PromptDetail/PromptDetail.test.jsx b/awx/ui_next/src/components/PromptDetail/PromptDetail.test.jsx index ece4fe211d..52388e916a 100644 --- a/awx/ui_next/src/components/PromptDetail/PromptDetail.test.jsx +++ b/awx/ui_next/src/components/PromptDetail/PromptDetail.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import mockTemplate from './data.job_template.json'; import PromptDetail from './PromptDetail'; diff --git a/awx/ui_next/src/components/PromptDetail/PromptInventorySourceDetail.jsx b/awx/ui_next/src/components/PromptDetail/PromptInventorySourceDetail.jsx index 364646ec14..e4d61bf97c 100644 --- a/awx/ui_next/src/components/PromptDetail/PromptInventorySourceDetail.jsx +++ b/awx/ui_next/src/components/PromptDetail/PromptInventorySourceDetail.jsx @@ -4,10 +4,10 @@ import { t } from '@lingui/macro'; import { Link } from 'react-router-dom'; import { Chip, List, ListItem } from '@patternfly/react-core'; -import { Detail, DeletedDetail } from '@components/DetailList'; -import { VariablesDetail } from '@components/CodeMirrorInput'; -import CredentialChip from '@components/CredentialChip'; -import ChipGroup from '@components/ChipGroup'; +import { Detail, DeletedDetail } from '../../components/DetailList'; +import { VariablesDetail } from '../../components/CodeMirrorInput'; +import CredentialChip from '../../components/CredentialChip'; +import ChipGroup from '../../components/ChipGroup'; function PromptInventorySourceDetail({ i18n, resource }) { const { diff --git a/awx/ui_next/src/components/PromptDetail/PromptInventorySourceDetail.test.jsx b/awx/ui_next/src/components/PromptDetail/PromptInventorySourceDetail.test.jsx index 55558f1177..142ce6cf91 100644 --- a/awx/ui_next/src/components/PromptDetail/PromptInventorySourceDetail.test.jsx +++ b/awx/ui_next/src/components/PromptDetail/PromptInventorySourceDetail.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import PromptInventorySourceDetail from './PromptInventorySourceDetail'; import mockInvSource from './data.inventory_source.json'; diff --git a/awx/ui_next/src/components/PromptDetail/PromptJobTemplateDetail.jsx b/awx/ui_next/src/components/PromptDetail/PromptJobTemplateDetail.jsx index ffdf6c69ea..ce5ed6cc52 100644 --- a/awx/ui_next/src/components/PromptDetail/PromptJobTemplateDetail.jsx +++ b/awx/ui_next/src/components/PromptDetail/PromptJobTemplateDetail.jsx @@ -4,12 +4,12 @@ import { t } from '@lingui/macro'; import { Link } from 'react-router-dom'; import { Chip, List, ListItem } from '@patternfly/react-core'; -import CredentialChip from '@components/CredentialChip'; -import ChipGroup from '@components/ChipGroup'; -import Sparkline from '@components/Sparkline'; -import { Detail, DeletedDetail } from '@components/DetailList'; -import { VariablesDetail } from '@components/CodeMirrorInput'; -import { toTitleCase } from '@util/strings'; +import CredentialChip from '../../components/CredentialChip'; +import ChipGroup from '../../components/ChipGroup'; +import Sparkline from '../../components/Sparkline'; +import { Detail, DeletedDetail } from '../../components/DetailList'; +import { VariablesDetail } from '../../components/CodeMirrorInput'; +import { toTitleCase } from '../../util/strings'; function PromptJobTemplateDetail({ i18n, resource }) { const { diff --git a/awx/ui_next/src/components/PromptDetail/PromptJobTemplateDetail.test.jsx b/awx/ui_next/src/components/PromptDetail/PromptJobTemplateDetail.test.jsx index 7a536f4b73..cb35baafd5 100644 --- a/awx/ui_next/src/components/PromptDetail/PromptJobTemplateDetail.test.jsx +++ b/awx/ui_next/src/components/PromptDetail/PromptJobTemplateDetail.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import PromptJobTemplateDetail from './PromptJobTemplateDetail'; import mockData from './data.job_template.json'; diff --git a/awx/ui_next/src/components/PromptDetail/PromptProjectDetail.jsx b/awx/ui_next/src/components/PromptDetail/PromptProjectDetail.jsx index b783631d14..5c04b53d1a 100644 --- a/awx/ui_next/src/components/PromptDetail/PromptProjectDetail.jsx +++ b/awx/ui_next/src/components/PromptDetail/PromptProjectDetail.jsx @@ -1,13 +1,13 @@ import React from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { Config } from '@contexts/Config'; import { List, ListItem } from '@patternfly/react-core'; import { Link } from 'react-router-dom'; +import { Config } from '../../contexts/Config'; -import { Detail, DeletedDetail } from '@components/DetailList'; -import CredentialChip from '@components/CredentialChip'; -import { toTitleCase } from '@util/strings'; +import { Detail, DeletedDetail } from '../DetailList'; +import CredentialChip from '../CredentialChip'; +import { toTitleCase } from '../../util/strings'; function PromptProjectDetail({ i18n, resource }) { const { diff --git a/awx/ui_next/src/components/PromptDetail/PromptProjectDetail.test.jsx b/awx/ui_next/src/components/PromptDetail/PromptProjectDetail.test.jsx index 2dbf868754..de3ad6fc6e 100644 --- a/awx/ui_next/src/components/PromptDetail/PromptProjectDetail.test.jsx +++ b/awx/ui_next/src/components/PromptDetail/PromptProjectDetail.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import PromptProjectDetail from './PromptProjectDetail'; import mockProject from './data.project.json'; diff --git a/awx/ui_next/src/components/PromptDetail/PromptWFJobTemplateDetail.jsx b/awx/ui_next/src/components/PromptDetail/PromptWFJobTemplateDetail.jsx index 0f4cc60716..afa3c552e6 100644 --- a/awx/ui_next/src/components/PromptDetail/PromptWFJobTemplateDetail.jsx +++ b/awx/ui_next/src/components/PromptDetail/PromptWFJobTemplateDetail.jsx @@ -4,12 +4,12 @@ import { t } from '@lingui/macro'; import { Link } from 'react-router-dom'; import { Chip, List, ListItem } from '@patternfly/react-core'; -import CredentialChip from '@components/CredentialChip'; -import ChipGroup from '@components/ChipGroup'; -import { Detail } from '@components/DetailList'; -import { VariablesDetail } from '@components/CodeMirrorInput'; -import Sparkline from '@components/Sparkline'; -import { toTitleCase } from '@util/strings'; +import CredentialChip from '../../components/CredentialChip'; +import ChipGroup from '../../components/ChipGroup'; +import { Detail } from '../../components/DetailList'; +import { VariablesDetail } from '../../components/CodeMirrorInput'; +import Sparkline from '../../components/Sparkline'; +import { toTitleCase } from '../../util/strings'; function PromptWFJobTemplateDetail({ i18n, resource }) { const { diff --git a/awx/ui_next/src/components/PromptDetail/PromptWFJobTemplateDetail.test.jsx b/awx/ui_next/src/components/PromptDetail/PromptWFJobTemplateDetail.test.jsx index 952745fba9..dba9d90801 100644 --- a/awx/ui_next/src/components/PromptDetail/PromptWFJobTemplateDetail.test.jsx +++ b/awx/ui_next/src/components/PromptDetail/PromptWFJobTemplateDetail.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import PromptWFJobTemplateDetail from './PromptWFJobTemplateDetail'; import mockData from './data.workflow_template.json'; diff --git a/awx/ui_next/src/components/ResourceAccessList/DeleteRoleConfirmationModal.jsx b/awx/ui_next/src/components/ResourceAccessList/DeleteRoleConfirmationModal.jsx index 11b5e4a21f..8ac2f79bc4 100644 --- a/awx/ui_next/src/components/ResourceAccessList/DeleteRoleConfirmationModal.jsx +++ b/awx/ui_next/src/components/ResourceAccessList/DeleteRoleConfirmationModal.jsx @@ -4,8 +4,8 @@ import { Button } from '@patternfly/react-core'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import AlertModal from '@components/AlertModal'; -import { Role } from '@types'; +import AlertModal from '../AlertModal'; +import { Role } from '../../types'; class DeleteRoleConfirmationModal extends React.Component { static propTypes = { diff --git a/awx/ui_next/src/components/ResourceAccessList/DeleteRoleConfirmationModal.test.jsx b/awx/ui_next/src/components/ResourceAccessList/DeleteRoleConfirmationModal.test.jsx index e9c46b979e..5a737fd1b9 100644 --- a/awx/ui_next/src/components/ResourceAccessList/DeleteRoleConfirmationModal.test.jsx +++ b/awx/ui_next/src/components/ResourceAccessList/DeleteRoleConfirmationModal.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import DeleteRoleConfirmationModal from './DeleteRoleConfirmationModal'; diff --git a/awx/ui_next/src/components/ResourceAccessList/ResourceAccessList.jsx b/awx/ui_next/src/components/ResourceAccessList/ResourceAccessList.jsx index 6ba012bc9b..d16ebf2a5b 100644 --- a/awx/ui_next/src/components/ResourceAccessList/ResourceAccessList.jsx +++ b/awx/ui_next/src/components/ResourceAccessList/ResourceAccessList.jsx @@ -3,14 +3,16 @@ import { withRouter } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { TeamsAPI, UsersAPI } from '@api'; -import AddResourceRole from '@components/AddRole/AddResourceRole'; -import AlertModal from '@components/AlertModal'; -import DataListToolbar from '@components/DataListToolbar'; -import PaginatedDataList, { - ToolbarAddButton, -} from '@components/PaginatedDataList'; -import { getQSConfig, encodeQueryString, parseQueryString } from '@util/qs'; +import { TeamsAPI, UsersAPI } from '../../api'; +import AddResourceRole from '../AddRole/AddResourceRole'; +import AlertModal from '../AlertModal'; +import DataListToolbar from '../DataListToolbar'; +import PaginatedDataList, { ToolbarAddButton } from '../PaginatedDataList'; +import { + getQSConfig, + encodeQueryString, + parseQueryString, +} from '../../util/qs'; import DeleteRoleConfirmationModal from './DeleteRoleConfirmationModal'; import ResourceAccessListItem from './ResourceAccessListItem'; diff --git a/awx/ui_next/src/components/ResourceAccessList/ResourceAccessList.test.jsx b/awx/ui_next/src/components/ResourceAccessList/ResourceAccessList.test.jsx index 61dfa38723..be126a7ecc 100644 --- a/awx/ui_next/src/components/ResourceAccessList/ResourceAccessList.test.jsx +++ b/awx/ui_next/src/components/ResourceAccessList/ResourceAccessList.test.jsx @@ -1,13 +1,16 @@ import React from 'react'; -import { sleep } from '@testUtils/testUtils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { sleep } from '../../../testUtils/testUtils'; +import { + mountWithContexts, + waitForElement, +} from '../../../testUtils/enzymeHelpers'; -import { OrganizationsAPI, TeamsAPI, UsersAPI } from '@api'; +import { OrganizationsAPI, TeamsAPI, UsersAPI } from '../../api'; import ResourceAccessList from './ResourceAccessList'; -jest.mock('@api'); +jest.mock('../../api'); describe('', () => { const organization = { diff --git a/awx/ui_next/src/components/ResourceAccessList/ResourceAccessListItem.jsx b/awx/ui_next/src/components/ResourceAccessList/ResourceAccessListItem.jsx index 99ed696e0c..689b2c72ce 100644 --- a/awx/ui_next/src/components/ResourceAccessList/ResourceAccessListItem.jsx +++ b/awx/ui_next/src/components/ResourceAccessList/ResourceAccessListItem.jsx @@ -11,13 +11,13 @@ import { TextContent, TextVariants, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; import { Link } from 'react-router-dom'; import styled from 'styled-components'; +import DataListCell from '../DataListCell'; -import ChipGroup from '@components/ChipGroup'; -import { DetailList, Detail } from '@components/DetailList'; -import { AccessRecord } from '@types'; +import ChipGroup from '../../components/ChipGroup'; +import { DetailList, Detail } from '../../components/DetailList'; +import { AccessRecord } from '../../types'; const DataListItemCells = styled(PFDataListItemCells)` align-items: start; diff --git a/awx/ui_next/src/components/ResourceAccessList/ResourceAccessListItem.test.jsx b/awx/ui_next/src/components/ResourceAccessList/ResourceAccessListItem.test.jsx index 203564d0d0..9de6f49813 100644 --- a/awx/ui_next/src/components/ResourceAccessList/ResourceAccessListItem.test.jsx +++ b/awx/ui_next/src/components/ResourceAccessList/ResourceAccessListItem.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import ResourceAccessListItem from './ResourceAccessListItem'; diff --git a/awx/ui_next/src/components/Schedule/Schedule.jsx b/awx/ui_next/src/components/Schedule/Schedule.jsx index 9c3c741688..3a3a24def4 100644 --- a/awx/ui_next/src/components/Schedule/Schedule.jsx +++ b/awx/ui_next/src/components/Schedule/Schedule.jsx @@ -12,13 +12,13 @@ import { } from 'react-router-dom'; import { CardActions } from '@patternfly/react-core'; import { CaretLeftIcon } from '@patternfly/react-icons'; -import CardCloseButton from '@components/CardCloseButton'; -import RoutedTabs from '@components/RoutedTabs'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import { TabbedCardHeader } from '@components/Card'; -import { ScheduleDetail, ScheduleEdit } from '@components/Schedule'; -import { SchedulesAPI } from '@api'; +import CardCloseButton from '../CardCloseButton'; +import RoutedTabs from '../RoutedTabs'; +import ContentError from '../ContentError'; +import ContentLoading from '../ContentLoading'; +import { TabbedCardHeader } from '../Card'; +import { ScheduleDetail, ScheduleEdit } from '.'; +import { SchedulesAPI } from '../../api'; function Schedule({ i18n, setBreadcrumb, unifiedJobTemplate }) { const [schedule, setSchedule] = useState(null); diff --git a/awx/ui_next/src/components/Schedule/Schedule.test.jsx b/awx/ui_next/src/components/Schedule/Schedule.test.jsx index 3ed3c5b025..f0f58c0710 100644 --- a/awx/ui_next/src/components/Schedule/Schedule.test.jsx +++ b/awx/ui_next/src/components/Schedule/Schedule.test.jsx @@ -1,12 +1,15 @@ import React from 'react'; -import { SchedulesAPI } from '@api'; import { Route } from 'react-router-dom'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; +import { + mountWithContexts, + waitForElement, +} from '../../../testUtils/enzymeHelpers'; +import { SchedulesAPI } from '../../api'; import Schedule from './Schedule'; -jest.mock('@api/models/Schedules'); +jest.mock('../../api/models/Schedules'); SchedulesAPI.readDetail.mockResolvedValue({ data: { diff --git a/awx/ui_next/src/components/Schedule/ScheduleAdd/ScheduleAdd.jsx b/awx/ui_next/src/components/Schedule/ScheduleAdd/ScheduleAdd.jsx index 8e6d150ea0..7285e760a2 100644 --- a/awx/ui_next/src/components/Schedule/ScheduleAdd/ScheduleAdd.jsx +++ b/awx/ui_next/src/components/Schedule/ScheduleAdd/ScheduleAdd.jsx @@ -4,7 +4,7 @@ import { withI18n } from '@lingui/react'; import { useHistory, useLocation } from 'react-router-dom'; import { RRule } from 'rrule'; import { Card } from '@patternfly/react-core'; -import { CardBody } from '@components/Card'; +import { CardBody } from '../../Card'; import buildRuleObj from '../shared/buildRuleObj'; import ScheduleForm from '../shared/ScheduleForm'; diff --git a/awx/ui_next/src/components/Schedule/ScheduleAdd/ScheduleAdd.test.jsx b/awx/ui_next/src/components/Schedule/ScheduleAdd/ScheduleAdd.test.jsx index 0438a01497..176462f31e 100644 --- a/awx/ui_next/src/components/Schedule/ScheduleAdd/ScheduleAdd.test.jsx +++ b/awx/ui_next/src/components/Schedule/ScheduleAdd/ScheduleAdd.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; import { RRule } from 'rrule'; -import { SchedulesAPI } from '@api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; +import { SchedulesAPI } from '../../../api'; import ScheduleAdd from './ScheduleAdd'; -jest.mock('@api/models/Schedules'); +jest.mock('../../../api/models/Schedules'); SchedulesAPI.readZoneInfo.mockResolvedValue({ data: [ diff --git a/awx/ui_next/src/components/Schedule/ScheduleDetail/ScheduleDetail.jsx b/awx/ui_next/src/components/Schedule/ScheduleDetail/ScheduleDetail.jsx index 60394e21f8..8d398a86b4 100644 --- a/awx/ui_next/src/components/Schedule/ScheduleDetail/ScheduleDetail.jsx +++ b/awx/ui_next/src/components/Schedule/ScheduleDetail/ScheduleDetail.jsx @@ -4,21 +4,21 @@ import { RRule, rrulestr } from 'rrule'; import styled from 'styled-components'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { Schedule } from '@types'; +import { Schedule } from '../../../types'; import { Chip, Title, Button } from '@patternfly/react-core'; -import AlertModal from '@components/AlertModal'; -import { CardBody, CardActionsRow } from '@components/Card'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import CredentialChip from '@components/CredentialChip'; -import { DetailList, Detail, UserDateDetail } from '@components/DetailList'; -import { ScheduleOccurrences, ScheduleToggle } from '@components/Schedule'; -import { formatDateString } from '@util/dates'; -import useRequest from '@util/useRequest'; -import { SchedulesAPI } from '@api'; -import DeleteButton from '@components/DeleteButton'; -import ErrorDetail from '@components/ErrorDetail'; -import ChipGroup from '@components/ChipGroup'; +import AlertModal from '../../../components/AlertModal'; +import { CardBody, CardActionsRow } from '../../../components/Card'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; +import CredentialChip from '../../../components/CredentialChip'; +import { DetailList, Detail, UserDateDetail } from '../../../components/DetailList'; +import { ScheduleOccurrences, ScheduleToggle } from '../../../components/Schedule'; +import { formatDateString } from '../../../util/dates'; +import useRequest from '../../../util/useRequest'; +import { SchedulesAPI } from '../../../api'; +import DeleteButton from '../../../components/DeleteButton'; +import ErrorDetail from '../../../components/ErrorDetail'; +import ChipGroup from '../../../components/ChipGroup'; const PromptTitle = styled(Title)` --pf-c-title--m-md--FontWeight: 700; diff --git a/awx/ui_next/src/components/Schedule/ScheduleDetail/ScheduleDetail.test.jsx b/awx/ui_next/src/components/Schedule/ScheduleDetail/ScheduleDetail.test.jsx index e0893f150a..a1739e8c3a 100644 --- a/awx/ui_next/src/components/Schedule/ScheduleDetail/ScheduleDetail.test.jsx +++ b/awx/ui_next/src/components/Schedule/ScheduleDetail/ScheduleDetail.test.jsx @@ -1,12 +1,15 @@ import React from 'react'; -import { SchedulesAPI } from '@api'; import { Route } from 'react-router-dom'; import { createMemoryHistory } from 'history'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { SchedulesAPI } from '../../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import ScheduleDetail from './ScheduleDetail'; -jest.mock('@api/models/Schedules'); +jest.mock('../../../api/models/Schedules'); const schedule = { url: '/api/v2/schedules/1', diff --git a/awx/ui_next/src/components/Schedule/ScheduleEdit/ScheduleEdit.jsx b/awx/ui_next/src/components/Schedule/ScheduleEdit/ScheduleEdit.jsx index 3e12bd9a58..5887ef9afa 100644 --- a/awx/ui_next/src/components/Schedule/ScheduleEdit/ScheduleEdit.jsx +++ b/awx/ui_next/src/components/Schedule/ScheduleEdit/ScheduleEdit.jsx @@ -4,8 +4,8 @@ import { useHistory, useLocation } from 'react-router-dom'; import { RRule } from 'rrule'; import { shape } from 'prop-types'; import { Card } from '@patternfly/react-core'; -import { CardBody } from '@components/Card'; -import { SchedulesAPI } from '@api'; +import { CardBody } from '../../Card'; +import { SchedulesAPI } from '../../../api'; import buildRuleObj from '../shared/buildRuleObj'; import ScheduleForm from '../shared/ScheduleForm'; diff --git a/awx/ui_next/src/components/Schedule/ScheduleEdit/ScheduleEdit.test.jsx b/awx/ui_next/src/components/Schedule/ScheduleEdit/ScheduleEdit.test.jsx index 21c7b700b6..ed8b2c44e0 100644 --- a/awx/ui_next/src/components/Schedule/ScheduleEdit/ScheduleEdit.test.jsx +++ b/awx/ui_next/src/components/Schedule/ScheduleEdit/ScheduleEdit.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; import { RRule } from 'rrule'; -import { SchedulesAPI } from '@api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; +import { SchedulesAPI } from '../../../api'; import ScheduleEdit from './ScheduleEdit'; -jest.mock('@api/models/Schedules'); +jest.mock('../../../api/models/Schedules'); SchedulesAPI.readZoneInfo.mockResolvedValue({ data: [ diff --git a/awx/ui_next/src/components/Schedule/ScheduleList/ScheduleList.jsx b/awx/ui_next/src/components/Schedule/ScheduleList/ScheduleList.jsx index 999f28a6b9..16ce15c4b4 100644 --- a/awx/ui_next/src/components/Schedule/ScheduleList/ScheduleList.jsx +++ b/awx/ui_next/src/components/Schedule/ScheduleList/ScheduleList.jsx @@ -3,16 +3,16 @@ import { useLocation } from 'react-router-dom'; import { bool, func } from 'prop-types'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { SchedulesAPI } from '@api'; -import AlertModal from '@components/AlertModal'; -import ErrorDetail from '@components/ErrorDetail'; -import DataListToolbar from '@components/DataListToolbar'; +import { SchedulesAPI } from '../../../api'; +import AlertModal from '../../AlertModal'; +import ErrorDetail from '../../ErrorDetail'; +import DataListToolbar from '../../DataListToolbar'; import PaginatedDataList, { ToolbarAddButton, ToolbarDeleteButton, -} from '@components/PaginatedDataList'; -import useRequest, { useDeleteItems } from '@util/useRequest'; -import { getQSConfig, parseQueryString } from '@util/qs'; +} from '../../PaginatedDataList'; +import useRequest, { useDeleteItems } from '../../../util/useRequest'; +import { getQSConfig, parseQueryString } from '../../../util/qs'; import ScheduleListItem from './ScheduleListItem'; const QS_CONFIG = getQSConfig('schedule', { diff --git a/awx/ui_next/src/components/Schedule/ScheduleList/ScheduleList.test.jsx b/awx/ui_next/src/components/Schedule/ScheduleList/ScheduleList.test.jsx index 85ceffb759..55440d4a71 100644 --- a/awx/ui_next/src/components/Schedule/ScheduleList/ScheduleList.test.jsx +++ b/awx/ui_next/src/components/Schedule/ScheduleList/ScheduleList.test.jsx @@ -1,11 +1,11 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import { SchedulesAPI } from '@api'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; +import { SchedulesAPI } from '../../../api'; import ScheduleList from './ScheduleList'; import mockSchedules from '../data.schedules.json'; -jest.mock('@api/models/Schedules'); +jest.mock('../../../api/models/Schedules'); SchedulesAPI.destroy = jest.fn(); SchedulesAPI.update.mockResolvedValue({ diff --git a/awx/ui_next/src/components/Schedule/ScheduleList/ScheduleListItem.jsx b/awx/ui_next/src/components/Schedule/ScheduleList/ScheduleListItem.jsx index 9d7f34dc03..03198d9503 100644 --- a/awx/ui_next/src/components/Schedule/ScheduleList/ScheduleListItem.jsx +++ b/awx/ui_next/src/components/Schedule/ScheduleList/ScheduleListItem.jsx @@ -12,13 +12,13 @@ import { DataListItemCells, Tooltip, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; import { PencilAltIcon } from '@patternfly/react-icons'; -import { DetailList, Detail } from '@components/DetailList'; -import { ScheduleToggle } from '@components/Schedule'; import styled from 'styled-components'; -import { Schedule } from '@types'; -import { formatDateString } from '@util/dates'; +import DataListCell from '../../DataListCell'; +import { DetailList, Detail } from '../../DetailList'; +import { ScheduleToggle } from '..'; +import { Schedule } from '../../../types'; +import { formatDateString } from '../../../util/dates'; const DataListAction = styled(_DataListAction)` align-items: center; diff --git a/awx/ui_next/src/components/Schedule/ScheduleList/ScheduleListItem.test.jsx b/awx/ui_next/src/components/Schedule/ScheduleList/ScheduleListItem.test.jsx index 8e64b651a2..f9f7ae5d32 100644 --- a/awx/ui_next/src/components/Schedule/ScheduleList/ScheduleListItem.test.jsx +++ b/awx/ui_next/src/components/Schedule/ScheduleList/ScheduleListItem.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import ScheduleListItem from './ScheduleListItem'; const mockSchedule = { diff --git a/awx/ui_next/src/components/Schedule/ScheduleOccurrences/ScheduleOccurrences.jsx b/awx/ui_next/src/components/Schedule/ScheduleOccurrences/ScheduleOccurrences.jsx index 13e7835eec..e2ba223943 100644 --- a/awx/ui_next/src/components/Schedule/ScheduleOccurrences/ScheduleOccurrences.jsx +++ b/awx/ui_next/src/components/Schedule/ScheduleOccurrences/ScheduleOccurrences.jsx @@ -3,10 +3,10 @@ import { shape } from 'prop-types'; import styled from 'styled-components'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { formatDateString, formatDateStringUTC } from '@util/dates'; import { Split, SplitItem, TextListItemVariants } from '@patternfly/react-core'; -import { DetailName, DetailValue } from '@components/DetailList'; -import MultiButtonToggle from '@components/MultiButtonToggle'; +import { formatDateString, formatDateStringUTC } from '../../../util/dates'; +import { DetailName, DetailValue } from '../../DetailList'; +import MultiButtonToggle from '../../MultiButtonToggle'; const OccurrencesLabel = styled.div` display: inline-block; diff --git a/awx/ui_next/src/components/Schedule/ScheduleOccurrences/ScheduleOccurrences.test.jsx b/awx/ui_next/src/components/Schedule/ScheduleOccurrences/ScheduleOccurrences.test.jsx index 46cc795995..199cb3d1b0 100644 --- a/awx/ui_next/src/components/Schedule/ScheduleOccurrences/ScheduleOccurrences.test.jsx +++ b/awx/ui_next/src/components/Schedule/ScheduleOccurrences/ScheduleOccurrences.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import ScheduleOccurrences from './ScheduleOccurrences'; describe('', () => { diff --git a/awx/ui_next/src/components/Schedule/ScheduleToggle/ScheduleToggle.jsx b/awx/ui_next/src/components/Schedule/ScheduleToggle/ScheduleToggle.jsx index 699bb138ed..af72e12b38 100644 --- a/awx/ui_next/src/components/Schedule/ScheduleToggle/ScheduleToggle.jsx +++ b/awx/ui_next/src/components/Schedule/ScheduleToggle/ScheduleToggle.jsx @@ -2,10 +2,10 @@ import React, { Fragment, useState, useEffect, useCallback } from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Switch, Tooltip } from '@patternfly/react-core'; -import AlertModal from '@components/AlertModal'; -import ErrorDetail from '@components/ErrorDetail'; -import useRequest from '@util/useRequest'; -import { SchedulesAPI } from '@api'; +import AlertModal from '../../AlertModal'; +import ErrorDetail from '../../ErrorDetail'; +import useRequest from '../../../util/useRequest'; +import { SchedulesAPI } from '../../../api'; function ScheduleToggle({ schedule, onToggle, className, i18n }) { const [isEnabled, setIsEnabled] = useState(schedule.enabled); diff --git a/awx/ui_next/src/components/Schedule/ScheduleToggle/ScheduleToggle.test.jsx b/awx/ui_next/src/components/Schedule/ScheduleToggle/ScheduleToggle.test.jsx index 61828cfda9..205ba92679 100644 --- a/awx/ui_next/src/components/Schedule/ScheduleToggle/ScheduleToggle.test.jsx +++ b/awx/ui_next/src/components/Schedule/ScheduleToggle/ScheduleToggle.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { SchedulesAPI } from '@api'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { SchedulesAPI } from '../../../api'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import ScheduleToggle from './ScheduleToggle'; -jest.mock('@api'); +jest.mock('../../../api'); const mockSchedule = { url: '/api/v2/schedules/1', diff --git a/awx/ui_next/src/components/Schedule/Schedules.jsx b/awx/ui_next/src/components/Schedule/Schedules.jsx index a615fa89a9..3d818d8740 100644 --- a/awx/ui_next/src/components/Schedule/Schedules.jsx +++ b/awx/ui_next/src/components/Schedule/Schedules.jsx @@ -1,7 +1,7 @@ import React from 'react'; import { withI18n } from '@lingui/react'; import { Switch, Route, useRouteMatch } from 'react-router-dom'; -import { Schedule, ScheduleAdd, ScheduleList } from '@components/Schedule'; +import { Schedule, ScheduleAdd, ScheduleList } from '.'; function Schedules({ createSchedule, diff --git a/awx/ui_next/src/components/Schedule/Schedules.test.jsx b/awx/ui_next/src/components/Schedule/Schedules.test.jsx index 4589403c01..3efd1a7754 100644 --- a/awx/ui_next/src/components/Schedule/Schedules.test.jsx +++ b/awx/ui_next/src/components/Schedule/Schedules.test.jsx @@ -1,7 +1,7 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import Schedules from './Schedules'; describe('', () => { diff --git a/awx/ui_next/src/components/Schedule/shared/FrequencyDetailSubform.jsx b/awx/ui_next/src/components/Schedule/shared/FrequencyDetailSubform.jsx index c062258354..b350b50560 100644 --- a/awx/ui_next/src/components/Schedule/shared/FrequencyDetailSubform.jsx +++ b/awx/ui_next/src/components/Schedule/shared/FrequencyDetailSubform.jsx @@ -10,9 +10,9 @@ import { Radio, TextInput, } from '@patternfly/react-core'; -import AnsibleSelect from '@components/AnsibleSelect'; -import FormField from '@components/FormField'; -import { required } from '@util/validators'; +import AnsibleSelect from '../../AnsibleSelect'; +import FormField from '../../FormField'; +import { required } from '../../../util/validators'; const RunOnRadio = styled(Radio)` label { diff --git a/awx/ui_next/src/components/Schedule/shared/ScheduleForm.jsx b/awx/ui_next/src/components/Schedule/shared/ScheduleForm.jsx index ddb00ccbbf..795af0035a 100644 --- a/awx/ui_next/src/components/Schedule/shared/ScheduleForm.jsx +++ b/awx/ui_next/src/components/Schedule/shared/ScheduleForm.jsx @@ -4,18 +4,18 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Formik, useField } from 'formik'; import { RRule } from 'rrule'; -import { Config } from '@contexts/Config'; import { Form, FormGroup, Title } from '@patternfly/react-core'; -import { SchedulesAPI } from '@api'; -import AnsibleSelect from '@components/AnsibleSelect'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import FormActionGroup from '@components/FormActionGroup/FormActionGroup'; -import FormField, { FormSubmitError } from '@components/FormField'; -import { FormColumnLayout, SubFormLayout } from '@components/FormLayout'; -import { dateToInputDateTime, formatDateStringUTC } from '@util/dates'; -import useRequest from '@util/useRequest'; -import { required } from '@util/validators'; +import { Config } from '../../../contexts/Config'; +import { SchedulesAPI } from '../../../api'; +import AnsibleSelect from '../../AnsibleSelect'; +import ContentError from '../../ContentError'; +import ContentLoading from '../../ContentLoading'; +import FormActionGroup from '../../FormActionGroup/FormActionGroup'; +import FormField, { FormSubmitError } from '../../FormField'; +import { FormColumnLayout, SubFormLayout } from '../../FormLayout'; +import { dateToInputDateTime, formatDateStringUTC } from '../../../util/dates'; +import useRequest from '../../../util/useRequest'; +import { required } from '../../../util/validators'; import FrequencyDetailSubform from './FrequencyDetailSubform'; const generateRunOnTheDay = (days = []) => { diff --git a/awx/ui_next/src/components/Schedule/shared/ScheduleForm.test.jsx b/awx/ui_next/src/components/Schedule/shared/ScheduleForm.test.jsx index 45b802dd0f..771a129b9e 100644 --- a/awx/ui_next/src/components/Schedule/shared/ScheduleForm.test.jsx +++ b/awx/ui_next/src/components/Schedule/shared/ScheduleForm.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import { SchedulesAPI } from '@api'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; +import { SchedulesAPI } from '../../../api'; import ScheduleForm from './ScheduleForm'; -jest.mock('@api/models/Schedules'); +jest.mock('../../../api/models/Schedules'); const mockSchedule = { rrule: diff --git a/awx/ui_next/src/components/Schedule/shared/buildRuleObj.js b/awx/ui_next/src/components/Schedule/shared/buildRuleObj.js index 38828b60ab..701fc65080 100644 --- a/awx/ui_next/src/components/Schedule/shared/buildRuleObj.js +++ b/awx/ui_next/src/components/Schedule/shared/buildRuleObj.js @@ -1,6 +1,6 @@ import { t } from '@lingui/macro'; import { RRule } from 'rrule'; -import { getRRuleDayConstants } from '@util/dates'; +import { getRRuleDayConstants } from '../../../util/dates'; export default function buildRuleObj(values, i18n) { const [startDate, startTime] = values.startDateTime.split('T'); diff --git a/awx/ui_next/src/components/Search/Search.jsx b/awx/ui_next/src/components/Search/Search.jsx index d24bd1273c..05cbed85b1 100644 --- a/awx/ui_next/src/components/Search/Search.jsx +++ b/awx/ui_next/src/components/Search/Search.jsx @@ -22,9 +22,9 @@ import { DataToolbarFilter, } from '@patternfly/react-core/dist/umd/experimental'; import { SearchIcon } from '@patternfly/react-icons'; -import { parseQueryString } from '@util/qs'; -import { QSConfig, SearchColumns } from '@types'; import styled from 'styled-components'; +import { parseQueryString } from '../../util/qs'; +import { QSConfig, SearchColumns } from '../../types'; const NoOptionDropdown = styled.div` align-self: stretch; diff --git a/awx/ui_next/src/components/Search/Search.test.jsx b/awx/ui_next/src/components/Search/Search.test.jsx index bf4567320b..503fa9ec58 100644 --- a/awx/ui_next/src/components/Search/Search.test.jsx +++ b/awx/ui_next/src/components/Search/Search.test.jsx @@ -4,8 +4,8 @@ import { DataToolbarContent, } from '@patternfly/react-core/dist/umd/experimental'; import { createMemoryHistory } from 'history'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; import { act } from 'react-dom/test-utils'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import Search from './Search'; describe('', () => { diff --git a/awx/ui_next/src/components/SelectedList/SelectedList.jsx b/awx/ui_next/src/components/SelectedList/SelectedList.jsx index 870b7f334d..fd4624ba3c 100644 --- a/awx/ui_next/src/components/SelectedList/SelectedList.jsx +++ b/awx/ui_next/src/components/SelectedList/SelectedList.jsx @@ -2,7 +2,7 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import { Chip, Split as PFSplit, SplitItem } from '@patternfly/react-core'; -import ChipGroup from '@components/ChipGroup'; +import ChipGroup from '../../components/ChipGroup'; import styled from 'styled-components'; const Split = styled(PFSplit)` diff --git a/awx/ui_next/src/components/SelectedList/SelectedList.test.jsx b/awx/ui_next/src/components/SelectedList/SelectedList.test.jsx index e4c886c5cc..2540fe8b76 100644 --- a/awx/ui_next/src/components/SelectedList/SelectedList.test.jsx +++ b/awx/ui_next/src/components/SelectedList/SelectedList.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import ChipGroup from '@components/ChipGroup'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; +import ChipGroup from '../../components/ChipGroup'; import SelectedList from './SelectedList'; diff --git a/awx/ui_next/src/components/Sort/Sort.jsx b/awx/ui_next/src/components/Sort/Sort.jsx index 79e4eda02f..c90d120055 100644 --- a/awx/ui_next/src/components/Sort/Sort.jsx +++ b/awx/ui_next/src/components/Sort/Sort.jsx @@ -19,9 +19,9 @@ import { SortNumericDownAltIcon, } from '@patternfly/react-icons'; -import { parseQueryString } from '@util/qs'; -import { SortColumns, QSConfig } from '@types'; import styled from 'styled-components'; +import { parseQueryString } from '../../util/qs'; +import { SortColumns, QSConfig } from '../../types'; const NoOptionDropdown = styled.div` align-self: stretch; diff --git a/awx/ui_next/src/components/Sort/Sort.test.jsx b/awx/ui_next/src/components/Sort/Sort.test.jsx index ebd4b3696b..1764cf0298 100644 --- a/awx/ui_next/src/components/Sort/Sort.test.jsx +++ b/awx/ui_next/src/components/Sort/Sort.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import Sort from './Sort'; describe('', () => { diff --git a/awx/ui_next/src/components/Sparkline/Sparkline.jsx b/awx/ui_next/src/components/Sparkline/Sparkline.jsx index e4faa123df..b76dc0b30c 100644 --- a/awx/ui_next/src/components/Sparkline/Sparkline.jsx +++ b/awx/ui_next/src/components/Sparkline/Sparkline.jsx @@ -2,12 +2,12 @@ import React, { Fragment } from 'react'; import { arrayOf, object } from 'prop-types'; import { withI18n } from '@lingui/react'; import { Link as _Link } from 'react-router-dom'; -import StatusIcon from '@components/StatusIcon'; import { Tooltip } from '@patternfly/react-core'; import styled from 'styled-components'; import { t } from '@lingui/macro'; -import { formatDateString } from '@util/dates'; -import { JOB_TYPE_URL_SEGMENTS } from '@constants'; +import StatusIcon from '../StatusIcon'; +import { formatDateString } from '../../util/dates'; +import { JOB_TYPE_URL_SEGMENTS } from '../../constants'; /* eslint-disable react/jsx-pascal-case */ const Link = styled(props => <_Link {...props} />)` diff --git a/awx/ui_next/src/components/Sparkline/Sparkline.test.jsx b/awx/ui_next/src/components/Sparkline/Sparkline.test.jsx index 62e759226f..0d4d5579e9 100644 --- a/awx/ui_next/src/components/Sparkline/Sparkline.test.jsx +++ b/awx/ui_next/src/components/Sparkline/Sparkline.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; import { mount } from 'enzyme'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import Sparkline from './Sparkline'; diff --git a/awx/ui_next/src/components/Workflow/WorkflowLegend.jsx b/awx/ui_next/src/components/Workflow/WorkflowLegend.jsx index 79951d4bf7..c571d0c9b4 100644 --- a/awx/ui_next/src/components/Workflow/WorkflowLegend.jsx +++ b/awx/ui_next/src/components/Workflow/WorkflowLegend.jsx @@ -1,5 +1,4 @@ import React, { useContext } from 'react'; -import { WorkflowDispatchContext } from '@contexts/Workflow'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import styled from 'styled-components'; @@ -8,6 +7,7 @@ import { PauseIcon, TimesIcon, } from '@patternfly/react-icons'; +import { WorkflowDispatchContext } from '../../contexts/Workflow'; const Wrapper = styled.div` background-color: white; diff --git a/awx/ui_next/src/components/Workflow/WorkflowLegend.test.jsx b/awx/ui_next/src/components/Workflow/WorkflowLegend.test.jsx index 19b27bd1c6..86795ec06f 100644 --- a/awx/ui_next/src/components/Workflow/WorkflowLegend.test.jsx +++ b/awx/ui_next/src/components/Workflow/WorkflowLegend.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import WorkflowLegend from './WorkflowLegend'; describe('WorkflowLegend', () => { diff --git a/awx/ui_next/src/components/Workflow/WorkflowLinkHelp.test.jsx b/awx/ui_next/src/components/Workflow/WorkflowLinkHelp.test.jsx index 8bf8779243..d941c350f9 100644 --- a/awx/ui_next/src/components/Workflow/WorkflowLinkHelp.test.jsx +++ b/awx/ui_next/src/components/Workflow/WorkflowLinkHelp.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import WorkflowLinkHelp from './WorkflowLinkHelp'; describe('WorkflowLinkHelp', () => { diff --git a/awx/ui_next/src/components/Workflow/WorkflowNodeHelp.jsx b/awx/ui_next/src/components/Workflow/WorkflowNodeHelp.jsx index a888640f6a..9faa331f53 100644 --- a/awx/ui_next/src/components/Workflow/WorkflowNodeHelp.jsx +++ b/awx/ui_next/src/components/Workflow/WorkflowNodeHelp.jsx @@ -4,7 +4,7 @@ import { t, Trans } from '@lingui/macro'; import styled from 'styled-components'; import { ExclamationTriangleIcon } from '@patternfly/react-icons'; import { shape } from 'prop-types'; -import { secondsToHHMMSS } from '@util/dates'; +import { secondsToHHMMSS } from '../../util/dates'; const GridDL = styled.dl` column-gap: 15px; diff --git a/awx/ui_next/src/components/Workflow/WorkflowNodeHelp.test.jsx b/awx/ui_next/src/components/Workflow/WorkflowNodeHelp.test.jsx index 4c0c94858c..183119f5e3 100644 --- a/awx/ui_next/src/components/Workflow/WorkflowNodeHelp.test.jsx +++ b/awx/ui_next/src/components/Workflow/WorkflowNodeHelp.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import WorkflowNodeHelp from './WorkflowNodeHelp'; describe('WorkflowNodeHelp', () => { diff --git a/awx/ui_next/src/components/Workflow/WorkflowStartNode.jsx b/awx/ui_next/src/components/Workflow/WorkflowStartNode.jsx index a13e628518..e4eb70ea26 100644 --- a/awx/ui_next/src/components/Workflow/WorkflowStartNode.jsx +++ b/awx/ui_next/src/components/Workflow/WorkflowStartNode.jsx @@ -1,18 +1,15 @@ import React, { useContext, useRef, useState } from 'react'; -import { - WorkflowDispatchContext, - WorkflowStateContext, -} from '@contexts/Workflow'; import styled from 'styled-components'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { bool, func } from 'prop-types'; import { PlusIcon } from '@patternfly/react-icons'; -import { constants as wfConstants } from '@components/Workflow/WorkflowUtils'; import { - WorkflowActionTooltip, - WorkflowActionTooltipItem, -} from '@components/Workflow'; + WorkflowDispatchContext, + WorkflowStateContext, +} from '../../contexts/Workflow'; +import { constants as wfConstants } from './WorkflowUtils'; +import { WorkflowActionTooltip, WorkflowActionTooltipItem } from '.'; const StartG = styled.g` pointer-events: ${props => (props.ignorePointerEvents ? 'none' : 'auto')}; diff --git a/awx/ui_next/src/components/Workflow/WorkflowStartNode.test.jsx b/awx/ui_next/src/components/Workflow/WorkflowStartNode.test.jsx index 1079694012..5f5284e176 100644 --- a/awx/ui_next/src/components/Workflow/WorkflowStartNode.test.jsx +++ b/awx/ui_next/src/components/Workflow/WorkflowStartNode.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; import { mount } from 'enzyme'; -import { WorkflowStateContext } from '@contexts/Workflow'; +import { WorkflowStateContext } from '../../contexts/Workflow'; import WorkflowStartNode from './WorkflowStartNode'; const nodePositions = { diff --git a/awx/ui_next/src/components/Workflow/WorkflowTools.jsx b/awx/ui_next/src/components/Workflow/WorkflowTools.jsx index 1ff435f824..cb5c9df50f 100644 --- a/awx/ui_next/src/components/Workflow/WorkflowTools.jsx +++ b/awx/ui_next/src/components/Workflow/WorkflowTools.jsx @@ -1,5 +1,4 @@ import React, { useContext } from 'react'; -import { WorkflowDispatchContext } from '@contexts/Workflow'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import styled from 'styled-components'; @@ -16,6 +15,7 @@ import { PlusIcon, TimesIcon, } from '@patternfly/react-icons'; +import { WorkflowDispatchContext } from '../../contexts/Workflow'; const Wrapper = styled.div` background-color: white; diff --git a/awx/ui_next/src/components/Workflow/WorkflowTools.test.jsx b/awx/ui_next/src/components/Workflow/WorkflowTools.test.jsx index 7759495d4b..996956d276 100644 --- a/awx/ui_next/src/components/Workflow/WorkflowTools.test.jsx +++ b/awx/ui_next/src/components/Workflow/WorkflowTools.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import WorkflowTools from './WorkflowTools'; describe('WorkflowTools', () => { diff --git a/awx/ui_next/src/index.jsx b/awx/ui_next/src/index.jsx index f2abdbc1ff..779b12b772 100644 --- a/awx/ui_next/src/index.jsx +++ b/awx/ui_next/src/index.jsx @@ -6,33 +6,33 @@ import { t } from '@lingui/macro'; import '@patternfly/react-core/dist/styles/base.css'; -import { isAuthenticated } from '@util/auth'; -import Background from '@components/Background'; -import Applications from '@screens/Application'; -import Credentials from '@screens/Credential'; -import CredentialTypes from '@screens/CredentialType'; -import Dashboard from '@screens/Dashboard'; -import Hosts from '@screens/Host'; -import InstanceGroups from '@screens/InstanceGroup'; -import Inventory from '@screens/Inventory'; -import InventoryScripts from '@screens/InventoryScript'; -import { Jobs } from '@screens/Job'; -import Login from '@screens/Login'; -import ManagementJobs from '@screens/ManagementJob'; -import NotificationTemplates from '@screens/NotificationTemplate'; -import Organizations from '@screens/Organization'; -import Portal from '@screens/Portal'; -import Projects from '@screens/Project'; -import Schedules from '@screens/Schedule'; -import AuthSettings from '@screens/AuthSetting'; -import JobsSettings from '@screens/JobsSetting'; -import SystemSettings from '@screens/SystemSetting'; -import UISettings from '@screens/UISetting'; -import License from '@screens/License'; -import Teams from '@screens/Team'; -import Templates from '@screens/Template'; -import Users from '@screens/User'; -import NotFound from '@screens/NotFound'; +import { isAuthenticated } from './util/auth'; +import Background from './components/Background'; +import Applications from './screens/Application'; +import Credentials from './screens/Credential'; +import CredentialTypes from './screens/CredentialType'; +import Dashboard from './screens/Dashboard'; +import Hosts from './screens/Host'; +import InstanceGroups from './screens/InstanceGroup'; +import Inventory from './screens/Inventory'; +import InventoryScripts from './screens/InventoryScript'; +import { Jobs } from './screens/Job'; +import Login from './screens/Login'; +import ManagementJobs from './screens/ManagementJob'; +import NotificationTemplates from './screens/NotificationTemplate'; +import Organizations from './screens/Organization'; +import Portal from './screens/Portal'; +import Projects from './screens/Project'; +import Schedules from './screens/Schedule'; +import AuthSettings from './screens/AuthSetting'; +import JobsSettings from './screens/JobsSetting'; +import SystemSettings from './screens/SystemSetting'; +import UISettings from './screens/UISetting'; +import License from './screens/License'; +import Teams from './screens/Team'; +import Templates from './screens/Template'; +import Users from './screens/User'; +import NotFound from './screens/NotFound'; import App from './App'; import RootProvider from './RootProvider'; diff --git a/awx/ui_next/src/screens/Application/Applications.test.jsx b/awx/ui_next/src/screens/Application/Applications.test.jsx index 6426cffd5b..cb747a920b 100644 --- a/awx/ui_next/src/screens/Application/Applications.test.jsx +++ b/awx/ui_next/src/screens/Application/Applications.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import Applications from './Applications'; diff --git a/awx/ui_next/src/screens/AuthSetting/AuthSettings.test.jsx b/awx/ui_next/src/screens/AuthSetting/AuthSettings.test.jsx index 2ad6ce1926..0c0ca67b4b 100644 --- a/awx/ui_next/src/screens/AuthSetting/AuthSettings.test.jsx +++ b/awx/ui_next/src/screens/AuthSetting/AuthSettings.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import AuthSettings from './AuthSettings'; diff --git a/awx/ui_next/src/screens/Credential/Credential.jsx b/awx/ui_next/src/screens/Credential/Credential.jsx index 3e1d831ced..fd318bc07c 100644 --- a/awx/ui_next/src/screens/Credential/Credential.jsx +++ b/awx/ui_next/src/screens/Credential/Credential.jsx @@ -11,14 +11,14 @@ import { Redirect, Link, } from 'react-router-dom'; -import { TabbedCardHeader } from '@components/Card'; -import CardCloseButton from '@components/CardCloseButton'; -import { ResourceAccessList } from '@components/ResourceAccessList'; -import ContentError from '@components/ContentError'; -import RoutedTabs from '@components/RoutedTabs'; +import { TabbedCardHeader } from '../../components/Card'; +import CardCloseButton from '../../components/CardCloseButton'; +import { ResourceAccessList } from '../../components/ResourceAccessList'; +import ContentError from '../../components/ContentError'; +import RoutedTabs from '../../components/RoutedTabs'; import CredentialDetail from './CredentialDetail'; import CredentialEdit from './CredentialEdit'; -import { CredentialsAPI } from '@api'; +import { CredentialsAPI } from '../../api'; function Credential({ i18n, setBreadcrumb }) { const [credential, setCredential] = useState(null); diff --git a/awx/ui_next/src/screens/Credential/Credential.test.jsx b/awx/ui_next/src/screens/Credential/Credential.test.jsx index cb67df0b1b..36d4595bb0 100644 --- a/awx/ui_next/src/screens/Credential/Credential.test.jsx +++ b/awx/ui_next/src/screens/Credential/Credential.test.jsx @@ -1,13 +1,16 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { CredentialsAPI } from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { CredentialsAPI } from '../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../testUtils/enzymeHelpers'; import mockCredential from './shared/data.credential.json'; import mockOrgCredential from './shared/data.orgCredential.json'; import Credential from './Credential'; -jest.mock('@api'); +jest.mock('../../api'); jest.mock('react-router-dom', () => ({ ...jest.requireActual('react-router-dom'), useRouteMatch: () => ({ diff --git a/awx/ui_next/src/screens/Credential/CredentialAdd/CredentialAdd.jsx b/awx/ui_next/src/screens/Credential/CredentialAdd/CredentialAdd.jsx index cc0d89313f..092abd1e1c 100644 --- a/awx/ui_next/src/screens/Credential/CredentialAdd/CredentialAdd.jsx +++ b/awx/ui_next/src/screens/Credential/CredentialAdd/CredentialAdd.jsx @@ -1,11 +1,11 @@ import React, { useState, useEffect } from 'react'; import { useHistory } from 'react-router-dom'; import { PageSection, Card } from '@patternfly/react-core'; -import { CardBody } from '@components/Card'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; +import { CardBody } from '../../../components/Card'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; -import { CredentialTypesAPI, CredentialsAPI } from '@api'; +import { CredentialTypesAPI, CredentialsAPI } from '../../../api'; import CredentialForm from '../shared/CredentialForm'; function CredentialAdd({ me }) { diff --git a/awx/ui_next/src/screens/Credential/CredentialAdd/CredentialAdd.test.jsx b/awx/ui_next/src/screens/Credential/CredentialAdd/CredentialAdd.test.jsx index 5b623062fa..c348c6e252 100644 --- a/awx/ui_next/src/screens/Credential/CredentialAdd/CredentialAdd.test.jsx +++ b/awx/ui_next/src/screens/Credential/CredentialAdd/CredentialAdd.test.jsx @@ -1,13 +1,16 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; -import { sleep } from '@testUtils/testUtils'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; +import { sleep } from '../../../../testUtils/testUtils'; -import { CredentialsAPI, CredentialTypesAPI } from '@api'; +import { CredentialsAPI, CredentialTypesAPI } from '../../../api'; import CredentialAdd from './CredentialAdd'; -jest.mock('@api'); +jest.mock('../../../api'); CredentialTypesAPI.read.mockResolvedValue({ data: { diff --git a/awx/ui_next/src/screens/Credential/CredentialDetail/CredentialDetail.jsx b/awx/ui_next/src/screens/Credential/CredentialDetail/CredentialDetail.jsx index 520ca61263..18b01bd0f9 100644 --- a/awx/ui_next/src/screens/Credential/CredentialDetail/CredentialDetail.jsx +++ b/awx/ui_next/src/screens/Credential/CredentialDetail/CredentialDetail.jsx @@ -5,15 +5,19 @@ import { t } from '@lingui/macro'; import { shape } from 'prop-types'; import { Button, List, ListItem } from '@patternfly/react-core'; -import AlertModal from '@components/AlertModal'; -import { CardBody, CardActionsRow } from '@components/Card'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import DeleteButton from '@components/DeleteButton'; -import { DetailList, Detail, UserDateDetail } from '@components/DetailList'; -import ErrorDetail from '@components/ErrorDetail'; -import { CredentialsAPI, CredentialTypesAPI } from '@api'; -import { Credential } from '@types'; +import AlertModal from '../../../components/AlertModal'; +import { CardBody, CardActionsRow } from '../../../components/Card'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; +import DeleteButton from '../../../components/DeleteButton'; +import { + DetailList, + Detail, + UserDateDetail, +} from '../../../components/DetailList'; +import ErrorDetail from '../../../components/ErrorDetail'; +import { CredentialsAPI, CredentialTypesAPI } from '../../../api'; +import { Credential } from '../../../types'; function CredentialDetail({ i18n, credential }) { const { diff --git a/awx/ui_next/src/screens/Credential/CredentialDetail/CredentialDetail.test.jsx b/awx/ui_next/src/screens/Credential/CredentialDetail/CredentialDetail.test.jsx index 1411eb70fa..cfb00e331e 100644 --- a/awx/ui_next/src/screens/Credential/CredentialDetail/CredentialDetail.test.jsx +++ b/awx/ui_next/src/screens/Credential/CredentialDetail/CredentialDetail.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { CredentialsAPI, CredentialTypesAPI } from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { CredentialsAPI, CredentialTypesAPI } from '../../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import CredentialDetail from './CredentialDetail'; import { mockCredentials, mockCredentialType } from '../shared'; -jest.mock('@api'); +jest.mock('../../../api'); const mockCredential = mockCredentials.results[0]; diff --git a/awx/ui_next/src/screens/Credential/CredentialEdit/CredentialEdit.jsx b/awx/ui_next/src/screens/Credential/CredentialEdit/CredentialEdit.jsx index 175fd981e1..636431d3fd 100644 --- a/awx/ui_next/src/screens/Credential/CredentialEdit/CredentialEdit.jsx +++ b/awx/ui_next/src/screens/Credential/CredentialEdit/CredentialEdit.jsx @@ -2,10 +2,10 @@ import React, { useState, useEffect } from 'react'; import { useHistory } from 'react-router-dom'; import { object } from 'prop-types'; -import { CardBody } from '@components/Card'; -import { CredentialsAPI, CredentialTypesAPI } from '@api'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; +import { CardBody } from '../../../components/Card'; +import { CredentialsAPI, CredentialTypesAPI } from '../../../api'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; import CredentialForm from '../shared/CredentialForm'; function CredentialEdit({ credential, me }) { diff --git a/awx/ui_next/src/screens/Credential/CredentialEdit/CredentialEdit.test.jsx b/awx/ui_next/src/screens/Credential/CredentialEdit/CredentialEdit.test.jsx index e85e2e69ef..4b0ab68187 100644 --- a/awx/ui_next/src/screens/Credential/CredentialEdit/CredentialEdit.test.jsx +++ b/awx/ui_next/src/screens/Credential/CredentialEdit/CredentialEdit.test.jsx @@ -1,13 +1,16 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; -import { sleep } from '@testUtils/testUtils'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; +import { sleep } from '../../../../testUtils/testUtils'; -import { CredentialsAPI, CredentialTypesAPI } from '@api'; +import { CredentialsAPI, CredentialTypesAPI } from '../../../api'; import CredentialEdit from './CredentialEdit'; -jest.mock('@api'); +jest.mock('../../../api'); const mockCredential = { id: 3, diff --git a/awx/ui_next/src/screens/Credential/CredentialList/CredentialList.jsx b/awx/ui_next/src/screens/Credential/CredentialList/CredentialList.jsx index 56fda42cf2..063b5efd04 100644 --- a/awx/ui_next/src/screens/Credential/CredentialList/CredentialList.jsx +++ b/awx/ui_next/src/screens/Credential/CredentialList/CredentialList.jsx @@ -2,17 +2,17 @@ import React, { useState, useEffect, useCallback } from 'react'; import { useLocation } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { CredentialsAPI } from '@api'; import { Card, PageSection } from '@patternfly/react-core'; -import AlertModal from '@components/AlertModal'; -import ErrorDetail from '@components/ErrorDetail'; -import DataListToolbar from '@components/DataListToolbar'; +import { CredentialsAPI } from '../../../api'; +import AlertModal from '../../../components/AlertModal'; +import ErrorDetail from '../../../components/ErrorDetail'; +import DataListToolbar from '../../../components/DataListToolbar'; import PaginatedDataList, { ToolbarAddButton, ToolbarDeleteButton, -} from '@components/PaginatedDataList'; -import useRequest, { useDeleteItems } from '@util/useRequest'; -import { getQSConfig, parseQueryString } from '@util/qs'; +} from '../../../components/PaginatedDataList'; +import useRequest, { useDeleteItems } from '../../../util/useRequest'; +import { getQSConfig, parseQueryString } from '../../../util/qs'; import { CredentialListItem } from '.'; const QS_CONFIG = getQSConfig('credential', { diff --git a/awx/ui_next/src/screens/Credential/CredentialList/CredentialList.test.jsx b/awx/ui_next/src/screens/Credential/CredentialList/CredentialList.test.jsx index abb14da988..88c52ff228 100644 --- a/awx/ui_next/src/screens/Credential/CredentialList/CredentialList.test.jsx +++ b/awx/ui_next/src/screens/Credential/CredentialList/CredentialList.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { CredentialsAPI } from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { CredentialsAPI } from '../../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import { CredentialList } from '.'; import { mockCredentials } from '../shared'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/screens/Credential/CredentialList/CredentialListItem.jsx b/awx/ui_next/src/screens/Credential/CredentialList/CredentialListItem.jsx index dd96480f00..69f01d49d8 100644 --- a/awx/ui_next/src/screens/Credential/CredentialList/CredentialListItem.jsx +++ b/awx/ui_next/src/screens/Credential/CredentialList/CredentialListItem.jsx @@ -12,14 +12,14 @@ import { DataListItemCells, Tooltip, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; -import { timeOfDay } from '@util/dates'; - import { PencilAltIcon } from '@patternfly/react-icons'; -import { Credential } from '@types'; -import { CredentialsAPI } from '@api'; import styled from 'styled-components'; -import CopyButton from '@components/CopyButton'; +import DataListCell from '../../../components/DataListCell'; +import { timeOfDay } from '../../../util/dates'; + +import { Credential } from '../../../types'; +import { CredentialsAPI } from '../../../api'; +import CopyButton from '../../../components/CopyButton'; const DataListAction = styled(_DataListAction)` align-items: center; diff --git a/awx/ui_next/src/screens/Credential/CredentialList/CredentialListItem.test.jsx b/awx/ui_next/src/screens/Credential/CredentialList/CredentialListItem.test.jsx index 66e85007c0..fcfc085d2d 100644 --- a/awx/ui_next/src/screens/Credential/CredentialList/CredentialListItem.test.jsx +++ b/awx/ui_next/src/screens/Credential/CredentialList/CredentialListItem.test.jsx @@ -1,11 +1,11 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import { CredentialListItem } from '.'; import { act } from 'react-dom/test-utils'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; +import { CredentialListItem } from '.'; import { mockCredentials } from '../shared'; -import { CredentialsAPI } from '@api'; +import { CredentialsAPI } from '../../../api'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/screens/Credential/Credentials.jsx b/awx/ui_next/src/screens/Credential/Credentials.jsx index ce82540615..beca652fd5 100644 --- a/awx/ui_next/src/screens/Credential/Credentials.jsx +++ b/awx/ui_next/src/screens/Credential/Credentials.jsx @@ -2,8 +2,8 @@ import React, { useState, useCallback } from 'react'; import { Route, Switch } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { Config } from '@contexts/Config'; -import Breadcrumbs from '@components/Breadcrumbs'; +import { Config } from '../../contexts/Config'; +import Breadcrumbs from '../../components/Breadcrumbs'; import Credential from './Credential'; import CredentialAdd from './CredentialAdd'; import { CredentialList } from './CredentialList'; diff --git a/awx/ui_next/src/screens/Credential/Credentials.test.jsx b/awx/ui_next/src/screens/Credential/Credentials.test.jsx index b87815c9d8..f63c9d9b65 100644 --- a/awx/ui_next/src/screens/Credential/Credentials.test.jsx +++ b/awx/ui_next/src/screens/Credential/Credentials.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; import { createMemoryHistory } from 'history'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import Credentials from './Credentials'; describe('', () => { diff --git a/awx/ui_next/src/screens/Credential/shared/CredentialForm.jsx b/awx/ui_next/src/screens/Credential/shared/CredentialForm.jsx index 280630c815..ef8dc686b5 100644 --- a/awx/ui_next/src/screens/Credential/shared/CredentialForm.jsx +++ b/awx/ui_next/src/screens/Credential/shared/CredentialForm.jsx @@ -4,12 +4,15 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { func, shape } from 'prop-types'; import { Form, FormGroup, Title } from '@patternfly/react-core'; -import FormField, { FormSubmitError } from '@components/FormField'; -import FormActionGroup from '@components/FormActionGroup/FormActionGroup'; -import AnsibleSelect from '@components/AnsibleSelect'; -import { required } from '@util/validators'; -import OrganizationLookup from '@components/Lookup/OrganizationLookup'; -import { FormColumnLayout, SubFormLayout } from '@components/FormLayout'; +import FormField, { FormSubmitError } from '../../../components/FormField'; +import FormActionGroup from '../../../components/FormActionGroup/FormActionGroup'; +import AnsibleSelect from '../../../components/AnsibleSelect'; +import { required } from '../../../util/validators'; +import OrganizationLookup from '../../../components/Lookup/OrganizationLookup'; +import { + FormColumnLayout, + SubFormLayout, +} from '../../../components/FormLayout'; import { ManualSubForm, SourceControlSubForm } from './CredentialSubForms'; function CredentialFormFields({ diff --git a/awx/ui_next/src/screens/Credential/shared/CredentialForm.test.jsx b/awx/ui_next/src/screens/Credential/shared/CredentialForm.test.jsx index 11753919e0..de441f954a 100644 --- a/awx/ui_next/src/screens/Credential/shared/CredentialForm.test.jsx +++ b/awx/ui_next/src/screens/Credential/shared/CredentialForm.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import CredentialForm from './CredentialForm'; diff --git a/awx/ui_next/src/screens/Credential/shared/CredentialSubForms/ManualSubForm.jsx b/awx/ui_next/src/screens/Credential/shared/CredentialSubForms/ManualSubForm.jsx index 29f37547af..49517353f4 100644 --- a/awx/ui_next/src/screens/Credential/shared/CredentialSubForms/ManualSubForm.jsx +++ b/awx/ui_next/src/screens/Credential/shared/CredentialSubForms/ManualSubForm.jsx @@ -2,10 +2,13 @@ import React from 'react'; import { useField } from 'formik'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import FormField, { PasswordField } from '@components/FormField'; import { FormGroup } from '@patternfly/react-core'; -import AnsibleSelect from '@components/AnsibleSelect'; -import { FormColumnLayout, FormFullWidthLayout } from '@components/FormLayout'; +import FormField, { PasswordField } from '../../../../components/FormField'; +import AnsibleSelect from '../../../../components/AnsibleSelect'; +import { + FormColumnLayout, + FormFullWidthLayout, +} from '../../../../components/FormLayout'; import { UsernameFormField, PasswordFormField, diff --git a/awx/ui_next/src/screens/Credential/shared/CredentialSubForms/SharedFields.jsx b/awx/ui_next/src/screens/Credential/shared/CredentialSubForms/SharedFields.jsx index d6fcc37231..0073d30a1f 100644 --- a/awx/ui_next/src/screens/Credential/shared/CredentialSubForms/SharedFields.jsx +++ b/awx/ui_next/src/screens/Credential/shared/CredentialSubForms/SharedFields.jsx @@ -1,7 +1,7 @@ import React from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import FormField, { PasswordField } from '@components/FormField'; +import FormField, { PasswordField } from '../../../../components/FormField'; export const UsernameFormField = withI18n()(({ i18n }) => ( ({ ...jest.requireActual('react-router-dom'), useRouteMatch: () => ({ diff --git a/awx/ui_next/src/screens/Host/HostAdd/HostAdd.jsx b/awx/ui_next/src/screens/Host/HostAdd/HostAdd.jsx index e6de69f823..17055bcced 100644 --- a/awx/ui_next/src/screens/Host/HostAdd/HostAdd.jsx +++ b/awx/ui_next/src/screens/Host/HostAdd/HostAdd.jsx @@ -1,9 +1,9 @@ import React, { useState } from 'react'; import { useHistory } from 'react-router-dom'; -import { CardBody } from '@components/Card'; -import HostForm from '@components/HostForm'; -import { HostsAPI } from '@api'; import { PageSection, Card } from '@patternfly/react-core'; +import { CardBody } from '../../../components/Card'; +import HostForm from '../../../components/HostForm'; +import { HostsAPI } from '../../../api'; function HostAdd() { const [formError, setFormError] = useState(null); diff --git a/awx/ui_next/src/screens/Host/HostAdd/HostAdd.test.jsx b/awx/ui_next/src/screens/Host/HostAdd/HostAdd.test.jsx index f6a9362344..5c1b98a32e 100644 --- a/awx/ui_next/src/screens/Host/HostAdd/HostAdd.test.jsx +++ b/awx/ui_next/src/screens/Host/HostAdd/HostAdd.test.jsx @@ -1,11 +1,11 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import HostAdd from './HostAdd'; -import { HostsAPI } from '@api'; +import { HostsAPI } from '../../../api'; -jest.mock('@api'); +jest.mock('../../../api'); const hostData = { name: 'new name', diff --git a/awx/ui_next/src/screens/Host/HostDetail/HostDetail.jsx b/awx/ui_next/src/screens/Host/HostDetail/HostDetail.jsx index 41a2dec2a8..594799e553 100644 --- a/awx/ui_next/src/screens/Host/HostDetail/HostDetail.jsx +++ b/awx/ui_next/src/screens/Host/HostDetail/HostDetail.jsx @@ -2,17 +2,21 @@ import React, { useState } from 'react'; import { Link, useHistory } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { Host } from '@types'; import { Button } from '@patternfly/react-core'; -import { CardBody, CardActionsRow } from '@components/Card'; -import AlertModal from '@components/AlertModal'; -import ErrorDetail from '@components/ErrorDetail'; -import { DetailList, Detail, UserDateDetail } from '@components/DetailList'; -import { VariablesDetail } from '@components/CodeMirrorInput'; -import Sparkline from '@components/Sparkline'; -import DeleteButton from '@components/DeleteButton'; -import { HostsAPI } from '@api'; -import HostToggle from '@components/HostToggle'; +import { Host } from '../../../types'; +import { CardBody, CardActionsRow } from '../../../components/Card'; +import AlertModal from '../../../components/AlertModal'; +import ErrorDetail from '../../../components/ErrorDetail'; +import { + DetailList, + Detail, + UserDateDetail, +} from '../../../components/DetailList'; +import { VariablesDetail } from '../../../components/CodeMirrorInput'; +import Sparkline from '../../../components/Sparkline'; +import DeleteButton from '../../../components/DeleteButton'; +import { HostsAPI } from '../../../api'; +import HostToggle from '../../../components/HostToggle'; function HostDetail({ i18n, host }) { const { diff --git a/awx/ui_next/src/screens/Host/HostDetail/HostDetail.test.jsx b/awx/ui_next/src/screens/Host/HostDetail/HostDetail.test.jsx index d809bf1732..340207ab9c 100644 --- a/awx/ui_next/src/screens/Host/HostDetail/HostDetail.test.jsx +++ b/awx/ui_next/src/screens/Host/HostDetail/HostDetail.test.jsx @@ -1,12 +1,15 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import HostDetail from './HostDetail'; -import { HostsAPI } from '@api'; +import { HostsAPI } from '../../../api'; import mockHost from '../data.host.json'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/screens/Host/HostEdit/HostEdit.jsx b/awx/ui_next/src/screens/Host/HostEdit/HostEdit.jsx index bddb692b14..7d7ca290df 100644 --- a/awx/ui_next/src/screens/Host/HostEdit/HostEdit.jsx +++ b/awx/ui_next/src/screens/Host/HostEdit/HostEdit.jsx @@ -1,9 +1,9 @@ import React, { useState } from 'react'; import PropTypes from 'prop-types'; import { useHistory } from 'react-router-dom'; -import { CardBody } from '@components/Card'; -import HostForm from '@components/HostForm'; -import { HostsAPI } from '@api'; +import { CardBody } from '../../../components/Card'; +import HostForm from '../../../components/HostForm'; +import { HostsAPI } from '../../../api'; function HostEdit({ host }) { const [formError, setFormError] = useState(null); diff --git a/awx/ui_next/src/screens/Host/HostEdit/HostEdit.test.jsx b/awx/ui_next/src/screens/Host/HostEdit/HostEdit.test.jsx index 038ee90bbf..f9cb0a90af 100644 --- a/awx/ui_next/src/screens/Host/HostEdit/HostEdit.test.jsx +++ b/awx/ui_next/src/screens/Host/HostEdit/HostEdit.test.jsx @@ -1,12 +1,12 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { HostsAPI } from '@api'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { HostsAPI } from '../../../api'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import mockHost from '../data.host.json'; import HostEdit from './HostEdit'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/screens/Host/HostFacts/HostFacts.jsx b/awx/ui_next/src/screens/Host/HostFacts/HostFacts.jsx index ff336a4165..1a107ab28e 100644 --- a/awx/ui_next/src/screens/Host/HostFacts/HostFacts.jsx +++ b/awx/ui_next/src/screens/Host/HostFacts/HostFacts.jsx @@ -1,14 +1,14 @@ import React, { useCallback, useEffect } from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { Host } from '@types'; -import { CardBody } from '@components/Card'; -import { DetailList } from '@components/DetailList'; -import { VariablesDetail } from '@components/CodeMirrorInput'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import useRequest from '@util/useRequest'; -import { HostsAPI } from '@api'; +import { Host } from '../../../types'; +import { CardBody } from '../../../components/Card'; +import { DetailList } from '../../../components/DetailList'; +import { VariablesDetail } from '../../../components/CodeMirrorInput'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; +import useRequest from '../../../util/useRequest'; +import { HostsAPI } from '../../../api'; function HostFacts({ i18n, host }) { const { result: facts, isLoading, error, request: fetchFacts } = useRequest( diff --git a/awx/ui_next/src/screens/Host/HostFacts/HostFacts.test.jsx b/awx/ui_next/src/screens/Host/HostFacts/HostFacts.test.jsx index 3288c0cb93..038233c875 100644 --- a/awx/ui_next/src/screens/Host/HostFacts/HostFacts.test.jsx +++ b/awx/ui_next/src/screens/Host/HostFacts/HostFacts.test.jsx @@ -1,12 +1,15 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import HostFacts from './HostFacts'; -import { HostsAPI } from '@api'; +import { HostsAPI } from '../../../api'; import mockHost from '../data.host.json'; import mockHostFacts from '../data.hostFacts.json'; -jest.mock('@api/models/Hosts'); +jest.mock('../../../api/models/Hosts'); jest.mock('react-router-dom', () => ({ ...jest.requireActual('react-router-dom'), useParams: () => ({ diff --git a/awx/ui_next/src/screens/Host/HostGroups/HostGroupItem.jsx b/awx/ui_next/src/screens/Host/HostGroups/HostGroupItem.jsx index 35bb495e82..7df50c323f 100644 --- a/awx/ui_next/src/screens/Host/HostGroups/HostGroupItem.jsx +++ b/awx/ui_next/src/screens/Host/HostGroups/HostGroupItem.jsx @@ -2,7 +2,6 @@ import React from 'react'; import { bool, func, number, oneOfType, string } from 'prop-types'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { Group } from '@types'; import { Button, @@ -13,10 +12,11 @@ import { DataListItemRow, Tooltip, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; import { Link } from 'react-router-dom'; import { PencilAltIcon } from '@patternfly/react-icons'; +import DataListCell from '../../../components/DataListCell'; +import { Group } from '../../../types'; function HostGroupItem({ i18n, group, inventoryId, isSelected, onSelect }) { const labelId = `check-action-${group.id}`; diff --git a/awx/ui_next/src/screens/Host/HostGroups/HostGroupItem.test.jsx b/awx/ui_next/src/screens/Host/HostGroups/HostGroupItem.test.jsx index ede2d506f3..65946f4e08 100644 --- a/awx/ui_next/src/screens/Host/HostGroups/HostGroupItem.test.jsx +++ b/awx/ui_next/src/screens/Host/HostGroups/HostGroupItem.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import HostGroupItem from './HostGroupItem'; describe('', () => { diff --git a/awx/ui_next/src/screens/Host/HostGroups/HostGroups.test.jsx b/awx/ui_next/src/screens/Host/HostGroups/HostGroups.test.jsx index bc13293622..850a4965da 100644 --- a/awx/ui_next/src/screens/Host/HostGroups/HostGroups.test.jsx +++ b/awx/ui_next/src/screens/Host/HostGroups/HostGroups.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import HostGroups from './HostGroups'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { test('initially renders successfully', async () => { diff --git a/awx/ui_next/src/screens/Host/HostGroups/HostGroupsList.jsx b/awx/ui_next/src/screens/Host/HostGroups/HostGroupsList.jsx index aa813b24a3..9e8737912d 100644 --- a/awx/ui_next/src/screens/Host/HostGroups/HostGroupsList.jsx +++ b/awx/ui_next/src/screens/Host/HostGroups/HostGroupsList.jsx @@ -2,21 +2,21 @@ import React, { useState, useEffect, useCallback } from 'react'; import { useParams, useLocation } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { getQSConfig, parseQueryString, mergeParams } from '@util/qs'; +import { getQSConfig, parseQueryString, mergeParams } from '../../../util/qs'; import useRequest, { useDismissableError, useDeleteItems, -} from '@util/useRequest'; -import useSelected from '@util/useSelected'; -import { HostsAPI, InventoriesAPI } from '@api'; -import AlertModal from '@components/AlertModal'; -import ErrorDetail from '@components/ErrorDetail'; +} from '../../../util/useRequest'; +import useSelected from '../../../util/useSelected'; +import { HostsAPI, InventoriesAPI } from '../../../api'; +import AlertModal from '../../../components/AlertModal'; +import ErrorDetail from '../../../components/ErrorDetail'; import PaginatedDataList, { ToolbarAddButton, -} from '@components/PaginatedDataList'; -import AssociateModal from '@components/AssociateModal'; -import DisassociateButton from '@components/DisassociateButton'; -import DataListToolbar from '@components/DataListToolbar'; +} from '../../../components/PaginatedDataList'; +import AssociateModal from '../../../components/AssociateModal'; +import DisassociateButton from '../../../components/DisassociateButton'; +import DataListToolbar from '../../../components/DataListToolbar'; import HostGroupItem from './HostGroupItem'; const QS_CONFIG = getQSConfig('group', { diff --git a/awx/ui_next/src/screens/Host/HostGroups/HostGroupsList.test.jsx b/awx/ui_next/src/screens/Host/HostGroups/HostGroupsList.test.jsx index 82f3bf61ab..1b2984ed81 100644 --- a/awx/ui_next/src/screens/Host/HostGroups/HostGroupsList.test.jsx +++ b/awx/ui_next/src/screens/Host/HostGroups/HostGroupsList.test.jsx @@ -2,11 +2,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { Route } from 'react-router-dom'; import { createMemoryHistory } from 'history'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; -import { HostsAPI, InventoriesAPI } from '@api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; +import { HostsAPI, InventoriesAPI } from '../../../api'; import HostGroupsList from './HostGroupsList'; -jest.mock('@api'); +jest.mock('../../../api'); const host = { summary_fields: { diff --git a/awx/ui_next/src/screens/Host/HostList/HostList.jsx b/awx/ui_next/src/screens/Host/HostList/HostList.jsx index b183d402c5..3e65c49ce5 100644 --- a/awx/ui_next/src/screens/Host/HostList/HostList.jsx +++ b/awx/ui_next/src/screens/Host/HostList/HostList.jsx @@ -4,16 +4,16 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Card, PageSection } from '@patternfly/react-core'; -import { HostsAPI } from '@api'; -import AlertModal from '@components/AlertModal'; -import DataListToolbar from '@components/DataListToolbar'; -import ErrorDetail from '@components/ErrorDetail'; +import { HostsAPI } from '../../../api'; +import AlertModal from '../../../components/AlertModal'; +import DataListToolbar from '../../../components/DataListToolbar'; +import ErrorDetail from '../../../components/ErrorDetail'; import PaginatedDataList, { ToolbarAddButton, ToolbarDeleteButton, -} from '@components/PaginatedDataList'; -import useRequest, { useDeleteItems } from '@util/useRequest'; -import { getQSConfig, parseQueryString } from '@util/qs'; +} from '../../../components/PaginatedDataList'; +import useRequest, { useDeleteItems } from '../../../util/useRequest'; +import { getQSConfig, parseQueryString } from '../../../util/qs'; import HostListItem from './HostListItem'; diff --git a/awx/ui_next/src/screens/Host/HostList/HostList.test.jsx b/awx/ui_next/src/screens/Host/HostList/HostList.test.jsx index 89bc038deb..b65c98b67b 100644 --- a/awx/ui_next/src/screens/Host/HostList/HostList.test.jsx +++ b/awx/ui_next/src/screens/Host/HostList/HostList.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { HostsAPI } from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { HostsAPI } from '../../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import HostList from './HostList'; -jest.mock('@api'); +jest.mock('../../../api'); const mockHosts = [ { diff --git a/awx/ui_next/src/screens/Host/HostList/HostListItem.jsx b/awx/ui_next/src/screens/Host/HostList/HostListItem.jsx index fd2c6b0335..5482bb5f19 100644 --- a/awx/ui_next/src/screens/Host/HostList/HostListItem.jsx +++ b/awx/ui_next/src/screens/Host/HostList/HostListItem.jsx @@ -11,15 +11,14 @@ import { DataListItemCells, Tooltip, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; - import { Link } from 'react-router-dom'; import { PencilAltIcon } from '@patternfly/react-icons'; - -import Sparkline from '@components/Sparkline'; -import { Host } from '@types'; import styled from 'styled-components'; -import HostToggle from '@components/HostToggle'; +import DataListCell from '../../../components/DataListCell'; + +import Sparkline from '../../../components/Sparkline'; +import { Host } from '../../../types'; +import HostToggle from '../../../components/HostToggle'; const DataListAction = styled(_DataListAction)` align-items: center; diff --git a/awx/ui_next/src/screens/Host/HostList/HostListItem.test.jsx b/awx/ui_next/src/screens/Host/HostList/HostListItem.test.jsx index a241f319cb..aee5b91127 100644 --- a/awx/ui_next/src/screens/Host/HostList/HostListItem.test.jsx +++ b/awx/ui_next/src/screens/Host/HostList/HostListItem.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import HostsListItem from './HostListItem'; diff --git a/awx/ui_next/src/screens/Host/Hosts.jsx b/awx/ui_next/src/screens/Host/Hosts.jsx index b6ec6cd62d..f66a28aa94 100644 --- a/awx/ui_next/src/screens/Host/Hosts.jsx +++ b/awx/ui_next/src/screens/Host/Hosts.jsx @@ -3,8 +3,8 @@ import { Route, Switch } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { Config } from '@contexts/Config'; -import Breadcrumbs from '@components/Breadcrumbs/Breadcrumbs'; +import { Config } from '../../contexts/Config'; +import Breadcrumbs from '../../components/Breadcrumbs/Breadcrumbs'; import HostList from './HostList'; import HostAdd from './HostAdd'; diff --git a/awx/ui_next/src/screens/Host/Hosts.test.jsx b/awx/ui_next/src/screens/Host/Hosts.test.jsx index 7db85fbb84..ba199f842f 100644 --- a/awx/ui_next/src/screens/Host/Hosts.test.jsx +++ b/awx/ui_next/src/screens/Host/Hosts.test.jsx @@ -1,7 +1,7 @@ import React from 'react'; import { createMemoryHistory } from 'history'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import Hosts from './Hosts'; diff --git a/awx/ui_next/src/screens/InstanceGroup/InstanceGroups.test.jsx b/awx/ui_next/src/screens/InstanceGroup/InstanceGroups.test.jsx index 93d095688b..dfc33e37de 100644 --- a/awx/ui_next/src/screens/InstanceGroup/InstanceGroups.test.jsx +++ b/awx/ui_next/src/screens/InstanceGroup/InstanceGroups.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import InstanceGroups from './InstanceGroups'; diff --git a/awx/ui_next/src/screens/Inventory/Inventories.jsx b/awx/ui_next/src/screens/Inventory/Inventories.jsx index f4e9f8c6f3..d1a46ca8de 100644 --- a/awx/ui_next/src/screens/Inventory/Inventories.jsx +++ b/awx/ui_next/src/screens/Inventory/Inventories.jsx @@ -3,8 +3,8 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Route, withRouter, Switch } from 'react-router-dom'; -import { Config } from '@contexts/Config'; -import Breadcrumbs from '@components/Breadcrumbs/Breadcrumbs'; +import { Config } from '../../contexts/Config'; +import Breadcrumbs from '../../components/Breadcrumbs/Breadcrumbs'; import { InventoryList } from './InventoryList'; import Inventory from './Inventory'; import SmartInventory from './SmartInventory'; diff --git a/awx/ui_next/src/screens/Inventory/Inventories.test.jsx b/awx/ui_next/src/screens/Inventory/Inventories.test.jsx index 9b7579c043..ca452f877a 100644 --- a/awx/ui_next/src/screens/Inventory/Inventories.test.jsx +++ b/awx/ui_next/src/screens/Inventory/Inventories.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import Inventories from './Inventories'; diff --git a/awx/ui_next/src/screens/Inventory/Inventory.jsx b/awx/ui_next/src/screens/Inventory/Inventory.jsx index b062817ea9..8515029f4e 100644 --- a/awx/ui_next/src/screens/Inventory/Inventory.jsx +++ b/awx/ui_next/src/screens/Inventory/Inventory.jsx @@ -11,19 +11,19 @@ import { } from 'react-router-dom'; import { Card, CardActions, PageSection } from '@patternfly/react-core'; -import { TabbedCardHeader } from '@components/Card'; -import CardCloseButton from '@components/CardCloseButton'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import JobList from '@components/JobList'; -import RoutedTabs from '@components/RoutedTabs'; -import { ResourceAccessList } from '@components/ResourceAccessList'; +import { TabbedCardHeader } from '../../components/Card'; +import CardCloseButton from '../../components/CardCloseButton'; +import ContentError from '../../components/ContentError'; +import ContentLoading from '../../components/ContentLoading'; +import JobList from '../../components/JobList'; +import RoutedTabs from '../../components/RoutedTabs'; +import { ResourceAccessList } from '../../components/ResourceAccessList'; import InventoryDetail from './InventoryDetail'; import InventoryEdit from './InventoryEdit'; import InventoryGroups from './InventoryGroups'; import InventoryHosts from './InventoryHosts/InventoryHosts'; import InventorySources from './InventorySources'; -import { InventoriesAPI } from '@api'; +import { InventoriesAPI } from '../../api'; function Inventory({ i18n, setBreadcrumb }) { const [contentError, setContentError] = useState(null); diff --git a/awx/ui_next/src/screens/Inventory/Inventory.test.jsx b/awx/ui_next/src/screens/Inventory/Inventory.test.jsx index 2ec0aa040e..652ba4cf88 100644 --- a/awx/ui_next/src/screens/Inventory/Inventory.test.jsx +++ b/awx/ui_next/src/screens/Inventory/Inventory.test.jsx @@ -1,12 +1,15 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { InventoriesAPI } from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { InventoriesAPI } from '../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../testUtils/enzymeHelpers'; import mockInventory from './shared/data.inventory.json'; import Inventory from './Inventory'; -jest.mock('@api'); +jest.mock('../../api'); jest.mock('react-router-dom', () => ({ ...jest.requireActual('react-router-dom'), useRouteMatch: () => ({ diff --git a/awx/ui_next/src/screens/Inventory/InventoryAdd/InventoryAdd.jsx b/awx/ui_next/src/screens/Inventory/InventoryAdd/InventoryAdd.jsx index a0afa8520b..3f4a5b53db 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryAdd/InventoryAdd.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryAdd/InventoryAdd.jsx @@ -1,10 +1,10 @@ import React, { useState, useEffect } from 'react'; import { useHistory } from 'react-router-dom'; import { PageSection, Card } from '@patternfly/react-core'; -import { CardBody } from '@components/Card'; -import ContentLoading from '@components/ContentLoading'; +import { CardBody } from '../../../components/Card'; +import ContentLoading from '../../../components/ContentLoading'; -import { InventoriesAPI, CredentialTypesAPI } from '@api'; +import { InventoriesAPI, CredentialTypesAPI } from '../../../api'; import InventoryForm from '../shared/InventoryForm'; function InventoryAdd() { diff --git a/awx/ui_next/src/screens/Inventory/InventoryAdd/InventoryAdd.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryAdd/InventoryAdd.test.jsx index 26b0619a7d..07941c0997 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryAdd/InventoryAdd.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryAdd/InventoryAdd.test.jsx @@ -1,13 +1,16 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; -import { sleep } from '@testUtils/testUtils'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; +import { sleep } from '../../../../testUtils/testUtils'; -import { InventoriesAPI, CredentialTypesAPI } from '@api'; +import { InventoriesAPI, CredentialTypesAPI } from '../../../api'; import InventoryAdd from './InventoryAdd'; -jest.mock('@api'); +jest.mock('../../../api'); CredentialTypesAPI.read.mockResolvedValue({ data: { diff --git a/awx/ui_next/src/screens/Inventory/InventoryDetail/InventoryDetail.jsx b/awx/ui_next/src/screens/Inventory/InventoryDetail/InventoryDetail.jsx index 2bd0b8045c..e82d78fdb2 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryDetail/InventoryDetail.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryDetail/InventoryDetail.jsx @@ -3,15 +3,15 @@ import { Link, useHistory } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Button, Chip } from '@patternfly/react-core'; -import { CardBody, CardActionsRow } from '@components/Card'; -import { DetailList, Detail, UserDateDetail } from '@components/DetailList'; -import { VariablesDetail } from '@components/CodeMirrorInput'; -import DeleteButton from '@components/DeleteButton'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import ChipGroup from '@components/ChipGroup'; -import { InventoriesAPI } from '@api'; -import useRequest from '@util/useRequest'; +import { CardBody, CardActionsRow } from '../../../components/Card'; +import { DetailList, Detail, UserDateDetail } from '../../../components/DetailList'; +import { VariablesDetail } from '../../../components/CodeMirrorInput'; +import DeleteButton from '../../../components/DeleteButton'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; +import ChipGroup from '../../../components/ChipGroup'; +import { InventoriesAPI } from '../../../api'; +import useRequest from '../../../util/useRequest'; import { Inventory } from '../../../types'; function InventoryDetail({ inventory, i18n }) { diff --git a/awx/ui_next/src/screens/Inventory/InventoryDetail/InventoryDetail.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryDetail/InventoryDetail.test.jsx index 9fc42e70ce..1ceeca5ba9 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryDetail/InventoryDetail.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryDetail/InventoryDetail.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import { InventoriesAPI, CredentialTypesAPI } from '@api'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; +import { InventoriesAPI, CredentialTypesAPI } from '../../../api'; import InventoryDetail from './InventoryDetail'; -jest.mock('@api'); +jest.mock('../../../api'); const mockInventory = { id: 1, diff --git a/awx/ui_next/src/screens/Inventory/InventoryEdit/InventoryEdit.jsx b/awx/ui_next/src/screens/Inventory/InventoryEdit/InventoryEdit.jsx index cbc1b2126d..9e667a5ea6 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryEdit/InventoryEdit.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryEdit/InventoryEdit.jsx @@ -2,9 +2,9 @@ import React, { useState, useEffect, useRef } from 'react'; import { useHistory } from 'react-router-dom'; import { object } from 'prop-types'; -import { CardBody } from '@components/Card'; -import { InventoriesAPI, CredentialTypesAPI } from '@api'; -import ContentLoading from '@components/ContentLoading'; +import { CardBody } from '../../../components/Card'; +import { InventoriesAPI, CredentialTypesAPI } from '../../../api'; +import ContentLoading from '../../../components/ContentLoading'; import InventoryForm from '../shared/InventoryForm'; import { getAddedAndRemoved } from '../../../util/lists'; diff --git a/awx/ui_next/src/screens/Inventory/InventoryEdit/InventoryEdit.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryEdit/InventoryEdit.test.jsx index 5c312f98cc..67d2a6f249 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryEdit/InventoryEdit.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryEdit/InventoryEdit.test.jsx @@ -1,13 +1,16 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; -import { sleep } from '@testUtils/testUtils'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; +import { sleep } from '../../../../testUtils/testUtils'; -import { InventoriesAPI, CredentialTypesAPI } from '@api'; +import { InventoriesAPI, CredentialTypesAPI } from '../../../api'; import InventoryEdit from './InventoryEdit'; -jest.mock('@api'); +jest.mock('../../../api'); const mockInventory = { id: 1, diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroup/InventoryGroup.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroup/InventoryGroup.jsx index c05e53a675..28ac2daded 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroup/InventoryGroup.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroup/InventoryGroup.jsx @@ -12,16 +12,16 @@ import { } from 'react-router-dom'; import { CardActions } from '@patternfly/react-core'; import { CaretLeftIcon } from '@patternfly/react-icons'; -import CardCloseButton from '@components/CardCloseButton'; -import RoutedTabs from '@components/RoutedTabs'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import { TabbedCardHeader } from '@components/Card'; +import CardCloseButton from '../../../components/CardCloseButton'; +import RoutedTabs from '../../../components/RoutedTabs'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; +import { TabbedCardHeader } from '../../../components/Card'; import InventoryGroupEdit from '../InventoryGroupEdit/InventoryGroupEdit'; import InventoryGroupDetail from '../InventoryGroupDetail/InventoryGroupDetail'; import InventoryGroupHosts from '../InventoryGroupHosts'; -import { GroupsAPI } from '@api'; +import { GroupsAPI } from '../../../api'; function InventoryGroup({ i18n, setBreadcrumb, inventory }) { const [inventoryGroup, setInventoryGroup] = useState(null); diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroup/InventoryGroup.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroup/InventoryGroup.test.jsx index af9182d936..6087abd9ac 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroup/InventoryGroup.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroup/InventoryGroup.test.jsx @@ -1,13 +1,16 @@ import React from 'react'; -import { GroupsAPI } from '@api'; import { Route } from 'react-router-dom'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; +import { GroupsAPI } from '../../../api'; import InventoryGroup from './InventoryGroup'; -jest.mock('@api'); +jest.mock('../../../api'); jest.mock('react-router-dom', () => ({ ...jest.requireActual('react-router-dom'), useParams: () => ({ diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroupAdd/InventoryGroupAdd.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroupAdd/InventoryGroupAdd.jsx index ede9a5abf2..29bfb016dd 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroupAdd/InventoryGroupAdd.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroupAdd/InventoryGroupAdd.jsx @@ -1,8 +1,8 @@ import React, { useState } from 'react'; import { withI18n } from '@lingui/react'; import { useHistory, useParams } from 'react-router-dom'; -import { GroupsAPI } from '@api'; import { Card } from '@patternfly/react-core'; +import { GroupsAPI } from '../../../api'; import InventoryGroupForm from '../shared/InventoryGroupForm'; diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroupAdd/InventoryGroupAdd.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroupAdd/InventoryGroupAdd.test.jsx index f5ad16dabf..b3fbcdf16c 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroupAdd/InventoryGroupAdd.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroupAdd/InventoryGroupAdd.test.jsx @@ -1,14 +1,14 @@ import React from 'react'; import { Route } from 'react-router-dom'; -import { GroupsAPI } from '@api'; import { createMemoryHistory } from 'history'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { GroupsAPI } from '../../../api'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import InventoryGroupAdd from './InventoryGroupAdd'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroupDetail/InventoryGroupDetail.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroupDetail/InventoryGroupDetail.jsx index eaee439dfe..7b5355d201 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroupDetail/InventoryGroupDetail.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroupDetail/InventoryGroupDetail.jsx @@ -4,13 +4,17 @@ import { t } from '@lingui/macro'; import { Button } from '@patternfly/react-core'; import { withI18n } from '@lingui/react'; import { useHistory, useParams } from 'react-router-dom'; -import { VariablesDetail } from '@components/CodeMirrorInput'; -import { CardBody, CardActionsRow } from '@components/Card'; -import ErrorDetail from '@components/ErrorDetail'; -import AlertModal from '@components/AlertModal'; -import { DetailList, Detail, UserDateDetail } from '@components/DetailList'; +import { VariablesDetail } from '../../../components/CodeMirrorInput'; +import { CardBody, CardActionsRow } from '../../../components/Card'; +import ErrorDetail from '../../../components/ErrorDetail'; +import AlertModal from '../../../components/AlertModal'; +import { + DetailList, + Detail, + UserDateDetail, +} from '../../../components/DetailList'; import InventoryGroupsDeleteModal from '../shared/InventoryGroupsDeleteModal'; -import { GroupsAPI, InventoriesAPI } from '@api'; +import { GroupsAPI, InventoriesAPI } from '../../../api'; function InventoryGroupDetail({ i18n, inventoryGroup }) { const { diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroupDetail/InventoryGroupDetail.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroupDetail/InventoryGroupDetail.test.jsx index 427a30522f..fbe063783f 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroupDetail/InventoryGroupDetail.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroupDetail/InventoryGroupDetail.test.jsx @@ -1,12 +1,15 @@ import React from 'react'; -import { GroupsAPI } from '@api'; import { Route } from 'react-router-dom'; import { createMemoryHistory } from 'history'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { GroupsAPI } from '../../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import InventoryGroupDetail from './InventoryGroupDetail'; -jest.mock('@api'); +jest.mock('../../../api'); const inventoryGroup = { name: 'Foo', diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroupEdit/InventoryGroupEdit.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroupEdit/InventoryGroupEdit.jsx index aa1ddde74f..1e88b12795 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroupEdit/InventoryGroupEdit.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroupEdit/InventoryGroupEdit.jsx @@ -1,7 +1,7 @@ import React, { useState } from 'react'; import { withI18n } from '@lingui/react'; import { useParams, useHistory } from 'react-router-dom'; -import { GroupsAPI } from '@api'; +import { GroupsAPI } from '../../../api'; import InventoryGroupForm from '../shared/InventoryGroupForm'; diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroupEdit/InventoryGroupEdit.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroupEdit/InventoryGroupEdit.test.jsx index 4e0056d095..870a79de02 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroupEdit/InventoryGroupEdit.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroupEdit/InventoryGroupEdit.test.jsx @@ -1,13 +1,13 @@ import React from 'react'; import { Route } from 'react-router-dom'; -import { GroupsAPI } from '@api'; import { createMemoryHistory } from 'history'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { GroupsAPI } from '../../../api'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import InventoryGroupEdit from './InventoryGroupEdit'; -jest.mock('@api'); +jest.mock('../../../api'); GroupsAPI.readDetail.mockResolvedValue({ data: { name: 'Foo', diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroupHostAdd/InventoryGroupHostAdd.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroupHostAdd/InventoryGroupHostAdd.jsx index e8bfea7cd7..8f3df68a2c 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroupHostAdd/InventoryGroupHostAdd.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroupHostAdd/InventoryGroupHostAdd.jsx @@ -1,9 +1,9 @@ import React, { useState } from 'react'; import { useHistory } from 'react-router-dom'; -import { CardBody } from '@components/Card'; -import HostForm from '@components/HostForm'; +import { CardBody } from '../../../components/Card'; +import HostForm from '../../../components/HostForm'; -import { GroupsAPI } from '@api'; +import { GroupsAPI } from '../../../api'; function InventoryGroupHostAdd({ inventoryGroup }) { const [formError, setFormError] = useState(null); diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroupHostAdd/InventoryGroupHostAdd.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroupHostAdd/InventoryGroupHostAdd.test.jsx index 2b10e8c5a7..37f82cd2bd 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroupHostAdd/InventoryGroupHostAdd.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroupHostAdd/InventoryGroupHostAdd.test.jsx @@ -1,12 +1,12 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import InventoryGroupHostAdd from './InventoryGroupHostAdd'; import mockHost from '../shared/data.host.json'; -import { GroupsAPI } from '@api'; +import { GroupsAPI } from '../../../api'; -jest.mock('@api'); +jest.mock('../../../api'); GroupsAPI.createHost.mockResolvedValue({ data: { diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/AddHostDropdown.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/AddHostDropdown.test.jsx index c72e505ea2..8a7d2c11d4 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/AddHostDropdown.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/AddHostDropdown.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import AddHostDropdown from './AddHostDropdown'; describe('', () => { diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostList.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostList.jsx index 45107964f1..cdf8490ec4 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostList.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostList.jsx @@ -2,20 +2,20 @@ import React, { useEffect, useCallback, useState } from 'react'; import { useHistory, useLocation, useParams } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { getQSConfig, mergeParams, parseQueryString } from '@util/qs'; -import { GroupsAPI, InventoriesAPI } from '@api'; +import { getQSConfig, mergeParams, parseQueryString } from '../../../util/qs'; +import { GroupsAPI, InventoriesAPI } from '../../../api'; import useRequest, { useDeleteItems, useDismissableError, -} from '@util/useRequest'; -import useSelected from '@util/useSelected'; -import AlertModal from '@components/AlertModal'; -import DataListToolbar from '@components/DataListToolbar'; -import ErrorDetail from '@components/ErrorDetail'; -import PaginatedDataList from '@components/PaginatedDataList'; -import AssociateModal from '@components/AssociateModal'; -import DisassociateButton from '@components/DisassociateButton'; +} from '../../../util/useRequest'; +import useSelected from '../../../util/useSelected'; +import AlertModal from '../../../components/AlertModal'; +import DataListToolbar from '../../../components/DataListToolbar'; +import ErrorDetail from '../../../components/ErrorDetail'; +import PaginatedDataList from '../../../components/PaginatedDataList'; +import AssociateModal from '../../../components/AssociateModal'; +import DisassociateButton from '../../../components/DisassociateButton'; import InventoryGroupHostListItem from './InventoryGroupHostListItem'; import AddHostDropdown from './AddHostDropdown'; diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostList.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostList.test.jsx index f51c48bb2a..06b4d823e0 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostList.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostList.test.jsx @@ -1,13 +1,16 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { GroupsAPI, InventoriesAPI } from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { GroupsAPI, InventoriesAPI } from '../../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import InventoryGroupHostList from './InventoryGroupHostList'; import mockHosts from '../shared/data.hosts.json'; -jest.mock('@api/models/Groups'); -jest.mock('@api/models/Inventories'); +jest.mock('../../../api/models/Groups'); +jest.mock('../../../api/models/Inventories'); jest.mock('react-router-dom', () => ({ ...jest.requireActual('react-router-dom'), useParams: () => ({ diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostListItem.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostListItem.jsx index 974595214e..9f6f4a32a0 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostListItem.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostListItem.jsx @@ -13,13 +13,13 @@ import { DataListItemRow, Tooltip, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; - import { PencilAltIcon } from '@patternfly/react-icons'; -import HostToggle from '@components/HostToggle'; -import Sparkline from '@components/Sparkline'; -import { Host } from '@types'; import styled from 'styled-components'; +import DataListCell from '../../../components/DataListCell'; + +import HostToggle from '../../../components/HostToggle'; +import Sparkline from '../../../components/Sparkline'; +import { Host } from '../../../types'; const DataListAction = styled(_DataListAction)` align-items: center; diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostListItem.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostListItem.test.jsx index 830bd5540e..d16173868e 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostListItem.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostListItem.test.jsx @@ -1,9 +1,9 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import InventoryGroupHostListItem from './InventoryGroupHostListItem'; import mockHosts from '../shared/data.hosts.json'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHosts.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHosts.test.jsx index 0a4cecc19d..ee955fcbca 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHosts.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHosts.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import InventoryGroupHosts from './InventoryGroupHosts'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroups/InventoryGroupItem.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroups/InventoryGroupItem.jsx index 9ea542dad7..ae52ca6f4d 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroups/InventoryGroupItem.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroups/InventoryGroupItem.jsx @@ -2,7 +2,6 @@ import React from 'react'; import { bool, func, number, oneOfType, string } from 'prop-types'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { Group } from '@types'; import { Button, @@ -13,10 +12,11 @@ import { DataListItemRow, Tooltip, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; import { Link } from 'react-router-dom'; import { PencilAltIcon } from '@patternfly/react-icons'; +import DataListCell from '../../../components/DataListCell'; +import { Group } from '../../../types'; function InventoryGroupItem({ i18n, diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroups/InventoryGroupItem.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroups/InventoryGroupItem.test.jsx index fdf275c358..db0b2a0bd4 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroups/InventoryGroupItem.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroups/InventoryGroupItem.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import InventoryGroupItem from './InventoryGroupItem'; describe('', () => { diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroups/InventoryGroups.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroups/InventoryGroups.test.jsx index 935ef7bb04..97fff4596c 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroups/InventoryGroups.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroups/InventoryGroups.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import InventoryGroups from './InventoryGroups'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { test('initially renders successfully', async () => { diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroups/InventoryGroupsList.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroups/InventoryGroupsList.jsx index 92576a9573..0122fe8ae0 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroups/InventoryGroupsList.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroups/InventoryGroupsList.jsx @@ -2,15 +2,15 @@ import React, { useState, useEffect } from 'react'; import { useParams, useLocation } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { getQSConfig, parseQueryString } from '@util/qs'; -import { InventoriesAPI, GroupsAPI } from '@api'; import { Button, Tooltip } from '@patternfly/react-core'; -import AlertModal from '@components/AlertModal'; -import ErrorDetail from '@components/ErrorDetail'; -import DataListToolbar from '@components/DataListToolbar'; +import { getQSConfig, parseQueryString } from '../../../util/qs'; +import { InventoriesAPI, GroupsAPI } from '../../../api'; +import AlertModal from '../../../components/AlertModal'; +import ErrorDetail from '../../../components/ErrorDetail'; +import DataListToolbar from '../../../components/DataListToolbar'; import PaginatedDataList, { ToolbarAddButton, -} from '@components/PaginatedDataList'; +} from '../../../components/PaginatedDataList'; import InventoryGroupItem from './InventoryGroupItem'; import InventoryGroupsDeleteModal from '../shared/InventoryGroupsDeleteModal'; diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroups/InventoryGroupsList.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroups/InventoryGroupsList.test.jsx index a10cd22160..fbd02a9ad4 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroups/InventoryGroupsList.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroups/InventoryGroupsList.test.jsx @@ -2,11 +2,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { Route } from 'react-router-dom'; import { createMemoryHistory } from 'history'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; -import { InventoriesAPI, GroupsAPI } from '@api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; +import { InventoriesAPI, GroupsAPI } from '../../../api'; import InventoryGroupsList from './InventoryGroupsList'; -jest.mock('@api'); +jest.mock('../../../api'); const mockGroups = [ { diff --git a/awx/ui_next/src/screens/Inventory/InventoryHost/InventoryHost.jsx b/awx/ui_next/src/screens/Inventory/InventoryHost/InventoryHost.jsx index df994b33e6..ef674bc146 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHost/InventoryHost.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHost/InventoryHost.jsx @@ -9,17 +9,17 @@ import { useRouteMatch, useLocation, } from 'react-router-dom'; -import useRequest from '@util/useRequest'; - -import { InventoriesAPI } from '@api'; import { Card, CardActions } from '@patternfly/react-core'; import { CaretLeftIcon } from '@patternfly/react-icons'; -import { TabbedCardHeader } from '@components/Card'; -import CardCloseButton from '@components/CardCloseButton'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import RoutedTabs from '@components/RoutedTabs'; -import JobList from '@components/JobList'; +import useRequest from '../../../util/useRequest'; + +import { InventoriesAPI } from '../../../api'; +import { TabbedCardHeader } from '../../../components/Card'; +import CardCloseButton from '../../../components/CardCloseButton'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; +import RoutedTabs from '../../../components/RoutedTabs'; +import JobList from '../../../components/JobList'; import InventoryHostDetail from '../InventoryHostDetail'; import InventoryHostEdit from '../InventoryHostEdit'; import InventoryHostFacts from '../InventoryHostFacts'; diff --git a/awx/ui_next/src/screens/Inventory/InventoryHost/InventoryHost.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryHost/InventoryHost.test.jsx index 0d73f4d04a..a351efb25c 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHost/InventoryHost.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHost/InventoryHost.test.jsx @@ -1,12 +1,15 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { InventoriesAPI } from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { InventoriesAPI } from '../../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import mockHost from '../shared/data.host.json'; import InventoryHost from './InventoryHost'; -jest.mock('@api'); +jest.mock('../../../api'); jest.mock('react-router-dom', () => ({ ...jest.requireActual('react-router-dom'), useRouteMatch: () => ({ diff --git a/awx/ui_next/src/screens/Inventory/InventoryHostAdd/InventoryHostAdd.jsx b/awx/ui_next/src/screens/Inventory/InventoryHostAdd/InventoryHostAdd.jsx index 9afb38c90b..4fc1360f27 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHostAdd/InventoryHostAdd.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHostAdd/InventoryHostAdd.jsx @@ -1,9 +1,9 @@ import React, { useState } from 'react'; import { useHistory } from 'react-router-dom'; -import { CardBody } from '@components/Card'; -import HostForm from '@components/HostForm'; +import { CardBody } from '../../../components/Card'; +import HostForm from '../../../components/HostForm'; -import { HostsAPI } from '@api'; +import { HostsAPI } from '../../../api'; function InventoryHostAdd({ inventory }) { const [formError, setFormError] = useState(null); diff --git a/awx/ui_next/src/screens/Inventory/InventoryHostAdd/InventoryHostAdd.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryHostAdd/InventoryHostAdd.test.jsx index d17216ac10..df616dcc78 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHostAdd/InventoryHostAdd.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHostAdd/InventoryHostAdd.test.jsx @@ -1,12 +1,12 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import InventoryHostAdd from './InventoryHostAdd'; import mockHost from '../shared/data.host.json'; -import { HostsAPI } from '@api'; +import { HostsAPI } from '../../../api'; -jest.mock('@api'); +jest.mock('../../../api'); HostsAPI.create.mockResolvedValue({ data: { diff --git a/awx/ui_next/src/screens/Inventory/InventoryHostDetail/InventoryHostDetail.jsx b/awx/ui_next/src/screens/Inventory/InventoryHostDetail/InventoryHostDetail.jsx index cfa36e4e83..1034ec9551 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHostDetail/InventoryHostDetail.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHostDetail/InventoryHostDetail.jsx @@ -2,17 +2,21 @@ import React, { useState } from 'react'; import { Link, useHistory } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { Host } from '@types'; import { Button } from '@patternfly/react-core'; -import { CardBody, CardActionsRow } from '@components/Card'; -import AlertModal from '@components/AlertModal'; -import ErrorDetail from '@components/ErrorDetail'; -import { DetailList, Detail, UserDateDetail } from '@components/DetailList'; -import { VariablesDetail } from '@components/CodeMirrorInput'; -import Sparkline from '@components/Sparkline'; -import DeleteButton from '@components/DeleteButton'; -import { HostsAPI } from '@api'; -import HostToggle from '@components/HostToggle'; +import { Host } from '../../../types'; +import { CardBody, CardActionsRow } from '../../../components/Card'; +import AlertModal from '../../../components/AlertModal'; +import ErrorDetail from '../../../components/ErrorDetail'; +import { + DetailList, + Detail, + UserDateDetail, +} from '../../../components/DetailList'; +import { VariablesDetail } from '../../../components/CodeMirrorInput'; +import Sparkline from '../../../components/Sparkline'; +import DeleteButton from '../../../components/DeleteButton'; +import { HostsAPI } from '../../../api'; +import HostToggle from '../../../components/HostToggle'; function InventoryHostDetail({ i18n, host }) { const { diff --git a/awx/ui_next/src/screens/Inventory/InventoryHostDetail/InventoryHostDetail.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryHostDetail/InventoryHostDetail.test.jsx index 66735e19cb..11dad5add4 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHostDetail/InventoryHostDetail.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHostDetail/InventoryHostDetail.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import InventoryHostDetail from './InventoryHostDetail'; -import { HostsAPI } from '@api'; +import { HostsAPI } from '../../../api'; import mockHost from '../shared/data.host.json'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/screens/Inventory/InventoryHostEdit/InventoryHostEdit.jsx b/awx/ui_next/src/screens/Inventory/InventoryHostEdit/InventoryHostEdit.jsx index c7f0845bd4..33cd7dfce3 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHostEdit/InventoryHostEdit.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHostEdit/InventoryHostEdit.jsx @@ -1,10 +1,10 @@ import React, { useState } from 'react'; import PropTypes from 'prop-types'; import { useHistory } from 'react-router-dom'; -import { CardBody } from '@components/Card'; -import HostForm from '@components/HostForm'; +import { CardBody } from '../../../components/Card'; +import HostForm from '../../../components/HostForm'; -import { HostsAPI } from '@api'; +import { HostsAPI } from '../../../api'; function InventoryHostEdit({ host, inventory }) { const [formError, setFormError] = useState(null); diff --git a/awx/ui_next/src/screens/Inventory/InventoryHostEdit/InventoryHostEdit.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryHostEdit/InventoryHostEdit.test.jsx index f6a6ccb849..07988c575a 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHostEdit/InventoryHostEdit.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHostEdit/InventoryHostEdit.test.jsx @@ -1,12 +1,12 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { HostsAPI } from '@api'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { HostsAPI } from '../../../api'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import InventoryHostEdit from './InventoryHostEdit'; import mockHost from '../shared/data.host.json'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/screens/Inventory/InventoryHostFacts/InventoryHostFacts.jsx b/awx/ui_next/src/screens/Inventory/InventoryHostFacts/InventoryHostFacts.jsx index 8c10b00104..e0940a4531 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHostFacts/InventoryHostFacts.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHostFacts/InventoryHostFacts.jsx @@ -1,14 +1,14 @@ import React, { useCallback, useEffect } from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { Host } from '@types'; -import { CardBody } from '@components/Card'; -import { DetailList } from '@components/DetailList'; -import { VariablesDetail } from '@components/CodeMirrorInput'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import useRequest from '@util/useRequest'; -import { HostsAPI } from '@api'; +import { Host } from '../../../types'; +import { CardBody } from '../../../components/Card'; +import { DetailList } from '../../../components/DetailList'; +import { VariablesDetail } from '../../../components/CodeMirrorInput'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; +import useRequest from '../../../util/useRequest'; +import { HostsAPI } from '../../../api'; function InventoryHostFacts({ i18n, host }) { const { result: facts, isLoading, error, request: fetchFacts } = useRequest( diff --git a/awx/ui_next/src/screens/Inventory/InventoryHostFacts/InventoryHostFacts.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryHostFacts/InventoryHostFacts.test.jsx index 96b4c8ec27..50e0e75d06 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHostFacts/InventoryHostFacts.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHostFacts/InventoryHostFacts.test.jsx @@ -1,12 +1,15 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import InventoryHostFacts from './InventoryHostFacts'; -import { HostsAPI } from '@api'; +import { HostsAPI } from '../../../api'; import mockHost from '../shared/data.host.json'; import mockHostFacts from '../shared/data.hostFacts.json'; -jest.mock('@api/models/Hosts'); +jest.mock('../../../api/models/Hosts'); jest.mock('react-router-dom', () => ({ ...jest.requireActual('react-router-dom'), useParams: () => ({ diff --git a/awx/ui_next/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupItem.jsx b/awx/ui_next/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupItem.jsx index 66ca5d4aaf..1a8f14216a 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupItem.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupItem.jsx @@ -2,7 +2,6 @@ import React from 'react'; import { bool, func, number, oneOfType, string } from 'prop-types'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { Group } from '@types'; import { Button, @@ -13,10 +12,11 @@ import { DataListItemRow, Tooltip, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; import { Link } from 'react-router-dom'; import { PencilAltIcon } from '@patternfly/react-icons'; +import DataListCell from '../../../components/DataListCell'; +import { Group } from '../../../types'; function InventoryHostGroupItem({ i18n, diff --git a/awx/ui_next/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupItem.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupItem.test.jsx index 9a06f73336..6092de88c7 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupItem.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupItem.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import InventoryHostGroupItem from './InventoryHostGroupItem'; describe('', () => { diff --git a/awx/ui_next/src/screens/Inventory/InventoryHostGroups/InventoryHostGroups.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryHostGroups/InventoryHostGroups.test.jsx index fff99cddaf..6f90c82613 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHostGroups/InventoryHostGroups.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHostGroups/InventoryHostGroups.test.jsx @@ -1,11 +1,11 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { HostsAPI } from '@api'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; +import { HostsAPI } from '../../../api'; import InventoryHostGroups from './InventoryHostGroups'; -jest.mock('@api'); +jest.mock('../../../api'); HostsAPI.readAllGroups.mockResolvedValue({ data: { count: 1, diff --git a/awx/ui_next/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupsList.jsx b/awx/ui_next/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupsList.jsx index f4c8212e1e..7d38451bb6 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupsList.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupsList.jsx @@ -2,21 +2,21 @@ import React, { useState, useEffect, useCallback } from 'react'; import { useParams, useLocation } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { getQSConfig, parseQueryString, mergeParams } from '@util/qs'; +import { getQSConfig, parseQueryString, mergeParams } from '../../../util/qs'; import useRequest, { useDismissableError, useDeleteItems, -} from '@util/useRequest'; -import useSelected from '@util/useSelected'; -import { HostsAPI, InventoriesAPI } from '@api'; -import DataListToolbar from '@components/DataListToolbar'; -import AlertModal from '@components/AlertModal'; -import ErrorDetail from '@components/ErrorDetail'; +} from '../../../util/useRequest'; +import useSelected from '../../../util/useSelected'; +import { HostsAPI, InventoriesAPI } from '../../../api'; +import DataListToolbar from '../../../components/DataListToolbar'; +import AlertModal from '../../../components/AlertModal'; +import ErrorDetail from '../../../components/ErrorDetail'; import PaginatedDataList, { ToolbarAddButton, -} from '@components/PaginatedDataList'; -import AssociateModal from '@components/AssociateModal'; -import DisassociateButton from '@components/DisassociateButton'; +} from '../../../components/PaginatedDataList'; +import AssociateModal from '../../../components/AssociateModal'; +import DisassociateButton from '../../../components/DisassociateButton'; import InventoryHostGroupItem from './InventoryHostGroupItem'; const QS_CONFIG = getQSConfig('group', { diff --git a/awx/ui_next/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupsList.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupsList.test.jsx index c20be91121..1b72f73bd1 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupsList.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHostGroups/InventoryHostGroupsList.test.jsx @@ -2,11 +2,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { Route } from 'react-router-dom'; import { createMemoryHistory } from 'history'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; -import { HostsAPI, InventoriesAPI } from '@api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; +import { HostsAPI, InventoriesAPI } from '../../../api'; import InventoryHostGroupsList from './InventoryHostGroupsList'; -jest.mock('@api'); +jest.mock('../../../api'); const mockGroups = [ { diff --git a/awx/ui_next/src/screens/Inventory/InventoryHosts/InventoryHostItem.jsx b/awx/ui_next/src/screens/Inventory/InventoryHosts/InventoryHostItem.jsx index 96ce10bbdb..61d2c493cb 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHosts/InventoryHostItem.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHosts/InventoryHostItem.jsx @@ -11,14 +11,14 @@ import { DataListItemRow, Tooltip, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; - import { Link } from 'react-router-dom'; import { PencilAltIcon } from '@patternfly/react-icons'; -import HostToggle from '@components/HostToggle'; -import Sparkline from '@components/Sparkline'; -import { Host } from '@types'; import styled from 'styled-components'; +import DataListCell from '../../../components/DataListCell'; + +import HostToggle from '../../../components/HostToggle'; +import Sparkline from '../../../components/Sparkline'; +import { Host } from '../../../types'; const DataListAction = styled(_DataListAction)` align-items: center; diff --git a/awx/ui_next/src/screens/Inventory/InventoryHosts/InventoryHostItem.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryHosts/InventoryHostItem.test.jsx index 8a1af7a6ba..a135aae9e6 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHosts/InventoryHostItem.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHosts/InventoryHostItem.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import InventoryHostItem from './InventoryHostItem'; const mockHost = { diff --git a/awx/ui_next/src/screens/Inventory/InventoryHosts/InventoryHostList.jsx b/awx/ui_next/src/screens/Inventory/InventoryHosts/InventoryHostList.jsx index 3b82d513a5..6e0168330d 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHosts/InventoryHostList.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHosts/InventoryHostList.jsx @@ -2,16 +2,16 @@ import React, { useEffect, useState } from 'react'; import { useParams, useLocation } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { getQSConfig, parseQueryString } from '@util/qs'; -import { InventoriesAPI, HostsAPI } from '@api'; +import { getQSConfig, parseQueryString } from '../../../util/qs'; +import { InventoriesAPI, HostsAPI } from '../../../api'; -import AlertModal from '@components/AlertModal'; -import DataListToolbar from '@components/DataListToolbar'; -import ErrorDetail from '@components/ErrorDetail'; +import AlertModal from '../../../components/AlertModal'; +import DataListToolbar from '../../../components/DataListToolbar'; +import ErrorDetail from '../../../components/ErrorDetail'; import PaginatedDataList, { ToolbarAddButton, ToolbarDeleteButton, -} from '@components/PaginatedDataList'; +} from '../../../components/PaginatedDataList'; import InventoryHostItem from './InventoryHostItem'; const QS_CONFIG = getQSConfig('host', { diff --git a/awx/ui_next/src/screens/Inventory/InventoryHosts/InventoryHostList.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryHosts/InventoryHostList.test.jsx index 7456fe99f8..66ba9d992d 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHosts/InventoryHostList.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHosts/InventoryHostList.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { InventoriesAPI, HostsAPI } from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { InventoriesAPI, HostsAPI } from '../../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import InventoryHostList from './InventoryHostList'; import mockInventory from '../shared/data.inventory.json'; -jest.mock('@api'); +jest.mock('../../../api'); const mockHosts = [ { diff --git a/awx/ui_next/src/screens/Inventory/InventoryHosts/InventoryHosts.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryHosts/InventoryHosts.test.jsx index 140a6e57ea..4b25da701b 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHosts/InventoryHosts.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHosts/InventoryHosts.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; import { createMemoryHistory } from 'history'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import InventoryHosts from './InventoryHosts'; describe('', () => { diff --git a/awx/ui_next/src/screens/Inventory/InventoryList/InventoryList.jsx b/awx/ui_next/src/screens/Inventory/InventoryList/InventoryList.jsx index cbcb6a3b09..dcb817fe59 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryList/InventoryList.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryList/InventoryList.jsx @@ -5,17 +5,17 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Card, PageSection } from '@patternfly/react-core'; -import { InventoriesAPI } from '@api'; -import useRequest, { useDeleteItems } from '@util/useRequest'; -import AlertModal from '@components/AlertModal'; -import DatalistToolbar from '@components/DataListToolbar'; -import ErrorDetail from '@components/ErrorDetail'; +import { InventoriesAPI } from '../../../api'; +import useRequest, { useDeleteItems } from '../../../util/useRequest'; +import AlertModal from '../../../components/AlertModal'; +import DatalistToolbar from '../../../components/DataListToolbar'; +import ErrorDetail from '../../../components/ErrorDetail'; import PaginatedDataList, { ToolbarDeleteButton, -} from '@components/PaginatedDataList'; +} from '../../../components/PaginatedDataList'; -import { getQSConfig, parseQueryString } from '@util/qs'; -import AddDropDownButton from '@components/AddDropDownButton'; +import { getQSConfig, parseQueryString } from '../../../util/qs'; +import AddDropDownButton from '../../../components/AddDropDownButton'; import InventoryListItem from './InventoryListItem'; const QS_CONFIG = getQSConfig('inventory', { diff --git a/awx/ui_next/src/screens/Inventory/InventoryList/InventoryList.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryList/InventoryList.test.jsx index 641ed0154f..0db85887bb 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryList/InventoryList.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryList/InventoryList.test.jsx @@ -1,11 +1,11 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { InventoriesAPI } from '@api'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { InventoriesAPI } from '../../../api'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import InventoryList from './InventoryList'; -jest.mock('@api'); +jest.mock('../../../api'); const mockInventories = [ { diff --git a/awx/ui_next/src/screens/Inventory/InventoryList/InventoryListItem.jsx b/awx/ui_next/src/screens/Inventory/InventoryList/InventoryListItem.jsx index d667345ff1..f71e929eeb 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryList/InventoryListItem.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryList/InventoryListItem.jsx @@ -10,15 +10,14 @@ import { DataListItemRow, Tooltip, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; import { t } from '@lingui/macro'; import { Link } from 'react-router-dom'; import styled from 'styled-components'; import { PencilAltIcon } from '@patternfly/react-icons'; -import { timeOfDay } from '@util/dates'; -import { InventoriesAPI } from '@api'; -import { Inventory } from '@types'; +import { timeOfDay } from '../../../util/dates'; +import { InventoriesAPI } from '../../../api'; +import { Inventory } from '../../../types'; import CopyButton from '../../../components/CopyButton/CopyButton'; const DataListAction = styled(_DataListAction)` diff --git a/awx/ui_next/src/screens/Inventory/InventoryList/InventoryListItem.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryList/InventoryListItem.test.jsx index b67b2a5070..fc5bf838f2 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryList/InventoryListItem.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryList/InventoryListItem.test.jsx @@ -2,11 +2,11 @@ import React from 'react'; import { MemoryRouter } from 'react-router-dom'; import { I18nProvider } from '@lingui/react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import { InventoriesAPI } from '@api'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; +import { InventoriesAPI } from '../../../api'; import InventoryListItem from './InventoryListItem'; -jest.mock('@api/models/Inventories'); +jest.mock('../../../api/models/Inventories'); describe('', () => { test('initially renders succesfully', () => { diff --git a/awx/ui_next/src/screens/Inventory/InventorySource/InventorySource.jsx b/awx/ui_next/src/screens/Inventory/InventorySource/InventorySource.jsx index aecc3f7d83..f8fb0b9695 100644 --- a/awx/ui_next/src/screens/Inventory/InventorySource/InventorySource.jsx +++ b/awx/ui_next/src/screens/Inventory/InventorySource/InventorySource.jsx @@ -9,16 +9,16 @@ import { useRouteMatch, useLocation, } from 'react-router-dom'; -import useRequest from '@util/useRequest'; +import useRequest from '../../../util/useRequest'; -import { InventoriesAPI } from '@api'; +import { InventoriesAPI } from '../../../api'; import { CaretLeftIcon } from '@patternfly/react-icons'; import { CardActions } from '@patternfly/react-core'; -import { TabbedCardHeader } from '@components/Card'; -import CardCloseButton from '@components/CardCloseButton'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import RoutedTabs from '@components/RoutedTabs'; +import { TabbedCardHeader } from '../../../components/Card'; +import CardCloseButton from '../../../components/CardCloseButton'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; +import RoutedTabs from '../../../components/RoutedTabs'; import InventorySourceDetail from '../InventorySourceDetail'; function InventorySource({ i18n, inventory, setBreadcrumb }) { diff --git a/awx/ui_next/src/screens/Inventory/InventorySource/InventorySource.test.jsx b/awx/ui_next/src/screens/Inventory/InventorySource/InventorySource.test.jsx index 39706bf56b..84df4fbb0b 100644 --- a/awx/ui_next/src/screens/Inventory/InventorySource/InventorySource.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventorySource/InventorySource.test.jsx @@ -1,12 +1,12 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { InventoriesAPI } from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { InventoriesAPI } from '../../../api'; +import { mountWithContexts, waitForElement } from '../../../../testUtils/enzymeHelpers'; import mockInventorySource from '../shared/data.inventory_source.json'; import InventorySource from './InventorySource'; -jest.mock('@api/models/Inventories'); +jest.mock('../../../api/models/Inventories'); jest.mock('react-router-dom', () => ({ ...jest.requireActual('react-router-dom'), useRouteMatch: () => ({ diff --git a/awx/ui_next/src/screens/Inventory/InventorySourceAdd/InventorySourceAdd.jsx b/awx/ui_next/src/screens/Inventory/InventorySourceAdd/InventorySourceAdd.jsx index df12500a91..f1a90bcca6 100644 --- a/awx/ui_next/src/screens/Inventory/InventorySourceAdd/InventorySourceAdd.jsx +++ b/awx/ui_next/src/screens/Inventory/InventorySourceAdd/InventorySourceAdd.jsx @@ -1,9 +1,9 @@ import React, { useCallback, useEffect } from 'react'; import { useHistory, useParams } from 'react-router-dom'; -import { InventorySourcesAPI } from '@api'; -import useRequest from '@util/useRequest'; import { Card } from '@patternfly/react-core'; -import { CardBody } from '@components/Card'; +import { InventorySourcesAPI } from '../../../api'; +import useRequest from '../../../util/useRequest'; +import { CardBody } from '../../../components/Card'; import InventorySourceForm from '../shared/InventorySourceForm'; function InventorySourceAdd() { diff --git a/awx/ui_next/src/screens/Inventory/InventorySourceAdd/InventorySourceAdd.test.jsx b/awx/ui_next/src/screens/Inventory/InventorySourceAdd/InventorySourceAdd.test.jsx index 80bd08c902..8d26c48560 100644 --- a/awx/ui_next/src/screens/Inventory/InventorySourceAdd/InventorySourceAdd.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventorySourceAdd/InventorySourceAdd.test.jsx @@ -1,11 +1,11 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import InventorySourceAdd from './InventorySourceAdd'; -import { InventorySourcesAPI, ProjectsAPI } from '@api'; +import { InventorySourcesAPI, ProjectsAPI } from '../../../api'; -jest.mock('@api'); +jest.mock('../../../api'); jest.mock('react-router-dom', () => ({ ...jest.requireActual('react-router-dom'), useParams: () => ({ diff --git a/awx/ui_next/src/screens/Inventory/InventorySourceDetail/InventorySourceDetail.jsx b/awx/ui_next/src/screens/Inventory/InventorySourceDetail/InventorySourceDetail.jsx index 7840007fca..1921d378ad 100644 --- a/awx/ui_next/src/screens/Inventory/InventorySourceDetail/InventorySourceDetail.jsx +++ b/awx/ui_next/src/screens/Inventory/InventorySourceDetail/InventorySourceDetail.jsx @@ -10,14 +10,14 @@ import { List, ListItem, } from '@patternfly/react-core'; -import AlertModal from '@components/AlertModal'; -import { CardBody, CardActionsRow } from '@components/Card'; -import { VariablesDetail } from '@components/CodeMirrorInput'; -import CredentialChip from '@components/CredentialChip'; -import DeleteButton from '@components/DeleteButton'; -import { DetailList, Detail, UserDateDetail } from '@components/DetailList'; -import ErrorDetail from '@components/ErrorDetail'; -import { InventorySourcesAPI } from '@api'; +import AlertModal from '../../../components/AlertModal'; +import { CardBody, CardActionsRow } from '../../../components/Card'; +import { VariablesDetail } from '../../../components/CodeMirrorInput'; +import CredentialChip from '../../../components/CredentialChip'; +import DeleteButton from '../../../components/DeleteButton'; +import { DetailList, Detail, UserDateDetail } from '../../../components/DetailList'; +import ErrorDetail from '../../../components/ErrorDetail'; +import { InventorySourcesAPI } from '../../../api'; function InventorySourceDetail({ inventorySource, i18n }) { const { diff --git a/awx/ui_next/src/screens/Inventory/InventorySourceDetail/InventorySourceDetail.test.jsx b/awx/ui_next/src/screens/Inventory/InventorySourceDetail/InventorySourceDetail.test.jsx index 3d4d4482a6..0118d5a16b 100644 --- a/awx/ui_next/src/screens/Inventory/InventorySourceDetail/InventorySourceDetail.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventorySourceDetail/InventorySourceDetail.test.jsx @@ -1,12 +1,12 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { mountWithContexts, waitForElement } from '../../../../testUtils/enzymeHelpers'; import InventorySourceDetail from './InventorySourceDetail'; import mockInvSource from '../shared/data.inventory_source.json'; -import { InventorySourcesAPI } from '@api'; +import { InventorySourcesAPI } from '../../../api'; -jest.mock('@api/models/InventorySources'); +jest.mock('../../../api/models/InventorySources'); function assertDetail(wrapper, label, value) { expect(wrapper.find(`Detail[label="${label}"] dt`).text()).toBe(label); diff --git a/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceList.jsx b/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceList.jsx index 0a759b94e6..8d5b11ebf9 100644 --- a/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceList.jsx +++ b/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceList.jsx @@ -2,17 +2,17 @@ import React, { useCallback, useEffect } from 'react'; import { useParams, useLocation } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import useRequest, { useDeleteItems } from '@util/useRequest'; -import { getQSConfig, parseQueryString } from '@util/qs'; -import { InventoriesAPI, InventorySourcesAPI } from '@api'; +import useRequest, { useDeleteItems } from '../../../util/useRequest'; +import { getQSConfig, parseQueryString } from '../../../util/qs'; +import { InventoriesAPI, InventorySourcesAPI } from '../../../api'; import PaginatedDataList, { ToolbarAddButton, ToolbarDeleteButton, -} from '@components/PaginatedDataList'; -import useSelected from '@util/useSelected'; -import DatalistToolbar from '@components/DataListToolbar'; -import AlertModal from '@components/AlertModal/AlertModal'; -import ErrorDetail from '@components/ErrorDetail/ErrorDetail'; +} from '../../../components/PaginatedDataList'; +import useSelected from '../../../util/useSelected'; +import DatalistToolbar from '../../../components/DataListToolbar'; +import AlertModal from '../../../components/AlertModal/AlertModal'; +import ErrorDetail from '../../../components/ErrorDetail/ErrorDetail'; import InventorySourceListItem from './InventorySourceListItem'; const QS_CONFIG = getQSConfig('inventory', { diff --git a/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceList.test.jsx b/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceList.test.jsx index c253f4b83f..f7c98695bb 100644 --- a/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceList.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceList.test.jsx @@ -1,14 +1,17 @@ import React from 'react'; import { Route } from 'react-router-dom'; import { createMemoryHistory } from 'history'; -import { InventoriesAPI, InventorySourcesAPI } from '@api'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { InventoriesAPI, InventorySourcesAPI } from '../../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import InventorySourceList from './InventorySourceList'; -jest.mock('@api/models/InventorySources'); -jest.mock('@api/models/Inventories'); -jest.mock('@api/models/InventoryUpdates'); +jest.mock('../../../api/models/InventorySources'); +jest.mock('../../../api/models/Inventories'); +jest.mock('../../../api/models/InventoryUpdates'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceListItem.jsx b/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceListItem.jsx index 4437daf67d..4af6cf0c97 100644 --- a/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceListItem.jsx +++ b/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceListItem.jsx @@ -13,7 +13,7 @@ import { Tooltip, } from '@patternfly/react-core'; import { PencilAltIcon } from '@patternfly/react-icons'; -import StatusIcon from '@components/StatusIcon'; +import StatusIcon from '../../../components/StatusIcon'; import InventorySourceSyncButton from './InventorySourceSyncButton'; diff --git a/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceListItem.test.jsx b/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceListItem.test.jsx index 86b4a48d2e..8a3787f4b9 100644 --- a/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceListItem.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceListItem.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import InventorySourceListItem from './InventorySourceListItem'; const source = { diff --git a/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceSyncButton.jsx b/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceSyncButton.jsx index 801f8c170a..54f6f633e6 100644 --- a/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceSyncButton.jsx +++ b/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceSyncButton.jsx @@ -4,10 +4,10 @@ import { t } from '@lingui/macro'; import PropTypes from 'prop-types'; import { Button, Tooltip } from '@patternfly/react-core'; import { SyncIcon, MinusCircleIcon } from '@patternfly/react-icons'; -import useRequest, { useDismissableError } from '@util/useRequest'; -import AlertModal from '@components/AlertModal/AlertModal'; -import ErrorDetail from '@components/ErrorDetail/ErrorDetail'; -import { InventoryUpdatesAPI, InventorySourcesAPI } from '@api'; +import useRequest, { useDismissableError } from '../../../util/useRequest'; +import AlertModal from '../../../components/AlertModal/AlertModal'; +import ErrorDetail from '../../../components/ErrorDetail/ErrorDetail'; +import { InventoryUpdatesAPI, InventorySourcesAPI } from '../../../api'; function InventorySourceSyncButton({ onSyncLoading, source, i18n }) { const [updateStatus, setUpdateStatus] = useState(source.status); diff --git a/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceSyncButton.test.jsx b/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceSyncButton.test.jsx index f31a300089..6cce81c3e0 100644 --- a/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceSyncButton.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceSyncButton.test.jsx @@ -1,11 +1,11 @@ import React from 'react'; -import { InventoryUpdatesAPI, InventorySourcesAPI } from '@api'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { InventoryUpdatesAPI, InventorySourcesAPI } from '../../../api'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import InventorySourceSyncButton from './InventorySourceSyncButton'; -jest.mock('@api/models/InventoryUpdates'); -jest.mock('@api/models/InventorySources'); +jest.mock('../../../api/models/InventoryUpdates'); +jest.mock('../../../api/models/InventorySources'); const source = { id: 1, name: 'Foo', source: 'Source Bar' }; const onSyncLoading = jest.fn(); diff --git a/awx/ui_next/src/screens/Inventory/SmartInventory.jsx b/awx/ui_next/src/screens/Inventory/SmartInventory.jsx index e37cd1c4d6..29e503faa9 100644 --- a/awx/ui_next/src/screens/Inventory/SmartInventory.jsx +++ b/awx/ui_next/src/screens/Inventory/SmartInventory.jsx @@ -3,15 +3,15 @@ import { t } from '@lingui/macro'; import { withI18n } from '@lingui/react'; import { Card, CardActions, PageSection } from '@patternfly/react-core'; import { Switch, Route, Redirect, withRouter, Link } from 'react-router-dom'; -import { TabbedCardHeader } from '@components/Card'; -import CardCloseButton from '@components/CardCloseButton'; -import ContentError from '@components/ContentError'; -import JobList from '@components/JobList'; -import RoutedTabs from '@components/RoutedTabs'; -import { ResourceAccessList } from '@components/ResourceAccessList'; +import { TabbedCardHeader } from '../../components/Card'; +import CardCloseButton from '../../components/CardCloseButton'; +import ContentError from '../../components/ContentError'; +import JobList from '../../components/JobList'; +import RoutedTabs from '../../components/RoutedTabs'; +import { ResourceAccessList } from '../../components/ResourceAccessList'; import SmartInventoryDetail from './SmartInventoryDetail'; import SmartInventoryHosts from './SmartInventoryHosts'; -import { InventoriesAPI } from '@api'; +import { InventoriesAPI } from '../../api'; import SmartInventoryEdit from './SmartInventoryEdit'; class SmartInventory extends Component { diff --git a/awx/ui_next/src/screens/Inventory/SmartInventory.test.jsx b/awx/ui_next/src/screens/Inventory/SmartInventory.test.jsx index 33a4035b3c..6483543fd7 100644 --- a/awx/ui_next/src/screens/Inventory/SmartInventory.test.jsx +++ b/awx/ui_next/src/screens/Inventory/SmartInventory.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { createMemoryHistory } from 'history'; -import { InventoriesAPI } from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { InventoriesAPI } from '../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../testUtils/enzymeHelpers'; import mockSmartInventory from './shared/data.smart_inventory.json'; import SmartInventory from './SmartInventory'; -jest.mock('@api'); +jest.mock('../../api'); InventoriesAPI.readDetail.mockResolvedValue({ data: mockSmartInventory, diff --git a/awx/ui_next/src/screens/Inventory/SmartInventoryDetail/SmartInventoryDetail.jsx b/awx/ui_next/src/screens/Inventory/SmartInventoryDetail/SmartInventoryDetail.jsx index b661ea6f17..be767f9746 100644 --- a/awx/ui_next/src/screens/Inventory/SmartInventoryDetail/SmartInventoryDetail.jsx +++ b/awx/ui_next/src/screens/Inventory/SmartInventoryDetail/SmartInventoryDetail.jsx @@ -1,5 +1,5 @@ import React, { Component } from 'react'; -import { CardBody } from '@components/Card'; +import { CardBody } from '../../../components/Card'; class SmartInventoryDetail extends Component { render() { diff --git a/awx/ui_next/src/screens/Inventory/SmartInventoryHosts/SmartInventoryHosts.jsx b/awx/ui_next/src/screens/Inventory/SmartInventoryHosts/SmartInventoryHosts.jsx index dc5b46deb5..608e664e95 100644 --- a/awx/ui_next/src/screens/Inventory/SmartInventoryHosts/SmartInventoryHosts.jsx +++ b/awx/ui_next/src/screens/Inventory/SmartInventoryHosts/SmartInventoryHosts.jsx @@ -1,5 +1,5 @@ import React, { Component } from 'react'; -import { CardBody } from '@components/Card'; +import { CardBody } from '../../../components/Card'; class SmartInventoryHosts extends Component { render() { diff --git a/awx/ui_next/src/screens/Inventory/shared/InventoryForm.jsx b/awx/ui_next/src/screens/Inventory/shared/InventoryForm.jsx index dca8b78102..f0d779afaa 100644 --- a/awx/ui_next/src/screens/Inventory/shared/InventoryForm.jsx +++ b/awx/ui_next/src/screens/Inventory/shared/InventoryForm.jsx @@ -4,15 +4,18 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { func, number, shape } from 'prop-types'; -import { VariablesField } from '@components/CodeMirrorInput'; import { Form } from '@patternfly/react-core'; -import FormField, { FormSubmitError } from '@components/FormField'; -import FormActionGroup from '@components/FormActionGroup'; -import { required } from '@util/validators'; -import InstanceGroupsLookup from '@components/Lookup/InstanceGroupsLookup'; -import OrganizationLookup from '@components/Lookup/OrganizationLookup'; -import CredentialLookup from '@components/Lookup/CredentialLookup'; -import { FormColumnLayout, FormFullWidthLayout } from '@components/FormLayout'; +import { VariablesField } from '../../../components/CodeMirrorInput'; +import FormField, { FormSubmitError } from '../../../components/FormField'; +import FormActionGroup from '../../../components/FormActionGroup'; +import { required } from '../../../util/validators'; +import InstanceGroupsLookup from '../../../components/Lookup/InstanceGroupsLookup'; +import OrganizationLookup from '../../../components/Lookup/OrganizationLookup'; +import CredentialLookup from '../../../components/Lookup/CredentialLookup'; +import { + FormColumnLayout, + FormFullWidthLayout, +} from '../../../components/FormLayout'; function InventoryFormFields({ i18n, credentialTypeId }) { const [organizationField, organizationMeta, organizationHelpers] = useField({ diff --git a/awx/ui_next/src/screens/Inventory/shared/InventoryForm.test.jsx b/awx/ui_next/src/screens/Inventory/shared/InventoryForm.test.jsx index 1cc056d5a4..580ebb79a6 100644 --- a/awx/ui_next/src/screens/Inventory/shared/InventoryForm.test.jsx +++ b/awx/ui_next/src/screens/Inventory/shared/InventoryForm.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { mountWithContexts, waitForElement } from '../../../../testUtils/enzymeHelpers'; import InventoryForm from './InventoryForm'; -jest.mock('@api'); +jest.mock('../../../api'); const inventory = { id: 1, diff --git a/awx/ui_next/src/screens/Inventory/shared/InventoryGroupForm.jsx b/awx/ui_next/src/screens/Inventory/shared/InventoryGroupForm.jsx index 92859b0162..495cf415f2 100644 --- a/awx/ui_next/src/screens/Inventory/shared/InventoryGroupForm.jsx +++ b/awx/ui_next/src/screens/Inventory/shared/InventoryGroupForm.jsx @@ -4,12 +4,15 @@ import { Formik } from 'formik'; import { Form, Card } from '@patternfly/react-core'; import { t } from '@lingui/macro'; -import { CardBody } from '@components/Card'; -import FormField from '@components/FormField'; -import FormActionGroup from '@components/FormActionGroup/FormActionGroup'; -import { VariablesField } from '@components/CodeMirrorInput'; -import { required } from '@util/validators'; -import { FormColumnLayout, FormFullWidthLayout } from '@components/FormLayout'; +import { CardBody } from '../../../components/Card'; +import FormField from '../../../components/FormField'; +import FormActionGroup from '../../../components/FormActionGroup/FormActionGroup'; +import { VariablesField } from '../../../components/CodeMirrorInput'; +import { required } from '../../../util/validators'; +import { + FormColumnLayout, + FormFullWidthLayout, +} from '../../../components/FormLayout'; function InventoryGroupForm({ i18n, diff --git a/awx/ui_next/src/screens/Inventory/shared/InventoryGroupForm.test.jsx b/awx/ui_next/src/screens/Inventory/shared/InventoryGroupForm.test.jsx index ebf459f76f..a44b594af6 100644 --- a/awx/ui_next/src/screens/Inventory/shared/InventoryGroupForm.test.jsx +++ b/awx/ui_next/src/screens/Inventory/shared/InventoryGroupForm.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import InventoryGroupForm from './InventoryGroupForm'; const group = { diff --git a/awx/ui_next/src/screens/Inventory/shared/InventoryGroupsDeleteModal.jsx b/awx/ui_next/src/screens/Inventory/shared/InventoryGroupsDeleteModal.jsx index 5ce7f635c4..6896628360 100644 --- a/awx/ui_next/src/screens/Inventory/shared/InventoryGroupsDeleteModal.jsx +++ b/awx/ui_next/src/screens/Inventory/shared/InventoryGroupsDeleteModal.jsx @@ -1,11 +1,11 @@ import React, { useState } from 'react'; import ReactDOM from 'react-dom'; import { func, bool, arrayOf, object } from 'prop-types'; -import AlertModal from '@components/AlertModal'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Button, Radio } from '@patternfly/react-core'; import styled from 'styled-components'; +import AlertModal from '../../../components/AlertModal'; const ListItem = styled.li` display: flex; diff --git a/awx/ui_next/src/screens/Inventory/shared/InventorySourceForm.jsx b/awx/ui_next/src/screens/Inventory/shared/InventorySourceForm.jsx index 3e76f1b223..53f51a8f05 100644 --- a/awx/ui_next/src/screens/Inventory/shared/InventorySourceForm.jsx +++ b/awx/ui_next/src/screens/Inventory/shared/InventorySourceForm.jsx @@ -3,21 +3,24 @@ import { Formik, useField, useFormikContext } from 'formik'; import { func, shape } from 'prop-types'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { InventorySourcesAPI } from '@api'; -import { ConfigContext } from '@contexts/Config'; -import useRequest from '@util/useRequest'; -import { required } from '@util/validators'; - import { Form, FormGroup, Title } from '@patternfly/react-core'; -import AnsibleSelect from '@components/AnsibleSelect'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import FormActionGroup from '@components/FormActionGroup/FormActionGroup'; +import { InventorySourcesAPI } from '../../../api'; +import { ConfigContext } from '../../../contexts/Config'; +import useRequest from '../../../util/useRequest'; +import { required } from '../../../util/validators'; + +import AnsibleSelect from '../../../components/AnsibleSelect'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; +import FormActionGroup from '../../../components/FormActionGroup/FormActionGroup'; import FormField, { FieldTooltip, FormSubmitError, -} from '@components/FormField'; -import { FormColumnLayout, SubFormLayout } from '@components/FormLayout'; +} from '../../../components/FormField'; +import { + FormColumnLayout, + SubFormLayout, +} from '../../../components/FormLayout'; import SCMSubForm from './InventorySourceSubForms'; diff --git a/awx/ui_next/src/screens/Inventory/shared/InventorySourceForm.test.jsx b/awx/ui_next/src/screens/Inventory/shared/InventorySourceForm.test.jsx index d79cf457c9..2eb183f441 100644 --- a/awx/ui_next/src/screens/Inventory/shared/InventorySourceForm.test.jsx +++ b/awx/ui_next/src/screens/Inventory/shared/InventorySourceForm.test.jsx @@ -1,12 +1,15 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import InventorySourceForm from './InventorySourceForm'; -import { InventorySourcesAPI, ProjectsAPI, CredentialsAPI } from '@api'; +import { InventorySourcesAPI, ProjectsAPI, CredentialsAPI } from '../../../api'; -jest.mock('@api/models/Credentials'); -jest.mock('@api/models/InventorySources'); -jest.mock('@api/models/Projects'); +jest.mock('../../../api/models/Credentials'); +jest.mock('../../../api/models/InventorySources'); +jest.mock('../../../api/models/Projects'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/screens/Inventory/shared/InventorySourceSubForms/SCMSubForm.jsx b/awx/ui_next/src/screens/Inventory/shared/InventorySourceSubForms/SCMSubForm.jsx index dbc36f19ca..c65036f8ae 100644 --- a/awx/ui_next/src/screens/Inventory/shared/InventorySourceSubForms/SCMSubForm.jsx +++ b/awx/ui_next/src/screens/Inventory/shared/InventorySourceSubForms/SCMSubForm.jsx @@ -2,15 +2,15 @@ import React, { useCallback } from 'react'; import { useField } from 'formik'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { ProjectsAPI } from '@api'; -import useRequest from '@util/useRequest'; -import { required } from '@util/validators'; - import { FormGroup } from '@patternfly/react-core'; -import AnsibleSelect from '@components/AnsibleSelect'; -import { FieldTooltip } from '@components/FormField'; -import CredentialLookup from '@components/Lookup/CredentialLookup'; -import ProjectLookup from '@components/Lookup/ProjectLookup'; +import { ProjectsAPI } from '../../../../api'; +import useRequest from '../../../../util/useRequest'; +import { required } from '../../../../util/validators'; + +import AnsibleSelect from '../../../../components/AnsibleSelect'; +import { FieldTooltip } from '../../../../components/FormField'; +import CredentialLookup from '../../../../components/Lookup/CredentialLookup'; +import ProjectLookup from '../../../../components/Lookup/ProjectLookup'; import { VerbosityField, OptionsField, SourceVarsField } from './SharedFields'; const SCMSubForm = ({ i18n }) => { diff --git a/awx/ui_next/src/screens/Inventory/shared/InventorySourceSubForms/SCMSubForm.test.jsx b/awx/ui_next/src/screens/Inventory/shared/InventorySourceSubForms/SCMSubForm.test.jsx index 78ec81ad55..4e9f541a9b 100644 --- a/awx/ui_next/src/screens/Inventory/shared/InventorySourceSubForms/SCMSubForm.test.jsx +++ b/awx/ui_next/src/screens/Inventory/shared/InventorySourceSubForms/SCMSubForm.test.jsx @@ -1,12 +1,12 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; import { Formik } from 'formik'; +import { mountWithContexts } from '../../../../../testUtils/enzymeHelpers'; import SCMSubForm from './SCMSubForm'; -import { ProjectsAPI, CredentialsAPI } from '@api'; +import { ProjectsAPI, CredentialsAPI } from '../../../../api'; -jest.mock('@api/models/Projects'); -jest.mock('@api/models/Credentials'); +jest.mock('../../../../api/models/Projects'); +jest.mock('../../../../api/models/Credentials'); const initialValues = { credential: null, diff --git a/awx/ui_next/src/screens/Inventory/shared/InventorySourceSubForms/SharedFields.jsx b/awx/ui_next/src/screens/Inventory/shared/InventorySourceSubForms/SharedFields.jsx index 92d0933073..b4b6d05f5b 100644 --- a/awx/ui_next/src/screens/Inventory/shared/InventorySourceSubForms/SharedFields.jsx +++ b/awx/ui_next/src/screens/Inventory/shared/InventorySourceSubForms/SharedFields.jsx @@ -2,15 +2,18 @@ import React, { useEffect } from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { useField } from 'formik'; -import { minMaxValue } from '@util/validators'; import { FormGroup } from '@patternfly/react-core'; -import AnsibleSelect from '@components/AnsibleSelect'; -import { VariablesField } from '@components/CodeMirrorInput'; -import FormField, { CheckboxField, FieldTooltip } from '@components/FormField'; +import { minMaxValue } from '../../../../util/validators'; +import AnsibleSelect from '../../../../components/AnsibleSelect'; +import { VariablesField } from '../../../../components/CodeMirrorInput'; +import FormField, { + CheckboxField, + FieldTooltip, +} from '../../../../components/FormField'; import { FormFullWidthLayout, FormCheckboxLayout, -} from '@components/FormLayout'; +} from '../../../../components/FormLayout'; export const SourceVarsField = withI18n()(({ i18n }) => ( diff --git a/awx/ui_next/src/screens/InventoryScript/InventoryScripts.test.jsx b/awx/ui_next/src/screens/InventoryScript/InventoryScripts.test.jsx index c91c21fff2..2c981361bb 100644 --- a/awx/ui_next/src/screens/InventoryScript/InventoryScripts.test.jsx +++ b/awx/ui_next/src/screens/InventoryScript/InventoryScripts.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import InventoryScripts from './InventoryScripts'; diff --git a/awx/ui_next/src/screens/Job/Job.jsx b/awx/ui_next/src/screens/Job/Job.jsx index e945b284c8..624f7443ff 100644 --- a/awx/ui_next/src/screens/Job/Job.jsx +++ b/awx/ui_next/src/screens/Job/Job.jsx @@ -3,17 +3,17 @@ import { Route, withRouter, Switch, Redirect, Link } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Card, CardActions, PageSection } from '@patternfly/react-core'; -import { JobsAPI } from '@api'; -import { TabbedCardHeader } from '@components/Card'; -import ContentError from '@components/ContentError'; -import CardCloseButton from '@components/CardCloseButton'; -import RoutedTabs from '@components/RoutedTabs'; +import { JobsAPI } from '../../api'; +import { TabbedCardHeader } from '../../components/Card'; +import ContentError from '../../components/ContentError'; +import CardCloseButton from '../../components/CardCloseButton'; +import RoutedTabs from '../../components/RoutedTabs'; import JobDetail from './JobDetail'; import JobOutput from './JobOutput'; import WorkflowDetail from './WorkflowDetail'; import { WorkflowOutput } from './WorkflowOutput'; -import { JOB_TYPE_URL_SEGMENTS } from '@constants'; +import { JOB_TYPE_URL_SEGMENTS } from '../../constants'; class Job extends Component { constructor(props) { diff --git a/awx/ui_next/src/screens/Job/Job.test.jsx b/awx/ui_next/src/screens/Job/Job.test.jsx index 8da74a8e03..7b902984f0 100644 --- a/awx/ui_next/src/screens/Job/Job.test.jsx +++ b/awx/ui_next/src/screens/Job/Job.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import Job from './Jobs'; diff --git a/awx/ui_next/src/screens/Job/JobDetail/JobDetail.jsx b/awx/ui_next/src/screens/Job/JobDetail/JobDetail.jsx index 7a0d06618e..5db2ce70e0 100644 --- a/awx/ui_next/src/screens/Job/JobDetail/JobDetail.jsx +++ b/awx/ui_next/src/screens/Job/JobDetail/JobDetail.jsx @@ -5,19 +5,19 @@ import { t } from '@lingui/macro'; import { Button, Chip } from '@patternfly/react-core'; import styled from 'styled-components'; -import AlertModal from '@components/AlertModal'; -import { DetailList, Detail } from '@components/DetailList'; -import { CardBody, CardActionsRow } from '@components/Card'; -import ChipGroup from '@components/ChipGroup'; -import CredentialChip from '@components/CredentialChip'; -import { VariablesInput as _VariablesInput } from '@components/CodeMirrorInput'; -import DeleteButton from '@components/DeleteButton'; -import ErrorDetail from '@components/ErrorDetail'; -import LaunchButton from '@components/LaunchButton'; -import StatusIcon from '@components/StatusIcon'; -import { toTitleCase } from '@util/strings'; -import { formatDateString } from '@util/dates'; -import { Job } from '@types'; +import AlertModal from '../../../components/AlertModal'; +import { DetailList, Detail } from '../../../components/DetailList'; +import { CardBody, CardActionsRow } from '../../../components/Card'; +import ChipGroup from '../../../components/ChipGroup'; +import CredentialChip from '../../../components/CredentialChip'; +import { VariablesInput as _VariablesInput } from '../../../components/CodeMirrorInput'; +import DeleteButton from '../../../components/DeleteButton'; +import ErrorDetail from '../../../components/ErrorDetail'; +import LaunchButton from '../../../components/LaunchButton'; +import StatusIcon from '../../../components/StatusIcon'; +import { toTitleCase } from '../../../util/strings'; +import { formatDateString } from '../../../util/dates'; +import { Job } from '../../../types'; import { JobsAPI, ProjectUpdatesAPI, @@ -25,7 +25,7 @@ import { WorkflowJobsAPI, InventoriesAPI, AdHocCommandsAPI, -} from '@api'; +} from '../../../api'; const VariablesInput = styled(_VariablesInput)` .pf-c-form__label { diff --git a/awx/ui_next/src/screens/Job/JobDetail/JobDetail.test.jsx b/awx/ui_next/src/screens/Job/JobDetail/JobDetail.test.jsx index 239ea21a28..a27434900f 100644 --- a/awx/ui_next/src/screens/Job/JobDetail/JobDetail.test.jsx +++ b/awx/ui_next/src/screens/Job/JobDetail/JobDetail.test.jsx @@ -1,12 +1,12 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import { sleep } from '@testUtils/testUtils'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; +import { sleep } from '../../../../testUtils/testUtils'; import JobDetail from './JobDetail'; -import { JobsAPI, ProjectUpdatesAPI } from '@api'; +import { JobsAPI, ProjectUpdatesAPI } from '../../../api'; import mockJobData from '../shared/data.job.json'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/screens/Job/JobOutput/HostEventModal.jsx b/awx/ui_next/src/screens/Job/JobOutput/HostEventModal.jsx index 1d5a10012a..baa9fe3e86 100644 --- a/awx/ui_next/src/screens/Job/JobOutput/HostEventModal.jsx +++ b/awx/ui_next/src/screens/Job/JobOutput/HostEventModal.jsx @@ -1,14 +1,14 @@ import React, { useEffect, useState } from 'react'; import { Modal as PFModal, Tab, Tabs as PFTabs } from '@patternfly/react-core'; -import CodeMirrorInput from '@components/CodeMirrorInput'; -import ContentEmpty from '@components/ContentEmpty'; import PropTypes from 'prop-types'; -import { DetailList, Detail } from '@components/DetailList'; -import StatusIcon from '@components/StatusIcon'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import styled from 'styled-components'; import Entities from 'html-entities'; +import StatusIcon from '../../../components/StatusIcon'; +import { DetailList, Detail } from '../../../components/DetailList'; +import ContentEmpty from '../../../components/ContentEmpty'; +import CodeMirrorInput from '../../../components/CodeMirrorInput'; const entities = new Entities.AllHtmlEntities(); diff --git a/awx/ui_next/src/screens/Job/JobOutput/HostEventModal.test.jsx b/awx/ui_next/src/screens/Job/JobOutput/HostEventModal.test.jsx index c4bbc72c40..8706189a04 100644 --- a/awx/ui_next/src/screens/Job/JobOutput/HostEventModal.test.jsx +++ b/awx/ui_next/src/screens/Job/JobOutput/HostEventModal.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import HostEventModal from './HostEventModal'; const hostEvent = { diff --git a/awx/ui_next/src/screens/Job/JobOutput/JobEvent.test.jsx b/awx/ui_next/src/screens/Job/JobOutput/JobEvent.test.jsx index 21de9847e2..baceb1c6f4 100644 --- a/awx/ui_next/src/screens/Job/JobOutput/JobEvent.test.jsx +++ b/awx/ui_next/src/screens/Job/JobOutput/JobEvent.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import JobEvent from './JobEvent'; diff --git a/awx/ui_next/src/screens/Job/JobOutput/JobEventSkeleton.test.jsx b/awx/ui_next/src/screens/Job/JobOutput/JobEventSkeleton.test.jsx index acf17ed168..b4a069e037 100644 --- a/awx/ui_next/src/screens/Job/JobOutput/JobEventSkeleton.test.jsx +++ b/awx/ui_next/src/screens/Job/JobOutput/JobEventSkeleton.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import JobEventSkeleton from './JobEventSkeleton'; diff --git a/awx/ui_next/src/screens/Job/JobOutput/JobOutput.jsx b/awx/ui_next/src/screens/Job/JobOutput/JobOutput.jsx index da850b6878..724fd845b2 100644 --- a/awx/ui_next/src/screens/Job/JobOutput/JobOutput.jsx +++ b/awx/ui_next/src/screens/Job/JobOutput/JobOutput.jsx @@ -11,12 +11,12 @@ import { List, } from 'react-virtualized'; -import AlertModal from '@components/AlertModal'; -import { CardBody } from '@components/Card'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import ErrorDetail from '@components/ErrorDetail'; -import StatusIcon from '@components/StatusIcon'; +import AlertModal from '../../../components/AlertModal'; +import { CardBody } from '../../../components/Card'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; +import ErrorDetail from '../../../components/ErrorDetail'; +import StatusIcon from '../../../components/StatusIcon'; import JobEvent from './JobEvent'; import JobEventSkeleton from './JobEventSkeleton'; @@ -30,7 +30,7 @@ import { WorkflowJobsAPI, InventoriesAPI, AdHocCommandsAPI, -} from '@api'; +} from '../../../api'; const HeaderTitle = styled.div` display: inline-flex; diff --git a/awx/ui_next/src/screens/Job/JobOutput/JobOutput.test.jsx b/awx/ui_next/src/screens/Job/JobOutput/JobOutput.test.jsx index 3e16411866..8771ce63ac 100644 --- a/awx/ui_next/src/screens/Job/JobOutput/JobOutput.test.jsx +++ b/awx/ui_next/src/screens/Job/JobOutput/JobOutput.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import JobOutput, { _JobOutput } from './JobOutput'; -import { JobsAPI } from '@api'; +import { JobsAPI } from '../../../api'; import mockJobData from '../shared/data.job.json'; import mockJobEventsData from './data.job_events.json'; -jest.mock('@api'); +jest.mock('../../../api'); async function checkOutput(wrapper, expectedLines) { await waitForElement(wrapper, 'div[type="job_event"]', el => el.length > 1); diff --git a/awx/ui_next/src/screens/Job/JobOutput/PageControls.test.jsx b/awx/ui_next/src/screens/Job/JobOutput/PageControls.test.jsx index 86df76448f..ea83d2f9e9 100644 --- a/awx/ui_next/src/screens/Job/JobOutput/PageControls.test.jsx +++ b/awx/ui_next/src/screens/Job/JobOutput/PageControls.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import PageControls from './PageControls'; let wrapper; diff --git a/awx/ui_next/src/screens/Job/JobOutput/shared/HostStatusBar.test.jsx b/awx/ui_next/src/screens/Job/JobOutput/shared/HostStatusBar.test.jsx index c1fae8c6a0..e97cb598f0 100644 --- a/awx/ui_next/src/screens/Job/JobOutput/shared/HostStatusBar.test.jsx +++ b/awx/ui_next/src/screens/Job/JobOutput/shared/HostStatusBar.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../../testUtils/enzymeHelpers'; import { HostStatusBar } from '.'; describe('', () => { diff --git a/awx/ui_next/src/screens/Job/JobOutput/shared/OutputToolbar.jsx b/awx/ui_next/src/screens/Job/JobOutput/shared/OutputToolbar.jsx index c09728c5ae..d98d2f72b2 100644 --- a/awx/ui_next/src/screens/Job/JobOutput/shared/OutputToolbar.jsx +++ b/awx/ui_next/src/screens/Job/JobOutput/shared/OutputToolbar.jsx @@ -9,8 +9,8 @@ import { TrashAltIcon, } from '@patternfly/react-icons'; import { Badge as PFBadge, Button, Tooltip } from '@patternfly/react-core'; -import DeleteButton from '@components/DeleteButton'; -import LaunchButton from '@components/LaunchButton'; +import DeleteButton from '../../../../components/DeleteButton'; +import LaunchButton from '../../../../components/LaunchButton'; const BadgeGroup = styled.div` margin-left: 20px; diff --git a/awx/ui_next/src/screens/Job/JobOutput/shared/OutputToolbar.test.jsx b/awx/ui_next/src/screens/Job/JobOutput/shared/OutputToolbar.test.jsx index 49b9c62678..d5a246b82a 100644 --- a/awx/ui_next/src/screens/Job/JobOutput/shared/OutputToolbar.test.jsx +++ b/awx/ui_next/src/screens/Job/JobOutput/shared/OutputToolbar.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../../testUtils/enzymeHelpers'; import { OutputToolbar } from '.'; import mockJobData from '../../shared/data.job.json'; diff --git a/awx/ui_next/src/screens/Job/JobTypeRedirect.jsx b/awx/ui_next/src/screens/Job/JobTypeRedirect.jsx index aeb8ee6efe..57f39730c4 100644 --- a/awx/ui_next/src/screens/Job/JobTypeRedirect.jsx +++ b/awx/ui_next/src/screens/Job/JobTypeRedirect.jsx @@ -2,9 +2,9 @@ import React, { Component } from 'react'; import { Redirect, Link } from 'react-router-dom'; import { PageSection, Card } from '@patternfly/react-core'; import { withI18n } from '@lingui/react'; -import { UnifiedJobsAPI } from '@api'; -import ContentError from '@components/ContentError'; -import { JOB_TYPE_URL_SEGMENTS } from '@constants'; +import { UnifiedJobsAPI } from '../../api'; +import ContentError from '../../components/ContentError'; +import { JOB_TYPE_URL_SEGMENTS } from '../../constants'; const NOT_FOUND = 'not found'; diff --git a/awx/ui_next/src/screens/Job/Jobs.jsx b/awx/ui_next/src/screens/Job/Jobs.jsx index 92b19802b4..98890ccd12 100644 --- a/awx/ui_next/src/screens/Job/Jobs.jsx +++ b/awx/ui_next/src/screens/Job/Jobs.jsx @@ -10,11 +10,11 @@ import { import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { PageSection } from '@patternfly/react-core'; -import Breadcrumbs from '@components/Breadcrumbs/Breadcrumbs'; +import Breadcrumbs from '../../components/Breadcrumbs/Breadcrumbs'; import Job from './Job'; import JobTypeRedirect from './JobTypeRedirect'; -import JobList from '@components/JobList'; -import { JOB_TYPE_URL_SEGMENTS } from '@constants'; +import JobList from '../../components/JobList'; +import { JOB_TYPE_URL_SEGMENTS } from '../../constants'; function Jobs({ i18n }) { const history = useHistory(); diff --git a/awx/ui_next/src/screens/Job/Jobs.test.jsx b/awx/ui_next/src/screens/Job/Jobs.test.jsx index 1b7dd8ddf3..5782335404 100644 --- a/awx/ui_next/src/screens/Job/Jobs.test.jsx +++ b/awx/ui_next/src/screens/Job/Jobs.test.jsx @@ -1,7 +1,7 @@ import React from 'react'; import { createMemoryHistory } from 'history'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import Jobs from './Jobs'; diff --git a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutput.jsx b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutput.jsx index b304348cb9..23a87207a6 100644 --- a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutput.jsx +++ b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutput.jsx @@ -6,14 +6,14 @@ import { CardBody as PFCardBody } from '@patternfly/react-core'; import { WorkflowDispatchContext, WorkflowStateContext, -} from '@contexts/Workflow'; -import { layoutGraph } from '@components/Workflow/WorkflowUtils'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; +} from '../../../contexts/Workflow'; +import { layoutGraph } from '../../../components/Workflow/WorkflowUtils'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; import workflowReducer, { initReducer, -} from '@components/Workflow/workflowReducer'; -import { WorkflowJobsAPI } from '@api'; +} from '../../../components/Workflow/workflowReducer'; +import { WorkflowJobsAPI } from '../../../api'; import WorkflowOutputGraph from './WorkflowOutputGraph'; import WorkflowOutputToolbar from './WorkflowOutputToolbar'; diff --git a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutput.test.jsx b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutput.test.jsx index 39bc048a6a..eaea9a2162 100644 --- a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutput.test.jsx +++ b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutput.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import { WorkflowJobsAPI } from '@api'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; +import { WorkflowJobsAPI } from '../../../api'; import WorkflowOutput from './WorkflowOutput'; -jest.mock('@api'); +jest.mock('../../../api'); const job = { id: 1, diff --git a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputGraph.jsx b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputGraph.jsx index 40aca8f683..8f752131f1 100644 --- a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputGraph.jsx +++ b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputGraph.jsx @@ -1,14 +1,11 @@ import React, { useContext, useEffect, useRef, useState } from 'react'; -import { WorkflowStateContext } from '@contexts/Workflow'; import * as d3 from 'd3'; +import { WorkflowStateContext } from '../../../contexts/Workflow'; import { getScaleAndOffsetToFit, getTranslatePointsForZoom, -} from '@components/Workflow/WorkflowUtils'; -import { - WorkflowOutputLink, - WorkflowOutputNode, -} from '@screens/Job/WorkflowOutput'; +} from '../../../components/Workflow/WorkflowUtils'; +import { WorkflowOutputLink, WorkflowOutputNode } from '.'; import { WorkflowHelp, WorkflowLegend, @@ -16,7 +13,7 @@ import { WorkflowNodeHelp, WorkflowStartNode, WorkflowTools, -} from '@components/Workflow'; +} from '../../../components/Workflow'; function WorkflowOutputGraph() { const [linkHelp, setLinkHelp] = useState(); diff --git a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputGraph.test.jsx b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputGraph.test.jsx index 19e7e9a976..39de8a7c08 100644 --- a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputGraph.test.jsx +++ b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputGraph.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import { WorkflowStateContext } from '@contexts/Workflow'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; +import { WorkflowStateContext } from '../../../contexts/Workflow'; import WorkflowOutputGraph from './WorkflowOutputGraph'; const workflowContext = { diff --git a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputLink.jsx b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputLink.jsx index b7ae3028dc..682b576ab6 100644 --- a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputLink.jsx +++ b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputLink.jsx @@ -1,11 +1,11 @@ import React, { useContext, useEffect, useRef, useState } from 'react'; -import { WorkflowStateContext } from '@contexts/Workflow'; import { func, shape } from 'prop-types'; +import { WorkflowStateContext } from '../../../contexts/Workflow'; import { generateLine, getLinePoints, getLinkOverlayPoints, -} from '@components/Workflow/WorkflowUtils'; +} from '../../../components/Workflow/WorkflowUtils'; function WorkflowOutputLink({ link, mouseEnter, mouseLeave }) { const ref = useRef(null); diff --git a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputLink.test.jsx b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputLink.test.jsx index 1fe47c070e..23ed083c29 100644 --- a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputLink.test.jsx +++ b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputLink.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; import { mount } from 'enzyme'; -import { WorkflowStateContext } from '@contexts/Workflow'; +import { WorkflowStateContext } from '../../../contexts/Workflow'; import WorkflowOutputLink from './WorkflowOutputLink'; const link = { diff --git a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputNode.jsx b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputNode.jsx index a0d8fd361a..b8551e872e 100644 --- a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputNode.jsx +++ b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputNode.jsx @@ -1,14 +1,14 @@ import React, { useContext } from 'react'; -import { WorkflowStateContext } from '@contexts/Workflow'; import { useHistory } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import styled from 'styled-components'; import { func, shape } from 'prop-types'; -import StatusIcon from '@components/StatusIcon'; -import { WorkflowNodeTypeLetter } from '@components/Workflow'; -import { secondsToHHMMSS } from '@util/dates'; -import { constants as wfConstants } from '@components/Workflow/WorkflowUtils'; +import { WorkflowStateContext } from '../../../contexts/Workflow'; +import StatusIcon from '../../../components/StatusIcon'; +import { WorkflowNodeTypeLetter } from '../../../components/Workflow'; +import { secondsToHHMMSS } from '../../../util/dates'; +import { constants as wfConstants } from '../../../components/Workflow/WorkflowUtils'; const NodeG = styled.g` cursor: ${props => diff --git a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputNode.test.jsx b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputNode.test.jsx index 198c01c3d1..3c982f8e86 100644 --- a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputNode.test.jsx +++ b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputNode.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { WorkflowStateContext } from '@contexts/Workflow'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { WorkflowStateContext } from '../../../contexts/Workflow'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import WorkflowOutputNode from './WorkflowOutputNode'; const nodeWithJT = { diff --git a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputToolbar.jsx b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputToolbar.jsx index a2127fd800..f70b17930f 100644 --- a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputToolbar.jsx +++ b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputToolbar.jsx @@ -1,15 +1,15 @@ import React, { useContext } from 'react'; -import { - WorkflowDispatchContext, - WorkflowStateContext, -} from '@contexts/Workflow'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { shape } from 'prop-types'; import { Badge as PFBadge, Button, Tooltip } from '@patternfly/react-core'; import { CompassIcon, WrenchIcon } from '@patternfly/react-icons'; -import StatusIcon from '@components/StatusIcon'; import styled from 'styled-components'; +import StatusIcon from '../../../components/StatusIcon'; +import { + WorkflowDispatchContext, + WorkflowStateContext, +} from '../../../contexts/Workflow'; const Toolbar = styled.div` align-items: center; diff --git a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputToolbar.test.jsx b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputToolbar.test.jsx index 3523e08f32..6fbe4ff9eb 100644 --- a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputToolbar.test.jsx +++ b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputToolbar.test.jsx @@ -2,8 +2,8 @@ import React from 'react'; import { WorkflowDispatchContext, WorkflowStateContext, -} from '@contexts/Workflow'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +} from '../../../contexts/Workflow'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import WorkflowOutputToolbar from './WorkflowOutputToolbar'; let wrapper; diff --git a/awx/ui_next/src/screens/JobsSetting/JobsSettings.test.jsx b/awx/ui_next/src/screens/JobsSetting/JobsSettings.test.jsx index 7ef6442c32..c57567c5c4 100644 --- a/awx/ui_next/src/screens/JobsSetting/JobsSettings.test.jsx +++ b/awx/ui_next/src/screens/JobsSetting/JobsSettings.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import JobsSettings from './JobsSettings'; diff --git a/awx/ui_next/src/screens/License/License.test.jsx b/awx/ui_next/src/screens/License/License.test.jsx index 038815d255..58e3cbfa90 100644 --- a/awx/ui_next/src/screens/License/License.test.jsx +++ b/awx/ui_next/src/screens/License/License.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import License from './License'; diff --git a/awx/ui_next/src/screens/Login/Login.test.jsx b/awx/ui_next/src/screens/Login/Login.test.jsx index b68b3a025f..1a3dd47ec5 100644 --- a/awx/ui_next/src/screens/Login/Login.test.jsx +++ b/awx/ui_next/src/screens/Login/Login.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; -import { RootAPI } from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { RootAPI } from '../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../testUtils/enzymeHelpers'; import AWXLogin from './Login'; -jest.mock('@api'); +jest.mock('../../api'); describe('', () => { async function findChildren(wrapper) { diff --git a/awx/ui_next/src/screens/ManagementJob/ManagementJobs.test.jsx b/awx/ui_next/src/screens/ManagementJob/ManagementJobs.test.jsx index 452e1c3d1d..f6b6ecfbf9 100644 --- a/awx/ui_next/src/screens/ManagementJob/ManagementJobs.test.jsx +++ b/awx/ui_next/src/screens/ManagementJob/ManagementJobs.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import ManagementJobs from './ManagementJobs'; diff --git a/awx/ui_next/src/screens/NotFound.jsx b/awx/ui_next/src/screens/NotFound.jsx index 16be2e5b7e..14e04cd1ab 100644 --- a/awx/ui_next/src/screens/NotFound.jsx +++ b/awx/ui_next/src/screens/NotFound.jsx @@ -1,6 +1,6 @@ import React from 'react'; import { PageSection, Card } from '@patternfly/react-core'; -import ContentError from '@components/ContentError'; +import ContentError from '../components/ContentError'; function NotFound() { return ( diff --git a/awx/ui_next/src/screens/NotificationTemplate/NotificationTemplates.test.jsx b/awx/ui_next/src/screens/NotificationTemplate/NotificationTemplates.test.jsx index db47d7c965..93babc8e06 100644 --- a/awx/ui_next/src/screens/NotificationTemplate/NotificationTemplates.test.jsx +++ b/awx/ui_next/src/screens/NotificationTemplate/NotificationTemplates.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import NotificationTemplates from './NotificationTemplates'; diff --git a/awx/ui_next/src/screens/Organization/Organization.jsx b/awx/ui_next/src/screens/Organization/Organization.jsx index f2bcd6f91e..6dfb120c29 100644 --- a/awx/ui_next/src/screens/Organization/Organization.jsx +++ b/awx/ui_next/src/screens/Organization/Organization.jsx @@ -3,16 +3,16 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Switch, Route, withRouter, Redirect, Link } from 'react-router-dom'; import { Card, CardActions, PageSection } from '@patternfly/react-core'; -import CardCloseButton from '@components/CardCloseButton'; -import { TabbedCardHeader } from '@components/Card'; -import RoutedTabs from '@components/RoutedTabs'; -import ContentError from '@components/ContentError'; -import NotificationList from '@components/NotificationList/NotificationList'; -import { ResourceAccessList } from '@components/ResourceAccessList'; +import CardCloseButton from '../../components/CardCloseButton'; +import { TabbedCardHeader } from '../../components/Card'; +import RoutedTabs from '../../components/RoutedTabs'; +import ContentError from '../../components/ContentError'; +import NotificationList from '../../components/NotificationList/NotificationList'; +import { ResourceAccessList } from '../../components/ResourceAccessList'; import OrganizationDetail from './OrganizationDetail'; import OrganizationEdit from './OrganizationEdit'; import OrganizationTeams from './OrganizationTeams'; -import { OrganizationsAPI } from '@api'; +import { OrganizationsAPI } from '../../api'; class Organization extends Component { constructor(props) { diff --git a/awx/ui_next/src/screens/Organization/Organization.test.jsx b/awx/ui_next/src/screens/Organization/Organization.test.jsx index 4fda6bcffc..a287b87f85 100644 --- a/awx/ui_next/src/screens/Organization/Organization.test.jsx +++ b/awx/ui_next/src/screens/Organization/Organization.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { createMemoryHistory } from 'history'; -import { OrganizationsAPI } from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; -import mockOrganization from '@util/data.organization.json'; +import { OrganizationsAPI } from '../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../testUtils/enzymeHelpers'; +import mockOrganization from '../../util/data.organization.json'; import Organization from './Organization'; -jest.mock('@api'); +jest.mock('../../api'); const mockMe = { is_super_user: true, diff --git a/awx/ui_next/src/screens/Organization/OrganizationAdd/OrganizationAdd.jsx b/awx/ui_next/src/screens/Organization/OrganizationAdd/OrganizationAdd.jsx index 90ffdfccd2..b0831829b0 100644 --- a/awx/ui_next/src/screens/Organization/OrganizationAdd/OrganizationAdd.jsx +++ b/awx/ui_next/src/screens/Organization/OrganizationAdd/OrganizationAdd.jsx @@ -3,9 +3,9 @@ import PropTypes from 'prop-types'; import { useHistory } from 'react-router-dom'; import { PageSection, Card } from '@patternfly/react-core'; -import { OrganizationsAPI } from '@api'; -import { Config } from '@contexts/Config'; -import { CardBody } from '@components/Card'; +import { OrganizationsAPI } from '../../../api'; +import { Config } from '../../../contexts/Config'; +import { CardBody } from '../../../components/Card'; import OrganizationForm from '../shared/OrganizationForm'; function OrganizationAdd() { diff --git a/awx/ui_next/src/screens/Organization/OrganizationAdd/OrganizationAdd.test.jsx b/awx/ui_next/src/screens/Organization/OrganizationAdd/OrganizationAdd.test.jsx index 4618508afc..978fbeed86 100644 --- a/awx/ui_next/src/screens/Organization/OrganizationAdd/OrganizationAdd.test.jsx +++ b/awx/ui_next/src/screens/Organization/OrganizationAdd/OrganizationAdd.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import OrganizationAdd from './OrganizationAdd'; -import { OrganizationsAPI } from '@api'; +import { OrganizationsAPI } from '../../../api'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { test('onSubmit should post to api', async () => { diff --git a/awx/ui_next/src/screens/Organization/OrganizationDetail/OrganizationDetail.jsx b/awx/ui_next/src/screens/Organization/OrganizationDetail/OrganizationDetail.jsx index 61183eecab..58444a3d19 100644 --- a/awx/ui_next/src/screens/Organization/OrganizationDetail/OrganizationDetail.jsx +++ b/awx/ui_next/src/screens/Organization/OrganizationDetail/OrganizationDetail.jsx @@ -3,15 +3,15 @@ import { Link, useHistory, useRouteMatch } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Button, Chip } from '@patternfly/react-core'; -import { OrganizationsAPI } from '@api'; -import { DetailList, Detail, UserDateDetail } from '@components/DetailList'; -import { CardBody, CardActionsRow } from '@components/Card'; -import AlertModal from '@components/AlertModal'; -import ChipGroup from '@components/ChipGroup'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import DeleteButton from '@components/DeleteButton'; -import ErrorDetail from '@components/ErrorDetail'; +import { OrganizationsAPI } from '../../../api'; +import { DetailList, Detail, UserDateDetail } from '../../../components/DetailList'; +import { CardBody, CardActionsRow } from '../../../components/Card'; +import AlertModal from '../../../components/AlertModal'; +import ChipGroup from '../../../components/ChipGroup'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; +import DeleteButton from '../../../components/DeleteButton'; +import ErrorDetail from '../../../components/ErrorDetail'; function OrganizationDetail({ i18n, organization }) { const { diff --git a/awx/ui_next/src/screens/Organization/OrganizationDetail/OrganizationDetail.test.jsx b/awx/ui_next/src/screens/Organization/OrganizationDetail/OrganizationDetail.test.jsx index 19ecdb7612..f1c3b3875f 100644 --- a/awx/ui_next/src/screens/Organization/OrganizationDetail/OrganizationDetail.test.jsx +++ b/awx/ui_next/src/screens/Organization/OrganizationDetail/OrganizationDetail.test.jsx @@ -1,12 +1,15 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { OrganizationsAPI } from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { OrganizationsAPI } from '../../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import OrganizationDetail from './OrganizationDetail'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { const mockOrganization = { diff --git a/awx/ui_next/src/screens/Organization/OrganizationEdit/OrganizationEdit.jsx b/awx/ui_next/src/screens/Organization/OrganizationEdit/OrganizationEdit.jsx index 04c13c8848..c95c47faf2 100644 --- a/awx/ui_next/src/screens/Organization/OrganizationEdit/OrganizationEdit.jsx +++ b/awx/ui_next/src/screens/Organization/OrganizationEdit/OrganizationEdit.jsx @@ -1,9 +1,9 @@ import React, { useState } from 'react'; import PropTypes from 'prop-types'; import { useHistory } from 'react-router-dom'; -import { CardBody } from '@components/Card'; -import { OrganizationsAPI } from '@api'; -import { Config } from '@contexts/Config'; +import { CardBody } from '../../../components/Card'; +import { OrganizationsAPI } from '../../../api'; +import { Config } from '../../../contexts/Config'; import OrganizationForm from '../shared/OrganizationForm'; diff --git a/awx/ui_next/src/screens/Organization/OrganizationEdit/OrganizationEdit.test.jsx b/awx/ui_next/src/screens/Organization/OrganizationEdit/OrganizationEdit.test.jsx index 8defe7ccc6..7e8b16fe49 100644 --- a/awx/ui_next/src/screens/Organization/OrganizationEdit/OrganizationEdit.test.jsx +++ b/awx/ui_next/src/screens/Organization/OrganizationEdit/OrganizationEdit.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { OrganizationsAPI } from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { OrganizationsAPI } from '../../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import OrganizationEdit from './OrganizationEdit'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { const mockData = { diff --git a/awx/ui_next/src/screens/Organization/OrganizationList/OrganizationList.jsx b/awx/ui_next/src/screens/Organization/OrganizationList/OrganizationList.jsx index b72c9511f0..ce4c11fe0f 100644 --- a/awx/ui_next/src/screens/Organization/OrganizationList/OrganizationList.jsx +++ b/awx/ui_next/src/screens/Organization/OrganizationList/OrganizationList.jsx @@ -4,16 +4,16 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Card, PageSection } from '@patternfly/react-core'; -import { OrganizationsAPI } from '@api'; -import useRequest, { useDeleteItems } from '@util/useRequest'; -import AlertModal from '@components/AlertModal'; -import DataListToolbar from '@components/DataListToolbar'; -import ErrorDetail from '@components/ErrorDetail'; +import { OrganizationsAPI } from '../../../api'; +import useRequest, { useDeleteItems } from '../../../util/useRequest'; +import AlertModal from '../../../components/AlertModal'; +import DataListToolbar from '../../../components/DataListToolbar'; +import ErrorDetail from '../../../components/ErrorDetail'; import PaginatedDataList, { ToolbarAddButton, ToolbarDeleteButton, -} from '@components/PaginatedDataList'; -import { getQSConfig, parseQueryString } from '@util/qs'; +} from '../../../components/PaginatedDataList'; +import { getQSConfig, parseQueryString } from '../../../util/qs'; import OrganizationListItem from './OrganizationListItem'; const QS_CONFIG = getQSConfig('organization', { diff --git a/awx/ui_next/src/screens/Organization/OrganizationList/OrganizationList.test.jsx b/awx/ui_next/src/screens/Organization/OrganizationList/OrganizationList.test.jsx index 8151033123..963b205d62 100644 --- a/awx/ui_next/src/screens/Organization/OrganizationList/OrganizationList.test.jsx +++ b/awx/ui_next/src/screens/Organization/OrganizationList/OrganizationList.test.jsx @@ -1,12 +1,15 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { OrganizationsAPI } from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { OrganizationsAPI } from '../../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import OrganizationsList from './OrganizationList'; -jest.mock('@api'); +jest.mock('../../../api'); const mockOrganizations = { data: { diff --git a/awx/ui_next/src/screens/Organization/OrganizationList/OrganizationListItem.jsx b/awx/ui_next/src/screens/Organization/OrganizationList/OrganizationListItem.jsx index 9c1f66ae11..51f78c173c 100644 --- a/awx/ui_next/src/screens/Organization/OrganizationList/OrganizationListItem.jsx +++ b/awx/ui_next/src/screens/Organization/OrganizationList/OrganizationListItem.jsx @@ -12,13 +12,13 @@ import { DataListItemRow, Tooltip, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; import { Link } from 'react-router-dom'; import styled from 'styled-components'; import { PencilAltIcon } from '@patternfly/react-icons'; +import DataListCell from '../../../components/DataListCell'; -import { Organization } from '@types'; +import { Organization } from '../../../types'; const Badge = styled(PFBadge)` margin-left: 8px; diff --git a/awx/ui_next/src/screens/Organization/OrganizationList/OrganizationListItem.test.jsx b/awx/ui_next/src/screens/Organization/OrganizationList/OrganizationListItem.test.jsx index 410dac6cfb..e439714dfe 100644 --- a/awx/ui_next/src/screens/Organization/OrganizationList/OrganizationListItem.test.jsx +++ b/awx/ui_next/src/screens/Organization/OrganizationList/OrganizationListItem.test.jsx @@ -2,7 +2,7 @@ import React from 'react'; import { MemoryRouter } from 'react-router-dom'; import { I18nProvider } from '@lingui/react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import OrganizationListItem from './OrganizationListItem'; diff --git a/awx/ui_next/src/screens/Organization/OrganizationTeams/OrganizationTeams.jsx b/awx/ui_next/src/screens/Organization/OrganizationTeams/OrganizationTeams.jsx index a94215dcd0..1fb0e88c89 100644 --- a/awx/ui_next/src/screens/Organization/OrganizationTeams/OrganizationTeams.jsx +++ b/awx/ui_next/src/screens/Organization/OrganizationTeams/OrganizationTeams.jsx @@ -3,9 +3,9 @@ import PropTypes from 'prop-types'; import { useLocation } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { OrganizationsAPI } from '@api'; -import PaginatedDataList from '@components/PaginatedDataList'; -import { getQSConfig, parseQueryString } from '@util/qs'; +import { OrganizationsAPI } from '../../../api'; +import PaginatedDataList from '../../../components/PaginatedDataList'; +import { getQSConfig, parseQueryString } from '../../../util/qs'; const QS_CONFIG = getQSConfig('team', { page: 1, diff --git a/awx/ui_next/src/screens/Organization/OrganizationTeams/OrganizationTeams.test.jsx b/awx/ui_next/src/screens/Organization/OrganizationTeams/OrganizationTeams.test.jsx index fbc5b48a59..c21ec13622 100644 --- a/awx/ui_next/src/screens/Organization/OrganizationTeams/OrganizationTeams.test.jsx +++ b/awx/ui_next/src/screens/Organization/OrganizationTeams/OrganizationTeams.test.jsx @@ -1,13 +1,16 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { OrganizationsAPI } from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; -import { sleep } from '@testUtils/testUtils'; +import { OrganizationsAPI } from '../../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; +import { sleep } from '../../../../testUtils/testUtils'; import OrganizationTeams from './OrganizationTeams'; -jest.mock('@api'); +jest.mock('../../../api'); const listData = { data: { diff --git a/awx/ui_next/src/screens/Organization/Organizations.jsx b/awx/ui_next/src/screens/Organization/Organizations.jsx index 1cc09a68ba..2a289b6be6 100644 --- a/awx/ui_next/src/screens/Organization/Organizations.jsx +++ b/awx/ui_next/src/screens/Organization/Organizations.jsx @@ -3,8 +3,8 @@ import { Route, withRouter, Switch } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { Config } from '@contexts/Config'; -import Breadcrumbs from '@components/Breadcrumbs/Breadcrumbs'; +import { Config } from '../../contexts/Config'; +import Breadcrumbs from '../../components/Breadcrumbs/Breadcrumbs'; import OrganizationsList from './OrganizationList/OrganizationList'; import OrganizationAdd from './OrganizationAdd/OrganizationAdd'; diff --git a/awx/ui_next/src/screens/Organization/Organizations.test.jsx b/awx/ui_next/src/screens/Organization/Organizations.test.jsx index 6a9a07ba19..4f510463a4 100644 --- a/awx/ui_next/src/screens/Organization/Organizations.test.jsx +++ b/awx/ui_next/src/screens/Organization/Organizations.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import Organizations from './Organizations'; -jest.mock('@api'); +jest.mock('../../api'); describe('', () => { test('initially renders succesfully', async () => { diff --git a/awx/ui_next/src/screens/Organization/shared/OrganizationForm.jsx b/awx/ui_next/src/screens/Organization/shared/OrganizationForm.jsx index 5618846da5..f164b19a6e 100644 --- a/awx/ui_next/src/screens/Organization/shared/OrganizationForm.jsx +++ b/awx/ui_next/src/screens/Organization/shared/OrganizationForm.jsx @@ -5,17 +5,17 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Form, FormGroup } from '@patternfly/react-core'; -import { OrganizationsAPI } from '@api'; -import { ConfigContext } from '@contexts/Config'; -import AnsibleSelect from '@components/AnsibleSelect'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import FormField, { FormSubmitError } from '@components/FormField'; -import FormActionGroup from '@components/FormActionGroup/FormActionGroup'; -import { InstanceGroupsLookup } from '@components/Lookup/'; -import { getAddedAndRemoved } from '@util/lists'; -import { required, minMaxValue } from '@util/validators'; -import { FormColumnLayout } from '@components/FormLayout'; +import { OrganizationsAPI } from '../../../api'; +import { ConfigContext } from '../../../contexts/Config'; +import AnsibleSelect from '../../../components/AnsibleSelect'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; +import FormField, { FormSubmitError } from '../../../components/FormField'; +import FormActionGroup from '../../../components/FormActionGroup/FormActionGroup'; +import { InstanceGroupsLookup } from '../../../components/Lookup'; +import { getAddedAndRemoved } from '../../../util/lists'; +import { required, minMaxValue } from '../../../util/validators'; +import { FormColumnLayout } from '../../../components/FormLayout'; function OrganizationFormFields({ i18n, diff --git a/awx/ui_next/src/screens/Organization/shared/OrganizationForm.test.jsx b/awx/ui_next/src/screens/Organization/shared/OrganizationForm.test.jsx index 40e0844d9e..abd55fcc44 100644 --- a/awx/ui_next/src/screens/Organization/shared/OrganizationForm.test.jsx +++ b/awx/ui_next/src/screens/Organization/shared/OrganizationForm.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; -import { OrganizationsAPI } from '@api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; +import { OrganizationsAPI } from '../../../api'; import OrganizationForm from './OrganizationForm'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { const network = {}; diff --git a/awx/ui_next/src/screens/Portal/Portal.test.jsx b/awx/ui_next/src/screens/Portal/Portal.test.jsx index fc51cec4d7..cee4a93678 100644 --- a/awx/ui_next/src/screens/Portal/Portal.test.jsx +++ b/awx/ui_next/src/screens/Portal/Portal.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import Portal from './Portal'; diff --git a/awx/ui_next/src/screens/Project/Project.jsx b/awx/ui_next/src/screens/Project/Project.jsx index debd3aaae6..f20b66e3ca 100644 --- a/awx/ui_next/src/screens/Project/Project.jsx +++ b/awx/ui_next/src/screens/Project/Project.jsx @@ -3,17 +3,17 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Switch, Route, withRouter, Redirect, Link } from 'react-router-dom'; import { Card, CardActions, PageSection } from '@patternfly/react-core'; -import { TabbedCardHeader } from '@components/Card'; -import CardCloseButton from '@components/CardCloseButton'; -import RoutedTabs from '@components/RoutedTabs'; -import ContentError from '@components/ContentError'; -import NotificationList from '@components/NotificationList'; -import { ResourceAccessList } from '@components/ResourceAccessList'; -import { Schedules } from '@components/Schedule'; +import { TabbedCardHeader } from '../../components/Card'; +import CardCloseButton from '../../components/CardCloseButton'; +import RoutedTabs from '../../components/RoutedTabs'; +import ContentError from '../../components/ContentError'; +import NotificationList from '../../components/NotificationList'; +import { ResourceAccessList } from '../../components/ResourceAccessList'; +import { Schedules } from '../../components/Schedule'; import ProjectDetail from './ProjectDetail'; import ProjectEdit from './ProjectEdit'; import ProjectJobTemplatesList from './ProjectJobTemplatesList'; -import { OrganizationsAPI, ProjectsAPI } from '@api'; +import { OrganizationsAPI, ProjectsAPI } from '../../api'; class Project extends Component { constructor(props) { diff --git a/awx/ui_next/src/screens/Project/Project.test.jsx b/awx/ui_next/src/screens/Project/Project.test.jsx index f4926be0fd..f2ecf09cc7 100644 --- a/awx/ui_next/src/screens/Project/Project.test.jsx +++ b/awx/ui_next/src/screens/Project/Project.test.jsx @@ -1,12 +1,15 @@ import React from 'react'; import { createMemoryHistory } from 'history'; -import { OrganizationsAPI, ProjectsAPI } from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; -import mockOrganization from '@util/data.organization.json'; +import { OrganizationsAPI, ProjectsAPI } from '../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../testUtils/enzymeHelpers'; +import mockOrganization from '../../util/data.organization.json'; import mockDetails from './data.project.json'; import Project from './Project'; -jest.mock('@api'); +jest.mock('../../api'); const mockMe = { is_super_user: true, diff --git a/awx/ui_next/src/screens/Project/ProjectAdd/ProjectAdd.jsx b/awx/ui_next/src/screens/Project/ProjectAdd/ProjectAdd.jsx index cb55541240..d0190830e6 100644 --- a/awx/ui_next/src/screens/Project/ProjectAdd/ProjectAdd.jsx +++ b/awx/ui_next/src/screens/Project/ProjectAdd/ProjectAdd.jsx @@ -1,9 +1,9 @@ import React, { useState } from 'react'; import { useHistory } from 'react-router-dom'; import { Card, PageSection } from '@patternfly/react-core'; -import { CardBody } from '@components/Card'; +import { CardBody } from '../../../components/Card'; import ProjectForm from '../shared/ProjectForm'; -import { ProjectsAPI } from '@api'; +import { ProjectsAPI } from '../../../api'; function ProjectAdd() { const [formSubmitError, setFormSubmitError] = useState(null); diff --git a/awx/ui_next/src/screens/Project/ProjectAdd/ProjectAdd.test.jsx b/awx/ui_next/src/screens/Project/ProjectAdd/ProjectAdd.test.jsx index b4048ed55c..a47bb424bf 100644 --- a/awx/ui_next/src/screens/Project/ProjectAdd/ProjectAdd.test.jsx +++ b/awx/ui_next/src/screens/Project/ProjectAdd/ProjectAdd.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import ProjectAdd from './ProjectAdd'; -import { ProjectsAPI, CredentialTypesAPI } from '@api'; +import { ProjectsAPI, CredentialTypesAPI } from '../../../api'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/screens/Project/ProjectDetail/ProjectDetail.jsx b/awx/ui_next/src/screens/Project/ProjectDetail/ProjectDetail.jsx index 4926d72c62..a549c7adba 100644 --- a/awx/ui_next/src/screens/Project/ProjectDetail/ProjectDetail.jsx +++ b/awx/ui_next/src/screens/Project/ProjectDetail/ProjectDetail.jsx @@ -2,19 +2,23 @@ import React, { useState } from 'react'; import { Link, useHistory } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { Project } from '@types'; -import { Config } from '@contexts/Config'; - import { Button, List, ListItem } from '@patternfly/react-core'; -import AlertModal from '@components/AlertModal'; -import { CardBody, CardActionsRow } from '@components/Card'; -import ContentLoading from '@components/ContentLoading'; -import DeleteButton from '@components/DeleteButton'; -import { DetailList, Detail, UserDateDetail } from '@components/DetailList'; -import ErrorDetail from '@components/ErrorDetail'; -import CredentialChip from '@components/CredentialChip'; -import { ProjectsAPI } from '@api'; -import { toTitleCase } from '@util/strings'; +import { Project } from '../../../types'; +import { Config } from '../../../contexts/Config'; + +import AlertModal from '../../../components/AlertModal'; +import { CardBody, CardActionsRow } from '../../../components/Card'; +import ContentLoading from '../../../components/ContentLoading'; +import DeleteButton from '../../../components/DeleteButton'; +import { + DetailList, + Detail, + UserDateDetail, +} from '../../../components/DetailList'; +import ErrorDetail from '../../../components/ErrorDetail'; +import CredentialChip from '../../../components/CredentialChip'; +import { ProjectsAPI } from '../../../api'; +import { toTitleCase } from '../../../util/strings'; function ProjectDetail({ project, i18n }) { const { diff --git a/awx/ui_next/src/screens/Project/ProjectDetail/ProjectDetail.test.jsx b/awx/ui_next/src/screens/Project/ProjectDetail/ProjectDetail.test.jsx index 809a4b2962..3139e2b14c 100644 --- a/awx/ui_next/src/screens/Project/ProjectDetail/ProjectDetail.test.jsx +++ b/awx/ui_next/src/screens/Project/ProjectDetail/ProjectDetail.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; -import { ProjectsAPI } from '@api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; +import { ProjectsAPI } from '../../../api'; import ProjectDetail from './ProjectDetail'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { const mockProject = { diff --git a/awx/ui_next/src/screens/Project/ProjectEdit/ProjectEdit.jsx b/awx/ui_next/src/screens/Project/ProjectEdit/ProjectEdit.jsx index 8669af4ede..6642e03503 100644 --- a/awx/ui_next/src/screens/Project/ProjectEdit/ProjectEdit.jsx +++ b/awx/ui_next/src/screens/Project/ProjectEdit/ProjectEdit.jsx @@ -1,9 +1,9 @@ import React, { useState } from 'react'; import { useHistory } from 'react-router-dom'; import { Card } from '@patternfly/react-core'; -import { CardBody } from '@components/Card'; +import { CardBody } from '../../../components/Card'; import ProjectForm from '../shared/ProjectForm'; -import { ProjectsAPI } from '@api'; +import { ProjectsAPI } from '../../../api'; function ProjectEdit({ project }) { const [formSubmitError, setFormSubmitError] = useState(null); diff --git a/awx/ui_next/src/screens/Project/ProjectEdit/ProjectEdit.test.jsx b/awx/ui_next/src/screens/Project/ProjectEdit/ProjectEdit.test.jsx index 6ab0602b53..5b75396d65 100644 --- a/awx/ui_next/src/screens/Project/ProjectEdit/ProjectEdit.test.jsx +++ b/awx/ui_next/src/screens/Project/ProjectEdit/ProjectEdit.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import ProjectEdit from './ProjectEdit'; -import { ProjectsAPI, CredentialTypesAPI } from '@api'; +import { ProjectsAPI, CredentialTypesAPI } from '../../../api'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/screens/Project/ProjectJobTemplatesList/ProjectJobTemplatesList.jsx b/awx/ui_next/src/screens/Project/ProjectJobTemplatesList/ProjectJobTemplatesList.jsx index c0585ec957..defb79bab7 100644 --- a/awx/ui_next/src/screens/Project/ProjectJobTemplatesList/ProjectJobTemplatesList.jsx +++ b/awx/ui_next/src/screens/Project/ProjectJobTemplatesList/ProjectJobTemplatesList.jsx @@ -8,15 +8,15 @@ import { JobTemplatesAPI, UnifiedJobTemplatesAPI, WorkflowJobTemplatesAPI, -} from '@api'; -import AlertModal from '@components/AlertModal'; -import DatalistToolbar from '@components/DataListToolbar'; -import ErrorDetail from '@components/ErrorDetail'; +} from '../../../api'; +import AlertModal from '../../../components/AlertModal'; +import DatalistToolbar from '../../../components/DataListToolbar'; +import ErrorDetail from '../../../components/ErrorDetail'; import PaginatedDataList, { ToolbarAddButton, ToolbarDeleteButton, -} from '@components/PaginatedDataList'; -import { getQSConfig, parseQueryString } from '@util/qs'; +} from '../../../components/PaginatedDataList'; +import { getQSConfig, parseQueryString } from '../../../util/qs'; import ProjectTemplatesListItem from './ProjectJobTemplatesListItem'; // The type value in const QS_CONFIG below does not have a space between job_template and diff --git a/awx/ui_next/src/screens/Project/ProjectJobTemplatesList/ProjectJobTemplatesListItem.jsx b/awx/ui_next/src/screens/Project/ProjectJobTemplatesList/ProjectJobTemplatesListItem.jsx index 2932969178..4d185e4b5f 100644 --- a/awx/ui_next/src/screens/Project/ProjectJobTemplatesList/ProjectJobTemplatesListItem.jsx +++ b/awx/ui_next/src/screens/Project/ProjectJobTemplatesList/ProjectJobTemplatesListItem.jsx @@ -9,8 +9,6 @@ import { DataListItemCells, Tooltip, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; - import { t } from '@lingui/macro'; import { withI18n } from '@lingui/react'; import { @@ -18,11 +16,12 @@ import { PencilAltIcon, RocketIcon, } from '@patternfly/react-icons'; - -import LaunchButton from '@components/LaunchButton'; -import Sparkline from '@components/Sparkline'; -import { toTitleCase } from '@util/strings'; import styled from 'styled-components'; +import DataListCell from '../../../components/DataListCell'; + +import LaunchButton from '../../../components/LaunchButton'; +import Sparkline from '../../../components/Sparkline'; +import { toTitleCase } from '../../../util/strings'; const DataListAction = styled(_DataListAction)` align-items: center; diff --git a/awx/ui_next/src/screens/Project/ProjectJobTemplatesList/ProjectJobTemplatesListItem.test.jsx b/awx/ui_next/src/screens/Project/ProjectJobTemplatesList/ProjectJobTemplatesListItem.test.jsx index f94fc1a6e2..eb03999b6c 100644 --- a/awx/ui_next/src/screens/Project/ProjectJobTemplatesList/ProjectJobTemplatesListItem.test.jsx +++ b/awx/ui_next/src/screens/Project/ProjectJobTemplatesList/ProjectJobTemplatesListItem.test.jsx @@ -1,7 +1,7 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; import { createMemoryHistory } from 'history'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import ProjectJobTemplatesListItem from './ProjectJobTemplatesListItem'; describe('', () => { diff --git a/awx/ui_next/src/screens/Project/ProjectList/ProjectList.jsx b/awx/ui_next/src/screens/Project/ProjectList/ProjectList.jsx index 77db42660b..e82a31c4ae 100644 --- a/awx/ui_next/src/screens/Project/ProjectList/ProjectList.jsx +++ b/awx/ui_next/src/screens/Project/ProjectList/ProjectList.jsx @@ -4,16 +4,16 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Card, PageSection } from '@patternfly/react-core'; -import { ProjectsAPI } from '@api'; -import useRequest, { useDeleteItems } from '@util/useRequest'; -import AlertModal from '@components/AlertModal'; -import DataListToolbar from '@components/DataListToolbar'; -import ErrorDetail from '@components/ErrorDetail'; +import { ProjectsAPI } from '../../../api'; +import useRequest, { useDeleteItems } from '../../../util/useRequest'; +import AlertModal from '../../../components/AlertModal'; +import DataListToolbar from '../../../components/DataListToolbar'; +import ErrorDetail from '../../../components/ErrorDetail'; import PaginatedDataList, { ToolbarAddButton, ToolbarDeleteButton, -} from '@components/PaginatedDataList'; -import { getQSConfig, parseQueryString } from '@util/qs'; +} from '../../../components/PaginatedDataList'; +import { getQSConfig, parseQueryString } from '../../../util/qs'; import ProjectListItem from './ProjectListItem'; diff --git a/awx/ui_next/src/screens/Project/ProjectList/ProjectList.test.jsx b/awx/ui_next/src/screens/Project/ProjectList/ProjectList.test.jsx index 6fcebf02ea..945fbfc8e4 100644 --- a/awx/ui_next/src/screens/Project/ProjectList/ProjectList.test.jsx +++ b/awx/ui_next/src/screens/Project/ProjectList/ProjectList.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { ProjectsAPI } from '@api'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { ProjectsAPI } from '../../../api'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import ProjectList from './ProjectList'; -jest.mock('@api'); +jest.mock('../../../api'); const mockProjects = [ { diff --git a/awx/ui_next/src/screens/Project/ProjectList/ProjectListItem.jsx b/awx/ui_next/src/screens/Project/ProjectList/ProjectListItem.jsx index b59435e5a6..c506b0f548 100644 --- a/awx/ui_next/src/screens/Project/ProjectList/ProjectListItem.jsx +++ b/awx/ui_next/src/screens/Project/ProjectList/ProjectListItem.jsx @@ -10,20 +10,19 @@ import { DataListItemCells, Tooltip, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; import { t } from '@lingui/macro'; import { Link } from 'react-router-dom'; import { PencilAltIcon, SyncIcon } from '@patternfly/react-icons'; import styled from 'styled-components'; -import { timeOfDay } from '@util/dates'; -import { ProjectsAPI } from '@api'; -import ClipboardCopyButton from '@components/ClipboardCopyButton'; -import StatusIcon from '@components/StatusIcon'; -import { toTitleCase } from '@util/strings'; -import CopyButton from '@components/CopyButton'; +import { timeOfDay } from '../../../util/dates'; +import { ProjectsAPI } from '../../../api'; +import ClipboardCopyButton from '../../../components/ClipboardCopyButton'; +import StatusIcon from '../../../components/StatusIcon'; +import { toTitleCase } from '../../../util/strings'; +import CopyButton from '../../../components/CopyButton'; import ProjectSyncButton from '../shared/ProjectSyncButton'; -import { Project } from '@types'; +import { Project } from '../../../types'; const DataListAction = styled(_DataListAction)` align-items: center; diff --git a/awx/ui_next/src/screens/Project/ProjectList/ProjectListItem.test.jsx b/awx/ui_next/src/screens/Project/ProjectList/ProjectListItem.test.jsx index 9beb03cf09..74c61fbed5 100644 --- a/awx/ui_next/src/screens/Project/ProjectList/ProjectListItem.test.jsx +++ b/awx/ui_next/src/screens/Project/ProjectList/ProjectListItem.test.jsx @@ -1,11 +1,11 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import { act } from 'react-dom/test-utils'; import ProjectsListItem from './ProjectListItem'; -import { ProjectsAPI } from '@api'; +import { ProjectsAPI } from '../../../api'; -jest.mock('@api/models/Projects'); +jest.mock('../../../api/models/Projects'); describe('', () => { test('launch button shown to users with start capabilities', () => { diff --git a/awx/ui_next/src/screens/Project/ProjectSchedules/ProjectSchedules.jsx b/awx/ui_next/src/screens/Project/ProjectSchedules/ProjectSchedules.jsx index 390426b03a..f0667f035a 100644 --- a/awx/ui_next/src/screens/Project/ProjectSchedules/ProjectSchedules.jsx +++ b/awx/ui_next/src/screens/Project/ProjectSchedules/ProjectSchedules.jsx @@ -1,5 +1,5 @@ import React, { Component } from 'react'; -import { CardBody } from '@components/Card'; +import { CardBody } from '../../../components/Card'; class ProjectSchedules extends Component { render() { diff --git a/awx/ui_next/src/screens/Project/Projects.jsx b/awx/ui_next/src/screens/Project/Projects.jsx index a5bcddd4f0..0bb53de606 100644 --- a/awx/ui_next/src/screens/Project/Projects.jsx +++ b/awx/ui_next/src/screens/Project/Projects.jsx @@ -3,8 +3,8 @@ import { Route, withRouter, Switch } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { Config } from '@contexts/Config'; -import Breadcrumbs from '@components/Breadcrumbs/Breadcrumbs'; +import { Config } from '../../contexts/Config'; +import Breadcrumbs from '../../components/Breadcrumbs/Breadcrumbs'; import ProjectsList from './ProjectList/ProjectList'; import ProjectAdd from './ProjectAdd/ProjectAdd'; diff --git a/awx/ui_next/src/screens/Project/Projects.test.jsx b/awx/ui_next/src/screens/Project/Projects.test.jsx index c901fc5290..b46f37ae23 100644 --- a/awx/ui_next/src/screens/Project/Projects.test.jsx +++ b/awx/ui_next/src/screens/Project/Projects.test.jsx @@ -1,7 +1,7 @@ import React from 'react'; import { createMemoryHistory } from 'history'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import Projects from './Projects'; diff --git a/awx/ui_next/src/screens/Project/shared/ProjectForm.jsx b/awx/ui_next/src/screens/Project/shared/ProjectForm.jsx index d37de3ef65..eee485d646 100644 --- a/awx/ui_next/src/screens/Project/shared/ProjectForm.jsx +++ b/awx/ui_next/src/screens/Project/shared/ProjectForm.jsx @@ -4,20 +4,23 @@ import PropTypes from 'prop-types'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Formik, useField } from 'formik'; -import { Config } from '@contexts/Config'; import { Form, FormGroup, Title } from '@patternfly/react-core'; -import AnsibleSelect from '@components/AnsibleSelect'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import FormActionGroup from '@components/FormActionGroup/FormActionGroup'; +import { Config } from '../../../contexts/Config'; +import AnsibleSelect from '../../../components/AnsibleSelect'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; +import FormActionGroup from '../../../components/FormActionGroup/FormActionGroup'; import FormField, { FieldTooltip, FormSubmitError, -} from '@components/FormField'; -import OrganizationLookup from '@components/Lookup/OrganizationLookup'; -import { CredentialTypesAPI, ProjectsAPI } from '@api'; -import { required } from '@util/validators'; -import { FormColumnLayout, SubFormLayout } from '@components/FormLayout'; +} from '../../../components/FormField'; +import OrganizationLookup from '../../../components/Lookup/OrganizationLookup'; +import { CredentialTypesAPI, ProjectsAPI } from '../../../api'; +import { required } from '../../../util/validators'; +import { + FormColumnLayout, + SubFormLayout, +} from '../../../components/FormLayout'; import { GitSubForm, HgSubForm, diff --git a/awx/ui_next/src/screens/Project/shared/ProjectForm.test.jsx b/awx/ui_next/src/screens/Project/shared/ProjectForm.test.jsx index e2d82c6653..d354653f41 100644 --- a/awx/ui_next/src/screens/Project/shared/ProjectForm.test.jsx +++ b/awx/ui_next/src/screens/Project/shared/ProjectForm.test.jsx @@ -1,10 +1,13 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import ProjectForm from './ProjectForm'; -import { CredentialTypesAPI, ProjectsAPI } from '@api'; +import { CredentialTypesAPI, ProjectsAPI } from '../../../api'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/screens/Project/shared/ProjectSubForms/GitSubForm.jsx b/awx/ui_next/src/screens/Project/shared/ProjectSubForms/GitSubForm.jsx index 21695e45d9..69c54cbb73 100644 --- a/awx/ui_next/src/screens/Project/shared/ProjectSubForms/GitSubForm.jsx +++ b/awx/ui_next/src/screens/Project/shared/ProjectSubForms/GitSubForm.jsx @@ -1,7 +1,7 @@ import React from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import FormField from '@components/FormField'; +import FormField from '../../../../components/FormField'; import { UrlFormField, BranchFormField, diff --git a/awx/ui_next/src/screens/Project/shared/ProjectSubForms/InsightsSubForm.jsx b/awx/ui_next/src/screens/Project/shared/ProjectSubForms/InsightsSubForm.jsx index e0b50a2844..8504feed7b 100644 --- a/awx/ui_next/src/screens/Project/shared/ProjectSubForms/InsightsSubForm.jsx +++ b/awx/ui_next/src/screens/Project/shared/ProjectSubForms/InsightsSubForm.jsx @@ -2,8 +2,8 @@ import React from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { useField } from 'formik'; -import CredentialLookup from '@components/Lookup/CredentialLookup'; -import { required } from '@util/validators'; +import CredentialLookup from '../../../../components/Lookup/CredentialLookup'; +import { required } from '../../../../util/validators'; import { ScmTypeOptions } from './SharedFields'; const InsightsSubForm = ({ diff --git a/awx/ui_next/src/screens/Project/shared/ProjectSubForms/ManualSubForm.jsx b/awx/ui_next/src/screens/Project/shared/ProjectSubForms/ManualSubForm.jsx index d8664654fb..a5bdaefcfd 100644 --- a/awx/ui_next/src/screens/Project/shared/ProjectSubForms/ManualSubForm.jsx +++ b/awx/ui_next/src/screens/Project/shared/ProjectSubForms/ManualSubForm.jsx @@ -2,10 +2,10 @@ import React from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { useField } from 'formik'; -import { required } from '@util/validators'; -import AnsibleSelect from '@components/AnsibleSelect'; -import FormField, { FieldTooltip } from '@components/FormField'; import { FormGroup, Alert } from '@patternfly/react-core'; +import { required } from '../../../../util/validators'; +import AnsibleSelect from '../../../../components/AnsibleSelect'; +import FormField, { FieldTooltip } from '../../../../components/FormField'; import { BrandName } from '../../../../variables'; // Setting BrandName to a variable here is necessary to get the jest tests diff --git a/awx/ui_next/src/screens/Project/shared/ProjectSubForms/SharedFields.jsx b/awx/ui_next/src/screens/Project/shared/ProjectSubForms/SharedFields.jsx index fe3b1f934d..0833c9e49d 100644 --- a/awx/ui_next/src/screens/Project/shared/ProjectSubForms/SharedFields.jsx +++ b/awx/ui_next/src/screens/Project/shared/ProjectSubForms/SharedFields.jsx @@ -2,14 +2,14 @@ import React from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { useField } from 'formik'; -import CredentialLookup from '@components/Lookup/CredentialLookup'; -import FormField, { CheckboxField } from '@components/FormField'; -import { required } from '@util/validators'; import { FormGroup, Title } from '@patternfly/react-core'; +import CredentialLookup from '../../../../components/Lookup/CredentialLookup'; +import FormField, { CheckboxField } from '../../../../components/FormField'; +import { required } from '../../../../util/validators'; import { FormCheckboxLayout, FormFullWidthLayout, -} from '@components/FormLayout'; +} from '../../../../components/FormLayout'; export const UrlFormField = withI18n()(({ i18n, tooltip }) => ( { ProjectsAPI.readSync.mockResolvedValue({ diff --git a/awx/ui_next/src/screens/Schedule/AllSchedules.jsx b/awx/ui_next/src/screens/Schedule/AllSchedules.jsx index 1f7ffa3188..82c23c4155 100644 --- a/awx/ui_next/src/screens/Schedule/AllSchedules.jsx +++ b/awx/ui_next/src/screens/Schedule/AllSchedules.jsx @@ -3,10 +3,10 @@ import { Route, Switch } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import Breadcrumbs from '@components/Breadcrumbs'; -import { ScheduleList } from '@components/Schedule'; -import { SchedulesAPI } from '@api'; import { PageSection, Card } from '@patternfly/react-core'; +import Breadcrumbs from '../../components/Breadcrumbs'; +import { ScheduleList } from '../../components/Schedule'; +import { SchedulesAPI } from '../../api'; function AllSchedules({ i18n }) { const loadScheduleOptions = () => { diff --git a/awx/ui_next/src/screens/Schedule/AllSchedules.test.jsx b/awx/ui_next/src/screens/Schedule/AllSchedules.test.jsx index 50e4b76f66..5aa4b3ba1c 100644 --- a/awx/ui_next/src/screens/Schedule/AllSchedules.test.jsx +++ b/awx/ui_next/src/screens/Schedule/AllSchedules.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; import { createMemoryHistory } from 'history'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import AllSchedules from './AllSchedules'; describe('', () => { diff --git a/awx/ui_next/src/screens/SystemSetting/SystemSettings.test.jsx b/awx/ui_next/src/screens/SystemSetting/SystemSettings.test.jsx index c09b8db772..2a909f36c7 100644 --- a/awx/ui_next/src/screens/SystemSetting/SystemSettings.test.jsx +++ b/awx/ui_next/src/screens/SystemSetting/SystemSettings.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import SystemSettings from './SystemSettings'; diff --git a/awx/ui_next/src/screens/Team/Team.jsx b/awx/ui_next/src/screens/Team/Team.jsx index 48cc13c02c..b7e878b415 100644 --- a/awx/ui_next/src/screens/Team/Team.jsx +++ b/awx/ui_next/src/screens/Team/Team.jsx @@ -10,13 +10,13 @@ import { useParams, } from 'react-router-dom'; import { Card, CardActions, PageSection } from '@patternfly/react-core'; -import CardCloseButton from '@components/CardCloseButton'; -import { TabbedCardHeader } from '@components/Card'; -import RoutedTabs from '@components/RoutedTabs'; -import ContentError from '@components/ContentError'; +import CardCloseButton from '../../components/CardCloseButton'; +import { TabbedCardHeader } from '../../components/Card'; +import RoutedTabs from '../../components/RoutedTabs'; +import ContentError from '../../components/ContentError'; import TeamDetail from './TeamDetail'; import TeamEdit from './TeamEdit'; -import { TeamsAPI } from '@api'; +import { TeamsAPI } from '../../api'; import TeamAccessList from './TeamAccess'; function Team({ i18n, setBreadcrumb }) { diff --git a/awx/ui_next/src/screens/Team/Team.test.jsx b/awx/ui_next/src/screens/Team/Team.test.jsx index 946b7e77f5..d25d8978a8 100644 --- a/awx/ui_next/src/screens/Team/Team.test.jsx +++ b/awx/ui_next/src/screens/Team/Team.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { TeamsAPI } from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { TeamsAPI } from '../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../testUtils/enzymeHelpers'; import Team from './Team'; -jest.mock('@api'); +jest.mock('../../api'); const mockMe = { is_super_user: true, diff --git a/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessList.jsx b/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessList.jsx index 7d2cea1a72..c7cadc1fe6 100644 --- a/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessList.jsx +++ b/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessList.jsx @@ -4,15 +4,15 @@ import { useLocation, useRouteMatch, useParams } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { TeamsAPI } from '@api'; +import { TeamsAPI } from '../../../api'; import { Card } from '@patternfly/react-core'; -import useRequest from '@util/useRequest'; -import DataListToolbar from '@components/DataListToolbar'; +import useRequest from '../../../util/useRequest'; +import DataListToolbar from '../../../components/DataListToolbar'; import PaginatedDataList, { ToolbarAddButton, -} from '@components/PaginatedDataList'; -import { getQSConfig, parseQueryString } from '@util/qs'; +} from '../../../components/PaginatedDataList'; +import { getQSConfig, parseQueryString } from '../../../util/qs'; import TeamAccessListItem from './TeamAccessListItem'; const QS_CONFIG = getQSConfig('team', { diff --git a/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessList.test.jsx b/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessList.test.jsx index 12d8e9cf39..fba2bb0d23 100644 --- a/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessList.test.jsx +++ b/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessList.test.jsx @@ -1,12 +1,12 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { TeamsAPI } from '@api'; +import { TeamsAPI } from '../../../api'; import { Route } from 'react-router-dom'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { mountWithContexts, waitForElement } from '../../../../testUtils/enzymeHelpers'; import TeamAccessList from './TeamAccessList'; -jest.mock('@api/models/Teams'); +jest.mock('../../../api/models/Teams'); describe('', () => { let wrapper; let history; diff --git a/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessListItem.jsx b/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessListItem.jsx index 994c175ecd..838163b144 100644 --- a/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessListItem.jsx +++ b/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessListItem.jsx @@ -6,7 +6,7 @@ import { DataListItemCells, DataListItemRow, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; +import DataListCell from '../../../components/DataListCell'; import { Link } from 'react-router-dom'; diff --git a/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessListItem.test.jsx b/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessListItem.test.jsx index 45d40e08a1..543f789f0f 100644 --- a/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessListItem.test.jsx +++ b/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessListItem.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import TeamAccessListItem from './TeamAccessListItem'; describe('', () => { diff --git a/awx/ui_next/src/screens/Team/TeamAdd/TeamAdd.jsx b/awx/ui_next/src/screens/Team/TeamAdd/TeamAdd.jsx index d9488b39c4..2cd3278057 100644 --- a/awx/ui_next/src/screens/Team/TeamAdd/TeamAdd.jsx +++ b/awx/ui_next/src/screens/Team/TeamAdd/TeamAdd.jsx @@ -2,9 +2,9 @@ import React from 'react'; import { withRouter } from 'react-router-dom'; import { PageSection, Card } from '@patternfly/react-core'; -import { TeamsAPI } from '@api'; -import { Config } from '@contexts/Config'; -import { CardBody } from '@components/Card'; +import { TeamsAPI } from '../../../api'; +import { Config } from '../../../contexts/Config'; +import { CardBody } from '../../../components/Card'; import TeamForm from '../shared/TeamForm'; class TeamAdd extends React.Component { diff --git a/awx/ui_next/src/screens/Team/TeamAdd/TeamAdd.test.jsx b/awx/ui_next/src/screens/Team/TeamAdd/TeamAdd.test.jsx index 7d1eddeabf..da61ff2c24 100644 --- a/awx/ui_next/src/screens/Team/TeamAdd/TeamAdd.test.jsx +++ b/awx/ui_next/src/screens/Team/TeamAdd/TeamAdd.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import TeamAdd from './TeamAdd'; -import { TeamsAPI } from '@api'; +import { TeamsAPI } from '../../../api'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { test('handleSubmit should post to api', async () => { diff --git a/awx/ui_next/src/screens/Team/TeamDetail/TeamDetail.jsx b/awx/ui_next/src/screens/Team/TeamDetail/TeamDetail.jsx index 9383ca148c..f607800fcd 100644 --- a/awx/ui_next/src/screens/Team/TeamDetail/TeamDetail.jsx +++ b/awx/ui_next/src/screens/Team/TeamDetail/TeamDetail.jsx @@ -4,14 +4,14 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Button } from '@patternfly/react-core'; -import AlertModal from '@components/AlertModal'; -import { CardBody, CardActionsRow } from '@components/Card'; -import ContentLoading from '@components/ContentLoading'; -import DeleteButton from '@components/DeleteButton'; -import { DetailList, Detail } from '@components/DetailList'; -import ErrorDetail from '@components/ErrorDetail'; -import { formatDateString } from '@util/dates'; -import { TeamsAPI } from '@api'; +import AlertModal from '../../../components/AlertModal'; +import { CardBody, CardActionsRow } from '../../../components/Card'; +import ContentLoading from '../../../components/ContentLoading'; +import DeleteButton from '../../../components/DeleteButton'; +import { DetailList, Detail } from '../../../components/DetailList'; +import ErrorDetail from '../../../components/ErrorDetail'; +import { formatDateString } from '../../../util/dates'; +import { TeamsAPI } from '../../../api'; function TeamDetail({ team, i18n }) { const { name, description, created, modified, summary_fields } = team; diff --git a/awx/ui_next/src/screens/Team/TeamDetail/TeamDetail.test.jsx b/awx/ui_next/src/screens/Team/TeamDetail/TeamDetail.test.jsx index 0942dabed2..a3c3bd7796 100644 --- a/awx/ui_next/src/screens/Team/TeamDetail/TeamDetail.test.jsx +++ b/awx/ui_next/src/screens/Team/TeamDetail/TeamDetail.test.jsx @@ -1,10 +1,13 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import TeamDetail from './TeamDetail'; -import { TeamsAPI } from '@api'; +import { TeamsAPI } from '../../../api'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/screens/Team/TeamEdit/TeamEdit.jsx b/awx/ui_next/src/screens/Team/TeamEdit/TeamEdit.jsx index b7d05030af..84d01c2341 100644 --- a/awx/ui_next/src/screens/Team/TeamEdit/TeamEdit.jsx +++ b/awx/ui_next/src/screens/Team/TeamEdit/TeamEdit.jsx @@ -1,10 +1,10 @@ import React, { useState } from 'react'; import PropTypes from 'prop-types'; import { useHistory } from 'react-router-dom'; -import { CardBody } from '@components/Card'; +import { CardBody } from '../../../components/Card'; -import { TeamsAPI } from '@api'; -import { Config } from '@contexts/Config'; +import { TeamsAPI } from '../../../api'; +import { Config } from '../../../contexts/Config'; import TeamForm from '../shared/TeamForm'; diff --git a/awx/ui_next/src/screens/Team/TeamEdit/TeamEdit.test.jsx b/awx/ui_next/src/screens/Team/TeamEdit/TeamEdit.test.jsx index 529e57ed84..82b980ba7b 100644 --- a/awx/ui_next/src/screens/Team/TeamEdit/TeamEdit.test.jsx +++ b/awx/ui_next/src/screens/Team/TeamEdit/TeamEdit.test.jsx @@ -1,11 +1,11 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { TeamsAPI } from '@api'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { TeamsAPI } from '../../../api'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import TeamEdit from './TeamEdit'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { const mockData = { diff --git a/awx/ui_next/src/screens/Team/TeamList/TeamList.jsx b/awx/ui_next/src/screens/Team/TeamList/TeamList.jsx index 261bfb2641..5dc6580274 100644 --- a/awx/ui_next/src/screens/Team/TeamList/TeamList.jsx +++ b/awx/ui_next/src/screens/Team/TeamList/TeamList.jsx @@ -4,16 +4,16 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Card, PageSection } from '@patternfly/react-core'; -import { TeamsAPI } from '@api'; -import useRequest, { useDeleteItems } from '@util/useRequest'; -import AlertModal from '@components/AlertModal'; -import DataListToolbar from '@components/DataListToolbar'; -import ErrorDetail from '@components/ErrorDetail'; +import { TeamsAPI } from '../../../api'; +import useRequest, { useDeleteItems } from '../../../util/useRequest'; +import AlertModal from '../../../components/AlertModal'; +import DataListToolbar from '../../../components/DataListToolbar'; +import ErrorDetail from '../../../components/ErrorDetail'; import PaginatedDataList, { ToolbarAddButton, ToolbarDeleteButton, -} from '@components/PaginatedDataList'; -import { getQSConfig, parseQueryString } from '@util/qs'; +} from '../../../components/PaginatedDataList'; +import { getQSConfig, parseQueryString } from '../../../util/qs'; import TeamListItem from './TeamListItem'; diff --git a/awx/ui_next/src/screens/Team/TeamList/TeamList.test.jsx b/awx/ui_next/src/screens/Team/TeamList/TeamList.test.jsx index da6520581b..8ecf1d4383 100644 --- a/awx/ui_next/src/screens/Team/TeamList/TeamList.test.jsx +++ b/awx/ui_next/src/screens/Team/TeamList/TeamList.test.jsx @@ -1,11 +1,11 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { TeamsAPI } from '@api'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { TeamsAPI } from '../../../api'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import TeamList from './TeamList'; -jest.mock('@api'); +jest.mock('../../../api'); const mockAPITeamList = { data: { diff --git a/awx/ui_next/src/screens/Team/TeamList/TeamListItem.jsx b/awx/ui_next/src/screens/Team/TeamList/TeamListItem.jsx index 002fe6b446..d3752cbaeb 100644 --- a/awx/ui_next/src/screens/Team/TeamList/TeamListItem.jsx +++ b/awx/ui_next/src/screens/Team/TeamList/TeamListItem.jsx @@ -11,13 +11,13 @@ import { DataListItemRow, Tooltip, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; import styled from 'styled-components'; import { Link } from 'react-router-dom'; import { PencilAltIcon } from '@patternfly/react-icons'; +import DataListCell from '../../../components/DataListCell'; -import { Team } from '@types'; +import { Team } from '../../../types'; const DataListAction = styled(_DataListAction)` align-items: center; diff --git a/awx/ui_next/src/screens/Team/TeamList/TeamListItem.test.jsx b/awx/ui_next/src/screens/Team/TeamList/TeamListItem.test.jsx index 73d9329c7e..ffc2af1f35 100644 --- a/awx/ui_next/src/screens/Team/TeamList/TeamListItem.test.jsx +++ b/awx/ui_next/src/screens/Team/TeamList/TeamListItem.test.jsx @@ -2,7 +2,7 @@ import React from 'react'; import { MemoryRouter } from 'react-router-dom'; import { I18nProvider } from '@lingui/react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import TeamListItem from './TeamListItem'; diff --git a/awx/ui_next/src/screens/Team/Teams.jsx b/awx/ui_next/src/screens/Team/Teams.jsx index 73368c85a2..3022ca98c7 100644 --- a/awx/ui_next/src/screens/Team/Teams.jsx +++ b/awx/ui_next/src/screens/Team/Teams.jsx @@ -3,8 +3,8 @@ import { Route, Switch } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { Config } from '@contexts/Config'; -import Breadcrumbs from '@components/Breadcrumbs'; +import { Config } from '../../contexts/Config'; +import Breadcrumbs from '../../components/Breadcrumbs'; import TeamList from './TeamList'; import TeamAdd from './TeamAdd'; import Team from './Team'; diff --git a/awx/ui_next/src/screens/Team/Teams.test.jsx b/awx/ui_next/src/screens/Team/Teams.test.jsx index 5a444e6977..db73b4d7d4 100644 --- a/awx/ui_next/src/screens/Team/Teams.test.jsx +++ b/awx/ui_next/src/screens/Team/Teams.test.jsx @@ -1,8 +1,8 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import Teams from './Teams'; -jest.mock('@api'); +jest.mock('../../api'); describe('', () => { test('initially renders succesfully', () => { diff --git a/awx/ui_next/src/screens/Team/shared/TeamForm.jsx b/awx/ui_next/src/screens/Team/shared/TeamForm.jsx index 480fa26975..20711f4539 100644 --- a/awx/ui_next/src/screens/Team/shared/TeamForm.jsx +++ b/awx/ui_next/src/screens/Team/shared/TeamForm.jsx @@ -4,11 +4,11 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Formik, useField } from 'formik'; import { Form } from '@patternfly/react-core'; -import FormActionGroup from '@components/FormActionGroup/FormActionGroup'; -import FormField, { FormSubmitError } from '@components/FormField'; -import OrganizationLookup from '@components/Lookup/OrganizationLookup'; -import { required } from '@util/validators'; -import { FormColumnLayout } from '@components/FormLayout'; +import FormActionGroup from '../../../components/FormActionGroup/FormActionGroup'; +import FormField, { FormSubmitError } from '../../../components/FormField'; +import OrganizationLookup from '../../../components/Lookup/OrganizationLookup'; +import { required } from '../../../util/validators'; +import { FormColumnLayout } from '../../../components/FormLayout'; function TeamFormFields(props) { const { team, i18n } = props; diff --git a/awx/ui_next/src/screens/Team/shared/TeamForm.test.jsx b/awx/ui_next/src/screens/Team/shared/TeamForm.test.jsx index 83c643e288..c11f78a4a5 100644 --- a/awx/ui_next/src/screens/Team/shared/TeamForm.test.jsx +++ b/awx/ui_next/src/screens/Team/shared/TeamForm.test.jsx @@ -1,10 +1,13 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import TeamForm from './TeamForm'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/screens/Template/JobTemplateAdd/JobTemplateAdd.jsx b/awx/ui_next/src/screens/Template/JobTemplateAdd/JobTemplateAdd.jsx index 0b959320fa..a0a594feca 100644 --- a/awx/ui_next/src/screens/Template/JobTemplateAdd/JobTemplateAdd.jsx +++ b/awx/ui_next/src/screens/Template/JobTemplateAdd/JobTemplateAdd.jsx @@ -1,9 +1,9 @@ import React, { useState } from 'react'; import { useHistory } from 'react-router-dom'; import { Card, PageSection } from '@patternfly/react-core'; -import { CardBody } from '@components/Card'; +import { CardBody } from '../../../components/Card'; import JobTemplateForm from '../shared/JobTemplateForm'; -import { JobTemplatesAPI, OrganizationsAPI } from '@api'; +import { JobTemplatesAPI, OrganizationsAPI } from '../../../api'; function JobTemplateAdd() { const [formSubmitError, setFormSubmitError] = useState(null); diff --git a/awx/ui_next/src/screens/Template/JobTemplateAdd/JobTemplateAdd.test.jsx b/awx/ui_next/src/screens/Template/JobTemplateAdd/JobTemplateAdd.test.jsx index dbc55e8580..be02a5aa6d 100644 --- a/awx/ui_next/src/screens/Template/JobTemplateAdd/JobTemplateAdd.test.jsx +++ b/awx/ui_next/src/screens/Template/JobTemplateAdd/JobTemplateAdd.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import JobTemplateAdd from './JobTemplateAdd'; -import { JobTemplatesAPI, LabelsAPI } from '@api'; +import { JobTemplatesAPI, LabelsAPI } from '../../../api'; -jest.mock('@api'); +jest.mock('../../../api'); const jobTemplateData = { allow_callbacks: false, diff --git a/awx/ui_next/src/screens/Template/JobTemplateDetail/JobTemplateDetail.jsx b/awx/ui_next/src/screens/Template/JobTemplateDetail/JobTemplateDetail.jsx index 344b7f38dd..dbba89012b 100644 --- a/awx/ui_next/src/screens/Template/JobTemplateDetail/JobTemplateDetail.jsx +++ b/awx/ui_next/src/screens/Template/JobTemplateDetail/JobTemplateDetail.jsx @@ -12,23 +12,23 @@ import { } from '@patternfly/react-core'; import { t } from '@lingui/macro'; -import AlertModal from '@components/AlertModal'; -import { CardBody, CardActionsRow } from '@components/Card'; -import ChipGroup from '@components/ChipGroup'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import CredentialChip from '@components/CredentialChip'; +import AlertModal from '../../../components/AlertModal'; +import { CardBody, CardActionsRow } from '../../../components/Card'; +import ChipGroup from '../../../components/ChipGroup'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; +import CredentialChip from '../../../components/CredentialChip'; import { Detail, DetailList, DeletedDetail, UserDateDetail, -} from '@components/DetailList'; -import DeleteButton from '@components/DeleteButton'; -import ErrorDetail from '@components/ErrorDetail'; -import LaunchButton from '@components/LaunchButton'; -import { VariablesDetail } from '@components/CodeMirrorInput'; -import { JobTemplatesAPI } from '@api'; +} from '../../../components/DetailList'; +import DeleteButton from '../../../components/DeleteButton'; +import ErrorDetail from '../../../components/ErrorDetail'; +import LaunchButton from '../../../components/LaunchButton'; +import { VariablesDetail } from '../../../components/CodeMirrorInput'; +import { JobTemplatesAPI } from '../../../api'; function JobTemplateDetail({ i18n, template }) { const { diff --git a/awx/ui_next/src/screens/Template/JobTemplateDetail/JobTemplateDetail.test.jsx b/awx/ui_next/src/screens/Template/JobTemplateDetail/JobTemplateDetail.test.jsx index 8e382f8adc..a1fecf6f60 100644 --- a/awx/ui_next/src/screens/Template/JobTemplateDetail/JobTemplateDetail.test.jsx +++ b/awx/ui_next/src/screens/Template/JobTemplateDetail/JobTemplateDetail.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import JobTemplateDetail from './JobTemplateDetail'; -import { JobTemplatesAPI } from '@api'; +import { JobTemplatesAPI } from '../../../api'; import mockTemplate from '../shared/data.job_template.json'; -jest.mock('@api'); +jest.mock('../../../api'); const mockInstanceGroups = { count: 5, diff --git a/awx/ui_next/src/screens/Template/JobTemplateEdit/JobTemplateEdit.jsx b/awx/ui_next/src/screens/Template/JobTemplateEdit/JobTemplateEdit.jsx index 9848f53006..8c8cb0f4b8 100644 --- a/awx/ui_next/src/screens/Template/JobTemplateEdit/JobTemplateEdit.jsx +++ b/awx/ui_next/src/screens/Template/JobTemplateEdit/JobTemplateEdit.jsx @@ -1,12 +1,12 @@ /* eslint react/no-unused-state: 0 */ import React, { Component } from 'react'; import { withRouter, Redirect } from 'react-router-dom'; -import { CardBody } from '@components/Card'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import { JobTemplatesAPI, ProjectsAPI } from '@api'; -import { JobTemplate } from '@types'; -import { getAddedAndRemoved } from '@util/lists'; +import { CardBody } from '../../../components/Card'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; +import { JobTemplatesAPI, ProjectsAPI } from '../../../api'; +import { JobTemplate } from '../../../types'; +import { getAddedAndRemoved } from '../../../util/lists'; import JobTemplateForm from '../shared/JobTemplateForm'; const loadRelatedProjectPlaybooks = async project => diff --git a/awx/ui_next/src/screens/Template/JobTemplateEdit/JobTemplateEdit.test.jsx b/awx/ui_next/src/screens/Template/JobTemplateEdit/JobTemplateEdit.test.jsx index 8a8d7131fc..b2dfd57eee 100644 --- a/awx/ui_next/src/screens/Template/JobTemplateEdit/JobTemplateEdit.test.jsx +++ b/awx/ui_next/src/screens/Template/JobTemplateEdit/JobTemplateEdit.test.jsx @@ -1,12 +1,15 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { sleep } from '@testUtils/testUtils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; -import { JobTemplatesAPI, LabelsAPI, ProjectsAPI } from '@api'; +import { sleep } from '../../../../testUtils/testUtils'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; +import { JobTemplatesAPI, LabelsAPI, ProjectsAPI } from '../../../api'; import JobTemplateEdit from './JobTemplateEdit'; -jest.mock('@api'); +jest.mock('../../../api'); const mockJobTemplate = { allow_callbacks: false, diff --git a/awx/ui_next/src/screens/Template/Survey/SurveyList.jsx b/awx/ui_next/src/screens/Template/Survey/SurveyList.jsx index 9cfc946fa7..5d6b738a41 100644 --- a/awx/ui_next/src/screens/Template/Survey/SurveyList.jsx +++ b/awx/ui_next/src/screens/Template/Survey/SurveyList.jsx @@ -2,10 +2,10 @@ import React, { useState } from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { DataList, Button as _Button } from '@patternfly/react-core'; -import ContentLoading from '@components/ContentLoading'; -import ContentEmpty from '@components/ContentEmpty'; -import AlertModal from '@components/AlertModal'; import styled from 'styled-components'; +import ContentLoading from '../../../components/ContentLoading'; +import ContentEmpty from '../../../components/ContentEmpty'; +import AlertModal from '../../../components/AlertModal'; import SurveyListItem from './SurveyListItem'; import SurveyToolbar from './SurveyToolbar'; diff --git a/awx/ui_next/src/screens/Template/Survey/SurveyList.test.jsx b/awx/ui_next/src/screens/Template/Survey/SurveyList.test.jsx index 0564010692..755956a5f4 100644 --- a/awx/ui_next/src/screens/Template/Survey/SurveyList.test.jsx +++ b/awx/ui_next/src/screens/Template/Survey/SurveyList.test.jsx @@ -1,11 +1,11 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import SurveyList from './SurveyList'; -import { JobTemplatesAPI } from '@api'; +import { JobTemplatesAPI } from '../../../api'; import mockJobTemplateData from '../shared/data.job_template.json'; -jest.mock('@api/models/JobTemplates'); +jest.mock('../../../api/models/JobTemplates'); const surveyData = { name: 'Survey', diff --git a/awx/ui_next/src/screens/Template/Survey/SurveyListItem.jsx b/awx/ui_next/src/screens/Template/Survey/SurveyListItem.jsx index 4c8f73a5a1..6d3a3a8957 100644 --- a/awx/ui_next/src/screens/Template/Survey/SurveyListItem.jsx +++ b/awx/ui_next/src/screens/Template/Survey/SurveyListItem.jsx @@ -13,10 +13,11 @@ import { Stack, StackItem, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; -import ChipGroup from '@components/ChipGroup'; +import DataListCell from '../../../components/DataListCell'; +import ChipGroup from '../../../components/ChipGroup'; import { CaretDownIcon, CaretUpIcon } from '@patternfly/react-icons'; import styled from 'styled-components'; +import DataListCell from '../../../components/DataListCell'; const DataListAction = styled(_DataListAction)` margin-left: 0; diff --git a/awx/ui_next/src/screens/Template/Survey/SurveyListItem.test.jsx b/awx/ui_next/src/screens/Template/Survey/SurveyListItem.test.jsx index af5b7e82c2..d8caa30efc 100644 --- a/awx/ui_next/src/screens/Template/Survey/SurveyListItem.test.jsx +++ b/awx/ui_next/src/screens/Template/Survey/SurveyListItem.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import SurveyListItem from './SurveyListItem'; describe('', () => { diff --git a/awx/ui_next/src/screens/Template/Survey/SurveyPreviewModal.jsx b/awx/ui_next/src/screens/Template/Survey/SurveyPreviewModal.jsx index ed13f8fd8c..e9d8f0a1d2 100644 --- a/awx/ui_next/src/screens/Template/Survey/SurveyPreviewModal.jsx +++ b/awx/ui_next/src/screens/Template/Survey/SurveyPreviewModal.jsx @@ -1,7 +1,6 @@ import React from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { PasswordField } from '@components/FormField'; import { Formik } from 'formik'; import { @@ -14,6 +13,7 @@ import { SelectOption, SelectVariant, } from '@patternfly/react-core'; +import { PasswordField } from '../../../components/FormField'; function SurveyPreviewModal({ questions, diff --git a/awx/ui_next/src/screens/Template/Survey/SurveyPreviewModal.test.jsx b/awx/ui_next/src/screens/Template/Survey/SurveyPreviewModal.test.jsx index 2ba1fa87b5..ec56a7c7b7 100644 --- a/awx/ui_next/src/screens/Template/Survey/SurveyPreviewModal.test.jsx +++ b/awx/ui_next/src/screens/Template/Survey/SurveyPreviewModal.test.jsx @@ -1,6 +1,9 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { waitForElement, mountWithContexts } from '@testUtils/enzymeHelpers'; +import { + waitForElement, + mountWithContexts, +} from '../../../../testUtils/enzymeHelpers'; import SurveyPreviewModal from './SurveyPreviewModal'; diff --git a/awx/ui_next/src/screens/Template/Survey/SurveyQuestionAdd.jsx b/awx/ui_next/src/screens/Template/Survey/SurveyQuestionAdd.jsx index 009c295bf7..72ed7644e9 100644 --- a/awx/ui_next/src/screens/Template/Survey/SurveyQuestionAdd.jsx +++ b/awx/ui_next/src/screens/Template/Survey/SurveyQuestionAdd.jsx @@ -1,6 +1,6 @@ import React, { useState } from 'react'; import { useHistory, useRouteMatch } from 'react-router-dom'; -import { CardBody } from '@components/Card'; +import { CardBody } from '../../../components/Card'; import SurveyQuestionForm from './SurveyQuestionForm'; export default function SurveyQuestionAdd({ survey, updateSurvey }) { diff --git a/awx/ui_next/src/screens/Template/Survey/SurveyQuestionAdd.test.jsx b/awx/ui_next/src/screens/Template/Survey/SurveyQuestionAdd.test.jsx index 0d0e3bed5e..cd1344770f 100644 --- a/awx/ui_next/src/screens/Template/Survey/SurveyQuestionAdd.test.jsx +++ b/awx/ui_next/src/screens/Template/Survey/SurveyQuestionAdd.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; import { act } from 'react-dom/test-utils'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import SurveyQuestionAdd from './SurveyQuestionAdd'; const survey = { diff --git a/awx/ui_next/src/screens/Template/Survey/SurveyQuestionEdit.jsx b/awx/ui_next/src/screens/Template/Survey/SurveyQuestionEdit.jsx index 9c6ac6193a..18006a9c5b 100644 --- a/awx/ui_next/src/screens/Template/Survey/SurveyQuestionEdit.jsx +++ b/awx/ui_next/src/screens/Template/Survey/SurveyQuestionEdit.jsx @@ -1,7 +1,7 @@ import React, { useState } from 'react'; import { useHistory, useRouteMatch } from 'react-router-dom'; -import ContentLoading from '@components/ContentLoading'; -import { CardBody } from '@components/Card'; +import ContentLoading from '../../../components/ContentLoading'; +import { CardBody } from '../../../components/Card'; import SurveyQuestionForm from './SurveyQuestionForm'; export default function SurveyQuestionEdit({ survey, updateSurvey }) { diff --git a/awx/ui_next/src/screens/Template/Survey/SurveyQuestionEdit.test.jsx b/awx/ui_next/src/screens/Template/Survey/SurveyQuestionEdit.test.jsx index 25665b339d..d1bc79e992 100644 --- a/awx/ui_next/src/screens/Template/Survey/SurveyQuestionEdit.test.jsx +++ b/awx/ui_next/src/screens/Template/Survey/SurveyQuestionEdit.test.jsx @@ -1,8 +1,8 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; import { Switch, Route } from 'react-router-dom'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import SurveyQuestionEdit from './SurveyQuestionEdit'; const survey = { diff --git a/awx/ui_next/src/screens/Template/Survey/SurveyQuestionForm.jsx b/awx/ui_next/src/screens/Template/Survey/SurveyQuestionForm.jsx index 3ff84fc23d..8b682ee86f 100644 --- a/awx/ui_next/src/screens/Template/Survey/SurveyQuestionForm.jsx +++ b/awx/ui_next/src/screens/Template/Survey/SurveyQuestionForm.jsx @@ -4,16 +4,21 @@ import { Formik, useField } from 'formik'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Form, FormGroup } from '@patternfly/react-core'; -import { FormColumnLayout } from '@components/FormLayout'; -import FormActionGroup from '@components/FormActionGroup/FormActionGroup'; +import { FormColumnLayout } from '../../../components/FormLayout'; +import FormActionGroup from '../../../components/FormActionGroup/FormActionGroup'; import FormField, { CheckboxField, PasswordField, FormSubmitError, FieldTooltip, -} from '@components/FormField'; -import AnsibleSelect from '@components/AnsibleSelect'; -import { required, noWhiteSpace, combine, maxLength } from '@util/validators'; +} from '../../../components/FormField'; +import AnsibleSelect from '../../../components/AnsibleSelect'; +import { + required, + noWhiteSpace, + combine, + maxLength, +} from '../../../util/validators'; function AnswerTypeField({ i18n }) { const [field] = useField({ diff --git a/awx/ui_next/src/screens/Template/Survey/SurveyQuestionForm.test.jsx b/awx/ui_next/src/screens/Template/Survey/SurveyQuestionForm.test.jsx index fb7111415f..5811135aeb 100644 --- a/awx/ui_next/src/screens/Template/Survey/SurveyQuestionForm.test.jsx +++ b/awx/ui_next/src/screens/Template/Survey/SurveyQuestionForm.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; import { act } from 'react-dom/test-utils'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import SurveyQuestionForm from './SurveyQuestionForm'; const question = { diff --git a/awx/ui_next/src/screens/Template/Survey/SurveyToolbar.jsx b/awx/ui_next/src/screens/Template/Survey/SurveyToolbar.jsx index 3dc82e67d4..af6144025a 100644 --- a/awx/ui_next/src/screens/Template/Survey/SurveyToolbar.jsx +++ b/awx/ui_next/src/screens/Template/Survey/SurveyToolbar.jsx @@ -11,7 +11,7 @@ import { DataToolbarItem, } from '@patternfly/react-core/dist/umd/experimental'; import { Switch, Checkbox, Button } from '@patternfly/react-core'; -import { ToolbarAddButton } from '@components/PaginatedDataList'; +import { ToolbarAddButton } from '../../../components/PaginatedDataList'; const DataToolbar = styled(_DataToolbar)` margin-left: 52px; diff --git a/awx/ui_next/src/screens/Template/Survey/SurveyToolbar.test.jsx b/awx/ui_next/src/screens/Template/Survey/SurveyToolbar.test.jsx index 8931c9a7ec..8fb4857525 100644 --- a/awx/ui_next/src/screens/Template/Survey/SurveyToolbar.test.jsx +++ b/awx/ui_next/src/screens/Template/Survey/SurveyToolbar.test.jsx @@ -1,9 +1,9 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; import { act } from 'react-dom/test-utils'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import SurveyToolbar from './SurveyToolbar'; -jest.mock('@api/models/JobTemplates'); +jest.mock('../../../api/models/JobTemplates'); describe('', () => { test('delete Button is disabled', () => { diff --git a/awx/ui_next/src/screens/Template/Template.jsx b/awx/ui_next/src/screens/Template/Template.jsx index 80e4df8539..7110f025fc 100644 --- a/awx/ui_next/src/screens/Template/Template.jsx +++ b/awx/ui_next/src/screens/Template/Template.jsx @@ -11,19 +11,19 @@ import { useParams, useRouteMatch, } from 'react-router-dom'; -import useRequest from '@util/useRequest'; +import useRequest from '../../util/useRequest'; -import { TabbedCardHeader } from '@components/Card'; -import CardCloseButton from '@components/CardCloseButton'; -import ContentError from '@components/ContentError'; -import JobList from '@components/JobList'; -import NotificationList from '@components/NotificationList'; -import RoutedTabs from '@components/RoutedTabs'; -import { Schedules } from '@components/Schedule'; -import { ResourceAccessList } from '@components/ResourceAccessList'; +import { TabbedCardHeader } from '../../components/Card'; +import CardCloseButton from '../../components/CardCloseButton'; +import ContentError from '../../components/ContentError'; +import JobList from '../../components/JobList'; +import NotificationList from '../../components/NotificationList'; +import RoutedTabs from '../../components/RoutedTabs'; +import { Schedules } from '../../components/Schedule'; +import { ResourceAccessList } from '../../components/ResourceAccessList'; import JobTemplateDetail from './JobTemplateDetail'; import JobTemplateEdit from './JobTemplateEdit'; -import { JobTemplatesAPI, OrganizationsAPI } from '@api'; +import { JobTemplatesAPI, OrganizationsAPI } from '../../api'; import TemplateSurvey from './TemplateSurvey'; function Template({ i18n, me, setBreadcrumb }) { diff --git a/awx/ui_next/src/screens/Template/Template.test.jsx b/awx/ui_next/src/screens/Template/Template.test.jsx index cebe757064..0495fdd9bf 100644 --- a/awx/ui_next/src/screens/Template/Template.test.jsx +++ b/awx/ui_next/src/screens/Template/Template.test.jsx @@ -1,14 +1,17 @@ import React from 'react'; import { createMemoryHistory } from 'history'; -import { JobTemplatesAPI, OrganizationsAPI } from '@api'; import { act } from 'react-dom/test-utils'; +import { JobTemplatesAPI, OrganizationsAPI } from '../../api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../testUtils/enzymeHelpers'; import Template from './Template'; import mockJobTemplateData from './shared/data.job_template.json'; -jest.mock('@api/models/JobTemplates'); -jest.mock('@api/models/Organizations'); +jest.mock('../../api/models/JobTemplates'); +jest.mock('../../api/models/Organizations'); const mockMe = { is_super_user: true, diff --git a/awx/ui_next/src/screens/Template/TemplateList/TemplateList.jsx b/awx/ui_next/src/screens/Template/TemplateList/TemplateList.jsx index 707eac6684..5be5cf580f 100644 --- a/awx/ui_next/src/screens/Template/TemplateList/TemplateList.jsx +++ b/awx/ui_next/src/screens/Template/TemplateList/TemplateList.jsx @@ -8,17 +8,17 @@ import { JobTemplatesAPI, UnifiedJobTemplatesAPI, WorkflowJobTemplatesAPI, -} from '@api'; -import AlertModal from '@components/AlertModal'; -import DatalistToolbar from '@components/DataListToolbar'; -import ErrorDetail from '@components/ErrorDetail'; +} from '../../../api'; +import AlertModal from '../../../components/AlertModal'; +import DatalistToolbar from '../../../components/DataListToolbar'; +import ErrorDetail from '../../../components/ErrorDetail'; import PaginatedDataList, { ToolbarDeleteButton, -} from '@components/PaginatedDataList'; -import useRequest, { useDeleteItems } from '@util/useRequest'; -import { getQSConfig, parseQueryString } from '@util/qs'; +} from '../../../components/PaginatedDataList'; +import useRequest, { useDeleteItems } from '../../../util/useRequest'; +import { getQSConfig, parseQueryString } from '../../../util/qs'; -import AddDropDownButton from '@components/AddDropDownButton'; +import AddDropDownButton from '../../../components/AddDropDownButton'; import TemplateListItem from './TemplateListItem'; // The type value in const QS_CONFIG below does not have a space between job_template and diff --git a/awx/ui_next/src/screens/Template/TemplateList/TemplateList.test.jsx b/awx/ui_next/src/screens/Template/TemplateList/TemplateList.test.jsx index 568aeeca5a..b04ef9c35b 100644 --- a/awx/ui_next/src/screens/Template/TemplateList/TemplateList.test.jsx +++ b/awx/ui_next/src/screens/Template/TemplateList/TemplateList.test.jsx @@ -4,12 +4,15 @@ import { JobTemplatesAPI, UnifiedJobTemplatesAPI, WorkflowJobTemplatesAPI, -} from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +} from '../../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import TemplateList from './TemplateList'; -jest.mock('@api'); +jest.mock('../../../api'); const mockTemplates = [ { diff --git a/awx/ui_next/src/screens/Template/TemplateList/TemplateListItem.jsx b/awx/ui_next/src/screens/Template/TemplateList/TemplateListItem.jsx index b9dc712eec..0c244cd3de 100644 --- a/awx/ui_next/src/screens/Template/TemplateList/TemplateListItem.jsx +++ b/awx/ui_next/src/screens/Template/TemplateList/TemplateListItem.jsx @@ -9,8 +9,6 @@ import { DataListItemCells, Tooltip, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; - import { t } from '@lingui/macro'; import { withI18n } from '@lingui/react'; import { @@ -18,14 +16,16 @@ import { PencilAltIcon, RocketIcon, } from '@patternfly/react-icons'; -import { timeOfDay } from '@util/dates'; - -import { JobTemplatesAPI, WorkflowJobTemplatesAPI } from '@api'; -import LaunchButton from '@components/LaunchButton'; -import Sparkline from '@components/Sparkline'; -import { toTitleCase } from '@util/strings'; import styled from 'styled-components'; -import CopyButton from '@components/CopyButton'; +import DataListCell from '../../../components/DataListCell'; + +import { timeOfDay } from '../../../util/dates'; + +import { JobTemplatesAPI, WorkflowJobTemplatesAPI } from '../../../api'; +import LaunchButton from '../../../components/LaunchButton'; +import Sparkline from '../../../components/Sparkline'; +import { toTitleCase } from '../../../util/strings'; +import CopyButton from '../../../components/CopyButton'; const DataListAction = styled(_DataListAction)` align-items: center; diff --git a/awx/ui_next/src/screens/Template/TemplateList/TemplateListItem.test.jsx b/awx/ui_next/src/screens/Template/TemplateList/TemplateListItem.test.jsx index 402c78f1ea..674e8fa824 100644 --- a/awx/ui_next/src/screens/Template/TemplateList/TemplateListItem.test.jsx +++ b/awx/ui_next/src/screens/Template/TemplateList/TemplateListItem.test.jsx @@ -1,13 +1,13 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; import { createMemoryHistory } from 'history'; -import { JobTemplatesAPI } from '@api'; import { act } from 'react-dom/test-utils'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; +import { JobTemplatesAPI } from '../../../api'; import mockJobTemplateData from '../shared/data.job_template.json'; import TemplateListItem from './TemplateListItem'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { test('launch button shown to users with start capabilities', () => { diff --git a/awx/ui_next/src/screens/Template/TemplateSurvey.jsx b/awx/ui_next/src/screens/Template/TemplateSurvey.jsx index fc15a71a8c..3f8381c129 100644 --- a/awx/ui_next/src/screens/Template/TemplateSurvey.jsx +++ b/awx/ui_next/src/screens/Template/TemplateSurvey.jsx @@ -2,11 +2,11 @@ import React, { useState, useEffect, useCallback } from 'react'; import { Switch, Route, useParams, useLocation } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { JobTemplatesAPI, WorkflowJobTemplatesAPI } from '@api'; -import ContentError from '@components/ContentError'; -import AlertModal from '@components/AlertModal'; -import ErrorDetail from '@components/ErrorDetail'; -import useRequest, { useDismissableError } from '@util/useRequest'; +import { JobTemplatesAPI, WorkflowJobTemplatesAPI } from '../../api'; +import ContentError from '../../components/ContentError'; +import AlertModal from '../../components/AlertModal'; +import ErrorDetail from '../../components/ErrorDetail'; +import useRequest, { useDismissableError } from '../../util/useRequest'; import { SurveyList, SurveyQuestionAdd, SurveyQuestionEdit } from './Survey'; function TemplateSurvey({ template, canEdit, i18n }) { diff --git a/awx/ui_next/src/screens/Template/TemplateSurvey.test.jsx b/awx/ui_next/src/screens/Template/TemplateSurvey.test.jsx index e1846923ec..9b4d622f78 100644 --- a/awx/ui_next/src/screens/Template/TemplateSurvey.test.jsx +++ b/awx/ui_next/src/screens/Template/TemplateSurvey.test.jsx @@ -1,12 +1,12 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import TemplateSurvey from './TemplateSurvey'; -import { JobTemplatesAPI } from '@api'; +import { JobTemplatesAPI } from '../../api'; import mockJobTemplateData from './shared/data.job_template.json'; -jest.mock('@api/models/JobTemplates'); +jest.mock('../../api/models/JobTemplates'); const surveyData = { name: 'Survey', diff --git a/awx/ui_next/src/screens/Template/Templates.jsx b/awx/ui_next/src/screens/Template/Templates.jsx index 2f2cf5497f..0b529a95af 100644 --- a/awx/ui_next/src/screens/Template/Templates.jsx +++ b/awx/ui_next/src/screens/Template/Templates.jsx @@ -3,8 +3,8 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Route, withRouter, Switch } from 'react-router-dom'; -import { Config } from '@contexts/Config'; -import Breadcrumbs from '@components/Breadcrumbs/Breadcrumbs'; +import { Config } from '../../contexts/Config'; +import Breadcrumbs from '../../components/Breadcrumbs/Breadcrumbs'; import { TemplateList } from './TemplateList'; import Template from './Template'; import WorkflowJobTemplate from './WorkflowJobTemplate'; diff --git a/awx/ui_next/src/screens/Template/Templates.test.jsx b/awx/ui_next/src/screens/Template/Templates.test.jsx index ec7ef416e1..f39643053d 100644 --- a/awx/ui_next/src/screens/Template/Templates.test.jsx +++ b/awx/ui_next/src/screens/Template/Templates.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import Templates from './Templates'; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplate.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplate.jsx index 700cee8f76..eb40b93f4f 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplate.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplate.jsx @@ -3,22 +3,22 @@ import { t } from '@lingui/macro'; import { withI18n } from '@lingui/react'; import { Card, CardActions, PageSection } from '@patternfly/react-core'; import { Switch, Route, Redirect, withRouter, Link } from 'react-router-dom'; -import { TabbedCardHeader } from '@components/Card'; -import AppendBody from '@components/AppendBody'; -import CardCloseButton from '@components/CardCloseButton'; -import ContentError from '@components/ContentError'; -import FullPage from '@components/FullPage'; -import JobList from '@components/JobList'; -import RoutedTabs from '@components/RoutedTabs'; -import { Schedules } from '@components/Schedule'; -import ContentLoading from '@components/ContentLoading'; -import { ResourceAccessList } from '@components/ResourceAccessList'; -import NotificationList from '@components/NotificationList'; +import { TabbedCardHeader } from '../../components/Card'; +import AppendBody from '../../components/AppendBody'; +import CardCloseButton from '../../components/CardCloseButton'; +import ContentError from '../../components/ContentError'; +import FullPage from '../../components/FullPage'; +import JobList from '../../components/JobList'; +import RoutedTabs from '../../components/RoutedTabs'; +import { Schedules } from '../../components/Schedule'; +import ContentLoading from '../../components/ContentLoading'; +import { ResourceAccessList } from '../../components/ResourceAccessList'; +import NotificationList from '../../components/NotificationList'; import { WorkflowJobTemplatesAPI, CredentialsAPI, OrganizationsAPI, -} from '@api'; +} from '../../api'; import WorkflowJobTemplateDetail from './WorkflowJobTemplateDetail'; import WorkflowJobTemplateEdit from './WorkflowJobTemplateEdit'; import { Visualizer } from './WorkflowJobTemplateVisualizer'; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplate.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplate.test.jsx index 66840a331e..a0400ca772 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplate.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplate.test.jsx @@ -3,18 +3,21 @@ import { Route } from 'react-router-dom'; import { createMemoryHistory } from 'history'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../testUtils/enzymeHelpers'; import WorkflowJobTemplate from './WorkflowJobTemplate'; -import { sleep } from '@testUtils/testUtils'; +import { sleep } from '../../../testUtils/testUtils'; import { WorkflowJobTemplatesAPI, CredentialsAPI, OrganizationsAPI, -} from '@api'; +} from '../../api'; -jest.mock('@api/models/WorkflowJobTemplates'); -jest.mock('@api/models/Credentials'); -jest.mock('@api/models/Organizations'); +jest.mock('../../api/models/WorkflowJobTemplates'); +jest.mock('../../api/models/Credentials'); +jest.mock('../../api/models/Organizations'); describe('', () => { const mockMe = { diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateAdd/WorkflowJobTemplateAdd.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateAdd/WorkflowJobTemplateAdd.jsx index 6bfa3d3707..0409728aef 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateAdd/WorkflowJobTemplateAdd.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateAdd/WorkflowJobTemplateAdd.jsx @@ -2,9 +2,9 @@ import React, { useState } from 'react'; import { useHistory } from 'react-router-dom'; import { Card, PageSection } from '@patternfly/react-core'; -import { CardBody } from '@components/Card'; +import { CardBody } from '../../../components/Card'; -import { WorkflowJobTemplatesAPI, OrganizationsAPI } from '@api'; +import { WorkflowJobTemplatesAPI, OrganizationsAPI } from '../../../api'; import WorkflowJobTemplateForm from '../shared/WorkflowJobTemplateForm'; function WorkflowJobTemplateAdd() { diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateAdd/WorkflowJobTemplateAdd.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateAdd/WorkflowJobTemplateAdd.test.jsx index ab390f4fcd..c6ac734bfa 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateAdd/WorkflowJobTemplateAdd.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateAdd/WorkflowJobTemplateAdd.test.jsx @@ -1,16 +1,20 @@ import React from 'react'; import { Route } from 'react-router-dom'; import { act } from 'react-dom/test-utils'; -import { WorkflowJobTemplatesAPI, OrganizationsAPI, LabelsAPI } from '@api'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; import { createMemoryHistory } from 'history'; +import { + WorkflowJobTemplatesAPI, + OrganizationsAPI, + LabelsAPI, +} from '../../../api'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import WorkflowJobTemplateAdd from './WorkflowJobTemplateAdd'; -jest.mock('@api/models/WorkflowJobTemplates'); -jest.mock('@api/models/Organizations'); -jest.mock('@api/models/Labels'); -jest.mock('@api/models/Inventories'); +jest.mock('../../../api/models/WorkflowJobTemplates'); +jest.mock('../../../api/models/Organizations'); +jest.mock('../../../api/models/Labels'); +jest.mock('../../../api/models/Inventories'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateDetail/WorkflowJobTemplateDetail.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateDetail/WorkflowJobTemplateDetail.jsx index 26b655a541..c75e020174 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateDetail/WorkflowJobTemplateDetail.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateDetail/WorkflowJobTemplateDetail.jsx @@ -2,7 +2,6 @@ import React, { useState } from 'react'; import { Link, useHistory } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { WorkflowJobTemplatesAPI } from '@api'; import { Chip, Button, @@ -12,18 +11,19 @@ import { TextListItemVariants, Label, } from '@patternfly/react-core'; +import { WorkflowJobTemplatesAPI } from '../../../api'; -import AlertModal from '@components/AlertModal'; -import { CardBody, CardActionsRow } from '@components/Card'; -import ChipGroup from '@components/ChipGroup'; -import { VariablesDetail } from '@components/CodeMirrorInput'; -import ContentLoading from '@components/ContentLoading'; -import DeleteButton from '@components/DeleteButton'; -import { DetailList, Detail, UserDateDetail } from '@components/DetailList'; -import ErrorDetail from '@components/ErrorDetail'; -import LaunchButton from '@components/LaunchButton'; -import Sparkline from '@components/Sparkline'; -import { toTitleCase } from '@util/strings'; +import AlertModal from '../../../components/AlertModal'; +import { CardBody, CardActionsRow } from '../../../components/Card'; +import ChipGroup from '../../../components/ChipGroup'; +import { VariablesDetail } from '../../../components/CodeMirrorInput'; +import ContentLoading from '../../../components/ContentLoading'; +import DeleteButton from '../../../components/DeleteButton'; +import { DetailList, Detail, UserDateDetail } from '../../../components/DetailList'; +import ErrorDetail from '../../../components/ErrorDetail'; +import LaunchButton from '../../../components/LaunchButton'; +import Sparkline from '../../../components/Sparkline'; +import { toTitleCase } from '../../../util/strings'; function WorkflowJobTemplateDetail({ template, i18n }) { const { diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateDetail/WorkflowJobTemplateDetail.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateDetail/WorkflowJobTemplateDetail.test.jsx index bfb850c83b..b3ee7736c9 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateDetail/WorkflowJobTemplateDetail.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateDetail/WorkflowJobTemplateDetail.test.jsx @@ -3,7 +3,7 @@ import { Route } from 'react-router-dom'; import { createMemoryHistory } from 'history'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import WorkflowJobTemplateDetail from './WorkflowJobTemplateDetail'; describe('', () => { diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateEdit/WorkflowJobTemplateEdit.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateEdit/WorkflowJobTemplateEdit.jsx index a860589020..81478eb9a4 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateEdit/WorkflowJobTemplateEdit.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateEdit/WorkflowJobTemplateEdit.jsx @@ -1,9 +1,9 @@ import React, { useState } from 'react'; import { useHistory } from 'react-router-dom'; -import { CardBody } from '@components/Card'; -import { getAddedAndRemoved } from '@util/lists'; -import { WorkflowJobTemplatesAPI, OrganizationsAPI } from '@api'; +import { CardBody } from '../../../components/Card'; +import { getAddedAndRemoved } from '../../../util/lists'; +import { WorkflowJobTemplatesAPI, OrganizationsAPI } from '../../../api'; import { WorkflowJobTemplateForm } from '../shared'; function WorkflowJobTemplateEdit({ template }) { diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateEdit/WorkflowJobTemplateEdit.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateEdit/WorkflowJobTemplateEdit.test.jsx index 6b2c7be5aa..b9984f2f3e 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateEdit/WorkflowJobTemplateEdit.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateEdit/WorkflowJobTemplateEdit.test.jsx @@ -1,15 +1,19 @@ import React from 'react'; import { Route } from 'react-router-dom'; import { act } from 'react-dom/test-utils'; -import { WorkflowJobTemplatesAPI, OrganizationsAPI, LabelsAPI } from '@api'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; import { createMemoryHistory } from 'history'; +import { + WorkflowJobTemplatesAPI, + OrganizationsAPI, + LabelsAPI, +} from '../../../api'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import WorkflowJobTemplateEdit from './WorkflowJobTemplateEdit'; -jest.mock('@api/models/WorkflowJobTemplates'); -jest.mock('@api/models/Labels'); -jest.mock('@api/models/Organizations'); -jest.mock('@api/models/Inventories'); +jest.mock('../../../api/models/WorkflowJobTemplates'); +jest.mock('../../../api/models/Labels'); +jest.mock('../../../api/models/Organizations'); +jest.mock('../../../api/models/Inventories'); const mockTemplate = { id: 6, diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/DeleteAllNodesModal.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/DeleteAllNodesModal.jsx index 9947656801..57d177b75c 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/DeleteAllNodesModal.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/DeleteAllNodesModal.jsx @@ -1,9 +1,9 @@ import React, { useContext } from 'react'; -import { WorkflowDispatchContext } from '@contexts/Workflow'; import { Button } from '@patternfly/react-core'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import AlertModal from '@components/AlertModal'; +import { WorkflowDispatchContext } from '../../../../contexts/Workflow'; +import AlertModal from '../../../../components/AlertModal'; function DeleteAllNodesModal({ i18n }) { const dispatch = useContext(WorkflowDispatchContext); diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/DeleteAllNodesModal.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/DeleteAllNodesModal.test.jsx index 45f426755d..26c806da26 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/DeleteAllNodesModal.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/DeleteAllNodesModal.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { WorkflowDispatchContext } from '@contexts/Workflow'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { WorkflowDispatchContext } from '../../../../contexts/Workflow'; +import { mountWithContexts } from '../../../../../testUtils/enzymeHelpers'; import DeleteAllNodesModal from './DeleteAllNodesModal'; let wrapper; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkAddModal.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkAddModal.jsx index c3b707fe5e..97a941755e 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkAddModal.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkAddModal.jsx @@ -1,8 +1,8 @@ import React, { useContext } from 'react'; -import { WorkflowDispatchContext } from '@contexts/Workflow'; import { BaseSizes, Title, TitleLevel } from '@patternfly/react-core'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; +import { WorkflowDispatchContext } from '../../../../../contexts/Workflow'; import LinkModal from './LinkModal'; function LinkAddModal({ i18n }) { diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkAddModal.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkAddModal.test.jsx index bb68a69161..0ac499b37a 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkAddModal.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkAddModal.test.jsx @@ -1,9 +1,9 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../../../testUtils/enzymeHelpers'; import { WorkflowDispatchContext, WorkflowStateContext, -} from '@contexts/Workflow'; +} from '../../../../../contexts/Workflow'; import LinkAddModal from './LinkAddModal'; const dispatch = jest.fn(); diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkDeleteModal.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkDeleteModal.jsx index 216ecb71e3..6c2c49ef04 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkDeleteModal.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkDeleteModal.jsx @@ -1,12 +1,12 @@ import React, { Fragment, useContext } from 'react'; -import { - WorkflowDispatchContext, - WorkflowStateContext, -} from '@contexts/Workflow'; import { Button } from '@patternfly/react-core'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import AlertModal from '@components/AlertModal'; +import { + WorkflowDispatchContext, + WorkflowStateContext, +} from '../../../../../contexts/Workflow'; +import AlertModal from '../../../../../components/AlertModal'; function LinkDeleteModal({ i18n }) { const dispatch = useContext(WorkflowDispatchContext); diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkDeleteModal.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkDeleteModal.test.jsx index 4cb5b775e6..d0cee96579 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkDeleteModal.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkDeleteModal.test.jsx @@ -2,8 +2,8 @@ import React from 'react'; import { WorkflowDispatchContext, WorkflowStateContext, -} from '@contexts/Workflow'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +} from '../../../../../contexts/Workflow'; +import { mountWithContexts } from '../../../../../../testUtils/enzymeHelpers'; import LinkDeleteModal from './LinkDeleteModal'; let wrapper; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkEditModal.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkEditModal.jsx index f6f265527e..177e11bb32 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkEditModal.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkEditModal.jsx @@ -1,8 +1,8 @@ import React, { useContext } from 'react'; -import { WorkflowDispatchContext } from '@contexts/Workflow'; import { BaseSizes, Title, TitleLevel } from '@patternfly/react-core'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; +import { WorkflowDispatchContext } from '../../../../../contexts/Workflow'; import LinkModal from './LinkModal'; function LinkEditModal({ i18n }) { diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkEditModal.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkEditModal.test.jsx index a3fc316a69..a060f14091 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkEditModal.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkEditModal.test.jsx @@ -1,9 +1,9 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../../../testUtils/enzymeHelpers'; import { WorkflowDispatchContext, WorkflowStateContext, -} from '@contexts/Workflow'; +} from '../../../../../contexts/Workflow'; import LinkEditModal from './LinkEditModal'; const dispatch = jest.fn(); diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkModal.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkModal.jsx index b00ed4612f..0cf4601c4c 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkModal.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkModal.jsx @@ -1,13 +1,13 @@ import React, { useContext, useState } from 'react'; -import { - WorkflowDispatchContext, - WorkflowStateContext, -} from '@contexts/Workflow'; import { Button, FormGroup, Modal } from '@patternfly/react-core'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { func } from 'prop-types'; -import AnsibleSelect from '@components/AnsibleSelect'; +import { + WorkflowDispatchContext, + WorkflowStateContext, +} from '../../../../../contexts/Workflow'; +import AnsibleSelect from '../../../../../components/AnsibleSelect'; function LinkModal({ header, i18n, onConfirm }) { const dispatch = useContext(WorkflowDispatchContext); diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkModal.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkModal.test.jsx index 96bb8d92a0..787e891306 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkModal.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/LinkModals/LinkModal.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../../../testUtils/enzymeHelpers'; import { WorkflowDispatchContext, WorkflowStateContext, -} from '@contexts/Workflow'; +} from '../../../../../contexts/Workflow'; import LinkModal from './LinkModal'; const dispatch = jest.fn(); diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeAddModal.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeAddModal.jsx index 1af0278e72..18ee5fcdc9 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeAddModal.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeAddModal.jsx @@ -1,10 +1,10 @@ import React, { useContext } from 'react'; +import { withI18n } from '@lingui/react'; +import { t } from '@lingui/macro'; import { WorkflowDispatchContext, WorkflowStateContext, -} from '@contexts/Workflow'; -import { withI18n } from '@lingui/react'; -import { t } from '@lingui/macro'; +} from '../../../../../contexts/Workflow'; import NodeModal from './NodeModal'; function NodeAddModal({ i18n }) { diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeAddModal.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeAddModal.test.jsx index bf2b3052d5..723de11c73 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeAddModal.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeAddModal.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../../../testUtils/enzymeHelpers'; import { WorkflowDispatchContext, WorkflowStateContext, -} from '@contexts/Workflow'; +} from '../../../../../contexts/Workflow'; import NodeAddModal from './NodeAddModal'; const dispatch = jest.fn(); diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeDeleteModal.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeDeleteModal.jsx index 1032b85c91..769756d7aa 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeDeleteModal.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeDeleteModal.jsx @@ -1,12 +1,12 @@ import React, { Fragment, useContext } from 'react'; -import { - WorkflowDispatchContext, - WorkflowStateContext, -} from '@contexts/Workflow'; import { Button } from '@patternfly/react-core'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import AlertModal from '@components/AlertModal'; +import { + WorkflowDispatchContext, + WorkflowStateContext, +} from '../../../../../contexts/Workflow'; +import AlertModal from '../../../../../components/AlertModal'; function NodeDeleteModal({ i18n }) { const dispatch = useContext(WorkflowDispatchContext); diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeDeleteModal.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeDeleteModal.test.jsx index 94224fa451..880af36e50 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeDeleteModal.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeDeleteModal.test.jsx @@ -2,8 +2,8 @@ import React from 'react'; import { WorkflowDispatchContext, WorkflowStateContext, -} from '@contexts/Workflow'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +} from '../../../../../contexts/Workflow'; +import { mountWithContexts } from '../../../../../../testUtils/enzymeHelpers'; import NodeDeleteModal from './NodeDeleteModal'; let wrapper; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeEditModal.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeEditModal.jsx index 28e92e63c2..db002942a0 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeEditModal.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeEditModal.jsx @@ -1,7 +1,7 @@ import React, { useContext } from 'react'; -import { WorkflowDispatchContext } from '@contexts/Workflow'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; +import { WorkflowDispatchContext } from '../../../../../contexts/Workflow'; import NodeModal from './NodeModal'; function NodeEditModal({ i18n }) { diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeEditModal.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeEditModal.test.jsx index f851cc1f1e..e0f5ff1b72 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeEditModal.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeEditModal.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../../../testUtils/enzymeHelpers'; import { WorkflowDispatchContext, WorkflowStateContext, -} from '@contexts/Workflow'; +} from '../../../../../contexts/Workflow'; import NodeEditModal from './NodeEditModal'; const dispatch = jest.fn(); diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx index fafd574f6a..47971fe236 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx @@ -1,9 +1,5 @@ import React, { useContext, useState } from 'react'; import { useHistory } from 'react-router-dom'; -import { - WorkflowDispatchContext, - WorkflowStateContext, -} from '@contexts/Workflow'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { bool, node, func } from 'prop-types'; @@ -12,7 +8,11 @@ import { WizardContextConsumer, WizardFooter, } from '@patternfly/react-core'; -import Wizard from '@components/Wizard'; +import { + WorkflowDispatchContext, + WorkflowStateContext, +} from '../../../../../contexts/Workflow'; +import Wizard from '../../../../../components/Wizard'; import { NodeTypeStep } from './NodeTypeStep'; import { RunStep, NodeNextButton } from '.'; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.test.jsx index 3b5d96b381..39f410f338 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.test.jsx @@ -3,20 +3,20 @@ import { act } from 'react-dom/test-utils'; import { WorkflowDispatchContext, WorkflowStateContext, -} from '@contexts/Workflow'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +} from '../../../../../contexts/Workflow'; +import { mountWithContexts } from '../../../../../../testUtils/enzymeHelpers'; import { InventorySourcesAPI, JobTemplatesAPI, ProjectsAPI, WorkflowJobTemplatesAPI, -} from '@api'; +} from '../../../../../api'; import NodeModal from './NodeModal'; -jest.mock('@api/models/InventorySources'); -jest.mock('@api/models/JobTemplates'); -jest.mock('@api/models/Projects'); -jest.mock('@api/models/WorkflowJobTemplates'); +jest.mock('../../../../../api/models/InventorySources'); +jest.mock('../../../../../api/models/JobTemplates'); +jest.mock('../../../../../api/models/Projects'); +jest.mock('../../../../../api/models/WorkflowJobTemplates'); let wrapper; const dispatch = jest.fn(); diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/InventorySourcesList.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/InventorySourcesList.jsx index 69eb17e5e7..82e083d6cd 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/InventorySourcesList.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/InventorySourcesList.jsx @@ -3,11 +3,11 @@ import { useLocation } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { func, shape } from 'prop-types'; -import { InventorySourcesAPI } from '@api'; -import { getQSConfig, parseQueryString } from '@util/qs'; -import PaginatedDataList from '@components/PaginatedDataList'; -import DataListToolbar from '@components/DataListToolbar'; -import CheckboxListItem from '@components/CheckboxListItem'; +import { InventorySourcesAPI } from '../../../../../../api'; +import { getQSConfig, parseQueryString } from '../../../../../../util/qs'; +import PaginatedDataList from '../../../../../../components/PaginatedDataList'; +import DataListToolbar from '../../../../../../components/DataListToolbar'; +import CheckboxListItem from '../../../../../../components/CheckboxListItem'; const QS_CONFIG = getQSConfig('inventory_sources', { page: 1, diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/InventorySourcesList.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/InventorySourcesList.test.jsx index d09cf92ae1..8725beff57 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/InventorySourcesList.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/InventorySourcesList.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import { InventorySourcesAPI } from '@api'; +import { mountWithContexts } from '../../../../../../../testUtils/enzymeHelpers'; +import { InventorySourcesAPI } from '../../../../../../api'; import InventorySourcesList from './InventorySourcesList'; -jest.mock('@api/models/InventorySources'); +jest.mock('../../../../../../api/models/InventorySources'); const nodeResource = { id: 1, diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/JobTemplatesList.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/JobTemplatesList.jsx index 930bc23ac9..58e2078d7a 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/JobTemplatesList.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/JobTemplatesList.jsx @@ -3,11 +3,11 @@ import { useLocation } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { func, shape } from 'prop-types'; -import { JobTemplatesAPI } from '@api'; -import { getQSConfig, parseQueryString } from '@util/qs'; -import PaginatedDataList from '@components/PaginatedDataList'; -import DataListToolbar from '@components/DataListToolbar'; -import CheckboxListItem from '@components/CheckboxListItem'; +import { JobTemplatesAPI } from '../../../../../../api'; +import { getQSConfig, parseQueryString } from '../../../../../../util/qs'; +import PaginatedDataList from '../../../../../../components/PaginatedDataList'; +import DataListToolbar from '../../../../../../components/DataListToolbar'; +import CheckboxListItem from '../../../../../../components/CheckboxListItem'; const QS_CONFIG = getQSConfig('job_templates', { page: 1, diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/JobTemplatesList.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/JobTemplatesList.test.jsx index d5d8097313..580e96d465 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/JobTemplatesList.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/JobTemplatesList.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import { JobTemplatesAPI } from '@api'; +import { mountWithContexts } from '../../../../../../../testUtils/enzymeHelpers'; +import { JobTemplatesAPI } from '../../../../../../api'; import JobTemplatesList from './JobTemplatesList'; -jest.mock('@api/models/JobTemplates'); +jest.mock('../../../../../../api/models/JobTemplates'); const nodeResource = { id: 1, diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/NodeTypeStep.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/NodeTypeStep.jsx index bc54b626d8..8b14d17835 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/NodeTypeStep.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/NodeTypeStep.jsx @@ -5,8 +5,8 @@ import { func, number, shape, string } from 'prop-types'; import styled from 'styled-components'; import { Formik, Field } from 'formik'; import { Form, FormGroup, TextInput } from '@patternfly/react-core'; -import { FormFullWidthLayout } from '@components/FormLayout'; -import AnsibleSelect from '@components/AnsibleSelect'; +import { FormFullWidthLayout } from '../../../../../../components/FormLayout'; +import AnsibleSelect from '../../../../../../components/AnsibleSelect'; import InventorySourcesList from './InventorySourcesList'; import JobTemplatesList from './JobTemplatesList'; import ProjectsList from './ProjectsList'; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/NodeTypeStep.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/NodeTypeStep.test.jsx index 56e7f48690..ac0822e1a6 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/NodeTypeStep.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/NodeTypeStep.test.jsx @@ -1,18 +1,18 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../../../../testUtils/enzymeHelpers'; import { InventorySourcesAPI, JobTemplatesAPI, ProjectsAPI, WorkflowJobTemplatesAPI, -} from '@api'; +} from '../../../../../../api'; import NodeTypeStep from './NodeTypeStep'; -jest.mock('@api/models/InventorySources'); -jest.mock('@api/models/JobTemplates'); -jest.mock('@api/models/Projects'); -jest.mock('@api/models/WorkflowJobTemplates'); +jest.mock('../../../../../../api/models/InventorySources'); +jest.mock('../../../../../../api/models/JobTemplates'); +jest.mock('../../../../../../api/models/Projects'); +jest.mock('../../../../../../api/models/WorkflowJobTemplates'); const onUpdateDescription = jest.fn(); const onUpdateName = jest.fn(); diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/ProjectsList.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/ProjectsList.jsx index 836627512a..bb8d58006e 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/ProjectsList.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/ProjectsList.jsx @@ -3,11 +3,11 @@ import { useLocation } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { func, shape } from 'prop-types'; -import { ProjectsAPI } from '@api'; -import { getQSConfig, parseQueryString } from '@util/qs'; -import PaginatedDataList from '@components/PaginatedDataList'; -import DataListToolbar from '@components/DataListToolbar'; -import CheckboxListItem from '@components/CheckboxListItem'; +import { ProjectsAPI } from '../../../../../../api'; +import { getQSConfig, parseQueryString } from '../../../../../../util/qs'; +import PaginatedDataList from '../../../../../../components/PaginatedDataList'; +import DataListToolbar from '../../../../../../components/DataListToolbar'; +import CheckboxListItem from '../../../../../../components/CheckboxListItem'; const QS_CONFIG = getQSConfig('projects', { page: 1, diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/ProjectsList.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/ProjectsList.test.jsx index be4b588ce2..eff4ccf517 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/ProjectsList.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/ProjectsList.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import { ProjectsAPI } from '@api'; +import { mountWithContexts } from '../../../../../../../testUtils/enzymeHelpers'; +import { ProjectsAPI } from '../../../../../../api'; import ProjectsList from './ProjectsList'; -jest.mock('@api/models/Projects'); +jest.mock('../../../../../../api/models/Projects'); const nodeResource = { id: 1, diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/WorkflowJobTemplatesList.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/WorkflowJobTemplatesList.jsx index 759ae0c1e7..f614bb4efc 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/WorkflowJobTemplatesList.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/WorkflowJobTemplatesList.jsx @@ -3,11 +3,11 @@ import { useLocation } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { func, shape } from 'prop-types'; -import { WorkflowJobTemplatesAPI } from '@api'; -import { getQSConfig, parseQueryString } from '@util/qs'; -import PaginatedDataList from '@components/PaginatedDataList'; -import DataListToolbar from '@components/DataListToolbar'; -import CheckboxListItem from '@components/CheckboxListItem'; +import { WorkflowJobTemplatesAPI } from '../../../../../../api'; +import { getQSConfig, parseQueryString } from '../../../../../../util/qs'; +import PaginatedDataList from '../../../../../../components/PaginatedDataList'; +import DataListToolbar from '../../../../../../components/DataListToolbar'; +import CheckboxListItem from '../../../../../../components/CheckboxListItem'; const QS_CONFIG = getQSConfig('workflow_job_templates', { page: 1, diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/WorkflowJobTemplatesList.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/WorkflowJobTemplatesList.test.jsx index 69b63dd7d9..f3bf00a1d9 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/WorkflowJobTemplatesList.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/WorkflowJobTemplatesList.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import { WorkflowJobTemplatesAPI } from '@api'; +import { mountWithContexts } from '../../../../../../../testUtils/enzymeHelpers'; +import { WorkflowJobTemplatesAPI } from '../../../../../../api'; import WorkflowJobTemplatesList from './WorkflowJobTemplatesList'; -jest.mock('@api/models/WorkflowJobTemplates'); +jest.mock('../../../../../../api/models/WorkflowJobTemplates'); const nodeResource = { id: 1, diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeViewModal.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeViewModal.jsx index c985054e2e..281c7b0368 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeViewModal.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeViewModal.jsx @@ -1,22 +1,22 @@ import React, { useContext, useEffect, useCallback } from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; +import { Button, Modal } from '@patternfly/react-core'; import { WorkflowDispatchContext, WorkflowStateContext, -} from '@contexts/Workflow'; +} from '../../../../../contexts/Workflow'; -import { Button, Modal } from '@patternfly/react-core'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import PromptDetail from '@components/PromptDetail'; -import useRequest from '@util/useRequest'; +import ContentError from '../../../../../components/ContentError'; +import ContentLoading from '../../../../../components/ContentLoading'; +import PromptDetail from '../../../../../components/PromptDetail'; +import useRequest from '../../../../../util/useRequest'; import { InventorySourcesAPI, JobTemplatesAPI, ProjectsAPI, WorkflowJobTemplatesAPI, -} from '@api'; +} from '../../../../../api'; function getNodeType(node) { const ujtType = node.type || node.unified_job_type; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeViewModal.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeViewModal.test.jsx index 7d049d70e1..3d968974d5 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeViewModal.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeViewModal.test.jsx @@ -3,13 +3,16 @@ import { act } from 'react-dom/test-utils'; import { WorkflowDispatchContext, WorkflowStateContext, -} from '@contexts/Workflow'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; -import { JobTemplatesAPI, WorkflowJobTemplatesAPI } from '@api'; +} from '../../../../../contexts/Workflow'; +import { + mountWithContexts, + waitForElement, +} from '../../../../../../testUtils/enzymeHelpers'; +import { JobTemplatesAPI, WorkflowJobTemplatesAPI } from '../../../../../api'; import NodeViewModal from './NodeViewModal'; -jest.mock('@api/models/JobTemplates'); -jest.mock('@api/models/WorkflowJobTemplates'); +jest.mock('../../../../../api/models/JobTemplates'); +jest.mock('../../../../../api/models/WorkflowJobTemplates'); WorkflowJobTemplatesAPI.readLaunch.mockResolvedValue({}); WorkflowJobTemplatesAPI.readDetail.mockResolvedValue({ data: { diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/RunStep.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/RunStep.jsx index 1555f04754..f7316ee8d6 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/RunStep.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/RunStep.jsx @@ -4,7 +4,7 @@ import { t } from '@lingui/macro'; import styled from 'styled-components'; import { func, string } from 'prop-types'; import { Title } from '@patternfly/react-core'; -import SelectableCard from '@components/SelectableCard'; +import SelectableCard from '../../../../../components/SelectableCard'; const Grid = styled.div` display: grid; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/RunStep.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/RunStep.test.jsx index 84f1cec07f..b822601482 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/RunStep.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/RunStep.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../../../testUtils/enzymeHelpers'; import RunStep from './RunStep'; let wrapper; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/UnsavedChangesModal.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/UnsavedChangesModal.jsx index 155a747151..d06803ee53 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/UnsavedChangesModal.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/UnsavedChangesModal.jsx @@ -1,9 +1,9 @@ import React, { useContext } from 'react'; -import { WorkflowDispatchContext } from '@contexts/Workflow'; import { Button, Modal } from '@patternfly/react-core'; import { withI18n } from '@lingui/react'; import { t, Trans } from '@lingui/macro'; import { func } from 'prop-types'; +import { WorkflowDispatchContext } from '../../../../contexts/Workflow'; function UnsavedChangesModal({ i18n, onSaveAndExit, onExit }) { const dispatch = useContext(WorkflowDispatchContext); diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/UnsavedChangesModal.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/UnsavedChangesModal.test.jsx index 01b5e59780..5695469ce2 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/UnsavedChangesModal.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/UnsavedChangesModal.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { WorkflowDispatchContext } from '@contexts/Workflow'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { WorkflowDispatchContext } from '../../../../contexts/Workflow'; +import { mountWithContexts } from '../../../../../testUtils/enzymeHelpers'; import UnsavedChangesModal from './UnsavedChangesModal'; let wrapper; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Visualizer.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Visualizer.jsx index 2cac0a8eae..f3be938dcb 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Visualizer.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Visualizer.jsx @@ -1,16 +1,16 @@ import React, { useEffect, useReducer } from 'react'; -import { - WorkflowDispatchContext, - WorkflowStateContext, -} from '@contexts/Workflow'; import { useHistory } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import styled from 'styled-components'; import { shape } from 'prop-types'; -import { layoutGraph } from '@components/Workflow/WorkflowUtils'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import workflowReducer from '@components/Workflow/workflowReducer'; +import { + WorkflowDispatchContext, + WorkflowStateContext, +} from '../../../contexts/Workflow'; +import { layoutGraph } from '../../../components/Workflow/WorkflowUtils'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; +import workflowReducer from '../../../components/Workflow/workflowReducer'; import { DeleteAllNodesModal, UnsavedChangesModal } from './Modals'; import { LinkAddModal, @@ -30,7 +30,7 @@ import { WorkflowApprovalTemplatesAPI, WorkflowJobTemplateNodesAPI, WorkflowJobTemplatesAPI, -} from '@api'; +} from '../../../api'; const CenteredContent = styled.div` align-items: center; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Visualizer.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Visualizer.test.jsx index de1434951e..26770f16f9 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Visualizer.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Visualizer.test.jsx @@ -1,10 +1,13 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import { WorkflowJobTemplateNodesAPI, WorkflowJobTemplatesAPI } from '@api'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; +import { + WorkflowJobTemplateNodesAPI, + WorkflowJobTemplatesAPI, +} from '../../../api'; import Visualizer from './Visualizer'; -jest.mock('@api'); +jest.mock('../../../api'); const template = { id: 1, diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerGraph.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerGraph.jsx index bf65330702..55948c052f 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerGraph.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerGraph.jsx @@ -1,18 +1,18 @@ import React, { useContext, useEffect, useRef, useState } from 'react'; -import { - WorkflowDispatchContext, - WorkflowStateContext, -} from '@contexts/Workflow'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import styled from 'styled-components'; import { bool } from 'prop-types'; import * as d3 from 'd3'; +import { + WorkflowDispatchContext, + WorkflowStateContext, +} from '../../../contexts/Workflow'; import { getScaleAndOffsetToFit, constants as wfConstants, getTranslatePointsForZoom, -} from '@components/Workflow/WorkflowUtils'; +} from '../../../components/Workflow/WorkflowUtils'; import { WorkflowHelp, WorkflowLegend, @@ -20,11 +20,8 @@ import { WorkflowNodeHelp, WorkflowStartNode, WorkflowTools, -} from '@components/Workflow'; -import { - VisualizerLink, - VisualizerNode, -} from '@screens/Template/WorkflowJobTemplateVisualizer'; +} from '../../../components/Workflow'; +import { VisualizerLink, VisualizerNode } from '.'; const PotentialLink = styled.polyline` pointer-events: none; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerGraph.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerGraph.test.jsx index 40921aeeca..d510fae4ac 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerGraph.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerGraph.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; -import { WorkflowStateContext } from '@contexts/Workflow'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; +import { WorkflowStateContext } from '../../../contexts/Workflow'; import VisualizerGraph from './VisualizerGraph'; const workflowContext = { diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerLink.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerLink.jsx index b046f22056..1904fa9778 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerLink.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerLink.jsx @@ -1,22 +1,22 @@ import React, { useContext, useEffect, useRef, useState } from 'react'; -import { - WorkflowDispatchContext, - WorkflowStateContext, -} from '@contexts/Workflow'; import styled from 'styled-components'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { bool, func, shape } from 'prop-types'; import { PencilAltIcon, PlusIcon, TrashAltIcon } from '@patternfly/react-icons'; +import { + WorkflowDispatchContext, + WorkflowStateContext, +} from '../../../contexts/Workflow'; import { generateLine, getLinePoints, getLinkOverlayPoints, -} from '@components/Workflow/WorkflowUtils'; +} from '../../../components/Workflow/WorkflowUtils'; import { WorkflowActionTooltip, WorkflowActionTooltipItem, -} from '@components/Workflow'; +} from '../../../components/Workflow'; const LinkG = styled.g` pointer-events: ${props => (props.ignorePointerEvents ? 'none' : 'auto')}; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerLink.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerLink.test.jsx index 6efd3fb478..ceb16b6b2d 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerLink.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerLink.test.jsx @@ -2,8 +2,8 @@ import React from 'react'; import { WorkflowDispatchContext, WorkflowStateContext, -} from '@contexts/Workflow'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +} from '../../../contexts/Workflow'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import VisualizerLink from './VisualizerLink'; const link = { diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerNode.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerNode.jsx index 423e347b18..e38a1df488 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerNode.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerNode.jsx @@ -1,8 +1,4 @@ import React, { useContext, useRef, useState } from 'react'; -import { - WorkflowDispatchContext, - WorkflowStateContext, -} from '@contexts/Workflow'; import styled from 'styled-components'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; @@ -14,12 +10,16 @@ import { PlusIcon, TrashAltIcon, } from '@patternfly/react-icons'; -import { constants as wfConstants } from '@components/Workflow/WorkflowUtils'; +import { + WorkflowDispatchContext, + WorkflowStateContext, +} from '../../../contexts/Workflow'; +import { constants as wfConstants } from '../../../components/Workflow/WorkflowUtils'; import { WorkflowActionTooltip, WorkflowActionTooltipItem, WorkflowNodeTypeLetter, -} from '@components/Workflow'; +} from '../../../components/Workflow'; const NodeG = styled.g` pointer-events: ${props => (props.noPointerEvents ? 'none' : 'initial')}; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerNode.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerNode.test.jsx index 4adc0184d8..85409c3d3b 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerNode.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerNode.test.jsx @@ -2,8 +2,8 @@ import React from 'react'; import { WorkflowDispatchContext, WorkflowStateContext, -} from '@contexts/Workflow'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +} from '../../../contexts/Workflow'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import VisualizerNode from './VisualizerNode'; const mockedContext = { diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerStartScreen.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerStartScreen.jsx index d51596f618..cee8dfcbac 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerStartScreen.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerStartScreen.jsx @@ -1,9 +1,9 @@ import React, { useContext } from 'react'; -import { WorkflowDispatchContext } from '@contexts/Workflow'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Button as PFButton } from '@patternfly/react-core'; import styled from 'styled-components'; +import { WorkflowDispatchContext } from '../../../contexts/Workflow'; const Button = styled(PFButton)` && { diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerStartScreen.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerStartScreen.test.jsx index bc3b6fd38f..7ba99dd11a 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerStartScreen.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerStartScreen.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { WorkflowDispatchContext } from '@contexts/Workflow'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { WorkflowDispatchContext } from '../../../contexts/Workflow'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import VisualizerStartScreen from './VisualizerStartScreen'; const dispatch = jest.fn(); diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerToolbar.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerToolbar.jsx index c6a24b1656..01669276de 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerToolbar.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerToolbar.jsx @@ -1,8 +1,4 @@ import React, { useContext } from 'react'; -import { - WorkflowDispatchContext, - WorkflowStateContext, -} from '@contexts/Workflow'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { bool, func, shape } from 'prop-types'; @@ -20,8 +16,12 @@ import { TrashAltIcon, WrenchIcon, } from '@patternfly/react-icons'; -import LaunchButton from '@components/LaunchButton'; import styled from 'styled-components'; +import LaunchButton from '../../../components/LaunchButton'; +import { + WorkflowDispatchContext, + WorkflowStateContext, +} from '../../../contexts/Workflow'; const Badge = styled(PFBadge)` align-items: center; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerToolbar.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerToolbar.test.jsx index 3edfa63c0d..16eb826d22 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerToolbar.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerToolbar.test.jsx @@ -2,8 +2,8 @@ import React from 'react'; import { WorkflowDispatchContext, WorkflowStateContext, -} from '@contexts/Workflow'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +} from '../../../contexts/Workflow'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import VisualizerToolbar from './VisualizerToolbar'; let wrapper; diff --git a/awx/ui_next/src/screens/Template/shared/JobTemplateForm.jsx b/awx/ui_next/src/screens/Template/shared/JobTemplateForm.jsx index 48c4caeb33..a3a01c92c7 100644 --- a/awx/ui_next/src/screens/Template/shared/JobTemplateForm.jsx +++ b/awx/ui_next/src/screens/Template/shared/JobTemplateForm.jsx @@ -10,34 +10,34 @@ import { Checkbox, TextInput, } from '@patternfly/react-core'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import AnsibleSelect from '@components/AnsibleSelect'; -import { TagMultiSelect } from '@components/MultiSelect'; -import useRequest from '@util/useRequest'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; +import AnsibleSelect from '../../../components/AnsibleSelect'; +import { TagMultiSelect } from '../../../components/MultiSelect'; +import useRequest from '../../../util/useRequest'; -import FormActionGroup from '@components/FormActionGroup'; +import FormActionGroup from '../../../components/FormActionGroup'; import FormField, { CheckboxField, FieldTooltip, FormSubmitError, -} from '@components/FormField'; -import FieldWithPrompt from '@components/FieldWithPrompt'; +} from '../../../components/FormField'; +import FieldWithPrompt from '../../../components/FieldWithPrompt'; import { FormColumnLayout, FormFullWidthLayout, FormCheckboxLayout, -} from '@components/FormLayout'; -import { VariablesField } from '@components/CodeMirrorInput'; -import { required } from '@util/validators'; -import { JobTemplate } from '@types'; +} from '../../../components/FormLayout'; +import { VariablesField } from '../../../components/CodeMirrorInput'; +import { required } from '../../../util/validators'; +import { JobTemplate } from '../../../types'; import { InventoryLookup, InstanceGroupsLookup, ProjectLookup, MultiCredentialsLookup, -} from '@components/Lookup'; -import { JobTemplatesAPI, ProjectsAPI } from '@api'; +} from '../../../components/Lookup'; +import { JobTemplatesAPI, ProjectsAPI } from '../../../api'; import LabelSelect from './LabelSelect'; import PlaybookSelect from './PlaybookSelect'; import WebhookSubForm from './WebhookSubForm'; diff --git a/awx/ui_next/src/screens/Template/shared/JobTemplateForm.test.jsx b/awx/ui_next/src/screens/Template/shared/JobTemplateForm.test.jsx index 430bd42984..978d0dba05 100644 --- a/awx/ui_next/src/screens/Template/shared/JobTemplateForm.test.jsx +++ b/awx/ui_next/src/screens/Template/shared/JobTemplateForm.test.jsx @@ -1,13 +1,21 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; -import { sleep } from '@testUtils/testUtils'; import { Route } from 'react-router-dom'; import { createMemoryHistory } from 'history'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; +import { sleep } from '../../../../testUtils/testUtils'; import JobTemplateForm from './JobTemplateForm'; -import { LabelsAPI, JobTemplatesAPI, ProjectsAPI, CredentialsAPI } from '@api'; +import { + LabelsAPI, + JobTemplatesAPI, + ProjectsAPI, + CredentialsAPI, +} from '../../../api'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { const mockData = { diff --git a/awx/ui_next/src/screens/Template/shared/LabelSelect.jsx b/awx/ui_next/src/screens/Template/shared/LabelSelect.jsx index ba28424a49..7db5568c82 100644 --- a/awx/ui_next/src/screens/Template/shared/LabelSelect.jsx +++ b/awx/ui_next/src/screens/Template/shared/LabelSelect.jsx @@ -1,8 +1,8 @@ import React, { useState, useEffect } from 'react'; import { func, arrayOf, number, shape, string, oneOfType } from 'prop-types'; import { Select, SelectOption, SelectVariant } from '@patternfly/react-core'; -import { LabelsAPI } from '@api'; -import { useSyncedSelectValue } from '@components/MultiSelect'; +import { LabelsAPI } from '../../../api'; +import { useSyncedSelectValue } from '../../../components/MultiSelect'; async function loadLabelOptions(setLabels, onError) { let labels; diff --git a/awx/ui_next/src/screens/Template/shared/LabelSelect.test.jsx b/awx/ui_next/src/screens/Template/shared/LabelSelect.test.jsx index dda07d8e99..39342dd3fe 100644 --- a/awx/ui_next/src/screens/Template/shared/LabelSelect.test.jsx +++ b/awx/ui_next/src/screens/Template/shared/LabelSelect.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { mount } from 'enzyme'; -import { LabelsAPI } from '@api'; +import { LabelsAPI } from '../../../api'; import LabelSelect from './LabelSelect'; -jest.mock('@api'); +jest.mock('../../../api'); const options = [{ id: 1, name: 'one' }, { id: 2, name: 'two' }]; diff --git a/awx/ui_next/src/screens/Template/shared/PlaybookSelect.jsx b/awx/ui_next/src/screens/Template/shared/PlaybookSelect.jsx index 226f4836a1..cefd5bd126 100644 --- a/awx/ui_next/src/screens/Template/shared/PlaybookSelect.jsx +++ b/awx/ui_next/src/screens/Template/shared/PlaybookSelect.jsx @@ -2,8 +2,8 @@ import React, { useState, useEffect } from 'react'; import { number, string, oneOfType } from 'prop-types'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import AnsibleSelect from '@components/AnsibleSelect'; -import { ProjectsAPI } from '@api'; +import AnsibleSelect from '../../../components/AnsibleSelect'; +import { ProjectsAPI } from '../../../api'; function PlaybookSelect({ projectId, isValid, field, onBlur, onError, i18n }) { const [options, setOptions] = useState([]); diff --git a/awx/ui_next/src/screens/Template/shared/PlaybookSelect.test.jsx b/awx/ui_next/src/screens/Template/shared/PlaybookSelect.test.jsx index e3fab12024..302e0b0bf6 100644 --- a/awx/ui_next/src/screens/Template/shared/PlaybookSelect.test.jsx +++ b/awx/ui_next/src/screens/Template/shared/PlaybookSelect.test.jsx @@ -1,10 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import PlaybookSelect from './PlaybookSelect'; -import { ProjectsAPI } from '@api'; +import { ProjectsAPI } from '../../../api'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { beforeEach(() => { diff --git a/awx/ui_next/src/screens/Template/shared/WebhookSubForm.jsx b/awx/ui_next/src/screens/Template/shared/WebhookSubForm.jsx index d38c1644ea..3141a650b7 100644 --- a/awx/ui_next/src/screens/Template/shared/WebhookSubForm.jsx +++ b/awx/ui_next/src/screens/Template/shared/WebhookSubForm.jsx @@ -9,19 +9,19 @@ import { InputGroup, Button, } from '@patternfly/react-core'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import useRequest from '@util/useRequest'; +import ContentError from '../../../components/ContentError'; +import ContentLoading from '../../../components/ContentLoading'; +import useRequest from '../../../util/useRequest'; import { useField } from 'formik'; -import { FormColumnLayout } from '@components/FormLayout'; -import { CredentialLookup } from '@components/Lookup'; -import AnsibleSelect from '@components/AnsibleSelect'; -import { FieldTooltip } from '@components/FormField'; +import { FormColumnLayout } from '../../../components/FormLayout'; +import { CredentialLookup } from '../../../components/Lookup'; +import AnsibleSelect from '../../../components/AnsibleSelect'; +import { FieldTooltip } from '../../../components/FormField'; import { JobTemplatesAPI, WorkflowJobTemplatesAPI, CredentialTypesAPI, -} from '@api'; +} from '../../../api'; function WebhookSubForm({ i18n, enableWebhooks, templateType }) { const { id } = useParams(); diff --git a/awx/ui_next/src/screens/Template/shared/WebhookSubForm.test.jsx b/awx/ui_next/src/screens/Template/shared/WebhookSubForm.test.jsx index c867ac43fe..9b9896d694 100644 --- a/awx/ui_next/src/screens/Template/shared/WebhookSubForm.test.jsx +++ b/awx/ui_next/src/screens/Template/shared/WebhookSubForm.test.jsx @@ -3,13 +3,16 @@ import { act } from 'react-dom/test-utils'; import { Route } from 'react-router-dom'; import { createMemoryHistory } from 'history'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; -import { CredentialsAPI } from '@api'; import { Formik } from 'formik'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; +import { CredentialsAPI } from '../../../api'; import WebhookSubForm from './WebhookSubForm'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/screens/Template/shared/WorkflowJobTemplateForm.jsx b/awx/ui_next/src/screens/Template/shared/WorkflowJobTemplateForm.jsx index 6d884d7516..50aca155b6 100644 --- a/awx/ui_next/src/screens/Template/shared/WorkflowJobTemplateForm.jsx +++ b/awx/ui_next/src/screens/Template/shared/WorkflowJobTemplateForm.jsx @@ -6,26 +6,26 @@ import PropTypes, { shape } from 'prop-types'; import { withI18n } from '@lingui/react'; import { useField, withFormik } from 'formik'; import { Form, FormGroup, Checkbox } from '@patternfly/react-core'; -import { required } from '@util/validators'; +import { required } from '../../../util/validators'; import FormField, { FieldTooltip, FormSubmitError, -} from '@components/FormField'; +} from '../../../components/FormField'; import { FormColumnLayout, FormFullWidthLayout, FormCheckboxLayout, -} from '@components/FormLayout'; -import OrganizationLookup from '@components/Lookup/OrganizationLookup'; -import { InventoryLookup } from '@components/Lookup'; -import { VariablesField } from '@components/CodeMirrorInput'; -import FormActionGroup from '@components/FormActionGroup'; -import ContentError from '@components/ContentError'; -import CheckboxField from '@components/FormField/CheckboxField'; +} from '../../../components/FormLayout'; +import OrganizationLookup from '../../../components/Lookup/OrganizationLookup'; +import { InventoryLookup } from '../../../components/Lookup'; +import { VariablesField } from '../../../components/CodeMirrorInput'; +import FormActionGroup from '../../../components/FormActionGroup'; +import ContentError from '../../../components/ContentError'; +import CheckboxField from '../../../components/FormField/CheckboxField'; import LabelSelect from './LabelSelect'; import WebhookSubForm from './WebhookSubForm'; -import { WorkFlowJobTemplate } from '@types'; +import { WorkFlowJobTemplate } from '../../../types'; const urlOrigin = window.location.origin; diff --git a/awx/ui_next/src/screens/Template/shared/WorkflowJobTemplateForm.test.jsx b/awx/ui_next/src/screens/Template/shared/WorkflowJobTemplateForm.test.jsx index d3dcbef066..57747a12bf 100644 --- a/awx/ui_next/src/screens/Template/shared/WorkflowJobTemplateForm.test.jsx +++ b/awx/ui_next/src/screens/Template/shared/WorkflowJobTemplateForm.test.jsx @@ -2,22 +2,22 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { Route } from 'react-router-dom'; import { createMemoryHistory } from 'history'; -import { sleep } from '@testUtils/testUtils'; +import { sleep } from '../../../../testUtils/testUtils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import WorkflowJobTemplateForm from './WorkflowJobTemplateForm'; import { WorkflowJobTemplatesAPI, LabelsAPI, OrganizationsAPI, InventoriesAPI, -} from '@api'; +} from '../../../api'; -jest.mock('@api/models/CredentialTypes'); -jest.mock('@api/models/WorkflowJobTemplates'); -jest.mock('@api/models/Labels'); -jest.mock('@api/models/Organizations'); -jest.mock('@api/models/Inventories'); +jest.mock('../../../api/models/CredentialTypes'); +jest.mock('../../../api/models/WorkflowJobTemplates'); +jest.mock('../../../api/models/Labels'); +jest.mock('../../../api/models/Organizations'); +jest.mock('../../../api/models/Inventories'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/screens/UISetting/UISettings.test.jsx b/awx/ui_next/src/screens/UISetting/UISettings.test.jsx index bda41ac784..106b1d4e4e 100644 --- a/awx/ui_next/src/screens/UISetting/UISettings.test.jsx +++ b/awx/ui_next/src/screens/UISetting/UISettings.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import UISettings from './UISettings'; diff --git a/awx/ui_next/src/screens/User/User.jsx b/awx/ui_next/src/screens/User/User.jsx index cee493bc77..982ae0de5e 100644 --- a/awx/ui_next/src/screens/User/User.jsx +++ b/awx/ui_next/src/screens/User/User.jsx @@ -9,14 +9,14 @@ import { useRouteMatch, useLocation, } from 'react-router-dom'; -import useRequest from '@util/useRequest'; -import { UsersAPI } from '@api'; import { Card, CardActions, PageSection } from '@patternfly/react-core'; -import { TabbedCardHeader } from '@components/Card'; -import CardCloseButton from '@components/CardCloseButton'; -import ContentError from '@components/ContentError'; -import ContentLoading from '@components/ContentLoading'; -import RoutedTabs from '@components/RoutedTabs'; +import useRequest from '../../util/useRequest'; +import { UsersAPI } from '../../api'; +import { TabbedCardHeader } from '../../components/Card'; +import CardCloseButton from '../../components/CardCloseButton'; +import ContentError from '../../components/ContentError'; +import ContentLoading from '../../components/ContentLoading'; +import RoutedTabs from '../../components/RoutedTabs'; import UserDetail from './UserDetail'; import UserEdit from './UserEdit'; import UserOrganizations from './UserOrganizations'; diff --git a/awx/ui_next/src/screens/User/User.test.jsx b/awx/ui_next/src/screens/User/User.test.jsx index d389a54c9d..725247776d 100644 --- a/awx/ui_next/src/screens/User/User.test.jsx +++ b/awx/ui_next/src/screens/User/User.test.jsx @@ -1,12 +1,15 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { UsersAPI } from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { UsersAPI } from '../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../testUtils/enzymeHelpers'; import mockDetails from './data.user.json'; import User from './User'; -jest.mock('@api'); +jest.mock('../../api'); async function getUsers() { return { diff --git a/awx/ui_next/src/screens/User/UserAccess/UserAccessList.jsx b/awx/ui_next/src/screens/User/UserAccess/UserAccessList.jsx index 808ec3530a..db62a14bd6 100644 --- a/awx/ui_next/src/screens/User/UserAccess/UserAccessList.jsx +++ b/awx/ui_next/src/screens/User/UserAccess/UserAccessList.jsx @@ -2,13 +2,13 @@ import React, { useCallback, useEffect } from 'react'; import { useParams, useLocation } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { getQSConfig, parseQueryString } from '@util/qs'; -import { UsersAPI } from '@api'; -import useRequest from '@util/useRequest'; +import { getQSConfig, parseQueryString } from '../../../util/qs'; +import { UsersAPI } from '../../../api'; +import useRequest from '../../../util/useRequest'; import PaginatedDataList, { ToolbarAddButton, -} from '@components/PaginatedDataList'; -import DatalistToolbar from '@components/DataListToolbar'; +} from '../../../components/PaginatedDataList'; +import DatalistToolbar from '../../../components/DataListToolbar'; import UserAccessListItem from './UserAccessListItem'; const QS_CONFIG = getQSConfig('roles', { diff --git a/awx/ui_next/src/screens/User/UserAccess/UserAccessList.test.jsx b/awx/ui_next/src/screens/User/UserAccess/UserAccessList.test.jsx index 85cdf25f4f..d25649ddd9 100644 --- a/awx/ui_next/src/screens/User/UserAccess/UserAccessList.test.jsx +++ b/awx/ui_next/src/screens/User/UserAccess/UserAccessList.test.jsx @@ -1,12 +1,12 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { UsersAPI } from '@api'; +import { UsersAPI } from '../../../api'; import { Route } from 'react-router-dom'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { mountWithContexts, waitForElement } from '../../../../testUtils/enzymeHelpers'; import UserAccessList from './UserAccessList'; -jest.mock('@api/models/Users'); +jest.mock('../../../api/models/Users'); describe('', () => { let wrapper; let history; diff --git a/awx/ui_next/src/screens/User/UserAccess/UserAccessListItem.jsx b/awx/ui_next/src/screens/User/UserAccess/UserAccessListItem.jsx index 032c981da6..fcf1fabf0f 100644 --- a/awx/ui_next/src/screens/User/UserAccess/UserAccessListItem.jsx +++ b/awx/ui_next/src/screens/User/UserAccess/UserAccessListItem.jsx @@ -6,7 +6,7 @@ import { DataListItemCells, DataListItemRow, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; +import DataListCell from '../../../components/DataListCell'; import { Link } from 'react-router-dom'; diff --git a/awx/ui_next/src/screens/User/UserAccess/UserAccessListItem.test.jsx b/awx/ui_next/src/screens/User/UserAccess/UserAccessListItem.test.jsx index 3b6df96c73..31b53ca477 100644 --- a/awx/ui_next/src/screens/User/UserAccess/UserAccessListItem.test.jsx +++ b/awx/ui_next/src/screens/User/UserAccess/UserAccessListItem.test.jsx @@ -1,5 +1,5 @@ import React from 'react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import UserAccessListItem from './UserAccessListItem'; describe('', () => { diff --git a/awx/ui_next/src/screens/User/UserAdd/UserAdd.jsx b/awx/ui_next/src/screens/User/UserAdd/UserAdd.jsx index 279bb4e1ff..d54da84592 100644 --- a/awx/ui_next/src/screens/User/UserAdd/UserAdd.jsx +++ b/awx/ui_next/src/screens/User/UserAdd/UserAdd.jsx @@ -1,9 +1,9 @@ import React, { useState } from 'react'; import { useHistory } from 'react-router-dom'; import { Card, PageSection } from '@patternfly/react-core'; -import { CardBody } from '@components/Card'; +import { CardBody } from '../../../components/Card'; import UserForm from '../shared/UserForm'; -import { UsersAPI } from '@api'; +import { UsersAPI } from '../../../api'; function UserAdd() { const [formSubmitError, setFormSubmitError] = useState(null); diff --git a/awx/ui_next/src/screens/User/UserAdd/UserAdd.test.jsx b/awx/ui_next/src/screens/User/UserAdd/UserAdd.test.jsx index 1537855d0e..ec18de0974 100644 --- a/awx/ui_next/src/screens/User/UserAdd/UserAdd.test.jsx +++ b/awx/ui_next/src/screens/User/UserAdd/UserAdd.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import UserAdd from './UserAdd'; -import { UsersAPI } from '@api'; +import { UsersAPI } from '../../../api'; -jest.mock('@api'); +jest.mock('../../../api'); let wrapper; describe('', () => { diff --git a/awx/ui_next/src/screens/User/UserDetail/UserDetail.jsx b/awx/ui_next/src/screens/User/UserDetail/UserDetail.jsx index 8170ab33b0..aa2889921a 100644 --- a/awx/ui_next/src/screens/User/UserDetail/UserDetail.jsx +++ b/awx/ui_next/src/screens/User/UserDetail/UserDetail.jsx @@ -3,15 +3,15 @@ import { Link, useHistory } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import AlertModal from '@components/AlertModal'; import { Button } from '@patternfly/react-core'; -import { CardBody, CardActionsRow } from '@components/Card'; -import ContentLoading from '@components/ContentLoading'; -import DeleteButton from '@components/DeleteButton'; -import { DetailList, Detail } from '@components/DetailList'; -import ErrorDetail from '@components/ErrorDetail'; -import { formatDateString } from '@util/dates'; -import { UsersAPI } from '@api'; +import AlertModal from '../../../components/AlertModal'; +import { CardBody, CardActionsRow } from '../../../components/Card'; +import ContentLoading from '../../../components/ContentLoading'; +import DeleteButton from '../../../components/DeleteButton'; +import { DetailList, Detail } from '../../../components/DetailList'; +import ErrorDetail from '../../../components/ErrorDetail'; +import { formatDateString } from '../../../util/dates'; +import { UsersAPI } from '../../../api'; function UserDetail({ user, i18n }) { const { diff --git a/awx/ui_next/src/screens/User/UserDetail/UserDetail.test.jsx b/awx/ui_next/src/screens/User/UserDetail/UserDetail.test.jsx index 48c706913e..b76b926cc8 100644 --- a/awx/ui_next/src/screens/User/UserDetail/UserDetail.test.jsx +++ b/awx/ui_next/src/screens/User/UserDetail/UserDetail.test.jsx @@ -1,12 +1,15 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; -import { UsersAPI } from '@api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; +import { UsersAPI } from '../../../api'; import UserDetail from './UserDetail'; import mockDetails from '../data.user.json'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { test('initially renders succesfully', () => { diff --git a/awx/ui_next/src/screens/User/UserEdit/UserEdit.jsx b/awx/ui_next/src/screens/User/UserEdit/UserEdit.jsx index 8e9c121e3a..96e159e02c 100644 --- a/awx/ui_next/src/screens/User/UserEdit/UserEdit.jsx +++ b/awx/ui_next/src/screens/User/UserEdit/UserEdit.jsx @@ -1,9 +1,9 @@ import React, { useState } from 'react'; import { useHistory } from 'react-router-dom'; import { withI18n } from '@lingui/react'; -import { CardBody } from '@components/Card'; +import { CardBody } from '../../../components/Card'; import UserForm from '../shared/UserForm'; -import { UsersAPI } from '@api'; +import { UsersAPI } from '../../../api'; function UserEdit({ user }) { const [formSubmitError, setFormSubmitError] = useState(null); diff --git a/awx/ui_next/src/screens/User/UserEdit/UserEdit.test.jsx b/awx/ui_next/src/screens/User/UserEdit/UserEdit.test.jsx index 237d200afa..57ec1eae6e 100644 --- a/awx/ui_next/src/screens/User/UserEdit/UserEdit.test.jsx +++ b/awx/ui_next/src/screens/User/UserEdit/UserEdit.test.jsx @@ -1,11 +1,11 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { UsersAPI } from '@api'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { UsersAPI } from '../../../api'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import UserEdit from './UserEdit'; -jest.mock('@api'); +jest.mock('../../../api'); let wrapper; describe('', () => { diff --git a/awx/ui_next/src/screens/User/UserList/UserList.jsx b/awx/ui_next/src/screens/User/UserList/UserList.jsx index 375f078eb1..48d81af749 100644 --- a/awx/ui_next/src/screens/User/UserList/UserList.jsx +++ b/awx/ui_next/src/screens/User/UserList/UserList.jsx @@ -4,15 +4,15 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Card, PageSection } from '@patternfly/react-core'; -import { UsersAPI } from '@api'; -import AlertModal from '@components/AlertModal'; -import DataListToolbar from '@components/DataListToolbar'; -import ErrorDetail from '@components/ErrorDetail'; +import { UsersAPI } from '../../../api'; +import AlertModal from '../../../components/AlertModal'; +import DataListToolbar from '../../../components/DataListToolbar'; +import ErrorDetail from '../../../components/ErrorDetail'; import PaginatedDataList, { ToolbarAddButton, ToolbarDeleteButton, -} from '@components/PaginatedDataList'; -import { getQSConfig, parseQueryString } from '@util/qs'; +} from '../../../components/PaginatedDataList'; +import { getQSConfig, parseQueryString } from '../../../util/qs'; import UserListItem from './UserListItem'; diff --git a/awx/ui_next/src/screens/User/UserList/UserList.test.jsx b/awx/ui_next/src/screens/User/UserList/UserList.test.jsx index 7433c63208..96d763dad5 100644 --- a/awx/ui_next/src/screens/User/UserList/UserList.test.jsx +++ b/awx/ui_next/src/screens/User/UserList/UserList.test.jsx @@ -1,10 +1,13 @@ import React from 'react'; -import { UsersAPI } from '@api'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { UsersAPI } from '../../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import UsersList, { _UsersList } from './UserList'; -jest.mock('@api'); +jest.mock('../../../api'); let wrapper; const loadUsers = jest.spyOn(_UsersList.prototype, 'loadUsers'); diff --git a/awx/ui_next/src/screens/User/UserList/UserListItem.jsx b/awx/ui_next/src/screens/User/UserList/UserListItem.jsx index 0cbad39438..227ffe586d 100644 --- a/awx/ui_next/src/screens/User/UserList/UserListItem.jsx +++ b/awx/ui_next/src/screens/User/UserList/UserListItem.jsx @@ -11,12 +11,12 @@ import { DataListItemRow, Tooltip, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; import { Link } from 'react-router-dom'; import { PencilAltIcon } from '@patternfly/react-icons'; +import DataListCell from '../../../components/DataListCell'; -import { User } from '@types'; +import { User } from '../../../types'; class UserListItem extends React.Component { static propTypes = { diff --git a/awx/ui_next/src/screens/User/UserList/UserListItem.test.jsx b/awx/ui_next/src/screens/User/UserList/UserListItem.test.jsx index b3cda6b8a1..acdc7eecc0 100644 --- a/awx/ui_next/src/screens/User/UserList/UserListItem.test.jsx +++ b/awx/ui_next/src/screens/User/UserList/UserListItem.test.jsx @@ -2,7 +2,7 @@ import React from 'react'; import { MemoryRouter } from 'react-router-dom'; import { I18nProvider } from '@lingui/react'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import mockDetails from '../data.user.json'; import UserListItem from './UserListItem'; diff --git a/awx/ui_next/src/screens/User/UserOrganizations/UserOrganizationListItem.jsx b/awx/ui_next/src/screens/User/UserOrganizations/UserOrganizationListItem.jsx index ba0ab00d35..f45c9a5b93 100644 --- a/awx/ui_next/src/screens/User/UserOrganizations/UserOrganizationListItem.jsx +++ b/awx/ui_next/src/screens/User/UserOrganizations/UserOrganizationListItem.jsx @@ -7,7 +7,7 @@ import { DataListItemRow, DataListItem, } from '@patternfly/react-core'; -import DataListCell from '@components/DataListCell'; +import DataListCell from '../../../components/DataListCell'; function UserOrganizationListItem({ organization, i18n }) { return ( diff --git a/awx/ui_next/src/screens/User/UserOrganizations/UserOrganizationListItem.test.jsx b/awx/ui_next/src/screens/User/UserOrganizations/UserOrganizationListItem.test.jsx index 23622d6124..3a176a4a3c 100644 --- a/awx/ui_next/src/screens/User/UserOrganizations/UserOrganizationListItem.test.jsx +++ b/awx/ui_next/src/screens/User/UserOrganizations/UserOrganizationListItem.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import UserOrganizationListItem from './UserOrganizationListItem'; diff --git a/awx/ui_next/src/screens/User/UserOrganizations/UserOrganizations.test.jsx b/awx/ui_next/src/screens/User/UserOrganizations/UserOrganizations.test.jsx index e5093b07d0..9aa3b4b79f 100644 --- a/awx/ui_next/src/screens/User/UserOrganizations/UserOrganizations.test.jsx +++ b/awx/ui_next/src/screens/User/UserOrganizations/UserOrganizations.test.jsx @@ -2,7 +2,10 @@ import React from 'react'; import { Route } from 'react-router-dom'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import UserOrganizations from './UserOrganizations'; diff --git a/awx/ui_next/src/screens/User/UserOrganizations/UserOrganizationsList.jsx b/awx/ui_next/src/screens/User/UserOrganizations/UserOrganizationsList.jsx index ce9a2042ad..87f39a9f73 100644 --- a/awx/ui_next/src/screens/User/UserOrganizations/UserOrganizationsList.jsx +++ b/awx/ui_next/src/screens/User/UserOrganizations/UserOrganizationsList.jsx @@ -3,10 +3,10 @@ import { withI18n } from '@lingui/react'; import { useLocation, useParams } from 'react-router-dom'; import { t } from '@lingui/macro'; -import PaginatedDataList from '@components/PaginatedDataList'; -import useRequest from '@util/useRequest'; -import { UsersAPI } from '@api'; -import { getQSConfig, parseQueryString } from '@util/qs'; +import PaginatedDataList from '../../../components/PaginatedDataList'; +import useRequest from '../../../util/useRequest'; +import { UsersAPI } from '../../../api'; +import { getQSConfig, parseQueryString } from '../../../util/qs'; import UserOrganizationListItem from './UserOrganizationListItem'; const QS_CONFIG = getQSConfig('organizations', { diff --git a/awx/ui_next/src/screens/User/UserOrganizations/UserOrganizationsList.test.jsx b/awx/ui_next/src/screens/User/UserOrganizations/UserOrganizationsList.test.jsx index 11bdf96eac..445878983d 100644 --- a/awx/ui_next/src/screens/User/UserOrganizations/UserOrganizationsList.test.jsx +++ b/awx/ui_next/src/screens/User/UserOrganizations/UserOrganizationsList.test.jsx @@ -1,13 +1,16 @@ import React from 'react'; import { Route } from 'react-router-dom'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; import { createMemoryHistory } from 'history'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import UserOrganizationsList from './UserOrganizationsList'; -import { UsersAPI } from '@api'; +import { UsersAPI } from '../../../api'; -jest.mock('@api/models/Users'); +jest.mock('../../../api/models/Users'); describe('', () => { let history; diff --git a/awx/ui_next/src/screens/User/UserTeams/UserTeams.jsx b/awx/ui_next/src/screens/User/UserTeams/UserTeams.jsx index aa97e30d80..5d342e00f2 100644 --- a/awx/ui_next/src/screens/User/UserTeams/UserTeams.jsx +++ b/awx/ui_next/src/screens/User/UserTeams/UserTeams.jsx @@ -1,5 +1,5 @@ import React, { Component } from 'react'; -import { CardBody } from '@components/Card'; +import { CardBody } from '../../../components/Card'; class UserAdd extends Component { render() { diff --git a/awx/ui_next/src/screens/User/UserTokens/UserTokens.jsx b/awx/ui_next/src/screens/User/UserTokens/UserTokens.jsx index aa97e30d80..5d342e00f2 100644 --- a/awx/ui_next/src/screens/User/UserTokens/UserTokens.jsx +++ b/awx/ui_next/src/screens/User/UserTokens/UserTokens.jsx @@ -1,5 +1,5 @@ import React, { Component } from 'react'; -import { CardBody } from '@components/Card'; +import { CardBody } from '../../../components/Card'; class UserAdd extends Component { render() { diff --git a/awx/ui_next/src/screens/User/Users.jsx b/awx/ui_next/src/screens/User/Users.jsx index 9a49579c3b..b07e076f0e 100644 --- a/awx/ui_next/src/screens/User/Users.jsx +++ b/awx/ui_next/src/screens/User/Users.jsx @@ -3,7 +3,7 @@ import { Route, useRouteMatch, Switch } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import Breadcrumbs from '@components/Breadcrumbs/Breadcrumbs'; +import Breadcrumbs from '../../components/Breadcrumbs/Breadcrumbs'; import UsersList from './UserList/UserList'; import UserAdd from './UserAdd/UserAdd'; diff --git a/awx/ui_next/src/screens/User/Users.test.jsx b/awx/ui_next/src/screens/User/Users.test.jsx index 531729d11e..7193234f8f 100644 --- a/awx/ui_next/src/screens/User/Users.test.jsx +++ b/awx/ui_next/src/screens/User/Users.test.jsx @@ -1,7 +1,7 @@ import React from 'react'; import { createMemoryHistory } from 'history'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; import Users from './Users'; diff --git a/awx/ui_next/src/screens/User/shared/UserForm.jsx b/awx/ui_next/src/screens/User/shared/UserForm.jsx index 368a3f184c..47294ff105 100644 --- a/awx/ui_next/src/screens/User/shared/UserForm.jsx +++ b/awx/ui_next/src/screens/User/shared/UserForm.jsx @@ -4,15 +4,15 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Formik, useField } from 'formik'; import { Form, FormGroup } from '@patternfly/react-core'; -import AnsibleSelect from '@components/AnsibleSelect'; -import FormActionGroup from '@components/FormActionGroup/FormActionGroup'; +import AnsibleSelect from '../../../components/AnsibleSelect'; +import FormActionGroup from '../../../components/FormActionGroup/FormActionGroup'; import FormField, { PasswordField, FormSubmitError, -} from '@components/FormField'; -import OrganizationLookup from '@components/Lookup/OrganizationLookup'; -import { required, requiredEmail } from '@util/validators'; -import { FormColumnLayout } from '@components/FormLayout'; +} from '../../../components/FormField'; +import OrganizationLookup from '../../../components/Lookup/OrganizationLookup'; +import { required, requiredEmail } from '../../../util/validators'; +import { FormColumnLayout } from '../../../components/FormLayout'; function UserFormFields({ user, i18n }) { const [organization, setOrganization] = useState(null); diff --git a/awx/ui_next/src/screens/User/shared/UserForm.test.jsx b/awx/ui_next/src/screens/User/shared/UserForm.test.jsx index b6d9c9c059..4acc1d249c 100644 --- a/awx/ui_next/src/screens/User/shared/UserForm.test.jsx +++ b/awx/ui_next/src/screens/User/shared/UserForm.test.jsx @@ -1,11 +1,14 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '@testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import UserForm from './UserForm'; -import { UsersAPI } from '@api'; +import { UsersAPI } from '../../../api'; import mockData from '../data.user.json'; -jest.mock('@api'); +jest.mock('../../../api'); describe('', () => { let wrapper; diff --git a/awx/ui_next/src/util/useRequest.test.jsx b/awx/ui_next/src/util/useRequest.test.jsx index 1d8185229a..d0b1072d26 100644 --- a/awx/ui_next/src/util/useRequest.test.jsx +++ b/awx/ui_next/src/util/useRequest.test.jsx @@ -1,7 +1,7 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { mount } from 'enzyme'; -import { mountWithContexts } from '@testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../testUtils/enzymeHelpers'; import useRequest, { useDeleteItems } from './useRequest'; function TestInner() { diff --git a/tools/dealias.py b/tools/dealias.py new file mode 100644 index 0000000000..936d0e456c --- /dev/null +++ b/tools/dealias.py @@ -0,0 +1,114 @@ +import argparse +import glob +import os +from shutil import move, copymode +from tempfile import mkstemp + + +def get_alias_depth(file_path, alias): + if "src" not in file_path: + raise Exception("src not found in file path") + if not alias.startswith("@"): + raise Exception("alias must start with '@'") + + name = alias.replace("@", "") + + if file_path.endswith(name): + return 0 + if file_path.endswith(name + os.path.sep): + return 0 + + (head, tail) = os.path.split(file_path) + + if name in [n.replace(".jsx", "").replace(".js", "") for n in os.listdir(head)]: + return 1 + + max_depth = 30 + depth = 2 + while True: + if depth > max_depth: + raise Exception(f"({file_path}): max depth exceeded for {alias}") + (head, tail) = os.path.split(head) + if name in [n.replace(".jsx", "").replace(".js", "") for n in os.listdir(head)]: + return depth + depth += 1 + + +def get_new_import_string(old_import_str, alias, alias_depth): + if not alias.startswith("@"): + raise Exception("alias must start with '@'") + name = alias.replace("@", "") + if alias_depth < 2: + return old_import_str.replace(alias, "." + os.path.sep + name) + new_segments = os.path.sep.join([".."] * (alias_depth - 1)) + return old_import_str.replace(alias, new_segments + os.path.sep + name) + + +aliases = [ + "@api", + "@components", + "@constants", + "@contexts", + "@screens", + "@types", + "@util", + "@testUtils", +] + + +def find_and_replace_aliases(file_path, root_dir): + fh, temp_path = mkstemp() + + has_logged_file_name = False + with os.fdopen(fh, "w") as new_file: + with open(file_path) as old_file: + for (line_number, line) in enumerate(old_file): + matched_alias = None + for alias in aliases: + if alias in line: + matched_alias = alias + break + if matched_alias: + alias_depth = get_alias_depth(file_path, matched_alias) + new_line = get_new_import_string(line, alias, alias_depth) + new_file.write(new_line) + if not has_logged_file_name: + log_file_replacement(root_dir, file_path) + has_logged_file_name = True + log_line_replacement(line_number, line, new_line) + else: + new_file.write(line) + copymode(file_path, temp_path) + os.remove(file_path) + move(temp_path, file_path) + + +def log_line_replacement(line_number, line, new_line): + display_line = line.replace(os.linesep, "") + display_new_line = new_line.replace(os.linesep, "") + print(f"\t (line {line_number}): {display_line} --> {display_new_line}") + + +def log_file_replacement(root_dir, file_path): + display_path = os.path.relpath(file_path, root_dir) + print("") + print(f"{display_path}:") + + +def parse_args(): + parser = argparse.ArgumentParser() + parser.add_argument("root_dir", help="Root directory") + args = parser.parse_args() + return args + + +def run(): + args = parse_args() + search_path = args.root_dir + "**/**/*.js*" + + for file_path in glob.iglob(search_path, recursive=True): + find_and_replace_aliases(file_path, args.root_dir) + + +if __name__ == "__main__": + run() From 10f324110e9d08bfb8516158192b9189503464e1 Mon Sep 17 00:00:00 2001 From: Jake McDermott Date: Wed, 6 May 2020 14:10:20 -0400 Subject: [PATCH 2/8] Remove build and test configuration for aliases --- awx/ui_next/jest.config.js | 8 --- awx/ui_next/webpack.config.js | 10 --- tools/dealias.py | 114 ---------------------------------- 3 files changed, 132 deletions(-) delete mode 100644 tools/dealias.py diff --git a/awx/ui_next/jest.config.js b/awx/ui_next/jest.config.js index a2be1d25ab..79216a46c9 100644 --- a/awx/ui_next/jest.config.js +++ b/awx/ui_next/jest.config.js @@ -9,14 +9,6 @@ module.exports = { ], moduleNameMapper: { '\\.(css|scss|less)$': '/__mocks__/styleMock.js', - '^@api(.*)$': '/src/api$1', - '^@components(.*)$': '/src/components$1', - '^@constants$': '/src/constants.js', - '^@contexts(.*)$': '/src/contexts$1', - '^@screens(.*)$': '/src/screens$1', - '^@util(.*)$': '/src/util$1', - '^@types(.*)$': '/src/types$1', - '^@testUtils(.*)$': '/testUtils$1', }, setupFiles: [ '@nteract/mockument' diff --git a/awx/ui_next/webpack.config.js b/awx/ui_next/webpack.config.js index 7f07d77c3e..55059a7272 100644 --- a/awx/ui_next/webpack.config.js +++ b/awx/ui_next/webpack.config.js @@ -57,16 +57,6 @@ module.exports = { }, resolve: { extensions: ['*', '.js', '.jsx', '.css'], - alias: { - '@api': path.join(SRC_PATH, 'api'), - '@components': path.join(SRC_PATH, 'components'), - '@constants': path.join(SRC_PATH, 'constants.js'), - '@contexts': path.join(SRC_PATH, 'contexts'), - '@screens': path.join(SRC_PATH, 'screens'), - '@types': path.join(SRC_PATH, 'types'), - '@util': path.join(SRC_PATH, 'util'), - '@testUtils': path.join(ROOT_PATH, 'testUtils'), - } }, output: { path: path.resolve(__dirname, '/dist'), diff --git a/tools/dealias.py b/tools/dealias.py deleted file mode 100644 index 936d0e456c..0000000000 --- a/tools/dealias.py +++ /dev/null @@ -1,114 +0,0 @@ -import argparse -import glob -import os -from shutil import move, copymode -from tempfile import mkstemp - - -def get_alias_depth(file_path, alias): - if "src" not in file_path: - raise Exception("src not found in file path") - if not alias.startswith("@"): - raise Exception("alias must start with '@'") - - name = alias.replace("@", "") - - if file_path.endswith(name): - return 0 - if file_path.endswith(name + os.path.sep): - return 0 - - (head, tail) = os.path.split(file_path) - - if name in [n.replace(".jsx", "").replace(".js", "") for n in os.listdir(head)]: - return 1 - - max_depth = 30 - depth = 2 - while True: - if depth > max_depth: - raise Exception(f"({file_path}): max depth exceeded for {alias}") - (head, tail) = os.path.split(head) - if name in [n.replace(".jsx", "").replace(".js", "") for n in os.listdir(head)]: - return depth - depth += 1 - - -def get_new_import_string(old_import_str, alias, alias_depth): - if not alias.startswith("@"): - raise Exception("alias must start with '@'") - name = alias.replace("@", "") - if alias_depth < 2: - return old_import_str.replace(alias, "." + os.path.sep + name) - new_segments = os.path.sep.join([".."] * (alias_depth - 1)) - return old_import_str.replace(alias, new_segments + os.path.sep + name) - - -aliases = [ - "@api", - "@components", - "@constants", - "@contexts", - "@screens", - "@types", - "@util", - "@testUtils", -] - - -def find_and_replace_aliases(file_path, root_dir): - fh, temp_path = mkstemp() - - has_logged_file_name = False - with os.fdopen(fh, "w") as new_file: - with open(file_path) as old_file: - for (line_number, line) in enumerate(old_file): - matched_alias = None - for alias in aliases: - if alias in line: - matched_alias = alias - break - if matched_alias: - alias_depth = get_alias_depth(file_path, matched_alias) - new_line = get_new_import_string(line, alias, alias_depth) - new_file.write(new_line) - if not has_logged_file_name: - log_file_replacement(root_dir, file_path) - has_logged_file_name = True - log_line_replacement(line_number, line, new_line) - else: - new_file.write(line) - copymode(file_path, temp_path) - os.remove(file_path) - move(temp_path, file_path) - - -def log_line_replacement(line_number, line, new_line): - display_line = line.replace(os.linesep, "") - display_new_line = new_line.replace(os.linesep, "") - print(f"\t (line {line_number}): {display_line} --> {display_new_line}") - - -def log_file_replacement(root_dir, file_path): - display_path = os.path.relpath(file_path, root_dir) - print("") - print(f"{display_path}:") - - -def parse_args(): - parser = argparse.ArgumentParser() - parser.add_argument("root_dir", help="Root directory") - args = parser.parse_args() - return args - - -def run(): - args = parse_args() - search_path = args.root_dir + "**/**/*.js*" - - for file_path in glob.iglob(search_path, recursive=True): - find_and_replace_aliases(file_path, args.root_dir) - - -if __name__ == "__main__": - run() From abcf8fea960b5c1c17d94f240a4f8aa546b0c81c Mon Sep 17 00:00:00 2001 From: Jake McDermott Date: Thu, 7 May 2020 17:37:24 -0400 Subject: [PATCH 3/8] Add tooling for building static files --- awx/ui_next/.eslintrc | 5 - awx/ui_next/__mocks__/fileMock.js | 7 - awx/ui_next/__mocks__/styleMock.js | 1 - awx/ui_next/babel.config.js | 18 - awx/ui_next/build/locales/en/messages.js | 1 - awx/ui_next/build/locales/ja/messages.js | 1 - awx/ui_next/dist/index.html | 7 - awx/ui_next/images/brand-logo.svg | 232 - awx/ui_next/jest.config.js | 35 - awx/ui_next/jest.setup.js | 11 - awx/ui_next/package-lock.json | 24806 ++++++---------- awx/ui_next/package.json | 123 +- awx/ui_next/public/images/pfbg_2000.jpg | Bin 0 -> 276435 bytes awx/ui_next/public/images/pfbg_576.jpg | Bin 0 -> 67491 bytes awx/ui_next/public/images/pfbg_576@2x.jpg | Bin 0 -> 195594 bytes awx/ui_next/public/images/pfbg_768.jpg | Bin 0 -> 116699 bytes awx/ui_next/public/images/pfbg_768@2x.jpg | Bin 0 -> 362032 bytes awx/ui_next/public/index.html | 17 + awx/ui_next/src/locales/en/messages.js | 284 + .../{build => src}/locales/en/messages.po | 0 awx/ui_next/src/locales/ja/messages.js | 272 + .../{build => src}/locales/ja/messages.po | 0 awx/ui_next/src/setupProxy.js | 40 + awx/ui_next/src/setupTests.js | 14 + awx/ui_next/webpack.config.js | 110 - 25 files changed, 9464 insertions(+), 16520 deletions(-) delete mode 100644 awx/ui_next/__mocks__/fileMock.js delete mode 100644 awx/ui_next/__mocks__/styleMock.js delete mode 100644 awx/ui_next/babel.config.js delete mode 100644 awx/ui_next/build/locales/en/messages.js delete mode 100644 awx/ui_next/build/locales/ja/messages.js delete mode 100644 awx/ui_next/dist/index.html delete mode 100644 awx/ui_next/images/brand-logo.svg delete mode 100644 awx/ui_next/jest.config.js delete mode 100644 awx/ui_next/jest.setup.js create mode 100644 awx/ui_next/public/images/pfbg_2000.jpg create mode 100644 awx/ui_next/public/images/pfbg_576.jpg create mode 100644 awx/ui_next/public/images/pfbg_576@2x.jpg create mode 100644 awx/ui_next/public/images/pfbg_768.jpg create mode 100644 awx/ui_next/public/images/pfbg_768@2x.jpg create mode 100644 awx/ui_next/public/index.html create mode 100644 awx/ui_next/src/locales/en/messages.js rename awx/ui_next/{build => src}/locales/en/messages.po (100%) create mode 100644 awx/ui_next/src/locales/ja/messages.js rename awx/ui_next/{build => src}/locales/ja/messages.po (100%) create mode 100644 awx/ui_next/src/setupProxy.js create mode 100644 awx/ui_next/src/setupTests.js delete mode 100644 awx/ui_next/webpack.config.js diff --git a/awx/ui_next/.eslintrc b/awx/ui_next/.eslintrc index cb603da472..7f535d012d 100644 --- a/awx/ui_next/.eslintrc +++ b/awx/ui_next/.eslintrc @@ -11,11 +11,6 @@ "plugins": ["react-hooks"], "extends": ["airbnb", "prettier", "prettier/react"], "settings": { - "import/resolver": { - "webpack": { - "config": "webpack.config.js" - } - }, "react": { "version": "16.5.2" } diff --git a/awx/ui_next/__mocks__/fileMock.js b/awx/ui_next/__mocks__/fileMock.js deleted file mode 100644 index 0bf40cb419..0000000000 --- a/awx/ui_next/__mocks__/fileMock.js +++ /dev/null @@ -1,7 +0,0 @@ -const path = require('path'); - -module.exports = { - process (src, filename) { - return `module.exports=${JSON.stringify(path.basename(filename))};`; - }, -}; diff --git a/awx/ui_next/__mocks__/styleMock.js b/awx/ui_next/__mocks__/styleMock.js deleted file mode 100644 index f053ebf797..0000000000 --- a/awx/ui_next/__mocks__/styleMock.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = {}; diff --git a/awx/ui_next/babel.config.js b/awx/ui_next/babel.config.js deleted file mode 100644 index aca16f7246..0000000000 --- a/awx/ui_next/babel.config.js +++ /dev/null @@ -1,18 +0,0 @@ -module.exports = api => { - api.cache(false); - return { - plugins: [ - 'babel-plugin-styled-components', - '@babel/plugin-proposal-class-properties', - 'macros' - ], - presets: [ - ['@babel/preset-env', { - targets: { - node: '8.11' - } - }], - '@babel/preset-react' - ] - }; -}; diff --git a/awx/ui_next/build/locales/en/messages.js b/awx/ui_next/build/locales/en/messages.js deleted file mode 100644 index 61cb8198b8..0000000000 --- a/awx/ui_next/build/locales/en/messages.js +++ /dev/null @@ -1 +0,0 @@ -/* eslint-disable */module.exports={languageData:{"plurals":function(n,ord){var s=String(n).split("."),v0=!s[1],t0=Number(s[0])==n,n10=t0&&s[0].slice(-1),n100=t0&&s[0].slice(-2);if(ord)return n10==1&&n100!=11?"one":n10==2&&n100!=12?"two":n10==3&&n100!=13?"few":"other";return n==1&&v0?"one":"other"}},messages:{"404":"404","> add":"> add","> edit":"> edit","AWX Logo":"AWX Logo","About":"About","AboutModal Logo":"AboutModal Logo","Access":"Access","Add":"Add","Add Roles":"Add Roles","Add Team Roles":"Add Team Roles","Add User Roles":"Add User Roles","Administration":"Administration","Admins":"Admins","Ansible Environment":"Ansible Environment","Ansible Version":"Ansible Version","Applications":"Applications","Apply roles":"Apply roles","Are you sure you want to delete:":"Are you sure you want to delete:","Are you sure you want to remove {0} access from {1}? Doing so affects all members of the team.":function(a){return["Are you sure you want to remove ",a("0")," access from ",a("1"),"? Doing so affects all members of the team."]},"Are you sure you want to remove {0} access from {username}?":function(a){return["Are you sure you want to remove ",a("0")," access from ",a("username"),"?"]},"Authentication":"Authentication","Authentication Settings":"Authentication Settings","Brand Image":"Brand Image","Cancel":"Cancel","Cannot find organization with ID":"Cannot find organization with ID","Cannot find resource.":"Cannot find resource.","Cannot find route {0}.":function(a){return["Cannot find route ",a("0"),"."]},"Close":"Close","Collapse":"Collapse","Copyright 2018 Red Hat, Inc.":"Copyright 2018 Red Hat, Inc.","Copyright 2019 Red Hat, Inc.":"Copyright 2019 Red Hat, Inc.","Create New Organization":"Create New Organization","Created":"Created","Credential Types":"Credential Types","Credentials":"Credentials","Current page":"Current page","Dashboard":"Dashboard","Delete":"Delete","Delete {0}":function(a){return["Delete ",a("0")]},"Delete {itemName}":function(a){return["Delete ",a("itemName")]},"Description":"Description","Details":"Details","Edit":"Edit","Edit Details":"Edit Details","Expand":"Expand","Failure":"Failure","First":"First","Go to first page":"Go to first page","Go to last page":"Go to last page","Go to next page":"Go to next page","Go to previous page":"Go to previous page","Help":"Help","If you {0} want to remove access for this particular user, please remove them from the team.":function(a){return["If you ",a("0")," want to remove access for this particular user, please remove them from the team."]},"Info":"Info","Instance Groups":"Instance Groups","Integrations":"Integrations","Invalid username or password. Please try again.":"Invalid username or password. Please try again.","Inventories":"Inventories","Inventory Scripts":"Inventory Scripts","Items Per Page":"Items Per Page","Items per page":"Items per page","Items {itemMin} \u2013 {itemMax} of {count}":function(a){return["Items ",a("itemMin")," \u2013 ",a("itemMax")," of ",a("count")]},"Jobs":"Jobs","Jobs Settings":"Jobs Settings","Last":"Last","Last Modified":"Last Modified","Last Name":"Last Name","License":"License","Loading...":"Loading...","Logout":"Logout","Management Jobs":"Management Jobs","Members":"Members","Modified":"Modified","My View":"My View","Name":"Name","Next":"Next","No {0} Found":function(a){return["No ",a("0")," Found"]},"Notification Templates":"Notification Templates","Notifications":"Notifications","Organization Add":"Organization Add","Organization detail tabs":"Organization detail tabs","Organizations":"Organizations","Organizations List":"Organizations List","Page":"Page","Page <0/> of {pageCount}":function(a){return["Page <0/> of ",a("pageCount")]},"Page Number":"Page Number","Pagination":"Pagination","Password":"Password","Per Page":"Per Page","Please add {0} to populate this list":function(a){return["Please add ",a("0")," to populate this list"]},"Please add {0} {itemName} to populate this list":function(a){return["Please add ",a("0")," ",a("itemName")," to populate this list"]},"Portal Mode":"Portal Mode","Previous":"Previous","Primary Navigation":"Primary Navigation","Projects":"Projects","Remove {0} Access":function(a){return["Remove ",a("0")," Access"]},"Resources":"Resources","Save":"Save","Schedules":"Schedules","Search":"Search","Search text input":"Search text input","Select":"Select","Select Input":"Select Input","Select Users Or Teams":"Select Users Or Teams","Select a row to delete":"Select a row to delete","Select all":"Select all","Select items from list":"Select items from list","Select the Instance Groups for this Organization to run on.":"Select the Instance Groups for this Organization to run on.","Select {header}":function(a){return["Select ",a("header")]},"Selected":"Selected","Settings":"Settings","Sort":"Sort","Successful":"Successful","System":"System","System Settings":"System Settings","Team":"Team","Team Roles":"Team Roles","Teams":"Teams","Templates":"Templates","This field must not be blank":"This field must not be blank","This field must not exceed {max} characters":function(a){return["This field must not exceed ",a("max")," characters"]},"Toggle notification failure":"Toggle notification failure","Toggle notification success":"Toggle notification success","Use Default {label}":function(a){return["Use Default ",a("label")]},"User":"User","User Details":"User Details","User Interface":"User Interface","User Interface Settings":"User Interface Settings","User Roles":"User Roles","Username":"Username","Users":"Users","Views":"Views","Welcome to Ansible {brandName}! Please Sign In.":function(a){return["Welcome to Ansible ",a("brandName"),"! Please Sign In."]},"You do not have permission to delete the following {0}: {itemsUnableToDelete}":function(a){return["You do not have permission to delete the following ",a("0"),": ",a("itemsUnableToDelete")]},"You have been logged out.":"You have been logged out.","add {currentTab}":function(a){return["add ",a("currentTab")]},"adding {currentTab}":function(a){return["adding ",a("currentTab")]},"cancel delete":"cancel delete","confirm delete":"confirm delete","confirm removal of {currentTab}/cancel and go back to {currentTab} view.":function(a){return["confirm removal of ",a("currentTab"),"/cancel and go back to ",a("currentTab")," view."]},"delete {currentTab}":function(a){return["delete ",a("currentTab")]},"deleting {currentTab} association with orgs":function(a){return["deleting ",a("currentTab")," association with orgs"]},"edit view":"edit view","items":"items","of {pageCount}":function(a){return["of ",a("pageCount")]},"pages":"pages","per page":"per page","save/cancel and go back to view":"save/cancel and go back to view","save/cancel and go back to {currentTab} view":function(a){return["save/cancel and go back to ",a("currentTab")," view"]},"select organization {itemId}":function(a){return["select organization ",a("itemId")]},"{0}":function(a){return[a("0")]},"{0} List":function(a){return[a("0")," List"]},"{currentTab} detail view":function(a){return[a("currentTab")," detail view"]},"{itemMin} - {itemMax} of {count}":function(a){return[a("itemMin")," - ",a("itemMax")," of ",a("count")]}}}; \ No newline at end of file diff --git a/awx/ui_next/build/locales/ja/messages.js b/awx/ui_next/build/locales/ja/messages.js deleted file mode 100644 index b3b6c304be..0000000000 --- a/awx/ui_next/build/locales/ja/messages.js +++ /dev/null @@ -1 +0,0 @@ -/* eslint-disable */module.exports={languageData:{"plurals":function(n,ord){if(ord)return"other";return"other"}},messages:{"404":"404","> add":"> add","> edit":"> edit","AWX Logo":"AWX Logo","About":"About","AboutModal Logo":"AboutModal Logo","Access":"Access","Add":"Add","Add Roles":"Add Roles","Add Team Roles":"Add Team Roles","Add User Roles":"Add User Roles","Administration":"Administration","Admins":"Admins","Ansible Environment":"Ansible Environment","Ansible Version":"Ansible Version","Applications":"Applications","Apply roles":"Apply roles","Are you sure you want to delete:":"Are you sure you want to delete:","Are you sure you want to remove {0} access from {1}? Doing so affects all members of the team.":function(a){return["Are you sure you want to remove ",a("0")," access from ",a("1"),"? Doing so affects all members of the team."]},"Are you sure you want to remove {0} access from {username}?":function(a){return["Are you sure you want to remove ",a("0")," access from ",a("username"),"?"]},"Authentication":"Authentication","Authentication Settings":"Authentication Settings","Brand Image":"Brand Image","Cancel":"Cancel","Cannot find organization with ID":"Cannot find organization with ID","Cannot find resource.":"Cannot find resource.","Cannot find route {0}.":function(a){return["Cannot find route ",a("0"),"."]},"Close":"Close","Collapse":"Collapse","Copyright 2018 Red Hat, Inc.":"Copyright 2018 Red Hat, Inc.","Copyright 2019 Red Hat, Inc.":"Copyright 2019 Red Hat, Inc.","Create New Organization":"Create New Organization","Created":"Created","Credential Types":"Credential Types","Credentials":"Credentials","Current page":"Current page","Dashboard":"Dashboard","Delete":"Delete","Delete {0}":function(a){return["Delete ",a("0")]},"Delete {itemName}":function(a){return["Delete ",a("itemName")]},"Description":"Description","Details":"Details","Edit":"Edit","Edit Details":"Edit Details","Expand":"Expand","Failure":"Failure","First":"First","Go to first page":"Go to first page","Go to last page":"Go to last page","Go to next page":"Go to next page","Go to previous page":"Go to previous page","Help":"Help","If you {0} want to remove access for this particular user, please remove them from the team.":function(a){return["If you ",a("0")," want to remove access for this particular user, please remove them from the team."]},"Info":"Info","Instance Groups":"Instance Groups","Integrations":"Integrations","Invalid username or password. Please try again.":"Invalid username or password. Please try again.","Inventories":"Inventories","Inventory Scripts":"Inventory Scripts","Items Per Page":"Items Per Page","Items per page":"Items per page","Items {itemMin} \u2013 {itemMax} of {count}":function(a){return["Items ",a("itemMin")," \u2013 ",a("itemMax")," of ",a("count")]},"Jobs":"Jobs","Jobs Settings":"Jobs Settings","Last":"Last","Last Modified":"Last Modified","Last Name":"Last Name","License":"License","Loading...":"Loading...","Logout":"Logout","Management Jobs":"Management Jobs","Members":"Members","Modified":"Modified","My View":"My View","Name":"Name","Next":"Next","No {0} Found":function(a){return["No ",a("0")," Found"]},"Notification Templates":"Notification Templates","Notifications":"Notifications","Organization Add":"Organization Add","Organization detail tabs":"Organization detail tabs","Organizations":"Organizations","Organizations List":"Organizations List","Page":"Page","Page <0/> of {pageCount}":function(a){return["Page <0/> of ",a("pageCount")]},"Page Number":"Page Number","Pagination":"Pagination","Password":"Password","Per Page":"Per Page","Please add {0} to populate this list":function(a){return["Please add ",a("0")," to populate this list"]},"Please add {0} {itemName} to populate this list":function(a){return["Please add ",a("0")," ",a("itemName")," to populate this list"]},"Portal Mode":"Portal Mode","Previous":"Previous","Primary Navigation":"Primary Navigation","Projects":"Projects","Remove {0} Access":function(a){return["Remove ",a("0")," Access"]},"Resources":"Resources","Save":"Save","Schedules":"Schedules","Search":"Search","Search text input":"Search text input","Select":"Select","Select Input":"Select Input","Select Users Or Teams":"Select Users Or Teams","Select a row to delete":"Select a row to delete","Select all":"Select all","Select items from list":"Select items from list","Select the Instance Groups for this Organization to run on.":"Select the Instance Groups for this Organization to run on.","Select {header}":function(a){return["Select ",a("header")]},"Selected":"Selected","Settings":"Settings","Sort":"Sort","Successful":"Successful","System":"System","System Settings":"System Settings","Team":"Team","Team Roles":"Team Roles","Teams":"Teams","Templates":"Templates","This field must not be blank":"This field must not be blank","This field must not exceed {max} characters":function(a){return["This field must not exceed ",a("max")," characters"]},"Toggle notification failure":"Toggle notification failure","Toggle notification success":"Toggle notification success","Use Default {label}":function(a){return["Use Default ",a("label")]},"User":"User","User Details":"User Details","User Interface":"User Interface","User Interface Settings":"User Interface Settings","User Roles":"User Roles","Username":"Username","Users":"Users","Views":"Views","Welcome to Ansible {brandName}! Please Sign In.":function(a){return["Welcome to Ansible ",a("brandName"),"! Please Sign In."]},"You do not have permission to delete the following {0}: {itemsUnableToDelete}":function(a){return["You do not have permission to delete the following ",a("0"),": ",a("itemsUnableToDelete")]},"You have been logged out.":"You have been logged out.","add {currentTab}":function(a){return["add ",a("currentTab")]},"adding {currentTab}":function(a){return["adding ",a("currentTab")]},"cancel delete":"cancel delete","confirm delete":"confirm delete","confirm removal of {currentTab}/cancel and go back to {currentTab} view.":function(a){return["confirm removal of ",a("currentTab"),"/cancel and go back to ",a("currentTab")," view."]},"delete {currentTab}":function(a){return["delete ",a("currentTab")]},"deleting {currentTab} association with orgs":function(a){return["deleting ",a("currentTab")," association with orgs"]},"edit view":"edit view","items":"items","of {pageCount}":function(a){return["of ",a("pageCount")]},"pages":"pages","per page":"per page","save/cancel and go back to view":"save/cancel and go back to view","save/cancel and go back to {currentTab} view":function(a){return["save/cancel and go back to ",a("currentTab")," view"]},"select organization {itemId}":function(a){return["select organization ",a("itemId")]},"{0}":function(a){return[a("0")]},"{0} List":function(a){return[a("0")," List"]},"{currentTab} detail view":function(a){return[a("currentTab")," detail view"]},"{itemMin} - {itemMax} of {count}":function(a){return[a("itemMin")," - ",a("itemMax")," of ",a("count")]}}}; \ No newline at end of file diff --git a/awx/ui_next/dist/index.html b/awx/ui_next/dist/index.html deleted file mode 100644 index 67e1316467..0000000000 --- a/awx/ui_next/dist/index.html +++ /dev/null @@ -1,7 +0,0 @@ - - - -
- - - diff --git a/awx/ui_next/images/brand-logo.svg b/awx/ui_next/images/brand-logo.svg deleted file mode 100644 index 6d80915fb6..0000000000 --- a/awx/ui_next/images/brand-logo.svg +++ /dev/null @@ -1,232 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/awx/ui_next/jest.config.js b/awx/ui_next/jest.config.js deleted file mode 100644 index 79216a46c9..0000000000 --- a/awx/ui_next/jest.config.js +++ /dev/null @@ -1,35 +0,0 @@ -module.exports = { - collectCoverageFrom: [ - 'src/**/*.{js,jsx}', - 'testUtils/**/*.{js,jsx}' - ], - coveragePathIgnorePatterns: [ - '/src/locales', - 'index.js' - ], - moduleNameMapper: { - '\\.(css|scss|less)$': '/__mocks__/styleMock.js', - }, - setupFiles: [ - '@nteract/mockument' - ], - setupFilesAfterEnv: ['/jest.setup.js'], - snapshotSerializers: [ - "enzyme-to-json/serializer" - ], - testMatch: [ - '/**/*.test.{js,jsx}' - ], - testEnvironment: 'jsdom', - testURL: 'http://127.0.0.1:3001', - transform: { - '^.+\\.(js|jsx)$': 'babel-jest', - '\\.(jpg|jpeg|png|gif|eot|otf|webp|svg|ttf|woff|woff2|mp4|webm|wav|mp3|m4a|aac|oga)$': '/__mocks__/fileMock.js', - }, - transformIgnorePatterns: [ - '[/\\\\]node_modules[/\\\\].+\\.(?!(axios)/)(js|jsx)$' - ], - watchPathIgnorePatterns: [ - '/node_modules' - ] -}; diff --git a/awx/ui_next/jest.setup.js b/awx/ui_next/jest.setup.js deleted file mode 100644 index 6dd8eff3bc..0000000000 --- a/awx/ui_next/jest.setup.js +++ /dev/null @@ -1,11 +0,0 @@ -require('@babel/polyfill'); - -// eslint-disable-next-line import/prefer-default-export -export const asyncFlush = () => new Promise((resolve) => setImmediate(resolve)); - -const enzyme = require('enzyme'); -const Adapter = require('enzyme-adapter-react-16'); - -jest.setTimeout(5000 * 4); - -enzyme.configure({ adapter: new Adapter() }); diff --git a/awx/ui_next/package-lock.json b/awx/ui_next/package-lock.json index c2d7666071..629add6375 100644 --- a/awx/ui_next/package-lock.json +++ b/awx/ui_next/package-lock.json @@ -1,1028 +1,270 @@ { - "name": "awx-react", - "version": "1.0.0", + "name": "ui_next", + "version": "0.1.0", "lockfileVersion": 1, "requires": true, "dependencies": { "@babel/code-frame": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", - "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", - "dev": true, + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", + "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", "requires": { - "@babel/highlight": "^7.0.0" + "@babel/highlight": "^7.8.3" } }, "@babel/compat-data": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.8.1.tgz", - "integrity": "sha512-Z+6ZOXvyOWYxJ50BwxzdhRnRsGST8Y3jaZgxYig575lTjVSs3KtJnmESwZegg6e2Dn0td1eDhoWlp1wI4BTCPw==", - "dev": true, + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.9.6.tgz", + "integrity": "sha512-5QPTrNen2bm7RBc7dsOmcA5hbrS4O2Vhmk5XOL4zWW/zD/hV0iinpefDlkm+tBBy8kDtFaaeEvmAqt+nURAV2g==", "requires": { - "browserslist": "^4.8.2", + "browserslist": "^4.11.1", "invariant": "^2.2.4", "semver": "^5.5.0" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } } }, "@babel/core": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.8.3.tgz", - "integrity": "sha512-4XFkf8AwyrEG7Ziu3L2L0Cv+WyY47Tcsp70JFmpftbAA1K7YL/sgE9jh9HyNj08Y/U50ItUchpN0w6HxAoX1rA==", - "dev": true, + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.9.0.tgz", + "integrity": "sha512-kWc7L0fw1xwvI0zi8OKVBuxRVefwGOrKSQMvrQ3dW+bIIavBY3/NpXmpjMy7bQnLgwgzWQZ8TlM57YHpHNHz4w==", "requires": { "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.3", - "@babel/helpers": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/traverse": "^7.8.3", - "@babel/types": "^7.8.3", + "@babel/generator": "^7.9.0", + "@babel/helper-module-transforms": "^7.9.0", + "@babel/helpers": "^7.9.0", + "@babel/parser": "^7.9.0", + "@babel/template": "^7.8.6", + "@babel/traverse": "^7.9.0", + "@babel/types": "^7.9.0", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.1", - "json5": "^2.1.0", + "json5": "^2.1.2", "lodash": "^4.17.13", "resolve": "^1.3.2", "semver": "^5.4.1", "source-map": "^0.5.0" }, "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/generator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.3.tgz", - "integrity": "sha512-WjoPk8hRpDRqqzRpvaR8/gDUPkrnOOeuT2m8cNICJtZH6mwaCo3v0OKMI7Y6SM1pBtyijnLtAL0HDi41pf41ug==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3", - "jsesc": "^2.5.1", - "lodash": "^4.17.13", - "source-map": "^0.5.0" - } - }, - "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz", - "integrity": "sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", - "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", - "dev": true, - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.3.tgz", - "integrity": "sha512-/V72F4Yp/qmHaTALizEm9Gf2eQHV3QyTL3K0cNfijwnMnb1L+LDlAubb/ZnSdGAVzVSWakujHYs1I26x66sMeQ==", - "dev": true - }, - "@babel/template": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.3.tgz", - "integrity": "sha512-04m87AcQgAFdvuoyiQ2kgELr2tV8B4fP/xJAVUL3Yb3bkNdMedD3d0rlSQr3PegP0cms3eHjl1F7PWlvWbU8FQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/traverse": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.3.tgz", - "integrity": "sha512-we+a2lti+eEImHmEXp7bM9cTxGzxPmBiVJlLVD+FuuQMeeO7RaDbutbgeheDkw+Xe3mCfJHnGOWLswT74m2IPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.3", - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.13" - } - }, - "@babel/types": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", - "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "convert-source-map": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", - "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.1" - } - }, "debug": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, "requires": { "ms": "^2.1.1" } }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "json5": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.1.tgz", - "integrity": "sha512-l+3HXD0GEI3huGq1njuqtzYK8OYJyXMkOLtQ53pjWh89tvWS2h6l+1zMkYWqlb57+SiQodKZyvMEFb2X+KrFhQ==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" }, "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" } } }, "@babel/generator": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.1.3.tgz", - "integrity": "sha512-ZoCZGcfIJFJuZBqxcY9OjC1KW2lWK64qrX1o4UYL3yshVhwKFYgzpWZ0vvtGMNJdTlvkw0W+HR1VnYN8q3QPFQ==", - "dev": true, + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.9.6.tgz", + "integrity": "sha512-+htwWKJbH2bL72HRluF8zumBxzuX0ZZUFl3JLNyoUjM/Ho8wnVpPXM6aUz8cfKDqQ/h7zHqKt4xzJteUosckqQ==", "requires": { - "@babel/types": "^7.1.3", + "@babel/types": "^7.9.6", "jsesc": "^2.5.1", - "lodash": "^4.17.10", - "source-map": "^0.5.0", - "trim-right": "^1.0.1" + "lodash": "^4.17.13", + "source-map": "^0.5.0" }, "dependencies": { - "jsesc": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.1.tgz", - "integrity": "sha1-5CGiqOINawgZ3yiQj3glJrlt0f4=", - "dev": true - }, "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" } } }, "@babel/helper-annotate-as-pure": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.0.0.tgz", - "integrity": "sha512-3UYcJUj9kvSLbLbUIfQTqzcy5VX7GRZ/CCDrnOaZorFFM01aXp1+GJwuFGV4NDDoAS+mOUyHcO6UD/RfqOks3Q==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.8.3.tgz", + "integrity": "sha512-6o+mJrZBxOoEX77Ezv9zwW7WV8DdluouRKNY/IR5u/YTMuKHgugHOzYWlYvYLpLA9nPsQCAAASpCIbjI9Mv+Uw==", "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "^7.8.3" } }, "@babel/helper-builder-binary-assignment-operator-visitor": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.8.3.tgz", "integrity": "sha512-5eFOm2SyFPK4Rh3XMMRDjN7lBH0orh3ss0g3rTYZnBQ+r6YPj7lgDyCvPphynHvUrobJmeMignBr6Acw9mAPlw==", - "dev": true, "requires": { "@babel/helper-explode-assignable-expression": "^7.8.3", "@babel/types": "^7.8.3" - }, - "dependencies": { - "@babel/types": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", - "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - } } }, "@babel/helper-builder-react-jsx": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.0.0.tgz", - "integrity": "sha512-ebJ2JM6NAKW0fQEqN8hOLxK84RbRz9OkUhGS/Xd5u56ejMfVbayJ4+LykERZCOUM6faa6Fp3SZNX3fcT16MKHw==", - "dev": true, + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.9.0.tgz", + "integrity": "sha512-weiIo4gaoGgnhff54GQ3P5wsUQmnSwpkvU0r6ZHq6TzoSzKy4JxHEgnxNytaKbov2a9z/CVNyzliuCOUPEX3Jw==", "requires": { - "@babel/types": "^7.0.0", - "esutils": "^2.0.0" + "@babel/helper-annotate-as-pure": "^7.8.3", + "@babel/types": "^7.9.0" } }, - "@babel/helper-call-delegate": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.8.3.tgz", - "integrity": "sha512-6Q05px0Eb+N4/GTyKPPvnkig7Lylw+QzihMpws9iiZQv7ZImf84ZsZpQH7QoWN4n4tm81SnSzPgHw2qtO0Zf3A==", - "dev": true, + "@babel/helper-builder-react-jsx-experimental": { + "version": "7.9.5", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-react-jsx-experimental/-/helper-builder-react-jsx-experimental-7.9.5.tgz", + "integrity": "sha512-HAagjAC93tk748jcXpZ7oYRZH485RCq/+yEv9SIWezHRPv9moZArTnkUNciUNzvwHUABmiWKlcxJvMcu59UwTg==", "requires": { - "@babel/helper-hoist-variables": "^7.8.3", - "@babel/traverse": "^7.8.3", - "@babel/types": "^7.8.3" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/generator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.3.tgz", - "integrity": "sha512-WjoPk8hRpDRqqzRpvaR8/gDUPkrnOOeuT2m8cNICJtZH6mwaCo3v0OKMI7Y6SM1pBtyijnLtAL0HDi41pf41ug==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3", - "jsesc": "^2.5.1", - "lodash": "^4.17.13", - "source-map": "^0.5.0" - } - }, - "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz", - "integrity": "sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", - "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", - "dev": true, - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.3.tgz", - "integrity": "sha512-/V72F4Yp/qmHaTALizEm9Gf2eQHV3QyTL3K0cNfijwnMnb1L+LDlAubb/ZnSdGAVzVSWakujHYs1I26x66sMeQ==", - "dev": true - }, - "@babel/template": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.3.tgz", - "integrity": "sha512-04m87AcQgAFdvuoyiQ2kgELr2tV8B4fP/xJAVUL3Yb3bkNdMedD3d0rlSQr3PegP0cms3eHjl1F7PWlvWbU8FQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/traverse": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.3.tgz", - "integrity": "sha512-we+a2lti+eEImHmEXp7bM9cTxGzxPmBiVJlLVD+FuuQMeeO7RaDbutbgeheDkw+Xe3mCfJHnGOWLswT74m2IPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.3", - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.13" - } - }, - "@babel/types": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", - "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "@babel/helper-annotate-as-pure": "^7.8.3", + "@babel/helper-module-imports": "^7.8.3", + "@babel/types": "^7.9.5" } }, "@babel/helper-compilation-targets": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.8.3.tgz", - "integrity": "sha512-JLylPCsFjhLN+6uBSSh3iYdxKdeO9MNmoY96PE/99d8kyBFaXLORtAVhqN6iHa+wtPeqxKLghDOZry0+Aiw9Tw==", - "dev": true, + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.9.6.tgz", + "integrity": "sha512-x2Nvu0igO0ejXzx09B/1fGBxY9NXQlBW2kZsSxCJft+KHN8t9XWzIvFxtPHnBOAXpVsdxZKZFbRUC8TsNKajMw==", "requires": { - "@babel/compat-data": "^7.8.1", - "browserslist": "^4.8.2", + "@babel/compat-data": "^7.9.6", + "browserslist": "^4.11.1", "invariant": "^2.2.4", - "levenary": "^1.1.0", + "levenary": "^1.1.1", "semver": "^5.5.0" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } + } + }, + "@babel/helper-create-class-features-plugin": { + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.9.6.tgz", + "integrity": "sha512-6N9IeuyHvMBRyjNYOMJHrhwtu4WJMrYf8hVbEHD3pbbbmNOk1kmXSQs7bA4dYDUaIx4ZEzdnvo6NwC3WHd/Qow==", + "requires": { + "@babel/helper-function-name": "^7.9.5", + "@babel/helper-member-expression-to-functions": "^7.8.3", + "@babel/helper-optimise-call-expression": "^7.8.3", + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/helper-replace-supers": "^7.9.6", + "@babel/helper-split-export-declaration": "^7.8.3" } }, "@babel/helper-create-regexp-features-plugin": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.8.3.tgz", - "integrity": "sha512-Gcsm1OHCUr9o9TcJln57xhWHtdXbA2pgQ58S0Lxlks0WMGNXuki4+GLfX0p+L2ZkINUGZvfkz8rzoqJQSthI+Q==", - "dev": true, + "version": "7.8.8", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.8.8.tgz", + "integrity": "sha512-LYVPdwkrQEiX9+1R29Ld/wTrmQu1SSKYnuOk3g0CkcZMA1p0gsNxJFj/3gBdaJ7Cg0Fnek5z0DsMULePP7Lrqg==", "requires": { + "@babel/helper-annotate-as-pure": "^7.8.3", "@babel/helper-regex": "^7.8.3", - "regexpu-core": "^4.6.0" + "regexpu-core": "^4.7.0" } }, "@babel/helper-define-map": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.8.3.tgz", "integrity": "sha512-PoeBYtxoZGtct3md6xZOCWPcKuMuk3IHhgxsRRNtnNShebf4C8YonTSblsK4tvDbm+eJAw2HAPOfCr+Q/YRG/g==", - "dev": true, "requires": { "@babel/helper-function-name": "^7.8.3", "@babel/types": "^7.8.3", "lodash": "^4.17.13" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", - "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", - "dev": true, - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.3.tgz", - "integrity": "sha512-/V72F4Yp/qmHaTALizEm9Gf2eQHV3QyTL3K0cNfijwnMnb1L+LDlAubb/ZnSdGAVzVSWakujHYs1I26x66sMeQ==", - "dev": true - }, - "@babel/template": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.3.tgz", - "integrity": "sha512-04m87AcQgAFdvuoyiQ2kgELr2tV8B4fP/xJAVUL3Yb3bkNdMedD3d0rlSQr3PegP0cms3eHjl1F7PWlvWbU8FQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/types": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", - "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } } }, "@babel/helper-explode-assignable-expression": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.8.3.tgz", "integrity": "sha512-N+8eW86/Kj147bO9G2uclsg5pwfs/fqqY5rwgIL7eTBklgXjcOJ3btzS5iM6AitJcftnY7pm2lGsrJVYLGjzIw==", - "dev": true, "requires": { "@babel/traverse": "^7.8.3", "@babel/types": "^7.8.3" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/generator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.3.tgz", - "integrity": "sha512-WjoPk8hRpDRqqzRpvaR8/gDUPkrnOOeuT2m8cNICJtZH6mwaCo3v0OKMI7Y6SM1pBtyijnLtAL0HDi41pf41ug==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3", - "jsesc": "^2.5.1", - "lodash": "^4.17.13", - "source-map": "^0.5.0" - } - }, - "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz", - "integrity": "sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", - "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", - "dev": true, - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.3.tgz", - "integrity": "sha512-/V72F4Yp/qmHaTALizEm9Gf2eQHV3QyTL3K0cNfijwnMnb1L+LDlAubb/ZnSdGAVzVSWakujHYs1I26x66sMeQ==", - "dev": true - }, - "@babel/template": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.3.tgz", - "integrity": "sha512-04m87AcQgAFdvuoyiQ2kgELr2tV8B4fP/xJAVUL3Yb3bkNdMedD3d0rlSQr3PegP0cms3eHjl1F7PWlvWbU8FQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/traverse": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.3.tgz", - "integrity": "sha512-we+a2lti+eEImHmEXp7bM9cTxGzxPmBiVJlLVD+FuuQMeeO7RaDbutbgeheDkw+Xe3mCfJHnGOWLswT74m2IPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.3", - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.13" - } - }, - "@babel/types": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", - "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } } }, "@babel/helper-function-name": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", - "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", - "dev": true, + "version": "7.9.5", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.9.5.tgz", + "integrity": "sha512-JVcQZeXM59Cd1qanDUxv9fgJpt3NeKUaqBqUEvfmQ+BCOKq2xUgaWZW2hr0dkbyJgezYuplEoh5knmrnS68efw==", "requires": { - "@babel/helper-get-function-arity": "^7.0.0", - "@babel/template": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/helper-get-function-arity": "^7.8.3", + "@babel/template": "^7.8.3", + "@babel/types": "^7.9.5" } }, "@babel/helper-get-function-arity": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", - "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", - "dev": true, + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", + "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "^7.8.3" } }, "@babel/helper-hoist-variables": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.8.3.tgz", "integrity": "sha512-ky1JLOjcDUtSc+xkt0xhYff7Z6ILTAHKmZLHPxAhOP0Nd77O+3nCsd6uSVYur6nJnCI029CrNbYlc0LoPfAPQg==", - "dev": true, "requires": { "@babel/types": "^7.8.3" - }, - "dependencies": { - "@babel/types": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", - "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - } } }, "@babel/helper-member-expression-to-functions": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.0.0.tgz", - "integrity": "sha512-avo+lm/QmZlv27Zsi0xEor2fKcqWG56D5ae9dzklpIaY7cQMK5N8VSpaNVPPagiqmy7LrEjK1IWdGMOqPu5csg==", - "dev": true, + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.8.3.tgz", + "integrity": "sha512-fO4Egq88utkQFjbPrSHGmGLFqmrshs11d46WI+WZDESt7Wu7wN2G2Iu+NMMZJFDOVRHAMIkB5SNh30NtwCA7RA==", "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "^7.8.3" } }, "@babel/helper-module-imports": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.0.0.tgz", - "integrity": "sha512-aP/hlLq01DWNEiDg4Jn23i+CXxW/owM4WpDLFUbpjxe4NS3BhLVZQ5i7E0ZrxuQ/vwekIeciyamgB1UIYxxM6A==", + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.8.3.tgz", + "integrity": "sha512-R0Bx3jippsbAEtzkpZ/6FIiuzOURPcMjHp+Z6xPe6DtApDJx+w7UYyOLanZqO8+wKR9G10s/FmHXvxaMd9s6Kg==", "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "^7.8.3" } }, "@babel/helper-module-transforms": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.8.3.tgz", - "integrity": "sha512-C7NG6B7vfBa/pwCOshpMbOYUmrYQDfCpVL/JCRu0ek8B5p8kue1+BCXpg2vOYs7w5ACB9GTOBYQ5U6NwrMg+3Q==", - "dev": true, + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.9.0.tgz", + "integrity": "sha512-0FvKyu0gpPfIQ8EkxlrAydOWROdHpBmiCiRwLkUiBGhCUPRRbVD2/tm3sFr/c/GWFrQ/ffutGUAnx7V0FzT2wA==", "requires": { "@babel/helper-module-imports": "^7.8.3", + "@babel/helper-replace-supers": "^7.8.6", "@babel/helper-simple-access": "^7.8.3", "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3", + "@babel/template": "^7.8.6", + "@babel/types": "^7.9.0", "lodash": "^4.17.13" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/helper-module-imports": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.8.3.tgz", - "integrity": "sha512-R0Bx3jippsbAEtzkpZ/6FIiuzOURPcMjHp+Z6xPe6DtApDJx+w7UYyOLanZqO8+wKR9G10s/FmHXvxaMd9s6Kg==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz", - "integrity": "sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", - "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", - "dev": true, - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.3.tgz", - "integrity": "sha512-/V72F4Yp/qmHaTALizEm9Gf2eQHV3QyTL3K0cNfijwnMnb1L+LDlAubb/ZnSdGAVzVSWakujHYs1I26x66sMeQ==", - "dev": true - }, - "@babel/template": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.3.tgz", - "integrity": "sha512-04m87AcQgAFdvuoyiQ2kgELr2tV8B4fP/xJAVUL3Yb3bkNdMedD3d0rlSQr3PegP0cms3eHjl1F7PWlvWbU8FQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/types": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", - "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } } }, "@babel/helper-optimise-call-expression": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.0.0.tgz", - "integrity": "sha512-u8nd9NQePYNQV8iPWu/pLLYBqZBa4ZaY1YWRFMuxrid94wKI1QNt67NEZ7GAe5Kc/0LLScbim05xZFWkAdrj9g==", - "dev": true, + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.8.3.tgz", + "integrity": "sha512-Kag20n86cbO2AvHca6EJsvqAd82gc6VMGule4HwebwMlwkpXuVqrNRj6CkCV2sKxgi9MyAUnZVnZ6lJ1/vKhHQ==", "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "^7.8.3" } }, "@babel/helper-plugin-utils": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz", - "integrity": "sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA==", - "dev": true + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", + "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==" }, "@babel/helper-regex": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.8.3.tgz", "integrity": "sha512-BWt0QtYv/cg/NecOAZMdcn/waj/5P26DR4mVLXfFtDokSR6fyuG0Pj+e2FqtSME+MqED1khnSMulkmGl8qWiUQ==", - "dev": true, "requires": { "lodash": "^4.17.13" } @@ -1031,1753 +273,468 @@ "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.8.3.tgz", "integrity": "sha512-kgwDmw4fCg7AVgS4DukQR/roGp+jP+XluJE5hsRZwxCYGg+Rv9wSGErDWhlI90FODdYfd4xG4AQRiMDjjN0GzA==", - "dev": true, "requires": { "@babel/helper-annotate-as-pure": "^7.8.3", "@babel/helper-wrap-function": "^7.8.3", "@babel/template": "^7.8.3", "@babel/traverse": "^7.8.3", "@babel/types": "^7.8.3" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/generator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.3.tgz", - "integrity": "sha512-WjoPk8hRpDRqqzRpvaR8/gDUPkrnOOeuT2m8cNICJtZH6mwaCo3v0OKMI7Y6SM1pBtyijnLtAL0HDi41pf41ug==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3", - "jsesc": "^2.5.1", - "lodash": "^4.17.13", - "source-map": "^0.5.0" - } - }, - "@babel/helper-annotate-as-pure": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.8.3.tgz", - "integrity": "sha512-6o+mJrZBxOoEX77Ezv9zwW7WV8DdluouRKNY/IR5u/YTMuKHgugHOzYWlYvYLpLA9nPsQCAAASpCIbjI9Mv+Uw==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz", - "integrity": "sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", - "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", - "dev": true, - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.3.tgz", - "integrity": "sha512-/V72F4Yp/qmHaTALizEm9Gf2eQHV3QyTL3K0cNfijwnMnb1L+LDlAubb/ZnSdGAVzVSWakujHYs1I26x66sMeQ==", - "dev": true - }, - "@babel/template": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.3.tgz", - "integrity": "sha512-04m87AcQgAFdvuoyiQ2kgELr2tV8B4fP/xJAVUL3Yb3bkNdMedD3d0rlSQr3PegP0cms3eHjl1F7PWlvWbU8FQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/traverse": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.3.tgz", - "integrity": "sha512-we+a2lti+eEImHmEXp7bM9cTxGzxPmBiVJlLVD+FuuQMeeO7RaDbutbgeheDkw+Xe3mCfJHnGOWLswT74m2IPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.3", - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.13" - } - }, - "@babel/types": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", - "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } } }, "@babel/helper-replace-supers": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.1.0.tgz", - "integrity": "sha512-BvcDWYZRWVuDeXTYZWxekQNO5D4kO55aArwZOTFXw6rlLQA8ZaDicJR1sO47h+HrnCiDFiww0fSPV0d713KBGQ==", - "dev": true, + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.9.6.tgz", + "integrity": "sha512-qX+chbxkbArLyCImk3bWV+jB5gTNU/rsze+JlcF6Nf8tVTigPJSI1o1oBow/9Resa1yehUO9lIipsmu9oG4RzA==", "requires": { - "@babel/helper-member-expression-to-functions": "^7.0.0", - "@babel/helper-optimise-call-expression": "^7.0.0", - "@babel/traverse": "^7.1.0", - "@babel/types": "^7.0.0" + "@babel/helper-member-expression-to-functions": "^7.8.3", + "@babel/helper-optimise-call-expression": "^7.8.3", + "@babel/traverse": "^7.9.6", + "@babel/types": "^7.9.6" } }, "@babel/helper-simple-access": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.8.3.tgz", "integrity": "sha512-VNGUDjx5cCWg4vvCTR8qQ7YJYZ+HBjxOgXEl7ounz+4Sn7+LMD3CFrCTEU6/qXKbA2nKg21CwhhBzO0RpRbdCw==", - "dev": true, "requires": { "@babel/template": "^7.8.3", "@babel/types": "^7.8.3" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", - "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", - "dev": true, - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.3.tgz", - "integrity": "sha512-/V72F4Yp/qmHaTALizEm9Gf2eQHV3QyTL3K0cNfijwnMnb1L+LDlAubb/ZnSdGAVzVSWakujHYs1I26x66sMeQ==", - "dev": true - }, - "@babel/template": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.3.tgz", - "integrity": "sha512-04m87AcQgAFdvuoyiQ2kgELr2tV8B4fP/xJAVUL3Yb3bkNdMedD3d0rlSQr3PegP0cms3eHjl1F7PWlvWbU8FQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/types": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", - "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } } }, "@babel/helper-split-export-declaration": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz", - "integrity": "sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag==", - "dev": true, + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz", + "integrity": "sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==", "requires": { - "@babel/types": "^7.0.0" + "@babel/types": "^7.8.3" } }, + "@babel/helper-validator-identifier": { + "version": "7.9.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.9.5.tgz", + "integrity": "sha512-/8arLKUFq882w4tWGj9JYzRpAlZgiWUJ+dtteNTDqrRBz9Iguck9Rn3ykuBDoUwh2TO4tSAJlrxDUOXWklJe4g==" + }, "@babel/helper-wrap-function": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.8.3.tgz", "integrity": "sha512-LACJrbUET9cQDzb6kG7EeD7+7doC3JNvUgTEQOx2qaO1fKlzE/Bf05qs9w1oXQMmXlPO65lC3Tq9S6gZpTErEQ==", - "dev": true, "requires": { "@babel/helper-function-name": "^7.8.3", "@babel/template": "^7.8.3", "@babel/traverse": "^7.8.3", "@babel/types": "^7.8.3" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/generator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.3.tgz", - "integrity": "sha512-WjoPk8hRpDRqqzRpvaR8/gDUPkrnOOeuT2m8cNICJtZH6mwaCo3v0OKMI7Y6SM1pBtyijnLtAL0HDi41pf41ug==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3", - "jsesc": "^2.5.1", - "lodash": "^4.17.13", - "source-map": "^0.5.0" - } - }, - "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz", - "integrity": "sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", - "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", - "dev": true, - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.3.tgz", - "integrity": "sha512-/V72F4Yp/qmHaTALizEm9Gf2eQHV3QyTL3K0cNfijwnMnb1L+LDlAubb/ZnSdGAVzVSWakujHYs1I26x66sMeQ==", - "dev": true - }, - "@babel/template": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.3.tgz", - "integrity": "sha512-04m87AcQgAFdvuoyiQ2kgELr2tV8B4fP/xJAVUL3Yb3bkNdMedD3d0rlSQr3PegP0cms3eHjl1F7PWlvWbU8FQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/traverse": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.3.tgz", - "integrity": "sha512-we+a2lti+eEImHmEXp7bM9cTxGzxPmBiVJlLVD+FuuQMeeO7RaDbutbgeheDkw+Xe3mCfJHnGOWLswT74m2IPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.3", - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.13" - } - }, - "@babel/types": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", - "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } } }, "@babel/helpers": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.8.3.tgz", - "integrity": "sha512-LmU3q9Pah/XyZU89QvBgGt+BCsTPoQa+73RxAQh8fb8qkDyIfeQnmgs+hvzhTCKTzqOyk7JTkS3MS1S8Mq5yrQ==", - "dev": true, + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.9.6.tgz", + "integrity": "sha512-tI4bUbldloLcHWoRUMAj4g1bF313M/o6fBKhIsb3QnGVPwRm9JsNf/gqMkQ7zjqReABiffPV6RWj7hEglID5Iw==", "requires": { "@babel/template": "^7.8.3", - "@babel/traverse": "^7.8.3", - "@babel/types": "^7.8.3" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/generator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.3.tgz", - "integrity": "sha512-WjoPk8hRpDRqqzRpvaR8/gDUPkrnOOeuT2m8cNICJtZH6mwaCo3v0OKMI7Y6SM1pBtyijnLtAL0HDi41pf41ug==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3", - "jsesc": "^2.5.1", - "lodash": "^4.17.13", - "source-map": "^0.5.0" - } - }, - "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz", - "integrity": "sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", - "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", - "dev": true, - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.3.tgz", - "integrity": "sha512-/V72F4Yp/qmHaTALizEm9Gf2eQHV3QyTL3K0cNfijwnMnb1L+LDlAubb/ZnSdGAVzVSWakujHYs1I26x66sMeQ==", - "dev": true - }, - "@babel/template": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.3.tgz", - "integrity": "sha512-04m87AcQgAFdvuoyiQ2kgELr2tV8B4fP/xJAVUL3Yb3bkNdMedD3d0rlSQr3PegP0cms3eHjl1F7PWlvWbU8FQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/traverse": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.3.tgz", - "integrity": "sha512-we+a2lti+eEImHmEXp7bM9cTxGzxPmBiVJlLVD+FuuQMeeO7RaDbutbgeheDkw+Xe3mCfJHnGOWLswT74m2IPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.3", - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.13" - } - }, - "@babel/types": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", - "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } + "@babel/traverse": "^7.9.6", + "@babel/types": "^7.9.6" } }, "@babel/highlight": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", - "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", - "dev": true, + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.9.0.tgz", + "integrity": "sha512-lJZPilxX7Op3Nv/2cvFdnlepPXDxi29wxteT57Q965oc5R9v86ztx0jfxVrTcBk8C2kcPkkDa2Z4T3ZsPPVWsQ==", "requires": { + "@babel/helper-validator-identifier": "^7.9.0", "chalk": "^2.0.0", - "esutils": "^2.0.2", "js-tokens": "^4.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", - "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } } }, "@babel/parser": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.1.3.tgz", - "integrity": "sha512-gqmspPZOMW3MIRb9HlrnbZHXI1/KHTOroBwN1NcLL6pWxzqzEKGvRTq0W/PxS45OtQGbaFikSQpkS5zbnsQm2w==", - "dev": true + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.9.6.tgz", + "integrity": "sha512-AoeIEJn8vt+d/6+PXDRPaksYhnlbMIiejioBZvvMQsOjW/JYK6k/0dKnvvP3EhK5GfMBWDPtrxRtegWdAcdq9Q==" }, "@babel/plugin-proposal-async-generator-functions": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.8.3.tgz", "integrity": "sha512-NZ9zLv848JsV3hs8ryEh7Uaz/0KsmPLqv0+PdkDJL1cJy0K4kOCFa8zc1E3mp+RHPQcpdfb/6GovEsW4VDrOMw==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3", "@babel/helper-remap-async-to-generator": "^7.8.3", "@babel/plugin-syntax-async-generators": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-proposal-class-properties": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.1.0.tgz", - "integrity": "sha512-/PCJWN+CKt5v1xcGn4vnuu13QDoV+P7NcICP44BoonAJoPSGwVkgrXihFIQGiEjjPlUDBIw1cM7wYFLARS2/hw==", - "dev": true, + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.8.3.tgz", + "integrity": "sha512-EqFhbo7IosdgPgZggHaNObkmO1kNUe3slaKu54d5OWvy+p9QIKOzK1GAEpAIsZtWVtPXUHSMcT4smvDrCfY4AA==", "requires": { - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-member-expression-to-functions": "^7.0.0", - "@babel/helper-optimise-call-expression": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/helper-replace-supers": "^7.1.0", - "@babel/plugin-syntax-class-properties": "^7.0.0" + "@babel/helper-create-class-features-plugin": "^7.8.3", + "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-proposal-decorators": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.8.3.tgz", + "integrity": "sha512-e3RvdvS4qPJVTe288DlXjwKflpfy1hr0j5dz5WpIYYeP7vQZg2WfAEIp8k5/Lwis/m5REXEteIz6rrcDtXXG7w==", + "requires": { + "@babel/helper-create-class-features-plugin": "^7.8.3", + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/plugin-syntax-decorators": "^7.8.3" } }, "@babel/plugin-proposal-dynamic-import": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.8.3.tgz", "integrity": "sha512-NyaBbyLFXFLT9FP+zk0kYlUlA8XtCUbehs67F0nnEg7KICgMc2mNkIeu9TYhKzyXMkrapZFwAhXLdnt4IYHy1w==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3", "@babel/plugin-syntax-dynamic-import": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-proposal-json-strings": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.8.3.tgz", "integrity": "sha512-KGhQNZ3TVCQG/MjRbAUwuH+14y9q0tpxs1nWWs3pbSleRdDro9SAMMDyye8HhY1gqZ7/NqIc8SKhya0wRDgP1Q==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3", "@babel/plugin-syntax-json-strings": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-proposal-nullish-coalescing-operator": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.8.3.tgz", "integrity": "sha512-TS9MlfzXpXKt6YYomudb/KU7nQI6/xnapG6in1uZxoxDghuSMZsPb6D2fyUwNYSAp4l1iR7QtFOjkqcRYcUsfw==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3", "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } + } + }, + "@babel/plugin-proposal-numeric-separator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.8.3.tgz", + "integrity": "sha512-jWioO1s6R/R+wEHizfaScNsAx+xKgwTLNXSh7tTC4Usj3ItsPEhYkEpU4h+lpnBwq7NBVOJXfO6cRFYcX69JUQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/plugin-syntax-numeric-separator": "^7.8.3" } }, "@babel/plugin-proposal-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-8qvuPwU/xxUCt78HocNlv0mXXo0wdh9VT1R04WU8HGOfaOob26pF+9P5/lYjN/q7DHOX1bvX60hnhOvuQUJdbA==", - "dev": true, + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.9.6.tgz", + "integrity": "sha512-Ga6/fhGqA9Hj+y6whNpPv8psyaK5xzrQwSPsGPloVkvmH+PqW1ixdnfJ9uIO06OjQNYol3PMnfmJ8vfZtkzF+A==", "requires": { "@babel/helper-plugin-utils": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - } + "@babel/plugin-syntax-object-rest-spread": "^7.8.0", + "@babel/plugin-transform-parameters": "^7.9.5" } }, "@babel/plugin-proposal-optional-catch-binding": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.8.3.tgz", "integrity": "sha512-0gkX7J7E+AtAw9fcwlVQj8peP61qhdg/89D5swOkjYbkboA2CVckn3kiyum1DE0wskGb7KJJxBdyEBApDLLVdw==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3", "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-proposal-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.8.3.tgz", - "integrity": "sha512-QIoIR9abkVn+seDE3OjA08jWcs3eZ9+wJCKSRgo3WdEU2csFYgdScb+8qHB3+WXsGJD55u+5hWCISI7ejXS+kg==", - "dev": true, + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.9.0.tgz", + "integrity": "sha512-NDn5tu3tcv4W30jNhmc2hyD5c56G6cXx4TesJubhxrJeCvuuMpttxr0OnNCqbZGhFjLrg+NIhxxC+BK5F6yS3w==", "requires": { "@babel/helper-plugin-utils": "^7.8.3", "@babel/plugin-syntax-optional-chaining": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.8.3.tgz", - "integrity": "sha512-1/1/rEZv2XGweRwwSkLpY+s60za9OZ1hJs4YDqFHCw0kYWYwL5IFljVY1MYBL+weT1l9pokDO2uhSTLVxzoHkQ==", - "dev": true, + "version": "7.8.8", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.8.8.tgz", + "integrity": "sha512-EVhjVsMpbhLw9ZfHWSx2iy13Q8Z/eg8e8ccVWt23sWQK5l1UdkoLJPN5w69UA4uITGBnEZD2JOe4QOHycYKv8A==", "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.8.3", + "@babel/helper-create-regexp-features-plugin": "^7.8.8", "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-syntax-async-generators": { "version": "7.8.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, - "@babel/plugin-syntax-bigint": { + "@babel/plugin-syntax-decorators": { "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", - "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", - "dev": true, + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.8.3.tgz", + "integrity": "sha512-8Hg4dNNT9/LcA1zQlfwuKR8BUc/if7Q7NkTam9sGTcJphLwpf2g4S42uhspQrIrR+dpzE0dtTqBVFoHl8GtnnQ==", "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } - } - }, - "@babel/plugin-syntax-class-properties": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.0.0.tgz", - "integrity": "sha512-cR12g0Qzn4sgkjrbrzWy2GE7m9vMl/sFkqZ3gIpAQdrvPDnLM8180i+ANDFIXfjHo9aqp0ccJlQ0QNZcFUbf9w==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.8.3" } }, "@babel/plugin-syntax-dynamic-import": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } + } + }, + "@babel/plugin-syntax-flow": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-flow/-/plugin-syntax-flow-7.8.3.tgz", + "integrity": "sha512-innAx3bUbA0KSYj2E2MNFSn9hiCeowOFLxlsuhXzw8hMQnzkDomUr9QCD7E9VF60NmnG1sNTuuv6Qf4f8INYsg==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" } }, "@babel/plugin-syntax-json-strings": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-syntax-jsx": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.0.0.tgz", - "integrity": "sha512-PdmL2AoPsCLWxhIr3kG2+F9v4WH06Q3z+NoGVpQgnUNGcagXHq5sB3OXxkSahKq9TLdNMN/AJzFYSOo8UKDMHg==", - "dev": true, + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.8.3.tgz", + "integrity": "sha512-WxdW9xyLgBdefoo0Ynn3MRSkhe5tFVxxKNVdnZSh318WrG2e2jH+E9wd/++JsqcLJZPfz87njQJ8j2Upjm0M0A==", "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.8.3" } }, "@babel/plugin-syntax-nullish-coalescing-operator": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } + } + }, + "@babel/plugin-syntax-numeric-separator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.8.3.tgz", + "integrity": "sha512-H7dCMAdN83PcCmqmkHB5dtp+Xa9a6LKSvA2hiFBC/5alSHxM5VgWZXFqDi0YFe8XNGT6iCa+z4V4zSt/PdZ7Dw==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" } }, "@babel/plugin-syntax-object-rest-spread": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-syntax-optional-catch-binding": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-syntax-optional-chaining": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-syntax-top-level-await": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.8.3.tgz", "integrity": "sha512-kwj1j9lL/6Wd0hROD3b/OZZ7MSrZLqqn9RAZ5+cYYsflQ9HZBIKCUkr3+uL1MEJ1NePiUbf98jjiMQSv0NMR9g==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } + } + }, + "@babel/plugin-syntax-typescript": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.8.3.tgz", + "integrity": "sha512-GO1MQ/SGGGoiEXY0e0bSpHimJvxqB7lktLLIq2pv8xG7WZ8IMEle74jIe1FhprHBWjwjZtXHkycDLZXIWM5Wfg==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" } }, "@babel/plugin-transform-arrow-functions": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.8.3.tgz", "integrity": "sha512-0MRF+KC8EqH4dbuITCWwPSzsyO3HIWWlm30v8BbbpOrS1B++isGxPnnuq/IZvOX5J2D/p7DQalQm+/2PnlKGxg==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-transform-async-to-generator": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.8.3.tgz", "integrity": "sha512-imt9tFLD9ogt56Dd5CI/6XgpukMwd/fLGSrix2httihVe7LOGVPhyhMh1BU5kDM7iHD08i8uUtmV2sWaBFlHVQ==", - "dev": true, "requires": { "@babel/helper-module-imports": "^7.8.3", "@babel/helper-plugin-utils": "^7.8.3", "@babel/helper-remap-async-to-generator": "^7.8.3" - }, - "dependencies": { - "@babel/helper-module-imports": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.8.3.tgz", - "integrity": "sha512-R0Bx3jippsbAEtzkpZ/6FIiuzOURPcMjHp+Z6xPe6DtApDJx+w7UYyOLanZqO8+wKR9G10s/FmHXvxaMd9s6Kg==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - }, - "@babel/types": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", - "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - } } }, "@babel/plugin-transform-block-scoped-functions": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.8.3.tgz", "integrity": "sha512-vo4F2OewqjbB1+yaJ7k2EJFHlTP3jR634Z9Cj9itpqNjuLXvhlVxgnjsHsdRgASR8xYDrx6onw4vW5H6We0Jmg==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-transform-block-scoping": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.8.3.tgz", "integrity": "sha512-pGnYfm7RNRgYRi7bids5bHluENHqJhrV4bCZRwc5GamaWIIs07N4rZECcmJL6ZClwjDz1GbdMZFtPs27hTB06w==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3", "lodash": "^4.17.13" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-transform-classes": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.8.3.tgz", - "integrity": "sha512-SjT0cwFJ+7Rbr1vQsvphAHwUHvSUPmMjMU/0P59G8U2HLFqSa082JO7zkbDNWs9kH/IUqpHI6xWNesGf8haF1w==", - "dev": true, + "version": "7.9.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.9.5.tgz", + "integrity": "sha512-x2kZoIuLC//O5iA7PEvecB105o7TLzZo8ofBVhP79N+DO3jaX+KYfww9TQcfBEZD0nikNyYcGB1IKtRq36rdmg==", "requires": { "@babel/helper-annotate-as-pure": "^7.8.3", "@babel/helper-define-map": "^7.8.3", - "@babel/helper-function-name": "^7.8.3", + "@babel/helper-function-name": "^7.9.5", "@babel/helper-optimise-call-expression": "^7.8.3", "@babel/helper-plugin-utils": "^7.8.3", - "@babel/helper-replace-supers": "^7.8.3", + "@babel/helper-replace-supers": "^7.8.6", "@babel/helper-split-export-declaration": "^7.8.3", "globals": "^11.1.0" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/generator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.3.tgz", - "integrity": "sha512-WjoPk8hRpDRqqzRpvaR8/gDUPkrnOOeuT2m8cNICJtZH6mwaCo3v0OKMI7Y6SM1pBtyijnLtAL0HDi41pf41ug==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3", - "jsesc": "^2.5.1", - "lodash": "^4.17.13", - "source-map": "^0.5.0" - } - }, - "@babel/helper-annotate-as-pure": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.8.3.tgz", - "integrity": "sha512-6o+mJrZBxOoEX77Ezv9zwW7WV8DdluouRKNY/IR5u/YTMuKHgugHOzYWlYvYLpLA9nPsQCAAASpCIbjI9Mv+Uw==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.8.3.tgz", - "integrity": "sha512-fO4Egq88utkQFjbPrSHGmGLFqmrshs11d46WI+WZDESt7Wu7wN2G2Iu+NMMZJFDOVRHAMIkB5SNh30NtwCA7RA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.8.3.tgz", - "integrity": "sha512-Kag20n86cbO2AvHca6EJsvqAd82gc6VMGule4HwebwMlwkpXuVqrNRj6CkCV2sKxgi9MyAUnZVnZ6lJ1/vKhHQ==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - }, - "@babel/helper-replace-supers": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.8.3.tgz", - "integrity": "sha512-xOUssL6ho41U81etpLoT2RTdvdus4VfHamCuAm4AHxGr+0it5fnwoVdwUJ7GFEqCsQYzJUhcbsN9wB9apcYKFA==", - "dev": true, - "requires": { - "@babel/helper-member-expression-to-functions": "^7.8.3", - "@babel/helper-optimise-call-expression": "^7.8.3", - "@babel/traverse": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz", - "integrity": "sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", - "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", - "dev": true, - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.3.tgz", - "integrity": "sha512-/V72F4Yp/qmHaTALizEm9Gf2eQHV3QyTL3K0cNfijwnMnb1L+LDlAubb/ZnSdGAVzVSWakujHYs1I26x66sMeQ==", - "dev": true - }, - "@babel/template": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.3.tgz", - "integrity": "sha512-04m87AcQgAFdvuoyiQ2kgELr2tV8B4fP/xJAVUL3Yb3bkNdMedD3d0rlSQr3PegP0cms3eHjl1F7PWlvWbU8FQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/traverse": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.3.tgz", - "integrity": "sha512-we+a2lti+eEImHmEXp7bM9cTxGzxPmBiVJlLVD+FuuQMeeO7RaDbutbgeheDkw+Xe3mCfJHnGOWLswT74m2IPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.3", - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.13" - } - }, - "@babel/types": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", - "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } } }, "@babel/plugin-transform-computed-properties": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.8.3.tgz", "integrity": "sha512-O5hiIpSyOGdrQZRQ2ccwtTVkgUDBBiCuK//4RJ6UfePllUTCENOzKxfh6ulckXKc0DixTFLCfb2HVkNA7aDpzA==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-transform-destructuring": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.8.3.tgz", - "integrity": "sha512-H4X646nCkiEcHZUZaRkhE2XVsoz0J/1x3VVujnn96pSoGCtKPA99ZZA+va+gK+92Zycd6OBKCD8tDb/731bhgQ==", - "dev": true, + "version": "7.9.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.9.5.tgz", + "integrity": "sha512-j3OEsGel8nHL/iusv/mRd5fYZ3DrOxWC82x0ogmdN/vHfAP4MYw+AFKYanzWlktNwikKvlzUV//afBW5FTp17Q==", "requires": { "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-transform-dotall-regex": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.8.3.tgz", "integrity": "sha512-kLs1j9Nn4MQoBYdRXH6AeaXMbEJFaFu/v1nQkvib6QzTj8MZI5OQzqmD83/2jEM1z0DLilra5aWO5YpyC0ALIw==", - "dev": true, "requires": { "@babel/helper-create-regexp-features-plugin": "^7.8.3", "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-transform-duplicate-keys": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.8.3.tgz", "integrity": "sha512-s8dHiBUbcbSgipS4SMFuWGqCvyge5V2ZeAWzR6INTVC3Ltjig/Vw1G2Gztv0vU/hRG9X8IvKvYdoksnUfgXOEQ==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-transform-exponentiation-operator": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.8.3.tgz", "integrity": "sha512-zwIpuIymb3ACcInbksHaNcR12S++0MDLKkiqXHl3AzpgdKlFNhog+z/K0+TGW+b0w5pgTq4H6IwV/WhxbGYSjQ==", - "dev": true, "requires": { "@babel/helper-builder-binary-assignment-operator-visitor": "^7.8.3", "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } + } + }, + "@babel/plugin-transform-flow-strip-types": { + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-flow-strip-types/-/plugin-transform-flow-strip-types-7.9.0.tgz", + "integrity": "sha512-7Qfg0lKQhEHs93FChxVLAvhBshOPQDtJUTVHr/ZwQNRccCm4O9D79r9tVSoV8iNwjP1YgfD+e/fgHcPkN1qEQg==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/plugin-syntax-flow": "^7.8.3" } }, "@babel/plugin-transform-for-of": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.8.3.tgz", - "integrity": "sha512-ZjXznLNTxhpf4Q5q3x1NsngzGA38t9naWH8Gt+0qYZEJAcvPI9waSStSh56u19Ofjr7QmD0wUsQ8hw8s/p1VnA==", - "dev": true, + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.9.0.tgz", + "integrity": "sha512-lTAnWOpMwOXpyDx06N+ywmF3jNbafZEqZ96CGYabxHrxNX8l5ny7dt4bK/rGwAh9utyP2b2Hv7PlZh1AAS54FQ==", "requires": { "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-transform-function-name": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.8.3.tgz", "integrity": "sha512-rO/OnDS78Eifbjn5Py9v8y0aR+aSYhDhqAwVfsTl0ERuMZyr05L1aFSCJnbv2mmsLkit/4ReeQ9N2BgLnOcPCQ==", - "dev": true, "requires": { "@babel/helper-function-name": "^7.8.3", "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - }, - "@babel/highlight": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", - "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", - "dev": true, - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.3.tgz", - "integrity": "sha512-/V72F4Yp/qmHaTALizEm9Gf2eQHV3QyTL3K0cNfijwnMnb1L+LDlAubb/ZnSdGAVzVSWakujHYs1I26x66sMeQ==", - "dev": true - }, - "@babel/template": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.3.tgz", - "integrity": "sha512-04m87AcQgAFdvuoyiQ2kgELr2tV8B4fP/xJAVUL3Yb3bkNdMedD3d0rlSQr3PegP0cms3eHjl1F7PWlvWbU8FQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/types": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", - "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } } }, "@babel/plugin-transform-literals": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.8.3.tgz", "integrity": "sha512-3Tqf8JJ/qB7TeldGl+TT55+uQei9JfYaregDcEAyBZ7akutriFrt6C/wLYIer6OYhleVQvH/ntEhjE/xMmy10A==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-transform-member-expression-literals": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.8.3.tgz", "integrity": "sha512-3Wk2EXhnw+rP+IDkK6BdtPKsUE5IeZ6QOGrPYvw52NwBStw9V1ZVzxgK6fSKSxqUvH9eQPR3tm3cOq79HlsKYA==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-transform-modules-amd": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.8.3.tgz", - "integrity": "sha512-MadJiU3rLKclzT5kBH4yxdry96odTUwuqrZM+GllFI/VhxfPz+k9MshJM+MwhfkCdxxclSbSBbUGciBngR+kEQ==", - "dev": true, + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.9.6.tgz", + "integrity": "sha512-zoT0kgC3EixAyIAU+9vfaUVKTv9IxBDSabgHoUCBP6FqEJ+iNiN7ip7NBKcYqbfUDfuC2mFCbM7vbu4qJgOnDw==", "requires": { - "@babel/helper-module-transforms": "^7.8.3", + "@babel/helper-module-transforms": "^7.9.0", "@babel/helper-plugin-utils": "^7.8.3", - "babel-plugin-dynamic-import-node": "^2.3.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } + "babel-plugin-dynamic-import-node": "^2.3.3" } }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.8.3.tgz", - "integrity": "sha512-JpdMEfA15HZ/1gNuB9XEDlZM1h/gF/YOH7zaZzQu2xCFRfwc01NXBMHHSTT6hRjlXJJs5x/bfODM3LiCk94Sxg==", - "dev": true, + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.9.6.tgz", + "integrity": "sha512-7H25fSlLcn+iYimmsNe3uK1at79IE6SKW9q0/QeEHTMC9MdOZ+4bA+T1VFB5fgOqBWoqlifXRzYD0JPdmIrgSQ==", "requires": { - "@babel/helper-module-transforms": "^7.8.3", + "@babel/helper-module-transforms": "^7.9.0", "@babel/helper-plugin-utils": "^7.8.3", "@babel/helper-simple-access": "^7.8.3", - "babel-plugin-dynamic-import-node": "^2.3.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } + "babel-plugin-dynamic-import-node": "^2.3.3" } }, "@babel/plugin-transform-modules-systemjs": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.8.3.tgz", - "integrity": "sha512-8cESMCJjmArMYqa9AO5YuMEkE4ds28tMpZcGZB/jl3n0ZzlsxOAi3mC+SKypTfT8gjMupCnd3YiXCkMjj2jfOg==", - "dev": true, + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.9.6.tgz", + "integrity": "sha512-NW5XQuW3N2tTHim8e1b7qGy7s0kZ2OH3m5octc49K1SdAKGxYxeIx7hiIz05kS1R2R+hOWcsr1eYwcGhrdHsrg==", "requires": { "@babel/helper-hoist-variables": "^7.8.3", - "@babel/helper-module-transforms": "^7.8.3", + "@babel/helper-module-transforms": "^7.9.0", "@babel/helper-plugin-utils": "^7.8.3", - "babel-plugin-dynamic-import-node": "^2.3.0" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } + "babel-plugin-dynamic-import-node": "^2.3.3" } }, "@babel/plugin-transform-modules-umd": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.8.3.tgz", - "integrity": "sha512-evhTyWhbwbI3/U6dZAnx/ePoV7H6OUG+OjiJFHmhr9FPn0VShjwC2kdxqIuQ/+1P50TMrneGzMeyMTFOjKSnAw==", - "dev": true, + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.9.0.tgz", + "integrity": "sha512-uTWkXkIVtg/JGRSIABdBoMsoIeoHQHPTL0Y2E7xf5Oj7sLqwVsNXOkNk0VJc7vF0IMBsPeikHxFjGe+qmwPtTQ==", "requires": { - "@babel/helper-module-transforms": "^7.8.3", + "@babel/helper-module-transforms": "^7.9.0", "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-transform-named-capturing-groups-regex": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.8.3.tgz", "integrity": "sha512-f+tF/8UVPU86TrCb06JoPWIdDpTNSGGcAtaD9mLP0aYGA0OS0j7j7DHJR0GTFrUZPUU6loZhbsVZgTh0N+Qdnw==", - "dev": true, "requires": { "@babel/helper-create-regexp-features-plugin": "^7.8.3" } @@ -2786,360 +743,122 @@ "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.8.3.tgz", "integrity": "sha512-QuSGysibQpyxexRyui2vca+Cmbljo8bcRckgzYV4kRIsHpVeyeC3JDO63pY+xFZ6bWOBn7pfKZTqV4o/ix9sFw==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-transform-object-super": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.8.3.tgz", "integrity": "sha512-57FXk+gItG/GejofIyLIgBKTas4+pEU47IXKDBWFTxdPd7F80H8zybyAY7UoblVfBhBGs2EKM+bJUu2+iUYPDQ==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3", "@babel/helper-replace-supers": "^7.8.3" - }, - "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/generator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.3.tgz", - "integrity": "sha512-WjoPk8hRpDRqqzRpvaR8/gDUPkrnOOeuT2m8cNICJtZH6mwaCo3v0OKMI7Y6SM1pBtyijnLtAL0HDi41pf41ug==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3", - "jsesc": "^2.5.1", - "lodash": "^4.17.13", - "source-map": "^0.5.0" - } - }, - "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-member-expression-to-functions": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.8.3.tgz", - "integrity": "sha512-fO4Egq88utkQFjbPrSHGmGLFqmrshs11d46WI+WZDESt7Wu7wN2G2Iu+NMMZJFDOVRHAMIkB5SNh30NtwCA7RA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-optimise-call-expression": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.8.3.tgz", - "integrity": "sha512-Kag20n86cbO2AvHca6EJsvqAd82gc6VMGule4HwebwMlwkpXuVqrNRj6CkCV2sKxgi9MyAUnZVnZ6lJ1/vKhHQ==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - }, - "@babel/helper-replace-supers": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.8.3.tgz", - "integrity": "sha512-xOUssL6ho41U81etpLoT2RTdvdus4VfHamCuAm4AHxGr+0it5fnwoVdwUJ7GFEqCsQYzJUhcbsN9wB9apcYKFA==", - "dev": true, - "requires": { - "@babel/helper-member-expression-to-functions": "^7.8.3", - "@babel/helper-optimise-call-expression": "^7.8.3", - "@babel/traverse": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz", - "integrity": "sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", - "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", - "dev": true, - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.3.tgz", - "integrity": "sha512-/V72F4Yp/qmHaTALizEm9Gf2eQHV3QyTL3K0cNfijwnMnb1L+LDlAubb/ZnSdGAVzVSWakujHYs1I26x66sMeQ==", - "dev": true - }, - "@babel/template": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.3.tgz", - "integrity": "sha512-04m87AcQgAFdvuoyiQ2kgELr2tV8B4fP/xJAVUL3Yb3bkNdMedD3d0rlSQr3PegP0cms3eHjl1F7PWlvWbU8FQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/traverse": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.3.tgz", - "integrity": "sha512-we+a2lti+eEImHmEXp7bM9cTxGzxPmBiVJlLVD+FuuQMeeO7RaDbutbgeheDkw+Xe3mCfJHnGOWLswT74m2IPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.3", - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.8.3", - "@babel/types": "^7.8.3", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.13" - } - }, - "@babel/types": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", - "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } } }, "@babel/plugin-transform-parameters": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.8.3.tgz", - "integrity": "sha512-/pqngtGb54JwMBZ6S/D3XYylQDFtGjWrnoCF4gXZOUpFV/ujbxnoNGNvDGu6doFWRPBveE72qTx/RRU44j5I/Q==", - "dev": true, + "version": "7.9.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.9.5.tgz", + "integrity": "sha512-0+1FhHnMfj6lIIhVvS4KGQJeuhe1GI//h5uptK4PvLt+BGBxsoUJbd3/IW002yk//6sZPlFgsG1hY6OHLcy6kA==", "requires": { - "@babel/helper-call-delegate": "^7.8.3", "@babel/helper-get-function-arity": "^7.8.3", "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - }, - "@babel/types": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", - "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - } } }, "@babel/plugin-transform-property-literals": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.8.3.tgz", "integrity": "sha512-uGiiXAZMqEoQhRWMK17VospMZh5sXWg+dlh2soffpkAl96KAm+WZuJfa6lcELotSRmooLqg0MWdH6UUq85nmmg==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } + } + }, + "@babel/plugin-transform-react-constant-elements": { + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-constant-elements/-/plugin-transform-react-constant-elements-7.9.0.tgz", + "integrity": "sha512-wXMXsToAUOxJuBBEHajqKLFWcCkOSLshTI2ChCFFj1zDd7od4IOxiwLCOObNUvOpkxLpjIuaIdBMmNt6ocCPAw==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.3" } }, "@babel/plugin-transform-react-display-name": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.0.0.tgz", - "integrity": "sha512-BX8xKuQTO0HzINxT6j/GiCwoJB0AOMs0HmLbEnAvcte8U8rSkNa/eSCAY+l1OA4JnCVq2jw2p6U8QQryy2fTPg==", - "dev": true, + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-display-name/-/plugin-transform-react-display-name-7.8.3.tgz", + "integrity": "sha512-3Jy/PCw8Fe6uBKtEgz3M82ljt+lTg+xJaM4og+eyu83qLT87ZUSckn0wy7r31jflURWLO83TW6Ylf7lyXj3m5A==", "requires": { - "@babel/helper-plugin-utils": "^7.0.0" + "@babel/helper-plugin-utils": "^7.8.3" } }, "@babel/plugin-transform-react-jsx": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.0.0.tgz", - "integrity": "sha512-0TMP21hXsSUjIQJmu/r7RiVxeFrXRcMUigbKu0BLegJK9PkYodHstaszcig7zxXfaBji2LYUdtqIkHs+hgYkJQ==", - "dev": true, + "version": "7.9.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.9.4.tgz", + "integrity": "sha512-Mjqf3pZBNLt854CK0C/kRuXAnE6H/bo7xYojP+WGtX8glDGSibcwnsWwhwoSuRg0+EBnxPC1ouVnuetUIlPSAw==", "requires": { - "@babel/helper-builder-react-jsx": "^7.0.0", - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-jsx": "^7.0.0" + "@babel/helper-builder-react-jsx": "^7.9.0", + "@babel/helper-builder-react-jsx-experimental": "^7.9.0", + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/plugin-syntax-jsx": "^7.8.3" + } + }, + "@babel/plugin-transform-react-jsx-development": { + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-development/-/plugin-transform-react-jsx-development-7.9.0.tgz", + "integrity": "sha512-tK8hWKrQncVvrhvtOiPpKrQjfNX3DtkNLSX4ObuGcpS9p0QrGetKmlySIGR07y48Zft8WVgPakqd/bk46JrMSw==", + "requires": { + "@babel/helper-builder-react-jsx-experimental": "^7.9.0", + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/plugin-syntax-jsx": "^7.8.3" } }, "@babel/plugin-transform-react-jsx-self": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.0.0.tgz", - "integrity": "sha512-pymy+AK12WO4safW1HmBpwagUQRl9cevNX+82AIAtU1pIdugqcH+nuYP03Ja6B+N4gliAaKWAegIBL/ymALPHA==", - "dev": true, + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.9.0.tgz", + "integrity": "sha512-K2ObbWPKT7KUTAoyjCsFilOkEgMvFG+y0FqOl6Lezd0/13kMkkjHskVsZvblRPj1PHA44PrToaZANrryppzTvQ==", "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-jsx": "^7.0.0" + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/plugin-syntax-jsx": "^7.8.3" } }, "@babel/plugin-transform-react-jsx-source": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.0.0.tgz", - "integrity": "sha512-OSeEpFJEH5dw/TtxTg4nijl4nHBbhqbKL94Xo/Y17WKIf2qJWeIk/QeXACF19lG1vMezkxqruwnTjVizaW7u7w==", - "dev": true, + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-source/-/plugin-transform-react-jsx-source-7.9.0.tgz", + "integrity": "sha512-K6m3LlSnTSfRkM6FcRk8saNEeaeyG5k7AVkBU2bZK3+1zdkSED3qNdsWrUgQBeTVD2Tp3VMmerxVO2yM5iITmw==", "requires": { - "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-syntax-jsx": "^7.0.0" + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/plugin-syntax-jsx": "^7.8.3" } }, "@babel/plugin-transform-regenerator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.8.3.tgz", - "integrity": "sha512-qt/kcur/FxrQrzFR432FGZznkVAjiyFtCOANjkAKwCbt465L6ZCiUQh2oMYGU3Wo8LRFJxNDFwWn106S5wVUNA==", - "dev": true, + "version": "7.8.7", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.8.7.tgz", + "integrity": "sha512-TIg+gAl4Z0a3WmD3mbYSk+J9ZUH6n/Yc57rtKRnlA/7rcCvpekHXe0CMZHP1gYp7/KLe9GHTuIba0vXmls6drA==", "requires": { - "regenerator-transform": "^0.14.0" + "regenerator-transform": "^0.14.2" } }, "@babel/plugin-transform-reserved-words": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.8.3.tgz", "integrity": "sha512-mwMxcycN3omKFDjDQUl+8zyMsBfjRFr0Zn/64I41pmjv4NJuqcYlEtezwYtw9TFd9WR1vN5kiM+O0gMZzO6L0A==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/plugin-transform-runtime": { + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.9.0.tgz", + "integrity": "sha512-pUu9VSf3kI1OqbWINQ7MaugnitRss1z533436waNXp+0N3ur3zfut37sXiQMxkuCF4VUjwZucen/quskCh7NHw==", + "requires": { + "@babel/helper-module-imports": "^7.8.3", + "@babel/helper-plugin-utils": "^7.8.3", + "resolve": "^1.8.1", + "semver": "^5.5.1" }, "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" } } }, @@ -3147,159 +866,104 @@ "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.8.3.tgz", "integrity": "sha512-I9DI6Odg0JJwxCHzbzW08ggMdCezoWcuQRz3ptdudgwaHxTjxw5HgdFJmZIkIMlRymL6YiZcped4TTCB0JcC8w==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-transform-spread": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.8.3.tgz", "integrity": "sha512-CkuTU9mbmAoFOI1tklFWYYbzX5qCIZVXPVy0jpXgGwkplCndQAa58s2jr66fTeQnA64bDox0HL4U56CFYoyC7g==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-transform-sticky-regex": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.8.3.tgz", "integrity": "sha512-9Spq0vGCD5Bb4Z/ZXXSK5wbbLFMG085qd2vhL1JYu1WcQ5bXqZBAYRzU1d+p79GcHs2szYv5pVQCX13QgldaWw==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.8.3", "@babel/helper-regex": "^7.8.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } } }, "@babel/plugin-transform-template-literals": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.8.3.tgz", "integrity": "sha512-820QBtykIQOLFT8NZOcTRJ1UNuztIELe4p9DCgvj4NK+PwluSJ49we7s9FB1HIGNIYT7wFUJ0ar2QpCDj0escQ==", - "dev": true, "requires": { "@babel/helper-annotate-as-pure": "^7.8.3", "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-annotate-as-pure": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.8.3.tgz", - "integrity": "sha512-6o+mJrZBxOoEX77Ezv9zwW7WV8DdluouRKNY/IR5u/YTMuKHgugHOzYWlYvYLpLA9nPsQCAAASpCIbjI9Mv+Uw==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - }, - "@babel/types": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", - "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - } } }, "@babel/plugin-transform-typeof-symbol": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.8.3.tgz", - "integrity": "sha512-3TrkKd4LPqm4jHs6nPtSDI/SV9Cm5PRJkHLUgTcqRQQTMAZ44ZaAdDZJtvWFSaRcvT0a1rTmJ5ZA5tDKjleF3g==", - "dev": true, + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.8.4.tgz", + "integrity": "sha512-2QKyfjGdvuNfHsb7qnBBlKclbD4CfshH2KvDabiijLMGXPHJXGxtDzwIF7bQP+T0ysw8fYTtxPafgfs/c1Lrqg==", "requires": { "@babel/helper-plugin-utils": "^7.8.3" - }, - "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - } + } + }, + "@babel/plugin-transform-typescript": { + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typescript/-/plugin-transform-typescript-7.9.6.tgz", + "integrity": "sha512-8OvsRdvpt3Iesf2qsAn+YdlwAJD7zJ+vhFZmDCa4b8dTp7MmHtKk5FF2mCsGxjZwuwsy/yIIay/nLmxST1ctVQ==", + "requires": { + "@babel/helper-create-class-features-plugin": "^7.9.6", + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/plugin-syntax-typescript": "^7.8.3" } }, "@babel/plugin-transform-unicode-regex": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.8.3.tgz", "integrity": "sha512-+ufgJjYdmWfSQ+6NS9VGUR2ns8cjJjYbrbi11mZBTaWm+Fui/ncTLFF28Ei1okavY+xkojGr1eJxNsWYeA5aZw==", - "dev": true, "requires": { "@babel/helper-create-regexp-features-plugin": "^7.8.3", "@babel/helper-plugin-utils": "^7.8.3" + } + }, + "@babel/polyfill": { + "version": "7.8.7", + "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.8.7.tgz", + "integrity": "sha512-LeSfP9bNZH2UOZgcGcZ0PIHUt1ZuHub1L3CVmEyqLxCeDLm4C5Gi8jRH8ZX2PNpDhQCo0z6y/+DIs2JlliXW8w==", + "dev": true, + "requires": { + "core-js": "^2.6.5", + "regenerator-runtime": "^0.13.4" }, "dependencies": { - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", + "regenerator-runtime": { + "version": "0.13.5", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz", + "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==", "dev": true } } }, - "@babel/polyfill": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/polyfill/-/polyfill-7.0.0.tgz", - "integrity": "sha512-dnrMRkyyr74CRelJwvgnnSUDh2ge2NCTyHVwpOdvRMHtJUyxLtMAfhBN3s64pY41zdw0kgiLPh6S20eb1NcX6Q==", - "dev": true, - "requires": { - "core-js": "^2.5.7", - "regenerator-runtime": "^0.11.1" - } - }, "@babel/preset-env": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.8.3.tgz", - "integrity": "sha512-Rs4RPL2KjSLSE2mWAx5/iCH+GC1ikKdxPrhnRS6PfFVaiZeom22VFKN4X8ZthyN61kAaR05tfXTbCvatl9WIQg==", - "dev": true, + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.9.6.tgz", + "integrity": "sha512-0gQJ9RTzO0heXOhzftog+a/WyOuqMrAIugVYxMYf83gh1CQaQDjMtsOpqOwXyDL/5JcWsrCm8l4ju8QC97O7EQ==", "requires": { - "@babel/compat-data": "^7.8.0", - "@babel/helper-compilation-targets": "^7.8.3", + "@babel/compat-data": "^7.9.6", + "@babel/helper-compilation-targets": "^7.9.6", "@babel/helper-module-imports": "^7.8.3", "@babel/helper-plugin-utils": "^7.8.3", "@babel/plugin-proposal-async-generator-functions": "^7.8.3", "@babel/plugin-proposal-dynamic-import": "^7.8.3", "@babel/plugin-proposal-json-strings": "^7.8.3", "@babel/plugin-proposal-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-proposal-object-rest-spread": "^7.8.3", + "@babel/plugin-proposal-numeric-separator": "^7.8.3", + "@babel/plugin-proposal-object-rest-spread": "^7.9.6", "@babel/plugin-proposal-optional-catch-binding": "^7.8.3", - "@babel/plugin-proposal-optional-chaining": "^7.8.3", + "@babel/plugin-proposal-optional-chaining": "^7.9.0", "@babel/plugin-proposal-unicode-property-regex": "^7.8.3", "@babel/plugin-syntax-async-generators": "^7.8.0", "@babel/plugin-syntax-dynamic-import": "^7.8.0", "@babel/plugin-syntax-json-strings": "^7.8.0", "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0", + "@babel/plugin-syntax-numeric-separator": "^7.8.0", "@babel/plugin-syntax-object-rest-spread": "^7.8.0", "@babel/plugin-syntax-optional-catch-binding": "^7.8.0", "@babel/plugin-syntax-optional-chaining": "^7.8.0", @@ -3308,191 +972,184 @@ "@babel/plugin-transform-async-to-generator": "^7.8.3", "@babel/plugin-transform-block-scoped-functions": "^7.8.3", "@babel/plugin-transform-block-scoping": "^7.8.3", - "@babel/plugin-transform-classes": "^7.8.3", + "@babel/plugin-transform-classes": "^7.9.5", "@babel/plugin-transform-computed-properties": "^7.8.3", - "@babel/plugin-transform-destructuring": "^7.8.3", + "@babel/plugin-transform-destructuring": "^7.9.5", "@babel/plugin-transform-dotall-regex": "^7.8.3", "@babel/plugin-transform-duplicate-keys": "^7.8.3", "@babel/plugin-transform-exponentiation-operator": "^7.8.3", - "@babel/plugin-transform-for-of": "^7.8.3", + "@babel/plugin-transform-for-of": "^7.9.0", "@babel/plugin-transform-function-name": "^7.8.3", "@babel/plugin-transform-literals": "^7.8.3", "@babel/plugin-transform-member-expression-literals": "^7.8.3", - "@babel/plugin-transform-modules-amd": "^7.8.3", - "@babel/plugin-transform-modules-commonjs": "^7.8.3", - "@babel/plugin-transform-modules-systemjs": "^7.8.3", - "@babel/plugin-transform-modules-umd": "^7.8.3", + "@babel/plugin-transform-modules-amd": "^7.9.6", + "@babel/plugin-transform-modules-commonjs": "^7.9.6", + "@babel/plugin-transform-modules-systemjs": "^7.9.6", + "@babel/plugin-transform-modules-umd": "^7.9.0", "@babel/plugin-transform-named-capturing-groups-regex": "^7.8.3", "@babel/plugin-transform-new-target": "^7.8.3", "@babel/plugin-transform-object-super": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.9.5", "@babel/plugin-transform-property-literals": "^7.8.3", - "@babel/plugin-transform-regenerator": "^7.8.3", + "@babel/plugin-transform-regenerator": "^7.8.7", "@babel/plugin-transform-reserved-words": "^7.8.3", "@babel/plugin-transform-shorthand-properties": "^7.8.3", "@babel/plugin-transform-spread": "^7.8.3", "@babel/plugin-transform-sticky-regex": "^7.8.3", "@babel/plugin-transform-template-literals": "^7.8.3", - "@babel/plugin-transform-typeof-symbol": "^7.8.3", + "@babel/plugin-transform-typeof-symbol": "^7.8.4", "@babel/plugin-transform-unicode-regex": "^7.8.3", - "@babel/types": "^7.8.3", - "browserslist": "^4.8.2", + "@babel/preset-modules": "^0.1.3", + "@babel/types": "^7.9.6", + "browserslist": "^4.11.1", "core-js-compat": "^3.6.2", "invariant": "^2.2.2", - "levenary": "^1.1.0", + "levenary": "^1.1.1", "semver": "^5.5.0" }, "dependencies": { - "@babel/helper-module-imports": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.8.3.tgz", - "integrity": "sha512-R0Bx3jippsbAEtzkpZ/6FIiuzOURPcMjHp+Z6xPe6DtApDJx+w7UYyOLanZqO8+wKR9G10s/FmHXvxaMd9s6Kg==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-plugin-utils": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.8.3.tgz", - "integrity": "sha512-j+fq49Xds2smCUNYmEHF9kGNkhbet6yVIBp4e6oeQpH1RUs/Ir06xUKzDjDkGcaaokPiTNs2JBWHjaE4csUkZQ==", - "dev": true - }, - "@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "dev": true, - "requires": { - "@babel/helper-plugin-utils": "^7.8.0" - } - }, - "@babel/types": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.3.tgz", - "integrity": "sha512-jBD+G8+LWpMBBWvVcdr4QysjUE4mU/syrhN17o1u3gx0/WzJB1kwiVZAXRtWbsIPOwW8pF/YJV5+nmetPzepXg==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" } } }, - "@babel/preset-react": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.0.0.tgz", - "integrity": "sha512-oayxyPS4Zj+hF6Et11BwuBkmpgT/zMxyuZgFrMeZID6Hdh3dGlk4sHCAhdBCpuCKW2ppBfl2uCCetlrUIJRY3w==", - "dev": true, + "@babel/preset-modules": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.3.tgz", + "integrity": "sha512-Ra3JXOHBq2xd56xSF7lMKXdjBn3T772Y1Wet3yWnkDly9zHvJki029tAFzvAAK5cf4YV3yoxuP61crYRol6SVg==", "requires": { "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-transform-react-display-name": "^7.0.0", - "@babel/plugin-transform-react-jsx": "^7.0.0", - "@babel/plugin-transform-react-jsx-self": "^7.0.0", - "@babel/plugin-transform-react-jsx-source": "^7.0.0" + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + } + }, + "@babel/preset-react": { + "version": "7.9.4", + "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.9.4.tgz", + "integrity": "sha512-AxylVB3FXeOTQXNXyiuAQJSvss62FEotbX2Pzx3K/7c+MKJMdSg6Ose6QYllkdCFA8EInCJVw7M/o5QbLuA4ZQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/plugin-transform-react-display-name": "^7.8.3", + "@babel/plugin-transform-react-jsx": "^7.9.4", + "@babel/plugin-transform-react-jsx-development": "^7.9.0", + "@babel/plugin-transform-react-jsx-self": "^7.9.0", + "@babel/plugin-transform-react-jsx-source": "^7.9.0" + } + }, + "@babel/preset-typescript": { + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.9.0.tgz", + "integrity": "sha512-S4cueFnGrIbvYJgwsVFKdvOmpiL0XGw9MFW9D0vgRys5g36PBhZRL8NX8Gr2akz8XRtzq6HuDXPD/1nniagNUg==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/plugin-transform-typescript": "^7.9.0" } }, "@babel/runtime": { - "version": "7.4.3", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.4.3.tgz", - "integrity": "sha512-9lsJwJLxDh/T3Q3SZszfWOTkk3pHbkmH+3KY+zwIDmsNlxsumuhS2TH3NIpktU4kNvfzy+k3eLT7aTJSPTo0OA==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.9.6.tgz", + "integrity": "sha512-64AF1xY3OAkFHqOb9s4jpgk1Mm5vDZ4L3acHvAml+53nO1XbXLuDodsVpO4OIUsmemlUHMxNdYMNJmsvOwLrvQ==", "requires": { - "regenerator-runtime": "^0.13.2" + "regenerator-runtime": "^0.13.4" }, "dependencies": { "regenerator-runtime": { - "version": "0.13.2", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.2.tgz", - "integrity": "sha512-S/TQAZJO+D3m9xeN1WTI8dLKBBiRgXBlTJvbWjCThHWZj9EvHK70Ff50/tYj2J/fvBY6JtFVwRuazHN2E7M9BA==" + "version": "0.13.5", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz", + "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==" + } + } + }, + "@babel/runtime-corejs3": { + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.9.6.tgz", + "integrity": "sha512-6toWAfaALQjt3KMZQc6fABqZwUDDuWzz+cAfPhqyEnzxvdWOAkjwPNxgF8xlmo7OWLsSjaKjsskpKHRLaMArOA==", + "requires": { + "core-js-pure": "^3.0.0", + "regenerator-runtime": "^0.13.4" + }, + "dependencies": { + "regenerator-runtime": { + "version": "0.13.5", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz", + "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==" } } }, "@babel/template": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.1.2.tgz", - "integrity": "sha512-SY1MmplssORfFiLDcOETrW7fCLl+PavlwMh92rrGcikQaRq4iWPVH0MpwPpY3etVMx6RnDjXtr6VZYr/IbP/Ag==", - "dev": true, + "version": "7.8.6", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", + "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.1.2", - "@babel/types": "^7.1.2" + "@babel/code-frame": "^7.8.3", + "@babel/parser": "^7.8.6", + "@babel/types": "^7.8.6" } }, "@babel/traverse": { - "version": "7.1.4", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.1.4.tgz", - "integrity": "sha512-my9mdrAIGdDiSVBuMjpn/oXYpva0/EZwWL3sm3Wcy/AVWO2eXnsoZruOT9jOGNRXU8KbCIu5zsKnXcAJ6PcV6Q==", - "dev": true, + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.9.6.tgz", + "integrity": "sha512-b3rAHSjbxy6VEAvlxM8OV/0X4XrG72zoxme6q1MOoe2vd0bEc+TwayhuC1+Dfgqh1QEG+pj7atQqvUprHIccsg==", "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/generator": "^7.1.3", - "@babel/helper-function-name": "^7.1.0", - "@babel/helper-split-export-declaration": "^7.0.0", - "@babel/parser": "^7.1.3", - "@babel/types": "^7.1.3", - "debug": "^3.1.0", + "@babel/code-frame": "^7.8.3", + "@babel/generator": "^7.9.6", + "@babel/helper-function-name": "^7.9.5", + "@babel/helper-split-export-declaration": "^7.8.3", + "@babel/parser": "^7.9.6", + "@babel/types": "^7.9.6", + "debug": "^4.1.0", "globals": "^11.1.0", - "lodash": "^4.17.10" + "lodash": "^4.17.13" }, "dependencies": { "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "requires": { "ms": "^2.1.1" } }, - "globals": { - "version": "11.8.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.8.0.tgz", - "integrity": "sha512-io6LkyPVuzCHBSQV9fmOwxZkUk6nIaGmxheLDgmuFv89j0fm2aqDbIXKAGfzCMHqz3HLF2Zf8WSG6VqMh2qFmA==", - "dev": true - }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" } } }, "@babel/types": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.1.3.tgz", - "integrity": "sha512-RpPOVfK+yatXyn8n4PB1NW6k9qjinrXrRR8ugBN8fD6hCy5RXI6PSbVqpOJBO9oSaY7Nom4ohj35feb0UR9hSA==", + "version": "7.9.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.9.6.tgz", + "integrity": "sha512-qxXzvBO//jO9ZnoasKF1uJzHd2+M6Q2ZPIVfnFps8JJvXy0ZBbwbNOmE6SGIY5XOY6d1Bo5lb9d9RJ8nv3WSeA==", "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.10", + "@babel/helper-validator-identifier": "^7.9.5", + "lodash": "^4.17.13", "to-fast-properties": "^2.0.0" } }, - "@bcoe/v8-coverage": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "dev": true - }, "@cnakazawa/watch": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/@cnakazawa/watch/-/watch-1.0.4.tgz", "integrity": "sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ==", - "dev": true, "requires": { "exec-sh": "^0.3.2", "minimist": "^1.2.0" - }, - "dependencies": { - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - } } }, + "@csstools/convert-colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@csstools/convert-colors/-/convert-colors-1.4.0.tgz", + "integrity": "sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw==" + }, + "@csstools/normalize.css": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/@csstools/normalize.css/-/normalize.css-10.1.0.tgz", + "integrity": "sha512-ij4wRiunFfaJxjB0BdrYHIH8FxBJpOwNPhhAcunlmPdXudL1WQV1qoP9un6JsEBAgQH+7UXyyjh0g7jTxXK6tg==" + }, "@emotion/babel-utils": { "version": "0.6.10", "resolved": "https://registry.npmjs.org/@emotion/babel-utils/-/babel-utils-0.6.10.tgz", @@ -3519,17 +1176,17 @@ "integrity": "sha512-ojhgxzUHZ7am3D2jHkMzPpsBAiB005GF5YU4ea+8DNPybMk01JJUM9V9YRlF/GE95tcOm8DxQvWA2jq19bGalQ==" }, "@emotion/is-prop-valid": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.7.3.tgz", - "integrity": "sha512-uxJqm/sqwXw3YPA5GXX365OBcJGFtxUVkB6WyezqFHlNe9jqUWH5ur2O2M8dGBz61kn1g3ZBlzUunFQXQIClhA==", + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-0.8.8.tgz", + "integrity": "sha512-u5WtneEAr5IDG2Wv65yhunPSMLIpuKsbuOktRojfrEiEvRyC85LgPMZI63cr7NUqT8ZIGdSVg8ZKGxIug4lXcA==", "requires": { - "@emotion/memoize": "0.7.1" + "@emotion/memoize": "0.7.4" }, "dependencies": { "@emotion/memoize": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.1.tgz", - "integrity": "sha512-Qv4LTqO11jepd5Qmlp3M1YEjBumoTHcHFdgPTQ+sFlIL5myi/7xu/POwP7IRu6odBdmLXdtIs1D6TuW6kbwbbg==" + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.7.4.tgz", + "integrity": "sha512-Ja/Vfqe3HpuzRsG1oBtWTHk2PGZ7GR+2Vz5iYGelAw8dx32K0y7PjVuxK6z1nMpZOqAFsRUPCkK1YjJ56qJlgw==" } } }, @@ -3565,1687 +1222,440 @@ "integrity": "sha512-rLu3wcBWH4P5q1CGoSSH/i9hrXs7SlbRLkoq9IGuoPYNGQvDJ3pt/wmOM+XgYjIDRMVIdkUWt0RsfzF50JfnCw==" }, "@fortawesome/fontawesome-common-types": { - "version": "0.2.26", - "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-0.2.26.tgz", - "integrity": "sha512-CcM/fIFwZlRdiWG/25xE/wHbtyUuCtqoCTrr6BsWw7hH072fR++n4L56KPydAr3ANgMJMjT8v83ZFIsDc7kE+A==" + "version": "0.2.28", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-0.2.28.tgz", + "integrity": "sha512-gtis2/5yLdfI6n0ia0jH7NJs5i/Z/8M/ZbQL6jXQhCthEOe5Cr5NcQPhgTvFxNOtURE03/ZqUcEskdn2M+QaBg==" }, "@fortawesome/free-brands-svg-icons": { - "version": "5.12.0", - "resolved": "https://registry.npmjs.org/@fortawesome/free-brands-svg-icons/-/free-brands-svg-icons-5.12.0.tgz", - "integrity": "sha512-50uCFzVUki3wfmFmrMNLFhOt8dP6YZ53zwR4dK9FR7Lwq1IVHXnSBb8MtGLe3urLJ2sA+CSu7Pc7s3i6/zLxmA==", + "version": "5.13.0", + "resolved": "https://registry.npmjs.org/@fortawesome/free-brands-svg-icons/-/free-brands-svg-icons-5.13.0.tgz", + "integrity": "sha512-/6xXiJFCMEQxqxXbL0FPJpwq5Cv6MRrjsbJEmH/t5vOvB4dILDpnY0f7zZSlA8+TG7jwlt12miF/yZpZkykucA==", "requires": { - "@fortawesome/fontawesome-common-types": "^0.2.26" + "@fortawesome/fontawesome-common-types": "^0.2.28" } }, - "@istanbuljs/load-nyc-config": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.0.0.tgz", - "integrity": "sha512-ZR0rq/f/E4f4XcgnDvtMWXCUJpi8eO0rssVhmztsZqLIEFA9UUP9zmpE0VxlM+kv/E1ul2I876Fwil2ayptDVg==", - "dev": true, + "@hapi/address": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@hapi/address/-/address-2.1.4.tgz", + "integrity": "sha512-QD1PhQk+s31P1ixsX0H0Suoupp3VMXzIVMSwobR3F3MSUO2YCV0B7xqLcUw/Bh8yuvd3LhpyqLQWTNcRmp6IdQ==" + }, + "@hapi/bourne": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@hapi/bourne/-/bourne-1.3.2.tgz", + "integrity": "sha512-1dVNHT76Uu5N3eJNTYcvxee+jzX4Z9lfciqRRHCU27ihbUcYi+iSc2iml5Ke1LXe1SyJCLA0+14Jh4tXJgOppA==" + }, + "@hapi/hoek": { + "version": "8.5.1", + "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-8.5.1.tgz", + "integrity": "sha512-yN7kbciD87WzLGc5539Tn0sApjyiGHAJgKvG9W8C7O+6c7qmoQMfVs0W4bX17eqz6C78QJqqFrtgdK5EWf6Qow==" + }, + "@hapi/joi": { + "version": "15.1.1", + "resolved": "https://registry.npmjs.org/@hapi/joi/-/joi-15.1.1.tgz", + "integrity": "sha512-entf8ZMOK8sc+8YfeOlM8pCfg3b5+WZIKBfUaaJT8UsjAAPjartzxIYm3TIbjvA4u+u++KbcXD38k682nVHDAQ==", "requires": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz", - "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "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==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true - } + "@hapi/address": "2.x.x", + "@hapi/bourne": "1.x.x", + "@hapi/hoek": "8.x.x", + "@hapi/topo": "3.x.x" } }, - "@istanbuljs/schema": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz", - "integrity": "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==", - "dev": true + "@hapi/topo": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-3.1.6.tgz", + "integrity": "sha512-tAag0jEcjwH+P2quUfipd7liWCNX2F8NvYjQp2wtInsZxnMlypdw0FtAOLxtvvkO+GSRRbmNi8m/5y42PQJYCQ==", + "requires": { + "@hapi/hoek": "^8.3.0" + } }, "@jest/console": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-25.1.0.tgz", - "integrity": "sha512-3P1DpqAMK/L07ag/Y9/Jup5iDEG9P4pRAuZiMQnU0JB3UOvCyYCjCoxr7sIA80SeyUCUKrr24fKAxVpmBgQonA==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-24.9.0.tgz", + "integrity": "sha512-Zuj6b8TnKXi3q4ymac8EQfc3ea/uhLeCGThFqXeC8H9/raaH8ARPUTdId+XyGd03Z4In0/VjD2OYFcBF09fNLQ==", "requires": { - "@jest/source-map": "^25.1.0", - "chalk": "^3.0.0", - "jest-util": "^25.1.0", - "slash": "^3.0.0" - }, - "dependencies": { - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "jest-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.1.0.tgz", - "integrity": "sha512-7did6pLQ++87Qsj26Fs/TIwZMUFBXQ+4XXSodRNy3luch2DnRXsSnmpVtxxQ0Yd6WTipGpbhh2IFP1mq6/fQGw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", - "is-ci": "^2.0.0", - "mkdirp": "^0.5.1" - } - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "@jest/source-map": "^24.9.0", + "chalk": "^2.0.1", + "slash": "^2.0.0" } }, "@jest/core": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-25.1.0.tgz", - "integrity": "sha512-iz05+NmwCmZRzMXvMo6KFipW7nzhbpEawrKrkkdJzgytavPse0biEnCNr2wRlyCsp3SmKaEY+SGv7YWYQnIdig==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-24.9.0.tgz", + "integrity": "sha512-Fogg3s4wlAr1VX7q+rhV9RVnUv5tD7VuWfYy1+whMiWUrvl7U3QJSJyWcDio9Lq2prqYsZaeTv2Rz24pWGkJ2A==", "requires": { - "@jest/console": "^25.1.0", - "@jest/reporters": "^25.1.0", - "@jest/test-result": "^25.1.0", - "@jest/transform": "^25.1.0", - "@jest/types": "^25.1.0", - "ansi-escapes": "^4.2.1", - "chalk": "^3.0.0", + "@jest/console": "^24.7.1", + "@jest/reporters": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/transform": "^24.9.0", + "@jest/types": "^24.9.0", + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.1", "exit": "^0.1.2", - "graceful-fs": "^4.2.3", - "jest-changed-files": "^25.1.0", - "jest-config": "^25.1.0", - "jest-haste-map": "^25.1.0", - "jest-message-util": "^25.1.0", - "jest-regex-util": "^25.1.0", - "jest-resolve": "^25.1.0", - "jest-resolve-dependencies": "^25.1.0", - "jest-runner": "^25.1.0", - "jest-runtime": "^25.1.0", - "jest-snapshot": "^25.1.0", - "jest-util": "^25.1.0", - "jest-validate": "^25.1.0", - "jest-watcher": "^25.1.0", - "micromatch": "^4.0.2", - "p-each-series": "^2.1.0", + "graceful-fs": "^4.1.15", + "jest-changed-files": "^24.9.0", + "jest-config": "^24.9.0", + "jest-haste-map": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-regex-util": "^24.3.0", + "jest-resolve": "^24.9.0", + "jest-resolve-dependencies": "^24.9.0", + "jest-runner": "^24.9.0", + "jest-runtime": "^24.9.0", + "jest-snapshot": "^24.9.0", + "jest-util": "^24.9.0", + "jest-validate": "^24.9.0", + "jest-watcher": "^24.9.0", + "micromatch": "^3.1.10", + "p-each-series": "^1.0.0", "realpath-native": "^1.1.0", - "rimraf": "^3.0.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" + "rimraf": "^2.5.4", + "slash": "^2.0.0", + "strip-ansi": "^5.0.0" }, "dependencies": { - "@jest/test-result": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.1.0.tgz", - "integrity": "sha512-FZzSo36h++U93vNWZ0KgvlNuZ9pnDnztvaM7P/UcTx87aPDotG18bXifkf1Ji44B7k/eIatmMzkBapnAzjkJkg==", - "dev": true, - "requires": { - "@jest/console": "^25.1.0", - "@jest/transform": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - } - }, - "@jest/transform": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.1.0.tgz", - "integrity": "sha512-4ktrQ2TPREVeM+KxB4zskAT84SnmG1vaz4S+51aTefyqn3zocZUnliLLm5Fsl85I3p/kFPN4CRp1RElIfXGegQ==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^25.1.0", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^3.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.3", - "jest-haste-map": "^25.1.0", - "jest-regex-util": "^25.1.0", - "jest-util": "^25.1.0", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "realpath-native": "^1.1.0", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - } - }, - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, "ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", - "dev": true, - "requires": { - "type-fest": "^0.11.0" - } - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", - "dev": true, - "optional": true - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "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-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "jest-get-type": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.1.0.tgz", - "integrity": "sha512-yWkBnT+5tMr8ANB6V+OjmrIJufHtCAqI5ic2H40v+tRqxDmE0PGnIiTyvRWFOMtmVHYpwRqyazDbTnhpjsGvLw==", - "dev": true - }, - "jest-haste-map": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.1.0.tgz", - "integrity": "sha512-/2oYINIdnQZAqyWSn1GTku571aAfs8NxzSErGek65Iu5o8JYb+113bZysRMcC/pjE5v9w0Yz+ldbj9NxrFyPyw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.1.2", - "graceful-fs": "^4.2.3", - "jest-serializer": "^25.1.0", - "jest-util": "^25.1.0", - "jest-worker": "^25.1.0", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7" - } - }, - "jest-message-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.1.0.tgz", - "integrity": "sha512-Nr/Iwar2COfN22aCqX0kCVbXgn8IBm9nWf4xwGr5Olv/KZh0CZ32RKgZWMVDXGdOahicM10/fgjdimGNX/ttCQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@jest/test-result": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/stack-utils": "^1.0.1", - "chalk": "^3.0.0", - "micromatch": "^4.0.2", - "slash": "^3.0.0", - "stack-utils": "^1.0.1" - } - }, - "jest-regex-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.1.0.tgz", - "integrity": "sha512-9lShaDmDpqwg+xAd73zHydKrBbbrIi08Kk9YryBEBybQFg/lBWR/2BDjjiSE7KIppM9C5+c03XiDaZ+m4Pgs1w==", - "dev": true - }, - "jest-serializer": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.1.0.tgz", - "integrity": "sha512-20Wkq5j7o84kssBwvyuJ7Xhn7hdPeTXndnwIblKDR2/sy1SUm6rWWiG9kSCgJPIfkDScJCIsTtOKdlzfIHOfKA==", - "dev": true - }, - "jest-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.1.0.tgz", - "integrity": "sha512-7did6pLQ++87Qsj26Fs/TIwZMUFBXQ+4XXSodRNy3luch2DnRXsSnmpVtxxQ0Yd6WTipGpbhh2IFP1mq6/fQGw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", - "is-ci": "^2.0.0", - "mkdirp": "^0.5.1" - } - }, - "jest-validate": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-25.1.0.tgz", - "integrity": "sha512-kGbZq1f02/zVO2+t1KQGSVoCTERc5XeObLwITqC6BTRH3Adv7NZdYqCpKIZLUgpLXf2yISzQ465qOZpul8abXA==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "camelcase": "^5.3.1", - "chalk": "^3.0.0", - "jest-get-type": "^25.1.0", - "leven": "^3.1.0", - "pretty-format": "^25.1.0" - } - }, - "leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "pretty-format": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.1.0.tgz", - "integrity": "sha512-46zLRSGLd02Rp+Lhad9zzuNZ+swunitn8zIpfD2B4OPCRLXbM87RJT2aBLBWYOznNUML/2l/ReMyWNC80PJBUQ==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^16.12.0" - } - }, - "react-is": { - "version": "16.13.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.0.tgz", - "integrity": "sha512-GFMtL0vHkiBv9HluwNZTggSn/sCyEt9n02aM0dSAjGGyqyNlAyftYm4phPxdvCigG15JreC5biwxCgTAJZ7yAA==", - "dev": true - }, - "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" - } - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", - "dev": true + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==" } } }, "@jest/environment": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-25.1.0.tgz", - "integrity": "sha512-cTpUtsjU4cum53VqBDlcW0E4KbQF03Cn0jckGPW/5rrE9tb+porD3+hhLtHAwhthsqfyF+bizyodTlsRA++sHg==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-24.9.0.tgz", + "integrity": "sha512-5A1QluTPhvdIPFYnO3sZC3smkNeXPVELz7ikPbhUj0bQjB07EoE9qtLrem14ZUYWdVayYbsjVwIiL4WBIMV4aQ==", "requires": { - "@jest/fake-timers": "^25.1.0", - "@jest/types": "^25.1.0", - "jest-mock": "^25.1.0" - }, - "dependencies": { - "@jest/fake-timers": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-25.1.0.tgz", - "integrity": "sha512-Eu3dysBzSAO1lD7cylZd/CVKdZZ1/43SF35iYBNV1Lvvn2Undp3Grwsv8PrzvbLhqwRzDd4zxrY4gsiHc+wygQ==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "jest-message-util": "^25.1.0", - "jest-mock": "^25.1.0", - "jest-util": "^25.1.0", - "lolex": "^5.0.0" - } - }, - "@jest/test-result": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.1.0.tgz", - "integrity": "sha512-FZzSo36h++U93vNWZ0KgvlNuZ9pnDnztvaM7P/UcTx87aPDotG18bXifkf1Ji44B7k/eIatmMzkBapnAzjkJkg==", - "dev": true, - "requires": { - "@jest/console": "^25.1.0", - "@jest/transform": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - } - }, - "@jest/transform": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.1.0.tgz", - "integrity": "sha512-4ktrQ2TPREVeM+KxB4zskAT84SnmG1vaz4S+51aTefyqn3zocZUnliLLm5Fsl85I3p/kFPN4CRp1RElIfXGegQ==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^25.1.0", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^3.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.3", - "jest-haste-map": "^25.1.0", - "jest-regex-util": "^25.1.0", - "jest-util": "^25.1.0", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "realpath-native": "^1.1.0", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - } - }, - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", - "dev": true, - "optional": true - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "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-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "jest-haste-map": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.1.0.tgz", - "integrity": "sha512-/2oYINIdnQZAqyWSn1GTku571aAfs8NxzSErGek65Iu5o8JYb+113bZysRMcC/pjE5v9w0Yz+ldbj9NxrFyPyw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.1.2", - "graceful-fs": "^4.2.3", - "jest-serializer": "^25.1.0", - "jest-util": "^25.1.0", - "jest-worker": "^25.1.0", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7" - } - }, - "jest-message-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.1.0.tgz", - "integrity": "sha512-Nr/Iwar2COfN22aCqX0kCVbXgn8IBm9nWf4xwGr5Olv/KZh0CZ32RKgZWMVDXGdOahicM10/fgjdimGNX/ttCQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@jest/test-result": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/stack-utils": "^1.0.1", - "chalk": "^3.0.0", - "micromatch": "^4.0.2", - "slash": "^3.0.0", - "stack-utils": "^1.0.1" - } - }, - "jest-mock": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-25.1.0.tgz", - "integrity": "sha512-28/u0sqS+42vIfcd1mlcg4ZVDmSUYuNvImP4X2lX5hRMLW+CN0BeiKVD4p+ujKKbSPKd3rg/zuhCF+QBLJ4vag==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0" - } - }, - "jest-regex-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.1.0.tgz", - "integrity": "sha512-9lShaDmDpqwg+xAd73zHydKrBbbrIi08Kk9YryBEBybQFg/lBWR/2BDjjiSE7KIppM9C5+c03XiDaZ+m4Pgs1w==", - "dev": true - }, - "jest-serializer": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.1.0.tgz", - "integrity": "sha512-20Wkq5j7o84kssBwvyuJ7Xhn7hdPeTXndnwIblKDR2/sy1SUm6rWWiG9kSCgJPIfkDScJCIsTtOKdlzfIHOfKA==", - "dev": true - }, - "jest-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.1.0.tgz", - "integrity": "sha512-7did6pLQ++87Qsj26Fs/TIwZMUFBXQ+4XXSodRNy3luch2DnRXsSnmpVtxxQ0Yd6WTipGpbhh2IFP1mq6/fQGw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", - "is-ci": "^2.0.0", - "mkdirp": "^0.5.1" - } - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } + "@jest/fake-timers": "^24.9.0", + "@jest/transform": "^24.9.0", + "@jest/types": "^24.9.0", + "jest-mock": "^24.9.0" + } + }, + "@jest/fake-timers": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-24.9.0.tgz", + "integrity": "sha512-eWQcNa2YSwzXWIMC5KufBh3oWRIijrQFROsIqt6v/NS9Io/gknw1jsAC9c+ih/RQX4A3O7SeWAhQeN0goKhT9A==", + "requires": { + "@jest/types": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-mock": "^24.9.0" } }, "@jest/reporters": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-25.1.0.tgz", - "integrity": "sha512-ORLT7hq2acJQa8N+NKfs68ZtHFnJPxsGqmofxW7v7urVhzJvpKZG9M7FAcgh9Ee1ZbCteMrirHA3m5JfBtAaDg==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-24.9.0.tgz", + "integrity": "sha512-mu4X0yjaHrffOsWmVLzitKmmmWSQ3GGuefgNscUSWNiUNcEOSEQk9k3pERKEQVBb0Cnn88+UESIsZEMH3o88Gw==", "requires": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^25.1.0", - "@jest/environment": "^25.1.0", - "@jest/test-result": "^25.1.0", - "@jest/transform": "^25.1.0", - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", - "collect-v8-coverage": "^1.0.0", + "@jest/environment": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/transform": "^24.9.0", + "@jest/types": "^24.9.0", + "chalk": "^2.0.1", "exit": "^0.1.2", "glob": "^7.1.2", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^4.0.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.0.0", - "jest-haste-map": "^25.1.0", - "jest-resolve": "^25.1.0", - "jest-runtime": "^25.1.0", - "jest-util": "^25.1.0", - "jest-worker": "^25.1.0", - "node-notifier": "^6.0.0", - "slash": "^3.0.0", + "istanbul-lib-coverage": "^2.0.2", + "istanbul-lib-instrument": "^3.0.1", + "istanbul-lib-report": "^2.0.4", + "istanbul-lib-source-maps": "^3.0.1", + "istanbul-reports": "^2.2.6", + "jest-haste-map": "^24.9.0", + "jest-resolve": "^24.9.0", + "jest-runtime": "^24.9.0", + "jest-util": "^24.9.0", + "jest-worker": "^24.6.0", + "node-notifier": "^5.4.2", + "slash": "^2.0.0", "source-map": "^0.6.0", - "string-length": "^3.1.0", - "terminal-link": "^2.0.0", - "v8-to-istanbul": "^4.0.1" - }, - "dependencies": { - "@jest/test-result": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.1.0.tgz", - "integrity": "sha512-FZzSo36h++U93vNWZ0KgvlNuZ9pnDnztvaM7P/UcTx87aPDotG18bXifkf1Ji44B7k/eIatmMzkBapnAzjkJkg==", - "dev": true, - "requires": { - "@jest/console": "^25.1.0", - "@jest/transform": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - } - }, - "@jest/transform": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.1.0.tgz", - "integrity": "sha512-4ktrQ2TPREVeM+KxB4zskAT84SnmG1vaz4S+51aTefyqn3zocZUnliLLm5Fsl85I3p/kFPN4CRp1RElIfXGegQ==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^25.1.0", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^3.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.3", - "jest-haste-map": "^25.1.0", - "jest-regex-util": "^25.1.0", - "jest-util": "^25.1.0", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "realpath-native": "^1.1.0", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - } - }, - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", - "dev": true, - "optional": true - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "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-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "jest-haste-map": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.1.0.tgz", - "integrity": "sha512-/2oYINIdnQZAqyWSn1GTku571aAfs8NxzSErGek65Iu5o8JYb+113bZysRMcC/pjE5v9w0Yz+ldbj9NxrFyPyw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.1.2", - "graceful-fs": "^4.2.3", - "jest-serializer": "^25.1.0", - "jest-util": "^25.1.0", - "jest-worker": "^25.1.0", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7" - } - }, - "jest-regex-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.1.0.tgz", - "integrity": "sha512-9lShaDmDpqwg+xAd73zHydKrBbbrIi08Kk9YryBEBybQFg/lBWR/2BDjjiSE7KIppM9C5+c03XiDaZ+m4Pgs1w==", - "dev": true - }, - "jest-serializer": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.1.0.tgz", - "integrity": "sha512-20Wkq5j7o84kssBwvyuJ7Xhn7hdPeTXndnwIblKDR2/sy1SUm6rWWiG9kSCgJPIfkDScJCIsTtOKdlzfIHOfKA==", - "dev": true - }, - "jest-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.1.0.tgz", - "integrity": "sha512-7did6pLQ++87Qsj26Fs/TIwZMUFBXQ+4XXSodRNy3luch2DnRXsSnmpVtxxQ0Yd6WTipGpbhh2IFP1mq6/fQGw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", - "is-ci": "^2.0.0", - "mkdirp": "^0.5.1" - } - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } + "string-length": "^2.0.0" } }, "@jest/source-map": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-25.1.0.tgz", - "integrity": "sha512-ohf2iKT0xnLWcIUhL6U6QN+CwFWf9XnrM2a6ybL9NXxJjgYijjLSitkYHIdzkd8wFliH73qj/+epIpTiWjRtAA==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-24.9.0.tgz", + "integrity": "sha512-/Xw7xGlsZb4MJzNDgB7PW5crou5JqWiBQaz6xyPd3ArOg2nfn/PunV8+olXbbEZzNl591o5rWKE9BRDaFAuIBg==", "requires": { "callsites": "^3.0.0", - "graceful-fs": "^4.2.3", + "graceful-fs": "^4.1.15", "source-map": "^0.6.0" - }, - "dependencies": { - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "dev": true - } + } + }, + "@jest/test-result": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-24.9.0.tgz", + "integrity": "sha512-XEFrHbBonBJ8dGp2JmF8kP/nQI/ImPpygKHwQ/SY+es59Z3L5PI4Qb9TQQMAEeYsThG1xF0k6tmG0tIKATNiiA==", + "requires": { + "@jest/console": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/istanbul-lib-coverage": "^2.0.0" } }, "@jest/test-sequencer": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-25.1.0.tgz", - "integrity": "sha512-WgZLRgVr2b4l/7ED1J1RJQBOharxS11EFhmwDqknpknE0Pm87HLZVS2Asuuw+HQdfQvm2aXL2FvvBLxOD1D0iw==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-24.9.0.tgz", + "integrity": "sha512-6qqsU4o0kW1dvA95qfNog8v8gkRN9ph6Lz7r96IvZpHdNipP2cBcb07J1Z45mz/VIS01OHJ3pY8T5fUY38tg4A==", "requires": { - "@jest/test-result": "^25.1.0", - "jest-haste-map": "^25.1.0", - "jest-runner": "^25.1.0", - "jest-runtime": "^25.1.0" - }, - "dependencies": { - "@jest/test-result": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.1.0.tgz", - "integrity": "sha512-FZzSo36h++U93vNWZ0KgvlNuZ9pnDnztvaM7P/UcTx87aPDotG18bXifkf1Ji44B7k/eIatmMzkBapnAzjkJkg==", - "dev": true, - "requires": { - "@jest/console": "^25.1.0", - "@jest/transform": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - } - }, - "@jest/transform": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.1.0.tgz", - "integrity": "sha512-4ktrQ2TPREVeM+KxB4zskAT84SnmG1vaz4S+51aTefyqn3zocZUnliLLm5Fsl85I3p/kFPN4CRp1RElIfXGegQ==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^25.1.0", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^3.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.3", - "jest-haste-map": "^25.1.0", - "jest-regex-util": "^25.1.0", - "jest-util": "^25.1.0", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "realpath-native": "^1.1.0", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - } - }, - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", - "dev": true, - "optional": true - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "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-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "jest-haste-map": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.1.0.tgz", - "integrity": "sha512-/2oYINIdnQZAqyWSn1GTku571aAfs8NxzSErGek65Iu5o8JYb+113bZysRMcC/pjE5v9w0Yz+ldbj9NxrFyPyw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.1.2", - "graceful-fs": "^4.2.3", - "jest-serializer": "^25.1.0", - "jest-util": "^25.1.0", - "jest-worker": "^25.1.0", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7" - } - }, - "jest-regex-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.1.0.tgz", - "integrity": "sha512-9lShaDmDpqwg+xAd73zHydKrBbbrIi08Kk9YryBEBybQFg/lBWR/2BDjjiSE7KIppM9C5+c03XiDaZ+m4Pgs1w==", - "dev": true - }, - "jest-serializer": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.1.0.tgz", - "integrity": "sha512-20Wkq5j7o84kssBwvyuJ7Xhn7hdPeTXndnwIblKDR2/sy1SUm6rWWiG9kSCgJPIfkDScJCIsTtOKdlzfIHOfKA==", - "dev": true - }, - "jest-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.1.0.tgz", - "integrity": "sha512-7did6pLQ++87Qsj26Fs/TIwZMUFBXQ+4XXSodRNy3luch2DnRXsSnmpVtxxQ0Yd6WTipGpbhh2IFP1mq6/fQGw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", - "is-ci": "^2.0.0", - "mkdirp": "^0.5.1" - } - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } + "@jest/test-result": "^24.9.0", + "jest-haste-map": "^24.9.0", + "jest-runner": "^24.9.0", + "jest-runtime": "^24.9.0" } }, "@jest/transform": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.1.0.tgz", - "integrity": "sha512-4ktrQ2TPREVeM+KxB4zskAT84SnmG1vaz4S+51aTefyqn3zocZUnliLLm5Fsl85I3p/kFPN4CRp1RElIfXGegQ==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-24.9.0.tgz", + "integrity": "sha512-TcQUmyNRxV94S0QpMOnZl0++6RMiqpbH/ZMccFB/amku6Uwvyb1cjYX7xkp5nGNkbX4QPH/FcB6q1HBTHynLmQ==", "requires": { "@babel/core": "^7.1.0", - "@jest/types": "^25.1.0", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^3.0.0", + "@jest/types": "^24.9.0", + "babel-plugin-istanbul": "^5.1.0", + "chalk": "^2.0.1", "convert-source-map": "^1.4.0", "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.3", - "jest-haste-map": "^25.1.0", - "jest-regex-util": "^25.1.0", - "jest-util": "^25.1.0", - "micromatch": "^4.0.2", + "graceful-fs": "^4.1.15", + "jest-haste-map": "^24.9.0", + "jest-regex-util": "^24.9.0", + "jest-util": "^24.9.0", + "micromatch": "^3.1.10", "pirates": "^4.0.1", "realpath-native": "^1.1.0", - "slash": "^3.0.0", + "slash": "^2.0.0", "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "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-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "jest-regex-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.1.0.tgz", - "integrity": "sha512-9lShaDmDpqwg+xAd73zHydKrBbbrIi08Kk9YryBEBybQFg/lBWR/2BDjjiSE7KIppM9C5+c03XiDaZ+m4Pgs1w==", - "dev": true - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } + "write-file-atomic": "2.4.1" } }, "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-24.9.0.tgz", + "integrity": "sha512-XKK7ze1apu5JWQ5eZjHITP66AX+QsLlbaJRBGYr8pNzwcAE2JVkwnf0yqjHTsDRcjR0mujy/NmZMXw5kl+kGBw==", "requires": { "@types/istanbul-lib-coverage": "^2.0.0", "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "@types/yargs": "^13.0.0" } }, "@lingui/babel-plugin-extract-messages": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/@lingui/babel-plugin-extract-messages/-/babel-plugin-extract-messages-2.7.4.tgz", - "integrity": "sha512-/0XNXLg3gKLvmvaQ9+A2lxuRtG6g1zhp3KGMdC+cwUU4fX5Sfim3x3vRxlkMk69j/GkKC5OlKKTPZlI05NsReg==", + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/@lingui/babel-plugin-extract-messages/-/babel-plugin-extract-messages-2.9.1.tgz", + "integrity": "sha512-ZguvJK/ByupNgmmxvlO43DewGTMVtPsolA/Uxm24YTLg0jf7cu/GRaqYxYt+SojWHuo2/mn6dzDJZPFcK1A2og==", "dev": true, "requires": { - "@lingui/conf": "2.7.4", + "@lingui/conf": "2.9.1", "babel-generator": "^6.26.1" } }, "@lingui/babel-plugin-transform-js": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/@lingui/babel-plugin-transform-js/-/babel-plugin-transform-js-2.7.4.tgz", - "integrity": "sha512-jqs1AR3507e1vqaVQB0bG15p5VaujlD48Vm7/ElL3ieFvx/gyvZp5b1wv/A8kpVuPcEhFm7oWJzeUfkh1mdOTg==", + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/@lingui/babel-plugin-transform-js/-/babel-plugin-transform-js-2.9.1.tgz", + "integrity": "sha512-m1RAKUKffyxfWQ2Y0KfGHhYofdHdM+0aSsi2kgcebqzsuE8Hwuy+r4GZr593cSIqBu6Ugb6/WKoAUGUoEF9ZHw==", "dev": true }, "@lingui/babel-plugin-transform-react": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/@lingui/babel-plugin-transform-react/-/babel-plugin-transform-react-2.7.2.tgz", - "integrity": "sha512-50+GM9LL7V4mB6ekY7hUGmyMLewDQ9bzVXTyRtbTl/78xJoQKSv8Wuz+jlvPcP0fKAFcmcHo3QJPPOkSAbgnOw==", + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/@lingui/babel-plugin-transform-react/-/babel-plugin-transform-react-2.9.1.tgz", + "integrity": "sha512-3btgAUpH5OSlZf/c4bXsDtvPity+H+7Mm1GJmWEwQSjl5kQNLisNVHpWPKvESuNbfQEtmtK5iIMVUYx8GD/Sig==", "dev": true }, "@lingui/cli": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/@lingui/cli/-/cli-2.7.4.tgz", - "integrity": "sha512-Px/b3N8ryNdpnPj2pduX+pj91I7Zm3dFKj8dXRbgFmVjXcf3od0hK8yoPj9nBuuTa9VBB4wbZwBJSwuqYuHfgg==", + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/@lingui/cli/-/cli-2.9.1.tgz", + "integrity": "sha512-Ruzg4UxZzqnJDMpdGE04G8NnXFRAd5nH5dZ7rAYBurSddlLEqE3DVrxMToYC1BfCpbmWznHguPwusljrCUkMeg==", "dev": true, "requires": { - "@lingui/babel-plugin-extract-messages": "2.7.4", - "@lingui/babel-plugin-transform-js": "2.7.4", - "@lingui/babel-plugin-transform-react": "2.7.4", - "@lingui/conf": "2.7.4", + "@lingui/babel-plugin-extract-messages": "2.9.1", + "@lingui/babel-plugin-transform-js": "2.9.1", + "@lingui/babel-plugin-transform-react": "2.9.1", + "@lingui/conf": "2.9.1", "babel-generator": "^6.26.1", "babel-plugin-syntax-jsx": "^6.18.0", "babel-runtime": "^6.26.0", "babel-types": "^6.26.0", "babylon": "^6.18.0", - "bcp-47": "^1.0.4", + "bcp-47": "^1.0.5", "chalk": "^2.3.0", "cli-table": "^0.3.1", - "commander": "^2.17.1", + "commander": "^2.20.0", "date-fns": "^1.29.0", "fuzzaldrin": "^2.1.0", - "glob": "^7.1.2", - "inquirer": "^6.2.0", + "glob": "^7.1.4", + "inquirer": "^6.3.1", "make-plural": "^4.1.1", "messageformat-parser": "^2.0.0", "mkdirp": "^0.5.1", "opencollective": "^1.0.3", - "ora": "^3.0.0", + "ora": "^3.4.0", "pofile": "^1.0.11", "pseudolocale": "^1.1.0", - "ramda": "^0.25.0", - "typescript": "^2.9.2" + "ramda": "^0.26.1" }, "dependencies": { - "@lingui/babel-plugin-transform-react": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/@lingui/babel-plugin-transform-react/-/babel-plugin-transform-react-2.7.4.tgz", - "integrity": "sha512-U4ocmtqOIjqDQX9tYrOLDNR7Tp8EmDPoBUtXyXfAPb4ukA3CePphuz89N8lDZVsTUQwBDNDynP/3qiLr1pW4QQ==", + "ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", "dev": true }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true + }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", "dev": true, "requires": { - "color-convert": "^1.9.0" + "restore-cursor": "^2.0.0" } }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", "dev": true, "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "escape-string-regexp": "^1.0.5" } }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "inquirer": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.5.2.tgz", + "integrity": "sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ==", "dev": true, "requires": { - "has-flag": "^3.0.0" + "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-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "dev": true + }, + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + } + }, + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "requires": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + } + }, + "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": { + "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" + } + } } } } }, "@lingui/conf": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/@lingui/conf/-/conf-2.7.4.tgz", - "integrity": "sha512-v/tr1aLYrUozu09yHBzRHBB2gPYD8Vwth51RuTOyzsthQVAtfKY7VV7m2wB0JQFMD9gGbPE5a+roqH6RkB7qUw==", + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/@lingui/conf/-/conf-2.9.1.tgz", + "integrity": "sha512-33mEShmFemYy5tH+fgvAH+mNaO9MbOyDM1lt+frx/ozXBMbGsPrEReDFGtCY2CGEITn5Q9SGJbcRscnfQ2DubQ==", "dev": true, "requires": { "chalk": "^2.3.0", - "cosmiconfig": "^5.0.6", - "jest-regex-util": "^23.3.0", - "jest-validate": "^23.5.0", - "pkg-conf": "^2.1.0" + "cosmiconfig": "^5.2.1", + "jest-regex-util": "^24.3.0", + "jest-validate": "^24.8.0", + "pkg-conf": "^3.1.0" }, "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "cosmiconfig": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", + "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", "dev": true, "requires": { - "color-convert": "^1.9.0" + "import-fresh": "^2.0.0", + "is-directory": "^0.3.1", + "js-yaml": "^3.13.1", + "parse-json": "^4.0.0" } }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "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": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "caller-path": "^2.0.0", + "resolve-from": "^3.0.0" } }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "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": { - "has-flag": "^3.0.0" + "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 } } }, "@lingui/core": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/@lingui/core/-/core-2.7.2.tgz", - "integrity": "sha512-LLMNcxfXmjhxG18sQmIb4azNuwVyhMUhcVFgOQ682eVQEGaSIncPsnSQRGhgYbiqY1LGXlZEXZnYdyyDMSZR0A==", + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/@lingui/core/-/core-2.9.1.tgz", + "integrity": "sha512-oygikacnRlfR2p8Q30q9z7jBASvVd8JXgoq7q2Ao/NdZyk3YIYbDhBICxAtwlCbm1hSROh2xMS2Ygx3Ezwzp1Q==", "requires": { "babel-runtime": "^6.26.0", "make-plural": "^4.1.1", @@ -5253,37 +1663,40 @@ } }, "@lingui/macro": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/@lingui/macro/-/macro-2.7.2.tgz", - "integrity": "sha512-kU5fl/2MvHQLfVRju2QR28uKOHsUqlLZOJwMXNAm/eq42D6ORa5vZR2ovlBRF9IdcYGqkCCPjeTLN5NC7b5gyQ==", + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/@lingui/macro/-/macro-2.9.1.tgz", + "integrity": "sha512-iuT4rNl57h574vUfO9sYWstpbNMMaBxdscyOnY/R+HIPX0cPSjqaDmKTDInfI1gFpYznM2OOhOpqxMMUGt2+Gw==", "dev": true, "requires": { - "@lingui/babel-plugin-transform-react": "2.7.2", - "babel-plugin-macros": "^2.2.0" + "@lingui/babel-plugin-transform-react": "2.9.1" } }, "@lingui/react": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/@lingui/react/-/react-2.7.2.tgz", - "integrity": "sha512-dYfhojpYLKyXp3V1i3twjipIXGK80rBBLNMZOXBBCqm5Lypef3d7Ip1jLXuhk4Ni++ijWJfHC40F3gWNBNFSjw==", + "version": "2.9.1", + "resolved": "https://registry.npmjs.org/@lingui/react/-/react-2.9.1.tgz", + "integrity": "sha512-LUpsw7zDUfS/iJWrBfmaVKcxjyNUQkMjBRuLVEzLHp32A6pK2CGFlDouBsEl1zbJn8gFdcBwWhTsh/FcXZCmXg==", "requires": { - "@lingui/core": "2.7.2", + "@lingui/core": "2.9.1", "babel-runtime": "^6.26.0", "hash-sum": "^1.0.2", - "hoist-non-react-statics": "3.0.1", - "prop-types": "^15.6.2" - }, - "dependencies": { - "hoist-non-react-statics": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.0.1.tgz", - "integrity": "sha512-1kXwPsOi0OGQIZNVMPvgWJ9tSnGMiMfJdihqEzrPEXlHOBh9AAHXX/QYmAJTXztnz/K+PQ8ryCb4eGaN6HlGbQ==", - "requires": { - "react-is": "^16.3.2" - } - } + "hoist-non-react-statics": "3.3.0", + "prop-types": "^15.7.2" } }, + "@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==", + "requires": { + "call-me-maybe": "^1.0.1", + "glob-to-regexp": "^0.3.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==" + }, "@nteract/mockument": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/@nteract/mockument/-/mockument-1.0.4.tgz", @@ -5291,50 +1704,35 @@ "dev": true }, "@patternfly/patternfly": { - "version": "2.71.3", - "resolved": "https://registry.npmjs.org/@patternfly/patternfly/-/patternfly-2.71.3.tgz", - "integrity": "sha512-uTb9zAtPjTKB8aHmWdavEOrSMs+NL9XovMvWYL9R74zXbGnEMHEpibn7cNSu469u2JrxY6VsH7x44aOfdZpqpg==" + "version": "2.71.5", + "resolved": "https://registry.npmjs.org/@patternfly/patternfly/-/patternfly-2.71.5.tgz", + "integrity": "sha512-kkPVr+B9UKDeko8F31RzO7g1ecMbp4rVVQhg6X95rrzPd9mqBC8TGuwhyXnnHCbSAyNyqsp+ldGhDMsN5yMPiw==" }, "@patternfly/react-core": { - "version": "3.153.3", - "resolved": "https://registry.npmjs.org/@patternfly/react-core/-/react-core-3.153.3.tgz", - "integrity": "sha512-2ccnn/HPfEhZfj9gfKZJpWgzOA9O6QeCHjZGh41tx7Lz7iZGl9b/UdTmDsQUeYYuJ+0M8fxhYnQMKaDxfcqyOQ==", + "version": "3.153.13", + "resolved": "https://registry.npmjs.org/@patternfly/react-core/-/react-core-3.153.13.tgz", + "integrity": "sha512-OyssAlsdsHWXRuKXvkcagG8PcplpE02FSLClON+407Fzhj4t0BLGWECI8RQwZ0Tapr+qVXikKQRukM5MY9zIqg==", "requires": { - "@patternfly/react-icons": "^3.15.15", - "@patternfly/react-styles": "^3.7.12", - "@patternfly/react-tokens": "^2.8.12", + "@patternfly/react-icons": "^3.15.16", + "@patternfly/react-styles": "^3.7.13", + "@patternfly/react-tokens": "^2.8.13", "focus-trap": "4.0.2", "react-dropzone": "9.0.0", "tippy.js": "5.1.2" - }, - "dependencies": { - "@patternfly/react-icons": { - "version": "3.15.15", - "resolved": "https://registry.npmjs.org/@patternfly/react-icons/-/react-icons-3.15.15.tgz", - "integrity": "sha512-oYOgY7fELe3gKbKB2KRUANpYPWkKkEGpmKdmXonNmNUlg0t/a8V68raVX8bTjXN9pwKsUKqNQW1R+xFibtt0Aw==", - "requires": { - "@fortawesome/free-brands-svg-icons": "^5.8.1" - } - }, - "@patternfly/react-tokens": { - "version": "2.8.12", - "resolved": "https://registry.npmjs.org/@patternfly/react-tokens/-/react-tokens-2.8.12.tgz", - "integrity": "sha512-QyuMaTizuSn9eESl6bcopGKKgFydocc/N8T7OGB6jARBt6gdIoQWcztdBabSIVz/YGoEDw6lKeoNfed8p6GynA==" - } } }, "@patternfly/react-icons": { - "version": "3.15.15", - "resolved": "https://registry.npmjs.org/@patternfly/react-icons/-/react-icons-3.15.15.tgz", - "integrity": "sha512-oYOgY7fELe3gKbKB2KRUANpYPWkKkEGpmKdmXonNmNUlg0t/a8V68raVX8bTjXN9pwKsUKqNQW1R+xFibtt0Aw==", + "version": "3.15.16", + "resolved": "https://registry.npmjs.org/@patternfly/react-icons/-/react-icons-3.15.16.tgz", + "integrity": "sha512-YOBED8rhkbBEHTQpjEns/OjgD1gDsW8e6rw6u0H0y6S9YwrmZXhgq/aiu2OG0ftmKWOvYvrrDgmNBkkWpEWlEA==", "requires": { "@fortawesome/free-brands-svg-icons": "^5.8.1" } }, "@patternfly/react-styles": { - "version": "3.7.12", - "resolved": "https://registry.npmjs.org/@patternfly/react-styles/-/react-styles-3.7.12.tgz", - "integrity": "sha512-vTKyC78oKlrS6VTQ3GPYevc17qgxj2Ono+SCDwoMyhUexPEyXRuZHLoZA1/MkJHvSCqJHGBageBAFcRq5wb0XQ==", + "version": "3.7.13", + "resolved": "https://registry.npmjs.org/@patternfly/react-styles/-/react-styles-3.7.13.tgz", + "integrity": "sha512-rpyYJj9QzjhEXb1MqY+6/vRlaS3z3NTHSoANvy28n65ZRhBxTiCZd7BxQ+CyiUMIPuUBbebBbZw/6MaToqJakg==", "requires": { "camel-case": "^3.0.0", "css": "^2.2.3", @@ -5344,24 +1742,326 @@ } }, "@patternfly/react-tokens": { - "version": "2.8.12", - "resolved": "https://registry.npmjs.org/@patternfly/react-tokens/-/react-tokens-2.8.12.tgz", - "integrity": "sha512-QyuMaTizuSn9eESl6bcopGKKgFydocc/N8T7OGB6jARBt6gdIoQWcztdBabSIVz/YGoEDw6lKeoNfed8p6GynA==" + "version": "2.8.13", + "resolved": "https://registry.npmjs.org/@patternfly/react-tokens/-/react-tokens-2.8.13.tgz", + "integrity": "sha512-k3r58ShieAiqHfn+tyMwhrk+/r1VP/ABy7S5no7mzgs1cOP9bJzCRk08X0KmEDzsZqHqTBM8dsffYlPT2OGCcQ==" }, - "@sinonjs/commons": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.7.1.tgz", - "integrity": "sha512-Debi3Baff1Qu1Unc3mjJ96MgpbwTn43S1+9yJ0llWygPwDNu2aaWBD6yc9y/Z8XDRNhx7U+u2UDg2OGQXkclUQ==", - "dev": true, + "@sheerun/mutationobserver-shim": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@sheerun/mutationobserver-shim/-/mutationobserver-shim-0.3.3.tgz", + "integrity": "sha512-DetpxZw1fzPD5xUBrIAoplLChO2VB8DlL5Gg+I1IR9b2wPqYIca2WSUxL5g1vLeR4MsQq1NeWriXAVffV+U1Fw==" + }, + "@svgr/babel-plugin-add-jsx-attribute": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-add-jsx-attribute/-/babel-plugin-add-jsx-attribute-4.2.0.tgz", + "integrity": "sha512-j7KnilGyZzYr/jhcrSYS3FGWMZVaqyCG0vzMCwzvei0coIkczuYMcniK07nI0aHJINciujjH11T72ICW5eL5Ig==" + }, + "@svgr/babel-plugin-remove-jsx-attribute": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-attribute/-/babel-plugin-remove-jsx-attribute-4.2.0.tgz", + "integrity": "sha512-3XHLtJ+HbRCH4n28S7y/yZoEQnRpl0tvTZQsHqvaeNXPra+6vE5tbRliH3ox1yZYPCxrlqaJT/Mg+75GpDKlvQ==" + }, + "@svgr/babel-plugin-remove-jsx-empty-expression": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-remove-jsx-empty-expression/-/babel-plugin-remove-jsx-empty-expression-4.2.0.tgz", + "integrity": "sha512-yTr2iLdf6oEuUE9MsRdvt0NmdpMBAkgK8Bjhl6epb+eQWk6abBaX3d65UZ3E3FWaOwePyUgNyNCMVG61gGCQ7w==" + }, + "@svgr/babel-plugin-replace-jsx-attribute-value": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-replace-jsx-attribute-value/-/babel-plugin-replace-jsx-attribute-value-4.2.0.tgz", + "integrity": "sha512-U9m870Kqm0ko8beHawRXLGLvSi/ZMrl89gJ5BNcT452fAjtF2p4uRzXkdzvGJJJYBgx7BmqlDjBN/eCp5AAX2w==" + }, + "@svgr/babel-plugin-svg-dynamic-title": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-dynamic-title/-/babel-plugin-svg-dynamic-title-4.3.3.tgz", + "integrity": "sha512-w3Be6xUNdwgParsvxkkeZb545VhXEwjGMwExMVBIdPQJeyMQHqm9Msnb2a1teHBqUYL66qtwfhNkbj1iarCG7w==" + }, + "@svgr/babel-plugin-svg-em-dimensions": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-svg-em-dimensions/-/babel-plugin-svg-em-dimensions-4.2.0.tgz", + "integrity": "sha512-C0Uy+BHolCHGOZ8Dnr1zXy/KgpBOkEUYY9kI/HseHVPeMbluaX3CijJr7D4C5uR8zrc1T64nnq/k63ydQuGt4w==" + }, + "@svgr/babel-plugin-transform-react-native-svg": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-react-native-svg/-/babel-plugin-transform-react-native-svg-4.2.0.tgz", + "integrity": "sha512-7YvynOpZDpCOUoIVlaaOUU87J4Z6RdD6spYN4eUb5tfPoKGSF9OG2NuhgYnq4jSkAxcpMaXWPf1cePkzmqTPNw==" + }, + "@svgr/babel-plugin-transform-svg-component": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/@svgr/babel-plugin-transform-svg-component/-/babel-plugin-transform-svg-component-4.2.0.tgz", + "integrity": "sha512-hYfYuZhQPCBVotABsXKSCfel2slf/yvJY8heTVX1PCTaq/IgASq1IyxPPKJ0chWREEKewIU/JMSsIGBtK1KKxw==" + }, + "@svgr/babel-preset": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@svgr/babel-preset/-/babel-preset-4.3.3.tgz", + "integrity": "sha512-6PG80tdz4eAlYUN3g5GZiUjg2FMcp+Wn6rtnz5WJG9ITGEF1pmFdzq02597Hn0OmnQuCVaBYQE1OVFAnwOl+0A==", "requires": { - "type-detect": "4.0.8" + "@svgr/babel-plugin-add-jsx-attribute": "^4.2.0", + "@svgr/babel-plugin-remove-jsx-attribute": "^4.2.0", + "@svgr/babel-plugin-remove-jsx-empty-expression": "^4.2.0", + "@svgr/babel-plugin-replace-jsx-attribute-value": "^4.2.0", + "@svgr/babel-plugin-svg-dynamic-title": "^4.3.3", + "@svgr/babel-plugin-svg-em-dimensions": "^4.2.0", + "@svgr/babel-plugin-transform-react-native-svg": "^4.2.0", + "@svgr/babel-plugin-transform-svg-component": "^4.2.0" } }, + "@svgr/core": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@svgr/core/-/core-4.3.3.tgz", + "integrity": "sha512-qNuGF1QON1626UCaZamWt5yedpgOytvLj5BQZe2j1k1B8DUG4OyugZyfEwBeXozCUwhLEpsrgPrE+eCu4fY17w==", + "requires": { + "@svgr/plugin-jsx": "^4.3.3", + "camelcase": "^5.3.1", + "cosmiconfig": "^5.2.1" + }, + "dependencies": { + "cosmiconfig": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", + "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "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=", + "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=", + "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=" + } + } + }, + "@svgr/hast-util-to-babel-ast": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/@svgr/hast-util-to-babel-ast/-/hast-util-to-babel-ast-4.3.2.tgz", + "integrity": "sha512-JioXclZGhFIDL3ddn4Kiq8qEqYM2PyDKV0aYno8+IXTLuYt6TOgHUbUAAFvqtb0Xn37NwP0BTHglejFoYr8RZg==", + "requires": { + "@babel/types": "^7.4.4" + } + }, + "@svgr/plugin-jsx": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-4.3.3.tgz", + "integrity": "sha512-cLOCSpNWQnDB1/v+SUENHH7a0XY09bfuMKdq9+gYvtuwzC2rU4I0wKGFEp1i24holdQdwodCtDQdFtJiTCWc+w==", + "requires": { + "@babel/core": "^7.4.5", + "@svgr/babel-preset": "^4.3.3", + "@svgr/hast-util-to-babel-ast": "^4.3.2", + "svg-parser": "^2.0.0" + } + }, + "@svgr/plugin-svgo": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-4.3.1.tgz", + "integrity": "sha512-PrMtEDUWjX3Ea65JsVCwTIXuSqa3CG9px+DluF1/eo9mlDrgrtFE7NE/DjdhjJgSM9wenlVBzkzneSIUgfUI/w==", + "requires": { + "cosmiconfig": "^5.2.1", + "merge-deep": "^3.0.2", + "svgo": "^1.2.2" + }, + "dependencies": { + "cosmiconfig": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", + "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "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=", + "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=", + "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=" + } + } + }, + "@svgr/webpack": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-4.3.3.tgz", + "integrity": "sha512-bjnWolZ6KVsHhgyCoYRFmbd26p8XVbulCzSG53BDQqAr+JOAderYK7CuYrB3bDjHJuF6LJ7Wrr42+goLRV9qIg==", + "requires": { + "@babel/core": "^7.4.5", + "@babel/plugin-transform-react-constant-elements": "^7.0.0", + "@babel/preset-env": "^7.4.5", + "@babel/preset-react": "^7.0.0", + "@svgr/core": "^4.3.3", + "@svgr/plugin-jsx": "^4.3.3", + "@svgr/plugin-svgo": "^4.3.1", + "loader-utils": "^1.2.3" + } + }, + "@testing-library/dom": { + "version": "6.16.0", + "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-6.16.0.tgz", + "integrity": "sha512-lBD88ssxqEfz0wFL6MeUyyWZfV/2cjEZZV3YRpb2IoJRej/4f1jB0TzqIOznTpfR1r34CNesrubxwIlAQ8zgPA==", + "requires": { + "@babel/runtime": "^7.8.4", + "@sheerun/mutationobserver-shim": "^0.3.2", + "@types/testing-library__dom": "^6.12.1", + "aria-query": "^4.0.2", + "dom-accessibility-api": "^0.3.0", + "pretty-format": "^25.1.0", + "wait-for-expect": "^3.0.2" + }, + "dependencies": { + "@jest/types": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.5.0.tgz", + "integrity": "sha512-OXD0RgQ86Tu3MazKo8bnrkDRaDXXMGUqd+kTtLtK1Zb7CRzQcaSRPPPV37SvYTdevXEBVxe0HXylEjs8ibkmCw==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^1.1.1", + "@types/yargs": "^15.0.0", + "chalk": "^3.0.0" + } + }, + "@types/yargs": { + "version": "15.0.4", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", + "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" + }, + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "requires": { + "@jest/types": "^25.5.0", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^16.12.0" + } + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "@testing-library/jest-dom": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-4.2.4.tgz", + "integrity": "sha512-j31Bn0rQo12fhCWOUWy9fl7wtqkp7In/YP2p5ZFyRuiiB9Qs3g+hS4gAmDWONbAHcRmVooNJ5eOHQDCOmUFXHg==", + "requires": { + "@babel/runtime": "^7.5.1", + "chalk": "^2.4.1", + "css": "^2.2.3", + "css.escape": "^1.5.1", + "jest-diff": "^24.0.0", + "jest-matcher-utils": "^24.0.0", + "lodash": "^4.17.11", + "pretty-format": "^24.0.0", + "redent": "^3.0.0" + } + }, + "@testing-library/react": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/@testing-library/react/-/react-9.5.0.tgz", + "integrity": "sha512-di1b+D0p+rfeboHO5W7gTVeZDIK5+maEgstrZbWZSSvxDyfDRkkyBE1AJR5Psd6doNldluXlCWqXriUfqu/9Qg==", + "requires": { + "@babel/runtime": "^7.8.4", + "@testing-library/dom": "^6.15.0", + "@types/testing-library__react": "^9.1.2" + } + }, + "@testing-library/user-event": { + "version": "7.2.1", + "resolved": "https://registry.npmjs.org/@testing-library/user-event/-/user-event-7.2.1.tgz", + "integrity": "sha512-oZ0Ib5I4Z2pUEcoo95cT1cr6slco9WY7yiPpG+RGNkj8YcYgJnM7pXmYmorNOReh8MIGcKSqXyeGjxnr8YiZbA==" + }, "@types/babel__core": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.6.tgz", - "integrity": "sha512-tTnhWszAqvXnhW7m5jQU9PomXSiKXk2sFxpahXvI20SZKu9ylPi8WtIxueZ6ehDWikPT0jeFujMj3X4ZHuf3Tg==", - "dev": true, + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.7.tgz", + "integrity": "sha512-RL62NqSFPCDK2FM1pSDH0scHpJvsXtZNiYlMB73DgPBaG1E38ZYVL+ei5EkWRbr+KC4YNiAUNBnRj+bgwpgjMw==", "requires": { "@babel/parser": "^7.1.0", "@babel/types": "^7.0.0", @@ -5374,7 +2074,6 @@ "version": "7.6.1", "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.1.tgz", "integrity": "sha512-bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew==", - "dev": true, "requires": { "@babel/types": "^7.0.0" } @@ -5383,51 +2082,62 @@ "version": "7.0.2", "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.0.2.tgz", "integrity": "sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg==", - "dev": true, "requires": { "@babel/parser": "^7.1.0", "@babel/types": "^7.0.0" } }, "@types/babel__traverse": { - "version": "7.0.9", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.9.tgz", - "integrity": "sha512-jEFQ8L1tuvPjOI8lnpaf73oCJe+aoxL6ygqSy6c8LcW98zaC+4mzWuQIRCEvKeCOu+lbqdXcg4Uqmm1S8AP1tw==", - "dev": true, + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.11.tgz", + "integrity": "sha512-ddHK5icION5U6q11+tV2f9Mo6CZVuT8GJKld2q9LqHSZbvLbH34Kcu2yFGckZut453+eQU6btIA3RihmnRgI+Q==", "requires": { "@babel/types": "^7.3.0" - }, - "dependencies": { - "@babel/types": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.7.tgz", - "integrity": "sha512-k2TreEHxFA4CjGkL+GYjRyx35W0Mr7DP5+9q6WMkyKXB+904bYmG40syjMFV0oLlhhFCwWl0vA0DyzTDkwAiJw==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - } } }, "@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 + "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==" + }, + "@types/eslint-visitor-keys": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", + "integrity": "sha512-OCutwjDZ4aFS6PB1UZ988C4YgwlBHJd6wCeQqaLdmadZ/7e+w79+hbMUFC1QXDNCmdyoRfAFdm0RypzwR+Qpag==" + }, + "@types/events": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@types/events/-/events-3.0.0.tgz", + "integrity": "sha512-EaObqwIvayI5a8dCzhFrjKzVwKLxjoG9T6Ppd5CEo07LRKfQ8Yokw54r5+Wq7FaBQ+yXRvQAYPrHwya1/UFt9g==" + }, + "@types/glob": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.1.tgz", + "integrity": "sha512-1Bh06cbWJUHMC97acuD6UMG29nMt0Aqz1vF3guLfG+kHHJhy3AyohZFFxYk2f7Q1SQIrNwvncxAE0N/9s70F2w==", + "requires": { + "@types/events": "*", + "@types/minimatch": "*", + "@types/node": "*" + } + }, + "@types/http-proxy": { + "version": "1.17.4", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.4.tgz", + "integrity": "sha512-IrSHl2u6AWXduUaDLqYpt45tLVCtYv7o4Z0s1KghBCDgIIS9oW5K1H8mZG/A2CfeLdEa7rTd1ACOiHBc1EMT2Q==", + "dev": true, + "requires": { + "@types/node": "*" + } }, "@types/istanbul-lib-coverage": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.1.tgz", - "integrity": "sha512-hRJD2ahnnpLgsj6KWMYSrmXkM3rm2Dl1qkx6IOFD5FnuNPXJIG5L0dhgKXCYTRMGzU4n0wImQ/xfmRc4POUFlg==", - "dev": true + "integrity": "sha512-hRJD2ahnnpLgsj6KWMYSrmXkM3rm2Dl1qkx6IOFD5FnuNPXJIG5L0dhgKXCYTRMGzU4n0wImQ/xfmRc4POUFlg==" }, "@types/istanbul-lib-report": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", - "dev": true, "requires": { "@types/istanbul-lib-coverage": "*" } @@ -5436,29 +2146,166 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-1.1.1.tgz", "integrity": "sha512-UpYjBi8xefVChsCoBpKShdxTllC9pwISirfoZsUa2AAdQg/Jd2KQGtSbw+ya7GPo7x/wAPlH6JBhKhAsXUEZNA==", - "dev": true, "requires": { "@types/istanbul-lib-coverage": "*", "@types/istanbul-lib-report": "*" } }, + "@types/json-schema": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.4.tgz", + "integrity": "sha512-8+KAKzEvSUdeo+kmqnKrqgeE+LcA0tjYWFY7RPProVYwnqDjukzO+3b6dLD56rYX5TdWejnEOLJYOIeh4CXKuA==" + }, + "@types/minimatch": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", + "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==" + }, "@types/node": { - "version": "12.7.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.7.2.tgz", - "integrity": "sha512-dyYO+f6ihZEtNPDcWNR1fkoTDf3zAK3lAABDze3mz6POyIercH0lEUawUFXlG8xaQZmm1yEBON/4TsYv/laDYg==", - "dev": true + "version": "13.13.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.5.tgz", + "integrity": "sha512-3ySmiBYJPqgjiHA7oEaIo2Rzz0HrOZ7yrNO5HWyaE5q0lQ3BppDZ3N53Miz8bw2I7gh1/zir2MGVZBvpb1zq9g==" + }, + "@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==" + }, + "@types/prop-types": { + "version": "15.7.3", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.3.tgz", + "integrity": "sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw==" + }, + "@types/q": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.2.tgz", + "integrity": "sha512-ce5d3q03Ex0sy4R14722Rmt6MT07Ua+k4FwDfdcToYJcMKNtRVQvJ6JCAPdAmAnbRb6CsX6aYb9m96NGod9uTw==" + }, + "@types/react": { + "version": "16.9.34", + "resolved": "https://registry.npmjs.org/@types/react/-/react-16.9.34.tgz", + "integrity": "sha512-8AJlYMOfPe1KGLKyHpflCg5z46n0b5DbRfqDksxBLBTUpB75ypDBAO9eCUcjNwE6LCUslwTz00yyG/X9gaVtow==", + "requires": { + "@types/prop-types": "*", + "csstype": "^2.2.0" + } + }, + "@types/react-dom": { + "version": "16.9.7", + "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-16.9.7.tgz", + "integrity": "sha512-GHTYhM8/OwUCf254WO5xqR/aqD3gC9kSTLpopWGpQLpnw23jk44RvMHsyUSEplvRJZdHxhJGMMLF0kCPYHPhQA==", + "requires": { + "@types/react": "*" + } }, "@types/stack-utils": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-1.0.1.tgz", - "integrity": "sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw==", - "dev": true + "integrity": "sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw==" + }, + "@types/testing-library__dom": { + "version": "6.14.0", + "resolved": "https://registry.npmjs.org/@types/testing-library__dom/-/testing-library__dom-6.14.0.tgz", + "integrity": "sha512-sMl7OSv0AvMOqn1UJ6j1unPMIHRXen0Ita1ujnMX912rrOcawe4f7wu0Zt9GIQhBhJvH2BaibqFgQ3lP+Pj2hA==", + "requires": { + "pretty-format": "^24.3.0" + } + }, + "@types/testing-library__react": { + "version": "9.1.3", + "resolved": "https://registry.npmjs.org/@types/testing-library__react/-/testing-library__react-9.1.3.tgz", + "integrity": "sha512-iCdNPKU3IsYwRK9JieSYAiX0+aYDXOGAmrC/3/M7AqqSDKnWWVv07X+Zk1uFSL7cMTUYzv4lQRfohucEocn5/w==", + "requires": { + "@types/react-dom": "*", + "@types/testing-library__dom": "*", + "pretty-format": "^25.1.0" + }, + "dependencies": { + "@jest/types": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.5.0.tgz", + "integrity": "sha512-OXD0RgQ86Tu3MazKo8bnrkDRaDXXMGUqd+kTtLtK1Zb7CRzQcaSRPPPV37SvYTdevXEBVxe0HXylEjs8ibkmCw==", + "requires": { + "@types/istanbul-lib-coverage": "^2.0.0", + "@types/istanbul-reports": "^1.1.1", + "@types/yargs": "^15.0.0", + "chalk": "^3.0.0" + } + }, + "@types/yargs": { + "version": "15.0.4", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", + "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", + "requires": { + "@types/yargs-parser": "*" + } + }, + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" + }, + "ansi-styles": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "requires": { + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "pretty-format": { + "version": "25.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.5.0.tgz", + "integrity": "sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ==", + "requires": { + "@jest/types": "^25.5.0", + "ansi-regex": "^5.0.0", + "ansi-styles": "^4.0.0", + "react-is": "^16.12.0" + } + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "requires": { + "has-flag": "^4.0.0" + } + } + } }, "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, + "version": "13.0.8", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-13.0.8.tgz", + "integrity": "sha512-XAvHLwG7UQ+8M4caKIH0ZozIOYay5fQkAgyIXegXT9jPtdIGdhga+sUEdAr1CiG46aB+c64xQEYyEzlwWVTNzA==", "requires": { "@types/yargs-parser": "*" } @@ -5466,14 +2313,74 @@ "@types/yargs-parser": { "version": "15.0.0", "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-15.0.0.tgz", - "integrity": "sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==", - "dev": true + "integrity": "sha512-FA/BWv8t8ZWJ+gEOnLLd8ygxH/2UFbAvgEonyfN6yWGLKc7zVjbpl2Y4CTjid9h2RfgPP6SEt6uHwEOply00yw==" + }, + "@typescript-eslint/eslint-plugin": { + "version": "2.31.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-2.31.0.tgz", + "integrity": "sha512-iIC0Pb8qDaoit+m80Ln/aaeu9zKQdOLF4SHcGLarSeY1gurW6aU4JsOPMjKQwXlw70MvWKZQc6S2NamA8SJ/gg==", + "requires": { + "@typescript-eslint/experimental-utils": "2.31.0", + "functional-red-black-tree": "^1.0.1", + "regexpp": "^3.0.0", + "tsutils": "^3.17.1" + } + }, + "@typescript-eslint/experimental-utils": { + "version": "2.31.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-2.31.0.tgz", + "integrity": "sha512-MI6IWkutLYQYTQgZ48IVnRXmLR/0Q6oAyJgiOror74arUMh7EWjJkADfirZhRsUMHeLJ85U2iySDwHTSnNi9vA==", + "requires": { + "@types/json-schema": "^7.0.3", + "@typescript-eslint/typescript-estree": "2.31.0", + "eslint-scope": "^5.0.0", + "eslint-utils": "^2.0.0" + } + }, + "@typescript-eslint/parser": { + "version": "2.31.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-2.31.0.tgz", + "integrity": "sha512-uph+w6xUOlyV2DLSC6o+fBDzZ5i7+3/TxAsH4h3eC64tlga57oMb96vVlXoMwjR/nN+xyWlsnxtbDkB46M2EPQ==", + "requires": { + "@types/eslint-visitor-keys": "^1.0.0", + "@typescript-eslint/experimental-utils": "2.31.0", + "@typescript-eslint/typescript-estree": "2.31.0", + "eslint-visitor-keys": "^1.1.0" + } + }, + "@typescript-eslint/typescript-estree": { + "version": "2.31.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-2.31.0.tgz", + "integrity": "sha512-vxW149bXFXXuBrAak0eKHOzbcu9cvi6iNcJDzEtOkRwGHxJG15chiAQAwhLOsk+86p9GTr/TziYvw+H9kMaIgA==", + "requires": { + "debug": "^4.1.1", + "eslint-visitor-keys": "^1.1.0", + "glob": "^7.1.6", + "is-glob": "^4.0.1", + "lodash": "^4.17.15", + "semver": "^6.3.0", + "tsutils": "^3.17.1" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + } + } }, "@webassemblyjs/ast": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.8.5.tgz", "integrity": "sha512-aJMfngIZ65+t71C3y2nBBg5FFG0Okt9m0XEgWZ7Ywgn1oMAT8cNwx00Uv1cQyHtidq0Xn94R4TAywO+LCQ+ZAQ==", - "dev": true, "requires": { "@webassemblyjs/helper-module-context": "1.8.5", "@webassemblyjs/helper-wasm-bytecode": "1.8.5", @@ -5483,26 +2390,22 @@ "@webassemblyjs/floating-point-hex-parser": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.8.5.tgz", - "integrity": "sha512-9p+79WHru1oqBh9ewP9zW95E3XAo+90oth7S5Re3eQnECGq59ly1Ri5tsIipKGpiStHsUYmY3zMLqtk3gTcOtQ==", - "dev": true + "integrity": "sha512-9p+79WHru1oqBh9ewP9zW95E3XAo+90oth7S5Re3eQnECGq59ly1Ri5tsIipKGpiStHsUYmY3zMLqtk3gTcOtQ==" }, "@webassemblyjs/helper-api-error": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.8.5.tgz", - "integrity": "sha512-Za/tnzsvnqdaSPOUXHyKJ2XI7PDX64kWtURyGiJJZKVEdFOsdKUCPTNEVFZq3zJ2R0G5wc2PZ5gvdTRFgm81zA==", - "dev": true + "integrity": "sha512-Za/tnzsvnqdaSPOUXHyKJ2XI7PDX64kWtURyGiJJZKVEdFOsdKUCPTNEVFZq3zJ2R0G5wc2PZ5gvdTRFgm81zA==" }, "@webassemblyjs/helper-buffer": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.8.5.tgz", - "integrity": "sha512-Ri2R8nOS0U6G49Q86goFIPNgjyl6+oE1abW1pS84BuhP1Qcr5JqMwRFT3Ah3ADDDYGEgGs1iyb1DGX+kAi/c/Q==", - "dev": true + "integrity": "sha512-Ri2R8nOS0U6G49Q86goFIPNgjyl6+oE1abW1pS84BuhP1Qcr5JqMwRFT3Ah3ADDDYGEgGs1iyb1DGX+kAi/c/Q==" }, "@webassemblyjs/helper-code-frame": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.8.5.tgz", "integrity": "sha512-VQAadSubZIhNpH46IR3yWO4kZZjMxN1opDrzePLdVKAZ+DFjkGD/rf4v1jap744uPVU6yjL/smZbRIIJTOUnKQ==", - "dev": true, "requires": { "@webassemblyjs/wast-printer": "1.8.5" } @@ -5510,14 +2413,12 @@ "@webassemblyjs/helper-fsm": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.8.5.tgz", - "integrity": "sha512-kRuX/saORcg8se/ft6Q2UbRpZwP4y7YrWsLXPbbmtepKr22i8Z4O3V5QE9DbZK908dh5Xya4Un57SDIKwB9eow==", - "dev": true + "integrity": "sha512-kRuX/saORcg8se/ft6Q2UbRpZwP4y7YrWsLXPbbmtepKr22i8Z4O3V5QE9DbZK908dh5Xya4Un57SDIKwB9eow==" }, "@webassemblyjs/helper-module-context": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.8.5.tgz", "integrity": "sha512-/O1B236mN7UNEU4t9X7Pj38i4VoU8CcMHyy3l2cV/kIF4U5KoHXDVqcDuOs1ltkac90IM4vZdHc52t1x8Yfs3g==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.8.5", "mamacro": "^0.0.3" @@ -5526,14 +2427,12 @@ "@webassemblyjs/helper-wasm-bytecode": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.8.5.tgz", - "integrity": "sha512-Cu4YMYG3Ddl72CbmpjU/wbP6SACcOPVbHN1dI4VJNJVgFwaKf1ppeFJrwydOG3NDHxVGuCfPlLZNyEdIYlQ6QQ==", - "dev": true + "integrity": "sha512-Cu4YMYG3Ddl72CbmpjU/wbP6SACcOPVbHN1dI4VJNJVgFwaKf1ppeFJrwydOG3NDHxVGuCfPlLZNyEdIYlQ6QQ==" }, "@webassemblyjs/helper-wasm-section": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.8.5.tgz", "integrity": "sha512-VV083zwR+VTrIWWtgIUpqfvVdK4ff38loRmrdDBgBT8ADXYsEZ5mPQ4Nde90N3UYatHdYoDIFb7oHzMncI02tA==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.8.5", "@webassemblyjs/helper-buffer": "1.8.5", @@ -5545,7 +2444,6 @@ "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz", "integrity": "sha512-aaCvQYrvKbY/n6wKHb/ylAJr27GglahUO89CcGXMItrOBqRarUMxWLJgxm9PJNuKULwN5n1csT9bYoMeZOGF3g==", - "dev": true, "requires": { "@xtuc/ieee754": "^1.2.0" } @@ -5554,7 +2452,6 @@ "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.8.5.tgz", "integrity": "sha512-plYUuUwleLIziknvlP8VpTgO4kqNaH57Y3JnNa6DLpu/sGcP6hbVdfdX5aHAV716pQBKrfuU26BJK29qY37J7A==", - "dev": true, "requires": { "@xtuc/long": "4.2.2" } @@ -5562,14 +2459,12 @@ "@webassemblyjs/utf8": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.8.5.tgz", - "integrity": "sha512-U7zgftmQriw37tfD934UNInokz6yTmn29inT2cAetAsaU9YeVCveWEwhKL1Mg4yS7q//NGdzy79nlXh3bT8Kjw==", - "dev": true + "integrity": "sha512-U7zgftmQriw37tfD934UNInokz6yTmn29inT2cAetAsaU9YeVCveWEwhKL1Mg4yS7q//NGdzy79nlXh3bT8Kjw==" }, "@webassemblyjs/wasm-edit": { "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.8.5.tgz", "integrity": "sha512-A41EMy8MWw5yvqj7MQzkDjU29K7UJq1VrX2vWLzfpRHt3ISftOXqrtojn7nlPsZ9Ijhp5NwuODuycSvfAO/26Q==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.8.5", "@webassemblyjs/helper-buffer": "1.8.5", @@ -5585,7 +2480,6 @@ "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.8.5.tgz", "integrity": "sha512-BCZBT0LURC0CXDzj5FXSc2FPTsxwp3nWcqXQdOZE4U7h7i8FqtFK5Egia6f9raQLpEKT1VL7zr4r3+QX6zArWg==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.8.5", "@webassemblyjs/helper-wasm-bytecode": "1.8.5", @@ -5598,7 +2492,6 @@ "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.8.5.tgz", "integrity": "sha512-HKo2mO/Uh9A6ojzu7cjslGaHaUU14LdLbGEKqTR7PBKwT6LdPtLLh9fPY33rmr5wcOMrsWDbbdCHq4hQUdd37Q==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.8.5", "@webassemblyjs/helper-buffer": "1.8.5", @@ -5610,7 +2503,6 @@ "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.8.5.tgz", "integrity": "sha512-pi0SYE9T6tfcMkthwcgCpL0cM9nRYr6/6fjgDtL6q/ZqKHdMWvxitRi5JcZ7RI4SNJJYnYNaWy5UUrHQy998lw==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.8.5", "@webassemblyjs/helper-api-error": "1.8.5", @@ -5624,7 +2516,6 @@ "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.8.5.tgz", "integrity": "sha512-daXC1FyKWHF1i11obK086QRlsMsY4+tIOKgBqI1lxAnkp9xe9YMcgOxm9kLe+ttjs5aWV2KKE1TWJCN57/Btsg==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.8.5", "@webassemblyjs/floating-point-hex-parser": "1.8.5", @@ -5638,7 +2529,6 @@ "version": "1.8.5", "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.8.5.tgz", "integrity": "sha512-w0U0pD4EhlnvRyeJzBqaVSJAo9w/ce7/WPogeXLzGkO6hzhr4GnQIZ4W4uUt5b9ooAaXPtnXlj0gzsXEOUNYMg==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.8.5", "@webassemblyjs/wast-parser": "1.8.5", @@ -5648,20 +2538,17 @@ "@xtuc/ieee754": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" }, "@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 + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==" }, "abab": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.3.tgz", - "integrity": "sha512-tsFzPpcttalNjFBCFMqsKYQcWxxen1pgJR56by//QwvJc4/OUS3kPOOttx2tSIfjsylB0pYu7f5D3K1RCxUnUg==", - "dev": true + "integrity": "sha512-tsFzPpcttalNjFBCFMqsKYQcWxxen1pgJR56by//QwvJc4/OUS3kPOOttx2tSIfjsylB0pYu7f5D3K1RCxUnUg==" }, "abbrev": { "version": "1.1.1", @@ -5669,26 +2556,23 @@ "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" }, "accepts": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.5.tgz", - "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", - "dev": true, + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", "requires": { - "mime-types": "~2.1.18", - "negotiator": "0.6.1" + "mime-types": "~2.1.24", + "negotiator": "0.6.2" } }, "acorn": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz", - "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==", - "dev": true + "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==" }, "acorn-globals": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.3.4.tgz", "integrity": "sha512-clfQEh21R+D0leSbUdWf3OcfqyaCSAQ8Ryq00bofSekfr9W8u1jyYZo6ir0xu9Gtcf7BjcHJpnbZH7JOCpP60A==", - "dev": true, "requires": { "acorn": "^6.0.1", "acorn-walk": "^6.0.1" @@ -5697,22 +2581,75 @@ "acorn": { "version": "6.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", - "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", - "dev": true + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==" } } }, "acorn-jsx": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.2.0.tgz", - "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==", - "dev": true + "integrity": "sha512-HiUX/+K2YpkpJ+SzBffkM/AQ2YE03S0U1kjTLVpoJdhZMOWy8qvXVN9JdLqv2QsaQ6MPYQIuNmwD8zOiYUofLQ==" }, "acorn-walk": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.2.0.tgz", - "integrity": "sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==", - "dev": true + "integrity": "sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==" + }, + "address": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/address/-/address-1.1.2.tgz", + "integrity": "sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA==" + }, + "adjust-sourcemap-loader": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-2.0.0.tgz", + "integrity": "sha512-4hFsTsn58+YjrU9qKzML2JSSDqKvN8mUGQ0nNIrfPi8hmIONT4L3uUaT6MKdMsZ9AjsU6D2xDkZxCkbQPxChrA==", + "requires": { + "assert": "1.4.1", + "camelcase": "5.0.0", + "loader-utils": "1.2.3", + "object-path": "0.11.4", + "regex-parser": "2.2.10" + }, + "dependencies": { + "camelcase": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.0.0.tgz", + "integrity": "sha512-faqwZqnWxbxn+F1d399ygeamQNy3lPp/H9H6rNrqYh4FSVCtcY+3cub1MxA8o9mDd55mM8Aghuu/kuyYA6VTsA==" + }, + "emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=" + }, + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "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==", + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^2.0.0", + "json5": "^1.0.1" + } + } + } + }, + "aggregate-error": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.0.1.tgz", + "integrity": "sha512-quoaXsZ9/BLNae5yiNoUz+Nhkwz83GhWwtYFglcjEQB2NDHCIpApbqXxIFnm4Pq/Nvhrsq5sYJFyohrrxnTGAA==", + "requires": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + } }, "airbnb-prop-types": { "version": "2.15.0", @@ -5730,467 +2667,93 @@ "prop-types": "^15.7.2", "prop-types-exact": "^1.2.0", "react-is": "^16.9.0" - }, - "dependencies": { - "function.prototype.name": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.1.tgz", - "integrity": "sha512-e1NzkiJuw6xqVH7YSdiW/qDHebcmMhPNe6w+4ZYYEg0VA+LaLzx37RimbPLuonHhYGFGPx1ME2nSi74JiaCr/Q==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "function-bind": "^1.1.1", - "functions-have-names": "^1.1.1", - "is-callable": "^1.1.4" - } - }, - "object.entries": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.0.tgz", - "integrity": "sha512-l+H6EQ8qzGRxbkHOd5I/aHRhHDKoQXQ8g0BYt4uSweQU1/J6dZUOyWh9a2Vky35YCKjzmgxOzta2hH6kf9HuXA==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.12.0", - "function-bind": "^1.1.1", - "has": "^1.0.3" - } - }, - "prop-types": { - "version": "15.7.2", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", - "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", - "dev": true, - "requires": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.8.1" - } - }, - "react-is": { - "version": "16.9.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.9.0.tgz", - "integrity": "sha512-tJBzzzIgnnRfEm046qRcURvwQnZVXmuCbscxUO5RWrGTXpon2d4c8mI0D8WE6ydVIm29JiLB6+RslkIvym9Rjw==", - "dev": true - } } }, "ajv": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", - "dev": true, + "version": "6.12.2", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.2.tgz", + "integrity": "sha512-k+V+hzjm5q/Mr8ef/1Y9goCmlsK4I6Sm74teeyGvFk1XrOsbsKLjEdrvny42CZ+a8sXbk8KWpY/bDwS+FLL2UQ==", "requires": { - "co": "^4.6.0", - "fast-deep-equal": "^1.0.0", + "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.3.0" + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, "ajv-errors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.0.tgz", - "integrity": "sha1-7PAh+hCP0X37Xms4Py3SM+Mf/Fk=", - "dev": true + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==" }, "ajv-keywords": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.2.0.tgz", - "integrity": "sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo=", - "dev": true + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.1.tgz", + "integrity": "sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ==" }, - "amdefine": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", - "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", - "dev": true + "alphanum-sort": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz", + "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=" + }, + "ansi-colors": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", + "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==" }, "ansi-escapes": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz", - "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==", - "dev": true + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", + "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "requires": { + "type-fest": "^0.11.0" + }, + "dependencies": { + "type-fest": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", + "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==" + } + } }, "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 + "integrity": "sha1-gTWEAhliqenm/QOflA0S9WynhZ4=" }, "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==" }, "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "^1.9.0" + } }, "ansi-to-html": { - "version": "0.6.11", - "resolved": "https://registry.npmjs.org/ansi-to-html/-/ansi-to-html-0.6.11.tgz", - "integrity": "sha512-88XZtrcwrfkyn6fGstHnkaF1kl7hGtNCYh4vSmItgEV+6JnQHryDBf7udF4f2RhTRQmYvJvPcTtqgaqrxzc9oA==", + "version": "0.6.14", + "resolved": "https://registry.npmjs.org/ansi-to-html/-/ansi-to-html-0.6.14.tgz", + "integrity": "sha512-7ZslfB1+EnFSDO5Ju+ue5Y6It19DRnZXWv8jrGHgIlPna5Mh4jz7BV5jCbQneXNFurQcKoolaaAjHtgSBfOIuA==", "requires": { - "entities": "^1.1.1" + "entities": "^1.1.2" } }, "anymatch": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, "requires": { "micromatch": "^3.1.4", "normalize-path": "^2.1.1" - }, - "dependencies": { - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "dev": true, - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "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" - }, - "dependencies": { - "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" - } - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "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-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - }, - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true - }, - "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" - } - } } }, "aproba": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true - }, - "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", - "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", - "dev": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" }, "argparse": { "version": "1.0.10", @@ -6201,26 +2764,38 @@ } }, "aria-query": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-3.0.0.tgz", - "integrity": "sha1-ZbP8wcoRVajJrmTW7uKX8V1RM8w=", - "dev": true, + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-4.0.2.tgz", + "integrity": "sha512-S1G1V790fTaigUSM/Gd0NngzEfiMy9uTUfMyHhKhVyy4cH5O/eTuR01ydhGL0z4Za1PXFTRGH3qL8VhUQuEO5w==", "requires": { - "ast-types-flow": "0.0.7", - "commander": "^2.11.0" + "@babel/runtime": "^7.7.4", + "@babel/runtime-corejs3": "^7.7.4" } }, + "arity-n": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/arity-n/-/arity-n-1.0.4.tgz", + "integrity": "sha1-2edrEXM+CFacCEeuezmyhgswt0U=" + }, + "arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=" + }, "arr-flatten": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", - "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", - "dev": true + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==" + }, + "arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=" }, "array-equal": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz", - "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=", - "dev": true + "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=" }, "array-filter": { "version": "1.0.0", @@ -6234,33 +2809,25 @@ "integrity": "sha1-bI4obRHtdoMn+OYuzuhzU8o+eLg=", "dev": true }, - "array-find-index": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", - "dev": true - }, "array-flatten": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", - "dev": true + "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==" }, "array-includes": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.0.3.tgz", - "integrity": "sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=", - "dev": true, + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.1.tgz", + "integrity": "sha512-c2VXaCHl7zPsvpkFsw4nxvFie4fh1ur9bpcgsVkIjqn0H/Xwdg+7fv3n2r/isyS8EBj5b06M9kHyZuIr4El6WQ==", "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.7.0" + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0", + "is-string": "^1.0.5" } }, "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" } @@ -6268,63 +2835,46 @@ "array-uniq": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", - "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", - "dev": true + "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" }, "array-unique": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true + "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" }, "array.prototype.find": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/array.prototype.find/-/array.prototype.find-2.1.0.tgz", - "integrity": "sha512-Wn41+K1yuO5p7wRZDl7890c3xvv5UBrfVXTVIe28rSQb6LS0fZMDrQB6PAcxQFRFy6vJTLDc3A2+3CjQdzVKRg==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/array.prototype.find/-/array.prototype.find-2.1.1.tgz", + "integrity": "sha512-mi+MYNJYLTx2eNYy+Yh6raoQacCsNeeMUaspFPh9Y141lFSsWxxB8V9mM2ye+eqiRs917J6/pJ4M9ZPzenWckA==", "dev": true, "requires": { "define-properties": "^1.1.3", - "es-abstract": "^1.13.0" - }, - "dependencies": { - "es-abstract": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.13.0.tgz", - "integrity": "sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.0", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "is-callable": "^1.1.4", - "is-regex": "^1.0.4", - "object-keys": "^1.0.12" - } - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - } + "es-abstract": "^1.17.4" } }, "array.prototype.flat": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.1.tgz", - "integrity": "sha512-rVqIs330nLJvfC7JqYvEWwqVr5QjYF1ib02i3YJtR/fICO6527Tjpc/e4Mvmxh3GIePPreRXMdaGyC99YphWEw==", - "dev": true, + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.3.tgz", + "integrity": "sha512-gBlRZV0VSmfPIeWfuuy56XZMvbVfbEUnOXUvt3F/eUUUSyzlgLxhEX4YAEpxNAogRGehPSnfXyPtYyKAhkzQhQ==", "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.10.0", - "function-bind": "^1.1.1" + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" } }, + "arrify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" + }, + "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==", - "dev": true, "requires": { "safer-buffer": "~2.1.0" } @@ -6333,80 +2883,69 @@ "version": "4.10.1", "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", - "dev": true, "requires": { "bn.js": "^4.0.0", "inherits": "^2.0.1", "minimalistic-assert": "^1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + } } }, "assert": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/assert/-/assert-1.4.1.tgz", "integrity": "sha1-mZEtWRg2tab1s0XA8H7vwI/GXZE=", - "dev": true, "requires": { "util": "0.10.3" - }, - "dependencies": { - "inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", - "dev": true - }, - "util": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", - "dev": true, - "requires": { - "inherits": "2.0.1" - } - } } }, "assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" }, "assign-symbols": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", - "dev": true + "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" }, "ast-types-flow": { "version": "0.0.7", "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", - "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0=", - "dev": true + "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0=" }, "astral-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", - "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", - "dev": true + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==" + }, + "async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "requires": { + "lodash": "^4.17.14" + } }, "async-each": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", - "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", - "dev": true + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", + "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==" }, - "async-foreach": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz", - "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=", - "dev": true + "async-limiter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", + "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==" }, "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" }, "atob": { "version": "2.1.2", @@ -6421,17 +2960,29 @@ "core-js": "^2.5.0" } }, + "autoprefixer": { + "version": "9.7.6", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.7.6.tgz", + "integrity": "sha512-F7cYpbN7uVVhACZTeeIeealwdGM6wMtfWARVLTy5xmKtgVdBNJvbDRoCK3YO1orcs7gv/KwYlb3iXwu9Ug9BkQ==", + "requires": { + "browserslist": "^4.11.1", + "caniuse-lite": "^1.0.30001039", + "chalk": "^2.4.2", + "normalize-range": "^0.1.2", + "num2fraction": "^1.2.2", + "postcss": "^7.0.27", + "postcss-value-parser": "^4.0.3" + } + }, "aws-sign2": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", - "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", - "dev": true + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" }, "aws4": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", - "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", - "dev": true + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.1.tgz", + "integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==" }, "axios": { "version": "0.18.1", @@ -6440,83 +2991,94 @@ "requires": { "follow-redirects": "1.5.10", "is-buffer": "^2.0.2" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "requires": { - "ms": "2.0.0" - } - }, - "follow-redirects": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz", - "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==", - "requires": { - "debug": "=3.1.0" - } - }, - "is-buffer": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.3.tgz", - "integrity": "sha512-U15Q7MXTuZlrbymiz95PJpZxu8IlipAp4dtS3wOdgPXx3mqBnslrWU14kxfHB+Py/+2PVKSr37dMAgM2A4uArw==" - } } }, "axobject-query": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.0.2.tgz", - "integrity": "sha512-MCeek8ZH7hKyO1rWUbKNQBbl4l2eY0ntk7OGi+q0RlafrCnfPxC06WZA+uebCfmYp4mNU9jRBP1AhGyf8+W3ww==", - "dev": true, - "requires": { - "ast-types-flow": "0.0.7" - } + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-2.1.2.tgz", + "integrity": "sha512-ICt34ZmrVt8UQnvPl6TVyDTkmhXmAyAT4Jh5ugfGUX4MOrZ+U/ZY6/sdylRw3qGNr9Ub5AJsaHeDMzNLehRdOQ==" }, "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, "requires": { "chalk": "^1.1.3", "esutils": "^2.0.2", "js-tokens": "^3.0.2" - } - }, - "babel-core": { - "version": "7.0.0-bridge.0", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-7.0.0-bridge.0.tgz", - "integrity": "sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==", - "dev": true - }, - "babel-eslint": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.0.1.tgz", - "integrity": "sha512-z7OT1iNV+TjOwHNLLyJk+HN+YVWX+CLE6fPD2SymJZOZQBs+QIexFjhm4keGTm8MW9xr4EC9Q0PbaLB24V5GoQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@babel/parser": "^7.0.0", - "@babel/traverse": "^7.0.0", - "@babel/types": "^7.0.0", - "eslint-scope": "3.7.1", - "eslint-visitor-keys": "^1.0.0" }, "dependencies": { - "eslint-scope": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.1.tgz", - "integrity": "sha1-PWPD7f2gLgbgGkUq2IyqzHzctug=", - "dev": true, + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" + }, + "chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" + "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" } + }, + "has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "requires": { + "ansi-regex": "^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=" + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "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=" } } }, + "babel-eslint": { + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", + "integrity": "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==", + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.7.0", + "@babel/traverse": "^7.7.0", + "@babel/types": "^7.7.0", + "eslint-visitor-keys": "^1.0.0", + "resolve": "^1.12.0" + } + }, + "babel-extract-comments": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/babel-extract-comments/-/babel-extract-comments-1.0.0.tgz", + "integrity": "sha512-qWWzi4TlddohA91bFwgt6zO/J0X+io7Qp184Fw0m2JYRSTZnJbFR8+07KmzudHCZgOiKRCrjhylwv9Xd8gfhVQ==", + "requires": { + "babylon": "^6.18.0" + } + }, "babel-generator": { "version": "6.26.1", "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", @@ -6533,6 +3095,12 @@ "trim-right": "^1.0.1" }, "dependencies": { + "jsesc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", + "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", + "dev": true + }, "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", @@ -6542,89 +3110,35 @@ } }, "babel-jest": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-25.1.0.tgz", - "integrity": "sha512-tz0VxUhhOE2y+g8R2oFrO/2VtVjA1lkJeavlhExuRBg3LdNJY9gwQ+Vcvqt9+cqy71MCTJhewvTB7Qtnnr9SWg==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-24.9.0.tgz", + "integrity": "sha512-ntuddfyiN+EhMw58PTNL1ph4C9rECiQXjI4nMMBKBaNjXvqLdkXpPRcMSr4iyBrJg/+wz9brFUD6RhOAT6r4Iw==", "requires": { - "@jest/transform": "^25.1.0", - "@jest/types": "^25.1.0", + "@jest/transform": "^24.9.0", + "@jest/types": "^24.9.0", "@types/babel__core": "^7.1.0", - "babel-plugin-istanbul": "^6.0.0", - "babel-preset-jest": "^25.1.0", - "chalk": "^3.0.0", - "slash": "^3.0.0" - }, - "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "babel-plugin-istanbul": "^5.1.0", + "babel-preset-jest": "^24.9.0", + "chalk": "^2.4.2", + "slash": "^2.0.0" } }, "babel-loader": { - "version": "8.0.6", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.0.6.tgz", - "integrity": "sha512-4BmWKtBOBm13uoUwd08UwjZlaw3O9GWf456R9j+5YykFZ6LUIjIKLc0zEZf+hauxPOJs96C8k6FvYD09vWzhYw==", - "dev": true, + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.1.0.tgz", + "integrity": "sha512-7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw==", "requires": { - "find-cache-dir": "^2.0.0", - "loader-utils": "^1.0.2", - "mkdirp": "^0.5.1", - "pify": "^4.0.1" + "find-cache-dir": "^2.1.0", + "loader-utils": "^1.4.0", + "mkdirp": "^0.5.3", + "pify": "^4.0.1", + "schema-utils": "^2.6.5" }, "dependencies": { "pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" } } }, @@ -6638,10 +3152,9 @@ } }, "babel-plugin-dynamic-import-node": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz", - "integrity": "sha512-o6qFkpeQEBxcqt0XYlWzAVxNCSCZdUgcR8IRlhD/8DylxjjO4foPcvTW0GGKa/cVt3rvxZ7o5ippJ+/0nvLhlQ==", - "dev": true, + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", "requires": { "object.assign": "^4.1.0" } @@ -6673,52 +3186,114 @@ } }, "babel-plugin-istanbul": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.0.0.tgz", - "integrity": "sha512-AF55rZXpe7trmEylbaE1Gv54wn6rwU03aptvRoVIGP8YykoSxqdVLV1TfwflBCE/QtHmqtP8SWlTENqbK8GCSQ==", - "dev": true, + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-5.2.0.tgz", + "integrity": "sha512-5LphC0USA8t4i1zCtjbbNb6jJj/9+X6P37Qfirc/70EQ34xKlMW+a1RHGwxGI+SwWpNwZ27HqvzAobeqaXwiZw==", "requires": { "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^4.0.0", - "test-exclude": "^6.0.0" + "find-up": "^3.0.0", + "istanbul-lib-instrument": "^3.3.0", + "test-exclude": "^5.2.3" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.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==" + } } }, "babel-plugin-jest-hoist": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-25.1.0.tgz", - "integrity": "sha512-oIsopO41vW4YFZ9yNYoLQATnnN46lp+MZ6H4VvPKFkcc2/fkl3CfE/NZZSmnEIEsJRmJAgkVEK0R7Zbl50CpTw==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-24.9.0.tgz", + "integrity": "sha512-2EMA2P8Vp7lG0RAzr4HXqtYwacfMErOuv1U3wrvxHX6rD1sV6xS3WXG3r8TRQ2r6w8OhvSdWt+z41hQNwNm3Xw==", "requires": { "@types/babel__traverse": "^7.0.6" } }, "babel-plugin-macros": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-2.4.2.tgz", - "integrity": "sha512-NBVpEWN4OQ/bHnu1fyDaAaTPAjnhXCEPqr1RwqxrU7b6tZ2hypp+zX4hlNfmVGfClD5c3Sl6Hfj5TJNF5VG5aA==", + "version": "2.8.0", + "resolved": "https://registry.npmjs.org/babel-plugin-macros/-/babel-plugin-macros-2.8.0.tgz", + "integrity": "sha512-SEP5kJpfGYqYKpBrj5XU3ahw5p5GOHJ0U5ssOSQ/WBVdwkD2Dzlce95exQTs3jOVWPPKLBN2rlEWkCK7dSmLvg==", "requires": { - "cosmiconfig": "^5.0.5", - "resolve": "^1.8.1" + "@babel/runtime": "^7.7.2", + "cosmiconfig": "^6.0.0", + "resolve": "^1.12.0" } }, + "babel-plugin-named-asset-import": { + "version": "0.3.6", + "resolved": "https://registry.npmjs.org/babel-plugin-named-asset-import/-/babel-plugin-named-asset-import-0.3.6.tgz", + "integrity": "sha512-1aGDUfL1qOOIoqk9QKGIo2lANk+C7ko/fqH0uIyC71x3PEGz0uVP8ISgfEsFuG+FKmjHTvFK/nNM8dowpmUxLA==" + }, "babel-plugin-styled-components": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-1.10.0.tgz", - "integrity": "sha512-sQVKG8irFXx14ZfaK1bBePirfkacl3j8nZwSZK+ZjsbnadRHKQTbhXbe/RB1vT6Vgkz45E+V95LBq4KqdhZUNw==", + "version": "1.10.7", + "resolved": "https://registry.npmjs.org/babel-plugin-styled-components/-/babel-plugin-styled-components-1.10.7.tgz", + "integrity": "sha512-MBMHGcIA22996n9hZRf/UJLVVgkEOITuR2SvjHLb5dSTUyR4ZRGn+ngITapes36FI3WLxZHfRhkA1ffHxihOrg==", "requires": { "@babel/helper-annotate-as-pure": "^7.0.0", "@babel/helper-module-imports": "^7.0.0", "babel-plugin-syntax-jsx": "^6.18.0", - "lodash": "^4.17.10" + "lodash": "^4.17.11" } }, "babel-plugin-syntax-jsx": { "version": "6.18.0", - "resolved": "http://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", "integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=" }, + "babel-plugin-syntax-object-rest-spread": { + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", + "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=" + }, + "babel-plugin-transform-object-rest-spread": { + "version": "6.26.0", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz", + "integrity": "sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY=", + "requires": { + "babel-plugin-syntax-object-rest-spread": "^6.8.0", + "babel-runtime": "^6.26.0" + } + }, + "babel-plugin-transform-react-remove-prop-types": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-remove-prop-types/-/babel-plugin-transform-react-remove-prop-types-0.4.24.tgz", + "integrity": "sha512-eqj0hVcJUR57/Ug2zE1Yswsw4LhuqqHhD+8v120T1cl3kjg76QwtyBrdIk4WVwK+lAhBJVYCd/v+4nc4y+8JsA==" + }, "babel-polyfill": { "version": "6.23.0", "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.23.0.tgz", @@ -6739,14 +3314,134 @@ } }, "babel-preset-jest": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-25.1.0.tgz", - "integrity": "sha512-eCGn64olaqwUMaugXsTtGAM2I0QTahjEtnRu0ql8Ie+gDWAc1N6wqN0k2NilnyTunM69Pad7gJY7LOtwLimoFQ==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-24.9.0.tgz", + "integrity": "sha512-izTUuhE4TMfTRPF92fFwD2QfdXaZW08qvWTFCI51V8rW5x00UuPgc3ajRoWofXOuxjfcOM5zzSYsQS3H8KGCAg==", "requires": { - "@babel/plugin-syntax-bigint": "^7.0.0", "@babel/plugin-syntax-object-rest-spread": "^7.0.0", - "babel-plugin-jest-hoist": "^25.1.0" + "babel-plugin-jest-hoist": "^24.9.0" + } + }, + "babel-preset-react-app": { + "version": "9.1.2", + "resolved": "https://registry.npmjs.org/babel-preset-react-app/-/babel-preset-react-app-9.1.2.tgz", + "integrity": "sha512-k58RtQOKH21NyKtzptoAvtAODuAJJs3ZhqBMl456/GnXEQ/0La92pNmwgWoMn5pBTrsvk3YYXdY7zpY4e3UIxA==", + "requires": { + "@babel/core": "7.9.0", + "@babel/plugin-proposal-class-properties": "7.8.3", + "@babel/plugin-proposal-decorators": "7.8.3", + "@babel/plugin-proposal-nullish-coalescing-operator": "7.8.3", + "@babel/plugin-proposal-numeric-separator": "7.8.3", + "@babel/plugin-proposal-optional-chaining": "7.9.0", + "@babel/plugin-transform-flow-strip-types": "7.9.0", + "@babel/plugin-transform-react-display-name": "7.8.3", + "@babel/plugin-transform-runtime": "7.9.0", + "@babel/preset-env": "7.9.0", + "@babel/preset-react": "7.9.1", + "@babel/preset-typescript": "7.9.0", + "@babel/runtime": "7.9.0", + "babel-plugin-macros": "2.8.0", + "babel-plugin-transform-react-remove-prop-types": "0.4.24" + }, + "dependencies": { + "@babel/preset-env": { + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.9.0.tgz", + "integrity": "sha512-712DeRXT6dyKAM/FMbQTV/FvRCms2hPCx+3weRjZ8iQVQWZejWWk1wwG6ViWMyqb/ouBbGOl5b6aCk0+j1NmsQ==", + "requires": { + "@babel/compat-data": "^7.9.0", + "@babel/helper-compilation-targets": "^7.8.7", + "@babel/helper-module-imports": "^7.8.3", + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/plugin-proposal-async-generator-functions": "^7.8.3", + "@babel/plugin-proposal-dynamic-import": "^7.8.3", + "@babel/plugin-proposal-json-strings": "^7.8.3", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.8.3", + "@babel/plugin-proposal-numeric-separator": "^7.8.3", + "@babel/plugin-proposal-object-rest-spread": "^7.9.0", + "@babel/plugin-proposal-optional-catch-binding": "^7.8.3", + "@babel/plugin-proposal-optional-chaining": "^7.9.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.8.3", + "@babel/plugin-syntax-async-generators": "^7.8.0", + "@babel/plugin-syntax-dynamic-import": "^7.8.0", + "@babel/plugin-syntax-json-strings": "^7.8.0", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0", + "@babel/plugin-syntax-numeric-separator": "^7.8.0", + "@babel/plugin-syntax-object-rest-spread": "^7.8.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.0", + "@babel/plugin-syntax-top-level-await": "^7.8.3", + "@babel/plugin-transform-arrow-functions": "^7.8.3", + "@babel/plugin-transform-async-to-generator": "^7.8.3", + "@babel/plugin-transform-block-scoped-functions": "^7.8.3", + "@babel/plugin-transform-block-scoping": "^7.8.3", + "@babel/plugin-transform-classes": "^7.9.0", + "@babel/plugin-transform-computed-properties": "^7.8.3", + "@babel/plugin-transform-destructuring": "^7.8.3", + "@babel/plugin-transform-dotall-regex": "^7.8.3", + "@babel/plugin-transform-duplicate-keys": "^7.8.3", + "@babel/plugin-transform-exponentiation-operator": "^7.8.3", + "@babel/plugin-transform-for-of": "^7.9.0", + "@babel/plugin-transform-function-name": "^7.8.3", + "@babel/plugin-transform-literals": "^7.8.3", + "@babel/plugin-transform-member-expression-literals": "^7.8.3", + "@babel/plugin-transform-modules-amd": "^7.9.0", + "@babel/plugin-transform-modules-commonjs": "^7.9.0", + "@babel/plugin-transform-modules-systemjs": "^7.9.0", + "@babel/plugin-transform-modules-umd": "^7.9.0", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.8.3", + "@babel/plugin-transform-new-target": "^7.8.3", + "@babel/plugin-transform-object-super": "^7.8.3", + "@babel/plugin-transform-parameters": "^7.8.7", + "@babel/plugin-transform-property-literals": "^7.8.3", + "@babel/plugin-transform-regenerator": "^7.8.7", + "@babel/plugin-transform-reserved-words": "^7.8.3", + "@babel/plugin-transform-shorthand-properties": "^7.8.3", + "@babel/plugin-transform-spread": "^7.8.3", + "@babel/plugin-transform-sticky-regex": "^7.8.3", + "@babel/plugin-transform-template-literals": "^7.8.3", + "@babel/plugin-transform-typeof-symbol": "^7.8.4", + "@babel/plugin-transform-unicode-regex": "^7.8.3", + "@babel/preset-modules": "^0.1.3", + "@babel/types": "^7.9.0", + "browserslist": "^4.9.1", + "core-js-compat": "^3.6.2", + "invariant": "^2.2.2", + "levenary": "^1.1.1", + "semver": "^5.5.0" + } + }, + "@babel/preset-react": { + "version": "7.9.1", + "resolved": "https://registry.npmjs.org/@babel/preset-react/-/preset-react-7.9.1.tgz", + "integrity": "sha512-aJBYF23MPj0RNdp/4bHnAP0NVqqZRr9kl0NAOP4nJCex6OYVio59+dnQzsAWFuogdLyeaKA1hmfUIVZkY5J+TQ==", + "requires": { + "@babel/helper-plugin-utils": "^7.8.3", + "@babel/plugin-transform-react-display-name": "^7.8.3", + "@babel/plugin-transform-react-jsx": "^7.9.1", + "@babel/plugin-transform-react-jsx-development": "^7.9.0", + "@babel/plugin-transform-react-jsx-self": "^7.9.0", + "@babel/plugin-transform-react-jsx-source": "^7.9.0" + } + }, + "@babel/runtime": { + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.9.0.tgz", + "integrity": "sha512-cTIudHnzuWLS56ik4DnRnqqNf8MkdUzV4iFFI1h7Jo9xvrpQROYaAnaSd2mHLQAzzZAPfATynX5ord6YlNYNMA==", + "requires": { + "regenerator-runtime": "^0.13.4" + } + }, + "regenerator-runtime": { + "version": "0.13.5", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz", + "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==" + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } } }, "babel-runtime": { @@ -6781,20 +3476,17 @@ "babylon": { "version": "6.18.0", "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true + "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" }, "balanced-match": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" }, "base": { "version": "0.11.2", "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", - "dev": true, "requires": { "cache-base": "^1.0.1", "class-utils": "^0.3.5", @@ -6809,7 +3501,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, "requires": { "is-descriptor": "^1.0.0" } @@ -6818,7 +3509,6 @@ "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" } @@ -6827,7 +3517,6 @@ "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" } @@ -6836,43 +3525,33 @@ "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" } }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - }, "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", - "dev": true + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" } } }, "base64-js": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.0.tgz", - "integrity": "sha512-ccav/yGvoa80BQDljCxsmmQ3Xvx60/UpBIij5QN21W3wBi/hhIC9OoO+KLpu9IJTS9j4DRVJ3aDDF9cMSoa2lw==", - "dev": true + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", + "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==" }, "batch": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", - "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", - "dev": true + "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=" }, "bcp-47": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/bcp-47/-/bcp-47-1.0.4.tgz", - "integrity": "sha512-KquGHKBVXDBnOOntjqkqINNyNX0eKhDXYbK+83pDJXWO7lV6D7Ey1IQNIDbVQOHxNv6rdynnfS/RfPLVz5X0WA==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/bcp-47/-/bcp-47-1.0.7.tgz", + "integrity": "sha512-XywQRckEigetKCTuxsaecL/68psvr7ayWsPq6LLwoz5k+qwpwnpcTMyU/Gs+JO3u8J+BxofouYCS+s9ACiNyrw==", "dev": true, "requires": { "is-alphabetical": "^1.0.0", @@ -6884,70 +3563,64 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", - "dev": true, "requires": { "tweetnacl": "^0.14.3" } }, "big.js": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz", - "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==", - "dev": true + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==" }, "binary-extensions": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.12.0.tgz", - "integrity": "sha512-DYWGk01lDcxeS/K9IHPGWfT8PsJmbXRtRd2Sx72Tnb8pcYZQFF1oSDb8hJtS1vhp212q1Rzi5dUf9+nq0o9UIg==", - "dev": true - }, - "block-stream": { - "version": "0.0.9", - "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", - "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=", - "dev": true, - "requires": { - "inherits": "~2.0.0" - } + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.0.0.tgz", + "integrity": "sha512-Phlt0plgpIIBOGTT/ehfFnbNlfsDEiqmzE2KRXoX1bLIlir4X/MR+zSyBEkL05ffWgnRSf/DXv+WrUAVr93/ow==" }, "bluebird": { "version": "3.7.2", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", - "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", - "dev": true + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" }, "bn.js": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==", - "dev": true + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.1.tgz", + "integrity": "sha512-IUTD/REb78Z2eodka1QZyyEk66pciRcP6Sroka0aI3tG/iwIdYLrBD62RsubR7vqdt3WyX8p4jxeatzmRSphtA==" }, "body-parser": { - "version": "1.18.3", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz", - "integrity": "sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ=", - "dev": true, + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", + "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", "requires": { - "bytes": "3.0.0", + "bytes": "3.1.0", "content-type": "~1.0.4", "debug": "2.6.9", "depd": "~1.1.2", - "http-errors": "~1.6.3", - "iconv-lite": "0.4.23", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", "on-finished": "~2.3.0", - "qs": "6.5.2", - "raw-body": "2.3.3", - "type-is": "~1.6.16" + "qs": "6.7.0", + "raw-body": "2.4.0", + "type-is": "~1.6.17" }, "dependencies": { - "iconv-lite": { - "version": "0.4.23", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", - "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", - "dev": true, + "bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "requires": { - "safer-buffer": ">= 2.1.2 < 3" + "ms": "2.0.0" } + }, + "qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" } } }, @@ -6955,7 +3628,6 @@ "version": "3.5.0", "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", - "dev": true, "requires": { "array-flatten": "^2.1.0", "deep-equal": "^1.0.1", @@ -6968,14 +3640,12 @@ "boolbase": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", - "dev": true + "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=" }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -6985,7 +3655,6 @@ "version": "2.3.2", "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, "requires": { "arr-flatten": "^1.1.0", "array-unique": "^0.3.2", @@ -7003,36 +3672,26 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "requires": { "is-extendable": "^0.1.0" } - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true } } }, "brorand": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "dev": true + "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=" }, "browser-process-hrtime": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", - "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", - "dev": true + "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==" }, "browser-resolve": { "version": "1.11.3", "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz", "integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==", - "dev": true, "requires": { "resolve": "1.1.7" }, @@ -7040,16 +3699,14 @@ "resolve": { "version": "1.1.7", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", - "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", - "dev": true + "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=" } } }, "browserify-aes": { "version": "1.2.0", - "resolved": "http://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", + "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "dev": true, "requires": { "buffer-xor": "^1.0.3", "cipher-base": "^1.0.0", @@ -7063,7 +3720,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "dev": true, "requires": { "browserify-aes": "^1.0.4", "browserify-des": "^1.0.0", @@ -7074,7 +3730,6 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", - "dev": true, "requires": { "cipher-base": "^1.0.1", "des.js": "^1.0.0", @@ -7084,63 +3739,91 @@ }, "browserify-rsa": { "version": "4.0.1", - "resolved": "http://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", - "dev": true, "requires": { "bn.js": "^4.1.0", "randombytes": "^2.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + } } }, "browserify-sign": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.0.4.tgz", - "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", - "dev": true, + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.1.0.tgz", + "integrity": "sha512-VYxo7cDCeYUoBZ0ZCy4UyEUCP3smyBd4DRQM5nrFS1jJjPJjX7rP3oLRpPoWfkhQfyJ0I9ZbHbKafrFD/SGlrg==", "requires": { - "bn.js": "^4.1.1", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.2", - "elliptic": "^6.0.0", - "inherits": "^2.0.1", - "parse-asn1": "^5.0.0" + "bn.js": "^5.1.1", + "browserify-rsa": "^4.0.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "elliptic": "^6.5.2", + "inherits": "^2.0.4", + "parse-asn1": "^5.1.5", + "readable-stream": "^3.6.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" + } + }, + "safe-buffer": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz", + "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==" + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "requires": { + "safe-buffer": "~5.2.0" + } + } } }, "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, "requires": { "pako": "~1.0.5" } }, "browserslist": { - "version": "4.8.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.8.5.tgz", - "integrity": "sha512-4LMHuicxkabIB+n9874jZX/az1IaZ5a+EUuvD7KFOu9x/Bd5YHyO0DIz2ls/Kl8g0ItS4X/ilEgf4T1Br0lgSg==", - "dev": true, + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.12.0.tgz", + "integrity": "sha512-UH2GkcEDSI0k/lRkuDSzFl9ZZ87skSy9w2XAn1MsZnL+4c4rqbBd3e82UWHbYDpztABrPBhZsTEeuxVfHppqDg==", "requires": { - "caniuse-lite": "^1.0.30001022", - "electron-to-chromium": "^1.3.338", - "node-releases": "^1.1.46" + "caniuse-lite": "^1.0.30001043", + "electron-to-chromium": "^1.3.413", + "node-releases": "^1.1.53", + "pkg-up": "^2.0.0" } }, "bser": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", - "dev": true, "requires": { "node-int64": "^0.4.0" } }, "buffer": { - "version": "4.9.1", - "resolved": "http://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", - "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", - "dev": true, + "version": "4.9.2", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", + "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", "requires": { "base64-js": "^1.0.2", "ieee754": "^1.1.4", @@ -7150,8 +3833,7 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" } } }, @@ -7163,105 +3845,55 @@ "buffer-indexof": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz", - "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", - "dev": true + "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==" }, "buffer-xor": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", - "dev": true - }, - "builtin-modules": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", - "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", - "dev": true + "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=" }, "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 + "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=" }, "bytes": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", - "dev": true + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=" }, "cacache": { - "version": "12.0.3", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.3.tgz", - "integrity": "sha512-kqdmfXEGFepesTuROHMs3MpFLWrPkSSpRqOw80RCflZXy/khxaArvFrQ7uJxSUduzAufc6G0g1VUCOZXxWavPw==", - "dev": true, + "version": "13.0.1", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-13.0.1.tgz", + "integrity": "sha512-5ZvAxd05HDDU+y9BVvcqYu2LLXmPnQ0hW62h32g4xBTgL/MppR4/04NHfj/ycM2y6lmTnbw6HVi+1eN0Psba6w==", "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", + "chownr": "^1.1.2", "figgy-pudding": "^3.5.1", + "fs-minipass": "^2.0.0", "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", + "graceful-fs": "^4.2.2", + "infer-owner": "^1.0.4", "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", + "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.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" + "rimraf": "^2.7.1", + "ssri": "^7.0.0", + "unique-filename": "^1.1.1" }, "dependencies": { - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "dev": 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, - "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" } - }, - "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true } } }, @@ -7269,7 +3901,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", - "dev": true, "requires": { "collection-visit": "^1.0.0", "component-emitter": "^1.2.1", @@ -7280,21 +3911,40 @@ "to-object-path": "^0.3.0", "union-value": "^1.0.0", "unset-value": "^1.0.0" + } + }, + "call-me-maybe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", + "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=" + }, + "caller-callsite": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz", + "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=", + "requires": { + "callsites": "^2.0.0" }, "dependencies": { - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true + "callsites": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", + "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=" } } }, + "caller-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz", + "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=", + "requires": { + "caller-callsite": "^2.0.0" + } + }, "callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - "dev": true + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==" }, "camel-case": { "version": "3.0.0", @@ -7306,84 +3956,63 @@ } }, "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - }, - "camelcase-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", - "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", - "dev": true, - "requires": { - "camelcase": "^2.0.0", - "map-obj": "^1.0.0" - }, - "dependencies": { - "camelcase": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", - "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=", - "dev": true - } - } + "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=" }, + "caniuse-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz", + "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==", + "requires": { + "browserslist": "^4.0.0", + "caniuse-lite": "^1.0.0", + "lodash.memoize": "^4.1.2", + "lodash.uniq": "^4.5.0" + } + }, "caniuse-lite": { - "version": "1.0.30001022", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001022.tgz", - "integrity": "sha512-FjwPPtt/I07KyLPkBQ0g7/XuZg6oUkYBVnPHNj3VHJbOjmmJ/GdSo/GUY6MwINEQvjhP6WZVbX8Tvms8xh0D5A==", - "dev": true + "version": "1.0.30001053", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001053.tgz", + "integrity": "sha512-HtV4wwIZl6GA4Oznse8aR274XUOYGZnQLcf/P8vHgmlfqSNelwD+id8CyHOceqLqt9yfKmo7DUZTh1EuS9pukg==" }, "capture-exit": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-2.0.0.tgz", "integrity": "sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g==", - "dev": true, "requires": { "rsvp": "^4.8.4" } }, + "case-sensitive-paths-webpack-plugin": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.3.0.tgz", + "integrity": "sha512-/4YgnZS8y1UXXmC02xD5rRrBEu6T5ub+mQHLNRj0fzTRbgdBYhsNo2V5EqwgqrExjxsjtF/OpAKAMkKsxbD5XQ==" + }, "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", - "dev": true + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" }, "chalk": { - "version": "1.1.3", - "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "requires": { - "ansi-styles": "^2.2.1", - "escape-string-regexp": "^1.0.2", - "has-ansi": "^2.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^2.0.0" - }, - "dependencies": { - "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" - } - } + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, "chardet": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", - "dev": true + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" }, "cheerio": { "version": "1.0.0-rc.3", @@ -7399,6 +4028,44 @@ "parse5": "^3.0.1" }, "dependencies": { + "css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "dev": true, + "requires": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "css-what": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", + "dev": true + }, + "dom-serializer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", + "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", + "dev": true, + "requires": { + "domelementtype": "^1.3.0", + "entities": "^1.1.1" + } + }, + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "dev": true, + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, "parse5": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/parse5/-/parse5-3.0.3.tgz", @@ -7411,144 +4078,74 @@ } }, "chokidar": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.0.4.tgz", - "integrity": "sha512-z9n7yt9rOvIJrMhvDtDictKrkFHeihkNl6uWMmZlmL6tJtX9Cs+87oK+teBx+JIgzvbX3yZHT3eF8vpbDxHJXQ==", - "dev": true, + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.0.tgz", + "integrity": "sha512-aXAaho2VJtisB/1fg1+3nlLJqGOuewTzQpd/Tz0yTg2R0e4IGtshYvtjowyEumcBv2z+y4+kc75Mz7j5xJskcQ==", "requires": { - "anymatch": "^2.0.0", - "async-each": "^1.0.0", - "braces": "^2.3.0", - "fsevents": "^1.2.2", - "glob-parent": "^3.1.0", - "inherits": "^2.0.1", - "is-binary-path": "^1.0.0", - "is-glob": "^4.0.0", - "lodash.debounce": "^4.0.8", - "normalize-path": "^2.1.1", - "path-is-absolute": "^1.0.0", - "readdirp": "^2.0.0", - "upath": "^1.0.5" + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "fsevents": "~2.1.2", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.4.0" }, "dependencies": { - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, + "anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" } }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "requires": { - "is-extendable": "^0.1.0" + "fill-range": "^7.0.1" } }, "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.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" - } - } - } - }, - "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 - }, - "is-glob": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz", - "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" + "to-regex-range": "^5.0.1" } }, "is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" + }, + "normalize-path": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, + "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-buffer": "^1.1.5" + "is-number": "^7.0.0" } } } }, "chownr": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.3.tgz", - "integrity": "sha512-i70fVHhmV3DtTl6nqvZOnIjbY0Pe4kAUjwHj8z0zAdgBtYrJyYwLKCCuRBQ5ppkyL0AkN7HKRnETdmdp1zqNXw==", - "dev": true + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" }, "chrome-trace-event": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.2.tgz", "integrity": "sha512-9e/zx1jw7B4CO+c/RXoCsfg/x1AfUBioy4owYH0bJprEYAx5hRFLRhWBqHAG57D0ZM4H7vxbP7bPe0VwhQRYDQ==", - "dev": true, "requires": { "tslib": "^1.9.0" } @@ -7556,14 +4153,12 @@ "ci-info": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", - "dev": true + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" }, "cipher-base": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "dev": true, "requires": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" @@ -7573,7 +4168,6 @@ "version": "0.3.6", "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", - "dev": true, "requires": { "arr-union": "^3.1.0", "define-property": "^0.2.5", @@ -7581,42 +4175,41 @@ "static-extend": "^0.1.1" }, "dependencies": { - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "dev": true - }, "define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, "requires": { "is-descriptor": "^0.1.0" } - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true } } }, - "cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", - "dev": true, + "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==", "requires": { - "restore-cursor": "^2.0.0" + "source-map": "~0.6.0" + } + }, + "clean-stack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", + "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==" + }, + "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" } }, "cli-spinners": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.1.0.tgz", - "integrity": "sha512-8B00fJOEh1HPrx4fo5eW16XmE1PcL1tGpGrxy63CXGP9nHdPBN63X75hA1zhvQuhVztJWLqV58Roj2qlNM7cAA==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.3.0.tgz", + "integrity": "sha512-Xs2Hf2nzrvJMFKimOR7YR0QwZ8fc0u98kdtwN1eNAZzNQgH3vK2pXzff6GJtKh7S5hoJ87ECiAiZFS2fb5Ii2w==", "dev": true }, "cli-table": { @@ -7626,46 +4219,41 @@ "dev": true, "requires": { "colors": "1.0.3" - }, - "dependencies": { - "colors": { - "version": "1.0.3", - "resolved": "http://registry.npmjs.org/colors/-/colors-1.0.3.tgz", - "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=", - "dev": true - } } }, "cli-width": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", - "dev": true + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", + "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==" }, "cliui": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", - "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", - "dev": true, + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", + "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" + "string-width": "^3.1.0", + "strip-ansi": "^5.2.0", + "wrap-ansi": "^5.1.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 + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" }, - "strip-ansi": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", - "dev": true, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" + }, + "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": { - "ansi-regex": "^3.0.0" + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" } } } @@ -7677,77 +4265,69 @@ "dev": true }, "clone-deep": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-2.0.2.tgz", - "integrity": "sha512-SZegPTKjCgpQH63E+eN6mVEEPdQBOUzjyJm5Pora4lrwWRFS8I0QAxV/KD6vV/i0WuijHZWQC1fMsPEdxfdVCQ==", - "dev": true, + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-0.2.4.tgz", + "integrity": "sha1-TnPdCen7lxzDhnDF3O2cGJZIHMY=", "requires": { - "for-own": "^1.0.0", - "is-plain-object": "^2.0.4", - "kind-of": "^6.0.0", - "shallow-clone": "^1.0.0" - }, - "dependencies": { - "for-own": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", - "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", - "dev": true, - "requires": { - "for-in": "^1.0.1" - } - }, - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true - } + "for-own": "^0.1.3", + "is-plain-object": "^2.0.1", + "kind-of": "^3.0.2", + "lazy-cache": "^1.0.3", + "shallow-clone": "^0.1.2" } }, "clsx": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.0.4.tgz", - "integrity": "sha512-1mQ557MIZTrL/140j+JVdRM6e31/OA4vTYxXgqIIZlndyfjHpyawKZia1Im05Vp9BWmImkcNrNtFYQMyFcgJDg==" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/clsx/-/clsx-1.1.0.tgz", + "integrity": "sha512-3avwM37fSK5oP6M5rQ9CNe99lwxhXDOeSWVPAOYF6OazUTgZCMb0yWlJpmdD74REy1gkEaFiub2ULv4fq9GUhA==" }, "co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "dev": true + "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" + }, + "coa": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz", + "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==", + "requires": { + "@types/q": "^1.5.1", + "chalk": "^2.4.1", + "q": "^1.1.2" + } }, "code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", - "dev": true + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" }, "codemirror": { - "version": "5.47.0", - "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.47.0.tgz", - "integrity": "sha512-kV49Fr+NGFHFc/Imsx6g180hSlkGhuHxTSDDmDHOuyln0MQYFLixDY4+bFkBVeCEiepYfDimAF/e++9jPJk4QA==" - }, - "collect-v8-coverage": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.0.tgz", - "integrity": "sha512-VKIhJgvk8E1W28m5avZ2Gv2Ruv5YiF56ug2oclvaG9md69BuZImMG2sk9g7QNKLUbtYAKQjXjYxbYZVUlMMKmQ==", - "dev": true + "version": "5.53.2", + "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.53.2.tgz", + "integrity": "sha512-wvSQKS4E+P8Fxn/AQ+tQtJnF1qH5UOlxtugFLpubEZ5jcdH2iXTVinb+Xc/4QjshuOxRm4fUsU2QPF1JJKiyXA==" }, "collection-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", - "dev": true, "requires": { "map-visit": "^1.0.0", "object-visit": "^1.0.0" } }, + "color": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/color/-/color-3.1.2.tgz", + "integrity": "sha512-vXTJhHebByxZn3lDvDJYw4lR5+uB3vuoHsuYA5AKuxRVn5wzzIfQKGLBmgdVRHKTJYeK5rvJcHnrd0Li49CFpg==", + "requires": { + "color-convert": "^1.9.1", + "color-string": "^1.5.2" + } + }, "color-convert": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "dev": true, "requires": { "color-name": "1.1.3" } @@ -7755,70 +4335,100 @@ "color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "color-string": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.5.3.tgz", + "integrity": "sha512-dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw==", + "requires": { + "color-name": "^1.0.0", + "simple-swizzle": "^0.2.2" + } + }, + "colors": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.0.3.tgz", + "integrity": "sha1-BDP0TYCWgP3rYO0mDxsMJi6CpAs=", "dev": true }, "combined-stream": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz", - "integrity": "sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==", - "dev": true, + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", "requires": { "delayed-stream": "~1.0.0" } }, "commander": { - "version": "2.19.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz", - "integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==" + "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==" + }, + "common-tags": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.0.tgz", + "integrity": "sha512-6P6g0uetGpW/sdyUy/iQQCbFF0kWVMSIVSyYz7Zgjcgh8mgw8PQzDNZeyZ5DQ2gM7LBoZPHmnjz8rUthkBG5tw==" }, "commondir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", - "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", - "dev": true + "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=" }, "component-emitter": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz", - "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=", - "dev": true + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", + "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==" + }, + "compose-function": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/compose-function/-/compose-function-3.0.3.tgz", + "integrity": "sha1-ntZ18TzFRQHTCVCkhv9qe6OrGF8=", + "requires": { + "arity-n": "^1.0.4" + } }, "compressible": { - "version": "2.0.15", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.15.tgz", - "integrity": "sha512-4aE67DL33dSW9gw4CI2H/yTxqHLNcxp0yS6jB+4h+wr3e43+1z7vm0HU9qXOH8j+qjKuL8+UtkOxYQSMq60Ylw==", - "dev": true, + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", + "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", "requires": { - "mime-db": ">= 1.36.0 < 2" + "mime-db": ">= 1.43.0 < 2" } }, "compression": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.3.tgz", - "integrity": "sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg==", - "dev": true, + "version": "1.7.4", + "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", + "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", "requires": { "accepts": "~1.3.5", "bytes": "3.0.0", - "compressible": "~2.0.14", + "compressible": "~2.0.16", "debug": "2.6.9", - "on-headers": "~1.0.1", + "on-headers": "~1.0.2", "safe-buffer": "5.1.2", "vary": "~1.1.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + } } }, "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" }, "concat-stream": { "version": "1.6.2", "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz", "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", - "dev": true, "requires": { "buffer-from": "^1.0.0", "inherits": "^2.0.3", @@ -7829,20 +4439,17 @@ "buffer-from": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" }, "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -7857,83 +4464,72 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } } } }, + "confusing-browser-globals": { + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.9.tgz", + "integrity": "sha512-KbS1Y0jMtyPgIxjO7ZzMAuUpAKMt1SzCL9fsrKsX6b0zJPTaT0SiSPmewwVZg9UAO83HVIlEhZF84LIjZ0lmAw==" + }, "connect-history-api-fallback": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz", - "integrity": "sha1-sGhzk0vF40T+9hGhlqb6rgruAVo=", - "dev": true + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", + "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==" }, "console-browserify": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.1.0.tgz", - "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", - "dev": true, - "requires": { - "date-now": "^0.1.4" - } - }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", + "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==" }, "constants-browserify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", - "dev": true + "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=" }, "contains-path": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", - "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", - "dev": true + "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=" }, "content-disposition": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", - "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=", - "dev": true + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", + "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", + "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 + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" }, "convert-source-map": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", - "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", "requires": { "safe-buffer": "~5.1.1" } }, "cookie": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz", - "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=", - "dev": true + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", + "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==" }, "cookie-signature": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", - "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=", - "dev": true + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" }, "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, "requires": { "aproba": "^1.1.1", "fs-write-stream-atomic": "^1.0.8", @@ -7946,55 +4542,65 @@ "copy-descriptor": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true + "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=" }, "core-js": { - "version": "2.5.7", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.7.tgz", - "integrity": "sha512-RszJCAxg/PP6uzXVXL6BsxSXx/B05oJAQ2vkJRjyjrEcNVycaqOmNb5OTxZPE3xa5gwZduqza6L9JOCenh/Ecw==" + "version": "2.6.11", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.11.tgz", + "integrity": "sha512-5wjnpaT/3dV+XB4borEsnAYQchn00XSgTAWKDkEqv+K8KevjbzmofK6hfJ9TZIlpj2N0xQpazy7PiRQiWHqzWg==" }, "core-js-compat": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.4.tgz", - "integrity": "sha512-zAa3IZPvsJ0slViBQ2z+vgyyTuhd3MFn1rBQjZSKVEgB0UMYhUkCj9jJUVPgGTGqWvsBVmfnruXgTcNyTlEiSA==", - "dev": true, + "version": "3.6.5", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.5.tgz", + "integrity": "sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng==", "requires": { - "browserslist": "^4.8.3", + "browserslist": "^4.8.5", "semver": "7.0.0" }, "dependencies": { "semver": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", - "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", - "dev": true + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==" } } }, + "core-js-pure": { + "version": "3.6.5", + "resolved": "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.6.5.tgz", + "integrity": "sha512-lacdXOimsiD0QyNf9BC/mxivNJ/ybBGJXQFKzRekp1WTHoVUWsUHEn+2T8GJAzzIhyOuXA+gOxCVN3l+5PLPUA==" + }, "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=" }, "cosmiconfig": { - "version": "5.0.6", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.0.6.tgz", - "integrity": "sha512-6DWfizHriCrFWURP1/qyhsiFvYdlJzbCzmtFWh744+KyWsJo5+kPzUZZaMRSSItoYc0pxFX7gEO7ZC1/gN/7AQ==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-6.0.0.tgz", + "integrity": "sha512-xb3ZL6+L8b9JLLCx3ZdoZy4+2ECphCMo2PwqgP1tlfVq6M6YReyzBJtvWWtbDSpNr9hn96pkCiZqUcFEc+54Qg==", "requires": { - "is-directory": "^0.3.1", - "js-yaml": "^3.9.0", - "parse-json": "^4.0.0" + "@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.3", "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", - "dev": true, "requires": { "bn.js": "^4.1.0", "elliptic": "^6.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + } } }, "create-emotion": { @@ -8023,9 +4629,8 @@ }, "create-hash": { "version": "1.2.0", - "resolved": "http://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", + "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "dev": true, "requires": { "cipher-base": "^1.0.1", "inherits": "^2.0.1", @@ -8036,9 +4641,8 @@ }, "create-hmac": { "version": "1.1.7", - "resolved": "http://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", + "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "dev": true, "requires": { "cipher-base": "^1.0.3", "create-hash": "^1.1.0", @@ -8052,20 +4656,25 @@ "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" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } } }, "crypto-browserify": { "version": "3.12.0", "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", - "dev": true, "requires": { "browserify-cipher": "^1.0.0", "browserify-sign": "^4.0.0", @@ -8091,109 +4700,285 @@ "urix": "^0.1.0" } }, + "css-blank-pseudo": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/css-blank-pseudo/-/css-blank-pseudo-0.1.4.tgz", + "integrity": "sha512-LHz35Hr83dnFeipc7oqFDmsjHdljj3TQtxGGiNWSOsTLIAubSm4TEz8qCaKFpk7idaQ1GfWscF4E6mgpBysA1w==", + "requires": { + "postcss": "^7.0.5" + } + }, "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=" }, - "css-loader": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-1.0.1.tgz", - "integrity": "sha512-+ZHAZm/yqvJ2kDtPne3uX0C+Vr3Zn5jFn2N4HywtS5ujwvsVkyg0VArEXpl3BgczDA8anieki1FIzhchX4yrDw==", - "dev": true, + "css-color-names": { + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz", + "integrity": "sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=" + }, + "css-declaration-sorter": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz", + "integrity": "sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA==", "requires": { - "babel-code-frame": "^6.26.0", - "css-selector-tokenizer": "^0.7.0", - "icss-utils": "^2.1.0", - "loader-utils": "^1.0.2", - "lodash": "^4.17.11", - "postcss": "^6.0.23", - "postcss-modules-extract-imports": "^1.2.0", - "postcss-modules-local-by-default": "^1.2.0", - "postcss-modules-scope": "^1.1.0", - "postcss-modules-values": "^1.3.0", - "postcss-value-parser": "^3.3.0", - "source-list-map": "^2.0.0" + "postcss": "^7.0.1", + "timsort": "^0.3.0" } }, - "css-select": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", - "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", - "dev": true, + "css-has-pseudo": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/css-has-pseudo/-/css-has-pseudo-0.10.0.tgz", + "integrity": "sha512-Z8hnfsZu4o/kt+AuFzeGpLVhFOGO9mluyHBaA2bA8aCGTwah5sT3WV/fTHH8UNZUytOIImuGPrl/prlb4oX4qQ==", "requires": { - "boolbase": "~1.0.0", - "css-what": "2.1", - "domutils": "1.5.1", - "nth-check": "~1.0.1" - } - }, - "css-selector-tokenizer": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.1.tgz", - "integrity": "sha512-xYL0AMZJ4gFzJQsHUKa5jiWWi2vH77WVNg7JYRyewwj6oPh4yb/y6Y9ZCw9dsj/9UauMhtuxR+ogQd//EdEVNA==", - "dev": true, - "requires": { - "cssesc": "^0.1.0", - "fastparse": "^1.1.1", - "regexpu-core": "^1.0.0" + "postcss": "^7.0.6", + "postcss-selector-parser": "^5.0.0-rc.4" }, "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true + "cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==" }, - "regexpu-core": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-1.0.0.tgz", - "integrity": "sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=", - "dev": true, + "postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", "requires": { - "regenerate": "^1.2.1", - "regjsgen": "^0.2.0", - "regjsparser": "^0.1.4" - } - }, - "regjsgen": { - "version": "0.2.0", - "resolved": "http://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", - "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", - "dev": true - }, - "regjsparser": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", - "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", - "dev": true, - "requires": { - "jsesc": "~0.5.0" + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" } } } }, + "css-loader": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-3.4.2.tgz", + "integrity": "sha512-jYq4zdZT0oS0Iykt+fqnzVLRIeiPWhka+7BqPn+oSIpWJAHak5tmB/WZrJ2a21JhCeFyNnnlroSl8c+MtVndzA==", + "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.23", + "postcss-modules-extract-imports": "^2.0.0", + "postcss-modules-local-by-default": "^3.0.2", + "postcss-modules-scope": "^2.1.1", + "postcss-modules-values": "^3.0.0", + "postcss-value-parser": "^4.0.2", + "schema-utils": "^2.6.0" + }, + "dependencies": { + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" + } + } + }, + "css-prefers-color-scheme": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/css-prefers-color-scheme/-/css-prefers-color-scheme-3.1.1.tgz", + "integrity": "sha512-MTu6+tMs9S3EUqzmqLXEcgNRbNkkD/TGFvowpeoWJn5Vfq7FMgsmRQs9X5NXAURiOBmOxm/lLjsDNXDE6k9bhg==", + "requires": { + "postcss": "^7.0.5" + } + }, + "css-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz", + "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==", + "requires": { + "boolbase": "^1.0.0", + "css-what": "^3.2.1", + "domutils": "^1.7.0", + "nth-check": "^1.0.2" + } + }, + "css-select-base-adapter": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz", + "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==" + }, "css-to-react-native": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/css-to-react-native/-/css-to-react-native-2.3.1.tgz", - "integrity": "sha512-yO+oEx1Lf+hDKasqQRVrAvzMCz825Huh1VMlEEDlRWyAhFb/FWb6I0KpEF1PkyKQ7NEdcx9d5M2ZEWgJAsgPvQ==", + "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==", "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==" + } + } + }, + "css-tree": { + "version": "1.0.0-alpha.37", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz", + "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==", + "requires": { + "mdn-data": "2.0.4", + "source-map": "^0.6.1" } }, "css-what": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", - "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", - "dev": true + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.2.1.tgz", + "integrity": "sha512-WwOrosiQTvyms+Ti5ZC5vGEK0Vod3FTt1ca+payZqvKuGJF+dq7bG63DstxtN0dpm6FxY27a/zS3Wten+gEtGw==" + }, + "css.escape": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz", + "integrity": "sha1-QuJ9T6BK4y+TGktNQZH6nN3ul8s=" + }, + "cssdb": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/cssdb/-/cssdb-4.4.0.tgz", + "integrity": "sha512-LsTAR1JPEM9TpGhl/0p3nQecC2LJ0kD8X5YARu1hk/9I1gril5vDtMZyNxcEpxxDj34YNck/ucjuoUd66K03oQ==" }, "cssesc": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-0.1.0.tgz", - "integrity": "sha1-yBSQPkViM3GgR3tAEJqq++6t27Q=", - "dev": true + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==" + }, + "cssnano": { + "version": "4.1.10", + "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-4.1.10.tgz", + "integrity": "sha512-5wny+F6H4/8RgNlaqab4ktc3e0/blKutmq8yNlBFXA//nSFFAqAngjNVRzUvCgYROULmZZUoosL/KSoZo5aUaQ==", + "requires": { + "cosmiconfig": "^5.0.0", + "cssnano-preset-default": "^4.0.7", + "is-resolvable": "^1.0.0", + "postcss": "^7.0.0" + }, + "dependencies": { + "cosmiconfig": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz", + "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==", + "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=", + "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=", + "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=" + } + } + }, + "cssnano-preset-default": { + "version": "4.0.7", + "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-4.0.7.tgz", + "integrity": "sha512-x0YHHx2h6p0fCl1zY9L9roD7rnlltugGu7zXSKQx6k2rYw0Hi3IqxcoAGF7u9Q5w1nt7vK0ulxV8Lo+EvllGsA==", + "requires": { + "css-declaration-sorter": "^4.0.1", + "cssnano-util-raw-cache": "^4.0.1", + "postcss": "^7.0.0", + "postcss-calc": "^7.0.1", + "postcss-colormin": "^4.0.3", + "postcss-convert-values": "^4.0.1", + "postcss-discard-comments": "^4.0.2", + "postcss-discard-duplicates": "^4.0.2", + "postcss-discard-empty": "^4.0.1", + "postcss-discard-overridden": "^4.0.1", + "postcss-merge-longhand": "^4.0.11", + "postcss-merge-rules": "^4.0.3", + "postcss-minify-font-values": "^4.0.2", + "postcss-minify-gradients": "^4.0.2", + "postcss-minify-params": "^4.0.2", + "postcss-minify-selectors": "^4.0.2", + "postcss-normalize-charset": "^4.0.1", + "postcss-normalize-display-values": "^4.0.2", + "postcss-normalize-positions": "^4.0.2", + "postcss-normalize-repeat-style": "^4.0.2", + "postcss-normalize-string": "^4.0.2", + "postcss-normalize-timing-functions": "^4.0.2", + "postcss-normalize-unicode": "^4.0.1", + "postcss-normalize-url": "^4.0.1", + "postcss-normalize-whitespace": "^4.0.2", + "postcss-ordered-values": "^4.1.2", + "postcss-reduce-initial": "^4.0.3", + "postcss-reduce-transforms": "^4.0.2", + "postcss-svgo": "^4.0.2", + "postcss-unique-selectors": "^4.0.1" + } + }, + "cssnano-util-get-arguments": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz", + "integrity": "sha1-7ToIKZ8h11dBsg87gfGU7UnMFQ8=" + }, + "cssnano-util-get-match": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz", + "integrity": "sha1-wOTKB/U4a7F+xeUiULT1lhNlFW0=" + }, + "cssnano-util-raw-cache": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz", + "integrity": "sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA==", + "requires": { + "postcss": "^7.0.0" + } + }, + "cssnano-util-same-parent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz", + "integrity": "sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q==" + }, + "csso": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.0.3.tgz", + "integrity": "sha512-NL3spysxUkcrOgnpsT4Xdl2aiEiBG6bXswAABQVHcMrfjjBisFOKwLDOmf4wf32aPdcJws1zds2B0Rg+jqMyHQ==", + "requires": { + "css-tree": "1.0.0-alpha.39" + }, + "dependencies": { + "css-tree": { + "version": "1.0.0-alpha.39", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.39.tgz", + "integrity": "sha512-7UvkEYgBAHRG9Nt980lYxjsTrCyHFN53ky3wVsDkiMdVqylqRt+Zc+jm5qw7/qyOvN2dHSYtX0e4MbCCExSvnA==", + "requires": { + "mdn-data": "2.0.6", + "source-map": "^0.6.1" + } + }, + "mdn-data": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.6.tgz", + "integrity": "sha512-rQvjv71olwNHgiTbfPZFkJtjNMciWgswYeciZhtvWLO8bmX3TnhyA62I6sTWOyZssWHJJjY6/KiWwqQsWWsqOA==" + } + } }, "cssom": { "version": "0.3.8", @@ -8213,25 +4998,24 @@ "resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.10.tgz", "integrity": "sha512-D34BqZU4cIlMCY93rZHbrq9pjTAQJ3U8S8rfBqjwHxkGPThWFjzZDQpgMJY0QViLxth6ZKYiwFBo14RdN44U/w==" }, - "currently-unhandled": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", - "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", - "dev": true, - "requires": { - "array-find-index": "^1.0.1" - } - }, "cyclist": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", - "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", - "dev": true + "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=" + }, + "d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "requires": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } }, "d3": { - "version": "5.12.0", - "resolved": "https://registry.npmjs.org/d3/-/d3-5.12.0.tgz", - "integrity": "sha512-flYVMoVuhPFHd9zVCe2BxIszUWqBcd5fvQGMNRmSiBrgdnh6Vlruh60RJQTouAK9xPbOB0plxMvBm4MoyODXNg==", + "version": "5.16.0", + "resolved": "https://registry.npmjs.org/d3/-/d3-5.16.0.tgz", + "integrity": "sha512-4PL5hHaHwX4m7Zr1UapXW23apo6pexCgdetdJ5kTmADpG/7T9Gkxw0M0tf/pjoB63ezCCm0u5UaFYy2aMt0Mcw==", "requires": { "d3-array": "1", "d3-axis": "1", @@ -8303,9 +5087,9 @@ "integrity": "sha512-ii0/r5f4sjKNTfh84Di+DpztYwqKhEyUlKoPrzUFfeSkWxjW49xU2QzO9qrPrNkpdI0XJkfzvmTu8V2Zylln6A==" }, "d3-color": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-1.4.0.tgz", - "integrity": "sha512-TzNPeJy2+iEepfiL92LAAB7fvnp/dV2YwANPVHdDWmYMm23qIJBYww3qT8I8C1wXrmrg4UWs7BKc2tKIgyjzHg==" + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/d3-color/-/d3-color-1.4.1.tgz", + "integrity": "sha512-p2sTHSLCJI2QKunbGb7ocOh7DgTAn8IrLx21QRc/BSnodXM4sv6aLQlnfpvehFMLZEfBc6g9pH9SWQccFYfJ9Q==" }, "d3-contour": { "version": "1.3.2", @@ -8364,14 +5148,14 @@ } }, "d3-format": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-1.4.2.tgz", - "integrity": "sha512-gco1Ih54PgMsyIXgttLxEhNy/mXxq8+rLnCb5shQk+P5TsiySrwWU5gpB4zen626J4LIwBxHvDChyA8qDm57ww==" + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/d3-format/-/d3-format-1.4.4.tgz", + "integrity": "sha512-TWks25e7t8/cqctxCmxpUuzZN11QxIA7YrMbram94zMQ0PXjE4LVIMe/f6a4+xxL8HQ3OsAFULOINQi1pE62Aw==" }, "d3-geo": { - "version": "1.11.9", - "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-1.11.9.tgz", - "integrity": "sha512-9edcH6J3s/Aa3KJITWqFJbyB/8q3mMlA9Fi7z6yy+FAYMnRaxmC7jBhUnsINxVWD14GmqX3DK8uk7nV6/Ekt4A==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/d3-geo/-/d3-geo-1.12.0.tgz", + "integrity": "sha512-NalZVW+6/SpbKcnl+BCO67m8gX+nGeJdo6oGL9H6BRUGUL1e+AtPcP4vE4TwCQ/gl8y5KE7QvBzrLn+HsKIl+w==", "requires": { "d3-array": "1" } @@ -8450,9 +5234,9 @@ "integrity": "sha512-Xh0isrZ5rPYYdqhAVk8VLnMEidhz5aP7htAADH6MfzgmmicPkTo8LhkLxci61/lCB7n7UmE3bN0leRt+qvkLxA==" }, "d3-time-format": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-2.2.2.tgz", - "integrity": "sha512-pweL2Ri2wqMY+wlW/wpkl8T3CUzKAha8S9nmiQlMABab8r5MJN0PD1V4YyRNVaKQfeh4Z0+VO70TLw6ESVOYzw==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/d3-time-format/-/d3-time-format-2.2.3.tgz", + "integrity": "sha512-RAHNnD8+XvC4Zc4d2A56Uw0yJoM7bsvOlJR33bclxq399Rak/b9bhvu/InjxdWhPtkgU53JJcleJTGkNRnN6IA==", "requires": { "d3-time": "1" } @@ -8493,25 +5277,23 @@ } }, "dagre": { - "version": "0.8.4", - "resolved": "https://registry.npmjs.org/dagre/-/dagre-0.8.4.tgz", - "integrity": "sha512-Dj0csFDrWYKdavwROb9FccHfTC4fJbyF/oJdL9LNZJ8WUvl968P6PAKEriGqfbdArVJEmmfA+UyumgWEwcHU6A==", + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/dagre/-/dagre-0.8.5.tgz", + "integrity": "sha512-/aTqmnRta7x7MCCpExk7HQL2O4owCT2h8NT//9I1OQ9vt29Pa0BzSAkR5lwFUcQ7491yVi/3CXU9jQ5o0Mn2Sw==", "requires": { - "graphlib": "^2.1.7", - "lodash": "^4.17.4" + "graphlib": "^2.1.8", + "lodash": "^4.17.15" } }, "damerau-levenshtein": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.4.tgz", - "integrity": "sha1-AxkcQyy27qFou3fzpV/9zLiXhRQ=", - "dev": true + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.6.tgz", + "integrity": "sha512-JVrozIeElnj3QzfUIt8tB8YMluBJom4Vw9qTPpjGYQ9fYlB3D/rb6OordUxf3xeFB35LKWs0xqcO5U6ySvBtug==" }, "dashdash": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", - "dev": true, "requires": { "assert-plus": "^1.0.0" } @@ -8520,11 +5302,22 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-1.1.0.tgz", "integrity": "sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ==", - "dev": true, "requires": { "abab": "^2.0.0", "whatwg-mimetype": "^2.2.0", "whatwg-url": "^7.0.0" + }, + "dependencies": { + "whatwg-url": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", + "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", + "requires": { + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" + } + } } }, "date-fns": { @@ -8533,17 +5326,10 @@ "integrity": "sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw==", "dev": true }, - "date-now": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/date-now/-/date-now-0.1.4.tgz", - "integrity": "sha1-6vQ5/U1ISK105cx9vvIAZyueNFs=", - "dev": true - }, "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", + "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", "requires": { "ms": "2.0.0" } @@ -8551,8 +5337,7 @@ "decamelize": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", - "dev": true + "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" }, "decode-uri-component": { "version": "0.2.0", @@ -8560,16 +5345,29 @@ "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=" }, "deep-equal": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", - "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", - "dev": true + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", + "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", + "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" + }, + "dependencies": { + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" + } + } }, "deep-is": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", - "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", - "dev": true + "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" }, "deepmerge": { "version": "2.2.1", @@ -8577,43 +5375,12 @@ "integrity": "sha512-R9hc1Xa/NOBi9WRVUWg19rl1UB7Tt4kuPd+thNJgFZoxXsTz7ncaPaeIm+40oSGuP33DfMb4sZt1QIGiJzC4EA==" }, "default-gateway": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-2.7.2.tgz", - "integrity": "sha512-lAc4i9QJR0YHSDFdzeBQKfZ1SRDG3hsJNEkrpcZa8QhBfidLAilT60BDEIVUUGqosFp425KOgB3uYqcnQrWafQ==", - "dev": true, + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-4.2.0.tgz", + "integrity": "sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA==", "requires": { - "execa": "^0.10.0", + "execa": "^1.0.0", "ip-regex": "^2.1.0" - }, - "dependencies": { - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "execa": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz", - "integrity": "sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==", - "dev": true, - "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - } } }, "defaults": { @@ -8629,16 +5396,14 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", - "dev": true, "requires": { "object-keys": "^1.0.12" }, "dependencies": { "object-keys": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.12.tgz", - "integrity": "sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==", - "dev": true + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" } } }, @@ -8646,7 +5411,6 @@ "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" @@ -8656,7 +5420,6 @@ "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" } @@ -8665,7 +5428,6 @@ "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" } @@ -8674,50 +5436,78 @@ "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" } }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - }, "kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" + } + } + }, + "del": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", + "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==", + "requires": { + "@types/glob": "^7.1.1", + "globby": "^6.1.0", + "is-path-cwd": "^2.0.0", + "is-path-in-cwd": "^2.0.0", + "p-map": "^2.0.0", + "pify": "^4.0.1", + "rimraf": "^2.6.3" + }, + "dependencies": { + "globby": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", + "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "requires": { + "array-union": "^1.0.1", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" + }, + "dependencies": { + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + } + } + }, + "p-map": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", + "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==" + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" } } }, "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 - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" }, "depd": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", - "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", - "dev": true + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" }, "des.js": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", - "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", - "dev": true, + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", + "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", "requires": { "inherits": "^2.0.1", "minimalistic-assert": "^1.0.0" @@ -8726,8 +5516,7 @@ "destroy": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", - "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", - "dev": true + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" }, "detect-indent": { "version": "4.0.0", @@ -8739,32 +5528,73 @@ } }, "detect-newline": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", - "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", - "dev": true + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz", + "integrity": "sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=" }, "detect-node": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", - "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==", - "dev": true + "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==" + }, + "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==", + "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==", + "requires": { + "ms": "2.0.0" + } + } + } }, "diff-sequences": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-25.1.0.tgz", - "integrity": "sha512-nFIfVk5B/NStCsJ+zaPO4vYuLjlzQ6uFvPxzYyHlejNZ/UGa7G/n7peOXVrVNvRuyfstt+mZQYGpjxg9Z6N8Kw==", - "dev": true + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-24.9.0.tgz", + "integrity": "sha512-Dj6Wk3tWyTE+Fo1rW8v0Xhwk80um6yFYKbuAxc9c3EZxIHFDYwbi34Uk42u1CdnIiVorvt4RmlSDjIPyzGC2ew==" }, "diffie-hellman": { "version": "5.0.3", - "resolved": "http://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", + "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "dev": true, "requires": { "bn.js": "^4.1.0", "miller-rabin": "^4.0.0", "randombytes": "^2.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + } + } + }, + "dir-glob": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", + "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", + "requires": { + "arrify": "^1.0.1", + "path-type": "^3.0.0" + }, + "dependencies": { + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "requires": { + "pify": "^3.0.0" + } + } } }, "discontinuous-range": { @@ -8776,14 +5606,12 @@ "dns-equal": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz", - "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=", - "dev": true + "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=" }, "dns-packet": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.1.tgz", "integrity": "sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg==", - "dev": true, "requires": { "ip": "^1.1.0", "safe-buffer": "^5.0.1" @@ -8793,61 +5621,75 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz", "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", - "dev": true, "requires": { "buffer-indexof": "^1.0.0" } }, "doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dev": true, + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "requires": { "esutils": "^2.0.2" } }, - "dom-helpers": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.4.0.tgz", - "integrity": "sha512-LnuPJ+dwqKDIyotW1VzmOZ5TONUN7CwkCR5hrgawTUbkBGYdeoNLZo6nNfGkCrjtE1nXXaj7iMMpDa8/d9WoIA==", + "dom-accessibility-api": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.3.0.tgz", + "integrity": "sha512-PzwHEmsRP3IGY4gv/Ug+rMeaTIyTJvadCb+ujYXYeIylbHJezIyNToe8KfEgHTCEYyC+/bUghYOGg8yMGlZ6vA==" + }, + "dom-converter": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", + "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==", "requires": { - "@babel/runtime": "^7.1.2" + "utila": "~0.4" + } + }, + "dom-helpers": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.1.4.tgz", + "integrity": "sha512-TjMyeVUvNEnOnhzs6uAn9Ya47GmMo3qq7m+Lr/3ON0Rs5kHvb8I+SQYjLUSYn7qhEm0QjW0yrBkvz9yOrwwz1A==", + "requires": { + "@babel/runtime": "^7.8.7", + "csstype": "^2.6.7" } }, "dom-serializer": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", - "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", - "dev": true, + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", "requires": { - "domelementtype": "^1.3.0", - "entities": "^1.1.1" + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + }, + "dependencies": { + "domelementtype": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.0.1.tgz", + "integrity": "sha512-5HOHUDsYZWV8FGWN0Njbr/Rn7f/eWSQi1v7+HsUVwXgn8nWWlL64zKDkS0n8ZmQ3mlWOMuXOnR+7Nx/5tMO5AQ==" + }, + "entities": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.0.0.tgz", + "integrity": "sha512-D9f7V0JSRwIxlRI2mjMqufDrRDnx8p+eEOz7aUM9SuvF8gsBzra0/6tbjl1m8eQHrZlYj6PxqE00hZ1SAIKPLw==" + } } }, - "dom-walk": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.1.tgz", - "integrity": "sha1-ZyIm3HTI95mtNTB9+TaroRrNYBg=", - "dev": true - }, "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 + "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==" }, "domelementtype": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", - "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", - "dev": true + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" }, "domexception": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz", "integrity": "sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==", - "dev": true, "requires": { "webidl-conversions": "^4.0.2" } @@ -8856,21 +5698,70 @@ "version": "2.4.2", "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", - "dev": true, "requires": { "domelementtype": "1" } }, "domutils": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", - "dev": true, + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz", + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", "requires": { "dom-serializer": "0", "domelementtype": "1" } }, + "dot-case": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.3.tgz", + "integrity": "sha512-7hwEmg6RiSQfm/GwPL4AAWXKy3YNNZA3oFv2Pdiey0mwkRCPZ9x6SZbkLcn8Ma5PYeVokzoD4Twv2n7LKp5WeA==", + "requires": { + "no-case": "^3.0.3", + "tslib": "^1.10.0" + }, + "dependencies": { + "lower-case": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.1.tgz", + "integrity": "sha512-LiWgfDLLb1dwbFQZsSglpRj+1ctGnayXz3Uv0/WO8n558JycT5fg6zkNcnW0G68Nn0aEldTFeEfmjCfmqry/rQ==", + "requires": { + "tslib": "^1.10.0" + } + }, + "no-case": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.3.tgz", + "integrity": "sha512-ehY/mVQCf9BL0gKfsJBvFJen+1V//U+0HQMPrWct40ixE4jnv0bfvxDbWtAHL9EcaPEOJHVVYKoQn1TlZUB8Tw==", + "requires": { + "lower-case": "^2.0.1", + "tslib": "^1.10.0" + } + } + } + }, + "dot-prop": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.2.0.tgz", + "integrity": "sha512-uEUyaDKoSQ1M4Oq8l45hSE26SnTxL6snNnqvK/VWx5wJhmff5z0FUVJDKDanor/6w3kzE3i7XZOk+7wC0EXr1A==", + "requires": { + "is-obj": "^2.0.0" + } + }, + "dotenv": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.2.0.tgz", + "integrity": "sha512-8sJ78ElpbDJBHNeBzUbUVLsqKdccaa/BXF1uPTw3GrvQTBgrQrtObr2mUrE38vzYd8cEv+m/JBfDLioYcfXoaw==" + }, + "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==" + }, + "duplexer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", + "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=" + }, "duplexer2": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz", @@ -8912,7 +5803,6 @@ "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", @@ -8923,14 +5813,12 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -8945,7 +5833,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -8956,7 +5843,6 @@ "version": "0.1.2", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, "requires": { "jsbn": "~0.1.0", "safer-buffer": "^2.1.0" @@ -8965,20 +5851,17 @@ "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", - "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", - "dev": true + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" }, "electron-to-chromium": { - "version": "1.3.339", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.339.tgz", - "integrity": "sha512-C1i/vH6/kQx9YV8RddMkmW216GwW4pTrnYIlKmDFIqXA4fPwqDxIdGyHsuG+fgurHoljRz7/oaD+tztcryW/9g==", - "dev": true + "version": "1.3.430", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.430.tgz", + "integrity": "sha512-HMDYkANGhx6vfbqpOf/hc6hWEmiOipOHGDeRDeUb3HLD3XIWpvKQxFgWf0tgHcr3aNv6I/8VPecplqmQsXoZSw==" }, "elliptic": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.1.tgz", - "integrity": "sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ==", - "dev": true, + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.2.tgz", + "integrity": "sha512-f4x70okzZbIQl/NSRLkI/+tteV/9WqL98zx+SQ69KbXxmVrmjwsNUPn/gYJJ0sHvEak24cZgHIPegRePAtA/xw==", "requires": { "bn.js": "^4.4.0", "brorand": "^1.0.1", @@ -8987,19 +5870,24 @@ "inherits": "^2.0.1", "minimalistic-assert": "^1.0.0", "minimalistic-crypto-utils": "^1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + } } }, "emoji-regex": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-6.5.1.tgz", - "integrity": "sha512-PAHp6TxrCy7MGMFidro8uikr+zlJJKJ/Q6mm2ExZ7HwkyR9lSVFfE3kt36qcwa24BQL7y0G9axycGjK1A/0uNQ==", - "dev": true + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, "emojis-list": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", - "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=", - "dev": true + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==" }, "emotion": { "version": "9.2.12", @@ -9021,8 +5909,7 @@ "encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", - "dev": true + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" }, "encoding": { "version": "0.1.12", @@ -9034,23 +5921,59 @@ } }, "end-of-stream": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", - "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", - "dev": true, + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", "requires": { "once": "^1.4.0" } }, "enhanced-resolve": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.0.tgz", - "integrity": "sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==", - "dev": true, + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.1.1.tgz", + "integrity": "sha512-98p2zE+rL7/g/DzMHMTF4zZlCgeVdJ7yr6xzEpJRYwFYrGi9ANdn5DnJURg6RpBkyk60XYDnWIv51VfIhfNGuA==", "requires": { "graceful-fs": "^4.1.2", - "memory-fs": "^0.4.0", + "memory-fs": "^0.5.0", "tapable": "^1.0.0" + }, + "dependencies": { + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "memory-fs": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", + "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", + "requires": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + } + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "entities": { @@ -9059,67 +5982,52 @@ "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" }, "enzyme": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/enzyme/-/enzyme-3.10.0.tgz", - "integrity": "sha512-p2yy9Y7t/PFbPoTvrWde7JIYB2ZyGC+NgTNbVEGvZ5/EyoYSr9aG/2rSbVvyNvMHEhw9/dmGUJHWtfQIEiX9pg==", + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/enzyme/-/enzyme-3.11.0.tgz", + "integrity": "sha512-Dw8/Gs4vRjxY6/6i9wU0V+utmQO9kvh9XLnz3LIudviOnVYDEe2ec+0k+NQoMamn1VrjKgCUOWj5jG/5M5M0Qw==", "dev": true, "requires": { - "array.prototype.flat": "^1.2.1", - "cheerio": "^1.0.0-rc.2", - "function.prototype.name": "^1.1.0", + "array.prototype.flat": "^1.2.3", + "cheerio": "^1.0.0-rc.3", + "enzyme-shallow-equal": "^1.0.1", + "function.prototype.name": "^1.1.2", "has": "^1.0.3", - "html-element-map": "^1.0.0", - "is-boolean-object": "^1.0.0", - "is-callable": "^1.1.4", - "is-number-object": "^1.0.3", - "is-regex": "^1.0.4", - "is-string": "^1.0.4", + "html-element-map": "^1.2.0", + "is-boolean-object": "^1.0.1", + "is-callable": "^1.1.5", + "is-number-object": "^1.0.4", + "is-regex": "^1.0.5", + "is-string": "^1.0.5", "is-subset": "^0.1.1", "lodash.escape": "^4.0.1", "lodash.isequal": "^4.5.0", - "object-inspect": "^1.6.0", - "object-is": "^1.0.1", + "object-inspect": "^1.7.0", + "object-is": "^1.0.2", "object.assign": "^4.1.0", - "object.entries": "^1.0.4", - "object.values": "^1.0.4", - "raf": "^3.4.0", + "object.entries": "^1.1.1", + "object.values": "^1.1.1", + "raf": "^3.4.1", "rst-selector-parser": "^2.2.3", - "string.prototype.trim": "^1.1.2" + "string.prototype.trim": "^1.2.1" } }, "enzyme-adapter-react-16": { - "version": "1.14.0", - "resolved": "https://registry.npmjs.org/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.14.0.tgz", - "integrity": "sha512-7PcOF7pb4hJUvjY7oAuPGpq3BmlCig3kxXGi2kFx0YzJHppqX1K8IIV9skT1IirxXlu8W7bneKi+oQ10QRnhcA==", + "version": "1.15.2", + "resolved": "https://registry.npmjs.org/enzyme-adapter-react-16/-/enzyme-adapter-react-16-1.15.2.tgz", + "integrity": "sha512-SkvDrb8xU3lSxID8Qic9rB8pvevDbLybxPK6D/vW7PrT0s2Cl/zJYuXvsd1EBTz0q4o3iqG3FJhpYz3nUNpM2Q==", "dev": true, "requires": { - "enzyme-adapter-utils": "^1.12.0", + "enzyme-adapter-utils": "^1.13.0", + "enzyme-shallow-equal": "^1.0.1", "has": "^1.0.3", "object.assign": "^4.1.0", - "object.values": "^1.1.0", + "object.values": "^1.1.1", "prop-types": "^15.7.2", - "react-is": "^16.8.6", + "react-is": "^16.12.0", "react-test-renderer": "^16.0.0-0", "semver": "^5.7.0" }, "dependencies": { - "prop-types": { - "version": "15.7.2", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", - "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", - "dev": true, - "requires": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.8.1" - } - }, - "react-is": { - "version": "16.9.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.9.0.tgz", - "integrity": "sha512-tJBzzzIgnnRfEm046qRcURvwQnZVXmuCbscxUO5RWrGTXpon2d4c8mI0D8WE6ydVIm29JiLB6+RslkIvym9Rjw==", - "dev": true - }, "semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", @@ -9129,52 +6037,51 @@ } }, "enzyme-adapter-utils": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/enzyme-adapter-utils/-/enzyme-adapter-utils-1.12.0.tgz", - "integrity": "sha512-wkZvE0VxcFx/8ZsBw0iAbk3gR1d9hK447ebnSYBf95+r32ezBq+XDSAvRErkc4LZosgH8J7et7H7/7CtUuQfBA==", + "version": "1.13.0", + "resolved": "https://registry.npmjs.org/enzyme-adapter-utils/-/enzyme-adapter-utils-1.13.0.tgz", + "integrity": "sha512-YuEtfQp76Lj5TG1NvtP2eGJnFKogk/zT70fyYHXK2j3v6CtuHqc8YmgH/vaiBfL8K1SgVVbQXtTcgQZFwzTVyQ==", "dev": true, "requires": { - "airbnb-prop-types": "^2.13.2", - "function.prototype.name": "^1.1.0", + "airbnb-prop-types": "^2.15.0", + "function.prototype.name": "^1.1.2", "object.assign": "^4.1.0", - "object.fromentries": "^2.0.0", + "object.fromentries": "^2.0.2", "prop-types": "^15.7.2", - "semver": "^5.6.0" + "semver": "^5.7.1" }, "dependencies": { - "prop-types": { - "version": "15.7.2", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", - "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", - "dev": true, - "requires": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.8.1" - } - }, - "react-is": { - "version": "16.9.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.9.0.tgz", - "integrity": "sha512-tJBzzzIgnnRfEm046qRcURvwQnZVXmuCbscxUO5RWrGTXpon2d4c8mI0D8WE6ydVIm29JiLB6+RslkIvym9Rjw==", + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", "dev": true } } }, - "enzyme-to-json": { - "version": "3.3.5", - "resolved": "https://registry.npmjs.org/enzyme-to-json/-/enzyme-to-json-3.3.5.tgz", - "integrity": "sha512-DmH1wJ68HyPqKSYXdQqB33ZotwfUhwQZW3IGXaNXgR69Iodaoj8TF/D9RjLdz4pEhGq2Tx2zwNUIjBuqoZeTgA==", + "enzyme-shallow-equal": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/enzyme-shallow-equal/-/enzyme-shallow-equal-1.0.1.tgz", + "integrity": "sha512-hGA3i1so8OrYOZSM9whlkNmVHOicJpsjgTzC+wn2JMJXhq1oO4kA4bJ5MsfzSIcC71aLDKzJ6gZpIxrqt3QTAQ==", "dev": true, "requires": { - "lodash": "^4.17.4" + "has": "^1.0.3", + "object-is": "^1.0.2" + } + }, + "enzyme-to-json": { + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/enzyme-to-json/-/enzyme-to-json-3.4.4.tgz", + "integrity": "sha512-50LELP/SCPJJGic5rAARvU7pgE3m1YaNj7JLM+Qkhl5t7PAs6fiyc8xzc50RnkKPFQCv0EeFVjEWdIFRGPWMsA==", + "dev": true, + "requires": { + "lodash": "^4.17.15", + "react-is": "^16.12.0" } }, "errno": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", - "dev": true, "requires": { "prr": "~1.0.1" } @@ -9188,46 +6095,83 @@ } }, "es-abstract": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.12.0.tgz", - "integrity": "sha512-C8Fx/0jFmV5IPoMOFPA9P9G5NtqW+4cOPit3MIuvR2t7Ag2K15EJTpxnHAYTzL+aYQJIESYeXZmDBfOBE1HcpA==", - "dev": true, + "version": "1.17.5", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.5.tgz", + "integrity": "sha512-BR9auzDbySxOcfog0tLECW8l28eRGpDpU3Dm3Hp4q/N+VtLTmyj4EUN088XZWQDW/hzj6sYRDXeOFsaAODKvpg==", "requires": { - "es-to-primitive": "^1.1.1", + "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", - "has": "^1.0.1", - "is-callable": "^1.1.3", - "is-regex": "^1.0.4" + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.1.5", + "is-regex": "^1.0.5", + "object-inspect": "^1.7.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.0", + "string.prototype.trimleft": "^2.1.1", + "string.prototype.trimright": "^2.1.1" + }, + "dependencies": { + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" + } } }, "es-to-primitive": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz", - "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==", - "dev": true, + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "requires": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", "is-symbol": "^1.0.2" } }, + "es5-ext": { + "version": "0.10.53", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", + "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", + "requires": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.3", + "next-tick": "~1.0.0" + } + }, + "es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "requires": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "es6-symbol": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "requires": { + "d": "^1.0.1", + "ext": "^1.1.2" + } + }, "escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", - "dev": true + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" }, "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", - "dev": true + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" }, "escodegen": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.1.tgz", "integrity": "sha512-Bmt7NcRySdIfNPfU2ZoXDrrXsG9ZjvDxcAlMfDUgRBjLOWTuIACXPBFJH7Z+cLb40JeQco5toikyc9t9P8E9SQ==", - "dev": true, "requires": { "esprima": "^4.0.1", "estraverse": "^4.2.0", @@ -9240,7 +6184,6 @@ "version": "6.8.0", "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", - "dev": true, "requires": { "@babel/code-frame": "^7.0.0", "ajv": "^6.10.0", @@ -9281,385 +6224,98 @@ "v8-compile-cache": "^2.0.3" }, "dependencies": { - "ajv": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", - "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", - "dev": true, - "requires": { - "type-fest": "^0.11.0" - } - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.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==", - "dev": true, - "requires": { - "restore-cursor": "^3.1.0" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "debug": { "version": "4.1.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, "requires": { "ms": "^2.1.1" } }, - "doctrine": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dev": true, + "eslint-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", + "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", "requires": { - "esutils": "^2.0.2" + "eslint-visitor-keys": "^1.1.0" } }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, - "eslint-visitor-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz", - "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==", - "dev": true - }, - "fast-deep-equal": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", - "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==", - "dev": true - }, - "figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dev": true, + "globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", "requires": { - "escape-string-regexp": "^1.0.5" + "type-fest": "^0.8.1" } }, - "inquirer": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.1.0.tgz", - "integrity": "sha512-5fJMWEmikSYu0nv/flMc475MhGbB7TSPd/2IpFV4I4rMklboCH2rQjYY5kKiYGHqUF9gvaambupcJFFG9dvReg==", - "dev": true, - "requires": { - "ansi-escapes": "^4.2.1", - "chalk": "^3.0.0", - "cli-cursor": "^3.1.0", - "cli-width": "^2.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.15", - "mute-stream": "0.0.8", - "run-async": "^2.4.0", - "rxjs": "^6.5.3", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6" - }, - "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, - "mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true - }, - "onetime": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz", - "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==", - "dev": true, - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "optionator": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", - "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "dev": true, - "requires": { - "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.6", - "levn": "~0.3.0", - "prelude-ls": "~1.1.2", - "type-check": "~0.3.2", - "word-wrap": "~1.2.3" - } - }, - "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" - } - }, - "run-async": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.0.tgz", - "integrity": "sha512-xJTbh/d7Lm7SBhc1tNvTpeCHaEzoyxPrqNlvSdMfBTYwaY++UJFyXUOxAtsRUXjlqOfj8luNaR9vjCh4KeV+pg==", - "dev": true, - "requires": { - "is-promise": "^2.1.0" - } - }, - "rxjs": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", - "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", - "dev": true, - "requires": { - "tslib": "^1.9.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 - }, - "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, - "requires": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "dependencies": { - "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - } - } - }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - } - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - }, - "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", - "dev": true - }, - "v8-compile-cache": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz", - "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==", - "dev": true + "regexpp": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==" } } }, "eslint-config-airbnb": { - "version": "17.1.0", - "resolved": "https://registry.npmjs.org/eslint-config-airbnb/-/eslint-config-airbnb-17.1.0.tgz", - "integrity": "sha512-R9jw28hFfEQnpPau01NO5K/JWMGLi6aymiF6RsnMURjTk+MqZKllCqGK/0tOvHkPi/NWSSOU2Ced/GX++YxLnw==", + "version": "17.1.1", + "resolved": "https://registry.npmjs.org/eslint-config-airbnb/-/eslint-config-airbnb-17.1.1.tgz", + "integrity": "sha512-xCu//8a/aWqagKljt+1/qAM62BYZeNq04HmdevG5yUGWpja0I/xhqd6GdLRch5oetEGFiJAnvtGuTEAese53Qg==", "dev": true, "requires": { - "eslint-config-airbnb-base": "^13.1.0", + "eslint-config-airbnb-base": "^13.2.0", "object.assign": "^4.1.0", - "object.entries": "^1.0.4" + "object.entries": "^1.1.0" } }, "eslint-config-airbnb-base": { - "version": "13.1.0", - "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-13.1.0.tgz", - "integrity": "sha512-XWwQtf3U3zIoKO1BbHh6aUhJZQweOwSt4c2JrPDg9FP3Ltv3+YfEv7jIDB8275tVnO/qOHbfuYg3kzw6Je7uWw==", + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-13.2.0.tgz", + "integrity": "sha512-1mg/7eoB4AUeB0X1c/ho4vb2gYkNH8Trr/EgCT/aGmKhhG+F6vF5s8+iRBlWAzFIAphxIdp3YfEKgEl0f9Xg+w==", "dev": true, "requires": { - "eslint-restricted-globals": "^0.1.1", + "confusing-browser-globals": "^1.0.5", "object.assign": "^4.1.0", - "object.entries": "^1.0.4" + "object.entries": "^1.1.0" } }, "eslint-config-prettier": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-5.0.0.tgz", - "integrity": "sha512-c17Aqiz5e8LEqoc/QPmYnaxQFAHTx2KlCZBPxXXjEMmNchOLnV/7j0HoPZuC+rL/tDC9bazUYOKJW9bOhftI/w==", + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-5.1.0.tgz", + "integrity": "sha512-+tpiaLm3wl6fPW5nq0dDyVowQM0FT61lAdWZ+sDWgk6kKzgbOnCDwlcbwI38cyCBhq+Z3ret5Iofp6/gZpO0zw==", "dev": true, "requires": { "get-stdin": "^6.0.0" - }, - "dependencies": { - "get-stdin": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", - "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", - "dev": true - } + } + }, + "eslint-config-react-app": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/eslint-config-react-app/-/eslint-config-react-app-5.2.1.tgz", + "integrity": "sha512-pGIZ8t0mFLcV+6ZirRgYK6RVqUIKRIi9MmgzUEmrIknsn3AdO0I32asO86dJgloHq+9ZPl8UIg8mYrvgP5u2wQ==", + "requires": { + "confusing-browser-globals": "^1.0.9" } }, "eslint-import-resolver-node": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz", - "integrity": "sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q==", - "dev": true, + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.3.tgz", + "integrity": "sha512-b8crLDo0M5RSe5YG8Pu2DYBj71tSB6OvXkfzwbJU2w7y8P4/yo0MyF8jU26IEuEuHF2K5/gcAJE3LhQGqBBbVg==", "requires": { "debug": "^2.6.9", - "resolve": "^1.5.0" + "resolve": "^1.13.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + } } }, "eslint-import-resolver-webpack": { @@ -9680,6 +6336,15 @@ "semver": "^5.3.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" + } + }, "enhanced-resolve": { "version": "0.9.1", "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-0.9.1.tgz", @@ -9697,14 +6362,11 @@ "integrity": "sha1-8rslNovBIeORwlIN6Slpyu4KApA=", "dev": true }, - "resolve": { - "version": "1.11.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.11.0.tgz", - "integrity": "sha512-WL2pBDjqT6pGUNSUzMw00o4T7If+z4H2x3Gz893WoUQ5KW8Vr9txp00ykiP16VBaZF5+j/OcXJHZ9+PCvdiDKw==", - "dev": true, - "requires": { - "path-parse": "^1.0.6" - } + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true }, "tapable": { "version": "0.1.10", @@ -9714,69 +6376,84 @@ } } }, - "eslint-module-utils": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.2.0.tgz", - "integrity": "sha1-snA2LNiLGkitMIl2zn+lTphBF0Y=", - "dev": true, + "eslint-loader": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/eslint-loader/-/eslint-loader-3.0.3.tgz", + "integrity": "sha512-+YRqB95PnNvxNp1HEjQmvf9KNvCin5HXYYseOXVC2U0KEcw4IkQ2IQEBG46j7+gW39bMzeu0GsUhVbBY3Votpw==", "requires": { - "debug": "^2.6.8", - "pkg-dir": "^1.0.0" + "fs-extra": "^8.1.0", + "loader-fs-cache": "^1.0.2", + "loader-utils": "^1.2.3", + "object-hash": "^2.0.1", + "schema-utils": "^2.6.1" + } + }, + "eslint-module-utils": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz", + "integrity": "sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA==", + "requires": { + "debug": "^2.6.9", + "pkg-dir": "^2.0.0" }, "dependencies": { - "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" - } - }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, - "requires": { - "pinkie-promise": "^2.0.0" + "ms": "2.0.0" } }, "pkg-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz", - "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=", - "dev": true, + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", "requires": { - "find-up": "^1.0.0" + "find-up": "^2.1.0" } } } }, - "eslint-plugin-import": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.14.0.tgz", - "integrity": "sha512-FpuRtniD/AY6sXByma2Wr0TXvXJ4nA/2/04VPlfpmUDPOpOY264x+ILiwnrk/k4RINgDAyFZByxqPUbSQ5YE7g==", - "dev": true, + "eslint-plugin-flowtype": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-flowtype/-/eslint-plugin-flowtype-4.6.0.tgz", + "integrity": "sha512-W5hLjpFfZyZsXfo5anlu7HM970JBDqbEshAJUkeczP6BFCIfJXuiIBQXyberLRtOStT0OGPF8efeTbxlHk4LpQ==", "requires": { + "lodash": "^4.17.15" + } + }, + "eslint-plugin-import": { + "version": "2.20.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.20.1.tgz", + "integrity": "sha512-qQHgFOTjguR+LnYRoToeZWT62XM55MBVXObHM6SKFd1VzDcX/vqT1kAz8ssqigh5eMj8qXcRoXXGZpPP6RfdCw==", + "requires": { + "array-includes": "^3.0.3", + "array.prototype.flat": "^1.2.1", "contains-path": "^0.1.0", - "debug": "^2.6.8", + "debug": "^2.6.9", "doctrine": "1.5.0", - "eslint-import-resolver-node": "^0.3.1", - "eslint-module-utils": "^2.2.0", - "has": "^1.0.1", - "lodash": "^4.17.4", - "minimatch": "^3.0.3", + "eslint-import-resolver-node": "^0.3.2", + "eslint-module-utils": "^2.4.1", + "has": "^1.0.3", + "minimatch": "^3.0.4", + "object.values": "^1.1.0", "read-pkg-up": "^2.0.0", - "resolve": "^1.6.0" + "resolve": "^1.12.0" }, "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, "doctrine": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", - "dev": true, "requires": { "esutils": "^2.0.2", "isarray": "^1.0.0" @@ -9785,14 +6462,12 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "load-json-file": { "version": "2.0.0", - "resolved": "http://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", - "dev": true, "requires": { "graceful-fs": "^4.1.2", "parse-json": "^2.2.0", @@ -9804,7 +6479,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, "requires": { "error-ex": "^1.2.0" } @@ -9813,16 +6487,19 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", - "dev": true, "requires": { "pify": "^2.0.0" } }, + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" + }, "read-pkg": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", - "dev": true, "requires": { "load-json-file": "^2.0.0", "normalize-package-data": "^2.3.2", @@ -9833,117 +6510,110 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", - "dev": true, "requires": { "find-up": "^2.0.0", "read-pkg": "^2.0.0" } - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true } } }, "eslint-plugin-jsx-a11y": { - "version": "6.1.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.1.2.tgz", - "integrity": "sha512-7gSSmwb3A+fQwtw0arguwMdOdzmKUgnUcbSNlo+GjKLAQFuC2EZxWqG9XHRI8VscBJD5a8raz3RuxQNFW+XJbw==", - "dev": true, + "version": "6.2.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.2.3.tgz", + "integrity": "sha512-CawzfGt9w83tyuVekn0GDPU9ytYtxyxyFZ3aSWROmnRRFQFT2BiPJd7jvRdzNDi6oLWaS2asMeYSNMjWTV4eNg==", "requires": { + "@babel/runtime": "^7.4.5", "aria-query": "^3.0.0", "array-includes": "^3.0.3", "ast-types-flow": "^0.0.7", - "axobject-query": "^2.0.1", + "axobject-query": "^2.0.2", "damerau-levenshtein": "^1.0.4", - "emoji-regex": "^6.5.1", + "emoji-regex": "^7.0.2", "has": "^1.0.3", - "jsx-ast-utils": "^2.0.1" + "jsx-ast-utils": "^2.2.1" + }, + "dependencies": { + "aria-query": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-3.0.0.tgz", + "integrity": "sha1-ZbP8wcoRVajJrmTW7uKX8V1RM8w=", + "requires": { + "ast-types-flow": "0.0.7", + "commander": "^2.11.0" + } + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + } } }, "eslint-plugin-react": { - "version": "7.11.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.11.1.tgz", - "integrity": "sha512-cVVyMadRyW7qsIUh3FHp3u6QHNhOgVrLQYdQEB1bPWBsgbNCHdFAeNMquBMCcZJu59eNthX053L70l7gRt4SCw==", - "dev": true, + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.19.0.tgz", + "integrity": "sha512-SPT8j72CGuAP+JFbT0sJHOB80TX/pu44gQ4vXH/cq+hQTiY2PuZ6IHkqXJV6x1b28GDdo1lbInjKUrrdUf0LOQ==", "requires": { - "array-includes": "^3.0.3", + "array-includes": "^3.1.1", "doctrine": "^2.1.0", "has": "^1.0.3", - "jsx-ast-utils": "^2.0.1", - "prop-types": "^15.6.2" + "jsx-ast-utils": "^2.2.3", + "object.entries": "^1.1.1", + "object.fromentries": "^2.0.2", + "object.values": "^1.1.1", + "prop-types": "^15.7.2", + "resolve": "^1.15.1", + "semver": "^6.3.0", + "string.prototype.matchall": "^4.0.2", + "xregexp": "^4.3.0" + }, + "dependencies": { + "doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "requires": { + "esutils": "^2.0.2" + } + } } }, "eslint-plugin-react-hooks": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-2.2.0.tgz", - "integrity": "sha512-jSlnBjV2cmyIeL555H/FbvuSbQ1AtpHjLMHuPrQnt1eVA6lX8yufdygh7AArI2m8ct7ChHGx2uOaCuxq2MUn6g==", - "dev": true - }, - "eslint-restricted-globals": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/eslint-restricted-globals/-/eslint-restricted-globals-0.1.1.tgz", - "integrity": "sha1-NfDVy8ZMLj7WLpO0saevBbp+1Nc=", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-2.5.1.tgz", + "integrity": "sha512-Y2c4b55R+6ZzwtTppKwSmK/Kar8AdLiC2f9NADCuxbcTgPPg41Gyqa6b9GppgXSvCtkRw43ZE86CT5sejKC6/g==", "dev": true }, "eslint-scope": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.0.0.tgz", "integrity": "sha512-oYrhJW7S0bxAFDvWqzvMPRm6pcgcnWc4QnofCAqRTRfQC0JcwenzGglTtsLyIuuWFfkqDG9vz67cnttSd53djw==", - "dev": true, "requires": { "esrecurse": "^4.1.0", "estraverse": "^4.1.1" } }, "eslint-utils": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", - "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", - "dev": true, + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.0.0.tgz", + "integrity": "sha512-0HCPuJv+7Wv1bACm8y5/ECVfYdfsAm9xmVb7saeFlxjPYALefjhbYoCkBjPdPzGH8wWyTpAez82Fh3VKYEZ8OA==", "requires": { "eslint-visitor-keys": "^1.1.0" - }, - "dependencies": { - "eslint-visitor-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz", - "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==", - "dev": true - } } }, "eslint-visitor-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", - "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", - "dev": true + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz", + "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==" }, "espree": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", - "dev": true, "requires": { "acorn": "^7.1.1", "acorn-jsx": "^5.2.0", "eslint-visitor-keys": "^1.1.0" - }, - "dependencies": { - "acorn": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.1.1.tgz", - "integrity": "sha512-add7dgA5ppRPxCFJoAGfMDi7PIBXq1RtGo7BhbLaxwrXPOmw8gq48Y9ozT01hUKy9byMjlR20EJhu5zlkErEkg==", - "dev": true - }, - "eslint-visitor-keys": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz", - "integrity": "sha512-8y9YjtM1JBJU/A9Kc+SbaOV4y29sSWckBwMHa+FGtVj5gN/sbnKDf6xJUl+8g7FAij9LVaP8C24DUiH/f/2Z9A==", - "dev": true - } } }, "esprima": { @@ -9952,57 +6622,57 @@ "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" }, "esquery": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.1.0.tgz", - "integrity": "sha512-MxYW9xKmROWF672KqjO75sszsA8Mxhw06YFeS5VHlB98KDHbOSurm3ArsjO60Eaf3QmGMCP1yn+0JQkNLo/97Q==", - "dev": true, + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", + "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", "requires": { - "estraverse": "^4.0.0" + "estraverse": "^5.1.0" + }, + "dependencies": { + "estraverse": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.1.0.tgz", + "integrity": "sha512-FyohXK+R0vE+y1nHLoBM7ZTyqRpqAlhdZHCWIWEviFLiGB8b04H6bQs8G+XTthacvT8VuwvteiP7RJSxMs8UEw==" + } } }, "esrecurse": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", - "dev": true, "requires": { "estraverse": "^4.1.0" } }, "estraverse": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", - "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", - "dev": true + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" }, "esutils": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", - "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==" }, "etag": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", - "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", - "dev": true + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" }, "eventemitter3": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.1.0.tgz", - "integrity": "sha512-ivIvhpq/Y0uSjcHDcOIccjmYjGLcP09MFGE7ysAwkAvkXfpZlC985pH2/ui64DKazbTW/4kN3yqozUxlXzI6cA==", - "dev": true + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.0.tgz", + "integrity": "sha512-qerSRB0p+UDEssxTtm6EDKcE7W4OaoisfIMl4CngyEhjpYglocpNg6UEqCvemdGhosAsg4sO2dXJOdyBifPGCg==" }, "events": { - "version": "1.1.1", - "resolved": "http://registry.npmjs.org/events/-/events-1.1.1.tgz", - "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=", - "dev": true + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.1.0.tgz", + "integrity": "sha512-Rv+u8MLHNOdMjTAFeT3nCjHn2aGlx435FP/sDHNaRhDEMwyI/aB22Kj2qIN8R0cw3z28psEQLYwxVKLsKrMgWg==" }, "eventsource": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.0.7.tgz", "integrity": "sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ==", - "dev": true, "requires": { "original": "^1.0.0" } @@ -10011,7 +6681,6 @@ "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, "requires": { "md5.js": "^1.3.4", "safe-buffer": "^5.1.1" @@ -10020,14 +6689,12 @@ "exec-sh": { "version": "0.3.4", "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.4.tgz", - "integrity": "sha512-sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A==", - "dev": true + "integrity": "sha512-sEFIkc61v75sWeOe72qyrqg2Qg0OuLESziUDk/O/z2qgS15y2gWVFrI6f2Qn/qw/0/NCfCEsmNA4zOjkwEZT1A==" }, "execa": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", - "dev": true, "requires": { "cross-spawn": "^6.0.0", "get-stream": "^4.0.0", @@ -10036,30 +6703,17 @@ "p-finally": "^1.0.0", "signal-exit": "^3.0.0", "strip-eof": "^1.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==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - } } }, "exit": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", - "dev": true + "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=" }, "expand-brackets": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "dev": true, "requires": { "debug": "^2.3.3", "define-property": "^0.2.5", @@ -10070,11 +6724,18 @@ "to-regex": "^3.0.1" }, "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, "define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, "requires": { "is-descriptor": "^0.1.0" } @@ -10083,7 +6744,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -10091,300 +6751,51 @@ } }, "expect": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/expect/-/expect-25.1.0.tgz", - "integrity": "sha512-wqHzuoapQkhc3OKPlrpetsfueuEiMf3iWh0R8+duCu9PIjXoP7HgD5aeypwTnXUAjC8aMsiVDaWwlbJ1RlQ38g==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-24.9.0.tgz", + "integrity": "sha512-wvVAx8XIol3Z5m9zvZXiyZOQ+sRJqNTIm6sGjdWlaZIeupQGO3WbYI+15D/AmEwZywL6wtJkbAbJtzkOfBuR0Q==", "requires": { - "@jest/types": "^25.1.0", - "ansi-styles": "^4.0.0", - "jest-get-type": "^25.1.0", - "jest-matcher-utils": "^25.1.0", - "jest-message-util": "^25.1.0", - "jest-regex-util": "^25.1.0" - }, - "dependencies": { - "@jest/test-result": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.1.0.tgz", - "integrity": "sha512-FZzSo36h++U93vNWZ0KgvlNuZ9pnDnztvaM7P/UcTx87aPDotG18bXifkf1Ji44B7k/eIatmMzkBapnAzjkJkg==", - "dev": true, - "requires": { - "@jest/console": "^25.1.0", - "@jest/transform": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - } - }, - "@jest/transform": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.1.0.tgz", - "integrity": "sha512-4ktrQ2TPREVeM+KxB4zskAT84SnmG1vaz4S+51aTefyqn3zocZUnliLLm5Fsl85I3p/kFPN4CRp1RElIfXGegQ==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^25.1.0", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^3.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.3", - "jest-haste-map": "^25.1.0", - "jest-regex-util": "^25.1.0", - "jest-util": "^25.1.0", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "realpath-native": "^1.1.0", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - } - }, - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", - "dev": true, - "optional": true - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "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-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "jest-get-type": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.1.0.tgz", - "integrity": "sha512-yWkBnT+5tMr8ANB6V+OjmrIJufHtCAqI5ic2H40v+tRqxDmE0PGnIiTyvRWFOMtmVHYpwRqyazDbTnhpjsGvLw==", - "dev": true - }, - "jest-haste-map": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.1.0.tgz", - "integrity": "sha512-/2oYINIdnQZAqyWSn1GTku571aAfs8NxzSErGek65Iu5o8JYb+113bZysRMcC/pjE5v9w0Yz+ldbj9NxrFyPyw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.1.2", - "graceful-fs": "^4.2.3", - "jest-serializer": "^25.1.0", - "jest-util": "^25.1.0", - "jest-worker": "^25.1.0", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7" - } - }, - "jest-message-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.1.0.tgz", - "integrity": "sha512-Nr/Iwar2COfN22aCqX0kCVbXgn8IBm9nWf4xwGr5Olv/KZh0CZ32RKgZWMVDXGdOahicM10/fgjdimGNX/ttCQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@jest/test-result": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/stack-utils": "^1.0.1", - "chalk": "^3.0.0", - "micromatch": "^4.0.2", - "slash": "^3.0.0", - "stack-utils": "^1.0.1" - } - }, - "jest-regex-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.1.0.tgz", - "integrity": "sha512-9lShaDmDpqwg+xAd73zHydKrBbbrIi08Kk9YryBEBybQFg/lBWR/2BDjjiSE7KIppM9C5+c03XiDaZ+m4Pgs1w==", - "dev": true - }, - "jest-serializer": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.1.0.tgz", - "integrity": "sha512-20Wkq5j7o84kssBwvyuJ7Xhn7hdPeTXndnwIblKDR2/sy1SUm6rWWiG9kSCgJPIfkDScJCIsTtOKdlzfIHOfKA==", - "dev": true - }, - "jest-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.1.0.tgz", - "integrity": "sha512-7did6pLQ++87Qsj26Fs/TIwZMUFBXQ+4XXSodRNy3luch2DnRXsSnmpVtxxQ0Yd6WTipGpbhh2IFP1mq6/fQGw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", - "is-ci": "^2.0.0", - "mkdirp": "^0.5.1" - } - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } + "@jest/types": "^24.9.0", + "ansi-styles": "^3.2.0", + "jest-get-type": "^24.9.0", + "jest-matcher-utils": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-regex-util": "^24.9.0" } }, "express": { - "version": "4.16.4", - "resolved": "https://registry.npmjs.org/express/-/express-4.16.4.tgz", - "integrity": "sha512-j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg==", - "dev": true, + "version": "4.17.1", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", + "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", "requires": { - "accepts": "~1.3.5", + "accepts": "~1.3.7", "array-flatten": "1.1.1", - "body-parser": "1.18.3", - "content-disposition": "0.5.2", + "body-parser": "1.19.0", + "content-disposition": "0.5.3", "content-type": "~1.0.4", - "cookie": "0.3.1", + "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.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.2", + "parseurl": "~1.3.3", "path-to-regexp": "0.1.7", - "proxy-addr": "~2.0.4", - "qs": "6.5.2", - "range-parser": "~1.2.0", + "proxy-addr": "~2.0.5", + "qs": "6.7.0", + "range-parser": "~1.2.1", "safe-buffer": "5.1.2", - "send": "0.16.2", - "serve-static": "1.13.2", - "setprototypeof": "1.1.0", - "statuses": "~1.4.0", - "type-is": "~1.6.16", + "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" }, @@ -10392,28 +6803,71 @@ "array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", - "dev": true + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } }, "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 + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + }, + "qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" + } + } + }, + "ext": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", + "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "requires": { + "type": "^2.0.0" + }, + "dependencies": { + "type": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.0.0.tgz", + "integrity": "sha512-KBt58xCHry4Cejnc2ISQAF7QY+ORngsWfxezO68+12hKV6lQY8P/psIkcbjeHWn7MqcgciWJyCCevFMJdIXpow==" } } }, "extend": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", - "dev": true + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "requires": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "dependencies": { + "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==", + "requires": { + "is-plain-object": "^2.0.4" + } + } + } }, "external-editor": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.0.3.tgz", - "integrity": "sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==", - "dev": true, + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", "requires": { "chardet": "^0.7.0", "iconv-lite": "^0.4.24", @@ -10424,7 +6878,6 @@ "version": "2.0.4", "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, "requires": { "array-unique": "^0.3.2", "define-property": "^1.0.0", @@ -10440,7 +6893,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, "requires": { "is-descriptor": "^1.0.0" } @@ -10449,7 +6901,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -10458,7 +6909,6 @@ "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" } @@ -10467,7 +6917,6 @@ "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" } @@ -10476,7 +6925,6 @@ "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", @@ -10484,48 +6932,70 @@ } }, "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", - "dev": true + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" } } }, "extsprintf": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", - "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", - "dev": true + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" }, "fast-deep-equal": { - "version": "1.1.0", - "resolved": "http://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", - "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=", - "dev": true + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", + "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==" + }, + "fast-glob": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz", + "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==", + "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" + }, + "dependencies": { + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "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=", + "requires": { + "is-extglob": "^2.1.0" + } + } + } + } + } }, "fast-json-stable-stringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", - "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=", - "dev": true + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" }, "fast-levenshtein": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", - "dev": true - }, - "fastparse": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.2.tgz", - "integrity": "sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==", - "dev": true + "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" }, "faye-websocket": { "version": "0.10.0", "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", - "dev": true, "requires": { "websocket-driver": ">=0.5.1" } @@ -10534,22 +7004,19 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz", "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==", - "dev": true, "requires": { "bser": "2.1.1" } }, "figgy-pudding": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.1.tgz", - "integrity": "sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w==", - "dev": true + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", + "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==" }, "figures": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", - "dev": true, + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", "requires": { "escape-string-regexp": "^1.0.5" } @@ -10558,19 +7025,17 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", - "dev": true, "requires": { "flat-cache": "^2.0.1" } }, "file-loader": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-2.0.0.tgz", - "integrity": "sha512-YCsBfd1ZGCyonOKLxPiKPdu+8ld9HAaMEvJewzz+b2eTF7uL5Zm/HdBF6FjCrpCMRq25Mi0U1gl4pwn2TlH7hQ==", - "dev": true, + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-4.3.0.tgz", + "integrity": "sha512-aKrYPYjF1yG3oX0kWRrqrSMfgftm7oJW5M+m4owoldH5C51C0RkIwB++JbRvEW3IU6/ZG5n8UvEcdgwOt2UOWA==", "requires": { - "loader-utils": "^1.0.2", - "schema-utils": "^1.0.0" + "loader-utils": "^1.2.3", + "schema-utils": "^2.5.0" } }, "file-selector": { @@ -10581,11 +7046,15 @@ "tslib": "^1.9.0" } }, + "filesize": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/filesize/-/filesize-6.0.1.tgz", + "integrity": "sha512-u4AYWPgbI5GBhs6id1KdImZWn5yfyFrrQ8OWZdN7ZMfA8Bf4HcO0BGo9bmUIEV8yrp8I1xVfJ/dn90GtFNNJcg==" + }, "fill-range": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, "requires": { "extend-shallow": "^2.0.1", "is-number": "^3.0.0", @@ -10597,7 +7066,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -10605,25 +7073,33 @@ } }, "finalhandler": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz", - "integrity": "sha512-Y1GUDo39ez4aHAw7MysnUD5JzYX+WaIj8I57kO3aEPT1fFRL4sr7mjei97FgnwhAyyzRYmQZaTHb2+9uZ1dPtg==", - "dev": true, + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", "requires": { "debug": "2.6.9", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "on-finished": "~2.3.0", - "parseurl": "~1.3.2", - "statuses": "~1.4.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", "unpipe": "~1.0.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + } } }, "find-cache-dir": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, "requires": { "commondir": "^1.0.1", "make-dir": "^2.0.0", @@ -10639,7 +7115,6 @@ "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" } @@ -10648,35 +7123,26 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", - "dev": true, "requires": { "flatted": "^2.0.0", "rimraf": "2.6.3", "write": "1.0.3" - }, - "dependencies": { - "rimraf": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } } }, "flatted": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.1.tgz", - "integrity": "sha512-a1hQMktqW9Nmqr5aktAux3JMNqaucxGcjtjWnZLHX7yyPCmlSV3M54nGYbqT8K+0GhF3NBgmJCc3ma+WOgX8Jg==", - "dev": true + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==" + }, + "flatten": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.3.tgz", + "integrity": "sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg==" }, "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, "requires": { "inherits": "^2.0.3", "readable-stream": "^2.3.6" @@ -10685,14 +7151,12 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -10707,7 +7171,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -10731,42 +7194,57 @@ } }, "follow-redirects": { - "version": "1.5.9", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.9.tgz", - "integrity": "sha512-Bh65EZI/RU8nx0wbYF9shkFZlqLP+6WT/5FnA3cE/djNSuKNHJEinGGZgu/cQEkeeb2GdFOgenAmn8qaqYke2w==", - "dev": true, + "version": "1.5.10", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz", + "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==", "requires": { "debug": "=3.1.0" - }, - "dependencies": { - "debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } } }, "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "dev": true + "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" + }, + "for-own": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", + "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", + "requires": { + "for-in": "^1.0.1" + } }, "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", - "dev": true + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" + }, + "fork-ts-checker-webpack-plugin": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-3.1.1.tgz", + "integrity": "sha512-DuVkPNrM12jR41KM2e+N+styka0EgLkTnXmNcXdgOM37vtGeY+oCBK/Jx0hzSeEU6memFCtWb4htrHPMDfwwUQ==", + "requires": { + "babel-code-frame": "^6.22.0", + "chalk": "^2.4.1", + "chokidar": "^3.3.0", + "micromatch": "^3.1.10", + "minimatch": "^3.0.4", + "semver": "^5.6.0", + "tapable": "^1.0.0", + "worker-rpc": "^0.1.0" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } + } }, "form-data": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", - "dev": true, "requires": { "asynckit": "^0.4.0", "combined-stream": "^1.0.6", @@ -10774,9 +7252,9 @@ } }, "formik": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/formik/-/formik-2.1.2.tgz", - "integrity": "sha512-lbhyV8FQ/hkg4tsVf075Ad9/vDXVbSj6XLW8ooZtAZyNJK8MBYLf1fRJ6iEo2C0pODQneDboYpEUby7nsPW00Q==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/formik/-/formik-2.1.4.tgz", + "integrity": "sha512-oKz8S+yQBzuQVSEoxkqqJrKQS5XJASWGVn6mrs+oTWrBoHgByVwwI1qHiVc9GKDpZBU9vAxXYAKz2BvujlwunA==", "requires": { "deepmerge": "^2.1.1", "hoist-non-react-statics": "^3.3.0", @@ -10786,48 +7264,17 @@ "scheduler": "^0.18.0", "tiny-warning": "^1.0.2", "tslib": "^1.10.0" - }, - "dependencies": { - "hoist-non-react-statics": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.1.tgz", - "integrity": "sha512-wbg3bpgA/ZqWrZuMOeJi8+SKMhr7X9TesL/rXMjTzh0p0JUBo3II8DHboYbuIXWRlttrUFxwcu/5kygrCw8fJw==", - "requires": { - "react-is": "^16.7.0" - } - }, - "react-is": { - "version": "16.12.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.12.0.tgz", - "integrity": "sha512-rPCkf/mWBtKc97aLL9/txD8DZdemK0vkA3JMLShjlJB3Pj3s+lpf1KaBzMfQrAmhMQB0n1cU/SUGgKKBCe837Q==" - }, - "scheduler": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.18.0.tgz", - "integrity": "sha512-agTSHR1Nbfi6ulI0kYNK0203joW2Y5W4po4l+v03tOoiJKpTBbxpNhWDvqc/4IcOw+KLmSiQLTasZ4cab2/UWQ==", - "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" - } - }, - "tslib": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz", - "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==" - } } }, "forwarded": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", - "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=", - "dev": true + "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" }, "fragment-cache": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", - "dev": true, "requires": { "map-cache": "^0.2.2" } @@ -10835,14 +7282,12 @@ "fresh": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", - "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", - "dev": true + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" }, "from2": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", - "dev": true, "requires": { "inherits": "^2.0.1", "readable-stream": "^2.0.0" @@ -10851,14 +7296,12 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -10873,18 +7316,34 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } } } }, + "fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", + "requires": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + }, + "fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "requires": { + "minipass": "^3.0.0" + } + }, "fs-write-stream-atomic": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", - "dev": true, "requires": { "graceful-fs": "^4.1.2", "iferr": "^0.1.5", @@ -10895,577 +7354,39 @@ "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "fsevents": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.7.tgz", - "integrity": "sha512-Pxm6sI2MeBD7RdD12RYsqaP0nMiwx8eZBXCa6z2L+mRHm2DYrOYwihmhjpkdjUHwQhslWQjRpEgNq4XvBmaAuw==", - "dev": true, - "optional": true, - "requires": { - "nan": "^2.9.2", - "node-pre-gyp": "^0.10.0" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "ansi-regex": { - "version": "2.1.1", - "bundled": true, - "dev": true - }, - "aproba": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - }, - "are-we-there-yet": { - "version": "1.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "bundled": true, - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "bundled": true, - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "code-point-at": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "concat-map": { - "version": "0.0.1", - "bundled": true, - "dev": true - }, - "console-control-strings": { - "version": "1.1.0", - "bundled": true, - "dev": true - }, - "core-util-is": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "debug": { - "version": "2.6.9", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ms": "2.0.0" - } - }, - "deep-extend": { - "version": "0.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "bundled": true, - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "fs.realpath": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - } - }, - "glob": { - "version": "7.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - }, - "has-unicode": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "iconv-lite": { - "version": "0.4.24", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "bundled": true, - "dev": true - }, - "ini": { - "version": "1.3.5", - "bundled": true, - "dev": true, - "optional": true - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "bundled": true, - "dev": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "bundled": true, - "dev": true - }, - "minipass": { - "version": "2.3.5", - "bundled": true, - "dev": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.2.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "mkdirp": { - "version": "0.5.1", - "bundled": true, - "dev": true, - "requires": { - "minimist": "0.0.8" - } - }, - "ms": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "needle": { - "version": "2.2.4", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "debug": "^2.1.2", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.10.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "detect-libc": "^1.0.2", - "mkdirp": "^0.5.1", - "needle": "^2.2.1", - "nopt": "^4.0.1", - "npm-packlist": "^1.1.6", - "npmlog": "^4.0.2", - "rc": "^1.2.7", - "rimraf": "^2.6.1", - "semver": "^5.3.0", - "tar": "^4" - } - }, - "nopt": { - "version": "4.0.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.0.5", - "bundled": true, - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "npmlog": { - "version": "4.1.2", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, - "number-is-nan": { - "version": "1.0.1", - "bundled": true, - "dev": true - }, - "object-assign": { - "version": "4.1.1", - "bundled": true, - "dev": true, - "optional": true - }, - "once": { - "version": "1.4.0", - "bundled": true, - "dev": true, - "requires": { - "wrappy": "1" - } - }, - "os-homedir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "os-tmpdir": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "rc": { - "version": "1.2.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "bundled": true, - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.3.6", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "rimraf": { - "version": "2.6.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "safe-buffer": { - "version": "5.1.2", - "bundled": true, - "dev": true - }, - "safer-buffer": { - "version": "2.1.2", - "bundled": true, - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "bundled": true, - "dev": true, - "optional": true - }, - "semver": { - "version": "5.6.0", - "bundled": true, - "dev": true, - "optional": true - }, - "set-blocking": { - "version": "2.0.0", - "bundled": true, - "dev": true, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "string_decoder": { - "version": "1.1.1", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "bundled": true, - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "strip-json-comments": { - "version": "2.0.1", - "bundled": true, - "dev": true, - "optional": true - }, - "tar": { - "version": "4.4.8", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "chownr": "^1.1.1", - "fs-minipass": "^1.2.5", - "minipass": "^2.3.4", - "minizlib": "^1.1.1", - "mkdirp": "^0.5.0", - "safe-buffer": "^5.1.2", - "yallist": "^3.0.2" - } - }, - "util-deprecate": { - "version": "1.0.2", - "bundled": true, - "dev": true, - "optional": true - }, - "wide-align": { - "version": "1.1.3", - "bundled": true, - "dev": true, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "bundled": true, - "dev": true - }, - "yallist": { - "version": "3.0.3", - "bundled": true, - "dev": true - } - } - }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" - } + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", + "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", + "optional": true }, "function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, "function.prototype.name": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.0.tgz", - "integrity": "sha512-Bs0VRrTz4ghD8pTmbJQD1mZ8A/mN0ur/jGz+A6FBxPDUPkm1tNfF6bhTYPA7i7aF4lZJVr+OXTNNrnnIl58Wfg==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.2.tgz", + "integrity": "sha512-C8A+LlHBJjB2AdcRPorc5JvJ5VUoWlXdEHLOJdCI7kjHEtGTpHQUiqMvCIKUwIsGwZX2jZJy761AXsn356bJQg==", "dev": true, "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "is-callable": "^1.1.3" + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1", + "functions-have-names": "^1.2.0" } }, "functional-red-black-tree": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", - "dev": true + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=" }, "functions-have-names": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.1.1.tgz", - "integrity": "sha512-U0kNHUoxwPNPWOJaMG7Z00d4a/qZVrFtzWJRaK8V9goaVOCXBSQSJpt3MYGNtkScKEBKovxLjnNdC9MlXwo5Pw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.1.tgz", + "integrity": "sha512-j48B/ZI7VKs3sgeI2cZp7WXWmZXu7Iq5pl5/vptV5N2mq+DGFuS/ulaDjtaoLpYzuD6u8UgrUKHfgo7fDTSiBA==", "dev": true }, "fuzzaldrin": { @@ -11474,97 +7395,52 @@ "integrity": "sha1-kCBMPi/appQbso0WZF1BgGOpDps=", "dev": true }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "dev": true, - "requires": { - "aproba": "^1.0.3", - "console-control-strings": "^1.0.0", - "has-unicode": "^2.0.0", - "object-assign": "^4.1.0", - "signal-exit": "^3.0.0", - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wide-align": "^1.1.0" - }, - "dependencies": { - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - } - } - }, - "gaze": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", - "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", - "dev": true, - "requires": { - "globule": "^1.0.0" - } - }, "gensync": { "version": "1.0.0-beta.1", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", - "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==", - "dev": true + "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==" }, "get-caller-file": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", - "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", - "dev": true + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" + }, + "get-own-enumerable-property-symbols": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz", + "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==" }, "get-stdin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", - "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz", + "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==", "dev": true }, "get-stream": { - "version": "3.0.0", - "resolved": "http://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", - "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", - "dev": true + "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" + } }, "get-value": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "dev": true + "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=" }, "getpass": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", - "dev": true, "requires": { "assert-plus": "^1.0.0" } }, "glob": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", - "dev": true, + "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", @@ -11575,55 +7451,78 @@ } }, "glob-parent": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.0.tgz", - "integrity": "sha512-qjtRgnIVmOfnKUE3NJAQEdk+lKrxfw8t5ke7SXtfMTHcjsBfOfWXCQfdb30zfDoZQ2IRSIiidmjtbHZPZ++Ihw==", - "dev": true, + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", + "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", "requires": { "is-glob": "^4.0.1" } }, - "global": { - "version": "4.3.2", - "resolved": "https://registry.npmjs.org/global/-/global-4.3.2.tgz", - "integrity": "sha1-52mJJopsdMOJCLEwWxD8DjlOnQ8=", - "dev": true, + "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=" + }, + "global-modules": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz", + "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==", "requires": { - "min-document": "^2.19.0", - "process": "~0.5.1" + "global-prefix": "^3.0.0" } }, - "global-modules-path": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/global-modules-path/-/global-modules-path-2.3.0.tgz", - "integrity": "sha512-HchvMJNYh9dGSCy8pOQ2O8u/hoXaL+0XhnrwH0RyLiSXMMTl9W3N6KUU73+JFOg5PGjtzl6VZzUQsnrpm7Szag==", - "dev": true + "global-prefix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz", + "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==", + "requires": { + "ini": "^1.3.5", + "kind-of": "^6.0.2", + "which": "^1.3.1" + }, + "dependencies": { + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" + } + } }, "globals": { - "version": "12.4.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", - "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", - "dev": true, - "requires": { - "type-fest": "^0.8.1" - } + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" }, - "globule": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.0.tgz", - "integrity": "sha512-YlD4kdMqRCQHrhVdonet4TdRtv1/sZKepvoxNT4Nrhrp5HI8XFfc8kFlGlBn2myBo80aGp8Eft259mbcUJhgSg==", - "dev": true, + "globby": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-8.0.2.tgz", + "integrity": "sha512-yTzMmKygLp8RUpG1Ymu2VXPSJQZjNAZPD4ywgYEaG7e4tBJeUQBO8OpXrf1RCNcEs5alsoJYPAMiIHP0cmeC7w==", "requires": { - "glob": "~7.1.1", - "lodash": "~4.17.10", - "minimatch": "~3.0.2" + "array-union": "^1.0.1", + "dir-glob": "2.0.0", + "fast-glob": "^2.0.2", + "glob": "^7.1.2", + "ignore": "^3.3.5", + "pify": "^3.0.0", + "slash": "^1.0.0" + }, + "dependencies": { + "ignore": { + "version": "3.3.10", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", + "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==" + }, + "slash": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", + "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" + } } }, "graceful-fs": { - "version": "4.1.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", - "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", - "dev": true + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", + "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==" }, "graphlib": { "version": "2.1.8", @@ -11636,42 +7535,57 @@ "growly": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", - "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", - "dev": true, - "optional": true + "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=" }, "gud": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/gud/-/gud-1.0.0.tgz", "integrity": "sha512-zGEOVKFM5sVPPrYs7J5/hYEw2Pof8KCyOwyhG8sAF26mCAeUFAcYPu1mwB7hhpIP29zOIBaDqwuHdLp0jvZXjw==" }, + "gzip-size": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-5.1.1.tgz", + "integrity": "sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA==", + "requires": { + "duplexer": "^0.1.1", + "pify": "^4.0.1" + }, + "dependencies": { + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" + } + } + }, "handle-thing": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.0.tgz", - "integrity": "sha512-d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ==", - "dev": true + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", + "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==" }, "har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", - "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", - "dev": true + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" }, "har-validator": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.0.tgz", - "integrity": "sha512-+qnmNjI4OfH2ipQ9VQOw23bBd/ibtfbVdK2fYbY4acTDqKTW/YDp9McimZdDbG8iV9fZizUqQMD5xvriB146TA==", - "dev": true, + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", "requires": { - "ajv": "^5.3.0", + "ajv": "^6.5.5", "har-schema": "^2.0.0" } }, + "harmony-reflect": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/harmony-reflect/-/harmony-reflect-1.6.1.tgz", + "integrity": "sha512-WJTeyp0JzGtHcuMsi7rw2VwtkvLa+JyfEKJCFyfcS0+CDkjQ5lHPu7zEhFZP+PDSRrEgXa5Ah0l1MbgbE41XjA==" + }, "has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, "requires": { "function-bind": "^1.1.1" } @@ -11697,71 +7611,38 @@ "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" }, "has-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", - "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", - "dev": true - }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", + "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" }, "has-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", - "dev": true, "requires": { "get-value": "^2.0.6", "has-values": "^1.0.0", "isobject": "^3.0.0" - }, - "dependencies": { - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - } } }, "has-values": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", - "dev": true, "requires": { "is-number": "^3.0.0", "kind-of": "^4.0.0" }, "dependencies": { - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" }, "kind-of": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -11769,13 +7650,38 @@ } }, "hash-base": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz", - "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", - "dev": true, + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", + "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "safe-buffer": "^5.2.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" + } + }, + "safe-buffer": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz", + "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==" + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "requires": { + "safe-buffer": "~5.2.0" + } + } } }, "hash-sum": { @@ -11784,33 +7690,41 @@ "integrity": "sha1-M7QHd3VMZDJXPBIMw4CLvRDUfwQ=" }, "hash.js": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.5.tgz", - "integrity": "sha512-eWI5HG9Np+eHV1KQhisXWwM+4EPPYe5dFX1UZZH7k/E3JzDEazVH+VGlZi6R94ZqImq+A3D1mCEtrFIfg/E7sA==", - "dev": true, + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", "requires": { "inherits": "^2.0.3", "minimalistic-assert": "^1.0.1" } }, + "he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==" + }, + "hex-color-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/hex-color-regex/-/hex-color-regex-1.1.0.tgz", + "integrity": "sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==" + }, "history": { - "version": "4.9.0", - "resolved": "https://registry.npmjs.org/history/-/history-4.9.0.tgz", - "integrity": "sha512-H2DkjCjXf0Op9OAr6nJ56fcRkTSNrUiv41vNJ6IswJjif6wlpZK0BTfFbi7qK9dXLSYZxkq5lBsj3vUjlYBYZA==", + "version": "4.10.1", + "resolved": "https://registry.npmjs.org/history/-/history-4.10.1.tgz", + "integrity": "sha512-36nwAD620w12kuzPAsyINPWJqlNbij+hpK1k9XRloDtym8mxzGYl2c17LnV6IAGB2Dmg4tEa7G7DlawS0+qjew==", "requires": { "@babel/runtime": "^7.1.2", "loose-envify": "^1.2.0", - "resolve-pathname": "^2.2.0", + "resolve-pathname": "^3.0.0", "tiny-invariant": "^1.0.2", "tiny-warning": "^1.0.0", - "value-equal": "^0.4.0" + "value-equal": "^1.0.1" } }, "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, "requires": { "hash.js": "^1.0.3", "minimalistic-assert": "^1.0.0", @@ -11818,22 +7732,22 @@ } }, "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==", - "dev": true + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.0.tgz", + "integrity": "sha512-0XsbTXxgiaCDYDIWFcwkmerZPSwywfUqYmwT4jzewKTQSWoE6FCMoUVOeBJWK3E/CrWbxRG3m5GzY4lnIwGRBA==", + "requires": { + "react-is": "^16.7.0" + } }, "hosted-git-info": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", - "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==", - "dev": true + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==" }, "hpack.js": { "version": "2.1.6", "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz", "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", - "dev": true, "requires": { "inherits": "^2.0.1", "obuf": "^1.0.0", @@ -11844,14 +7758,12 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -11864,19 +7776,33 @@ }, "string_decoder": { "version": "1.1.1", - "resolved": "http://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } } } }, + "hsl-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/hsl-regex/-/hsl-regex-1.0.0.tgz", + "integrity": "sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4=" + }, + "hsla-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/hsla-regex/-/hsla-regex-1.0.0.tgz", + "integrity": "sha1-wc56MWjIxmFAM6S194d/OyJfnDg=" + }, + "html-comment-regex": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/html-comment-regex/-/html-comment-regex-1.1.2.tgz", + "integrity": "sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ==" + }, "html-element-map": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/html-element-map/-/html-element-map-1.1.0.tgz", - "integrity": "sha512-iqiG3dTZmy+uUaTmHarTL+3/A2VW9ox/9uasKEZC+R/wAtUrTcRlXPSaPqsnWPfIu8wqn09jQNwMRqzL54jSYA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/html-element-map/-/html-element-map-1.2.0.tgz", + "integrity": "sha512-0uXq8HsuG1v2TmQ8QkIhzbrqeskE4kn52Q18QJ9iAA/SnHoEKXWiUxHQtclRsCFWEUD2So34X+0+pZZu862nnw==", "dev": true, "requires": { "array-filter": "^1.0.0" @@ -11886,21 +7812,49 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz", "integrity": "sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==", - "dev": true, "requires": { "whatwg-encoding": "^1.0.1" } }, "html-entities": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.2.1.tgz", - "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=" + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.3.1.tgz", + "integrity": "sha512-rhE/4Z3hIhzHAUKbW8jVcCyuT5oJCXXqhN/6mXXVCpzTmvJnoH2HL/bt3EZ6p55jbFJBeAe1ZNpL5BugLujxNA==" }, "html-escaper": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.0.tgz", - "integrity": "sha512-a4u9BeERWGu/S8JiWEAQcdrg9v4QArtP9keViQjGMdff20fBdd8waotXaNmODqBe6uZ3Nafi7K/ho4gCQHV3Ig==", - "dev": true + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==" + }, + "html-minifier-terser": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-5.1.0.tgz", + "integrity": "sha512-tiYE76O1zunboByeB/nFGwUEb263Z3nkNv6Lz2oLC1s6M36bLKfTrjQ+7ssVfaucVllE+N7hh/FbpbxvnIA+LQ==", + "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" + }, + "dependencies": { + "camel-case": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.1.tgz", + "integrity": "sha512-7fa2WcG4fYFkclIvEmxBbTvmibwF2/agfEBc6q3lOpVu0A13ltLsA+Hr/8Hp6kp5f+G7hKi6t8lys6XxP+1K6Q==", + "requires": { + "pascal-case": "^3.1.1", + "tslib": "^1.10.0" + } + }, + "commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==" + } + } }, "html-tokenize": { "version": "2.0.1", @@ -11912,12 +7866,29 @@ "minimist": "~1.2.5", "readable-stream": "~1.0.27-1", "through2": "~0.4.1" + } + }, + "html-webpack-plugin": { + "version": "4.0.0-beta.11", + "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-4.0.0-beta.11.tgz", + "integrity": "sha512-4Xzepf0qWxf8CGg7/WQM5qBB2Lc/NFI7MhU59eUDTkuQp3skZczH4UA1d6oQyDEIoMDgERVhRyTdtUPZ5s5HBg==", + "requires": { + "html-minifier-terser": "^5.0.1", + "loader-utils": "^1.2.3", + "lodash": "^4.17.15", + "pretty-error": "^2.1.1", + "tapable": "^1.1.3", + "util.promisify": "1.0.0" }, "dependencies": { - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + "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==", + "requires": { + "define-properties": "^1.1.2", + "object.getownpropertydescriptors": "^2.0.3" + } } } }, @@ -11925,7 +7896,6 @@ "version": "3.10.1", "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", - "dev": true, "requires": { "domelementtype": "^1.3.1", "domhandler": "^2.3.0", @@ -11936,10 +7906,9 @@ }, "dependencies": { "readable-stream": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.4.0.tgz", - "integrity": "sha512-jItXPLmrSR8jmTRmRWJXCnGJsfy85mB3Wd/uINMXA65yrnFo0cPClFIUWzo2najVNSl+mx7/4W8ttlLWJe99pQ==", - "dev": true, + "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", @@ -11949,14 +7918,12 @@ "safe-buffer": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz", - "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==", - "dev": true + "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==" }, "string_decoder": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, "requires": { "safe-buffer": "~5.2.0" } @@ -11966,358 +7933,96 @@ "http-deceiver": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", - "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=", - "dev": true + "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=" }, "http-errors": { - "version": "1.6.3", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", - "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", - "dev": true, + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", + "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", "requires": { "depd": "~1.1.2", "inherits": "2.0.3", - "setprototypeof": "1.1.0", - "statuses": ">= 1.4.0 < 2" + "setprototypeof": "1.1.1", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.0" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + } } }, "http-parser-js": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.0.tgz", - "integrity": "sha512-cZdEF7r4gfRIq7ezX9J0T+kQmJNOub71dWbgAXVHDct80TKP4MCETtZQ31xyv38UwgzkWPYF/Xc0ge55dW9Z9w==", - "dev": true + "version": "0.4.10", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.10.tgz", + "integrity": "sha1-ksnBN0w1CF912zWexWzCV8u5P6Q=" }, "http-proxy": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.17.0.tgz", - "integrity": "sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g==", - "dev": true, + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.0.tgz", + "integrity": "sha512-84I2iJM/n1d4Hdgc6y2+qY5mDaz2PUVjlg9znE9byl+q0uC3DeByqBGReQu5tpLK0TAqTIXScRUV+dg7+bUPpQ==", "requires": { - "eventemitter3": "^3.0.0", + "eventemitter3": "^4.0.0", "follow-redirects": "^1.0.0", "requires-port": "^1.0.0" } }, "http-proxy-middleware": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz", - "integrity": "sha512-Fs25KVMPAIIcgjMZkVHJoKg9VcXcC1C8yb9JUgeDvVXY0S/zgVIhMb+qVswDIgtJe2DfckMSY2d6TuTEutlk6Q==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-1.0.3.tgz", + "integrity": "sha512-GHvPeBD+A357zS5tHjzj6ISrVOjjCiy0I92bdyTJz0pNmIjFxO0NX/bX+xkGgnclKQE/5hHAB9JEQ7u9Pw4olg==", "dev": true, "requires": { - "http-proxy": "^1.16.2", - "is-glob": "^4.0.0", - "lodash": "^4.17.5", - "micromatch": "^3.1.9" + "@types/http-proxy": "^1.17.3", + "http-proxy": "^1.18.0", + "is-glob": "^4.0.1", + "lodash": "^4.17.15", + "micromatch": "^4.0.2" }, "dependencies": { - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true - }, "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "dev": true, - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true - } - } - }, - "extend-shallow": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", - "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "dev": true, "requires": { - "assign-symbols": "^1.0.0", - "is-extendable": "^1.0.1" - }, - "dependencies": { - "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" - } - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } + "fill-range": "^7.0.1" } }, "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "dev": true, "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "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-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", - "dev": true - }, - "is-glob": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.0.tgz", - "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", - "dev": true, - "requires": { - "is-extglob": "^2.1.1" + "to-regex-range": "^5.0.1" } }, "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - }, - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true }, "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", + "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", "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" + "braces": "^3.0.1", + "picomatch": "^2.0.5" + } + }, + "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==", + "dev": true, + "requires": { + "is-number": "^7.0.0" } } } @@ -12326,7 +8031,6 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", - "dev": true, "requires": { "assert-plus": "^1.0.0", "jsprim": "^1.2.2", @@ -12336,14 +8040,7 @@ "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 - }, - "human-signals": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", - "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==", - "dev": true + "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=" }, "iconv-lite": { "version": "0.4.24", @@ -12353,421 +8050,361 @@ "safer-buffer": ">= 2.1.2 < 3" } }, - "icss-replace-symbols": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz", - "integrity": "sha1-Bupvg2ead0njhs/h/oEq5dsiPe0=", - "dev": true - }, "icss-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-2.1.0.tgz", - "integrity": "sha1-g/Cg7DeL8yRheLbCrZE28TWxyWI=", - "dev": true, + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", + "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", "requires": { - "postcss": "^6.0.1" + "postcss": "^7.0.14" + } + }, + "identity-obj-proxy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/identity-obj-proxy/-/identity-obj-proxy-3.0.0.tgz", + "integrity": "sha1-lNK9qWCERT7zb7xarsN+D3nx/BQ=", + "requires": { + "harmony-reflect": "^1.4.6" } }, "ieee754": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.12.tgz", - "integrity": "sha512-GguP+DRY+pJ3soyIiGPTvdiVXjZ+DbXOxGpXn3eMvNW4x4irjqXm4wHKscC+TfxSJ0yw/S1F24tqdMNsMZTiLA==", - "dev": true + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", + "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==" }, "iferr": { "version": "0.1.5", "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", - "dev": true + "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=" }, "ignore": { "version": "4.0.6", "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", - "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", - "dev": true + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==" + }, + "immer": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/immer/-/immer-1.10.0.tgz", + "integrity": "sha512-O3sR1/opvCDGLEVcvrGTMtLac8GJ5IwZC4puPrLuRj3l7ICKvkmA0vGuU9OW8mV9WIBRnaxp5GJh9IEAaNOoYg==" + }, + "import-cwd": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz", + "integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=", + "requires": { + "import-from": "^2.1.0" + } }, "import-fresh": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", - "dev": true, "requires": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" } }, - "import-local": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz", - "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==", - "dev": true, + "import-from": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz", + "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=", "requires": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" + "resolve-from": "^3.0.0" }, "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz", - "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, - "requires": { - "p-limit": "^2.2.0" - } - }, - "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==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "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" - } - }, - "resolve-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", - "dev": true, - "requires": { - "resolve-from": "^5.0.0" - } - }, "resolve-from": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "dev": true + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=" } } }, + "import-local": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", + "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", + "requires": { + "pkg-dir": "^3.0.0", + "resolve-cwd": "^2.0.0" + } + }, "imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true - }, - "in-publish": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz", - "integrity": "sha1-4g/146KvwmkDILbcVSaCqcf631E=", - "dev": true + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=" }, "indent-string": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", - "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==" }, - "indexof": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz", - "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", - "dev": true + "indexes-of": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", + "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=" }, "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 + "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==" }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, "requires": { "once": "^1.3.0", "wrappy": "1" } }, "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "ini": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", + "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==" }, "inquirer": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.2.0.tgz", - "integrity": "sha512-QIEQG4YyQ2UYZGDC4srMZ7BjHOmNk1lR2JQj5UknBapklm6WHA+VVH7N+sUdX3A7NeCfGF8o4X1S3Ao7nAcIeg==", - "dev": true, + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.1.0.tgz", + "integrity": "sha512-5fJMWEmikSYu0nv/flMc475MhGbB7TSPd/2IpFV4I4rMklboCH2rQjYY5kKiYGHqUF9gvaambupcJFFG9dvReg==", "requires": { - "ansi-escapes": "^3.0.0", - "chalk": "^2.0.0", - "cli-cursor": "^2.1.0", + "ansi-escapes": "^4.2.1", + "chalk": "^3.0.0", + "cli-cursor": "^3.1.0", "cli-width": "^2.0.0", - "external-editor": "^3.0.0", - "figures": "^2.0.0", - "lodash": "^4.17.10", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rxjs": "^6.1.0", - "string-width": "^2.1.0", - "strip-ansi": "^4.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.15", + "mute-stream": "0.0.8", + "run-async": "^2.4.0", + "rxjs": "^6.5.3", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", "through": "^2.3.6" }, "dependencies": { "ansi-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", - "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", - "dev": true + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" }, "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", + "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", "requires": { - "color-convert": "^1.9.0" + "@types/color-name": "^1.1.1", + "color-convert": "^2.0.1" } }, "chalk": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", - "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", - "dev": true, + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.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, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "requires": { - "ansi-regex": "^3.0.0" + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" + }, + "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" } }, "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", "requires": { - "has-flag": "^3.0.0" + "has-flag": "^4.0.0" } } } }, "internal-ip": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-3.0.1.tgz", - "integrity": "sha512-NXXgESC2nNVtU+pqmC9e6R8B1GpKxzsAQhffvh5AL79qKnodd+L7tnEQmTiUAVngqLalPbSqRA7XGIEL5nCd0Q==", - "dev": true, + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz", + "integrity": "sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg==", "requires": { - "default-gateway": "^2.6.0", - "ipaddr.js": "^1.5.2" + "default-gateway": "^4.2.0", + "ipaddr.js": "^1.9.0" + } + }, + "internal-slot": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.2.tgz", + "integrity": "sha512-2cQNfwhAfJIkU4KZPkDI+Gj5yNNnbqi40W9Gge6dfnk4TocEVm00B3bdiL+JINrbGJil2TeHvM4rETGzk/f/0g==", + "requires": { + "es-abstract": "^1.17.0-next.1", + "has": "^1.0.3", + "side-channel": "^1.0.2" } }, "interpret": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", - "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.2.0.tgz", + "integrity": "sha512-mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw==", "dev": true }, "invariant": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, "requires": { "loose-envify": "^1.0.0" } }, "invert-kv": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", - "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", - "dev": true + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==" }, "ip": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", - "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=", - "dev": true + "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" }, "ip-regex": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", - "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", - "dev": true + "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=" }, "ipaddr.js": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.8.0.tgz", - "integrity": "sha1-6qM9bd16zo9/b+DJygRA5wZzix4=", - "dev": true + "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==" + }, + "is-absolute-url": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-2.1.0.tgz", + "integrity": "sha1-UFMN+4T8yap9vnhS6Do3uTufKqY=" }, "is-accessor-descriptor": { "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, "requires": { "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } } }, "is-alphabetical": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.2.tgz", - "integrity": "sha512-V0xN4BYezDHcBSKb1QHUFMlR4as/XEuCZBzMJUU4n7+Cbt33SmUnSol+pnXFvLxSHNq2CemUXNdaXV6Flg7+xg==", + "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.2", - "resolved": "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.2.tgz", - "integrity": "sha512-pyfU/0kHdISIgslFfZN9nfY1Gk3MquQgUm1mJTjdkEPpkAKNWuBTSqFwewOpR7N351VkErCiyV71zX7mlQQqsg==", + "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.0.4", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", + "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==" + }, "is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" }, "is-binary-path": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", - "dev": true, + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", "requires": { - "binary-extensions": "^1.0.0" + "binary-extensions": "^2.0.0" } }, "is-boolean-object": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.0.0.tgz", - "integrity": "sha1-mPiygDBoQhmpXzdc+9iM40Bd/5M=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.0.1.tgz", + "integrity": "sha512-TqZuVwa/sppcrhUCAYkGBk7w0yxfQQnxq28fjkO53tnK9FQXmdwz2JS5+GjsWQ6RByES1K40nI+yDic5c9/aAQ==", "dev": true }, "is-buffer": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", - "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", - "dev": true - }, - "is-builtin-module": { - "version": "1.0.0", - "resolved": "http://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", - "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", - "dev": true, - "requires": { - "builtin-modules": "^1.0.0" - } + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.4.tgz", + "integrity": "sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A==" }, "is-callable": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", - "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", - "dev": true + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz", + "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==" }, "is-ci": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", - "dev": true, "requires": { "ci-info": "^2.0.0" } }, + "is-color-stop": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-color-stop/-/is-color-stop-1.1.0.tgz", + "integrity": "sha1-z/9HGu5N1cnhWFmPvhKWe1za00U=", + "requires": { + "css-color-names": "^0.0.4", + "hex-color-regex": "^1.1.0", + "hsl-regex": "^1.0.0", + "hsla-regex": "^1.0.0", + "rgb-regex": "^1.0.1", + "rgba-regex": "^1.0.0" + } + }, "is-data-descriptor": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dev": true, "requires": { "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } } }, "is-date-object": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", - "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", - "dev": true + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", + "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==" }, "is-decimal": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.2.tgz", - "integrity": "sha512-TRzl7mOCchnhchN+f3ICUCzYvL9ul7R+TYOsZ8xia++knyZAJfv/uA1FvQXsAnYIl1T3B2X5E/J7Wb1QXiIBXg==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.4.tgz", + "integrity": "sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw==", "dev": true }, "is-descriptor": { "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, "requires": { "is-accessor-descriptor": "^0.1.6", "is-data-descriptor": "^0.1.4", @@ -12777,8 +8414,7 @@ "kind-of": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==" } } }, @@ -12787,44 +8423,41 @@ "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz", "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=" }, + "is-docker": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.0.0.tgz", + "integrity": "sha512-pJEdRugimx4fBMra5z2/5iRdZ63OhYV0vr0Dwm5+xtW4D1FvRkB8hamMIhnWfyJeDdyr/aa7BDyNbtG38VxgoQ==" + }, "is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "dev": true + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" }, "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-finite": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", - "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", + "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", + "dev": true }, "is-fullwidth-code-point": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", - "dev": true + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" }, "is-generator-fn": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", - "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", - "dev": true + "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==" }, "is-glob": { "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" } @@ -12833,95 +8466,87 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, "requires": { "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } } }, "is-number-object": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.3.tgz", - "integrity": "sha1-8mWrian0RQNO9q/xWo8AsA9VF5k=", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.4.tgz", + "integrity": "sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw==", "dev": true }, + "is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==" + }, "is-path-cwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", - "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", - "dev": true + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz", + "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==" }, "is-path-in-cwd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz", - "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", - "dev": true, + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz", + "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==", "requires": { - "is-path-inside": "^1.0.0" + "is-path-inside": "^2.1.0" } }, "is-path-inside": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz", - "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", - "dev": true, + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz", + "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==", "requires": { - "path-is-inside": "^1.0.1" + "path-is-inside": "^1.0.2" } }, + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=" + }, "is-plain-object": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", - "dev": true, "requires": { "isobject": "^3.0.1" - }, - "dependencies": { - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - } } }, - "is-promise": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", - "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", - "dev": true - }, "is-regex": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", - "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", - "dev": true, + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", + "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", "requires": { - "has": "^1.0.1" + "has": "^1.0.3" } }, + "is-regexp": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz", + "integrity": "sha1-/S2INUXEa6xaYz57mgnof6LLUGk=" + }, + "is-resolvable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz", + "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==" + }, + "is-root": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-root/-/is-root-2.1.0.tgz", + "integrity": "sha512-AGOriNp96vNBd3HtU+RzFEc75FfR5ymiYv8E553I71SCeXBiMsVDUtdio1OEFvrPyLIQ9tVR5RxXIFe5PUFjMg==" + }, "is-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true + "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" }, "is-string": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.4.tgz", - "integrity": "sha1-zDqbaYV9Yh6WNyWiTK7shzuCbmQ=", - "dev": true + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", + "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==" }, "is-subset": { "version": "0.1.1", @@ -12929,38 +8554,41 @@ "integrity": "sha1-ilkRfZMt4d4A8kX83TnOQ/HpOaY=", "dev": true }, - "is-symbol": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz", - "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==", - "dev": true, + "is-svg": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-svg/-/is-svg-3.0.0.tgz", + "integrity": "sha512-gi4iHK53LR2ujhLVVj+37Ykh9GLqYHX6JOVXbLAucaG/Cqw9xwdFOjDM2qeifLs1sF1npXXFvDu0r5HNgCMrzQ==", "requires": { - "has-symbols": "^1.0.0" + "html-comment-regex": "^1.1.0" + } + }, + "is-symbol": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.3.tgz", + "integrity": "sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==", + "requires": { + "has-symbols": "^1.0.1" } }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" }, - "is-utf8": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", - "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", - "dev": true + "is-what": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.8.0.tgz", + "integrity": "sha512-UKeBoQfV8bjlM4pmx1FLDHdxslW/1mTksEs8ReVsilPmUv5cORd4+2/wFcviI3cUjrLybxCjzc8DnodAzJ/Wrg==" }, "is-windows": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==" }, "is-wsl": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=" }, "isarray": { "version": "0.0.1", @@ -12970,269 +8598,66 @@ "isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", - "dev": true + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=" }, "isstream": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", - "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", - "dev": true + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" }, "istanbul-lib-coverage": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz", - "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==", - "dev": true + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz", + "integrity": "sha512-8aXznuEPCJvGnMSRft4udDRDtb1V3pkQkMMI5LI+6HuQz5oQ4J2UFn1H82raA3qJtyOLkkwVqICBQkjnGtn5mA==" }, "istanbul-lib-instrument": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.1.tgz", - "integrity": "sha512-imIchxnodll7pvQBYOqUu88EufLCU56LMeFPZZM/fJZ1irYcYdqroaV+ACK1Ila8ls09iEYArp+nqyC6lW1Vfg==", - "dev": true, + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.3.0.tgz", + "integrity": "sha512-5nnIN4vo5xQZHdXno/YDXJ0G+I3dAm4XgzfSVTPLQpj/zAV2dV6Juy0yaf10/zrJOJeHoN3fraFe+XRq2bFVZA==", "requires": { - "@babel/core": "^7.7.5", - "@babel/parser": "^7.7.5", - "@babel/template": "^7.7.4", - "@babel/traverse": "^7.7.4", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.0.0", - "semver": "^6.3.0" + "@babel/generator": "^7.4.0", + "@babel/parser": "^7.4.3", + "@babel/template": "^7.4.0", + "@babel/traverse": "^7.4.3", + "@babel/types": "^7.4.0", + "istanbul-lib-coverage": "^2.0.5", + "semver": "^6.0.0" + } + }, + "istanbul-lib-report": { + "version": "2.0.8", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.8.tgz", + "integrity": "sha512-fHBeG573EIihhAblwgxrSenp0Dby6tJMFR/HvlerBsrCTD5bkUuoNtn3gVh29ZCS824cGGBPn7Sg7cNk+2xUsQ==", + "requires": { + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "supports-color": "^6.1.0" }, "dependencies": { - "@babel/code-frame": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.8.3.tgz", - "integrity": "sha512-a9gxpmdXtZEInkCSHUJDLHZVBgb1QS0jhss4cPP93EW7s+uC5bikET2twEF3KV+7rDblJcmNvTR7VJejqd2C2g==", - "dev": true, - "requires": { - "@babel/highlight": "^7.8.3" - } - }, - "@babel/generator": { - "version": "7.8.8", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.8.8.tgz", - "integrity": "sha512-HKyUVu69cZoclptr8t8U5b6sx6zoWjh8jiUhnuj3MpZuKT2dJ8zPTuiy31luq32swhI0SpwItCIlU8XW7BZeJg==", - "dev": true, - "requires": { - "@babel/types": "^7.8.7", - "jsesc": "^2.5.1", - "lodash": "^4.17.13", - "source-map": "^0.5.0" - } - }, - "@babel/helper-function-name": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.8.3.tgz", - "integrity": "sha512-BCxgX1BC2hD/oBlIFUgOCQDOPV8nSINxCwM3o93xP4P9Fq6aV5sgv2cOOITDMtCfQ+3PvHp3l689XZvAM9QyOA==", - "dev": true, - "requires": { - "@babel/helper-get-function-arity": "^7.8.3", - "@babel/template": "^7.8.3", - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-get-function-arity": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.8.3.tgz", - "integrity": "sha512-FVDR+Gd9iLjUMY1fzE2SR0IuaJToR4RkCDARVfsBBPSP53GEqSFjD8gNyxg246VUyc/ALRxFaAK8rVG7UT7xRA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/helper-split-export-declaration": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.8.3.tgz", - "integrity": "sha512-3x3yOeyBhW851hroze7ElzdkeRXQYQbFIb7gLK1WQYsw2GWDay5gAJNw1sWJ0VFP6z5J1whqeXH/WCdCjZv6dA==", - "dev": true, - "requires": { - "@babel/types": "^7.8.3" - } - }, - "@babel/highlight": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.8.3.tgz", - "integrity": "sha512-PX4y5xQUvy0fnEVHrYOarRPXVWafSjTW9T0Hab8gVIawpl2Sj0ORyrygANq+KjcNlSSTw0YCLSNA8OyZ1I4yEg==", - "dev": true, - "requires": { - "chalk": "^2.0.0", - "esutils": "^2.0.2", - "js-tokens": "^4.0.0" - } - }, - "@babel/parser": { - "version": "7.8.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.8.8.tgz", - "integrity": "sha512-mO5GWzBPsPf6865iIbzNE0AvkKF3NE+2S3eRUpE+FE07BOAkXh6G+GW/Pj01hhXjve1WScbaIO4UlY1JKeqCcA==", - "dev": true - }, - "@babel/template": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.8.6.tgz", - "integrity": "sha512-zbMsPMy/v0PWFZEhQJ66bqjhH+z0JgMoBWuikXybgG3Gkd/3t5oQ1Rw2WQhnSrsOmsKXnZOx15tkC4qON/+JPg==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6" - } - }, - "@babel/traverse": { - "version": "7.8.6", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.8.6.tgz", - "integrity": "sha512-2B8l0db/DPi8iinITKuo7cbPznLCEk0kCxDoB9/N6gGNg/gxOXiR/IcymAFPiBwk5w6TtQ27w4wpElgp9btR9A==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.8.3", - "@babel/generator": "^7.8.6", - "@babel/helper-function-name": "^7.8.3", - "@babel/helper-split-export-declaration": "^7.8.3", - "@babel/parser": "^7.8.6", - "@babel/types": "^7.8.6", - "debug": "^4.1.0", - "globals": "^11.1.0", - "lodash": "^4.17.13" - } - }, - "@babel/types": { - "version": "7.8.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.8.7.tgz", - "integrity": "sha512-k2TreEHxFA4CjGkL+GYjRyx35W0Mr7DP5+9q6WMkyKXB+904bYmG40syjMFV0oLlhhFCwWl0vA0DyzTDkwAiJw==", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "lodash": "^4.17.13", - "to-fast-properties": "^2.0.0" - } - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "dev": true - }, - "js-tokens": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - "dev": true - }, - "jsesc": { - "version": "2.5.2", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", - "dev": true - }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true - }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", "requires": { "has-flag": "^3.0.0" } } } }, - "istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==", - "dev": true, - "requires": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^3.0.0", - "supports-color": "^7.1.0" - }, - "dependencies": { - "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 - }, - "make-dir": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.0.2.tgz", - "integrity": "sha512-rYKABKutXa6vXTXhoV18cBE7PaewPXHe/Bdq4v+ZLMhxbWApkFFplT0LcbMW+6BbjnQXzZ/sAvSE/JdguApG5w==", - "dev": true, - "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==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, "istanbul-lib-source-maps": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz", - "integrity": "sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==", - "dev": true, + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.6.tgz", + "integrity": "sha512-R47KzMtDJH6X4/YW9XTx+jrLnZnscW4VpNN+1PViSYTejLVPWv7oov+Duf8YQSPyVRUvueQqz1TcsC6mooZTXw==", "requires": { "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", + "istanbul-lib-coverage": "^2.0.5", + "make-dir": "^2.1.0", + "rimraf": "^2.6.3", "source-map": "^0.6.1" }, "dependencies": { @@ -13240,7 +8665,6 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, "requires": { "ms": "^2.1.1" } @@ -13248,3775 +8672,540 @@ "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" } } }, "istanbul-reports": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.0.tgz", - "integrity": "sha512-2osTcC8zcOSUkImzN2EWQta3Vdi4WjjKw99P2yWx5mLnigAM0Rd5uYFn1cf2i/Ois45GkNjaoTqc5CxgMSX80A==", - "dev": true, + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.2.7.tgz", + "integrity": "sha512-uu1F/L1o5Y6LzPVSVZXNOoD/KXpJue9aeLRd0sM9uMXfZvzomB0WxVamWb5ue8kA2vVWEmW7EG+A5n3f1kqHKg==", "requires": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" + "html-escaper": "^2.0.0" } }, "jest": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest/-/jest-25.1.0.tgz", - "integrity": "sha512-FV6jEruneBhokkt9MQk0WUFoNTwnF76CLXtwNMfsc0um0TlB/LG2yxUd0KqaFjEJ9laQmVWQWS0sG/t2GsuI0w==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-24.9.0.tgz", + "integrity": "sha512-YvkBL1Zm7d2B1+h5fHEOdyjCG+sGMz4f8D86/0HiqJ6MB4MnDc8FgP5vdWsGnemOQro7lnYo8UakZ3+5A0jxGw==", "requires": { - "@jest/core": "^25.1.0", - "import-local": "^3.0.2", - "jest-cli": "^25.1.0" + "import-local": "^2.0.0", + "jest-cli": "^24.9.0" }, "dependencies": { - "@jest/test-result": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.1.0.tgz", - "integrity": "sha512-FZzSo36h++U93vNWZ0KgvlNuZ9pnDnztvaM7P/UcTx87aPDotG18bXifkf1Ji44B7k/eIatmMzkBapnAzjkJkg==", - "dev": true, - "requires": { - "@jest/console": "^25.1.0", - "@jest/transform": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - } - }, - "@jest/transform": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.1.0.tgz", - "integrity": "sha512-4ktrQ2TPREVeM+KxB4zskAT84SnmG1vaz4S+51aTefyqn3zocZUnliLLm5Fsl85I3p/kFPN4CRp1RElIfXGegQ==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^25.1.0", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^3.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.3", - "jest-haste-map": "^25.1.0", - "jest-regex-util": "^25.1.0", - "jest-util": "^25.1.0", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "realpath-native": "^1.1.0", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - } - }, - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", - "dev": true, - "optional": true - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "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-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, "jest-cli": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-25.1.0.tgz", - "integrity": "sha512-p+aOfczzzKdo3AsLJlhs8J5EW6ffVidfSZZxXedJ0mHPBOln1DccqFmGCoO8JWd4xRycfmwy1eoQkMsF8oekPg==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-24.9.0.tgz", + "integrity": "sha512-+VLRKyitT3BWoMeSUIHRxV/2g8y9gw91Jh5z2UmXZzkZKpbC08CSehVxgHUwTpy+HwGcns/tqafQDJW7imYvGg==", "requires": { - "@jest/core": "^25.1.0", - "@jest/test-result": "^25.1.0", - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", + "@jest/core": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "chalk": "^2.0.1", "exit": "^0.1.2", - "import-local": "^3.0.2", + "import-local": "^2.0.0", "is-ci": "^2.0.0", - "jest-config": "^25.1.0", - "jest-util": "^25.1.0", - "jest-validate": "^25.1.0", + "jest-config": "^24.9.0", + "jest-util": "^24.9.0", + "jest-validate": "^24.9.0", "prompts": "^2.0.1", "realpath-native": "^1.1.0", - "yargs": "^15.0.0" - } - }, - "jest-get-type": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.1.0.tgz", - "integrity": "sha512-yWkBnT+5tMr8ANB6V+OjmrIJufHtCAqI5ic2H40v+tRqxDmE0PGnIiTyvRWFOMtmVHYpwRqyazDbTnhpjsGvLw==", - "dev": true - }, - "jest-haste-map": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.1.0.tgz", - "integrity": "sha512-/2oYINIdnQZAqyWSn1GTku571aAfs8NxzSErGek65Iu5o8JYb+113bZysRMcC/pjE5v9w0Yz+ldbj9NxrFyPyw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.1.2", - "graceful-fs": "^4.2.3", - "jest-serializer": "^25.1.0", - "jest-util": "^25.1.0", - "jest-worker": "^25.1.0", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7" - } - }, - "jest-regex-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.1.0.tgz", - "integrity": "sha512-9lShaDmDpqwg+xAd73zHydKrBbbrIi08Kk9YryBEBybQFg/lBWR/2BDjjiSE7KIppM9C5+c03XiDaZ+m4Pgs1w==", - "dev": true - }, - "jest-serializer": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.1.0.tgz", - "integrity": "sha512-20Wkq5j7o84kssBwvyuJ7Xhn7hdPeTXndnwIblKDR2/sy1SUm6rWWiG9kSCgJPIfkDScJCIsTtOKdlzfIHOfKA==", - "dev": true - }, - "jest-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.1.0.tgz", - "integrity": "sha512-7did6pLQ++87Qsj26Fs/TIwZMUFBXQ+4XXSodRNy3luch2DnRXsSnmpVtxxQ0Yd6WTipGpbhh2IFP1mq6/fQGw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", - "is-ci": "^2.0.0", - "mkdirp": "^0.5.1" - } - }, - "jest-validate": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-25.1.0.tgz", - "integrity": "sha512-kGbZq1f02/zVO2+t1KQGSVoCTERc5XeObLwITqC6BTRH3Adv7NZdYqCpKIZLUgpLXf2yISzQ465qOZpul8abXA==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "camelcase": "^5.3.1", - "chalk": "^3.0.0", - "jest-get-type": "^25.1.0", - "leven": "^3.1.0", - "pretty-format": "^25.1.0" - } - }, - "leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "pretty-format": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.1.0.tgz", - "integrity": "sha512-46zLRSGLd02Rp+Lhad9zzuNZ+swunitn8zIpfD2B4OPCRLXbM87RJT2aBLBWYOznNUML/2l/ReMyWNC80PJBUQ==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^16.12.0" - } - }, - "react-is": { - "version": "16.13.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.0.tgz", - "integrity": "sha512-GFMtL0vHkiBv9HluwNZTggSn/sCyEt9n02aM0dSAjGGyqyNlAyftYm4phPxdvCigG15JreC5biwxCgTAJZ7yAA==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "is-number": "^7.0.0" + "yargs": "^13.3.0" } } } }, "jest-changed-files": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-25.1.0.tgz", - "integrity": "sha512-bdL1aHjIVy3HaBO3eEQeemGttsq1BDlHgWcOjEOIAcga7OOEGWHD2WSu8HhL7I1F0mFFyci8VKU4tRNk+qtwDA==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-24.9.0.tgz", + "integrity": "sha512-6aTWpe2mHF0DhL28WjdkO8LyGjs3zItPET4bMSeXU6T3ub4FPMw+mcOcbdGXQOAfmLcxofD23/5Bl9Z4AkFwqg==", "requires": { - "@jest/types": "^25.1.0", - "execa": "^3.2.0", - "throat": "^5.0.0" - }, - "dependencies": { - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "cross-spawn": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.1.tgz", - "integrity": "sha512-u7v4o84SwFpD32Z8IIcPZ6z1/ie24O6RU3RbtL5Y316l3KuHVPx9ItBgWQ6VlfAFnRnTtMUrsQ9MUUTuEZjogg==", - "dev": true, - "requires": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - } - }, - "execa": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-3.4.0.tgz", - "integrity": "sha512-r9vdGQk4bmCuK1yKQu1KTwcT2zwfWdbdaXfCtAh+5nU/4fSX+JAb7vZGvI5naJrQlvONrEB20jeruESI69530g==", - "dev": true, - "requires": { - "cross-spawn": "^7.0.0", - "get-stream": "^5.0.0", - "human-signals": "^1.1.1", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.0", - "onetime": "^5.1.0", - "p-finally": "^2.0.0", - "signal-exit": "^3.0.2", - "strip-final-newline": "^2.0.0" - } - }, - "get-stream": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.1.0.tgz", - "integrity": "sha512-EXr1FOzrzTfGeL0gQdeFEvOMm2mzMOglyiOXSTpPC+iAjAKftbr3jpCMWynogwYnM+eSj9sHGc6wjIcDvYiygw==", - "dev": true, - "requires": { - "pump": "^3.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==", - "dev": true - }, - "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 - }, - "mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true - }, - "npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "requires": { - "path-key": "^3.0.0" - } - }, - "onetime": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz", - "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==", - "dev": true, - "requires": { - "mimic-fn": "^2.1.0" - } - }, - "p-finally": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-2.0.1.tgz", - "integrity": "sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==", - "dev": true - }, - "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 - }, - "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==", - "dev": true, - "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==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - } + "@jest/types": "^24.9.0", + "execa": "^1.0.0", + "throat": "^4.0.0" } }, "jest-config": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-25.1.0.tgz", - "integrity": "sha512-tLmsg4SZ5H7tuhBC5bOja0HEblM0coS3Wy5LTCb2C8ZV6eWLewHyK+3qSq9Bi29zmWQ7ojdCd3pxpx4l4d2uGw==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-24.9.0.tgz", + "integrity": "sha512-RATtQJtVYQrp7fvWg6f5y3pEFj9I+H8sWw4aKxnDZ96mob5i5SD6ZEGWgMLXQ4LE8UurrjbdlLWdUeo+28QpfQ==", "requires": { "@babel/core": "^7.1.0", - "@jest/test-sequencer": "^25.1.0", - "@jest/types": "^25.1.0", - "babel-jest": "^25.1.0", - "chalk": "^3.0.0", + "@jest/test-sequencer": "^24.9.0", + "@jest/types": "^24.9.0", + "babel-jest": "^24.9.0", + "chalk": "^2.0.1", "glob": "^7.1.1", - "jest-environment-jsdom": "^25.1.0", - "jest-environment-node": "^25.1.0", - "jest-get-type": "^25.1.0", - "jest-jasmine2": "^25.1.0", - "jest-regex-util": "^25.1.0", - "jest-resolve": "^25.1.0", - "jest-util": "^25.1.0", - "jest-validate": "^25.1.0", - "micromatch": "^4.0.2", - "pretty-format": "^25.1.0", + "jest-environment-jsdom": "^24.9.0", + "jest-environment-node": "^24.9.0", + "jest-get-type": "^24.9.0", + "jest-jasmine2": "^24.9.0", + "jest-regex-util": "^24.3.0", + "jest-resolve": "^24.9.0", + "jest-util": "^24.9.0", + "jest-validate": "^24.9.0", + "micromatch": "^3.1.10", + "pretty-format": "^24.9.0", "realpath-native": "^1.1.0" - }, - "dependencies": { - "@jest/transform": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.1.0.tgz", - "integrity": "sha512-4ktrQ2TPREVeM+KxB4zskAT84SnmG1vaz4S+51aTefyqn3zocZUnliLLm5Fsl85I3p/kFPN4CRp1RElIfXGegQ==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^25.1.0", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^3.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.3", - "jest-haste-map": "^25.1.0", - "jest-regex-util": "^25.1.0", - "jest-util": "^25.1.0", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "realpath-native": "^1.1.0", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - } - }, - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "babel-jest": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-25.1.0.tgz", - "integrity": "sha512-tz0VxUhhOE2y+g8R2oFrO/2VtVjA1lkJeavlhExuRBg3LdNJY9gwQ+Vcvqt9+cqy71MCTJhewvTB7Qtnnr9SWg==", - "dev": true, - "requires": { - "@jest/transform": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/babel__core": "^7.1.0", - "babel-plugin-istanbul": "^6.0.0", - "babel-preset-jest": "^25.1.0", - "chalk": "^3.0.0", - "slash": "^3.0.0" - } - }, - "babel-plugin-jest-hoist": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-25.1.0.tgz", - "integrity": "sha512-oIsopO41vW4YFZ9yNYoLQATnnN46lp+MZ6H4VvPKFkcc2/fkl3CfE/NZZSmnEIEsJRmJAgkVEK0R7Zbl50CpTw==", - "dev": true, - "requires": { - "@types/babel__traverse": "^7.0.6" - } - }, - "babel-preset-jest": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-25.1.0.tgz", - "integrity": "sha512-eCGn64olaqwUMaugXsTtGAM2I0QTahjEtnRu0ql8Ie+gDWAc1N6wqN0k2NilnyTunM69Pad7gJY7LOtwLimoFQ==", - "dev": true, - "requires": { - "@babel/plugin-syntax-bigint": "^7.0.0", - "@babel/plugin-syntax-object-rest-spread": "^7.0.0", - "babel-plugin-jest-hoist": "^25.1.0" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", - "dev": true, - "optional": true - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "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-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "jest-get-type": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.1.0.tgz", - "integrity": "sha512-yWkBnT+5tMr8ANB6V+OjmrIJufHtCAqI5ic2H40v+tRqxDmE0PGnIiTyvRWFOMtmVHYpwRqyazDbTnhpjsGvLw==", - "dev": true - }, - "jest-haste-map": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.1.0.tgz", - "integrity": "sha512-/2oYINIdnQZAqyWSn1GTku571aAfs8NxzSErGek65Iu5o8JYb+113bZysRMcC/pjE5v9w0Yz+ldbj9NxrFyPyw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.1.2", - "graceful-fs": "^4.2.3", - "jest-serializer": "^25.1.0", - "jest-util": "^25.1.0", - "jest-worker": "^25.1.0", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7" - } - }, - "jest-regex-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.1.0.tgz", - "integrity": "sha512-9lShaDmDpqwg+xAd73zHydKrBbbrIi08Kk9YryBEBybQFg/lBWR/2BDjjiSE7KIppM9C5+c03XiDaZ+m4Pgs1w==", - "dev": true - }, - "jest-serializer": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.1.0.tgz", - "integrity": "sha512-20Wkq5j7o84kssBwvyuJ7Xhn7hdPeTXndnwIblKDR2/sy1SUm6rWWiG9kSCgJPIfkDScJCIsTtOKdlzfIHOfKA==", - "dev": true - }, - "jest-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.1.0.tgz", - "integrity": "sha512-7did6pLQ++87Qsj26Fs/TIwZMUFBXQ+4XXSodRNy3luch2DnRXsSnmpVtxxQ0Yd6WTipGpbhh2IFP1mq6/fQGw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", - "is-ci": "^2.0.0", - "mkdirp": "^0.5.1" - } - }, - "jest-validate": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-25.1.0.tgz", - "integrity": "sha512-kGbZq1f02/zVO2+t1KQGSVoCTERc5XeObLwITqC6BTRH3Adv7NZdYqCpKIZLUgpLXf2yISzQ465qOZpul8abXA==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "camelcase": "^5.3.1", - "chalk": "^3.0.0", - "jest-get-type": "^25.1.0", - "leven": "^3.1.0", - "pretty-format": "^25.1.0" - } - }, - "leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "pretty-format": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.1.0.tgz", - "integrity": "sha512-46zLRSGLd02Rp+Lhad9zzuNZ+swunitn8zIpfD2B4OPCRLXbM87RJT2aBLBWYOznNUML/2l/ReMyWNC80PJBUQ==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^16.12.0" - } - }, - "react-is": { - "version": "16.13.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.0.tgz", - "integrity": "sha512-GFMtL0vHkiBv9HluwNZTggSn/sCyEt9n02aM0dSAjGGyqyNlAyftYm4phPxdvCigG15JreC5biwxCgTAJZ7yAA==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } } }, "jest-diff": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-25.1.0.tgz", - "integrity": "sha512-nepXgajT+h017APJTreSieh4zCqnSHEJ1iT8HDlewu630lSJ4Kjjr9KNzm+kzGwwcpsDE6Snx1GJGzzsefaEHw==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-24.9.0.tgz", + "integrity": "sha512-qMfrTs8AdJE2iqrTp0hzh7kTd2PQWrsFyj9tORoKmu32xjPjeE4NyjVRDz8ybYwqS2ik8N4hsIpiVTyFeo2lBQ==", "requires": { - "chalk": "^3.0.0", - "diff-sequences": "^25.1.0", - "jest-get-type": "^25.1.0", - "pretty-format": "^25.1.0" - }, - "dependencies": { - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "jest-get-type": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.1.0.tgz", - "integrity": "sha512-yWkBnT+5tMr8ANB6V+OjmrIJufHtCAqI5ic2H40v+tRqxDmE0PGnIiTyvRWFOMtmVHYpwRqyazDbTnhpjsGvLw==", - "dev": true - }, - "pretty-format": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.1.0.tgz", - "integrity": "sha512-46zLRSGLd02Rp+Lhad9zzuNZ+swunitn8zIpfD2B4OPCRLXbM87RJT2aBLBWYOznNUML/2l/ReMyWNC80PJBUQ==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^16.12.0" - } - }, - "react-is": { - "version": "16.13.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.0.tgz", - "integrity": "sha512-GFMtL0vHkiBv9HluwNZTggSn/sCyEt9n02aM0dSAjGGyqyNlAyftYm4phPxdvCigG15JreC5biwxCgTAJZ7yAA==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "chalk": "^2.0.1", + "diff-sequences": "^24.9.0", + "jest-get-type": "^24.9.0", + "pretty-format": "^24.9.0" } }, "jest-docblock": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-25.1.0.tgz", - "integrity": "sha512-370P/mh1wzoef6hUKiaMcsPtIapY25suP6JqM70V9RJvdKLrV4GaGbfUseUVk4FZJw4oTZ1qSCJNdrClKt5JQA==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-24.9.0.tgz", + "integrity": "sha512-F1DjdpDMJMA1cN6He0FNYNZlo3yYmOtRUnktrT9Q37njYzC5WEaDdmbynIgy0L/IvXvvgsG8OsqhLPXTpfmZAA==", "requires": { - "detect-newline": "^3.0.0" + "detect-newline": "^2.1.0" } }, "jest-each": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-25.1.0.tgz", - "integrity": "sha512-R9EL8xWzoPySJ5wa0DXFTj7NrzKpRD40Jy+zQDp3Qr/2QmevJgkN9GqioCGtAJ2bW9P/MQRznQHQQhoeAyra7A==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-24.9.0.tgz", + "integrity": "sha512-ONi0R4BvW45cw8s2Lrx8YgbeXL1oCQ/wIDwmsM3CqM/nlblNCPmnC3IPQlMbRFZu3wKdQ2U8BqM6lh3LJ5Bsog==", "requires": { - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", - "jest-get-type": "^25.1.0", - "jest-util": "^25.1.0", - "pretty-format": "^25.1.0" - }, - "dependencies": { - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "jest-get-type": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.1.0.tgz", - "integrity": "sha512-yWkBnT+5tMr8ANB6V+OjmrIJufHtCAqI5ic2H40v+tRqxDmE0PGnIiTyvRWFOMtmVHYpwRqyazDbTnhpjsGvLw==", - "dev": true - }, - "jest-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.1.0.tgz", - "integrity": "sha512-7did6pLQ++87Qsj26Fs/TIwZMUFBXQ+4XXSodRNy3luch2DnRXsSnmpVtxxQ0Yd6WTipGpbhh2IFP1mq6/fQGw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", - "is-ci": "^2.0.0", - "mkdirp": "^0.5.1" - } - }, - "pretty-format": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.1.0.tgz", - "integrity": "sha512-46zLRSGLd02Rp+Lhad9zzuNZ+swunitn8zIpfD2B4OPCRLXbM87RJT2aBLBWYOznNUML/2l/ReMyWNC80PJBUQ==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^16.12.0" - } - }, - "react-is": { - "version": "16.13.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.0.tgz", - "integrity": "sha512-GFMtL0vHkiBv9HluwNZTggSn/sCyEt9n02aM0dSAjGGyqyNlAyftYm4phPxdvCigG15JreC5biwxCgTAJZ7yAA==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "@jest/types": "^24.9.0", + "chalk": "^2.0.1", + "jest-get-type": "^24.9.0", + "jest-util": "^24.9.0", + "pretty-format": "^24.9.0" } }, "jest-environment-jsdom": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-25.1.0.tgz", - "integrity": "sha512-ILb4wdrwPAOHX6W82GGDUiaXSSOE274ciuov0lztOIymTChKFtC02ddyicRRCdZlB5YSrv3vzr1Z5xjpEe1OHQ==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-24.9.0.tgz", + "integrity": "sha512-Zv9FV9NBRzLuALXjvRijO2351DRQeLYXtpD4xNvfoVFw21IOKNhZAEUKcbiEtjTkm2GsJ3boMVgkaR7rN8qetA==", "requires": { - "@jest/environment": "^25.1.0", - "@jest/fake-timers": "^25.1.0", - "@jest/types": "^25.1.0", - "jest-mock": "^25.1.0", - "jest-util": "^25.1.0", - "jsdom": "^15.1.1" + "@jest/environment": "^24.9.0", + "@jest/fake-timers": "^24.9.0", + "@jest/types": "^24.9.0", + "jest-mock": "^24.9.0", + "jest-util": "^24.9.0", + "jsdom": "^11.5.1" + } + }, + "jest-environment-jsdom-fourteen": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom-fourteen/-/jest-environment-jsdom-fourteen-1.0.1.tgz", + "integrity": "sha512-DojMX1sY+at5Ep+O9yME34CdidZnO3/zfPh8UW+918C5fIZET5vCjfkegixmsi7AtdYfkr4bPlIzmWnlvQkP7Q==", + "requires": { + "@jest/environment": "^24.3.0", + "@jest/fake-timers": "^24.3.0", + "@jest/types": "^24.3.0", + "jest-mock": "^24.0.0", + "jest-util": "^24.0.0", + "jsdom": "^14.1.0" }, "dependencies": { - "@jest/fake-timers": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-25.1.0.tgz", - "integrity": "sha512-Eu3dysBzSAO1lD7cylZd/CVKdZZ1/43SF35iYBNV1Lvvn2Undp3Grwsv8PrzvbLhqwRzDd4zxrY4gsiHc+wygQ==", - "dev": true, + "acorn": { + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==" + }, + "cssstyle": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-1.4.0.tgz", + "integrity": "sha512-GBrLZYZ4X4x6/QEoBnIrqb8B/f5l4+8me2dkom/j1Gtbxy0kBv6OGzKuAsGM75bkGwGAFkt56Iwg28S3XTZgSA==", "requires": { - "@jest/types": "^25.1.0", - "jest-message-util": "^25.1.0", - "jest-mock": "^25.1.0", - "jest-util": "^25.1.0", - "lolex": "^5.0.0" + "cssom": "0.3.x" } }, - "@jest/test-result": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.1.0.tgz", - "integrity": "sha512-FZzSo36h++U93vNWZ0KgvlNuZ9pnDnztvaM7P/UcTx87aPDotG18bXifkf1Ji44B7k/eIatmMzkBapnAzjkJkg==", - "dev": true, + "jsdom": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-14.1.0.tgz", + "integrity": "sha512-O901mfJSuTdwU2w3Sn+74T+RnDVP+FuV5fH8tcPWyqrseRAb0s5xOtPgCFiPOtLcyK7CLIJwPyD83ZqQWvA5ng==", "requires": { - "@jest/console": "^25.1.0", - "@jest/transform": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" + "abab": "^2.0.0", + "acorn": "^6.0.4", + "acorn-globals": "^4.3.0", + "array-equal": "^1.0.0", + "cssom": "^0.3.4", + "cssstyle": "^1.1.1", + "data-urls": "^1.1.0", + "domexception": "^1.0.1", + "escodegen": "^1.11.0", + "html-encoding-sniffer": "^1.0.2", + "nwsapi": "^2.1.3", + "parse5": "5.1.0", + "pn": "^1.1.0", + "request": "^2.88.0", + "request-promise-native": "^1.0.5", + "saxes": "^3.1.9", + "symbol-tree": "^3.2.2", + "tough-cookie": "^2.5.0", + "w3c-hr-time": "^1.0.1", + "w3c-xmlserializer": "^1.1.2", + "webidl-conversions": "^4.0.2", + "whatwg-encoding": "^1.0.5", + "whatwg-mimetype": "^2.3.0", + "whatwg-url": "^7.0.0", + "ws": "^6.1.2", + "xml-name-validator": "^3.0.0" } }, - "@jest/transform": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.1.0.tgz", - "integrity": "sha512-4ktrQ2TPREVeM+KxB4zskAT84SnmG1vaz4S+51aTefyqn3zocZUnliLLm5Fsl85I3p/kFPN4CRp1RElIfXGegQ==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^25.1.0", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^3.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.3", - "jest-haste-map": "^25.1.0", - "jest-regex-util": "^25.1.0", - "jest-util": "^25.1.0", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "realpath-native": "^1.1.0", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - } + "parse5": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.0.tgz", + "integrity": "sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ==" }, - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", - "dev": true, - "optional": true - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "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-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "jest-haste-map": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.1.0.tgz", - "integrity": "sha512-/2oYINIdnQZAqyWSn1GTku571aAfs8NxzSErGek65Iu5o8JYb+113bZysRMcC/pjE5v9w0Yz+ldbj9NxrFyPyw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.1.2", - "graceful-fs": "^4.2.3", - "jest-serializer": "^25.1.0", - "jest-util": "^25.1.0", - "jest-worker": "^25.1.0", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7" - } - }, - "jest-message-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.1.0.tgz", - "integrity": "sha512-Nr/Iwar2COfN22aCqX0kCVbXgn8IBm9nWf4xwGr5Olv/KZh0CZ32RKgZWMVDXGdOahicM10/fgjdimGNX/ttCQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@jest/test-result": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/stack-utils": "^1.0.1", - "chalk": "^3.0.0", - "micromatch": "^4.0.2", - "slash": "^3.0.0", - "stack-utils": "^1.0.1" - } - }, - "jest-mock": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-25.1.0.tgz", - "integrity": "sha512-28/u0sqS+42vIfcd1mlcg4ZVDmSUYuNvImP4X2lX5hRMLW+CN0BeiKVD4p+ujKKbSPKd3rg/zuhCF+QBLJ4vag==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0" - } - }, - "jest-regex-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.1.0.tgz", - "integrity": "sha512-9lShaDmDpqwg+xAd73zHydKrBbbrIi08Kk9YryBEBybQFg/lBWR/2BDjjiSE7KIppM9C5+c03XiDaZ+m4Pgs1w==", - "dev": true - }, - "jest-serializer": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.1.0.tgz", - "integrity": "sha512-20Wkq5j7o84kssBwvyuJ7Xhn7hdPeTXndnwIblKDR2/sy1SUm6rWWiG9kSCgJPIfkDScJCIsTtOKdlzfIHOfKA==", - "dev": true - }, - "jest-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.1.0.tgz", - "integrity": "sha512-7did6pLQ++87Qsj26Fs/TIwZMUFBXQ+4XXSodRNy3luch2DnRXsSnmpVtxxQ0Yd6WTipGpbhh2IFP1mq6/fQGw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", - "is-ci": "^2.0.0", - "mkdirp": "^0.5.1" - } - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "supports-color": { + "whatwg-url": { "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", + "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", "requires": { - "has-flag": "^4.0.0" + "lodash.sortby": "^4.7.0", + "tr46": "^1.0.1", + "webidl-conversions": "^4.0.2" } }, - "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==", - "dev": true, + "ws": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz", + "integrity": "sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==", "requires": { - "is-number": "^7.0.0" + "async-limiter": "~1.0.0" } } } }, "jest-environment-node": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-25.1.0.tgz", - "integrity": "sha512-U9kFWTtAPvhgYY5upnH9rq8qZkj6mYLup5l1caAjjx9uNnkLHN2xgZy5mo4SyLdmrh/EtB9UPpKFShvfQHD0Iw==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-24.9.0.tgz", + "integrity": "sha512-6d4V2f4nxzIzwendo27Tr0aFm+IXWa0XEUnaH6nU0FMaozxovt+sfRvh4J47wL1OvF83I3SSTu0XK+i4Bqe7uA==", "requires": { - "@jest/environment": "^25.1.0", - "@jest/fake-timers": "^25.1.0", - "@jest/types": "^25.1.0", - "jest-mock": "^25.1.0", - "jest-util": "^25.1.0" - }, - "dependencies": { - "@jest/fake-timers": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-25.1.0.tgz", - "integrity": "sha512-Eu3dysBzSAO1lD7cylZd/CVKdZZ1/43SF35iYBNV1Lvvn2Undp3Grwsv8PrzvbLhqwRzDd4zxrY4gsiHc+wygQ==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "jest-message-util": "^25.1.0", - "jest-mock": "^25.1.0", - "jest-util": "^25.1.0", - "lolex": "^5.0.0" - } - }, - "@jest/test-result": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.1.0.tgz", - "integrity": "sha512-FZzSo36h++U93vNWZ0KgvlNuZ9pnDnztvaM7P/UcTx87aPDotG18bXifkf1Ji44B7k/eIatmMzkBapnAzjkJkg==", - "dev": true, - "requires": { - "@jest/console": "^25.1.0", - "@jest/transform": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - } - }, - "@jest/transform": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.1.0.tgz", - "integrity": "sha512-4ktrQ2TPREVeM+KxB4zskAT84SnmG1vaz4S+51aTefyqn3zocZUnliLLm5Fsl85I3p/kFPN4CRp1RElIfXGegQ==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^25.1.0", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^3.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.3", - "jest-haste-map": "^25.1.0", - "jest-regex-util": "^25.1.0", - "jest-util": "^25.1.0", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "realpath-native": "^1.1.0", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - } - }, - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", - "dev": true, - "optional": true - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "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-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "jest-haste-map": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.1.0.tgz", - "integrity": "sha512-/2oYINIdnQZAqyWSn1GTku571aAfs8NxzSErGek65Iu5o8JYb+113bZysRMcC/pjE5v9w0Yz+ldbj9NxrFyPyw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.1.2", - "graceful-fs": "^4.2.3", - "jest-serializer": "^25.1.0", - "jest-util": "^25.1.0", - "jest-worker": "^25.1.0", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7" - } - }, - "jest-message-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.1.0.tgz", - "integrity": "sha512-Nr/Iwar2COfN22aCqX0kCVbXgn8IBm9nWf4xwGr5Olv/KZh0CZ32RKgZWMVDXGdOahicM10/fgjdimGNX/ttCQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@jest/test-result": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/stack-utils": "^1.0.1", - "chalk": "^3.0.0", - "micromatch": "^4.0.2", - "slash": "^3.0.0", - "stack-utils": "^1.0.1" - } - }, - "jest-mock": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-25.1.0.tgz", - "integrity": "sha512-28/u0sqS+42vIfcd1mlcg4ZVDmSUYuNvImP4X2lX5hRMLW+CN0BeiKVD4p+ujKKbSPKd3rg/zuhCF+QBLJ4vag==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0" - } - }, - "jest-regex-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.1.0.tgz", - "integrity": "sha512-9lShaDmDpqwg+xAd73zHydKrBbbrIi08Kk9YryBEBybQFg/lBWR/2BDjjiSE7KIppM9C5+c03XiDaZ+m4Pgs1w==", - "dev": true - }, - "jest-serializer": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.1.0.tgz", - "integrity": "sha512-20Wkq5j7o84kssBwvyuJ7Xhn7hdPeTXndnwIblKDR2/sy1SUm6rWWiG9kSCgJPIfkDScJCIsTtOKdlzfIHOfKA==", - "dev": true - }, - "jest-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.1.0.tgz", - "integrity": "sha512-7did6pLQ++87Qsj26Fs/TIwZMUFBXQ+4XXSodRNy3luch2DnRXsSnmpVtxxQ0Yd6WTipGpbhh2IFP1mq6/fQGw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", - "is-ci": "^2.0.0", - "mkdirp": "^0.5.1" - } - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } + "@jest/environment": "^24.9.0", + "@jest/fake-timers": "^24.9.0", + "@jest/types": "^24.9.0", + "jest-mock": "^24.9.0", + "jest-util": "^24.9.0" } }, "jest-get-type": { - "version": "22.4.3", - "resolved": "http://registry.npmjs.org/jest-get-type/-/jest-get-type-22.4.3.tgz", - "integrity": "sha512-/jsz0Y+V29w1chdXVygEKSz2nBoHoYqNShPe+QgxSNjAuP1i8+k4LbQNrfoliKej0P45sivkSCh7yiD6ubHS3w==", - "dev": true + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-24.9.0.tgz", + "integrity": "sha512-lUseMzAley4LhIcpSP9Jf+fTrQ4a1yHQwLNeeVa2cEmbCGeoZAtYPOIv8JaxLD/sUpKxetKGP+gsHl8f8TSj8Q==" }, "jest-haste-map": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.1.0.tgz", - "integrity": "sha512-/2oYINIdnQZAqyWSn1GTku571aAfs8NxzSErGek65Iu5o8JYb+113bZysRMcC/pjE5v9w0Yz+ldbj9NxrFyPyw==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-24.9.0.tgz", + "integrity": "sha512-kfVFmsuWui2Sj1Rp1AJ4D9HqJwE4uwTlS/vO+eRUaMmd54BFpli2XhMQnPC2k4cHFVbB2Q2C+jtI1AGLgEnCjQ==", "requires": { - "@jest/types": "^25.1.0", - "anymatch": "^3.0.3", + "@jest/types": "^24.9.0", + "anymatch": "^2.0.0", "fb-watchman": "^2.0.0", - "fsevents": "^2.1.2", - "graceful-fs": "^4.2.3", - "jest-serializer": "^25.1.0", - "jest-util": "^25.1.0", - "jest-worker": "^25.1.0", - "micromatch": "^4.0.2", + "fsevents": "^1.2.7", + "graceful-fs": "^4.1.15", + "invariant": "^2.2.4", + "jest-serializer": "^24.9.0", + "jest-util": "^24.9.0", + "jest-worker": "^24.9.0", + "micromatch": "^3.1.10", "sane": "^4.0.3", "walker": "^1.0.7" }, "dependencies": { - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "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==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", - "dev": true, + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", "optional": true - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "dev": true - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } } } }, "jest-jasmine2": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-25.1.0.tgz", - "integrity": "sha512-GdncRq7jJ7sNIQ+dnXvpKO2MyP6j3naNK41DTTjEAhLEdpImaDA9zSAZwDhijjSF/D7cf4O5fdyUApGBZleaEg==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-24.9.0.tgz", + "integrity": "sha512-Cq7vkAgaYKp+PsX+2/JbTarrk0DmNhsEtqBXNwUHkdlbrTBLtMJINADf2mf5FkowNsq8evbPc07/qFO0AdKTzw==", "requires": { "@babel/traverse": "^7.1.0", - "@jest/environment": "^25.1.0", - "@jest/source-map": "^25.1.0", - "@jest/test-result": "^25.1.0", - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", + "@jest/environment": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "chalk": "^2.0.1", "co": "^4.6.0", - "expect": "^25.1.0", + "expect": "^24.9.0", "is-generator-fn": "^2.0.0", - "jest-each": "^25.1.0", - "jest-matcher-utils": "^25.1.0", - "jest-message-util": "^25.1.0", - "jest-runtime": "^25.1.0", - "jest-snapshot": "^25.1.0", - "jest-util": "^25.1.0", - "pretty-format": "^25.1.0", - "throat": "^5.0.0" - }, - "dependencies": { - "@jest/test-result": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.1.0.tgz", - "integrity": "sha512-FZzSo36h++U93vNWZ0KgvlNuZ9pnDnztvaM7P/UcTx87aPDotG18bXifkf1Ji44B7k/eIatmMzkBapnAzjkJkg==", - "dev": true, - "requires": { - "@jest/console": "^25.1.0", - "@jest/transform": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - } - }, - "@jest/transform": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.1.0.tgz", - "integrity": "sha512-4ktrQ2TPREVeM+KxB4zskAT84SnmG1vaz4S+51aTefyqn3zocZUnliLLm5Fsl85I3p/kFPN4CRp1RElIfXGegQ==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^25.1.0", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^3.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.3", - "jest-haste-map": "^25.1.0", - "jest-regex-util": "^25.1.0", - "jest-util": "^25.1.0", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "realpath-native": "^1.1.0", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - } - }, - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", - "dev": true, - "optional": true - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "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-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "jest-haste-map": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.1.0.tgz", - "integrity": "sha512-/2oYINIdnQZAqyWSn1GTku571aAfs8NxzSErGek65Iu5o8JYb+113bZysRMcC/pjE5v9w0Yz+ldbj9NxrFyPyw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.1.2", - "graceful-fs": "^4.2.3", - "jest-serializer": "^25.1.0", - "jest-util": "^25.1.0", - "jest-worker": "^25.1.0", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7" - } - }, - "jest-message-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.1.0.tgz", - "integrity": "sha512-Nr/Iwar2COfN22aCqX0kCVbXgn8IBm9nWf4xwGr5Olv/KZh0CZ32RKgZWMVDXGdOahicM10/fgjdimGNX/ttCQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@jest/test-result": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/stack-utils": "^1.0.1", - "chalk": "^3.0.0", - "micromatch": "^4.0.2", - "slash": "^3.0.0", - "stack-utils": "^1.0.1" - } - }, - "jest-regex-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.1.0.tgz", - "integrity": "sha512-9lShaDmDpqwg+xAd73zHydKrBbbrIi08Kk9YryBEBybQFg/lBWR/2BDjjiSE7KIppM9C5+c03XiDaZ+m4Pgs1w==", - "dev": true - }, - "jest-serializer": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.1.0.tgz", - "integrity": "sha512-20Wkq5j7o84kssBwvyuJ7Xhn7hdPeTXndnwIblKDR2/sy1SUm6rWWiG9kSCgJPIfkDScJCIsTtOKdlzfIHOfKA==", - "dev": true - }, - "jest-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.1.0.tgz", - "integrity": "sha512-7did6pLQ++87Qsj26Fs/TIwZMUFBXQ+4XXSodRNy3luch2DnRXsSnmpVtxxQ0Yd6WTipGpbhh2IFP1mq6/fQGw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", - "is-ci": "^2.0.0", - "mkdirp": "^0.5.1" - } - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "pretty-format": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.1.0.tgz", - "integrity": "sha512-46zLRSGLd02Rp+Lhad9zzuNZ+swunitn8zIpfD2B4OPCRLXbM87RJT2aBLBWYOznNUML/2l/ReMyWNC80PJBUQ==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^16.12.0" - } - }, - "react-is": { - "version": "16.13.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.0.tgz", - "integrity": "sha512-GFMtL0vHkiBv9HluwNZTggSn/sCyEt9n02aM0dSAjGGyqyNlAyftYm4phPxdvCigG15JreC5biwxCgTAJZ7yAA==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } + "jest-each": "^24.9.0", + "jest-matcher-utils": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-runtime": "^24.9.0", + "jest-snapshot": "^24.9.0", + "jest-util": "^24.9.0", + "pretty-format": "^24.9.0", + "throat": "^4.0.0" } }, "jest-leak-detector": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-25.1.0.tgz", - "integrity": "sha512-3xRI264dnhGaMHRvkFyEKpDeaRzcEBhyNrOG5oT8xPxOyUAblIAQnpiR3QXu4wDor47MDTiHbiFcbypdLcLW5w==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-24.9.0.tgz", + "integrity": "sha512-tYkFIDsiKTGwb2FG1w8hX9V0aUb2ot8zY/2nFg087dUageonw1zrLMP4W6zsRO59dPkTSKie+D4rhMuP9nRmrA==", "requires": { - "jest-get-type": "^25.1.0", - "pretty-format": "^25.1.0" - }, - "dependencies": { - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "jest-get-type": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.1.0.tgz", - "integrity": "sha512-yWkBnT+5tMr8ANB6V+OjmrIJufHtCAqI5ic2H40v+tRqxDmE0PGnIiTyvRWFOMtmVHYpwRqyazDbTnhpjsGvLw==", - "dev": true - }, - "pretty-format": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.1.0.tgz", - "integrity": "sha512-46zLRSGLd02Rp+Lhad9zzuNZ+swunitn8zIpfD2B4OPCRLXbM87RJT2aBLBWYOznNUML/2l/ReMyWNC80PJBUQ==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^16.12.0" - } - }, - "react-is": { - "version": "16.13.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.0.tgz", - "integrity": "sha512-GFMtL0vHkiBv9HluwNZTggSn/sCyEt9n02aM0dSAjGGyqyNlAyftYm4phPxdvCigG15JreC5biwxCgTAJZ7yAA==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "jest-get-type": "^24.9.0", + "pretty-format": "^24.9.0" } }, "jest-matcher-utils": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-25.1.0.tgz", - "integrity": "sha512-KGOAFcSFbclXIFE7bS4C53iYobKI20ZWleAdAFun4W1Wz1Kkej8Ng6RRbhL8leaEvIOjGXhGf/a1JjO8bkxIWQ==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-24.9.0.tgz", + "integrity": "sha512-OZz2IXsu6eaiMAwe67c1T+5tUAtQyQx27/EMEkbFAGiw52tB9em+uGbzpcgYVpA8wl0hlxKPZxrly4CXU/GjHA==", "requires": { - "chalk": "^3.0.0", - "jest-diff": "^25.1.0", - "jest-get-type": "^25.1.0", - "pretty-format": "^25.1.0" - }, - "dependencies": { - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "jest-get-type": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.1.0.tgz", - "integrity": "sha512-yWkBnT+5tMr8ANB6V+OjmrIJufHtCAqI5ic2H40v+tRqxDmE0PGnIiTyvRWFOMtmVHYpwRqyazDbTnhpjsGvLw==", - "dev": true - }, - "pretty-format": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.1.0.tgz", - "integrity": "sha512-46zLRSGLd02Rp+Lhad9zzuNZ+swunitn8zIpfD2B4OPCRLXbM87RJT2aBLBWYOznNUML/2l/ReMyWNC80PJBUQ==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^16.12.0" - } - }, - "react-is": { - "version": "16.13.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.0.tgz", - "integrity": "sha512-GFMtL0vHkiBv9HluwNZTggSn/sCyEt9n02aM0dSAjGGyqyNlAyftYm4phPxdvCigG15JreC5biwxCgTAJZ7yAA==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "chalk": "^2.0.1", + "jest-diff": "^24.9.0", + "jest-get-type": "^24.9.0", + "pretty-format": "^24.9.0" + } + }, + "jest-message-util": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-24.9.0.tgz", + "integrity": "sha512-oCj8FiZ3U0hTP4aSui87P4L4jC37BtQwUMqk+zk/b11FR19BJDeZsZAvIHutWnmtw7r85UmR3CEWZ0HWU2mAlw==", + "requires": { + "@babel/code-frame": "^7.0.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/stack-utils": "^1.0.1", + "chalk": "^2.0.1", + "micromatch": "^3.1.10", + "slash": "^2.0.0", + "stack-utils": "^1.0.1" + } + }, + "jest-mock": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-24.9.0.tgz", + "integrity": "sha512-3BEYN5WbSq9wd+SyLDES7AHnjH9A/ROBwmz7l2y+ol+NtSFO8DYiEBzoO1CeFc9a8DYy10EO4dDFVv/wN3zl1w==", + "requires": { + "@jest/types": "^24.9.0" } }, "jest-pnp-resolver": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.1.tgz", - "integrity": "sha512-pgFw2tm54fzgYvc/OHrnysABEObZCUNFnhjoRjaVOCN8NYc032/gVjPaHD4Aq6ApkSieWtfKAFQtmDKAmhupnQ==", - "dev": true + "integrity": "sha512-pgFw2tm54fzgYvc/OHrnysABEObZCUNFnhjoRjaVOCN8NYc032/gVjPaHD4Aq6ApkSieWtfKAFQtmDKAmhupnQ==" }, "jest-regex-util": { - "version": "23.3.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-23.3.0.tgz", - "integrity": "sha1-X4ZylUfCeFxAAs6qj4Sf6MpHG8U=", - "dev": true + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-24.9.0.tgz", + "integrity": "sha512-05Cmb6CuxaA+Ys6fjr3PhvV3bGQmO+2p2La4hFbU+W5uOc479f7FdLXUWXw4pYMAhhSZIuKHwSXSu6CsSBAXQA==" }, "jest-resolve": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-25.1.0.tgz", - "integrity": "sha512-XkBQaU1SRCHj2Evz2Lu4Czs+uIgJXWypfO57L7JYccmAXv4slXA6hzNblmcRmf7P3cQ1mE7fL3ABV6jAwk4foQ==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-24.9.0.tgz", + "integrity": "sha512-TaLeLVL1l08YFZAt3zaPtjiVvyy4oSA6CRe+0AFPPVX3Q/VI0giIWWoAvoS5L96vj9Dqxj4fB5p2qrHCmTU/MQ==", "requires": { - "@jest/types": "^25.1.0", + "@jest/types": "^24.9.0", "browser-resolve": "^1.11.3", - "chalk": "^3.0.0", + "chalk": "^2.0.1", "jest-pnp-resolver": "^1.2.1", "realpath-native": "^1.1.0" - }, - "dependencies": { - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } } }, "jest-resolve-dependencies": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-25.1.0.tgz", - "integrity": "sha512-Cu/Je38GSsccNy4I2vL12ZnBlD170x2Oh1devzuM9TLH5rrnLW1x51lN8kpZLYTvzx9j+77Y5pqBaTqfdzVzrw==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-24.9.0.tgz", + "integrity": "sha512-Fm7b6AlWnYhT0BXy4hXpactHIqER7erNgIsIozDXWl5dVm+k8XdGVe1oTg1JyaFnOxarMEbax3wyRJqGP2Pq+g==", "requires": { - "@jest/types": "^25.1.0", - "jest-regex-util": "^25.1.0", - "jest-snapshot": "^25.1.0" - }, - "dependencies": { - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "jest-regex-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.1.0.tgz", - "integrity": "sha512-9lShaDmDpqwg+xAd73zHydKrBbbrIi08Kk9YryBEBybQFg/lBWR/2BDjjiSE7KIppM9C5+c03XiDaZ+m4Pgs1w==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "@jest/types": "^24.9.0", + "jest-regex-util": "^24.3.0", + "jest-snapshot": "^24.9.0" } }, "jest-runner": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-25.1.0.tgz", - "integrity": "sha512-su3O5fy0ehwgt+e8Wy7A8CaxxAOCMzL4gUBftSs0Ip32S0epxyZPDov9Znvkl1nhVOJNf4UwAsnqfc3plfQH9w==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-24.9.0.tgz", + "integrity": "sha512-KksJQyI3/0mhcfspnxxEOBueGrd5E4vV7ADQLT9ESaCzz02WnbdbKWIf5Mkaucoaj7obQckYPVX6JJhgUcoWWg==", "requires": { - "@jest/console": "^25.1.0", - "@jest/environment": "^25.1.0", - "@jest/test-result": "^25.1.0", - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", + "@jest/console": "^24.7.1", + "@jest/environment": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "chalk": "^2.4.2", "exit": "^0.1.2", - "graceful-fs": "^4.2.3", - "jest-config": "^25.1.0", - "jest-docblock": "^25.1.0", - "jest-haste-map": "^25.1.0", - "jest-jasmine2": "^25.1.0", - "jest-leak-detector": "^25.1.0", - "jest-message-util": "^25.1.0", - "jest-resolve": "^25.1.0", - "jest-runtime": "^25.1.0", - "jest-util": "^25.1.0", - "jest-worker": "^25.1.0", + "graceful-fs": "^4.1.15", + "jest-config": "^24.9.0", + "jest-docblock": "^24.3.0", + "jest-haste-map": "^24.9.0", + "jest-jasmine2": "^24.9.0", + "jest-leak-detector": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-resolve": "^24.9.0", + "jest-runtime": "^24.9.0", + "jest-util": "^24.9.0", + "jest-worker": "^24.6.0", "source-map-support": "^0.5.6", - "throat": "^5.0.0" - }, - "dependencies": { - "@jest/test-result": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.1.0.tgz", - "integrity": "sha512-FZzSo36h++U93vNWZ0KgvlNuZ9pnDnztvaM7P/UcTx87aPDotG18bXifkf1Ji44B7k/eIatmMzkBapnAzjkJkg==", - "dev": true, - "requires": { - "@jest/console": "^25.1.0", - "@jest/transform": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - } - }, - "@jest/transform": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.1.0.tgz", - "integrity": "sha512-4ktrQ2TPREVeM+KxB4zskAT84SnmG1vaz4S+51aTefyqn3zocZUnliLLm5Fsl85I3p/kFPN4CRp1RElIfXGegQ==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^25.1.0", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^3.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.3", - "jest-haste-map": "^25.1.0", - "jest-regex-util": "^25.1.0", - "jest-util": "^25.1.0", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "realpath-native": "^1.1.0", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - } - }, - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", - "dev": true, - "optional": true - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "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-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "jest-haste-map": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.1.0.tgz", - "integrity": "sha512-/2oYINIdnQZAqyWSn1GTku571aAfs8NxzSErGek65Iu5o8JYb+113bZysRMcC/pjE5v9w0Yz+ldbj9NxrFyPyw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.1.2", - "graceful-fs": "^4.2.3", - "jest-serializer": "^25.1.0", - "jest-util": "^25.1.0", - "jest-worker": "^25.1.0", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7" - } - }, - "jest-message-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.1.0.tgz", - "integrity": "sha512-Nr/Iwar2COfN22aCqX0kCVbXgn8IBm9nWf4xwGr5Olv/KZh0CZ32RKgZWMVDXGdOahicM10/fgjdimGNX/ttCQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@jest/test-result": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/stack-utils": "^1.0.1", - "chalk": "^3.0.0", - "micromatch": "^4.0.2", - "slash": "^3.0.0", - "stack-utils": "^1.0.1" - } - }, - "jest-regex-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.1.0.tgz", - "integrity": "sha512-9lShaDmDpqwg+xAd73zHydKrBbbrIi08Kk9YryBEBybQFg/lBWR/2BDjjiSE7KIppM9C5+c03XiDaZ+m4Pgs1w==", - "dev": true - }, - "jest-serializer": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.1.0.tgz", - "integrity": "sha512-20Wkq5j7o84kssBwvyuJ7Xhn7hdPeTXndnwIblKDR2/sy1SUm6rWWiG9kSCgJPIfkDScJCIsTtOKdlzfIHOfKA==", - "dev": true - }, - "jest-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.1.0.tgz", - "integrity": "sha512-7did6pLQ++87Qsj26Fs/TIwZMUFBXQ+4XXSodRNy3luch2DnRXsSnmpVtxxQ0Yd6WTipGpbhh2IFP1mq6/fQGw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", - "is-ci": "^2.0.0", - "mkdirp": "^0.5.1" - } - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } + "throat": "^4.0.0" } }, "jest-runtime": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-25.1.0.tgz", - "integrity": "sha512-mpPYYEdbExKBIBB16ryF6FLZTc1Rbk9Nx0ryIpIMiDDkOeGa0jQOKVI/QeGvVGlunKKm62ywcioeFVzIbK03bA==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-24.9.0.tgz", + "integrity": "sha512-8oNqgnmF3v2J6PVRM2Jfuj8oX3syKmaynlDMMKQ4iyzbQzIG6th5ub/lM2bCMTmoTKM3ykcUYI2Pw9xwNtjMnw==", "requires": { - "@jest/console": "^25.1.0", - "@jest/environment": "^25.1.0", - "@jest/source-map": "^25.1.0", - "@jest/test-result": "^25.1.0", - "@jest/transform": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0", - "collect-v8-coverage": "^1.0.0", + "@jest/console": "^24.7.1", + "@jest/environment": "^24.9.0", + "@jest/source-map": "^24.3.0", + "@jest/transform": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/yargs": "^13.0.0", + "chalk": "^2.0.1", "exit": "^0.1.2", "glob": "^7.1.3", - "graceful-fs": "^4.2.3", - "jest-config": "^25.1.0", - "jest-haste-map": "^25.1.0", - "jest-message-util": "^25.1.0", - "jest-mock": "^25.1.0", - "jest-regex-util": "^25.1.0", - "jest-resolve": "^25.1.0", - "jest-snapshot": "^25.1.0", - "jest-util": "^25.1.0", - "jest-validate": "^25.1.0", + "graceful-fs": "^4.1.15", + "jest-config": "^24.9.0", + "jest-haste-map": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-mock": "^24.9.0", + "jest-regex-util": "^24.3.0", + "jest-resolve": "^24.9.0", + "jest-snapshot": "^24.9.0", + "jest-util": "^24.9.0", + "jest-validate": "^24.9.0", "realpath-native": "^1.1.0", - "slash": "^3.0.0", - "strip-bom": "^4.0.0", - "yargs": "^15.0.0" - }, - "dependencies": { - "@jest/test-result": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.1.0.tgz", - "integrity": "sha512-FZzSo36h++U93vNWZ0KgvlNuZ9pnDnztvaM7P/UcTx87aPDotG18bXifkf1Ji44B7k/eIatmMzkBapnAzjkJkg==", - "dev": true, - "requires": { - "@jest/console": "^25.1.0", - "@jest/transform": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - } - }, - "@jest/transform": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.1.0.tgz", - "integrity": "sha512-4ktrQ2TPREVeM+KxB4zskAT84SnmG1vaz4S+51aTefyqn3zocZUnliLLm5Fsl85I3p/kFPN4CRp1RElIfXGegQ==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^25.1.0", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^3.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.3", - "jest-haste-map": "^25.1.0", - "jest-regex-util": "^25.1.0", - "jest-util": "^25.1.0", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "realpath-native": "^1.1.0", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - } - }, - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", - "dev": true, - "optional": true - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "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-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "jest-get-type": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.1.0.tgz", - "integrity": "sha512-yWkBnT+5tMr8ANB6V+OjmrIJufHtCAqI5ic2H40v+tRqxDmE0PGnIiTyvRWFOMtmVHYpwRqyazDbTnhpjsGvLw==", - "dev": true - }, - "jest-haste-map": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.1.0.tgz", - "integrity": "sha512-/2oYINIdnQZAqyWSn1GTku571aAfs8NxzSErGek65Iu5o8JYb+113bZysRMcC/pjE5v9w0Yz+ldbj9NxrFyPyw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.1.2", - "graceful-fs": "^4.2.3", - "jest-serializer": "^25.1.0", - "jest-util": "^25.1.0", - "jest-worker": "^25.1.0", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7" - } - }, - "jest-message-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.1.0.tgz", - "integrity": "sha512-Nr/Iwar2COfN22aCqX0kCVbXgn8IBm9nWf4xwGr5Olv/KZh0CZ32RKgZWMVDXGdOahicM10/fgjdimGNX/ttCQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@jest/test-result": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/stack-utils": "^1.0.1", - "chalk": "^3.0.0", - "micromatch": "^4.0.2", - "slash": "^3.0.0", - "stack-utils": "^1.0.1" - } - }, - "jest-mock": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-25.1.0.tgz", - "integrity": "sha512-28/u0sqS+42vIfcd1mlcg4ZVDmSUYuNvImP4X2lX5hRMLW+CN0BeiKVD4p+ujKKbSPKd3rg/zuhCF+QBLJ4vag==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0" - } - }, - "jest-regex-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.1.0.tgz", - "integrity": "sha512-9lShaDmDpqwg+xAd73zHydKrBbbrIi08Kk9YryBEBybQFg/lBWR/2BDjjiSE7KIppM9C5+c03XiDaZ+m4Pgs1w==", - "dev": true - }, - "jest-serializer": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.1.0.tgz", - "integrity": "sha512-20Wkq5j7o84kssBwvyuJ7Xhn7hdPeTXndnwIblKDR2/sy1SUm6rWWiG9kSCgJPIfkDScJCIsTtOKdlzfIHOfKA==", - "dev": true - }, - "jest-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.1.0.tgz", - "integrity": "sha512-7did6pLQ++87Qsj26Fs/TIwZMUFBXQ+4XXSodRNy3luch2DnRXsSnmpVtxxQ0Yd6WTipGpbhh2IFP1mq6/fQGw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", - "is-ci": "^2.0.0", - "mkdirp": "^0.5.1" - } - }, - "jest-validate": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-25.1.0.tgz", - "integrity": "sha512-kGbZq1f02/zVO2+t1KQGSVoCTERc5XeObLwITqC6BTRH3Adv7NZdYqCpKIZLUgpLXf2yISzQ465qOZpul8abXA==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "camelcase": "^5.3.1", - "chalk": "^3.0.0", - "jest-get-type": "^25.1.0", - "leven": "^3.1.0", - "pretty-format": "^25.1.0" - } - }, - "leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "pretty-format": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.1.0.tgz", - "integrity": "sha512-46zLRSGLd02Rp+Lhad9zzuNZ+swunitn8zIpfD2B4OPCRLXbM87RJT2aBLBWYOznNUML/2l/ReMyWNC80PJBUQ==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^16.12.0" - } - }, - "react-is": { - "version": "16.13.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.0.tgz", - "integrity": "sha512-GFMtL0vHkiBv9HluwNZTggSn/sCyEt9n02aM0dSAjGGyqyNlAyftYm4phPxdvCigG15JreC5biwxCgTAJZ7yAA==", - "dev": true - }, - "strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } + "slash": "^2.0.0", + "strip-bom": "^3.0.0", + "yargs": "^13.3.0" } }, "jest-serializer": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.1.0.tgz", - "integrity": "sha512-20Wkq5j7o84kssBwvyuJ7Xhn7hdPeTXndnwIblKDR2/sy1SUm6rWWiG9kSCgJPIfkDScJCIsTtOKdlzfIHOfKA==", - "dev": true + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-24.9.0.tgz", + "integrity": "sha512-DxYipDr8OvfrKH3Kel6NdED3OXxjvxXZ1uIY2I9OFbGg+vUkkg7AGvi65qbhbWNPvDckXmzMPbK3u3HaDO49bQ==" }, "jest-snapshot": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-25.1.0.tgz", - "integrity": "sha512-xZ73dFYN8b/+X2hKLXz4VpBZGIAn7muD/DAg+pXtDzDGw3iIV10jM7WiHqhCcpDZfGiKEj7/2HXAEPtHTj0P2A==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-24.9.0.tgz", + "integrity": "sha512-uI/rszGSs73xCM0l+up7O7a40o90cnrk429LOiK3aeTvfC0HHmldbd81/B7Ix81KSFe1lwkbl7GnBGG4UfuDew==", "requires": { "@babel/types": "^7.0.0", - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", - "expect": "^25.1.0", - "jest-diff": "^25.1.0", - "jest-get-type": "^25.1.0", - "jest-matcher-utils": "^25.1.0", - "jest-message-util": "^25.1.0", - "jest-resolve": "^25.1.0", + "@jest/types": "^24.9.0", + "chalk": "^2.0.1", + "expect": "^24.9.0", + "jest-diff": "^24.9.0", + "jest-get-type": "^24.9.0", + "jest-matcher-utils": "^24.9.0", + "jest-message-util": "^24.9.0", + "jest-resolve": "^24.9.0", "mkdirp": "^0.5.1", "natural-compare": "^1.4.0", - "pretty-format": "^25.1.0", - "semver": "^7.1.1" - }, - "dependencies": { - "@jest/test-result": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.1.0.tgz", - "integrity": "sha512-FZzSo36h++U93vNWZ0KgvlNuZ9pnDnztvaM7P/UcTx87aPDotG18bXifkf1Ji44B7k/eIatmMzkBapnAzjkJkg==", - "dev": true, - "requires": { - "@jest/console": "^25.1.0", - "@jest/transform": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - } - }, - "@jest/transform": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.1.0.tgz", - "integrity": "sha512-4ktrQ2TPREVeM+KxB4zskAT84SnmG1vaz4S+51aTefyqn3zocZUnliLLm5Fsl85I3p/kFPN4CRp1RElIfXGegQ==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^25.1.0", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^3.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.3", - "jest-haste-map": "^25.1.0", - "jest-regex-util": "^25.1.0", - "jest-util": "^25.1.0", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "realpath-native": "^1.1.0", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - } - }, - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", - "dev": true, - "optional": true - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "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-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "jest-get-type": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-25.1.0.tgz", - "integrity": "sha512-yWkBnT+5tMr8ANB6V+OjmrIJufHtCAqI5ic2H40v+tRqxDmE0PGnIiTyvRWFOMtmVHYpwRqyazDbTnhpjsGvLw==", - "dev": true - }, - "jest-haste-map": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.1.0.tgz", - "integrity": "sha512-/2oYINIdnQZAqyWSn1GTku571aAfs8NxzSErGek65Iu5o8JYb+113bZysRMcC/pjE5v9w0Yz+ldbj9NxrFyPyw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.1.2", - "graceful-fs": "^4.2.3", - "jest-serializer": "^25.1.0", - "jest-util": "^25.1.0", - "jest-worker": "^25.1.0", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7" - } - }, - "jest-message-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-25.1.0.tgz", - "integrity": "sha512-Nr/Iwar2COfN22aCqX0kCVbXgn8IBm9nWf4xwGr5Olv/KZh0CZ32RKgZWMVDXGdOahicM10/fgjdimGNX/ttCQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.0.0", - "@jest/test-result": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/stack-utils": "^1.0.1", - "chalk": "^3.0.0", - "micromatch": "^4.0.2", - "slash": "^3.0.0", - "stack-utils": "^1.0.1" - } - }, - "jest-regex-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.1.0.tgz", - "integrity": "sha512-9lShaDmDpqwg+xAd73zHydKrBbbrIi08Kk9YryBEBybQFg/lBWR/2BDjjiSE7KIppM9C5+c03XiDaZ+m4Pgs1w==", - "dev": true - }, - "jest-serializer": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.1.0.tgz", - "integrity": "sha512-20Wkq5j7o84kssBwvyuJ7Xhn7hdPeTXndnwIblKDR2/sy1SUm6rWWiG9kSCgJPIfkDScJCIsTtOKdlzfIHOfKA==", - "dev": true - }, - "jest-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.1.0.tgz", - "integrity": "sha512-7did6pLQ++87Qsj26Fs/TIwZMUFBXQ+4XXSodRNy3luch2DnRXsSnmpVtxxQ0Yd6WTipGpbhh2IFP1mq6/fQGw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", - "is-ci": "^2.0.0", - "mkdirp": "^0.5.1" - } - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "pretty-format": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-25.1.0.tgz", - "integrity": "sha512-46zLRSGLd02Rp+Lhad9zzuNZ+swunitn8zIpfD2B4OPCRLXbM87RJT2aBLBWYOznNUML/2l/ReMyWNC80PJBUQ==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "ansi-regex": "^5.0.0", - "ansi-styles": "^4.0.0", - "react-is": "^16.12.0" - } - }, - "react-is": { - "version": "16.13.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.0.tgz", - "integrity": "sha512-GFMtL0vHkiBv9HluwNZTggSn/sCyEt9n02aM0dSAjGGyqyNlAyftYm4phPxdvCigG15JreC5biwxCgTAJZ7yAA==", - "dev": true - }, - "semver": { - "version": "7.1.3", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.1.3.tgz", - "integrity": "sha512-ekM0zfiA9SCBlsKa2X1hxyxiI4L3B6EbVJkkdgQXnSEEaHlGdvyodMruTiulSRWMMB4NeIuYNMC9rTKTz97GxA==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - } + "pretty-format": "^24.9.0", + "semver": "^6.2.0" } }, "jest-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.1.0.tgz", - "integrity": "sha512-7did6pLQ++87Qsj26Fs/TIwZMUFBXQ+4XXSodRNy3luch2DnRXsSnmpVtxxQ0Yd6WTipGpbhh2IFP1mq6/fQGw==", - "dev": true, + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-24.9.0.tgz", + "integrity": "sha512-x+cZU8VRmOJxbA1K5oDBdxQmdq0OIdADarLxk0Mq+3XS4jgvhG/oKGWcIDCtPG0HgjxOYvF+ilPJQsAyXfbNOg==", "requires": { - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", + "@jest/console": "^24.9.0", + "@jest/fake-timers": "^24.9.0", + "@jest/source-map": "^24.9.0", + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "callsites": "^3.0.0", + "chalk": "^2.0.1", + "graceful-fs": "^4.1.15", "is-ci": "^2.0.0", - "mkdirp": "^0.5.1" + "mkdirp": "^0.5.1", + "slash": "^2.0.0", + "source-map": "^0.6.0" + } + }, + "jest-validate": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-24.9.0.tgz", + "integrity": "sha512-HPIt6C5ACwiqSiwi+OfSSHbK8sG7akG8eATl+IPKaeIjtPOeBUd/g3J7DghugzxrGjI93qS/+RPKe1H6PqvhRQ==", + "requires": { + "@jest/types": "^24.9.0", + "camelcase": "^5.3.1", + "chalk": "^2.0.1", + "jest-get-type": "^24.9.0", + "leven": "^3.1.0", + "pretty-format": "^24.9.0" + } + }, + "jest-watch-typeahead": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/jest-watch-typeahead/-/jest-watch-typeahead-0.4.2.tgz", + "integrity": "sha512-f7VpLebTdaXs81rg/oj4Vg/ObZy2QtGzAmGLNsqUS5G5KtSN68tFcIsbvNODfNyQxU78g7D8x77o3bgfBTR+2Q==", + "requires": { + "ansi-escapes": "^4.2.1", + "chalk": "^2.4.1", + "jest-regex-util": "^24.9.0", + "jest-watcher": "^24.3.0", + "slash": "^3.0.0", + "string-length": "^3.1.0", + "strip-ansi": "^5.0.0" }, "dependencies": { - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "chalk": { + "slash": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==" + }, + "string-length": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-3.1.0.tgz", + "integrity": "sha512-Ttp5YvkGm5v9Ijagtaz1BnN+k9ObpvS0eIBblPMp2YWL8FBmi9qblQ9fexc2k/CXFgrTIteU3jAw3payCnwSTA==", "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" + "astral-regex": "^1.0.0", + "strip-ansi": "^5.2.0" } } } }, - "jest-validate": { - "version": "23.6.0", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-23.6.0.tgz", - "integrity": "sha512-OFKapYxe72yz7agrDAWi8v2WL8GIfVqcbKRCLbRG9PAxtzF9b1SEDdTpytNDN12z2fJynoBwpMpvj2R39plI2A==", - "dev": true, + "jest-watcher": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-24.9.0.tgz", + "integrity": "sha512-+/fLOfKPXXYJDYlks62/4R4GoT+GU1tYZed99JSCOsmzkkF7727RqKrjNAxtfO4YpGv11wybgRvCjR73lK2GZw==", "requires": { + "@jest/test-result": "^24.9.0", + "@jest/types": "^24.9.0", + "@types/yargs": "^13.0.0", + "ansi-escapes": "^3.0.0", "chalk": "^2.0.1", - "jest-get-type": "^22.1.0", - "leven": "^2.1.0", - "pretty-format": "^23.6.0" + "jest-util": "^24.9.0", + "string-length": "^2.0.0" + }, + "dependencies": { + "ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==" + } + } + }, + "jest-worker": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-24.9.0.tgz", + "integrity": "sha512-51PE4haMSXcHohnSMdM42anbvZANYTqMrr52tVKPqqsPJMzoP6FYYDVqahX/HrAoKEKz3uUPzSvKs9A3qR4iVw==", + "requires": { + "merge-stream": "^2.0.0", + "supports-color": "^6.1.0" }, "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", - "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", "requires": { "has-flag": "^3.0.0" } } } }, - "jest-watcher": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-25.1.0.tgz", - "integrity": "sha512-Q9eZ7pyaIr6xfU24OeTg4z1fUqBF/4MP6J801lyQfg7CsnZ/TCzAPvCfckKdL5dlBBEKBeHV0AdyjFZ5eWj4ig==", - "dev": true, - "requires": { - "@jest/test-result": "^25.1.0", - "@jest/types": "^25.1.0", - "ansi-escapes": "^4.2.1", - "chalk": "^3.0.0", - "jest-util": "^25.1.0", - "string-length": "^3.1.0" - }, - "dependencies": { - "@jest/test-result": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-25.1.0.tgz", - "integrity": "sha512-FZzSo36h++U93vNWZ0KgvlNuZ9pnDnztvaM7P/UcTx87aPDotG18bXifkf1Ji44B7k/eIatmMzkBapnAzjkJkg==", - "dev": true, - "requires": { - "@jest/console": "^25.1.0", - "@jest/transform": "^25.1.0", - "@jest/types": "^25.1.0", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - } - }, - "@jest/transform": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-25.1.0.tgz", - "integrity": "sha512-4ktrQ2TPREVeM+KxB4zskAT84SnmG1vaz4S+51aTefyqn3zocZUnliLLm5Fsl85I3p/kFPN4CRp1RElIfXGegQ==", - "dev": true, - "requires": { - "@babel/core": "^7.1.0", - "@jest/types": "^25.1.0", - "babel-plugin-istanbul": "^6.0.0", - "chalk": "^3.0.0", - "convert-source-map": "^1.4.0", - "fast-json-stable-stringify": "^2.0.0", - "graceful-fs": "^4.2.3", - "jest-haste-map": "^25.1.0", - "jest-regex-util": "^25.1.0", - "jest-util": "^25.1.0", - "micromatch": "^4.0.2", - "pirates": "^4.0.1", - "realpath-native": "^1.1.0", - "slash": "^3.0.0", - "source-map": "^0.6.1", - "write-file-atomic": "^3.0.0" - } - }, - "@jest/types": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-25.1.0.tgz", - "integrity": "sha512-VpOtt7tCrgvamWZh1reVsGADujKigBUFTi19mlRjqEGsE8qH4r3s+skY33dNdXOwyZIvuftZ5tqdF1IgsMejMA==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^1.1.1", - "@types/yargs": "^15.0.0", - "chalk": "^3.0.0" - } - }, - "@types/yargs": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.4.tgz", - "integrity": "sha512-9T1auFmbPZoxHz0enUFlUuKRy3it01R+hlggyVUMtnCTQRunsQYifnSGb8hET4Xo8yiC0o0r1paW3ud5+rbURg==", - "dev": true, - "requires": { - "@types/yargs-parser": "*" - } - }, - "ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", - "dev": true, - "requires": { - "type-fest": "^0.11.0" - } - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chalk": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", - "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "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==", - "dev": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "fsevents": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.2.tgz", - "integrity": "sha512-R4wDiBwZ0KzpgOWetKDug1FZcYhqYnUYKtfZYt4mD5SBz76q0KR4Q9o7GIPamsVPGmW3EYPPJ0dOOjvx32ldZA==", - "dev": true, - "optional": true - }, - "graceful-fs": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", - "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", - "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-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true - }, - "jest-haste-map": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-25.1.0.tgz", - "integrity": "sha512-/2oYINIdnQZAqyWSn1GTku571aAfs8NxzSErGek65Iu5o8JYb+113bZysRMcC/pjE5v9w0Yz+ldbj9NxrFyPyw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "fsevents": "^2.1.2", - "graceful-fs": "^4.2.3", - "jest-serializer": "^25.1.0", - "jest-util": "^25.1.0", - "jest-worker": "^25.1.0", - "micromatch": "^4.0.2", - "sane": "^4.0.3", - "walker": "^1.0.7" - } - }, - "jest-regex-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-25.1.0.tgz", - "integrity": "sha512-9lShaDmDpqwg+xAd73zHydKrBbbrIi08Kk9YryBEBybQFg/lBWR/2BDjjiSE7KIppM9C5+c03XiDaZ+m4Pgs1w==", - "dev": true - }, - "jest-serializer": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-25.1.0.tgz", - "integrity": "sha512-20Wkq5j7o84kssBwvyuJ7Xhn7hdPeTXndnwIblKDR2/sy1SUm6rWWiG9kSCgJPIfkDScJCIsTtOKdlzfIHOfKA==", - "dev": true - }, - "jest-util": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-25.1.0.tgz", - "integrity": "sha512-7did6pLQ++87Qsj26Fs/TIwZMUFBXQ+4XXSodRNy3luch2DnRXsSnmpVtxxQ0Yd6WTipGpbhh2IFP1mq6/fQGw==", - "dev": true, - "requires": { - "@jest/types": "^25.1.0", - "chalk": "^3.0.0", - "is-ci": "^2.0.0", - "mkdirp": "^0.5.1" - } - }, - "micromatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.2.tgz", - "integrity": "sha512-y7FpHSbMUMoyPbYUSzO6PaZ6FyRnQOpHuKwbo1G+Knck95XVU4QAiKdGEnj5wwoS7PlOgthX/09u5iFJ+aYf5Q==", - "dev": true, - "requires": { - "braces": "^3.0.1", - "picomatch": "^2.0.5" - } - }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true - }, - "supports-color": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - }, - "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==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", - "dev": true - } - } - }, - "jest-worker": { - "version": "25.1.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-25.1.0.tgz", - "integrity": "sha512-ZHhHtlxOWSxCoNOKHGbiLzXnl42ga9CxDr27H36Qn+15pQZd3R/F24jrmjDelw9j/iHUIWMWs08/u2QN50HHOg==", - "dev": true, - "requires": { - "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" - }, - "dependencies": { - "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.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, - "js-base64": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.1.tgz", - "integrity": "sha512-M7kLczedRMYX4L8Mdh4MzyAMM9O5osx+4FcOQuTvr3A9F2D9S5JXheN0ewNbrvK2UatkTRhL5ejGmGSjNMiZuw==", - "dev": true - }, "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" }, "js-yaml": { "version": "3.13.1", @@ -17030,84 +9219,60 @@ "jsbn": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" }, "jsdom": { - "version": "15.2.1", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-15.2.1.tgz", - "integrity": "sha512-fAl1W0/7T2G5vURSyxBzrJ1LSdQn6Tr5UX/xD4PXDx/PDgwygedfW6El/KIj3xJ7FU61TTYnc/l/B7P49Eqt6g==", - "dev": true, + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-11.12.0.tgz", + "integrity": "sha512-y8Px43oyiBM13Zc1z780FrfNLJCXTL40EWlty/LXUtcjykRBNgLlCjWXpfSPBl2iv+N7koQN+dvqszHZgT/Fjw==", "requires": { "abab": "^2.0.0", - "acorn": "^7.1.0", - "acorn-globals": "^4.3.2", + "acorn": "^5.5.3", + "acorn-globals": "^4.1.0", "array-equal": "^1.0.0", - "cssom": "^0.4.1", - "cssstyle": "^2.0.0", - "data-urls": "^1.1.0", + "cssom": ">= 0.3.2 < 0.4.0", + "cssstyle": "^1.0.0", + "data-urls": "^1.0.0", "domexception": "^1.0.1", - "escodegen": "^1.11.1", + "escodegen": "^1.9.1", "html-encoding-sniffer": "^1.0.2", - "nwsapi": "^2.2.0", - "parse5": "5.1.0", + "left-pad": "^1.3.0", + "nwsapi": "^2.0.7", + "parse5": "4.0.0", "pn": "^1.1.0", - "request": "^2.88.0", - "request-promise-native": "^1.0.7", - "saxes": "^3.1.9", + "request": "^2.87.0", + "request-promise-native": "^1.0.5", + "sax": "^1.2.4", "symbol-tree": "^3.2.2", - "tough-cookie": "^3.0.1", + "tough-cookie": "^2.3.4", "w3c-hr-time": "^1.0.1", - "w3c-xmlserializer": "^1.1.2", "webidl-conversions": "^4.0.2", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^7.0.0", - "ws": "^7.0.0", + "whatwg-encoding": "^1.0.3", + "whatwg-mimetype": "^2.1.0", + "whatwg-url": "^6.4.1", + "ws": "^5.2.0", "xml-name-validator": "^3.0.0" }, "dependencies": { - "cssom": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", - "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", - "dev": true + "acorn": { + "version": "5.7.4", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.4.tgz", + "integrity": "sha512-1D++VG7BhrtvQpNbBzovKNc1FLGGEE/oGe7b9xJm/RFHMBeUaUGpluV9RLjZa47YFdPcDAenEYuq9pQPcMdLJg==" }, "cssstyle": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.2.0.tgz", - "integrity": "sha512-sEb3XFPx3jNnCAMtqrXPDeSgQr+jojtCeNf8cvMNMh1cG970+lljssvQDzPq6lmmJu2Vhqood/gtEomBiHOGnA==", - "dev": true, + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-1.4.0.tgz", + "integrity": "sha512-GBrLZYZ4X4x6/QEoBnIrqb8B/f5l4+8me2dkom/j1Gtbxy0kBv6OGzKuAsGM75bkGwGAFkt56Iwg28S3XTZgSA==", "requires": { - "cssom": "~0.3.6" - }, - "dependencies": { - "cssom": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", - "dev": true - } - } - }, - "tough-cookie": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-3.0.1.tgz", - "integrity": "sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==", - "dev": true, - "requires": { - "ip-regex": "^2.1.0", - "psl": "^1.1.28", - "punycode": "^2.1.1" + "cssom": "0.3.x" } } } }, "jsesc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", - "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", - "dev": true + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==" }, "json-parse-better-errors": { "version": "1.0.2", @@ -17117,44 +9282,61 @@ "json-schema": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", - "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", - "dev": true + "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" }, "json-schema-traverse": { - "version": "0.3.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", - "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", - "dev": true + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "json-stable-stringify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", + "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", + "requires": { + "jsonify": "~0.0.0" + } }, "json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", - "dev": true + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=" }, "json-stringify-safe": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", - "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", - "dev": true + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" }, "json3": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.2.tgz", - "integrity": "sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE=", - "dev": true + "version": "3.3.3", + "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.3.tgz", + "integrity": "sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA==" }, "json5": { - "version": "0.5.1", - "resolved": "http://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz", + "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==", + "requires": { + "minimist": "^1.2.5" + } + }, + "jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", + "requires": { + "graceful-fs": "^4.1.6" + } + }, + "jsonify": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", + "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" }, "jsprim": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", - "dev": true, "requires": { "assert-plus": "1.0.0", "extsprintf": "1.3.0", @@ -17163,99 +9345,157 @@ } }, "jsx-ast-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-2.0.1.tgz", - "integrity": "sha1-6AGxs5mF4g//yHtA43SAgOLcrH8=", - "dev": true, + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-2.2.3.tgz", + "integrity": "sha512-EdIHFMm+1BPynpKOpdPqiOsvnIrInRGJD7bzPZdPkjitQEqpdpUuFpq4T0npZFKTiB3RhWFdGN+oqOJIdhDhQA==", "requires": { - "array-includes": "^3.0.3" + "array-includes": "^3.0.3", + "object.assign": "^4.1.0" } }, "killable": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz", - "integrity": "sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==", - "dev": true + "integrity": "sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==" }, "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", + "requires": { + "is-buffer": "^1.1.5" + }, + "dependencies": { + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + } + } }, "kleur": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", - "dev": true + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==" }, - "lcid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", - "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", - "dev": true, + "last-call-webpack-plugin": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/last-call-webpack-plugin/-/last-call-webpack-plugin-3.0.0.tgz", + "integrity": "sha512-7KI2l2GIZa9p2spzPIVZBYyNKkN+e/SQPpnjlTiPhdbDW3F86tdKKELxKpzJ5sgU19wQWsACULZmpTPYHeWO5w==", "requires": { - "invert-kv": "^1.0.0" + "lodash": "^4.17.5", + "webpack-sources": "^1.1.0" } }, + "lazy-cache": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", + "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=" + }, + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "requires": { + "invert-kv": "^2.0.0" + } + }, + "left-pad": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/left-pad/-/left-pad-1.3.0.tgz", + "integrity": "sha512-XI5MPzVNApjAyhQzphX8BkmKsKUxD4LdyK24iZeQGinBN9yTQT3bFlCBy/aVx2HrNcqQGsdot8ghrjyrvMCoEA==" + }, "leven": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz", - "integrity": "sha1-wuep93IJTe6dNCAq6KzORoeHVYA=", - "dev": true + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", + "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==" }, "levenary": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/levenary/-/levenary-1.1.0.tgz", - "integrity": "sha512-VHcwhO0UTpUW7rLPN2/OiWJdgA1e9BqEDALhrgCe/F+uUJnep6CoUsTzMeP8Rh0NGr9uKquXxqe7lwLZo509nQ==", - "dev": true, + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/levenary/-/levenary-1.1.1.tgz", + "integrity": "sha512-mkAdOIt79FD6irqjYSs4rdbnlT5vRonMEvBVPVb3XmevfS8kgRXwfes0dhPdEtzTWD/1eNE/Bm/G1iRt6DcnQQ==", "requires": { "leven": "^3.1.0" - }, - "dependencies": { - "leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "dev": true - } } }, "levn": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", - "dev": true, "requires": { "prelude-ls": "~1.1.2", "type-check": "~0.3.2" } }, - "linear-layout-vector": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/linear-layout-vector/-/linear-layout-vector-0.0.1.tgz", - "integrity": "sha1-OYEU1zA7bsx/1rJzr3uEAdi6nHA=" + "lines-and-columns": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", + "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=" }, "load-json-file": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", - "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", - "dev": true, + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", + "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", "requires": { "graceful-fs": "^4.1.2", - "parse-json": "^2.2.0", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0", - "strip-bom": "^2.0.0" + "parse-json": "^4.0.0", + "pify": "^3.0.0", + "strip-bom": "^3.0.0" }, "dependencies": { "parse-json": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", - "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", - "dev": true, + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", "requires": { - "error-ex": "^1.2.0" + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + } + } + }, + "loader-fs-cache": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/loader-fs-cache/-/loader-fs-cache-1.0.3.tgz", + "integrity": "sha512-ldcgZpjNJj71n+2Mf6yetz+c9bM4xpKtNds4LbqXzU/PTdeAX0g3ytnU1AJMEcTk2Lex4Smpe3Q/eCTsvUBxbA==", + "requires": { + "find-cache-dir": "^0.1.1", + "mkdirp": "^0.5.1" + }, + "dependencies": { + "find-cache-dir": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-0.1.1.tgz", + "integrity": "sha1-yN765XyKUqinhPnjHFfHQumToLk=", + "requires": { + "commondir": "^1.0.1", + "mkdirp": "^0.5.1", + "pkg-dir": "^1.0.0" + } + }, + "find-up": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", + "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", + "requires": { + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" + } + }, + "path-exists": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", + "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", + "requires": { + "pinkie-promise": "^2.0.0" + } + }, + "pkg-dir": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz", + "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=", + "requires": { + "find-up": "^1.0.0" } } } @@ -17263,25 +9503,32 @@ "loader-runner": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", - "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", - "dev": true + "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==" }, "loader-utils": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.1.0.tgz", - "integrity": "sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0=", - "dev": true, + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", + "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", "requires": { - "big.js": "^3.1.3", - "emojis-list": "^2.0.0", - "json5": "^0.5.0" + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "dependencies": { + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "requires": { + "minimist": "^1.2.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" @@ -17297,11 +9544,10 @@ "resolved": "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.15.tgz", "integrity": "sha512-rlrc3yU3+JNOpZ9zj5pQtxnx2THmvRykwL4Xlxoa8I9lHBlVbbyPhgyPMioxVZ4NqyxaVVtaJnzsyOidQIhyyQ==" }, - "lodash.debounce": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz", - "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=", - "dev": true + "lodash._reinterpolate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", + "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=" }, "lodash.escape": { "version": "4.0.1", @@ -17321,17 +9567,37 @@ "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=", "dev": true }, + "lodash.memoize": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=" + }, "lodash.sortby": { "version": "4.7.0", "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", - "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=", - "dev": true + "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=" }, - "lodash.tail": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/lodash.tail/-/lodash.tail-4.1.1.tgz", - "integrity": "sha1-0jM6NtnncXyK0vfKyv7HwytERmQ=", - "dev": true + "lodash.template": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz", + "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==", + "requires": { + "lodash._reinterpolate": "^3.0.0", + "lodash.templatesettings": "^4.0.0" + } + }, + "lodash.templatesettings": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz", + "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==", + "requires": { + "lodash._reinterpolate": "^3.0.0" + } + }, + "lodash.uniq": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", + "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=" }, "log-symbols": { "version": "2.2.0", @@ -17340,53 +9606,12 @@ "dev": true, "requires": { "chalk": "^2.0.1" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" - } - } } }, "loglevel": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.1.tgz", - "integrity": "sha1-4PyVEztu8nbNyIh82vJKpvFW+Po=", - "dev": true - }, - "lolex": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/lolex/-/lolex-5.1.2.tgz", - "integrity": "sha512-h4hmjAvHTmd+25JSwrtTIuwbKdwg5NzZVRMLn9saij4SZaepCrTCxPr35H/3bjwfMJtN+t3CX8672UIkglz28A==", - "dev": true, - "requires": { - "@sinonjs/commons": "^1.7.0" - } + "version": "1.6.8", + "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.6.8.tgz", + "integrity": "sha512-bsU7+gc9AJ2SqpzxwU3+1fedl8zAntbtC5XYlt3s2j1hJcn2PsXSmgN8TaLG/J1/2mod4+cE/3vNL70/c1RNCA==" }, "loose-envify": { "version": "1.4.0", @@ -17396,42 +9621,36 @@ "js-tokens": "^3.0.0 || ^4.0.0" } }, - "loud-rejection": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", - "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", - "dev": true, - "requires": { - "currently-unhandled": "^0.4.1", - "signal-exit": "^3.0.0" - } - }, "lower-case": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=" }, "lru-cache": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz", - "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", - "dev": true, + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "yallist": "^3.0.2" + }, + "dependencies": { + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + } } }, "luxon": { - "version": "1.22.0", - "resolved": "https://registry.npmjs.org/luxon/-/luxon-1.22.0.tgz", - "integrity": "sha512-3sLvlfbFo+AxVEY3IqxymbumtnlgBwjDExxK60W3d+trrUzErNAz/PfvPT+mva+vEUrdIodeCOs7fB6zHtRSrw==", + "version": "1.24.1", + "resolved": "https://registry.npmjs.org/luxon/-/luxon-1.24.1.tgz", + "integrity": "sha512-CgnIMKAWT0ghcuWFfCWBnWGOddM0zu6c4wZAWmD0NN7MZTnro0+833DF6tJep+xlxRPg4KtsYEHYLfTMBQKwYg==", "optional": true }, "make-dir": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, "requires": { "pify": "^4.0.1", "semver": "^5.6.0" @@ -17440,8 +9659,12 @@ "pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==" + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" } } }, @@ -17451,21 +9674,12 @@ "integrity": "sha512-xTYd4JVHpSCW+aqDof6w/MebaMVNTVYBZhbB/vi513xXdiPT92JMVCo0Jq8W2UZnzYRFeVbQiQ+I25l13JuKvA==", "requires": { "minimist": "^1.2.0" - }, - "dependencies": { - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "optional": true - } } }, "makeerror": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz", "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=", - "dev": true, "requires": { "tmpl": "1.0.x" } @@ -17473,14 +9687,12 @@ "mamacro": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/mamacro/-/mamacro-0.0.3.tgz", - "integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==", - "dev": true + "integrity": "sha512-qMEwh+UujcQ+kbz3T6V+wAmO2U8veoq2w+3wY8MquqwVA3jChfwY+Tk52GZKDfACEPjuZ7r2oJLejwpt8jtwTA==" }, "map-age-cleaner": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.2.tgz", - "integrity": "sha512-UN1dNocxQq44IhJyMI4TU8phc2m9BddacHRPRjKGLYaF0jqd3xLz0jS0skpAU9WgYyoR4gHtUpzytNBS385FWQ==", - "dev": true, + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", + "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", "requires": { "p-defer": "^1.0.0" } @@ -17488,20 +9700,12 @@ "map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", - "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", - "dev": true - }, - "map-obj": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true + "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=" }, "map-visit": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", - "dev": true, "requires": { "object-visit": "^1.0.0" } @@ -17510,29 +9714,41 @@ "version": "1.3.5", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "dev": true, "requires": { "hash-base": "^3.0.0", "inherits": "^2.0.1", "safe-buffer": "^5.1.2" } }, + "mdn-data": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", + "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==" + }, "media-typer": { "version": "0.3.0", - "resolved": "http://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", - "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", - "dev": true + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" + }, + "mem": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", + "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", + "requires": { + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^2.0.0", + "p-is-promise": "^2.0.0" + } }, "memoize-one": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-5.0.4.tgz", - "integrity": "sha512-P0z5IeAH6qHHGkJIXWw0xC2HNEgkx/9uWWBQw64FJj3/ol14VYdfVGWWr0fXfjhhv3TKVIqUq65os6O4GUNksA==" + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-5.1.1.tgz", + "integrity": "sha512-HKeeBpWvqiVJD57ZUAsJNm71eHTykffzcLZVYWiVfQeI1rJtuEaS7hQiEpWfVVk18donPwJEcFKIkCmPJNOhHA==" }, "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, "requires": { "errno": "^0.1.3", "readable-stream": "^2.0.1" @@ -17541,14 +9757,12 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -17563,50 +9777,44 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } } } }, - "meow": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", - "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", - "dev": true, + "merge-anything": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/merge-anything/-/merge-anything-2.4.4.tgz", + "integrity": "sha512-l5XlriUDJKQT12bH+rVhAHjwIuXWdAIecGwsYjv2LJo+dA1AeRTmeQS+3QBpO6lEthBMDi2IUMpLC1yyRvGlwQ==", "requires": { - "camelcase-keys": "^2.0.0", - "decamelize": "^1.1.2", - "loud-rejection": "^1.0.0", - "map-obj": "^1.0.1", - "minimist": "^1.1.3", - "normalize-package-data": "^2.3.4", - "object-assign": "^4.0.1", - "read-pkg-up": "^1.0.1", - "redent": "^1.0.0", - "trim-newlines": "^1.0.0" - }, - "dependencies": { - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - } + "is-what": "^3.3.1" + } + }, + "merge-deep": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/merge-deep/-/merge-deep-3.0.2.tgz", + "integrity": "sha512-T7qC8kg4Zoti1cFd8Cr0M+qaZfOwjlPDEdZIIPPB2JZctjaPM4fX+i7HOId69tAti2fvO6X5ldfYUONDODsrkA==", + "requires": { + "arr-union": "^3.1.0", + "clone-deep": "^0.2.4", + "kind-of": "^3.0.2" } }, "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 + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" }, "merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + }, + "merge2": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.3.0.tgz", + "integrity": "sha512-2j4DAdlBOkiSZIsaXk4mTE3sRS02yBHAtfy127xRV3bQUFqXkjHCHLW6Scv7DwNRbIWNHH8zpnz9zMaKXIdvYw==" }, "messageformat-parser": { "version": "2.0.0", @@ -17616,14 +9824,17 @@ "methods": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", - "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", - "dev": true + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" + }, + "microevent.ts": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/microevent.ts/-/microevent.ts-0.1.1.tgz", + "integrity": "sha512-jo1OfR4TaEwd5HOrt5+tAZ9mqT4jmpNAusXtyfNzqVm9uiSYFZlKM1wYL4oU7azZW/PxQW53wM0S6OR1JHNa2g==" }, "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", @@ -17640,30 +9851,10 @@ "to-regex": "^3.0.2" }, "dependencies": { - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "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" - } - }, - "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" - } + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" } } }, @@ -17671,47 +9862,45 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "dev": true, "requires": { "bn.js": "^4.0.0", "brorand": "^1.0.1" + }, + "dependencies": { + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + } } }, "mime": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", - "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==", - "dev": true + "version": "2.4.5", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.5.tgz", + "integrity": "sha512-3hQhEUF027BuxZjQA3s7rIv/7VCQPa27hN9u9g87sEkWaKwQPuXOkVKtOeiyUrnWqTDiOs8Ed2rwg733mB0R5w==" }, "mime-db": { - "version": "1.37.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.37.0.tgz", - "integrity": "sha512-R3C4db6bgQhlIhPU48fUtdVmKnflq+hRdad7IyKhtFj06VPNVdk2RhiYL3UjQIlso8L+YxAtFkobT0VK+S/ybg==", - "dev": true + "version": "1.44.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", + "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==" }, "mime-types": { - "version": "2.1.21", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.21.tgz", - "integrity": "sha512-3iL6DbwpyLzjR3xHSFNFeb9Nz/M8WDkX33t1GFQnFOllWk8pOrh/LSrB5OXlnlW5P9LH73X6loW/eogc+F5lJg==", - "dev": true, + "version": "2.1.27", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", + "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", "requires": { - "mime-db": "~1.37.0" + "mime-db": "1.44.0" } }, "mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", - "dev": true + "version": "2.1.0", + "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=", - "dev": true, - "requires": { - "dom-walk": "^0.1.0" - } + "min-indent": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.0.tgz", + "integrity": "sha1-z8RcN+nsDY8KDsPdTvf3w6vjklY=" }, "mini-create-react-context": { "version": "0.3.2", @@ -17723,37 +9912,88 @@ "tiny-warning": "^1.0.2" } }, + "mini-css-extract-plugin": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.9.0.tgz", + "integrity": "sha512-lp3GeY7ygcgAmVIcRPBVhIkf8Us7FZjA+ILpal44qLdSu11wmjKQ3d9k15lfD7pO4esu9eUIAW7qiYIBppv40A==", + "requires": { + "loader-utils": "^1.1.0", + "normalize-url": "1.9.1", + "schema-utils": "^1.0.0", + "webpack-sources": "^1.1.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==", + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + } + } + }, "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 + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" }, "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 + "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=" }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, "requires": { "brace-expansion": "^1.1.7" } }, "minimist": { - "version": "0.0.8", - "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "minipass": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.1.tgz", + "integrity": "sha512-UFqVihv6PQgwj8/yTGvl9kPz7xIAY+R5z6XYjRInD3Gk3qx6QGSD6zEcpeG4Dy/lQnv1J6zv8ejV90hyYIKf3w==", + "requires": { + "yallist": "^4.0.0" + } + }, + "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==", + "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==", + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-pipeline": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.2.tgz", + "integrity": "sha512-3JS5A2DKhD2g0Gg8x3yamO0pj7YeKGwVlDS90pF++kxptwx/F+B//roxf9SqYil5tQo65bijy+dAuAFZmYOouA==", + "requires": { + "minipass": "^3.0.0" + } }, "mississippi": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", - "dev": true, "requires": { "concat-stream": "^1.5.0", "duplexify": "^3.4.2", @@ -17770,14 +10010,12 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -17792,7 +10030,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -17801,7 +10038,6 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, "requires": { "readable-stream": "~2.3.6", "xtend": "~4.0.1" @@ -17810,8 +10046,7 @@ "xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" } } }, @@ -17819,7 +10054,6 @@ "version": "1.3.2", "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", - "dev": true, "requires": { "for-in": "^1.0.2", "is-extendable": "^1.0.1" @@ -17829,7 +10063,6 @@ "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" } @@ -17840,7 +10073,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", - "dev": true, "requires": { "for-in": "^0.1.3", "is-extendable": "^0.1.1" @@ -17849,30 +10081,28 @@ "for-in": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz", - "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=", - "dev": true + "integrity": "sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE=" } } }, "mkdirp": { - "version": "0.5.1", - "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", + "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", "requires": { - "minimist": "0.0.8" + "minimist": "^1.2.5" } }, "moo": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/moo/-/moo-0.4.3.tgz", - "integrity": "sha512-gFD2xGCl8YFgGHsqJ9NKRVdwlioeW3mI1iqfLNYQOv0+6JRwG58Zk9DIGQgyIaffSYaO1xsKnMaYzzNr1KyIAw==", + "version": "0.5.1", + "resolved": "https://registry.npmjs.org/moo/-/moo-0.5.1.tgz", + "integrity": "sha512-I1mnb5xn4fO80BH9BLcF0yLypy2UKl+Cb01Fu0hJRkJjlCRtxZMWkTdAtDd5ZqCOxtCkhmRwyI57vWT+1iZ67w==", "dev": true }, "move-concurrently": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", - "dev": true, "requires": { "aproba": "^1.1.1", "copy-concurrently": "^1.0.0", @@ -17891,7 +10121,6 @@ "version": "6.2.3", "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz", "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==", - "dev": true, "requires": { "dns-packet": "^1.3.1", "thunky": "^1.0.2" @@ -17900,8 +10129,7 @@ "multicast-dns-service-types": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz", - "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=", - "dev": true + "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=" }, "multipipe": { "version": "1.0.2", @@ -17913,23 +10141,14 @@ } }, "mute-stream": { - "version": "0.0.7", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", - "dev": true - }, - "nan": { - "version": "2.11.1", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.11.1.tgz", - "integrity": "sha512-iji6k87OSXa0CcrLl9z+ZiYSuR2o+c0bGuNmXdrhTQTakxytAFsC56SArGYoiHlJlFoHSnvmhpceZJaXkVuOtA==", - "dev": true, - "optional": true + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" }, "nanomatch": { "version": "1.2.13", "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", - "dev": true, "requires": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", @@ -17944,81 +10163,58 @@ "to-regex": "^3.0.1" }, "dependencies": { - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "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" - } - }, - "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" - } - }, "kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" } } }, "natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", - "dev": true + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=" }, "nearley": { - "version": "2.18.0", - "resolved": "https://registry.npmjs.org/nearley/-/nearley-2.18.0.tgz", - "integrity": "sha512-/zQOMCeJcioI0xJtd5RpBiWw2WP7wLe6vq8/3Yu0rEwgus/G/+pViX80oA87JdVgjRt2895mZSv2VfZmy4W1uw==", + "version": "2.19.3", + "resolved": "https://registry.npmjs.org/nearley/-/nearley-2.19.3.tgz", + "integrity": "sha512-FpAy1PmTsUpOtgxr23g4jRNvJHYzZEW2PixXeSzksLR/ykPfwKhAodc2+9wQhY+JneWLcvkDw6q7FJIsIdF/aQ==", "dev": true, "requires": { "commander": "^2.19.0", - "moo": "^0.4.3", + "moo": "^0.5.0", "railroad-diagrams": "^1.0.0", "randexp": "0.4.6", "semver": "^5.4.1" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "dev": true + } } }, "negotiator": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", - "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=", - "dev": true + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", + "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" }, "neo-async": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.0.tgz", - "integrity": "sha512-MFh0d/Wa7vkKO3Y3LlacqAEeHK0mckVqzDieUKTT+KGxi+zIpeVsFxymkIiRpbpDziHc290Xr9A1O4Om7otoRA==", - "dev": true + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", + "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==" + }, + "next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" }, "nice-try": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", - "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", - "dev": true + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==" }, "no-case": { "version": "2.3.2", @@ -18030,7 +10226,7 @@ }, "node-fetch": { "version": "1.6.3", - "resolved": "http://registry.npmjs.org/node-fetch/-/node-fetch-1.6.3.tgz", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.6.3.tgz", "integrity": "sha1-3CNO3WSJmC1Y6PDbT2lQKavNjAQ=", "dev": true, "requires": { @@ -18039,59 +10235,19 @@ } }, "node-forge": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.5.tgz", - "integrity": "sha512-MmbQJ2MTESTjt3Gi/3yG1wGpIMhUfcIypUCGtTizFR9IiccFwxSpfp0vtIZlkFclEqERemxfnSdZEMR9VqqEFQ==", - "dev": true - }, - "node-gyp": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz", - "integrity": "sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA==", - "dev": true, - "requires": { - "fstream": "^1.0.0", - "glob": "^7.0.3", - "graceful-fs": "^4.1.2", - "mkdirp": "^0.5.0", - "nopt": "2 || 3", - "npmlog": "0 || 1 || 2 || 3 || 4", - "osenv": "0", - "request": "^2.87.0", - "rimraf": "2", - "semver": "~5.3.0", - "tar": "^2.0.0", - "which": "1" - }, - "dependencies": { - "nopt": { - "version": "3.0.6", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", - "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", - "dev": true, - "requires": { - "abbrev": "1" - } - }, - "semver": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", - "integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=", - "dev": true - } - } + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.9.0.tgz", + "integrity": "sha512-7ASaDa3pD+lJ3WvXFsxekJQelBKRpne+GOVbLbtHYdd7pFspyeuJHnWfLplGf3SwKGbfs/aYl5V/JCIaHVUKKQ==" }, "node-int64": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", - "dev": true + "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=" }, "node-libs-browser": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.1.0.tgz", - "integrity": "sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg==", - "dev": true, + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", + "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", "requires": { "assert": "^1.1.1", "browserify-zlib": "^0.2.0", @@ -18100,10 +10256,10 @@ "constants-browserify": "^1.0.0", "crypto-browserify": "^3.11.0", "domain-browser": "^1.1.1", - "events": "^1.0.0", + "events": "^3.0.0", "https-browserify": "^1.0.0", "os-browserify": "^0.3.0", - "path-browserify": "0.0.0", + "path-browserify": "0.0.1", "process": "^0.11.10", "punycode": "^1.2.4", "querystring-es3": "^0.2.0", @@ -18114,33 +10270,24 @@ "timers-browserify": "^2.0.4", "tty-browserify": "0.0.0", "url": "^0.11.0", - "util": "^0.10.3", - "vm-browserify": "0.0.4" + "util": "^0.11.0", + "vm-browserify": "^1.0.1" }, "dependencies": { "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "punycode": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true + "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" }, "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -18149,15 +10296,46 @@ "safe-buffer": "~5.1.1", "string_decoder": "~1.1.1", "util-deprecate": "~1.0.1" + }, + "dependencies": { + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "requires": { - "safe-buffer": "~5.1.0" + "safe-buffer": "~5.2.0" + }, + "dependencies": { + "safe-buffer": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz", + "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==" + } + } + }, + "util": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", + "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", + "requires": { + "inherits": "2.0.3" + }, + "dependencies": { + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + } } } } @@ -18165,98 +10343,31 @@ "node-modules-regexp": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", - "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", - "dev": true + "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=" }, "node-notifier": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-6.0.0.tgz", - "integrity": "sha512-SVfQ/wMw+DesunOm5cKqr6yDcvUTDl/yc97ybGHMrteNEY6oekXpNpS3lZwgLlwz0FLgHoiW28ZpmBHUDg37cw==", - "dev": true, - "optional": true, + "version": "5.4.3", + "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-5.4.3.tgz", + "integrity": "sha512-M4UBGcs4jeOK9CjTsYwkvH6/MzuUmGCyTW+kCY7uO+1ZVr0+FHGdPdIf5CCLqAaxnRrWidyoQlNkMIIVwbKB8Q==", "requires": { "growly": "^1.3.0", - "is-wsl": "^2.1.1", - "semver": "^6.3.0", + "is-wsl": "^1.1.0", + "semver": "^5.5.0", "shellwords": "^0.1.1", - "which": "^1.3.1" + "which": "^1.3.0" }, "dependencies": { - "is-wsl": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.1.1.tgz", - "integrity": "sha512-umZHcSrwlDHo2TGMXv0DZ8dIUGunZ2Iv68YZnrmCiBPkZ4aaOhtv7pXJKeki9k3qJ3RJr0cDyitcl5wEH3AYog==", - "dev": true, - "optional": true - }, "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, - "optional": true + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" } } }, "node-releases": { - "version": "1.1.47", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.47.tgz", - "integrity": "sha512-k4xjVPx5FpwBUj0Gw7uvFOTF4Ep8Hok1I6qjwL3pLfwe7Y0REQSAqOwwv9TWBCUtMHxcXfY4PgRLRozcChvTcA==", - "dev": true, - "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==", - "dev": true - } - } - }, - "node-sass": { - "version": "4.13.1", - "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.13.1.tgz", - "integrity": "sha512-TTWFx+ZhyDx1Biiez2nB0L3YrCZ/8oHagaDalbuBSlqXgUPsdkUSzJsVxeDO9LtPB49+Fh3WQl3slABo6AotNw==", - "dev": true, - "requires": { - "async-foreach": "^0.1.3", - "chalk": "^1.1.1", - "cross-spawn": "^3.0.0", - "gaze": "^1.0.0", - "get-stdin": "^4.0.1", - "glob": "^7.0.3", - "in-publish": "^2.0.0", - "lodash": "^4.17.15", - "meow": "^3.7.0", - "mkdirp": "^0.5.1", - "nan": "^2.13.2", - "node-gyp": "^3.8.0", - "npmlog": "^4.0.0", - "request": "^2.88.0", - "sass-graph": "^2.2.4", - "stdout-stream": "^1.4.0", - "true-case-path": "^1.0.2" - }, - "dependencies": { - "cross-spawn": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz", - "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=", - "dev": true, - "requires": { - "lru-cache": "^4.0.1", - "which": "^1.2.9" - } - }, - "nan": { - "version": "2.14.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", - "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", - "dev": true - } - } + "version": "1.1.55", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.55.tgz", + "integrity": "sha512-H3R3YR/8TjT5WPin/wOoHOUPHgvj8leuU/Keta/rwelEQN9pA/S2Dx8/se4pZ2LBxSd0nAGzsNzhqwa77v7F1w==" }, "nopt": { "version": "1.0.10", @@ -18267,73 +10378,82 @@ } }, "normalize-package-data": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", - "dev": true, + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "requires": { "hosted-git-info": "^2.1.4", - "is-builtin-module": "^1.0.0", + "resolve": "^1.10.0", "semver": "2 || 3 || 4 || 5", "validate-npm-package-license": "^3.0.1" + }, + "dependencies": { + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + } } }, "normalize-path": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, "requires": { "remove-trailing-separator": "^1.0.1" } }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=" + }, + "normalize-url": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-1.9.1.tgz", + "integrity": "sha1-LMDWazHqIwNkWENuNiDYWVTGbDw=", + "requires": { + "object-assign": "^4.0.1", + "prepend-http": "^1.0.0", + "query-string": "^4.1.0", + "sort-keys": "^1.0.0" + } + }, "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=", - "dev": true, "requires": { "path-key": "^2.0.0" } }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", - "dev": true, - "requires": { - "are-we-there-yet": "~1.1.2", - "console-control-strings": "~1.1.0", - "gauge": "~2.7.3", - "set-blocking": "~2.0.0" - } - }, "nth-check": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", - "dev": true, "requires": { "boolbase": "~1.0.0" } }, + "num2fraction": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", + "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=" + }, "number-is-nan": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" }, "nwsapi": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz", - "integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==", - "dev": true + "integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ==" }, "oauth-sign": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", - "dev": true + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" }, "object-assign": { "version": "4.1.1", @@ -18344,7 +10464,6 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", - "dev": true, "requires": { "copy-descriptor": "^0.1.0", "define-property": "^0.2.5", @@ -18355,61 +10474,53 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, "requires": { "is-descriptor": "^0.1.0" } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } } } }, + "object-hash": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.0.3.tgz", + "integrity": "sha512-JPKn0GMu+Fa3zt3Bmr66JhokJU5BaNBIh4ZeTlaCBzrBsOeXzwcKKAK1tbLiPKgvwmPXsDvvLHoWh5Bm7ofIYg==" + }, "object-inspect": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.6.0.tgz", - "integrity": "sha512-GJzfBZ6DgDAmnuaM3104jR4s1Myxr3Y3zfIyN4z3UdqN69oSRacNK8UhnobDdC+7J2AHCjGwxQubNJfE70SXXQ==", - "dev": true + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", + "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==" }, "object-is": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.0.1.tgz", - "integrity": "sha1-CqYOyZiaCz7Xlc9NBvYs8a1lObY=", - "dev": true + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.2.tgz", + "integrity": "sha512-5lHCz+0uufF6wZ7CRFWJN3hp8Jqblpgve06U5CMQ3f//6iDjPr2PEo9MWCjEssDsa+UZEL4PkFpr+BMop6aKzQ==", + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" + } }, "object-keys": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz", "integrity": "sha1-KKaq50KN0sOpLz2V8hM13SBOAzY=" }, + "object-path": { + "version": "0.11.4", + "resolved": "https://registry.npmjs.org/object-path/-/object-path-0.11.4.tgz", + "integrity": "sha1-NwrnUvvzfePqcKhhwju6iRVpGUk=" + }, "object-visit": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", - "dev": true, "requires": { "isobject": "^3.0.0" - }, - "dependencies": { - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - } } }, "object.assign": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", - "dev": true, "requires": { "define-properties": "^1.1.2", "function-bind": "^1.1.1", @@ -18418,137 +10529,58 @@ }, "dependencies": { "object-keys": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.12.tgz", - "integrity": "sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==", - "dev": true + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" } } }, "object.entries": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.0.4.tgz", - "integrity": "sha1-G/mk3SKI9bM/Opk9JXZh8F0WGl8=", - "dev": true, + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.1.tgz", + "integrity": "sha512-ilqR7BgdyZetJutmDPfXCDffGa0/Yzl2ivVNpbx/g4UeWrCdRnFDUBrKJGLhGieRHDATnyZXWBeCb29k9CJysQ==", "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.6.1", - "function-bind": "^1.1.0", - "has": "^1.0.1" + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1", + "function-bind": "^1.1.1", + "has": "^1.0.3" } }, "object.fromentries": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.0.tgz", - "integrity": "sha512-9iLiI6H083uiqUuvzyY6qrlmc/Gz8hLQFOcb/Ri/0xXFkSNS3ctV+CbE6yM2+AnkYfOB3dGjdzC0wrMLIhQICA==", - "dev": true, + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.2.tgz", + "integrity": "sha512-r3ZiBH7MQppDJVLx6fhD618GKNG40CZYH9wgwdhKxBDDbQgjeWGGd4AtkZad84d291YxvWe7bJGuE65Anh0dxQ==", "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.11.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1", "function-bind": "^1.1.1", - "has": "^1.0.1" + "has": "^1.0.3" } }, "object.getownpropertydescriptors": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.0.tgz", "integrity": "sha512-Z53Oah9A3TdLoblT7VKJaTDdXdT+lQO+cNpKVnya5JDe9uLvzu1YyY1yFDFrcxrlRgWrEFH0jJtD/IbuwjcEVg==", - "dev": true, "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.0-next.1" - }, - "dependencies": { - "es-abstract": { - "version": "1.17.4", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.4.tgz", - "integrity": "sha512-Ae3um/gb8F0mui/jPL+QiqmglkUsaQf7FwBEHYIFkztkneosu9imhqHpBzQ3h1vit8t5iQ74t6PEVvphBZiuiQ==", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.1.5", - "is-regex": "^1.0.5", - "object-inspect": "^1.7.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.0", - "string.prototype.trimleft": "^2.1.1", - "string.prototype.trimright": "^2.1.1" - } - }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", - "dev": true - }, - "is-callable": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz", - "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==", - "dev": true - }, - "is-regex": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", - "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "object-inspect": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", - "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==", - "dev": true - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - } } }, "object.pick": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", - "dev": true, "requires": { "isobject": "^3.0.1" - }, - "dependencies": { - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - } } }, "object.values": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.0.tgz", - "integrity": "sha512-8mf0nKLAoFX6VlNVdhGj31SVYpaNFtUnuoOXWyFEstsWRgU837AK+JYM0iAxwkSzGRbwn8cbFmgbyxj1j4VbXg==", - "dev": true, + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.1.tgz", + "integrity": "sha512-WTa54g2K8iu0kmS/us18jEmdv1a4Wi//BZ/DTVYEcH0XhLM5NYdpDHja3gt57VrZLcNAO2WGA+KpWsDBaHt6eA==", "requires": { "define-properties": "^1.1.3", - "es-abstract": "^1.12.0", + "es-abstract": "^1.17.0-next.1", "function-bind": "^1.1.1", "has": "^1.0.3" } @@ -18556,40 +10588,54 @@ "obuf": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", - "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", - "dev": true + "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==" }, "on-finished": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", - "dev": true, "requires": { "ee-first": "1.1.1" } }, "on-headers": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz", - "integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c=", - "dev": true + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==" }, "once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, "requires": { "wrappy": "1" } }, "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", - "dev": true, + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.0.tgz", + "integrity": "sha512-5NcSkPHhwTVFIQN+TUqXoS5+dlElHXdpAWu9I0HP20YOtIi+aZ0Ct82jdlILDxjLEAWwvm+qj1m6aEtsDVmm6Q==", "requires": { - "mimic-fn": "^1.0.0" + "mimic-fn": "^2.1.0" + } + }, + "open": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/open/-/open-7.0.3.tgz", + "integrity": "sha512-sP2ru2v0P290WFfv49Ap8MF6PkzGNnGlAwHweB4WR4mr5d2d0woiCluUeJ218w7/+PmoBy9JmYgD5A4mLcWOFA==", + "requires": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + }, + "dependencies": { + "is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "requires": { + "is-docker": "^2.0.0" + } + } } }, "opencollective": { @@ -18608,19 +10654,53 @@ "dependencies": { "ansi-escapes": { "version": "1.4.0", - "resolved": "http://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz", "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=", "dev": true }, + "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" + } + }, "chardet": { "version": "0.4.2", "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=", "dev": true }, + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "requires": { + "restore-cursor": "^2.0.0" + } + }, "external-editor": { "version": "2.2.0", - "resolved": "http://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", "dev": true, "requires": { @@ -18629,6 +10709,24 @@ "tmp": "^0.0.33" } }, + "figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.5" + } + }, + "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" + } + }, "inquirer": { "version": "3.0.6", "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.0.6.tgz", @@ -18650,38 +10748,124 @@ "through": "^2.3.6" } }, + "is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "dev": true + }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "dev": true + }, "minimist": { "version": "1.2.0", - "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", "dev": true }, + "mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", + "dev": true + }, + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dev": true, + "requires": { + "mimic-fn": "^1.0.0" + } + }, "opn": { "version": "4.0.2", - "resolved": "http://registry.npmjs.org/opn/-/opn-4.0.2.tgz", + "resolved": "https://registry.npmjs.org/opn/-/opn-4.0.2.tgz", "integrity": "sha1-erwi5kTf9jsKltWrfyeQwPAavJU=", "dev": true, "requires": { "object-assign": "^4.0.1", "pinkie-promise": "^2.0.0" } + }, + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dev": true, + "requires": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + } + }, + "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": "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 } } }, "opn": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/opn/-/opn-5.4.0.tgz", - "integrity": "sha512-YF9MNdVy/0qvJvDtunAOzFw9iasOQHpVthTCvGzxt61Il64AYSGdK+rYwld7NAfk9qJ7dt+hymBNSc9LNYS+Sw==", - "dev": true, + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", + "integrity": "sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==", "requires": { "is-wsl": "^1.1.0" } }, + "optimize-css-assets-webpack-plugin": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/optimize-css-assets-webpack-plugin/-/optimize-css-assets-webpack-plugin-5.0.3.tgz", + "integrity": "sha512-q9fbvCRS6EYtUKKSwI87qm2IxlyJK5b4dygW1rKUBT6mMDhdG5e5bZT63v6tnJR9F9FB/H5a0HTmtw+laUBxKA==", + "requires": { + "cssnano": "^4.1.10", + "last-call-webpack-plugin": "^3.0.0" + } + }, "optionator": { "version": "0.8.3", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", - "dev": true, "requires": { "deep-is": "~0.1.3", "fast-levenshtein": "~2.0.6", @@ -18705,48 +10889,38 @@ "wcwidth": "^1.0.1" }, "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dev": true, + "requires": { + "restore-cursor": "^2.0.0" + } + }, + "mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", "dev": true }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", "dev": true, "requires": { - "color-convert": "^1.9.0" + "mimic-fn": "^1.0.0" } }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", "dev": true, "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.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" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" } } } @@ -18755,7 +10929,6 @@ "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" } @@ -18763,60 +10936,50 @@ "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 + "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=" }, - "os-homedir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", - "dev": true + "os-locale": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", + "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", + "requires": { + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.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=", - "dev": true - }, - "osenv": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "dev": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" }, "p-defer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", - "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", - "dev": true + "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=" }, "p-each-series": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-2.1.0.tgz", - "integrity": "sha512-ZuRs1miPT4HrjFa+9fRfOFXxGJfORgelKV9f9nNOWw2gl6gVsRaVDOQP0+MI0G0wGKns1Yacsu0GjOFbTK0JFQ==", - "dev": true + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-each-series/-/p-each-series-1.0.0.tgz", + "integrity": "sha1-kw89Et0fUOdDRFeiLNbwSsatf3E=", + "requires": { + "p-reduce": "^1.0.0" + } }, "p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", - "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", - "dev": true + "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" }, "p-is-promise": { - "version": "1.1.0", - "resolved": "http://registry.npmjs.org/p-is-promise/-/p-is-promise-1.1.0.tgz", - "integrity": "sha1-nJRWmJ6fZYgBewQ01WCXZ1w9oF4=", - "dev": true + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", + "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==" }, "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" } @@ -18825,34 +10988,45 @@ "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" } }, "p-map": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-1.2.0.tgz", - "integrity": "sha512-r6zKACMNhjPJMTl8KcFH4li//gkrXWfbD6feV8l6doRHlzljFWGJ2AP6iKaCJXyZmAUMOPtvbW7EXkbWO/pLEA==", - "dev": true + "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==", + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "p-reduce": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-reduce/-/p-reduce-1.0.0.tgz", + "integrity": "sha1-GMKw3ZNqRpClKfgjH1ig/bakffo=" + }, + "p-retry": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-3.0.1.tgz", + "integrity": "sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w==", + "requires": { + "retry": "^0.12.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 + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=" }, "pako": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz", - "integrity": "sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg==", - "dev": true + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" }, "parallel-transform": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", - "dev": true, "requires": { "cyclist": "^1.0.1", "inherits": "^2.0.3", @@ -18862,14 +11036,12 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -18884,97 +11056,125 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } } } }, + "param-case": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.3.tgz", + "integrity": "sha512-VWBVyimc1+QrzappRs7waeN2YmoZFCGXWASRYX1/rGHtXqEcrGEIDm+jqIwFa2fRXNgQEwrxaYuIrX0WcAguTA==", + "requires": { + "dot-case": "^3.0.3", + "tslib": "^1.10.0" + } + }, "parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", - "dev": true, "requires": { "callsites": "^3.0.0" } }, "parse-asn1": { - "version": "5.1.1", - "resolved": "http://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz", - "integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==", - "dev": true, + "version": "5.1.5", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.5.tgz", + "integrity": "sha512-jkMYn1dcJqF6d5CpU689bq7w/b5ALS9ROVSpQDPrZsqqesUJii9qutvoT5ltGedNXMO2e16YUWIghG9KxaViTQ==", "requires": { "asn1.js": "^4.0.0", "browserify-aes": "^1.0.0", "create-hash": "^1.1.0", "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3" + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" } }, "parse-json": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.0.0.tgz", + "integrity": "sha512-OOY5b7PAEFV0E2Fir1KOkxchnZNCdowAJgQ5NuxjpBKTRP3pQhwkrkxqQjeoKJ+fO7bCpmIZaogI4eZGDMEGOw==", "requires": { + "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", - "json-parse-better-errors": "^1.0.1" + "json-parse-better-errors": "^1.0.1", + "lines-and-columns": "^1.1.6" } }, "parse5": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.0.tgz", - "integrity": "sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ==", - "dev": true + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", + "integrity": "sha512-VrZ7eOd3T1Fk4XWNXMgiGBK/z0MG48BWG2uQNU4I72fkQuKUTZpl+u9k+CxEG0twMVzSmXEEz12z5Fnw1jIQFA==" }, "parseurl": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.2.tgz", - "integrity": "sha1-/CidTtiZMRlGDBViUyYs3I3mW/M=", - "dev": true + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" + }, + "pascal-case": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.1.tgz", + "integrity": "sha512-XIeHKqIrsquVTQL2crjq3NfJUxmdLasn3TYOU0VBM+UX2a6ztAWBlJQBePLGY7VHW8+2dRadeIPK5+KImwTxQA==", + "requires": { + "no-case": "^3.0.3", + "tslib": "^1.10.0" + }, + "dependencies": { + "lower-case": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.1.tgz", + "integrity": "sha512-LiWgfDLLb1dwbFQZsSglpRj+1ctGnayXz3Uv0/WO8n558JycT5fg6zkNcnW0G68Nn0aEldTFeEfmjCfmqry/rQ==", + "requires": { + "tslib": "^1.10.0" + } + }, + "no-case": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.3.tgz", + "integrity": "sha512-ehY/mVQCf9BL0gKfsJBvFJen+1V//U+0HQMPrWct40ixE4jnv0bfvxDbWtAHL9EcaPEOJHVVYKoQn1TlZUB8Tw==", + "requires": { + "lower-case": "^2.0.1", + "tslib": "^1.10.0" + } + } + } }, "pascalcase": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", - "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", - "dev": true + "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=" }, "path-browserify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.0.tgz", - "integrity": "sha1-oLhwcpquIUAFt9UDLsLLuw+0RRo=", - "dev": true + "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==" }, "path-dirname": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", - "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", - "dev": true + "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=" }, "path-exists": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true + "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" }, "path-is-inside": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", - "dev": true + "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=" }, "path-key": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", - "dev": true + "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" }, "path-parse": { "version": "1.0.6", @@ -18982,29 +11182,22 @@ "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==" }, "path-to-regexp": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz", - "integrity": "sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=", + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.8.0.tgz", + "integrity": "sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==", "requires": { "isarray": "0.0.1" } }, "path-type": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", - "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" - } + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==" }, "pbkdf2": { "version": "3.0.17", "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", - "dev": true, "requires": { "create-hash": "^1.1.2", "create-hmac": "^1.1.4", @@ -19016,32 +11209,27 @@ "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" }, "picomatch": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.1.tgz", - "integrity": "sha512-ISBaA8xQNmwELC7eOjqFKMESB2VIqt4PPDD0nsS95b/9dZXvVKOlz9keMSnoGGKcOHXfTvDD6WMaRoSc9UuhRA==", - "dev": true + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", + "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==" }, "pify": { - "version": "2.3.0", - "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", + "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=" }, "pinkie": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", - "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", - "dev": true + "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" }, "pinkie-promise": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", - "dev": true, "requires": { "pinkie": "^2.0.0" } @@ -19050,54 +11238,18 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", - "dev": true, "requires": { "node-modules-regexp": "^1.0.0" } }, "pkg-conf": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-2.1.0.tgz", - "integrity": "sha1-ISZRTKbyq/69FoWW3xi6V4Z/AFg=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pkg-conf/-/pkg-conf-3.1.0.tgz", + "integrity": "sha512-m0OTbR/5VPNPqO1ph6Fqbj7Hv6QU7gR/tQW40ZqrL1rjgCU85W6C1bJn0BItuJqnR98PWzw7Z8hHeChD1WrgdQ==", "dev": true, "requires": { - "find-up": "^2.0.0", - "load-json-file": "^4.0.0" - }, - "dependencies": { - "load-json-file": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz", - "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "parse-json": "^4.0.0", - "pify": "^3.0.0", - "strip-bom": "^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 - }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true - } - } - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, - "requires": { - "find-up": "^3.0.0" + "find-up": "^3.0.0", + "load-json-file": "^5.2.0" }, "dependencies": { "find-up": { @@ -19109,6 +11261,19 @@ "locate-path": "^3.0.0" } }, + "load-json-file": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-5.3.0.tgz", + "integrity": "sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.15", + "parse-json": "^4.0.0", + "pify": "^4.0.1", + "strip-bom": "^3.0.0", + "type-fest": "^0.3.0" + } + }, "locate-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", @@ -19120,9 +11285,9 @@ } }, "p-limit": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz", - "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dev": true, "requires": { "p-try": "^2.0.0" @@ -19142,19 +11307,104 @@ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true + }, + "parse-json": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", + "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", + "dev": true, + "requires": { + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" + } + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, + "type-fest": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.3.1.tgz", + "integrity": "sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ==", + "dev": true } } }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "requires": { + "find-up": "^3.0.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.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==" + } + } + }, + "pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-2.0.0.tgz", + "integrity": "sha1-yBmscoBZpGHKscOImivjxJoATX8=", + "requires": { + "find-up": "^2.1.0" + } + }, "pn": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz", - "integrity": "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==", - "dev": true + "integrity": "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==" + }, + "pnp-webpack-plugin": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/pnp-webpack-plugin/-/pnp-webpack-plugin-1.6.4.tgz", + "integrity": "sha512-7Wjy+9E3WwLOEL30D+m8TSTF7qJJUJLONBnwQp0518siuMxUQUbgZwssaFX+QKlZkjHZcw/IpZCt/H0srrntSg==", + "requires": { + "ts-pnp": "^1.1.6" + } }, "pofile": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pofile/-/pofile-1.0.11.tgz", - "integrity": "sha512-Vy9eH1dRD9wHjYt/QqXcTz+RnX/zg53xK+KljFSX30PvdDMb2z+c6uDUeblUGqqJgz3QFsdlA0IJvHziPmWtQg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/pofile/-/pofile-1.1.0.tgz", + "integrity": "sha512-6XYcNkXWGiJ2CVXogTP7uJ6ZXQCldYLZc16wgRp8tqRaBTTyIfF+TUT3EQJPXTLAT7OTPpTAoaFdoXKfaTRU1w==", "dev": true }, "popper.js": { @@ -19163,201 +11413,1082 @@ "integrity": "sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==" }, "portfinder": { - "version": "1.0.20", - "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.20.tgz", - "integrity": "sha512-Yxe4mTyDzTd59PZJY4ojZR8F+E5e97iq2ZOHPz3HDgSvYC5siNad2tLooQ5y5QHyQhc3xVqvyk/eNA3wuoa7Sw==", - "dev": true, + "version": "1.0.26", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.26.tgz", + "integrity": "sha512-Xi7mKxJHHMI3rIUrnm/jjUgwhbYMkp/XKEcZX3aG4BrumLpq3nmoQMX+ClYnDZnZ/New7IatC1no5RX0zo1vXQ==", "requires": { - "async": "^1.5.2", - "debug": "^2.2.0", - "mkdirp": "0.5.x" + "async": "^2.6.2", + "debug": "^3.1.1", + "mkdirp": "^0.5.1" }, "dependencies": { - "async": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", - "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=", - "dev": true + "debug": { + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", + "requires": { + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" } } }, "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=", - "dev": true + "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=" }, "postcss": { - "version": "6.0.23", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", - "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", - "dev": true, + "version": "7.0.29", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.29.tgz", + "integrity": "sha512-ba0ApvR3LxGvRMMiUa9n0WR4HjzcYm7tS+ht4/2Nd0NLtHpPIH77fuB9Xh1/yJVz9O/E/95Y/dn8ygWsyffXtw==", "requires": { - "chalk": "^2.4.1", + "chalk": "^2.4.2", "source-map": "^0.6.1", - "supports-color": "^5.4.0" + "supports-color": "^6.1.0" }, "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", - "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", "requires": { "has-flag": "^3.0.0" } } } }, - "postcss-modules-extract-imports": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.1.tgz", - "integrity": "sha512-6jt9XZwUhwmRUhb/CkyJY020PYaPJsCyt3UjbaWo6XEbH/94Hmv6MP7fG2C5NDU/BcHzyGYxNtHvM+LTf9HrYw==", - "dev": true, + "postcss-attribute-case-insensitive": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-attribute-case-insensitive/-/postcss-attribute-case-insensitive-4.0.2.tgz", + "integrity": "sha512-clkFxk/9pcdb4Vkn0hAHq3YnxBQ2p0CGD1dy24jN+reBck+EWxMbxSUqN4Yj7t0w8csl87K6p0gxBe1utkJsYA==", "requires": { - "postcss": "^6.0.1" + "postcss": "^7.0.2", + "postcss-selector-parser": "^6.0.2" + } + }, + "postcss-browser-comments": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-browser-comments/-/postcss-browser-comments-3.0.0.tgz", + "integrity": "sha512-qfVjLfq7HFd2e0HW4s1dvU8X080OZdG46fFbIBFjW7US7YPDcWfRvdElvwMJr2LI6hMmD+7LnH2HcmXTs+uOig==", + "requires": { + "postcss": "^7" + } + }, + "postcss-calc": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-7.0.2.tgz", + "integrity": "sha512-rofZFHUg6ZIrvRwPeFktv06GdbDYLcGqh9EwiMutZg+a0oePCCw1zHOEiji6LCpyRcjTREtPASuUqeAvYlEVvQ==", + "requires": { + "postcss": "^7.0.27", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.0.2" + } + }, + "postcss-color-functional-notation": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz", + "integrity": "sha512-ZBARCypjEDofW4P6IdPVTLhDNXPRn8T2s1zHbZidW6rPaaZvcnCS2soYFIQJrMZSxiePJ2XIYTlcb2ztr/eT2g==", + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + } + }, + "postcss-color-gray": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-color-gray/-/postcss-color-gray-5.0.0.tgz", + "integrity": "sha512-q6BuRnAGKM/ZRpfDascZlIZPjvwsRye7UDNalqVz3s7GDxMtqPY6+Q871liNxsonUw8oC61OG+PSaysYpl1bnw==", + "requires": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.5", + "postcss-values-parser": "^2.0.0" + } + }, + "postcss-color-hex-alpha": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-hex-alpha/-/postcss-color-hex-alpha-5.0.3.tgz", + "integrity": "sha512-PF4GDel8q3kkreVXKLAGNpHKilXsZ6xuu+mOQMHWHLPNyjiUBOr75sp5ZKJfmv1MCus5/DWUGcK9hm6qHEnXYw==", + "requires": { + "postcss": "^7.0.14", + "postcss-values-parser": "^2.0.1" + } + }, + "postcss-color-mod-function": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/postcss-color-mod-function/-/postcss-color-mod-function-3.0.3.tgz", + "integrity": "sha512-YP4VG+xufxaVtzV6ZmhEtc+/aTXH3d0JLpnYfxqTvwZPbJhWqp8bSY3nfNzNRFLgB4XSaBA82OE4VjOOKpCdVQ==", + "requires": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + } + }, + "postcss-color-rebeccapurple": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-color-rebeccapurple/-/postcss-color-rebeccapurple-4.0.1.tgz", + "integrity": "sha512-aAe3OhkS6qJXBbqzvZth2Au4V3KieR5sRQ4ptb2b2O8wgvB3SJBsdG+jsn2BZbbwekDG8nTfcCNKcSfe/lEy8g==", + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + } + }, + "postcss-colormin": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-4.0.3.tgz", + "integrity": "sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw==", + "requires": { + "browserslist": "^4.0.0", + "color": "^3.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.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==" + } + } + }, + "postcss-convert-values": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz", + "integrity": "sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ==", + "requires": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.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==" + } + } + }, + "postcss-custom-media": { + "version": "7.0.8", + "resolved": "https://registry.npmjs.org/postcss-custom-media/-/postcss-custom-media-7.0.8.tgz", + "integrity": "sha512-c9s5iX0Ge15o00HKbuRuTqNndsJUbaXdiNsksnVH8H4gdc+zbLzr/UasOwNG6CTDpLFekVY4672eWdiiWu2GUg==", + "requires": { + "postcss": "^7.0.14" + } + }, + "postcss-custom-properties": { + "version": "8.0.11", + "resolved": "https://registry.npmjs.org/postcss-custom-properties/-/postcss-custom-properties-8.0.11.tgz", + "integrity": "sha512-nm+o0eLdYqdnJ5abAJeXp4CEU1c1k+eB2yMCvhgzsds/e0umabFrN6HoTy/8Q4K5ilxERdl/JD1LO5ANoYBeMA==", + "requires": { + "postcss": "^7.0.17", + "postcss-values-parser": "^2.0.1" + } + }, + "postcss-custom-selectors": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/postcss-custom-selectors/-/postcss-custom-selectors-5.1.2.tgz", + "integrity": "sha512-DSGDhqinCqXqlS4R7KGxL1OSycd1lydugJ1ky4iRXPHdBRiozyMHrdu0H3o7qNOCiZwySZTUI5MV0T8QhCLu+w==", + "requires": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "dependencies": { + "cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==" + }, + "postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "requires": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "postcss-dir-pseudo-class": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-dir-pseudo-class/-/postcss-dir-pseudo-class-5.0.0.tgz", + "integrity": "sha512-3pm4oq8HYWMZePJY+5ANriPs3P07q+LW6FAdTlkFH2XqDdP4HeeJYMOzn0HYLhRSjBO3fhiqSwwU9xEULSrPgw==", + "requires": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "dependencies": { + "cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==" + }, + "postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "requires": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "postcss-discard-comments": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz", + "integrity": "sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg==", + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-discard-duplicates": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz", + "integrity": "sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ==", + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-discard-empty": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz", + "integrity": "sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w==", + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-discard-overridden": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz", + "integrity": "sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg==", + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-double-position-gradients": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/postcss-double-position-gradients/-/postcss-double-position-gradients-1.0.0.tgz", + "integrity": "sha512-G+nV8EnQq25fOI8CH/B6krEohGWnF5+3A6H/+JEpOncu5dCnkS1QQ6+ct3Jkaepw1NGVqqOZH6lqrm244mCftA==", + "requires": { + "postcss": "^7.0.5", + "postcss-values-parser": "^2.0.0" + } + }, + "postcss-env-function": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/postcss-env-function/-/postcss-env-function-2.0.2.tgz", + "integrity": "sha512-rwac4BuZlITeUbiBq60h/xbLzXY43qOsIErngWa4l7Mt+RaSkT7QBjXVGTcBHupykkblHMDrBFh30zchYPaOUw==", + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + } + }, + "postcss-flexbugs-fixes": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-flexbugs-fixes/-/postcss-flexbugs-fixes-4.1.0.tgz", + "integrity": "sha512-jr1LHxQvStNNAHlgco6PzY308zvLklh7SJVYuWUwyUQncofaAlD2l+P/gxKHOdqWKe7xJSkVLFF/2Tp+JqMSZA==", + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-focus-visible": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-focus-visible/-/postcss-focus-visible-4.0.0.tgz", + "integrity": "sha512-Z5CkWBw0+idJHSV6+Bgf2peDOFf/x4o+vX/pwcNYrWpXFrSfTkQ3JQ1ojrq9yS+upnAlNRHeg8uEwFTgorjI8g==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-focus-within": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-focus-within/-/postcss-focus-within-3.0.0.tgz", + "integrity": "sha512-W0APui8jQeBKbCGZudW37EeMCjDeVxKgiYfIIEo8Bdh5SpB9sxds/Iq8SEuzS0Q4YFOlG7EPFulbbxujpkrV2w==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-font-variant": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-font-variant/-/postcss-font-variant-4.0.0.tgz", + "integrity": "sha512-M8BFYKOvCrI2aITzDad7kWuXXTm0YhGdP9Q8HanmN4EF1Hmcgs1KK5rSHylt/lUJe8yLxiSwWAHdScoEiIxztg==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-gap-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-gap-properties/-/postcss-gap-properties-2.0.0.tgz", + "integrity": "sha512-QZSqDaMgXCHuHTEzMsS2KfVDOq7ZFiknSpkrPJY6jmxbugUPTuSzs/vuE5I3zv0WAS+3vhrlqhijiprnuQfzmg==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-image-set-function": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/postcss-image-set-function/-/postcss-image-set-function-3.0.1.tgz", + "integrity": "sha512-oPTcFFip5LZy8Y/whto91L9xdRHCWEMs3e1MdJxhgt4jy2WYXfhkng59fH5qLXSCPN8k4n94p1Czrfe5IOkKUw==", + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + } + }, + "postcss-initial": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/postcss-initial/-/postcss-initial-3.0.2.tgz", + "integrity": "sha512-ugA2wKonC0xeNHgirR4D3VWHs2JcU08WAi1KFLVcnb7IN89phID6Qtg2RIctWbnvp1TM2BOmDtX8GGLCKdR8YA==", + "requires": { + "lodash.template": "^4.5.0", + "postcss": "^7.0.2" + } + }, + "postcss-lab-function": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-lab-function/-/postcss-lab-function-2.0.1.tgz", + "integrity": "sha512-whLy1IeZKY+3fYdqQFuDBf8Auw+qFuVnChWjmxm/UhHWqNHZx+B99EwxTvGYmUBqe3Fjxs4L1BoZTJmPu6usVg==", + "requires": { + "@csstools/convert-colors": "^1.4.0", + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + } + }, + "postcss-load-config": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.1.0.tgz", + "integrity": "sha512-4pV3JJVPLd5+RueiVVB+gFOAa7GWc25XQcMp86Zexzke69mKf6Nx9LRcQywdz7yZI9n1udOxmLuAwTBypypF8Q==", + "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==", + "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=", + "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=", + "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=" + } + } + }, + "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==", + "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==", + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + } + } + }, + "postcss-logical": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-logical/-/postcss-logical-3.0.0.tgz", + "integrity": "sha512-1SUKdJc2vuMOmeItqGuNaC+N8MzBWFWEkAnRnLpFYj1tGGa7NqyVBujfRtgNa2gXR+6RkGUiB2O5Vmh7E2RmiA==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-media-minmax": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-media-minmax/-/postcss-media-minmax-4.0.0.tgz", + "integrity": "sha512-fo9moya6qyxsjbFAYl97qKO9gyre3qvbMnkOZeZwlsW6XYFsvs2DMGDlchVLfAd8LHPZDxivu/+qW2SMQeTHBw==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-merge-longhand": { + "version": "4.0.11", + "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz", + "integrity": "sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw==", + "requires": { + "css-color-names": "0.0.4", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "stylehacks": "^4.0.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==" + } + } + }, + "postcss-merge-rules": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz", + "integrity": "sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ==", + "requires": { + "browserslist": "^4.0.0", + "caniuse-api": "^3.0.0", + "cssnano-util-same-parent": "^4.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0", + "vendors": "^1.0.0" + }, + "dependencies": { + "postcss-selector-parser": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", + "requires": { + "dot-prop": "^5.2.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "postcss-minify-font-values": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz", + "integrity": "sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg==", + "requires": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.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==" + } + } + }, + "postcss-minify-gradients": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz", + "integrity": "sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q==", + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "is-color-stop": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.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==" + } + } + }, + "postcss-minify-params": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz", + "integrity": "sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg==", + "requires": { + "alphanum-sort": "^1.0.0", + "browserslist": "^4.0.0", + "cssnano-util-get-arguments": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "uniqs": "^2.0.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==" + } + } + }, + "postcss-minify-selectors": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz", + "integrity": "sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g==", + "requires": { + "alphanum-sort": "^1.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0" + }, + "dependencies": { + "postcss-selector-parser": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", + "requires": { + "dot-prop": "^5.2.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "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==", + "requires": { + "postcss": "^7.0.5" } }, "postcss-modules-local-by-default": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz", - "integrity": "sha1-99gMOYxaOT+nlkRmvRlQCn1hwGk=", - "dev": true, + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.2.tgz", + "integrity": "sha512-jM/V8eqM4oJ/22j0gx4jrp63GSvDH6v86OqyTHHUvk4/k1vceipZsaymiZ5PvocqZOl5SFHiFJqjs3la0wnfIQ==", "requires": { - "css-selector-tokenizer": "^0.7.0", - "postcss": "^6.0.1" + "icss-utils": "^4.1.1", + "postcss": "^7.0.16", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.0.0" } }, "postcss-modules-scope": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz", - "integrity": "sha1-1upkmUx5+XtipytCb75gVqGUu5A=", - "dev": true, + "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==", "requires": { - "css-selector-tokenizer": "^0.7.0", - "postcss": "^6.0.1" + "postcss": "^7.0.6", + "postcss-selector-parser": "^6.0.0" } }, "postcss-modules-values": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz", - "integrity": "sha1-7P+p1+GSUYOJ9CrQ6D9yrsRW6iA=", - "dev": true, + "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==", "requires": { - "icss-replace-symbols": "^1.1.0", - "postcss": "^6.0.1" + "icss-utils": "^4.0.0", + "postcss": "^7.0.6" + } + }, + "postcss-nesting": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/postcss-nesting/-/postcss-nesting-7.0.1.tgz", + "integrity": "sha512-FrorPb0H3nuVq0Sff7W2rnc3SmIcruVC6YwpcS+k687VxyxO33iE1amna7wHuRVzM8vfiYofXSBHNAZ3QhLvYg==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-normalize": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize/-/postcss-normalize-8.0.1.tgz", + "integrity": "sha512-rt9JMS/m9FHIRroDDBGSMsyW1c0fkvOJPy62ggxSHUldJO7B195TqFMqIf+lY5ezpDcYOV4j86aUp3/XbxzCCQ==", + "requires": { + "@csstools/normalize.css": "^10.1.0", + "browserslist": "^4.6.2", + "postcss": "^7.0.17", + "postcss-browser-comments": "^3.0.0", + "sanitize.css": "^10.0.0" + } + }, + "postcss-normalize-charset": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz", + "integrity": "sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g==", + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-normalize-display-values": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz", + "integrity": "sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ==", + "requires": { + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.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==" + } + } + }, + "postcss-normalize-positions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz", + "integrity": "sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA==", + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.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==" + } + } + }, + "postcss-normalize-repeat-style": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz", + "integrity": "sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q==", + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.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==" + } + } + }, + "postcss-normalize-string": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz", + "integrity": "sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA==", + "requires": { + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.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==" + } + } + }, + "postcss-normalize-timing-functions": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz", + "integrity": "sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A==", + "requires": { + "cssnano-util-get-match": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.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==" + } + } + }, + "postcss-normalize-unicode": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz", + "integrity": "sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg==", + "requires": { + "browserslist": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.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==" + } + } + }, + "postcss-normalize-url": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz", + "integrity": "sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA==", + "requires": { + "is-absolute-url": "^2.0.0", + "normalize-url": "^3.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0" + }, + "dependencies": { + "normalize-url": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz", + "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==" + }, + "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==" + } + } + }, + "postcss-normalize-whitespace": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz", + "integrity": "sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA==", + "requires": { + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.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==" + } + } + }, + "postcss-ordered-values": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz", + "integrity": "sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw==", + "requires": { + "cssnano-util-get-arguments": "^4.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.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==" + } + } + }, + "postcss-overflow-shorthand": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-overflow-shorthand/-/postcss-overflow-shorthand-2.0.0.tgz", + "integrity": "sha512-aK0fHc9CBNx8jbzMYhshZcEv8LtYnBIRYQD5i7w/K/wS9c2+0NSR6B3OVMu5y0hBHYLcMGjfU+dmWYNKH0I85g==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-page-break": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postcss-page-break/-/postcss-page-break-2.0.0.tgz", + "integrity": "sha512-tkpTSrLpfLfD9HvgOlJuigLuk39wVTbbd8RKcy8/ugV2bNBUW3xU+AIqyxhDrQr1VUj1RmyJrBn1YWrqUm9zAQ==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-place": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-place/-/postcss-place-4.0.1.tgz", + "integrity": "sha512-Zb6byCSLkgRKLODj/5mQugyuj9bvAAw9LqJJjgwz5cYryGeXfFZfSXoP1UfveccFmeq0b/2xxwcTEVScnqGxBg==", + "requires": { + "postcss": "^7.0.2", + "postcss-values-parser": "^2.0.0" + } + }, + "postcss-preset-env": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/postcss-preset-env/-/postcss-preset-env-6.7.0.tgz", + "integrity": "sha512-eU4/K5xzSFwUFJ8hTdTQzo2RBLbDVt83QZrAvI07TULOkmyQlnYlpwep+2yIK+K+0KlZO4BvFcleOCCcUtwchg==", + "requires": { + "autoprefixer": "^9.6.1", + "browserslist": "^4.6.4", + "caniuse-lite": "^1.0.30000981", + "css-blank-pseudo": "^0.1.4", + "css-has-pseudo": "^0.10.0", + "css-prefers-color-scheme": "^3.1.1", + "cssdb": "^4.4.0", + "postcss": "^7.0.17", + "postcss-attribute-case-insensitive": "^4.0.1", + "postcss-color-functional-notation": "^2.0.1", + "postcss-color-gray": "^5.0.0", + "postcss-color-hex-alpha": "^5.0.3", + "postcss-color-mod-function": "^3.0.3", + "postcss-color-rebeccapurple": "^4.0.1", + "postcss-custom-media": "^7.0.8", + "postcss-custom-properties": "^8.0.11", + "postcss-custom-selectors": "^5.1.2", + "postcss-dir-pseudo-class": "^5.0.0", + "postcss-double-position-gradients": "^1.0.0", + "postcss-env-function": "^2.0.2", + "postcss-focus-visible": "^4.0.0", + "postcss-focus-within": "^3.0.0", + "postcss-font-variant": "^4.0.0", + "postcss-gap-properties": "^2.0.0", + "postcss-image-set-function": "^3.0.1", + "postcss-initial": "^3.0.0", + "postcss-lab-function": "^2.0.1", + "postcss-logical": "^3.0.0", + "postcss-media-minmax": "^4.0.0", + "postcss-nesting": "^7.0.0", + "postcss-overflow-shorthand": "^2.0.0", + "postcss-page-break": "^2.0.0", + "postcss-place": "^4.0.1", + "postcss-pseudo-class-any-link": "^6.0.0", + "postcss-replace-overflow-wrap": "^3.0.0", + "postcss-selector-matches": "^4.0.0", + "postcss-selector-not": "^4.0.0" + } + }, + "postcss-pseudo-class-any-link": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-pseudo-class-any-link/-/postcss-pseudo-class-any-link-6.0.0.tgz", + "integrity": "sha512-lgXW9sYJdLqtmw23otOzrtbDXofUdfYzNm4PIpNE322/swES3VU9XlXHeJS46zT2onFO7V1QFdD4Q9LiZj8mew==", + "requires": { + "postcss": "^7.0.2", + "postcss-selector-parser": "^5.0.0-rc.3" + }, + "dependencies": { + "cssesc": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-2.0.0.tgz", + "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==" + }, + "postcss-selector-parser": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", + "integrity": "sha512-w+zLE5Jhg6Liz8+rQOWEAwtwkyqpfnmsinXjXg6cY7YIONZZtgvE0v2O0uhQBs0peNomOJwWRKt6JBfTdTd3OQ==", + "requires": { + "cssesc": "^2.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + } + } + }, + "postcss-reduce-initial": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz", + "integrity": "sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA==", + "requires": { + "browserslist": "^4.0.0", + "caniuse-api": "^3.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0" + } + }, + "postcss-reduce-transforms": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz", + "integrity": "sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg==", + "requires": { + "cssnano-util-get-match": "^4.0.0", + "has": "^1.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.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==" + } + } + }, + "postcss-replace-overflow-wrap": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-replace-overflow-wrap/-/postcss-replace-overflow-wrap-3.0.0.tgz", + "integrity": "sha512-2T5hcEHArDT6X9+9dVSPQdo7QHzG4XKclFT8rU5TzJPDN7RIRTbO9c4drUISOVemLj03aezStHCR2AIcr8XLpw==", + "requires": { + "postcss": "^7.0.2" + } + }, + "postcss-safe-parser": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-4.0.1.tgz", + "integrity": "sha512-xZsFA3uX8MO3yAda03QrG3/Eg1LN3EPfjjf07vke/46HERLZyHrTsQ9E1r1w1W//fWEhtYNndo2hQplN2cVpCQ==", + "requires": { + "postcss": "^7.0.0" + } + }, + "postcss-selector-matches": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-matches/-/postcss-selector-matches-4.0.0.tgz", + "integrity": "sha512-LgsHwQR/EsRYSqlwdGzeaPKVT0Ml7LAT6E75T8W8xLJY62CE4S/l03BWIt3jT8Taq22kXP08s2SfTSzaraoPww==", + "requires": { + "balanced-match": "^1.0.0", + "postcss": "^7.0.2" + } + }, + "postcss-selector-not": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-selector-not/-/postcss-selector-not-4.0.0.tgz", + "integrity": "sha512-W+bkBZRhqJaYN8XAnbbZPLWMvZD1wKTu0UxtFKdhtGjWYmxhkUneoeOhRJKdAE5V7ZTlnbHfCR+6bNwK9e1dTQ==", + "requires": { + "balanced-match": "^1.0.0", + "postcss": "^7.0.2" + } + }, + "postcss-selector-parser": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz", + "integrity": "sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg==", + "requires": { + "cssesc": "^3.0.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } + }, + "postcss-svgo": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-4.0.2.tgz", + "integrity": "sha512-C6wyjo3VwFm0QgBy+Fu7gCYOkCmgmClghO+pjcxvrcBKtiKt0uCF+hvbMO1fyv5BMImRK90SMb+dwUnfbGd+jw==", + "requires": { + "is-svg": "^3.0.0", + "postcss": "^7.0.0", + "postcss-value-parser": "^3.0.0", + "svgo": "^1.0.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==" + } + } + }, + "postcss-unique-selectors": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz", + "integrity": "sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg==", + "requires": { + "alphanum-sort": "^1.0.0", + "postcss": "^7.0.0", + "uniqs": "^2.0.0" } }, "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==" + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", + "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==" + }, + "postcss-values-parser": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/postcss-values-parser/-/postcss-values-parser-2.0.1.tgz", + "integrity": "sha512-2tLuBsA6P4rYTNKCXYG/71C7j1pU6pK503suYOmn4xYrQIzW+opD+7FAFNuGSdZC/3Qfy334QbeMu7MEb8gOxg==", + "requires": { + "flatten": "^1.0.2", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" + } }, "prelude-ls": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", - "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", - "dev": true + "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" + }, + "prepend-http": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", + "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=" }, "prettier": { - "version": "1.18.2", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.18.2.tgz", - "integrity": "sha512-OeHeMc0JhFE9idD4ZdtNibzY0+TPHSpSSb9h8FqtP+YnoZZ1sl8Vc9b1sasjfymH3SonAF4QcA2+mzHPhMvIiw==", + "version": "1.19.1", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz", + "integrity": "sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==", "dev": true }, - "pretty-format": { - "version": "23.6.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-23.6.0.tgz", - "integrity": "sha512-zf9NV1NSlDLDjycnwm6hpFATCGl/K1lt0R/GdkAK2O5LN/rwJoB+Mh93gGJjut4YbmecbfgLWVGSTCr0Ewvvbw==", - "dev": true, + "pretty-bytes": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.3.0.tgz", + "integrity": "sha512-hjGrh+P926p4R4WbaB6OckyRtO0F0/lQBiT+0gnxjV+5kjPBrfVBFCsCLbMqVQeydvIoouYTCmmEURiH3R1Bdg==" + }, + "pretty-error": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.1.tgz", + "integrity": "sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM=", "requires": { - "ansi-regex": "^3.0.0", - "ansi-styles": "^3.2.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 - }, - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - } + "renderkid": "^2.0.1", + "utila": "~0.4" + } + }, + "pretty-format": { + "version": "24.9.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-24.9.0.tgz", + "integrity": "sha512-00ZMZUiHaJrNfk33guavqgvfJS30sLYf0f8+Srklv0AMPodGGHcoHgksZ3OThYnIvOd+8yMCn0YiEOogjlgsnA==", + "requires": { + "@jest/types": "^24.9.0", + "ansi-regex": "^4.0.0", + "ansi-styles": "^3.2.0", + "react-is": "^16.8.4" } }, "private": { "version": "0.1.8", "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", - "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", - "dev": true + "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==" }, "process": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/process/-/process-0.5.2.tgz", - "integrity": "sha1-FjjYqONML0QKkduVq5rrZ3/Bhc8=", - "dev": true + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=" }, "process-nextick-args": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz", - "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==" + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" }, "progress": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", - "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true + "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==" + }, + "promise": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/promise/-/promise-8.1.0.tgz", + "integrity": "sha512-W04AqnILOL/sPRXziNicCjSNRruLAuIHEOVBazepu0545DDNGYHz7ar9ZgZ1fMU8/MA4mVxp5rkBWRi6OXIy3Q==", + "requires": { + "asap": "~2.0.6" + } }, "promise-inflight": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", - "dev": true + "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=" }, "prompts": { "version": "2.3.2", "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.3.2.tgz", "integrity": "sha512-Q06uKs2CkNYVID0VqwfAl9mipo99zkBv/n2JtWY89Yxa3ZabWSrs0e2KTudKVa3peLUvYXMefDqIleLPVUBZMA==", - "dev": true, "requires": { "kleur": "^3.0.3", "sisteransi": "^1.0.4" } }, "prop-types": { - "version": "15.6.2", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.6.2.tgz", - "integrity": "sha512-3pboPvLiWD7dkI3qf3KbUe6hKFKa52w+AE0VCqECtf+QHAKgOL37tTaNCnuX1nAAQ4ZhyP+kYVKf8rLmJ/feDQ==", + "version": "15.7.2", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", + "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", "requires": { - "loose-envify": "^1.3.1", - "object-assign": "^4.1.1" + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.8.1" } }, "prop-types-exact": { @@ -19381,20 +12512,18 @@ } }, "proxy-addr": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.4.tgz", - "integrity": "sha512-5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA==", - "dev": true, + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", + "integrity": "sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==", "requires": { "forwarded": "~0.1.2", - "ipaddr.js": "1.8.0" + "ipaddr.js": "1.9.1" } }, "prr": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", - "dev": true + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=" }, "pseudolocale": { "version": "1.1.0", @@ -19405,23 +12534,15 @@ "commander": "*" } }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", - "dev": true - }, "psl": { - "version": "1.1.29", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.29.tgz", - "integrity": "sha512-AeUmQ0oLN02flVHXWh9sSJF7mcdFq0ppid/JkErufc3hGIV/AMa8Fo9VgDo/cT2jFdOWoFvHp90qqBH54W+gjQ==", - "dev": true + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" }, "public-encrypt": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", - "dev": true, "requires": { "bn.js": "^4.1.0", "browserify-rsa": "^4.0.0", @@ -19429,13 +12550,19 @@ "parse-asn1": "^5.0.0", "randombytes": "^2.0.1", "safe-buffer": "^5.1.2" + }, + "dependencies": { + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + } } }, "pump": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, "requires": { "end-of-stream": "^1.1.0", "once": "^1.3.1" @@ -19445,7 +12572,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", @@ -19456,7 +12582,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" @@ -19467,38 +12592,46 @@ "punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + }, + "q": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", + "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=" }, "qs": { "version": "6.5.2", "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", - "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", - "dev": true + "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" + }, + "query-string": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz", + "integrity": "sha1-u7aTucqRXCMlFbIosaArYJBD2+s=", + "requires": { + "object-assign": "^4.1.0", + "strict-uri-encode": "^1.0.0" + } }, "querystring": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", - "dev": true + "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=" }, "querystring-es3": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", - "dev": true + "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=" }, "querystringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.1.0.tgz", - "integrity": "sha512-sluvZZ1YiTLD5jsqZcDmFyV2EwToyXZBfpoVOmktMmW+VEnhgakFHnasVph65fOjGPTWN0Nw3+XQaSeMayr0kg==", - "dev": true + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.1.1.tgz", + "integrity": "sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA==" }, "raf": { "version": "3.4.1", "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", - "dev": true, "requires": { "performance-now": "^2.1.0" } @@ -19510,9 +12643,9 @@ "dev": true }, "ramda": { - "version": "0.25.0", - "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.25.0.tgz", - "integrity": "sha512-GXpfrYVPwx3K7RQ6aYT8KPS8XViSXUVJT1ONhoKPE9VAleW42YE+U+8VEyGWt41EnEQW7gwecYJriTI0pKoecQ==", + "version": "0.26.1", + "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.26.1.tgz", + "integrity": "sha512-hLWjpy7EnsDBb0p+Z3B7rPi3GDeRG5ZtiI33kJhTt+ORCd38AbAIjB/9zRIUoeTbE/AVX5ZkU7m6bznsvrf8eQ==", "dev": true }, "randexp": { @@ -19526,10 +12659,9 @@ } }, "randombytes": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.6.tgz", - "integrity": "sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A==", - "dev": true, + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", "requires": { "safe-buffer": "^5.1.0" } @@ -19538,71 +12670,322 @@ "version": "1.0.4", "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "dev": true, "requires": { "randombytes": "^2.0.5", "safe-buffer": "^5.1.0" } }, "range-parser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz", - "integrity": "sha1-9JvmtIeJTdxA3MlKMi9hEJLgDV4=", - "dev": true + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" }, "raw-body": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.3.tgz", - "integrity": "sha512-9esiElv1BrZoI3rCDuOuKCBRbuApGGaDPQfjSflGxdy4oyzqghxu6klEkkVIvBje+FF0BX9coEv8KqW6X/7njw==", - "dev": true, + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", + "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", "requires": { - "bytes": "3.0.0", - "http-errors": "1.6.3", - "iconv-lite": "0.4.23", + "bytes": "3.1.0", + "http-errors": "1.7.2", + "iconv-lite": "0.4.24", "unpipe": "1.0.0" }, "dependencies": { - "iconv-lite": { - "version": "0.4.23", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", - "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", - "dev": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } + "bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" } } }, "react": { - "version": "16.13.0", - "resolved": "https://registry.npmjs.org/react/-/react-16.13.0.tgz", - "integrity": "sha512-TSavZz2iSLkq5/oiE7gnFzmURKZMltmi193rm5HEoUDAXpzT9Kzw6oNZnGoai/4+fUnm7FqS5dwgUL34TujcWQ==", + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react/-/react-16.13.1.tgz", + "integrity": "sha512-YMZQQq32xHLX0bz5Mnibv1/LHb3Sqzngu7xstSM+vrkE5Kzr9xE0yMByK5kMoTK30YVJE61WfbxIFFvfeDKT1w==", "requires": { "loose-envify": "^1.1.0", "object-assign": "^4.1.1", "prop-types": "^15.6.2" } }, + "react-app-polyfill": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/react-app-polyfill/-/react-app-polyfill-1.0.6.tgz", + "integrity": "sha512-OfBnObtnGgLGfweORmdZbyEz+3dgVePQBb3zipiaDsMHV1NpWm0rDFYIVXFV/AK+x4VIIfWHhrdMIeoTLyRr2g==", + "requires": { + "core-js": "^3.5.0", + "object-assign": "^4.1.1", + "promise": "^8.0.3", + "raf": "^3.4.1", + "regenerator-runtime": "^0.13.3", + "whatwg-fetch": "^3.0.0" + }, + "dependencies": { + "core-js": { + "version": "3.6.5", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.6.5.tgz", + "integrity": "sha512-vZVEEwZoIsI+vPEuoF9Iqf5H7/M3eeQqWlQnYa8FSKKePuYTf5MWnxb5SDAzCa60b3JBRS5g9b+Dq7b1y/RCrA==" + }, + "regenerator-runtime": { + "version": "0.13.5", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.5.tgz", + "integrity": "sha512-ZS5w8CpKFinUzOwW3c83oPeVXoNsrLsaCoLtJvAClH135j/R77RuymhiSErhm2lKcwSCIpmvIWSbDkIfAqKQlA==" + } + } + }, "react-codemirror2": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/react-codemirror2/-/react-codemirror2-6.0.0.tgz", - "integrity": "sha512-D7y9qZ05FbUh9blqECaJMdDwKluQiO3A9xB+fssd5jKM7YAXucRuEOlX32mJQumUvHUkHRHqXIPBjm6g0FW0Ag==" + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/react-codemirror2/-/react-codemirror2-6.0.1.tgz", + "integrity": "sha512-rutEKVgvFhWcy/GeVA1hFbqrO89qLqgqdhUr7YhYgIzdyICdlRQv+ztuNvOFQMXrO0fLt0VkaYOdMdYdQgsSUA==" + }, + "react-dev-utils": { + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/react-dev-utils/-/react-dev-utils-10.2.1.tgz", + "integrity": "sha512-XxTbgJnYZmxuPtY3y/UV0D8/65NKkmaia4rXzViknVnZeVlklSh8u6TnaEYPfAi/Gh1TP4mEOXHI6jQOPbeakQ==", + "requires": { + "@babel/code-frame": "7.8.3", + "address": "1.1.2", + "browserslist": "4.10.0", + "chalk": "2.4.2", + "cross-spawn": "7.0.1", + "detect-port-alt": "1.1.6", + "escape-string-regexp": "2.0.0", + "filesize": "6.0.1", + "find-up": "4.1.0", + "fork-ts-checker-webpack-plugin": "3.1.1", + "global-modules": "2.0.0", + "globby": "8.0.2", + "gzip-size": "5.1.1", + "immer": "1.10.0", + "inquirer": "7.0.4", + "is-root": "2.1.0", + "loader-utils": "1.2.3", + "open": "^7.0.2", + "pkg-up": "3.1.0", + "react-error-overlay": "^6.0.7", + "recursive-readdir": "2.2.2", + "shell-quote": "1.7.2", + "strip-ansi": "6.0.0", + "text-table": "0.2.0" + }, + "dependencies": { + "browserslist": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.10.0.tgz", + "integrity": "sha512-TpfK0TDgv71dzuTsEAlQiHeWQ/tiPqgNZVdv046fvNtBZrjbv2O3TsWCDU0AWGJJKCF/KsjNdLzR9hXOsh/CfA==", + "requires": { + "caniuse-lite": "^1.0.30001035", + "electron-to-chromium": "^1.3.378", + "node-releases": "^1.1.52", + "pkg-up": "^3.1.0" + } + }, + "cross-spawn": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.1.tgz", + "integrity": "sha512-u7v4o84SwFpD32Z8IIcPZ6z1/ie24O6RU3RbtL5Y316l3KuHVPx9ItBgWQ6VlfAFnRnTtMUrsQ9MUUTuEZjogg==", + "requires": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + } + }, + "emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=" + }, + "escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==" + }, + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "dependencies": { + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "requires": { + "p-locate": "^4.1.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "requires": { + "p-limit": "^2.2.0" + } + }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" + } + } + }, + "inquirer": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.0.4.tgz", + "integrity": "sha512-Bu5Td5+j11sCkqfqmUTiwv+tWisMtP0L7Q8WrqA2C/BbBhy1YTdFrvjjlrKq8oagA/tLQBski2Gcx/Sqyi2qSQ==", + "requires": { + "ansi-escapes": "^4.2.1", + "chalk": "^2.4.2", + "cli-cursor": "^3.1.0", + "cli-width": "^2.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.15", + "mute-stream": "0.0.8", + "run-async": "^2.2.0", + "rxjs": "^6.5.3", + "string-width": "^4.1.0", + "strip-ansi": "^5.1.0", + "through": "^2.3.6" + }, + "dependencies": { + "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" + } + } + } + }, + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "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==", + "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==", + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.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==" + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==" + }, + "pkg-up": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/pkg-up/-/pkg-up-3.1.0.tgz", + "integrity": "sha512-nDywThFk1i4BQK4twPQ6TA4RT8bDY96yeuCVBWL3ePARCiEKDRSrNGbFIgUJpLp+XeIR65v8ra7WuJOFUBtkMA==", + "requires": { + "find-up": "^3.0.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + } + } + }, + "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==" + }, + "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" + }, + "dependencies": { + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" + } + } + }, + "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" + } + } + } }, "react-dom": { - "version": "16.13.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.13.0.tgz", - "integrity": "sha512-y09d2c4cG220DzdlFkPTnVvGTszVvNpC73v+AaLGLHbkpy3SSgvYq8x0rNwPJ/Rk/CicTNgk0hbHNw1gMEZAXg==", + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.13.1.tgz", + "integrity": "sha512-81PIMmVLnCNLO/fFOQxdQkvEq/+Hfpv24XNJfpyZhTRfO0QcmQIF/PgCa1zCOj2w1hrn12MFLyaJ/G0+Mxtfag==", "requires": { "loose-envify": "^1.1.0", "object-assign": "^4.1.1", "prop-types": "^15.6.2", - "scheduler": "^0.19.0" + "scheduler": "^0.19.1" }, "dependencies": { "scheduler": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.19.0.tgz", - "integrity": "sha512-xowbVaTPe9r7y7RUejcK73/j8tt2jfiyTednOvHbA8JoClvMYCp+r8QegLwK/n8zWQAtZb1fFnER4XLBZXrCxA==", + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.19.1.tgz", + "integrity": "sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA==", "requires": { "loose-envify": "^1.1.0", "object-assign": "^4.1.1" @@ -19621,29 +13004,20 @@ "prop-types-extra": "^1.1.0" } }, + "react-error-overlay": { + "version": "6.0.7", + "resolved": "https://registry.npmjs.org/react-error-overlay/-/react-error-overlay-6.0.7.tgz", + "integrity": "sha512-TAv1KJFh3RhqxNvhzxj6LeT5NWklP6rDr2a0jaTfsZ5wSZWHOGeqQyejUp3xxLfPt2UpyJEcVQB/zyPcmonNFA==" + }, "react-fast-compare": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-2.0.4.tgz", "integrity": "sha512-suNP+J1VU1MWFKcyt7RtjiSWUjvidmQSlqu+eHslq+342xCbGTYmC0mEhPCOHxlW0CywylOC1u2DFAT+bv4dBw==" }, - "react-hot-loader": { - "version": "4.3.11", - "resolved": "https://registry.npmjs.org/react-hot-loader/-/react-hot-loader-4.3.11.tgz", - "integrity": "sha512-T0G5jURyTsFLoiW6MTr5Q35UHC/B2pmYJ7+VBjk8yMDCEABRmCGy4g6QwxoB4pWg4/xYvVTa/Pbqnsgx/+NLuA==", - "dev": true, - "requires": { - "fast-levenshtein": "^2.0.6", - "global": "^4.3.0", - "hoist-non-react-statics": "^2.5.0", - "prop-types": "^15.6.1", - "react-lifecycles-compat": "^3.0.4", - "shallowequal": "^1.0.2" - } - }, "react-is": { - "version": "16.6.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.6.0.tgz", - "integrity": "sha512-q8U7k0Fi7oxF1HvQgyBjPwDXeMplEsArnKt2iYhuIF86+GBbgLHdAmokL3XUFjTd7Q363OSNG55FOGUdONVn1g==" + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" }, "react-lifecycles-compat": { "version": "3.0.4", @@ -19665,23 +13039,6 @@ "react-is": "^16.6.0", "tiny-invariant": "^1.0.2", "tiny-warning": "^1.0.0" - }, - "dependencies": { - "hoist-non-react-statics": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/hoist-non-react-statics/-/hoist-non-react-statics-3.3.0.tgz", - "integrity": "sha512-0XsbTXxgiaCDYDIWFcwkmerZPSwywfUqYmwT4jzewKTQSWoE6FCMoUVOeBJWK3E/CrWbxRG3m5GzY4lnIwGRBA==", - "requires": { - "react-is": "^16.7.0" - }, - "dependencies": { - "react-is": { - "version": "16.10.2", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.10.2.tgz", - "integrity": "sha512-INBT1QEgtcCCgvccr5/86CfD71fw9EPmDxgiJX4I2Ddr6ZsV6iFXsuby+qWJPtmNuMY0zByTsG4468P7nHuNWA==" - } - } - } } }, "react-router-dom": { @@ -19698,85 +13055,190 @@ "tiny-warning": "^1.0.0" } }, + "react-scripts": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/react-scripts/-/react-scripts-3.4.1.tgz", + "integrity": "sha512-JpTdi/0Sfd31mZA6Ukx+lq5j1JoKItX7qqEK4OiACjVQletM1P38g49d9/D0yTxp9FrSF+xpJFStkGgKEIRjlQ==", + "requires": { + "@babel/core": "7.9.0", + "@svgr/webpack": "4.3.3", + "@typescript-eslint/eslint-plugin": "^2.10.0", + "@typescript-eslint/parser": "^2.10.0", + "babel-eslint": "10.1.0", + "babel-jest": "^24.9.0", + "babel-loader": "8.1.0", + "babel-plugin-named-asset-import": "^0.3.6", + "babel-preset-react-app": "^9.1.2", + "camelcase": "^5.3.1", + "case-sensitive-paths-webpack-plugin": "2.3.0", + "css-loader": "3.4.2", + "dotenv": "8.2.0", + "dotenv-expand": "5.1.0", + "eslint": "^6.6.0", + "eslint-config-react-app": "^5.2.1", + "eslint-loader": "3.0.3", + "eslint-plugin-flowtype": "4.6.0", + "eslint-plugin-import": "2.20.1", + "eslint-plugin-jsx-a11y": "6.2.3", + "eslint-plugin-react": "7.19.0", + "eslint-plugin-react-hooks": "^1.6.1", + "file-loader": "4.3.0", + "fs-extra": "^8.1.0", + "fsevents": "2.1.2", + "html-webpack-plugin": "4.0.0-beta.11", + "identity-obj-proxy": "3.0.0", + "jest": "24.9.0", + "jest-environment-jsdom-fourteen": "1.0.1", + "jest-resolve": "24.9.0", + "jest-watch-typeahead": "0.4.2", + "mini-css-extract-plugin": "0.9.0", + "optimize-css-assets-webpack-plugin": "5.0.3", + "pnp-webpack-plugin": "1.6.4", + "postcss-flexbugs-fixes": "4.1.0", + "postcss-loader": "3.0.0", + "postcss-normalize": "8.0.1", + "postcss-preset-env": "6.7.0", + "postcss-safe-parser": "4.0.1", + "react-app-polyfill": "^1.0.6", + "react-dev-utils": "^10.2.1", + "resolve": "1.15.0", + "resolve-url-loader": "3.1.1", + "sass-loader": "8.0.2", + "semver": "6.3.0", + "style-loader": "0.23.1", + "terser-webpack-plugin": "2.3.5", + "ts-pnp": "1.1.6", + "url-loader": "2.3.0", + "webpack": "4.42.0", + "webpack-dev-server": "3.10.3", + "webpack-manifest-plugin": "2.2.0", + "workbox-webpack-plugin": "4.3.1" + }, + "dependencies": { + "eslint-plugin-react-hooks": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-1.7.0.tgz", + "integrity": "sha512-iXTCFcOmlWvw4+TOE8CLWj6yX1GwzT0Y6cUfHHZqWnSk144VmVIRcVGtUAzrLES7C798lmvnt02C7rxaOX1HNA==" + }, + "resolve": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.15.0.tgz", + "integrity": "sha512-+hTmAldEGE80U2wJJDC1lebb5jWqvTYAfm3YZ1ckk1gBr0MnCqUKlwK1e+anaFljIl+F5tR5IoZcm4ZDA1zMQw==", + "requires": { + "path-parse": "^1.0.6" + } + } + } + }, "react-test-renderer": { - "version": "16.9.0", - "resolved": "https://registry.npmjs.org/react-test-renderer/-/react-test-renderer-16.9.0.tgz", - "integrity": "sha512-R62stB73qZyhrJo7wmCW9jgl/07ai+YzvouvCXIJLBkRlRqLx4j9RqcLEAfNfU3OxTGucqR2Whmn3/Aad6L3hQ==", + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-test-renderer/-/react-test-renderer-16.13.1.tgz", + "integrity": "sha512-Sn2VRyOK2YJJldOqoh8Tn/lWQ+ZiKhyZTPtaO0Q6yNj+QDbmRkVFap6pZPy3YQk8DScRDfyqm/KxKYP9gCMRiQ==", "dev": true, "requires": { "object-assign": "^4.1.1", "prop-types": "^15.6.2", - "react-is": "^16.9.0", - "scheduler": "^0.15.0" + "react-is": "^16.8.6", + "scheduler": "^0.19.1" }, "dependencies": { - "react-is": { - "version": "16.9.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.9.0.tgz", - "integrity": "sha512-tJBzzzIgnnRfEm046qRcURvwQnZVXmuCbscxUO5RWrGTXpon2d4c8mI0D8WE6ydVIm29JiLB6+RslkIvym9Rjw==", - "dev": true + "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" + } } } }, "react-virtualized": { - "version": "9.21.1", - "resolved": "https://registry.npmjs.org/react-virtualized/-/react-virtualized-9.21.1.tgz", - "integrity": "sha512-E53vFjRRMCyUTEKuDLuGH1ld/9TFzjf/fFW816PE4HFXWZorESbSTYtiZz1oAjra0MminaUU1EnvUxoGuEFFPA==", + "version": "9.21.2", + "resolved": "https://registry.npmjs.org/react-virtualized/-/react-virtualized-9.21.2.tgz", + "integrity": "sha512-oX7I7KYiUM7lVXQzmhtF4Xg/4UA5duSA+/ZcAvdWlTLFCoFYq1SbauJT5gZK9cZS/wdYR6TPGpX/dqzvTqQeBA==", "requires": { "babel-runtime": "^6.26.0", "clsx": "^1.0.1", - "dom-helpers": "^2.4.0 || ^3.0.0", - "linear-layout-vector": "0.0.1", + "dom-helpers": "^5.0.0", "loose-envify": "^1.3.0", "prop-types": "^15.6.0", "react-lifecycles-compat": "^3.0.4" } }, "read-pkg": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", - "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", - "dev": true, + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz", + "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=", "requires": { - "load-json-file": "^1.0.0", + "load-json-file": "^4.0.0", "normalize-package-data": "^2.3.2", - "path-type": "^1.0.0" + "path-type": "^3.0.0" + }, + "dependencies": { + "path-type": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz", + "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", + "requires": { + "pify": "^3.0.0" + } + } } }, "read-pkg-up": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", - "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", - "dev": true, + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-4.0.0.tgz", + "integrity": "sha512-6etQSH7nJGsK0RbG/2TeDzZFa8shjQ1um+SwQQ5cwKy0dhSXdOncEhb1CPpvQG4h7FyOV6EB6YlV0yJvZQNAkA==", "requires": { - "find-up": "^1.0.0", - "read-pkg": "^1.0.0" + "find-up": "^3.0.0", + "read-pkg": "^3.0.0" }, "dependencies": { "find-up": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", - "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", - "dev": true, + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "requires": { - "path-exists": "^2.0.0", - "pinkie-promise": "^2.0.0" + "locate-path": "^3.0.0" } }, - "path-exists": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", - "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", - "dev": true, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "requires": { - "pinkie-promise": "^2.0.0" + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "requires": { + "p-limit": "^2.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==" } } }, "readable-stream": { "version": "1.0.34", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", "requires": { "core-util-is": "~1.0.0", @@ -19786,360 +13248,36 @@ } }, "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", - "dev": true, + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", + "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" - }, - "dependencies": { - "arr-diff": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", - "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", - "dev": true - }, - "array-unique": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", - "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", - "dev": true - }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, - "requires": { - "arr-flatten": "^1.1.0", - "array-unique": "^0.3.2", - "extend-shallow": "^2.0.1", - "fill-range": "^4.0.0", - "isobject": "^3.0.1", - "repeat-element": "^1.1.2", - "snapdragon": "^0.8.1", - "snapdragon-node": "^2.0.1", - "split-string": "^3.0.2", - "to-regex": "^3.0.1" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "expand-brackets": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", - "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", - "dev": true, - "requires": { - "debug": "^2.3.3", - "define-property": "^0.2.5", - "extend-shallow": "^2.0.1", - "posix-character-classes": "^0.1.0", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "0.2.5", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", - "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, - "requires": { - "is-descriptor": "^0.1.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - }, - "is-accessor-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", - "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-data-descriptor": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", - "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", - "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" - } - }, - "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "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" - }, - "dependencies": { - "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" - } - } - } - }, - "extglob": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", - "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", - "dev": true, - "requires": { - "array-unique": "^0.3.2", - "define-property": "^1.0.0", - "expand-brackets": "^2.1.4", - "extend-shallow": "^2.0.1", - "fragment-cache": "^0.2.1", - "regex-not": "^1.0.0", - "snapdragon": "^0.8.1", - "to-regex": "^3.0.1" - }, - "dependencies": { - "define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", - "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, - "requires": { - "is-descriptor": "^1.0.0" - } - }, - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, - "requires": { - "extend-shallow": "^2.0.1", - "is-number": "^3.0.0", - "repeat-string": "^1.6.1", - "to-regex-range": "^2.1.0" - }, - "dependencies": { - "extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, - "requires": { - "is-extendable": "^0.1.0" - } - } - } - }, - "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-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } - } - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - }, - "kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true - }, - "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" - } - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } + "picomatch": "^2.2.1" } }, "realpath-native": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/realpath-native/-/realpath-native-1.1.0.tgz", "integrity": "sha512-wlgPA6cCIIg9gKz0fgAPjnzh4yR/LnXovwuo9hvyGvx3h8nX4+/iLZplfUWasXpqD8BdnGnP5njOFjkUwPzvjA==", - "dev": true, "requires": { "util.promisify": "^1.0.0" } }, - "redent": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", - "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", - "dev": true, + "recursive-readdir": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz", + "integrity": "sha512-nRCcW9Sj7NuZwa2XvH9co8NPeXUBhZP7CRKJtU+cS6PW9FpCIFoI5ib0NT1ZrbNuPoRy0ylyCaUL8Gih4LSyFg==", "requires": { - "indent-string": "^2.1.0", - "strip-indent": "^1.0.1" + "minimatch": "3.0.4" + } + }, + "redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "requires": { + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" } }, "reflect.ownkeys": { @@ -20151,14 +13289,12 @@ "regenerate": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", - "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", - "dev": true + "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==" }, "regenerate-unicode-properties": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz", - "integrity": "sha512-LGZzkgtLY79GeXLm8Dp0BVLdQlWICzBnJz/ipWUgo59qBaZ+BHtq51P2q1uVZlppMuUAT37SDk39qUbjTWB7bA==", - "dev": true, + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz", + "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==", "requires": { "regenerate": "^1.4.0" } @@ -20169,76 +13305,64 @@ "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" }, "regenerator-transform": { - "version": "0.14.1", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.1.tgz", - "integrity": "sha512-flVuee02C3FKRISbxhXl9mGzdbWUVHubl1SMaknjxkFB1/iqpJhArQUvRxOOPEc/9tAiX0BaQ28FJH10E4isSQ==", - "dev": true, + "version": "0.14.4", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.4.tgz", + "integrity": "sha512-EaJaKPBI9GvKpvUz2mz4fhx7WPgvwRLY9v3hlNHWmAuJHI13T4nwKnNvm5RWJzEdnI5g5UwtOww+S8IdoUC2bw==", "requires": { - "private": "^0.1.6" + "@babel/runtime": "^7.8.4", + "private": "^0.1.8" } }, "regex-not": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", - "dev": true, "requires": { "extend-shallow": "^3.0.2", "safe-regex": "^1.1.0" - }, - "dependencies": { - "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" - } - }, - "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" - } - } + } + }, + "regex-parser": { + "version": "2.2.10", + "resolved": "https://registry.npmjs.org/regex-parser/-/regex-parser-2.2.10.tgz", + "integrity": "sha512-8t6074A68gHfU8Neftl0Le6KTDwfGAj7IyjPIMSfikI2wJUTHDMaIq42bUsfVnj8mhx0R+45rdUXHGpN164avA==" + }, + "regexp.prototype.flags": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", + "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1" } }, "regexpp": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", - "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", - "dev": true + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.1.0.tgz", + "integrity": "sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==" }, "regexpu-core": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.6.0.tgz", - "integrity": "sha512-YlVaefl8P5BnFYOITTNzDvan1ulLOiXJzCNZxduTIosN17b87h3bvG9yHMoHaRuo88H4mQ06Aodj5VtYGGGiTg==", - "dev": true, + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.0.tgz", + "integrity": "sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ==", "requires": { "regenerate": "^1.4.0", - "regenerate-unicode-properties": "^8.1.0", - "regjsgen": "^0.5.0", - "regjsparser": "^0.6.0", + "regenerate-unicode-properties": "^8.2.0", + "regjsgen": "^0.5.1", + "regjsparser": "^0.6.4", "unicode-match-property-ecmascript": "^1.0.4", - "unicode-match-property-value-ecmascript": "^1.1.0" + "unicode-match-property-value-ecmascript": "^1.2.0" } }, "regjsgen": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz", - "integrity": "sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg==", - "dev": true + "integrity": "sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg==" }, "regjsparser": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.2.tgz", - "integrity": "sha512-E9ghzUtoLwDekPT0DYCp+c4h+bvuUpe6rRHCTYn6eGoqj1LgKXxT6I0Il4WbjhQkOghzi/V+y03bPKvbllL93Q==", - "dev": true, + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz", + "integrity": "sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw==", "requires": { "jsesc": "~0.5.0" }, @@ -20246,28 +13370,81 @@ "jsesc": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=" } } }, + "relateurl": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", + "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=" + }, "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=", - "dev": true + "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=" + }, + "renderkid": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.3.tgz", + "integrity": "sha512-z8CLQp7EZBPCwCnncgf9C4XAi3WR0dv+uWu/PjIyhhAb5d6IJ/QZqlHFprHeKT+59//V6BNUsLbvN8+2LarxGA==", + "requires": { + "css-select": "^1.1.0", + "dom-converter": "^0.2", + "htmlparser2": "^3.3.0", + "strip-ansi": "^3.0.0", + "utila": "^0.4.0" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", + "requires": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "css-what": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==" + }, + "domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", + "requires": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "requires": { + "ansi-regex": "^2.0.0" + } + } + } }, "repeat-element": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", - "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", - "dev": true + "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==" }, "repeat-string": { "version": "1.6.1", "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", - "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", - "dev": true + "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" }, "repeating": { "version": "2.0.1", @@ -20279,10 +13456,9 @@ } }, "request": { - "version": "2.88.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", - "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", - "dev": true, + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", "requires": { "aws-sign2": "~0.7.0", "aws4": "^1.8.0", @@ -20291,7 +13467,7 @@ "extend": "~3.0.2", "forever-agent": "~0.6.1", "form-data": "~2.3.2", - "har-validator": "~5.1.0", + "har-validator": "~5.1.3", "http-signature": "~1.2.0", "is-typedarray": "~1.0.0", "isstream": "~0.1.2", @@ -20301,7 +13477,7 @@ "performance-now": "^2.1.0", "qs": "~6.5.2", "safe-buffer": "^5.1.2", - "tough-cookie": "~2.4.3", + "tough-cookie": "~2.5.0", "tunnel-agent": "^0.6.0", "uuid": "^3.3.2" } @@ -20310,7 +13486,6 @@ "version": "1.1.3", "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.3.tgz", "integrity": "sha512-QIs2+ArIGQVp5ZYbWD5ZLCY29D5CfWizP8eWnm8FoGD1TX61veauETVQbrV60662V0oFBkrDOuaBI8XgtuyYAQ==", - "dev": true, "requires": { "lodash": "^4.17.15" } @@ -20319,7 +13494,6 @@ "version": "1.0.8", "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.8.tgz", "integrity": "sha512-dapwLGqkHtwL5AEbfenuzjTYg35Jd6KPytsC2/TLkVMz8rm+tNt72MGUWT1RP/aYawMpN6HqbNGBQaRcBtjQMQ==", - "dev": true, "requires": { "request-promise-core": "1.1.3", "stealthy-require": "^1.1.1", @@ -20329,34 +13503,30 @@ "require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", - "dev": true + "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" }, "require-main-filename": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", - "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", - "dev": true + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" }, "requires-port": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz", - "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=", - "dev": true + "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=" }, "resolve": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", - "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", + "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", "requires": { - "path-parse": "^1.0.5" + "path-parse": "^1.0.6" } }, "resolve-cwd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", - "dev": true, "requires": { "resolve-from": "^3.0.0" }, @@ -20364,57 +13534,147 @@ "resolve-from": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz", - "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=", - "dev": true + "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=" } } }, "resolve-from": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==" }, "resolve-pathname": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-2.2.0.tgz", - "integrity": "sha512-bAFz9ld18RzJfddgrO2e/0S2O81710++chRMUxHjXOYKF6jTAMrUNZrEZ1PvV0zlhfjidm08iRPdTLPno1FuRg==" + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-pathname/-/resolve-pathname-3.0.0.tgz", + "integrity": "sha512-C7rARubxI8bXFNB/hqcp/4iUeIXJhJZvFPFPiSPRnhU5UPxzMFIl+2E6yY6c4k9giDJAhtV+enfA+G89N6Csng==" }, "resolve-url": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=" }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "dev": true, + "resolve-url-loader": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/resolve-url-loader/-/resolve-url-loader-3.1.1.tgz", + "integrity": "sha512-K1N5xUjj7v0l2j/3Sgs5b8CjrrgtC70SmdCuZiJ8tSyb5J+uk3FoeZ4b7yTnH6j7ngI+Bc5bldHJIa8hYdu2gQ==", "requires": { - "onetime": "^2.0.0", + "adjust-sourcemap-loader": "2.0.0", + "camelcase": "5.3.1", + "compose-function": "3.0.3", + "convert-source-map": "1.7.0", + "es6-iterator": "2.0.3", + "loader-utils": "1.2.3", + "postcss": "7.0.21", + "rework": "1.0.1", + "rework-visit": "1.0.0", + "source-map": "0.6.1" + }, + "dependencies": { + "emojis-list": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz", + "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=" + }, + "json5": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "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==", + "requires": { + "big.js": "^5.2.2", + "emojis-list": "^2.0.0", + "json5": "^1.0.1" + } + }, + "postcss": { + "version": "7.0.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.21.tgz", + "integrity": "sha512-uIFtJElxJo29QC753JzhidoAhvp/e/Exezkdhfmt8AymWT6/5B7W1WmponYWkHk2eg6sONyTch0A3nkMPun3SQ==", + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, + "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==", + "requires": { + "has-flag": "^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" } }, "ret": { "version": "0.1.15", "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", - "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", - "dev": true + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==" + }, + "retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", + "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=" + }, + "rework": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/rework/-/rework-1.0.1.tgz", + "integrity": "sha1-MIBqhBNCtUUQqkEQhQzUhTQUSqc=", + "requires": { + "convert-source-map": "^0.3.3", + "css": "^2.0.0" + }, + "dependencies": { + "convert-source-map": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-0.3.5.tgz", + "integrity": "sha1-8dgClQr33SYxof6+BZZVDIarMZA=" + } + } + }, + "rework-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/rework-visit/-/rework-visit-1.0.0.tgz", + "integrity": "sha1-mUWygD8hni96ygCtuLyfZA+ELJo=" + }, + "rgb-regex": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/rgb-regex/-/rgb-regex-1.0.1.tgz", + "integrity": "sha1-wODWiC3w4jviVKR16O3UGRX+rrE=" + }, + "rgba-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/rgba-regex/-/rgba-regex-1.0.0.tgz", + "integrity": "sha1-QzdOLiyglosO8VI0YLfXMP8i7rM=" }, "rimraf": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", - "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", - "dev": true, + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", "requires": { - "glob": "^7.0.5" + "glob": "^7.1.3" } }, "ripemd160": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "dev": true, "requires": { "hash-base": "^3.0.0", "inherits": "^2.0.1" @@ -20427,13 +13687,6 @@ "requires": { "luxon": "^1.21.3", "tslib": "^1.10.0" - }, - "dependencies": { - "tslib": { - "version": "1.11.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", - "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==" - } } }, "rst-selector-parser": { @@ -20449,23 +13702,17 @@ "rsvp": { "version": "4.8.5", "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", - "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", - "dev": true + "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==" }, "run-async": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", - "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", - "dev": true, - "requires": { - "is-promise": "^2.1.0" - } + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==" }, "run-queue": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", - "dev": true, "requires": { "aproba": "^1.1.1" } @@ -20482,10 +13729,9 @@ "dev": true }, "rxjs": { - "version": "6.3.3", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.3.3.tgz", - "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", - "dev": true, + "version": "6.5.5", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.5.tgz", + "integrity": "sha512-WfQI+1gohdf0Dai/Bbmk5L5ItH5tYqm3ki2c5GdWhKjalzjg93N3avFjVStyZZz+A2Em+ZxKH5bNghw9UeylGQ==", "requires": { "tslib": "^1.9.0" } @@ -20497,9 +13743,8 @@ }, "safe-regex": { "version": "1.1.0", - "resolved": "http://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", - "dev": true, "requires": { "ret": "~0.1.10" } @@ -20513,7 +13758,6 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/sane/-/sane-4.1.0.tgz", "integrity": "sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA==", - "dev": true, "requires": { "@cnakazawa/watch": "^1.0.3", "anymatch": "^2.0.0", @@ -20524,237 +13768,103 @@ "micromatch": "^3.1.4", "minimist": "^1.1.1", "walker": "~1.0.5" - }, - "dependencies": { - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - } } }, - "sass-graph": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz", - "integrity": "sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k=", - "dev": true, - "requires": { - "glob": "^7.0.0", - "lodash": "^4.0.0", - "scss-tokenizer": "^0.2.3", - "yargs": "^7.0.0" - }, - "dependencies": { - "camelcase": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz", - "integrity": "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=", - "dev": true - }, - "cliui": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", - "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1", - "wrap-ansi": "^2.0.0" - } - }, - "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "os-locale": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", - "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", - "dev": true, - "requires": { - "lcid": "^1.0.0" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, - "which-module": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz", - "integrity": "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=", - "dev": true - }, - "yargs": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.0.tgz", - "integrity": "sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg=", - "dev": true, - "requires": { - "camelcase": "^3.0.0", - "cliui": "^3.2.0", - "decamelize": "^1.1.1", - "get-caller-file": "^1.0.1", - "os-locale": "^1.4.0", - "read-pkg-up": "^1.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^1.0.2", - "which-module": "^1.0.0", - "y18n": "^3.2.1", - "yargs-parser": "^5.0.0" - } - }, - "yargs-parser": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0.tgz", - "integrity": "sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo=", - "dev": true, - "requires": { - "camelcase": "^3.0.0" - } - } - } + "sanitize.css": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/sanitize.css/-/sanitize.css-10.0.0.tgz", + "integrity": "sha512-vTxrZz4dX5W86M6oVWVdOVe72ZiPs41Oi7Z6Km4W5Turyz28mrXSJhhEBZoRtzJWIv3833WKVwLSDWWkEfupMg==" }, "sass-loader": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-7.1.0.tgz", - "integrity": "sha512-+G+BKGglmZM2GUSfT9TLuEp6tzehHPjAMoRRItOojWIqIGPloVCMhNIQuG639eJ+y033PaGTSjLaTHts8Kw79w==", - "dev": true, + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-8.0.2.tgz", + "integrity": "sha512-7o4dbSK8/Ol2KflEmSco4jTjQoV988bM82P9CZdmo9hR3RLnvNc0ufMNdMrB0caq38JQ/FgF4/7RcbcfKzxoFQ==", "requires": { - "clone-deep": "^2.0.1", - "loader-utils": "^1.0.1", - "lodash.tail": "^4.1.1", - "neo-async": "^2.5.0", - "pify": "^3.0.0", - "semver": "^5.5.0" + "clone-deep": "^4.0.1", + "loader-utils": "^1.2.3", + "neo-async": "^2.6.1", + "schema-utils": "^2.6.1", + "semver": "^6.3.0" }, "dependencies": { - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true + "clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "requires": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + } + }, + "kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" + }, + "shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "requires": { + "kind-of": "^6.0.2" + } } } }, + "sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, "saxes": { "version": "3.1.11", "resolved": "https://registry.npmjs.org/saxes/-/saxes-3.1.11.tgz", "integrity": "sha512-Ydydq3zC+WYDJK1+gRxRapLIED9PWeSuuS41wqyoRmzvhhh9nc+QQrVMKJYzJFULazeGhzSV0QleN2wD3boh2g==", - "dev": true, "requires": { "xmlchars": "^2.1.1" } }, "scheduler": { - "version": "0.15.0", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.15.0.tgz", - "integrity": "sha512-xAefmSfN6jqAa7Kuq7LIJY0bwAPG3xlCj0HMEBQk1lxYiDKZscY2xJ5U/61ZTrYbmNQbXa+gc7czPkVo11tnCg==", - "dev": true, + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.18.0.tgz", + "integrity": "sha512-agTSHR1Nbfi6ulI0kYNK0203joW2Y5W4po4l+v03tOoiJKpTBbxpNhWDvqc/4IcOw+KLmSiQLTasZ4cab2/UWQ==", "requires": { "loose-envify": "^1.1.0", "object-assign": "^4.1.1" } }, "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, + "version": "2.6.6", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.6.6.tgz", + "integrity": "sha512-wHutF/WPSbIi9x6ctjGGk2Hvl0VOz5l3EKEuKbjPlB30mKZUzb9A5k9yEXRX3pwyqVLPvpfZZEllaFq/M718hA==", "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - }, - "dependencies": { - "ajv": { - "version": "6.5.4", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.4.tgz", - "integrity": "sha512-4Wyjt8+t6YszqaXnLDfMmG/8AlO5Zbcsy3ATHncCzjW/NoPzAId8AK6749Ybjmdt+kUY1gP60fCu46oDxPv/mg==", - "dev": true, - "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - } - } - }, - "scss-tokenizer": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz", - "integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=", - "dev": true, - "requires": { - "js-base64": "^2.1.8", - "source-map": "^0.4.2" - }, - "dependencies": { - "source-map": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", - "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", - "dev": true, - "requires": { - "amdefine": ">=0.0.4" - } - } + "ajv": "^6.12.0", + "ajv-keywords": "^3.4.1" } }, "select-hose": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz", - "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=", - "dev": true + "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=" }, "selfsigned": { - "version": "1.10.4", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.4.tgz", - "integrity": "sha512-9AukTiDmHXGXWtWjembZ5NDmVvP2695EtpgbCsxCa68w3c88B+alqbmZ4O3hZ4VWGXeGWzEVdvqgAJD8DQPCDw==", - "dev": true, + "version": "1.10.7", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.7.tgz", + "integrity": "sha512-8M3wBCzeWIJnQfl43IKwOmC4H/RAp50S8DF60znzjW5GVqTcSe2vWclt7hmYVPkKPlHWOu5EaWOMZ2Y6W8ZXTA==", "requires": { - "node-forge": "0.7.5" + "node-forge": "0.9.0" } }, "semver": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", - "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", - "dev": true + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" }, "send": { - "version": "0.16.2", - "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", - "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", - "dev": true, + "version": "0.17.1", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", + "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", "requires": { "debug": "2.6.9", "depd": "~1.1.2", @@ -20763,25 +13873,50 @@ "escape-html": "~1.0.3", "etag": "~1.8.1", "fresh": "0.5.2", - "http-errors": "~1.6.2", - "mime": "1.4.1", - "ms": "2.0.0", + "http-errors": "~1.7.2", + "mime": "1.6.0", + "ms": "2.1.1", "on-finished": "~2.3.0", - "range-parser": "~1.2.0", - "statuses": "~1.4.0" + "range-parser": "~1.2.1", + "statuses": "~1.5.0" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + }, + "dependencies": { + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + } + } + }, + "mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" + }, + "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==" + } } }, "serialize-javascript": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-2.1.2.tgz", - "integrity": "sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ==", - "dev": true + "integrity": "sha512-rs9OggEUF0V4jUSecXazOYsLfu7OGK2qIn3c7IPBiffz32XniEp/TX9Xmc9LQfK2nQ2QKHvZ2oygKUGU0lG4jQ==" }, "serve-index": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz", "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", - "dev": true, "requires": { "accepts": "~1.3.4", "batch": "0.6.1", @@ -20790,31 +13925,59 @@ "http-errors": "~1.6.2", "mime-types": "~2.1.17", "parseurl": "~1.3.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==" + } } }, "serve-static": { - "version": "1.13.2", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz", - "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", - "dev": true, + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", + "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", "requires": { "encodeurl": "~1.0.2", "escape-html": "~1.0.3", - "parseurl": "~1.3.2", - "send": "0.16.2" + "parseurl": "~1.3.3", + "send": "0.17.1" } }, "set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", - "dev": true + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" }, "set-value": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", - "dev": true, "requires": { "extend-shallow": "^2.0.1", "is-extendable": "^0.1.1", @@ -20826,7 +13989,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -20836,55 +13998,57 @@ "setimmediate": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", - "dev": true + "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=" }, "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", + "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" }, "sha.js": { "version": "2.4.11", - "resolved": "http://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "dev": true, "requires": { "inherits": "^2.0.1", "safe-buffer": "^5.0.1" } }, "shallow-clone": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-1.0.0.tgz", - "integrity": "sha512-oeXreoKR/SyNJtRJMAKPDSvd28OqEwG4eR/xc856cRGBII7gX9lvAqDxusPm0846z/w/hWYjI1NpKwJ00NHzRA==", - "dev": true, + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-0.1.2.tgz", + "integrity": "sha1-WQnodLp3EG1zrEFM/sH/yofZcGA=", "requires": { "is-extendable": "^0.1.1", - "kind-of": "^5.0.0", + "kind-of": "^2.0.1", + "lazy-cache": "^0.2.3", "mixin-object": "^2.0.1" }, "dependencies": { + "is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==" + }, "kind-of": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", - "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", - "dev": true + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-2.0.1.tgz", + "integrity": "sha1-AY7HpM5+OobLkUG+UZ0kyPqpgbU=", + "requires": { + "is-buffer": "^1.0.2" + } + }, + "lazy-cache": { + "version": "0.2.7", + "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-0.2.7.tgz", + "integrity": "sha1-f+3fLctu23fRHvHRF6tf/fCrG2U=" } } }, - "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", "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", - "dev": true, "requires": { "shebang-regex": "^1.0.0" } @@ -20892,53 +14056,71 @@ "shebang-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", - "dev": true + "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=" + }, + "shell-quote": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz", + "integrity": "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==" }, "shellwords": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", - "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", - "dev": true, - "optional": true + "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==" + }, + "side-channel": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.2.tgz", + "integrity": "sha512-7rL9YlPHg7Ancea1S96Pa8/QWb4BtXL/TZvS6B8XFetGBeuhAsfmUspK6DokBeZ64+Kj9TCNRD/30pVz1BvQNA==", + "requires": { + "es-abstract": "^1.17.0-next.1", + "object-inspect": "^1.7.0" + } }, "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", - "dev": true + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==" + }, + "simple-swizzle": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz", + "integrity": "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=", + "requires": { + "is-arrayish": "^0.3.1" + }, + "dependencies": { + "is-arrayish": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz", + "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==" + } + } }, "sisteransi": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", - "dev": true + "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" }, "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==" }, "slice-ansi": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", - "dev": true, "requires": { "ansi-styles": "^3.2.0", "astral-regex": "^1.0.0", "is-fullwidth-code-point": "^2.0.0" }, "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } + "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=" } } }, @@ -20946,7 +14128,6 @@ "version": "0.8.2", "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "dev": true, "requires": { "base": "^0.11.1", "debug": "^2.2.0", @@ -20958,11 +14139,18 @@ "use": "^3.1.0" }, "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "requires": { + "ms": "2.0.0" + } + }, "define-property": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, "requires": { "is-descriptor": "^0.1.0" } @@ -20971,7 +14159,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -20979,8 +14166,7 @@ "source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" } } }, @@ -20988,7 +14174,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", - "dev": true, "requires": { "define-property": "^1.0.0", "isobject": "^3.0.0", @@ -20999,7 +14184,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", - "dev": true, "requires": { "is-descriptor": "^1.0.0" } @@ -21008,7 +14192,6 @@ "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" } @@ -21017,7 +14200,6 @@ "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" } @@ -21026,24 +14208,16 @@ "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" } }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true - }, "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", - "dev": true + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" } } }, @@ -21051,37 +14225,23 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", - "dev": true, "requires": { "kind-of": "^3.2.0" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } } }, "sockjs": { "version": "0.3.19", "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.19.tgz", "integrity": "sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw==", - "dev": true, "requires": { "faye-websocket": "^0.10.0", "uuid": "^3.0.1" } }, "sockjs-client": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.3.0.tgz", - "integrity": "sha512-R9jxEzhnnrdxLCNln0xg5uGHqMnkhPSTzUZH2eXcR03S/On9Yvoq2wyUZILRUhZCNVu2PmwWVoyuiPz8th8zbg==", - "dev": true, + "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==", "requires": { "debug": "^3.2.5", "eventsource": "^1.0.7", @@ -21095,33 +14255,37 @@ "version": "3.2.6", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, "requires": { "ms": "^2.1.1" } }, "faye-websocket": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.1.tgz", - "integrity": "sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg=", - "dev": true, + "version": "0.11.3", + "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.3.tgz", + "integrity": "sha512-D2y4bovYpzziGgbHYtGCMjlJM36vAl/y+xUyn1C+FVx8szd1E+86KwVw6XvYSzOP8iMpm1X0I4xJD+QtUb36OA==", "requires": { "websocket-driver": ">=0.5.1" } }, "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" } } }, + "sort-keys": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", + "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", + "requires": { + "is-plain-obj": "^1.0.0" + } + }, "source-list-map": { "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 + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==" }, "source-map": { "version": "0.6.1", @@ -21129,11 +14293,11 @@ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" }, "source-map-resolve": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", - "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", "requires": { - "atob": "^2.1.1", + "atob": "^2.1.2", "decode-uri-component": "^0.2.0", "resolve-url": "^0.2.1", "source-map-url": "^0.4.0", @@ -21141,10 +14305,9 @@ } }, "source-map-support": { - "version": "0.5.16", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.16.tgz", - "integrity": "sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ==", - "dev": true, + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", "requires": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" @@ -21153,8 +14316,7 @@ "buffer-from": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" } } }, @@ -21164,42 +14326,37 @@ "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=" }, "spdx-correct": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.2.tgz", - "integrity": "sha512-q9hedtzyXHr5S0A1vEPoK/7l8NpfkFYTq6iCY+Pno2ZbdZR6WexZFtqeVGkGxW3TEJMN914Z55EnAGMmenlIQQ==", - "dev": true, + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", + "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", "requires": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" } }, "spdx-exceptions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", - "dev": true + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" }, "spdx-expression-parse": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", - "dev": true, "requires": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" } }, "spdx-license-ids": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.1.tgz", - "integrity": "sha512-TfOfPcYGBB5sDuPn3deByxPhmfegAhpDYKSOXZQN81Oyrrif8ZCodOLzK3AesELnCx03kikhyDwh0pfvvQvF8w==", - "dev": true + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", + "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==" }, "spdy": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.0.tgz", - "integrity": "sha512-ot0oEGT/PGUpzf/6uk4AWLqkq+irlqHXkrdbk51oWONh3bxQmBuljxPNl66zlRRcIJStWq0QkLUCPOPjgjvU0Q==", - "dev": true, + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", + "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", "requires": { "debug": "^4.1.0", "handle-thing": "^2.0.0", @@ -21212,16 +14369,14 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, "requires": { "ms": "^2.1.1" } }, "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 + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" } } }, @@ -21229,7 +14384,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", - "dev": true, "requires": { "debug": "^4.1.0", "detect-node": "^2.0.4", @@ -21243,35 +14397,36 @@ "version": "4.1.1", "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, "requires": { "ms": "^2.1.1" } }, "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 + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, "readable-stream": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.1.1.tgz", - "integrity": "sha512-DkN66hPyqDhnIQ6Jcsvx9bFjhw214O4poMBcIMgPVpQvNy9a0e0Uhg5SqySyDKAmUlwt8LonTBz1ezOnM8pUdA==", - "dev": true, + "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" } }, + "safe-buffer": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz", + "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==" + }, "string_decoder": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.2.0.tgz", - "integrity": "sha512-6YqyX6ZWEYguAxgZzHGL7SsCeGx3V2TtOTqZz1xSTSWnqsbWwbptafNyvf/ACquZUXV3DANr5BDIwNYe1mN42w==", - "dev": true, + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "requires": { - "safe-buffer": "~5.1.0" + "safe-buffer": "~5.2.0" } } } @@ -21280,30 +14435,8 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", - "dev": true, "requires": { "extend-shallow": "^3.0.0" - }, - "dependencies": { - "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" - } - }, - "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" - } - } } }, "sprintf-js": { @@ -21312,10 +14445,9 @@ "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" }, "sshpk": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.15.2.tgz", - "integrity": "sha512-Ra/OXQtuh0/enyl4ETZAfTaeksa6BXks5ZcjpSUNrjBr0DvrJKX+1fsKDPpT9TBXgHAFsa4510aNVgI8g/+SzA==", - "dev": true, + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", "requires": { "asn1": "~0.2.3", "assert-plus": "^1.0.0", @@ -21329,25 +14461,28 @@ } }, "ssri": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", - "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", - "dev": true, + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-7.1.0.tgz", + "integrity": "sha512-77/WrDZUWocK0mvA5NTRQyveUf+wsrIc6vyrxpS8tVvYBcX215QbafrJR3KtkpskIzoFLqqNuuYQvxaMjXJ/0g==", "requires": { - "figgy-pudding": "^3.5.1" + "figgy-pudding": "^3.5.1", + "minipass": "^3.1.1" } }, + "stable": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==" + }, "stack-utils": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-1.0.2.tgz", - "integrity": "sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA==", - "dev": true + "integrity": "sha512-MTX+MeG5U994cazkjd/9KNAapsHnibjMLnfXodlkXw76JEea0UiNzrqidzo1emMwk7w5Qhc9jd4Bn9TBb1MFwA==" }, "static-extend": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", - "dev": true, "requires": { "define-property": "^0.2.5", "object-copy": "^0.1.0" @@ -21357,7 +14492,6 @@ "version": "0.2.5", "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", - "dev": true, "requires": { "is-descriptor": "^0.1.0" } @@ -21365,63 +14499,19 @@ } }, "statuses": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", - "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==", - "dev": true - }, - "stdout-stream": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz", - "integrity": "sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==", - "dev": true, - "requires": { - "readable-stream": "^2.0.1" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" - } - }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "requires": { - "safe-buffer": "~5.1.0" - } - } - } + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" }, "stealthy-require": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", - "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", - "dev": true + "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=" }, "stream-browserify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", - "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", - "dev": true, + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", + "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", "requires": { "inherits": "~2.0.1", "readable-stream": "^2.0.2" @@ -21430,14 +14520,12 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -21452,7 +14540,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } @@ -21463,7 +14550,6 @@ "version": "1.2.3", "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", - "dev": true, "requires": { "end-of-stream": "^1.1.0", "stream-shift": "^1.0.0" @@ -21473,7 +14559,6 @@ "version": "2.8.3", "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", - "dev": true, "requires": { "builtin-status-codes": "^3.0.0", "inherits": "^2.0.1", @@ -21485,14 +14570,12 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "readable-stream": { - "version": "2.3.6", - "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -21507,130 +14590,136 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, "requires": { "safe-buffer": "~5.1.0" } }, "xtend": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz", - "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", - "dev": true + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==" } } }, "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==" + }, + "strict-uri-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", + "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=" }, "string-length": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-3.1.0.tgz", - "integrity": "sha512-Ttp5YvkGm5v9Ijagtaz1BnN+k9ObpvS0eIBblPMp2YWL8FBmi9qblQ9fexc2k/CXFgrTIteU3jAw3payCnwSTA==", - "dev": true, + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/string-length/-/string-length-2.0.0.tgz", + "integrity": "sha1-1A27aGo6zpYMHP/KVivyxF+DY+0=", "requires": { "astral-regex": "^1.0.0", - "strip-ansi": "^5.2.0" - }, - "dependencies": { - "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", - "dev": true - }, - "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" - } - } - } - }, - "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 + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" }, "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" } } } }, - "string.prototype.trim": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.0.tgz", - "integrity": "sha512-9EIjYD/WdlvLpn987+ctkLf0FfvBefOCuiEr2henD8X+7jfwPnyvTdmW8OJhj5p+M0/96mBdynLWkxUr+rHlpg==", - "dev": true, + "string-width": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", + "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.13.0", - "function-bind": "^1.1.1" + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.0" }, "dependencies": { - "es-abstract": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.13.0.tgz", - "integrity": "sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.0", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "is-callable": "^1.1.4", - "is-regex": "^1.0.4", - "object-keys": "^1.0.12" - } + "ansi-regex": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", + "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==" }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true + "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" + } } } }, - "string.prototype.trimleft": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.1.tgz", - "integrity": "sha512-iu2AGd3PuP5Rp7x2kEZCrB2Nf41ehzh+goo8TV7z8/XDBbsvc6HQIlUl9RjkZ4oyrW1XM5UwlGl1oVEaDjg6Ag==", + "string.prototype.matchall": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.2.tgz", + "integrity": "sha512-N/jp6O5fMf9os0JU3E72Qhf590RSRZU/ungsL/qJUYVTNv7hTG0P/dbPjxINVN9jpscu3nzYwKESU3P3RY5tOg==", + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.0", + "has-symbols": "^1.0.1", + "internal-slot": "^1.0.2", + "regexp.prototype.flags": "^1.3.0", + "side-channel": "^1.0.2" + } + }, + "string.prototype.trim": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.1.tgz", + "integrity": "sha512-MjGFEeqixw47dAMFMtgUro/I0+wNqZB5GKXGt1fFr24u3TzDXCPu7J9Buppzoe3r/LqkSDLDDJzE15RGWDGAVw==", "dev": true, "requires": { "define-properties": "^1.1.3", + "es-abstract": "^1.17.0-next.1", "function-bind": "^1.1.1" } }, - "string.prototype.trimright": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.1.tgz", - "integrity": "sha512-qFvWL3/+QIgZXVmJBfpHmxLB7xsUXz6HsUmP8+5dRaC3Q7oKUv9Vo6aMCRZC1smrtyECFsIT30PqBJ1gTjAs+g==", - "dev": true, + "string.prototype.trimend": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", + "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", "requires": { "define-properties": "^1.1.3", - "function-bind": "^1.1.1" + "es-abstract": "^1.17.5" + } + }, + "string.prototype.trimleft": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/string.prototype.trimleft/-/string.prototype.trimleft-2.1.2.tgz", + "integrity": "sha512-gCA0tza1JBvqr3bfAIFJGqfdRTyPae82+KTnm3coDXkZN9wnuW3HjGgN386D7hfv5CHQYCI022/rJPVlqXyHSw==", + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5", + "string.prototype.trimstart": "^1.0.0" + } + }, + "string.prototype.trimright": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/string.prototype.trimright/-/string.prototype.trimright-2.1.2.tgz", + "integrity": "sha512-ZNRQ7sY3KroTaYjRS6EbNiiHrOkjihL9aQE/8gfQ4DtAC/aEBRHFJa44OmoWxGGqXuJlfKkZW4WcXErGr+9ZFg==", + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5", + "string.prototype.trimend": "^1.0.0" + } + }, + "string.prototype.trimstart": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", + "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", + "requires": { + "define-properties": "^1.1.3", + "es-abstract": "^1.17.5" } }, "string_decoder": { @@ -21638,72 +14727,97 @@ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "http://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, + "stringify-object": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz", + "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==", "requires": { - "ansi-regex": "^2.0.0" + "get-own-enumerable-property-symbols": "^3.0.0", + "is-obj": "^1.0.1", + "is-regexp": "^1.0.0" + }, + "dependencies": { + "is-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz", + "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=" + } + } + }, + "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" } }, "strip-bom": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", - "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", - "dev": true, + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" + }, + "strip-comments": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/strip-comments/-/strip-comments-1.0.2.tgz", + "integrity": "sha512-kL97alc47hoyIQSV165tTt9rG5dn4w1dNnBhOQ3bOU1Nc1hel09jnXANaHJ7vzHLd4Ju8kseDGzlev96pghLFw==", "requires": { - "is-utf8": "^0.2.0" + "babel-extract-comments": "^1.0.0", + "babel-plugin-transform-object-rest-spread": "^6.26.0" } }, "strip-eof": { "version": "1.0.0", - "resolved": "http://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", - "dev": true - }, - "strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "dev": true + "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", + "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=" }, "strip-indent": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", - "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", - "dev": true, + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", "requires": { - "get-stdin": "^4.0.1" + "min-indent": "^1.0.0" } }, "strip-json-comments": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.0.1.tgz", - "integrity": "sha512-VTyMAUfdm047mwKl+u79WIdrZxtFtn+nBxHeb844XBQ9uMNTuTHdx2hc5RiAJYqwTj3wc/xe5HLSdJSkJ+WfZw==", - "dev": true + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.0.tgz", + "integrity": "sha512-e6/d0eBu7gHtdCqFt0xJr642LdToM5/cN4Qb9DbHjVx1CP5RyeM+zH7pbecEmDv/lBqb0QH+6Uqq75rxFPkM0w==" }, "style-loader": { "version": "0.23.1", "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-0.23.1.tgz", "integrity": "sha512-XK+uv9kWwhZMZ1y7mysB+zoihsEj4wneFWAS5qoiLwzW0WzSqMrrsIy+a3zkQJq0ipFtBpX5W3MqyRIBF/WFGg==", - "dev": true, "requires": { "loader-utils": "^1.1.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==", + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + } } }, "styled-components": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-4.2.0.tgz", - "integrity": "sha512-L/LzkL3ZbBhqIVHdR7DbYujy4tqvTNRfc+4JWDCYyhTatI+8CRRQUmdaR0+ARl03DWsfKLhjewll5uNLrqrl4A==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-4.4.1.tgz", + "integrity": "sha512-RNqj14kYzw++6Sr38n7197xG33ipEOktGElty4I70IKzQF1jzaD1U4xQ+Ny/i03UUhHlC5NWEO+d8olRCDji6g==", "requires": { "@babel/helper-module-imports": "^7.0.0", - "@emotion/is-prop-valid": "^0.7.3", + "@babel/traverse": "^7.0.0", + "@emotion/is-prop-valid": "^0.8.1", "@emotion/unitless": "^0.7.0", "babel-plugin-styled-components": ">= 1", "css-to-react-native": "^2.2.2", "memoize-one": "^5.0.0", + "merge-anything": "^2.2.4", "prop-types": "^15.5.4", "react-is": "^16.6.0", "stylis": "^3.5.0", @@ -21712,16 +14826,30 @@ }, "dependencies": { "@emotion/unitless": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.3.tgz", - "integrity": "sha512-4zAPlpDEh2VwXswwr/t8xGNDGg8RQiPxtxZ3qQEXyQsBV39ptTdESCjuBvGze1nLMVrxmTIKmnO/nAV8Tqjjzg==" - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", + "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==" + } + } + }, + "stylehacks": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-4.0.3.tgz", + "integrity": "sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g==", + "requires": { + "browserslist": "^4.0.0", + "postcss": "^7.0.0", + "postcss-selector-parser": "^3.0.0" + }, + "dependencies": { + "postcss-selector-parser": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz", + "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==", "requires": { - "has-flag": "^3.0.0" + "dot-prop": "^5.2.0", + "indexes-of": "^1.0.1", + "uniq": "^1.0.1" } } } @@ -21737,43 +14865,42 @@ "integrity": "sha512-nTbZoaqoBnmK+ptANthb10ZRZOGC+EmTLLUxeYIuHNkEKcmKgXX1XWKkUBT2Ac4es3NybooPe0SmvKdhKJZAuw==" }, "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 - }, - "supports-hyperlinks": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.1.0.tgz", - "integrity": "sha512-zoE5/e+dnEijk6ASB6/qrK+oYdm2do1hjoLWrqUC/8WEIW1gbxFcKuBof7sW8ArN6e+AYvsE8HBGiVRWL/F5CA==", - "dev": true, + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "requires": { - "has-flag": "^4.0.0", - "supports-color": "^7.0.0" - }, - "dependencies": { - "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.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", - "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } + "has-flag": "^3.0.0" + } + }, + "svg-parser": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/svg-parser/-/svg-parser-2.0.4.tgz", + "integrity": "sha512-e4hG1hRwoOdRb37cIMSgzNsxyzKfayW6VOflrwvR+/bzrkyxY/31WkbgnQpgtrNp1SdpJvpUAGTa/ZoiPNDuRQ==" + }, + "svgo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz", + "integrity": "sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==", + "requires": { + "chalk": "^2.4.1", + "coa": "^2.0.2", + "css-select": "^2.0.0", + "css-select-base-adapter": "^0.1.1", + "css-tree": "1.0.0-alpha.37", + "csso": "^4.0.2", + "js-yaml": "^3.13.1", + "mkdirp": "~0.5.1", + "object.values": "^1.1.0", + "sax": "~1.2.4", + "stable": "^0.1.8", + "unquote": "~1.1.1", + "util.promisify": "~1.0.0" } }, "symbol-tree": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", - "dev": true + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==" }, "tabbable": { "version": "3.1.2", @@ -21784,7 +14911,6 @@ "version": "5.4.6", "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", - "dev": true, "requires": { "ajv": "^6.10.2", "lodash": "^4.17.14", @@ -21792,283 +14918,176 @@ "string-width": "^3.0.0" }, "dependencies": { - "ajv": { - "version": "6.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.0.tgz", - "integrity": "sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==", - "dev": true, - "requires": { - "fast-deep-equal": "^3.1.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" - } - }, - "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 - }, "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==" }, - "fast-deep-equal": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", - "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true + "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=" }, "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", "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==", - "dev": true, - "requires": { - "ansi-regex": "^4.1.0" - } } } }, "tapable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.0.tgz", - "integrity": "sha512-IlqtmLVaZA2qab8epUXbVWRn3aB1imbDMJtjB3nu4X0NqPkcY/JH9ZtCBWKHWPxs8Svi9tyo8w2dBoi07qZbBA==", - "dev": true - }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", - "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", - "dev": true, - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" - } - }, - "terminal-link": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", - "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==", - "dev": true, - "requires": { - "ansi-escapes": "^4.2.1", - "supports-hyperlinks": "^2.0.0" - }, - "dependencies": { - "ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", - "dev": true, - "requires": { - "type-fest": "^0.11.0" - } - }, - "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", - "dev": true - } - } + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==" }, "terser": { - "version": "4.4.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.4.2.tgz", - "integrity": "sha512-Uufrsvhj9O1ikwgITGsZ5EZS6qPokUOkCegS7fYOdGTv+OA90vndUbU6PEjr5ePqHfNUbGyMO7xyIZv2MhsALQ==", - "dev": true, + "version": "4.6.13", + "resolved": "https://registry.npmjs.org/terser/-/terser-4.6.13.tgz", + "integrity": "sha512-wMvqukYgVpQlymbnNbabVZbtM6PN63AzqexpwJL8tbh/mRT9LE5o+ruVduAGL7D6Fpjl+Q+06U5I9Ul82odAhw==", "requires": { "commander": "^2.20.0", "source-map": "~0.6.1", "source-map-support": "~0.5.12" - }, - "dependencies": { - "buffer-from": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true - }, - "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 - }, - "source-map-support": { - "version": "0.5.16", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.16.tgz", - "integrity": "sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - } } }, "terser-webpack-plugin": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.3.tgz", - "integrity": "sha512-QMxecFz/gHQwteWwSo5nTc6UaICqN1bMedC5sMtUc7y3Ha3Q8y6ZO0iCR8pq4RJC8Hjf0FEPEHZqcMB/+DFCrA==", - "dev": true, + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-2.3.5.tgz", + "integrity": "sha512-WlWksUoq+E4+JlJ+h+U+QUzXpcsMSSNXkDy9lBVkSqDn1w23Gg29L/ary9GeJVYCGiNJJX7LnVc4bwL1N3/g1w==", "requires": { - "cacache": "^12.0.2", - "find-cache-dir": "^2.1.0", - "is-wsl": "^1.1.0", - "schema-utils": "^1.0.0", + "cacache": "^13.0.1", + "find-cache-dir": "^3.2.0", + "jest-worker": "^25.1.0", + "p-limit": "^2.2.2", + "schema-utils": "^2.6.4", "serialize-javascript": "^2.1.2", "source-map": "^0.6.1", - "terser": "^4.1.2", - "webpack-sources": "^1.4.0", - "worker-farm": "^1.7.0" + "terser": "^4.4.3", + "webpack-sources": "^1.4.3" }, "dependencies": { "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", - "dev": true, + "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==", "requires": { "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" } }, "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "requires": { - "locate-path": "^3.0.0" + "locate-path": "^5.0.0", + "path-exists": "^4.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==" + }, + "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==", + "requires": { + "merge-stream": "^2.0.0", + "supports-color": "^7.0.0" } }, "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "p-locate": "^4.1.0" } }, "make-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", - "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", - "dev": true, + "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": { - "pify": "^4.0.1", - "semver": "^5.6.0" + "semver": "^6.0.0" } }, "p-limit": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", - "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", - "dev": true, + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "requires": { "p-try": "^2.0.0" } }, "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "requires": { - "p-limit": "^2.0.0" + "p-limit": "^2.2.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==", - "dev": true + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true + "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==" }, "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, + "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==", "requires": { - "find-up": "^3.0.0" + "find-up": "^4.0.0" + } + }, + "supports-color": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.1.0.tgz", + "integrity": "sha512-oRSIpR8pxT1Wr2FquTNnGet79b3BWljqOuoW/h4oBhxJ/HUbX5nX6JSruTkvXDCFMwDPvsaTTbvMLKZWSy0R5g==", + "requires": { + "has-flag": "^4.0.0" } } } }, "test-exclude": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "dev": true, + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-5.2.3.tgz", + "integrity": "sha512-M+oxtseCFO3EDtAaGH7iiej3CBkzXqFMbzqYAACdzKui4eZA+pq3tZEwChvOdNfa7xxy8BfbmgJSIr43cC/+2g==", "requires": { - "@istanbuljs/schema": "^0.1.2", - "glob": "^7.1.4", - "minimatch": "^3.0.4" - }, - "dependencies": { - "glob": { - "version": "7.1.6", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", - "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, - "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - } - } + "glob": "^7.1.3", + "minimatch": "^3.0.4", + "read-pkg-up": "^4.0.0", + "require-main-filename": "^2.0.0" } }, "text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=" }, "throat": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/throat/-/throat-5.0.0.tgz", - "integrity": "sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA==", - "dev": true + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/throat/-/throat-4.1.0.tgz", + "integrity": "sha1-iQN8vJLFarGJJua6TLsgDhVnKmo=" }, "through": { "version": "2.3.8", - "resolved": "http://registry.npmjs.org/through/-/through-2.3.8.tgz", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" }, "through2": { @@ -22081,29 +15100,32 @@ } }, "thunky": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.0.3.tgz", - "integrity": "sha512-YwT8pjmNcAXBZqrubu22P4FYsh2D4dxRmnWBOL8Jk8bUcRUtc5326kx32tuTmFDAZtLOGEVNl8POAR8j896Iow==", - "dev": true + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" }, "timers-browserify": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.10.tgz", - "integrity": "sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg==", - "dev": true, + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", + "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", "requires": { "setimmediate": "^1.0.4" } }, + "timsort": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz", + "integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=" + }, "tiny-invariant": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.0.4.tgz", - "integrity": "sha512-lMhRd/djQJ3MoaHEBrw8e2/uM4rs9YMNk0iOr8rHQ0QdbM7D4l0gFl3szKdeixrlyfm9Zqi4dxHCM2qVG8ND5g==" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.1.0.tgz", + "integrity": "sha512-ytxQvrb1cPc9WBEI/HSeYYoGD0kWnGEOR8RY6KomWLBVhqz0RgTwVO9dLrGz7dC+nN9llyI7OKAgRq8Vq4ZBSw==" }, "tiny-warning": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.2.tgz", - "integrity": "sha512-rru86D9CpQRLvsFG5XFdy0KdLAvjdQDyZCsRcuu60WtzFylDM3eAWSxEVz5kzL2Gp544XiUvPbVKtOA/txLi9Q==" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", + "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==" }, "tippy.js": { "version": "5.1.2", @@ -22117,7 +15139,6 @@ "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, "requires": { "os-tmpdir": "~1.0.2" } @@ -22125,14 +15146,12 @@ "tmpl": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz", - "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=", - "dev": true + "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=" }, "to-arraybuffer": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", - "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", - "dev": true + "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=" }, "to-fast-properties": { "version": "2.0.0", @@ -22143,85 +15162,35 @@ "version": "0.3.0", "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", - "dev": true, "requires": { "kind-of": "^3.0.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } } }, "to-regex": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", - "dev": true, "requires": { "define-property": "^2.0.2", "extend-shallow": "^3.0.2", "regex-not": "^1.0.2", "safe-regex": "^1.1.0" - }, - "dependencies": { - "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" - } - }, - "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" - } - } } }, "to-regex-range": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, "requires": { "is-number": "^3.0.0", "repeat-string": "^1.6.1" - }, - "dependencies": { - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, - "requires": { - "kind-of": "^3.0.2" - } - }, - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, - "requires": { - "is-buffer": "^1.1.5" - } - } } }, + "toidentifier": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", + "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" + }, "touch": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/touch/-/touch-2.0.2.tgz", @@ -22231,69 +15200,55 @@ } }, "tough-cookie": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", - "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", - "dev": true, + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", "requires": { - "psl": "^1.1.24", - "punycode": "^1.4.1" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - } + "psl": "^1.1.28", + "punycode": "^2.1.1" } }, "tr46": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", - "dev": true, "requires": { "punycode": "^2.1.0" } }, - "trim-newlines": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", - "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", - "dev": true - }, "trim-right": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", "dev": true }, - "true-case-path": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz", - "integrity": "sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==", - "dev": true, - "requires": { - "glob": "^7.1.2" - } + "ts-pnp": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/ts-pnp/-/ts-pnp-1.1.6.tgz", + "integrity": "sha512-CrG5GqAAzMT7144Cl+UIFP7mz/iIhiy+xQ6GGcnjTezhALT02uPMRw7tgDSESgB5MsfKt55+GPWw4ir1kVtMIQ==" }, "tslib": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", - "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==" + "version": "1.11.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.2.tgz", + "integrity": "sha512-tTSkux6IGPnUGUd1XAZHcpu85MOkIl5zX49pO+jfsie3eP0B6pyhOlLXm3cAC6T7s+euSDDUUV+Acop5WmtkVg==" + }, + "tsutils": { + "version": "3.17.1", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.17.1.tgz", + "integrity": "sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g==", + "requires": { + "tslib": "^1.8.1" + } }, "tty-browserify": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", - "dev": true + "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=" }, "tunnel-agent": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", - "dev": true, "requires": { "safe-buffer": "^5.0.1" } @@ -22301,114 +15256,89 @@ "tweetnacl": { "version": "0.14.5", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", - "dev": true + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" + }, + "type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" }, "type-check": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", - "dev": true, "requires": { "prelude-ls": "~1.1.2" } }, - "type-detect": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "dev": true - }, "type-fest": { "version": "0.8.1", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", - "dev": true + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==" }, "type-is": { - "version": "1.6.16", - "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.16.tgz", - "integrity": "sha512-HRkVv/5qY2G6I8iab9cI7v1bOIdhm94dVjQCPFElW9W+3GeDOSHmy2EBYe4VTApuzolPcmgFTN3ftVJRKR2J9Q==", - "dev": true, + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", "requires": { "media-typer": "0.3.0", - "mime-types": "~2.1.18" + "mime-types": "~2.1.24" } }, "typedarray": { "version": "0.0.6", "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, - "typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", - "dev": true, - "requires": { - "is-typedarray": "^1.0.0" - } - }, - "typescript": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.9.2.tgz", - "integrity": "sha512-Gr4p6nFNaoufRIY4NMdpQRNmgxVIGMs4Fcu/ujdYk3nAZqk7supzBE9idmvfZIlH/Cuj//dvi+019qEue9lV0w==", - "dev": true + "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" }, "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", - "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", - "dev": true + "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==" }, "unicode-match-property-ecmascript": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", - "dev": true, "requires": { "unicode-canonical-property-names-ecmascript": "^1.0.4", "unicode-property-aliases-ecmascript": "^1.0.4" } }, "unicode-match-property-value-ecmascript": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.1.0.tgz", - "integrity": "sha512-hDTHvaBk3RmFzvSl0UVrUmC3PuW9wKVnpoUDYH0JDkSIovzw+J5viQmeYHxVSBptubnr7PbH2e0fnpDRQnQl5g==", - "dev": true + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", + "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==" }, "unicode-property-aliases-ecmascript": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.5.tgz", - "integrity": "sha512-L5RAqCfXqAwR3RriF8pM0lU0w4Ryf/GgzONwi6KnL1taJQa7x1TCxdJnILX59WIGOwR57IVxn7Nej0fz1Ny6fw==", - "dev": true + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", + "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==" }, "union-value": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", - "dev": true, "requires": { "arr-union": "^3.1.0", "get-value": "^2.0.6", "is-extendable": "^0.1.1", "set-value": "^2.0.1" - }, - "dependencies": { - "arr-union": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", - "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", - "dev": true - } } }, + "uniq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", + "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=" + }, + "uniqs": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz", + "integrity": "sha1-/+3ks2slKQaW5uFl1KWe25mOawI=" + }, "unique-filename": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "dev": true, "requires": { "unique-slug": "^2.0.0" } @@ -22417,22 +15347,29 @@ "version": "2.0.2", "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "dev": true, "requires": { "imurmurhash": "^0.1.4" } }, + "universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==" + }, "unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", - "dev": true + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" + }, + "unquote": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz", + "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=" }, "unset-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", - "dev": true, "requires": { "has-value": "^0.3.1", "isobject": "^3.0.0" @@ -22442,7 +15379,6 @@ "version": "0.3.1", "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", - "dev": true, "requires": { "get-value": "^2.0.3", "has-values": "^0.1.4", @@ -22453,7 +15389,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, "requires": { "isarray": "1.0.0" } @@ -22463,28 +15398,19 @@ "has-values": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", - "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", - "dev": true + "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=" }, "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" } } }, "upath": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/upath/-/upath-1.1.0.tgz", - "integrity": "sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==", - "dev": true + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", + "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==" }, "upper-case": { "version": "1.1.3", @@ -22495,7 +15421,6 @@ "version": "4.2.2", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", - "dev": true, "requires": { "punycode": "^2.1.0" } @@ -22509,7 +15434,6 @@ "version": "0.11.0", "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", - "dev": true, "requires": { "punycode": "1.3.2", "querystring": "0.2.0" @@ -22518,34 +15442,47 @@ "punycode": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", - "dev": true + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=" } } }, - "url-parse": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.4.tgz", - "integrity": "sha512-/92DTTorg4JjktLNLe6GPS2/RvAd/RGr6LuktmWSMLEOa6rjnlrFXNgSbSmkNvCoL2T028A0a1JaJLzRMlFoHg==", - "dev": 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==", "requires": { - "querystringify": "^2.0.0", + "loader-utils": "^1.2.3", + "mime": "^2.4.4", + "schema-utils": "^2.5.0" + } + }, + "url-parse": { + "version": "1.4.7", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.7.tgz", + "integrity": "sha512-d3uaVyzDB9tQoSXFvuSUNFibTd9zxd2bkVrDRvF5TmvWWQwqE4lgYJ5m+x1DbecWkw+LK4RNl2CU1hHuOKPVlg==", + "requires": { + "querystringify": "^2.1.1", "requires-port": "^1.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==", - "dev": true + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==" }, "util": { - "version": "0.10.4", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", - "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", - "dev": true, + "version": "0.10.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", + "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", "requires": { - "inherits": "2.0.3" + "inherits": "2.0.1" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" + } } }, "util-deprecate": { @@ -22557,142 +15494,61 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.1.tgz", "integrity": "sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==", - "dev": true, "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.2", "has-symbols": "^1.0.1", "object.getownpropertydescriptors": "^2.1.0" - }, - "dependencies": { - "es-abstract": { - "version": "1.17.4", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.4.tgz", - "integrity": "sha512-Ae3um/gb8F0mui/jPL+QiqmglkUsaQf7FwBEHYIFkztkneosu9imhqHpBzQ3h1vit8t5iQ74t6PEVvphBZiuiQ==", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.1.5", - "is-regex": "^1.0.5", - "object-inspect": "^1.7.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.0", - "string.prototype.trimleft": "^2.1.1", - "string.prototype.trimright": "^2.1.1" - } - }, - "es-to-primitive": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", - "dev": true, - "requires": { - "is-callable": "^1.1.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "has-symbols": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", - "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", - "dev": true - }, - "is-callable": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.5.tgz", - "integrity": "sha512-ESKv5sMCJB2jnHTWZ3O5itG+O128Hsus4K4Qh1h2/cgn2vbgnLSVqfV46AeJA9D5EeeLa9w81KUXMtn34zhX+Q==", - "dev": true - }, - "is-regex": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.5.tgz", - "integrity": "sha512-vlKW17SNq44owv5AQR3Cq0bQPEb8+kF3UKZ2fiZNOWtztYE5i0CzCZxFDwO58qAOWtxdBRVO/V5Qin1wjCqFYQ==", - "dev": true, - "requires": { - "has": "^1.0.3" - } - }, - "object-inspect": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.7.0.tgz", - "integrity": "sha512-a7pEHdh1xKIAgTySUGgLMx/xwDZskN1Ud6egYYN3EdRW4ZMPNEDUTF+hwy2LUC+Bl+SyLXANnwz/jyh/qutKUw==", - "dev": true - }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true - } } }, + "utila": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", + "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=" + }, "utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", - "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", - "dev": true + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" }, "uuid": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", - "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", - "dev": true + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" }, "v8-compile-cache": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.0.2.tgz", - "integrity": "sha512-1wFuMUIM16MDJRCrpbpuEPTUGmM5QMUg0cr3KFwra2XgOgFcPGDQHDh3CszSCD2Zewc/dh/pamNEW8CbfDebUw==", - "dev": true - }, - "v8-to-istanbul": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-4.1.2.tgz", - "integrity": "sha512-G9R+Hpw0ITAmPSr47lSlc5A1uekSYzXxTMlFxso2xoffwo4jQnzbv1p9yXIinO8UMZKfAFewaCHwWvnH4Jb4Ug==", - "dev": true, - "requires": { - "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0", - "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 - } - } + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz", + "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==" }, "validate-npm-package-license": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", - "dev": true, "requires": { "spdx-correct": "^3.0.0", "spdx-expression-parse": "^3.0.0" } }, "value-equal": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-0.4.0.tgz", - "integrity": "sha512-x+cYdNnaA3CxvMaTX0INdTCN8m8aF2uY9BvEqmxuYp8bL09cs/kWVQPVGcA35fMktdOsP69IgU7wFj/61dJHEw==" + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/value-equal/-/value-equal-1.0.1.tgz", + "integrity": "sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw==" }, "vary": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", - "dev": true + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" + }, + "vendors": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.4.tgz", + "integrity": "sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==" }, "verror": { "version": "1.10.0", "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", - "dev": true, "requires": { "assert-plus": "^1.0.0", "core-util-is": "1.0.2", @@ -22700,19 +15556,14 @@ } }, "vm-browserify": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-0.0.4.tgz", - "integrity": "sha1-XX6kW7755Kb/ZflUOOCofDV9WnM=", - "dev": true, - "requires": { - "indexof": "0.0.1" - } + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" }, "w3c-hr-time": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", - "dev": true, "requires": { "browser-process-hrtime": "^1.0.0" } @@ -22721,18 +15572,21 @@ "version": "1.1.2", "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-1.1.2.tgz", "integrity": "sha512-p10l/ayESzrBMYWRID6xbuCKh2Fp77+sA0doRuGn4tTIMrrZVeqfpKjXHY+oDh3K4nLdPgNwMTVP6Vp4pvqbNg==", - "dev": true, "requires": { "domexception": "^1.0.1", "webidl-conversions": "^4.0.2", "xml-name-validator": "^3.0.0" } }, + "wait-for-expect": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/wait-for-expect/-/wait-for-expect-3.0.2.tgz", + "integrity": "sha512-cfS1+DZxuav1aBYbaO/kE06EOS8yRw7qOFoD3XtjTkYvCvh3zUvNST8DXK/nPaeqIzIv3P3kL3lRJn8iwOiSag==" + }, "walker": { "version": "1.0.7", "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz", "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=", - "dev": true, "requires": { "makeerror": "1.0.x" } @@ -22746,21 +15600,120 @@ } }, "watchpack": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.0.tgz", - "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==", - "dev": true, + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.1.tgz", + "integrity": "sha512-+IF9hfUFOrYOOaKyfaI7h7dquUIOgyEMoQMLA7OP5FxegKA2+XdXThAZ9TU2kucfhDH7rfMHs1oPYziVGWRnZA==", "requires": { - "chokidar": "^2.0.2", + "chokidar": "^2.1.8", "graceful-fs": "^4.1.2", "neo-async": "^2.5.0" + }, + "dependencies": { + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==" + }, + "chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "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" + } + }, + "fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "optional": true + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "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=", + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "requires": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" + } + } } }, "wbuf": { "version": "1.7.3", "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", - "dev": true, "requires": { "minimalistic-assert": "^1.0.0" } @@ -22777,14 +15730,12 @@ "webidl-conversions": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", - "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", - "dev": true + "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==" }, "webpack": { - "version": "4.41.2", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.41.2.tgz", - "integrity": "sha512-Zhw69edTGfbz9/8JJoyRQ/pq8FYUoY0diOXqW0T6yhgdhCv6wr0hra5DwwWexNRns2Z2+gsnrNcbe9hbGBgk/A==", - "dev": true, + "version": "4.42.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.42.0.tgz", + "integrity": "sha512-EzJRHvwQyBiYrYqhyjW9AqM90dE4+s1/XtCfn7uWg6cS72zH+2VPFAlsnW0+W0cDi0XRjNKUMoJtpSi50+Ph6w==", "requires": { "@webassemblyjs/ast": "1.8.5", "@webassemblyjs/helper-module-context": "1.8.5", @@ -22806,7 +15757,7 @@ "node-libs-browser": "^2.2.1", "schema-utils": "^1.0.0", "tapable": "^1.1.3", - "terser-webpack-plugin": "^1.4.1", + "terser-webpack-plugin": "^1.4.3", "watchpack": "^1.6.0", "webpack-sources": "^1.4.1" }, @@ -22814,153 +15765,305 @@ "acorn": { "version": "6.4.1", "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", - "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", - "dev": true + "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==" }, - "ajv": { - "version": "6.10.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", - "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", - "dev": true, + "cacache": { + "version": "12.0.4", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", + "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", "requires": { - "fast-deep-equal": "^2.0.1", - "fast-json-stable-stringify": "^2.0.0", - "json-schema-traverse": "^0.4.1", - "uri-js": "^4.2.2" + "bluebird": "^3.5.5", + "chownr": "^1.1.1", + "figgy-pudding": "^3.5.1", + "glob": "^7.1.4", + "graceful-fs": "^4.1.15", + "infer-owner": "^1.0.3", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.3", + "ssri": "^6.0.1", + "unique-filename": "^1.1.1", + "y18n": "^4.0.0" } }, - "ajv-keywords": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.1.tgz", - "integrity": "sha512-RO1ibKvd27e6FEShVFfPALuHI3WjSVNeK5FIsmme/LYRNxjKuNj+Dt7bucLa6NdSv3JcVTyMlm9kGR84z1XpaQ==", - "dev": true - }, - "big.js": { - "version": "5.2.2", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", - "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", - "dev": true - }, "eslint-scope": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", - "dev": true, "requires": { "esrecurse": "^4.1.0", "estraverse": "^4.1.1" } }, - "events": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/events/-/events-3.0.0.tgz", - "integrity": "sha512-Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA==", - "dev": true + "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==", + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.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 + "ssri": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", + "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "requires": { + "figgy-pudding": "^3.5.1" + } + }, + "terser-webpack-plugin": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.3.tgz", + "integrity": "sha512-QMxecFz/gHQwteWwSo5nTc6UaICqN1bMedC5sMtUc7y3Ha3Q8y6ZO0iCR8pq4RJC8Hjf0FEPEHZqcMB/+DFCrA==", + "requires": { + "cacache": "^12.0.2", + "find-cache-dir": "^2.1.0", + "is-wsl": "^1.1.0", + "schema-utils": "^1.0.0", + "serialize-javascript": "^2.1.2", + "source-map": "^0.6.1", + "terser": "^4.1.2", + "webpack-sources": "^1.4.0", + "worker-farm": "^1.7.0" + } + } + } + }, + "webpack-dev-middleware": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz", + "integrity": "sha512-1xC42LxbYoqLNAhV6YzTYacicgMZQTqRd27Sim9wn5hJrX3I5nxYy1SxSd4+gjUFsz1dQFj+yEe6zEVmSkeJjw==", + "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-dev-server": { + "version": "3.10.3", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.10.3.tgz", + "integrity": "sha512-e4nWev8YzEVNdOMcNzNeCN947sWJNd43E5XvsJzbAL08kGc2frm1tQ32hTJslRS+H65LCb/AaUCYU7fjHCpDeQ==", + "requires": { + "ansi-html": "0.0.7", + "bonjour": "^3.5.0", + "chokidar": "^2.1.8", + "compression": "^1.7.4", + "connect-history-api-fallback": "^1.6.0", + "debug": "^4.1.1", + "del": "^4.1.1", + "express": "^4.17.1", + "html-entities": "^1.2.1", + "http-proxy-middleware": "0.19.1", + "import-local": "^2.0.0", + "internal-ip": "^4.3.0", + "ip": "^1.1.5", + "is-absolute-url": "^3.0.3", + "killable": "^1.0.1", + "loglevel": "^1.6.6", + "opn": "^5.5.0", + "p-retry": "^3.0.1", + "portfinder": "^1.0.25", + "schema-utils": "^1.0.0", + "selfsigned": "^1.10.7", + "semver": "^6.3.0", + "serve-index": "^1.9.1", + "sockjs": "0.3.19", + "sockjs-client": "1.4.0", + "spdy": "^4.0.1", + "strip-ansi": "^3.0.1", + "supports-color": "^6.1.0", + "url": "^0.11.0", + "webpack-dev-middleware": "^3.7.2", + "webpack-log": "^2.0.0", + "ws": "^6.2.1", + "yargs": "12.0.5" + }, + "dependencies": { + "ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" + }, + "binary-extensions": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", + "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==" + }, + "chokidar": { + "version": "2.1.8", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", + "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", + "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" + } + }, + "cliui": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", + "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", + "requires": { + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.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=" + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "requires": { + "ansi-regex": "^3.0.0" + } + } + } + }, + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "requires": { + "ms": "^2.1.1" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "requires": { + "locate-path": "^3.0.0" + } + }, + "fsevents": { + "version": "1.2.13", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", + "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", + "optional": true + }, + "get-caller-file": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", + "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==" + }, + "glob-parent": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", + "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "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=", + "requires": { + "is-extglob": "^2.1.0" + } + } + } + }, + "http-proxy-middleware": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz", + "integrity": "sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==", + "requires": { + "http-proxy": "^1.17.0", + "is-glob": "^4.0.0", + "lodash": "^4.17.11", + "micromatch": "^3.1.10" + } + }, + "is-absolute-url": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-3.0.3.tgz", + "integrity": "sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==" + }, + "is-binary-path": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", + "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "requires": { + "binary-extensions": "^1.0.0" + } + }, + "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=" }, "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "requires": { - "minimist": "^1.2.0" + "p-locate": "^3.0.0", + "path-exists": "^3.0.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, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "requires": { - "big.js": "^5.2.2", - "emojis-list": "^2.0.0", - "json5": "^1.0.1" + "p-try": "^2.0.0" } }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - }, - "neo-async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", - "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", - "dev": true - }, - "node-libs-browser": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", - "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", - "dev": true, + "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==", "requires": { - "assert": "^1.1.1", - "browserify-zlib": "^0.2.0", - "buffer": "^4.3.0", - "console-browserify": "^1.1.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.11.0", - "domain-browser": "^1.1.1", - "events": "^3.0.0", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "0.0.1", - "process": "^0.11.10", - "punycode": "^1.2.4", - "querystring-es3": "^0.2.0", - "readable-stream": "^2.3.3", - "stream-browserify": "^2.0.1", - "stream-http": "^2.7.2", - "string_decoder": "^1.0.0", - "timers-browserify": "^2.0.4", - "tty-browserify": "0.0.0", - "url": "^0.11.0", - "util": "^0.11.0", - "vm-browserify": "^1.0.1" + "p-limit": "^2.0.0" } }, - "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 - }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", - "dev": true - }, - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true + "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==" }, "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "dev": true, + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "requires": { "core-util-is": "~1.0.0", "inherits": "~2.0.3", @@ -22969,559 +16072,125 @@ "safe-buffer": "~5.1.1", "string_decoder": "~1.1.1", "util-deprecate": "~1.0.1" + } + }, + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "requires": { + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" + } + }, + "require-main-filename": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", + "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=" + }, + "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==", + "requires": { + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" + } + }, + "string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "requires": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" }, "dependencies": { - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, + "ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=" + }, + "strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "requires": { - "safe-buffer": "~5.1.0" + "ansi-regex": "^3.0.0" } } } }, "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - "dev": true, + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "requires": { - "safe-buffer": "~5.2.0" - }, - "dependencies": { - "safe-buffer": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.0.tgz", - "integrity": "sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==", - "dev": true - } + "safe-buffer": "~5.1.0" } }, - "tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": 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, - "requires": { - "inherits": "2.0.3" - } - }, - "vm-browserify": { - "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 - } - } - }, - "webpack-cli": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.1.2.tgz", - "integrity": "sha512-Cnqo7CeqeSvC6PTdts+dywNi5CRlIPbLx1AoUPK2T6vC1YAugMG3IOoO9DmEscd+Dghw7uRlnzV1KwOe5IrtgQ==", - "dev": true, - "requires": { - "chalk": "^2.4.1", - "cross-spawn": "^6.0.5", - "enhanced-resolve": "^4.1.0", - "global-modules-path": "^2.3.0", - "import-local": "^2.0.0", - "interpret": "^1.1.0", - "loader-utils": "^1.1.0", - "supports-color": "^5.5.0", - "v8-compile-cache": "^2.0.2", - "yargs": "^12.0.2" - }, - "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "dev": true, - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", - "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "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" - } - }, - "decamelize": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", - "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", - "dev": true, - "requires": { - "xregexp": "4.0.0" - } - }, - "execa": { - "version": "0.10.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz", - "integrity": "sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==", - "dev": true, - "requires": { - "cross-spawn": "^6.0.0", - "get-stream": "^3.0.0", - "is-stream": "^1.1.0", - "npm-run-path": "^2.0.0", - "p-finally": "^1.0.0", - "signal-exit": "^3.0.0", - "strip-eof": "^1.0.0" - } - }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "import-local": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", - "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", - "dev": true, - "requires": { - "pkg-dir": "^3.0.0", - "resolve-cwd": "^2.0.0" - } - }, - "invert-kv": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", - "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", - "dev": true - }, - "lcid": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", - "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", - "dev": true, - "requires": { - "invert-kv": "^2.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "mem": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-4.0.0.tgz", - "integrity": "sha512-WQxG/5xYc3tMbYLXoXPm81ET2WDULiU5FxbuIoNbJqLOOI8zehXFdZuiUEgfdrU2mVB1pxBZUGlYORSrpuJreA==", - "dev": true, - "requires": { - "map-age-cleaner": "^0.1.1", - "mimic-fn": "^1.0.0", - "p-is-promise": "^1.1.0" - } - }, - "os-locale": { + "strip-ansi": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.0.1.tgz", - "integrity": "sha512-7g5e7dmXPtzcP4bgsZ8ixDVqA7oWYuEz4lOSujeWyliPai4gfVDiFIcwBg3aGCPnmSGfzOKTK3ccPn0CKv3DBw==", - "dev": true, + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "execa": "^0.10.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" - } - }, - "p-limit": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.0.0.tgz", - "integrity": "sha512-fl5s52lI5ahKCernzzIyAP0QAZbGIovtVHGwpcu1Jr/EpzLVDI2myISHwGqK7m8uQFugVWSrbxH7XnhGtvEc+A==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", - "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==", - "dev": true - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, - "requires": { - "find-up": "^3.0.0" + "ansi-regex": "^2.0.0" } }, "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", "requires": { "has-flag": "^3.0.0" } }, - "yargs": { - "version": "12.0.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.2.tgz", - "integrity": "sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ==", - "dev": true, + "wrap-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", + "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", "requires": { - "cliui": "^4.0.0", - "decamelize": "^2.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^1.0.1", - "os-locale": "^3.0.0", - "require-directory": "^2.1.1", - "require-main-filename": "^1.0.1", - "set-blocking": "^2.0.0", - "string-width": "^2.0.0", - "which-module": "^2.0.0", - "y18n": "^3.2.1 || ^4.0.0", - "yargs-parser": "^10.1.0" - } - }, - "yargs-parser": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", - "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", - "dev": true, - "requires": { - "camelcase": "^4.1.0" - } - } - } - }, - "webpack-dev-middleware": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.4.0.tgz", - "integrity": "sha512-Q9Iyc0X9dP9bAsYskAVJ/hmIZZQwf/3Sy4xCAZgL5cUkjZmUZLt4l5HpbST/Pdgjn3u6pE7u5OdGd1apgzRujA==", - "dev": true, - "requires": { - "memory-fs": "~0.4.1", - "mime": "^2.3.1", - "range-parser": "^1.0.3", - "webpack-log": "^2.0.0" - }, - "dependencies": { - "mime": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.0.tgz", - "integrity": "sha512-ikBcWwyqXQSHKtciCcctu9YfPbFYZ4+gbHEmE0Q8jzcTYQg5dHCr3g2wwAZjPoJfQVXZq6KXAjpXOTf5/cjT7w==", - "dev": true - } - } - }, - "webpack-dev-server": { - "version": "3.1.14", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.1.14.tgz", - "integrity": "sha512-mGXDgz5SlTxcF3hUpfC8hrQ11yhAttuUQWf1Wmb+6zo3x6rb7b9mIfuQvAPLdfDRCGRGvakBWHdHOa0I9p/EVQ==", - "dev": true, - "requires": { - "ansi-html": "0.0.7", - "bonjour": "^3.5.0", - "chokidar": "^2.0.0", - "compression": "^1.5.2", - "connect-history-api-fallback": "^1.3.0", - "debug": "^3.1.0", - "del": "^3.0.0", - "express": "^4.16.2", - "html-entities": "^1.2.0", - "http-proxy-middleware": "~0.18.0", - "import-local": "^2.0.0", - "internal-ip": "^3.0.1", - "ip": "^1.1.5", - "killable": "^1.0.0", - "loglevel": "^1.4.1", - "opn": "^5.1.0", - "portfinder": "^1.0.9", - "schema-utils": "^1.0.0", - "selfsigned": "^1.9.1", - "semver": "^5.6.0", - "serve-index": "^1.7.2", - "sockjs": "0.3.19", - "sockjs-client": "1.3.0", - "spdy": "^4.0.0", - "strip-ansi": "^3.0.0", - "supports-color": "^5.1.0", - "url": "^0.11.0", - "webpack-dev-middleware": "3.4.0", - "webpack-log": "^2.0.0", - "yargs": "12.0.2" - }, - "dependencies": { - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", - "dev": true, - "requires": { - "nice-try": "^1.0.4", - "path-key": "^2.0.1", - "semver": "^5.5.0", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "debug": { - "version": "3.2.6", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", - "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", - "dev": true, - "requires": { - "ms": "^2.1.1" - } - }, - "decamelize": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", - "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", - "dev": true, - "requires": { - "xregexp": "4.0.0" - } - }, - "del": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/del/-/del-3.0.0.tgz", - "integrity": "sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU=", - "dev": true, - "requires": { - "globby": "^6.1.0", - "is-path-cwd": "^1.0.0", - "is-path-in-cwd": "^1.0.0", - "p-map": "^1.1.1", - "pify": "^3.0.0", - "rimraf": "^2.2.8" - } - }, - "execa": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", - "dev": true, - "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" - } - }, - "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" - } - }, - "get-stream": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", - "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", - "dev": true, - "requires": { - "pump": "^3.0.0" - } - }, - "globby": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", - "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", - "dev": true, - "requires": { - "array-union": "^1.0.1", - "glob": "^7.0.3", - "object-assign": "^4.0.1", - "pify": "^2.0.0", - "pinkie-promise": "^2.0.0" + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" }, "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "http://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true + "is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "requires": { + "number-is-nan": "^1.0.0" + } + }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } } } }, - "import-local": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", - "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", - "dev": true, + "ws": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz", + "integrity": "sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==", "requires": { - "pkg-dir": "^3.0.0", - "resolve-cwd": "^2.0.0" - } - }, - "invert-kv": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", - "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", - "dev": true - }, - "lcid": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", - "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", - "dev": true, - "requires": { - "invert-kv": "^2.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", - "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - } - }, - "mem": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-4.0.0.tgz", - "integrity": "sha512-WQxG/5xYc3tMbYLXoXPm81ET2WDULiU5FxbuIoNbJqLOOI8zehXFdZuiUEgfdrU2mVB1pxBZUGlYORSrpuJreA==", - "dev": true, - "requires": { - "map-age-cleaner": "^0.1.1", - "mimic-fn": "^1.0.0", - "p-is-promise": "^1.1.0" - } - }, - "ms": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", - "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", - "dev": true - }, - "os-locale": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", - "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", - "dev": true, - "requires": { - "execa": "^1.0.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" - } - }, - "p-limit": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.1.0.tgz", - "integrity": "sha512-NhURkNcrVB+8hNfLuysU8enY5xn2KXphsHBaC2YmRNTZRc7RWusw6apSpdEj3jo4CMb6W9nrF6tTnsJsJeyu6g==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dev": true, - "requires": { - "p-limit": "^2.0.0" - } - }, - "p-try": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", - "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==", - "dev": true - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "dev": true - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, - "requires": { - "find-up": "^3.0.0" - } - }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "requires": { - "has-flag": "^3.0.0" + "async-limiter": "~1.0.0" } }, "yargs": { - "version": "12.0.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.2.tgz", - "integrity": "sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ==", - "dev": true, + "version": "12.0.5", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.5.tgz", + "integrity": "sha512-Lhz8TLaYnxq/2ObqHDql8dX8CJi97oHxrjUcYtzKbbykPtVW9WB+poxI+NM2UIzsMgNCZTIf0AQwsjK5yMAqZw==", "requires": { "cliui": "^4.0.0", - "decamelize": "^2.0.0", + "decamelize": "^1.2.0", "find-up": "^3.0.0", "get-caller-file": "^1.0.1", "os-locale": "^3.0.0", @@ -23531,16 +16200,16 @@ "string-width": "^2.0.0", "which-module": "^2.0.0", "y18n": "^3.2.1 || ^4.0.0", - "yargs-parser": "^10.1.0" + "yargs-parser": "^11.1.1" } }, "yargs-parser": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", - "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", - "dev": true, + "version": "11.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-11.1.1.tgz", + "integrity": "sha512-C6kB/WJDiaxONLJQnF8ccx9SEeoTTLek8RVbaOIsrAUS8VrBEXfmeSnCZxygc+XC2sNMBIwOOnfcxiynjHsVSQ==", "requires": { - "camelcase": "^4.1.0" + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" } } } @@ -23549,17 +16218,31 @@ "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" + } + }, + "webpack-manifest-plugin": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/webpack-manifest-plugin/-/webpack-manifest-plugin-2.2.0.tgz", + "integrity": "sha512-9S6YyKKKh/Oz/eryM1RyLVDVmy3NSPV0JXMRhZ18fJsq+AwGxUY34X54VNwkzYcEmEkDwNxuEOboCZEebJXBAQ==", + "requires": { + "fs-extra": "^7.0.0", + "lodash": ">=3.5 <5", + "object.entries": "^1.1.0", + "tapable": "^1.0.0" }, "dependencies": { - "ansi-colors": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz", - "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==", - "dev": true + "fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } } } }, @@ -23567,48 +16250,48 @@ "version": "1.4.3", "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", - "dev": true, "requires": { "source-list-map": "^2.0.0", "source-map": "~0.6.1" } }, "websocket-driver": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.0.tgz", - "integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=", - "dev": true, + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.3.tgz", + "integrity": "sha512-bpxWlvbbB459Mlipc5GBzzZwhoZgGEZLuqPaR0INBGnPAY1vdBX6hPnoFXiw+3yWxDuHyQjO2oXTMyS8A5haFg==", "requires": { - "http-parser-js": ">=0.4.0", + "http-parser-js": ">=0.4.0 <0.4.11", + "safe-buffer": ">=5.1.0", "websocket-extensions": ">=0.1.1" } }, "websocket-extensions": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.3.tgz", - "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==", - "dev": true + "integrity": "sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg==" }, "whatwg-encoding": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", - "dev": true, "requires": { "iconv-lite": "0.4.24" } }, + "whatwg-fetch": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-3.0.0.tgz", + "integrity": "sha512-9GSJUgz1D4MfyKU7KRqwOjXCXTqWdFNvEr7eUBYchQiVc744mqK/MzXPNR2WsPkmkOa4ywfg8C2n8h+13Bey1Q==" + }, "whatwg-mimetype": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", - "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", - "dev": true + "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==" }, "whatwg-url": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.1.0.tgz", - "integrity": "sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==", - "dev": true, + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-6.5.0.tgz", + "integrity": "sha512-rhRZRqx/TLJQWUpQ6bmrt2UV4f0HCQ463yQuONJqC6fO2VoEb1pTYddbe59SkYq87aoM5A3bdhMZiUiVws+fzQ==", "requires": { "lodash.sortby": "^4.7.0", "tr46": "^1.0.1", @@ -23619,7 +16302,6 @@ "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", - "dev": true, "requires": { "isexe": "^2.0.0" } @@ -23627,61 +16309,218 @@ "which-module": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", - "dev": true - }, - "wide-align": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", - "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", - "dev": true, - "requires": { - "string-width": "^1.0.2 || 2" - } + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" }, "word-wrap": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==" + }, + "workbox-background-sync": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-background-sync/-/workbox-background-sync-4.3.1.tgz", + "integrity": "sha512-1uFkvU8JXi7L7fCHVBEEnc3asPpiAL33kO495UMcD5+arew9IbKW2rV5lpzhoWcm/qhGB89YfO4PmB/0hQwPRg==", + "requires": { + "workbox-core": "^4.3.1" + } + }, + "workbox-broadcast-update": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-broadcast-update/-/workbox-broadcast-update-4.3.1.tgz", + "integrity": "sha512-MTSfgzIljpKLTBPROo4IpKjESD86pPFlZwlvVG32Kb70hW+aob4Jxpblud8EhNb1/L5m43DUM4q7C+W6eQMMbA==", + "requires": { + "workbox-core": "^4.3.1" + } + }, + "workbox-build": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-build/-/workbox-build-4.3.1.tgz", + "integrity": "sha512-UHdwrN3FrDvicM3AqJS/J07X0KXj67R8Cg0waq1MKEOqzo89ap6zh6LmaLnRAjpB+bDIz+7OlPye9iii9KBnxw==", + "requires": { + "@babel/runtime": "^7.3.4", + "@hapi/joi": "^15.0.0", + "common-tags": "^1.8.0", + "fs-extra": "^4.0.2", + "glob": "^7.1.3", + "lodash.template": "^4.4.0", + "pretty-bytes": "^5.1.0", + "stringify-object": "^3.3.0", + "strip-comments": "^1.0.2", + "workbox-background-sync": "^4.3.1", + "workbox-broadcast-update": "^4.3.1", + "workbox-cacheable-response": "^4.3.1", + "workbox-core": "^4.3.1", + "workbox-expiration": "^4.3.1", + "workbox-google-analytics": "^4.3.1", + "workbox-navigation-preload": "^4.3.1", + "workbox-precaching": "^4.3.1", + "workbox-range-requests": "^4.3.1", + "workbox-routing": "^4.3.1", + "workbox-strategies": "^4.3.1", + "workbox-streams": "^4.3.1", + "workbox-sw": "^4.3.1", + "workbox-window": "^4.3.1" + }, + "dependencies": { + "fs-extra": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", + "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + } + } + }, + "workbox-cacheable-response": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-cacheable-response/-/workbox-cacheable-response-4.3.1.tgz", + "integrity": "sha512-Rp5qlzm6z8IOvnQNkCdO9qrDgDpoPNguovs0H8C+wswLuPgSzSp9p2afb5maUt9R1uTIwOXrVQMmPfPypv+npw==", + "requires": { + "workbox-core": "^4.3.1" + } + }, + "workbox-core": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-core/-/workbox-core-4.3.1.tgz", + "integrity": "sha512-I3C9jlLmMKPxAC1t0ExCq+QoAMd0vAAHULEgRZ7kieCdUd919n53WC0AfvokHNwqRhGn+tIIj7vcb5duCjs2Kg==" + }, + "workbox-expiration": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-expiration/-/workbox-expiration-4.3.1.tgz", + "integrity": "sha512-vsJLhgQsQouv9m0rpbXubT5jw0jMQdjpkum0uT+d9tTwhXcEZks7qLfQ9dGSaufTD2eimxbUOJfWLbNQpIDMPw==", + "requires": { + "workbox-core": "^4.3.1" + } + }, + "workbox-google-analytics": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-google-analytics/-/workbox-google-analytics-4.3.1.tgz", + "integrity": "sha512-xzCjAoKuOb55CBSwQrbyWBKqp35yg1vw9ohIlU2wTy06ZrYfJ8rKochb1MSGlnoBfXGWss3UPzxR5QL5guIFdg==", + "requires": { + "workbox-background-sync": "^4.3.1", + "workbox-core": "^4.3.1", + "workbox-routing": "^4.3.1", + "workbox-strategies": "^4.3.1" + } + }, + "workbox-navigation-preload": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-navigation-preload/-/workbox-navigation-preload-4.3.1.tgz", + "integrity": "sha512-K076n3oFHYp16/C+F8CwrRqD25GitA6Rkd6+qAmLmMv1QHPI2jfDwYqrytOfKfYq42bYtW8Pr21ejZX7GvALOw==", + "requires": { + "workbox-core": "^4.3.1" + } + }, + "workbox-precaching": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-precaching/-/workbox-precaching-4.3.1.tgz", + "integrity": "sha512-piSg/2csPoIi/vPpp48t1q5JLYjMkmg5gsXBQkh/QYapCdVwwmKlU9mHdmy52KsDGIjVaqEUMFvEzn2LRaigqQ==", + "requires": { + "workbox-core": "^4.3.1" + } + }, + "workbox-range-requests": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-range-requests/-/workbox-range-requests-4.3.1.tgz", + "integrity": "sha512-S+HhL9+iTFypJZ/yQSl/x2Bf5pWnbXdd3j57xnb0V60FW1LVn9LRZkPtneODklzYuFZv7qK6riZ5BNyc0R0jZA==", + "requires": { + "workbox-core": "^4.3.1" + } + }, + "workbox-routing": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-routing/-/workbox-routing-4.3.1.tgz", + "integrity": "sha512-FkbtrODA4Imsi0p7TW9u9MXuQ5P4pVs1sWHK4dJMMChVROsbEltuE79fBoIk/BCztvOJ7yUpErMKa4z3uQLX+g==", + "requires": { + "workbox-core": "^4.3.1" + } + }, + "workbox-strategies": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-strategies/-/workbox-strategies-4.3.1.tgz", + "integrity": "sha512-F/+E57BmVG8dX6dCCopBlkDvvhg/zj6VDs0PigYwSN23L8hseSRwljrceU2WzTvk/+BSYICsWmRq5qHS2UYzhw==", + "requires": { + "workbox-core": "^4.3.1" + } + }, + "workbox-streams": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-streams/-/workbox-streams-4.3.1.tgz", + "integrity": "sha512-4Kisis1f/y0ihf4l3u/+ndMkJkIT4/6UOacU3A4BwZSAC9pQ9vSvJpIi/WFGQRH/uPXvuVjF5c2RfIPQFSS2uA==", + "requires": { + "workbox-core": "^4.3.1" + } + }, + "workbox-sw": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-sw/-/workbox-sw-4.3.1.tgz", + "integrity": "sha512-0jXdusCL2uC5gM3yYFT6QMBzKfBr2XTk0g5TPAV4y8IZDyVNDyj1a8uSXy3/XrvkVTmQvLN4O5k3JawGReXr9w==" + }, + "workbox-webpack-plugin": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-webpack-plugin/-/workbox-webpack-plugin-4.3.1.tgz", + "integrity": "sha512-gJ9jd8Mb8wHLbRz9ZvGN57IAmknOipD3W4XNE/Lk/4lqs5Htw4WOQgakQy/o/4CoXQlMCYldaqUg+EJ35l9MEQ==", + "requires": { + "@babel/runtime": "^7.0.0", + "json-stable-stringify": "^1.0.1", + "workbox-build": "^4.3.1" + } + }, + "workbox-window": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/workbox-window/-/workbox-window-4.3.1.tgz", + "integrity": "sha512-C5gWKh6I58w3GeSc0wp2Ne+rqVw8qwcmZnQGpjiek8A2wpbxSJb1FdCoQVO+jDJs35bFgo/WETgl1fqgsxN0Hg==", + "requires": { + "workbox-core": "^4.3.1" + } }, "worker-farm": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", - "dev": true, "requires": { "errno": "~0.1.7" } }, - "wrap-ansi": { - "version": "2.1.0", - "resolved": "http://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", - "dev": true, + "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==", "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" + "microevent.ts": "~0.1.1" + } + }, + "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" }, "dependencies": { + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + }, "is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", - "dev": true, - "requires": { - "number-is-nan": "^1.0.0" - } + "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=" }, "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" } } } @@ -23689,53 +16528,51 @@ "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, "write": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", - "dev": true, "requires": { "mkdirp": "^0.5.1" } }, "write-file-atomic": { - "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, + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.1.tgz", + "integrity": "sha512-TGHFeZEZMnv+gBFRfjAcxL5bPHrsGKtnb4qsFAws7/vlh+QfwAaySIw4AXP9ZskTTh5GWu3FLuJhsWVdiJPGvg==", "requires": { + "graceful-fs": "^4.1.11", "imurmurhash": "^0.1.4", - "is-typedarray": "^1.0.0", - "signal-exit": "^3.0.2", - "typedarray-to-buffer": "^3.1.5" + "signal-exit": "^3.0.2" } }, "ws": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.2.3.tgz", - "integrity": "sha512-HTDl9G9hbkNDk98naoR/cHDws7+EyYMOdL1BmjsZXRUjf7d+MficC4B7HLUPlSiho0vg+CWKrGIt/VJBd1xunQ==", - "dev": true + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.2.tgz", + "integrity": "sha512-jaHFD6PFv6UgoIVda6qZllptQsMlDEJkTQcybzzXDYM1XO9Y8em691FGMPmM46WGyLU4z9KMgQN+qrux/nhlHA==", + "requires": { + "async-limiter": "~1.0.0" + } }, "xml-name-validator": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", - "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", - "dev": true + "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==" }, "xmlchars": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", - "dev": true + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==" }, "xregexp": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", - "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", - "dev": true + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.3.0.tgz", + "integrity": "sha512-7jXDIFXh5yJ/orPn4SXjuVrWWoi4Cr8jfV1eHv9CixKSbU+jY4mxfrBwAuDvupPNKpMUY+FeIqsVw/JLT9+B8g==", + "requires": { + "@babel/runtime-corejs3": "^7.8.3" + } }, "xtend": { "version": "2.1.2", @@ -23746,206 +16583,107 @@ } }, "y18n": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", - "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", - "dev": true + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==" }, "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", - "dev": true + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "yaml": { + "version": "1.9.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.9.2.tgz", + "integrity": "sha512-HPT7cGGI0DuRcsO51qC1j9O16Dh1mZ2bnXwsi0jrSpsLz0WxOLSLXfkABVl6bZO629py3CU+OMJtpNHDLB97kg==", + "requires": { + "@babel/runtime": "^7.9.2" + } }, "yargs": { - "version": "15.3.1", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.3.1.tgz", - "integrity": "sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==", - "dev": true, + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", "requires": { - "cliui": "^6.0.0", - "decamelize": "^1.2.0", - "find-up": "^4.1.0", + "cliui": "^5.0.0", + "find-up": "^3.0.0", "get-caller-file": "^2.0.1", "require-directory": "^2.1.1", "require-main-filename": "^2.0.0", "set-blocking": "^2.0.0", - "string-width": "^4.2.0", + "string-width": "^3.0.0", "which-module": "^2.0.0", "y18n": "^4.0.0", - "yargs-parser": "^18.1.1" + "yargs-parser": "^13.1.2" }, "dependencies": { - "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", - "dev": true, - "requires": { - "@types/color-name": "^1.1.1", - "color-convert": "^2.0.1" - } - }, - "cliui": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^6.2.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" }, "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "locate-path": "^3.0.0" } }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, "is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true + "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=" }, "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "dev": true, + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "requires": { - "p-locate": "^4.1.0" + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" } }, "p-limit": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.2.tgz", - "integrity": "sha512-WGR+xHecKTr7EbUEhyLSh5Dube9JtdiG78ufaeLxTgpudf/20KqyMioIUZJAezlTIi6evxuoUs9YXc11cU+yzQ==", - "dev": true, + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "requires": { "p-try": "^2.0.0" } }, "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "dev": true, + "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==", "requires": { - "p-limit": "^2.2.0" + "p-limit": "^2.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==", - "dev": true - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", - "dev": true + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" }, "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", - "dev": true, + "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": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.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==", - "dev": true, - "requires": { - "ansi-regex": "^5.0.0" - } - }, - "wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "y18n": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", - "dev": true } } }, "yargs-parser": { - "version": "18.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.1.tgz", - "integrity": "sha512-KRHEsOM16IX7XuLnMOqImcPNbLVXMNHYAoFc3BKR8Ortl5gzDbtXvvEoGx9imk5E+X1VeNKNlcHr8B8vi+7ipA==", - "dev": true, + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", "requires": { "camelcase": "^5.0.0", "decamelize": "^1.2.0" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - } } } } diff --git a/awx/ui_next/package.json b/awx/ui_next/package.json index b88f3dace3..e44f57ec11 100644 --- a/awx/ui_next/package.json +++ b/awx/ui_next/package.json @@ -1,12 +1,41 @@ { - "name": "awx-react", - "version": "1.0.0", - "description": "", - "main": "index.jsx", + "name": "ui_next", + "version": "0.1.0", + "private": true, + "dependencies": { + "@lingui/react": "^2.9.1", + "@patternfly/patternfly": "^2.71.3", + "@patternfly/react-core": "^3.153.3", + "@patternfly/react-icons": "^3.15.15", + "@patternfly/react-tokens": "^2.8.12", + "@testing-library/jest-dom": "^4.2.4", + "@testing-library/react": "^9.3.2", + "@testing-library/user-event": "^7.1.2", + "ansi-to-html": "^0.6.11", + "axios": "^0.18.1", + "codemirror": "^5.47.0", + "d3": "^5.12.0", + "dagre": "^0.8.4", + "formik": "^2.1.2", + "has-ansi": "^3.0.0", + "html-entities": "^1.2.1", + "js-yaml": "^3.13.1", + "prop-types": "^15.6.2", + "react": "^16.13.1", + "react-codemirror2": "^6.0.0", + "react-dom": "^16.13.1", + "react-router-dom": "^5.1.2", + "react-scripts": "3.4.1", + "react-virtualized": "^9.21.1", + "rrule": "^2.6.4", + "styled-components": "^4.2.0" + }, "scripts": { - "start": "webpack-dev-server --config ./webpack.config.js --mode development", - "test": "TZ='UTC' jest --coverage", - "test-watch": "TZ='UTC' jest --watch", + "start": "PORT=3001 HTTPS=true DANGEROUSLY_DISABLE_HOST_CHECK=true react-scripts start", + "build": "react-scripts build", + "test": "TZ='UTC' react-scripts test --coverage --watchAll=false", + "test-watch": "TZ='UTC' react-scripts test", + "eject": "react-scripts eject", "lint": "eslint --ext .js --ext .jsx .", "add-locale": "lingui add-locale", "extract-strings": "lingui extract", @@ -14,25 +43,23 @@ "prettier": "prettier --write \"src/**/*.{js,jsx,scss}\"", "prettier-check": "prettier --check \"src/**/*.{js,jsx,scss}\"" }, - "keywords": [], - "author": "", - "license": "Apache", + "browserslist": { + "production": [ + ">0.2%", + "not dead", + "not op_mini all" + ], + "development": [ + "last 1 chrome version", + "last 1 firefox version", + "last 1 safari version" + ] + }, "devDependencies": { - "@babel/core": "^7.8.3", - "@babel/plugin-proposal-class-properties": "^7.1.0", - "@babel/polyfill": "^7.0.0", - "@babel/preset-env": "^7.8.3", - "@babel/preset-react": "^7.0.0", - "@lingui/cli": "^2.7.4", - "@lingui/macro": "^2.7.2", + "@babel/polyfill": "^7.8.7", + "@lingui/cli": "^2.9.1", + "@lingui/macro": "^2.9.1", "@nteract/mockument": "^1.0.4", - "babel-core": "^7.0.0-bridge.0", - "babel-eslint": "^10.0.1", - "babel-jest": "^25.1.0", - "babel-loader": "^8.0.6", - "babel-plugin-macros": "^2.4.2", - "babel-plugin-styled-components": "^1.10.0", - "css-loader": "^1.0.0", "enzyme": "^3.10.0", "enzyme-adapter-react-16": "^1.14.0", "enzyme-to-json": "^3.3.5", @@ -44,40 +71,20 @@ "eslint-plugin-jsx-a11y": "^6.1.1", "eslint-plugin-react": "^7.11.1", "eslint-plugin-react-hooks": "^2.2.0", - "file-loader": "^2.0.0", - "history": "^4.9.0", - "jest": "^25.1.0", - "node-sass": "^4.13.1", - "prettier": "^1.18.2", - "react-hot-loader": "^4.3.3", - "sass-loader": "^7.1.0", - "style-loader": "^0.23.0", - "webpack": "^4.41.2", - "webpack-cli": "^3.0.8", - "webpack-dev-server": "^3.1.14" + "http-proxy-middleware": "^1.0.3", + "prettier": "^1.18.2" }, - "dependencies": { - "@lingui/react": "^2.7.2", - "@patternfly/patternfly": "^2.71.3", - "@patternfly/react-core": "^3.153.3", - "@patternfly/react-icons": "^3.15.15", - "@patternfly/react-tokens": "^2.8.12", - "ansi-to-html": "^0.6.11", - "axios": "^0.18.1", - "codemirror": "^5.47.0", - "d3": "^5.12.0", - "dagre": "^0.8.4", - "formik": "^2.1.2", - "has-ansi": "^3.0.0", - "html-entities": "^1.2.1", - "js-yaml": "^3.13.1", - "prop-types": "^15.6.2", - "react": "^16.13.0", - "react-codemirror2": "^6.0.0", - "react-dom": "^16.13.0", - "react-router-dom": "^5.1.2", - "react-virtualized": "^9.21.1", - "rrule": "^2.6.4", - "styled-components": "^4.2.0" + "jest": { + "snapshotSerializers": [ + "enzyme-to-json/serializer" + ], + "collectCoverageFrom": [ + "src/**/*.{js,jsx}", + "testUtils/**/*.{js,jsx}" + ], + "coveragePathIgnorePatterns": [ + "/src/locales", + "index.js" + ] } } diff --git a/awx/ui_next/public/images/pfbg_2000.jpg b/awx/ui_next/public/images/pfbg_2000.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0b2ceb367f39e30956f9a2f7071a52433f43d0eb GIT binary patch literal 276435 zcmbUIcRZVG{6CK032L>dqRZ+~p(#~$Y@&y@Xk%9>svOnQQoBM39ZpeNvsMy&@2Wjo zhnz|!c50Ni8WE|cBt~NNdpqy<=llKs@%!WV``sSNeIdE7>$RS*alP)}pMHM|Bfrb8KB^beBk{H_~QHD)%StpegChq^#6|cJ_mvR&pZp@ z82Z0sCu#5(@Dlp(=lB1c2YcHDSNuH<{0Ru{+b6hBKuAzfP*_+8)I z4jj2~LiWUk|DUhlJ-|UBpaKFCdlG;igzz1N{Qd_}0QV`dCo#w#SO2>pP(FTveS$*5 zBBJ02nk4o(#Rui*6A<9%2S1Gg{}1pV6p%cjVY2U#&27Px0a6!YUgZm&x>Wy8+IINY zX-$v7SYZ*F!$*!DQ#zvzQ&GLB^@p~OuHK)fW|yyAHMg*{cevq*a&q?k%j=H!-FrSk z!6BhxkHXQ9pFDjQ_xJPol+?8JjLg?r*#(6~#U-U>G zfsxU%@d@gu$*Hg3=D*Vx=!=Y{l~p!pZGB^t%iE)CkIw&d{ePtEAV?RKpP!FkaE~qs zGz@(49po1{p|MZW#76LTz@d{DVuYkFy~?kDCwxlN_LsCr;IN3y>5E^LR`y8ykFx*o z2#fvyi?aWlu>XgyDPTVz1QZ_MLBJSTIhoJf#q_EEMCi{7B zyLDoD+Ts>DWC4gv3KEbr=MV$}56$4PVI`*pyab4|TV2FX=h&I@Ib}7Bp7?Fst2lR9 zCnma`g*aHTJ?&T5tj%!zMC znwqVByK@65IJklSvfFvKxb&C>aLx8xnnf6hBATj>7w2IVw7~etwaU@sZ zqFoC!8wgPgz;@JcbnAbHkQYAg2#ZDkimj$M_)5Yf^Rk zbq4|E&uipIazV%!`!9t5UmxTJ4COt9(s z4KT-`nh!F8H{L102f>M^`_&yor@zGNfP8)BeEznMOWhH7{p6M3fFaY5-|F07U&^-# zVa3f)Omk-3L#0O^MfbkHv-Mym!b3UG6s@twi`E089_PQQYNq-=k?qHI(Wkjoqquy_ zWVY(;*+8LFpT_RC+lz$uDW48vA|&IF#;Tkt6d`S(cEm5ne;iC{6&;lu1g;;OhtECQ zO;=^x2p=}c#XKs%B6k2d`%lt^-qK4tr&cNogUJq2kLb=cfzKjWR~r~`LTdb=+te`T>u z5D%}=Y|ip4>S(O5Z~q4Ri#%~w1BJP}`>@AM1WyOxj4fWBxXpgdM$4xy&a1tfHtJai znLQrc?l@OR5c=jmSod)DS#{CvD@*2O84_0vtwW~1A{`!~@*mv*^d0wq6M_&84ULb}@`eccTTX`l8G4LcLDq z22&KC0#{|j_%UX>t~U$$IE1S)fk?q_sqXfd-n84?A!xfqM~Hz4y39dD-`>skO^?_g ziC+}hEUSZc)E!CmQ_*4 zvxiM-F`gtzy==UiMr#n~BJGRq5dQ+4d9w1!+=@~{k(^7HMy6P2D$$ct z{lY>fe9ZPE+b}+>OT$U|7ruK4alLmR&$g#s{rbY=`K5wH0lD&wj8`aUr4GeqlMjX{ zUUoQPU+Uob(ZP%Hz=Ja?pNa_l1&KC@eRm6`-T<~EwnLE1Dt8Iu8IO6D;_v_d?jqm% zVfWBgeLKSZBaSCRQt*}w=ALDLFMm1jTdoR-)NXF{9>7~RV5->OI`C+>%$e+p(f~!- z?68cu&BLn%!3Vehebtp4{q&0O@Z8o9tFNOxyR1|8${vY9*P5T3b-2^@ub_dJ1E&)& z1&sYtJ$U5D&0XHb9PO+77J80u^<&{R01yn#V>!I{EYzl7&kXqIcFuy%w*C-*edPCl zqZ3L;s$gZ(5B2cmBC`+5=aOc!frh4YZATRhDHb({7erH8A8O(*H?U>(#RLGKd!ZLj z!fe>hRz95N!D-p4Ge z9{u!MeBkm`*`0gua%A| zJgZfQ>zGX0-m-tu0Go`(0v~z`q*v#Gc|&ss1q}qiFGIhi#-!R}9nfEb0eef>9i@Fg zd)Bv?P{T!$jSuz3V9>R+<1;XU*K5%B>nA4z#-x!gYpk^zk537A#}U28yL!eHw)Etp z&2odAj$gM0z=||Ja{a`S{r(4cZMs9UYaRW0HQrqt*5l`pY={xJV)p@IPwa%M^wnjikokVY)pPCQS<(O8n9=MF zQOM#iSB(xoau5NL8d0@jJJ0S&pwDrK5odNZ?@IQ>TaCWi%hCL+py3`}l zTJXbHDbK`tYIcD2z-672*{9_iqSD%PK3PK!a`&M*7nhfG$W~34E7>i&hFmagI8y}0 z9rNO;$I+4fpw`x`-au4E~!cM zY~a;#wdsI&{Xc@M&)%`ep5G!WGo8w=D2mac)jgMp8Ah$fF92VJX=vG{M)w1SC01+I z(-+-~%1N*p%x{3AMgA1vm)P?nq27c^RH!jdzxOV1*o0Qjr3@Goe<=)LFBWuI83%hm zd82c@>}()XdlhFp+oIdV*Hqj#e? zktPKhpWdvrd7BXQZ>9$1-Amx1UT!k;ro`s^$vB?boBFN%1H01ij=xS;zWeXdQ{5Bz z`{aq0S8C?gR|9x=u!d@KVb^jGG+!-RcfV|0>=J+1Z{O`~UBQa;#seKK*ABxNxG%9n zJ3hiR)L%|ElVQ1GvcCa5dk{d+PF-`%GO3vBfBd04%W*Wk@8+#TKEDz%Wk&iJRCd!K zi#o-959>E6wrIV!X5!TLUA~4swX>PY{p*7pKfc@j`0^XD z$bCd6c6R&*p3SWg#1f=lS6y6*%Gfbwu9@r{u;@}9{`6($!j6akFM{~%%+i)GqfgHt zYL|cW#Srwcn$M+p+f8b!f7se5?e4x=duXp^cDa>z zMj(h-rW7`RG|n?V!nmFmwcHty9eP<4A&Ce$g%QyE=75s*&Xref2}*6mMvQ#_QTBs8V>325LW`SQ$F{@U=W`JVz`J?ot?XdvOBikQSJAR&MIc3-l zA$~<1zOi6>hu@!%@6@*OvA-N+UcVYoaF-W8YCKZ$=Euv!?!BkNPOX+b!CpSt=FXRk zw%*s;A`s<8zH&N@Y1@mwAr0XjqSozeyrDsxr|&o6#w_Cm4WfA!?S~WVZX9^#4w>%` z`VCAF4zNRiOxlbNt>yomw5Oq7u>t-0T<>31u%DBE0ndnKm6l~E6f~a-Cg&v65yw9S zCIv$4e_pwG)KhdO;-`V5uIw^RRR&IYpj=OsKHs7r(1O+HOQs=?pSdjd$Hyy%{m~|y zqyJRtUFgC*`VAcWC*|P)pko+UzEQeUo;2|yP25%!KY{%tG4ZgH{mSrlRf|G^n2glq z-Ee9@4G0=L-)lK_p#7yr%;W7vJ{LX7tFz)miKE9B_Ag(689i;4wmpZi=y=BeFi=&6 zevNg!aYjJ-B82{^^cjaaBXZXkjqkCe((VTfmQG-$R1A@V1aJ?iXA@o=I=lE^xqD)N zo}K5*CkVbW_0EvzmIlNpr~C%gkxz#Ba+C6QR8L=W2$P*}vH)yYGovO;hHS(>-C_~c z7wZc|z7;Li#Qh?`)5Ab%erf;J=*)82EnADw^NN9&HI{Arp|#z%cOjb)4a#r84VPSx zWK(SKC4BhIwL@`}n>QV6C$MK;Bw04!SYA~9$Et<>ue51B(&}WD>AXAeeS;wU{c|Jf z&wuc0qoZ=55v6^!e{etF0P1rD$(U@1O&N7saVqs=LS%VE{2Lb*BntBtqxL?Bg`M8- z$+-3!a@wcWt$KC$*2GJFu_#-?uLv1Q4;xE${VUBrzFy55{9ey@?g?%c1tn$e+OGwB zzBxZ5evOSdr~)-fO|F%z=&`o4u{foeC>Cg(hmxs4hKj$(UKoG})`?s=!d|2EMn?l) zAr}lbJbeHBVNTci6b@-HXO8l0cb;BlrRaSRKu8FMx&QRb6El7vBb)Q-;^SHc_20m) zU)!oZcWn7o={xva0bm;-PqF*UiAyFuVz{fm#LYSns*XMb6DWhi*@z`dO;EWP^j z@Y`PoZ*^J3%^`u~p)Jo`I<9#dNEQV!`hB=B4-T0B1|k)HmG0!#Zv_4Dxms$vGn4aJ z>`D1|Yr(w7NpAvs`I3XKDMaq5njl1S6E|4M!1jj`EAc**DYKFgyU`8!ZN|l^u?;_;|_%--8}Le7<(1Fm(siTsKoce9*HKMG&H>36`G0g~qh3A1$(B zYfq$iE%HEPI(&}c_1wtgNaD-zg<{i}SA!lWLeWuwu9Vvm3gk^F8#&x;;OWN2kD;=v zF-fJ==C4>1lB-UUbJ@C~?w`!HL0`maj!JJO+*|8{LXH?Hxy zYk%J^CRgmo&x4$_LZ?S0g{Y^#sDNoLc$3qw?2Q z<2M&nINy{8O za!Ntz^ht%2C(fMJRzIV1QRT$R^ClV>b@h#mjFi+&&HpsGs%>bb|NA{4DkPvKI0S(l z1i%vE@&78-do{xUsSkqh|CK%k_x+v%g#P<0WY;Eu%ps$PtRV=1p46Oal$Yw1^K}~6 zM5zhRPGsTO+LT(O*NbX;0Ssa{ewbMEhYu=udk3R4p%w79g}bBImk`u-a|voq6#E&u zV_#A7i1&)U)7j=r8GYdDW~eu|2^vghbTvZ}t^y|jmH_tPw$ih3^2Af1tR4ZsaunC; zn=xp4_!xauvsA5v*QZ28%59IN~#TE>WOat(7vStB0;Ml>m1%?DpLiQyA`lZaoL`&$r{V~`1yJu1Fwu6 z@r}bsWfV&yb(oX(B^rzbhi|x_na<<1nztQ>5i46!1payi0Pxod9ooDcOdmsrGui|) zoE%^Wb%Pj_9<&;{O^$bowiLNFl=fyew6$eUZASkWCy=S?hS3e7sLA6pGbR~XBU&17 z4e~a0H;PdNa~=Qg)X`$mM6}1W9c7-^K3l_eYqpZ+_E^1b=UG&ls!yBFbn$Z_w=P|uZ#H_}p~GAAO{Wi! zsGqwQ7PPuSjIe-7S{eI&e8?F;qnv;4E!l84+TZ`W?~CQi$WUHXTpg&LaPUAOL;TB+ z?B2+>Nz?+PVL%CGjf_Nx!oii|BDG%(n)SD?eVxONmV~GqvO{xq z(QP*c)yl6;r>wAfYZkDwkL-1p=U~^{Be<9cZbq5nf)mUdKdSQzd+k=~GFBJ?G^F$Z zX0d{F-h`f#y5Xp7t*ca;REF*fW9plKaumAJG@C|EzVGT8WZLQyOmw+F*w5vVUyzh@ z@Rgb`N;4r{#it9F5S-`vmL6hYae~23n1)Zb)kQj2WF87iAdKbc8`{7Ta$3 zzDjNlV{hPGc+J;>Ee49H`g&~IBF?eUzW8tNK?c)4w}t2OdF&1C$6NZ~JTJ4UogKuA ziW`yuz(XZ|K+$Ad!6-2p-YBOVT!=U142f835M6&>q)jKI#)>FNxz@$mU~kk|4$-_& zk4DYB=J(mtHav()mEVopWZ3EF{y}kJB!ihW(Yy{8{I>x?5*`lV5N! z+2dbHrB?YI@Z1EnZUmrsYE#RCKC10B)ISkKuW9nKZ!}OZs4q67k0!e`<^2sVxf#|! z<{8-@z@qr3WfR?8gJ|ft8J;ffGb5gn&DtL(<{gcYpF>QaMb37mU;4P&&QmH$G9rak zM(!ewZ zw}#A5Xyx4qp#=IHYPQfvGu;g9hp2}2G<2;|$NESs=T96hF!U?+=ucwm==jwvHkx-% zRQ8VHMW2?fv*r^Pu$Aze$QHE-@)+NOnlCG zT^2h+PpT-liAowR_r=#VRlE6pS_$A880xL<*ee2nv~AxBccpX)T=~}>Jx{L$QjK$V z3Y%ephdbgX{l*b%u8rQq+ti>CmMrl z(0Ll)8Pjo5naP)vB7&y%Xyd(@z>KdoVI_JUjiY$&c3+sXSe{upI&_}d>^x4__nUPw zJWS~mkY_v=SR3?pn@NV`=Gbh$8 z%RGvR(7p*S+#Jqr*g4sNsFgkTlyne2&Tz#}E*`-s@E#mbI3GchW9HHyc_1M8r zvzVk0%gcB7|5_fZv>U|dhk!aY!IV{7+t5Q``Ri@>2!_HBZOR2MxloN-M|^RqfxVgG zI-#F(TRF^ox?nuuSp-tuvfkexM(h^9VwCEF2C+6`K75A$eR;9zFABcdg_(>rZ{e&+>({sgW(jh&I3~Ob5GZqjz>9a^)$w4>8E801V14ja@)2?27n6w zI+j4H@^MP)Xd9q+_zc3ob`_9tE*n#mXZ7c)xTd_4kc|2fAKy$jIc_MK%Sw(mF3fa` zLe3^2ay6D(TUv9vqS`x{$F+j;7F^l1rIyvLFb8FPt(ik=W(7sOeYDDRsEwEt!CdQ< zhy^4F0K85>u?~35-m1Fav2mPS5=ML*Om11%MNSm&U!`}oDH}D~fsD?)zZk>>6s$yHRf+z9q!YsZGxAFpTYzcUx#^DAHY$MrGgrGB zgnG1AwW}{a;g%%`%sF$PI4AjK07)z$DkEiKp(wn4K+{hf=^D_K%k#AF&!0;iDxB)nb^Y zuxg(`))(q9&L|I!i8j3?v=iGvq)$H$K5Di&%&7Y(np2%Ko7F_#+17__f*TW;qAM+#5Y06!dY<1Yjj zbi*iBCvyZK`EplK&pWcs4mTg(vF7}cF;rw-CtyL5=g#BWhjW98PBpIofoHiv=6J&Z zaLHgtn^;dY%E`&9a{WLYleVX$Kj4-9Emj#*OH8DEd&NrI8gKS>tKwb*OT9Hg2>=dm z^T}yezF1w-<@8roQVh#r@u+lLV$N`(Z0j1M+*@rsf*#2WSSD4iQryM>izi>(!6;|V zJ1(jb*F+8_id#F_r7x8jw0U1Cf9R_MNU`1)V7To`7 zPHnOVjAD^S@z4PaIHb4K?C3nH^rmm-wcwl=-h+6zF*sZid5rnO@_Ds)I>*JwUq1Re z?B;pKgYsngPS>VRSF%xM@JhQcW9y{}5RZkDL}8$JRfPlio}*JAgZsZz)f%e4QiElr zr7W!jL#50~8Erpn%xaB|@4S)9fE;?kcnStXFWe$A`ayF!BgLv8kxdWEdk3l0olHOZ zJfAuFrl{sOPZTBU-NBv513;ZB3NSX#eulQx7(JdcUzq#D8f3Jf0a{8`X?|dham8rz zD{*qDShB}-9^LSInfO+#_bm>CR>ltpREt!3*WZ{pv+ZBpm1Ok7XYP-XX+}hW5JCu$ z0W&p$SQ1Q0F&dK5*ioZrnN?m8z_Jjqgh6of+1B|-zUqgRKjQ9SRELx#lGHjP0vE|Y z&m|c>PtqRFH>>h&y)m}HG02U2+q%K1m?ysNN*;Qmh_D2uYKw)qtHKFF;*=(>XT?t# zN7@1y75QEkz#+=wcv_nEwH1n6v%Hm~4@@aW%&r<~7!;C2sl^Y`+TV3CRm@341*4gT zxvWQzqT*^x)*b~;?3Q*(AYz@Y!S*LW;AAl%;l$k`1%8{X^7-R6F)#sc4e^XaX21)u zMf1I-##TN~h?BjU#-@cj%!F{3OmO(l;Y@X8MV!K=a-`hhqUF)P?`u2qnfT*#pE)m| z)MfCi03sPqh&p&tUB0T5m!&wxub33bo(%s5R`;#I1`PlS?W7Hz$I-)YV6qyFPI+e<5O^G62L&2@sV^1Ja-h zJ$Fb|GoQU(+LFSTEr5E2CUMw7#z9JmPGc@o_HQf`1pYMgzfK?3KW(u4JRzjF7FABf zmwJm|S3$aN`pdDdBi*`kqi%Ms?HE7GkWhr$*V&80(x82503i9CyXG?9v60uxLF%VQ zR7i`$KyDA!<=?+~F!{`m-nCWwbf+~xJ1l#CTJB6k!@QxG9!sQA-mi0$cfZM!RC0fD z@!qIm({Oiniy|TeK-f2sU;uOgv{Ea|Pc26riBuCzLmwGnflE5+u*#ggq|Kh=;cGr) zNEdYIXZtdC2qWjkDl?Ccm>sIE(e>y6|usX;MRZu zm=gkkC6_kVGEv{<>NFDYv!OpIXEewbt2^I%AJtG+=1rkcD=H5X(^(^rDV?hf?eH~E zm$oY1AkGva71zofy@&EoHmAC_+LiD~wT%-e;1Y^}WU&$ex87@-6Q{7R2hE0rbNXk{ ze)cvR8O;T;;XA4*Co`EtapG1tE#Y_S--rIt^?qAlW9W#QdDn+NIU^44Ir}4*zDO3^c zy^{e5U@%1hwzYxizEHo%C~b%fOw^e!plIAc0wrO^EjF3 z`nBzn(G~(0qQZ2}WKd$$$h4Ql>s6lKG-A-+>5eW>_1X%3y3{n_XCQIUVKxmpRGD`* z;^k*4e;!%JHGk$PJ`s`xlkx;rYilJeP=_k2zjT;As{gcur-7>wc$x+cU<~aGCv~M2 zrIKoq@u<`r2rJ`?zmW#$u&LEs#tj*1L3t_`ft-iawNa6+!K@#_RQw`FN8(AH1V}xq zVE}|VCy!#uSLWPZZOtZnwXFW#Gzg*`XY|UwjC?9$1ZmKDvv^;y5SYvd#yXK+EKg9B zYi*}0vS^bQPNcVggtW32J^L8ryjwPs1yHDyJ2-7V91g(CO&hS{6rX=``fI|&V4^B8 z)K_XKP@LhJ)toarYFp;*07dFE5&T5iki7M`8L5Md`Czz{P(JF|^dRZyZ@}l0Jp#M8 zNoj%j*!O+0SpIx2xhCFhVKM*q)q-9F%rQhmTAH_fm@DT^!w14+*&V5P>3s&DnA620 z)do9d6+yFdTKamvK{eW=(RZKQ044(I03Zri5tYJ9Sx92}*fR@iP4{}6z)GJ}Z%vOX zw$Y#k{WCy~=Rl58bMtqAiOT45F_D|?8zWORw24D*Fuk*xS~bQbb=A&{{VgN}g*Ox< zpnaAyPPe_VV73n^;8EtUn+;?8RPBq?aq=%tJ~u;I;+5Sds`^j4K1df7%M$?VD9PjP znnb+S6$gs?CF%QL84D9lRKuztv;LnM2O(hoE&)pb*#`zLaIm<=$EKwnN>5p0+IU_i zAf1<-Y@ebIQ7Ge;7FUeCua9`+^F30qIJdltRQ%EDW`*kwXzuWuXI2+3`Z`Lf!V+h& z^G9_&Mc%GE!iRe9x~sq4_}L=wpXgT-LXsrF%tB~yHW|=?K%O4sDf?5 zpaKG-V9p5#ws`~lG$&$AG_%s%sA_NHrJPJDsolO_DloWrTzH}yPsJ36+_~tGe&dvE zIA@uf98PA|hErX&-*Y%SWwHDa86fSy%5Ggb0sz$M#e5lU00HW)+h0BL#>PuVJ}RnH z1yLt%>?%ZmI%jDcKq;tJK{RL*Gup$JLlUSrTbPfcuMfkqmS9;H$PnFQS$rBGfK|X- zi^;u_hN0l~U~M?)b=&y3l=*koOa)-!iGKvq{75yYtuZVLhLmzQs)EStYa5L2Gp^Ca z%R(k_00Fg85d~op`o0e|I0$#eLr0nNI&y)S!ZSK=RkqA@B-(Pln}*8 z9+z%WP$o=icXV_j2jQ)TSS-$`Cw1w71OPHjAhriYSQN;u?{BBQ)y4#XhF%Jz&b}d4 zhwPAqOBs@k4a$20Cx97@bA`=aVdAJ(ST(C;na1quMk``7fJ;39f4vt1B_jfcWHN9W zC+@E-Q;Ow-f&qBFr@>Y{^p!{8R|ez80B~q{!7>a!tvkaY@b5oPeiGHB z&v`k(iqr2X->d8lW>B5K&Xw%e{ENV1_dJp%%;M7f6f6MCaJqd9mnPfPl%}aE@^*24 z?rQlB`w>YnUpfab=!wf2H8;Njf6eACR;ZY%J>ng9#As6^Xc0^X+J;{O3Zz-W!A^4_ zRVRdn42Z`34HOE^@@%p*!O7fHH-)`8-bSd93}T}*jlMaJr!{fLAq8t zx@uEP=<3K${N+phP<|Ak2zoMG8!&iy-zQlt%w6%w)%$5JqRKx%yKu+E(a}Ejnc+>D z0U%ks1PjoJ;}+HxB6NMV8eTB7vUj}ZH*f<4L~xQl5aTC6Jf08$V?&W7!#5BUca5Yk zd>71BSLQJ1;>%4mC_^9$ha1YlZJ*|QKn^=~Jg#bzkpy)xFg9@1e znw#aCV`6G7@NN=c>48rs{Y z+1SP9`!$W0y0x*<%~Yn31Olssm3-$89JHtg zX7B@8$%0}mU;ze+u`nf21|(RLy*5N4%|- zF*4mu>eXxSk+$|Zw@!bB8$8VQcOZuq0SE{gl6?>mW#I&iIQsLFKOQbuNUL~R$VYLc zrP4INbAk^lJrSn-<*fRg*di6gc+l*8dt|zk!<>#Zl+#0Zu1faAz(I46902#E1lANp z(pBw2A8l+vo_FCP!Bd_Bl9a(NR>r<^pFvl(wTxuZ{45qFt2KG4CLDdTS_iEJnrLSm zd(JPDX)7TC1*3K-ybk2E1VO+IfZA}!)wI3k^8kW~vbbqcMVduYRJ2D13NGeID8Hl@ z+0`iuo1ZE#Oup&Y)YaMU=2qPqwfQ#`NC&WhkUcmJ0J%y4wWqaQD=9UJ7vm+8mL&J1 z+{{cVHyr&2sB@xoZVDrkoH%=Mu~b3UYYOSgi(n=4A#6hDAy=z$7=GYNp5Z-6+N)-oGRi%^oWhUjb**yfvtH_bkc@k$Bgpaf2OCRZe= z=x(IF4Qg+81|^oo;kK>wc5XufFuVX2G6mE~0B8Ww8Hfrhn$Y&vois583q)Vi%5VS0 z4*m&oS2hd=3cTao(g+}P?$3jE!KwudeeAbenCD;_4=x0eLIA?xED$en5)za2D6;g`O*Y*UzU3| z3IY#c50-NP8HKzW?HoVd4H;NHBDWo^pdD6MF7*|G9|VKROC;gG*?4f5bg>P`n{&vS zwdtzauKuqOP!F;Ewg5le9s~c!fA(kq-VY#%Bj&`u#?(5vn>dM7Ldt8E|Aizn&L3aQGhrV+!B0#Q|Ik}^v!V#%) zMfHffvcR801bgs=U=dzcexB*>WJ*+U5b#W5R+p%)g;XooIx!dfH%5P4Rm1|=bU>)# zB}CN*)J9ut&|XO@Du>w*kL9-iRJCzOHD(4#*$dH$V+yKR!IR<+x)b!Kyp+m8*8Eu*4Xp*pb2WeNH)QGnl`006e&TP8ay z%lCLc>%dw(P#|XX904G8S>;{=8CT>vklc^+-4^*eJQ3N5X|n(LoK9yavQgcC1oUCT zS3${H0sxpD1EOH+4e)p8EzI~IuhA}sVo?FCs|`;xlw~*G2&A8;PxX;Kn#+4@mL6wb zmkMBpx6kezU*&ADIcS4U?d1&#tRfT+8XTDQq^sIm1E`{M6Bw{P?|8hQ9WoG#YQQ%9 zL;GxMEs7HxvsOihs4{P4fG1G}&q=K|x{eW4L&Kx&;5BNSXGy1mg(4PI2T-&20zeS> z_b^u>?@WD*uk2QA%G20DmbI;vGT!y6nP!%{(bijQ_NWA2Nuvhd7&fDd<-}oS1k7?ad^0PKZvBfum|^)r zM=P;cS^)@Ptx23*-*SdYnKnTv9m@2v5YF1Sy@OUNvQ9w@TZ`#(Eb@spI?S#ljNAoQ z2aCS5KMZp?XLOD-nmN5JB>7Gi)G$z>32+e6Wk4eW6mnQvK^;rK=FC6`oZH6GJY8Q| zhx40OkrKn`#X`f|gQc?ApVymo*G3J!AF$cJ!=pwN$4u&6vJv<^1_yL~l0E$3Ni_)V zu{~hSL_k5`dBu3Lt492_k;vkwK&o2Axwi@MqE+5S{-G=C$XI?W^_s_ES>i|W>*b_u zVqv8A_x1jrnVrp?*+@4^Q<)-|Z7c4fj@2S+2n6{-vauI z#u+J2`!l&>7@|SyRE7sLNG+vC*%J>~loErT_S(v~8=ZGHBX+EOgcLzF5rV+W;D8c8 z^gR}kK{dpRlkblaC~6~!w^MwFJz%g@FeEfBlI^sJk9|1%X<@mDK6yi9POSCwtif(x z&@#r@GOje$rDg64b?LdgqU1~dvOQ-n`5d8?20%$NHmcT^+>xs<-7tPnEd-uhmQS#I_U;1kCeP3wVEgWU?uHnADw4R z1pH+DV59X|$*Ggc;?2}GYfA{IG+_Cup$BwI7N8fv0{A=`CsSI@b02FkE^>!hQ^d_+ zX|fSZ#fM&zF!xk4OqH5ukIjfO>>LpT>Bry>nMRGS85*sMq1$^UUzS964KQgLECx4F!8gsA!`2iJvOV=6&0tAlxt+nFs5t8^0caaZ6CGsFbdW&d!P>f$beo3kctN} z!B`jcOmd6XC?{`u8WuvyEEpok=!TJxjaB4^Or+%U?mCew3w4%pIW+ZZ(iF9n$l!p_ zphO$xMsU3qFjVRYKd9SvU~VD|9+U2wGH5QjRfH?@ZK7I$m@5|0WwR_&A6{FXs|Sw1#FkKZP_80Nl1WTDoFr9l!p=s;H2B% zZM;(R7Dd2Zn^c0e5T?j6t}T*Jl{_6RG>S$(H^(*PuFUBz&QrBZba@f10~^#vdPGOm zZd7s>Yd(ys&8owu~YtDIggQrGpAEL2IO~Q?)C7R-NenhGwN`G8QW&ky^lhh1Q@VEj zZ|H^VV))|DaW=Nl2&^ImL?o!SL__hOuGU{Q)~!d>6VbLY=AN0(!iZdUtDZxeveB)$c&^s=^1X#Uwz_Ph%J|&mgbaZ%s=p|dS9>dH#6C<3$3X4;Bynf5L zh^aY^zojtD=3(6YMx&yPuN=$kie&FR*v8wTd@)^_1cZ{JushUtZ)zEPm<8yw6W}Sw zhH;p?FcgaR3F?&inH^#yr4e>JFXbVtm|SuOEOELn$E8kpI_8X)pgq>-r<*e;r?quG z$E%nbEy2Gq3Wu9Xe^C#to?Vx*HBiw3s>tO^@P9PJplkN zkp#@rKr{w{1Y&b7=m!j1)bEG};?4zEO1`9jI#Zl%e8uwiiw9Ta$>AJb-nfBL&5Mw^ z%(&rpusfnw{T68>V6nH^fElGwNp!uXw!vX8M0{^H)MaXpP7g1#THO(#W0H*73x$As zcZJ*-FU7Aj)_gj0i1&I9ca5-+D&vSQo+h&N( z^E(DyeWyJCcR$96(Ru5UZJpa)HS))M8T6Vk?IeuuFOF{$W3D-Bg1>GrhzHwR%raDD z;M?B;c!%CFf_&K9C=DWbF1SETg8s?Ot6RGuUAFycZX>n8g;zN^O<82c6V-OB4SoZc zx!cB;-!by8y3ELCN)?N3)GTT!AB_wneJA6u*o}T?q^(9Y4Qe&}bw-3R%PfJkr&v&l zWl)5JUJ2YD0lxIl@z-b}KDwbY5HaT^;j3ATMWhn$$})mB1$wrMdc$z`I@m)s+ig5Y zoD5uJ8Y>$mr7Q)m2Ze9>_j1C0&<3-wsg!m4yJYXiLB;~*T-b>BA$)0QGe)lSI0Dpa zhb4$%K&gcso%=X}FjV)+3TMRa4 znjPU{NDYeX+3L_+SYwAy_(gW^xX{)%cU;!GvpB7c-a)*7q~3OSVdaU$kPj2wskzc- zzt15cY&p40SwO(2KR?OURCZr7Hk_{)aRxpjrLqfb8MFmz>G zcxR^a+SVD=+Up1~RUv>9-2Ngel8(~@SCcvN83mDL*?=+RA_bW;Q<~FhqZ_I$zeU#* z`MNk>nlrT;@g|%XAv2fE*<9rW%_%s_XXQmISh?L>>d+5lP`~dS$)<|CX_DlPuhd2) zsAo>5|?Jny3Hgsx6?WE-RUhYVm}R|ag)#vCP~HIgRa zPF^OO!#3{9+BP;${TK(QnddZ)!=X$!$JR%j3VPMXP4DE|!lq^ew@LpGypASnpI#-Z z6<773R=G5__EsvVfy^?#g)buB(rz=DePCr374`ZF-gumHV}>(dDZ4R>TP-P=zY)4j z?fTgiQfZE`F!5fXJv)WAd_k65jwL~k{7~det#}ob!9}M_A7%3(K?5O6vgpynk)01uOqU^MrKnT15|Rx#qx(I2uu{~?y-{}n{^6;z2Rd&mq3^H#Ti8;*&(m0vix zbd8K&u10-jP##Bh8Ack-w0VzyUAyBe?{DSut21ai85t37l&w}3-g$(+NDt`yKIfN* zVo-+Z%oH(9>tg1kZ%eI%jI%{CL0XQcIKPO-FH193*{zLE{stHsur?pKd|wIMuYX3Z zOqX}@xt~j^^;fD(dpT%I?M|d&N751%KRm_lJO=hi*yT+$bsw(PrGMiLa_FOm{zfw) z-I`Uiui3$jVRCp^F~H`KoANZe#VgYqF?pKt=}BGwmPZ#qw$qDSdmVGG`&E(k_-~Sf zcl{Qc5-!mS<6H-X>@_-}ki?L_$#c(>%}x*N>K&oa&?ouFLu_Oh|?e*d|3`(C@InZ#Z5<8mtk+YOm2t zWO-VL9FMtZYpONYG~#Y3pY!`XrSlumAM!R2YK3)tM*LqaePviw-S_s;-JK!|(lx@+ zCE!Ch0y7}pAt^20rAT*o4<#WDQbTvw5Yiwa=zIMA-?`3wn>oAIy4Ss8?~O|1UYCp} z?&FU0CbytRbMR#3hW_`+E4t}9Yl#cQjKig`m(R)gcd)QzFEyM zEy@--E=P6id?iBu$E~_g&R)>KUc3{8iYdBe5;}%l4=pmEY#51$_QF-#Sxp=}u3LY}Pe@6hW zta88j&ExAf?_-`@nEXx6ucI9Z>X-Ojo*~!1z_(V43{=e-WS@<{PEo}v=WdMf0Wl#L zaja-RT%&67ucwNF2knb-5N%e1wNj20!W#3@I07gA#kR8kOIDi?ftbyhKAEs0f?;aK23rvN6jd2*bJl@S8H!4BS9BLimL!EsB?d!bq@m2A9>UiMzfM^?VKmX0K zvUi%4z!g+Xf1C-n{ zoBIHq3p7$DZMoXtrl2l`pA<_ndXr{6ruiJ%&jI%LL{Tp?~lYowD%LGK?2d# zp5%U~M;@>kSSQU87jH<|6D;vkytFSl zbLQ30x~cKn_ymDtt5F|cj9snwiLtsv_eWe z_tiYd{^`ZFOLKqw<-;r3{?deqkD}<2nfu;G9_diR)PBALv%wS|x{QVrpP^^(IIEC` z>1MwsT%oLOUIw#6$}Dk%jwy|!T`tvOvaTmGKov$sxZ9LUWYcI(WA>uTFWoG$HV+_l zeW;x)B@dLByWfb|tn{5u_ivr3OF?qi#;7DGAfoo;3!=!f6xc^a#OIGQ<0qC}+1?&K zf`a@tUGLwBnj4A0Q(>ni?t_niMs#St(^!@G{5QoS$kOG1Y=RO~N1Sygr{+6vXN0Qi z*6h@cTwW2rp3Cyb;y#hP^nq7e>>`ggBvied4&X_t^)y3>YcZ8$1`%Jc8i?N$4=01j z5zMmy|LXFl(O>jPaVGoP3c z1w7WhAMV@-)-HdIT+Jekp$J13qE`iW<~eppzgB-#A-&rBkE4p5b75nr=6b64PZ>>? ziWkBA?h_5ORfh-(LE+m<5D<$aw$6Pg*3R-}jteYu%Y`MSg3M`BWAMJ!7|NZKr}vlJ z>HA)qkh)}-^U3OS!YjkWY?l$=($}5h{^t#xV&ey>9n15A<=oa04xC~OP`{iwV>74A zYwvHW+d5U(dnaXFh+#4{fBosk@~BSj2qO?$sv$aAf{I70lO`#9m+xMuKBnk|e_8q7 z^-+cR+KqHlUA*|!N|Tn$FCFu~QzX~yvG_{H@dEhA0dfYF=VMO2#cGZ4VSLs#$^2SU zt~fGP`QyhH3id9 zZcY8i7*4nkF8^fGWx-V0%O zu)Bdp^u+y5Ir6kj&-=E5jKOWRGa_|XL*#BkUuWbaieE7})VZD%MDPrHd)Ck%p^VO$+Ic-0aUqeOLzOapxsF%s z93EFUt>iT4-M*qeDH?yDvlhH5^^ zVz7OCpmM%*aORj}TxhT%nVJG5UDc%;!D4MQDfI2e8LE_b{;;H4QKPF9x(S~jRvc$J zhh6VV31_HaXDTfS*wbr+^X+l|%ubB2=vy1oOs116))l3aWuM*L4dMS%;!0T&tht!o4>~F_DA2b*pHqdEvhm)+9$l_52tpnO*=U38QOk< zSMWq0#Erv6OKKUb&O~N%_1uS)_kJBkT>V zT*whUNMZGXDYI5JN^s-}yUz&!1RUO`{}4nfJ2UbkAE#(l?){h1A_`&~S#x^_ z`<2<=ogLrYoCPv>4lp=VdG#6*I3x)HSMh17Fo@T$fy0qQU`vrqwy{6`1FwXS%^zQ| z52eTr1`2qzE07pjWn7>ya`QC=A_lLTRx>K)IpT0zD~{@`Rpih4>UK>fN^e~*pYus6 zp8kmk_O9z{bY^5pR2|Yzlg*!#By@EhL!pjU&%o*dzZ}&YSUcRlapp;%$bv5rsWYaz z_aDZT@7@0V1nEQ_bgI(HpE%3<2?`gv&8K`N*{~0VWS!(CbGVszYU*c$+>q;^e@tJV z<#US%bWSHFtZTUU4lb?_!>iT2 zuO5Ud3G6>ouO3FISQ`wzOFe)}<#GqQ9g*`xoVLOkN7zD93Q>chiCX@W6P?0R+ zk#BM3BgmGNofCsmb?@IiYb+te*>m(pv#rnXxJ6k!;MAq+Sc1MC2#siQAh4!)N_<^r z5eCSUAw4~zA!Et&@~j;&;(&5&#iQ%p>?bK1OMdr;(X7)5hHD%x*TXg$>_!H@`HwLb z4aMwWVCTcJu82pTn&=U6Qbs|{^k1ZDDjd(CIAY@e|wj(R8iC+wp?{5(Z;2_bF^Q*va>Fb?R%yoi0Fi} z!&-esmU2FOp8m z7?P)q7$E1zkkza{BRI&DN<1tH2Wz~!{a-dk6Jmxf5kzW`@#^if2v1#SB5j``9=|Uh zhlquDN`**&dSn0lm7(U3dnf7ft0y~CwUC(t)K{7F82@E;bbXHp=_41&ikU+)i&d!_-@)4Ce*K8>`T|NWZFy2}i$%Q62#&XW#l{{C5OSc8Fh%RUQg z5?L`hs>^BC%{L{W$`4T@3IzsOKbmWq0<*4_%)qrq9G0Qwz?-=m$4^|#vd2se^>$un$S_lZJF{+0QP3=5*=IMwB zERooe0wfU|LowUDj2w%5%mWVO;*wH*We36<>3!K~_GSvI>ibH5qSr{+Em^t^)l`Zn z<(Aqz-2Yjbm`H0Zj4%w_$ek)=Xj>{-|D;=tCt^Jp?{_se9&dD0lQElSpX1|Gjarx@ zLHa|6$l1(H2B4a+%1C8%6i7waxr`?JD6x79~$c12z9)k4uFQAem9 z)r^$c2)#Uuqf_uuxP}zt=SU}0ydUN`$ajzBt{z@X)BB{103hI~P@3CGgG3}ax>u$z zB)9jDukIMMPPE{?1=!S)e9LiOK5lc4B-oK}FtV`VblYBQM zlT@HN9cxbZe!tB|7sih@qP~%5Js7gM z4cTS+F3BnBlYl2xJnIz|`=FYN4nR=I{lg9E$cqH1o_@SUCpouwC;7XWrsI@j@p?p2 z`-c1k|3)c+T1H2+kDuhCrY>UW`kGi#JfITviv2hc;P$H|q>?D$Z>U8GS)i612!ki1 zj)MAEGbS#on?Rd~vSFxMZ61fxG|2g|81b%?IjXEfCBMHQa|rA~ae=-w1(~9C1?&T= zve)NXR}NSYS9-lLU4%hWpctT^k4RI)R1H zH%b>Ox`@n5BAc$dQe|H1WVQJynndLo&(<+{`-??sd;$&v;QQYZr>Gcc7$DSthlT>_ zFH{g32`TY&GA3p|eslq8@)uwklb5ou-)MZ0!}$NF1E64_&QDK2kYW9y(dS_~%NIqd zk+vD^QN12s=Zo3wZk{3bzC=^7mv*A-HKwkRNpt2~hbA$-MtG->;5SB>?7}#9u!n&! zmTH?Kob}?Jf`bW!CguwzTH=_68XsNcu@^z)R4V&}?jU)asaHWaODs2q;|B8-VD0u|McH29?UbV^Gq-8*nC2F>5q(%y3o)ZQ(KoMNGx2ifDybAD71#n@w=be58-&F}0t^$K3b zs88ES*-^QTb;R82VA-O=ZJuPqg!;QurJteEZ-U1r}!XHc9#aSrz}&<45#yC3fOl?=g%o0BE9vX@iwHj2|L zsvxa>3>VWZj{FN+ZfYAjp!*9#&n9=pfP@;OIC78r9_GXjZbL%5f*h=vuO_;zBWWKv zS9?;l$-ee^M|R~0y(6o_M?rMJ0{TORd+=Y-sbvQr z!#y{D4wG}1TC~UyIOc<8hyAJ-^CmaE|9u)CDqK8Rmh_Bi~ycB&|q=+u9qL?kiKK@$K^m1s2uo&XO~%KC8%- zsc+QIOWZaUQ22%``#=O(h@XtnFkab&~HebqohnfU}BP)RDZP(Q(o%f zmrqW5!B3Ua96O1Z40Y}7R^FM*H2&eMyi9<$mR^soh)??Xh!r<5tD za!|Z5+G%1ARA|G{U_o5-pj{SaL!$8UuW~Ki@{tSlRf}P&zr|*s%SLGmC^^Ou7+qke z?3HV*=gJ1zRdkZuemYHiJyf6a7-mWtIJ&W&R1l}X%-)r`N8=1?4upOsc1I|%Zu7D7 zbf2QGC=<#$VqU}rH}(7~-lF5!_Uq1bwIGbXeYyOCGR{{U{VlAZhAGdHi?>p6lPa3K zkbg82L>LH__e(!TH6ANUE4Puqwi?735gib^laC=+@kXo!C^(qCviAuE6&hB?OgVf3 zhyAa6!6eceUZ1|{_FCgFB;TW{k9MMO0?w)w@&OwI6V~=79ErM` zil)-TwHOK^$)u)y_%>kwaqMNAZogZ@E_+jx6WFn&rIyip~JM* zm(nChr&*l%7qszmLmHB@$0rmEVHCkVpf!HFbO#zk>53k_`1(bh#0vvnw@2VF0Ex$c z|F4@Vpd-Uc1)*ps+F#0jt-8%Y(!0Yn+nlgJNt|`9@`Dr|nz2Hn7FaI?w`(*A(7sIR zhLAMWh<91S6<9KU$(a2393(xLNnKfD&Q0S;(q7c7oDB2T)#J3FsV0H^JktmychgZ} zOnArr7A|8WMZ<)v6Xm=WVl#@ltnZq#kyv#haGDKAeFPA~2>{LqK(=^6bwQ59o;jvL zH72jvbdqq_aqLHJu=!3XYNh^Dlq%N3*QrmTMg1S9x<$$=eM`dZo@tjg7u>GitFF#x zl9q{I9Doo~_iTIbabX6Xj(I9C10ZTgj#gZVuhjJ0+O{3&V)*qMRa2)H7Z$jgxmc>@ zaD771CnZ|g?Wy~#O?1c|7o7RRy}4yFQ`$KX^E~D%dGdAVZ@G08Z%5vIp`eDz_4Al+ z?h+*sVH)hUa*) zo>w%zM=Dkwx*hN*&Rx}?fsuV|m62CJe6PsSNA1RKVjOAW6@DoXYC&ar2xiN_TV$#p zQ9ub-1WWPk9G4!8KtP9|voBL0X;ll2zvyCO$$RFsgiAj9Y*TuAdE*TnOXcIfB$|!P zcXoqq%%5al7<)~YZD=+i`Wz<6WPOK;il&MDCe+qZ+(tFe0gmsCo7vkkGm#g9Q>Qob z4BK#5UKSr0i^)EzPJx^Dm$bw2S4|Tg1|0am4x?#+QsE@I)DV0+Zi!_JEU@t~_EZkX z3N+>mI_9Rt(sH*~Y)kNFNPw#&q--RQaOJh!kWwW{1O3L=K+yh2KvYeWrwBhd!a@>%VSpnR(&Wdm;Z%GP{~PIK@@k6g#dkSMSfL$*B7AoHS%6B`<3K z{URs@EwKr1Zd0;VYk}Dh<5-dAF7Dxz7?T|+c#hs3&Gncr9YD<(uR2q`6S_Kl=-%qLP`EKBsX;)89yrD>>D55ObI!V^r^d z{GJ$OIyOemtbb%FzcrhG`=SU+>t23Q8uUm)Y-?J5{jz6g4DUPZ8->=ub&?NxaolB) z`Gqj+NIC^k6h~#cULJC>tFz@h;A=f_VUlaxP!yd@paN(!Wmeo#hukzL>oIL7Op$ zem7`(Gp&hdXh5LR6=5z3QhXf>O8gO#cSO` zub`mVU$0C;)0QY-Sir2%n0Yam0hn+Fn}YVbE@z|iiWu)HjJ>K-K%nGwa^`uR$i;Aj9nHu^Erqm^a2IbO2Dcg?L%>lFe}s& z=HU@NKb1*b0Sj{45jsk{np0H0B=ac(6{e>#$w78Kap6z9C=#z!bqjXmzK3&uXA^~m zV0WOdM%WNs*LN^K7Pnk6UibkLz4{f<(|cLxABi1S%tYugwjpK0H+2O5N?lD5$GxqL)rcsi_CALi&s%Jl- zj9sNH@w25)JCjEP4_}&f8Iu5fWF86KZhQY$S^5`ydDORrElW5uhC>iA~m`@|p zdH9sX(Z&aR9dri0i#c#&TJ;7&QzfX4iAd+?&+iEQ`5>WaBPwf=(+gql1mc%XKT~H2 z?geNmMHHx_xx~A-`r5~R)lwM#rTdAI2V#)uakHc ztcEV5dHJzJW;46FN9}tvumU&IGy0urciBYEu%0iY`J>VGmYi4LkX_U6bCQ~9;ddLu zY>WpJKz=o zB}Hl{{%G`F^2AO15)?}dHm7h6bAl-74SO2IO}Q}S4oib{Rl;!7T^liU-UKL^#4LOc zHTHO2s>1Z=*MS$q#w*lQw`?<}>|gJD(XsIotq zpsti~%!{ao)nFb9M|?a-p$>$XGG-W$sfIfjX6!H97;9AhUPqh`xswKY|LeLLCS^Kw zhr&J6ZL-h0@C)&=hqUc7MRXwt9ts!gm~6CQgNxAXd^4`qx3Ij$f1RES>t>-A{EZLr z^}@zZS&(M2ZvTvnrn?m`g`#+DkFMyEckt0sLmUrq3LP;(-e(x@1?vBq!8ZUm1vz7P zwa`*R=3+Hh+4F1&?q&5y?Fg;`xc(x?f&Zj@K)df@$#;|%(JmeVowt``6bwr!m*G?Yd(dFb!Lpn(^ZwV^eBtoCYYNu&Iquq-sd{*O=0JTH`pJl~3nZIMK2j_oml z5dIg^$NILv-5aDhPJU`ysrJ~x&Ucl zN5gB=SZ>^*a7DV0yx8`psR2qnod$F`E)7L7$u|Or+j3-k6n^R*^eANs_~_i(KN@r} zGEvSl@cf&}sVHJ<`Ay1Q)*jWHj?1_4Pqnz}#QcF9nG!qf9n9y1D!17NDm)&qs0sSM zFt1Ov$y4H^1e2m;Zmm#5i2qG#02#}sS;Irh2-}b*9*X!sL6G_{tvA0kk{b-F?`I#z zZ}8wQ6ykr!Gg`a{8Pc;)hP}1;GN8k@?-*2KtWg;?n^;(m*o~Q^)GB~~Ph_2>8wFMx z2Iu_#+@8Ak+$+#db(r!l>{TRn_rh-TIlwvydw8r5xMS-k6JH%JMiTVJ3{YbHqrM^k z9HazSVqzNCKz$q4d`RSX;_AJ0Z2Mj}jy!CE@vvT=7bITXc!6p?)O98Uk*&J@W&%QJ z*EQ6G4rbNAJxDJzmnmOXgfV`M^f~wvY(`Z^-^jf6j>gmtj!u&cg`sx_XDzwr=7C}t2Vm_@pphh$ z<(F&ZOi0av-P$+oZ)Y*7FLv_yjF@-WG`2=R(ZxT;eR!L|hX(*W-yQVOG=CAzALERl zHpv9zkERUnXB1`&A~w~%T7dgGQzw#V^0n#?dIv(KH`8MKvwK-tL6}8@4$;+rL_~jl_gOAvWW&y2H0L z)fD`5)6?0?S7136EMa;lv))ESoq`(5ILn-zq=LVo=Z>zEHIJc-aXnNaj=Y7&XdeK< z24KQD^GpcNfzKg_9{KF+ofaTF@I~9~*yD*01A7D49e`2zK4jIQ>Bui~^aCw9#2>q( zc?qxG40Frv#|*n;a9HeO7%aghV~UDVo#bEpmtaF?^To&2jU0z_izFsX4*kENmwuQt zBsGS_&clX-0_!L(oYaN;NnbTh%R#;2UP1Q_A}XTAVOxHdXVgtwrJhq67kcMJvE#0l zHV#aXu!jQ6a?nH($5sq!|tm%E^B4g z?tEpU-LQKp8Tb$kUjLodkYe^kJU4CdLT~j~2fMh+CS=bF&d8uFQ^!FV8idjcH201T zYtSmXc`B7nDAT6)vzat>**o^Lo!#iyb4+HCn(Wt3iy&`~7 zOl6>WQTA=O8#1pLnmRWd70*!){-eU{|Yd zq9rv*mgRj>Z{E;dVXg6%ZCffCfE)x9o{b77LpQoBBn&c%=gLr;borwW?Zr7R8ZL0_ z4O+Z3Xewi7Ot)pw6Rz7F!BtSg+I=ua^{dj=abp3(IluS+#-XhJ}-9Ts)dNFt1I-~hj-A&d6hh%IO4!DNxXz;>zCe+nR`__ z$I5RheoNek_5ZJ#>aiB~^Uxd^rZID!&1SNEzm3l@CCQg_fIh`{)4y4MEGeYW^b@t! zE;0DZF{LEekhUW{yZ*WK$eZDWbTLq_v-p{sR2uWSWARBLwz%CwFjT9b!7ot~N*%IW z-<+1lL4p=?fm5gXIh}BL(I!^ea7%~F8V_@uf4Cy(hkb9c*(_G>WzN*^h;BiL8+IgK zv}*x4HYKqvJkLB<9=mlUC)c9vT2=JmqQaDYrtbAzDai6IRpsLkp%5=X!zVLs^ayzK zF(2b7H@Gt8X`Usj!sREcw-l4OD6o21`z{$MKmwbWX+kq-S(q0;PKG7OLL|4fjVrr<%l?YU3mES0>ihpXUL&=7^w0uscWuTf z33?E0!Jr@@WNp7K~uR5eg`!;`v95R z_%?1+ZeqL4ZQLjHoN`M4wZ>kL8Y_>TMaLVJ_H__!#!VwngU9v-N5`r_+`0XZrN-&? zVYL0@*8kRdMb^Quw`GBwpK2e0v~NHm^4vlNmQ8d3lO* zIR!Leri>q4!@MvvkuN*wAS(n5t0K4Xja>|d+Ud~Dsd0wyu})#i-SEto&kR>^loc5j zi?i_EqQx5B*{w|5Ia~T=^EKraTMU?0kBiDC{`o+M5Y3EasV#36Sj}Nty}cmAnPu`$ zM7ojd`+3^i6s&!pq%Sh2b@N~@!o0}nk>4w{#0m~!(?=t(=R2#U!?lcMzMPN0>)HH? zwd%Abgw5k^n7vu1hvqN6ol-_o@!Sihr9~ijn6I{^B~78eCPg#o zYt(b;epbVZY{J3CLVs>>7OlaiQ-5ryQ}+x(@&N-51kbU%id)j+HQVm)qC!_?ozaLA z2lwO=&Irdi1R(`87Qlc$_YoI#kJ{1mTLLjMN<5U-_$3P1TenNbIT<(WV#hPXKl!P2M{yZ=<48#lJrr?ZO~YZmtX2~8u|s|8I(g$#DSn<|LwQl>62V`4bnge-r(_-FCj|^HOO_G~Fptm^KmJ4hJS>0JZ6K1IZ*(u7`^Dr)JS7b$ij0+v zpNGghE>!*`-QF{8k!ha;|Ml3KNja8Yb40I&DzI6RIpfx#0PqK1vdQ!9!&+&*;}i|e z^}fE>YDnx#D;Iy>k6I94$!=08GCvqmiuNGO90SlZAkt5Or+=_cwI>qIy;KLru_6;- za^YQiB6E##TcJIfP+@QcoWPmPateHWq8GukJREAz6&zOq#aU_Yw0e>1pdIPPn?{6B z-r9J$WKG*C+*R{A`e-t{8)QKVDN{T=Y$Q6knCxE2v8*mMCZf$1YWcz1BairqBJ4WB zYK2AmSYtvZ)Z&bAxFO~evqa~RBa|Z)k$Qn*x*~=_!?>`^?aS1|-eqbVX2CO7ESx3v zja-LaJ6b-&!CX@>;m{UQSnOO_DEwN>$Bubp_On;JjcRE&K4X9~HAX~Fw;KI1S)`RL z>6y{pZ=nnMtB29&Ppj-}ibkmx^^ph(V6mps}$r&%hHhlVId#BEAV`aDGtF z$#+fEzJ~EgxqdWFKs`?BeW+4!QZs zXv}%6wAo!o{2o*JWlTuVLFR3- zm&;6n!9CEZ>>~=78x0E+8VnJooE z5W|vGo_FidSM&Da|C^X7FtKOW0PJlKU)GX*c(F5q$hRJy?#;`8LxM~0ka$H`kcm}> zo5Tz>W&m}%raX+fcqg<9eFDf+#sZ{C z+iW%@hei;KSfxVA?wEh&vXcYAxZzW8eoRw7fpH!yx92=!>-%^8i*nCE1rxy9Mxlk2 zc6O0974SMu&JgDlgSjZ=FrOkEWO<&S$K#>>Is|Te=+rr^C}3>HZy{fZgpbr2M#ruS z;*PYIh3?O?oe%x8M>d-Bk>NyTYrg=eM+JDEhwQYi;^jsK55Y`+Sd&_P2W1lZevIx@ zG8@Iv3$D0KGRam=H3!2uj*+k9hG@h^7L!iGEVs^ImRpffji-*(G zvxb!uLibVJE?}$6eVG_pBDd(i(;rB(AAbteq1JcXEa(`7gZv*-m;#k8J(ng=~pVkayGNFM=Nrfcz;A>qps3CfnWu(Bd^{a+u2 z?sy#7Ylk1>CPeUMl57VoHHAhh3BF(u4qtYkP={}YC>(AHC_&|i=5E+JARY3Z|INfuw=;>KA4G_Ja06p}B!(z zmD208ry1`jKabTz;9n?wX)1;uqa9-tFUM5+hn3^4L)ED35QbtBvc<> zW=>(!|K#fT=y{&KDmP$-`eC1pGTY3kM1f(%`_5uf`x(yoA|6q!=t`C=|8O8E#9Ni` z{b@pO{2#KReo1EE0J_YcolX9_5=k*KP`_*ZI|o^O>FF@BPhNhH9|6IWij<^@YWJgp zm~ct53t@}&6Dz+VwvbNwY76@dvhG-iji!5l9kCS1ZI5!f$Q{18U?h?vm>A)bMEloE zXWy$x!N<6Qa+Y@_PXi@j5`J3qW-v}vS~@WA6&6+s*5LH9{$Z8SVdba*y<5L`x4gOG zJ{5jcVnL=Cuw{&X*GQ(2x2zmt#7gX@Pt}8|NJcSFGLnCDLxvODYsxP$F6FPynog6R zKDO`14<-Yi=K`eLFt^;-e`qe$H+u=c`Ni$8QvB@(Nu(Ke3<*n;0{|j!WomJf3 z4Q-5?a zB$wC%8B2QA_RH<6?Xj^ngo#YSO>;2w_V?vLmVV}|{wvg##DR;8?;AU>;vBiTxmfZx~=Qu4x3$Hx65==h$)&y}D zOO{|7*MMa>kfDXW6%MpnbIc=+-rZO+HZQLIH=_K@E=j)IM}-TlgwR}!F_{)epUehe z?PUs^f_a#yCr_mZJ~a;-1D+Te9fNxE#YO7c#j~NlPj-a4L8neDX&4cvW2k*!WzdN; zam|pj4*mkr-!Z-4yipwUp+|nT39&h6k>}ob>c~xz<+M{)WSwd-pd#wS58%ZLeYSy5 zEknvcIRXEM-sN`&@yEB9IcK4e@^d;@j0oG?kOrTPG#SkJL5@&;#B2qzk4O6_7r=j7 zlx_wRi`5ezS9$-tw*Uo5& zLG{=!Nut!VmT2?l-&YruM#XXE)e*wMf*RN*XlS?e4qfx9k*%+8UpVpuAz}hhbHvcu z&a2#TKbiBSO`%;p&l!KO7y)yx{SW;Y`A1GYmWpw2qtOdF@ZQ`qSW2~#dHw}$TJHjX zSlwDO(A6fhD)A$EgGb?L@G@9U1 zSCK_L!jD3@{Pf{frONydB~G}jmi;~!d*RBNABL8--F1(PeOrM0{!*Xj#FE{IVO4mn3*eeBEiq%AF4lwGZrj z{sCIkc_)yu>Ce0W=jS>R@q1aEU1!dVi1w|H_fnw#i%}OanaBdaZD3lQ9d$e5XeI_F z{i(^K+RL5{hiJndDvYK9FimhZpJg?BW(2i7y>OqUUbMVY_o|P*<Ub|PBG_8!!Z$K+&>|#$PPe?7HeHM0~g&fp6|uRCp9 zPCMbRld;_ALAT<@kl=O14nH@0ZJbiBjb75qBLW&IuGdPN*8Z}lRZIcKw~TzRwz2=o zlNY$^6%f9jKdgbGIq~wZJNlmxVNT|fb*k(AAoUMCPf!y#h+xNmk&*|WK41#oX6h&Z@<{}D%zY+v(qOUHLfqN8zr4i zL^CBVU$r%IFx~wfit~}HQ0+84Q}q4nB9QSCO6`D;dMW0Xt-l-Uw|$u3w))phafUfR zX?tYS@j|P+k=YqYK(BZ!hFr5?$Xo82nMcc_fhci(N5JF8RMI5qh>p;=Spe0yN`{SxvPCfW9?O2l_;LY_Azh`_7R6 z=EWL=`UDIo9ZW{ziBw&laY5LirE5=b29u| z;DRjac`}8k-pjr^4BRMz)*8#dX9M*G6E*0ZLY=TXblY{yx+~7vXUl!?jr3>5d8n2- zGZR|bpU$9u{<^Q~|7_Y|S==!?0b>wIwVmSvc#`RgGtSQ5pZkT6r?b&quX)ga#Nu=@ zxw0a&MPmnzm-+j-%UN0SY48&5)3{h?KIn#k?v#|+2a^4}!|nVXyed4mXFZD5X9$Uk zYeEi3G4oZg-k;X6%32Dff-4M4zzke0T{P#pcsEN=R{`a>od{o*eJ&H3yj{0CO8PO+ zrmu7|U1`f?KKTxcCNfy^$5nEADRI$C;AHw^PYF2Q&oIaeacl{teDTa zgqc(?`*}3M76@TxW|Sr|U!Bgusd91i=BMU%jS<%~yYzG&IocR!J$vHgG+N4qApCu_ z#0L5u(8v(jx9y7brxksU`m1=o)vNf@uJfkt>O9uj+rYY@8dl~%_N%ZujSAR}rLs$3 zAW-7wiq<$!s7H&m-xDo9T$wp&ZN2yGrr6}L?gBm3zoyjE7d*RiZSxW2nmm=;uemb~q?OP{dmAd;Y+lG2>gG2}9*6Y^mt#D#;7WkA#>447KV zVo|vwJR!6wz<=YI*NYrE_`d7YE)=k#MPqPu^APR;73JY5w^a>!$R^D%qzI|K9U8tk zUqSRZ;~_i#i+1Ev=_k}2`}m@9?>-7Ht%BNJy_cp^&D$jL%U2S344K&TTYH*k&-R`E{Q1xFw`uf;5WdDqp)tcye{CDPLD;mo;JC zR__J8klERUgk7z)rjPQ6N#pG_`|;-V@Qb^ypGP^ikV(KlQO7u=(FNmM;j*7;OAKzC z)CGJr_cc|ugUTJ=l(jbTUUJs?%{P@Q2cKO38S#6kKbNR5n4wYdY zz1UW;xScl4Oeci^wV?@E^lJ&_l*oc?zBzK-$RqYL--PP+2nu5s4dh&Iivwx3q=07i z0Lfp_-eFRH=~41f?rB00a;pVE8oJ)AJwWXZS4-E%fA4*IG5Ebkru{&**tPXksU3L3E4?nM8_IY(Lh5!gOF7yq?v=%PP`TlRk=c9=rTuysA4iE# z3&vWy?Zqr9Meq!s#?yv&cEz(6qm6Kyy7vmDp{vl(x_Jr&hEZ0<8oIUB9wWi@hk*`F zxD+>EXSz@q5>P@rvT|a>9yR2441uZ;{7FL^lRFpZ`&TT>v@y0Q<9L$}?!rP0Q=```yZl z^NS&Np;T6VHg#w4-SiBJ!$%Mkm1_mLt7Zt-8W7G8gvtA*q=uwLFMQI}C@ac(9a1>g z{IOCyOp#oxhyj1AI3v1YK7irbn*@~BqAQyh8;&%wuM2_WI=QEQ{?S zOD1z5OHzz7zRd}t*5=#Nfl{Srv+TDd{uW9=`SKJ@rQ{MoGf8{zpSvu8*hIXLKZ6AA zq~4A|oYdFO_@^ETKM7)wKm+o4XH~;*2%gUj`}uqt91oO-Q!tshm!7t^J*SN1dGHDP zH5sn^yQv1h$270i+%Bi^bY6u0tzk6#9EZ(J!?tBWtd_oJCVtG|+&S zRlkOnM-m_s^m?3d>Xs^>YBgrcl>2KAu_{RHUVM^>tvh@6VyM^250GdRN~BGfSoNwT z*_SIubwQEo_Z8cd%`bdHe@1d;B}*{~kVdn&dWe3Q=P)a8^278{r>zY_XWkB3&R~=4 zaoqwHGm-`Sd{7y4;jw8%(aT}uU=Aan@MuKMv#S!8?KxbpZ{k(>zLUY4wX+ywhG(tq ztn&-!me&2{jbbt`K{jKQ=L^e_L1?vM6xCc>(_zbvD%BR8k!4@I4A3=Ist*6vzM&Uh z@5$KX?vt{cb(XA{$9hb(mZe%!T6PNBz0<15Pb5#08zd!E?OM5My?B{in~q*lxcqLN zCm-}v*Ky5ccA@-#EWLG9+t2eo93(gtr&y7q!QF~Cv^aqTcXxLyuEpIcPAKl~E-hNT zI7N#)eLwkpf6w1JXV31wCbKhl=HB`9*!NpSp%kK7Mr>U}?2XXY&{1P!`2r36QT`$p zIZjoeqV_6X{%(;;Pmd=puHjvZjh{efe0ZLvX)_55@AIc4U9Kt*lVjq(rf2hD0m7+4kqA*pMLdgogMU4B?Npn4xbf)2Z6w0FZhWzB^CI;g)p)L|~ z<692&3Rx7kFQ1bh!mPT6WAEMKUoE_#r z*J}h1$zFz8Q3*tAh-m$T&;eCd6}~^&E+j09s?gJDu9(WuZ)_4MgE!(lCSr2u&$*vn zZ*i(VLluGsJ z1OXcf&myB;$(LI1U@sm2WI@lYfg*$I+(JkV)f&KZm2s)f^k#|OBbadXQC7ys4^A3S z1DWOX1tc<;LYDn3oc#HT-k>xAe9?AYUyYO7DPEOCl*TkLa-IsP_2rj2w7ugu{-h2F zqH*kvxZv{R;VWG@upIUo7+JnT⋘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ⅆUYg^Cp9aRn< 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

?Gg^ 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%0Db)T?T-95=!L0F|En%H+fwZs0d%w!)U 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★W{OnC*9-V&{3EA0)n->FpOvM+VG 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 literal 0 HcmV?d00001 diff --git a/awx/ui_next/public/images/pfbg_576.jpg b/awx/ui_next/public/images/pfbg_576.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a0a7fc3cdb0765664141ce59a2bfee44d53d3643 GIT binary patch literal 67491 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 UVPa&oXNcg(qXKvX4p_xa0FWU|rT_o{ literal 0 HcmV?d00001 diff --git a/awx/ui_next/public/images/pfbg_576@2x.jpg b/awx/ui_next/public/images/pfbg_576@2x.jpg new file mode 100644 index 0000000000000000000000000000000000000000..af83172425dcd02643a8e3eda19b59d6a2cc9d74 GIT binary patch literal 195594 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≪$bN)3^>k8~d{af)b%QrJ)a*gwL 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 literal 0 HcmV?d00001 diff --git a/awx/ui_next/public/images/pfbg_768.jpg b/awx/ui_next/public/images/pfbg_768.jpg new file mode 100644 index 0000000000000000000000000000000000000000..9a24ec7a21db96c10ab081015d2c4cf7985dfadb GIT binary patch literal 116699 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μ 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 O=llPx;Q7BR=Kc@qM8xp` literal 0 HcmV?d00001 diff --git a/awx/ui_next/public/images/pfbg_768@2x.jpg b/awx/ui_next/public/images/pfbg_768@2x.jpg new file mode 100644 index 0000000000000000000000000000000000000000..a4ca09cb8266bb3291947f48b1a82746b33bdae7 GIT binary patch literal 362032 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 X2KU{?2Z=Q#Xg5+F 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⫬HR$l( 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

-qF6NMPKey&u2QihviB;atA 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 }P$*IO@FCiLIZSp7D{ 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 z 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ⅈjc_YFU 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 z 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%0DHMIshbi}BRr1qpz$1AOfKWfO^Z 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%0Ad%|+ITC~Y;*yT2M;a(#I07fk`}Dwa2j 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

pO!HNKxQclwsly1oh@iEkTx^v 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 z0RR91000000000000000;Q!hH2mt~C0Y3mh0sq7R6cGUc000000000000000007|s Q+5iXv0|5a)06+o%*+>;Sga7~l literal 0 HcmV?d00001 diff --git a/awx/ui_next/public/index.html b/awx/ui_next/public/index.html new file mode 100644 index 0000000000..2d7ff373b7 --- /dev/null +++ b/awx/ui_next/public/index.html @@ -0,0 +1,17 @@ + + + + + + + + AWX + + + +

+ + diff --git a/awx/ui_next/src/locales/en/messages.js b/awx/ui_next/src/locales/en/messages.js new file mode 100644 index 0000000000..6167645ced --- /dev/null +++ b/awx/ui_next/src/locales/en/messages.js @@ -0,0 +1,284 @@ +/* eslint-disable */ module.exports = { + languageData: { + plurals: function(n, ord) { + var s = String(n).split('.'), + v0 = !s[1], + t0 = Number(s[0]) == n, + n10 = t0 && s[0].slice(-1), + n100 = t0 && s[0].slice(-2); + if (ord) + return n10 == 1 && n100 != 11 + ? 'one' + : n10 == 2 && n100 != 12 + ? 'two' + : n10 == 3 && n100 != 13 + ? 'few' + : 'other'; + return n == 1 && v0 ? 'one' : 'other'; + }, + }, + messages: { + '404': '404', + '> add': '> add', + '> edit': '> edit', + 'AWX Logo': 'AWX Logo', + About: 'About', + 'AboutModal Logo': 'AboutModal Logo', + Access: 'Access', + Add: 'Add', + 'Add Roles': 'Add Roles', + 'Add Team Roles': 'Add Team Roles', + 'Add User Roles': 'Add User Roles', + Administration: 'Administration', + Admins: 'Admins', + 'Ansible Environment': 'Ansible Environment', + 'Ansible Version': 'Ansible Version', + Applications: 'Applications', + 'Apply roles': 'Apply roles', + 'Are you sure you want to delete:': 'Are you sure you want to delete:', + 'Are you sure you want to remove {0} access from {1}? Doing so affects all members of the team.': function( + a + ) { + return [ + 'Are you sure you want to remove ', + a('0'), + ' access from ', + a('1'), + '? Doing so affects all members of the team.', + ]; + }, + 'Are you sure you want to remove {0} access from {username}?': function(a) { + return [ + 'Are you sure you want to remove ', + a('0'), + ' access from ', + a('username'), + '?', + ]; + }, + Authentication: 'Authentication', + 'Authentication Settings': 'Authentication Settings', + 'Brand Image': 'Brand Image', + Cancel: 'Cancel', + 'Cannot find organization with ID': 'Cannot find organization with ID', + 'Cannot find resource.': 'Cannot find resource.', + 'Cannot find route {0}.': function(a) { + return ['Cannot find route ', a('0'), '.']; + }, + Close: 'Close', + Collapse: 'Collapse', + 'Copyright 2018 Red Hat, Inc.': 'Copyright 2018 Red Hat, Inc.', + 'Copyright 2019 Red Hat, Inc.': 'Copyright 2019 Red Hat, Inc.', + 'Create New Organization': 'Create New Organization', + Created: 'Created', + 'Credential Types': 'Credential Types', + Credentials: 'Credentials', + 'Current page': 'Current page', + Dashboard: 'Dashboard', + Delete: 'Delete', + 'Delete {0}': function(a) { + return ['Delete ', a('0')]; + }, + 'Delete {itemName}': function(a) { + return ['Delete ', a('itemName')]; + }, + Description: 'Description', + Details: 'Details', + Edit: 'Edit', + 'Edit Details': 'Edit Details', + Expand: 'Expand', + Failure: 'Failure', + First: 'First', + 'Go to first page': 'Go to first page', + 'Go to last page': 'Go to last page', + 'Go to next page': 'Go to next page', + 'Go to previous page': 'Go to previous page', + Help: 'Help', + 'If you {0} want to remove access for this particular user, please remove them from the team.': function( + a + ) { + return [ + 'If you ', + a('0'), + ' want to remove access for this particular user, please remove them from the team.', + ]; + }, + Info: 'Info', + 'Instance Groups': 'Instance Groups', + Integrations: 'Integrations', + 'Invalid username or password. Please try again.': + 'Invalid username or password. Please try again.', + Inventories: 'Inventories', + 'Inventory Scripts': 'Inventory Scripts', + 'Items Per Page': 'Items Per Page', + 'Items per page': 'Items per page', + 'Items {itemMin} \u2013 {itemMax} of {count}': function(a) { + return [ + 'Items ', + a('itemMin'), + ' \u2013 ', + a('itemMax'), + ' of ', + a('count'), + ]; + }, + Jobs: 'Jobs', + 'Jobs Settings': 'Jobs Settings', + Last: 'Last', + 'Last Modified': 'Last Modified', + 'Last Name': 'Last Name', + License: 'License', + 'Loading...': 'Loading...', + Logout: 'Logout', + 'Management Jobs': 'Management Jobs', + Members: 'Members', + Modified: 'Modified', + 'My View': 'My View', + Name: 'Name', + Next: 'Next', + 'No {0} Found': function(a) { + return ['No ', a('0'), ' Found']; + }, + 'Notification Templates': 'Notification Templates', + Notifications: 'Notifications', + 'Organization Add': 'Organization Add', + 'Organization detail tabs': 'Organization detail tabs', + Organizations: 'Organizations', + 'Organizations List': 'Organizations List', + Page: 'Page', + 'Page <0/> of {pageCount}': function(a) { + return ['Page <0/> of ', a('pageCount')]; + }, + 'Page Number': 'Page Number', + Pagination: 'Pagination', + Password: 'Password', + 'Per Page': 'Per Page', + 'Please add {0} to populate this list': function(a) { + return ['Please add ', a('0'), ' to populate this list']; + }, + 'Please add {0} {itemName} to populate this list': function(a) { + return [ + 'Please add ', + a('0'), + ' ', + a('itemName'), + ' to populate this list', + ]; + }, + 'Portal Mode': 'Portal Mode', + Previous: 'Previous', + 'Primary Navigation': 'Primary Navigation', + Projects: 'Projects', + 'Remove {0} Access': function(a) { + return ['Remove ', a('0'), ' Access']; + }, + Resources: 'Resources', + Save: 'Save', + Schedules: 'Schedules', + Search: 'Search', + 'Search text input': 'Search text input', + Select: 'Select', + 'Select Input': 'Select Input', + 'Select Users Or Teams': 'Select Users Or Teams', + 'Select a row to delete': 'Select a row to delete', + 'Select all': 'Select all', + 'Select items from list': 'Select items from list', + 'Select the Instance Groups for this Organization to run on.': + 'Select the Instance Groups for this Organization to run on.', + 'Select {header}': function(a) { + return ['Select ', a('header')]; + }, + Selected: 'Selected', + Settings: 'Settings', + Sort: 'Sort', + Successful: 'Successful', + System: 'System', + 'System Settings': 'System Settings', + Team: 'Team', + 'Team Roles': 'Team Roles', + Teams: 'Teams', + Templates: 'Templates', + 'This field must not be blank': 'This field must not be blank', + 'This field must not exceed {max} characters': function(a) { + return ['This field must not exceed ', a('max'), ' characters']; + }, + 'Toggle notification failure': 'Toggle notification failure', + 'Toggle notification success': 'Toggle notification success', + 'Use Default {label}': function(a) { + return ['Use Default ', a('label')]; + }, + User: 'User', + 'User Details': 'User Details', + 'User Interface': 'User Interface', + 'User Interface Settings': 'User Interface Settings', + 'User Roles': 'User Roles', + Username: 'Username', + Users: 'Users', + Views: 'Views', + 'Welcome to Ansible {brandName}! Please Sign In.': function(a) { + return ['Welcome to Ansible ', a('brandName'), '! Please Sign In.']; + }, + 'You do not have permission to delete the following {0}: {itemsUnableToDelete}': function( + a + ) { + return [ + 'You do not have permission to delete the following ', + a('0'), + ': ', + a('itemsUnableToDelete'), + ]; + }, + 'You have been logged out.': 'You have been logged out.', + 'add {currentTab}': function(a) { + return ['add ', a('currentTab')]; + }, + 'adding {currentTab}': function(a) { + return ['adding ', a('currentTab')]; + }, + 'cancel delete': 'cancel delete', + 'confirm delete': 'confirm delete', + 'confirm removal of {currentTab}/cancel and go back to {currentTab} view.': function( + a + ) { + return [ + 'confirm removal of ', + a('currentTab'), + '/cancel and go back to ', + a('currentTab'), + ' view.', + ]; + }, + 'delete {currentTab}': function(a) { + return ['delete ', a('currentTab')]; + }, + 'deleting {currentTab} association with orgs': function(a) { + return ['deleting ', a('currentTab'), ' association with orgs']; + }, + 'edit view': 'edit view', + items: 'items', + 'of {pageCount}': function(a) { + return ['of ', a('pageCount')]; + }, + pages: 'pages', + 'per page': 'per page', + 'save/cancel and go back to view': 'save/cancel and go back to view', + 'save/cancel and go back to {currentTab} view': function(a) { + return ['save/cancel and go back to ', a('currentTab'), ' view']; + }, + 'select organization {itemId}': function(a) { + return ['select organization ', a('itemId')]; + }, + '{0}': function(a) { + return [a('0')]; + }, + '{0} List': function(a) { + return [a('0'), ' List']; + }, + '{currentTab} detail view': function(a) { + return [a('currentTab'), ' detail view']; + }, + '{itemMin} - {itemMax} of {count}': function(a) { + return [a('itemMin'), ' - ', a('itemMax'), ' of ', a('count')]; + }, + }, +}; diff --git a/awx/ui_next/build/locales/en/messages.po b/awx/ui_next/src/locales/en/messages.po similarity index 100% rename from awx/ui_next/build/locales/en/messages.po rename to awx/ui_next/src/locales/en/messages.po diff --git a/awx/ui_next/src/locales/ja/messages.js b/awx/ui_next/src/locales/ja/messages.js new file mode 100644 index 0000000000..8d7b8208f5 --- /dev/null +++ b/awx/ui_next/src/locales/ja/messages.js @@ -0,0 +1,272 @@ +/* eslint-disable */ module.exports = { + languageData: { + plurals: function(n, ord) { + if (ord) return 'other'; + return 'other'; + }, + }, + messages: { + '404': '404', + '> add': '> add', + '> edit': '> edit', + 'AWX Logo': 'AWX Logo', + About: 'About', + 'AboutModal Logo': 'AboutModal Logo', + Access: 'Access', + Add: 'Add', + 'Add Roles': 'Add Roles', + 'Add Team Roles': 'Add Team Roles', + 'Add User Roles': 'Add User Roles', + Administration: 'Administration', + Admins: 'Admins', + 'Ansible Environment': 'Ansible Environment', + 'Ansible Version': 'Ansible Version', + Applications: 'Applications', + 'Apply roles': 'Apply roles', + 'Are you sure you want to delete:': 'Are you sure you want to delete:', + 'Are you sure you want to remove {0} access from {1}? Doing so affects all members of the team.': function( + a + ) { + return [ + 'Are you sure you want to remove ', + a('0'), + ' access from ', + a('1'), + '? Doing so affects all members of the team.', + ]; + }, + 'Are you sure you want to remove {0} access from {username}?': function(a) { + return [ + 'Are you sure you want to remove ', + a('0'), + ' access from ', + a('username'), + '?', + ]; + }, + Authentication: 'Authentication', + 'Authentication Settings': 'Authentication Settings', + 'Brand Image': 'Brand Image', + Cancel: 'Cancel', + 'Cannot find organization with ID': 'Cannot find organization with ID', + 'Cannot find resource.': 'Cannot find resource.', + 'Cannot find route {0}.': function(a) { + return ['Cannot find route ', a('0'), '.']; + }, + Close: 'Close', + Collapse: 'Collapse', + 'Copyright 2018 Red Hat, Inc.': 'Copyright 2018 Red Hat, Inc.', + 'Copyright 2019 Red Hat, Inc.': 'Copyright 2019 Red Hat, Inc.', + 'Create New Organization': 'Create New Organization', + Created: 'Created', + 'Credential Types': 'Credential Types', + Credentials: 'Credentials', + 'Current page': 'Current page', + Dashboard: 'Dashboard', + Delete: 'Delete', + 'Delete {0}': function(a) { + return ['Delete ', a('0')]; + }, + 'Delete {itemName}': function(a) { + return ['Delete ', a('itemName')]; + }, + Description: 'Description', + Details: 'Details', + Edit: 'Edit', + 'Edit Details': 'Edit Details', + Expand: 'Expand', + Failure: 'Failure', + First: 'First', + 'Go to first page': 'Go to first page', + 'Go to last page': 'Go to last page', + 'Go to next page': 'Go to next page', + 'Go to previous page': 'Go to previous page', + Help: 'Help', + 'If you {0} want to remove access for this particular user, please remove them from the team.': function( + a + ) { + return [ + 'If you ', + a('0'), + ' want to remove access for this particular user, please remove them from the team.', + ]; + }, + Info: 'Info', + 'Instance Groups': 'Instance Groups', + Integrations: 'Integrations', + 'Invalid username or password. Please try again.': + 'Invalid username or password. Please try again.', + Inventories: 'Inventories', + 'Inventory Scripts': 'Inventory Scripts', + 'Items Per Page': 'Items Per Page', + 'Items per page': 'Items per page', + 'Items {itemMin} \u2013 {itemMax} of {count}': function(a) { + return [ + 'Items ', + a('itemMin'), + ' \u2013 ', + a('itemMax'), + ' of ', + a('count'), + ]; + }, + Jobs: 'Jobs', + 'Jobs Settings': 'Jobs Settings', + Last: 'Last', + 'Last Modified': 'Last Modified', + 'Last Name': 'Last Name', + License: 'License', + 'Loading...': 'Loading...', + Logout: 'Logout', + 'Management Jobs': 'Management Jobs', + Members: 'Members', + Modified: 'Modified', + 'My View': 'My View', + Name: 'Name', + Next: 'Next', + 'No {0} Found': function(a) { + return ['No ', a('0'), ' Found']; + }, + 'Notification Templates': 'Notification Templates', + Notifications: 'Notifications', + 'Organization Add': 'Organization Add', + 'Organization detail tabs': 'Organization detail tabs', + Organizations: 'Organizations', + 'Organizations List': 'Organizations List', + Page: 'Page', + 'Page <0/> of {pageCount}': function(a) { + return ['Page <0/> of ', a('pageCount')]; + }, + 'Page Number': 'Page Number', + Pagination: 'Pagination', + Password: 'Password', + 'Per Page': 'Per Page', + 'Please add {0} to populate this list': function(a) { + return ['Please add ', a('0'), ' to populate this list']; + }, + 'Please add {0} {itemName} to populate this list': function(a) { + return [ + 'Please add ', + a('0'), + ' ', + a('itemName'), + ' to populate this list', + ]; + }, + 'Portal Mode': 'Portal Mode', + Previous: 'Previous', + 'Primary Navigation': 'Primary Navigation', + Projects: 'Projects', + 'Remove {0} Access': function(a) { + return ['Remove ', a('0'), ' Access']; + }, + Resources: 'Resources', + Save: 'Save', + Schedules: 'Schedules', + Search: 'Search', + 'Search text input': 'Search text input', + Select: 'Select', + 'Select Input': 'Select Input', + 'Select Users Or Teams': 'Select Users Or Teams', + 'Select a row to delete': 'Select a row to delete', + 'Select all': 'Select all', + 'Select items from list': 'Select items from list', + 'Select the Instance Groups for this Organization to run on.': + 'Select the Instance Groups for this Organization to run on.', + 'Select {header}': function(a) { + return ['Select ', a('header')]; + }, + Selected: 'Selected', + Settings: 'Settings', + Sort: 'Sort', + Successful: 'Successful', + System: 'System', + 'System Settings': 'System Settings', + Team: 'Team', + 'Team Roles': 'Team Roles', + Teams: 'Teams', + Templates: 'Templates', + 'This field must not be blank': 'This field must not be blank', + 'This field must not exceed {max} characters': function(a) { + return ['This field must not exceed ', a('max'), ' characters']; + }, + 'Toggle notification failure': 'Toggle notification failure', + 'Toggle notification success': 'Toggle notification success', + 'Use Default {label}': function(a) { + return ['Use Default ', a('label')]; + }, + User: 'User', + 'User Details': 'User Details', + 'User Interface': 'User Interface', + 'User Interface Settings': 'User Interface Settings', + 'User Roles': 'User Roles', + Username: 'Username', + Users: 'Users', + Views: 'Views', + 'Welcome to Ansible {brandName}! Please Sign In.': function(a) { + return ['Welcome to Ansible ', a('brandName'), '! Please Sign In.']; + }, + 'You do not have permission to delete the following {0}: {itemsUnableToDelete}': function( + a + ) { + return [ + 'You do not have permission to delete the following ', + a('0'), + ': ', + a('itemsUnableToDelete'), + ]; + }, + 'You have been logged out.': 'You have been logged out.', + 'add {currentTab}': function(a) { + return ['add ', a('currentTab')]; + }, + 'adding {currentTab}': function(a) { + return ['adding ', a('currentTab')]; + }, + 'cancel delete': 'cancel delete', + 'confirm delete': 'confirm delete', + 'confirm removal of {currentTab}/cancel and go back to {currentTab} view.': function( + a + ) { + return [ + 'confirm removal of ', + a('currentTab'), + '/cancel and go back to ', + a('currentTab'), + ' view.', + ]; + }, + 'delete {currentTab}': function(a) { + return ['delete ', a('currentTab')]; + }, + 'deleting {currentTab} association with orgs': function(a) { + return ['deleting ', a('currentTab'), ' association with orgs']; + }, + 'edit view': 'edit view', + items: 'items', + 'of {pageCount}': function(a) { + return ['of ', a('pageCount')]; + }, + pages: 'pages', + 'per page': 'per page', + 'save/cancel and go back to view': 'save/cancel and go back to view', + 'save/cancel and go back to {currentTab} view': function(a) { + return ['save/cancel and go back to ', a('currentTab'), ' view']; + }, + 'select organization {itemId}': function(a) { + return ['select organization ', a('itemId')]; + }, + '{0}': function(a) { + return [a('0')]; + }, + '{0} List': function(a) { + return [a('0'), ' List']; + }, + '{currentTab} detail view': function(a) { + return [a('currentTab'), ' detail view']; + }, + '{itemMin} - {itemMax} of {count}': function(a) { + return [a('itemMin'), ' - ', a('itemMax'), ' of ', a('count')]; + }, + }, +}; diff --git a/awx/ui_next/build/locales/ja/messages.po b/awx/ui_next/src/locales/ja/messages.po similarity index 100% rename from awx/ui_next/build/locales/ja/messages.po rename to awx/ui_next/src/locales/ja/messages.po diff --git a/awx/ui_next/src/setupProxy.js b/awx/ui_next/src/setupProxy.js new file mode 100644 index 0000000000..be63698746 --- /dev/null +++ b/awx/ui_next/src/setupProxy.js @@ -0,0 +1,40 @@ +const { createProxyMiddleware } = require('http-proxy-middleware'); + +const TARGET_PORT = process.env.TARGET_PORT || 8043; +const TARGET_HOST = process.env.TARGET_HOST || 'localhost'; +const TARGET = `https://${TARGET_HOST}:${TARGET_PORT}`; + +module.exports = app => { + app.use( + '/api/login/', + createProxyMiddleware({ + target: TARGET, + secure: false, + ws: false, + headers: { + Host: `localhost:${TARGET_PORT}`, + Origin: TARGET, + Referer: `${TARGET}/`, + }, + }) + ); + app.use( + '/api', + createProxyMiddleware({ + target: TARGET, + secure: false, + ws: false, + bypass: req => + req.originalUrl.includes('hot-update.json') || + req.originalUrl.includes('login'), + }) + ); + app.use( + '/websocket', + createProxyMiddleware({ + target: TARGET, + secure: false, + ws: true, + }) + ); +}; diff --git a/awx/ui_next/src/setupTests.js b/awx/ui_next/src/setupTests.js new file mode 100644 index 0000000000..7122bdd255 --- /dev/null +++ b/awx/ui_next/src/setupTests.js @@ -0,0 +1,14 @@ +import { configure } from 'enzyme'; +import Adapter from 'enzyme-adapter-react-16'; + +require('@babel/polyfill'); + +configure({ adapter: new Adapter() }); + +jest.setTimeout(5000 * 4); + +// apply polyfills for jsdom +require('@nteract/mockument'); + +// eslint-disable-next-line import/prefer-default-export +export const asyncFlush = () => new Promise(resolve => setImmediate(resolve)); diff --git a/awx/ui_next/webpack.config.js b/awx/ui_next/webpack.config.js deleted file mode 100644 index 55059a7272..0000000000 --- a/awx/ui_next/webpack.config.js +++ /dev/null @@ -1,110 +0,0 @@ -const path = require('path'); -const webpack = require('webpack'); - -const TARGET_PORT = process.env.TARGET_PORT || 8043; -const TARGET_HOST = process.env.TARGET_HOST || 'localhost'; -const TARGET = `https://${TARGET_HOST}:${TARGET_PORT}`; - -const ROOT_PATH = __dirname; -const SRC_PATH = path.join(ROOT_PATH, 'src'); - -module.exports = { - entry: './src/index.jsx', - module: { - rules: [ - { - test: /\.(js|jsx)$/, - exclude: /node_modules/, - loader: 'babel-loader' - }, - { - test: /\.s?[ac]ss$/, - use: [ - { loader: 'style-loader' }, - { loader: 'css-loader' }, - { loader: 'sass-loader' }, - ] - }, - { - test: /\.(woff(2)?|ttf|eot)(\?v=\d+\.\d+\.\d+)?$/, - use: [{ - loader: 'file-loader', - options: { - name: '[name].[ext]', - outputPath: 'assets/fonts/', - publicPath: 'assets/fonts', - includePaths: [ - 'node_modules/@patternfly/patternfly/assets/fonts', - ] - } - }] - }, - { - test: /\.(jpg|png|gif|svg)(\?v=\d+\.\d+\.\d+)?$/, - use: [{ - loader: 'file-loader', - options: { - name: '[name].[ext]', - outputPath: 'assets/images/', - publicPath: 'assets/images', - includePaths: [ - 'node_modules/@patternfly/patternfly/assets/images', - ] - } - }] - } - ] - }, - resolve: { - extensions: ['*', '.js', '.jsx', '.css'], - }, - output: { - path: path.resolve(__dirname, '/dist'), - publicPath: '/', - filename: 'bundle.js' - }, - plugins: [ - new webpack.HotModuleReplacementPlugin() - ], - devServer: { - contentBase: './dist', - hot: true, - inline: true, - stats: 'minimal', - host: '0.0.0.0', - disableHostCheck: true, - https: true, - port: 3001, - clientLogLevel: 'none', - proxy: [ - { - context: '/api/login/', - target: TARGET, - secure: false, - ws: false, - headers: { - Host: `localhost:${TARGET_PORT}`, - Origin: TARGET, - Referer: `${TARGET}/` - } - }, - { - context: '/api', - target: TARGET, - secure: false, - ws: false, - bypass: req => (req.originalUrl.includes('hot-update.json') || req.originalUrl.includes('login')), - }, - { - context: '/websocket', - target: TARGET, - secure: false, - ws: true - } - ] - }, - // https://github.com/lingui/js-lingui/issues/408 - node: { - fs: 'empty' - } -}; From 43f32f98a92c83000b3e9389de565c810e0aa692 Mon Sep 17 00:00:00 2001 From: Jake McDermott Date: Thu, 7 May 2020 17:38:07 -0400 Subject: [PATCH 4/8] Fix tests --- awx/ui_next/src/App.test.jsx | 2 +- awx/ui_next/src/RootProvider.jsx | 4 +- .../src/api/models/CredentialTypes.test.js | 5 +- awx/ui_next/src/api/models/Teams.test.jsx | 7 +- awx/ui_next/src/api/models/Users.test.jsx | 7 +- awx/ui_next/src/components/About/About.jsx | 2 +- .../src/components/About/brand-logo.svg | 232 ++++++++++++ .../AddRole/AddResourceRole.test.jsx | 5 +- .../src/components/Background/Background.jsx | 12 +- .../CodeMirrorInput/VariablesDetail.jsx | 5 +- .../CodeMirrorInput/VariablesDetail.test.jsx | 16 +- .../CodeMirrorInput/VariablesField.jsx | 5 +- .../CodeMirrorInput/VariablesInput.jsx | 5 +- .../components/DataListCell/DataListCell.jsx | 9 +- .../DisassociateButton/DisassociateButton.jsx | 6 + .../components/LaunchPrompt/LaunchPrompt.jsx | 9 +- .../LaunchPrompt/LaunchPrompt.test.jsx | 5 +- .../LaunchPrompt/steps/CredentialsStep.jsx | 10 +- .../steps/CredentialsStep.test.jsx | 8 +- .../LaunchPrompt/steps/InventoryStep.jsx | 6 +- .../LaunchPrompt/steps/InventoryStep.test.jsx | 6 +- .../LaunchPrompt/steps/OtherPromptsStep.jsx | 8 +- .../steps/OtherPromptsStep.test.jsx | 2 +- .../LaunchPrompt/steps/PreviewStep.jsx | 2 +- .../LaunchPrompt/steps/SurveyStep.jsx | 4 +- .../components/Lookup/CredentialLookup.jsx | 2 +- .../src/components/Lookup/InventoryLookup.jsx | 2 +- awx/ui_next/src/components/Lookup/Lookup.jsx | 2 +- .../MultiButtonToggle.test.jsx | 5 +- .../NotificationListItem.test.jsx.snap | 69 ++-- .../components/PromptDetail/PromptDetail.jsx | 16 +- .../PromptInventorySourceDetail.jsx | 8 +- .../PromptDetail/PromptJobTemplateDetail.jsx | 10 +- .../PromptWFJobTemplateDetail.jsx | 10 +- .../ResourceAccessListItem.jsx | 4 +- .../DeleteRoleConfirmationModal.test.jsx.snap | 126 +++---- .../ResourceAccessListItem.test.jsx.snap | 356 +++++++++--------- .../components/ResourceAccessList/index.js | 4 +- .../src/components/Schedule/Schedule.jsx | 3 +- .../ScheduleDetail/ScheduleDetail.jsx | 22 +- .../ScheduleOccurrences.jsx | 5 +- .../src/components/Schedule/Schedules.jsx | 4 +- .../components/SelectedList/SelectedList.jsx | 2 +- .../SelectedList/SelectedList.test.jsx | 2 +- .../src/components/StatusIcon/StatusIcon.jsx | 14 + .../components/StatusIcon/StatusIcon.test.jsx | 32 +- .../components/Workflow/WorkflowStartNode.jsx | 3 +- awx/ui_next/src/components/Workflow/index.js | 4 +- .../CredentialList/CredentialList.jsx | 2 +- .../InventoryAdd/InventoryAdd.test.jsx | 5 +- .../InventoryDetail/InventoryDetail.jsx | 6 +- .../InventoryDetail/InventoryDetail.test.jsx | 4 +- .../InventoryEdit/InventoryEdit.test.jsx | 5 +- .../InventoryList/InventoryListItem.jsx | 3 +- .../InventorySource/InventorySource.jsx | 4 +- .../InventorySource/InventorySource.test.jsx | 5 +- .../InventorySourceDetail.jsx | 6 +- .../InventorySourceDetail.test.jsx | 5 +- .../InventorySourceList.test.jsx | 18 +- .../InventorySourceSyncButton.jsx | 4 + .../Inventory/shared/InventoryForm.test.jsx | 10 +- .../screens/Job/JobDetail/JobDetail.test.jsx | 8 +- .../screens/Job/JobOutput/HostEventModal.jsx | 4 +- .../Job/JobOutput/HostEventModal.test.jsx | 16 +- .../src/screens/Job/JobOutput/JobEvent.jsx | 4 +- .../screens/Job/JobOutput/JobOutput.test.jsx | 228 ++++++++--- .../Job/JobOutput/shared/HostStatusBar.jsx | 1 + .../JobOutput/shared/HostStatusBar.test.jsx | 4 +- .../JobOutput/shared/JobEventLineNumber.jsx | 6 +- .../Job/JobOutput/shared/JobEventLineText.jsx | 6 +- .../WorkflowOutput/WorkflowOutputGraph.jsx | 3 +- .../Job/WorkflowOutput/WorkflowOutputNode.jsx | 2 + .../WorkflowOutputNode.test.jsx | 4 +- awx/ui_next/src/screens/Login/Login.jsx | 2 +- awx/ui_next/src/screens/Login/brand-logo.svg | 232 ++++++++++++ .../OrganizationAdd/OrganizationAdd.test.jsx | 10 +- .../OrganizationDetail/OrganizationDetail.jsx | 6 +- .../OrganizationDetail.test.jsx | 5 +- .../OrganizationEdit.test.jsx | 5 +- .../shared/OrganizationForm.test.jsx | 10 +- .../Project/ProjectList/ProjectListItem.jsx | 1 + .../ProjectList/ProjectListItem.test.jsx | 2 +- .../Team/TeamAccess/TeamAccessList.jsx | 2 +- .../Team/TeamAccess/TeamAccessList.test.jsx | 7 +- .../Team/TeamAccess/TeamAccessListItem.jsx | 3 +- .../JobTemplateDetail.test.jsx | 5 +- .../JobTemplateEdit/JobTemplateEdit.test.jsx | 10 +- .../Template/Survey/SurveyListItem.jsx | 3 +- .../WorkflowJobTemplateDetail.jsx | 6 +- .../WorkflowJobTemplateDetail.test.jsx | 4 +- .../WorkflowJobTemplateEdit.test.jsx | 10 +- .../Modals/NodeModals/NodeModal.jsx | 3 +- .../Modals/NodeModals/NodeTypeStep/index.js | 4 +- .../VisualizerGraph.jsx | 3 +- .../Template/shared/JobTemplateForm.test.jsx | 7 +- .../Template/shared/LabelSelect.test.jsx | 10 +- .../Template/shared/WebhookSubForm.jsx | 2 +- .../shared/WorkflowJobTemplateForm.test.jsx | 10 +- .../User/UserAccess/UserAccessList.test.jsx | 7 +- .../User/UserAccess/UserAccessListItem.jsx | 3 +- 100 files changed, 1277 insertions(+), 545 deletions(-) create mode 100644 awx/ui_next/src/components/About/brand-logo.svg create mode 100644 awx/ui_next/src/screens/Login/brand-logo.svg diff --git a/awx/ui_next/src/App.test.jsx b/awx/ui_next/src/App.test.jsx index 6f954a8fa2..5b410f95eb 100644 --- a/awx/ui_next/src/App.test.jsx +++ b/awx/ui_next/src/App.test.jsx @@ -2,7 +2,7 @@ import React from 'react'; import { mountWithContexts, waitForElement } from '../testUtils/enzymeHelpers'; import { ConfigAPI, MeAPI, RootAPI } from './api'; -import { asyncFlush } from '../jest.setup'; +import { asyncFlush } from './setupTests'; import App from './App'; diff --git a/awx/ui_next/src/RootProvider.jsx b/awx/ui_next/src/RootProvider.jsx index f391f28619..d81121492b 100644 --- a/awx/ui_next/src/RootProvider.jsx +++ b/awx/ui_next/src/RootProvider.jsx @@ -4,8 +4,8 @@ import { I18nProvider } from '@lingui/react'; import { HashRouter } from 'react-router-dom'; import { getLanguageWithoutRegionCode } from './util/language'; -import ja from '../build/locales/ja/messages'; -import en from '../build/locales/en/messages'; +import ja from './locales/ja/messages'; +import en from './locales/en/messages'; class RootProvider extends Component { render() { diff --git a/awx/ui_next/src/api/models/CredentialTypes.test.js b/awx/ui_next/src/api/models/CredentialTypes.test.js index 5cb038912e..d68ff06a0c 100644 --- a/awx/ui_next/src/api/models/CredentialTypes.test.js +++ b/awx/ui_next/src/api/models/CredentialTypes.test.js @@ -1,6 +1,9 @@ import CredentialTypes from './CredentialTypes'; -const typesData = [{ id: 1, kind: 'machine' }, { id: 2, kind: 'cloud' }]; +const typesData = [ + { id: 1, kind: 'machine' }, + { id: 2, kind: 'cloud' }, +]; describe('CredentialTypesAPI', () => { test('should load all types', async () => { diff --git a/awx/ui_next/src/api/models/Teams.test.jsx b/awx/ui_next/src/api/models/Teams.test.jsx index 9bcbe65413..b618b1dddd 100644 --- a/awx/ui_next/src/api/models/Teams.test.jsx +++ b/awx/ui_next/src/api/models/Teams.test.jsx @@ -16,10 +16,9 @@ describe('TeamsAPI', () => { await TeamsAPI.associateRole(teamId, roleId); expect(mockHttp.post).toHaveBeenCalledTimes(1); - expect(mockHttp.post.mock.calls[0]).toContainEqual( - `/api/v2/teams/${teamId}/roles/`, - { id: roleId } - ); + expect( + mockHttp.post.mock.calls[0] + ).toContainEqual(`/api/v2/teams/${teamId}/roles/`, { id: roleId }); done(); }); diff --git a/awx/ui_next/src/api/models/Users.test.jsx b/awx/ui_next/src/api/models/Users.test.jsx index 10ec37411d..6eb662f4d7 100644 --- a/awx/ui_next/src/api/models/Users.test.jsx +++ b/awx/ui_next/src/api/models/Users.test.jsx @@ -16,10 +16,9 @@ describe('UsersAPI', () => { await UsersAPI.associateRole(userId, roleId); expect(mockHttp.post).toHaveBeenCalledTimes(1); - expect(mockHttp.post.mock.calls[0]).toContainEqual( - `/api/v2/users/${userId}/roles/`, - { id: roleId } - ); + expect( + mockHttp.post.mock.calls[0] + ).toContainEqual(`/api/v2/users/${userId}/roles/`, { id: roleId }); done(); }); diff --git a/awx/ui_next/src/components/About/About.jsx b/awx/ui_next/src/components/About/About.jsx index 785ecf4a19..8444797830 100644 --- a/awx/ui_next/src/components/About/About.jsx +++ b/awx/ui_next/src/components/About/About.jsx @@ -10,7 +10,7 @@ import { } from '@patternfly/react-core'; import { BrandName } from '../../variables'; -import brandLogoImg from '../../../images/brand-logo.svg'; +import brandLogoImg from './brand-logo.svg'; class About extends React.Component { static createSpeechBubble(version) { diff --git a/awx/ui_next/src/components/About/brand-logo.svg b/awx/ui_next/src/components/About/brand-logo.svg new file mode 100644 index 0000000000..6d80915fb6 --- /dev/null +++ b/awx/ui_next/src/components/About/brand-logo.svg @@ -0,0 +1,232 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/awx/ui_next/src/components/AddRole/AddResourceRole.test.jsx b/awx/ui_next/src/components/AddRole/AddResourceRole.test.jsx index 8a17a10a97..76f5dbb87e 100644 --- a/awx/ui_next/src/components/AddRole/AddResourceRole.test.jsx +++ b/awx/ui_next/src/components/AddRole/AddResourceRole.test.jsx @@ -11,7 +11,10 @@ describe('<_AddResourceRole />', () => { UsersAPI.read.mockResolvedValue({ data: { count: 2, - results: [{ id: 1, username: 'foo' }, { id: 2, username: 'bar' }], + results: [ + { id: 1, username: 'foo' }, + { id: 2, username: 'bar' }, + ], }, }); const roles = { diff --git a/awx/ui_next/src/components/Background/Background.jsx b/awx/ui_next/src/components/Background/Background.jsx index d44711fa17..7857a1ed54 100644 --- a/awx/ui_next/src/components/Background/Background.jsx +++ b/awx/ui_next/src/components/Background/Background.jsx @@ -1,15 +1,13 @@ import React, { Fragment } from 'react'; import { BackgroundImage, BackgroundImageSrc } from '@patternfly/react-core'; -import bgFilter from '@patternfly/patternfly/assets/images/background-filter.svg'; const backgroundImageConfig = { - [BackgroundImageSrc.xs]: '/assets/images/pfbg_576.jpg', - [BackgroundImageSrc.xs2x]: '/assets/images/pfbg_576@2x.jpg', - [BackgroundImageSrc.sm]: '/assets/images/pfbg_768.jpg', - [BackgroundImageSrc.sm2x]: '/assets/images/pfbg_768@2x.jpg', - [BackgroundImageSrc.lg]: '/assets/images/pfbg_2000.jpg', - [BackgroundImageSrc.filter]: `${bgFilter}#image_overlay`, + [BackgroundImageSrc.xs]: './images/pfbg_576.jpg', + [BackgroundImageSrc.xs2x]: './images/pfbg_576@2x.jpg', + [BackgroundImageSrc.sm]: './images/pfbg_768.jpg', + [BackgroundImageSrc.sm2x]: './images/pfbg_768@2x.jpg', + [BackgroundImageSrc.lg]: './images/pfbg_2000.jpg', }; export default ({ children }) => ( diff --git a/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.jsx b/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.jsx index 48bed46f4b..4c9e37a8cc 100644 --- a/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.jsx +++ b/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.jsx @@ -51,7 +51,10 @@ function VariablesDetail({ value, label, rows, fullHeight }) { { try { diff --git a/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.test.jsx b/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.test.jsx index d745236dc5..760a23f1e8 100644 --- a/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.test.jsx +++ b/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.test.jsx @@ -10,7 +10,7 @@ describe('', () => { const wrapper = shallow( ); - const input = wrapper.find('Styled(CodeMirrorInput)'); + const input = wrapper.find('CodeMirrorInput'); expect(input).toHaveLength(1); expect(input.prop('mode')).toEqual('yaml'); expect(input.prop('value')).toEqual('---foo: bar'); @@ -21,7 +21,7 @@ describe('', () => { const wrapper = shallow( ); - const input = wrapper.find('Styled(CodeMirrorInput)'); + const input = wrapper.find('CodeMirrorInput'); expect(input).toHaveLength(1); expect(input.prop('mode')).toEqual('javascript'); expect(input.prop('value')).toEqual('{"foo": "bar"}'); @@ -32,19 +32,19 @@ describe('', () => { ); wrapper.find('MultiButtonToggle').invoke('onChange')('javascript'); - const input = wrapper.find('Styled(CodeMirrorInput)'); + const input = wrapper.find('CodeMirrorInput'); expect(input.prop('mode')).toEqual('javascript'); expect(input.prop('value')).toEqual('{\n "foo": "bar"\n}'); wrapper.find('MultiButtonToggle').invoke('onChange')('yaml'); - const input2 = wrapper.find('Styled(CodeMirrorInput)'); + const input2 = wrapper.find('CodeMirrorInput'); expect(input2.prop('mode')).toEqual('yaml'); expect(input2.prop('value')).toEqual('foo: bar\n'); }); test('should render label and value= --- when there are no values', () => { const wrapper = shallow(); - expect(wrapper.find('Styled(CodeMirrorInput)').length).toBe(1); + expect(wrapper.find('CodeMirrorInput').length).toBe(1); expect(wrapper.find('div.pf-c-form__label').text()).toBe('Variables'); }); @@ -59,14 +59,14 @@ describe('', () => { value: '---bar: baz', }); wrapper.update(); - const input = wrapper.find('Styled(CodeMirrorInput)'); + const input = wrapper.find('CodeMirrorInput'); expect(input.prop('mode')).toEqual('javascript'); expect(input.prop('value')).toEqual('{\n "bar": "baz"\n}'); }); test('should default yaml value to "---"', () => { const wrapper = shallow(); - const input = wrapper.find('Styled(CodeMirrorInput)'); + const input = wrapper.find('CodeMirrorInput'); expect(input.prop('value')).toEqual('---'); }); @@ -76,7 +76,7 @@ describe('', () => { wrapper.find('MultiButtonToggle').invoke('onChange')('javascript'); }); wrapper.setProps({ value: '' }); - const input = wrapper.find('Styled(CodeMirrorInput)'); + const input = wrapper.find('CodeMirrorInput'); expect(input.prop('value')).toEqual('{}'); }); }); diff --git a/awx/ui_next/src/components/CodeMirrorInput/VariablesField.jsx b/awx/ui_next/src/components/CodeMirrorInput/VariablesField.jsx index 7be1a24de9..72b4e57f17 100644 --- a/awx/ui_next/src/components/CodeMirrorInput/VariablesField.jsx +++ b/awx/ui_next/src/components/CodeMirrorInput/VariablesField.jsx @@ -44,7 +44,10 @@ function VariablesField({ { try { diff --git a/awx/ui_next/src/components/CodeMirrorInput/VariablesInput.jsx b/awx/ui_next/src/components/CodeMirrorInput/VariablesInput.jsx index fda9bec4d1..4b2deab789 100644 --- a/awx/ui_next/src/components/CodeMirrorInput/VariablesInput.jsx +++ b/awx/ui_next/src/components/CodeMirrorInput/VariablesInput.jsx @@ -43,7 +43,10 @@ function VariablesInput(props) { { try { diff --git a/awx/ui_next/src/components/DataListCell/DataListCell.jsx b/awx/ui_next/src/components/DataListCell/DataListCell.jsx index 4cb698b50c..79aff02595 100644 --- a/awx/ui_next/src/components/DataListCell/DataListCell.jsx +++ b/awx/ui_next/src/components/DataListCell/DataListCell.jsx @@ -1,9 +1,12 @@ -import { DataListCell } from '@patternfly/react-core'; +import { DataListCell as PFDataListCell } from '@patternfly/react-core'; import styled from 'styled-components'; -DataListCell.displayName = 'PFDataListCell'; +PFDataListCell.displayName = 'PFDataListCell'; // Once https://github.com/patternfly/patternfly-react/issues/3938 // has been resolved this component can be removed -export default styled(DataListCell)` +const DataListCell = styled(PFDataListCell)` word-break: break-word; `; +DataListCell.displayName = 'DataListCell'; + +export default DataListCell; diff --git a/awx/ui_next/src/components/DisassociateButton/DisassociateButton.jsx b/awx/ui_next/src/components/DisassociateButton/DisassociateButton.jsx index dacb44aaae..cafde49f73 100644 --- a/awx/ui_next/src/components/DisassociateButton/DisassociateButton.jsx +++ b/awx/ui_next/src/components/DisassociateButton/DisassociateButton.jsx @@ -112,6 +112,12 @@ function DisassociateButton({ ); } +DisassociateButton.defaultProps = { + itemsToDisassociate: [], + modalNote: '', + modalTitle: '', +}; + DisassociateButton.propTypes = { itemsToDisassociate: arrayOf(object), modalNote: string, diff --git a/awx/ui_next/src/components/LaunchPrompt/LaunchPrompt.jsx b/awx/ui_next/src/components/LaunchPrompt/LaunchPrompt.jsx index f9d926d267..bb24c66393 100644 --- a/awx/ui_next/src/components/LaunchPrompt/LaunchPrompt.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/LaunchPrompt.jsx @@ -3,8 +3,8 @@ import { Wizard } from '@patternfly/react-core'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Formik } from 'formik'; -import ContentError from '../../components/ContentError'; -import ContentLoading from '../../components/ContentLoading'; +import ContentError from '../ContentError'; +import ContentLoading from '../ContentLoading'; import mergeExtraVars from './mergeExtraVars'; import useSteps from './useSteps'; import getSurveyValues from './getSurveyValues'; @@ -36,7 +36,10 @@ function LaunchPrompt({ config, resource, onLaunch, onCancel, i18n }) { }; const surveyValues = getSurveyValues(values); setValue('inventory_id', values.inventory?.id); - setValue('credentials', values.credentials?.map(c => c.id)); + setValue( + 'credentials', + values.credentials?.map(c => c.id) + ); setValue('job_type', values.job_type); setValue('limit', values.limit); setValue('job_tags', values.job_tags); diff --git a/awx/ui_next/src/components/LaunchPrompt/LaunchPrompt.test.jsx b/awx/ui_next/src/components/LaunchPrompt/LaunchPrompt.test.jsx index 5cab9562ff..25f8660585 100644 --- a/awx/ui_next/src/components/LaunchPrompt/LaunchPrompt.test.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/LaunchPrompt.test.jsx @@ -1,6 +1,9 @@ import React from 'react'; import { act, isElementOfType } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '../../../testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../testUtils/enzymeHelpers'; import LaunchPrompt from './LaunchPrompt'; import InventoryStep from './steps/InventoryStep'; import CredentialsStep from './steps/CredentialsStep'; diff --git a/awx/ui_next/src/components/LaunchPrompt/steps/CredentialsStep.jsx b/awx/ui_next/src/components/LaunchPrompt/steps/CredentialsStep.jsx index ccf6cc3178..1477859028 100644 --- a/awx/ui_next/src/components/LaunchPrompt/steps/CredentialsStep.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/steps/CredentialsStep.jsx @@ -5,11 +5,11 @@ import { t } from '@lingui/macro'; import { useField } from 'formik'; import { ToolbarItem } from '@patternfly/react-core'; import { CredentialsAPI, CredentialTypesAPI } from '../../../api'; -import AnsibleSelect from '../../../components/AnsibleSelect'; -import OptionsList from '../../../components/OptionsList'; -import ContentLoading from '../../../components/ContentLoading'; -import CredentialChip from '../../../components/CredentialChip'; -import ContentError from '../../../components/ContentError'; +import AnsibleSelect from '../../AnsibleSelect'; +import OptionsList from '../../OptionsList'; +import ContentLoading from '../../ContentLoading'; +import CredentialChip from '../../CredentialChip'; +import ContentError from '../../ContentError'; import { getQSConfig, parseQueryString } from '../../../util/qs'; import useRequest from '../../../util/useRequest'; import { required } from '../../../util/validators'; diff --git a/awx/ui_next/src/components/LaunchPrompt/steps/CredentialsStep.test.jsx b/awx/ui_next/src/components/LaunchPrompt/steps/CredentialsStep.test.jsx index af056990ce..543ac0baad 100644 --- a/awx/ui_next/src/components/LaunchPrompt/steps/CredentialsStep.test.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/steps/CredentialsStep.test.jsx @@ -1,12 +1,12 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { Formik } from 'formik'; -import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import CredentialsStep from './CredentialsStep'; -import { CredentialsAPI, CredentialTypesAPI } from '../../api'; +import { CredentialsAPI, CredentialTypesAPI } from '../../../api'; -jest.mock('../../api/models/CredentialTypes'); -jest.mock('../../api/models/Credentials'); +jest.mock('../../../api/models/CredentialTypes'); +jest.mock('../../../api/models/Credentials'); const types = [ { id: 1, kind: 'ssh', name: 'SSH' }, diff --git a/awx/ui_next/src/components/LaunchPrompt/steps/InventoryStep.jsx b/awx/ui_next/src/components/LaunchPrompt/steps/InventoryStep.jsx index 535fdd19c8..7360a53f07 100644 --- a/awx/ui_next/src/components/LaunchPrompt/steps/InventoryStep.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/steps/InventoryStep.jsx @@ -6,9 +6,9 @@ import { useField } from 'formik'; import { InventoriesAPI } from '../../../api'; import { getQSConfig, parseQueryString } from '../../../util/qs'; import useRequest from '../../../util/useRequest'; -import OptionsList from '../../../components/OptionsList'; -import ContentLoading from '../../../components/ContentLoading'; -import ContentError from '../../../components/ContentError'; +import OptionsList from '../../OptionsList'; +import ContentLoading from '../../ContentLoading'; +import ContentError from '../../ContentError'; import { required } from '../../../util/validators'; const QS_CONFIG = getQSConfig('inventory', { diff --git a/awx/ui_next/src/components/LaunchPrompt/steps/InventoryStep.test.jsx b/awx/ui_next/src/components/LaunchPrompt/steps/InventoryStep.test.jsx index 260e48cae6..f2bf29d90a 100644 --- a/awx/ui_next/src/components/LaunchPrompt/steps/InventoryStep.test.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/steps/InventoryStep.test.jsx @@ -1,11 +1,11 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { Formik } from 'formik'; -import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import InventoryStep from './InventoryStep'; -import { InventoriesAPI } from '../../api'; +import { InventoriesAPI } from '../../../api'; -jest.mock('../../api/models/Inventories'); +jest.mock('../../../api/models/Inventories'); const inventories = [ { id: 1, name: 'inv one', url: '/inventories/1' }, diff --git a/awx/ui_next/src/components/LaunchPrompt/steps/OtherPromptsStep.jsx b/awx/ui_next/src/components/LaunchPrompt/steps/OtherPromptsStep.jsx index 6705a4b576..a1dc0ad8ab 100644 --- a/awx/ui_next/src/components/LaunchPrompt/steps/OtherPromptsStep.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/steps/OtherPromptsStep.jsx @@ -4,10 +4,10 @@ import { t } from '@lingui/macro'; import { useField } from 'formik'; import { Form, FormGroup, Switch } from '@patternfly/react-core'; import styled from 'styled-components'; -import FormField, { FieldTooltip } from '../FormField'; -import { TagMultiSelect } from '../MultiSelect'; -import AnsibleSelect from '../AnsibleSelect'; -import { VariablesField } from '../CodeMirrorInput'; +import FormField, { FieldTooltip } from '../../FormField'; +import { TagMultiSelect } from '../../MultiSelect'; +import AnsibleSelect from '../../AnsibleSelect'; +import { VariablesField } from '../../CodeMirrorInput'; const FieldHeader = styled.div` display: flex; diff --git a/awx/ui_next/src/components/LaunchPrompt/steps/OtherPromptsStep.test.jsx b/awx/ui_next/src/components/LaunchPrompt/steps/OtherPromptsStep.test.jsx index 76c87e8302..7d3a374c84 100644 --- a/awx/ui_next/src/components/LaunchPrompt/steps/OtherPromptsStep.test.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/steps/OtherPromptsStep.test.jsx @@ -1,7 +1,7 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { Formik } from 'formik'; -import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import OtherPromptsStep from './OtherPromptsStep'; describe('OtherPromptsStep', () => { diff --git a/awx/ui_next/src/components/LaunchPrompt/steps/PreviewStep.jsx b/awx/ui_next/src/components/LaunchPrompt/steps/PreviewStep.jsx index 2ab8b4f6f5..e8171debe2 100644 --- a/awx/ui_next/src/components/LaunchPrompt/steps/PreviewStep.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/steps/PreviewStep.jsx @@ -1,7 +1,7 @@ import React from 'react'; import { useFormikContext } from 'formik'; import yaml from 'js-yaml'; -import PromptDetail from '../../../components/PromptDetail'; +import PromptDetail from '../../PromptDetail'; import mergeExtraVars, { maskPasswords } from '../mergeExtraVars'; import getSurveyValues from '../getSurveyValues'; diff --git a/awx/ui_next/src/components/LaunchPrompt/steps/SurveyStep.jsx b/awx/ui_next/src/components/LaunchPrompt/steps/SurveyStep.jsx index dd74c202a5..73da31f76f 100644 --- a/awx/ui_next/src/components/LaunchPrompt/steps/SurveyStep.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/steps/SurveyStep.jsx @@ -8,8 +8,8 @@ import { SelectOption, SelectVariant, } from '@patternfly/react-core'; -import FormField, { FieldTooltip } from '../../../components/FormField'; -import AnsibleSelect from '../../../components/AnsibleSelect'; +import FormField, { FieldTooltip } from '../../FormField'; +import AnsibleSelect from '../../AnsibleSelect'; import { required, minMaxValue, diff --git a/awx/ui_next/src/components/Lookup/CredentialLookup.jsx b/awx/ui_next/src/components/Lookup/CredentialLookup.jsx index 5617ccb8ed..2562b81f50 100644 --- a/awx/ui_next/src/components/Lookup/CredentialLookup.jsx +++ b/awx/ui_next/src/components/Lookup/CredentialLookup.jsx @@ -8,7 +8,7 @@ import { CredentialsAPI } from '../../api'; import { Credential } from '../../types'; import { getQSConfig, parseQueryString, mergeParams } from '../../util/qs'; import { FieldTooltip } from '../FormField'; -import Lookup from '.'; +import Lookup from './Lookup'; import OptionsList from '../OptionsList'; import LookupErrorMessage from './shared/LookupErrorMessage'; diff --git a/awx/ui_next/src/components/Lookup/InventoryLookup.jsx b/awx/ui_next/src/components/Lookup/InventoryLookup.jsx index b47f2aa583..01e25af6e7 100644 --- a/awx/ui_next/src/components/Lookup/InventoryLookup.jsx +++ b/awx/ui_next/src/components/Lookup/InventoryLookup.jsx @@ -5,7 +5,7 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { InventoriesAPI } from '../../api'; import { Inventory } from '../../types'; -import Lookup from '.'; +import Lookup from './Lookup'; import OptionsList from '../OptionsList'; import { getQSConfig, parseQueryString } from '../../util/qs'; import LookupErrorMessage from './shared/LookupErrorMessage'; diff --git a/awx/ui_next/src/components/Lookup/Lookup.jsx b/awx/ui_next/src/components/Lookup/Lookup.jsx index 1397e7b776..db32b2dd25 100644 --- a/awx/ui_next/src/components/Lookup/Lookup.jsx +++ b/awx/ui_next/src/components/Lookup/Lookup.jsx @@ -17,10 +17,10 @@ import { InputGroup as PFInputGroup, Modal, } from '@patternfly/react-core'; -import ChipGroup from '../../components/ChipGroup'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import styled from 'styled-components'; +import ChipGroup from '../ChipGroup'; import reducer, { initReducer } from './shared/reducer'; import { QSConfig } from '../../types'; diff --git a/awx/ui_next/src/components/MultiButtonToggle/MultiButtonToggle.test.jsx b/awx/ui_next/src/components/MultiButtonToggle/MultiButtonToggle.test.jsx index 15c65e3a29..01dafe0cdd 100644 --- a/awx/ui_next/src/components/MultiButtonToggle/MultiButtonToggle.test.jsx +++ b/awx/ui_next/src/components/MultiButtonToggle/MultiButtonToggle.test.jsx @@ -8,7 +8,10 @@ describe('', () => { beforeAll(() => { wrapper = mount( diff --git a/awx/ui_next/src/components/NotificationList/__snapshots__/NotificationListItem.test.jsx.snap b/awx/ui_next/src/components/NotificationList/__snapshots__/NotificationListItem.test.jsx.snap index d817689533..f99a0c51fd 100644 --- a/awx/ui_next/src/components/NotificationList/__snapshots__/NotificationListItem.test.jsx.snap +++ b/awx/ui_next/src/components/NotificationList/__snapshots__/NotificationListItem.test.jsx.snap @@ -42,8 +42,8 @@ exports[` initially renders succe - + initially renders succe > Foo - - , - + + , + Slack - , + , ] } key=".0" @@ -77,17 +77,19 @@ exports[` initially renders succe "$$typeof": Symbol(react.forward_ref), "attrs": Array [], "componentStyle": ComponentStyle { - "componentId": "DataListCell-sc-18ntxrx-0", - "isStatic": true, - "lastClassName": "flJMIO", + "componentId": "sc-bdVaJa", + "isStatic": false, + "lastClassName": "kruorc", "rules": Array [ - "word-break:break-word;", + " + word-break: break-word; +", ], }, "displayName": "DataListCell", "foldedComponentIds": Array [], "render": [Function], - "styledComponentId": "DataListCell-sc-18ntxrx-0", + "styledComponentId": "sc-bdVaJa", "target": [Function], "toString": [Function], "warnTooManyClasses": [Function], @@ -97,10 +99,10 @@ exports[` initially renders succe forwardedRef={null} >
initially renders succe "$$typeof": Symbol(react.forward_ref), "attrs": Array [], "componentStyle": ComponentStyle { - "componentId": "DataListCell-sc-18ntxrx-0", - "isStatic": true, - "lastClassName": "flJMIO", + "componentId": "sc-bdVaJa", + "isStatic": false, + "lastClassName": "kruorc", "rules": Array [ - "word-break:break-word;", + " + word-break: break-word; +", ], }, "displayName": "DataListCell", "foldedComponentIds": Array [], "render": [Function], - "styledComponentId": "DataListCell-sc-18ntxrx-0", + "styledComponentId": "sc-bdVaJa", "target": [Function], "toString": [Function], "warnTooManyClasses": [Function], @@ -158,10 +162,10 @@ exports[` initially renders succe forwardedRef={null} >
Slack
@@ -170,7 +174,7 @@ exports[` initially renders succe
- initially renders succe "$$typeof": Symbol(react.forward_ref), "attrs": Array [], "componentStyle": ComponentStyle { - "componentId": "NotificationListItem__DataListAction-w674ng-0", - "isStatic": true, - "lastClassName": "hhZchj", + "componentId": "sc-bwzfXH", + "isStatic": false, + "lastClassName": "llKtln", "rules": Array [ - "align-items:center;display:grid;grid-gap:16px;grid-template-columns:repeat(3,max-content);", + " + align-items: center; + display: grid; + grid-gap: 16px; + grid-template-columns: repeat(3, max-content); +", ], }, - "displayName": "NotificationListItem__DataListAction", + "displayName": "Styled(DataListAction)", "foldedComponentIds": Array [], "render": [Function], - "styledComponentId": "NotificationListItem__DataListAction-w674ng-0", + "styledComponentId": "sc-bwzfXH", "target": [Function], "toString": [Function], "warnTooManyClasses": [Function], @@ -209,12 +218,12 @@ exports[` initially renders succe
initially renders succe
-
+ diff --git a/awx/ui_next/src/components/PromptDetail/PromptDetail.jsx b/awx/ui_next/src/components/PromptDetail/PromptDetail.jsx index aa6e1c76df..9ebcf1a0a1 100644 --- a/awx/ui_next/src/components/PromptDetail/PromptDetail.jsx +++ b/awx/ui_next/src/components/PromptDetail/PromptDetail.jsx @@ -4,13 +4,13 @@ import { withI18n } from '@lingui/react'; import { t, Trans } from '@lingui/macro'; import { Link } from 'react-router-dom'; import styled from 'styled-components'; +import { Chip, Divider } from '@patternfly/react-core'; import { toTitleCase } from '../../util/strings'; -import { Chip, Divider } from '@patternfly/react-core'; -import CredentialChip from '../../components/CredentialChip'; -import ChipGroup from '../../components/ChipGroup'; -import { DetailList, Detail, UserDateDetail } from '../../components/DetailList'; -import { VariablesDetail } from '../../components/CodeMirrorInput'; +import CredentialChip from '../CredentialChip'; +import ChipGroup from '../ChipGroup'; +import { DetailList, Detail, UserDateDetail } from '../DetailList'; +import { VariablesDetail } from '../CodeMirrorInput'; import PromptProjectDetail from './PromptProjectDetail'; import PromptInventorySourceDetail from './PromptInventorySourceDetail'; @@ -43,7 +43,7 @@ function buildResourceLink(resource) { workflow_job_template: `/templates/workflow_job_template/${resource.id}/details`, }; - return link[(resource?.type)] ? ( + return link[resource?.type] ? ( {resource.name} ) : ( resource.name @@ -241,6 +241,10 @@ function PromptDetail({ i18n, resource, launchConfig = {}, overrides = {} }) { ); } +PromptDetail.defaultProps = { + launchConfig: { defaults: {} }, +}; + PromptDetail.propTypes = { resource: shape({}).isRequired, launchConfig: shape({}), diff --git a/awx/ui_next/src/components/PromptDetail/PromptInventorySourceDetail.jsx b/awx/ui_next/src/components/PromptDetail/PromptInventorySourceDetail.jsx index e4d61bf97c..46c89b7b4a 100644 --- a/awx/ui_next/src/components/PromptDetail/PromptInventorySourceDetail.jsx +++ b/awx/ui_next/src/components/PromptDetail/PromptInventorySourceDetail.jsx @@ -4,10 +4,10 @@ import { t } from '@lingui/macro'; import { Link } from 'react-router-dom'; import { Chip, List, ListItem } from '@patternfly/react-core'; -import { Detail, DeletedDetail } from '../../components/DetailList'; -import { VariablesDetail } from '../../components/CodeMirrorInput'; -import CredentialChip from '../../components/CredentialChip'; -import ChipGroup from '../../components/ChipGroup'; +import { Detail, DeletedDetail } from '../DetailList'; +import { VariablesDetail } from '../CodeMirrorInput'; +import CredentialChip from '../CredentialChip'; +import ChipGroup from '../ChipGroup'; function PromptInventorySourceDetail({ i18n, resource }) { const { diff --git a/awx/ui_next/src/components/PromptDetail/PromptJobTemplateDetail.jsx b/awx/ui_next/src/components/PromptDetail/PromptJobTemplateDetail.jsx index ce5ed6cc52..d0d44272b8 100644 --- a/awx/ui_next/src/components/PromptDetail/PromptJobTemplateDetail.jsx +++ b/awx/ui_next/src/components/PromptDetail/PromptJobTemplateDetail.jsx @@ -4,11 +4,11 @@ import { t } from '@lingui/macro'; import { Link } from 'react-router-dom'; import { Chip, List, ListItem } from '@patternfly/react-core'; -import CredentialChip from '../../components/CredentialChip'; -import ChipGroup from '../../components/ChipGroup'; -import Sparkline from '../../components/Sparkline'; -import { Detail, DeletedDetail } from '../../components/DetailList'; -import { VariablesDetail } from '../../components/CodeMirrorInput'; +import CredentialChip from '../CredentialChip'; +import ChipGroup from '../ChipGroup'; +import Sparkline from '../Sparkline'; +import { Detail, DeletedDetail } from '../DetailList'; +import { VariablesDetail } from '../CodeMirrorInput'; import { toTitleCase } from '../../util/strings'; function PromptJobTemplateDetail({ i18n, resource }) { diff --git a/awx/ui_next/src/components/PromptDetail/PromptWFJobTemplateDetail.jsx b/awx/ui_next/src/components/PromptDetail/PromptWFJobTemplateDetail.jsx index afa3c552e6..888f2f78d3 100644 --- a/awx/ui_next/src/components/PromptDetail/PromptWFJobTemplateDetail.jsx +++ b/awx/ui_next/src/components/PromptDetail/PromptWFJobTemplateDetail.jsx @@ -4,11 +4,11 @@ import { t } from '@lingui/macro'; import { Link } from 'react-router-dom'; import { Chip, List, ListItem } from '@patternfly/react-core'; -import CredentialChip from '../../components/CredentialChip'; -import ChipGroup from '../../components/ChipGroup'; -import { Detail } from '../../components/DetailList'; -import { VariablesDetail } from '../../components/CodeMirrorInput'; -import Sparkline from '../../components/Sparkline'; +import CredentialChip from '../CredentialChip'; +import ChipGroup from '../ChipGroup'; +import { Detail } from '../DetailList'; +import { VariablesDetail } from '../CodeMirrorInput'; +import Sparkline from '../Sparkline'; import { toTitleCase } from '../../util/strings'; function PromptWFJobTemplateDetail({ i18n, resource }) { diff --git a/awx/ui_next/src/components/ResourceAccessList/ResourceAccessListItem.jsx b/awx/ui_next/src/components/ResourceAccessList/ResourceAccessListItem.jsx index 689b2c72ce..ab093fd620 100644 --- a/awx/ui_next/src/components/ResourceAccessList/ResourceAccessListItem.jsx +++ b/awx/ui_next/src/components/ResourceAccessList/ResourceAccessListItem.jsx @@ -15,8 +15,8 @@ import { Link } from 'react-router-dom'; import styled from 'styled-components'; import DataListCell from '../DataListCell'; -import ChipGroup from '../../components/ChipGroup'; -import { DetailList, Detail } from '../../components/DetailList'; +import ChipGroup from '../ChipGroup'; +import { DetailList, Detail } from '../DetailList'; import { AccessRecord } from '../../types'; const DataListItemCells = styled(PFDataListItemCells)` diff --git a/awx/ui_next/src/components/ResourceAccessList/__snapshots__/DeleteRoleConfirmationModal.test.jsx.snap b/awx/ui_next/src/components/ResourceAccessList/__snapshots__/DeleteRoleConfirmationModal.test.jsx.snap index e66d8780df..aa1198970d 100644 --- a/awx/ui_next/src/components/ResourceAccessList/__snapshots__/DeleteRoleConfirmationModal.test.jsx.snap +++ b/awx/ui_next/src/components/ResourceAccessList/__snapshots__/DeleteRoleConfirmationModal.test.jsx.snap @@ -100,11 +100,11 @@ exports[` should render initially 1`] = ` class="pf-c-title" >
should render initially 1`] = ` ariaDescribedById="" className="" header={ - - + Remove Team Access - + } hideTitle={false} isFooterLeftAligned={true} @@ -219,11 +223,11 @@ exports[` should render initially 1`] = ` class="pf-c-title" >
should render initially 1`] = ` ariaDescribedById="" className="" header={ - - + Remove Team Access - + } hideTitle={false} id="pf-modal-0" @@ -432,24 +440,29 @@ exports[` should render initially 1`] = `
- + should render initially 1`] = ` forwardedRef={null} >
- - - - - - - - - + + + @@ -531,7 +513,7 @@ exports[`<DeleteRoleConfirmationModal /> should render initially 1`] = `
-
+
initially renders succesfully 1`] = `
- + - initially renders succesfully 1`] = ` } > jane - + - initially renders succesfully 1`] = ` label="Name" value="jane brown" /> - - , - - + , + + initially renders succesfully 1`] = ` } /> - - , + + , ] } key=".0" @@ -111,12 +112,13 @@ exports[` initially renders succesfully 1`] = ` + - initially renders succesfully 1`] = ` } > jane - + - initially renders succesfully 1`] = ` label="Name" value="jane brown" /> - - , - - + , + + initially renders succesfully 1`] = ` } /> - - , + + , ] } forwardedComponent={ @@ -169,17 +171,19 @@ exports[` initially renders succesfully 1`] = ` "$$typeof": Symbol(react.forward_ref), "attrs": Array [], "componentStyle": ComponentStyle { - "componentId": "ResourceAccessListItem__DataListItemCells-a3r9sq-0", - "isStatic": true, - "lastClassName": "WzRoT", + "componentId": "sc-bZQynM", + "isStatic": false, + "lastClassName": "dLjtme", "rules": Array [ - "align-items:start;", + " + align-items: start; +", ], }, - "displayName": "ResourceAccessListItem__DataListItemCells", + "displayName": "Styled(DataListItemCells)", "foldedComponentIds": Array [], "render": [Function], - "styledComponentId": "ResourceAccessListItem__DataListItemCells-a3r9sq-0", + "styledComponentId": "sc-bZQynM", "target": [Function], "toString": [Function], "warnTooManyClasses": [Function], @@ -190,15 +194,16 @@ exports[` initially renders succesfully 1`] = ` rowid="access-list-item" > + - initially renders succesfully 1`] = ` } > jane - + - initially renders succesfully 1`] = ` label="Name" value="jane brown" /> - - , - - + , + + initially renders succesfully 1`] = ` } /> - - , + + , ] } rowid="access-list-item" >
initially renders succesfully 1`] = ` "$$typeof": Symbol(react.forward_ref), "attrs": Array [], "componentStyle": ComponentStyle { - "componentId": "DataListCell-sc-18ntxrx-0", - "isStatic": true, - "lastClassName": "flJMIO", + "componentId": "sc-bdVaJa", + "isStatic": false, + "lastClassName": "kruorc", "rules": Array [ - "word-break:break-word;", + " + word-break: break-word; +", ], }, "displayName": "DataListCell", "foldedComponentIds": Array [], "render": [Function], - "styledComponentId": "DataListCell-sc-18ntxrx-0", + "styledComponentId": "sc-bdVaJa", "target": [Function], "toString": [Function], "warnTooManyClasses": [Function], @@ -280,10 +287,10 @@ exports[` initially renders succesfully 1`] = ` forwardedRef={null} >
- initially renders succesfully 1`] = ` "$$typeof": Symbol(react.forward_ref), "attrs": Array [], "componentStyle": ComponentStyle { - "componentId": "DetailList-sc-12g7m4-0", + "componentId": "sc-bwzfXH", "isStatic": false, - "lastClassName": "iAtits", + "lastClassName": "kVCDmm", "rules": Array [ - "display:grid;grid-gap:20px;align-items:center;", + " + display: grid; + grid-gap: 20px; + align-items: center; + ", [Function], + " +", ], }, - "displayName": "DetailList", + "displayName": "Styled(DetailList)", "foldedComponentIds": Array [], "render": [Function], - "styledComponentId": "DetailList-sc-12g7m4-0", + "styledComponentId": "sc-bwzfXH", "target": [Function], "toString": [Function], "warnTooManyClasses": [Function], @@ -410,15 +366,15 @@ exports[` initially renders succesfully 1`] = ` stacked={true} >
initially renders succesfully 1`] = ` label="Name" value="jane brown" > - initially renders succesfully 1`] = ` "$$typeof": Symbol(react.forward_ref), "attrs": Array [], "componentStyle": ComponentStyle { - "componentId": "Detail__DetailName-sc-16ypsyv-0", + "componentId": "sc-htpNat", "isStatic": false, - "lastClassName": "erdIBg", + "lastClassName": "iYJcPm", "rules": Array [ - "font-weight:var(--pf-global--FontWeight--bold);", + " + font-weight: var(--pf-global--FontWeight--bold); + ", [Function], + " +", ], }, - "displayName": "Detail__DetailName", + "displayName": "Styled(Component)", "foldedComponentIds": Array [], "render": [Function], - "styledComponentId": "Detail__DetailName-sc-16ypsyv-0", + "styledComponentId": "sc-htpNat", "target": [Function], "toString": [Function], "warnTooManyClasses": [Function], @@ -462,18 +422,18 @@ exports[` initially renders succesfully 1`] = ` fullWidth={false} >
@@ -482,8 +442,8 @@ exports[` initially renders succesfully 1`] = ` - - + initially renders succesfully 1`] = ` "$$typeof": Symbol(react.forward_ref), "attrs": Array [], "componentStyle": ComponentStyle { - "componentId": "Detail__DetailValue-sc-16ypsyv-1", + "componentId": "sc-bxivhb", "isStatic": false, - "lastClassName": "kCDjmZ", + "lastClassName": "gxmPlV", "rules": Array [ - "word-break:break-all;", + " + word-break: break-all; + ", [Function], - " ", + " + ", [Function], + " +", ], }, - "displayName": "Detail__DetailValue", + "displayName": "Styled(Component)", "foldedComponentIds": Array [], "render": [Function], - "styledComponentId": "Detail__DetailValue-sc-16ypsyv-1", + "styledComponentId": "sc-bxivhb", "target": [Function], "toString": [Function], "warnTooManyClasses": [Function], @@ -520,18 +485,18 @@ exports[` initially renders succesfully 1`] = ` fullWidth={false} >
@@ -540,13 +505,13 @@ exports[` initially renders succesfully 1`] = ` - +
-
+
@@ -560,17 +525,19 @@ exports[` initially renders succesfully 1`] = ` "$$typeof": Symbol(react.forward_ref), "attrs": Array [], "componentStyle": ComponentStyle { - "componentId": "DataListCell-sc-18ntxrx-0", - "isStatic": true, - "lastClassName": "flJMIO", + "componentId": "sc-bdVaJa", + "isStatic": false, + "lastClassName": "kruorc", "rules": Array [ - "word-break:break-word;", + " + word-break: break-word; +", ], }, "displayName": "DataListCell", "foldedComponentIds": Array [], "render": [Function], - "styledComponentId": "DataListCell-sc-18ntxrx-0", + "styledComponentId": "sc-bdVaJa", "target": [Function], "toString": [Function], "warnTooManyClasses": [Function], @@ -580,12 +547,12 @@ exports[` initially renders succesfully 1`] = ` forwardedRef={null} >
- initially renders succesfully 1`] = ` "$$typeof": Symbol(react.forward_ref), "attrs": Array [], "componentStyle": ComponentStyle { - "componentId": "DetailList-sc-12g7m4-0", + "componentId": "sc-bwzfXH", "isStatic": false, - "lastClassName": "iAtits", + "lastClassName": "kVCDmm", "rules": Array [ - "display:grid;grid-gap:20px;align-items:center;", + " + display: grid; + grid-gap: 20px; + align-items: center; + ", [Function], + " +", ], }, - "displayName": "DetailList", + "displayName": "Styled(DetailList)", "foldedComponentIds": Array [], "render": [Function], - "styledComponentId": "DetailList-sc-12g7m4-0", + "styledComponentId": "sc-bwzfXH", "target": [Function], "toString": [Function], "warnTooManyClasses": [Function], @@ -616,15 +589,15 @@ exports[` initially renders succesfully 1`] = ` stacked={true} >
initially renders succesfully 1`] = ` } > - initially renders succesfully 1`] = ` "$$typeof": Symbol(react.forward_ref), "attrs": Array [], "componentStyle": ComponentStyle { - "componentId": "Detail__DetailName-sc-16ypsyv-0", + "componentId": "sc-htpNat", "isStatic": false, - "lastClassName": "erdIBg", + "lastClassName": "iYJcPm", "rules": Array [ - "font-weight:var(--pf-global--FontWeight--bold);", + " + font-weight: var(--pf-global--FontWeight--bold); + ", [Function], + " +", ], }, - "displayName": "Detail__DetailName", + "displayName": "Styled(Component)", "foldedComponentIds": Array [], "render": [Function], - "styledComponentId": "Detail__DetailName-sc-16ypsyv-0", + "styledComponentId": "sc-htpNat", "target": [Function], "toString": [Function], "warnTooManyClasses": [Function], @@ -680,18 +657,18 @@ exports[` initially renders succesfully 1`] = ` fullWidth={false} >
@@ -700,8 +677,8 @@ exports[` initially renders succesfully 1`] = ` - - + initially renders succesfully 1`] = ` "$$typeof": Symbol(react.forward_ref), "attrs": Array [], "componentStyle": ComponentStyle { - "componentId": "Detail__DetailValue-sc-16ypsyv-1", + "componentId": "sc-bxivhb", "isStatic": false, - "lastClassName": "kCDjmZ", + "lastClassName": "gxmPlV", "rules": Array [ - "word-break:break-all;", + " + word-break: break-all; + ", [Function], - " ", + " + ", [Function], + " +", ], }, - "displayName": "Detail__DetailValue", + "displayName": "Styled(Component)", "foldedComponentIds": Array [], "render": [Function], - "styledComponentId": "Detail__DetailValue-sc-16ypsyv-1", + "styledComponentId": "sc-bxivhb", "target": [Function], "toString": [Function], "warnTooManyClasses": [Function], @@ -738,18 +720,18 @@ exports[` initially renders succesfully 1`] = ` fullWidth={false} >
@@ -944,13 +926,13 @@ exports[` initially renders succesfully 1`] = ` - +
-
+
@@ -958,7 +940,7 @@ exports[` initially renders succesfully 1`] = `
- +
diff --git a/awx/ui_next/src/components/ResourceAccessList/index.js b/awx/ui_next/src/components/ResourceAccessList/index.js index 1993e74cba..30a5ba1e1b 100644 --- a/awx/ui_next/src/components/ResourceAccessList/index.js +++ b/awx/ui_next/src/components/ResourceAccessList/index.js @@ -1,5 +1,3 @@ export { default as ResourceAccessList } from './ResourceAccessList'; export { default as ResourceAccessListItem } from './ResourceAccessListItem'; -export { - default as DeleteRoleConfirmationModal, -} from './DeleteRoleConfirmationModal'; +export { default as DeleteRoleConfirmationModal } from './DeleteRoleConfirmationModal'; diff --git a/awx/ui_next/src/components/Schedule/Schedule.jsx b/awx/ui_next/src/components/Schedule/Schedule.jsx index 3a3a24def4..6282e50bfb 100644 --- a/awx/ui_next/src/components/Schedule/Schedule.jsx +++ b/awx/ui_next/src/components/Schedule/Schedule.jsx @@ -17,7 +17,8 @@ import RoutedTabs from '../RoutedTabs'; import ContentError from '../ContentError'; import ContentLoading from '../ContentLoading'; import { TabbedCardHeader } from '../Card'; -import { ScheduleDetail, ScheduleEdit } from '.'; +import ScheduleDetail from './ScheduleDetail'; +import ScheduleEdit from './ScheduleEdit'; import { SchedulesAPI } from '../../api'; function Schedule({ i18n, setBreadcrumb, unifiedJobTemplate }) { diff --git a/awx/ui_next/src/components/Schedule/ScheduleDetail/ScheduleDetail.jsx b/awx/ui_next/src/components/Schedule/ScheduleDetail/ScheduleDetail.jsx index 8d398a86b4..3b2bf93db9 100644 --- a/awx/ui_next/src/components/Schedule/ScheduleDetail/ScheduleDetail.jsx +++ b/awx/ui_next/src/components/Schedule/ScheduleDetail/ScheduleDetail.jsx @@ -4,21 +4,21 @@ import { RRule, rrulestr } from 'rrule'; import styled from 'styled-components'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { Schedule } from '../../../types'; import { Chip, Title, Button } from '@patternfly/react-core'; -import AlertModal from '../../../components/AlertModal'; -import { CardBody, CardActionsRow } from '../../../components/Card'; -import ContentError from '../../../components/ContentError'; -import ContentLoading from '../../../components/ContentLoading'; -import CredentialChip from '../../../components/CredentialChip'; -import { DetailList, Detail, UserDateDetail } from '../../../components/DetailList'; -import { ScheduleOccurrences, ScheduleToggle } from '../../../components/Schedule'; +import { Schedule } from '../../../types'; +import AlertModal from '../../AlertModal'; +import { CardBody, CardActionsRow } from '../../Card'; +import ContentError from '../../ContentError'; +import ContentLoading from '../../ContentLoading'; +import CredentialChip from '../../CredentialChip'; +import { DetailList, Detail, UserDateDetail } from '../../DetailList'; +import { ScheduleOccurrences, ScheduleToggle } from '..'; import { formatDateString } from '../../../util/dates'; import useRequest from '../../../util/useRequest'; import { SchedulesAPI } from '../../../api'; -import DeleteButton from '../../../components/DeleteButton'; -import ErrorDetail from '../../../components/ErrorDetail'; -import ChipGroup from '../../../components/ChipGroup'; +import DeleteButton from '../../DeleteButton'; +import ErrorDetail from '../../ErrorDetail'; +import ChipGroup from '../../ChipGroup'; const PromptTitle = styled(Title)` --pf-c-title--m-md--FontWeight: 700; diff --git a/awx/ui_next/src/components/Schedule/ScheduleOccurrences/ScheduleOccurrences.jsx b/awx/ui_next/src/components/Schedule/ScheduleOccurrences/ScheduleOccurrences.jsx index e2ba223943..472c0e0883 100644 --- a/awx/ui_next/src/components/Schedule/ScheduleOccurrences/ScheduleOccurrences.jsx +++ b/awx/ui_next/src/components/Schedule/ScheduleOccurrences/ScheduleOccurrences.jsx @@ -44,7 +44,10 @@ function ScheduleOccurrences({ preview = { local: [], utc: [] }, i18n }) { setMode(newMode)} /> diff --git a/awx/ui_next/src/components/Schedule/Schedules.jsx b/awx/ui_next/src/components/Schedule/Schedules.jsx index 3d818d8740..b9da804e63 100644 --- a/awx/ui_next/src/components/Schedule/Schedules.jsx +++ b/awx/ui_next/src/components/Schedule/Schedules.jsx @@ -1,7 +1,9 @@ import React from 'react'; import { withI18n } from '@lingui/react'; import { Switch, Route, useRouteMatch } from 'react-router-dom'; -import { Schedule, ScheduleAdd, ScheduleList } from '.'; +import Schedule from './Schedule'; +import ScheduleAdd from './ScheduleAdd'; +import ScheduleList from './ScheduleList'; function Schedules({ createSchedule, diff --git a/awx/ui_next/src/components/SelectedList/SelectedList.jsx b/awx/ui_next/src/components/SelectedList/SelectedList.jsx index fd4624ba3c..a36eab044a 100644 --- a/awx/ui_next/src/components/SelectedList/SelectedList.jsx +++ b/awx/ui_next/src/components/SelectedList/SelectedList.jsx @@ -2,8 +2,8 @@ import React, { Component } from 'react'; import PropTypes from 'prop-types'; import { Chip, Split as PFSplit, SplitItem } from '@patternfly/react-core'; -import ChipGroup from '../../components/ChipGroup'; import styled from 'styled-components'; +import ChipGroup from '../ChipGroup'; const Split = styled(PFSplit)` margin: 20px 0px; diff --git a/awx/ui_next/src/components/SelectedList/SelectedList.test.jsx b/awx/ui_next/src/components/SelectedList/SelectedList.test.jsx index 2540fe8b76..ea58520acf 100644 --- a/awx/ui_next/src/components/SelectedList/SelectedList.test.jsx +++ b/awx/ui_next/src/components/SelectedList/SelectedList.test.jsx @@ -1,6 +1,6 @@ import React from 'react'; import { mountWithContexts } from '../../../testUtils/enzymeHelpers'; -import ChipGroup from '../../components/ChipGroup'; +import ChipGroup from '../ChipGroup'; import SelectedList from './SelectedList'; diff --git a/awx/ui_next/src/components/StatusIcon/StatusIcon.jsx b/awx/ui_next/src/components/StatusIcon/StatusIcon.jsx index e04a169121..c468d2f2dd 100644 --- a/awx/ui_next/src/components/StatusIcon/StatusIcon.jsx +++ b/awx/ui_next/src/components/StatusIcon/StatusIcon.jsx @@ -77,6 +77,20 @@ const SkippedBottom = styled.div` background-color: #2dbaba; `; +RunningJob.displayName = 'RunningJob'; +WaitingJob.displayName = 'WaitingJob'; +FinishedJob.displayName = 'FinishedJob'; +SuccessfulTop.displayName = 'SuccessfulTop'; +SuccessfulBottom.displayName = 'SuccessfulBottom'; +FailedTop.displayName = 'FailedTop'; +FailedBottom.displayName = 'FailedBottom'; +UnreachableTop.displayName = 'UnreachableTop'; +UnreachableBottom.displayName = 'UnreachableBottom'; +ChangedTop.displayName = 'ChangedTop'; +ChangedBottom.displayName = 'ChangedBottom'; +SkippedTop.displayName = 'SkippedTop'; +SkippedBottom.displayName = 'SkippedBottom'; + const StatusIcon = ({ status, ...props }) => { return (
diff --git a/awx/ui_next/src/components/StatusIcon/StatusIcon.test.jsx b/awx/ui_next/src/components/StatusIcon/StatusIcon.test.jsx index d0b3bf8c17..dd552b3ef4 100644 --- a/awx/ui_next/src/components/StatusIcon/StatusIcon.test.jsx +++ b/awx/ui_next/src/components/StatusIcon/StatusIcon.test.jsx @@ -6,53 +6,53 @@ describe('StatusIcon', () => { test('renders the successful status', () => { const wrapper = mount(); expect(wrapper).toHaveLength(1); - expect(wrapper.find('StatusIcon__SuccessfulTop')).toHaveLength(1); - expect(wrapper.find('StatusIcon__SuccessfulBottom')).toHaveLength(1); + expect(wrapper.find('StatusIcon SuccessfulTop')).toHaveLength(1); + expect(wrapper.find('StatusIcon SuccessfulBottom')).toHaveLength(1); }); test('renders running status', () => { const wrapper = mount(); expect(wrapper).toHaveLength(1); - expect(wrapper.find('StatusIcon__RunningJob')).toHaveLength(1); + expect(wrapper.find('StatusIcon RunningJob')).toHaveLength(1); }); test('renders waiting status', () => { const wrapper = mount(); expect(wrapper).toHaveLength(1); - expect(wrapper.find('StatusIcon__WaitingJob')).toHaveLength(1); + expect(wrapper.find('StatusIcon WaitingJob')).toHaveLength(1); }); test('renders failed status', () => { const wrapper = mount(); expect(wrapper).toHaveLength(1); - expect(wrapper.find('StatusIcon__FailedTop')).toHaveLength(1); - expect(wrapper.find('StatusIcon__FailedBottom')).toHaveLength(1); + expect(wrapper.find('StatusIcon FailedTop')).toHaveLength(1); + expect(wrapper.find('StatusIcon FailedBottom')).toHaveLength(1); }); test('renders a successful status when host status is "ok"', () => { const wrapper = mount(); expect(wrapper).toHaveLength(1); - expect(wrapper.find('StatusIcon__SuccessfulTop')).toHaveLength(1); - expect(wrapper.find('StatusIcon__SuccessfulBottom')).toHaveLength(1); + expect(wrapper.find('StatusIcon SuccessfulTop')).toHaveLength(1); + expect(wrapper.find('StatusIcon SuccessfulBottom')).toHaveLength(1); }); test('renders "failed" host status', () => { const wrapper = mount(); expect(wrapper).toHaveLength(1); - expect(wrapper.find('StatusIcon__FailedTop')).toHaveLength(1); - expect(wrapper.find('StatusIcon__FailedBottom')).toHaveLength(1); + expect(wrapper.find('StatusIcon FailedTop')).toHaveLength(1); + expect(wrapper.find('StatusIcon FailedBottom')).toHaveLength(1); }); test('renders "changed" host status', () => { const wrapper = mount(); expect(wrapper).toHaveLength(1); - expect(wrapper.find('StatusIcon__ChangedTop')).toHaveLength(1); - expect(wrapper.find('StatusIcon__ChangedBottom')).toHaveLength(1); + expect(wrapper.find('StatusIcon ChangedTop')).toHaveLength(1); + expect(wrapper.find('StatusIcon ChangedBottom')).toHaveLength(1); }); test('renders "skipped" host status', () => { const wrapper = mount(); expect(wrapper).toHaveLength(1); - expect(wrapper.find('StatusIcon__SkippedTop')).toHaveLength(1); - expect(wrapper.find('StatusIcon__SkippedBottom')).toHaveLength(1); + expect(wrapper.find('StatusIcon SkippedTop')).toHaveLength(1); + expect(wrapper.find('StatusIcon SkippedBottom')).toHaveLength(1); }); test('renders "unreachable" host status', () => { const wrapper = mount(); expect(wrapper).toHaveLength(1); - expect(wrapper.find('StatusIcon__UnreachableTop')).toHaveLength(1); - expect(wrapper.find('StatusIcon__UnreachableBottom')).toHaveLength(1); + expect(wrapper.find('StatusIcon UnreachableTop')).toHaveLength(1); + expect(wrapper.find('StatusIcon UnreachableBottom')).toHaveLength(1); }); }); diff --git a/awx/ui_next/src/components/Workflow/WorkflowStartNode.jsx b/awx/ui_next/src/components/Workflow/WorkflowStartNode.jsx index e4eb70ea26..7735d6c98d 100644 --- a/awx/ui_next/src/components/Workflow/WorkflowStartNode.jsx +++ b/awx/ui_next/src/components/Workflow/WorkflowStartNode.jsx @@ -9,7 +9,8 @@ import { WorkflowStateContext, } from '../../contexts/Workflow'; import { constants as wfConstants } from './WorkflowUtils'; -import { WorkflowActionTooltip, WorkflowActionTooltipItem } from '.'; +import WorkflowActionTooltip from './WorkflowActionTooltip'; +import WorkflowActionTooltipItem from './WorkflowActionTooltipItem'; const StartG = styled.g` pointer-events: ${props => (props.ignorePointerEvents ? 'none' : 'auto')}; diff --git a/awx/ui_next/src/components/Workflow/index.js b/awx/ui_next/src/components/Workflow/index.js index d3c5d519da..c6f431cccb 100644 --- a/awx/ui_next/src/components/Workflow/index.js +++ b/awx/ui_next/src/components/Workflow/index.js @@ -1,7 +1,5 @@ export { default as WorkflowActionTooltip } from './WorkflowActionTooltip'; -export { - default as WorkflowActionTooltipItem, -} from './WorkflowActionTooltipItem'; +export { default as WorkflowActionTooltipItem } from './WorkflowActionTooltipItem'; export { default as WorkflowHelp } from './WorkflowHelp'; export { default as WorkflowLegend } from './WorkflowLegend'; export { default as WorkflowLinkHelp } from './WorkflowLinkHelp'; diff --git a/awx/ui_next/src/screens/Credential/CredentialList/CredentialList.jsx b/awx/ui_next/src/screens/Credential/CredentialList/CredentialList.jsx index 063b5efd04..792ea25355 100644 --- a/awx/ui_next/src/screens/Credential/CredentialList/CredentialList.jsx +++ b/awx/ui_next/src/screens/Credential/CredentialList/CredentialList.jsx @@ -13,7 +13,7 @@ import PaginatedDataList, { } from '../../../components/PaginatedDataList'; import useRequest, { useDeleteItems } from '../../../util/useRequest'; import { getQSConfig, parseQueryString } from '../../../util/qs'; -import { CredentialListItem } from '.'; +import CredentialListItem from './CredentialListItem'; const QS_CONFIG = getQSConfig('credential', { page: 1, diff --git a/awx/ui_next/src/screens/Inventory/InventoryAdd/InventoryAdd.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryAdd/InventoryAdd.test.jsx index 07941c0997..fc371c7afc 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryAdd/InventoryAdd.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryAdd/InventoryAdd.test.jsx @@ -45,7 +45,10 @@ describe('', () => { expect(wrapper.length).toBe(1); }); test('handleSubmit should call the api and redirect to details page', async () => { - const instanceGroups = [{ name: 'Bizz', id: 1 }, { name: 'Buzz', id: 2 }]; + const instanceGroups = [ + { name: 'Bizz', id: 1 }, + { name: 'Buzz', id: 2 }, + ]; await waitForElement(wrapper, 'isLoading', el => el.length === 0); wrapper.find('InventoryForm').prop('onSubmit')({ diff --git a/awx/ui_next/src/screens/Inventory/InventoryDetail/InventoryDetail.jsx b/awx/ui_next/src/screens/Inventory/InventoryDetail/InventoryDetail.jsx index e82d78fdb2..a4f8a63830 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryDetail/InventoryDetail.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryDetail/InventoryDetail.jsx @@ -4,7 +4,11 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Button, Chip } from '@patternfly/react-core'; import { CardBody, CardActionsRow } from '../../../components/Card'; -import { DetailList, Detail, UserDateDetail } from '../../../components/DetailList'; +import { + DetailList, + Detail, + UserDateDetail, +} from '../../../components/DetailList'; import { VariablesDetail } from '../../../components/CodeMirrorInput'; import DeleteButton from '../../../components/DeleteButton'; import ContentError from '../../../components/ContentError'; diff --git a/awx/ui_next/src/screens/Inventory/InventoryDetail/InventoryDetail.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryDetail/InventoryDetail.test.jsx index 1ceeca5ba9..69f11b4303 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryDetail/InventoryDetail.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryDetail/InventoryDetail.test.jsx @@ -90,11 +90,11 @@ describe('', () => { expectDetailToMatch(wrapper, 'Type', 'Inventory'); const org = wrapper.find('Detail[label="Organization"]'); expect(org.prop('value')).toMatchInlineSnapshot(` - The Organization - + `); const vars = wrapper.find('VariablesDetail'); expect(vars).toHaveLength(1); diff --git a/awx/ui_next/src/screens/Inventory/InventoryEdit/InventoryEdit.test.jsx b/awx/ui_next/src/screens/Inventory/InventoryEdit/InventoryEdit.test.jsx index 67d2a6f249..e2e86956bb 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryEdit/InventoryEdit.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryEdit/InventoryEdit.test.jsx @@ -110,7 +110,10 @@ describe('', () => { test('handleSubmit should post to the api', async () => { await waitForElement(wrapper, 'isLoading', el => el.length === 0); - const instanceGroups = [{ name: 'Bizz', id: 2 }, { name: 'Buzz', id: 3 }]; + const instanceGroups = [ + { name: 'Bizz', id: 2 }, + { name: 'Buzz', id: 3 }, + ]; wrapper.find('InventoryForm').prop('onSubmit')({ name: 'Foo', id: 13, diff --git a/awx/ui_next/src/screens/Inventory/InventoryList/InventoryListItem.jsx b/awx/ui_next/src/screens/Inventory/InventoryList/InventoryListItem.jsx index f71e929eeb..9d272ace69 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryList/InventoryListItem.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryList/InventoryListItem.jsx @@ -18,7 +18,8 @@ import { PencilAltIcon } from '@patternfly/react-icons'; import { timeOfDay } from '../../../util/dates'; import { InventoriesAPI } from '../../../api'; import { Inventory } from '../../../types'; -import CopyButton from '../../../components/CopyButton/CopyButton'; +import DataListCell from '../../../components/DataListCell'; +import CopyButton from '../../../components/CopyButton'; const DataListAction = styled(_DataListAction)` align-items: center; diff --git a/awx/ui_next/src/screens/Inventory/InventorySource/InventorySource.jsx b/awx/ui_next/src/screens/Inventory/InventorySource/InventorySource.jsx index f8fb0b9695..1b88478b55 100644 --- a/awx/ui_next/src/screens/Inventory/InventorySource/InventorySource.jsx +++ b/awx/ui_next/src/screens/Inventory/InventorySource/InventorySource.jsx @@ -9,11 +9,11 @@ import { useRouteMatch, useLocation, } from 'react-router-dom'; +import { CaretLeftIcon } from '@patternfly/react-icons'; +import { CardActions } from '@patternfly/react-core'; import useRequest from '../../../util/useRequest'; import { InventoriesAPI } from '../../../api'; -import { CaretLeftIcon } from '@patternfly/react-icons'; -import { CardActions } from '@patternfly/react-core'; import { TabbedCardHeader } from '../../../components/Card'; import CardCloseButton from '../../../components/CardCloseButton'; import ContentError from '../../../components/ContentError'; diff --git a/awx/ui_next/src/screens/Inventory/InventorySource/InventorySource.test.jsx b/awx/ui_next/src/screens/Inventory/InventorySource/InventorySource.test.jsx index 84df4fbb0b..7e622ca5d9 100644 --- a/awx/ui_next/src/screens/Inventory/InventorySource/InventorySource.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventorySource/InventorySource.test.jsx @@ -2,7 +2,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; import { InventoriesAPI } from '../../../api'; -import { mountWithContexts, waitForElement } from '../../../../testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import mockInventorySource from '../shared/data.inventory_source.json'; import InventorySource from './InventorySource'; diff --git a/awx/ui_next/src/screens/Inventory/InventorySourceDetail/InventorySourceDetail.jsx b/awx/ui_next/src/screens/Inventory/InventorySourceDetail/InventorySourceDetail.jsx index 1921d378ad..cd74091c60 100644 --- a/awx/ui_next/src/screens/Inventory/InventorySourceDetail/InventorySourceDetail.jsx +++ b/awx/ui_next/src/screens/Inventory/InventorySourceDetail/InventorySourceDetail.jsx @@ -15,7 +15,11 @@ import { CardBody, CardActionsRow } from '../../../components/Card'; import { VariablesDetail } from '../../../components/CodeMirrorInput'; import CredentialChip from '../../../components/CredentialChip'; import DeleteButton from '../../../components/DeleteButton'; -import { DetailList, Detail, UserDateDetail } from '../../../components/DetailList'; +import { + DetailList, + Detail, + UserDateDetail, +} from '../../../components/DetailList'; import ErrorDetail from '../../../components/ErrorDetail'; import { InventorySourcesAPI } from '../../../api'; diff --git a/awx/ui_next/src/screens/Inventory/InventorySourceDetail/InventorySourceDetail.test.jsx b/awx/ui_next/src/screens/Inventory/InventorySourceDetail/InventorySourceDetail.test.jsx index 0118d5a16b..1eeab58dca 100644 --- a/awx/ui_next/src/screens/Inventory/InventorySourceDetail/InventorySourceDetail.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventorySourceDetail/InventorySourceDetail.test.jsx @@ -1,7 +1,10 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { mountWithContexts, waitForElement } from '../../../../testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import InventorySourceDetail from './InventorySourceDetail'; import mockInvSource from '../shared/data.inventory_source.json'; import { InventorySourcesAPI } from '../../../api'; diff --git a/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceList.test.jsx b/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceList.test.jsx index f7c98695bb..b34ed5952c 100644 --- a/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceList.test.jsx +++ b/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceList.test.jsx @@ -43,7 +43,14 @@ describe('', () => { InventorySourcesAPI.readOptions.mockResolvedValue({ data: { actions: { - GET: { source: { choices: [['scm', 'SCM'], ['ec2', 'EC2']] } }, + GET: { + source: { + choices: [ + ['scm', 'SCM'], + ['ec2', 'EC2'], + ], + }, + }, POST: {}, }, }, @@ -247,7 +254,14 @@ describe(' RBAC testing', () => { InventorySourcesAPI.readOptions.mockResolvedValue({ data: { actions: { - GET: { source: { choices: [['scm', 'SCM'], ['ec2', 'EC2']] } }, + GET: { + source: { + choices: [ + ['scm', 'SCM'], + ['ec2', 'EC2'], + ], + }, + }, }, }, }); diff --git a/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceSyncButton.jsx b/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceSyncButton.jsx index 54f6f633e6..02d66345ac 100644 --- a/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceSyncButton.jsx +++ b/awx/ui_next/src/screens/Inventory/InventorySources/InventorySourceSyncButton.jsx @@ -100,6 +100,10 @@ function InventorySourceSyncButton({ onSyncLoading, source, i18n }) { ); } +InventorySourceSyncButton.defaultProps = { + source: {}, +}; + InventorySourceSyncButton.propTypes = { onSyncLoading: PropTypes.func.isRequired, source: PropTypes.shape({}), diff --git a/awx/ui_next/src/screens/Inventory/shared/InventoryForm.test.jsx b/awx/ui_next/src/screens/Inventory/shared/InventoryForm.test.jsx index 580ebb79a6..77161446c7 100644 --- a/awx/ui_next/src/screens/Inventory/shared/InventoryForm.test.jsx +++ b/awx/ui_next/src/screens/Inventory/shared/InventoryForm.test.jsx @@ -1,6 +1,9 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; -import { mountWithContexts, waitForElement } from '../../../../testUtils/enzymeHelpers'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import InventoryForm from './InventoryForm'; @@ -47,7 +50,10 @@ const inventory = { pending_deletion: false, }; -const instanceGroups = [{ name: 'Foo', id: 1 }, { name: 'Bar', id: 2 }]; +const instanceGroups = [ + { name: 'Foo', id: 1 }, + { name: 'Bar', id: 2 }, +]; describe('', () => { let wrapper; let onCancel; diff --git a/awx/ui_next/src/screens/Job/JobDetail/JobDetail.test.jsx b/awx/ui_next/src/screens/Job/JobDetail/JobDetail.test.jsx index a27434900f..e5bc71c53d 100644 --- a/awx/ui_next/src/screens/Job/JobDetail/JobDetail.test.jsx +++ b/awx/ui_next/src/screens/Job/JobDetail/JobDetail.test.jsx @@ -59,14 +59,14 @@ describe('', () => { test('should display successful job status icon', () => { const statusDetail = wrapper.find('Detail[label="Status"]'); - expect(statusDetail.find('StatusIcon__SuccessfulTop')).toHaveLength(1); - expect(statusDetail.find('StatusIcon__SuccessfulBottom')).toHaveLength(1); + expect(statusDetail.find('StatusIcon SuccessfulTop')).toHaveLength(1); + expect(statusDetail.find('StatusIcon SuccessfulBottom')).toHaveLength(1); }); test('should display successful project status icon', () => { const statusDetail = wrapper.find('Detail[label="Project"]'); - expect(statusDetail.find('StatusIcon__SuccessfulTop')).toHaveLength(1); - expect(statusDetail.find('StatusIcon__SuccessfulBottom')).toHaveLength(1); + expect(statusDetail.find('StatusIcon SuccessfulTop')).toHaveLength(1); + expect(statusDetail.find('StatusIcon SuccessfulBottom')).toHaveLength(1); }); test('should properly delete job', async () => { diff --git a/awx/ui_next/src/screens/Job/JobOutput/HostEventModal.jsx b/awx/ui_next/src/screens/Job/JobOutput/HostEventModal.jsx index baa9fe3e86..7a9f1c9399 100644 --- a/awx/ui_next/src/screens/Job/JobOutput/HostEventModal.jsx +++ b/awx/ui_next/src/screens/Job/JobOutput/HostEventModal.jsx @@ -4,13 +4,13 @@ import PropTypes from 'prop-types'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import styled from 'styled-components'; -import Entities from 'html-entities'; +import { AllHtmlEntities } from 'html-entities'; import StatusIcon from '../../../components/StatusIcon'; import { DetailList, Detail } from '../../../components/DetailList'; import ContentEmpty from '../../../components/ContentEmpty'; import CodeMirrorInput from '../../../components/CodeMirrorInput'; -const entities = new Entities.AllHtmlEntities(); +const entities = new AllHtmlEntities(); const Modal = styled(PFModal)` --pf-c-modal-box__footer--MarginTop: 0; diff --git a/awx/ui_next/src/screens/Job/JobOutput/HostEventModal.test.jsx b/awx/ui_next/src/screens/Job/JobOutput/HostEventModal.test.jsx index 8706189a04..0a18cc3d93 100644 --- a/awx/ui_next/src/screens/Job/JobOutput/HostEventModal.test.jsx +++ b/awx/ui_next/src/screens/Job/JobOutput/HostEventModal.test.jsx @@ -130,8 +130,8 @@ describe('HostEventModal', () => { ); const icon = wrapper.find('StatusIcon'); expect(icon.prop('status')).toBe('ok'); - expect(icon.find('StatusIcon__SuccessfulTop').length).toBe(1); - expect(icon.find('StatusIcon__SuccessfulBottom').length).toBe(1); + expect(icon.find('StatusIcon SuccessfulTop').length).toBe(1); + expect(icon.find('StatusIcon SuccessfulBottom').length).toBe(1); }); test('should display skipped host status icon', () => { @@ -142,8 +142,8 @@ describe('HostEventModal', () => { const icon = wrapper.find('StatusIcon'); expect(icon.prop('status')).toBe('skipped'); - expect(icon.find('StatusIcon__SkippedTop').length).toBe(1); - expect(icon.find('StatusIcon__SkippedBottom').length).toBe(1); + expect(icon.find('StatusIcon SkippedTop').length).toBe(1); + expect(icon.find('StatusIcon SkippedBottom').length).toBe(1); }); test('should display unreachable host status icon', () => { @@ -162,8 +162,8 @@ describe('HostEventModal', () => { const icon = wrapper.find('StatusIcon'); expect(icon.prop('status')).toBe('unreachable'); - expect(icon.find('StatusIcon__UnreachableTop').length).toBe(1); - expect(icon.find('StatusIcon__UnreachableBottom').length).toBe(1); + expect(icon.find('StatusIcon UnreachableTop').length).toBe(1); + expect(icon.find('StatusIcon UnreachableBottom').length).toBe(1); }); test('should display failed host status icon', () => { @@ -183,8 +183,8 @@ describe('HostEventModal', () => { const icon = wrapper.find('StatusIcon'); expect(icon.prop('status')).toBe('failed'); - expect(icon.find('StatusIcon__FailedTop').length).toBe(1); - expect(icon.find('StatusIcon__FailedBottom').length).toBe(1); + expect(icon.find('StatusIcon FailedTop').length).toBe(1); + expect(icon.find('StatusIcon FailedBottom').length).toBe(1); }); test('should display JSON tab content on tab click', () => { diff --git a/awx/ui_next/src/screens/Job/JobOutput/JobEvent.jsx b/awx/ui_next/src/screens/Job/JobOutput/JobEvent.jsx index f94e0ed12d..59908f695c 100644 --- a/awx/ui_next/src/screens/Job/JobOutput/JobEvent.jsx +++ b/awx/ui_next/src/screens/Job/JobOutput/JobEvent.jsx @@ -1,6 +1,6 @@ import Ansi from 'ansi-to-html'; import hasAnsi from 'has-ansi'; -import Entities from 'html-entities'; +import { AllHtmlEntities } from 'html-entities'; import React from 'react'; import { JobEventLine, @@ -35,7 +35,7 @@ const ansi = new Ansi({ 15: '#FFF', }, }); -const entities = new Entities.AllHtmlEntities(); +const entities = new AllHtmlEntities(); function getTimestamp({ created }) { const date = new Date(created); diff --git a/awx/ui_next/src/screens/Job/JobOutput/JobOutput.test.jsx b/awx/ui_next/src/screens/Job/JobOutput/JobOutput.test.jsx index 8771ce63ac..5afa5d2573 100644 --- a/awx/ui_next/src/screens/Job/JobOutput/JobOutput.test.jsx +++ b/awx/ui_next/src/screens/Job/JobOutput/JobOutput.test.jsx @@ -12,7 +12,7 @@ jest.mock('../../../api'); async function checkOutput(wrapper, expectedLines) { await waitForElement(wrapper, 'div[type="job_event"]', el => el.length > 1); - const jobEventLines = wrapper.find('div[type="job_event_line_text"]'); + const jobEventLines = wrapper.find('JobEventLineText div'); const actualLines = []; jobEventLines.forEach(line => { actualLines.push(line.text()); @@ -67,58 +67,184 @@ describe('', () => { wrapper = mountWithContexts(); await waitForElement(wrapper, 'JobEvent', el => el.length > 0); await checkOutput(wrapper, [ + 'ok: [localhost] => (item=37) => {', + ' "msg": "This is a debug message: 37"', + '}', + 'ok: [localhost] => (item=38) => {', + ' "msg": "This is a debug message: 38"', + '}', + 'ok: [localhost] => (item=39) => {', + ' "msg": "This is a debug message: 39"', + '}', + 'ok: [localhost] => (item=40) => {', + ' "msg": "This is a debug message: 40"', + '}', + 'ok: [localhost] => (item=41) => {', + ' "msg": "This is a debug message: 41"', + '}', + 'ok: [localhost] => (item=42) => {', + ' "msg": "This is a debug message: 42"', + '}', + 'ok: [localhost] => (item=43) => {', + ' "msg": "This is a debug message: 43"', + '}', + 'ok: [localhost] => (item=44) => {', + ' "msg": "This is a debug message: 44"', + '}', + 'ok: [localhost] => (item=45) => {', + ' "msg": "This is a debug message: 45"', + '}', + 'ok: [localhost] => (item=46) => {', + ' "msg": "This is a debug message: 46"', + '}', + 'ok: [localhost] => (item=47) => {', + ' "msg": "This is a debug message: 47"', + '}', + 'ok: [localhost] => (item=48) => {', + ' "msg": "This is a debug message: 48"', + '}', + 'ok: [localhost] => (item=49) => {', + ' "msg": "This is a debug message: 49"', + '}', + 'ok: [localhost] => (item=50) => {', + ' "msg": "This is a debug message: 50"', + '}', + 'ok: [localhost] => (item=51) => {', + ' "msg": "This is a debug message: 51"', + '}', + 'ok: [localhost] => (item=52) => {', + ' "msg": "This is a debug message: 52"', + '}', + 'ok: [localhost] => (item=53) => {', + ' "msg": "This is a debug message: 53"', + '}', + 'ok: [localhost] => (item=54) => {', + ' "msg": "This is a debug message: 54"', + '}', + 'ok: [localhost] => (item=55) => {', + ' "msg": "This is a debug message: 55"', + '}', + 'ok: [localhost] => (item=56) => {', + ' "msg": "This is a debug message: 56"', + '}', + 'ok: [localhost] => (item=57) => {', + ' "msg": "This is a debug message: 57"', + '}', + 'ok: [localhost] => (item=58) => {', + ' "msg": "This is a debug message: 58"', + '}', + 'ok: [localhost] => (item=59) => {', + ' "msg": "This is a debug message: 59"', + '}', + 'ok: [localhost] => (item=60) => {', + ' "msg": "This is a debug message: 60"', + '}', + 'ok: [localhost] => (item=61) => {', + ' "msg": "This is a debug message: 61"', + '}', + 'ok: [localhost] => (item=62) => {', + ' "msg": "This is a debug message: 62"', + '}', + 'ok: [localhost] => (item=63) => {', + ' "msg": "This is a debug message: 63"', + '}', + 'ok: [localhost] => (item=64) => {', + ' "msg": "This is a debug message: 64"', + '}', + 'ok: [localhost] => (item=65) => {', + ' "msg": "This is a debug message: 65"', + '}', + 'ok: [localhost] => (item=66) => {', + ' "msg": "This is a debug message: 66"', + '}', + 'ok: [localhost] => (item=67) => {', + ' "msg": "This is a debug message: 67"', + '}', + 'ok: [localhost] => (item=68) => {', + ' "msg": "This is a debug message: 68"', + '}', + 'ok: [localhost] => (item=69) => {', + ' "msg": "This is a debug message: 69"', + '}', + 'ok: [localhost] => (item=70) => {', + ' "msg": "This is a debug message: 70"', + '}', + 'ok: [localhost] => (item=71) => {', + ' "msg": "This is a debug message: 71"', + '}', + 'ok: [localhost] => (item=72) => {', + ' "msg": "This is a debug message: 72"', + '}', + 'ok: [localhost] => (item=73) => {', + ' "msg": "This is a debug message: 73"', + '}', + 'ok: [localhost] => (item=74) => {', + ' "msg": "This is a debug message: 74"', + '}', + 'ok: [localhost] => (item=75) => {', + ' "msg": "This is a debug message: 75"', + '}', + 'ok: [localhost] => (item=76) => {', + ' "msg": "This is a debug message: 76"', + '}', + 'ok: [localhost] => (item=77) => {', + ' "msg": "This is a debug message: 77"', + '}', + 'ok: [localhost] => (item=78) => {', + ' "msg": "This is a debug message: 78"', + '}', + 'ok: [localhost] => (item=79) => {', + ' "msg": "This is a debug message: 79"', + '}', + 'ok: [localhost] => (item=80) => {', + ' "msg": "This is a debug message: 80"', + '}', + 'ok: [localhost] => (item=81) => {', + ' "msg": "This is a debug message: 81"', + '}', + 'ok: [localhost] => (item=82) => {', + ' "msg": "This is a debug message: 82"', + '}', + 'ok: [localhost] => (item=83) => {', + ' "msg": "This is a debug message: 83"', + '}', + 'ok: [localhost] => (item=84) => {', + ' "msg": "This is a debug message: 84"', + '}', + 'ok: [localhost] => (item=85) => {', + ' "msg": "This is a debug message: 85"', + '}', + 'ok: [localhost] => (item=86) => {', + ' "msg": "This is a debug message: 86"', + '}', + 'ok: [localhost] => (item=87) => {', + ' "msg": "This is a debug message: 87"', + '}', + 'ok: [localhost] => (item=88) => {', + ' "msg": "This is a debug message: 88"', + '}', + 'ok: [localhost] => (item=89) => {', + ' "msg": "This is a debug message: 89"', + '}', + 'ok: [localhost] => (item=90) => {', + ' "msg": "This is a debug message: 90"', + '}', + 'ok: [localhost] => (item=91) => {', + ' "msg": "This is a debug message: 91"', + '}', + 'ok: [localhost] => (item=92) => {', + ' "msg": "This is a debug message: 92"', + '}', + 'ok: [localhost] => (item=93) => {', + ' "msg": "This is a debug message: 93"', + '}', + 'ok: [localhost] => (item=94) => {', + ' "msg": "This is a debug message: 94"', + '}', '', - 'PLAY [all] *********************************************************************15:37:25', + 'PLAY RECAP *********************************************************************15:37:26', + 'localhost : ok=1 changed=0 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0 ', '', - 'TASK [debug] *******************************************************************15:37:25', - 'ok: [localhost] => (item=1) => {', - ' "msg": "This is a debug message: 1"', - '}', - 'ok: [localhost] => (item=2) => {', - ' "msg": "This is a debug message: 2"', - '}', - 'ok: [localhost] => (item=3) => {', - ' "msg": "This is a debug message: 3"', - '}', - 'ok: [localhost] => (item=4) => {', - ' "msg": "This is a debug message: 4"', - '}', - 'ok: [localhost] => (item=5) => {', - ' "msg": "This is a debug message: 5"', - '}', - 'ok: [localhost] => (item=6) => {', - ' "msg": "This is a debug message: 6"', - '}', - 'ok: [localhost] => (item=7) => {', - ' "msg": "This is a debug message: 7"', - '}', - 'ok: [localhost] => (item=8) => {', - ' "msg": "This is a debug message: 8"', - '}', - 'ok: [localhost] => (item=9) => {', - ' "msg": "This is a debug message: 9"', - '}', - 'ok: [localhost] => (item=10) => {', - ' "msg": "This is a debug message: 10"', - '}', - 'ok: [localhost] => (item=11) => {', - ' "msg": "This is a debug message: 11"', - '}', - 'ok: [localhost] => (item=12) => {', - ' "msg": "This is a debug message: 12"', - '}', - 'ok: [localhost] => (item=13) => {', - ' "msg": "This is a debug message: 13"', - '}', - 'ok: [localhost] => (item=14) => {', - ' "msg": "This is a debug message: 14"', - '}', - 'ok: [localhost] => (item=15) => {', - ' "msg": "This is a debug message: 15"', - '}', - 'ok: [localhost] => (item=16) => {', - ' "msg": "This is a debug message: 16"', - '}', ]); expect(wrapper.find('JobOutput').length).toBe(1); diff --git a/awx/ui_next/src/screens/Job/JobOutput/shared/HostStatusBar.jsx b/awx/ui_next/src/screens/Job/JobOutput/shared/HostStatusBar.jsx index d6e47092e9..605419bab1 100644 --- a/awx/ui_next/src/screens/Job/JobOutput/shared/HostStatusBar.jsx +++ b/awx/ui_next/src/screens/Job/JobOutput/shared/HostStatusBar.jsx @@ -16,6 +16,7 @@ const BarSegment = styled.div` background-color: ${props => props.color || 'inherit'}; flex-grow: ${props => props.count || 0}; `; +BarSegment.displayName = 'BarSegment'; const TooltipContent = styled.div` align-items: center; diff --git a/awx/ui_next/src/screens/Job/JobOutput/shared/HostStatusBar.test.jsx b/awx/ui_next/src/screens/Job/JobOutput/shared/HostStatusBar.test.jsx index e97cb598f0..5174501386 100644 --- a/awx/ui_next/src/screens/Job/JobOutput/shared/HostStatusBar.test.jsx +++ b/awx/ui_next/src/screens/Job/JobOutput/shared/HostStatusBar.test.jsx @@ -22,7 +22,7 @@ describe('', () => { }); test('should render five bar segments', () => { - expect(wrapper.find('HostStatusBar__BarSegment').length).toBe(5); + expect(wrapper.find('BarSegment').length).toBe(5); }); test('tooltips should display host status and count', () => { @@ -44,7 +44,7 @@ describe('', () => { test('empty host counts should display tooltip and one bar segment', () => { wrapper = mountWithContexts(); - expect(wrapper.find('HostStatusBar__BarSegment').length).toBe(1); + expect(wrapper.find('BarSegment').length).toBe(1); expect(wrapper.find('TooltipContent').text()).toEqual( 'Host status information for this job is unavailable.' ); diff --git a/awx/ui_next/src/screens/Job/JobOutput/shared/JobEventLineNumber.jsx b/awx/ui_next/src/screens/Job/JobOutput/shared/JobEventLineNumber.jsx index 52b3c4b670..e724ddb59b 100644 --- a/awx/ui_next/src/screens/Job/JobOutput/shared/JobEventLineNumber.jsx +++ b/awx/ui_next/src/screens/Job/JobOutput/shared/JobEventLineNumber.jsx @@ -1,6 +1,6 @@ import styled from 'styled-components'; -export default styled.div` +const JobEventLineNumber = styled.div` color: #161b1f; background-color: #ebebeb; flex: 0 0 45px; @@ -10,3 +10,7 @@ export default styled.div` border-right: 1px solid #d7d7d7; user-select: none; `; + +JobEventLineNumber.displayName = 'JobEventLineNumber'; + +export default JobEventLineNumber; diff --git a/awx/ui_next/src/screens/Job/JobOutput/shared/JobEventLineText.jsx b/awx/ui_next/src/screens/Job/JobOutput/shared/JobEventLineText.jsx index 71f80a3134..50c7996dee 100644 --- a/awx/ui_next/src/screens/Job/JobOutput/shared/JobEventLineText.jsx +++ b/awx/ui_next/src/screens/Job/JobOutput/shared/JobEventLineText.jsx @@ -1,6 +1,6 @@ import styled from 'styled-components'; -export default styled.div` +const JobEventLineText = styled.div` padding: 0 15px; white-space: pre-wrap; word-break: break-all; @@ -27,3 +27,7 @@ export default styled.div` border-radius: 5px; } `; + +JobEventLineText.displayName = 'JobEventLineText'; + +export default JobEventLineText; diff --git a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputGraph.jsx b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputGraph.jsx index 8f752131f1..d2e52b8153 100644 --- a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputGraph.jsx +++ b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputGraph.jsx @@ -5,7 +5,8 @@ import { getScaleAndOffsetToFit, getTranslatePointsForZoom, } from '../../../components/Workflow/WorkflowUtils'; -import { WorkflowOutputLink, WorkflowOutputNode } from '.'; +import WorkflowOutputLink from './WorkflowOutputLink'; +import WorkflowOutputNode from './WorkflowOutputNode'; import { WorkflowHelp, WorkflowLegend, diff --git a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputNode.jsx b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputNode.jsx index b8551e872e..4a566834ac 100644 --- a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputNode.jsx +++ b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputNode.jsx @@ -59,6 +59,8 @@ const NodeDefaultLabel = styled.p` white-space: nowrap; `; +Elapsed.displayName = 'Elapsed'; + function WorkflowOutputNode({ i18n, mouseEnter, mouseLeave, node }) { const history = useHistory(); const { nodePositions } = useContext(WorkflowStateContext); diff --git a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputNode.test.jsx b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputNode.test.jsx index 3c982f8e86..feb9de5b38 100644 --- a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputNode.test.jsx +++ b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputNode.test.jsx @@ -73,7 +73,7 @@ describe('WorkflowOutputNode', () => { ); expect(wrapper.contains(

Automation JT

)).toEqual(true); - expect(wrapper.find('WorkflowOutputNode__Elapsed').text()).toBe('00:00:07'); + expect(wrapper.find('WorkflowOutputNode Elapsed').text()).toBe('00:00:07'); }); test('node contents displayed correctly when Job Template deleted', () => { const wrapper = mountWithContexts( @@ -88,7 +88,7 @@ describe('WorkflowOutputNode', () => { ); expect(wrapper.contains(

Automation JT 2

)).toEqual(true); - expect(wrapper.find('WorkflowOutputNode__Elapsed').text()).toBe('00:00:07'); + expect(wrapper.find('WorkflowOutputNode Elapsed').text()).toBe('00:00:07'); }); test('node contents displayed correctly when Job deleted', () => { const wrapper = mountWithContexts( diff --git a/awx/ui_next/src/screens/Login/Login.jsx b/awx/ui_next/src/screens/Login/Login.jsx index 51617be26c..ff0254b848 100644 --- a/awx/ui_next/src/screens/Login/Login.jsx +++ b/awx/ui_next/src/screens/Login/Login.jsx @@ -7,7 +7,7 @@ import { LoginForm, LoginPage as PFLoginPage } from '@patternfly/react-core'; import { RootAPI } from '../../api'; import { BrandName } from '../../variables'; -import brandLogo from '../../../images/brand-logo.svg'; +import brandLogo from './brand-logo.svg'; const LoginPage = styled(PFLoginPage)` & .pf-c-brand { diff --git a/awx/ui_next/src/screens/Login/brand-logo.svg b/awx/ui_next/src/screens/Login/brand-logo.svg new file mode 100644 index 0000000000..6d80915fb6 --- /dev/null +++ b/awx/ui_next/src/screens/Login/brand-logo.svg @@ -0,0 +1,232 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/awx/ui_next/src/screens/Organization/OrganizationAdd/OrganizationAdd.test.jsx b/awx/ui_next/src/screens/Organization/OrganizationAdd/OrganizationAdd.test.jsx index 978fbeed86..1d579fb85d 100644 --- a/awx/ui_next/src/screens/Organization/OrganizationAdd/OrganizationAdd.test.jsx +++ b/awx/ui_next/src/screens/Organization/OrganizationAdd/OrganizationAdd.test.jsx @@ -92,7 +92,10 @@ describe('', () => { }); test('AnsibleSelect component renders if there are virtual environments', async () => { - const mockInstanceGroups = [{ name: 'One', id: 1 }, { name: 'Two', id: 2 }]; + const mockInstanceGroups = [ + { name: 'One', id: 1 }, + { name: 'Two', id: 2 }, + ]; OrganizationsAPI.readInstanceGroups.mockReturnValue({ data: { results: mockInstanceGroups, @@ -119,7 +122,10 @@ describe('', () => { }); test('AnsibleSelect component does not render if there are 0 virtual environments', async () => { - const mockInstanceGroups = [{ name: 'One', id: 1 }, { name: 'Two', id: 2 }]; + const mockInstanceGroups = [ + { name: 'One', id: 1 }, + { name: 'Two', id: 2 }, + ]; OrganizationsAPI.readInstanceGroups.mockReturnValue({ data: { results: mockInstanceGroups, diff --git a/awx/ui_next/src/screens/Organization/OrganizationDetail/OrganizationDetail.jsx b/awx/ui_next/src/screens/Organization/OrganizationDetail/OrganizationDetail.jsx index 58444a3d19..ff6bd42012 100644 --- a/awx/ui_next/src/screens/Organization/OrganizationDetail/OrganizationDetail.jsx +++ b/awx/ui_next/src/screens/Organization/OrganizationDetail/OrganizationDetail.jsx @@ -4,7 +4,11 @@ import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; import { Button, Chip } from '@patternfly/react-core'; import { OrganizationsAPI } from '../../../api'; -import { DetailList, Detail, UserDateDetail } from '../../../components/DetailList'; +import { + DetailList, + Detail, + UserDateDetail, +} from '../../../components/DetailList'; import { CardBody, CardActionsRow } from '../../../components/Card'; import AlertModal from '../../../components/AlertModal'; import ChipGroup from '../../../components/ChipGroup'; diff --git a/awx/ui_next/src/screens/Organization/OrganizationDetail/OrganizationDetail.test.jsx b/awx/ui_next/src/screens/Organization/OrganizationDetail/OrganizationDetail.test.jsx index f1c3b3875f..0c946f1265 100644 --- a/awx/ui_next/src/screens/Organization/OrganizationDetail/OrganizationDetail.test.jsx +++ b/awx/ui_next/src/screens/Organization/OrganizationDetail/OrganizationDetail.test.jsx @@ -28,7 +28,10 @@ describe('', () => { }; const mockInstanceGroups = { data: { - results: [{ name: 'One', id: 1 }, { name: 'Two', id: 2 }], + results: [ + { name: 'One', id: 1 }, + { name: 'Two', id: 2 }, + ], }, }; diff --git a/awx/ui_next/src/screens/Organization/OrganizationEdit/OrganizationEdit.test.jsx b/awx/ui_next/src/screens/Organization/OrganizationEdit/OrganizationEdit.test.jsx index 7e8b16fe49..ea62e38c9e 100644 --- a/awx/ui_next/src/screens/Organization/OrganizationEdit/OrganizationEdit.test.jsx +++ b/awx/ui_next/src/screens/Organization/OrganizationEdit/OrganizationEdit.test.jsx @@ -64,7 +64,10 @@ describe('', () => { }); test('should navigate to organization detail when cancel is clicked', async () => { - const mockInstanceGroups = [{ name: 'One', id: 1 }, { name: 'Two', id: 2 }]; + const mockInstanceGroups = [ + { name: 'One', id: 1 }, + { name: 'Two', id: 2 }, + ]; OrganizationsAPI.readInstanceGroups.mockReturnValue({ data: { results: mockInstanceGroups, diff --git a/awx/ui_next/src/screens/Organization/shared/OrganizationForm.test.jsx b/awx/ui_next/src/screens/Organization/shared/OrganizationForm.test.jsx index abd55fcc44..0048a13b13 100644 --- a/awx/ui_next/src/screens/Organization/shared/OrganizationForm.test.jsx +++ b/awx/ui_next/src/screens/Organization/shared/OrganizationForm.test.jsx @@ -27,7 +27,10 @@ describe('', () => { instance_groups: '/api/v2/organizations/1/instance_groups', }, }; - const mockInstanceGroups = [{ name: 'One', id: 1 }, { name: 'Two', id: 2 }]; + const mockInstanceGroups = [ + { name: 'One', id: 1 }, + { name: 'Two', id: 2 }, + ]; afterEach(() => { jest.clearAllMocks(); @@ -232,7 +235,10 @@ describe('', () => { await waitForElement(wrapper, 'ContentLoading', el => el.length === 0); await act(async () => { wrapper.find('InstanceGroupsLookup').prop('onChange')( - [{ name: 'One', id: 1 }, { name: 'Three', id: 3 }], + [ + { name: 'One', id: 1 }, + { name: 'Three', id: 3 }, + ], 'instanceGroups' ); }); diff --git a/awx/ui_next/src/screens/Project/ProjectList/ProjectListItem.jsx b/awx/ui_next/src/screens/Project/ProjectList/ProjectListItem.jsx index c506b0f548..a9ef04ed9c 100644 --- a/awx/ui_next/src/screens/Project/ProjectList/ProjectListItem.jsx +++ b/awx/ui_next/src/screens/Project/ProjectList/ProjectListItem.jsx @@ -19,6 +19,7 @@ import { timeOfDay } from '../../../util/dates'; import { ProjectsAPI } from '../../../api'; import ClipboardCopyButton from '../../../components/ClipboardCopyButton'; import StatusIcon from '../../../components/StatusIcon'; +import DataListCell from '../../../components/DataListCell'; import { toTitleCase } from '../../../util/strings'; import CopyButton from '../../../components/CopyButton'; import ProjectSyncButton from '../shared/ProjectSyncButton'; diff --git a/awx/ui_next/src/screens/Project/ProjectList/ProjectListItem.test.jsx b/awx/ui_next/src/screens/Project/ProjectList/ProjectListItem.test.jsx index 74c61fbed5..9dfa8e8f1b 100644 --- a/awx/ui_next/src/screens/Project/ProjectList/ProjectListItem.test.jsx +++ b/awx/ui_next/src/screens/Project/ProjectList/ProjectListItem.test.jsx @@ -1,7 +1,7 @@ import React from 'react'; -import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import { act } from 'react-dom/test-utils'; +import { mountWithContexts } from '../../../../testUtils/enzymeHelpers'; import ProjectsListItem from './ProjectListItem'; import { ProjectsAPI } from '../../../api'; diff --git a/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessList.jsx b/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessList.jsx index c7cadc1fe6..79531fb561 100644 --- a/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessList.jsx +++ b/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessList.jsx @@ -4,8 +4,8 @@ import { useLocation, useRouteMatch, useParams } from 'react-router-dom'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; -import { TeamsAPI } from '../../../api'; import { Card } from '@patternfly/react-core'; +import { TeamsAPI } from '../../../api'; import useRequest from '../../../util/useRequest'; import DataListToolbar from '../../../components/DataListToolbar'; diff --git a/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessList.test.jsx b/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessList.test.jsx index fba2bb0d23..b7b5e26025 100644 --- a/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessList.test.jsx +++ b/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessList.test.jsx @@ -1,9 +1,12 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { TeamsAPI } from '../../../api'; import { Route } from 'react-router-dom'; -import { mountWithContexts, waitForElement } from '../../../../testUtils/enzymeHelpers'; +import { TeamsAPI } from '../../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import TeamAccessList from './TeamAccessList'; jest.mock('../../../api/models/Teams'); diff --git a/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessListItem.jsx b/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessListItem.jsx index 838163b144..117ce861ab 100644 --- a/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessListItem.jsx +++ b/awx/ui_next/src/screens/Team/TeamAccess/TeamAccessListItem.jsx @@ -6,9 +6,8 @@ import { DataListItemCells, DataListItemRow, } from '@patternfly/react-core'; -import DataListCell from '../../../components/DataListCell'; - import { Link } from 'react-router-dom'; +import DataListCell from '../../../components/DataListCell'; function TeamAccessListItem({ role, i18n, detailUrl }) { const labelId = `teamRole-${role.id}`; diff --git a/awx/ui_next/src/screens/Template/JobTemplateDetail/JobTemplateDetail.test.jsx b/awx/ui_next/src/screens/Template/JobTemplateDetail/JobTemplateDetail.test.jsx index a1fecf6f60..3f147ebaa0 100644 --- a/awx/ui_next/src/screens/Template/JobTemplateDetail/JobTemplateDetail.test.jsx +++ b/awx/ui_next/src/screens/Template/JobTemplateDetail/JobTemplateDetail.test.jsx @@ -13,7 +13,10 @@ jest.mock('../../../api'); const mockInstanceGroups = { count: 5, data: { - results: [{ id: 1, name: 'IG1' }, { id: 2, name: 'IG2' }], + results: [ + { id: 1, name: 'IG1' }, + { id: 2, name: 'IG2' }, + ], }, }; diff --git a/awx/ui_next/src/screens/Template/JobTemplateEdit/JobTemplateEdit.test.jsx b/awx/ui_next/src/screens/Template/JobTemplateEdit/JobTemplateEdit.test.jsx index b2dfd57eee..b6dbc78281 100644 --- a/awx/ui_next/src/screens/Template/JobTemplateEdit/JobTemplateEdit.test.jsx +++ b/awx/ui_next/src/screens/Template/JobTemplateEdit/JobTemplateEdit.test.jsx @@ -46,7 +46,10 @@ const mockJobTemplate = { edit: true, }, labels: { - results: [{ name: 'Sushi', id: 1 }, { name: 'Major', id: 2 }], + results: [ + { name: 'Sushi', id: 1 }, + { name: 'Major', id: 2 }, + ], }, inventory: { id: 2, @@ -309,7 +312,10 @@ describe('', () => { edit: true, }, labels: { - results: [{ name: 'Sushi', id: 1 }, { name: 'Major', id: 2 }], + results: [ + { name: 'Sushi', id: 1 }, + { name: 'Major', id: 2 }, + ], }, inventory: { id: 2, diff --git a/awx/ui_next/src/screens/Template/Survey/SurveyListItem.jsx b/awx/ui_next/src/screens/Template/Survey/SurveyListItem.jsx index 6d3a3a8957..b978d5927d 100644 --- a/awx/ui_next/src/screens/Template/Survey/SurveyListItem.jsx +++ b/awx/ui_next/src/screens/Template/Survey/SurveyListItem.jsx @@ -13,11 +13,10 @@ import { Stack, StackItem, } from '@patternfly/react-core'; -import DataListCell from '../../../components/DataListCell'; -import ChipGroup from '../../../components/ChipGroup'; import { CaretDownIcon, CaretUpIcon } from '@patternfly/react-icons'; import styled from 'styled-components'; import DataListCell from '../../../components/DataListCell'; +import ChipGroup from '../../../components/ChipGroup'; const DataListAction = styled(_DataListAction)` margin-left: 0; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateDetail/WorkflowJobTemplateDetail.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateDetail/WorkflowJobTemplateDetail.jsx index c75e020174..ddbadb8b16 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateDetail/WorkflowJobTemplateDetail.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateDetail/WorkflowJobTemplateDetail.jsx @@ -19,7 +19,11 @@ import ChipGroup from '../../../components/ChipGroup'; import { VariablesDetail } from '../../../components/CodeMirrorInput'; import ContentLoading from '../../../components/ContentLoading'; import DeleteButton from '../../../components/DeleteButton'; -import { DetailList, Detail, UserDateDetail } from '../../../components/DetailList'; +import { + DetailList, + Detail, + UserDateDetail, +} from '../../../components/DetailList'; import ErrorDetail from '../../../components/ErrorDetail'; import LaunchButton from '../../../components/LaunchButton'; import Sparkline from '../../../components/Sparkline'; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateDetail/WorkflowJobTemplateDetail.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateDetail/WorkflowJobTemplateDetail.test.jsx index b3ee7736c9..9930643538 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateDetail/WorkflowJobTemplateDetail.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateDetail/WorkflowJobTemplateDetail.test.jsx @@ -100,7 +100,7 @@ describe('', () => { { element: 'Detail[label="Webhook URL"]', prop: 'value', - value: 'http://127.0.0.1:3001/api/v2/workflow_job_templates/45/github/', + value: 'http://localhost/api/v2/workflow_job_templates/45/github/', }, { element: "Detail[label='Webhook Service']", @@ -136,7 +136,7 @@ describe('', () => { const labels = wrapper .find('Detail[label="Labels"]') .find('Chip[component="li"]'); - const sparkline = wrapper.find('Sparkline__Link'); + const sparkline = wrapper.find('Sparkline Link'); expect(organization.text()).toBe('Org'); expect(inventory.text()).toEqual('Bar'); diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateEdit/WorkflowJobTemplateEdit.test.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateEdit/WorkflowJobTemplateEdit.test.jsx index b9984f2f3e..81ae43e817 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateEdit/WorkflowJobTemplateEdit.test.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateEdit/WorkflowJobTemplateEdit.test.jsx @@ -23,7 +23,10 @@ const mockTemplate = { inventory: { id: 1, name: 'Inventory 1' }, organization: { id: 1, name: 'Organization 1' }, labels: { - results: [{ name: 'Label 1', id: 1 }, { name: 'Label 2', id: 2 }], + results: [ + { name: 'Label 1', id: 1 }, + { name: 'Label 2', id: 2 }, + ], }, }, scm_branch: 'devel', @@ -187,7 +190,10 @@ describe('', () => { summary_fields: { inventory: { id: 1, name: 'Inventory 1' }, labels: { - results: [{ name: 'Label 1', id: 1 }, { name: 'Label 2', id: 2 }], + results: [ + { name: 'Label 1', id: 1 }, + { name: 'Label 2', id: 2 }, + ], }, }, scm_branch: 'devel', diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx index 47971fe236..11a691575d 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx @@ -14,7 +14,8 @@ import { } from '../../../../../contexts/Workflow'; import Wizard from '../../../../../components/Wizard'; import { NodeTypeStep } from './NodeTypeStep'; -import { RunStep, NodeNextButton } from '.'; +import RunStep from './RunStep'; +import NodeNextButton from './NodeNextButton'; function NodeModal({ askLinkType, i18n, onSave, title }) { const history = useHistory(); diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/index.js b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/index.js index 7864636d38..da82572dd3 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/index.js +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/index.js @@ -2,6 +2,4 @@ export { default as InventorySourcesList } from './InventorySourcesList'; export { default as JobTemplatesList } from './JobTemplatesList'; export { default as NodeTypeStep } from './NodeTypeStep'; export { default as ProjectsList } from './ProjectsList'; -export { - default as WorkflowJobTemplatesList, -} from './WorkflowJobTemplatesList'; +export { default as WorkflowJobTemplatesList } from './WorkflowJobTemplatesList'; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerGraph.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerGraph.jsx index 55948c052f..7975d7140f 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerGraph.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerGraph.jsx @@ -21,7 +21,8 @@ import { WorkflowStartNode, WorkflowTools, } from '../../../components/Workflow'; -import { VisualizerLink, VisualizerNode } from '.'; +import VisualizerLink from './VisualizerLink'; +import VisualizerNode from './VisualizerNode'; const PotentialLink = styled.polyline` pointer-events: none; diff --git a/awx/ui_next/src/screens/Template/shared/JobTemplateForm.test.jsx b/awx/ui_next/src/screens/Template/shared/JobTemplateForm.test.jsx index 978d0dba05..b4664cb2bf 100644 --- a/awx/ui_next/src/screens/Template/shared/JobTemplateForm.test.jsx +++ b/awx/ui_next/src/screens/Template/shared/JobTemplateForm.test.jsx @@ -38,7 +38,12 @@ describe('', () => { id: 3, name: 'qux', }, - labels: { results: [{ name: 'Sushi', id: 1 }, { name: 'Major', id: 2 }] }, + labels: { + results: [ + { name: 'Sushi', id: 1 }, + { name: 'Major', id: 2 }, + ], + }, credentials: [ { id: 1, kind: 'cloud', name: 'Foo' }, { id: 2, kind: 'ssh', name: 'Bar' }, diff --git a/awx/ui_next/src/screens/Template/shared/LabelSelect.test.jsx b/awx/ui_next/src/screens/Template/shared/LabelSelect.test.jsx index 39342dd3fe..b47c6643fa 100644 --- a/awx/ui_next/src/screens/Template/shared/LabelSelect.test.jsx +++ b/awx/ui_next/src/screens/Template/shared/LabelSelect.test.jsx @@ -6,7 +6,10 @@ import LabelSelect from './LabelSelect'; jest.mock('../../../api'); -const options = [{ id: 1, name: 'one' }, { id: 2, name: 'two' }]; +const options = [ + { id: 1, name: 'one' }, + { id: 2, name: 'two' }, +]; describe('', () => { afterEach(() => { @@ -40,7 +43,10 @@ describe('', () => { }); LabelsAPI.read.mockReturnValueOnce({ data: { - results: [{ id: 3, name: 'three' }, { id: 4, name: 'four' }], + results: [ + { id: 3, name: 'three' }, + { id: 4, name: 'four' }, + ], }, }); let wrapper; diff --git a/awx/ui_next/src/screens/Template/shared/WebhookSubForm.jsx b/awx/ui_next/src/screens/Template/shared/WebhookSubForm.jsx index 3141a650b7..94adbeb600 100644 --- a/awx/ui_next/src/screens/Template/shared/WebhookSubForm.jsx +++ b/awx/ui_next/src/screens/Template/shared/WebhookSubForm.jsx @@ -9,10 +9,10 @@ import { InputGroup, Button, } from '@patternfly/react-core'; +import { useField } from 'formik'; import ContentError from '../../../components/ContentError'; import ContentLoading from '../../../components/ContentLoading'; import useRequest from '../../../util/useRequest'; -import { useField } from 'formik'; import { FormColumnLayout } from '../../../components/FormLayout'; import { CredentialLookup } from '../../../components/Lookup'; import AnsibleSelect from '../../../components/AnsibleSelect'; diff --git a/awx/ui_next/src/screens/Template/shared/WorkflowJobTemplateForm.test.jsx b/awx/ui_next/src/screens/Template/shared/WorkflowJobTemplateForm.test.jsx index 57747a12bf..4cddaec8e7 100644 --- a/awx/ui_next/src/screens/Template/shared/WorkflowJobTemplateForm.test.jsx +++ b/awx/ui_next/src/screens/Template/shared/WorkflowJobTemplateForm.test.jsx @@ -32,7 +32,10 @@ describe('', () => { inventory: { id: 1, name: 'Inventory 1' }, organization: { id: 1, name: 'Organization 1' }, labels: { - results: [{ name: 'Label 1', id: 1 }, { name: 'Label 2', id: 2 }], + results: [ + { name: 'Label 1', id: 1 }, + { name: 'Label 2', id: 2 }, + ], }, }, scm_branch: 'devel', @@ -61,7 +64,10 @@ describe('', () => { results: [{ id: 1 }, { id: 2 }], }); InventoriesAPI.read.mockResolvedValue({ - results: [{ id: 1, name: 'Foo' }, { id: 2, name: 'Bar' }], + results: [ + { id: 1, name: 'Foo' }, + { id: 2, name: 'Bar' }, + ], }); history = createMemoryHistory({ diff --git a/awx/ui_next/src/screens/User/UserAccess/UserAccessList.test.jsx b/awx/ui_next/src/screens/User/UserAccess/UserAccessList.test.jsx index d25649ddd9..acb1400608 100644 --- a/awx/ui_next/src/screens/User/UserAccess/UserAccessList.test.jsx +++ b/awx/ui_next/src/screens/User/UserAccess/UserAccessList.test.jsx @@ -1,9 +1,12 @@ import React from 'react'; import { act } from 'react-dom/test-utils'; import { createMemoryHistory } from 'history'; -import { UsersAPI } from '../../../api'; import { Route } from 'react-router-dom'; -import { mountWithContexts, waitForElement } from '../../../../testUtils/enzymeHelpers'; +import { UsersAPI } from '../../../api'; +import { + mountWithContexts, + waitForElement, +} from '../../../../testUtils/enzymeHelpers'; import UserAccessList from './UserAccessList'; jest.mock('../../../api/models/Users'); diff --git a/awx/ui_next/src/screens/User/UserAccess/UserAccessListItem.jsx b/awx/ui_next/src/screens/User/UserAccess/UserAccessListItem.jsx index fcf1fabf0f..834b76da47 100644 --- a/awx/ui_next/src/screens/User/UserAccess/UserAccessListItem.jsx +++ b/awx/ui_next/src/screens/User/UserAccess/UserAccessListItem.jsx @@ -6,9 +6,8 @@ import { DataListItemCells, DataListItemRow, } from '@patternfly/react-core'; -import DataListCell from '../../../components/DataListCell'; - import { Link } from 'react-router-dom'; +import DataListCell from '../../../components/DataListCell'; function UserAccessListItem({ role, i18n, detailUrl }) { const labelId = `userRole-${role.id}`; From 3ad62f586bdac58093ca48467b174e66938a294c Mon Sep 17 00:00:00 2001 From: Jake McDermott Date: Mon, 11 May 2020 16:09:24 -0400 Subject: [PATCH 5/8] Update i18n for new build tools --- awx/ui_next/.linguirc | 2 +- awx/ui_next/CONTRIBUTING.md | 3 ++- awx/ui_next/package-lock.json | 6 ++++++ awx/ui_next/package.json | 1 + 4 files changed, 10 insertions(+), 2 deletions(-) diff --git a/awx/ui_next/.linguirc b/awx/ui_next/.linguirc index 7af86ec8ad..e450bc0a02 100644 --- a/awx/ui_next/.linguirc +++ b/awx/ui_next/.linguirc @@ -1,5 +1,5 @@ { - "localeDir": "build/locales/", + "localeDir": "src/locales/", "srcPathDirs": ["src/"], "format": "po" } diff --git a/awx/ui_next/CONTRIBUTING.md b/awx/ui_next/CONTRIBUTING.md index e7bafdc445..f2b41cee68 100644 --- a/awx/ui_next/CONTRIBUTING.md +++ b/awx/ui_next/CONTRIBUTING.md @@ -143,6 +143,7 @@ Inside these folders, the internal structure is: - **/api** - All classes used to interact with API's are found here. See [AWX REST API Interaction](#awx-rest-api-interaction) for more information. - **/components** - All generic components that are meant to be used in multiple contexts throughout awx. Things like buttons, tabs go here. - **/contexts** - Components which utilize react's context api. +- **/locales** - [Internationalization](#internationalization) config and source files. - **/screens** - Based on the various routes of awx. - **/shared** - Components that are meant to be used specifically by a particular route, but might be sharable across pages of that route. For example, a form component which is used on both add and edit screens. - **/util** - Stateless helper functions that aren't tied to react. @@ -315,7 +316,7 @@ You can learn more about the ways lingui and its React helpers at [this link](ht ### Setting up .po files to give to translation team 1) `npm run add-locale` to add the language that you want to translate to (we should only have to do this once and the commit to repo afaik). Example: `npm run add-locale en es fr` # Add English, Spanish and French locale -2) `npm run extract-strings` to create .po files for each language specified. The .po files will be placed in src/locales but this is configurable. +2) `npm run extract-strings` to create .po files for each language specified. The .po files will be placed in src/locales. 3) Open up the .po file for the language you want to test and add some translations. In production we would pass this .po file off to the translation team. 4) Once you've edited your .po file (or we've gotten a .po file back from the translation team) run `npm run compile-strings`. This command takes the .po files and turns them into a minified JSON object and can be seen in the `messages.js` file in each locale directory. These files get loaded at the App root level (see: App.jsx). 5) Change the language in your browser and reload the page. You should see your specified translations in place of English strings. diff --git a/awx/ui_next/package-lock.json b/awx/ui_next/package-lock.json index 629add6375..19dca9d44d 100644 --- a/awx/ui_next/package-lock.json +++ b/awx/ui_next/package-lock.json @@ -3058,6 +3058,12 @@ } } }, + "babel-core": { + "version": "7.0.0-bridge.0", + "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-7.0.0-bridge.0.tgz", + "integrity": "sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==", + "dev": true + }, "babel-eslint": { "version": "10.1.0", "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz", diff --git a/awx/ui_next/package.json b/awx/ui_next/package.json index e44f57ec11..a8226dea75 100644 --- a/awx/ui_next/package.json +++ b/awx/ui_next/package.json @@ -60,6 +60,7 @@ "@lingui/cli": "^2.9.1", "@lingui/macro": "^2.9.1", "@nteract/mockument": "^1.0.4", + "babel-core": "^7.0.0-bridge.0", "enzyme": "^3.10.0", "enzyme-adapter-react-16": "^1.14.0", "enzyme-to-json": "^3.3.5", From 41fa3e04734eaa8d3c1a02f580c889b7e4962297 Mon Sep 17 00:00:00 2001 From: Jake McDermott Date: Mon, 11 May 2020 16:49:24 -0400 Subject: [PATCH 6/8] Update readme with new build info --- awx/ui_next/README.md | 77 +++++++++++++++++++++++++++++++++---------- 1 file changed, 59 insertions(+), 18 deletions(-) diff --git a/awx/ui_next/README.md b/awx/ui_next/README.md index 72965a33ab..5ab552b401 100644 --- a/awx/ui_next/README.md +++ b/awx/ui_next/README.md @@ -3,31 +3,72 @@ ## Requirements - node 10.x LTS, npm 6.x LTS, make, git -## Usage - -* `git clone git@github.com:ansible/awx.git` -* cd awx/ui_next -* npm install -* npm start -* visit `https://127.0.0.1:3001/` - -**note:** These instructions assume you have the [awx](https://github.com/ansible/awx/blob/devel/CONTRIBUTING.md#running-the-environment) development api server up and running at `localhost:8043`. You can use a different backend server with the `TARGET_HOST` and `TARGET_PORT` environment variables when starting the development server: +## Development +The API development server will need to be running. See [CONTRIBUTING.md](../../CONTRIBUTING.md). ```shell -# use a non-default host and port when starting the development server -TARGET_HOST='ec2-awx.amazonaws.com' TARGET_PORT='443' npm run start +# Start the ui development server. While running, the ui will be reachable +# at https://127.0.01:3001 and updated automatically when code changes. +npm --prefix=awx/ui_next start ``` -## Unit Tests +### Using an External Server +If you normally run awx on an external host/server (in this example, `awx.local`), +you'll need to update your django settings and use the `TARGET_HOST` and `TARGET_PORT` environment variables: -To run the unit tests on files that you've changed: -* `npm test` +```shell +echo "CSRF_TRUSTED_ORIGINS = ['awx.local:8043']" >> /awx/settings/development.py +TARGET_HOST='awx.local:8043' TARGET_PORT=8043 npm --prefix awx/ui_next start +``` -To run a single test (in this case the login page test): -* `npm test -- src/screens/Login/Login.test.jsx` +## Testing +```shell +# run code formatting check +npm --prefix awx/ui_next run prettier-check -**note:** Once the test watcher is up and running you can hit `a` to run all the tests +# run lint checks +npm --prefix awx/ui_next run lint +# run all unit tests +npm --prefix awx/ui_next run test + +# run a single test (in this case the login page test): +npm --prefix awx/ui_next test -- src/screens/Login/Login.test.jsx + +# start the test watcher and run tests on files that you've changed +npm --prefix awx/ui_next run test-watch +``` +#### Note: +- Once the test watcher is up and running you can hit `a` to run all the tests. +- All commands are run on your host machine and not in the api development containers. + + +## Adding Dependencies +```shell +# add an exact development or build dependency +npm --prefix awx/ui_next install --save-dev --save-exact dev-package@1.2.3 + +# add an exact production dependency +npm --prefix awx/ui_next install --save --save-exact prod-package@1.23 + +# add the updated package.json and package-lock.json files to scm +git add awx/ui_next_next/package.json awx/ui_next_next/package-lock.json +``` + +## Removing Dependencies +```shell +# remove a development or build dependency +npm --prefix awx/ui_next uninstall --save-dev dev-package + +# remove a production dependency +npm --prefix awx/ui_next uninstall --save prod-package +``` + +## Building for Production +```shell +# built files are placed in awx/ui_next/build +npm --prefix awx/ui_next run build +``` ## CI Container @@ -39,4 +80,4 @@ docker build -t awx-ui-next . docker run --name tools_ui_next_1 --network tools_default --link 'tools_awx_1:awx' -e TARGET_HOST=awx -p '3001:3001' --rm -v $(pwd)/src:/ui_next/src awx-ui-next ``` -**note:** This is for CI, test systems, zuul, etc. For local development, see [usage](https://github.com/ansible/awx/blob/devel/awx/ui_next/README.md#usage) +**Note:** This is for CI, test systems, zuul, etc. For local development, see [usage](https://github.com/ansible/awx/blob/devel/awx/ui_next/README.md#usage) From 6098ee8f7fa68f985e6f3843dd9ee981aae4585b Mon Sep 17 00:00:00 2001 From: Jake McDermott Date: Tue, 12 May 2020 12:34:19 -0400 Subject: [PATCH 7/8] Add style-components macro where needed We need to import the styled-components macro whenever we use the css= prop. --- .../src/components/AlertModal/AlertModal.jsx | 1 + .../CodeMirrorInput/VariablesDetail.jsx | 1 + .../CodeMirrorInput/VariablesDetail.test.jsx | 18 +-- .../CollapsibleSection/ExpandingContainer.jsx | 1 + .../src/components/HostToggle/HostToggle.jsx | 1 + .../LaunchPrompt/steps/CredentialsStep.jsx | 1 + .../Lookup/MultiCredentialsLookup.jsx | 1 + .../components/PromptDetail/PromptDetail.jsx | 1 + .../ResourceAccessListItem.jsx | 1 + .../DeleteRoleConfirmationModal.test.jsx.snap | 124 ++++++++++-------- .../ResourceAccessListItem.test.jsx.snap | 120 ++++++++++++----- .../ScheduleDetail/ScheduleDetail.jsx | 4 +- .../ScheduleList/ScheduleListItem.jsx | 1 + .../ScheduleOccurrences.jsx | 1 + .../ScheduleToggle/ScheduleToggle.jsx | 1 + .../shared/FrequencyDetailSubform.jsx | 1 + awx/ui_next/src/components/Search/Search.jsx | 1 + .../components/Workflow/WorkflowNodeHelp.jsx | 1 + .../src/components/Workflow/WorkflowTools.jsx | 1 + .../screens/Host/HostDetail/HostDetail.jsx | 1 + .../screens/Host/HostList/HostListItem.jsx | 1 + .../InventoryGroupHostListItem.jsx | 1 + .../InventoryHostDetail.jsx | 1 + .../shared/InventoryGroupsDeleteModal.jsx | 1 + .../src/screens/Job/JobDetail/JobDetail.jsx | 1 + .../screens/Job/JobOutput/PageControls.jsx | 1 + .../WorkflowOutput/WorkflowOutputGraph.jsx | 1 + .../ProjectJobTemplatesListItem.jsx | 1 + .../Project/ProjectList/ProjectListItem.jsx | 1 + .../shared/ProjectSubForms/GitSubForm.jsx | 1 + .../shared/ProjectSubForms/HgSubForm.jsx | 1 + .../shared/ProjectSubForms/ManualSubForm.jsx | 1 + .../shared/ProjectSubForms/SvnSubForm.jsx | 1 + .../screens/Team/TeamList/TeamListItem.jsx | 1 + .../Template/Survey/SurveyListItem.jsx | 1 + .../TemplateList/TemplateListItem.jsx | 1 + .../Modals/NodeModals/NodeDeleteModal.jsx | 1 + .../Modals/NodeModals/NodeModal.jsx | 1 + .../NodeModals/NodeTypeStep/NodeTypeStep.jsx | 1 + .../VisualizerGraph.jsx | 1 + .../VisualizerStartScreen.jsx | 1 + .../VisualizerToolbar.jsx | 1 + .../screens/User/UserList/UserListItem.jsx | 1 + 43 files changed, 209 insertions(+), 96 deletions(-) diff --git a/awx/ui_next/src/components/AlertModal/AlertModal.jsx b/awx/ui_next/src/components/AlertModal/AlertModal.jsx index a0e3048672..06b6853220 100644 --- a/awx/ui_next/src/components/AlertModal/AlertModal.jsx +++ b/awx/ui_next/src/components/AlertModal/AlertModal.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React from 'react'; import { Modal, Title } from '@patternfly/react-core'; import { diff --git a/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.jsx b/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.jsx index 4c9e37a8cc..2db4da49bd 100644 --- a/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.jsx +++ b/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { useState, useEffect } from 'react'; import { string, node, number } from 'prop-types'; import { Split, SplitItem, TextListItemVariants } from '@patternfly/react-core'; diff --git a/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.test.jsx b/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.test.jsx index 760a23f1e8..edb83d3515 100644 --- a/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.test.jsx +++ b/awx/ui_next/src/components/CodeMirrorInput/VariablesDetail.test.jsx @@ -10,7 +10,7 @@ describe('', () => { const wrapper = shallow( ); - const input = wrapper.find('CodeMirrorInput'); + const input = wrapper.find('VariablesDetail___StyledCodeMirrorInput'); expect(input).toHaveLength(1); expect(input.prop('mode')).toEqual('yaml'); expect(input.prop('value')).toEqual('---foo: bar'); @@ -21,7 +21,7 @@ describe('', () => { const wrapper = shallow( ); - const input = wrapper.find('CodeMirrorInput'); + const input = wrapper.find('VariablesDetail___StyledCodeMirrorInput'); expect(input).toHaveLength(1); expect(input.prop('mode')).toEqual('javascript'); expect(input.prop('value')).toEqual('{"foo": "bar"}'); @@ -32,19 +32,21 @@ describe('', () => { ); wrapper.find('MultiButtonToggle').invoke('onChange')('javascript'); - const input = wrapper.find('CodeMirrorInput'); + const input = wrapper.find('VariablesDetail___StyledCodeMirrorInput'); expect(input.prop('mode')).toEqual('javascript'); expect(input.prop('value')).toEqual('{\n "foo": "bar"\n}'); wrapper.find('MultiButtonToggle').invoke('onChange')('yaml'); - const input2 = wrapper.find('CodeMirrorInput'); + const input2 = wrapper.find('VariablesDetail___StyledCodeMirrorInput'); expect(input2.prop('mode')).toEqual('yaml'); expect(input2.prop('value')).toEqual('foo: bar\n'); }); test('should render label and value= --- when there are no values', () => { const wrapper = shallow(); - expect(wrapper.find('CodeMirrorInput').length).toBe(1); + expect(wrapper.find('VariablesDetail___StyledCodeMirrorInput').length).toBe( + 1 + ); expect(wrapper.find('div.pf-c-form__label').text()).toBe('Variables'); }); @@ -59,14 +61,14 @@ describe('', () => { value: '---bar: baz', }); wrapper.update(); - const input = wrapper.find('CodeMirrorInput'); + const input = wrapper.find('VariablesDetail___StyledCodeMirrorInput'); expect(input.prop('mode')).toEqual('javascript'); expect(input.prop('value')).toEqual('{\n "bar": "baz"\n}'); }); test('should default yaml value to "---"', () => { const wrapper = shallow(); - const input = wrapper.find('CodeMirrorInput'); + const input = wrapper.find('VariablesDetail___StyledCodeMirrorInput'); expect(input.prop('value')).toEqual('---'); }); @@ -76,7 +78,7 @@ describe('', () => { wrapper.find('MultiButtonToggle').invoke('onChange')('javascript'); }); wrapper.setProps({ value: '' }); - const input = wrapper.find('CodeMirrorInput'); + const input = wrapper.find('VariablesDetail___StyledCodeMirrorInput'); expect(input.prop('value')).toEqual('{}'); }); }); diff --git a/awx/ui_next/src/components/CollapsibleSection/ExpandingContainer.jsx b/awx/ui_next/src/components/CollapsibleSection/ExpandingContainer.jsx index b89ce94d7b..346297c94a 100644 --- a/awx/ui_next/src/components/CollapsibleSection/ExpandingContainer.jsx +++ b/awx/ui_next/src/components/CollapsibleSection/ExpandingContainer.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { useState, useEffect, useRef } from 'react'; import { bool } from 'prop-types'; import styled from 'styled-components'; diff --git a/awx/ui_next/src/components/HostToggle/HostToggle.jsx b/awx/ui_next/src/components/HostToggle/HostToggle.jsx index 816b7979a3..d08a15a70c 100644 --- a/awx/ui_next/src/components/HostToggle/HostToggle.jsx +++ b/awx/ui_next/src/components/HostToggle/HostToggle.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { Fragment, useState, useEffect, useCallback } from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; diff --git a/awx/ui_next/src/components/LaunchPrompt/steps/CredentialsStep.jsx b/awx/ui_next/src/components/LaunchPrompt/steps/CredentialsStep.jsx index 1477859028..50f0f8630a 100644 --- a/awx/ui_next/src/components/LaunchPrompt/steps/CredentialsStep.jsx +++ b/awx/ui_next/src/components/LaunchPrompt/steps/CredentialsStep.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { useState, useCallback, useEffect } from 'react'; import { useHistory } from 'react-router-dom'; import { withI18n } from '@lingui/react'; diff --git a/awx/ui_next/src/components/Lookup/MultiCredentialsLookup.jsx b/awx/ui_next/src/components/Lookup/MultiCredentialsLookup.jsx index 5f1ffeea15..c1dec4f9d7 100644 --- a/awx/ui_next/src/components/Lookup/MultiCredentialsLookup.jsx +++ b/awx/ui_next/src/components/Lookup/MultiCredentialsLookup.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { Fragment, useState, useEffect } from 'react'; import { withRouter } from 'react-router-dom'; import PropTypes from 'prop-types'; diff --git a/awx/ui_next/src/components/PromptDetail/PromptDetail.jsx b/awx/ui_next/src/components/PromptDetail/PromptDetail.jsx index 9ebcf1a0a1..8d02bd2cf3 100644 --- a/awx/ui_next/src/components/PromptDetail/PromptDetail.jsx +++ b/awx/ui_next/src/components/PromptDetail/PromptDetail.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React from 'react'; import { shape } from 'prop-types'; import { withI18n } from '@lingui/react'; diff --git a/awx/ui_next/src/components/ResourceAccessList/ResourceAccessListItem.jsx b/awx/ui_next/src/components/ResourceAccessList/ResourceAccessListItem.jsx index ab093fd620..764ca642d3 100644 --- a/awx/ui_next/src/components/ResourceAccessList/ResourceAccessListItem.jsx +++ b/awx/ui_next/src/components/ResourceAccessList/ResourceAccessListItem.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React from 'react'; import { func } from 'prop-types'; import { withI18n } from '@lingui/react'; diff --git a/awx/ui_next/src/components/ResourceAccessList/__snapshots__/DeleteRoleConfirmationModal.test.jsx.snap b/awx/ui_next/src/components/ResourceAccessList/__snapshots__/DeleteRoleConfirmationModal.test.jsx.snap index aa1198970d..64130d46bd 100644 --- a/awx/ui_next/src/components/ResourceAccessList/__snapshots__/DeleteRoleConfirmationModal.test.jsx.snap +++ b/awx/ui_next/src/components/ResourceAccessList/__snapshots__/DeleteRoleConfirmationModal.test.jsx.snap @@ -100,11 +100,11 @@ exports[` should render initially 1`] = ` class="pf-c-title" >
should render initially 1`] = ` ariaDescribedById="" className="" header={ - - + Remove Team Access - + } hideTitle={false} isFooterLeftAligned={true} @@ -223,11 +219,11 @@ exports[` should render initially 1`] = ` class="pf-c-title" >
should render initially 1`] = ` ariaDescribedById="" className="" header={ - - + Remove Team Access - + } hideTitle={false} id="pf-modal-0" @@ -440,29 +432,24 @@ exports[` should render initially 1`] = `
- + should render initially 1`] = ` forwardedRef={null} >
- - - - - + + + + + + + @@ -513,7 +531,7 @@ exports[`<DeleteRoleConfirmationModal /> should render initially 1`] = `
-
+
initially renders succesfully 1`] = `
- @@ -57,8 +57,7 @@ exports[` initially renders succesfully 1`] = ` - initially renders succesfully 1`] = ` } > jane - + initially renders succesfully 1`] = ` - initially renders succesfully 1`] = ` } > jane - + initially renders succesfully 1`] = ` "$$typeof": Symbol(react.forward_ref), "attrs": Array [], "componentStyle": ComponentStyle { - "componentId": "sc-bZQynM", + "componentId": "ResourceAccessListItem__DataListItemCells-sc-658iqk-0", "isStatic": false, - "lastClassName": "dLjtme", + "lastClassName": "jCdAGK", "rules": Array [ - " - align-items: start; -", + "align-items:start;", ], }, - "displayName": "Styled(DataListItemCells)", + "displayName": "ResourceAccessListItem__DataListItemCells", "foldedComponentIds": Array [], "render": [Function], - "styledComponentId": "sc-bZQynM", + "styledComponentId": "ResourceAccessListItem__DataListItemCells-sc-658iqk-0", "target": [Function], "toString": [Function], "warnTooManyClasses": [Function], @@ -194,7 +190,7 @@ exports[` initially renders succesfully 1`] = ` rowid="access-list-item" > @@ -202,8 +198,7 @@ exports[` initially renders succesfully 1`] = ` - initially renders succesfully 1`] = ` } > jane - + initially renders succesfully 1`] = ` rowid="access-list-item" >
initially renders succesfully 1`] = ` className="" data-pf-content={true} > - - - - jane - - - + + + jane + + + + +
@@ -940,7 +992,7 @@ exports[` initially renders succesfully 1`] = `
- +
diff --git a/awx/ui_next/src/components/Schedule/ScheduleDetail/ScheduleDetail.jsx b/awx/ui_next/src/components/Schedule/ScheduleDetail/ScheduleDetail.jsx index 3b2bf93db9..a63380083a 100644 --- a/awx/ui_next/src/components/Schedule/ScheduleDetail/ScheduleDetail.jsx +++ b/awx/ui_next/src/components/Schedule/ScheduleDetail/ScheduleDetail.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { useCallback, useEffect, useState } from 'react'; import { Link, useHistory, useLocation } from 'react-router-dom'; import { RRule, rrulestr } from 'rrule'; @@ -12,7 +13,8 @@ import ContentError from '../../ContentError'; import ContentLoading from '../../ContentLoading'; import CredentialChip from '../../CredentialChip'; import { DetailList, Detail, UserDateDetail } from '../../DetailList'; -import { ScheduleOccurrences, ScheduleToggle } from '..'; +import ScheduleOccurrences from '../ScheduleOccurrences'; +import ScheduleToggle from '../ScheduleToggle'; import { formatDateString } from '../../../util/dates'; import useRequest from '../../../util/useRequest'; import { SchedulesAPI } from '../../../api'; diff --git a/awx/ui_next/src/components/Schedule/ScheduleList/ScheduleListItem.jsx b/awx/ui_next/src/components/Schedule/ScheduleList/ScheduleListItem.jsx index 03198d9503..bc04a578d8 100644 --- a/awx/ui_next/src/components/Schedule/ScheduleList/ScheduleListItem.jsx +++ b/awx/ui_next/src/components/Schedule/ScheduleList/ScheduleListItem.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React from 'react'; import { bool, func } from 'prop-types'; import { withI18n } from '@lingui/react'; diff --git a/awx/ui_next/src/components/Schedule/ScheduleOccurrences/ScheduleOccurrences.jsx b/awx/ui_next/src/components/Schedule/ScheduleOccurrences/ScheduleOccurrences.jsx index 472c0e0883..fa7627fddd 100644 --- a/awx/ui_next/src/components/Schedule/ScheduleOccurrences/ScheduleOccurrences.jsx +++ b/awx/ui_next/src/components/Schedule/ScheduleOccurrences/ScheduleOccurrences.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { useState } from 'react'; import { shape } from 'prop-types'; import styled from 'styled-components'; diff --git a/awx/ui_next/src/components/Schedule/ScheduleToggle/ScheduleToggle.jsx b/awx/ui_next/src/components/Schedule/ScheduleToggle/ScheduleToggle.jsx index af72e12b38..cb15696415 100644 --- a/awx/ui_next/src/components/Schedule/ScheduleToggle/ScheduleToggle.jsx +++ b/awx/ui_next/src/components/Schedule/ScheduleToggle/ScheduleToggle.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { Fragment, useState, useEffect, useCallback } from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; diff --git a/awx/ui_next/src/components/Schedule/shared/FrequencyDetailSubform.jsx b/awx/ui_next/src/components/Schedule/shared/FrequencyDetailSubform.jsx index b350b50560..6775edda1b 100644 --- a/awx/ui_next/src/components/Schedule/shared/FrequencyDetailSubform.jsx +++ b/awx/ui_next/src/components/Schedule/shared/FrequencyDetailSubform.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React from 'react'; import styled from 'styled-components'; import { useField } from 'formik'; diff --git a/awx/ui_next/src/components/Search/Search.jsx b/awx/ui_next/src/components/Search/Search.jsx index 05cbed85b1..91c3987cea 100644 --- a/awx/ui_next/src/components/Search/Search.jsx +++ b/awx/ui_next/src/components/Search/Search.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { Fragment } from 'react'; import PropTypes from 'prop-types'; import { withI18n } from '@lingui/react'; diff --git a/awx/ui_next/src/components/Workflow/WorkflowNodeHelp.jsx b/awx/ui_next/src/components/Workflow/WorkflowNodeHelp.jsx index 9faa331f53..510190b780 100644 --- a/awx/ui_next/src/components/Workflow/WorkflowNodeHelp.jsx +++ b/awx/ui_next/src/components/Workflow/WorkflowNodeHelp.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React from 'react'; import { withI18n } from '@lingui/react'; import { t, Trans } from '@lingui/macro'; diff --git a/awx/ui_next/src/components/Workflow/WorkflowTools.jsx b/awx/ui_next/src/components/Workflow/WorkflowTools.jsx index cb5c9df50f..20db0a6bb8 100644 --- a/awx/ui_next/src/components/Workflow/WorkflowTools.jsx +++ b/awx/ui_next/src/components/Workflow/WorkflowTools.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { useContext } from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; diff --git a/awx/ui_next/src/screens/Host/HostDetail/HostDetail.jsx b/awx/ui_next/src/screens/Host/HostDetail/HostDetail.jsx index 594799e553..61c54b443e 100644 --- a/awx/ui_next/src/screens/Host/HostDetail/HostDetail.jsx +++ b/awx/ui_next/src/screens/Host/HostDetail/HostDetail.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { useState } from 'react'; import { Link, useHistory } from 'react-router-dom'; import { withI18n } from '@lingui/react'; diff --git a/awx/ui_next/src/screens/Host/HostList/HostListItem.jsx b/awx/ui_next/src/screens/Host/HostList/HostListItem.jsx index 5482bb5f19..22a999c378 100644 --- a/awx/ui_next/src/screens/Host/HostList/HostListItem.jsx +++ b/awx/ui_next/src/screens/Host/HostList/HostListItem.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { Fragment } from 'react'; import { string, bool, func } from 'prop-types'; import { withI18n } from '@lingui/react'; diff --git a/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostListItem.jsx b/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostListItem.jsx index 9f6f4a32a0..98b5e5fd17 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostListItem.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostListItem.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React from 'react'; import { Link } from 'react-router-dom'; import { string, bool, func } from 'prop-types'; diff --git a/awx/ui_next/src/screens/Inventory/InventoryHostDetail/InventoryHostDetail.jsx b/awx/ui_next/src/screens/Inventory/InventoryHostDetail/InventoryHostDetail.jsx index 1034ec9551..f3e0c50637 100644 --- a/awx/ui_next/src/screens/Inventory/InventoryHostDetail/InventoryHostDetail.jsx +++ b/awx/ui_next/src/screens/Inventory/InventoryHostDetail/InventoryHostDetail.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { useState } from 'react'; import { Link, useHistory } from 'react-router-dom'; import { withI18n } from '@lingui/react'; diff --git a/awx/ui_next/src/screens/Inventory/shared/InventoryGroupsDeleteModal.jsx b/awx/ui_next/src/screens/Inventory/shared/InventoryGroupsDeleteModal.jsx index 6896628360..ef3ca3de18 100644 --- a/awx/ui_next/src/screens/Inventory/shared/InventoryGroupsDeleteModal.jsx +++ b/awx/ui_next/src/screens/Inventory/shared/InventoryGroupsDeleteModal.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { useState } from 'react'; import ReactDOM from 'react-dom'; import { func, bool, arrayOf, object } from 'prop-types'; diff --git a/awx/ui_next/src/screens/Job/JobDetail/JobDetail.jsx b/awx/ui_next/src/screens/Job/JobDetail/JobDetail.jsx index 5db2ce70e0..dc7a3e0e6b 100644 --- a/awx/ui_next/src/screens/Job/JobDetail/JobDetail.jsx +++ b/awx/ui_next/src/screens/Job/JobDetail/JobDetail.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { useState } from 'react'; import { Link, useHistory } from 'react-router-dom'; import { withI18n } from '@lingui/react'; diff --git a/awx/ui_next/src/screens/Job/JobOutput/PageControls.jsx b/awx/ui_next/src/screens/Job/JobOutput/PageControls.jsx index 2cea2d0db0..ac377569f9 100644 --- a/awx/ui_next/src/screens/Job/JobOutput/PageControls.jsx +++ b/awx/ui_next/src/screens/Job/JobOutput/PageControls.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; diff --git a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputGraph.jsx b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputGraph.jsx index d2e52b8153..9db150d4fd 100644 --- a/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputGraph.jsx +++ b/awx/ui_next/src/screens/Job/WorkflowOutput/WorkflowOutputGraph.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { useContext, useEffect, useRef, useState } from 'react'; import * as d3 from 'd3'; import { WorkflowStateContext } from '../../../contexts/Workflow'; diff --git a/awx/ui_next/src/screens/Project/ProjectJobTemplatesList/ProjectJobTemplatesListItem.jsx b/awx/ui_next/src/screens/Project/ProjectJobTemplatesList/ProjectJobTemplatesListItem.jsx index 4d185e4b5f..dafaf9675a 100644 --- a/awx/ui_next/src/screens/Project/ProjectJobTemplatesList/ProjectJobTemplatesListItem.jsx +++ b/awx/ui_next/src/screens/Project/ProjectJobTemplatesList/ProjectJobTemplatesListItem.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React from 'react'; import { Link } from 'react-router-dom'; import { diff --git a/awx/ui_next/src/screens/Project/ProjectList/ProjectListItem.jsx b/awx/ui_next/src/screens/Project/ProjectList/ProjectListItem.jsx index a9ef04ed9c..614062109f 100644 --- a/awx/ui_next/src/screens/Project/ProjectList/ProjectListItem.jsx +++ b/awx/ui_next/src/screens/Project/ProjectList/ProjectListItem.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { Fragment, useState, useCallback } from 'react'; import { string, bool, func } from 'prop-types'; import { withI18n } from '@lingui/react'; diff --git a/awx/ui_next/src/screens/Project/shared/ProjectSubForms/GitSubForm.jsx b/awx/ui_next/src/screens/Project/shared/ProjectSubForms/GitSubForm.jsx index 69c54cbb73..a1721468dc 100644 --- a/awx/ui_next/src/screens/Project/shared/ProjectSubForms/GitSubForm.jsx +++ b/awx/ui_next/src/screens/Project/shared/ProjectSubForms/GitSubForm.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; diff --git a/awx/ui_next/src/screens/Project/shared/ProjectSubForms/HgSubForm.jsx b/awx/ui_next/src/screens/Project/shared/ProjectSubForms/HgSubForm.jsx index 01a9d23300..5640861ecc 100644 --- a/awx/ui_next/src/screens/Project/shared/ProjectSubForms/HgSubForm.jsx +++ b/awx/ui_next/src/screens/Project/shared/ProjectSubForms/HgSubForm.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; diff --git a/awx/ui_next/src/screens/Project/shared/ProjectSubForms/ManualSubForm.jsx b/awx/ui_next/src/screens/Project/shared/ProjectSubForms/ManualSubForm.jsx index a5bdaefcfd..96646238d9 100644 --- a/awx/ui_next/src/screens/Project/shared/ProjectSubForms/ManualSubForm.jsx +++ b/awx/ui_next/src/screens/Project/shared/ProjectSubForms/ManualSubForm.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; diff --git a/awx/ui_next/src/screens/Project/shared/ProjectSubForms/SvnSubForm.jsx b/awx/ui_next/src/screens/Project/shared/ProjectSubForms/SvnSubForm.jsx index c747b76bfe..f9da184a17 100644 --- a/awx/ui_next/src/screens/Project/shared/ProjectSubForms/SvnSubForm.jsx +++ b/awx/ui_next/src/screens/Project/shared/ProjectSubForms/SvnSubForm.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; diff --git a/awx/ui_next/src/screens/Team/TeamList/TeamListItem.jsx b/awx/ui_next/src/screens/Team/TeamList/TeamListItem.jsx index d3752cbaeb..f088dede27 100644 --- a/awx/ui_next/src/screens/Team/TeamList/TeamListItem.jsx +++ b/awx/ui_next/src/screens/Team/TeamList/TeamListItem.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { Fragment } from 'react'; import { string, bool, func } from 'prop-types'; import { withI18n } from '@lingui/react'; diff --git a/awx/ui_next/src/screens/Template/Survey/SurveyListItem.jsx b/awx/ui_next/src/screens/Template/Survey/SurveyListItem.jsx index b978d5927d..7ef1fc3d3c 100644 --- a/awx/ui_next/src/screens/Template/Survey/SurveyListItem.jsx +++ b/awx/ui_next/src/screens/Template/Survey/SurveyListItem.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React from 'react'; import { t } from '@lingui/macro'; import { withI18n } from '@lingui/react'; diff --git a/awx/ui_next/src/screens/Template/TemplateList/TemplateListItem.jsx b/awx/ui_next/src/screens/Template/TemplateList/TemplateListItem.jsx index 0c244cd3de..b31b1d0ec7 100644 --- a/awx/ui_next/src/screens/Template/TemplateList/TemplateListItem.jsx +++ b/awx/ui_next/src/screens/Template/TemplateList/TemplateListItem.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { useState, useCallback } from 'react'; import { Link } from 'react-router-dom'; import { diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeDeleteModal.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeDeleteModal.jsx index 769756d7aa..c7fcbde268 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeDeleteModal.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeDeleteModal.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { Fragment, useContext } from 'react'; import { Button } from '@patternfly/react-core'; import { withI18n } from '@lingui/react'; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx index 11a691575d..489b40042b 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeModal.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { useContext, useState } from 'react'; import { useHistory } from 'react-router-dom'; import { withI18n } from '@lingui/react'; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/NodeTypeStep.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/NodeTypeStep.jsx index 8b14d17835..146485d4cb 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/NodeTypeStep.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/Modals/NodeModals/NodeTypeStep/NodeTypeStep.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React from 'react'; import { withI18n } from '@lingui/react'; import { t, Trans } from '@lingui/macro'; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerGraph.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerGraph.jsx index 7975d7140f..b886ddfe20 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerGraph.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerGraph.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { useContext, useEffect, useRef, useState } from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerStartScreen.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerStartScreen.jsx index cee8dfcbac..90b30ddbce 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerStartScreen.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerStartScreen.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { useContext } from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; diff --git a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerToolbar.jsx b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerToolbar.jsx index 01669276de..7f93f9a315 100644 --- a/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerToolbar.jsx +++ b/awx/ui_next/src/screens/Template/WorkflowJobTemplateVisualizer/VisualizerToolbar.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { useContext } from 'react'; import { withI18n } from '@lingui/react'; import { t } from '@lingui/macro'; diff --git a/awx/ui_next/src/screens/User/UserList/UserListItem.jsx b/awx/ui_next/src/screens/User/UserList/UserListItem.jsx index 227ffe586d..19b8b5b476 100644 --- a/awx/ui_next/src/screens/User/UserList/UserListItem.jsx +++ b/awx/ui_next/src/screens/User/UserList/UserListItem.jsx @@ -1,3 +1,4 @@ +import 'styled-components/macro'; import React, { Fragment } from 'react'; import { string, bool, func } from 'prop-types'; import { withI18n } from '@lingui/react'; From 7971cc5c1731dc737d779068cf1b1e74081ee626 Mon Sep 17 00:00:00 2001 From: Jake McDermott Date: Tue, 12 May 2020 13:10:43 -0400 Subject: [PATCH 8/8] Update CI Dockerfile to use new build tooling --- awx/ui_next/Dockerfile | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/awx/ui_next/Dockerfile b/awx/ui_next/Dockerfile index bbf2ef65f9..b78616cdb9 100644 --- a/awx/ui_next/Dockerfile +++ b/awx/ui_next/Dockerfile @@ -5,16 +5,13 @@ ARG TARGET_HOST='awx' ENV TARGET_HOST=${TARGET_HOST} ARG TARGET_PORT=8043 ENV TARGET_PORT=${TARGET_PORT} +ENV CI=true WORKDIR /ui_next -ADD build build -ADD dist dist -ADD images images +ADD public public ADD package.json package.json ADD package-lock.json package-lock.json COPY ${NPMRC_FILE} .npmrc RUN npm install -ADD babel.config.js babel.config.js -ADD webpack.config.js webpack.config.js ADD src src EXPOSE 3001 -CMD [ "npm", "run", "start" ] +CMD [ "npm", "start" ]