From e5021187e96b78b53203bd95d08d6818aea47d17 Mon Sep 17 00:00:00 2001
From: "Thomas F. K. Jorna" <thomasfkjorna@gmail.com>
Date: Wed, 14 Jul 2021 15:10:31 +0200
Subject: New Ignite 7.0.6 app

---
 app/components/text/text.tsx | 28 ++++++++++++++++++++++++++++
 1 file changed, 28 insertions(+)
 create mode 100644 app/components/text/text.tsx

(limited to 'app/components/text/text.tsx')

diff --git a/app/components/text/text.tsx b/app/components/text/text.tsx
new file mode 100644
index 0000000..3ea613b
--- /dev/null
+++ b/app/components/text/text.tsx
@@ -0,0 +1,28 @@
+import * as React from "react"
+import { Text as ReactNativeText } from "react-native"
+import { presets } from "./text.presets"
+import { TextProps } from "./text.props"
+import { translate } from "../../i18n"
+
+/**
+ * For your text displaying needs.
+ *
+ * This component is a HOC over the built-in React Native one.
+ */
+export function Text(props: TextProps) {
+  // grab the props
+  const { preset = "default", tx, txOptions, text, children, style: styleOverride, ...rest } = props
+
+  // figure out which content to use
+  const i18nText = tx && translate(tx, txOptions)
+  const content = i18nText || text || children
+
+  const style = presets[preset] || presets.default
+  const styles = [style, styleOverride]
+
+  return (
+    <ReactNativeText {...rest} style={styles}>
+      {content}
+    </ReactNativeText>
+  )
+}
-- 
cgit v1.2.3

