UNPKG

design-react-kit

Version:

Componenti React per Bootstrap 5

1 lines 2.71 kB
{"version":3,"sources":["../../src/Spinner/Spinner.tsx"],"sourcesContent":["import React, { FC, HTMLAttributes, ElementType } from 'react';\nimport classNames from 'classnames';\n\nexport interface SpinnerProps extends HTMLAttributes<HTMLElement> {\n /** Utilizzarlo in caso di utilizzo di componenti personalizzati */\n tag?: ElementType;\n /** Classi aggiuntive da usare per il componente Spinner */\n className?: string;\n /** Utilizzato per indicare lo stato attivo di caricamento (animato) */\n active?: boolean;\n /** Utilizzato per ottenere la versione ridotta del componente Spinner */\n small?: boolean;\n /** Utilizzato per ottenere una animazione alternativa in fase di caricamento */\n double?: boolean;\n /** Etichetta con testo da mostrare ai dispositivi screen reader */\n label?: string;\n testId?: string;\n}\n\nexport const Spinner: FC<SpinnerProps> = ({\n className,\n tag = 'span',\n active = false,\n small = false,\n double = false,\n label = 'Caricamento',\n testId,\n ...attributes\n}) => {\n const Tag = tag;\n const wrapperClasses = classNames('progress-spinner', {\n 'progress-spinner-active': active,\n 'size-sm': small,\n 'progress-spinner-double': double\n });\n\n const classes = classNames(className, 'visually-hidden');\n if (double) {\n return (\n <Tag className={wrapperClasses} data-testid={testId}>\n <div className='progress-spinner-inner' />\n <div className='progress-spinner-inner' />\n <Tag {...attributes} className={classes}>\n {label}\n </Tag>\n </Tag>\n );\n }\n\n return (\n <Tag className={wrapperClasses} data-testid={testId}>\n <Tag {...attributes} className={classes}>\n {label}\n </Tag>\n </Tag>\n );\n};\n"],"mappings":"0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,GAAA,IAAAI,EAAuD,sBACvDC,EAAuB,2BAkBVH,EAA4B,CAAC,CACxC,UAAAI,EACA,IAAAC,EAAM,OACN,OAAAC,EAAS,GACT,MAAAC,EAAQ,GACR,OAAAC,EAAS,GACT,MAAAC,EAAQ,cACR,OAAAC,EACA,GAAGC,CACL,IAAM,CACJ,IAAMC,EAAMP,EACNQ,KAAiB,EAAAC,SAAW,mBAAoB,CACpD,0BAA2BR,EAC3B,UAAWC,EACX,0BAA2BC,CAC7B,CAAC,EAEKO,KAAU,EAAAD,SAAWV,EAAW,iBAAiB,EACvD,OAAII,EAEA,EAAAQ,QAAA,cAACJ,EAAA,CAAI,UAAWC,EAAgB,cAAaH,GAC3C,EAAAM,QAAA,cAAC,OAAI,UAAU,yBAAyB,EACxC,EAAAA,QAAA,cAAC,OAAI,UAAU,yBAAyB,EACxC,EAAAA,QAAA,cAACJ,EAAA,CAAK,GAAGD,EAAY,UAAWI,GAC7BN,CACH,CACF,EAKF,EAAAO,QAAA,cAACJ,EAAA,CAAI,UAAWC,EAAgB,cAAaH,GAC3C,EAAAM,QAAA,cAACJ,EAAA,CAAK,GAAGD,EAAY,UAAWI,GAC7BN,CACH,CACF,CAEJ","names":["Spinner_exports","__export","Spinner","__toCommonJS","import_react","import_classnames","className","tag","active","small","double","label","testId","attributes","Tag","wrapperClasses","classNames","classes","React"]}