toggle-components-library 1.33.0-beta.8 → 1.33.0-beta.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10,14 +10,13 @@
10
10
  </label>
11
11
  <input
12
12
  :name="name ? name : 'ToggleInputPercentage' "
13
- :class="[ 'toggle-input', {'toggle-input-is-readonly':readonly, size}]"
13
+ :class="[ 'toggle-input', size]"
14
14
  :placeholder="placeholder ? placeholder : '' "
15
15
  :autocomplete="autocomplete ? 'on' : 'off' "
16
16
  :required="required"
17
17
  v-model="inputVal"
18
18
  @blur="isInputActive = false"
19
- @focus="isInputActive = true"
20
- :readonly="readonly"
19
+ @focus="isInputActive = true"
21
20
  />
22
21
  <label
23
22
  class="toggle-input-label-error"
@@ -78,17 +77,7 @@ export default {
78
77
  allowFloat: {
79
78
  type: Boolean,
80
79
  default: false
81
- },
82
- readonly: {
83
- type: Boolean,
84
- required: false,
85
- default: false
86
- },
87
- disabled: {
88
- type: Boolean,
89
- required: false,
90
- default: false
91
- },
80
+ }
92
81
  },
93
82
 
94
83
  created : function(){
@@ -111,7 +100,7 @@ export default {
111
100
  inputVal: {
112
101
 
113
102
  get: function() {
114
- if (this.isInputActive && !this.readonly) {
103
+ if (this.isInputActive) {
115
104
  // Cursor is inside the input field. unformat display value for user
116
105
  return this.value.toString()
117
106
  } else {
@@ -90,7 +90,7 @@ export default {
90
90
  default: false
91
91
  },
92
92
  // in toggle-table context, if search bar height expand transition has finished
93
- searchIsOpen: {
93
+ applyFocus: {
94
94
  type: Boolean,
95
95
  required: false,
96
96
  default: null
@@ -98,7 +98,7 @@ export default {
98
98
  },
99
99
 
100
100
  created : function(){
101
- if(this.searchIsOpen === null || this.searchIsOpen){
101
+ if(this.applyFocus === null || this.applyFocus){
102
102
  this.show = true;
103
103
  }
104
104
  },
@@ -127,7 +127,7 @@ export default {
127
127
  if (options.filter( option => option.value == this.inputVal).length == 0)
128
128
  this.inputVal = "";
129
129
  },
130
- searchIsOpen(new_value){
130
+ applyFocus(new_value){
131
131
  if(new_value){
132
132
  this.show = true;
133
133
  }
@@ -11,7 +11,7 @@
11
11
  <input
12
12
  :type="type"
13
13
  :name="name ? name : 'ToggleInputText' "
14
- :class="['toggle-input', {'toggle-input-is-readonly':readonly, size}]"
14
+ :class="[ 'toggle-input', size]"
15
15
  :placeholder="placeholder ? placeholder : '' "
16
16
  :autocomplete="autocomplete ? 'on' : 'off' "
17
17
  :required="required"
@@ -24,24 +24,24 @@
24
24
  type="text"
25
25
  :ref="field.key+'-input'"
26
26
  v-model="searchModels[field.key]"
27
- @input="searchChange()"
27
+ @input="searchChange(field)"
28
28
  @bail="closeSearch(field)"
29
- :searchIsOpen="searchIsOpen"
29
+ :applyFocus="applyFocus"
30
30
  />
31
31
  <ToggleInputSelect
32
32
  style="margin-top:2px;"
33
33
  :size="'small'"
34
34
  v-if="field.type === 'select' && (searchModels[field.key] || editingInput === field.key)"
35
- :searchIsOpen="searchIsOpen"
35
+ :applyFocus="applyFocus"
36
36
  :options="field.select_options"
37
37
  v-model="searchModels[field.key]"
38
- @input="val=>searchChange()"
38
+ @input="val=>searchChange(val, field)"
39
39
  />
40
- <ToggleDatePicker
40
+ <ToggleDateRangePicker
41
41
  v-if="field.type === 'date_range' && (searchModels[field.key].start || searchModels[field.key].end || editingInput === field.key)"
42
- name="date_range" size="small"
43
- :searchIsOpen="searchIsOpen"
44
- @input="val=>searchChange()" type="date" :range="true" label="Input label" v-model="searchModels[field.key]"
42
+ name="date_range"
43
+ v-model="searchModels[field.key]"
44
+ @input="val=>searchChange(val, field)"
45
45
  />
46
46
  </div>
47
47
  </th>
@@ -73,7 +73,7 @@
73
73
 
74
74
  import { mixins } from '../mixins/mixins';
75
75
 
76
- import ToggleDatePicker from '../forms/ToggleDatePicker.vue';
76
+ import ToggleDateRangePicker from '../forms/ToggleDateRangePicker.vue';
77
77
  import ToggleInputText from '../forms/ToggleInputText.vue';
78
78
  import ToggleInputSelect from '../forms/ToggleInputSelect.vue';
79
79
  import ToggleTableRow from '../tables/ToggleTableRow.vue';
@@ -82,7 +82,7 @@ import TogglePagination from '../tables/TogglePagination.vue';
82
82
 
83
83
  export default {
84
84
  mixins:[mixins],
85
- components:{ToggleDatePicker, ToggleInputText, ToggleInputSelect, ToggleTableColumn, ToggleTableRow, TogglePagination},
85
+ components:{ToggleDateRangePicker, ToggleInputText, ToggleInputSelect, ToggleTableColumn, ToggleTableRow, TogglePagination},
86
86
  props: {
87
87
  items: {
88
88
  type: [Array]
@@ -106,6 +106,10 @@ export default {
106
106
  emptyTableMessage: {
107
107
  type: String,
108
108
  default: "No rows returned."
109
+ },
110
+ searchDebounce: {
111
+ type: [Number],
112
+ default: 500
109
113
  }
110
114
  },
111
115
  data : function(){
@@ -113,8 +117,8 @@ export default {
113
117
  editingInput:false,
114
118
  searchModels:{},
115
119
  anySearchActive: false,
116
- searchIsOpen: false,
117
- searchDebounce: null
120
+ applyFocus: false,
121
+ searchTimeout: null
118
122
  };
119
123
  },
120
124
  computed: {
@@ -152,7 +156,7 @@ export default {
152
156
  let field_name = this.fields[i].key;
153
157
  this.$set( this.searchModels, field_name, value )
154
158
  if(value){
155
- this.searchIsOpen = true;
159
+ this.applyFocus = true;
156
160
  // if date has an initial value set, show it.
157
161
  if(typeof value.start !== 'undefined'){
158
162
  if(value.start.length) this.activateSearch(this.fields[i]);
@@ -160,9 +164,7 @@ export default {
160
164
  // show the other fields with initial values set.
161
165
  else this.activateSearch(this.fields[i]);
162
166
  }
163
- }
164
- if(this.anySearchActive){
165
- this.searchChange(true);
167
+ this.searchChange();
166
168
  }
167
169
  }
168
170
 
@@ -179,11 +181,11 @@ export default {
179
181
 
180
182
  handleTransitionEnd(event){
181
183
  if(event.propertyName === 'height'){
182
- if(this.anySearchActive && !this.searchIsOpen){
183
- this.searchIsOpen = true;
184
+ if(this.anySearchActive && !this.applyFocus){
185
+ this.applyFocus = true;
184
186
  }
185
- if(!this.anySearchActive && this.searchIsOpen){
186
- this.searchIsOpen = false;
187
+ if(!this.anySearchActive && this.applyFocus){
188
+ this.applyFocus = false;
187
189
  }
188
190
  }
189
191
  },
@@ -217,7 +219,7 @@ export default {
217
219
  closeSearch(field){
218
220
 
219
221
  this.editingInput = false;
220
- this.searchModels[field.key] = field.type === 'date_range' ? { start: null, end: null} : '' ;
222
+ this.searchModels[field.key] = field.type === 'date_range' ? { start: false, end: false} : '' ;
221
223
 
222
224
  // check if any search is active; if not, close/shrink header
223
225
  let is_active = false;
@@ -237,14 +239,11 @@ export default {
237
239
  this.searchChange();
238
240
  },
239
241
 
240
- searchChange(immediate = false)
241
- {
242
- const delay = immediate ? 0 : 500;
243
-
244
- clearTimeout(this.searchDebounce);
245
- this.searchDebounce = setTimeout(()=>{
242
+ searchChange(){
243
+ clearTimeout(this.searchTimeout);
244
+ this.searchTimeout = setTimeout(()=>{
246
245
  this.$emit('search', this.fieldsWithSearch);
247
- },delay);
246
+ },this.searchDebounce);
248
247
 
249
248
  },
250
249
 
@@ -253,12 +252,8 @@ export default {
253
252
  */
254
253
  activateSearch(field){
255
254
  if(!field.filterable || field.readonly) return;
256
- if(field.type === 'date_range'){
257
- this.datePickerOpen = true;
258
- }
259
255
  this.editingInput = field.key;
260
256
  this.anySearchActive = true;
261
- //this.$nextTick(() => this.$refs[this.editingInput + '-input'].focus())
262
257
  },
263
258
 
264
259
 
package/src/index.js CHANGED
@@ -4,6 +4,7 @@ import ToggleInputText from "./components/forms/ToggleInputText.vue";
4
4
  import ToggleInputEditableText from "./components/forms/ToggleInputEditableText.vue";
5
5
  import ToggleInputWebsite from "./components/forms/ToggleInputWebsite.vue";
6
6
  import ToggleDatePicker from "./components/forms/ToggleDatePicker.vue";
7
+ import ToggleDateRangePicker from "./components/forms/ToggleDateRangePicker.vue";
7
8
  import ToggleInputSelect from "./components/forms/ToggleInputSelect.vue";
8
9
  import ToggleInputPercentage from "./components/forms/ToggleInputPercentage.vue";
9
10
  import ToggleInputCurrency from "./components/forms/ToggleInputCurrency.vue";
@@ -82,8 +83,6 @@ import ToggleMetricFunnelChart from "./components/metrics/ToggleMetricFunnelChar
82
83
  import ToggleThreeDots from "./components/threedots/ToggleThreeDots.vue";
83
84
  import ToggleThreeDotsButton from "./components/threedots/ToggleThreeDotsButton.vue";
84
85
 
85
- import ToggleStatusBar from "./components/statusbar/ToggleStatusBar.vue";
86
-
87
86
  import ToggleCarousel from "./components/carousel/ToggleCarousel.vue";
88
87
  import ToggleCarouselSlide from "./components/carousel/ToggleCarouselSlide.vue";
89
88
 
@@ -105,13 +104,14 @@ const Components = {
105
104
  ToggleInputEditableText,
106
105
  ToggleInputWebsite,
107
106
  ToggleDatePicker,
107
+ ToggleDateRangePicker,
108
108
  ToggleInputSelect,
109
109
  ToggleInputPercentage,
110
110
  ToggleInputCurrency,
111
111
  ToggleInputRadioButtons,
112
112
  ToggleInputTextArea,
113
113
  ToggleInputCheckboxContainer,
114
- ToggleInputCheckbox,
114
+ ToggleInputCheckbox,
115
115
  ToggleInputCheckboxInline,
116
116
  ToggleFillLoader,
117
117
  ToggleProgressLoader,
@@ -158,7 +158,6 @@ const Components = {
158
158
  ToggleBoosterBasicButton,
159
159
  ToggleBoosterModal,
160
160
  ToggleContactSearch,
161
- ToggleStatusBar,
162
161
  ToggleCarousel,
163
162
  ToggleCarouselSlide,
164
163
  ToggleEmailCard,