mirror of
				https://github.com/optim-enterprises-bv/vault.git
				synced 2025-11-04 04:28:08 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			47 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
/**
 | 
						|
 * Copyright (c) HashiCorp, Inc.
 | 
						|
 * SPDX-License-Identifier: BUSL-1.1
 | 
						|
 */
 | 
						|
 | 
						|
import Component from '@glimmer/component';
 | 
						|
import { action } from '@ember/object';
 | 
						|
import { tracked } from '@glimmer/tracking';
 | 
						|
 | 
						|
/**
 | 
						|
 * @module InputSearch
 | 
						|
 * This component renders an input that fires a callback on "keyup" containing the input's value
 | 
						|
 *
 | 
						|
 * @example
 | 
						|
 * <InputSearch
 | 
						|
 * @initialValue="secret/path/"
 | 
						|
 * @onChange={{this.handleSearch}}
 | 
						|
 * @placeholder="search..."
 | 
						|
 * />
 | 
						|
 * @param {string} [id] - unique id for the input
 | 
						|
 * @param {string} [initialValue] - initial search value, i.e. a secret path prefix, that pre-fills the input field
 | 
						|
 * @param {string} [placeholder] - placeholder text for the input
 | 
						|
 * @param {string} [label] - label for the input
 | 
						|
 * @param {string} [subtext] - displays below the label
 | 
						|
 */
 | 
						|
 | 
						|
export default class InputSearch extends Component {
 | 
						|
  /*
 | 
						|
   * @public
 | 
						|
   * @param Function
 | 
						|
   *
 | 
						|
   * Function called when any of the inputs change
 | 
						|
   *
 | 
						|
   */
 | 
						|
  @tracked searchInput = '';
 | 
						|
 | 
						|
  constructor() {
 | 
						|
    super(...arguments);
 | 
						|
    this.searchInput = this.args?.initialValue;
 | 
						|
  }
 | 
						|
 | 
						|
  @action
 | 
						|
  inputChanged() {
 | 
						|
    this.args.onChange(this.searchInput);
 | 
						|
  }
 | 
						|
}
 |