From b3fe33b7bf856ab8664518ffe552a803b317aa6c Mon Sep 17 00:00:00 2001 From: Filipa Lacerda Date: Fri, 1 Feb 2019 16:27:42 +0000 Subject: Searchable input --- .../searchable_input_with_results_list.vue | 151 +++++++++++++++++++++ .../searchable_input_with_results_list_spec.js | 31 +++++ 2 files changed, 182 insertions(+) create mode 100644 app/assets/javascripts/vue_shared/components/searchable_input_with_results_list.vue create mode 100644 spec/javascripts/vue_shared/components/searchable_input_with_results_list_spec.js diff --git a/app/assets/javascripts/vue_shared/components/searchable_input_with_results_list.vue b/app/assets/javascripts/vue_shared/components/searchable_input_with_results_list.vue new file mode 100644 index 00000000000..1a73fe60ea0 --- /dev/null +++ b/app/assets/javascripts/vue_shared/components/searchable_input_with_results_list.vue @@ -0,0 +1,151 @@ + + + + diff --git a/spec/javascripts/vue_shared/components/searchable_input_with_results_list_spec.js b/spec/javascripts/vue_shared/components/searchable_input_with_results_list_spec.js new file mode 100644 index 00000000000..4aaea46faec --- /dev/null +++ b/spec/javascripts/vue_shared/components/searchable_input_with_results_list_spec.js @@ -0,0 +1,31 @@ +describe('searchable input with results', () => { + describe('with value', () => { + it('does not render results list', () => { + + }); + }); + + describe('click clear input button', () => { + it('resets filter value', () => {}); + }); + + describe('on input change', () => { + it('emits search event', () => { + + }); + }); + + describe('while loading', () => { + + }); + + describe('with results', () => {}); + + describe('without resutls', () => { + it('renders a create button', () => {}); + + describe('on click create button', () => { + it('emits create event', () => {}); + }); + }); +}); -- cgit v1.2.1