/** * Copyright (c) Facebook, Inc. and its 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'; const React = require('react'); const StyleSheet = require('../StyleSheet/StyleSheet'); const Text = require('../Text/Text'); const View = require('../Components/View/View'); const resolveBoxStyle = require('./resolveBoxStyle'); const blank = { top: 0, left: 0, right: 0, bottom: 0, }; class BoxInspector extends React.Component<$FlowFixMeProps> { render(): React.Node { const frame = this.props.frame; const style = this.props.style; const margin = (style && resolveBoxStyle('margin', style)) || blank; const padding = (style && resolveBoxStyle('padding', style)) || blank; return ( ({(frame.left || 0).toFixed(1)}, {(frame.top || 0).toFixed(1)}) {(frame.width || 0).toFixed(1)} ×{' '} {(frame.height || 0).toFixed(1)} ); } } class BoxContainer extends React.Component<$FlowFixMeProps> { render() { const box = this.props.box; return ( {} {this.props.title} {box.top} {box.left} {this.props.children} {box.right} {box.bottom} ); } } const styles = StyleSheet.create({ row: { flexDirection: 'row', alignItems: 'center', justifyContent: 'space-around', }, marginLabel: { width: 60, }, label: { fontSize: 10, color: 'rgb(255,100,0)', marginLeft: 5, flex: 1, textAlign: 'left', top: -3, }, innerText: { color: 'yellow', fontSize: 12, textAlign: 'center', width: 70, }, box: { borderWidth: 1, borderColor: 'grey', }, boxText: { color: 'white', fontSize: 12, marginHorizontal: 3, marginVertical: 2, textAlign: 'center', }, }); module.exports = BoxInspector;