UNPKG

@wix/design-system

Version:

@wix/design-system

64 lines (60 loc) 1.7 kB
import * as React from 'react'; import { InputProps } from '../Input'; import { GoogleMapsClient } from '../clients'; type Address = { formatted: string; formattedStreetAddress: string; latLng: { lat: string; lng: string; }; approximate: boolean; city?: string; state?: string; country?: string; countryCode?: string; street?: string; number?: string; postalCode?: string; subpremise?: string; }; export interface GoogleAddressInputProps extends Omit< InputProps, 'onChange' | 'onBlur' | 'onFocus' | 'onKeyDown' | 'onKeyUp' | 'onPaste' > { placeholder?: string; valuePrefix?: string; countryCode?: string; value?: string; status?: InputProps['status']; statusMessage?: InputProps['statusMessage']; onChange?: React.ChangeEventHandler<HTMLInputElement>; onBlur?: React.FocusEventHandler<HTMLInputElement>; onFocus?: React.FocusEventHandler<HTMLInputElement>; onKeyDown?: React.KeyboardEventHandler<HTMLInputElement>; onKeyUp?: React.KeyboardEventHandler<HTMLInputElement>; onPaste?: React.ClipboardEventHandler<HTMLInputElement>; onSet?: (params: { originValue: string; googleResult: any; address: Address; }) => void; magnifyingGlass?: boolean; readOnly?: boolean; autoSelect?: boolean; clearSuggestionsOnBlur?: boolean; fallbackToManual?: boolean; poweredByGoogle?: boolean; footer?: string; types?: any[]; filterTypes?: any[]; placeDetailsFields?: any[]; footerOptions?: object; handler?: 'geocode' | 'places'; Client: new () => GoogleMapsClient; } export default class GoogleAddressInput extends React.Component<GoogleAddressInputProps> { select: () => void; focus: () => void; }