packages-ext/recoil-devtools/src/pages/Popup/Items/NodeName.js (38 lines of code) (raw):

/** * (c) Meta Platforms, Inc. and affiliates. Confidential and proprietary. * * Recoil DevTools browser extension. * * @emails oncall+recoil * @flow strict-local * @format */ 'use strict'; import type {Node} from '../../../types/DevtoolsTypes'; import React from 'react'; const styles = { label: { display: 'inline-block', alignItems: 'center', }, selector: { marginRight: 5, fontSize: 8, background: 'red', color: 'white', fontWeight: 'bold', borderRadius: 24, padding: '1px 2px', verticalAlign: 'middle', }, }; type KeyProps = { name: string | number, node: ?Node, }; export default function NodeName({ name, node, }: KeyProps): React$Element<'span'> { return ( <span style={styles.label}> {node?.type === 'selector' && ( <span style={styles.selector} title="This is a Recoil selector"> S </span> )} {name} </span> ); }