@elliemae/ds-button-v1 3.16.0 → 3.16.1-rc.10

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.
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
20
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -35,9 +39,9 @@ var import_react = require("react");
35
39
  var import_ds_classnames = require("@elliemae/ds-classnames");
36
40
  var import_ds_utilities = require("@elliemae/ds-utilities");
37
41
  var import_ds_props_helpers = require("@elliemae/ds-props-helpers");
38
- var import_constants = require("./constants");
39
- var import_propTypes = require("./propTypes");
40
- var import_defaultProps = require("./defaultProps");
42
+ var import_constants = require("./constants.js");
43
+ var import_propTypes = require("./propTypes.js");
44
+ var import_defaultProps = require("./defaultProps.js");
41
45
  const blockName = "button";
42
46
  const getContainer = (Element) => (0, import_ds_classnames.aggregatedClasses)(Element)(
43
47
  blockName,
@@ -88,7 +92,10 @@ const DSButton = ({
88
92
  className: (0, import_ds_utilities.cx)(intentClassName, className),
89
93
  classProps: {
90
94
  disabled,
95
+ // DON'T CHANGE FOR defaultProps
96
+ // using OR to keep ButtonGroup behavior at packages/ds-basic/src/ButtonGroup/DSButtonGroup
91
97
  buttonType: buttonType || import_constants.BUTTON_TYPE.PRIMARY,
98
+ // using or to keep ButtonGroup behavior at packages/ds-basic/src/ButtonGroup/DSButtonGroup
92
99
  size: size || import_constants.BUTTON_SIZE.M,
93
100
  fluidWidth,
94
101
  iconOnly: !labelText && (icon || leftIcon),
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/DSButton.tsx", "../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* eslint-disable max-lines */\n/* eslint-disable jest/valid-title */\nimport React, { useState, useMemo } from 'react';\nimport { aggregatedClasses, convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { cx, useDeprecateComponent } from '@elliemae/ds-utilities';\nimport { describe } from '@elliemae/ds-props-helpers';\nimport { BUTTON_TYPE, BUTTON_SIZE, BUTTON_VARIANT } from './constants';\nimport { btnPropTypes } from './propTypes';\nimport { defaultProps } from './defaultProps';\n\nconst blockName = 'button';\n\nconst getContainer = (Element) =>\n aggregatedClasses(Element)(\n blockName,\n null,\n ({ iconOnly, variant }) => ({\n 'icon-only': iconOnly,\n [variant]: variant,\n }),\n {\n propsToRemoveFromFinalElement: ['cx'],\n },\n );\n\ninterface ButtonPropsT {\n [x: string]: unknown;\n disabled?: boolean;\n fluidWidth?: boolean;\n innerRef?: unknown;\n buttonType?: (typeof BUTTON_TYPE)[keyof typeof BUTTON_TYPE];\n size?: (typeof BUTTON_SIZE)[keyof typeof BUTTON_SIZE];\n variant?: (typeof BUTTON_VARIANT)[keyof typeof BUTTON_VARIANT];\n labelText?: string;\n icon?: JSX.Element;\n leftIcon?: JSX.Element;\n tabIndex?: number;\n intent?: 'success' | 'danger' | 'warning' | 'info';\n containerProps?: { [x: string]: unknown };\n className?: string;\n as?: string | JSX.Element;\n type?: 'button' | 'text';\n onBlur?: React.FocusEventHandler<HTMLElement>;\n onClick?: (event: React.MouseEvent<HTMLElement> | React.KeyboardEvent<HTMLElement>) => void;\n onKeyPress?: React.KeyboardEventHandler<HTMLElement>;\n}\n\n// eslint-disable-next-line complexity\nconst DSButton = ({\n innerRef,\n disabled,\n buttonType,\n fluidWidth,\n size,\n labelText,\n icon,\n onBlur,\n onClick,\n onKeyPress,\n leftIcon,\n tabIndex,\n variant,\n intent,\n containerProps,\n className,\n as: Component,\n type,\n ...rest\n}: ButtonPropsT) => {\n useDeprecateComponent({ componentName: 'ds-button-v1', version: 'TBD Date: 2023 Q3' });\n\n const [pressed, setPressed] = useState(false);\n const Button = useMemo(() => getContainer(Component), [Component]);\n const intentBlockName = `${blockName}${intent ? `-${intent}` : ''}`;\n const { cssClassName: intentClassName } = convertPropToCssClassName(intentBlockName);\n return (\n <Button\n data-testid={(containerProps && containerProps['data-testid']) || 'button-wrapper'}\n {...rest}\n {...containerProps}\n aria-disabled={rest['aria-disabled'] !== undefined ? rest['aria-disabled'] : disabled}\n aria-label={rest['aria-label'] || labelText || 'button'}\n aria-pressed={pressed}\n className={cx(intentClassName, className)}\n classProps={{\n disabled,\n // DON'T CHANGE FOR defaultProps\n // using OR to keep ButtonGroup behavior at packages/ds-basic/src/ButtonGroup/DSButtonGroup\n buttonType: buttonType || BUTTON_TYPE.PRIMARY,\n // using or to keep ButtonGroup behavior at packages/ds-basic/src/ButtonGroup/DSButtonGroup\n size: size || BUTTON_SIZE.M,\n fluidWidth,\n iconOnly: !labelText && (icon || leftIcon),\n variant: disabled ? BUTTON_VARIANT.DISABLED : variant,\n }}\n disabled={disabled} // https://jira.elliemae.io/browse/PUI-1215\n innerRef={innerRef}\n onBlur={(e: React.FocusEvent<HTMLElement>) => {\n if (disabled) return;\n setPressed(false);\n if (onBlur) onBlur(e);\n }}\n onClick={(e: React.MouseEvent<HTMLElement>) => {\n if (disabled) return;\n setPressed(true);\n if (onClick) onClick(e);\n }}\n onKeyPress={(e: React.KeyboardEvent<HTMLElement>) => {\n if (disabled) return;\n e.preventDefault();\n if (e.key === 'Enter') {\n setPressed(true);\n if (onClick) onClick(e);\n }\n if (onKeyPress) onKeyPress(e);\n }}\n tabIndex={tabIndex}\n type={type}\n >\n {leftIcon}\n {labelText && (\n <span\n className={`label-wrapper ${icon || leftIcon ? 'with-icon' : 'no-icon'}`}\n data-testid=\"button-label\"\n role=\"presentation\"\n >\n <span>{labelText}</span>\n </span>\n )}\n {icon}\n </Button>\n );\n};\n\nDSButton.defaultProps = defaultProps;\nDSButton.propTypes = btnPropTypes;\nDSButton.displayName = 'DSButton';\n\nconst DSButtonWithSchema = describe(DSButton);\nDSButtonWithSchema.propTypes = btnPropTypes;\n\nexport { DSButton, DSButtonWithSchema };\nexport default DSButton;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;AD4EnB;AA1EJ,mBAAyC;AACzC,2BAA6D;AAC7D,0BAA0C;AAC1C,8BAAyB;AACzB,uBAAyD;AACzD,uBAA6B;AAC7B,0BAA6B;AAE7B,MAAM,YAAY;AAElB,MAAM,eAAe,CAAC,gBACpB,wCAAkB,OAAO;AAAA,EACvB;AAAA,EACA;AAAA,EACA,CAAC,EAAE,UAAU,QAAQ,OAAO;AAAA,IAC1B,aAAa;AAAA,IACb,CAAC,UAAU;AAAA,EACb;AAAA,EACA;AAAA,IACE,+BAA+B,CAAC,IAAI;AAAA,EACtC;AACF;AAyBF,MAAM,WAAW,CAAC;AAAA,EAChB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,IAAI;AAAA,EACJ;AAAA,KACG;AACL,MAAoB;AAClB,iDAAsB,EAAE,eAAe,gBAAgB,SAAS,oBAAoB,CAAC;AAErF,QAAM,CAAC,SAAS,UAAU,QAAI,uBAAS,KAAK;AAC5C,QAAM,aAAS,sBAAQ,MAAM,aAAa,SAAS,GAAG,CAAC,SAAS,CAAC;AACjE,QAAM,kBAAkB,GAAG,YAAY,SAAS,IAAI,WAAW;AAC/D,QAAM,EAAE,cAAc,gBAAgB,QAAI,gDAA0B,eAAe;AACnF,SACE;AAAA,IAAC;AAAA;AAAA,MACC,eAAc,kBAAkB,eAAe,kBAAmB;AAAA,MACjE,GAAG;AAAA,MACH,GAAG;AAAA,MACJ,iBAAe,KAAK,qBAAqB,SAAY,KAAK,mBAAmB;AAAA,MAC7E,cAAY,KAAK,iBAAiB,aAAa;AAAA,MAC/C,gBAAc;AAAA,MACd,eAAW,wBAAG,iBAAiB,SAAS;AAAA,MACxC,YAAY;AAAA,QACV;AAAA,QAGA,YAAY,cAAc,6BAAY;AAAA,QAEtC,MAAM,QAAQ,6BAAY;AAAA,QAC1B;AAAA,QACA,UAAU,CAAC,cAAc,QAAQ;AAAA,QACjC,SAAS,WAAW,gCAAe,WAAW;AAAA,MAChD;AAAA,MACA;AAAA,MACA;AAAA,MACA,QAAQ,CAAC,MAAqC;AAC5C,YAAI;AAAU;AACd,mBAAW,KAAK;AAChB,YAAI;AAAQ,iBAAO,CAAC;AAAA,MACtB;AAAA,MACA,SAAS,CAAC,MAAqC;AAC7C,YAAI;AAAU;AACd,mBAAW,IAAI;AACf,YAAI;AAAS,kBAAQ,CAAC;AAAA,MACxB;AAAA,MACA,YAAY,CAAC,MAAwC;AACnD,YAAI;AAAU;AACd,UAAE,eAAe;AACjB,YAAI,EAAE,QAAQ,SAAS;AACrB,qBAAW,IAAI;AACf,cAAI;AAAS,oBAAQ,CAAC;AAAA,QACxB;AACA,YAAI;AAAY,qBAAW,CAAC;AAAA,MAC9B;AAAA,MACA;AAAA,MACA;AAAA,MAEC;AAAA;AAAA,QACA,aACC;AAAA,UAAC;AAAA;AAAA,YACC,WAAW,iBAAiB,QAAQ,WAAW,cAAc;AAAA,YAC7D,eAAY;AAAA,YACZ,MAAK;AAAA,YAEL,sDAAC,UAAM,qBAAU;AAAA;AAAA,QACnB;AAAA,QAED;AAAA;AAAA;AAAA,EACH;AAEJ;AAEA,SAAS,eAAe;AACxB,SAAS,YAAY;AACrB,SAAS,cAAc;AAEvB,MAAM,yBAAqB,kCAAS,QAAQ;AAC5C,mBAAmB,YAAY;AAG/B,IAAO,mBAAQ;",
4
+ "sourcesContent": ["/* eslint-disable max-lines */\n/* eslint-disable jest/valid-title */\nimport React, { useState, useMemo } from 'react';\nimport { aggregatedClasses, convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { cx, useDeprecateComponent } from '@elliemae/ds-utilities';\nimport { describe } from '@elliemae/ds-props-helpers';\nimport { BUTTON_TYPE, BUTTON_SIZE, BUTTON_VARIANT } from './constants.js';\nimport { btnPropTypes } from './propTypes.js';\nimport { defaultProps } from './defaultProps.js';\n\nconst blockName = 'button';\n\nconst getContainer = (Element) =>\n aggregatedClasses(Element)(\n blockName,\n null,\n ({ iconOnly, variant }) => ({\n 'icon-only': iconOnly,\n [variant]: variant,\n }),\n {\n propsToRemoveFromFinalElement: ['cx'],\n },\n );\n\ninterface ButtonPropsT {\n [x: string]: unknown;\n disabled?: boolean;\n fluidWidth?: boolean;\n innerRef?: unknown;\n buttonType?: (typeof BUTTON_TYPE)[keyof typeof BUTTON_TYPE];\n size?: (typeof BUTTON_SIZE)[keyof typeof BUTTON_SIZE];\n variant?: (typeof BUTTON_VARIANT)[keyof typeof BUTTON_VARIANT];\n labelText?: string;\n icon?: JSX.Element;\n leftIcon?: JSX.Element;\n tabIndex?: number;\n intent?: 'success' | 'danger' | 'warning' | 'info';\n containerProps?: { [x: string]: unknown };\n className?: string;\n as?: string | JSX.Element;\n type?: 'button' | 'text';\n onBlur?: React.FocusEventHandler<HTMLElement>;\n onClick?: (event: React.MouseEvent<HTMLElement> | React.KeyboardEvent<HTMLElement>) => void;\n onKeyPress?: React.KeyboardEventHandler<HTMLElement>;\n}\n\n// eslint-disable-next-line complexity\nconst DSButton = ({\n innerRef,\n disabled,\n buttonType,\n fluidWidth,\n size,\n labelText,\n icon,\n onBlur,\n onClick,\n onKeyPress,\n leftIcon,\n tabIndex,\n variant,\n intent,\n containerProps,\n className,\n as: Component,\n type,\n ...rest\n}: ButtonPropsT) => {\n useDeprecateComponent({ componentName: 'ds-button-v1', version: 'TBD Date: 2023 Q3' });\n\n const [pressed, setPressed] = useState(false);\n const Button = useMemo(() => getContainer(Component), [Component]);\n const intentBlockName = `${blockName}${intent ? `-${intent}` : ''}`;\n const { cssClassName: intentClassName } = convertPropToCssClassName(intentBlockName);\n return (\n <Button\n data-testid={(containerProps && containerProps['data-testid']) || 'button-wrapper'}\n {...rest}\n {...containerProps}\n aria-disabled={rest['aria-disabled'] !== undefined ? rest['aria-disabled'] : disabled}\n aria-label={rest['aria-label'] || labelText || 'button'}\n aria-pressed={pressed}\n className={cx(intentClassName, className)}\n classProps={{\n disabled,\n // DON'T CHANGE FOR defaultProps\n // using OR to keep ButtonGroup behavior at packages/ds-basic/src/ButtonGroup/DSButtonGroup\n buttonType: buttonType || BUTTON_TYPE.PRIMARY,\n // using or to keep ButtonGroup behavior at packages/ds-basic/src/ButtonGroup/DSButtonGroup\n size: size || BUTTON_SIZE.M,\n fluidWidth,\n iconOnly: !labelText && (icon || leftIcon),\n variant: disabled ? BUTTON_VARIANT.DISABLED : variant,\n }}\n disabled={disabled} // https://jira.elliemae.io/browse/PUI-1215\n innerRef={innerRef}\n onBlur={(e: React.FocusEvent<HTMLElement>) => {\n if (disabled) return;\n setPressed(false);\n if (onBlur) onBlur(e);\n }}\n onClick={(e: React.MouseEvent<HTMLElement>) => {\n if (disabled) return;\n setPressed(true);\n if (onClick) onClick(e);\n }}\n onKeyPress={(e: React.KeyboardEvent<HTMLElement>) => {\n if (disabled) return;\n e.preventDefault();\n if (e.key === 'Enter') {\n setPressed(true);\n if (onClick) onClick(e);\n }\n if (onKeyPress) onKeyPress(e);\n }}\n tabIndex={tabIndex}\n type={type}\n >\n {leftIcon}\n {labelText && (\n <span\n className={`label-wrapper ${icon || leftIcon ? 'with-icon' : 'no-icon'}`}\n data-testid=\"button-label\"\n role=\"presentation\"\n >\n <span>{labelText}</span>\n </span>\n )}\n {icon}\n </Button>\n );\n};\n\nDSButton.defaultProps = defaultProps;\nDSButton.propTypes = btnPropTypes;\nDSButton.displayName = 'DSButton';\n\nconst DSButtonWithSchema = describe(DSButton);\nDSButtonWithSchema.propTypes = btnPropTypes;\n\nexport { DSButton, DSButtonWithSchema };\nexport default DSButton;\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;AD4EnB;AA1EJ,mBAAyC;AACzC,2BAA6D;AAC7D,0BAA0C;AAC1C,8BAAyB;AACzB,uBAAyD;AACzD,uBAA6B;AAC7B,0BAA6B;AAE7B,MAAM,YAAY;AAElB,MAAM,eAAe,CAAC,gBACpB,wCAAkB,OAAO;AAAA,EACvB;AAAA,EACA;AAAA,EACA,CAAC,EAAE,UAAU,QAAQ,OAAO;AAAA,IAC1B,aAAa;AAAA,IACb,CAAC,OAAO,GAAG;AAAA,EACb;AAAA,EACA;AAAA,IACE,+BAA+B,CAAC,IAAI;AAAA,EACtC;AACF;AAyBF,MAAM,WAAW,CAAC;AAAA,EAChB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,IAAI;AAAA,EACJ;AAAA,EACA,GAAG;AACL,MAAoB;AAClB,iDAAsB,EAAE,eAAe,gBAAgB,SAAS,oBAAoB,CAAC;AAErF,QAAM,CAAC,SAAS,UAAU,QAAI,uBAAS,KAAK;AAC5C,QAAM,aAAS,sBAAQ,MAAM,aAAa,SAAS,GAAG,CAAC,SAAS,CAAC;AACjE,QAAM,kBAAkB,GAAG,YAAY,SAAS,IAAI,WAAW;AAC/D,QAAM,EAAE,cAAc,gBAAgB,QAAI,gDAA0B,eAAe;AACnF,SACE;AAAA,IAAC;AAAA;AAAA,MACC,eAAc,kBAAkB,eAAe,aAAa,KAAM;AAAA,MACjE,GAAG;AAAA,MACH,GAAG;AAAA,MACJ,iBAAe,KAAK,eAAe,MAAM,SAAY,KAAK,eAAe,IAAI;AAAA,MAC7E,cAAY,KAAK,YAAY,KAAK,aAAa;AAAA,MAC/C,gBAAc;AAAA,MACd,eAAW,wBAAG,iBAAiB,SAAS;AAAA,MACxC,YAAY;AAAA,QACV;AAAA;AAAA;AAAA,QAGA,YAAY,cAAc,6BAAY;AAAA;AAAA,QAEtC,MAAM,QAAQ,6BAAY;AAAA,QAC1B;AAAA,QACA,UAAU,CAAC,cAAc,QAAQ;AAAA,QACjC,SAAS,WAAW,gCAAe,WAAW;AAAA,MAChD;AAAA,MACA;AAAA,MACA;AAAA,MACA,QAAQ,CAAC,MAAqC;AAC5C,YAAI;AAAU;AACd,mBAAW,KAAK;AAChB,YAAI;AAAQ,iBAAO,CAAC;AAAA,MACtB;AAAA,MACA,SAAS,CAAC,MAAqC;AAC7C,YAAI;AAAU;AACd,mBAAW,IAAI;AACf,YAAI;AAAS,kBAAQ,CAAC;AAAA,MACxB;AAAA,MACA,YAAY,CAAC,MAAwC;AACnD,YAAI;AAAU;AACd,UAAE,eAAe;AACjB,YAAI,EAAE,QAAQ,SAAS;AACrB,qBAAW,IAAI;AACf,cAAI;AAAS,oBAAQ,CAAC;AAAA,QACxB;AACA,YAAI;AAAY,qBAAW,CAAC;AAAA,MAC9B;AAAA,MACA;AAAA,MACA;AAAA,MAEC;AAAA;AAAA,QACA,aACC;AAAA,UAAC;AAAA;AAAA,YACC,WAAW,iBAAiB,QAAQ,WAAW,cAAc;AAAA,YAC7D,eAAY;AAAA,YACZ,MAAK;AAAA,YAEL,sDAAC,UAAM,qBAAU;AAAA;AAAA,QACnB;AAAA,QAED;AAAA;AAAA;AAAA,EACH;AAEJ;AAEA,SAAS,eAAe;AACxB,SAAS,YAAY;AACrB,SAAS,cAAc;AAEvB,MAAM,yBAAqB,kCAAS,QAAQ;AAC5C,mBAAmB,YAAY;AAG/B,IAAO,mBAAQ;",
6
6
  "names": []
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
20
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -2,6 +2,6 @@
2
2
  "version": 3,
3
3
  "sources": ["../../src/constants.tsx", "../../../../scripts/build/transpile/react-shim.js"],
4
4
  "sourcesContent": ["export const BUTTON_TYPE = {\n PRIMARY: 'primary' as const,\n SECONDARY: 'secondary' as const,\n TEXT: 'text' as const,\n LINK: 'link' as const,\n};\n\nexport const buttonTypes = ['primary' as const, 'secondary' as const, 'text' as const, 'link' as const] as const;\n\nexport const BUTTON_SIZE = {\n S: 's' as const,\n M: 'm' as const,\n L: 'l' as const,\n};\n\nexport const BUTTON_INTENT = {\n DANGER: 'danger' as const,\n SUCCESS: 'success' as const,\n WARNING: 'warning' as const,\n INFO: 'info' as const,\n};\n\nexport const BUTTON_VARIANT = {\n DEFAULT: 'variant-default' as const,\n FOCUS: 'variant-focus' as const,\n ACTIVE: 'variant-active' as const,\n DISABLED: 'variant-disabled' as const,\n HOVER: 'variant-hover' as const,\n};\n\nexport const buttonVariants = [\n 'variant-default' as const,\n 'variant-focus' as const,\n 'variant-active' as const,\n 'variant-disabled' as const,\n 'variant-hover' as const,\n] as const;\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAhB,MAAM,cAAc;AAAA,EACzB,SAAS;AAAA,EACT,WAAW;AAAA,EACX,MAAM;AAAA,EACN,MAAM;AACR;AAEO,MAAM,cAAc,CAAC,WAAoB,aAAsB,QAAiB,MAAe;AAE/F,MAAM,cAAc;AAAA,EACzB,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AACL;AAEO,MAAM,gBAAgB;AAAA,EAC3B,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,SAAS;AAAA,EACT,MAAM;AACR;AAEO,MAAM,iBAAiB;AAAA,EAC5B,SAAS;AAAA,EACT,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,OAAO;AACT;AAEO,MAAM,iBAAiB;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;",
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAhB,MAAM,cAAc;AAAA,EACzB,SAAS;AAAA,EACT,WAAW;AAAA,EACX,MAAM;AAAA,EACN,MAAM;AACR;AAEO,MAAM,cAAc,CAAC,WAAoB,aAAsB,QAAiB,MAAe;AAE/F,MAAM,cAAc;AAAA,EACzB,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AACL;AAEO,MAAM,gBAAgB;AAAA,EAC3B,QAAQ;AAAA,EACR,SAAS;AAAA,EACT,SAAS;AAAA,EACT,MAAM;AACR;AAEO,MAAM,iBAAiB;AAAA,EAC5B,SAAS;AAAA,EACT,OAAO;AAAA,EACP,QAAQ;AAAA,EACR,UAAU;AAAA,EACV,OAAO;AACT;AAEO,MAAM,iBAAiB;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;",
6
6
  "names": []
7
7
  }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
20
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -28,7 +32,7 @@ __export(defaultProps_exports, {
28
32
  });
29
33
  module.exports = __toCommonJS(defaultProps_exports);
30
34
  var React = __toESM(require("react"));
31
- var import_constants = require("./constants");
35
+ var import_constants = require("./constants.js");
32
36
  const defaultProps = {
33
37
  disabled: false,
34
38
  fluidWidth: false,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/defaultProps.tsx", "../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["import { BUTTON_VARIANT } from './constants';\n\nexport const defaultProps = {\n disabled: false,\n fluidWidth: false,\n labelText: '',\n icon: null,\n onBlur: () => null,\n onClick: () => null,\n onKeyPress: () => null,\n leftIcon: null,\n tabIndex: 0,\n variant: BUTTON_VARIANT.DEFAULT,\n containerProps: {},\n as: 'button',\n type: 'button',\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,uBAA+B;AAExB,MAAM,eAAe;AAAA,EAC1B,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,MAAM;AAAA,EACN,QAAQ,MAAM;AAAA,EACd,SAAS,MAAM;AAAA,EACf,YAAY,MAAM;AAAA,EAClB,UAAU;AAAA,EACV,UAAU;AAAA,EACV,SAAS,gCAAe;AAAA,EACxB,gBAAgB,CAAC;AAAA,EACjB,IAAI;AAAA,EACJ,MAAM;AACR;",
4
+ "sourcesContent": ["import { BUTTON_VARIANT } from './constants.js';\n\nexport const defaultProps = {\n disabled: false,\n fluidWidth: false,\n labelText: '',\n icon: null,\n onBlur: () => null,\n onClick: () => null,\n onKeyPress: () => null,\n leftIcon: null,\n tabIndex: 0,\n variant: BUTTON_VARIANT.DEFAULT,\n containerProps: {},\n as: 'button',\n type: 'button',\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,uBAA+B;AAExB,MAAM,eAAe;AAAA,EAC1B,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,MAAM;AAAA,EACN,QAAQ,MAAM;AAAA,EACd,SAAS,MAAM;AAAA,EACf,YAAY,MAAM;AAAA,EAClB,UAAU;AAAA,EACV,UAAU;AAAA,EACV,SAAS,gCAAe;AAAA,EACxB,gBAAgB,CAAC;AAAA,EACjB,IAAI;AAAA,EACJ,MAAM;AACR;",
6
6
  "names": []
7
7
  }
package/dist/cjs/index.js CHANGED
@@ -19,6 +19,10 @@ var __copyProps = (to, from, except, desc) => {
19
19
  };
20
20
  var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
21
21
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
22
26
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
23
27
  mod
24
28
  ));
@@ -30,6 +34,6 @@ __export(src_exports, {
30
34
  module.exports = __toCommonJS(src_exports);
31
35
  var React = __toESM(require("react"));
32
36
  __reExport(src_exports, require("./DSButton.js"), module.exports);
33
- __reExport(src_exports, require("./constants"), module.exports);
34
- var import_DSButton = __toESM(require("./DSButton"));
37
+ __reExport(src_exports, require("./constants.js"), module.exports);
38
+ var import_DSButton = __toESM(require("./DSButton.js"));
35
39
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.tsx", "../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["export * from './DSButton.js';\nexport * from './constants';\nexport { default } from './DSButton';\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,wBAAc,0BAAd;AACA,wBAAc,wBADd;AAEA,sBAAwB;",
4
+ "sourcesContent": ["export * from './DSButton.js';\nexport * from './constants.js';\nexport { default } from './DSButton.js';\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADAvB,wBAAc,0BAAd;AACA,wBAAc,2BADd;AAEA,sBAAwB;",
6
6
  "names": []
7
7
  }
@@ -0,0 +1,7 @@
1
+ {
2
+ "type": "commonjs",
3
+ "sideEffects": [
4
+ "*.css",
5
+ "*.scss"
6
+ ]
7
+ }
@@ -18,6 +18,10 @@ var __copyProps = (to, from, except, desc) => {
18
18
  return to;
19
19
  };
20
20
  var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
21
25
  isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
22
26
  mod
23
27
  ));
@@ -30,32 +34,95 @@ module.exports = __toCommonJS(propTypes_exports);
30
34
  var React = __toESM(require("react"));
31
35
  var import_ds_props_helpers = require("@elliemae/ds-props-helpers");
32
36
  var import_ds_shared = require("@elliemae/ds-shared");
33
- var import_constants = require("./constants");
37
+ var import_constants = require("./constants.js");
34
38
  const btnPropTypes = {
39
+ /**
40
+ * Tab index
41
+ */
35
42
  tabIndex: import_ds_props_helpers.PropTypes.number.description("Tab index"),
43
+ /**
44
+ * Additional className
45
+ */
36
46
  className: import_ds_props_helpers.PropTypes.string.description("Additional className"),
47
+ /**
48
+ * aria disabled
49
+ */
37
50
  "aria-disabled": import_ds_props_helpers.PropTypes.string.description("aria disabled"),
51
+ /**
52
+ * Html tag. default 'button'
53
+ */
38
54
  as: import_ds_props_helpers.PropTypes.string.description("Html tag").defaultValue("button"),
55
+ /**
56
+ * Whether the button is disabled or not
57
+ */
39
58
  disabled: import_ds_props_helpers.PropTypes.bool.description("Whether the button is disabled or not"),
59
+ /**
60
+ * Make the content of the button fit the button container or not
61
+ */
40
62
  fluidWidth: import_ds_props_helpers.PropTypes.bool.description("Make the content of the button fit the button container or not"),
63
+ /**
64
+ * Displayable label inside the button
65
+ */
41
66
  labelText: import_ds_props_helpers.PropTypes.oneOfType([import_ds_props_helpers.PropTypes.string, import_ds_props_helpers.PropTypes.element]).description(
42
67
  "Displayable label inside the button"
43
68
  ),
69
+ /**
70
+ * Put an icon inside the button
71
+ */
44
72
  icon: import_ds_props_helpers.PropTypes.element.description("Put an icon inside the button"),
73
+ /**
74
+ * Put an icon on the left side of the button
75
+ */
45
76
  leftIcon: import_ds_props_helpers.PropTypes.element.description("Put an icon on the left side of the button"),
77
+ /**
78
+ * ['primary', 'secondary', 'text', 'link']
79
+ */
46
80
  buttonType: import_ds_props_helpers.PropTypes.oneOf(import_constants.buttonTypes).description("type of the button"),
81
+ /**
82
+ * ['s', 'm', 'l']
83
+ */
47
84
  size: import_ds_props_helpers.PropTypes.oneOf(import_ds_shared.dsBasicSizes).description("size of the button"),
85
+ /**
86
+ * submit or button
87
+ */
48
88
  type: import_ds_props_helpers.PropTypes.oneOf(["button", "submit"]).description("type of the button"),
89
+ /**
90
+ * [
91
+ * 'variant-default',
92
+ * 'variant-focus',
93
+ * 'variant-active',
94
+ * 'variant-disabled',
95
+ * ]
96
+ */
49
97
  variant: import_ds_props_helpers.PropTypes.oneOf(import_constants.buttonVariants).description("variant of the button"),
98
+ /**
99
+ * Refence
100
+ */
50
101
  innerRef: import_ds_props_helpers.PropTypes.oneOfType([import_ds_props_helpers.PropTypes.func, import_ds_props_helpers.PropTypes.shape({ current: import_ds_props_helpers.PropTypes.any })]).description(
51
102
  "reference to the component"
52
103
  ),
104
+ /**
105
+ * Onblur callback
106
+ */
53
107
  onBlur: import_ds_props_helpers.PropTypes.func.description("Allows a function that is triggered once the button is blur"),
108
+ /**
109
+ * Apply intent color: ['success', 'warning', 'danger', 'info']
110
+ * Only valid with buttonType="text"
111
+ */
54
112
  intent: import_ds_props_helpers.PropTypes.oneOf(["success", "warning", "danger", "info"]).description(
55
113
  'Apply intent color. Only valid with buttonType="text"'
56
114
  ),
115
+ /**
116
+ * additional props for the container
117
+ */
57
118
  containerProps: import_ds_props_helpers.PropTypes.object.description("additional props for the container"),
119
+ /**
120
+ * Allows a function that is triggered once the button is clicked
121
+ */
58
122
  onClick: import_ds_props_helpers.PropTypes.func.description("Allows a function that is triggered once the button is clicked"),
123
+ /**
124
+ * Allows a function that is triggered once the button is key pressed
125
+ */
59
126
  onKeyPress: import_ds_props_helpers.PropTypes.func.description("Allows a function that is triggered once the button is key pressed")
60
127
  };
61
128
  //# sourceMappingURL=propTypes.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/propTypes.tsx", "../../../../scripts/build/transpile/react-shim.js"],
4
- "sourcesContent": ["/* eslint-disable no-unused-vars */\n\nimport { PropTypes } from '@elliemae/ds-props-helpers';\nimport { dsBasicSizes } from '@elliemae/ds-shared';\nimport { buttonTypes, buttonVariants } from './constants';\n\nexport const btnPropTypes = {\n /**\n * Tab index\n */\n tabIndex: PropTypes.number.description('Tab index'),\n /**\n * Additional className\n */\n className: PropTypes.string.description('Additional className'),\n /**\n * aria disabled\n */\n 'aria-disabled': PropTypes.string.description('aria disabled'),\n /**\n * Html tag. default 'button'\n */\n as: PropTypes.string.description('Html tag').defaultValue('button'),\n /**\n * Whether the button is disabled or not\n */\n disabled: PropTypes.bool.description('Whether the button is disabled or not'),\n /**\n * Make the content of the button fit the button container or not\n */\n fluidWidth: PropTypes.bool.description('Make the content of the button fit the button container or not'),\n /**\n * Displayable label inside the button\n */\n labelText: PropTypes.oneOfType([PropTypes.string, PropTypes.element]).description(\n 'Displayable label inside the button',\n ),\n /**\n * Put an icon inside the button\n */\n icon: PropTypes.element.description('Put an icon inside the button'),\n /**\n * Put an icon on the left side of the button\n */\n leftIcon: PropTypes.element.description('Put an icon on the left side of the button'),\n /**\n * ['primary', 'secondary', 'text', 'link']\n */\n buttonType: PropTypes.oneOf(buttonTypes).description('type of the button'),\n /**\n * ['s', 'm', 'l']\n */\n size: PropTypes.oneOf(dsBasicSizes).description('size of the button'),\n /**\n * submit or button\n */\n type: PropTypes.oneOf(['button', 'submit']).description('type of the button'),\n /**\n * [\n * 'variant-default',\n * 'variant-focus',\n * 'variant-active',\n * 'variant-disabled',\n * ]\n */\n variant: PropTypes.oneOf(buttonVariants).description('variant of the button'),\n /**\n * Refence\n */\n innerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({ current: PropTypes.any })]).description(\n 'reference to the component',\n ),\n /**\n * Onblur callback\n */\n onBlur: PropTypes.func.description('Allows a function that is triggered once the button is blur'),\n /**\n * Apply intent color: ['success', 'warning', 'danger', 'info']\n * Only valid with buttonType=\"text\"\n */\n intent: PropTypes.oneOf(['success', 'warning', 'danger', 'info']).description(\n 'Apply intent color. Only valid with buttonType=\"text\"',\n ),\n /**\n * additional props for the container\n */\n containerProps: PropTypes.object.description('additional props for the container'),\n /**\n * Allows a function that is triggered once the button is clicked\n */\n onClick: PropTypes.func.description('Allows a function that is triggered once the button is clicked'),\n /**\n * Allows a function that is triggered once the button is key pressed\n */\n onKeyPress: PropTypes.func.description('Allows a function that is triggered once the button is key pressed'),\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADEvB,8BAA0B;AAC1B,uBAA6B;AAC7B,uBAA4C;AAErC,MAAM,eAAe;AAAA,EAI1B,UAAU,kCAAU,OAAO,YAAY,WAAW;AAAA,EAIlD,WAAW,kCAAU,OAAO,YAAY,sBAAsB;AAAA,EAI9D,iBAAiB,kCAAU,OAAO,YAAY,eAAe;AAAA,EAI7D,IAAI,kCAAU,OAAO,YAAY,UAAU,EAAE,aAAa,QAAQ;AAAA,EAIlE,UAAU,kCAAU,KAAK,YAAY,uCAAuC;AAAA,EAI5E,YAAY,kCAAU,KAAK,YAAY,gEAAgE;AAAA,EAIvG,WAAW,kCAAU,UAAU,CAAC,kCAAU,QAAQ,kCAAU,OAAO,CAAC,EAAE;AAAA,IACpE;AAAA,EACF;AAAA,EAIA,MAAM,kCAAU,QAAQ,YAAY,+BAA+B;AAAA,EAInE,UAAU,kCAAU,QAAQ,YAAY,4CAA4C;AAAA,EAIpF,YAAY,kCAAU,MAAM,4BAAW,EAAE,YAAY,oBAAoB;AAAA,EAIzE,MAAM,kCAAU,MAAM,6BAAY,EAAE,YAAY,oBAAoB;AAAA,EAIpE,MAAM,kCAAU,MAAM,CAAC,UAAU,QAAQ,CAAC,EAAE,YAAY,oBAAoB;AAAA,EAS5E,SAAS,kCAAU,MAAM,+BAAc,EAAE,YAAY,uBAAuB;AAAA,EAI5E,UAAU,kCAAU,UAAU,CAAC,kCAAU,MAAM,kCAAU,MAAM,EAAE,SAAS,kCAAU,IAAI,CAAC,CAAC,CAAC,EAAE;AAAA,IAC3F;AAAA,EACF;AAAA,EAIA,QAAQ,kCAAU,KAAK,YAAY,6DAA6D;AAAA,EAKhG,QAAQ,kCAAU,MAAM,CAAC,WAAW,WAAW,UAAU,MAAM,CAAC,EAAE;AAAA,IAChE;AAAA,EACF;AAAA,EAIA,gBAAgB,kCAAU,OAAO,YAAY,oCAAoC;AAAA,EAIjF,SAAS,kCAAU,KAAK,YAAY,gEAAgE;AAAA,EAIpG,YAAY,kCAAU,KAAK,YAAY,oEAAoE;AAC7G;",
4
+ "sourcesContent": ["/* eslint-disable no-unused-vars */\n\nimport { PropTypes } from '@elliemae/ds-props-helpers';\nimport { dsBasicSizes } from '@elliemae/ds-shared';\nimport { buttonTypes, buttonVariants } from './constants.js';\n\nexport const btnPropTypes = {\n /**\n * Tab index\n */\n tabIndex: PropTypes.number.description('Tab index'),\n /**\n * Additional className\n */\n className: PropTypes.string.description('Additional className'),\n /**\n * aria disabled\n */\n 'aria-disabled': PropTypes.string.description('aria disabled'),\n /**\n * Html tag. default 'button'\n */\n as: PropTypes.string.description('Html tag').defaultValue('button'),\n /**\n * Whether the button is disabled or not\n */\n disabled: PropTypes.bool.description('Whether the button is disabled or not'),\n /**\n * Make the content of the button fit the button container or not\n */\n fluidWidth: PropTypes.bool.description('Make the content of the button fit the button container or not'),\n /**\n * Displayable label inside the button\n */\n labelText: PropTypes.oneOfType([PropTypes.string, PropTypes.element]).description(\n 'Displayable label inside the button',\n ),\n /**\n * Put an icon inside the button\n */\n icon: PropTypes.element.description('Put an icon inside the button'),\n /**\n * Put an icon on the left side of the button\n */\n leftIcon: PropTypes.element.description('Put an icon on the left side of the button'),\n /**\n * ['primary', 'secondary', 'text', 'link']\n */\n buttonType: PropTypes.oneOf(buttonTypes).description('type of the button'),\n /**\n * ['s', 'm', 'l']\n */\n size: PropTypes.oneOf(dsBasicSizes).description('size of the button'),\n /**\n * submit or button\n */\n type: PropTypes.oneOf(['button', 'submit']).description('type of the button'),\n /**\n * [\n * 'variant-default',\n * 'variant-focus',\n * 'variant-active',\n * 'variant-disabled',\n * ]\n */\n variant: PropTypes.oneOf(buttonVariants).description('variant of the button'),\n /**\n * Refence\n */\n innerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({ current: PropTypes.any })]).description(\n 'reference to the component',\n ),\n /**\n * Onblur callback\n */\n onBlur: PropTypes.func.description('Allows a function that is triggered once the button is blur'),\n /**\n * Apply intent color: ['success', 'warning', 'danger', 'info']\n * Only valid with buttonType=\"text\"\n */\n intent: PropTypes.oneOf(['success', 'warning', 'danger', 'info']).description(\n 'Apply intent color. Only valid with buttonType=\"text\"',\n ),\n /**\n * additional props for the container\n */\n containerProps: PropTypes.object.description('additional props for the container'),\n /**\n * Allows a function that is triggered once the button is clicked\n */\n onClick: PropTypes.func.description('Allows a function that is triggered once the button is clicked'),\n /**\n * Allows a function that is triggered once the button is key pressed\n */\n onKeyPress: PropTypes.func.description('Allows a function that is triggered once the button is key pressed'),\n};\n", "import * as React from 'react';\nexport { React };\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;ACAA,YAAuB;ADEvB,8BAA0B;AAC1B,uBAA6B;AAC7B,uBAA4C;AAErC,MAAM,eAAe;AAAA;AAAA;AAAA;AAAA,EAI1B,UAAU,kCAAU,OAAO,YAAY,WAAW;AAAA;AAAA;AAAA;AAAA,EAIlD,WAAW,kCAAU,OAAO,YAAY,sBAAsB;AAAA;AAAA;AAAA;AAAA,EAI9D,iBAAiB,kCAAU,OAAO,YAAY,eAAe;AAAA;AAAA;AAAA;AAAA,EAI7D,IAAI,kCAAU,OAAO,YAAY,UAAU,EAAE,aAAa,QAAQ;AAAA;AAAA;AAAA;AAAA,EAIlE,UAAU,kCAAU,KAAK,YAAY,uCAAuC;AAAA;AAAA;AAAA;AAAA,EAI5E,YAAY,kCAAU,KAAK,YAAY,gEAAgE;AAAA;AAAA;AAAA;AAAA,EAIvG,WAAW,kCAAU,UAAU,CAAC,kCAAU,QAAQ,kCAAU,OAAO,CAAC,EAAE;AAAA,IACpE;AAAA,EACF;AAAA;AAAA;AAAA;AAAA,EAIA,MAAM,kCAAU,QAAQ,YAAY,+BAA+B;AAAA;AAAA;AAAA;AAAA,EAInE,UAAU,kCAAU,QAAQ,YAAY,4CAA4C;AAAA;AAAA;AAAA;AAAA,EAIpF,YAAY,kCAAU,MAAM,4BAAW,EAAE,YAAY,oBAAoB;AAAA;AAAA;AAAA;AAAA,EAIzE,MAAM,kCAAU,MAAM,6BAAY,EAAE,YAAY,oBAAoB;AAAA;AAAA;AAAA;AAAA,EAIpE,MAAM,kCAAU,MAAM,CAAC,UAAU,QAAQ,CAAC,EAAE,YAAY,oBAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAS5E,SAAS,kCAAU,MAAM,+BAAc,EAAE,YAAY,uBAAuB;AAAA;AAAA;AAAA;AAAA,EAI5E,UAAU,kCAAU,UAAU,CAAC,kCAAU,MAAM,kCAAU,MAAM,EAAE,SAAS,kCAAU,IAAI,CAAC,CAAC,CAAC,EAAE;AAAA,IAC3F;AAAA,EACF;AAAA;AAAA;AAAA;AAAA,EAIA,QAAQ,kCAAU,KAAK,YAAY,6DAA6D;AAAA;AAAA;AAAA;AAAA;AAAA,EAKhG,QAAQ,kCAAU,MAAM,CAAC,WAAW,WAAW,UAAU,MAAM,CAAC,EAAE;AAAA,IAChE;AAAA,EACF;AAAA;AAAA;AAAA;AAAA,EAIA,gBAAgB,kCAAU,OAAO,YAAY,oCAAoC;AAAA;AAAA;AAAA;AAAA,EAIjF,SAAS,kCAAU,KAAK,YAAY,gEAAgE;AAAA;AAAA;AAAA;AAAA,EAIpG,YAAY,kCAAU,KAAK,YAAY,oEAAoE;AAC7G;",
6
6
  "names": []
7
7
  }
@@ -4,9 +4,9 @@ import { useState, useMemo } from "react";
4
4
  import { aggregatedClasses, convertPropToCssClassName } from "@elliemae/ds-classnames";
5
5
  import { cx, useDeprecateComponent } from "@elliemae/ds-utilities";
6
6
  import { describe } from "@elliemae/ds-props-helpers";
7
- import { BUTTON_TYPE, BUTTON_SIZE, BUTTON_VARIANT } from "./constants";
8
- import { btnPropTypes } from "./propTypes";
9
- import { defaultProps } from "./defaultProps";
7
+ import { BUTTON_TYPE, BUTTON_SIZE, BUTTON_VARIANT } from "./constants.js";
8
+ import { btnPropTypes } from "./propTypes.js";
9
+ import { defaultProps } from "./defaultProps.js";
10
10
  const blockName = "button";
11
11
  const getContainer = (Element) => aggregatedClasses(Element)(
12
12
  blockName,
@@ -57,7 +57,10 @@ const DSButton = ({
57
57
  className: cx(intentClassName, className),
58
58
  classProps: {
59
59
  disabled,
60
+ // DON'T CHANGE FOR defaultProps
61
+ // using OR to keep ButtonGroup behavior at packages/ds-basic/src/ButtonGroup/DSButtonGroup
60
62
  buttonType: buttonType || BUTTON_TYPE.PRIMARY,
63
+ // using or to keep ButtonGroup behavior at packages/ds-basic/src/ButtonGroup/DSButtonGroup
61
64
  size: size || BUTTON_SIZE.M,
62
65
  fluidWidth,
63
66
  iconOnly: !labelText && (icon || leftIcon),
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/DSButton.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\n/* eslint-disable jest/valid-title */\nimport React, { useState, useMemo } from 'react';\nimport { aggregatedClasses, convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { cx, useDeprecateComponent } from '@elliemae/ds-utilities';\nimport { describe } from '@elliemae/ds-props-helpers';\nimport { BUTTON_TYPE, BUTTON_SIZE, BUTTON_VARIANT } from './constants';\nimport { btnPropTypes } from './propTypes';\nimport { defaultProps } from './defaultProps';\n\nconst blockName = 'button';\n\nconst getContainer = (Element) =>\n aggregatedClasses(Element)(\n blockName,\n null,\n ({ iconOnly, variant }) => ({\n 'icon-only': iconOnly,\n [variant]: variant,\n }),\n {\n propsToRemoveFromFinalElement: ['cx'],\n },\n );\n\ninterface ButtonPropsT {\n [x: string]: unknown;\n disabled?: boolean;\n fluidWidth?: boolean;\n innerRef?: unknown;\n buttonType?: (typeof BUTTON_TYPE)[keyof typeof BUTTON_TYPE];\n size?: (typeof BUTTON_SIZE)[keyof typeof BUTTON_SIZE];\n variant?: (typeof BUTTON_VARIANT)[keyof typeof BUTTON_VARIANT];\n labelText?: string;\n icon?: JSX.Element;\n leftIcon?: JSX.Element;\n tabIndex?: number;\n intent?: 'success' | 'danger' | 'warning' | 'info';\n containerProps?: { [x: string]: unknown };\n className?: string;\n as?: string | JSX.Element;\n type?: 'button' | 'text';\n onBlur?: React.FocusEventHandler<HTMLElement>;\n onClick?: (event: React.MouseEvent<HTMLElement> | React.KeyboardEvent<HTMLElement>) => void;\n onKeyPress?: React.KeyboardEventHandler<HTMLElement>;\n}\n\n// eslint-disable-next-line complexity\nconst DSButton = ({\n innerRef,\n disabled,\n buttonType,\n fluidWidth,\n size,\n labelText,\n icon,\n onBlur,\n onClick,\n onKeyPress,\n leftIcon,\n tabIndex,\n variant,\n intent,\n containerProps,\n className,\n as: Component,\n type,\n ...rest\n}: ButtonPropsT) => {\n useDeprecateComponent({ componentName: 'ds-button-v1', version: 'TBD Date: 2023 Q3' });\n\n const [pressed, setPressed] = useState(false);\n const Button = useMemo(() => getContainer(Component), [Component]);\n const intentBlockName = `${blockName}${intent ? `-${intent}` : ''}`;\n const { cssClassName: intentClassName } = convertPropToCssClassName(intentBlockName);\n return (\n <Button\n data-testid={(containerProps && containerProps['data-testid']) || 'button-wrapper'}\n {...rest}\n {...containerProps}\n aria-disabled={rest['aria-disabled'] !== undefined ? rest['aria-disabled'] : disabled}\n aria-label={rest['aria-label'] || labelText || 'button'}\n aria-pressed={pressed}\n className={cx(intentClassName, className)}\n classProps={{\n disabled,\n // DON'T CHANGE FOR defaultProps\n // using OR to keep ButtonGroup behavior at packages/ds-basic/src/ButtonGroup/DSButtonGroup\n buttonType: buttonType || BUTTON_TYPE.PRIMARY,\n // using or to keep ButtonGroup behavior at packages/ds-basic/src/ButtonGroup/DSButtonGroup\n size: size || BUTTON_SIZE.M,\n fluidWidth,\n iconOnly: !labelText && (icon || leftIcon),\n variant: disabled ? BUTTON_VARIANT.DISABLED : variant,\n }}\n disabled={disabled} // https://jira.elliemae.io/browse/PUI-1215\n innerRef={innerRef}\n onBlur={(e: React.FocusEvent<HTMLElement>) => {\n if (disabled) return;\n setPressed(false);\n if (onBlur) onBlur(e);\n }}\n onClick={(e: React.MouseEvent<HTMLElement>) => {\n if (disabled) return;\n setPressed(true);\n if (onClick) onClick(e);\n }}\n onKeyPress={(e: React.KeyboardEvent<HTMLElement>) => {\n if (disabled) return;\n e.preventDefault();\n if (e.key === 'Enter') {\n setPressed(true);\n if (onClick) onClick(e);\n }\n if (onKeyPress) onKeyPress(e);\n }}\n tabIndex={tabIndex}\n type={type}\n >\n {leftIcon}\n {labelText && (\n <span\n className={`label-wrapper ${icon || leftIcon ? 'with-icon' : 'no-icon'}`}\n data-testid=\"button-label\"\n role=\"presentation\"\n >\n <span>{labelText}</span>\n </span>\n )}\n {icon}\n </Button>\n );\n};\n\nDSButton.defaultProps = defaultProps;\nDSButton.propTypes = btnPropTypes;\nDSButton.displayName = 'DSButton';\n\nconst DSButtonWithSchema = describe(DSButton);\nDSButtonWithSchema.propTypes = btnPropTypes;\n\nexport { DSButton, DSButtonWithSchema };\nexport default DSButton;\n"],
5
- "mappings": "AAAA,YAAY,WAAW;AC4EnB,SAkDM,KAlDN;AA1EJ,SAAgB,UAAU,eAAe;AACzC,SAAS,mBAAmB,iCAAiC;AAC7D,SAAS,IAAI,6BAA6B;AAC1C,SAAS,gBAAgB;AACzB,SAAS,aAAa,aAAa,sBAAsB;AACzD,SAAS,oBAAoB;AAC7B,SAAS,oBAAoB;AAE7B,MAAM,YAAY;AAElB,MAAM,eAAe,CAAC,YACpB,kBAAkB,OAAO;AAAA,EACvB;AAAA,EACA;AAAA,EACA,CAAC,EAAE,UAAU,QAAQ,OAAO;AAAA,IAC1B,aAAa;AAAA,IACb,CAAC,UAAU;AAAA,EACb;AAAA,EACA;AAAA,IACE,+BAA+B,CAAC,IAAI;AAAA,EACtC;AACF;AAyBF,MAAM,WAAW,CAAC;AAAA,EAChB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,IAAI;AAAA,EACJ;AAAA,KACG;AACL,MAAoB;AAClB,wBAAsB,EAAE,eAAe,gBAAgB,SAAS,oBAAoB,CAAC;AAErF,QAAM,CAAC,SAAS,UAAU,IAAI,SAAS,KAAK;AAC5C,QAAM,SAAS,QAAQ,MAAM,aAAa,SAAS,GAAG,CAAC,SAAS,CAAC;AACjE,QAAM,kBAAkB,GAAG,YAAY,SAAS,IAAI,WAAW;AAC/D,QAAM,EAAE,cAAc,gBAAgB,IAAI,0BAA0B,eAAe;AACnF,SACE;AAAA,IAAC;AAAA;AAAA,MACC,eAAc,kBAAkB,eAAe,kBAAmB;AAAA,MACjE,GAAG;AAAA,MACH,GAAG;AAAA,MACJ,iBAAe,KAAK,qBAAqB,SAAY,KAAK,mBAAmB;AAAA,MAC7E,cAAY,KAAK,iBAAiB,aAAa;AAAA,MAC/C,gBAAc;AAAA,MACd,WAAW,GAAG,iBAAiB,SAAS;AAAA,MACxC,YAAY;AAAA,QACV;AAAA,QAGA,YAAY,cAAc,YAAY;AAAA,QAEtC,MAAM,QAAQ,YAAY;AAAA,QAC1B;AAAA,QACA,UAAU,CAAC,cAAc,QAAQ;AAAA,QACjC,SAAS,WAAW,eAAe,WAAW;AAAA,MAChD;AAAA,MACA;AAAA,MACA;AAAA,MACA,QAAQ,CAAC,MAAqC;AAC5C,YAAI;AAAU;AACd,mBAAW,KAAK;AAChB,YAAI;AAAQ,iBAAO,CAAC;AAAA,MACtB;AAAA,MACA,SAAS,CAAC,MAAqC;AAC7C,YAAI;AAAU;AACd,mBAAW,IAAI;AACf,YAAI;AAAS,kBAAQ,CAAC;AAAA,MACxB;AAAA,MACA,YAAY,CAAC,MAAwC;AACnD,YAAI;AAAU;AACd,UAAE,eAAe;AACjB,YAAI,EAAE,QAAQ,SAAS;AACrB,qBAAW,IAAI;AACf,cAAI;AAAS,oBAAQ,CAAC;AAAA,QACxB;AACA,YAAI;AAAY,qBAAW,CAAC;AAAA,MAC9B;AAAA,MACA;AAAA,MACA;AAAA,MAEC;AAAA;AAAA,QACA,aACC;AAAA,UAAC;AAAA;AAAA,YACC,WAAW,iBAAiB,QAAQ,WAAW,cAAc;AAAA,YAC7D,eAAY;AAAA,YACZ,MAAK;AAAA,YAEL,8BAAC,UAAM,qBAAU;AAAA;AAAA,QACnB;AAAA,QAED;AAAA;AAAA;AAAA,EACH;AAEJ;AAEA,SAAS,eAAe;AACxB,SAAS,YAAY;AACrB,SAAS,cAAc;AAEvB,MAAM,qBAAqB,SAAS,QAAQ;AAC5C,mBAAmB,YAAY;AAG/B,IAAO,mBAAQ;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable max-lines */\n/* eslint-disable jest/valid-title */\nimport React, { useState, useMemo } from 'react';\nimport { aggregatedClasses, convertPropToCssClassName } from '@elliemae/ds-classnames';\nimport { cx, useDeprecateComponent } from '@elliemae/ds-utilities';\nimport { describe } from '@elliemae/ds-props-helpers';\nimport { BUTTON_TYPE, BUTTON_SIZE, BUTTON_VARIANT } from './constants.js';\nimport { btnPropTypes } from './propTypes.js';\nimport { defaultProps } from './defaultProps.js';\n\nconst blockName = 'button';\n\nconst getContainer = (Element) =>\n aggregatedClasses(Element)(\n blockName,\n null,\n ({ iconOnly, variant }) => ({\n 'icon-only': iconOnly,\n [variant]: variant,\n }),\n {\n propsToRemoveFromFinalElement: ['cx'],\n },\n );\n\ninterface ButtonPropsT {\n [x: string]: unknown;\n disabled?: boolean;\n fluidWidth?: boolean;\n innerRef?: unknown;\n buttonType?: (typeof BUTTON_TYPE)[keyof typeof BUTTON_TYPE];\n size?: (typeof BUTTON_SIZE)[keyof typeof BUTTON_SIZE];\n variant?: (typeof BUTTON_VARIANT)[keyof typeof BUTTON_VARIANT];\n labelText?: string;\n icon?: JSX.Element;\n leftIcon?: JSX.Element;\n tabIndex?: number;\n intent?: 'success' | 'danger' | 'warning' | 'info';\n containerProps?: { [x: string]: unknown };\n className?: string;\n as?: string | JSX.Element;\n type?: 'button' | 'text';\n onBlur?: React.FocusEventHandler<HTMLElement>;\n onClick?: (event: React.MouseEvent<HTMLElement> | React.KeyboardEvent<HTMLElement>) => void;\n onKeyPress?: React.KeyboardEventHandler<HTMLElement>;\n}\n\n// eslint-disable-next-line complexity\nconst DSButton = ({\n innerRef,\n disabled,\n buttonType,\n fluidWidth,\n size,\n labelText,\n icon,\n onBlur,\n onClick,\n onKeyPress,\n leftIcon,\n tabIndex,\n variant,\n intent,\n containerProps,\n className,\n as: Component,\n type,\n ...rest\n}: ButtonPropsT) => {\n useDeprecateComponent({ componentName: 'ds-button-v1', version: 'TBD Date: 2023 Q3' });\n\n const [pressed, setPressed] = useState(false);\n const Button = useMemo(() => getContainer(Component), [Component]);\n const intentBlockName = `${blockName}${intent ? `-${intent}` : ''}`;\n const { cssClassName: intentClassName } = convertPropToCssClassName(intentBlockName);\n return (\n <Button\n data-testid={(containerProps && containerProps['data-testid']) || 'button-wrapper'}\n {...rest}\n {...containerProps}\n aria-disabled={rest['aria-disabled'] !== undefined ? rest['aria-disabled'] : disabled}\n aria-label={rest['aria-label'] || labelText || 'button'}\n aria-pressed={pressed}\n className={cx(intentClassName, className)}\n classProps={{\n disabled,\n // DON'T CHANGE FOR defaultProps\n // using OR to keep ButtonGroup behavior at packages/ds-basic/src/ButtonGroup/DSButtonGroup\n buttonType: buttonType || BUTTON_TYPE.PRIMARY,\n // using or to keep ButtonGroup behavior at packages/ds-basic/src/ButtonGroup/DSButtonGroup\n size: size || BUTTON_SIZE.M,\n fluidWidth,\n iconOnly: !labelText && (icon || leftIcon),\n variant: disabled ? BUTTON_VARIANT.DISABLED : variant,\n }}\n disabled={disabled} // https://jira.elliemae.io/browse/PUI-1215\n innerRef={innerRef}\n onBlur={(e: React.FocusEvent<HTMLElement>) => {\n if (disabled) return;\n setPressed(false);\n if (onBlur) onBlur(e);\n }}\n onClick={(e: React.MouseEvent<HTMLElement>) => {\n if (disabled) return;\n setPressed(true);\n if (onClick) onClick(e);\n }}\n onKeyPress={(e: React.KeyboardEvent<HTMLElement>) => {\n if (disabled) return;\n e.preventDefault();\n if (e.key === 'Enter') {\n setPressed(true);\n if (onClick) onClick(e);\n }\n if (onKeyPress) onKeyPress(e);\n }}\n tabIndex={tabIndex}\n type={type}\n >\n {leftIcon}\n {labelText && (\n <span\n className={`label-wrapper ${icon || leftIcon ? 'with-icon' : 'no-icon'}`}\n data-testid=\"button-label\"\n role=\"presentation\"\n >\n <span>{labelText}</span>\n </span>\n )}\n {icon}\n </Button>\n );\n};\n\nDSButton.defaultProps = defaultProps;\nDSButton.propTypes = btnPropTypes;\nDSButton.displayName = 'DSButton';\n\nconst DSButtonWithSchema = describe(DSButton);\nDSButtonWithSchema.propTypes = btnPropTypes;\n\nexport { DSButton, DSButtonWithSchema };\nexport default DSButton;\n"],
5
+ "mappings": "AAAA,YAAY,WAAW;AC4EnB,SAkDM,KAlDN;AA1EJ,SAAgB,UAAU,eAAe;AACzC,SAAS,mBAAmB,iCAAiC;AAC7D,SAAS,IAAI,6BAA6B;AAC1C,SAAS,gBAAgB;AACzB,SAAS,aAAa,aAAa,sBAAsB;AACzD,SAAS,oBAAoB;AAC7B,SAAS,oBAAoB;AAE7B,MAAM,YAAY;AAElB,MAAM,eAAe,CAAC,YACpB,kBAAkB,OAAO;AAAA,EACvB;AAAA,EACA;AAAA,EACA,CAAC,EAAE,UAAU,QAAQ,OAAO;AAAA,IAC1B,aAAa;AAAA,IACb,CAAC,OAAO,GAAG;AAAA,EACb;AAAA,EACA;AAAA,IACE,+BAA+B,CAAC,IAAI;AAAA,EACtC;AACF;AAyBF,MAAM,WAAW,CAAC;AAAA,EAChB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,IAAI;AAAA,EACJ;AAAA,EACA,GAAG;AACL,MAAoB;AAClB,wBAAsB,EAAE,eAAe,gBAAgB,SAAS,oBAAoB,CAAC;AAErF,QAAM,CAAC,SAAS,UAAU,IAAI,SAAS,KAAK;AAC5C,QAAM,SAAS,QAAQ,MAAM,aAAa,SAAS,GAAG,CAAC,SAAS,CAAC;AACjE,QAAM,kBAAkB,GAAG,YAAY,SAAS,IAAI,WAAW;AAC/D,QAAM,EAAE,cAAc,gBAAgB,IAAI,0BAA0B,eAAe;AACnF,SACE;AAAA,IAAC;AAAA;AAAA,MACC,eAAc,kBAAkB,eAAe,aAAa,KAAM;AAAA,MACjE,GAAG;AAAA,MACH,GAAG;AAAA,MACJ,iBAAe,KAAK,eAAe,MAAM,SAAY,KAAK,eAAe,IAAI;AAAA,MAC7E,cAAY,KAAK,YAAY,KAAK,aAAa;AAAA,MAC/C,gBAAc;AAAA,MACd,WAAW,GAAG,iBAAiB,SAAS;AAAA,MACxC,YAAY;AAAA,QACV;AAAA;AAAA;AAAA,QAGA,YAAY,cAAc,YAAY;AAAA;AAAA,QAEtC,MAAM,QAAQ,YAAY;AAAA,QAC1B;AAAA,QACA,UAAU,CAAC,cAAc,QAAQ;AAAA,QACjC,SAAS,WAAW,eAAe,WAAW;AAAA,MAChD;AAAA,MACA;AAAA,MACA;AAAA,MACA,QAAQ,CAAC,MAAqC;AAC5C,YAAI;AAAU;AACd,mBAAW,KAAK;AAChB,YAAI;AAAQ,iBAAO,CAAC;AAAA,MACtB;AAAA,MACA,SAAS,CAAC,MAAqC;AAC7C,YAAI;AAAU;AACd,mBAAW,IAAI;AACf,YAAI;AAAS,kBAAQ,CAAC;AAAA,MACxB;AAAA,MACA,YAAY,CAAC,MAAwC;AACnD,YAAI;AAAU;AACd,UAAE,eAAe;AACjB,YAAI,EAAE,QAAQ,SAAS;AACrB,qBAAW,IAAI;AACf,cAAI;AAAS,oBAAQ,CAAC;AAAA,QACxB;AACA,YAAI;AAAY,qBAAW,CAAC;AAAA,MAC9B;AAAA,MACA;AAAA,MACA;AAAA,MAEC;AAAA;AAAA,QACA,aACC;AAAA,UAAC;AAAA;AAAA,YACC,WAAW,iBAAiB,QAAQ,WAAW,cAAc;AAAA,YAC7D,eAAY;AAAA,YACZ,MAAK;AAAA,YAEL,8BAAC,UAAM,qBAAU;AAAA;AAAA,QACnB;AAAA,QAED;AAAA;AAAA;AAAA,EACH;AAEJ;AAEA,SAAS,eAAe;AACxB,SAAS,YAAY;AACrB,SAAS,cAAc;AAEvB,MAAM,qBAAqB,SAAS,QAAQ;AAC5C,mBAAmB,YAAY;AAG/B,IAAO,mBAAQ;",
6
6
  "names": []
7
7
  }
@@ -1,5 +1,5 @@
1
1
  import * as React from "react";
2
- import { BUTTON_VARIANT } from "./constants";
2
+ import { BUTTON_VARIANT } from "./constants.js";
3
3
  const defaultProps = {
4
4
  disabled: false,
5
5
  fluidWidth: false,
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/defaultProps.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { BUTTON_VARIANT } from './constants';\n\nexport const defaultProps = {\n disabled: false,\n fluidWidth: false,\n labelText: '',\n icon: null,\n onBlur: () => null,\n onClick: () => null,\n onKeyPress: () => null,\n leftIcon: null,\n tabIndex: 0,\n variant: BUTTON_VARIANT.DEFAULT,\n containerProps: {},\n as: 'button',\n type: 'button',\n};\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "import { BUTTON_VARIANT } from './constants.js';\n\nexport const defaultProps = {\n disabled: false,\n fluidWidth: false,\n labelText: '',\n icon: null,\n onBlur: () => null,\n onClick: () => null,\n onKeyPress: () => null,\n leftIcon: null,\n tabIndex: 0,\n variant: BUTTON_VARIANT.DEFAULT,\n containerProps: {},\n as: 'button',\n type: 'button',\n};\n"],
5
5
  "mappings": "AAAA,YAAY,WAAW;ACAvB,SAAS,sBAAsB;AAExB,MAAM,eAAe;AAAA,EAC1B,UAAU;AAAA,EACV,YAAY;AAAA,EACZ,WAAW;AAAA,EACX,MAAM;AAAA,EACN,QAAQ,MAAM;AAAA,EACd,SAAS,MAAM;AAAA,EACf,YAAY,MAAM;AAAA,EAClB,UAAU;AAAA,EACV,UAAU;AAAA,EACV,SAAS,eAAe;AAAA,EACxB,gBAAgB,CAAC;AAAA,EACjB,IAAI;AAAA,EACJ,MAAM;AACR;",
6
6
  "names": []
7
7
  }
package/dist/esm/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import * as React from "react";
2
2
  export * from "./DSButton.js";
3
- export * from "./constants";
4
- import { default as default2 } from "./DSButton";
3
+ export * from "./constants.js";
4
+ import { default as default2 } from "./DSButton.js";
5
5
  export {
6
6
  default2 as default
7
7
  };
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/index.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export * from './DSButton.js';\nexport * from './constants';\nexport { default } from './DSButton';\n"],
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "export * from './DSButton.js';\nexport * from './constants.js';\nexport { default } from './DSButton.js';\n"],
5
5
  "mappings": "AAAA,YAAY,WAAW;ACAvB,cAAc;AACd,cAAc;AACd,SAAS,WAAAA,gBAAe;",
6
6
  "names": ["default"]
7
7
  }
@@ -0,0 +1,7 @@
1
+ {
2
+ "type": "module",
3
+ "sideEffects": [
4
+ "*.css",
5
+ "*.scss"
6
+ ]
7
+ }
@@ -1,32 +1,95 @@
1
1
  import * as React from "react";
2
2
  import { PropTypes } from "@elliemae/ds-props-helpers";
3
3
  import { dsBasicSizes } from "@elliemae/ds-shared";
4
- import { buttonTypes, buttonVariants } from "./constants";
4
+ import { buttonTypes, buttonVariants } from "./constants.js";
5
5
  const btnPropTypes = {
6
+ /**
7
+ * Tab index
8
+ */
6
9
  tabIndex: PropTypes.number.description("Tab index"),
10
+ /**
11
+ * Additional className
12
+ */
7
13
  className: PropTypes.string.description("Additional className"),
14
+ /**
15
+ * aria disabled
16
+ */
8
17
  "aria-disabled": PropTypes.string.description("aria disabled"),
18
+ /**
19
+ * Html tag. default 'button'
20
+ */
9
21
  as: PropTypes.string.description("Html tag").defaultValue("button"),
22
+ /**
23
+ * Whether the button is disabled or not
24
+ */
10
25
  disabled: PropTypes.bool.description("Whether the button is disabled or not"),
26
+ /**
27
+ * Make the content of the button fit the button container or not
28
+ */
11
29
  fluidWidth: PropTypes.bool.description("Make the content of the button fit the button container or not"),
30
+ /**
31
+ * Displayable label inside the button
32
+ */
12
33
  labelText: PropTypes.oneOfType([PropTypes.string, PropTypes.element]).description(
13
34
  "Displayable label inside the button"
14
35
  ),
36
+ /**
37
+ * Put an icon inside the button
38
+ */
15
39
  icon: PropTypes.element.description("Put an icon inside the button"),
40
+ /**
41
+ * Put an icon on the left side of the button
42
+ */
16
43
  leftIcon: PropTypes.element.description("Put an icon on the left side of the button"),
44
+ /**
45
+ * ['primary', 'secondary', 'text', 'link']
46
+ */
17
47
  buttonType: PropTypes.oneOf(buttonTypes).description("type of the button"),
48
+ /**
49
+ * ['s', 'm', 'l']
50
+ */
18
51
  size: PropTypes.oneOf(dsBasicSizes).description("size of the button"),
52
+ /**
53
+ * submit or button
54
+ */
19
55
  type: PropTypes.oneOf(["button", "submit"]).description("type of the button"),
56
+ /**
57
+ * [
58
+ * 'variant-default',
59
+ * 'variant-focus',
60
+ * 'variant-active',
61
+ * 'variant-disabled',
62
+ * ]
63
+ */
20
64
  variant: PropTypes.oneOf(buttonVariants).description("variant of the button"),
65
+ /**
66
+ * Refence
67
+ */
21
68
  innerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({ current: PropTypes.any })]).description(
22
69
  "reference to the component"
23
70
  ),
71
+ /**
72
+ * Onblur callback
73
+ */
24
74
  onBlur: PropTypes.func.description("Allows a function that is triggered once the button is blur"),
75
+ /**
76
+ * Apply intent color: ['success', 'warning', 'danger', 'info']
77
+ * Only valid with buttonType="text"
78
+ */
25
79
  intent: PropTypes.oneOf(["success", "warning", "danger", "info"]).description(
26
80
  'Apply intent color. Only valid with buttonType="text"'
27
81
  ),
82
+ /**
83
+ * additional props for the container
84
+ */
28
85
  containerProps: PropTypes.object.description("additional props for the container"),
86
+ /**
87
+ * Allows a function that is triggered once the button is clicked
88
+ */
29
89
  onClick: PropTypes.func.description("Allows a function that is triggered once the button is clicked"),
90
+ /**
91
+ * Allows a function that is triggered once the button is key pressed
92
+ */
30
93
  onKeyPress: PropTypes.func.description("Allows a function that is triggered once the button is key pressed")
31
94
  };
32
95
  export {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../scripts/build/transpile/react-shim.js", "../../src/propTypes.tsx"],
4
- "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable no-unused-vars */\n\nimport { PropTypes } from '@elliemae/ds-props-helpers';\nimport { dsBasicSizes } from '@elliemae/ds-shared';\nimport { buttonTypes, buttonVariants } from './constants';\n\nexport const btnPropTypes = {\n /**\n * Tab index\n */\n tabIndex: PropTypes.number.description('Tab index'),\n /**\n * Additional className\n */\n className: PropTypes.string.description('Additional className'),\n /**\n * aria disabled\n */\n 'aria-disabled': PropTypes.string.description('aria disabled'),\n /**\n * Html tag. default 'button'\n */\n as: PropTypes.string.description('Html tag').defaultValue('button'),\n /**\n * Whether the button is disabled or not\n */\n disabled: PropTypes.bool.description('Whether the button is disabled or not'),\n /**\n * Make the content of the button fit the button container or not\n */\n fluidWidth: PropTypes.bool.description('Make the content of the button fit the button container or not'),\n /**\n * Displayable label inside the button\n */\n labelText: PropTypes.oneOfType([PropTypes.string, PropTypes.element]).description(\n 'Displayable label inside the button',\n ),\n /**\n * Put an icon inside the button\n */\n icon: PropTypes.element.description('Put an icon inside the button'),\n /**\n * Put an icon on the left side of the button\n */\n leftIcon: PropTypes.element.description('Put an icon on the left side of the button'),\n /**\n * ['primary', 'secondary', 'text', 'link']\n */\n buttonType: PropTypes.oneOf(buttonTypes).description('type of the button'),\n /**\n * ['s', 'm', 'l']\n */\n size: PropTypes.oneOf(dsBasicSizes).description('size of the button'),\n /**\n * submit or button\n */\n type: PropTypes.oneOf(['button', 'submit']).description('type of the button'),\n /**\n * [\n * 'variant-default',\n * 'variant-focus',\n * 'variant-active',\n * 'variant-disabled',\n * ]\n */\n variant: PropTypes.oneOf(buttonVariants).description('variant of the button'),\n /**\n * Refence\n */\n innerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({ current: PropTypes.any })]).description(\n 'reference to the component',\n ),\n /**\n * Onblur callback\n */\n onBlur: PropTypes.func.description('Allows a function that is triggered once the button is blur'),\n /**\n * Apply intent color: ['success', 'warning', 'danger', 'info']\n * Only valid with buttonType=\"text\"\n */\n intent: PropTypes.oneOf(['success', 'warning', 'danger', 'info']).description(\n 'Apply intent color. Only valid with buttonType=\"text\"',\n ),\n /**\n * additional props for the container\n */\n containerProps: PropTypes.object.description('additional props for the container'),\n /**\n * Allows a function that is triggered once the button is clicked\n */\n onClick: PropTypes.func.description('Allows a function that is triggered once the button is clicked'),\n /**\n * Allows a function that is triggered once the button is key pressed\n */\n onKeyPress: PropTypes.func.description('Allows a function that is triggered once the button is key pressed'),\n};\n"],
5
- "mappings": "AAAA,YAAY,WAAW;ACEvB,SAAS,iBAAiB;AAC1B,SAAS,oBAAoB;AAC7B,SAAS,aAAa,sBAAsB;AAErC,MAAM,eAAe;AAAA,EAI1B,UAAU,UAAU,OAAO,YAAY,WAAW;AAAA,EAIlD,WAAW,UAAU,OAAO,YAAY,sBAAsB;AAAA,EAI9D,iBAAiB,UAAU,OAAO,YAAY,eAAe;AAAA,EAI7D,IAAI,UAAU,OAAO,YAAY,UAAU,EAAE,aAAa,QAAQ;AAAA,EAIlE,UAAU,UAAU,KAAK,YAAY,uCAAuC;AAAA,EAI5E,YAAY,UAAU,KAAK,YAAY,gEAAgE;AAAA,EAIvG,WAAW,UAAU,UAAU,CAAC,UAAU,QAAQ,UAAU,OAAO,CAAC,EAAE;AAAA,IACpE;AAAA,EACF;AAAA,EAIA,MAAM,UAAU,QAAQ,YAAY,+BAA+B;AAAA,EAInE,UAAU,UAAU,QAAQ,YAAY,4CAA4C;AAAA,EAIpF,YAAY,UAAU,MAAM,WAAW,EAAE,YAAY,oBAAoB;AAAA,EAIzE,MAAM,UAAU,MAAM,YAAY,EAAE,YAAY,oBAAoB;AAAA,EAIpE,MAAM,UAAU,MAAM,CAAC,UAAU,QAAQ,CAAC,EAAE,YAAY,oBAAoB;AAAA,EAS5E,SAAS,UAAU,MAAM,cAAc,EAAE,YAAY,uBAAuB;AAAA,EAI5E,UAAU,UAAU,UAAU,CAAC,UAAU,MAAM,UAAU,MAAM,EAAE,SAAS,UAAU,IAAI,CAAC,CAAC,CAAC,EAAE;AAAA,IAC3F;AAAA,EACF;AAAA,EAIA,QAAQ,UAAU,KAAK,YAAY,6DAA6D;AAAA,EAKhG,QAAQ,UAAU,MAAM,CAAC,WAAW,WAAW,UAAU,MAAM,CAAC,EAAE;AAAA,IAChE;AAAA,EACF;AAAA,EAIA,gBAAgB,UAAU,OAAO,YAAY,oCAAoC;AAAA,EAIjF,SAAS,UAAU,KAAK,YAAY,gEAAgE;AAAA,EAIpG,YAAY,UAAU,KAAK,YAAY,oEAAoE;AAC7G;",
4
+ "sourcesContent": ["import * as React from 'react';\nexport { React };\n", "/* eslint-disable no-unused-vars */\n\nimport { PropTypes } from '@elliemae/ds-props-helpers';\nimport { dsBasicSizes } from '@elliemae/ds-shared';\nimport { buttonTypes, buttonVariants } from './constants.js';\n\nexport const btnPropTypes = {\n /**\n * Tab index\n */\n tabIndex: PropTypes.number.description('Tab index'),\n /**\n * Additional className\n */\n className: PropTypes.string.description('Additional className'),\n /**\n * aria disabled\n */\n 'aria-disabled': PropTypes.string.description('aria disabled'),\n /**\n * Html tag. default 'button'\n */\n as: PropTypes.string.description('Html tag').defaultValue('button'),\n /**\n * Whether the button is disabled or not\n */\n disabled: PropTypes.bool.description('Whether the button is disabled or not'),\n /**\n * Make the content of the button fit the button container or not\n */\n fluidWidth: PropTypes.bool.description('Make the content of the button fit the button container or not'),\n /**\n * Displayable label inside the button\n */\n labelText: PropTypes.oneOfType([PropTypes.string, PropTypes.element]).description(\n 'Displayable label inside the button',\n ),\n /**\n * Put an icon inside the button\n */\n icon: PropTypes.element.description('Put an icon inside the button'),\n /**\n * Put an icon on the left side of the button\n */\n leftIcon: PropTypes.element.description('Put an icon on the left side of the button'),\n /**\n * ['primary', 'secondary', 'text', 'link']\n */\n buttonType: PropTypes.oneOf(buttonTypes).description('type of the button'),\n /**\n * ['s', 'm', 'l']\n */\n size: PropTypes.oneOf(dsBasicSizes).description('size of the button'),\n /**\n * submit or button\n */\n type: PropTypes.oneOf(['button', 'submit']).description('type of the button'),\n /**\n * [\n * 'variant-default',\n * 'variant-focus',\n * 'variant-active',\n * 'variant-disabled',\n * ]\n */\n variant: PropTypes.oneOf(buttonVariants).description('variant of the button'),\n /**\n * Refence\n */\n innerRef: PropTypes.oneOfType([PropTypes.func, PropTypes.shape({ current: PropTypes.any })]).description(\n 'reference to the component',\n ),\n /**\n * Onblur callback\n */\n onBlur: PropTypes.func.description('Allows a function that is triggered once the button is blur'),\n /**\n * Apply intent color: ['success', 'warning', 'danger', 'info']\n * Only valid with buttonType=\"text\"\n */\n intent: PropTypes.oneOf(['success', 'warning', 'danger', 'info']).description(\n 'Apply intent color. Only valid with buttonType=\"text\"',\n ),\n /**\n * additional props for the container\n */\n containerProps: PropTypes.object.description('additional props for the container'),\n /**\n * Allows a function that is triggered once the button is clicked\n */\n onClick: PropTypes.func.description('Allows a function that is triggered once the button is clicked'),\n /**\n * Allows a function that is triggered once the button is key pressed\n */\n onKeyPress: PropTypes.func.description('Allows a function that is triggered once the button is key pressed'),\n};\n"],
5
+ "mappings": "AAAA,YAAY,WAAW;ACEvB,SAAS,iBAAiB;AAC1B,SAAS,oBAAoB;AAC7B,SAAS,aAAa,sBAAsB;AAErC,MAAM,eAAe;AAAA;AAAA;AAAA;AAAA,EAI1B,UAAU,UAAU,OAAO,YAAY,WAAW;AAAA;AAAA;AAAA;AAAA,EAIlD,WAAW,UAAU,OAAO,YAAY,sBAAsB;AAAA;AAAA;AAAA;AAAA,EAI9D,iBAAiB,UAAU,OAAO,YAAY,eAAe;AAAA;AAAA;AAAA;AAAA,EAI7D,IAAI,UAAU,OAAO,YAAY,UAAU,EAAE,aAAa,QAAQ;AAAA;AAAA;AAAA;AAAA,EAIlE,UAAU,UAAU,KAAK,YAAY,uCAAuC;AAAA;AAAA;AAAA;AAAA,EAI5E,YAAY,UAAU,KAAK,YAAY,gEAAgE;AAAA;AAAA;AAAA;AAAA,EAIvG,WAAW,UAAU,UAAU,CAAC,UAAU,QAAQ,UAAU,OAAO,CAAC,EAAE;AAAA,IACpE;AAAA,EACF;AAAA;AAAA;AAAA;AAAA,EAIA,MAAM,UAAU,QAAQ,YAAY,+BAA+B;AAAA;AAAA;AAAA;AAAA,EAInE,UAAU,UAAU,QAAQ,YAAY,4CAA4C;AAAA;AAAA;AAAA;AAAA,EAIpF,YAAY,UAAU,MAAM,WAAW,EAAE,YAAY,oBAAoB;AAAA;AAAA;AAAA;AAAA,EAIzE,MAAM,UAAU,MAAM,YAAY,EAAE,YAAY,oBAAoB;AAAA;AAAA;AAAA;AAAA,EAIpE,MAAM,UAAU,MAAM,CAAC,UAAU,QAAQ,CAAC,EAAE,YAAY,oBAAoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAS5E,SAAS,UAAU,MAAM,cAAc,EAAE,YAAY,uBAAuB;AAAA;AAAA;AAAA;AAAA,EAI5E,UAAU,UAAU,UAAU,CAAC,UAAU,MAAM,UAAU,MAAM,EAAE,SAAS,UAAU,IAAI,CAAC,CAAC,CAAC,EAAE;AAAA,IAC3F;AAAA,EACF;AAAA;AAAA;AAAA;AAAA,EAIA,QAAQ,UAAU,KAAK,YAAY,6DAA6D;AAAA;AAAA;AAAA;AAAA;AAAA,EAKhG,QAAQ,UAAU,MAAM,CAAC,WAAW,WAAW,UAAU,MAAM,CAAC,EAAE;AAAA,IAChE;AAAA,EACF;AAAA;AAAA;AAAA;AAAA,EAIA,gBAAgB,UAAU,OAAO,YAAY,oCAAoC;AAAA;AAAA;AAAA;AAAA,EAIjF,SAAS,UAAU,KAAK,YAAY,gEAAgE;AAAA;AAAA;AAAA;AAAA,EAIpG,YAAY,UAAU,KAAK,YAAY,oEAAoE;AAC7G;",
6
6
  "names": []
7
7
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elliemae/ds-button-v1",
3
- "version": "3.16.0",
3
+ "version": "3.16.1-rc.10",
4
4
  "license": "MIT",
5
5
  "description": "ICE MT - Dimsum - Button V 1",
6
6
  "files": [
@@ -51,18 +51,20 @@
51
51
  "indent": 4
52
52
  },
53
53
  "dependencies": {
54
- "@elliemae/ds-classnames": "3.16.0",
55
- "@elliemae/ds-props-helpers": "3.16.0",
56
- "@elliemae/ds-utilities": "3.16.0",
57
- "@elliemae/ds-shared": "3.16.0"
54
+ "@elliemae/ds-classnames": "3.16.1-rc.10",
55
+ "@elliemae/ds-props-helpers": "3.16.1-rc.10",
56
+ "@elliemae/ds-shared": "3.16.1-rc.10",
57
+ "@elliemae/ds-utilities": "3.16.1-rc.10"
58
58
  },
59
59
  "devDependencies": {
60
- "@testing-library/jest-dom": "~5.16.4",
61
- "@testing-library/react": "~12.1.3"
60
+ "@testing-library/jest-dom": "~5.16.5",
61
+ "@testing-library/react": "~12.1.3",
62
+ "styled-components": "~5.3.9"
62
63
  },
63
64
  "peerDependencies": {
64
65
  "react": "^17.0.2",
65
- "react-dom": "^17.0.2"
66
+ "react-dom": "^17.0.2",
67
+ "styled-components": "~5.3.6"
66
68
  },
67
69
  "publishConfig": {
68
70
  "access": "public",
@@ -72,9 +74,9 @@
72
74
  "dev": "cross-env NODE_ENV=development node ../../scripts/build/build.mjs --watch",
73
75
  "test": "node ../../scripts/testing/test.mjs",
74
76
  "lint": "node ../../scripts/lint.mjs --fix",
75
- "eslint:fix": "eslint --ext='.js,.jsx,.test.js,.ts,.tsx' --fix --config='../../.eslintrc.js' src/",
76
- "dts": "node ../../scripts/dts.mjs",
77
- "dts:withdeps": "pnpm --filter {.}... dts",
77
+ "eslint:fix": "exit 0",
78
+ "dts": "exit 0",
79
+ "dts:withdeps": "exit 0",
78
80
  "build": "cross-env NODE_ENV=production node ../../scripts/build/build.mjs",
79
81
  "dev:build": "pnpm --filter {.}... build",
80
82
  "dev:install": "pnpm --filter {.}... i --no-lockfile && pnpm run dev:build",
@@ -1,68 +0,0 @@
1
- import React from 'react';
2
- import { BUTTON_TYPE, BUTTON_SIZE, BUTTON_VARIANT } from './constants';
3
- interface ButtonPropsT {
4
- [x: string]: unknown;
5
- disabled?: boolean;
6
- fluidWidth?: boolean;
7
- innerRef?: unknown;
8
- buttonType?: (typeof BUTTON_TYPE)[keyof typeof BUTTON_TYPE];
9
- size?: (typeof BUTTON_SIZE)[keyof typeof BUTTON_SIZE];
10
- variant?: (typeof BUTTON_VARIANT)[keyof typeof BUTTON_VARIANT];
11
- labelText?: string;
12
- icon?: JSX.Element;
13
- leftIcon?: JSX.Element;
14
- tabIndex?: number;
15
- intent?: 'success' | 'danger' | 'warning' | 'info';
16
- containerProps?: {
17
- [x: string]: unknown;
18
- };
19
- className?: string;
20
- as?: string | JSX.Element;
21
- type?: 'button' | 'text';
22
- onBlur?: React.FocusEventHandler<HTMLElement>;
23
- onClick?: (event: React.MouseEvent<HTMLElement> | React.KeyboardEvent<HTMLElement>) => void;
24
- onKeyPress?: React.KeyboardEventHandler<HTMLElement>;
25
- }
26
- declare const DSButton: {
27
- ({ innerRef, disabled, buttonType, fluidWidth, size, labelText, icon, onBlur, onClick, onKeyPress, leftIcon, tabIndex, variant, intent, containerProps, className, as: Component, type, ...rest }: ButtonPropsT): JSX.Element;
28
- defaultProps: {
29
- disabled: boolean;
30
- fluidWidth: boolean;
31
- labelText: string;
32
- icon: null;
33
- onBlur: () => null;
34
- onClick: () => null;
35
- onKeyPress: () => null;
36
- leftIcon: null;
37
- tabIndex: number;
38
- variant: "variant-default";
39
- containerProps: {};
40
- as: string;
41
- type: string;
42
- };
43
- propTypes: {
44
- tabIndex: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
45
- className: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
46
- 'aria-disabled': import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
47
- as: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
48
- disabled: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
49
- fluidWidth: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
50
- labelText: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
51
- icon: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
52
- leftIcon: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
53
- buttonType: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
54
- size: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
55
- type: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
56
- variant: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
57
- innerRef: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
58
- onBlur: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
59
- intent: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
60
- containerProps: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
61
- onClick: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
62
- onKeyPress: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
63
- };
64
- displayName: string;
65
- };
66
- declare const DSButtonWithSchema: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").DocumentedReactComponent<ButtonPropsT>;
67
- export { DSButton, DSButtonWithSchema };
68
- export default DSButton;
@@ -1,26 +0,0 @@
1
- export declare const BUTTON_TYPE: {
2
- PRIMARY: "primary";
3
- SECONDARY: "secondary";
4
- TEXT: "text";
5
- LINK: "link";
6
- };
7
- export declare const buttonTypes: readonly ["primary", "secondary", "text", "link"];
8
- export declare const BUTTON_SIZE: {
9
- S: "s";
10
- M: "m";
11
- L: "l";
12
- };
13
- export declare const BUTTON_INTENT: {
14
- DANGER: "danger";
15
- SUCCESS: "success";
16
- WARNING: "warning";
17
- INFO: "info";
18
- };
19
- export declare const BUTTON_VARIANT: {
20
- DEFAULT: "variant-default";
21
- FOCUS: "variant-focus";
22
- ACTIVE: "variant-active";
23
- DISABLED: "variant-disabled";
24
- HOVER: "variant-hover";
25
- };
26
- export declare const buttonVariants: readonly ["variant-default", "variant-focus", "variant-active", "variant-disabled", "variant-hover"];
@@ -1,15 +0,0 @@
1
- export declare const defaultProps: {
2
- disabled: boolean;
3
- fluidWidth: boolean;
4
- labelText: string;
5
- icon: null;
6
- onBlur: () => null;
7
- onClick: () => null;
8
- onKeyPress: () => null;
9
- leftIcon: null;
10
- tabIndex: number;
11
- variant: "variant-default";
12
- containerProps: {};
13
- as: string;
14
- type: string;
15
- };
@@ -1,3 +0,0 @@
1
- export * from './DSButton.js';
2
- export * from './constants';
3
- export { default } from './DSButton';
@@ -1,84 +0,0 @@
1
- export declare const btnPropTypes: {
2
- /**
3
- * Tab index
4
- */
5
- tabIndex: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
6
- /**
7
- * Additional className
8
- */
9
- className: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
10
- /**
11
- * aria disabled
12
- */
13
- 'aria-disabled': import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
14
- /**
15
- * Html tag. default 'button'
16
- */
17
- as: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
18
- /**
19
- * Whether the button is disabled or not
20
- */
21
- disabled: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
22
- /**
23
- * Make the content of the button fit the button container or not
24
- */
25
- fluidWidth: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
26
- /**
27
- * Displayable label inside the button
28
- */
29
- labelText: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
30
- /**
31
- * Put an icon inside the button
32
- */
33
- icon: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
34
- /**
35
- * Put an icon on the left side of the button
36
- */
37
- leftIcon: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
38
- /**
39
- * ['primary', 'secondary', 'text', 'link']
40
- */
41
- buttonType: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
42
- /**
43
- * ['s', 'm', 'l']
44
- */
45
- size: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
46
- /**
47
- * submit or button
48
- */
49
- type: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
50
- /**
51
- * [
52
- * 'variant-default',
53
- * 'variant-focus',
54
- * 'variant-active',
55
- * 'variant-disabled',
56
- * ]
57
- */
58
- variant: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
59
- /**
60
- * Refence
61
- */
62
- innerRef: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
63
- /**
64
- * Onblur callback
65
- */
66
- onBlur: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
67
- /**
68
- * Apply intent color: ['success', 'warning', 'danger', 'info']
69
- * Only valid with buttonType="text"
70
- */
71
- intent: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
72
- /**
73
- * additional props for the container
74
- */
75
- containerProps: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
76
- /**
77
- * Allows a function that is triggered once the button is clicked
78
- */
79
- onClick: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
80
- /**
81
- * Allows a function that is triggered once the button is key pressed
82
- */
83
- onKeyPress: import("@elliemae/ds-props-helpers/dist/types/propTypes/types").ReactDescT;
84
- };
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};