@crossed/ui
Version:
A universal & performant styling library for React Native, Next.js & React
74 lines (73 loc) • 2.36 kB
JavaScript
"use client";
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var Text_exports = {};
__export(Text_exports, {
Text: () => Text
});
module.exports = __toCommonJS(Text_exports);
var import_jsx_runtime = require("react/jsx-runtime");
var import_react_native = require("react-native");
var import_styled = require("@crossed/styled");
var import_typography = require("../styles/typography");
var import_textAlign = require("../styles/textAlign");
var import_react = require("react");
const useText = (0, import_styled.createStyles)(({ font }) => ({
root: {
base: Object.assign(font.extraStyles, {
color: font.color,
fontFamily: font.family
})
}
}));
const Text = (0, import_react.memo)(
(0, import_styled.withReactive)(
({
weight,
color = "primary",
textAlign,
fontSize,
style,
size = "default",
...props
}) => {
return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
import_react_native.Text,
{
ref: props.ref,
...props,
...(0, import_styled.composeStyles)(
size && import_typography.sizeTemplateStyles[size],
import_textAlign.textAlignStyles[textAlign],
import_typography.fontSizeStyles[fontSize],
import_typography.fontWeightStyles[weight],
useText.root,
import_typography.fontColorStyles[color],
style
).rnw()
}
);
}
)
);
Text.displayName = "Text";
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
Text
});
//# sourceMappingURL=Text.js.map