@asphalt-react/actionlist
Advanced tools
Comparing version 2.0.0 to 2.0.1
@@ -1,2 +0,4 @@ | ||
interface ActionProps extends React.HTMLAttributes<HTMLElement> { | ||
type Override<T, U> = Omit<U, keyof T> & T | ||
interface ActionProps { | ||
/** | ||
@@ -42,5 +44,7 @@ * Add caption for each Action. | ||
declare function Action(props: ActionProps): JSX.Element | ||
declare function Action( | ||
props: Override<ActionProps, React.HTMLAttributes<HTMLElement>> | ||
): JSX.Element | ||
interface ActionlistProps extends React.HTMLAttributes<HTMLElement> { | ||
interface ActionlistProps { | ||
/** | ||
@@ -52,4 +56,6 @@ * List of actions to display inside Actionlist. | ||
declare function Actionlist(props: ActionlistProps): JSX.Element | ||
declare function Actionlist( | ||
props: Override<ActionlistProps, React.HTMLAttributes<HTMLElement>> | ||
): JSX.Element | ||
export { Action, type ActionProps, Actionlist, type ActionlistProps }; |
@@ -65,4 +65,4 @@ import React, { useState, useRef, useEffect } from 'react'; | ||
const Action=({children,qualifier,qualifierEnd,danger,actionable,as,size:rawSize,asProps,separator,...props})=>{const{style,className,...rest}=props;const Link=as||(actionable?"button":"a");const{invalid,size}=resolveSize(rawSize);if(invalid){console.warn("Action: Invalid size prop. Defaulting to 's'");}const onClick=event=>{var _rest$onClick,_asProps$onClick;(_rest$onClick=rest.onClick)===null||_rest$onClick===void 0?void 0:_rest$onClick.call(rest,event);asProps===null||asProps===void 0?void 0:(_asProps$onClick=asProps.onClick)===null||_asProps$onClick===void 0?void 0:_asProps$onClick.call(asProps,event);};const getQualifier=()=>{if(!qualifier)return null;return React.createElement(Qualifier,{iconSize:qualifierSize(size),"data-testId":"actionlist-icon"},qualifier)};return React.createElement("li",{className:cn(styles.action,{[styles.danger]:danger,[styles.separator]:separator}),role:"none"},React.createElement(Link,_extends({},rest,asProps,{role:"menuitem",className:cn(styles.actionItem,{[styles.actionItemDanger]:danger,[styles.qualifier]:qualifier},{[styles.qualifierEnd]:qualifierEnd},styles[size]),tabIndex:"-1",onClick:onClick}),React.createElement("span",{className:cn(styles.icon,{[styles.iconEnd]:qualifierEnd})},getQualifier()),React.createElement("span",{className:cn(styles.caption)},children)))};Action.displayName="Action";Action.propTypes={children:PropTypes.node,size:PropTypes.oneOf(["s","m","l"]),qualifier:PropTypes.oneOfType([PropTypes.element,PropTypes.string]),qualifierEnd:PropTypes.bool,danger:PropTypes.bool,actionable:PropTypes.bool,as:PropTypes.elementType,asProps:PropTypes.object,separator:PropTypes.bool};Action.defaultProps={qualifierEnd:false,danger:false,actionable:false,asProps:{},separator:false,size:"s"}; | ||
const Action=({children,qualifier,qualifierEnd=false,danger=false,actionable=false,as,size:rawSize="s",asProps={},separator=false,...props})=>{const{style,className,...rest}=props;const Link=as||(actionable?"button":"a");const{invalid,size}=resolveSize(rawSize);if(invalid){console.warn("Action: Invalid size prop. Defaulting to 's'");}const onClick=event=>{var _rest$onClick,_asProps$onClick;(_rest$onClick=rest.onClick)===null||_rest$onClick===void 0?void 0:_rest$onClick.call(rest,event);asProps===null||asProps===void 0?void 0:(_asProps$onClick=asProps.onClick)===null||_asProps$onClick===void 0?void 0:_asProps$onClick.call(asProps,event);};const getQualifier=()=>{if(!qualifier)return null;return React.createElement(Qualifier,{iconSize:qualifierSize(size),"data-testId":"actionlist-icon"},qualifier)};return React.createElement("li",{className:cn(styles.action,{[styles.danger]:danger,[styles.separator]:separator}),role:"none"},React.createElement(Link,_extends({},rest,asProps,{role:"menuitem",className:cn(styles.actionItem,{[styles.actionItemDanger]:danger,[styles.qualifier]:qualifier},{[styles.qualifierEnd]:qualifierEnd},styles[size]),tabIndex:"-1",onClick:onClick}),React.createElement("span",{className:cn(styles.icon,{[styles.iconEnd]:qualifierEnd})},getQualifier()),React.createElement("span",{className:cn(styles.caption)},children)))};Action.displayName="Action";Action.propTypes={children:PropTypes.node,size:PropTypes.oneOf(["s","m","l"]),qualifier:PropTypes.oneOfType([PropTypes.element,PropTypes.string]),qualifierEnd:PropTypes.bool,danger:PropTypes.bool,actionable:PropTypes.bool,as:PropTypes.elementType,asProps:PropTypes.object,separator:PropTypes.bool};Action.defaultProps={qualifierEnd:false,danger:false,actionable:false,asProps:{},separator:false,size:"s"}; | ||
export { Action, Actionlist }; |
{ | ||
"name": "@asphalt-react/actionlist", | ||
"version": "2.0.0", | ||
"version": "2.0.1", | ||
"description": "Actionlist", | ||
@@ -53,3 +53,3 @@ "keywords": [ | ||
"license": "UNLICENSED", | ||
"gitHead": "670cc440d262dac252453b7479d82a8b6e3cf9f2" | ||
"gitHead": "d73f7d2b4114940b08c77f38636217e678f38dc5" | ||
} |
Sorry, the diff of this file is not supported yet
32003
235