@entur/button 3.0.5 → 3.0.7

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.
@@ -287,6 +287,15 @@ var IconButton = /*#__PURE__*/React__default["default"].forwardRef(function (_re
287
287
  loading = _ref.loading,
288
288
  rest = _objectWithoutPropertiesLoose(_ref, _excluded);
289
289
  var Element = as || defaultElement;
290
+ var IconWithAriaHidden = React__default["default"].Children.map(children, function (child) {
291
+ if (React__default["default"].isValidElement(child)) {
292
+ // @ts-expect-error aria-hidden does, in fact, exist
293
+ return React__default["default"].cloneElement(child, {
294
+ 'aria-hidden': true
295
+ });
296
+ }
297
+ return child;
298
+ });
290
299
  var iconButtonElement = React__default["default"].createElement(Element, _extends({
291
300
  className: classNames__default["default"]('eds-icon-button', className, {
292
301
  'eds-icon-button--disabled': disabled
@@ -295,7 +304,7 @@ var IconButton = /*#__PURE__*/React__default["default"].forwardRef(function (_re
295
304
  "aria-disabled": disabled,
296
305
  "aria-busy": loading,
297
306
  ref: ref
298
- }, rest), loading ? React__default["default"].createElement(loader.LoadingDots, null) : children);
307
+ }, rest), loading ? React__default["default"].createElement(loader.LoadingDots, null) : React__default["default"].createElement(React__default["default"].Fragment, null, IconWithAriaHidden));
299
308
  if (disabled) {
300
309
  return React__default["default"].createElement("div", {
301
310
  className: "eds-icon-button--disabled__wrapper"
@@ -1 +1 @@
1
- {"version":3,"file":"button.cjs.development.js","sources":["../src/Button.tsx","../src/PrimaryButton.tsx","../src/SecondaryButton.tsx","../src/SuccessButton.tsx","../src/NegativeButton.tsx","../src/TertiaryButton.tsx","../src/ButtonGroup.tsx","../src/FloatingButton.tsx","../src/BaseSquareButton.tsx","../src/SecondarySquareButton.tsx","../src/SuccessSquareButton.tsx","../src/TertiarySquareButton.tsx","../src/IconButton.tsx","../src/index.tsx"],"sourcesContent":["import * as React from 'react';\nimport cx from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './Button.scss';\n\ntype ButtonBaseProps = {\n /** Farge og uttrykk på knappen */\n variant: 'primary' | 'secondary' | 'success' | 'negative' | 'tertiary';\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n /**\n * Tekst som leses opp på skjermleser (nødvendig når knappetekst mangler)\n */\n 'aria-label'?: string;\n};\n\nconst defaultElement = 'button';\n\nexport type ButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, ButtonBaseProps>;\n\nexport type ButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: ButtonProps<T>,\n) => React.ReactElement | null;\n\nexport const Button: ButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n as,\n children,\n variant,\n size = 'medium',\n loading,\n className,\n disabled = false,\n width = 'auto',\n 'aria-label': ariaLabel,\n ...rest\n }: ButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const ariaLabelWhenLoading = childrenArray\n .filter(child => typeof child === 'string')\n .join(' ');\n\n const ariaLabelValue = () => {\n if (ariaLabel) return ariaLabel;\n if (loading) return ariaLabelWhenLoading;\n return undefined;\n };\n\n return (\n <Element\n className={cx(\n 'eds-button',\n {\n [`eds-button--variant-${variant}`]: variant,\n [`eds-button--size-${size}`]: size,\n 'eds-button--width-fluid': width === 'fluid',\n 'eds-button--loading': loading,\n 'eds-button--leading-icon': hasLeadingIcon,\n 'eds-button--trailing-icon': hasTrailingIcon,\n },\n className,\n )}\n ref={ref}\n aria-busy={loading}\n disabled={disabled}\n aria-disabled={disabled}\n aria-label={ariaLabelValue()}\n {...rest}\n >\n {loading ? (\n <LoadingDots className=\"eds-button__loading-dots\" />\n ) : (\n children\n )}\n </Element>\n );\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type PrimaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type PrimaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, PrimaryButtonBaseProps>;\n\nexport type PrimaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: PrimaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const PrimaryButton: PrimaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: PrimaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"primary\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type SecondaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type SecondaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SecondaryButtonBaseProps>;\n\nexport type SecondaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SecondaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SecondaryButton: SecondaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SecondaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"secondary\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type SuccessButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type SuccessButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SuccessButtonBaseProps>;\n\nexport type SuccessButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SuccessButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SuccessButton: SuccessButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SuccessButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"success\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type NegativeButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type NegativeButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, NegativeButtonBaseProps>;\n\nexport type NegativeButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: NegativeButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const NegativeButton: NegativeButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: NegativeButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"negative\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type TertiaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type TertiaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, TertiaryButtonBaseProps>;\n\nexport type TertiaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: TertiaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const TertiaryButton: TertiaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: TertiaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"tertiary\" />;\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport './ButtonGroup.scss';\n\nexport type ButtonGroupProps = {\n /** To eller flere Button-komponenter */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** HTML-elementet eller React-komponenten som lages\n * @default \"div\"\n */\n as?: string | React.ElementType;\n [key: string]: any;\n};\n\nexport const ButtonGroup: React.FC<ButtonGroupProps> = ({\n as: Element = 'div',\n className,\n ...rest\n}) => {\n return (\n <Element className={classNames('eds-button-group', className)} {...rest} />\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport './FloatingButton.scss';\n\nexport type FloatingButtonProps = {\n /** Beskrivende tekst for skjermlesere */\n 'aria-label': string;\n /** Ikon eller ikon-og-tekst */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Callback når knappen klikkes */\n onClick: (e: React.MouseEvent<HTMLButtonElement>) => void;\n /** Størrelse på knappen\n * @default \"medium\"\n */\n size?: 'medium' | 'small';\n [key: string]: any;\n} & React.ButtonHTMLAttributes<HTMLButtonElement>;\n\nexport const FloatingButton: React.FC<FloatingButtonProps> = ({\n className,\n children,\n size = 'medium',\n ...rest\n}) => {\n return (\n <button\n className={classNames(\n 'eds-floating-button',\n { 'eds-floating-button--extended': React.Children.count(children) > 1 },\n { 'eds-floating-button--small': size === 'small' },\n className,\n )}\n type=\"button\"\n {...rest}\n >\n {wrapStringsInSpans(children)}\n </button>\n );\n};\n\nconst wrapStringsInSpans = (children: React.ReactNode) =>\n React.Children.map(children, child =>\n typeof child === 'string' ? <span>{child}</span> : child,\n );\n","import * as React from 'react';\nimport classNames from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './BaseSquareButton.scss';\n\nexport type BaseSquareButtonBaseProps = {\n /** Tekst og ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** En type knapp */\n variant: 'success' | 'secondary' | 'tertiary';\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type BaseSquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, BaseSquareButtonBaseProps>;\n\nexport type BaseSquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: BaseSquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const BaseSquareButton: BaseSquareButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n children,\n className,\n variant,\n disabled = false,\n loading = false,\n as,\n ...rest\n }: BaseSquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n return (\n <Element\n className={classNames(\n 'eds-square-button',\n { 'eds-square-button--success': variant === 'success' },\n { 'eds-square-button--secondary': variant === 'secondary' },\n { 'eds-square-button--tertiary': variant === 'tertiary' },\n { 'eds-square-button--loading': loading },\n className,\n )}\n aria-busy={loading}\n disabled={disabled}\n aria-disabled={disabled}\n ref={ref}\n {...rest}\n >\n {React.Children.map(children, child => {\n if (typeof child === 'string') {\n return <span className=\"eds-square-button__label\">{child}</span>;\n }\n return (\n <span className=\"eds-square-button__icon\">\n {loading ? (\n <LoadingDots className=\"eds-square-button__loading-dots\" />\n ) : (\n child\n )}\n </span>\n );\n })}\n </Element>\n );\n },\n);\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype SecondarySquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type SecondarySquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SecondarySquareButtonBaseProps>;\n\nexport type SecondarySquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SecondarySquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SecondarySquareButton: SecondarySquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SecondarySquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton\n as={Element}\n ref={ref}\n {...props}\n variant=\"secondary\"\n />\n );\n },\n );\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype SuccessSquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type SuccessSquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SuccessSquareButtonBaseProps>;\n\nexport type SuccessSquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SuccessSquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SuccessSquareButton: SuccessSquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SuccessSquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton as={Element} ref={ref} {...props} variant=\"success\" />\n );\n },\n );\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype TertiarySquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type TertiarySquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, TertiarySquareButtonBaseProps>;\n\nexport type TertiarySquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: TertiarySquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const TertiarySquareButton: TertiarySquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: TertiarySquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton\n as={Element}\n ref={ref}\n {...props}\n variant=\"tertiary\"\n />\n );\n },\n );\n","import React from 'react';\nimport classNames from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './IconButton.scss';\n\nexport type IconButtonBaseProps = {\n /** Ikonet som du vil ha inne i knappen */\n children: React.ReactNode;\n /** Tekst som forklarer knappens handling. MÅ være satt hvis du ikke har en forklarende tooltip på knappen */\n 'aria-label'?: string;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** HTML-elementet eller React-komponenten som lager knappen\n * @default 'button'\n */\n as?: React.ElementType;\n /**Størrelsen på knappen\n * @default \"medium\"\n */\n size?: 'small' | 'medium';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nconst defaultElement = 'button';\n\nexport type IconButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, IconButtonBaseProps>;\n\nexport type IconButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: IconButtonProps<T>,\n) => React.ReactElement | null;\n\nexport const IconButton: IconButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n children,\n className,\n disabled = false,\n size,\n as,\n loading,\n ...rest\n }: IconButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n\n const iconButtonElement = (\n <Element\n className={classNames(\n 'eds-icon-button',\n className,\n {\n 'eds-icon-button--disabled': disabled,\n },\n `eds-icon-button--size-${size}`,\n )}\n disabled={disabled}\n aria-disabled={disabled}\n aria-busy={loading}\n ref={ref}\n {...rest}\n >\n {loading ? <LoadingDots /> : children}\n </Element>\n );\n\n if (disabled) {\n return (\n <div className=\"eds-icon-button--disabled__wrapper\">\n {iconButtonElement}\n </div>\n );\n }\n return <>{iconButtonElement}</>;\n },\n);\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('button');\n\nexport * from './Button';\nexport * from './PrimaryButton';\nexport * from './SecondaryButton';\nexport * from './SuccessButton';\nexport * from './NegativeButton';\nexport * from './TertiaryButton';\nexport * from './ButtonGroup';\nexport * from './FloatingButton';\nexport * from './SecondarySquareButton';\nexport * from './SuccessSquareButton';\nexport * from './TertiarySquareButton';\nexport * from './IconButton';\n"],"names":["defaultElement","Button","React","forwardRef","ref","as","children","variant","size","loading","className","disabled","width","ariaLabel","rest","_excluded","Element","childrenArray","Children","toArray","hasLeadingIcon","length","hasTrailingIcon","ariaLabelWhenLoading","filter","child","join","ariaLabelValue","undefined","cx","LoadingDots","PrimaryButton","props","SecondaryButton","SuccessButton","NegativeButton","TertiaryButton","ButtonGroup","createElement","classNames","FloatingButton","count","type","wrapStringsInSpans","map","BaseSquareButton","SecondarySquareButton","SuccessSquareButton","TertiarySquareButton","IconButton","iconButtonElement","Fragment","warnAboutMissingStyles"],"mappings":"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"}
1
+ {"version":3,"file":"button.cjs.development.js","sources":["../src/Button.tsx","../src/PrimaryButton.tsx","../src/SecondaryButton.tsx","../src/SuccessButton.tsx","../src/NegativeButton.tsx","../src/TertiaryButton.tsx","../src/ButtonGroup.tsx","../src/FloatingButton.tsx","../src/BaseSquareButton.tsx","../src/SecondarySquareButton.tsx","../src/SuccessSquareButton.tsx","../src/TertiarySquareButton.tsx","../src/IconButton.tsx","../src/index.tsx"],"sourcesContent":["import * as React from 'react';\nimport cx from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './Button.scss';\n\ntype ButtonBaseProps = {\n /** Farge og uttrykk på knappen */\n variant: 'primary' | 'secondary' | 'success' | 'negative' | 'tertiary';\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n /**\n * Tekst som leses opp på skjermleser (nødvendig når knappetekst mangler)\n */\n 'aria-label'?: string;\n};\n\nconst defaultElement = 'button';\n\nexport type ButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, ButtonBaseProps>;\n\nexport type ButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: ButtonProps<T>,\n) => React.ReactElement | null;\n\nexport const Button: ButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n as,\n children,\n variant,\n size = 'medium',\n loading,\n className,\n disabled = false,\n width = 'auto',\n 'aria-label': ariaLabel,\n ...rest\n }: ButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const ariaLabelWhenLoading = childrenArray\n .filter(child => typeof child === 'string')\n .join(' ');\n\n const ariaLabelValue = () => {\n if (ariaLabel) return ariaLabel;\n if (loading) return ariaLabelWhenLoading;\n return undefined;\n };\n\n return (\n <Element\n className={cx(\n 'eds-button',\n {\n [`eds-button--variant-${variant}`]: variant,\n [`eds-button--size-${size}`]: size,\n 'eds-button--width-fluid': width === 'fluid',\n 'eds-button--loading': loading,\n 'eds-button--leading-icon': hasLeadingIcon,\n 'eds-button--trailing-icon': hasTrailingIcon,\n },\n className,\n )}\n ref={ref}\n aria-busy={loading}\n disabled={disabled}\n aria-disabled={disabled}\n aria-label={ariaLabelValue()}\n {...rest}\n >\n {loading ? (\n <LoadingDots className=\"eds-button__loading-dots\" />\n ) : (\n children\n )}\n </Element>\n );\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type PrimaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type PrimaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, PrimaryButtonBaseProps>;\n\nexport type PrimaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: PrimaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const PrimaryButton: PrimaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: PrimaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"primary\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type SecondaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type SecondaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SecondaryButtonBaseProps>;\n\nexport type SecondaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SecondaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SecondaryButton: SecondaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SecondaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"secondary\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type SuccessButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type SuccessButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SuccessButtonBaseProps>;\n\nexport type SuccessButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SuccessButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SuccessButton: SuccessButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SuccessButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"success\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type NegativeButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type NegativeButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, NegativeButtonBaseProps>;\n\nexport type NegativeButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: NegativeButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const NegativeButton: NegativeButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: NegativeButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"negative\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type TertiaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type TertiaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, TertiaryButtonBaseProps>;\n\nexport type TertiaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: TertiaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const TertiaryButton: TertiaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: TertiaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"tertiary\" />;\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport './ButtonGroup.scss';\n\nexport type ButtonGroupProps = {\n /** To eller flere Button-komponenter */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** HTML-elementet eller React-komponenten som lages\n * @default \"div\"\n */\n as?: string | React.ElementType;\n [key: string]: any;\n};\n\nexport const ButtonGroup: React.FC<ButtonGroupProps> = ({\n as: Element = 'div',\n className,\n ...rest\n}) => {\n return (\n <Element className={classNames('eds-button-group', className)} {...rest} />\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport './FloatingButton.scss';\n\nexport type FloatingButtonProps = {\n /** Beskrivende tekst for skjermlesere */\n 'aria-label': string;\n /** Ikon eller ikon-og-tekst */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Callback når knappen klikkes */\n onClick: (e: React.MouseEvent<HTMLButtonElement>) => void;\n /** Størrelse på knappen\n * @default \"medium\"\n */\n size?: 'medium' | 'small';\n [key: string]: any;\n} & React.ButtonHTMLAttributes<HTMLButtonElement>;\n\nexport const FloatingButton: React.FC<FloatingButtonProps> = ({\n className,\n children,\n size = 'medium',\n ...rest\n}) => {\n return (\n <button\n className={classNames(\n 'eds-floating-button',\n { 'eds-floating-button--extended': React.Children.count(children) > 1 },\n { 'eds-floating-button--small': size === 'small' },\n className,\n )}\n type=\"button\"\n {...rest}\n >\n {wrapStringsInSpans(children)}\n </button>\n );\n};\n\nconst wrapStringsInSpans = (children: React.ReactNode) =>\n React.Children.map(children, child =>\n typeof child === 'string' ? <span>{child}</span> : child,\n );\n","import * as React from 'react';\nimport classNames from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './BaseSquareButton.scss';\n\nexport type BaseSquareButtonBaseProps = {\n /** Tekst og ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** En type knapp */\n variant: 'success' | 'secondary' | 'tertiary';\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type BaseSquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, BaseSquareButtonBaseProps>;\n\nexport type BaseSquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: BaseSquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const BaseSquareButton: BaseSquareButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n children,\n className,\n variant,\n disabled = false,\n loading = false,\n as,\n ...rest\n }: BaseSquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n return (\n <Element\n className={classNames(\n 'eds-square-button',\n { 'eds-square-button--success': variant === 'success' },\n { 'eds-square-button--secondary': variant === 'secondary' },\n { 'eds-square-button--tertiary': variant === 'tertiary' },\n { 'eds-square-button--loading': loading },\n className,\n )}\n aria-busy={loading}\n disabled={disabled}\n aria-disabled={disabled}\n ref={ref}\n {...rest}\n >\n {React.Children.map(children, child => {\n if (typeof child === 'string') {\n return <span className=\"eds-square-button__label\">{child}</span>;\n }\n return (\n <span className=\"eds-square-button__icon\">\n {loading ? (\n <LoadingDots className=\"eds-square-button__loading-dots\" />\n ) : (\n child\n )}\n </span>\n );\n })}\n </Element>\n );\n },\n);\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype SecondarySquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type SecondarySquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SecondarySquareButtonBaseProps>;\n\nexport type SecondarySquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SecondarySquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SecondarySquareButton: SecondarySquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SecondarySquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton\n as={Element}\n ref={ref}\n {...props}\n variant=\"secondary\"\n />\n );\n },\n );\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype SuccessSquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type SuccessSquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SuccessSquareButtonBaseProps>;\n\nexport type SuccessSquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SuccessSquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SuccessSquareButton: SuccessSquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SuccessSquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton as={Element} ref={ref} {...props} variant=\"success\" />\n );\n },\n );\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype TertiarySquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type TertiarySquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, TertiarySquareButtonBaseProps>;\n\nexport type TertiarySquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: TertiarySquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const TertiarySquareButton: TertiarySquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: TertiarySquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton\n as={Element}\n ref={ref}\n {...props}\n variant=\"tertiary\"\n />\n );\n },\n );\n","import React from 'react';\nimport classNames from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './IconButton.scss';\n\nexport type IconButtonBaseProps = {\n /** Ikonet som du vil ha inne i knappen */\n children: React.ReactNode;\n /** Tekst som forklarer knappens handling. MÅ være satt hvis du ikke har en forklarende tooltip på knappen */\n 'aria-label'?: string;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** HTML-elementet eller React-komponenten som lager knappen\n * @default 'button'\n */\n as?: React.ElementType;\n /**Størrelsen på knappen\n * @default \"medium\"\n */\n size?: 'small' | 'medium';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nconst defaultElement = 'button';\n\nexport type IconButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, IconButtonBaseProps>;\n\nexport type IconButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: IconButtonProps<T>,\n) => React.ReactElement | null;\n\nexport const IconButton: IconButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n children,\n className,\n disabled = false,\n size,\n as,\n loading,\n ...rest\n }: IconButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n\n const IconWithAriaHidden = React.Children.map(children, child => {\n if (React.isValidElement(child)) {\n // @ts-expect-error aria-hidden does, in fact, exist\n return React.cloneElement(child, { 'aria-hidden': true });\n }\n return child;\n });\n\n const iconButtonElement = (\n <Element\n className={classNames(\n 'eds-icon-button',\n className,\n {\n 'eds-icon-button--disabled': disabled,\n },\n `eds-icon-button--size-${size}`,\n )}\n disabled={disabled}\n aria-disabled={disabled}\n aria-busy={loading}\n ref={ref}\n {...rest}\n >\n {loading ? <LoadingDots /> : <>{IconWithAriaHidden}</>}\n </Element>\n );\n\n if (disabled) {\n return (\n <div className=\"eds-icon-button--disabled__wrapper\">\n {iconButtonElement}\n </div>\n );\n }\n return <>{iconButtonElement}</>;\n },\n);\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('button');\n\nexport * from './Button';\nexport * from './PrimaryButton';\nexport * from './SecondaryButton';\nexport * from './SuccessButton';\nexport * from './NegativeButton';\nexport * from './TertiaryButton';\nexport * from './ButtonGroup';\nexport * from './FloatingButton';\nexport * from './SecondarySquareButton';\nexport * from './SuccessSquareButton';\nexport * from './TertiarySquareButton';\nexport * from './IconButton';\n"],"names":["defaultElement","Button","React","forwardRef","ref","as","children","variant","size","loading","className","disabled","width","ariaLabel","rest","_excluded","Element","childrenArray","Children","toArray","hasLeadingIcon","length","hasTrailingIcon","ariaLabelWhenLoading","filter","child","join","ariaLabelValue","undefined","cx","LoadingDots","PrimaryButton","props","SecondaryButton","SuccessButton","NegativeButton","TertiaryButton","ButtonGroup","createElement","classNames","FloatingButton","count","type","wrapStringsInSpans","map","BaseSquareButton","SecondarySquareButton","SuccessSquareButton","TertiarySquareButton","IconButton","IconWithAriaHidden","isValidElement","cloneElement","iconButtonElement","Fragment","warnAboutMissingStyles"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@entur/utils"),t=require("react"),a=require("classnames"),r=require("@entur/loader");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function s(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(a){if("default"!==a){var r=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(t,a,r.get?r:{enumerable:!0,get:function(){return e[a]}})}})),t.default=e,t}var u=s(t),o=n(t),i=n(a);function d(){return d=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var r in a)Object.prototype.hasOwnProperty.call(a,r)&&(e[r]=a[r])}return e},d.apply(this,arguments)}function l(e,t){if(null==e)return{};var a,r,n={},s=Object.keys(e);for(r=0;r<s.length;r++)t.indexOf(a=s[r])>=0||(n[a]=e[a]);return n}var c=["as","children","variant","size","loading","className","disabled","width","aria-label"],f=u.forwardRef((function(e,t){var a,n=e.as,s=e.children,o=e.variant,f=e.size,b=void 0===f?"medium":f,m=e.loading,v=e.className,g=e.disabled,p=void 0!==g&&g,y=e.width,h=void 0===y?"auto":y,E=e["aria-label"],N=l(e,c),w=n||"button",q=u.Children.toArray(s),x=q.length>1&&"string"!=typeof q[0],_=q.length>1&&"string"!=typeof q[q.length-1],B=q.filter((function(e){return"string"==typeof e})).join(" ");return u.createElement(w,d({className:i.default("eds-button",(a={},a["eds-button--variant-"+o]=o,a["eds-button--size-"+b]=b,a["eds-button--width-fluid"]="fluid"===h,a["eds-button--loading"]=m,a["eds-button--leading-icon"]=x,a["eds-button--trailing-icon"]=_,a),v),ref:t,"aria-busy":m,disabled:p,"aria-disabled":p,"aria-label":E||(m?B:void 0)},N),m?u.createElement(r.LoadingDots,{className:"eds-button__loading-dots"}):s)})),b=o.default.forwardRef((function(e,t){return o.default.createElement(f,d({as:e.as||"button"},e,{ref:t,variant:"primary"}))})),m=o.default.forwardRef((function(e,t){return o.default.createElement(f,d({as:e.as||"button"},e,{ref:t,variant:"secondary"}))})),v=o.default.forwardRef((function(e,t){return o.default.createElement(f,d({as:e.as||"button"},e,{ref:t,variant:"success"}))})),g=o.default.forwardRef((function(e,t){return o.default.createElement(f,d({as:e.as||"button"},e,{ref:t,variant:"negative"}))})),p=o.default.forwardRef((function(e,t){return o.default.createElement(f,d({as:e.as||"button"},e,{ref:t,variant:"tertiary"}))})),y=["as","className"],h=["className","children","size"],E=["children","className","variant","disabled","loading","as"],N=u.forwardRef((function(e,t){var a=e.children,n=e.className,s=e.variant,o=e.disabled,c=void 0!==o&&o,f=e.loading,b=void 0!==f&&f,m=e.as,v=l(e,E);return u.createElement(m||"button",d({className:i.default("eds-square-button",{"eds-square-button--success":"success"===s},{"eds-square-button--secondary":"secondary"===s},{"eds-square-button--tertiary":"tertiary"===s},{"eds-square-button--loading":b},n),"aria-busy":b,disabled:c,"aria-disabled":c,ref:t},v),u.Children.map(a,(function(e){return"string"==typeof e?u.createElement("span",{className:"eds-square-button__label"},e):u.createElement("span",{className:"eds-square-button__icon"},b?u.createElement(r.LoadingDots,{className:"eds-square-button__loading-dots"}):e)})))})),w=o.default.forwardRef((function(e,t){return o.default.createElement(N,d({as:e.as||"button",ref:t},e,{variant:"secondary"}))})),q=o.default.forwardRef((function(e,t){return o.default.createElement(N,d({as:e.as||"button",ref:t},e,{variant:"success"}))})),x=o.default.forwardRef((function(e,t){return o.default.createElement(N,d({as:e.as||"button",ref:t},e,{variant:"tertiary"}))})),_=["children","className","disabled","size","as","loading"],B=o.default.forwardRef((function(e,t){var a=e.children,n=e.className,s=e.disabled,u=void 0!==s&&s,c=e.size,f=e.as,b=e.loading,m=l(e,_),v=o.default.createElement(f||"button",d({className:i.default("eds-icon-button",n,{"eds-icon-button--disabled":u},"eds-icon-button--size-"+c),disabled:u,"aria-disabled":u,"aria-busy":b,ref:t},m),b?o.default.createElement(r.LoadingDots,null):a);return u?o.default.createElement("div",{className:"eds-icon-button--disabled__wrapper"},v):o.default.createElement(o.default.Fragment,null,v)}));e.warnAboutMissingStyles("button"),exports.Button=f,exports.ButtonGroup=function(e){var t=e.as,a=void 0===t?"div":t,r=e.className,n=l(e,y);return o.default.createElement(a,d({className:i.default("eds-button-group",r)},n))},exports.FloatingButton=function(e){var t=e.className,a=e.children,r=e.size,n=void 0===r?"medium":r,s=l(e,h);return o.default.createElement("button",d({className:i.default("eds-floating-button",{"eds-floating-button--extended":o.default.Children.count(a)>1},{"eds-floating-button--small":"small"===n},t),type:"button"},s),function(e){return o.default.Children.map(e,(function(e){return"string"==typeof e?o.default.createElement("span",null,e):e}))}(a))},exports.IconButton=B,exports.NegativeButton=g,exports.PrimaryButton=b,exports.SecondaryButton=m,exports.SecondarySquareButton=w,exports.SuccessButton=v,exports.SuccessSquareButton=q,exports.TertiaryButton=p,exports.TertiarySquareButton=x;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@entur/utils"),t=require("react"),a=require("classnames"),n=require("@entur/loader");function r(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}function s(e){if(e&&e.__esModule)return e;var t=Object.create(null);return e&&Object.keys(e).forEach((function(a){if("default"!==a){var n=Object.getOwnPropertyDescriptor(e,a);Object.defineProperty(t,a,n.get?n:{enumerable:!0,get:function(){return e[a]}})}})),t.default=e,t}var u=s(t),l=r(t),o=r(a);function d(){return d=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var n in a)Object.prototype.hasOwnProperty.call(a,n)&&(e[n]=a[n])}return e},d.apply(this,arguments)}function i(e,t){if(null==e)return{};var a,n,r={},s=Object.keys(e);for(n=0;n<s.length;n++)t.indexOf(a=s[n])>=0||(r[a]=e[a]);return r}var f=["as","children","variant","size","loading","className","disabled","width","aria-label"],c=u.forwardRef((function(e,t){var a,r=e.as,s=e.children,l=e.variant,c=e.size,b=void 0===c?"medium":c,m=e.loading,v=e.className,g=e.disabled,p=void 0!==g&&g,y=e.width,h=void 0===y?"auto":y,E=e["aria-label"],N=i(e,f),w=r||"button",q=u.Children.toArray(s),x=q.length>1&&"string"!=typeof q[0],_=q.length>1&&"string"!=typeof q[q.length-1],B=q.filter((function(e){return"string"==typeof e})).join(" ");return u.createElement(w,d({className:o.default("eds-button",(a={},a["eds-button--variant-"+l]=l,a["eds-button--size-"+b]=b,a["eds-button--width-fluid"]="fluid"===h,a["eds-button--loading"]=m,a["eds-button--leading-icon"]=x,a["eds-button--trailing-icon"]=_,a),v),ref:t,"aria-busy":m,disabled:p,"aria-disabled":p,"aria-label":E||(m?B:void 0)},N),m?u.createElement(n.LoadingDots,{className:"eds-button__loading-dots"}):s)})),b=l.default.forwardRef((function(e,t){return l.default.createElement(c,d({as:e.as||"button"},e,{ref:t,variant:"primary"}))})),m=l.default.forwardRef((function(e,t){return l.default.createElement(c,d({as:e.as||"button"},e,{ref:t,variant:"secondary"}))})),v=l.default.forwardRef((function(e,t){return l.default.createElement(c,d({as:e.as||"button"},e,{ref:t,variant:"success"}))})),g=l.default.forwardRef((function(e,t){return l.default.createElement(c,d({as:e.as||"button"},e,{ref:t,variant:"negative"}))})),p=l.default.forwardRef((function(e,t){return l.default.createElement(c,d({as:e.as||"button"},e,{ref:t,variant:"tertiary"}))})),y=["as","className"],h=["className","children","size"],E=["children","className","variant","disabled","loading","as"],N=u.forwardRef((function(e,t){var a=e.children,r=e.className,s=e.variant,l=e.disabled,f=void 0!==l&&l,c=e.loading,b=void 0!==c&&c,m=e.as,v=i(e,E);return u.createElement(m||"button",d({className:o.default("eds-square-button",{"eds-square-button--success":"success"===s},{"eds-square-button--secondary":"secondary"===s},{"eds-square-button--tertiary":"tertiary"===s},{"eds-square-button--loading":b},r),"aria-busy":b,disabled:f,"aria-disabled":f,ref:t},v),u.Children.map(a,(function(e){return"string"==typeof e?u.createElement("span",{className:"eds-square-button__label"},e):u.createElement("span",{className:"eds-square-button__icon"},b?u.createElement(n.LoadingDots,{className:"eds-square-button__loading-dots"}):e)})))})),w=l.default.forwardRef((function(e,t){return l.default.createElement(N,d({as:e.as||"button",ref:t},e,{variant:"secondary"}))})),q=l.default.forwardRef((function(e,t){return l.default.createElement(N,d({as:e.as||"button",ref:t},e,{variant:"success"}))})),x=l.default.forwardRef((function(e,t){return l.default.createElement(N,d({as:e.as||"button",ref:t},e,{variant:"tertiary"}))})),_=["children","className","disabled","size","as","loading"],B=l.default.forwardRef((function(e,t){var a=e.children,r=e.className,s=e.disabled,u=void 0!==s&&s,f=e.size,c=e.as,b=e.loading,m=i(e,_),v=c||"button",g=l.default.Children.map(a,(function(e){return l.default.isValidElement(e)?l.default.cloneElement(e,{"aria-hidden":!0}):e})),p=l.default.createElement(v,d({className:o.default("eds-icon-button",r,{"eds-icon-button--disabled":u},"eds-icon-button--size-"+f),disabled:u,"aria-disabled":u,"aria-busy":b,ref:t},m),b?l.default.createElement(n.LoadingDots,null):l.default.createElement(l.default.Fragment,null,g));return u?l.default.createElement("div",{className:"eds-icon-button--disabled__wrapper"},p):l.default.createElement(l.default.Fragment,null,p)}));e.warnAboutMissingStyles("button"),exports.Button=c,exports.ButtonGroup=function(e){var t=e.as,a=void 0===t?"div":t,n=e.className,r=i(e,y);return l.default.createElement(a,d({className:o.default("eds-button-group",n)},r))},exports.FloatingButton=function(e){var t=e.className,a=e.children,n=e.size,r=void 0===n?"medium":n,s=i(e,h);return l.default.createElement("button",d({className:o.default("eds-floating-button",{"eds-floating-button--extended":l.default.Children.count(a)>1},{"eds-floating-button--small":"small"===r},t),type:"button"},s),function(e){return l.default.Children.map(e,(function(e){return"string"==typeof e?l.default.createElement("span",null,e):e}))}(a))},exports.IconButton=B,exports.NegativeButton=g,exports.PrimaryButton=b,exports.SecondaryButton=m,exports.SecondarySquareButton=w,exports.SuccessButton=v,exports.SuccessSquareButton=q,exports.TertiaryButton=p,exports.TertiarySquareButton=x;
2
2
  //# sourceMappingURL=button.cjs.production.min.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"button.cjs.production.min.js","sources":["../src/Button.tsx","../src/PrimaryButton.tsx","../src/SecondaryButton.tsx","../src/SuccessButton.tsx","../src/NegativeButton.tsx","../src/TertiaryButton.tsx","../src/BaseSquareButton.tsx","../src/SecondarySquareButton.tsx","../src/SuccessSquareButton.tsx","../src/TertiarySquareButton.tsx","../src/IconButton.tsx","../src/index.tsx","../src/ButtonGroup.tsx","../src/FloatingButton.tsx"],"sourcesContent":["import * as React from 'react';\nimport cx from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './Button.scss';\n\ntype ButtonBaseProps = {\n /** Farge og uttrykk på knappen */\n variant: 'primary' | 'secondary' | 'success' | 'negative' | 'tertiary';\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n /**\n * Tekst som leses opp på skjermleser (nødvendig når knappetekst mangler)\n */\n 'aria-label'?: string;\n};\n\nconst defaultElement = 'button';\n\nexport type ButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, ButtonBaseProps>;\n\nexport type ButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: ButtonProps<T>,\n) => React.ReactElement | null;\n\nexport const Button: ButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n as,\n children,\n variant,\n size = 'medium',\n loading,\n className,\n disabled = false,\n width = 'auto',\n 'aria-label': ariaLabel,\n ...rest\n }: ButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const ariaLabelWhenLoading = childrenArray\n .filter(child => typeof child === 'string')\n .join(' ');\n\n const ariaLabelValue = () => {\n if (ariaLabel) return ariaLabel;\n if (loading) return ariaLabelWhenLoading;\n return undefined;\n };\n\n return (\n <Element\n className={cx(\n 'eds-button',\n {\n [`eds-button--variant-${variant}`]: variant,\n [`eds-button--size-${size}`]: size,\n 'eds-button--width-fluid': width === 'fluid',\n 'eds-button--loading': loading,\n 'eds-button--leading-icon': hasLeadingIcon,\n 'eds-button--trailing-icon': hasTrailingIcon,\n },\n className,\n )}\n ref={ref}\n aria-busy={loading}\n disabled={disabled}\n aria-disabled={disabled}\n aria-label={ariaLabelValue()}\n {...rest}\n >\n {loading ? (\n <LoadingDots className=\"eds-button__loading-dots\" />\n ) : (\n children\n )}\n </Element>\n );\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type PrimaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type PrimaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, PrimaryButtonBaseProps>;\n\nexport type PrimaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: PrimaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const PrimaryButton: PrimaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: PrimaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"primary\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type SecondaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type SecondaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SecondaryButtonBaseProps>;\n\nexport type SecondaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SecondaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SecondaryButton: SecondaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SecondaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"secondary\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type SuccessButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type SuccessButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SuccessButtonBaseProps>;\n\nexport type SuccessButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SuccessButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SuccessButton: SuccessButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SuccessButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"success\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type NegativeButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type NegativeButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, NegativeButtonBaseProps>;\n\nexport type NegativeButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: NegativeButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const NegativeButton: NegativeButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: NegativeButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"negative\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type TertiaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type TertiaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, TertiaryButtonBaseProps>;\n\nexport type TertiaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: TertiaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const TertiaryButton: TertiaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: TertiaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"tertiary\" />;\n },\n);\n","import * as React from 'react';\nimport classNames from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './BaseSquareButton.scss';\n\nexport type BaseSquareButtonBaseProps = {\n /** Tekst og ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** En type knapp */\n variant: 'success' | 'secondary' | 'tertiary';\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type BaseSquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, BaseSquareButtonBaseProps>;\n\nexport type BaseSquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: BaseSquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const BaseSquareButton: BaseSquareButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n children,\n className,\n variant,\n disabled = false,\n loading = false,\n as,\n ...rest\n }: BaseSquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n return (\n <Element\n className={classNames(\n 'eds-square-button',\n { 'eds-square-button--success': variant === 'success' },\n { 'eds-square-button--secondary': variant === 'secondary' },\n { 'eds-square-button--tertiary': variant === 'tertiary' },\n { 'eds-square-button--loading': loading },\n className,\n )}\n aria-busy={loading}\n disabled={disabled}\n aria-disabled={disabled}\n ref={ref}\n {...rest}\n >\n {React.Children.map(children, child => {\n if (typeof child === 'string') {\n return <span className=\"eds-square-button__label\">{child}</span>;\n }\n return (\n <span className=\"eds-square-button__icon\">\n {loading ? (\n <LoadingDots className=\"eds-square-button__loading-dots\" />\n ) : (\n child\n )}\n </span>\n );\n })}\n </Element>\n );\n },\n);\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype SecondarySquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type SecondarySquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SecondarySquareButtonBaseProps>;\n\nexport type SecondarySquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SecondarySquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SecondarySquareButton: SecondarySquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SecondarySquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton\n as={Element}\n ref={ref}\n {...props}\n variant=\"secondary\"\n />\n );\n },\n );\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype SuccessSquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type SuccessSquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SuccessSquareButtonBaseProps>;\n\nexport type SuccessSquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SuccessSquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SuccessSquareButton: SuccessSquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SuccessSquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton as={Element} ref={ref} {...props} variant=\"success\" />\n );\n },\n );\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype TertiarySquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type TertiarySquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, TertiarySquareButtonBaseProps>;\n\nexport type TertiarySquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: TertiarySquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const TertiarySquareButton: TertiarySquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: TertiarySquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton\n as={Element}\n ref={ref}\n {...props}\n variant=\"tertiary\"\n />\n );\n },\n );\n","import React from 'react';\nimport classNames from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './IconButton.scss';\n\nexport type IconButtonBaseProps = {\n /** Ikonet som du vil ha inne i knappen */\n children: React.ReactNode;\n /** Tekst som forklarer knappens handling. MÅ være satt hvis du ikke har en forklarende tooltip på knappen */\n 'aria-label'?: string;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** HTML-elementet eller React-komponenten som lager knappen\n * @default 'button'\n */\n as?: React.ElementType;\n /**Størrelsen på knappen\n * @default \"medium\"\n */\n size?: 'small' | 'medium';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nconst defaultElement = 'button';\n\nexport type IconButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, IconButtonBaseProps>;\n\nexport type IconButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: IconButtonProps<T>,\n) => React.ReactElement | null;\n\nexport const IconButton: IconButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n children,\n className,\n disabled = false,\n size,\n as,\n loading,\n ...rest\n }: IconButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n\n const iconButtonElement = (\n <Element\n className={classNames(\n 'eds-icon-button',\n className,\n {\n 'eds-icon-button--disabled': disabled,\n },\n `eds-icon-button--size-${size}`,\n )}\n disabled={disabled}\n aria-disabled={disabled}\n aria-busy={loading}\n ref={ref}\n {...rest}\n >\n {loading ? <LoadingDots /> : children}\n </Element>\n );\n\n if (disabled) {\n return (\n <div className=\"eds-icon-button--disabled__wrapper\">\n {iconButtonElement}\n </div>\n );\n }\n return <>{iconButtonElement}</>;\n },\n);\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('button');\n\nexport * from './Button';\nexport * from './PrimaryButton';\nexport * from './SecondaryButton';\nexport * from './SuccessButton';\nexport * from './NegativeButton';\nexport * from './TertiaryButton';\nexport * from './ButtonGroup';\nexport * from './FloatingButton';\nexport * from './SecondarySquareButton';\nexport * from './SuccessSquareButton';\nexport * from './TertiarySquareButton';\nexport * from './IconButton';\n","import React from 'react';\nimport classNames from 'classnames';\nimport './ButtonGroup.scss';\n\nexport type ButtonGroupProps = {\n /** To eller flere Button-komponenter */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** HTML-elementet eller React-komponenten som lages\n * @default \"div\"\n */\n as?: string | React.ElementType;\n [key: string]: any;\n};\n\nexport const ButtonGroup: React.FC<ButtonGroupProps> = ({\n as: Element = 'div',\n className,\n ...rest\n}) => {\n return (\n <Element className={classNames('eds-button-group', className)} {...rest} />\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport './FloatingButton.scss';\n\nexport type FloatingButtonProps = {\n /** Beskrivende tekst for skjermlesere */\n 'aria-label': string;\n /** Ikon eller ikon-og-tekst */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Callback når knappen klikkes */\n onClick: (e: React.MouseEvent<HTMLButtonElement>) => void;\n /** Størrelse på knappen\n * @default \"medium\"\n */\n size?: 'medium' | 'small';\n [key: string]: any;\n} & React.ButtonHTMLAttributes<HTMLButtonElement>;\n\nexport const FloatingButton: React.FC<FloatingButtonProps> = ({\n className,\n children,\n size = 'medium',\n ...rest\n}) => {\n return (\n <button\n className={classNames(\n 'eds-floating-button',\n { 'eds-floating-button--extended': React.Children.count(children) > 1 },\n { 'eds-floating-button--small': size === 'small' },\n className,\n )}\n type=\"button\"\n {...rest}\n >\n {wrapStringsInSpans(children)}\n </button>\n );\n};\n\nconst wrapStringsInSpans = (children: React.ReactNode) =>\n React.Children.map(children, child =>\n typeof child === 'string' ? <span>{child}</span> : child,\n );\n"],"names":["Button","React","forwardRef","ref","_cx","as","children","variant","_ref$size","_ref","size","loading","className","_ref$disabled","disabled","_ref$width","width","ariaLabel","rest","_objectWithoutPropertiesLoose","_excluded","Element","childrenArray","Children","toArray","hasLeadingIcon","length","hasTrailingIcon","ariaLabelWhenLoading","filter","child","join","_extends","cx","LoadingDots","PrimaryButton","props","SecondaryButton","SuccessButton","NegativeButton","TertiaryButton","BaseSquareButton","_ref$loading","createElement","classNames","map","SecondarySquareButton","SuccessSquareButton","TertiarySquareButton","IconButton","iconButtonElement","Fragment","warnAboutMissingStyles","_ref$as","count","type","wrapStringsInSpans"],"mappings":"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"}
1
+ {"version":3,"file":"button.cjs.production.min.js","sources":["../src/Button.tsx","../src/PrimaryButton.tsx","../src/SecondaryButton.tsx","../src/SuccessButton.tsx","../src/NegativeButton.tsx","../src/TertiaryButton.tsx","../src/BaseSquareButton.tsx","../src/SecondarySquareButton.tsx","../src/SuccessSquareButton.tsx","../src/TertiarySquareButton.tsx","../src/IconButton.tsx","../src/index.tsx","../src/ButtonGroup.tsx","../src/FloatingButton.tsx"],"sourcesContent":["import * as React from 'react';\nimport cx from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './Button.scss';\n\ntype ButtonBaseProps = {\n /** Farge og uttrykk på knappen */\n variant: 'primary' | 'secondary' | 'success' | 'negative' | 'tertiary';\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n /**\n * Tekst som leses opp på skjermleser (nødvendig når knappetekst mangler)\n */\n 'aria-label'?: string;\n};\n\nconst defaultElement = 'button';\n\nexport type ButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, ButtonBaseProps>;\n\nexport type ButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: ButtonProps<T>,\n) => React.ReactElement | null;\n\nexport const Button: ButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n as,\n children,\n variant,\n size = 'medium',\n loading,\n className,\n disabled = false,\n width = 'auto',\n 'aria-label': ariaLabel,\n ...rest\n }: ButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const ariaLabelWhenLoading = childrenArray\n .filter(child => typeof child === 'string')\n .join(' ');\n\n const ariaLabelValue = () => {\n if (ariaLabel) return ariaLabel;\n if (loading) return ariaLabelWhenLoading;\n return undefined;\n };\n\n return (\n <Element\n className={cx(\n 'eds-button',\n {\n [`eds-button--variant-${variant}`]: variant,\n [`eds-button--size-${size}`]: size,\n 'eds-button--width-fluid': width === 'fluid',\n 'eds-button--loading': loading,\n 'eds-button--leading-icon': hasLeadingIcon,\n 'eds-button--trailing-icon': hasTrailingIcon,\n },\n className,\n )}\n ref={ref}\n aria-busy={loading}\n disabled={disabled}\n aria-disabled={disabled}\n aria-label={ariaLabelValue()}\n {...rest}\n >\n {loading ? (\n <LoadingDots className=\"eds-button__loading-dots\" />\n ) : (\n children\n )}\n </Element>\n );\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type PrimaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type PrimaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, PrimaryButtonBaseProps>;\n\nexport type PrimaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: PrimaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const PrimaryButton: PrimaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: PrimaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"primary\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type SecondaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type SecondaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SecondaryButtonBaseProps>;\n\nexport type SecondaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SecondaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SecondaryButton: SecondaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SecondaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"secondary\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type SuccessButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type SuccessButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SuccessButtonBaseProps>;\n\nexport type SuccessButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SuccessButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SuccessButton: SuccessButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SuccessButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"success\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type NegativeButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type NegativeButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, NegativeButtonBaseProps>;\n\nexport type NegativeButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: NegativeButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const NegativeButton: NegativeButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: NegativeButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"negative\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type TertiaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type TertiaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, TertiaryButtonBaseProps>;\n\nexport type TertiaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: TertiaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const TertiaryButton: TertiaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: TertiaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"tertiary\" />;\n },\n);\n","import * as React from 'react';\nimport classNames from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './BaseSquareButton.scss';\n\nexport type BaseSquareButtonBaseProps = {\n /** Tekst og ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** En type knapp */\n variant: 'success' | 'secondary' | 'tertiary';\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type BaseSquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, BaseSquareButtonBaseProps>;\n\nexport type BaseSquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: BaseSquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const BaseSquareButton: BaseSquareButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n children,\n className,\n variant,\n disabled = false,\n loading = false,\n as,\n ...rest\n }: BaseSquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n return (\n <Element\n className={classNames(\n 'eds-square-button',\n { 'eds-square-button--success': variant === 'success' },\n { 'eds-square-button--secondary': variant === 'secondary' },\n { 'eds-square-button--tertiary': variant === 'tertiary' },\n { 'eds-square-button--loading': loading },\n className,\n )}\n aria-busy={loading}\n disabled={disabled}\n aria-disabled={disabled}\n ref={ref}\n {...rest}\n >\n {React.Children.map(children, child => {\n if (typeof child === 'string') {\n return <span className=\"eds-square-button__label\">{child}</span>;\n }\n return (\n <span className=\"eds-square-button__icon\">\n {loading ? (\n <LoadingDots className=\"eds-square-button__loading-dots\" />\n ) : (\n child\n )}\n </span>\n );\n })}\n </Element>\n );\n },\n);\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype SecondarySquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type SecondarySquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SecondarySquareButtonBaseProps>;\n\nexport type SecondarySquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SecondarySquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SecondarySquareButton: SecondarySquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SecondarySquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton\n as={Element}\n ref={ref}\n {...props}\n variant=\"secondary\"\n />\n );\n },\n );\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype SuccessSquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type SuccessSquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SuccessSquareButtonBaseProps>;\n\nexport type SuccessSquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SuccessSquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SuccessSquareButton: SuccessSquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SuccessSquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton as={Element} ref={ref} {...props} variant=\"success\" />\n );\n },\n );\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype TertiarySquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type TertiarySquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, TertiarySquareButtonBaseProps>;\n\nexport type TertiarySquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: TertiarySquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const TertiarySquareButton: TertiarySquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: TertiarySquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton\n as={Element}\n ref={ref}\n {...props}\n variant=\"tertiary\"\n />\n );\n },\n );\n","import React from 'react';\nimport classNames from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './IconButton.scss';\n\nexport type IconButtonBaseProps = {\n /** Ikonet som du vil ha inne i knappen */\n children: React.ReactNode;\n /** Tekst som forklarer knappens handling. MÅ være satt hvis du ikke har en forklarende tooltip på knappen */\n 'aria-label'?: string;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** HTML-elementet eller React-komponenten som lager knappen\n * @default 'button'\n */\n as?: React.ElementType;\n /**Størrelsen på knappen\n * @default \"medium\"\n */\n size?: 'small' | 'medium';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nconst defaultElement = 'button';\n\nexport type IconButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, IconButtonBaseProps>;\n\nexport type IconButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: IconButtonProps<T>,\n) => React.ReactElement | null;\n\nexport const IconButton: IconButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n children,\n className,\n disabled = false,\n size,\n as,\n loading,\n ...rest\n }: IconButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n\n const IconWithAriaHidden = React.Children.map(children, child => {\n if (React.isValidElement(child)) {\n // @ts-expect-error aria-hidden does, in fact, exist\n return React.cloneElement(child, { 'aria-hidden': true });\n }\n return child;\n });\n\n const iconButtonElement = (\n <Element\n className={classNames(\n 'eds-icon-button',\n className,\n {\n 'eds-icon-button--disabled': disabled,\n },\n `eds-icon-button--size-${size}`,\n )}\n disabled={disabled}\n aria-disabled={disabled}\n aria-busy={loading}\n ref={ref}\n {...rest}\n >\n {loading ? <LoadingDots /> : <>{IconWithAriaHidden}</>}\n </Element>\n );\n\n if (disabled) {\n return (\n <div className=\"eds-icon-button--disabled__wrapper\">\n {iconButtonElement}\n </div>\n );\n }\n return <>{iconButtonElement}</>;\n },\n);\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('button');\n\nexport * from './Button';\nexport * from './PrimaryButton';\nexport * from './SecondaryButton';\nexport * from './SuccessButton';\nexport * from './NegativeButton';\nexport * from './TertiaryButton';\nexport * from './ButtonGroup';\nexport * from './FloatingButton';\nexport * from './SecondarySquareButton';\nexport * from './SuccessSquareButton';\nexport * from './TertiarySquareButton';\nexport * from './IconButton';\n","import React from 'react';\nimport classNames from 'classnames';\nimport './ButtonGroup.scss';\n\nexport type ButtonGroupProps = {\n /** To eller flere Button-komponenter */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** HTML-elementet eller React-komponenten som lages\n * @default \"div\"\n */\n as?: string | React.ElementType;\n [key: string]: any;\n};\n\nexport const ButtonGroup: React.FC<ButtonGroupProps> = ({\n as: Element = 'div',\n className,\n ...rest\n}) => {\n return (\n <Element className={classNames('eds-button-group', className)} {...rest} />\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport './FloatingButton.scss';\n\nexport type FloatingButtonProps = {\n /** Beskrivende tekst for skjermlesere */\n 'aria-label': string;\n /** Ikon eller ikon-og-tekst */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Callback når knappen klikkes */\n onClick: (e: React.MouseEvent<HTMLButtonElement>) => void;\n /** Størrelse på knappen\n * @default \"medium\"\n */\n size?: 'medium' | 'small';\n [key: string]: any;\n} & React.ButtonHTMLAttributes<HTMLButtonElement>;\n\nexport const FloatingButton: React.FC<FloatingButtonProps> = ({\n className,\n children,\n size = 'medium',\n ...rest\n}) => {\n return (\n <button\n className={classNames(\n 'eds-floating-button',\n { 'eds-floating-button--extended': React.Children.count(children) > 1 },\n { 'eds-floating-button--small': size === 'small' },\n className,\n )}\n type=\"button\"\n {...rest}\n >\n {wrapStringsInSpans(children)}\n </button>\n );\n};\n\nconst wrapStringsInSpans = (children: React.ReactNode) =>\n React.Children.map(children, child =>\n typeof child === 'string' ? <span>{child}</span> : child,\n );\n"],"names":["Button","React","forwardRef","ref","_cx","as","children","variant","_ref$size","_ref","size","loading","className","_ref$disabled","disabled","_ref$width","width","ariaLabel","rest","_objectWithoutPropertiesLoose","_excluded","Element","childrenArray","Children","toArray","hasLeadingIcon","length","hasTrailingIcon","ariaLabelWhenLoading","filter","child","join","_extends","cx","LoadingDots","PrimaryButton","props","SecondaryButton","SuccessButton","NegativeButton","TertiaryButton","BaseSquareButton","_ref$loading","createElement","classNames","map","SecondarySquareButton","SuccessSquareButton","TertiarySquareButton","IconButton","IconWithAriaHidden","isValidElement","cloneElement","iconButtonElement","Fragment","warnAboutMissingStyles","_ref$as","count","type","wrapStringsInSpans"],"mappings":"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"}
@@ -260,6 +260,15 @@ var IconButton = /*#__PURE__*/React__default.forwardRef(function (_ref, ref) {
260
260
  loading = _ref.loading,
261
261
  rest = _objectWithoutPropertiesLoose(_ref, _excluded);
262
262
  var Element = as || defaultElement;
263
+ var IconWithAriaHidden = React__default.Children.map(children, function (child) {
264
+ if (React__default.isValidElement(child)) {
265
+ // @ts-expect-error aria-hidden does, in fact, exist
266
+ return React__default.cloneElement(child, {
267
+ 'aria-hidden': true
268
+ });
269
+ }
270
+ return child;
271
+ });
263
272
  var iconButtonElement = React__default.createElement(Element, _extends({
264
273
  className: classNames('eds-icon-button', className, {
265
274
  'eds-icon-button--disabled': disabled
@@ -268,7 +277,7 @@ var IconButton = /*#__PURE__*/React__default.forwardRef(function (_ref, ref) {
268
277
  "aria-disabled": disabled,
269
278
  "aria-busy": loading,
270
279
  ref: ref
271
- }, rest), loading ? React__default.createElement(LoadingDots, null) : children);
280
+ }, rest), loading ? React__default.createElement(LoadingDots, null) : React__default.createElement(React__default.Fragment, null, IconWithAriaHidden));
272
281
  if (disabled) {
273
282
  return React__default.createElement("div", {
274
283
  className: "eds-icon-button--disabled__wrapper"
@@ -1 +1 @@
1
- {"version":3,"file":"button.esm.js","sources":["../src/Button.tsx","../src/PrimaryButton.tsx","../src/SecondaryButton.tsx","../src/SuccessButton.tsx","../src/NegativeButton.tsx","../src/TertiaryButton.tsx","../src/ButtonGroup.tsx","../src/FloatingButton.tsx","../src/BaseSquareButton.tsx","../src/SecondarySquareButton.tsx","../src/SuccessSquareButton.tsx","../src/TertiarySquareButton.tsx","../src/IconButton.tsx","../src/index.tsx"],"sourcesContent":["import * as React from 'react';\nimport cx from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './Button.scss';\n\ntype ButtonBaseProps = {\n /** Farge og uttrykk på knappen */\n variant: 'primary' | 'secondary' | 'success' | 'negative' | 'tertiary';\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n /**\n * Tekst som leses opp på skjermleser (nødvendig når knappetekst mangler)\n */\n 'aria-label'?: string;\n};\n\nconst defaultElement = 'button';\n\nexport type ButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, ButtonBaseProps>;\n\nexport type ButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: ButtonProps<T>,\n) => React.ReactElement | null;\n\nexport const Button: ButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n as,\n children,\n variant,\n size = 'medium',\n loading,\n className,\n disabled = false,\n width = 'auto',\n 'aria-label': ariaLabel,\n ...rest\n }: ButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const ariaLabelWhenLoading = childrenArray\n .filter(child => typeof child === 'string')\n .join(' ');\n\n const ariaLabelValue = () => {\n if (ariaLabel) return ariaLabel;\n if (loading) return ariaLabelWhenLoading;\n return undefined;\n };\n\n return (\n <Element\n className={cx(\n 'eds-button',\n {\n [`eds-button--variant-${variant}`]: variant,\n [`eds-button--size-${size}`]: size,\n 'eds-button--width-fluid': width === 'fluid',\n 'eds-button--loading': loading,\n 'eds-button--leading-icon': hasLeadingIcon,\n 'eds-button--trailing-icon': hasTrailingIcon,\n },\n className,\n )}\n ref={ref}\n aria-busy={loading}\n disabled={disabled}\n aria-disabled={disabled}\n aria-label={ariaLabelValue()}\n {...rest}\n >\n {loading ? (\n <LoadingDots className=\"eds-button__loading-dots\" />\n ) : (\n children\n )}\n </Element>\n );\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type PrimaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type PrimaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, PrimaryButtonBaseProps>;\n\nexport type PrimaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: PrimaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const PrimaryButton: PrimaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: PrimaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"primary\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type SecondaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type SecondaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SecondaryButtonBaseProps>;\n\nexport type SecondaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SecondaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SecondaryButton: SecondaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SecondaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"secondary\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type SuccessButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type SuccessButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SuccessButtonBaseProps>;\n\nexport type SuccessButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SuccessButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SuccessButton: SuccessButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SuccessButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"success\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type NegativeButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type NegativeButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, NegativeButtonBaseProps>;\n\nexport type NegativeButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: NegativeButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const NegativeButton: NegativeButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: NegativeButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"negative\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type TertiaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type TertiaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, TertiaryButtonBaseProps>;\n\nexport type TertiaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: TertiaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const TertiaryButton: TertiaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: TertiaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"tertiary\" />;\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport './ButtonGroup.scss';\n\nexport type ButtonGroupProps = {\n /** To eller flere Button-komponenter */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** HTML-elementet eller React-komponenten som lages\n * @default \"div\"\n */\n as?: string | React.ElementType;\n [key: string]: any;\n};\n\nexport const ButtonGroup: React.FC<ButtonGroupProps> = ({\n as: Element = 'div',\n className,\n ...rest\n}) => {\n return (\n <Element className={classNames('eds-button-group', className)} {...rest} />\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport './FloatingButton.scss';\n\nexport type FloatingButtonProps = {\n /** Beskrivende tekst for skjermlesere */\n 'aria-label': string;\n /** Ikon eller ikon-og-tekst */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Callback når knappen klikkes */\n onClick: (e: React.MouseEvent<HTMLButtonElement>) => void;\n /** Størrelse på knappen\n * @default \"medium\"\n */\n size?: 'medium' | 'small';\n [key: string]: any;\n} & React.ButtonHTMLAttributes<HTMLButtonElement>;\n\nexport const FloatingButton: React.FC<FloatingButtonProps> = ({\n className,\n children,\n size = 'medium',\n ...rest\n}) => {\n return (\n <button\n className={classNames(\n 'eds-floating-button',\n { 'eds-floating-button--extended': React.Children.count(children) > 1 },\n { 'eds-floating-button--small': size === 'small' },\n className,\n )}\n type=\"button\"\n {...rest}\n >\n {wrapStringsInSpans(children)}\n </button>\n );\n};\n\nconst wrapStringsInSpans = (children: React.ReactNode) =>\n React.Children.map(children, child =>\n typeof child === 'string' ? <span>{child}</span> : child,\n );\n","import * as React from 'react';\nimport classNames from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './BaseSquareButton.scss';\n\nexport type BaseSquareButtonBaseProps = {\n /** Tekst og ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** En type knapp */\n variant: 'success' | 'secondary' | 'tertiary';\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type BaseSquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, BaseSquareButtonBaseProps>;\n\nexport type BaseSquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: BaseSquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const BaseSquareButton: BaseSquareButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n children,\n className,\n variant,\n disabled = false,\n loading = false,\n as,\n ...rest\n }: BaseSquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n return (\n <Element\n className={classNames(\n 'eds-square-button',\n { 'eds-square-button--success': variant === 'success' },\n { 'eds-square-button--secondary': variant === 'secondary' },\n { 'eds-square-button--tertiary': variant === 'tertiary' },\n { 'eds-square-button--loading': loading },\n className,\n )}\n aria-busy={loading}\n disabled={disabled}\n aria-disabled={disabled}\n ref={ref}\n {...rest}\n >\n {React.Children.map(children, child => {\n if (typeof child === 'string') {\n return <span className=\"eds-square-button__label\">{child}</span>;\n }\n return (\n <span className=\"eds-square-button__icon\">\n {loading ? (\n <LoadingDots className=\"eds-square-button__loading-dots\" />\n ) : (\n child\n )}\n </span>\n );\n })}\n </Element>\n );\n },\n);\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype SecondarySquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type SecondarySquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SecondarySquareButtonBaseProps>;\n\nexport type SecondarySquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SecondarySquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SecondarySquareButton: SecondarySquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SecondarySquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton\n as={Element}\n ref={ref}\n {...props}\n variant=\"secondary\"\n />\n );\n },\n );\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype SuccessSquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type SuccessSquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SuccessSquareButtonBaseProps>;\n\nexport type SuccessSquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SuccessSquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SuccessSquareButton: SuccessSquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SuccessSquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton as={Element} ref={ref} {...props} variant=\"success\" />\n );\n },\n );\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype TertiarySquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type TertiarySquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, TertiarySquareButtonBaseProps>;\n\nexport type TertiarySquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: TertiarySquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const TertiarySquareButton: TertiarySquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: TertiarySquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton\n as={Element}\n ref={ref}\n {...props}\n variant=\"tertiary\"\n />\n );\n },\n );\n","import React from 'react';\nimport classNames from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './IconButton.scss';\n\nexport type IconButtonBaseProps = {\n /** Ikonet som du vil ha inne i knappen */\n children: React.ReactNode;\n /** Tekst som forklarer knappens handling. MÅ være satt hvis du ikke har en forklarende tooltip på knappen */\n 'aria-label'?: string;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** HTML-elementet eller React-komponenten som lager knappen\n * @default 'button'\n */\n as?: React.ElementType;\n /**Størrelsen på knappen\n * @default \"medium\"\n */\n size?: 'small' | 'medium';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nconst defaultElement = 'button';\n\nexport type IconButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, IconButtonBaseProps>;\n\nexport type IconButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: IconButtonProps<T>,\n) => React.ReactElement | null;\n\nexport const IconButton: IconButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n children,\n className,\n disabled = false,\n size,\n as,\n loading,\n ...rest\n }: IconButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n\n const iconButtonElement = (\n <Element\n className={classNames(\n 'eds-icon-button',\n className,\n {\n 'eds-icon-button--disabled': disabled,\n },\n `eds-icon-button--size-${size}`,\n )}\n disabled={disabled}\n aria-disabled={disabled}\n aria-busy={loading}\n ref={ref}\n {...rest}\n >\n {loading ? <LoadingDots /> : children}\n </Element>\n );\n\n if (disabled) {\n return (\n <div className=\"eds-icon-button--disabled__wrapper\">\n {iconButtonElement}\n </div>\n );\n }\n return <>{iconButtonElement}</>;\n },\n);\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('button');\n\nexport * from './Button';\nexport * from './PrimaryButton';\nexport * from './SecondaryButton';\nexport * from './SuccessButton';\nexport * from './NegativeButton';\nexport * from './TertiaryButton';\nexport * from './ButtonGroup';\nexport * from './FloatingButton';\nexport * from './SecondarySquareButton';\nexport * from './SuccessSquareButton';\nexport * from './TertiarySquareButton';\nexport * from './IconButton';\n"],"names":["defaultElement","Button","React","forwardRef","ref","as","children","variant","size","loading","className","disabled","width","ariaLabel","rest","_excluded","Element","childrenArray","Children","toArray","hasLeadingIcon","length","hasTrailingIcon","ariaLabelWhenLoading","filter","child","join","ariaLabelValue","undefined","cx","LoadingDots","PrimaryButton","props","SecondaryButton","SuccessButton","NegativeButton","TertiaryButton","ButtonGroup","createElement","classNames","FloatingButton","count","type","wrapStringsInSpans","map","BaseSquareButton","SecondarySquareButton","SuccessSquareButton","TertiarySquareButton","IconButton","iconButtonElement","Fragment","warnAboutMissingStyles"],"mappings":"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"}
1
+ {"version":3,"file":"button.esm.js","sources":["../src/Button.tsx","../src/PrimaryButton.tsx","../src/SecondaryButton.tsx","../src/SuccessButton.tsx","../src/NegativeButton.tsx","../src/TertiaryButton.tsx","../src/ButtonGroup.tsx","../src/FloatingButton.tsx","../src/BaseSquareButton.tsx","../src/SecondarySquareButton.tsx","../src/SuccessSquareButton.tsx","../src/TertiarySquareButton.tsx","../src/IconButton.tsx","../src/index.tsx"],"sourcesContent":["import * as React from 'react';\nimport cx from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './Button.scss';\n\ntype ButtonBaseProps = {\n /** Farge og uttrykk på knappen */\n variant: 'primary' | 'secondary' | 'success' | 'negative' | 'tertiary';\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n /**\n * Tekst som leses opp på skjermleser (nødvendig når knappetekst mangler)\n */\n 'aria-label'?: string;\n};\n\nconst defaultElement = 'button';\n\nexport type ButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, ButtonBaseProps>;\n\nexport type ButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: ButtonProps<T>,\n) => React.ReactElement | null;\n\nexport const Button: ButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n as,\n children,\n variant,\n size = 'medium',\n loading,\n className,\n disabled = false,\n width = 'auto',\n 'aria-label': ariaLabel,\n ...rest\n }: ButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n const childrenArray = React.Children.toArray(children);\n const hasLeadingIcon =\n childrenArray.length > 1 && typeof childrenArray[0] !== 'string';\n const hasTrailingIcon =\n childrenArray.length > 1 &&\n typeof childrenArray[childrenArray.length - 1] !== 'string';\n\n const ariaLabelWhenLoading = childrenArray\n .filter(child => typeof child === 'string')\n .join(' ');\n\n const ariaLabelValue = () => {\n if (ariaLabel) return ariaLabel;\n if (loading) return ariaLabelWhenLoading;\n return undefined;\n };\n\n return (\n <Element\n className={cx(\n 'eds-button',\n {\n [`eds-button--variant-${variant}`]: variant,\n [`eds-button--size-${size}`]: size,\n 'eds-button--width-fluid': width === 'fluid',\n 'eds-button--loading': loading,\n 'eds-button--leading-icon': hasLeadingIcon,\n 'eds-button--trailing-icon': hasTrailingIcon,\n },\n className,\n )}\n ref={ref}\n aria-busy={loading}\n disabled={disabled}\n aria-disabled={disabled}\n aria-label={ariaLabelValue()}\n {...rest}\n >\n {loading ? (\n <LoadingDots className=\"eds-button__loading-dots\" />\n ) : (\n children\n )}\n </Element>\n );\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type PrimaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type PrimaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, PrimaryButtonBaseProps>;\n\nexport type PrimaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: PrimaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const PrimaryButton: PrimaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: PrimaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"primary\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type SecondaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type SecondaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SecondaryButtonBaseProps>;\n\nexport type SecondaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SecondaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SecondaryButton: SecondaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SecondaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"secondary\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type SuccessButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type SuccessButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SuccessButtonBaseProps>;\n\nexport type SuccessButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SuccessButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SuccessButton: SuccessButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SuccessButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"success\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type NegativeButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type NegativeButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, NegativeButtonBaseProps>;\n\nexport type NegativeButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: NegativeButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const NegativeButton: NegativeButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: NegativeButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"negative\" />;\n },\n);\n","import React from 'react';\nimport { Button } from './Button';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\nexport type TertiaryButtonBaseProps = {\n /** Størrelsen på knappen\n * @default 'medium'\n */\n size?: 'medium' | 'large';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Bredden på knappen.\n * @default 'auto'\n */\n width?: 'fluid' | 'auto';\n /** Innholdet i knappen */\n children: React.ReactNode;\n};\n\nexport type TertiaryButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, TertiaryButtonBaseProps>;\n\nexport type TertiaryButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: TertiaryButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const TertiaryButton: TertiaryButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: TertiaryButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n // @ts-expect-error type error due to props not being BaseButtonProps\n return <Button as={Element} {...props} ref={ref} variant=\"tertiary\" />;\n },\n);\n","import React from 'react';\nimport classNames from 'classnames';\nimport './ButtonGroup.scss';\n\nexport type ButtonGroupProps = {\n /** To eller flere Button-komponenter */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** HTML-elementet eller React-komponenten som lages\n * @default \"div\"\n */\n as?: string | React.ElementType;\n [key: string]: any;\n};\n\nexport const ButtonGroup: React.FC<ButtonGroupProps> = ({\n as: Element = 'div',\n className,\n ...rest\n}) => {\n return (\n <Element className={classNames('eds-button-group', className)} {...rest} />\n );\n};\n","import React from 'react';\nimport classNames from 'classnames';\nimport './FloatingButton.scss';\n\nexport type FloatingButtonProps = {\n /** Beskrivende tekst for skjermlesere */\n 'aria-label': string;\n /** Ikon eller ikon-og-tekst */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Callback når knappen klikkes */\n onClick: (e: React.MouseEvent<HTMLButtonElement>) => void;\n /** Størrelse på knappen\n * @default \"medium\"\n */\n size?: 'medium' | 'small';\n [key: string]: any;\n} & React.ButtonHTMLAttributes<HTMLButtonElement>;\n\nexport const FloatingButton: React.FC<FloatingButtonProps> = ({\n className,\n children,\n size = 'medium',\n ...rest\n}) => {\n return (\n <button\n className={classNames(\n 'eds-floating-button',\n { 'eds-floating-button--extended': React.Children.count(children) > 1 },\n { 'eds-floating-button--small': size === 'small' },\n className,\n )}\n type=\"button\"\n {...rest}\n >\n {wrapStringsInSpans(children)}\n </button>\n );\n};\n\nconst wrapStringsInSpans = (children: React.ReactNode) =>\n React.Children.map(children, child =>\n typeof child === 'string' ? <span>{child}</span> : child,\n );\n","import * as React from 'react';\nimport classNames from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './BaseSquareButton.scss';\n\nexport type BaseSquareButtonBaseProps = {\n /** Tekst og ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** En type knapp */\n variant: 'success' | 'secondary' | 'tertiary';\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type BaseSquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, BaseSquareButtonBaseProps>;\n\nexport type BaseSquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: BaseSquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const BaseSquareButton: BaseSquareButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n children,\n className,\n variant,\n disabled = false,\n loading = false,\n as,\n ...rest\n }: BaseSquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n return (\n <Element\n className={classNames(\n 'eds-square-button',\n { 'eds-square-button--success': variant === 'success' },\n { 'eds-square-button--secondary': variant === 'secondary' },\n { 'eds-square-button--tertiary': variant === 'tertiary' },\n { 'eds-square-button--loading': loading },\n className,\n )}\n aria-busy={loading}\n disabled={disabled}\n aria-disabled={disabled}\n ref={ref}\n {...rest}\n >\n {React.Children.map(children, child => {\n if (typeof child === 'string') {\n return <span className=\"eds-square-button__label\">{child}</span>;\n }\n return (\n <span className=\"eds-square-button__icon\">\n {loading ? (\n <LoadingDots className=\"eds-square-button__loading-dots\" />\n ) : (\n child\n )}\n </span>\n );\n })}\n </Element>\n );\n },\n);\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype SecondarySquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type SecondarySquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SecondarySquareButtonBaseProps>;\n\nexport type SecondarySquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SecondarySquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SecondarySquareButton: SecondarySquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SecondarySquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton\n as={Element}\n ref={ref}\n {...props}\n variant=\"secondary\"\n />\n );\n },\n );\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype SuccessSquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type SuccessSquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, SuccessSquareButtonBaseProps>;\n\nexport type SuccessSquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: SuccessSquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const SuccessSquareButton: SuccessSquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: SuccessSquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton as={Element} ref={ref} {...props} variant=\"success\" />\n );\n },\n );\n","import React from 'react';\nimport { BaseSquareButton } from './BaseSquareButton';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\n\ntype TertiarySquareButtonBaseProps = {\n /** Tekst og ikon, ikon og tekst, eller bare ikon */\n children: React.ReactNode;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nexport type TertiarySquareButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, TertiarySquareButtonBaseProps>;\n\nexport type TertiarySquareButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: TertiarySquareButtonProps<T>,\n) => React.ReactElement | null;\n\nconst defaultElement = 'button';\n\nexport const TertiarySquareButton: TertiarySquareButtonComponent =\n React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n props: TertiarySquareButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = props.as || defaultElement;\n return (\n // @ts-expect-error type error due to props not being BaseButtonProps\n <BaseSquareButton\n as={Element}\n ref={ref}\n {...props}\n variant=\"tertiary\"\n />\n );\n },\n );\n","import React from 'react';\nimport classNames from 'classnames';\nimport { PolymorphicComponentPropsWithRef, PolymorphicRef } from '@entur/utils';\nimport { LoadingDots } from '@entur/loader';\nimport './IconButton.scss';\n\nexport type IconButtonBaseProps = {\n /** Ikonet som du vil ha inne i knappen */\n children: React.ReactNode;\n /** Tekst som forklarer knappens handling. MÅ være satt hvis du ikke har en forklarende tooltip på knappen */\n 'aria-label'?: string;\n /** Ekstra klassenavn */\n className?: string;\n /** Deaktivering av knappen\n * @default false\n */\n disabled?: boolean;\n /** HTML-elementet eller React-komponenten som lager knappen\n * @default 'button'\n */\n as?: React.ElementType;\n /**Størrelsen på knappen\n * @default \"medium\"\n */\n size?: 'small' | 'medium';\n /** Om knappen er opptatt, f.eks. med å lagre eller å kjøpe\n * @default false\n */\n loading?: boolean;\n};\n\nconst defaultElement = 'button';\n\nexport type IconButtonProps<T extends React.ElementType> =\n PolymorphicComponentPropsWithRef<T, IconButtonBaseProps>;\n\nexport type IconButtonComponent = <\n T extends React.ElementType = typeof defaultElement,\n>(\n props: IconButtonProps<T>,\n) => React.ReactElement | null;\n\nexport const IconButton: IconButtonComponent = React.forwardRef(\n <T extends React.ElementType = typeof defaultElement>(\n {\n children,\n className,\n disabled = false,\n size,\n as,\n loading,\n ...rest\n }: IconButtonProps<T>,\n ref: PolymorphicRef<T>,\n ) => {\n const Element: React.ElementType = as || defaultElement;\n\n const IconWithAriaHidden = React.Children.map(children, child => {\n if (React.isValidElement(child)) {\n // @ts-expect-error aria-hidden does, in fact, exist\n return React.cloneElement(child, { 'aria-hidden': true });\n }\n return child;\n });\n\n const iconButtonElement = (\n <Element\n className={classNames(\n 'eds-icon-button',\n className,\n {\n 'eds-icon-button--disabled': disabled,\n },\n `eds-icon-button--size-${size}`,\n )}\n disabled={disabled}\n aria-disabled={disabled}\n aria-busy={loading}\n ref={ref}\n {...rest}\n >\n {loading ? <LoadingDots /> : <>{IconWithAriaHidden}</>}\n </Element>\n );\n\n if (disabled) {\n return (\n <div className=\"eds-icon-button--disabled__wrapper\">\n {iconButtonElement}\n </div>\n );\n }\n return <>{iconButtonElement}</>;\n },\n);\n","import { warnAboutMissingStyles } from '@entur/utils';\nimport './index.scss';\n\nwarnAboutMissingStyles('button');\n\nexport * from './Button';\nexport * from './PrimaryButton';\nexport * from './SecondaryButton';\nexport * from './SuccessButton';\nexport * from './NegativeButton';\nexport * from './TertiaryButton';\nexport * from './ButtonGroup';\nexport * from './FloatingButton';\nexport * from './SecondarySquareButton';\nexport * from './SuccessSquareButton';\nexport * from './TertiarySquareButton';\nexport * from './IconButton';\n"],"names":["defaultElement","Button","React","forwardRef","ref","as","children","variant","size","loading","className","disabled","width","ariaLabel","rest","_excluded","Element","childrenArray","Children","toArray","hasLeadingIcon","length","hasTrailingIcon","ariaLabelWhenLoading","filter","child","join","ariaLabelValue","undefined","cx","LoadingDots","PrimaryButton","props","SecondaryButton","SuccessButton","NegativeButton","TertiaryButton","ButtonGroup","createElement","classNames","FloatingButton","count","type","wrapStringsInSpans","map","BaseSquareButton","SecondarySquareButton","SuccessSquareButton","TertiarySquareButton","IconButton","IconWithAriaHidden","isValidElement","cloneElement","iconButtonElement","Fragment","warnAboutMissingStyles"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@entur/button",
3
- "version": "3.0.5",
3
+ "version": "3.0.7",
4
4
  "license": "EUPL-1.2",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/button.esm.js",
@@ -27,10 +27,10 @@
27
27
  "react-dom": ">=16.8.0"
28
28
  },
29
29
  "dependencies": {
30
- "@entur/loader": "^0.4.28",
31
- "@entur/tokens": "^3.8.1",
30
+ "@entur/loader": "^0.4.30",
31
+ "@entur/tokens": "^3.9.0",
32
32
  "@entur/utils": "^0.9.0",
33
33
  "classnames": "^2.3.1"
34
34
  },
35
- "gitHead": "cd5c398453c486f6f160905247b94c6da2622d7c"
35
+ "gitHead": "be029b3d6a7f40e805697a28daf0c5df55a6177d"
36
36
  }