UNPKG

@endereco/streetautocomplete

Version:

Assist the input of street. When user enters first characters of a street it shows a dropdown with street variants. User can select a variant by clicking on it or by navigating to it with keyboard arrows and pressing enter. When selected a variant is copi

84 lines (56 loc) 2.49 kB
# StreetAutocomplete Assist the input of street. When user enters first characters of a street it shows a dropdown with street variants. User can select a variant by clicking on it or by navigating to it with keyboard arrows and pressing enter. When selected a variant is copied to the input field of street name. ## Installation In order to pull the latest version: ### npm (preferred) ``` npm i @endereco/streetautocomplete ``` ### github ``` git clone https://github.com/Endereco/StreetAutocomplete.git ``` Then include StreetAutocomplete.js in `<header>` or before config. ## Configuration In order to use street autocomplete you must specify the fields that make the street, postcode, city name and country, and some colors. Here is an example configuration: ``` new StreetAutocomplete({ 'inputSelector': 'input[name="register[billing][streetname]"]', 'secondaryInputSelectors': { 'postCode': 'input[name="register[billing][zipcode]"]', 'cityName': 'input[name="register[billing][city]"]', 'country': 'select[name="register[billing][country]"]' }, 'endpoint': 'https://example-domain.com/endpoint', 'apiKey': '041c3c302746cf37722560a7a285690738a7db4e55b7aaf26a545ffabd318a83', 'colors' : { 'primaryColor' => '#fff', 'primaryColorHover' => '#fff', 'primaryColorText' => '#fff', 'secondaryColor' => '#fff', 'secondaryColorHover' => '#fff', 'secondaryColorText' => '#fff', 'warningColor' => '#fff', 'warningColorHover' => '#fff', 'warningColorText' => '#fff', 'successColor' => '#fff', 'successColorHover' => '#fff', 'successColorText' => '#fff' } }); ``` ## Dependencies StreetAutocomplete relies on StatusIndicator to mark fields green on correct input. StreetAutocomplete also relies on Accounting to generate the tid and track transactions. ## Methods ### updateConfig(object newConfig) Updates inner config. Existing fields are overwritten, new fields are added, other field are kept. ### checkIfFieldsAreSet() Checks if all relevant fields are set and marks the service as "dirty", if there was a change. Dirty state trigger reinitialisation. ### getPredictions() Get a list of possible street names for the provided input. Returns a promise that is resolved once the answer from remote server is in. ### renderDropdown() Renders the autocomplete list. ### removeDropdown() Removes autocomplete list from DOM.