{"version":3,"file":"actionButtons.mjs","names":[],"sources":["../../../../package/common/actionButtons/actionButtons.tsx"],"sourcesContent":["import cx from 'classnames';\n\nimport styles from './actionButtons.module.pcss';\nimport Button, { ButtonStyleType, ButtonType } from '../button';\nimport { useComponentDefaults, useLabels } from '../configProvider';\nimport { ActionButtonsProps } from './actionButtons.types';\nimport type { ActionButtonsLabels } from './actionButtons.types';\nimport { ThemeColor } from '../themeProvider/color.types';\n\nconst DEFAULT_LABELS: Required<ActionButtonsLabels> = {\n  submit: 'Save',\n  cancel: 'Cancel',\n};\n\nexport default function ActionButtons(props: ActionButtonsProps) {\n  const {\n    onSubmit = () => null,\n    onClose = () => null,\n    labels,\n    submitButtonStyle = ButtonStyleType.Filled,\n    submitButtonColor = ThemeColor.Primary,\n    isSubmitButtonLoading = false,\n    isSubmitButtonDisabled = false,\n    submitButtonIcon = undefined,\n    cancelButtonStyle = ButtonStyleType.Outlined,\n    cancelButtonColor = ThemeColor.Primary,\n    isCancelButtonLoading = false,\n    isCancelButtonDisabled = false,\n    cancelButtonIcon = undefined,\n    hidePrimaryButton = false,\n    hideSecondaryButton = false,\n    noMargin = false,\n    stackButtons = false,\n    className,\n    style,\n    classNames,\n    styles: slotStyles,\n    ...rest\n  } = useComponentDefaults('ActionButtons', props);\n  const text = useLabels('ActionButtons', labels, DEFAULT_LABELS);\n  return (\n    <div\n      {...rest}\n      className={cx(\n        styles.actionButtons,\n        !noMargin && styles.actionButtonsMargin,\n        stackButtons && styles.actionButtonsStacked,\n        className,\n        classNames?.root,\n      )}\n      style={{ ...style, ...slotStyles?.root }}\n    >\n      {!hidePrimaryButton && (\n        <Button\n          isLoading={isSubmitButtonLoading}\n          disabled={isSubmitButtonDisabled}\n          styleType={submitButtonStyle}\n          color={submitButtonColor}\n          type={ButtonType.Submit}\n          onClick={onSubmit}\n          className={classNames?.submitButton}\n          style={slotStyles?.submitButton}\n          icon={submitButtonIcon}\n        >\n          {text.submit}\n        </Button>\n      )}\n      {!hideSecondaryButton && (\n        <Button\n          isLoading={isCancelButtonLoading}\n          disabled={isCancelButtonDisabled}\n          onClick={onClose}\n          styleType={cancelButtonStyle}\n          color={cancelButtonColor}\n          className={classNames?.cancelButton}\n          style={slotStyles?.cancelButton}\n          icon={cancelButtonIcon}\n        >\n          {text.cancel}\n        </Button>\n      )}\n    </div>\n  );\n}\n"],"mappings":"gcASA,IAAM,EAAgD,CACpD,OAAQ,OACR,OAAQ,QACV,EAEA,SAAwB,EAAc,EAA2B,CAC/D,GAAM,CACJ,eAAiB,KACjB,cAAgB,KAChB,SACA,oBAAoB,EAAgB,OACpC,oBAAoB,EAAW,QAC/B,wBAAwB,GACxB,yBAAyB,GACzB,mBAAmB,IAAA,GACnB,oBAAoB,EAAgB,SACpC,oBAAoB,EAAW,QAC/B,wBAAwB,GACxB,yBAAyB,GACzB,mBAAmB,IAAA,GACnB,oBAAoB,GACpB,sBAAsB,GACtB,WAAW,GACX,eAAe,GACf,YACA,QACA,aACA,OAAQ,EACR,GAAG,GACD,EAAqB,gBAAiB,CAAK,EACzC,EAAO,EAAU,gBAAiB,EAAQ,CAAc,EAC9D,OACE,EAAC,MAAD,CACE,GAAI,EACJ,UAAW,EACT,EAAO,cACP,CAAC,GAAY,EAAO,oBACpB,GAAgB,EAAO,qBACvB,EACA,GAAY,IACd,EACA,MAAO,CAAE,GAAG,EAAO,GAAG,GAAY,IAAK,EATzC,SAAA,CAWG,CAAC,GACA,EAAC,EAAD,CACE,UAAW,EACX,SAAU,EACV,UAAW,EACX,MAAO,EACP,KAAM,EAAW,OACjB,QAAS,EACT,UAAW,GAAY,aACvB,MAAO,GAAY,aACnB,KAAM,EAEL,SAAA,EAAK,MACA,CAAA,EAET,CAAC,GACA,EAAC,EAAD,CACE,UAAW,EACX,SAAU,EACV,QAAS,EACT,UAAW,EACX,MAAO,EACP,UAAW,GAAY,aACvB,MAAO,GAAY,aACnB,KAAM,EAEL,SAAA,EAAK,MACA,CAAA,CAEP,GAET"}