Sha256: c984ceb5c37a09055111038ec1009d99faa0fe6a1cfd074a528411c4dcef2e06

Contents?: true

Size: 1.35 KB

Versions: 529

Compression:

Stored size: 1.35 KB

Contents

import React from 'react'
import classnames from 'classnames'

import { buildAriaProps, buildCss, buildDataProps, buildHtmlProps } from '../utilities/props'
import { globalProps } from '../utilities/globalProps'

import Body from '../pb_body/_body'
import Icon from '../pb_icon/_icon'

type LoadingInlineProps = {
  align?: "left" | "center" | "right",
  aria?: { [key: string]: string },
  className?: string,
  data?: { [key: string]: string },
  htmlOptions?: {[key: string]: string | number | boolean | (() => void)},
  id?: string,
  text?: string,
}

const LoadingInline = (props: LoadingInlineProps) => {
  const {
    align = 'left',
    aria = {},
    className,
    data = {},
    htmlOptions = {},
    id,
    text = ' Loading',
  } = props

  const ariaProps = buildAriaProps(aria)
  const dataProps = buildDataProps(data)
  const htmlProps = buildHtmlProps(htmlOptions)
  const classes = classnames(
    buildCss(`pb_loading_inline_kit_${align}`),
    globalProps(props),
    className
  )

  return (
    <div
        {...ariaProps}
        {...dataProps}
        {...htmlProps}
        className={classes}
        id={id}
    >
      <Body color="light">
        <Icon
            aria={{ label: 'loading icon' }}
            fixedWidth
            icon="spinner"
            pulse
        />
        {text}
      </Body>
    </div>
  )
}

export default LoadingInline

Version data entries

529 entries across 529 versions & 1 rubygems

Version Path
playbook_ui-14.10.0.pre.rc.20 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.10.0.pre.rc.19 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.10.0.pre.rc.18 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.9.0.pre.alpha.PLAY1660reactdropzone5020 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.10.0.pre.rc.17 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.10.0.pre.rc.16 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.9.0.pre.alpha.play17004992 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.9.0.pre.alpha.play1703errorstatealignment4991 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.10.0.pre.rc.15 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.9.0.pre.alpha.PLAY16264952 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.9.0.pre.alpha.PLAY1731inputmasking4927 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.9.0.pre.alpha.play1742globalheightfixes4926 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.9.0.pre.alpha.play1742globalheightfixes4925 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.10.0.pre.rc.14 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.10.0.pre.rc.13 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.9.0.pre.alpha.PBNTR746datepickerdefaultbug4903 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.9.0.pre.alpha.PBNTR746datepickerdefaultbug4901 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.9.0.pre.alpha.PBNTR746datepickerdefaultbug4898 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.9.0.pre.alpha.PBNTR746datepickerdefaultbug4891 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.9.0.pre.alpha.PLAY1731inputmasking4890 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx