@purpurds/button 7.14.0 → 8.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/LICENSE.txt +2 -2
- package/dist/button.cjs.js +3 -3
- package/dist/button.cjs.js.map +1 -1
- package/dist/button.es.js +78 -78
- package/dist/button.es.js.map +1 -1
- package/dist/styles.css +1 -1
- package/package.json +7 -7
- package/src/button.module.scss +10 -10
- package/src/button.stories.tsx +10 -26
package/dist/LICENSE.txt
CHANGED
package/dist/button.cjs.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime")
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),$=require("react"),E={PRIMARY:"primary",SECONDARY:"secondary",EXPRESSIVE:"expressive"},R={LG:"lg"};function w(u){return u&&u.__esModule&&Object.prototype.hasOwnProperty.call(u,"default")?u.default:u}var v={exports:{}};/*!
|
|
2
2
|
Copyright (c) 2018 Jed Watson.
|
|
3
3
|
Licensed under the MIT License (MIT), see
|
|
4
4
|
http://jedwatson.github.io/classnames
|
|
5
|
-
*/var
|
|
5
|
+
*/var y;function A(){return y||(y=1,function(u){(function(){var i={}.hasOwnProperty;function n(){for(var t="",r=0;r<arguments.length;r++){var e=arguments[r];e&&(t=p(t,s.call(this,e)))}return t}function s(t){if(typeof t=="string"||typeof t=="number")return this&&this[t]||t;if(typeof t!="object")return"";if(Array.isArray(t))return n.apply(this,t);if(t.toString!==Object.prototype.toString&&!t.toString.toString().includes("[native code]"))return t.toString();var r="";for(var e in t)i.call(t,e)&&t[e]&&(r=p(r,this&&this[e]||e));return r}function p(t,r){return r?t?t+" "+r:t+r:t}u.exports?(n.default=n,u.exports=n):window.classNames=n})()}(v)),v.exports}var B=A();const P=w(B),V="_rotate_12t9p_1",I="_dash_12t9p_1",M={"purpur-spinner":"_purpur-spinner_12t9p_2",rotate:V,"purpur-spinner--xxs":"_purpur-spinner--xxs_12t9p_6","purpur-spinner--xs":"_purpur-spinner--xs_12t9p_10","purpur-spinner--sm":"_purpur-spinner--sm_12t9p_14","purpur-spinner--md":"_purpur-spinner--md_12t9p_18","purpur-spinner--lg":"_purpur-spinner--lg_12t9p_22","purpur-spinner__circle":"_purpur-spinner__circle_12t9p_26",dash:I,"purpur-spinner__circle--disabled":"_purpur-spinner__circle--disabled_12t9p_41","purpur-spinner__circle--negative":"_purpur-spinner__circle--negative_12t9p_44"},x=P.bind(M),_="purpur-spinner",U={SM:"sm"},Y=({disabled:u=!1,negative:i=!1,size:n=U.SM,...s})=>a.jsx("div",{className:x(_,`${_}--${n}`),...s,children:a.jsx("svg",{viewBox:"0 0 50 50",children:a.jsx("circle",{className:x(`${_}__circle`,{[`${_}__circle--disabled`]:u,[`${_}__circle--negative`]:i}),cx:"25",cy:"25",r:"20"})})});function q(u){return u&&u.__esModule&&Object.prototype.hasOwnProperty.call(u,"default")?u.default:u}var l={exports:{}};/*!
|
|
6
6
|
Copyright (c) 2018 Jed Watson.
|
|
7
7
|
Licensed under the MIT License (MIT), see
|
|
8
8
|
http://jedwatson.github.io/classnames
|
|
9
|
-
*/var
|
|
9
|
+
*/var m;function C(){return m||(m=1,function(u){(function(){var i={}.hasOwnProperty;function n(){for(var t="",r=0;r<arguments.length;r++){var e=arguments[r];e&&(t=p(t,s.call(this,e)))}return t}function s(t){if(typeof t=="string"||typeof t=="number")return this&&this[t]||t;if(typeof t!="object")return"";if(Array.isArray(t))return n.apply(this,t);if(t.toString!==Object.prototype.toString&&!t.toString.toString().includes("[native code]"))return t.toString();var r="";for(var e in t)i.call(t,e)&&t[e]&&(r=p(r,this&&this[e]||e));return r}function p(t,r){return r?t?t+" "+r:t+r:t}u.exports?(n.default=n,u.exports=n):window.classNames=n})()}(l)),l.exports}var D=C();const L=q(D),G={"purpur-button":"_purpur-button_1goi7_1","purpur-button--xs":"_purpur-button--xs_1goi7_33","purpur-button--icon-only":"_purpur-button--icon-only_1goi7_36","purpur-button--sm":"_purpur-button--sm_1goi7_39","purpur-button--md":"_purpur-button--md_1goi7_45","purpur-button--lg":"_purpur-button--lg_1goi7_51","purpur-button--full-width":"_purpur-button--full-width_1goi7_57","purpur-button--primary":"_purpur-button--primary_1goi7_60","purpur-button--disabled":"_purpur-button--disabled_1goi7_64","purpur-button--primary-negative":"_purpur-button--primary-negative_1goi7_70","purpur-button--secondary":"_purpur-button--secondary_1goi7_82","purpur-button--secondary-negative":"_purpur-button--secondary-negative_1goi7_93","purpur-button--expressive":"_purpur-button--expressive_1goi7_104","purpur-button--expressive-negative":"_purpur-button--expressive-negative_1goi7_114","purpur-button--negative":"_purpur-button--negative_1goi7_126","purpur-button--destructive":"_purpur-button--destructive_1goi7_133","purpur-button--destructive-negative":"_purpur-button--destructive-negative_1goi7_143","purpur-button--tertiary-purple":"_purpur-button--tertiary-purple_1goi7_153","purpur-button--tertiary-purple-negative":"_purpur-button--tertiary-purple-negative_1goi7_166","purpur-button--text-negative":"_purpur-button--text-negative_1goi7_181","purpur-button--text":"_purpur-button--text_1goi7_181"},h={...E,DESTRUCTIVE:"destructive",TERTIARY_PURPLE:"tertiary-purple",TEXT:"text"},X=Object.values(h),z=L.bind(G),o="purpur-button",F=["button","submit","reset"],S=$.forwardRef(({children:u,className:i,disabled:n=!1,fullWidth:s=!1,iconOnly:p,loading:t=!1,negative:r=!1,onClick:e,size:b="md",variant:c,type:T="button",...d},j)=>{if(p&&c==="destructive")return null;const N=z([o,`${o}--${r?`${c}-negative`:c}`,`${o}--${b}`],{[`${o}--icon-only`]:p,[`${o}--negative`]:r,[`${o}--full-width`]:s,[`${o}--disabled`]:n||t},i),O=g=>{n||t?g.preventDefault():e&&e(g)},f=!!d["aria-disabled"]||n||t;return a.jsxs("button",{className:N,type:T,ref:j,"aria-disabled":f,onClick:O,...d,children:[t&&a.jsx(Y,{size:b===R.LG?"xs":"xxs",negative:r,disabled:f})," ",u]})});S.displayName="Button";exports.BUTTON_TYPES=F;exports.BUTTON_VARIANT=h;exports.Button=S;exports.buttonVariants=X;
|
|
10
10
|
//# sourceMappingURL=button.cjs.js.map
|
package/dist/button.cjs.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button.cjs.js","sources":["../../../libraries/action/dist/action.es.js","../../spinner/dist/spinner.es.js","../../../common/temp/node_modules/.pnpm/classnames@2.5.1/node_modules/classnames/bind.js","../src/button.tsx"],"sourcesContent":["const s = {\n PRIMARY: \"primary\",\n SECONDARY: \"secondary\",\n EXPRESSIVE: \"expressive\"\n}, t = Object.values(s), e = {\n XS: \"xs\",\n SM: \"sm\",\n MD: \"md\",\n LG: \"lg\"\n}, c = Object.values(e);\nexport {\n e as SIZE,\n s as VARIANT,\n c as sizes,\n t as variants\n};\n//# sourceMappingURL=action.es.js.map\n","import { jsx as c } from \"react/jsx-runtime\";\nfunction d(e) {\n return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, \"default\") ? e.default : e;\n}\nvar _ = { exports: {} };\n/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\nvar l;\nfunction x() {\n return l || (l = 1, function(e) {\n (function() {\n var i = {}.hasOwnProperty;\n function t() {\n for (var r = \"\", n = 0; n < arguments.length; n++) {\n var p = arguments[n];\n p && (r = o(r, u.call(this, p)));\n }\n return r;\n }\n function u(r) {\n if (typeof r == \"string\" || typeof r == \"number\")\n return this && this[r] || r;\n if (typeof r != \"object\")\n return \"\";\n if (Array.isArray(r))\n return t.apply(this, r);\n if (r.toString !== Object.prototype.toString && !r.toString.toString().includes(\"[native code]\"))\n return r.toString();\n var n = \"\";\n for (var p in r)\n i.call(r, p) && r[p] && (n = o(n, this && this[p] || p));\n return n;\n }\n function o(r, n) {\n return n ? r ? r + \" \" + n : r + n : r;\n }\n e.exports ? (t.default = t, e.exports = t) : window.classNames = t;\n })();\n }(_)), _.exports;\n}\nvar h = x();\nconst m = /* @__PURE__ */ d(h), v = \"_rotate_12t9p_1\", S = \"_dash_12t9p_1\", b = {\n \"purpur-spinner\": \"_purpur-spinner_12t9p_2\",\n rotate: v,\n \"purpur-spinner--xxs\": \"_purpur-spinner--xxs_12t9p_6\",\n \"purpur-spinner--xs\": \"_purpur-spinner--xs_12t9p_10\",\n \"purpur-spinner--sm\": \"_purpur-spinner--sm_12t9p_14\",\n \"purpur-spinner--md\": \"_purpur-spinner--md_12t9p_18\",\n \"purpur-spinner--lg\": \"_purpur-spinner--lg_12t9p_22\",\n \"purpur-spinner__circle\": \"_purpur-spinner__circle_12t9p_26\",\n dash: S,\n \"purpur-spinner__circle--disabled\": \"_purpur-spinner__circle--disabled_12t9p_41\",\n \"purpur-spinner__circle--negative\": \"_purpur-spinner__circle--negative_12t9p_44\"\n}, a = m.bind(b), s = \"purpur-spinner\", f = {\n XXS: \"xxs\",\n XS: \"xs\",\n SM: \"sm\",\n MD: \"md\",\n LG: \"lg\"\n}, N = Object.values(f), j = ({\n disabled: e = !1,\n negative: i = !1,\n size: t = f.SM,\n ...u\n}) => /* @__PURE__ */ c(\"div\", { className: a(s, `${s}--${t}`), ...u, children: /* @__PURE__ */ c(\"svg\", { viewBox: \"0 0 50 50\", children: /* @__PURE__ */ c(\n \"circle\",\n {\n className: a(`${s}__circle`, {\n [`${s}__circle--disabled`]: e,\n [`${s}__circle--negative`]: i\n }),\n cx: \"25\",\n cy: \"25\",\n r: \"20\"\n }\n) }) });\nexport {\n f as SPINNER_SIZE,\n j as Spinner,\n N as spinnerSizes\n};\n//# sourceMappingURL=spinner.es.js.map\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue.call(this, arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn this && this[arg] || arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(this, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, this && this[key] || key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React, { type ButtonHTMLAttributes, forwardRef, type MouseEvent } from \"react\";\nimport { type ActionProps, SIZE, VARIANT } from \"@purpurds/action\";\nimport type { BaseProps } from \"@purpurds/common-types\";\nimport { Spinner } from \"@purpurds/spinner\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./button.module.scss\";\n\nexport const BUTTON_VARIANT = {\n ...VARIANT,\n DESTRUCTIVE: \"destructive\",\n TERTIARY_PURPLE: \"tertiary-purple\",\n TEXT: \"text\",\n} as const;\n\nexport const buttonVariants = Object.values(BUTTON_VARIANT);\nexport type ButtonVariant = (typeof BUTTON_VARIANT)[keyof typeof BUTTON_VARIANT];\n\nconst cx = c.bind(styles);\nconst rootClassName = \"purpur-button\";\n\ntype ButtonType = Pick<ButtonHTMLAttributes<HTMLButtonElement>, \"type\">[\"type\"];\nexport const BUTTON_TYPES: ButtonType[] = [\"button\", \"submit\", \"reset\"] as const;\n\nexport type ButtonProps = ActionProps<ButtonVariant> & BaseProps<\"button\"> & { loading?: boolean };\n\nexport const Button = forwardRef<\n HTMLButtonElement,\n Omit<ButtonProps, \"type\"> & { type?: ButtonType }\n>(\n (\n {\n children,\n className,\n disabled = false,\n fullWidth = false,\n iconOnly,\n loading = false,\n negative = false,\n onClick,\n size = \"md\",\n variant,\n type = \"button\",\n ...props\n },\n ref\n ) => {\n if (iconOnly && variant === \"destructive\") {\n return null;\n }\n const classes = cx(\n [\n rootClassName,\n `${rootClassName}--${negative ? `${variant}-negative` : variant}`,\n `${rootClassName}--${size}`,\n ],\n {\n [`${rootClassName}--icon-only`]: iconOnly,\n [`${rootClassName}--negative`]: negative,\n [`${rootClassName}--full-width`]: fullWidth,\n [`${rootClassName}--disabled`]: disabled || loading,\n },\n className\n );\n\n const handleClick = (e: MouseEvent<HTMLButtonElement>) => {\n if (disabled || loading) {\n e.preventDefault();\n } else if (onClick) {\n onClick(e);\n }\n };\n\n const _disabled = Boolean(props[\"aria-disabled\"]) || disabled || loading;\n\n return (\n <button\n className={classes}\n type={type}\n ref={ref}\n aria-disabled={_disabled}\n onClick={handleClick}\n {...props}\n >\n {loading && (\n <Spinner\n size={size === SIZE.LG ? \"xs\" : \"xxs\"}\n negative={negative}\n disabled={_disabled}\n />\n )}{\" \"}\n {children}\n </button>\n );\n }\n);\n\nButton.displayName = \"Button\";\n"],"names":["s","e","d","_","l","x","i","t","r","n","p","o","u","h","m","v","S","b","a","f","j","c","hasOwn","classNames","classes","arg","appendClass","parseValue","key","value","newClass","module","BUTTON_VARIANT","VARIANT","buttonVariants","cx","styles","rootClassName","BUTTON_TYPES","Button","forwardRef","children","className","disabled","fullWidth","iconOnly","loading","negative","onClick","size","variant","type","props","ref","handleClick","_disabled","jsxs","jsx","Spinner","SIZE"],"mappings":"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","x_google_ignoreList":[2]}
|
|
1
|
+
{"version":3,"file":"button.cjs.js","sources":["../../../libraries/action/dist/action.es.js","../../spinner/dist/spinner.es.js","../../../common/temp/node_modules/.pnpm/classnames@2.5.1/node_modules/classnames/bind.js","../src/button.tsx"],"sourcesContent":["const s = {\n PRIMARY: \"primary\",\n SECONDARY: \"secondary\",\n EXPRESSIVE: \"expressive\"\n}, t = Object.values(s), e = {\n XS: \"xs\",\n SM: \"sm\",\n MD: \"md\",\n LG: \"lg\"\n}, c = Object.values(e);\nexport {\n e as SIZE,\n s as VARIANT,\n c as sizes,\n t as variants\n};\n//# sourceMappingURL=action.es.js.map\n","import { jsx as c } from \"react/jsx-runtime\";\nfunction d(e) {\n return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, \"default\") ? e.default : e;\n}\nvar _ = { exports: {} };\n/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\nvar l;\nfunction x() {\n return l || (l = 1, function(e) {\n (function() {\n var i = {}.hasOwnProperty;\n function t() {\n for (var r = \"\", n = 0; n < arguments.length; n++) {\n var p = arguments[n];\n p && (r = o(r, u.call(this, p)));\n }\n return r;\n }\n function u(r) {\n if (typeof r == \"string\" || typeof r == \"number\")\n return this && this[r] || r;\n if (typeof r != \"object\")\n return \"\";\n if (Array.isArray(r))\n return t.apply(this, r);\n if (r.toString !== Object.prototype.toString && !r.toString.toString().includes(\"[native code]\"))\n return r.toString();\n var n = \"\";\n for (var p in r)\n i.call(r, p) && r[p] && (n = o(n, this && this[p] || p));\n return n;\n }\n function o(r, n) {\n return n ? r ? r + \" \" + n : r + n : r;\n }\n e.exports ? (t.default = t, e.exports = t) : window.classNames = t;\n })();\n }(_)), _.exports;\n}\nvar h = x();\nconst m = /* @__PURE__ */ d(h), v = \"_rotate_12t9p_1\", S = \"_dash_12t9p_1\", b = {\n \"purpur-spinner\": \"_purpur-spinner_12t9p_2\",\n rotate: v,\n \"purpur-spinner--xxs\": \"_purpur-spinner--xxs_12t9p_6\",\n \"purpur-spinner--xs\": \"_purpur-spinner--xs_12t9p_10\",\n \"purpur-spinner--sm\": \"_purpur-spinner--sm_12t9p_14\",\n \"purpur-spinner--md\": \"_purpur-spinner--md_12t9p_18\",\n \"purpur-spinner--lg\": \"_purpur-spinner--lg_12t9p_22\",\n \"purpur-spinner__circle\": \"_purpur-spinner__circle_12t9p_26\",\n dash: S,\n \"purpur-spinner__circle--disabled\": \"_purpur-spinner__circle--disabled_12t9p_41\",\n \"purpur-spinner__circle--negative\": \"_purpur-spinner__circle--negative_12t9p_44\"\n}, a = m.bind(b), s = \"purpur-spinner\", f = {\n XXS: \"xxs\",\n XS: \"xs\",\n SM: \"sm\",\n MD: \"md\",\n LG: \"lg\"\n}, N = Object.values(f), j = ({\n disabled: e = !1,\n negative: i = !1,\n size: t = f.SM,\n ...u\n}) => /* @__PURE__ */ c(\"div\", { className: a(s, `${s}--${t}`), ...u, children: /* @__PURE__ */ c(\"svg\", { viewBox: \"0 0 50 50\", children: /* @__PURE__ */ c(\n \"circle\",\n {\n className: a(`${s}__circle`, {\n [`${s}__circle--disabled`]: e,\n [`${s}__circle--negative`]: i\n }),\n cx: \"25\",\n cy: \"25\",\n r: \"20\"\n }\n) }) });\nexport {\n f as SPINNER_SIZE,\n j as Spinner,\n N as spinnerSizes\n};\n//# sourceMappingURL=spinner.es.js.map\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue.call(this, arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn this && this[arg] || arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(this, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, this && this[key] || key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React, { type ButtonHTMLAttributes, forwardRef, type MouseEvent } from \"react\";\nimport { type ActionProps, SIZE, VARIANT } from \"@purpurds/action\";\nimport type { BaseProps } from \"@purpurds/common-types\";\nimport { Spinner } from \"@purpurds/spinner\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./button.module.scss\";\n\nexport const BUTTON_VARIANT = {\n ...VARIANT,\n DESTRUCTIVE: \"destructive\",\n TERTIARY_PURPLE: \"tertiary-purple\",\n TEXT: \"text\",\n} as const;\n\nexport const buttonVariants = Object.values(BUTTON_VARIANT);\nexport type ButtonVariant = (typeof BUTTON_VARIANT)[keyof typeof BUTTON_VARIANT];\n\nconst cx = c.bind(styles);\nconst rootClassName = \"purpur-button\";\n\ntype ButtonType = Pick<ButtonHTMLAttributes<HTMLButtonElement>, \"type\">[\"type\"];\nexport const BUTTON_TYPES: ButtonType[] = [\"button\", \"submit\", \"reset\"] as const;\n\nexport type ButtonProps = ActionProps<ButtonVariant> & BaseProps<\"button\"> & { loading?: boolean };\n\nexport const Button = forwardRef<\n HTMLButtonElement,\n Omit<ButtonProps, \"type\"> & { type?: ButtonType }\n>(\n (\n {\n children,\n className,\n disabled = false,\n fullWidth = false,\n iconOnly,\n loading = false,\n negative = false,\n onClick,\n size = \"md\",\n variant,\n type = \"button\",\n ...props\n },\n ref\n ) => {\n if (iconOnly && variant === \"destructive\") {\n return null;\n }\n const classes = cx(\n [\n rootClassName,\n `${rootClassName}--${negative ? `${variant}-negative` : variant}`,\n `${rootClassName}--${size}`,\n ],\n {\n [`${rootClassName}--icon-only`]: iconOnly,\n [`${rootClassName}--negative`]: negative,\n [`${rootClassName}--full-width`]: fullWidth,\n [`${rootClassName}--disabled`]: disabled || loading,\n },\n className\n );\n\n const handleClick = (e: MouseEvent<HTMLButtonElement>) => {\n if (disabled || loading) {\n e.preventDefault();\n } else if (onClick) {\n onClick(e);\n }\n };\n\n const _disabled = Boolean(props[\"aria-disabled\"]) || disabled || loading;\n\n return (\n <button\n className={classes}\n type={type}\n ref={ref}\n aria-disabled={_disabled}\n onClick={handleClick}\n {...props}\n >\n {loading && (\n <Spinner\n size={size === SIZE.LG ? \"xs\" : \"xxs\"}\n negative={negative}\n disabled={_disabled}\n />\n )}{\" \"}\n {children}\n </button>\n );\n }\n);\n\nButton.displayName = \"Button\";\n"],"names":["s","e","d","_","l","x","t","r","n","p","o","u","h","m","v","S","b","a","f","j","c","hasOwn","classNames","classes","i","arg","appendClass","parseValue","key","value","newClass","module","BUTTON_VARIANT","VARIANT","buttonVariants","cx","styles","rootClassName","BUTTON_TYPES","Button","forwardRef","children","className","disabled","fullWidth","iconOnly","loading","negative","onClick","size","variant","type","props","ref","handleClick","_disabled","jsxs","jsx","Spinner","SIZE"],"mappings":"wIAAMA,EAAI,CACR,QAAS,UACT,UAAW,YACX,WAAY,YACd,EAAyBC,EAAI,CAI3B,GAAI,IACN,ECRA,SAASC,EAAED,EAAG,CACZ,OAAOA,GAAKA,EAAE,YAAc,OAAO,UAAU,eAAe,KAAKA,EAAG,SAAS,EAAIA,EAAE,QAAUA,CAC/F,CACA,IAAIE,EAAI,CAAE,QAAS,EAAI,EACvB;AAAA;AAAA;AAAA;AAAA,EAKA,IAAIC,EACJ,SAASC,GAAI,CACX,OAAOD,IAAMA,EAAI,EAAG,SAASH,EAAG,EAC7B,UAAW,CACV,IAAI,EAAI,CAAA,EAAG,eACX,SAASK,GAAI,CACX,QAASC,EAAI,GAAIC,EAAI,EAAGA,EAAI,UAAU,OAAQA,IAAK,CACjD,IAAIC,EAAI,UAAUD,CAAC,EACnBC,IAAMF,EAAIG,EAAEH,EAAGI,EAAE,KAAK,KAAMF,CAAC,CAAC,EACxC,CACQ,OAAOF,CACf,CACM,SAASI,EAAEJ,EAAG,CACZ,GAAI,OAAOA,GAAK,UAAY,OAAOA,GAAK,SACtC,OAAO,MAAQ,KAAKA,CAAC,GAAKA,EAC5B,GAAI,OAAOA,GAAK,SACd,MAAO,GACT,GAAI,MAAM,QAAQA,CAAC,EACjB,OAAOD,EAAE,MAAM,KAAMC,CAAC,EACxB,GAAIA,EAAE,WAAa,OAAO,UAAU,UAAY,CAACA,EAAE,SAAS,WAAW,SAAS,eAAe,EAC7F,OAAOA,EAAE,SAAU,EACrB,IAAIC,EAAI,GACR,QAASC,KAAKF,EACZ,EAAE,KAAKA,EAAGE,CAAC,GAAKF,EAAEE,CAAC,IAAMD,EAAIE,EAAEF,EAAG,MAAQ,KAAKC,CAAC,GAAKA,CAAC,GACxD,OAAOD,CACf,CACM,SAASE,EAAEH,EAAGC,EAAG,CACf,OAAOA,EAAID,EAAIA,EAAI,IAAMC,EAAID,EAAIC,EAAID,CAC7C,CACMN,EAAE,SAAWK,EAAE,QAAUA,EAAGL,EAAE,QAAUK,GAAK,OAAO,WAAaA,CACvE,GAAQ,CACR,EAAIH,CAAC,GAAIA,EAAE,OACX,CACA,IAAIS,EAAIP,EAAG,EACN,MAACQ,EAAoBX,EAAEU,CAAC,EAAGE,EAAI,kBAAmBC,EAAI,gBAAiBC,EAAI,CAC9E,iBAAkB,0BAClB,OAAQF,EACR,sBAAuB,+BACvB,qBAAsB,+BACtB,qBAAsB,+BACtB,qBAAsB,+BACtB,qBAAsB,+BACtB,yBAA0B,mCAC1B,KAAMC,EACN,mCAAoC,6CACpC,mCAAoC,4CACtC,EAAGE,EAAIJ,EAAE,KAAKG,CAAC,EAAGhB,EAAI,iBAAkBkB,EAAI,CAG1C,GAAI,IAGN,EAAyBC,EAAI,CAAC,CAC5B,SAAUlB,EAAI,GACd,SAAU,EAAI,GACd,KAAMK,EAAIY,EAAE,GACZ,GAAGP,CACL,IAAsBS,EAAC,IAAC,MAAO,CAAE,UAAWH,EAAEjB,EAAG,GAAGA,CAAC,KAAKM,CAAC,EAAE,EAAG,GAAGK,EAAG,SAA0BS,EAAC,IAAC,MAAO,CAAE,QAAS,YAAa,SAA0BA,EAAC,IAC1J,SACA,CACE,UAAWH,EAAE,GAAGjB,CAAC,WAAY,CAC3B,CAAC,GAAGA,CAAC,oBAAoB,EAAGC,EAC5B,CAAC,GAAGD,CAAC,oBAAoB,EAAG,CAClC,CAAK,EACD,GAAI,KACJ,GAAI,KACJ,EAAG,IACP,CACA,CAAC,CAAE,CAAG,CAAA;;;;iDCvEL,UAAY,CAGZ,IAAIqB,EAAS,CAAA,EAAG,eAEhB,SAASC,GAAc,CAGtB,QAFIC,EAAU,GAELC,EAAI,EAAGA,EAAI,UAAU,OAAQA,IAAK,CAC1C,IAAIC,EAAM,UAAUD,CAAC,EACjBC,IACHF,EAAUG,EAAYH,EAASI,EAAW,KAAK,KAAMF,CAAG,CAAC,EAE7D,CAEE,OAAOF,CACT,CAEC,SAASI,EAAYF,EAAK,CACzB,GAAI,OAAOA,GAAQ,UAAY,OAAOA,GAAQ,SAC7C,OAAO,MAAQ,KAAKA,CAAG,GAAKA,EAG7B,GAAI,OAAOA,GAAQ,SAClB,MAAO,GAGR,GAAI,MAAM,QAAQA,CAAG,EACpB,OAAOH,EAAW,MAAM,KAAMG,CAAG,EAGlC,GAAIA,EAAI,WAAa,OAAO,UAAU,UAAY,CAACA,EAAI,SAAS,SAAQ,EAAG,SAAS,eAAe,EAClG,OAAOA,EAAI,SAAU,EAGtB,IAAIF,EAAU,GAEd,QAASK,KAAOH,EACXJ,EAAO,KAAKI,EAAKG,CAAG,GAAKH,EAAIG,CAAG,IACnCL,EAAUG,EAAYH,EAAS,MAAQ,KAAKK,CAAG,GAAKA,CAAG,GAIzD,OAAOL,CACT,CAEC,SAASG,EAAaG,EAAOC,EAAU,CACtC,OAAKA,EAIDD,EACIA,EAAQ,IAAMC,EAGfD,EAAQC,EAPPD,CAQV,CAEsCE,EAAO,SAC3CT,EAAW,QAAUA,EACrBS,UAAiBT,GAOjB,OAAO,WAAaA,CAEtB,25CCpEaU,EAAiB,CAC5B,GAAGC,EACH,YAAa,cACb,gBAAiB,kBACjB,KAAM,MACR,EAEaC,EAAiB,OAAO,OAAOF,CAAc,EAGpDG,EAAKf,EAAE,KAAKgB,CAAM,EAClBC,EAAgB,gBAGTC,EAA6B,CAAC,SAAU,SAAU,OAAO,EAIzDC,EAASC,EAAA,WAIpB,CACE,CACE,SAAAC,EACA,UAAAC,EACA,SAAAC,EAAW,GACX,UAAAC,EAAY,GACZ,SAAAC,EACA,QAAAC,EAAU,GACV,SAAAC,EAAW,GACX,QAAAC,EACA,KAAAC,EAAO,KACP,QAAAC,EACA,KAAAC,EAAO,SACP,GAAGC,GAELC,IACG,CACC,GAAAR,GAAYK,IAAY,cACnB,OAAA,KAET,MAAM3B,EAAUY,EACd,CACEE,EACA,GAAGA,CAAa,KAAKU,EAAW,GAAGG,CAAO,YAAcA,CAAO,GAC/D,GAAGb,CAAa,KAAKY,CAAI,EAC3B,EACA,CACE,CAAC,GAAGZ,CAAa,aAAa,EAAGQ,EACjC,CAAC,GAAGR,CAAa,YAAY,EAAGU,EAChC,CAAC,GAAGV,CAAa,cAAc,EAAGO,EAClC,CAAC,GAAGP,CAAa,YAAY,EAAGM,GAAYG,CAC9C,EACAJ,CACF,EAEMY,EAAerD,GAAqC,CACpD0C,GAAYG,EACd7C,EAAE,eAAe,EACR+C,GACTA,EAAQ/C,CAAC,CAEb,EAEMsD,EAAY,EAAQH,EAAM,eAAe,GAAMT,GAAYG,EAG/D,OAAAU,EAAA,KAAC,SAAA,CACC,UAAWjC,EACX,KAAA4B,EACA,IAAAE,EACA,gBAAeE,EACf,QAASD,EACR,GAAGF,EAEH,SAAA,CACCN,GAAAW,EAAA,IAACC,EAAA,CACC,KAAMT,IAASU,EAAK,GAAK,KAAO,MAChC,SAAAZ,EACA,SAAUQ,CAAA,CACZ,EACC,IACFd,CAAA,CAAA,CACH,CAAA,CAGN,EAEAF,EAAO,YAAc","x_google_ignoreList":[2]}
|
package/dist/button.es.js
CHANGED
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
import { jsx as a, jsxs as
|
|
2
|
-
import { forwardRef as
|
|
3
|
-
const
|
|
1
|
+
import { jsx as a, jsxs as E } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef as N } from "react";
|
|
3
|
+
const O = {
|
|
4
4
|
PRIMARY: "primary",
|
|
5
5
|
SECONDARY: "secondary",
|
|
6
6
|
EXPRESSIVE: "expressive"
|
|
7
|
-
},
|
|
7
|
+
}, T = {
|
|
8
8
|
LG: "lg"
|
|
9
9
|
};
|
|
10
|
-
function
|
|
10
|
+
function j(u) {
|
|
11
11
|
return u && u.__esModule && Object.prototype.hasOwnProperty.call(u, "default") ? u.default : u;
|
|
12
12
|
}
|
|
13
|
-
var
|
|
13
|
+
var g = { exports: {} };
|
|
14
14
|
/*!
|
|
15
15
|
Copyright (c) 2018 Jed Watson.
|
|
16
16
|
Licensed under the MIT License (MIT), see
|
|
17
17
|
http://jedwatson.github.io/classnames
|
|
18
18
|
*/
|
|
19
|
-
var
|
|
20
|
-
function
|
|
21
|
-
return
|
|
19
|
+
var y;
|
|
20
|
+
function R() {
|
|
21
|
+
return y || (y = 1, function(u) {
|
|
22
22
|
(function() {
|
|
23
|
-
var
|
|
23
|
+
var i = {}.hasOwnProperty;
|
|
24
24
|
function n() {
|
|
25
25
|
for (var t = "", r = 0; r < arguments.length; r++) {
|
|
26
26
|
var e = arguments[r];
|
|
27
|
-
e && (t = p(t,
|
|
27
|
+
e && (t = p(t, o.call(this, e)));
|
|
28
28
|
}
|
|
29
29
|
return t;
|
|
30
30
|
}
|
|
31
|
-
function
|
|
31
|
+
function o(t) {
|
|
32
32
|
if (typeof t == "string" || typeof t == "number")
|
|
33
33
|
return this && this[t] || t;
|
|
34
34
|
if (typeof t != "object")
|
|
@@ -39,7 +39,7 @@ function j() {
|
|
|
39
39
|
return t.toString();
|
|
40
40
|
var r = "";
|
|
41
41
|
for (var e in t)
|
|
42
|
-
|
|
42
|
+
i.call(t, e) && t[e] && (r = p(r, this && this[e] || e));
|
|
43
43
|
return r;
|
|
44
44
|
}
|
|
45
45
|
function p(t, r) {
|
|
@@ -47,41 +47,41 @@ function j() {
|
|
|
47
47
|
}
|
|
48
48
|
u.exports ? (n.default = n, u.exports = n) : window.classNames = n;
|
|
49
49
|
})();
|
|
50
|
-
}(
|
|
50
|
+
}(g)), g.exports;
|
|
51
51
|
}
|
|
52
|
-
var
|
|
53
|
-
const
|
|
52
|
+
var A = R();
|
|
53
|
+
const P = /* @__PURE__ */ j(A), B = "_rotate_12t9p_1", I = "_dash_12t9p_1", M = {
|
|
54
54
|
"purpur-spinner": "_purpur-spinner_12t9p_2",
|
|
55
|
-
rotate:
|
|
55
|
+
rotate: B,
|
|
56
56
|
"purpur-spinner--xxs": "_purpur-spinner--xxs_12t9p_6",
|
|
57
57
|
"purpur-spinner--xs": "_purpur-spinner--xs_12t9p_10",
|
|
58
58
|
"purpur-spinner--sm": "_purpur-spinner--sm_12t9p_14",
|
|
59
59
|
"purpur-spinner--md": "_purpur-spinner--md_12t9p_18",
|
|
60
60
|
"purpur-spinner--lg": "_purpur-spinner--lg_12t9p_22",
|
|
61
61
|
"purpur-spinner__circle": "_purpur-spinner__circle_12t9p_26",
|
|
62
|
-
dash:
|
|
62
|
+
dash: I,
|
|
63
63
|
"purpur-spinner__circle--disabled": "_purpur-spinner__circle--disabled_12t9p_41",
|
|
64
64
|
"purpur-spinner__circle--negative": "_purpur-spinner__circle--negative_12t9p_44"
|
|
65
|
-
},
|
|
65
|
+
}, m = P.bind(M), _ = "purpur-spinner", V = {
|
|
66
66
|
SM: "sm"
|
|
67
|
-
},
|
|
67
|
+
}, C = ({
|
|
68
68
|
disabled: u = !1,
|
|
69
|
-
negative:
|
|
70
|
-
size: n =
|
|
71
|
-
...
|
|
72
|
-
}) => /* @__PURE__ */ a("div", { className:
|
|
69
|
+
negative: i = !1,
|
|
70
|
+
size: n = V.SM,
|
|
71
|
+
...o
|
|
72
|
+
}) => /* @__PURE__ */ a("div", { className: m(_, `${_}--${n}`), ...o, children: /* @__PURE__ */ a("svg", { viewBox: "0 0 50 50", children: /* @__PURE__ */ a(
|
|
73
73
|
"circle",
|
|
74
74
|
{
|
|
75
|
-
className:
|
|
75
|
+
className: m(`${_}__circle`, {
|
|
76
76
|
[`${_}__circle--disabled`]: u,
|
|
77
|
-
[`${_}__circle--negative`]:
|
|
77
|
+
[`${_}__circle--negative`]: i
|
|
78
78
|
}),
|
|
79
79
|
cx: "25",
|
|
80
80
|
cy: "25",
|
|
81
81
|
r: "20"
|
|
82
82
|
}
|
|
83
83
|
) }) });
|
|
84
|
-
function
|
|
84
|
+
function D(u) {
|
|
85
85
|
return u && u.__esModule && Object.prototype.hasOwnProperty.call(u, "default") ? u.default : u;
|
|
86
86
|
}
|
|
87
87
|
var l = { exports: {} };
|
|
@@ -90,19 +90,19 @@ var l = { exports: {} };
|
|
|
90
90
|
Licensed under the MIT License (MIT), see
|
|
91
91
|
http://jedwatson.github.io/classnames
|
|
92
92
|
*/
|
|
93
|
-
var
|
|
94
|
-
function
|
|
95
|
-
return
|
|
93
|
+
var x;
|
|
94
|
+
function U() {
|
|
95
|
+
return x || (x = 1, function(u) {
|
|
96
96
|
(function() {
|
|
97
|
-
var
|
|
97
|
+
var i = {}.hasOwnProperty;
|
|
98
98
|
function n() {
|
|
99
99
|
for (var t = "", r = 0; r < arguments.length; r++) {
|
|
100
100
|
var e = arguments[r];
|
|
101
|
-
e && (t = p(t,
|
|
101
|
+
e && (t = p(t, o.call(this, e)));
|
|
102
102
|
}
|
|
103
103
|
return t;
|
|
104
104
|
}
|
|
105
|
-
function
|
|
105
|
+
function o(t) {
|
|
106
106
|
if (typeof t == "string" || typeof t == "number")
|
|
107
107
|
return this && this[t] || t;
|
|
108
108
|
if (typeof t != "object")
|
|
@@ -113,7 +113,7 @@ function D() {
|
|
|
113
113
|
return t.toString();
|
|
114
114
|
var r = "";
|
|
115
115
|
for (var e in t)
|
|
116
|
-
|
|
116
|
+
i.call(t, e) && t[e] && (r = p(r, this && this[e] || e));
|
|
117
117
|
return r;
|
|
118
118
|
}
|
|
119
119
|
function p(t, r) {
|
|
@@ -123,40 +123,40 @@ function D() {
|
|
|
123
123
|
})();
|
|
124
124
|
}(l)), l.exports;
|
|
125
125
|
}
|
|
126
|
-
var
|
|
127
|
-
const
|
|
128
|
-
"purpur-button": "_purpur-
|
|
129
|
-
"purpur-button--xs": "_purpur-button--
|
|
130
|
-
"purpur-button--icon-only": "_purpur-button--icon-
|
|
131
|
-
"purpur-button--sm": "_purpur-button--
|
|
132
|
-
"purpur-button--md": "_purpur-button--
|
|
133
|
-
"purpur-button--lg": "_purpur-button--
|
|
134
|
-
"purpur-button--full-width": "_purpur-button--full-
|
|
135
|
-
"purpur-button--primary": "_purpur-button--
|
|
136
|
-
"purpur-button--disabled": "_purpur-button--
|
|
137
|
-
"purpur-button--primary-negative": "_purpur-button--primary-
|
|
138
|
-
"purpur-button--secondary": "_purpur-button--
|
|
139
|
-
"purpur-button--secondary-negative": "_purpur-button--secondary-
|
|
140
|
-
"purpur-button--expressive": "_purpur-button--
|
|
141
|
-
"purpur-button--expressive-negative": "_purpur-button--expressive-
|
|
142
|
-
"purpur-button--negative": "_purpur-button--
|
|
143
|
-
"purpur-button--destructive": "_purpur-button--
|
|
144
|
-
"purpur-button--destructive-negative": "_purpur-button--destructive-
|
|
145
|
-
"purpur-button--tertiary-purple": "_purpur-button--tertiary-
|
|
146
|
-
"purpur-button--tertiary-purple-negative": "_purpur-button--tertiary-purple-
|
|
147
|
-
"purpur-button--text-negative": "_purpur-button--text-
|
|
148
|
-
"purpur-button--text": "_purpur-button--
|
|
126
|
+
var Y = U();
|
|
127
|
+
const L = /* @__PURE__ */ D(Y), q = {
|
|
128
|
+
"purpur-button": "_purpur-button_1goi7_1",
|
|
129
|
+
"purpur-button--xs": "_purpur-button--xs_1goi7_33",
|
|
130
|
+
"purpur-button--icon-only": "_purpur-button--icon-only_1goi7_36",
|
|
131
|
+
"purpur-button--sm": "_purpur-button--sm_1goi7_39",
|
|
132
|
+
"purpur-button--md": "_purpur-button--md_1goi7_45",
|
|
133
|
+
"purpur-button--lg": "_purpur-button--lg_1goi7_51",
|
|
134
|
+
"purpur-button--full-width": "_purpur-button--full-width_1goi7_57",
|
|
135
|
+
"purpur-button--primary": "_purpur-button--primary_1goi7_60",
|
|
136
|
+
"purpur-button--disabled": "_purpur-button--disabled_1goi7_64",
|
|
137
|
+
"purpur-button--primary-negative": "_purpur-button--primary-negative_1goi7_70",
|
|
138
|
+
"purpur-button--secondary": "_purpur-button--secondary_1goi7_82",
|
|
139
|
+
"purpur-button--secondary-negative": "_purpur-button--secondary-negative_1goi7_93",
|
|
140
|
+
"purpur-button--expressive": "_purpur-button--expressive_1goi7_104",
|
|
141
|
+
"purpur-button--expressive-negative": "_purpur-button--expressive-negative_1goi7_114",
|
|
142
|
+
"purpur-button--negative": "_purpur-button--negative_1goi7_126",
|
|
143
|
+
"purpur-button--destructive": "_purpur-button--destructive_1goi7_133",
|
|
144
|
+
"purpur-button--destructive-negative": "_purpur-button--destructive-negative_1goi7_143",
|
|
145
|
+
"purpur-button--tertiary-purple": "_purpur-button--tertiary-purple_1goi7_153",
|
|
146
|
+
"purpur-button--tertiary-purple-negative": "_purpur-button--tertiary-purple-negative_1goi7_166",
|
|
147
|
+
"purpur-button--text-negative": "_purpur-button--text-negative_1goi7_181",
|
|
148
|
+
"purpur-button--text": "_purpur-button--text_1goi7_181"
|
|
149
149
|
}, G = {
|
|
150
|
-
...
|
|
150
|
+
...O,
|
|
151
151
|
DESTRUCTIVE: "destructive",
|
|
152
152
|
TERTIARY_PURPLE: "tertiary-purple",
|
|
153
153
|
TEXT: "text"
|
|
154
|
-
}, J = Object.values(G), X =
|
|
154
|
+
}, J = Object.values(G), X = L.bind(q), s = "purpur-button", K = ["button", "submit", "reset"], z = N(
|
|
155
155
|
({
|
|
156
156
|
children: u,
|
|
157
|
-
className:
|
|
157
|
+
className: i,
|
|
158
158
|
disabled: n = !1,
|
|
159
|
-
fullWidth:
|
|
159
|
+
fullWidth: o = !1,
|
|
160
160
|
iconOnly: p,
|
|
161
161
|
loading: t = !1,
|
|
162
162
|
negative: r = !1,
|
|
@@ -165,39 +165,39 @@ const Y = /* @__PURE__ */ C(U), L = {
|
|
|
165
165
|
variant: c,
|
|
166
166
|
type: h = "button",
|
|
167
167
|
...d
|
|
168
|
-
},
|
|
168
|
+
}, S) => {
|
|
169
169
|
if (p && c === "destructive")
|
|
170
170
|
return null;
|
|
171
|
-
const
|
|
171
|
+
const $ = X(
|
|
172
172
|
[
|
|
173
|
-
|
|
174
|
-
`${
|
|
175
|
-
`${
|
|
173
|
+
s,
|
|
174
|
+
`${s}--${r ? `${c}-negative` : c}`,
|
|
175
|
+
`${s}--${b}`
|
|
176
176
|
],
|
|
177
177
|
{
|
|
178
|
-
[`${
|
|
179
|
-
[`${
|
|
180
|
-
[`${
|
|
181
|
-
[`${
|
|
178
|
+
[`${s}--icon-only`]: p,
|
|
179
|
+
[`${s}--negative`]: r,
|
|
180
|
+
[`${s}--full-width`]: o,
|
|
181
|
+
[`${s}--disabled`]: n || t
|
|
182
182
|
},
|
|
183
|
-
|
|
184
|
-
),
|
|
183
|
+
i
|
|
184
|
+
), w = (v) => {
|
|
185
185
|
n || t ? v.preventDefault() : e && e(v);
|
|
186
186
|
}, f = !!d["aria-disabled"] || n || t;
|
|
187
|
-
return /* @__PURE__ */
|
|
187
|
+
return /* @__PURE__ */ E(
|
|
188
188
|
"button",
|
|
189
189
|
{
|
|
190
|
-
className:
|
|
190
|
+
className: $,
|
|
191
191
|
type: h,
|
|
192
|
-
ref:
|
|
192
|
+
ref: S,
|
|
193
193
|
"aria-disabled": f,
|
|
194
|
-
onClick:
|
|
194
|
+
onClick: w,
|
|
195
195
|
...d,
|
|
196
196
|
children: [
|
|
197
197
|
t && /* @__PURE__ */ a(
|
|
198
|
-
|
|
198
|
+
C,
|
|
199
199
|
{
|
|
200
|
-
size: b ===
|
|
200
|
+
size: b === T.LG ? "xs" : "xxs",
|
|
201
201
|
negative: r,
|
|
202
202
|
disabled: f
|
|
203
203
|
}
|
package/dist/button.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button.es.js","sources":["../../../libraries/action/dist/action.es.js","../../spinner/dist/spinner.es.js","../../../common/temp/node_modules/.pnpm/classnames@2.5.1/node_modules/classnames/bind.js","../src/button.tsx"],"sourcesContent":["const s = {\n PRIMARY: \"primary\",\n SECONDARY: \"secondary\",\n EXPRESSIVE: \"expressive\"\n}, t = Object.values(s), e = {\n XS: \"xs\",\n SM: \"sm\",\n MD: \"md\",\n LG: \"lg\"\n}, c = Object.values(e);\nexport {\n e as SIZE,\n s as VARIANT,\n c as sizes,\n t as variants\n};\n//# sourceMappingURL=action.es.js.map\n","import { jsx as c } from \"react/jsx-runtime\";\nfunction d(e) {\n return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, \"default\") ? e.default : e;\n}\nvar _ = { exports: {} };\n/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\nvar l;\nfunction x() {\n return l || (l = 1, function(e) {\n (function() {\n var i = {}.hasOwnProperty;\n function t() {\n for (var r = \"\", n = 0; n < arguments.length; n++) {\n var p = arguments[n];\n p && (r = o(r, u.call(this, p)));\n }\n return r;\n }\n function u(r) {\n if (typeof r == \"string\" || typeof r == \"number\")\n return this && this[r] || r;\n if (typeof r != \"object\")\n return \"\";\n if (Array.isArray(r))\n return t.apply(this, r);\n if (r.toString !== Object.prototype.toString && !r.toString.toString().includes(\"[native code]\"))\n return r.toString();\n var n = \"\";\n for (var p in r)\n i.call(r, p) && r[p] && (n = o(n, this && this[p] || p));\n return n;\n }\n function o(r, n) {\n return n ? r ? r + \" \" + n : r + n : r;\n }\n e.exports ? (t.default = t, e.exports = t) : window.classNames = t;\n })();\n }(_)), _.exports;\n}\nvar h = x();\nconst m = /* @__PURE__ */ d(h), v = \"_rotate_12t9p_1\", S = \"_dash_12t9p_1\", b = {\n \"purpur-spinner\": \"_purpur-spinner_12t9p_2\",\n rotate: v,\n \"purpur-spinner--xxs\": \"_purpur-spinner--xxs_12t9p_6\",\n \"purpur-spinner--xs\": \"_purpur-spinner--xs_12t9p_10\",\n \"purpur-spinner--sm\": \"_purpur-spinner--sm_12t9p_14\",\n \"purpur-spinner--md\": \"_purpur-spinner--md_12t9p_18\",\n \"purpur-spinner--lg\": \"_purpur-spinner--lg_12t9p_22\",\n \"purpur-spinner__circle\": \"_purpur-spinner__circle_12t9p_26\",\n dash: S,\n \"purpur-spinner__circle--disabled\": \"_purpur-spinner__circle--disabled_12t9p_41\",\n \"purpur-spinner__circle--negative\": \"_purpur-spinner__circle--negative_12t9p_44\"\n}, a = m.bind(b), s = \"purpur-spinner\", f = {\n XXS: \"xxs\",\n XS: \"xs\",\n SM: \"sm\",\n MD: \"md\",\n LG: \"lg\"\n}, N = Object.values(f), j = ({\n disabled: e = !1,\n negative: i = !1,\n size: t = f.SM,\n ...u\n}) => /* @__PURE__ */ c(\"div\", { className: a(s, `${s}--${t}`), ...u, children: /* @__PURE__ */ c(\"svg\", { viewBox: \"0 0 50 50\", children: /* @__PURE__ */ c(\n \"circle\",\n {\n className: a(`${s}__circle`, {\n [`${s}__circle--disabled`]: e,\n [`${s}__circle--negative`]: i\n }),\n cx: \"25\",\n cy: \"25\",\n r: \"20\"\n }\n) }) });\nexport {\n f as SPINNER_SIZE,\n j as Spinner,\n N as spinnerSizes\n};\n//# sourceMappingURL=spinner.es.js.map\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue.call(this, arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn this && this[arg] || arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(this, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, this && this[key] || key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React, { type ButtonHTMLAttributes, forwardRef, type MouseEvent } from \"react\";\nimport { type ActionProps, SIZE, VARIANT } from \"@purpurds/action\";\nimport type { BaseProps } from \"@purpurds/common-types\";\nimport { Spinner } from \"@purpurds/spinner\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./button.module.scss\";\n\nexport const BUTTON_VARIANT = {\n ...VARIANT,\n DESTRUCTIVE: \"destructive\",\n TERTIARY_PURPLE: \"tertiary-purple\",\n TEXT: \"text\",\n} as const;\n\nexport const buttonVariants = Object.values(BUTTON_VARIANT);\nexport type ButtonVariant = (typeof BUTTON_VARIANT)[keyof typeof BUTTON_VARIANT];\n\nconst cx = c.bind(styles);\nconst rootClassName = \"purpur-button\";\n\ntype ButtonType = Pick<ButtonHTMLAttributes<HTMLButtonElement>, \"type\">[\"type\"];\nexport const BUTTON_TYPES: ButtonType[] = [\"button\", \"submit\", \"reset\"] as const;\n\nexport type ButtonProps = ActionProps<ButtonVariant> & BaseProps<\"button\"> & { loading?: boolean };\n\nexport const Button = forwardRef<\n HTMLButtonElement,\n Omit<ButtonProps, \"type\"> & { type?: ButtonType }\n>(\n (\n {\n children,\n className,\n disabled = false,\n fullWidth = false,\n iconOnly,\n loading = false,\n negative = false,\n onClick,\n size = \"md\",\n variant,\n type = \"button\",\n ...props\n },\n ref\n ) => {\n if (iconOnly && variant === \"destructive\") {\n return null;\n }\n const classes = cx(\n [\n rootClassName,\n `${rootClassName}--${negative ? `${variant}-negative` : variant}`,\n `${rootClassName}--${size}`,\n ],\n {\n [`${rootClassName}--icon-only`]: iconOnly,\n [`${rootClassName}--negative`]: negative,\n [`${rootClassName}--full-width`]: fullWidth,\n [`${rootClassName}--disabled`]: disabled || loading,\n },\n className\n );\n\n const handleClick = (e: MouseEvent<HTMLButtonElement>) => {\n if (disabled || loading) {\n e.preventDefault();\n } else if (onClick) {\n onClick(e);\n }\n };\n\n const _disabled = Boolean(props[\"aria-disabled\"]) || disabled || loading;\n\n return (\n <button\n className={classes}\n type={type}\n ref={ref}\n aria-disabled={_disabled}\n onClick={handleClick}\n {...props}\n >\n {loading && (\n <Spinner\n size={size === SIZE.LG ? \"xs\" : \"xxs\"}\n negative={negative}\n disabled={_disabled}\n />\n )}{\" \"}\n {children}\n </button>\n );\n }\n);\n\nButton.displayName = \"Button\";\n"],"names":["s","e","d","_","l","x","i","t","r","n","p","o","u","h","m","v","S","b","a","f","j","c","hasOwn","classNames","classes","arg","appendClass","parseValue","key","value","newClass","module","BUTTON_VARIANT","VARIANT","buttonVariants","cx","styles","rootClassName","BUTTON_TYPES","Button","forwardRef","children","className","disabled","fullWidth","iconOnly","loading","negative","onClick","size","variant","type","props","ref","handleClick","_disabled","jsxs","jsx","Spinner","SIZE"],"mappings":"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","x_google_ignoreList":[2]}
|
|
1
|
+
{"version":3,"file":"button.es.js","sources":["../../../libraries/action/dist/action.es.js","../../spinner/dist/spinner.es.js","../../../common/temp/node_modules/.pnpm/classnames@2.5.1/node_modules/classnames/bind.js","../src/button.tsx"],"sourcesContent":["const s = {\n PRIMARY: \"primary\",\n SECONDARY: \"secondary\",\n EXPRESSIVE: \"expressive\"\n}, t = Object.values(s), e = {\n XS: \"xs\",\n SM: \"sm\",\n MD: \"md\",\n LG: \"lg\"\n}, c = Object.values(e);\nexport {\n e as SIZE,\n s as VARIANT,\n c as sizes,\n t as variants\n};\n//# sourceMappingURL=action.es.js.map\n","import { jsx as c } from \"react/jsx-runtime\";\nfunction d(e) {\n return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, \"default\") ? e.default : e;\n}\nvar _ = { exports: {} };\n/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\nvar l;\nfunction x() {\n return l || (l = 1, function(e) {\n (function() {\n var i = {}.hasOwnProperty;\n function t() {\n for (var r = \"\", n = 0; n < arguments.length; n++) {\n var p = arguments[n];\n p && (r = o(r, u.call(this, p)));\n }\n return r;\n }\n function u(r) {\n if (typeof r == \"string\" || typeof r == \"number\")\n return this && this[r] || r;\n if (typeof r != \"object\")\n return \"\";\n if (Array.isArray(r))\n return t.apply(this, r);\n if (r.toString !== Object.prototype.toString && !r.toString.toString().includes(\"[native code]\"))\n return r.toString();\n var n = \"\";\n for (var p in r)\n i.call(r, p) && r[p] && (n = o(n, this && this[p] || p));\n return n;\n }\n function o(r, n) {\n return n ? r ? r + \" \" + n : r + n : r;\n }\n e.exports ? (t.default = t, e.exports = t) : window.classNames = t;\n })();\n }(_)), _.exports;\n}\nvar h = x();\nconst m = /* @__PURE__ */ d(h), v = \"_rotate_12t9p_1\", S = \"_dash_12t9p_1\", b = {\n \"purpur-spinner\": \"_purpur-spinner_12t9p_2\",\n rotate: v,\n \"purpur-spinner--xxs\": \"_purpur-spinner--xxs_12t9p_6\",\n \"purpur-spinner--xs\": \"_purpur-spinner--xs_12t9p_10\",\n \"purpur-spinner--sm\": \"_purpur-spinner--sm_12t9p_14\",\n \"purpur-spinner--md\": \"_purpur-spinner--md_12t9p_18\",\n \"purpur-spinner--lg\": \"_purpur-spinner--lg_12t9p_22\",\n \"purpur-spinner__circle\": \"_purpur-spinner__circle_12t9p_26\",\n dash: S,\n \"purpur-spinner__circle--disabled\": \"_purpur-spinner__circle--disabled_12t9p_41\",\n \"purpur-spinner__circle--negative\": \"_purpur-spinner__circle--negative_12t9p_44\"\n}, a = m.bind(b), s = \"purpur-spinner\", f = {\n XXS: \"xxs\",\n XS: \"xs\",\n SM: \"sm\",\n MD: \"md\",\n LG: \"lg\"\n}, N = Object.values(f), j = ({\n disabled: e = !1,\n negative: i = !1,\n size: t = f.SM,\n ...u\n}) => /* @__PURE__ */ c(\"div\", { className: a(s, `${s}--${t}`), ...u, children: /* @__PURE__ */ c(\"svg\", { viewBox: \"0 0 50 50\", children: /* @__PURE__ */ c(\n \"circle\",\n {\n className: a(`${s}__circle`, {\n [`${s}__circle--disabled`]: e,\n [`${s}__circle--negative`]: i\n }),\n cx: \"25\",\n cy: \"25\",\n r: \"20\"\n }\n) }) });\nexport {\n f as SPINNER_SIZE,\n j as Spinner,\n N as spinnerSizes\n};\n//# sourceMappingURL=spinner.es.js.map\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames () {\n\t\tvar classes = '';\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (arg) {\n\t\t\t\tclasses = appendClass(classes, parseValue.call(this, arg));\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction parseValue (arg) {\n\t\tif (typeof arg === 'string' || typeof arg === 'number') {\n\t\t\treturn this && this[arg] || arg;\n\t\t}\n\n\t\tif (typeof arg !== 'object') {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (Array.isArray(arg)) {\n\t\t\treturn classNames.apply(this, arg);\n\t\t}\n\n\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\treturn arg.toString();\n\t\t}\n\n\t\tvar classes = '';\n\n\t\tfor (var key in arg) {\n\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\tclasses = appendClass(classes, this && this[key] || key);\n\t\t\t}\n\t\t}\n\n\t\treturn classes;\n\t}\n\n\tfunction appendClass (value, newClass) {\n\t\tif (!newClass) {\n\t\t\treturn value;\n\t\t}\n\t\n\t\tif (value) {\n\t\t\treturn value + ' ' + newClass;\n\t\t}\n\t\n\t\treturn value + newClass;\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React, { type ButtonHTMLAttributes, forwardRef, type MouseEvent } from \"react\";\nimport { type ActionProps, SIZE, VARIANT } from \"@purpurds/action\";\nimport type { BaseProps } from \"@purpurds/common-types\";\nimport { Spinner } from \"@purpurds/spinner\";\nimport c from \"classnames/bind\";\n\nimport styles from \"./button.module.scss\";\n\nexport const BUTTON_VARIANT = {\n ...VARIANT,\n DESTRUCTIVE: \"destructive\",\n TERTIARY_PURPLE: \"tertiary-purple\",\n TEXT: \"text\",\n} as const;\n\nexport const buttonVariants = Object.values(BUTTON_VARIANT);\nexport type ButtonVariant = (typeof BUTTON_VARIANT)[keyof typeof BUTTON_VARIANT];\n\nconst cx = c.bind(styles);\nconst rootClassName = \"purpur-button\";\n\ntype ButtonType = Pick<ButtonHTMLAttributes<HTMLButtonElement>, \"type\">[\"type\"];\nexport const BUTTON_TYPES: ButtonType[] = [\"button\", \"submit\", \"reset\"] as const;\n\nexport type ButtonProps = ActionProps<ButtonVariant> & BaseProps<\"button\"> & { loading?: boolean };\n\nexport const Button = forwardRef<\n HTMLButtonElement,\n Omit<ButtonProps, \"type\"> & { type?: ButtonType }\n>(\n (\n {\n children,\n className,\n disabled = false,\n fullWidth = false,\n iconOnly,\n loading = false,\n negative = false,\n onClick,\n size = \"md\",\n variant,\n type = \"button\",\n ...props\n },\n ref\n ) => {\n if (iconOnly && variant === \"destructive\") {\n return null;\n }\n const classes = cx(\n [\n rootClassName,\n `${rootClassName}--${negative ? `${variant}-negative` : variant}`,\n `${rootClassName}--${size}`,\n ],\n {\n [`${rootClassName}--icon-only`]: iconOnly,\n [`${rootClassName}--negative`]: negative,\n [`${rootClassName}--full-width`]: fullWidth,\n [`${rootClassName}--disabled`]: disabled || loading,\n },\n className\n );\n\n const handleClick = (e: MouseEvent<HTMLButtonElement>) => {\n if (disabled || loading) {\n e.preventDefault();\n } else if (onClick) {\n onClick(e);\n }\n };\n\n const _disabled = Boolean(props[\"aria-disabled\"]) || disabled || loading;\n\n return (\n <button\n className={classes}\n type={type}\n ref={ref}\n aria-disabled={_disabled}\n onClick={handleClick}\n {...props}\n >\n {loading && (\n <Spinner\n size={size === SIZE.LG ? \"xs\" : \"xxs\"}\n negative={negative}\n disabled={_disabled}\n />\n )}{\" \"}\n {children}\n </button>\n );\n }\n);\n\nButton.displayName = \"Button\";\n"],"names":["s","e","d","_","l","x","t","r","n","p","o","u","h","m","v","S","b","a","f","j","c","hasOwn","classNames","classes","i","arg","appendClass","parseValue","key","value","newClass","module","BUTTON_VARIANT","VARIANT","buttonVariants","cx","styles","rootClassName","BUTTON_TYPES","Button","forwardRef","children","className","disabled","fullWidth","iconOnly","loading","negative","onClick","size","variant","type","props","ref","handleClick","_disabled","jsxs","jsx","Spinner","SIZE"],"mappings":"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","x_google_ignoreList":[2]}
|
package/dist/styles.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
._purpur-button_w455q_1{align-items:center;border-radius:var(--purpur-border-radius-full);border-width:0;cursor:pointer;display:inline-flex;font-size:var(--purpur-typography-scale-100);font-family:var(--purpur-typography-family-default);font-weight:var(--purpur-typography-weight-medium);gap:var(--purpur-spacing-100);justify-content:center;line-height:var(--purpur-spacing-300);outline:0;position:relative;text-decoration:none;transition:all var(--purpur-motion-duration-100) ease;width:auto}._purpur-button_w455q_1:focus:before{border-radius:var(--purpur-border-radius-full);box-shadow:0 0 0 var(--purpur-border-width-sm) var(--purpur-color-border-interactive-focus);content:"";display:block;inset:calc(var(--purpur-spacing-25) * -1);position:absolute}._purpur-button_w455q_1:focus:not(:focus-visible):before{box-shadow:none}._purpur-button_w455q_1 svg{display:block}._purpur-button--xs_w455q_33{padding:var(--purpur-spacing-50) var(--purpur-spacing-250)}._purpur-button--xs_w455q_33._purpur-button--icon-only_w455q_36{padding:var(--purpur-spacing-100)}._purpur-button--sm_w455q_39{padding:var(--purpur-spacing-100) var(--purpur-spacing-250)}._purpur-button--sm_w455q_39._purpur-button--icon-only_w455q_36{padding:var(--purpur-spacing-100)}._purpur-button--md_w455q_45{padding:var(--purpur-spacing-150) var(--purpur-spacing-300)}._purpur-button--md_w455q_45._purpur-button--icon-only_w455q_36{padding:var(--purpur-spacing-150)}._purpur-button--lg_w455q_51{padding:var(--purpur-spacing-200) var(--purpur-spacing-400)}._purpur-button--lg_w455q_51._purpur-button--icon-only_w455q_36{padding:var(--purpur-spacing-200)}._purpur-button--full-width_w455q_57{width:100%}._purpur-button--primary_w455q_60{background-color:var(--purpur-color-background-interactive-primary);color:var(--purpur-color-text-interactive-on-primary)}._purpur-button--primary_w455q_60:hover:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-primary-hover)}._purpur-button--primary_w455q_60:active:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-primary-active)}._purpur-button--primary-negative_w455q_70{background-color:var(--purpur-color-background-interactive-primary-negative);color:var(--purpur-color-text-interactive-on-primary-negative)}._purpur-button--primary-negative_w455q_70:hover:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-primary-negative-hover);border-color:var(--purpur-color-background-interactive-primary-negative-hover)}._purpur-button--primary-negative_w455q_70:active:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-primary-negative-active);border-color:var(--purpur-color-background-interactive-primary-negative-active)}._purpur-button--secondary_w455q_82{background-color:var(--purpur-color-background-interactive-transparent);box-shadow:inset 0 0 0 var(--purpur-border-width-xs) var(--purpur-color-border-interactive-primary);color:var(--purpur-color-text-interactive-primary)}._purpur-button--secondary_w455q_82:hover:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-transparent-hover)}._purpur-button--secondary_w455q_82:active:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-transparent-active)}._purpur-button--secondary-negative_w455q_93{background-color:var(--purpur-color-background-interactive-transparent);box-shadow:inset 0 0 0 var(--purpur-border-width-xs) var(--purpur-color-border-interactive-primary-negative);color:var(--purpur-color-text-interactive-primary-negative)}._purpur-button--secondary-negative_w455q_93:hover:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-transparent-negative-hover)}._purpur-button--secondary-negative_w455q_93:active:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-transparent-negative-active)}._purpur-button--expressive_w455q_104{background-color:var(--purpur-color-background-interactive-expressive);color:var(--purpur-color-text-interactive-on-expressive)}._purpur-button--expressive_w455q_104:hover:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-expressive-hover)}._purpur-button--expressive_w455q_104:active:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-expressive-active)}._purpur-button--expressive-negative_w455q_114{background-color:var(--purpur-color-background-interactive-expressive-negative);color:var(--purpur-color-text-interactive-on-expressive-negative)}._purpur-button--expressive-negative_w455q_114:hover:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-expressive-negative-hover);color:var(--purpur-color-text-interactive-on-expressive-negative-hover)}._purpur-button--expressive-negative_w455q_114:active:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-expressive-negative-active);color:var(--purpur-color-text-interactive-on-expressive-negative-active)}._purpur-button--negative_w455q_126._purpur-button--disabled_w455q_64{background-color:var(--purpur-color-background-interactive-disabled-negative);color:var(--purpur-color-text-weak-negative)}._purpur-button--secondary_w455q_82._purpur-button--disabled_w455q_64,._purpur-button--secondary-negative_w455q_93._purpur-button--disabled_w455q_64{box-shadow:none}._purpur-button--destructive_w455q_133{background-color:var(--purpur-color-background-interactive-destructive);color:var(--purpur-color-text-interactive-on-destructive)}._purpur-button--destructive_w455q_133:hover:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-destructive-hover)}._purpur-button--destructive_w455q_133:active:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-destructive-active)}._purpur-button--destructive-negative_w455q_143{background-color:var(--purpur-color-background-interactive-destructive);color:var(--purpur-color-text-interactive-on-destructive)}._purpur-button--destructive-negative_w455q_143:hover:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-destructive-hover)}._purpur-button--destructive-negative_w455q_143:active:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-destructive-active)}._purpur-button--tertiary-purple_w455q_153{background-color:var(--purpur-color-background-interactive-transparent);color:var(--purpur-color-text-interactive-primary)}._purpur-button--tertiary-purple_w455q_153._purpur-button--disabled_w455q_64{background-color:var(--purpur-color-background-interactive-transparent)}._purpur-button--tertiary-purple_w455q_153:hover:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-transparent-hover)}._purpur-button--tertiary-purple_w455q_153:active:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-transparent-active)}._purpur-button--tertiary-purple-negative_w455q_166{background-color:var(--purpur-color-background-interactive-transparent);color:var(--purpur-color-text-interactive-primary-negative)}._purpur-button--tertiary-purple-negative_w455q_166._purpur-button--disabled_w455q_64{background-color:var(--purpur-color-background-interactive-transparent)}._purpur-button--tertiary-purple-negative_w455q_166:hover:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-transparent-negative-hover);color:var(--purpur-color-text-interactive-primary-negative-hover)}._purpur-button--tertiary-purple-negative_w455q_166:active:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-transparent-negative-active);color:var(--purpur-color-text-interactive-primary-negative-active)}._purpur-button--text-negative_w455q_181{border-radius:0;padding-left:0;padding-right:0}._purpur-button--text-negative_w455q_181:focus-visible:before{border-radius:0}._purpur-button--text-negative_w455q_181{background-color:var(--purpur-color-background-interactive-transparent);color:var(--purpur-color-text-interactive-primary-negative)}._purpur-button--text-negative_w455q_181._purpur-button--disabled_w455q_64{background-color:var(--purpur-color-background-interactive-transparent)}._purpur-button--text-negative_w455q_181:hover:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-transparent-negative-hover);color:var(--purpur-color-text-interactive-primary-negative-hover)}._purpur-button--text-negative_w455q_181:active:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-transparent-negative-active);color:var(--purpur-color-text-interactive-primary-negative-active)}._purpur-button--text_w455q_181{border-radius:0;padding-left:0;padding-right:0}._purpur-button--text_w455q_181:focus-visible:before{border-radius:0}._purpur-button--text_w455q_181{background-color:var(--purpur-color-background-interactive-transparent);color:var(--purpur-color-text-interactive-primary)}._purpur-button--text_w455q_181._purpur-button--disabled_w455q_64{background-color:var(--purpur-color-background-interactive-transparent);color:var(--purpur-color-text-weak)}._purpur-button--text_w455q_181:hover:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-transparent-hover)}._purpur-button--text_w455q_181:active:not(._purpur-button--disabled_w455q_64){background-color:var(--purpur-color-background-interactive-transparent-active)}._purpur-button--disabled_w455q_64{background-color:var(--purpur-color-background-interactive-disabled);color:var(--purpur-color-text-weak);cursor:not-allowed}
|
|
1
|
+
._purpur-button_1goi7_1{align-items:center;border-radius:var(--purpur-border-radius-full);border-width:0;cursor:pointer;display:inline-flex;font-size:var(--purpur-typography-scale-100);font-family:var(--purpur-typography-family-default);font-weight:var(--purpur-typography-weight-medium);gap:var(--purpur-spacing-100);justify-content:center;line-height:var(--purpur-spacing-300);outline:0;position:relative;text-decoration:none;transition:all var(--purpur-motion-duration-100) ease;width:auto}._purpur-button_1goi7_1:focus:before{border-radius:var(--purpur-border-radius-full);box-shadow:0 0 0 var(--purpur-border-width-sm) var(--purpur-color-border-interactive-focus);content:"";display:block;inset:calc(var(--purpur-spacing-25) * -1);position:absolute}._purpur-button_1goi7_1:focus:not(:focus-visible):before{box-shadow:none}._purpur-button_1goi7_1 svg{display:block}._purpur-button--xs_1goi7_33{padding:var(--purpur-spacing-50) var(--purpur-spacing-250)}._purpur-button--xs_1goi7_33._purpur-button--icon-only_1goi7_36{padding:var(--purpur-spacing-100)}._purpur-button--sm_1goi7_39{padding:var(--purpur-spacing-100) var(--purpur-spacing-250)}._purpur-button--sm_1goi7_39._purpur-button--icon-only_1goi7_36{padding:var(--purpur-spacing-100)}._purpur-button--md_1goi7_45{padding:var(--purpur-spacing-150) var(--purpur-spacing-300)}._purpur-button--md_1goi7_45._purpur-button--icon-only_1goi7_36{padding:var(--purpur-spacing-150)}._purpur-button--lg_1goi7_51{padding:var(--purpur-spacing-200) var(--purpur-spacing-400)}._purpur-button--lg_1goi7_51._purpur-button--icon-only_1goi7_36{padding:var(--purpur-spacing-200)}._purpur-button--full-width_1goi7_57{width:100%}._purpur-button--primary_1goi7_60{background-color:var(--purpur-color-background-interactive-primary);color:var(--purpur-color-text-interactive-on-primary)}._purpur-button--primary_1goi7_60:hover:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-primary-hover)}._purpur-button--primary_1goi7_60:active:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-primary-active)}._purpur-button--primary-negative_1goi7_70{background-color:var(--purpur-color-background-interactive-primary-negative);color:var(--purpur-color-text-interactive-on-primary-negative)}._purpur-button--primary-negative_1goi7_70:hover:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-primary-hover-negative);border-color:var(--purpur-color-background-interactive-primary-hover-negative)}._purpur-button--primary-negative_1goi7_70:active:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-primary-active-negative);border-color:var(--purpur-color-background-interactive-primary-active-negative)}._purpur-button--secondary_1goi7_82{background-color:transparent;box-shadow:inset 0 0 0 var(--purpur-border-width-xs) var(--purpur-color-border-interactive-primary);color:var(--purpur-color-text-interactive-primary)}._purpur-button--secondary_1goi7_82:hover:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-transparent-hover)}._purpur-button--secondary_1goi7_82:active:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-transparent-active)}._purpur-button--secondary-negative_1goi7_93{background-color:transparent;box-shadow:inset 0 0 0 var(--purpur-border-width-xs) var(--purpur-color-border-interactive-primary-negative);color:var(--purpur-color-text-interactive-primary-negative)}._purpur-button--secondary-negative_1goi7_93:hover:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-transparent-hover-negative)}._purpur-button--secondary-negative_1goi7_93:active:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-transparent-active-negative)}._purpur-button--expressive_1goi7_104{background-color:var(--purpur-color-background-interactive-expressive);color:var(--purpur-color-text-interactive-on-expressive)}._purpur-button--expressive_1goi7_104:hover:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-expressive-hover)}._purpur-button--expressive_1goi7_104:active:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-expressive-active)}._purpur-button--expressive-negative_1goi7_114{background-color:var(--purpur-color-background-interactive-expressive-negative);color:var(--purpur-color-text-interactive-on-expressive-negative)}._purpur-button--expressive-negative_1goi7_114:hover:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-expressive-hover-negative);color:var(--purpur-color-text-interactive-on-expressive-hover-negative)}._purpur-button--expressive-negative_1goi7_114:active:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-expressive-active-negative);color:var(--purpur-color-text-interactive-on-expressive-active-negative)}._purpur-button--negative_1goi7_126._purpur-button--disabled_1goi7_64{background-color:var(--purpur-color-background-interactive-disabled-negative);color:var(--purpur-color-text-weak-negative)}._purpur-button--secondary_1goi7_82._purpur-button--disabled_1goi7_64,._purpur-button--secondary-negative_1goi7_93._purpur-button--disabled_1goi7_64{box-shadow:none}._purpur-button--destructive_1goi7_133{background-color:var(--purpur-color-background-interactive-destructive);color:var(--purpur-color-text-interactive-on-destructive)}._purpur-button--destructive_1goi7_133:hover:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-destructive-hover)}._purpur-button--destructive_1goi7_133:active:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-destructive-active)}._purpur-button--destructive-negative_1goi7_143{background-color:var(--purpur-color-background-interactive-destructive);color:var(--purpur-color-text-interactive-on-destructive)}._purpur-button--destructive-negative_1goi7_143:hover:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-destructive-hover)}._purpur-button--destructive-negative_1goi7_143:active:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-destructive-active)}._purpur-button--tertiary-purple_1goi7_153{background-color:transparent;color:var(--purpur-color-text-interactive-primary)}._purpur-button--tertiary-purple_1goi7_153._purpur-button--disabled_1goi7_64{background-color:transparent}._purpur-button--tertiary-purple_1goi7_153:hover:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-transparent-hover)}._purpur-button--tertiary-purple_1goi7_153:active:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-transparent-active)}._purpur-button--tertiary-purple-negative_1goi7_166{background-color:transparent;color:var(--purpur-color-text-interactive-primary-negative)}._purpur-button--tertiary-purple-negative_1goi7_166._purpur-button--disabled_1goi7_64{background-color:transparent}._purpur-button--tertiary-purple-negative_1goi7_166:hover:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-transparent-hover-negative);color:var(--purpur-color-text-interactive-primary-hover-negative)}._purpur-button--tertiary-purple-negative_1goi7_166:active:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-transparent-active-negative);color:var(--purpur-color-text-interactive-primary-active-negative)}._purpur-button--text-negative_1goi7_181{border-radius:0;padding-left:0;padding-right:0}._purpur-button--text-negative_1goi7_181:focus-visible:before{border-radius:0}._purpur-button--text-negative_1goi7_181{background-color:transparent;color:var(--purpur-color-text-interactive-primary-negative)}._purpur-button--text-negative_1goi7_181._purpur-button--disabled_1goi7_64{background-color:transparent}._purpur-button--text-negative_1goi7_181:hover:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-transparent-hover-negative);color:var(--purpur-color-text-interactive-primary-hover-negative)}._purpur-button--text-negative_1goi7_181:active:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-transparent-active-negative);color:var(--purpur-color-text-interactive-primary-active-negative)}._purpur-button--text_1goi7_181{border-radius:0;padding-left:0;padding-right:0}._purpur-button--text_1goi7_181:focus-visible:before{border-radius:0}._purpur-button--text_1goi7_181{background-color:transparent;color:var(--purpur-color-text-interactive-primary)}._purpur-button--text_1goi7_181._purpur-button--disabled_1goi7_64{background-color:transparent;color:var(--purpur-color-text-weak)}._purpur-button--text_1goi7_181:hover:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-transparent-hover)}._purpur-button--text_1goi7_181:active:not(._purpur-button--disabled_1goi7_64){background-color:var(--purpur-color-background-interactive-transparent-active)}._purpur-button--disabled_1goi7_64{background-color:var(--purpur-color-background-interactive-disabled);color:var(--purpur-color-text-weak);cursor:not-allowed}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@purpurds/button",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "8.0.0",
|
|
4
4
|
"license": "AGPL-3.0-only",
|
|
5
5
|
"main": "./dist/button.cjs.js",
|
|
6
6
|
"types": "./dist/button.d.ts",
|
|
@@ -16,11 +16,11 @@
|
|
|
16
16
|
"source": "src/button.tsx",
|
|
17
17
|
"dependencies": {
|
|
18
18
|
"classnames": "~2.5.0",
|
|
19
|
-
"@purpurds/
|
|
20
|
-
"@purpurds/
|
|
21
|
-
"@purpurds/
|
|
22
|
-
"@purpurds/
|
|
23
|
-
"@purpurds/tokens": "
|
|
19
|
+
"@purpurds/icon": "8.0.0",
|
|
20
|
+
"@purpurds/action": "8.0.0",
|
|
21
|
+
"@purpurds/common-types": "8.0.0",
|
|
22
|
+
"@purpurds/spinner": "8.0.0",
|
|
23
|
+
"@purpurds/tokens": "8.0.0"
|
|
24
24
|
},
|
|
25
25
|
"devDependencies": {
|
|
26
26
|
"@storybook/react-vite": "^9.0.18",
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"vite": "^6.2.1",
|
|
42
42
|
"vitest": "^3.1.2",
|
|
43
43
|
"@purpurds/component-rig": "1.0.0",
|
|
44
|
-
"@purpurds/icon": "
|
|
44
|
+
"@purpurds/icon": "8.0.0"
|
|
45
45
|
},
|
|
46
46
|
"peerDependencies": {
|
|
47
47
|
"@types/react": "^18 || ^19",
|
package/src/button.module.scss
CHANGED
|
@@ -4,21 +4,21 @@ $root: ".purpur-button";
|
|
|
4
4
|
|
|
5
5
|
@mixin purple-negative {
|
|
6
6
|
& {
|
|
7
|
-
background-color:
|
|
7
|
+
background-color: transparent;
|
|
8
8
|
color: var(--purpur-color-text-interactive-primary-negative);
|
|
9
9
|
|
|
10
10
|
&#{$root}--disabled {
|
|
11
|
-
background-color:
|
|
11
|
+
background-color: transparent;
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
&:hover:not(#{$root}--disabled) {
|
|
15
|
-
background-color: var(--purpur-color-background-interactive-transparent-negative
|
|
16
|
-
color: var(--purpur-color-text-interactive-primary-negative
|
|
15
|
+
background-color: var(--purpur-color-background-interactive-transparent-hover-negative);
|
|
16
|
+
color: var(--purpur-color-text-interactive-primary-hover-negative);
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
&:active:not(#{$root}--disabled) {
|
|
20
|
-
background-color: var(--purpur-color-background-interactive-transparent-negative
|
|
21
|
-
color: var(--purpur-color-text-interactive-primary-negative
|
|
20
|
+
background-color: var(--purpur-color-background-interactive-transparent-active-negative);
|
|
21
|
+
color: var(--purpur-color-text-interactive-primary-active-negative);
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
24
|
}
|
|
@@ -83,11 +83,11 @@ $root: ".purpur-button";
|
|
|
83
83
|
}
|
|
84
84
|
|
|
85
85
|
&--tertiary-purple {
|
|
86
|
-
background-color:
|
|
86
|
+
background-color: transparent;
|
|
87
87
|
color: var(--purpur-color-text-interactive-primary);
|
|
88
88
|
|
|
89
89
|
&#{$root}--disabled {
|
|
90
|
-
background-color:
|
|
90
|
+
background-color: transparent;
|
|
91
91
|
}
|
|
92
92
|
|
|
93
93
|
&:hover:not(#{$root}--disabled) {
|
|
@@ -120,12 +120,12 @@ $root: ".purpur-button";
|
|
|
120
120
|
}
|
|
121
121
|
|
|
122
122
|
& {
|
|
123
|
-
background-color:
|
|
123
|
+
background-color: transparent;
|
|
124
124
|
color: var(--purpur-color-text-interactive-primary);
|
|
125
125
|
}
|
|
126
126
|
|
|
127
127
|
&#{$root}--disabled {
|
|
128
|
-
background-color:
|
|
128
|
+
background-color: transparent;
|
|
129
129
|
color: var(--purpur-color-text-weak);
|
|
130
130
|
}
|
|
131
131
|
|
package/src/button.stories.tsx
CHANGED
|
@@ -57,29 +57,17 @@ export default meta;
|
|
|
57
57
|
|
|
58
58
|
type Story = StoryObj<typeof Button>;
|
|
59
59
|
|
|
60
|
-
const adaptiveBackground = (negative?: boolean) => ({
|
|
61
|
-
margin: "calc(var(--purpur-spacing-250) * -1)",
|
|
62
|
-
padding: "var(--purpur-spacing-250)",
|
|
63
|
-
background: negative ? "var(--purpur-color-purple-900)" : "transparent",
|
|
64
|
-
});
|
|
65
|
-
|
|
66
60
|
export const Showcase: Story = {
|
|
67
|
-
render: ({ children, ...args }) =>
|
|
68
|
-
<div style={adaptiveBackground(args.negative)}>
|
|
69
|
-
<Button {...args}>{children}</Button>
|
|
70
|
-
</div>
|
|
71
|
-
),
|
|
61
|
+
render: ({ children, ...args }) => <Button {...args}>{children}</Button>,
|
|
72
62
|
tags: ["visual:check"],
|
|
73
63
|
};
|
|
74
64
|
|
|
75
65
|
export const ButtonWithLeftIcon: Story = {
|
|
76
66
|
name: "Button with left icon",
|
|
77
67
|
render: ({ children, ...args }) => (
|
|
78
|
-
<
|
|
79
|
-
<
|
|
80
|
-
|
|
81
|
-
</Button>
|
|
82
|
-
</div>
|
|
68
|
+
<Button {...args}>
|
|
69
|
+
<IconPlus size="xs" /> {children}
|
|
70
|
+
</Button>
|
|
83
71
|
),
|
|
84
72
|
tags: ["visual:check"],
|
|
85
73
|
};
|
|
@@ -87,11 +75,9 @@ export const ButtonWithLeftIcon: Story = {
|
|
|
87
75
|
export const ButtonWithRightIcon: Story = {
|
|
88
76
|
name: "Button with right icon",
|
|
89
77
|
render: ({ children, ...args }) => (
|
|
90
|
-
<
|
|
91
|
-
<
|
|
92
|
-
|
|
93
|
-
</Button>
|
|
94
|
-
</div>
|
|
78
|
+
<Button {...args}>
|
|
79
|
+
{children} <IconPlus size="xs" />
|
|
80
|
+
</Button>
|
|
95
81
|
),
|
|
96
82
|
tags: ["visual:check"],
|
|
97
83
|
};
|
|
@@ -106,11 +92,9 @@ export const ButtonWithOnlyIcon: Story = {
|
|
|
106
92
|
["aria-label"]: "Button label",
|
|
107
93
|
},
|
|
108
94
|
render: ({ ...args }) => (
|
|
109
|
-
<
|
|
110
|
-
<
|
|
111
|
-
|
|
112
|
-
</Button>
|
|
113
|
-
</div>
|
|
95
|
+
<Button {...args}>
|
|
96
|
+
<IconPlus size="xs" />
|
|
97
|
+
</Button>
|
|
114
98
|
),
|
|
115
99
|
tags: ["visual:check"],
|
|
116
100
|
};
|