Sha256: ab2c47066fd635c39894320ffc0419bcc76bf2384ce6e07ae0db1004c429f493

Contents?: true

Size: 1.42 KB

Versions: 34

Compression:

Stored size: 1.42 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 },
  dark?: boolean,
  htmlOptions?: {[key: string]: string | number | boolean | (() => void)},
  id?: string,
  text?: string,
}

const LoadingInline = (props: LoadingInlineProps) => {
  const {
    align = 'left',
    aria = {},
    className,
    data = {},
    dark = false,
    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"
          dark={dark}
      >
        <Icon
            aria={{ label: 'loading icon' }}
            fixedWidth
            icon="spinner"
            pulse
        />
        {text}
      </Body>
    </div>
  )
}

export default LoadingInline

Version data entries

34 entries across 34 versions & 1 rubygems

Version Path
playbook_ui-14.12.0.pre.alpha.play1790darkaudittable5802 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.12.0.pre.alpha.play1752updatecontenttag5801 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.13.0.pre.rc.6 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.13.0.pre.rc.5 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.12.0.pre.alpha.PLAY1602lightboxoverlapnitrobug5781 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.13.0.pre.rc.4 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.12.0.pre.alpha.playrailsinputmaskissue5775 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.12.0.pre.alpha.PBNTR456fixedconftoastrailsautoclose5757 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.12.0.pre.alpha.PBNTR456fixedconftoastrailsautoclose5754 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.12.0.pre.alpha.PLAY1602lightboxoverlapnitrobugzindextoken5751 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.12.0.pre.alpha.PBNTR456fixedconftoastrailsautoclose5738 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.13.0.pre.rc.3 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.12.0.pre.alpha.PLAY1865reactdatepickerreinitializingbug5732 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.12.0.pre.alpha.PBNTR456fixedconftoastrailsautoclose5728 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.12.0.pre.alpha.play1862buttondisabledlinkbug5716 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.12.0.pre.alpha.play1862buttondisabledlinkbug5714 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.13.0.pre.rc.2 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.13.0.pre.rc.1 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.13.0.pre.rc.0 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx
playbook_ui-14.12.0.pre.alpha.advancedtablealignmentfixes5693 app/pb_kits/playbook/pb_loading_inline/_loading_inline.tsx