@asphalt-react/button
Advanced tools
+2
-2
@@ -6,3 +6,3 @@ 'use strict'; | ||
| var cn = require('classnames'); | ||
| var SvgNormalizer = require('@asphalt-react/svg-normalizer'); | ||
| var svgNormalizer = require('@asphalt-react/svg-normalizer'); | ||
| var context = require('@asphalt-react/context'); | ||
@@ -67,4 +67,4 @@ var helper = require('@asphalt-react/helper'); | ||
| const{isSVG}=helper.svgUtil;const{concatClasses,resolvePropCollision}=helper.propsUtil;const Button=React.forwardRef(({children,size,primary,secondary,tertiary,nude,brand,danger,system,qualifier: qualifier$1,qualifierEnd,stretch,icon,compact,link,as:Link,asProps,stickStart,stickEnd,stick,underline,...props},ref)=>{context.sendStyles(stylesheet);const{collision:variantCollision,value:variant}=resolvePropCollision({primary,secondary,tertiary,nude},"primary");if(variantCollision){console.warn(`Button: Multiple variants detected, falling back to "primary"`);}const{collision:intentCollision,value:intent}=resolvePropCollision({brand,danger,system},"brand");if(intentCollision){console.warn(`Button: Multiple intents detected, falling back to "brand"`);}const{style,className,...rest}=props;const isCompactIcon=icon&&compact;const isCompactButton=!icon&&compact;const resolvedSize=resolveSizeProp(size);const compactIconClass=cn(styles.compactIcon,styles[`${concatClasses("compact","icon",resolvedSize)}`]);const compactClass=cn(styles[`${concatClasses("compact",resolvedSize)}`]);const btnClasses=cn(styles.Button,styles[variant],styles[`${concatClasses(variant,intent)}`],{[styles[`${concatClasses("button",resolvedSize)}`]]:!icon},{[styles[`${concatClasses("icon",resolvedSize)}`]]:icon},{[compactIconClass]:isCompactIcon,[compactClass]:isCompactButton},{[styles.link]:link},{[styles.stretch]:stretch},{[styles.stickStart]:stickStart},{[styles.stickEnd]:stickEnd},{[styles[`${concatClasses("stick",variant)}`]]:stick},{[styles.noUnderline]:link&&!underline});if(link&&opensInNewTab(asProps===null||asProps===void 0?void 0:asProps.target)&&!qualifier$1){qualifier$1=React.createElement(NewTab,null);}const getQualifier=()=>React.createElement("span",{"data-testid":"qualifier",className:cn(styles.qualifier,qualifierEnd?styles.qualifierEnd:styles.qualifierStart)},React.createElement("div",{className:styles.qualifierWrapper},React.createElement(qualifier.Qualifier,{iconSize:svgSize(qualifierSVGSizes,size)},qualifier$1)));const getIcon=()=>{if(icon&&!isSVG(children)){console.warn("Icon can only be SVG");children="";}return React.createElement("div",{className:styles.iconWrapper},React.createElement(SvgNormalizer,{dimension:svgSize(iconSVGSizes,size)},children))};const getQualifierWithChildren=()=>{return React.createElement(React.Fragment,null,qualifier$1&&!qualifierEnd&&getQualifier(),children,qualifier$1&&qualifierEnd&&getQualifier())};if(link){const{style,...restAsProps}=asProps||{};if(props.disabled){console.warn("Button: LinkButton can not be disabled");}return React.createElement(Link,_extends({},getRelAttributes(asProps===null||asProps===void 0?void 0:asProps.target),restAsProps,{className:btnClasses,ref:ref}),icon?getIcon():getQualifierWithChildren())}if(icon){return React.createElement("button",_extends({type:"button"},rest,{className:btnClasses,ref:ref}),getIcon())}return React.createElement("button",_extends({type:"button"},rest,{className:btnClasses,ref:ref}),getQualifierWithChildren())});Button.displayName="Button";Button.propTypes={children:PropTypes.node.isRequired,primary:PropTypes.bool,secondary:PropTypes.bool,tertiary:PropTypes.bool,nude:PropTypes.bool,brand:PropTypes.bool,danger:PropTypes.bool,system:PropTypes.bool,link:PropTypes.bool,as:PropTypes.elementType,asProps:PropTypes.object,icon:PropTypes.bool,compact:PropTypes.bool,qualifier:PropTypes.oneOfType([PropTypes.element,PropTypes.string]),qualifierEnd:PropTypes.bool,size:PropTypes.oneOf(["xs","s","m","l"]),stretch:PropTypes.bool,stickStart:PropTypes.bool,stickEnd:PropTypes.bool,stick:PropTypes.bool,underline:PropTypes.bool};Button.defaultProps={size:"m",stretch:false,primary:false,secondary:false,tertiary:false,nude:false,brand:false,danger:false,system:false,qualifier:null,qualifierEnd:false,icon:false,compact:false,link:false,as:"a",asProps:{href:"."},stickEnd:false,stickStart:false,stick:false,underline:true}; | ||
| const{isSVG}=helper.svgUtil;const{concatClasses,resolvePropCollision}=helper.propsUtil;const Button=React.forwardRef(({children,size,primary,secondary,tertiary,nude,brand,danger,system,qualifier: qualifier$1,qualifierEnd,stretch,icon,compact,link,as:Link,asProps,stickStart,stickEnd,stick,underline,...props},ref)=>{context.sendStyles(stylesheet);const{collision:variantCollision,value:variant}=resolvePropCollision({primary,secondary,tertiary,nude},"primary");if(variantCollision){console.warn(`Button: Multiple variants detected, falling back to "primary"`);}const{collision:intentCollision,value:intent}=resolvePropCollision({brand,danger,system},"brand");if(intentCollision){console.warn(`Button: Multiple intents detected, falling back to "brand"`);}const{style,className,...rest}=props;const isCompactIcon=icon&&compact;const isCompactButton=!icon&&compact;const resolvedSize=resolveSizeProp(size);const compactIconClass=cn(styles.compactIcon,styles[`${concatClasses("compact","icon",resolvedSize)}`]);const compactClass=cn(styles[`${concatClasses("compact",resolvedSize)}`]);const btnClasses=cn(styles.Button,styles[variant],styles[`${concatClasses(variant,intent)}`],{[styles[`${concatClasses("button",resolvedSize)}`]]:!icon},{[styles[`${concatClasses("icon",resolvedSize)}`]]:icon},{[compactIconClass]:isCompactIcon,[compactClass]:isCompactButton},{[styles.link]:link},{[styles.stretch]:stretch},{[styles.stickStart]:stickStart},{[styles.stickEnd]:stickEnd},{[styles[`${concatClasses("stick",variant)}`]]:stick},{[styles.noUnderline]:link&&!underline});if(link&&opensInNewTab(asProps===null||asProps===void 0?void 0:asProps.target)&&!qualifier$1){qualifier$1=React.createElement(NewTab,null);}const getQualifier=()=>React.createElement("span",{"data-testid":"qualifier",className:cn(styles.qualifier,qualifierEnd?styles.qualifierEnd:styles.qualifierStart)},React.createElement("div",{className:styles.qualifierWrapper},React.createElement(qualifier.Qualifier,{iconSize:svgSize(qualifierSVGSizes,size)},qualifier$1)));const getIcon=()=>{if(icon&&!isSVG(children)){console.warn("Icon can only be SVG");children="";}return React.createElement("div",{className:styles.iconWrapper},React.createElement(svgNormalizer.SvgNormalizer,{dimension:svgSize(iconSVGSizes,size)},children))};const getQualifierWithChildren=()=>{return React.createElement(React.Fragment,null,qualifier$1&&!qualifierEnd&&getQualifier(),children,qualifier$1&&qualifierEnd&&getQualifier())};if(link){const{style,...restAsProps}=asProps||{};if(props.disabled){console.warn("Button: LinkButton can not be disabled");}return React.createElement(Link,_extends({},getRelAttributes(asProps===null||asProps===void 0?void 0:asProps.target),restAsProps,{className:btnClasses,ref:ref}),icon?getIcon():getQualifierWithChildren())}if(icon){return React.createElement("button",_extends({type:"button"},rest,{className:btnClasses,ref:ref}),getIcon())}return React.createElement("button",_extends({type:"button"},rest,{className:btnClasses,ref:ref}),getQualifierWithChildren())});Button.displayName="Button";Button.propTypes={children:PropTypes.node.isRequired,primary:PropTypes.bool,secondary:PropTypes.bool,tertiary:PropTypes.bool,nude:PropTypes.bool,brand:PropTypes.bool,danger:PropTypes.bool,system:PropTypes.bool,link:PropTypes.bool,as:PropTypes.elementType,asProps:PropTypes.object,icon:PropTypes.bool,compact:PropTypes.bool,qualifier:PropTypes.oneOfType([PropTypes.element,PropTypes.string]),qualifierEnd:PropTypes.bool,size:PropTypes.oneOf(["xs","s","m","l"]),stretch:PropTypes.bool,stickStart:PropTypes.bool,stickEnd:PropTypes.bool,stick:PropTypes.bool,underline:PropTypes.bool};Button.defaultProps={size:"m",stretch:false,primary:false,secondary:false,tertiary:false,nude:false,brand:false,danger:false,system:false,qualifier:null,qualifierEnd:false,icon:false,compact:false,link:false,as:"a",asProps:{href:"."},stickEnd:false,stickStart:false,stick:false,underline:true}; | ||
| exports.Button = Button; |
+1
-1
| import React, { forwardRef } from 'react'; | ||
| import PropTypes from 'prop-types'; | ||
| import cn from 'classnames'; | ||
| import SvgNormalizer from '@asphalt-react/svg-normalizer'; | ||
| import { SvgNormalizer } from '@asphalt-react/svg-normalizer'; | ||
| import { sendStyles } from '@asphalt-react/context'; | ||
@@ -6,0 +6,0 @@ import { propsUtil, svgUtil } from '@asphalt-react/helper'; |
+4
-4
| { | ||
| "name": "@asphalt-react/button", | ||
| "version": "2.0.0-alpha.28", | ||
| "version": "2.0.0-alpha.29", | ||
| "description": "Button", | ||
@@ -47,8 +47,8 @@ "keywords": [ | ||
| "@asphalt-react/helper": "^2.0.0-alpha.19", | ||
| "@asphalt-react/qualifier": "^2.0.0-alpha.19", | ||
| "@asphalt-react/svg-normalizer": "^2.0.0-alpha.19", | ||
| "@asphalt-react/qualifier": "^2.0.0-alpha.29", | ||
| "@asphalt-react/svg-normalizer": "^2.0.0-alpha.29", | ||
| "classnames": "^2.3.1", | ||
| "prop-types": "^15.7.2" | ||
| }, | ||
| "gitHead": "8182ccd435d7586c15535446b2b4cc624b2b90fe" | ||
| "gitHead": "491625ede025781fe585a96c527222cace330f28" | ||
| } |
New author
Supply chain riskA new npm collaborator published a version of the package for the first time. New collaborators are usually benign additions to a project, but do indicate a change to the security surface area of a package.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Long strings
Supply chain riskContains long string literals, which may be a sign of obfuscated or packed code.
Found 1 instance in 1 package
65428
0.03%