@asphalt-react/button
Advanced tools
+10
-0
@@ -6,2 +6,12 @@ # Change Log | ||
| # [2.0.0-alpha.6](https://source.golabs.io/asphalt/asphalt-react/compare/v2.0.0-alpha.5...v2.0.0-alpha.6) (2022-06-30) | ||
| ### Features | ||
| * **button:** enable compact mode for all button variants ([c371f85](https://source.golabs.io/asphalt/asphalt-react/commits/c371f85f2c255fa4b5defcaccdab47bbb38e6035)) | ||
| # [2.0.0-alpha.4](https://source.golabs.io/asphalt/asphalt-react/compare/v2.0.0-alpha.3...v2.0.0-alpha.4) (2022-06-10) | ||
@@ -8,0 +18,0 @@ |
+1
-1
@@ -75,4 +75,4 @@ 'use strict'; | ||
| const{isSVG}=helper.svgUtil;const{concatClasses}=helper.propsUtil;const Button=React.forwardRef(({children,size,primary,secondary,tertiary,nude,brand,danger,system,qualifier,qualifierEnd,stretch,icon,compact,link,as:Link,asProps,...props},ref)=>{context.sendStyles(stylesheet);const getVariantClass=()=>{return resolveStyleForProps(["primary","secondary","tertiary","nude"],{primary,secondary,tertiary,nude},"primary")};const getIntentClass=()=>{return resolveStyleForProps(["brand","danger","system"],{brand,danger,system},"brand")};const{style,className,...rest}=props;const iconOnly=icon&&!compact;const isCompactIcon=nude&&icon&&compact;const compactClass=cn__default['default'](styles.compactIcon,styles[`${concatClasses("compact",resolveSizeProp(size))}`]);const btnclasses=cn__default['default'](styles.Button,styles[`${getVariantClass()}`],styles[`${concatClasses(getVariantClass(),getIntentClass())}`],{[styles[`${concatClasses("button",resolveSizeProp(size))}`]]:!icon},{[styles[`${concatClasses("icon",resolveSizeProp(size))}`]]:iconOnly},{[compactClass]:isCompactIcon},{[styles.link]:link},{[styles.stretch]:stretch});const getSupportClasses=supportType=>{return cn__default['default'](btnclasses,{[styles.support]:Boolean(supportType)},{[styles[`${getSupportClass(supportType)}`]]:nude&&Boolean(supportType)})};if(link&&opensInNewTab(asProps===null||asProps===void 0?void 0:asProps.target)&&!qualifier){qualifier=React__default['default'].createElement(NewTab,null);}const getQualifier=()=>React__default['default'].createElement("span",{"data-testid":"qualifier",className:cn__default['default'](styles.qualifier,qualifierEnd?styles.qualifierEnd:styles.qualifierStart)},React__default['default'].createElement(SvgNormalizer__default['default'],{size:svgSize(qualifierSVGSizes,size)},qualifier));const getIcon=()=>{if(icon&&!isSVG(children)){console.warn("Icon can only be SVG");children="";}return React__default['default'].createElement(SvgNormalizer__default['default'],{size:svgSize(iconSVGSizes,size)},children)};const getQualifierWithChildren=()=>{if(qualifier&&!isSVG(qualifier)){console.warn("Qualifier can only be SVG");qualifier=false;}return React__default['default'].createElement(React__default['default'].Fragment,null,qualifier&&!qualifierEnd&&getQualifier(),children,qualifier&&qualifierEnd&&getQualifier())};if(link){const{style,...restAsProps}=asProps||{};return React__default['default'].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__default['default'].createElement("button",_extends({type:"button"},rest,{className:btnclasses,ref:ref}),getIcon())}return React__default['default'].createElement(context.Consumer,null,({supportType})=>{return React__default['default'].createElement("button",_extends({type:"button"},rest,{className:getSupportClasses(supportType),ref:ref}),getQualifierWithChildren())})});Button.displayName="Button";Button.propTypes={children:PropTypes__default['default'].node.isRequired,primary:PropTypes__default['default'].bool,secondary:PropTypes__default['default'].bool,tertiary:PropTypes__default['default'].bool,nude:PropTypes__default['default'].bool,brand:PropTypes__default['default'].bool,danger:PropTypes__default['default'].bool,system:PropTypes__default['default'].bool,link:PropTypes__default['default'].bool,as:PropTypes__default['default'].elementType,asProps:PropTypes__default['default'].object,icon:PropTypes__default['default'].bool,compact:PropTypes__default['default'].bool,qualifier:PropTypes__default['default'].element,qualifierEnd:PropTypes__default['default'].bool,size:PropTypes__default['default'].oneOf(["xs","s","m","l"]),stretch:PropTypes__default['default'].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:"."}}; | ||
| const{isSVG}=helper.svgUtil;const{concatClasses}=helper.propsUtil;const Button=React.forwardRef(({children,size,primary,secondary,tertiary,nude,brand,danger,system,qualifier,qualifierEnd,stretch,icon,compact,link,as:Link,asProps,...props},ref)=>{context.sendStyles(stylesheet);const getVariantClass=()=>{return resolveStyleForProps(["primary","secondary","tertiary","nude"],{primary,secondary,tertiary,nude},"primary")};const getIntentClass=()=>{return resolveStyleForProps(["brand","danger","system"],{brand,danger,system},"brand")};const{style,className,...rest}=props;const iconOnly=icon&&!compact;const isCompactIcon=icon&&compact;const compactClass=cn__default['default'](styles.compactIcon,styles[`${concatClasses("compact",resolveSizeProp(size))}`]);const btnclasses=cn__default['default'](styles.Button,styles[`${getVariantClass()}`],styles[`${concatClasses(getVariantClass(),getIntentClass())}`],{[styles[`${concatClasses("button",resolveSizeProp(size))}`]]:!icon},{[styles[`${concatClasses("icon",resolveSizeProp(size))}`]]:iconOnly},{[compactClass]:isCompactIcon},{[styles.link]:link},{[styles.stretch]:stretch});const getSupportClasses=supportType=>{return cn__default['default'](btnclasses,{[styles.support]:Boolean(supportType)},{[styles[`${getSupportClass(supportType)}`]]:nude&&Boolean(supportType)})};if(link&&opensInNewTab(asProps===null||asProps===void 0?void 0:asProps.target)&&!qualifier){qualifier=React__default['default'].createElement(NewTab,null);}const getQualifier=()=>React__default['default'].createElement("span",{"data-testid":"qualifier",className:cn__default['default'](styles.qualifier,qualifierEnd?styles.qualifierEnd:styles.qualifierStart)},React__default['default'].createElement(SvgNormalizer__default['default'],{size:svgSize(qualifierSVGSizes,size)},qualifier));const getIcon=()=>{if(icon&&!isSVG(children)){console.warn("Icon can only be SVG");children="";}return React__default['default'].createElement(SvgNormalizer__default['default'],{size:svgSize(iconSVGSizes,size)},children)};const getQualifierWithChildren=()=>{if(qualifier&&!isSVG(qualifier)){console.warn("Qualifier can only be SVG");qualifier=false;}return React__default['default'].createElement(React__default['default'].Fragment,null,qualifier&&!qualifierEnd&&getQualifier(),children,qualifier&&qualifierEnd&&getQualifier())};if(link){const{style,...restAsProps}=asProps||{};return React__default['default'].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__default['default'].createElement("button",_extends({type:"button"},rest,{className:btnclasses,ref:ref}),getIcon())}return React__default['default'].createElement(context.Consumer,null,({supportType})=>{return React__default['default'].createElement("button",_extends({type:"button"},rest,{className:getSupportClasses(supportType),ref:ref}),getQualifierWithChildren())})});Button.displayName="Button";Button.propTypes={children:PropTypes__default['default'].node.isRequired,primary:PropTypes__default['default'].bool,secondary:PropTypes__default['default'].bool,tertiary:PropTypes__default['default'].bool,nude:PropTypes__default['default'].bool,brand:PropTypes__default['default'].bool,danger:PropTypes__default['default'].bool,system:PropTypes__default['default'].bool,link:PropTypes__default['default'].bool,as:PropTypes__default['default'].elementType,asProps:PropTypes__default['default'].object,icon:PropTypes__default['default'].bool,compact:PropTypes__default['default'].bool,qualifier:PropTypes__default['default'].element,qualifierEnd:PropTypes__default['default'].bool,size:PropTypes__default['default'].oneOf(["xs","s","m","l"]),stretch:PropTypes__default['default'].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:"."}}; | ||
| exports.Button = Button; |
+1
-1
@@ -64,4 +64,4 @@ import React, { forwardRef } from 'react'; | ||
| const{isSVG}=svgUtil;const{concatClasses}=propsUtil;const Button=forwardRef(({children,size,primary,secondary,tertiary,nude,brand,danger,system,qualifier,qualifierEnd,stretch,icon,compact,link,as:Link,asProps,...props},ref)=>{sendStyles(stylesheet);const getVariantClass=()=>{return resolveStyleForProps(["primary","secondary","tertiary","nude"],{primary,secondary,tertiary,nude},"primary")};const getIntentClass=()=>{return resolveStyleForProps(["brand","danger","system"],{brand,danger,system},"brand")};const{style,className,...rest}=props;const iconOnly=icon&&!compact;const isCompactIcon=nude&&icon&&compact;const compactClass=cn(styles.compactIcon,styles[`${concatClasses("compact",resolveSizeProp(size))}`]);const btnclasses=cn(styles.Button,styles[`${getVariantClass()}`],styles[`${concatClasses(getVariantClass(),getIntentClass())}`],{[styles[`${concatClasses("button",resolveSizeProp(size))}`]]:!icon},{[styles[`${concatClasses("icon",resolveSizeProp(size))}`]]:iconOnly},{[compactClass]:isCompactIcon},{[styles.link]:link},{[styles.stretch]:stretch});const getSupportClasses=supportType=>{return cn(btnclasses,{[styles.support]:Boolean(supportType)},{[styles[`${getSupportClass(supportType)}`]]:nude&&Boolean(supportType)})};if(link&&opensInNewTab(asProps===null||asProps===void 0?void 0:asProps.target)&&!qualifier){qualifier=React.createElement(NewTab,null);}const getQualifier=()=>React.createElement("span",{"data-testid":"qualifier",className:cn(styles.qualifier,qualifierEnd?styles.qualifierEnd:styles.qualifierStart)},React.createElement(SvgNormalizer,{size:svgSize(qualifierSVGSizes,size)},qualifier));const getIcon=()=>{if(icon&&!isSVG(children)){console.warn("Icon can only be SVG");children="";}return React.createElement(SvgNormalizer,{size:svgSize(iconSVGSizes,size)},children)};const getQualifierWithChildren=()=>{if(qualifier&&!isSVG(qualifier)){console.warn("Qualifier can only be SVG");qualifier=false;}return React.createElement(React.Fragment,null,qualifier&&!qualifierEnd&&getQualifier(),children,qualifier&&qualifierEnd&&getQualifier())};if(link){const{style,...restAsProps}=asProps||{};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(Consumer,null,({supportType})=>{return React.createElement("button",_extends({type:"button"},rest,{className:getSupportClasses(supportType),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.element,qualifierEnd:PropTypes.bool,size:PropTypes.oneOf(["xs","s","m","l"]),stretch: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:"."}}; | ||
| const{isSVG}=svgUtil;const{concatClasses}=propsUtil;const Button=forwardRef(({children,size,primary,secondary,tertiary,nude,brand,danger,system,qualifier,qualifierEnd,stretch,icon,compact,link,as:Link,asProps,...props},ref)=>{sendStyles(stylesheet);const getVariantClass=()=>{return resolveStyleForProps(["primary","secondary","tertiary","nude"],{primary,secondary,tertiary,nude},"primary")};const getIntentClass=()=>{return resolveStyleForProps(["brand","danger","system"],{brand,danger,system},"brand")};const{style,className,...rest}=props;const iconOnly=icon&&!compact;const isCompactIcon=icon&&compact;const compactClass=cn(styles.compactIcon,styles[`${concatClasses("compact",resolveSizeProp(size))}`]);const btnclasses=cn(styles.Button,styles[`${getVariantClass()}`],styles[`${concatClasses(getVariantClass(),getIntentClass())}`],{[styles[`${concatClasses("button",resolveSizeProp(size))}`]]:!icon},{[styles[`${concatClasses("icon",resolveSizeProp(size))}`]]:iconOnly},{[compactClass]:isCompactIcon},{[styles.link]:link},{[styles.stretch]:stretch});const getSupportClasses=supportType=>{return cn(btnclasses,{[styles.support]:Boolean(supportType)},{[styles[`${getSupportClass(supportType)}`]]:nude&&Boolean(supportType)})};if(link&&opensInNewTab(asProps===null||asProps===void 0?void 0:asProps.target)&&!qualifier){qualifier=React.createElement(NewTab,null);}const getQualifier=()=>React.createElement("span",{"data-testid":"qualifier",className:cn(styles.qualifier,qualifierEnd?styles.qualifierEnd:styles.qualifierStart)},React.createElement(SvgNormalizer,{size:svgSize(qualifierSVGSizes,size)},qualifier));const getIcon=()=>{if(icon&&!isSVG(children)){console.warn("Icon can only be SVG");children="";}return React.createElement(SvgNormalizer,{size:svgSize(iconSVGSizes,size)},children)};const getQualifierWithChildren=()=>{if(qualifier&&!isSVG(qualifier)){console.warn("Qualifier can only be SVG");qualifier=false;}return React.createElement(React.Fragment,null,qualifier&&!qualifierEnd&&getQualifier(),children,qualifier&&qualifierEnd&&getQualifier())};if(link){const{style,...restAsProps}=asProps||{};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(Consumer,null,({supportType})=>{return React.createElement("button",_extends({type:"button"},rest,{className:getSupportClasses(supportType),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.element,qualifierEnd:PropTypes.bool,size:PropTypes.oneOf(["xs","s","m","l"]),stretch: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:"."}}; | ||
| export { Button }; |
+4
-4
| { | ||
| "name": "@asphalt-react/button", | ||
| "version": "2.0.0-alpha.4", | ||
| "version": "2.0.0-alpha.6", | ||
| "description": "Button", | ||
@@ -46,8 +46,8 @@ "keywords": [ | ||
| "@asphalt-react/context": "^2.0.0-alpha.4", | ||
| "@asphalt-react/helper": "^2.0.0-alpha.1", | ||
| "@asphalt-react/svg-normalizer": "^2.0.0-alpha.3", | ||
| "@asphalt-react/helper": "^2.0.0-alpha.6", | ||
| "@asphalt-react/svg-normalizer": "^2.0.0-alpha.6", | ||
| "classnames": "^2.3.1", | ||
| "prop-types": "^15.7.2" | ||
| }, | ||
| "gitHead": "507ddf59322ffd4a94abc6a50136e64148d71aee" | ||
| "gitHead": "0000e8a081fd2076454ead7969b49d7822a6eefb" | ||
| } |
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
77684
0.38%0
-100%