添加我要求助界面

master
pan 4 years ago
parent 99662c7ba3
commit 67ad787704
  1. 4
      package.json
  2. 1
      public/close.svg
  3. 55
      src/Address.tsx
  4. 5
      src/Main.tsx
  5. 4
      src/Page.tsx
  6. 14
      src/account/Login.tsx
  7. 21
      src/account/LoginProps.ts
  8. 7
      src/account/Register.tsx
  9. 11
      src/account/RegisterForm.tsx
  10. 14
      src/account/RegisterProps.tsx
  11. 8
      src/bootstrap/InputGroup.tsx
  12. 6
      src/bootstrap/LoginFormDesc.ts
  13. 57
      src/entity.ts
  14. 6
      src/sub/IndexMenu.tsx
  15. 220
      src/sub/MyHelp.tsx
  16. 50
      src/sub/Volunteer.tsx
  17. 272
      yarn.lock

@ -10,7 +10,11 @@
"@types/node": "^12.0.0",
"@types/react": "^16.9.0",
"@types/react-dom": "^16.9.0",
"bootstrap": "^4.5.0",
"react": "^16.13.1",
"react-bootstrap": "^1.0.1",
"react-cookie": "^4.0.3",
"react-datetime": "^2.16.3",
"react-dom": "^16.13.1",
"react-scripts": "3.4.1",
"typescript": "~3.7.2"

@ -0,0 +1 @@
<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg fill="red" t="1590093580067" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1144" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M810.666667 273.493333L750.506667 213.333333 512 451.84 273.493333 213.333333 213.333333 273.493333 451.84 512 213.333333 750.506667 273.493333 810.666667 512 572.16 750.506667 810.666667 810.666667 750.506667 572.16 512z" p-id="1145"></path></svg>

After

Width:  |  Height:  |  Size: 637 B

@ -0,0 +1,55 @@
import {Form, InputGroup} from "react-bootstrap";
import {AddressProps, OnChangeAddress} from "./entity";
import React from "react";
/**
*
*/
export class Address extends React.Component<OnChangeAddress, any>{
constructor(props: Readonly<OnChangeAddress>) {
super(props);
this.state={
addressList:[]
}
}
componentDidMount() {
this.loadAddress()
}
/**
*
*/
loadAddress(){
this.setState({
addressList:[{
address:"北京",
},
{
address:"广州",
},
{
address:"上海",
}]
})
}
render() {
return (
<InputGroup className="mt-3 col-3 ml-auto mr-auto">
<InputGroup.Prepend>
<InputGroup.Text></InputGroup.Text>
</InputGroup.Prepend>
<Form.Control as="select" custom onChange={(e)=>this.props.onChange(e.target.value)}>
<option value=""></option>
{this.state.addressList.map((address:AddressProps, index:number)=>
<option key={"option"+index} value={address.address} >{address.address}</option>
)}
</Form.Control>
</InputGroup>
)
}
}

@ -2,6 +2,7 @@ import React from "react";
import {Navbar,Nav,Dropdown} from "react-bootstrap";
import {IndexMenu} from "./sub/IndexMenu";
import {Volunteer} from "./sub/Volunteer";
import {MyHelp} from "./sub/MyHelp";
/**
*
@ -56,6 +57,10 @@ export class Main extends React.Component<any, any>{
this.setState({
subMenu:<Volunteer/>
});break;
case Menu.myHelp:
this.setState({
subMenu:<MyHelp/>
});break;
}
}

@ -1,11 +1,11 @@
import {PageForm} from "./entity";
import {PageProps} from "./entity";
import React from "react";
import {Pagination} from "react-bootstrap";
/**
*
*/
export class Page extends React.Component<PageForm, PageForm>{
export class Page extends React.Component<PageProps, any>{
render() {
return (

@ -1,22 +1,20 @@
import React from "react";
import {Button} from 'react-bootstrap'
import {LoginForm} from "./LoginForm";
import {LoginProps, LoginState} from "./LoginProps";
import {Input} from "../bootstrap/InputGroup";
/**
*
*/
export class Login extends React.Component<LoginForm, LoginForm>{
export class Login extends React.Component<LoginProps, LoginState>{
constructor(props: Readonly<LoginForm>) {
constructor(props: Readonly<LoginProps>) {
super(props)
this.state={
user:"",
password:"",
toRegister:props.toRegister,
cookies:props.cookies,
login:props.login
password:""
}
}
@ -28,7 +26,7 @@ export class Login extends React.Component<LoginForm, LoginForm>{
<Input name="password" type="password" desc="用户密码" value={this.state.password} onChange={(value: string)=>{this.setState({password:value})}}/>
<Button variant="success" className="mt-3 col-2 mr-3" onClick={()=>this.state.login(this.state.user,this.state.password)}></Button>
<Button variant="success" className="mt-3 col-2 mr-3" onClick={()=>this.props.login(this.state.user,this.state.password)}></Button>
<Button variant="info" className="mt-3 col-2" onClick={()=>this.props.toRegister()}></Button>
</div>

@ -1,15 +1,22 @@
import {PropCookie} from "./PropCookie";
/**
*
*/
import {PropCookie} from "./PropCookie";
export interface LoginForm extends PropCookie{
//管理员名
user?:string;
//密码
password?:string;
export interface LoginProps extends PropCookie{
//跳转注册
toRegister:Function;
//登录
login:Function;
}
/**
*
*/
export interface LoginState {
//管理员名
user:string;
//密码
password:string;
}

@ -1,18 +1,17 @@
import React from "react";
import {RegisterForm} from "./RegisterForm";
import {RegisterProps, RegisterState} from "./RegisterProps";
import {Input} from "../bootstrap/InputGroup";
import {Button} from 'react-bootstrap'
/**
*
*/
export class Register extends React.Component<RegisterForm, RegisterForm>{
export class Register extends React.Component<RegisterProps, RegisterState>{
constructor(props: Readonly<RegisterForm>) {
constructor(props: Readonly<RegisterProps>) {
super(props)
this.state={
user:"",
password:"",
toLogin:props.toLogin
}
}

@ -1,11 +0,0 @@
/**
*
*/
export interface RegisterForm {
//管理员名
user?:string;
//密码
password?:string;
//跳转登录
toLogin:Function;
}

@ -0,0 +1,14 @@
/**
*
*/
export interface RegisterProps {
//跳转登录
toLogin:Function;
}
export interface RegisterState {
//管理员名
user:string;
//密码
password:string;
}

@ -1,6 +1,6 @@
import React from "react";
import {InputGroup,FormControl} from 'react-bootstrap'
import {InputFormDesc} from "./LoginFormDesc";
import {FormInputProps} from "./LoginFormDesc";
const defaultValid={
@ -11,7 +11,7 @@ const defaultValid={
/**
* bootstrap InputGroup组件封装
*/
export class Input extends React.Component<InputFormDesc, any>{
export class Input extends React.Component<FormInputProps, any>{
merge(){
return {...defaultValid,...this.props.valid}
@ -31,8 +31,8 @@ export class Input extends React.Component<InputFormDesc, any>{
<InputGroup.Prepend>
<InputGroup.Text id={this.props.name}>{this.props.desc}</InputGroup.Text>
</InputGroup.Prepend>
<FormControl className={this.valid()} type={this.props.type} placeholder={'请输入'+this.props.desc} aria-describedby={this.props.name} value={this.props.value}
onChange={(e)=>this.props.onChange(e.target.value)}/>
<FormControl className={this.valid()} type={this.props.type} as={this.props.as} placeholder={'请输入'+this.props.desc} aria-describedby={this.props.name} value={this.props.value}
onChange={(e)=>this.props.onChange(e.target.value)} maxLength={this.props.maxLength }/>
<div className="valid-feedback text-center">
{this.merge().valid}
</div>

@ -1,8 +1,9 @@
import * as React from "react";
/**
*
*/
export interface InputFormDesc {
export interface FormInputProps {
//表单名
name: string
//描述信息
@ -13,6 +14,7 @@ export interface InputFormDesc {
type?:
|"text"
|"password"
as?: React.ElementType;
//值改变事件
onChange: Function
//验证信息
@ -23,4 +25,6 @@ export interface InputFormDesc {
}
//bootstrap col
col?:number
//长度
maxLength ?:number
}

@ -1,7 +1,7 @@
/**
*
*/
export interface ActiveForm {
export interface ActiveProps {
//活动ID
activeId:number;
//活动标题
@ -15,15 +15,18 @@ export interface ActiveForm {
/**
*
*/
export interface AddressForm {
//地点
export interface AddressProps {
address:string;
}
export interface OnChangeAddress {
onChange:Function;
}
/**
*
*/
export interface VolunteerForm {
export interface VolunteerProps {
//个人描述
desc:string;
//姓名
@ -40,10 +43,47 @@ export interface VolunteerForm {
address:string;
}
/**
*
*/
export enum RecommendType {
no="不推荐",
choose="手动推荐",
auto="系统推荐"
}
/**
*
*/
export interface MyHelpState {
//活动标题
title:string;
//活动内容
content:string;
//开始时间
startTime:string;
//结束时间
endTime:string;
//活动背景图
activeImg:any;
//服务地点
address:string;
//推荐方式
recommendType:RecommendType;
//推荐目标
recommendTarget?:Array<number>;
//好友列表
friendList:Array<Friend>;
//已选中好友列表
chooseFriendList: {
[propName:string]:Friend
};
}
/**
*
*/
export interface PageForm {
export interface PageProps {
//当前页
currentPage:number;
//总页数
@ -53,3 +93,10 @@ export interface PageForm {
//分页点击事件
onClick:Function;
}
/**
*
*/
export interface Friend {
name:string;
}

@ -1,6 +1,6 @@
import React from "react";
import {Container,Row,Col,Card,ListGroup,Button} from "react-bootstrap";
import {ActiveForm} from "../entity";
import {ActiveProps} from "../entity";
import {Page} from "../Page";
/**
*
@ -82,8 +82,8 @@ export class IndexMenu extends React.Component<any, any>{
render() {
const rowList=this.state.activeList.map((actives:Array<ActiveForm>,index:number)=>
<Row className="p-3" key={"row"+index}>{actives.map((active:ActiveForm,subIndex:number)=>
const rowList=this.state.activeList.map((actives:Array<ActiveProps>, index:number)=>
<Row className="p-3" key={"row"+index}>{actives.map((active:ActiveProps, subIndex:number)=>
<Col className="col-4" key={"col"+subIndex}>
<Card>
<Card.Header>

@ -0,0 +1,220 @@
import React, {RefObject} from "react";
import {Input} from "../bootstrap/InputGroup";
import {Friend, MyHelpState, RecommendType} from "../entity";
import {Button, Container, Form, FormControl, InputGroup, ListGroup, OverlayTrigger, Tooltip} from "react-bootstrap";
import ReactDatetimeClass from "react-datetime";
import "react-datetime/css/react-datetime.css";
import moment from 'moment';
import path from "path";
import {Address} from "../Address";
/**
*
*/
const contentMaxLength=50;
/**
*
*/
const maxImageSize={
width:100,
height:100
}
const recommendType=[RecommendType.no, RecommendType.choose,RecommendType.auto]
/**
*
*/
export class MyHelp extends React.Component<any, MyHelpState>{
//存放活动背景图
private fileImg: RefObject<any>;
//当前选中的好友索引
private friendIndex:RefObject<any>;
constructor(props: Readonly<any>) {
super(props);
const time=moment()
this.state={
title:"",
content:"",
startTime:time.add({days:1}).format("YYYY-MM-DD HH:mm:ss"),
endTime:time.add({days:7}).format("YYYY-MM-DD HH:mm:ss"),
activeImg:"上传活动背景图",
address: "",
recommendType: RecommendType.no,
friendList:[],
chooseFriendList: {}
}
this.fileImg=React.createRef()
this.friendIndex=React.createRef()
}
/**
*
*/
searchFriend(keyword:string){
this.setState({friendList:[{
name:"fffff"
},
{
name:"EEE"
}]})
}
/**
*
* @param value
*/
getRecommendType(value:string){
switch (value) {
case RecommendType.no:
return RecommendType.no;
case RecommendType.auto:
return RecommendType.auto;
case RecommendType.choose:
return RecommendType.choose;
}
return RecommendType.no
}
/**
* url
*/
getUrl(){
if(this.fileImg.current!==null&&this.fileImg.current.files.length>0) {
return URL.createObjectURL(this.fileImg.current.files[0])
}
}
render() {
return (
<Container>
{/*活动标题*/}
<Input name="title" desc="活动标题" onChange={(value:string)=>this.setState({title:value})}/>
{/*活动内容*/}
<Input name="content" desc="活动内容" as="textarea" valid={{check:true,valid:"您还可输入"+(contentMaxLength-this.state.content.length+"个字符")}} maxLength={contentMaxLength} onChange={(value:string)=>this.setState({content:value})}/>
{/*活动开始时间*/}
<InputGroup className="col-7 ml-auto mr-auto mt-3">
<InputGroup.Prepend>
<InputGroup.Text></InputGroup.Text>
</InputGroup.Prepend>
<ReactDatetimeClass defaultValue={this.state.startTime} onChange={value => {
if(moment.isMoment(value)){
this.setState({
startTime:value.format("YYYY-MM-DD HH:mm:ss")
})
}
}} dateFormat="YYYY-MM-DD" timeFormat="HH:mm:ss"/>
</InputGroup>
{/*活动结束时间*/}
<InputGroup className="col-7 ml-auto mr-auto mt-3">
<InputGroup.Prepend>
<InputGroup.Text></InputGroup.Text>
</InputGroup.Prepend>
<ReactDatetimeClass defaultValue={this.state.endTime} onChange={value => {
if(moment.isMoment(value)){
this.setState({
endTime:value.format("YYYY-MM-DD HH:mm:ss")
})
}
}} dateFormat="YYYY-MM-DD" timeFormat="HH:mm:ss"/>
</InputGroup>
{/*
*/}
<img className="mt-3 d-none" src={this.getUrl()} onLoad={(s)=> {
if(s.target instanceof HTMLImageElement){
//限制图片显示大小
s.target.width=s.target.width>maxImageSize.width?maxImageSize.width:s.target.width
s.target.height=s.target.height>maxImageSize.height?maxImageSize.height:s.target.height
s.target.classList.remove('d-none')
}
}
} alt="活动背景图"/>
{/*上传活动背景图*/}
<Form className="col-7 ml-auto mr-auto mt-3">
<Form.File
ref={this.fileImg}
label={path.basename(this.state.activeImg.replace(/\\/g,'/'))}
custom
accept="image/*"
onChange={(e:any)=>{
this.setState({activeImg:e.target.value})
}}
/>
</Form>
{/*服务地点*/}
<Address onChange={(value:string)=>this.setState({address:value})}/>
<InputGroup className={"mt-3 col-3 ml-auto mr-auto "+(this.state.address.length>0?"":"d-none")}>
<InputGroup.Prepend>
<InputGroup.Text></InputGroup.Text>
</InputGroup.Prepend>
<Form.Control as="select" custom onChange={(e)=>
{
this.setState({recommendType:this.getRecommendType(e.target.value)})
}}>
{recommendType.map((value:RecommendType,index:number) => <option key={"option"+index} value={value}>{value}</option>)}
</Form.Control>
</InputGroup>
<InputGroup className={"mt-3 col-7 ml-auto mr-auto "+(this.state.recommendType===RecommendType.choose?"":"d-none")}>
<InputGroup.Prepend>
<InputGroup.Text></InputGroup.Text>
</InputGroup.Prepend>
<InputGroup.Prepend>
<FormControl placeholder="请输入好友关键字" onChange={(e)=>this.searchFriend(e.target.value)}/>
</InputGroup.Prepend>
<Form.Control as="select" custom ref={this.friendIndex}>
{this.state.friendList.map((friend:Friend,index:number)=><option key={"option"+index} value={index+""}>{friend.name}</option>)}
</Form.Control>
<div className="input-group-append">
<button className="btn btn-outline-secondary" type="button" onClick={()=>{
if(this.friendIndex.current.value.length>0) {
this.setState({
chooseFriendList: {...this.state.chooseFriendList,...{[this.state.friendList[+this.friendIndex.current.value].name]:this.state.friendList[+this.friendIndex.current.value]}}
})
}
}}></button>
</div>
</InputGroup>
<ListGroup className={"mt-3 col-3 ml-auto mr-auto "+(this.state.recommendType===RecommendType.choose?"":"d-none")}>
<ListGroup.Item></ListGroup.Item>
{Object.keys(this.state.chooseFriendList).map(key=><ListGroup.Item className="d-flex justify-content-between align-items-center" key={"list"+key} variant="info">{this.state.chooseFriendList[key].name}
<OverlayTrigger
placement="right"
overlay={
<Tooltip id={key}>
</Tooltip>
}
>
<img src="close.svg" alt="取消推荐" style={{width:"20px"}} onClick={()=> {
delete this.state.chooseFriendList[key]
this.setState({
chooseFriendList:this.state.chooseFriendList
})
}}/>
</OverlayTrigger>
</ListGroup.Item>)}
</ListGroup>
<Button className="mt-3"></Button>
</Container>
);
}
}

@ -1,8 +1,9 @@
import React from "react";
import {Dropdown,Button,Container,Row,Col,Card,Table} from "react-bootstrap";
import {Button, Container, Row, Col, Card, Table} from "react-bootstrap";
import {Input} from "../bootstrap/InputGroup";
import {AddressForm, VolunteerForm} from "../entity";
import {VolunteerProps} from "../entity";
import {Page} from "../Page";
import {Address} from "../Address";
/**
*
*/
@ -15,7 +16,7 @@ export class Volunteer extends React.Component<any, any>{
this.state={
form:{
keyword:"",
address:"请选择服务地点"
address:""
},
addressList:[
{
@ -127,28 +128,35 @@ export class Volunteer extends React.Component<any, any>{
address:this.state.form.address
}})}/>
<Dropdown className="mt-3">
<Dropdown.Toggle variant="primary" id="dropdown-basic" className="col-1">
{this.state.form.address}
</Dropdown.Toggle>
<Dropdown.Menu>
{this.state.addressList.map((address:AddressForm,index:number)=> <Dropdown.Item key={"dropdown"+index} onClick={()=>this.setState({
form:{
keyword:this.state.form.keyword,
address:address.address
}
})}>{address.address}</Dropdown.Item>)}
</Dropdown.Menu>
</Dropdown>
<Button className="col-1 mt-3 mb-3" variant="info"></Button>
{/*<InputGroup className="mt-3 col-3 ml-auto mr-auto">*/}
{/* <InputGroup.Prepend>*/}
{/* <InputGroup.Text>请选择服务地点</InputGroup.Text>*/}
{/* </InputGroup.Prepend>*/}
{/* <Form.Control as="select" custom value={this.state.form.address} onChange={(e)=>this.setState({*/}
{/* form:{*/}
{/* keyword:this.state.form.keyword,*/}
{/* address:e.target.value*/}
{/* }*/}
{/* })}>*/}
{/* {this.state.addressList.map((address:AddressProps, index:number)=>*/}
{/* <option key={"option"+index} value={address.address} >{address.address}</option>*/}
{/* )}*/}
{/* </Form.Control>*/}
{/*</InputGroup>*/}
<Address onChange={(value:string)=>this.setState({
form:{
keyword:this.state.form.keyword,
address:value
}
})}/>
<Button className="col-1 mt-3 mb-3" variant="info" onClick={()=>console.info(this.state.form)}></Button>
<Page onClick={(page:number)=>this.loadVolunteerList(page)} currentPage={this.state.page.currentPage} totalPage={this.state.page.totalPage} pageSize={this.state.page.pageSize}/>
<Container className="p-3">
{this.state.volunteerList.map((volunteers:Array<VolunteerForm>,index:number)=>
<Row className="justify-content-center p-3" key={"row"+index}>{volunteers.map((volunteer:VolunteerForm,subIndex:number)=>
{this.state.volunteerList.map((volunteers:Array<VolunteerProps>, index:number)=>
<Row className="justify-content-center p-3" key={"row"+index}>{volunteers.map((volunteer:VolunteerProps, subIndex:number)=>
<Col key={"col"+subIndex} className="col-5">
<Card>
<Card.Header></Card.Header>

@ -988,7 +988,7 @@
dependencies:
regenerator-runtime "^0.13.4"
"@babel/runtime@^7.0.0", "@babel/runtime@^7.3.4", "@babel/runtime@^7.4.5", "@babel/runtime@^7.5.1", "@babel/runtime@^7.7.2", "@babel/runtime@^7.7.4", "@babel/runtime@^7.8.4":
"@babel/runtime@^7.0.0", "@babel/runtime@^7.3.4", "@babel/runtime@^7.4.2", "@babel/runtime@^7.4.5", "@babel/runtime@^7.5.1", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.2", "@babel/runtime@^7.7.4", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7":
version "7.9.6"
resolved "https://registry.npm.taobao.org/@babel/runtime/download/@babel/runtime-7.9.6.tgz?cache=0&sync_timestamp=1588185905751&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fruntime%2Fdownload%2F%40babel%2Fruntime-7.9.6.tgz#a9102eb5cadedf3f31d08a9ecf294af7827ea29f"
integrity sha1-qRAutcre3z8x0IqezylK94J+op8=
@ -1249,6 +1249,24 @@
resolved "https://registry.npm.taobao.org/@nodelib/fs.stat/download/@nodelib/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b"
integrity sha1-K1o6s/kYzKSKjHVMCBaOPwPrphs=
"@popperjs/core@^2.0.0":
version "2.4.0"
resolved "https://registry.npm.taobao.org/@popperjs/core/download/@popperjs/core-2.4.0.tgz#0e1bdf8d021e7ea58affade33d9d607e11365915"
integrity sha1-DhvfjQIefqWK/63jPZ1gfhE2WRU=
"@restart/context@^2.1.4":
version "2.1.4"
resolved "https://registry.npm.taobao.org/@restart/context/download/@restart/context-2.1.4.tgz#a99d87c299a34c28bd85bb489cb07bfd23149c02"
integrity sha1-qZ2HwpmjTCi9hbtInLB7/SMUnAI=
"@restart/hooks@^0.3.12", "@restart/hooks@^0.3.21":
version "0.3.25"
resolved "https://registry.npm.taobao.org/@restart/hooks/download/@restart/hooks-0.3.25.tgz#11004139ad1c70d2f5965a8939dcb5aeb96aa652"
integrity sha1-EQBBOa0ccNL1llqJOdy1rrlqplI=
dependencies:
lodash "^4.17.15"
lodash-es "^4.17.15"
"@sheerun/mutationobserver-shim@^0.3.2":
version "0.3.3"
resolved "https://registry.npm.taobao.org/@sheerun/mutationobserver-shim/download/@sheerun/mutationobserver-shim-0.3.3.tgz#5405ee8e444ed212db44e79351f0c70a582aae25"
@ -1437,6 +1455,11 @@
resolved "https://registry.npm.taobao.org/@types/color-name/download/@types/color-name-1.1.1.tgz?cache=0&sync_timestamp=1588200011932&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fcolor-name%2Fdownload%2F%40types%2Fcolor-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0"
integrity sha1-HBJhu+qhCoBVu8XYq4S3sq/IRqA=
"@types/cookie@^0.3.3":
version "0.3.3"
resolved "https://registry.npm.taobao.org/@types/cookie/download/@types/cookie-0.3.3.tgz?cache=0&sync_timestamp=1589385151733&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fcookie%2Fdownload%2F%40types%2Fcookie-0.3.3.tgz#85bc74ba782fb7aa3a514d11767832b0e3bc6803"
integrity sha1-hbx0ungvt6o6UU0RdngysOO8aAM=
"@types/eslint-visitor-keys@^1.0.0":
version "1.0.0"
resolved "https://registry.npm.taobao.org/@types/eslint-visitor-keys/download/@types/eslint-visitor-keys-1.0.0.tgz#1ee30d79544ca84d68d4b3cdb0af4f205663dd2d"
@ -1456,6 +1479,14 @@
"@types/minimatch" "*"
"@types/node" "*"
"@types/hoist-non-react-statics@^3.0.1":
version "3.3.1"
resolved "https://registry.npm.taobao.org/@types/hoist-non-react-statics/download/@types/hoist-non-react-statics-3.3.1.tgz?cache=0&sync_timestamp=1588200643669&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fhoist-non-react-statics%2Fdownload%2F%40types%2Fhoist-non-react-statics-3.3.1.tgz#1124aafe5118cb591977aeb1ceaaed1070eb039f"
integrity sha1-ESSq/lEYy1kZd66xzqrtEHDrA58=
dependencies:
"@types/react" "*"
hoist-non-react-statics "^3.3.0"
"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0":
version "2.0.2"
resolved "https://registry.npm.taobao.org/@types/istanbul-lib-coverage/download/@types/istanbul-lib-coverage-2.0.2.tgz#79d7a78bad4219f4c03d6557a1c72d9ca6ba62d5"
@ -1503,6 +1534,11 @@
resolved "https://registry.npm.taobao.org/@types/node/download/@types/node-12.12.41.tgz#cf48562b53ab6cf85d28dde95f1d06815af275c8"
integrity sha1-z0hWK1OrbPhdKN3pXx0GgVrydcg=
"@types/object-assign@^4.0.30":
version "4.0.30"
resolved "https://registry.npm.taobao.org/@types/object-assign/download/@types/object-assign-4.0.30.tgz#8949371d5a99f4381ee0f1df0a9b7a187e07e652"
integrity sha1-iUk3HVqZ9Dge4PHfCpt6GH4H5lI=
"@types/parse-json@^4.0.0":
version "4.0.0"
resolved "https://registry.npm.taobao.org/@types/parse-json/download/@types/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0"
@ -1525,7 +1561,7 @@
dependencies:
"@types/react" "*"
"@types/react@*", "@types/react@^16.9.0":
"@types/react@*", "@types/react@^16.9.0", "@types/react@^16.9.11", "@types/react@^16.9.23":
version "16.9.35"
resolved "https://registry.npm.taobao.org/@types/react/download/@types/react-16.9.35.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Freact%2Fdownload%2F%40types%2Freact-16.9.35.tgz#a0830d172e8aadd9bd41709ba2281a3124bbd368"
integrity sha1-oIMNFy6Krdm9QXCboigaMSS702g=
@ -1561,6 +1597,11 @@
"@types/testing-library__dom" "*"
pretty-format "^25.1.0"
"@types/warning@^3.0.0":
version "3.0.0"
resolved "https://registry.npm.taobao.org/@types/warning/download/@types/warning-3.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fwarning%2Fdownload%2F%40types%2Fwarning-3.0.0.tgz#0d2501268ad8f9962b740d387c4654f5f8e23e52"
integrity sha1-DSUBJorY+ZYrdA04fEZU9fjiPlI=
"@types/yargs-parser@*":
version "15.0.0"
resolved "https://registry.npm.taobao.org/@types/yargs-parser/download/@types/yargs-parser-15.0.0.tgz?cache=0&sync_timestamp=1588203262235&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fyargs-parser%2Fdownload%2F%40types%2Fyargs-parser-15.0.0.tgz#cb3f9f741869e20cce330ffbeb9271590483882d"
@ -2054,7 +2095,7 @@ arrify@^1.0.1:
resolved "https://registry.npm.taobao.org/arrify/download/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=
asap@~2.0.6:
asap@~2.0.3, asap@~2.0.6:
version "2.0.6"
resolved "https://registry.npm.taobao.org/asap/download/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46"
integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=
@ -2420,6 +2461,11 @@ boolbase@^1.0.0, boolbase@~1.0.0:
resolved "https://registry.npm.taobao.org/boolbase/download/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e"
integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24=
bootstrap@^4.5.0:
version "4.5.0"
resolved "https://registry.npm.taobao.org/bootstrap/download/bootstrap-4.5.0.tgz#97d9dbcb5a8972f8722c9962483543b907d9b9ec"
integrity sha1-l9nby1qJcvhyLJliSDVDuQfZuew=
brace-expansion@^1.1.7:
version "1.1.11"
resolved "https://registry.npm.taobao.org/brace-expansion/download/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
@ -2836,6 +2882,11 @@ class-utils@^0.3.5:
isobject "^3.0.0"
static-extend "^0.1.1"
classnames@^2.2.6:
version "2.2.6"
resolved "https://registry.npm.taobao.org/classnames/download/classnames-2.2.6.tgz#43935bffdd291f326dad0a205309b38d00f650ce"
integrity sha1-Q5Nb/90pHzJtrQogUwmzjQD2UM4=
clean-css@^4.2.3:
version "4.2.3"
resolved "https://registry.npm.taobao.org/clean-css/download/clean-css-4.2.3.tgz#507b5de7d97b48ee53d84adb0160ff6216380f78"
@ -3098,6 +3149,11 @@ cookie@0.4.0:
resolved "https://registry.npm.taobao.org/cookie/download/cookie-0.4.0.tgz?cache=0&sync_timestamp=1587525865178&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcookie%2Fdownload%2Fcookie-0.4.0.tgz#beb437e7022b3b6d49019d088665303ebe9c14ba"
integrity sha1-vrQ35wIrO21JAZ0IhmUwPr6cFLo=
cookie@^0.4.0:
version "0.4.1"
resolved "https://registry.npm.taobao.org/cookie/download/cookie-0.4.1.tgz?cache=0&sync_timestamp=1587525865178&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcookie%2Fdownload%2Fcookie-0.4.1.tgz#afd713fe26ebd21ba95ceb61f9a8116e50a537d1"
integrity sha1-r9cT/ibr0hupXOth+agRblClN9E=
copy-concurrently@^1.0.0:
version "1.0.5"
resolved "https://registry.npm.taobao.org/copy-concurrently/download/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0"
@ -3128,6 +3184,11 @@ core-js-pure@^3.0.0:
resolved "https://registry.npm.taobao.org/core-js-pure/download/core-js-pure-3.6.5.tgz#c79e75f5e38dbc85a662d91eea52b8256d53b813"
integrity sha1-x5519eONvIWmYtke6lK4JW1TuBM=
core-js@^1.0.0:
version "1.2.7"
resolved "https://registry.npm.taobao.org/core-js/download/core-js-1.2.7.tgz?cache=0&sync_timestamp=1586450269267&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcore-js%2Fdownload%2Fcore-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636"
integrity sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=
core-js@^2.4.0:
version "2.6.11"
resolved "https://registry.npm.taobao.org/core-js/download/core-js-2.6.11.tgz?cache=0&sync_timestamp=1586450269267&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcore-js%2Fdownload%2Fcore-js-2.6.11.tgz#38831469f9922bded8ee21c9dc46985e0399308c"
@ -3195,6 +3256,15 @@ create-hmac@^1.1.0, create-hmac@^1.1.4, create-hmac@^1.1.7:
safe-buffer "^5.0.1"
sha.js "^2.4.8"
create-react-class@^15.5.2:
version "15.6.3"
resolved "https://registry.npm.taobao.org/create-react-class/download/create-react-class-15.6.3.tgz#2d73237fb3f970ae6ebe011a9e66f46dbca80036"
integrity sha1-LXMjf7P5cK5uvgEanmb0bbyoADY=
dependencies:
fbjs "^0.8.9"
loose-envify "^1.3.1"
object-assign "^4.1.1"
cross-spawn@7.0.1:
version "7.0.1"
resolved "https://registry.npm.taobao.org/cross-spawn/download/cross-spawn-7.0.1.tgz#0ab56286e0f7c24e153d04cc2aa027e43a9a5d14"
@ -3453,7 +3523,7 @@ cssstyle@^1.0.0, cssstyle@^1.1.1:
dependencies:
cssom "0.3.x"
csstype@^2.2.0:
csstype@^2.2.0, csstype@^2.6.7:
version "2.6.10"
resolved "https://registry.npm.taobao.org/csstype/download/csstype-2.6.10.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcsstype%2Fdownload%2Fcsstype-2.6.10.tgz#e63af50e66d7c266edb6b32909cfd0aabe03928b"
integrity sha1-5jr1DmbXwmbttrMpCc/Qqr4Dkos=
@ -3707,6 +3777,14 @@ dom-converter@^0.2:
dependencies:
utila "~0.4"
dom-helpers@^5.0.1, dom-helpers@^5.1.0, dom-helpers@^5.1.2:
version "5.1.4"
resolved "https://registry.npm.taobao.org/dom-helpers/download/dom-helpers-5.1.4.tgz#4609680ab5c79a45f2531441f1949b79d6587f4b"
integrity sha1-RgloCrXHmkXyUxRB8ZSbedZYf0s=
dependencies:
"@babel/runtime" "^7.8.7"
csstype "^2.6.7"
dom-serializer@0:
version "0.2.2"
resolved "https://registry.npm.taobao.org/dom-serializer/download/dom-serializer-0.2.2.tgz#1afb81f533717175d478655debc5e332d9f9bb51"
@ -3856,6 +3934,13 @@ encodeurl@~1.0.2:
resolved "https://registry.npm.taobao.org/encodeurl/download/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59"
integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=
encoding@^0.1.11:
version "0.1.12"
resolved "https://registry.npm.taobao.org/encoding/download/encoding-0.1.12.tgz#538b66f3ee62cd1ab51ec323829d1f9480c74beb"
integrity sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=
dependencies:
iconv-lite "~0.4.13"
end-of-stream@^1.0.0, end-of-stream@^1.1.0:
version "1.4.4"
resolved "https://registry.npm.taobao.org/end-of-stream/download/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0"
@ -4415,6 +4500,19 @@ fb-watchman@^2.0.0:
dependencies:
bser "2.1.1"
fbjs@^0.8.9:
version "0.8.17"
resolved "https://registry.npm.taobao.org/fbjs/download/fbjs-0.8.17.tgz#c4d598ead6949112653d6588b01a5cdcd9f90fdd"
integrity sha1-xNWY6taUkRJlPWWIsBpc3Nn5D90=
dependencies:
core-js "^1.0.0"
isomorphic-fetch "^2.1.1"
loose-envify "^1.0.0"
object-assign "^4.1.0"
promise "^7.1.1"
setimmediate "^1.0.5"
ua-parser-js "^0.7.18"
figgy-pudding@^3.5.1:
version "3.5.2"
resolved "https://registry.npm.taobao.org/figgy-pudding/download/figgy-pudding-3.5.2.tgz#b4eee8148abb01dcf1d1ac34367d59e12fa61d6e"
@ -4980,6 +5078,13 @@ hmac-drbg@^1.0.0:
minimalistic-assert "^1.0.0"
minimalistic-crypto-utils "^1.0.1"
hoist-non-react-statics@^3.0.0, hoist-non-react-statics@^3.3.0:
version "3.3.2"
resolved "https://registry.npm.taobao.org/hoist-non-react-statics/download/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45"
integrity sha1-7OCsr3HWLClpwuxZ/v9CpLGoW0U=
dependencies:
react-is "^16.7.0"
hosted-git-info@^2.1.4:
version "2.8.8"
resolved "https://registry.npm.taobao.org/hosted-git-info/download/hosted-git-info-2.8.8.tgz#7539bd4bc1e0e0a895815a2e0262420b12858488"
@ -5139,7 +5244,7 @@ https-browserify@^1.0.0:
resolved "https://registry.npm.taobao.org/https-browserify/download/https-browserify-1.0.0.tgz#ec06c10e0a34c0f2faf199f7fd7fc78fffd03c73"
integrity sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=
iconv-lite@0.4.24, iconv-lite@^0.4.24:
iconv-lite@0.4.24, iconv-lite@^0.4.24, iconv-lite@~0.4.13:
version "0.4.24"
resolved "https://registry.npm.taobao.org/iconv-lite/download/iconv-lite-0.4.24.tgz?cache=0&sync_timestamp=1579333981154&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ficonv-lite%2Fdownload%2Ficonv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b"
integrity sha1-ICK0sl+93CHS9SSXSkdKr+czkIs=
@ -5610,7 +5715,7 @@ is-root@2.1.0:
resolved "https://registry.npm.taobao.org/is-root/download/is-root-2.1.0.tgz#809e18129cf1129644302a4f8544035d51984a9c"
integrity sha1-gJ4YEpzxEpZEMCpPhUQDXVGYSpw=
is-stream@^1.1.0:
is-stream@^1.0.1, is-stream@^1.1.0:
version "1.1.0"
resolved "https://registry.npm.taobao.org/is-stream/download/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ=
@ -5678,6 +5783,14 @@ isobject@^3.0.0, isobject@^3.0.1:
resolved "https://registry.npm.taobao.org/isobject/download/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8=
isomorphic-fetch@^2.1.1:
version "2.2.1"
resolved "https://registry.npm.taobao.org/isomorphic-fetch/download/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9"
integrity sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=
dependencies:
node-fetch "^1.0.1"
whatwg-fetch ">=0.10.0"
isstream@~0.1.2:
version "0.1.2"
resolved "https://registry.npm.taobao.org/isstream/download/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
@ -6463,6 +6576,11 @@ locate-path@^5.0.0:
dependencies:
p-locate "^4.1.0"
lodash-es@^4.17.15:
version "4.17.15"
resolved "https://registry.npm.taobao.org/lodash-es/download/lodash-es-4.17.15.tgz#21bd96839354412f23d7a10340e5eac6ee455d78"
integrity sha1-Ib2Wg5NUQS8j16EDQOXqxu5FXXg=
lodash._reinterpolate@^3.0.0:
version "3.0.0"
resolved "https://registry.npm.taobao.org/lodash._reinterpolate/download/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d"
@ -6508,7 +6626,7 @@ loglevel@^1.6.6:
resolved "https://registry.npm.taobao.org/loglevel/download/loglevel-1.6.8.tgz#8a25fb75d092230ecd4457270d80b54e28011171"
integrity sha1-iiX7ddCSIw7NRFcnDYC1TigBEXE=
loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0:
loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1, loose-envify@^1.4.0:
version "1.4.0"
resolved "https://registry.npm.taobao.org/loose-envify/download/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf"
integrity sha1-ce5R+nvkyuwaY4OffmgtgTLTDK8=
@ -6916,6 +7034,14 @@ no-case@^3.0.3:
lower-case "^2.0.1"
tslib "^1.10.0"
node-fetch@^1.0.1:
version "1.7.3"
resolved "https://registry.npm.taobao.org/node-fetch/download/node-fetch-1.7.3.tgz?cache=0&sync_timestamp=1587548798776&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fnode-fetch%2Fdownload%2Fnode-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef"
integrity sha1-mA9vcthSEaU0fGsrwYxbhMPrR+8=
dependencies:
encoding "^0.1.11"
is-stream "^1.0.1"
node-forge@0.9.0:
version "0.9.0"
resolved "https://registry.npm.taobao.org/node-forge/download/node-forge-0.9.0.tgz#d624050edbb44874adca12bb9a52ec63cb782579"
@ -7052,6 +7178,11 @@ oauth-sign@~0.9.0:
resolved "https://registry.npm.taobao.org/oauth-sign/download/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455"
integrity sha1-R6ewFrqmi1+g7PPe4IqFxnmsZFU=
object-assign@^3.0.0:
version "3.0.0"
resolved "https://registry.npm.taobao.org/object-assign/download/object-assign-3.0.0.tgz?cache=0&sync_timestamp=1571657171505&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fobject-assign%2Fdownload%2Fobject-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2"
integrity sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I=
object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1:
version "4.1.1"
resolved "https://registry.npm.taobao.org/object-assign/download/object-assign-4.1.1.tgz?cache=0&sync_timestamp=1571657171505&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fobject-assign%2Fdownload%2Fobject-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
@ -8361,6 +8492,13 @@ promise-inflight@^1.0.1:
resolved "https://registry.npm.taobao.org/promise-inflight/download/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3"
integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM=
promise@^7.1.1:
version "7.3.1"
resolved "https://registry.npm.taobao.org/promise/download/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf"
integrity sha1-BktyYCsY+Q8pGSuLG8QY/9Hr078=
dependencies:
asap "~2.0.3"
promise@^8.0.3:
version "8.1.0"
resolved "https://registry.npm.taobao.org/promise/download/promise-8.1.0.tgz#697c25c3dfe7435dd79fcd58c38a135888eaf05e"
@ -8376,7 +8514,15 @@ prompts@^2.0.1:
kleur "^3.0.3"
sisteransi "^1.0.4"
prop-types@^15.6.2, prop-types@^15.7.2:
prop-types-extra@^1.1.0:
version "1.1.1"
resolved "https://registry.npm.taobao.org/prop-types-extra/download/prop-types-extra-1.1.1.tgz#58c3b74cbfbb95d304625975aa2f0848329a010b"
integrity sha1-WMO3TL+7ldMEYll1qi8ISDKaAQs=
dependencies:
react-is "^16.3.2"
warning "^4.0.0"
prop-types@^15.5.7, prop-types@^15.6.2, prop-types@^15.7.2:
version "15.7.2"
resolved "https://registry.npm.taobao.org/prop-types/download/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5"
integrity sha1-UsQedbjIfnK52TYOAga5ncv/psU=
@ -8542,6 +8688,44 @@ react-app-polyfill@^1.0.6:
regenerator-runtime "^0.13.3"
whatwg-fetch "^3.0.0"
react-bootstrap@^1.0.1:
version "1.0.1"
resolved "https://registry.npm.taobao.org/react-bootstrap/download/react-bootstrap-1.0.1.tgz#044b51f34a9db8e17dbfb321a71267a8d6ad11b4"
integrity sha1-BEtR80qduOF9v7MhpxJnqNatEbQ=
dependencies:
"@babel/runtime" "^7.4.2"
"@restart/context" "^2.1.4"
"@restart/hooks" "^0.3.21"
"@types/react" "^16.9.23"
classnames "^2.2.6"
dom-helpers "^5.1.2"
invariant "^2.2.4"
prop-types "^15.7.2"
prop-types-extra "^1.1.0"
react-overlays "^3.1.2"
react-transition-group "^4.0.0"
uncontrollable "^7.0.0"
warning "^4.0.3"
react-cookie@^4.0.3:
version "4.0.3"
resolved "https://registry.npm.taobao.org/react-cookie/download/react-cookie-4.0.3.tgz#ba8e5ea0047c916516e1181a3ad394c9b7580b56"
integrity sha1-uo5eoAR8kWUW4RgaOtOUybdYC1Y=
dependencies:
"@types/hoist-non-react-statics" "^3.0.1"
hoist-non-react-statics "^3.0.0"
universal-cookie "^4.0.0"
react-datetime@^2.16.3:
version "2.16.3"
resolved "https://registry.npm.taobao.org/react-datetime/download/react-datetime-2.16.3.tgz#7f9ac7d4014a939c11c761d0c22d1fb506cb505e"
integrity sha1-f5rH1AFKk5wRx2HQwi0ftQbLUF4=
dependencies:
create-react-class "^15.5.2"
object-assign "^3.0.0"
prop-types "^15.5.7"
react-onclickoutside "^6.5.0"
react-dev-utils@^10.2.1:
version "10.2.1"
resolved "https://registry.npm.taobao.org/react-dev-utils/download/react-dev-utils-10.2.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Freact-dev-utils%2Fdownload%2Freact-dev-utils-10.2.1.tgz#f6de325ae25fa4d546d09df4bb1befdc6dd19c19"
@ -8587,11 +8771,35 @@ react-error-overlay@^6.0.7:
resolved "https://registry.npm.taobao.org/react-error-overlay/download/react-error-overlay-6.0.7.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Freact-error-overlay%2Fdownload%2Freact-error-overlay-6.0.7.tgz#1dcfb459ab671d53f660a991513cb2f0a0553108"
integrity sha1-Hc+0WatnHVP2YKmRUTyy8KBVMQg=
react-is@^16.12.0, react-is@^16.8.1, react-is@^16.8.4:
react-is@^16.12.0, react-is@^16.3.2, react-is@^16.7.0, react-is@^16.8.1, react-is@^16.8.4:
version "16.13.1"
resolved "https://registry.npm.taobao.org/react-is/download/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4"
integrity sha1-eJcppNw23imZ3BVt1sHZwYzqVqQ=
react-lifecycles-compat@^3.0.4:
version "3.0.4"
resolved "https://registry.npm.taobao.org/react-lifecycles-compat/download/react-lifecycles-compat-3.0.4.tgz#4f1a273afdfc8f3488a8c516bfda78f872352362"
integrity sha1-TxonOv38jzSIqMUWv9p4+HI1I2I=
react-onclickoutside@^6.5.0:
version "6.9.0"
resolved "https://registry.npm.taobao.org/react-onclickoutside/download/react-onclickoutside-6.9.0.tgz#a54bc317ae8cf6131a5d78acea55a11067f37a1f"
integrity sha1-pUvDF66M9hMaXXis6lWhEGfzeh8=
react-overlays@^3.1.2:
version "3.2.0"
resolved "https://registry.npm.taobao.org/react-overlays/download/react-overlays-3.2.0.tgz#ed8335adb0871e701b0fc8396c44dfd2467e7a55"
integrity sha1-7YM1rbCHHnAbD8g5bETf0kZ+elU=
dependencies:
"@babel/runtime" "^7.4.5"
"@popperjs/core" "^2.0.0"
"@restart/hooks" "^0.3.12"
"@types/warning" "^3.0.0"
dom-helpers "^5.1.0"
prop-types "^15.7.2"
uncontrollable "^7.0.0"
warning "^4.0.3"
react-scripts@3.4.1:
version "3.4.1"
resolved "https://registry.npm.taobao.org/react-scripts/download/react-scripts-3.4.1.tgz#f551298b5c71985cc491b9acf3c8e8c0ae3ada0a"
@ -8652,6 +8860,16 @@ react-scripts@3.4.1:
optionalDependencies:
fsevents "2.1.2"
react-transition-group@^4.0.0:
version "4.4.1"
resolved "https://registry.npm.taobao.org/react-transition-group/download/react-transition-group-4.4.1.tgz#63868f9325a38ea5ee9535d828327f85773345c9"
integrity sha1-Y4aPkyWjjqXulTXYKDJ/hXczRck=
dependencies:
"@babel/runtime" "^7.5.5"
dom-helpers "^5.0.1"
loose-envify "^1.4.0"
prop-types "^15.6.2"
react@^16.13.1:
version "16.13.1"
resolved "https://registry.npm.taobao.org/react/download/react-16.13.1.tgz#2e818822f1a9743122c063d6410d85c1e3afe48e"
@ -9261,7 +9479,7 @@ set-value@^2.0.0, set-value@^2.0.1:
is-plain-object "^2.0.3"
split-string "^3.0.1"
setimmediate@^1.0.4:
setimmediate@^1.0.4, setimmediate@^1.0.5:
version "1.0.5"
resolved "https://registry.npm.taobao.org/setimmediate/download/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285"
integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=
@ -10148,6 +10366,21 @@ typescript@~3.7.2:
resolved "https://registry.npm.taobao.org/typescript/download/typescript-3.7.5.tgz#0692e21f65fd4108b9330238aac11dd2e177a1ae"
integrity sha1-BpLiH2X9QQi5MwI4qsEd0uF3oa4=
ua-parser-js@^0.7.18:
version "0.7.21"
resolved "https://registry.npm.taobao.org/ua-parser-js/download/ua-parser-js-0.7.21.tgz#853cf9ce93f642f67174273cc34565ae6f308777"
integrity sha1-hTz5zpP2QvZxdCc8w0Vlrm8wh3c=
uncontrollable@^7.0.0:
version "7.1.1"
resolved "https://registry.npm.taobao.org/uncontrollable/download/uncontrollable-7.1.1.tgz#f67fed3ef93637126571809746323a9db815d556"
integrity sha1-9n/tPvk2NxJlcYCXRjI6nbgV1VY=
dependencies:
"@babel/runtime" "^7.6.3"
"@types/react" "^16.9.11"
invariant "^2.2.4"
react-lifecycles-compat "^3.0.4"
unicode-canonical-property-names-ecmascript@^1.0.4:
version "1.0.4"
resolved "https://registry.npm.taobao.org/unicode-canonical-property-names-ecmascript/download/unicode-canonical-property-names-ecmascript-1.0.4.tgz#2619800c4c825800efdd8343af7dd9933cbe2818"
@ -10205,6 +10438,16 @@ unique-slug@^2.0.0:
dependencies:
imurmurhash "^0.1.4"
universal-cookie@^4.0.0:
version "4.0.3"
resolved "https://registry.npm.taobao.org/universal-cookie/download/universal-cookie-4.0.3.tgz#c2fa59127260e6ad21ef3e0cdd66ad453cbc41f6"
integrity sha1-wvpZEnJg5q0h7z4M3WatRTy8QfY=
dependencies:
"@types/cookie" "^0.3.3"
"@types/object-assign" "^4.0.30"
cookie "^0.4.0"
object-assign "^4.1.1"
universalify@^0.1.0:
version "0.1.2"
resolved "https://registry.npm.taobao.org/universalify/download/universalify-0.1.2.tgz?cache=0&sync_timestamp=1583530825899&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Funiversalify%2Fdownload%2Funiversalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66"
@ -10392,6 +10635,13 @@ walker@^1.0.7, walker@~1.0.5:
dependencies:
makeerror "1.0.x"
warning@^4.0.0, warning@^4.0.3:
version "4.0.3"
resolved "https://registry.npm.taobao.org/warning/download/warning-4.0.3.tgz#16e9e077eb8a86d6af7d64aa1e05fd85b4678ca3"
integrity sha1-Fungd+uKhtavfWSqHgX9hbRnjKM=
dependencies:
loose-envify "^1.0.0"
watchpack-chokidar2@^2.0.0:
version "2.0.0"
resolved "https://registry.npm.taobao.org/watchpack-chokidar2/download/watchpack-chokidar2-2.0.0.tgz#9948a1866cbbd6cb824dea13a7ed691f6c8ddff0"
@ -10548,7 +10798,7 @@ whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3, whatwg-encoding@^1.0.5:
dependencies:
iconv-lite "0.4.24"
whatwg-fetch@^3.0.0:
whatwg-fetch@>=0.10.0, whatwg-fetch@^3.0.0:
version "3.0.0"
resolved "https://registry.npm.taobao.org/whatwg-fetch/download/whatwg-fetch-3.0.0.tgz#fc804e458cc460009b1a2b966bc8817d2578aefb"
integrity sha1-/IBORYzEYACbGiuWa8iBfSV4rvs=

Loading…
Cancel
Save