Sha256: ebe83734851134fef0e26bac1f961d3642b3c1f0456137497e3f3f65c44792cb

Contents?: true

Size: 1.52 KB

Versions: 19

Compression:

Stored size: 1.52 KB

Contents

import React from 'react'
import classnames from 'classnames'
import { buildAriaProps, buildCss, buildDataProps, buildHtmlProps } from '../utilities/props'
import { globalProps, GlobalProps } from '../utilities/globalProps'

import MapControls from './_map_controls';

type MapProps = {
  aria?: { [key: string]: string },
  children?: React.ReactChild[] | React.ReactNode,
  className?: string,
  data?: { [key: string]: string },
  htmlOptions?: {[key: string]: string | number | boolean | (() => void)},
  id?: string,
  zoomBtns?: boolean,
  flyTo?: boolean, 
  zoomInClick?: () => {},
  zoomOutClick?: () => {},
  flyToClick?: () => {},
} & GlobalProps

const Map = (props: MapProps) => {
  const {
  aria = {},
  children,
  className,
  data = {},
  htmlOptions = {},
  id,
  zoomBtns = false,
  flyTo = false,
  zoomInClick,
  zoomOutClick,
  flyToClick
  } = props

  const ariaProps = buildAriaProps(aria)
  const dataProps = buildDataProps(data)
  const htmlProps = buildHtmlProps(htmlOptions)

  const classes = classnames(buildCss('pb_map'), globalProps(props), className)

  return (
    <div
        {...ariaProps}
        {...dataProps}
        {...htmlProps}
        className={classes}
        id={id}
    >
      {
        zoomBtns ? (
          <Map.Controls
          flyTo={flyTo}
          flyToClick={flyToClick}
          zoomBtns={zoomBtns}
          zoomInClick={zoomInClick}
          zoomOutClick={zoomOutClick}
          />
         ) : null
      }
      {children}
    </div>
  )
}

Map.Controls = MapControls
export default Map

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
playbook_ui-13.16.0.pre.alpha.PLAY11642006 app/pb_kits/playbook/pb_map/_map.tsx
playbook_ui-13.16.0.pre.alpha.play1141iconkitusinglibrary1995 app/pb_kits/playbook/pb_map/_map.tsx
playbook_ui-13.16.0.pre.alpha.play1141iconkitusinglibrary1993 app/pb_kits/playbook/pb_map/_map.tsx
playbook_ui-13.16.0.pre.alpha.PLAY11641992 app/pb_kits/playbook/pb_map/_map.tsx
playbook_ui-13.16.0.pre.alpha.PLAY11641991 app/pb_kits/playbook/pb_map/_map.tsx
playbook_ui-13.16.0.pre.alpha.fonttest1972 app/pb_kits/playbook/pb_map/_map.tsx
playbook_ui-13.15.0.pre.alpha.play1141iconkitusinglibrary1956 app/pb_kits/playbook/pb_map/_map.tsx
playbook_ui-13.16.0 app/pb_kits/playbook/pb_map/_map.tsx
playbook_ui-13.15.0.pre.alpha.1132globalpropdatepickerspacing1929 app/pb_kits/playbook/pb_map/_map.tsx
playbook_ui-13.15.0.pre.alpha.PLAY10851907 app/pb_kits/playbook/pb_map/_map.tsx
playbook_ui-13.15.0.pre.alpha.PLAY11311893 app/pb_kits/playbook/pb_map/_map.tsx
playbook_ui-13.15.0.pre.alpha.reactselectbump581876 app/pb_kits/playbook/pb_map/_map.tsx
playbook_ui-13.15.0.pre.alpha.PLAY10831873 app/pb_kits/playbook/pb_map/_map.tsx
playbook_ui-13.14.0.pre.alpha.play1101betaicons1825 app/pb_kits/playbook/pb_map/_map.tsx
playbook_ui-13.14.0.pre.alpha.play1101betaicons1798 app/pb_kits/playbook/pb_map/_map.tsx
playbook_ui-13.14.0.pre.alpha.play1120lintdatepicker1797 app/pb_kits/playbook/pb_map/_map.tsx
playbook_ui-13.15.0 app/pb_kits/playbook/pb_map/_map.tsx
playbook_ui-13.13.0.pre.alpha.play10821727 app/pb_kits/playbook/pb_map/_map.tsx
playbook_ui-13.13.0.pre.alpha.play10821726 app/pb_kits/playbook/pb_map/_map.tsx