Advertisement
Guest User

Untitled

a guest
Feb 20th, 2020
84
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. const MODAL_CARD_MONEY_SEND = 'notifications';
  2.  
  3. class App extends React.Component {
  4.   constructor(props) {
  5.     super(props);
  6.  
  7.     this.state = {
  8.       activeModal: null,
  9.       modalHistory: []
  10.     };
  11.  
  12.     this.users = 'k'.repeat(25).split('').map(() => {
  13.       return getRandomUser();
  14.     });
  15.  
  16.     this.modalBack = () => {
  17.       this.setActiveModal(this.state.modalHistory[this.state.modalHistory.length - 2]);
  18.     };
  19.   }
  20.  
  21.   setActiveModal(activeModal) {
  22.     activeModal = activeModal || null;
  23.     let modalHistory = this.state.modalHistory ? [...this.state.modalHistory] : [];
  24.  
  25.     if (activeModal === null) {
  26.       modalHistory = [];
  27.     } else if (modalHistory.indexOf(activeModal) !== -1) {
  28.       modalHistory = modalHistory.splice(0, modalHistory.indexOf(activeModal) + 1);
  29.     } else {
  30.       modalHistory.push(activeModal);
  31.     }
  32.  
  33.     this.setState({
  34.       activeModal,
  35.       modalHistory
  36.     });
  37.   };
  38.  
  39. render() {
  40.     const modal = (
  41.    <ModalRoot activeModal={this.state.activeModal}>
  42.    <ModalCard
  43.           id={MODAL_CARD_MONEY_SEND}
  44.           onClose={() => this.setActiveModal(null)}
  45.           actions={[{
  46.             title: 'Содержимое',
  47.             mode: 'secondary',
  48.             action: () => this.setActiveModal(null)
  49.           }]}
  50.         />
  51.    </ModalRoot>
  52.       );
  53.  
  54.     return (
  55.     <View activePanel="modals" modal={modal}>
  56.           <Panel id="modals">
  57.             <Group>
  58.               <br/>
  59.               <br/>
  60.              
  61.               <br/>
  62.               <br/>
  63.               <br/>
  64.               <br/>
  65.               <br/>
  66.               <br/>
  67.            
  68.               <Separator style={{ margin: '12px 0' }}/>
  69.               <Div>
  70.               <InfoRow header={<Header mode="secondary">0/12</Header>}>
  71.             <Progress value={40} />
  72.           </InfoRow>
  73.           <br/>
  74.           <Card size="s" mode="outline">
  75.            <Div>
  76.            <center><h3>Уровень БП: [level-bp]</h3></center>
  77.            </Div>
  78.           </Card>
  79.           </Div>
  80.           <Separator style={{ margin: '12px 00'}}/>
  81.           <Div>
  82.           <img src="https://sun9-27.userapi.com/c206824/v206824248/6febc/C6BX5sZpYF0.jpg" style={{width: '100%'}}/>
  83.           </Div>
  84.           <Separator style={{ margin: '12px 0' }}/>
  85.           <Div>
  86.           <Button size="xl" mode="commerce" onClick={() => this.setActiveModal(MODAL_CARD_MONEY_SEND)}>Купить</Button>
  87.           </Div>
  88.             </Group>
  89.           </Panel>
  90.        </View>
  91.    
  92.      );
  93.   }
  94. }
  95.  
  96. <App/>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement