/** * Copyright (c) Meta Platforms, Inc. and affiliates. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * * @format * @flow strict-local */ 'use strict'; import RNTesterBlock from '../../components/RNTesterBlock'; import RNTesterPage from '../../components/RNTesterPage'; import RNTesterText from '../../components/RNTesterText'; import React from 'react'; import {StyleSheet, View} from 'react-native'; class Circle extends React.Component<$FlowFixMeProps> { render(): React.Node { const size = this.props.size || 20; const backgroundColor = this.props.bgColor || '#527fe4'; return ( ); } } class CircleBlock extends React.Component<$FlowFixMeProps> { render(): React.Node { const circleStyle = { flexDirection: 'row', backgroundColor: '#f6f7f8', borderWidth: 0.5, borderColor: '#d6d7da', marginBottom: 2, }; return ( {this.props.children} ); } } class LayoutExample extends React.Component<$FlowFixMeProps> { render(): React.Node { const fiveColoredCircles = [ , , , , , ]; return ( row {fiveColoredCircles} row-reverse {fiveColoredCircles} column {fiveColoredCircles} column-reverse {fiveColoredCircles} {'top: 15, left: 160'} flex-start {fiveColoredCircles} center {fiveColoredCircles} flex-end {fiveColoredCircles} space-between {fiveColoredCircles} space-around {fiveColoredCircles} flex-start center flex-end {'oooooooooooooooo'.split('').map((char, i) => ( ))} ); } } const styles = StyleSheet.create({ overlay: { backgroundColor: '#aaccff', borderRadius: 10, borderWidth: 0.5, opacity: 0.5, padding: 5, }, }); exports.title = 'Layout - Flexbox'; exports.category = 'UI'; exports.description = 'Examples of using the flexbox API to layout views.'; exports.displayName = 'LayoutExample'; exports.examples = [ { title: 'Simple layout using flexbox', render(): React.MixedElement { return ; }, }, ];