1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- import { extend } from '../../shared/utils.js';
- import Autocomplete from './autocomplete-class.js';
- import ConstructorMethods from '../../shared/constructor-methods.js';
- export default {
- name: 'autocomplete',
- params: {
- autocomplete: {
- openerEl: undefined,
- inputEl: undefined,
- view: undefined,
- // DropDown
- dropdownContainerEl: undefined,
- dropdownPlaceholderText: undefined,
- typeahead: false,
- highlightMatches: true,
- expandInput: false,
- updateInputValueOnSelect: true,
- inputEvents: 'input',
- value: undefined,
- multiple: false,
- source: undefined,
- limit: undefined,
- valueProperty: 'id',
- textProperty: 'text',
- openIn: 'page',
- // or 'popup' or 'dropdown'
- pageBackLinkText: 'Back',
- popupCloseLinkText: 'Close',
- pageTitle: undefined,
- searchbarPlaceholder: 'Search...',
- searchbarDisableText: 'Cancel',
- searchbarDisableButton: undefined,
- searchbarSpellcheck: false,
- popupPush: false,
- popupSwipeToClose: undefined,
- animate: true,
- autoFocus: false,
- closeOnSelect: false,
- notFoundText: 'Nothing found',
- requestSourceOnOpen: false,
- // Preloader
- preloaderColor: undefined,
- preloader: false,
- // Colors
- formColorTheme: undefined,
- navbarColorTheme: undefined,
- // Routing
- routableModals: false,
- url: 'select/',
- // Custom render functions
- renderDropdown: undefined,
- renderPage: undefined,
- renderPopup: undefined,
- renderItem: undefined,
- renderSearchbar: undefined,
- renderNavbar: undefined
- }
- },
- static: {
- Autocomplete
- },
- create() {
- const app = this;
- app.autocomplete = extend(ConstructorMethods({
- defaultSelector: undefined,
- constructor: Autocomplete,
- app,
- domProp: 'f7Autocomplete'
- }), {
- open(autocompleteEl) {
- const ac = app.autocomplete.get(autocompleteEl);
- if (ac && ac.open) return ac.open();
- return undefined;
- },
- close(autocompleteEl) {
- const ac = app.autocomplete.get(autocompleteEl);
- if (ac && ac.close) return ac.close();
- return undefined;
- }
- });
- }
- };
|