curls
Version:
💪 Responsive, expressive UI primitives for React written with Style Hooks and Emotion
100 lines (83 loc) • 2.32 kB
JavaScript
exports.__esModule = true
exports.A = exports.useLink = void 0
var _core = require('@emotion/core')
var _core2 = require('@style-hooks/core')
var _utils = require('../utils')
var _Text = require('../Text')
var _Box = require('../Box')
var _createComponent = _interopRequireDefault(require('../createComponent'))
var styles = _interopRequireWildcard(require('./styles'))
function _interopRequireWildcard(obj) {
if (obj && obj.__esModule) {
return obj
} else {
var newObj = {}
if (obj != null) {
for (var key in obj) {
if (Object.prototype.hasOwnProperty.call(obj, key)) {
var desc =
Object.defineProperty && Object.getOwnPropertyDescriptor
? Object.getOwnPropertyDescriptor(obj, key)
: {}
if (desc.get || desc.set) {
Object.defineProperty(newObj, key, desc)
} else {
newObj[key] = obj[key]
}
}
}
}
newObj.default = obj
return newObj
}
}
function _interopRequireDefault(obj) {
return obj && obj.__esModule ? obj : {default: obj}
}
function _extends() {
_extends =
Object.assign ||
function(target) {
for (var i = 1; i < arguments.length; i++) {
var source = arguments[i]
for (var key in source) {
if (Object.prototype.hasOwnProperty.call(source, key)) {
target[key] = source[key]
}
}
}
return target
}
return _extends.apply(this, arguments)
}
const defaultStyles = {
name: 'ytumd6',
styles: 'text-decoration:none;',
}
const useLink = props =>
(0, _core2.useStyles)(
'link',
styles,
(0, _utils.pushCss)(
_extends(
{
__linkStyles: true,
},
props
),
defaultStyles
)
),
A = (0, _createComponent.default)('a', props =>
(0, _Box.useBox)((0, _Text.useText)(useLink(props)))
)
exports.A = A
exports.useLink = useLink
if (process.env.NODE_ENV !== 'production') {
const typePropTypes = require('../Text/propTypes').default,
boxPropTypes = require('../Box/propTypes').default,
flexPropTypes = require('../Flex/propTypes').default
A.displayName = 'A'
A.propTypes = _extends({}, boxPropTypes, typePropTypes, flexPropTypes)
}