bromcom-ui 2.3.54 → 2.3.58

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.
Files changed (212) hide show
  1. package/dist/bromcom-ui/bromcom-ui.css +0 -0
  2. package/dist/bromcom-ui/bromcom-ui.esm.js +1 -1
  3. package/dist/bromcom-ui/index.esm.js +0 -0
  4. package/dist/bromcom-ui/p-12493dbc.entry.js +1 -0
  5. package/dist/bromcom-ui/{p-a18a0cc4.entry.js → p-13d038f5.entry.js} +1 -1
  6. package/dist/bromcom-ui/p-1429a2b4.js +1 -0
  7. package/dist/bromcom-ui/{p-4b7f14ed.entry.js → p-20d03fa1.entry.js} +1 -1
  8. package/dist/bromcom-ui/{p-774ff4d9.entry.js → p-30c1cd7f.entry.js} +1 -1
  9. package/dist/bromcom-ui/p-37750343.entry.js +1 -0
  10. package/dist/bromcom-ui/p-3f797656.entry.js +1 -0
  11. package/dist/bromcom-ui/{p-4396ee3b.entry.js → p-4092f5f1.entry.js} +1 -1
  12. package/dist/bromcom-ui/p-4a41ef80.entry.js +1 -0
  13. package/dist/bromcom-ui/p-4cb268d2.js +1 -0
  14. package/dist/bromcom-ui/p-53e9b679.entry.js +1 -0
  15. package/dist/bromcom-ui/{p-09753e05.js → p-554d326a.js} +1 -1
  16. package/dist/bromcom-ui/p-68ff64de.js +1 -0
  17. package/dist/bromcom-ui/p-7238d22f.entry.js +1 -0
  18. package/dist/bromcom-ui/p-7f1cd976.entry.js +1 -0
  19. package/dist/bromcom-ui/p-811c24d7.entry.js +1 -0
  20. package/dist/bromcom-ui/p-8851e01e.entry.js +1 -0
  21. package/dist/bromcom-ui/{p-1a2724a0.entry.js → p-92e3e240.entry.js} +1 -1
  22. package/dist/bromcom-ui/p-9ffff762.entry.js +1 -0
  23. package/dist/bromcom-ui/p-a6ef098a.entry.js +1 -0
  24. package/dist/bromcom-ui/p-af7e4741.entry.js +1 -0
  25. package/dist/bromcom-ui/{p-0d336381.entry.js → p-afb68492.entry.js} +1 -1
  26. package/dist/bromcom-ui/p-bbf99620.entry.js +1 -0
  27. package/dist/bromcom-ui/p-bc50aa86.entry.js +1 -0
  28. package/dist/bromcom-ui/p-e21a8f2d.entry.js +1 -0
  29. package/dist/bromcom-ui/p-e450ebda.entry.js +1 -0
  30. package/dist/bromcom-ui/p-e8307da9.entry.js +1 -0
  31. package/dist/bromcom-ui/{p-26b3d5d0.entry.js → p-e8771d32.entry.js} +1 -1
  32. package/dist/bromcom-ui/p-f067821e.entry.js +1 -0
  33. package/dist/bromcom-ui/p-f12743d8.entry.js +1 -0
  34. package/dist/bromcom-ui/p-ff5e57d3.entry.js +1 -0
  35. package/dist/cjs/bcm-alert.cjs.entry.js +7 -26
  36. package/dist/cjs/bcm-badge.cjs.entry.js +50 -0
  37. package/dist/cjs/{bcm-badge_20.cjs.entry.js → bcm-button_11.cjs.entry.js} +1209 -2835
  38. package/dist/cjs/bcm-checkbox-lite_4.cjs.entry.js +291 -0
  39. package/dist/cjs/bcm-colorpicker.cjs.entry.js +3 -3
  40. package/dist/cjs/{bcm-datetime-picker_2.cjs.entry.js → bcm-datetime-picker.cjs.entry.js} +3 -137
  41. package/dist/cjs/bcm-dropdown.cjs.entry.js +1 -1
  42. package/dist/cjs/bcm-list-item_2.cjs.entry.js +197 -0
  43. package/dist/cjs/bcm-list-select.cjs.entry.js +658 -0
  44. package/dist/cjs/bcm-list.cjs.entry.js +1204 -0
  45. package/dist/cjs/{bcm-empty_6.cjs.entry.js → bcm-listbox_5.cjs.entry.js} +10 -77
  46. package/dist/cjs/bcm-modal.cjs.entry.js +197 -0
  47. package/dist/cjs/bcm-popconfirm-box.cjs.entry.js +1 -1
  48. package/dist/cjs/bcm-popconfirm.cjs.entry.js +2 -2
  49. package/dist/cjs/bcm-popover-box.cjs.entry.js +1 -1
  50. package/dist/cjs/bcm-popover.cjs.entry.js +2 -2
  51. package/dist/cjs/bcm-pulldown-group_2.cjs.entry.js +1 -1
  52. package/dist/cjs/bcm-pulldown.cjs.entry.js +1 -1
  53. package/dist/cjs/bcm-radio-group.cjs.entry.js +124 -0
  54. package/dist/cjs/bcm-radio.cjs.entry.js +104 -0
  55. package/dist/cjs/bcm-select.cjs.entry.js +68 -8
  56. package/dist/cjs/bcm-tab-pane.cjs.entry.js +51 -0
  57. package/dist/cjs/bcm-tab.cjs.entry.js +72 -0
  58. package/dist/cjs/bcm-tabs-content.cjs.entry.js +43 -0
  59. package/dist/cjs/bcm-tabs.cjs.entry.js +361 -0
  60. package/dist/cjs/bcm-text.cjs.entry.js +28 -0
  61. package/dist/cjs/bcm-upload.cjs.entry.js +1 -1
  62. package/dist/cjs/bromcom-ui.cjs.js +1 -1
  63. package/dist/cjs/{element-dragger-36fcb296.js → element-dragger-4a91c708.js} +1 -1
  64. package/dist/cjs/loader.cjs.js +1 -1
  65. package/dist/cjs/types-37c8ced6.js +16 -0
  66. package/dist/cjs/types-f53bc841.js +19 -0
  67. package/dist/cjs/{utils-43fda566.js → utils-60414768.js} +25 -0
  68. package/dist/collection/collection-manifest.json +1 -0
  69. package/dist/collection/components/atoms/label/label.css +70 -0
  70. package/dist/collection/components/atoms/label/label.js +203 -0
  71. package/dist/collection/components/molecules/checkbox/group.js +19 -6
  72. package/dist/collection/components/molecules/input/input.js +39 -7
  73. package/dist/collection/components/molecules/list/list-item.css +1 -0
  74. package/dist/collection/components/molecules/list/list-select.css +10 -5
  75. package/dist/collection/components/molecules/list/list-select.js +232 -34
  76. package/dist/collection/components/molecules/list/list.css +24 -2
  77. package/dist/collection/components/molecules/list/list.js +391 -119
  78. package/dist/collection/components/molecules/popconfirm/popconfirm-box.css +1 -0
  79. package/dist/collection/components/molecules/popconfirm/popconfirm.css +1 -0
  80. package/dist/collection/components/molecules/popover/popover-box.css +1 -0
  81. package/dist/collection/components/molecules/popover/popover.css +1 -0
  82. package/dist/collection/components/molecules/radio/group.js +19 -6
  83. package/dist/collection/components/molecules/search/search.js +2 -2
  84. package/dist/collection/components/molecules/select/select.js +85 -12
  85. package/dist/collection/components/molecules/switch/switch.css +0 -1
  86. package/dist/collection/components/molecules/switch/switch.js +20 -7
  87. package/dist/collection/components/molecules/textarea/textarea.css +4 -1
  88. package/dist/collection/components/molecules/textarea/textarea.js +33 -17
  89. package/dist/collection/components/molecules/tooltip/tooltip-box.css +1 -0
  90. package/dist/collection/components/molecules/tooltip/tooltip.css +1 -0
  91. package/dist/collection/components/organism/colorpicker/colorpicker.js +19 -6
  92. package/dist/collection/components/organism/datetime-picker/datetime-picker.js +1 -1
  93. package/dist/collection/components/organism/form/form.js +5 -4
  94. package/dist/collection/components/organism/listbox/listbox.js +27 -17
  95. package/dist/collection/helper/color-helper.js +33 -0
  96. package/dist/collection/helper/generate.js +47 -0
  97. package/dist/collection/helper/number-helper.js +10 -0
  98. package/dist/collection/helper/string-helper.js +21 -0
  99. package/dist/collection/helper/validators.js +21 -0
  100. package/dist/collection/models/bcm-types.js +1 -0
  101. package/dist/collection/models/bcm.js +451 -0
  102. package/dist/collection/templates/caption-template.js +22 -0
  103. package/dist/collection/templates/label-template.js +16 -0
  104. package/dist/collection/templates/slot-template.js +6 -0
  105. package/dist/collection/utils/utils.js +24 -0
  106. package/dist/esm/bcm-alert.entry.js +1 -20
  107. package/dist/esm/bcm-badge.entry.js +46 -0
  108. package/dist/esm/{bcm-badge_20.entry.js → bcm-button_11.entry.js} +1204 -2821
  109. package/dist/esm/bcm-checkbox-lite_4.entry.js +284 -0
  110. package/dist/esm/bcm-colorpicker.entry.js +3 -3
  111. package/dist/esm/{bcm-datetime-picker_2.entry.js → bcm-datetime-picker.entry.js} +4 -137
  112. package/dist/esm/bcm-dropdown.entry.js +1 -1
  113. package/dist/esm/bcm-list-item_2.entry.js +192 -0
  114. package/dist/esm/bcm-list-select.entry.js +654 -0
  115. package/dist/esm/bcm-list.entry.js +1200 -0
  116. package/dist/esm/{bcm-empty_6.entry.js → bcm-listbox_5.entry.js} +12 -78
  117. package/dist/esm/bcm-modal.entry.js +193 -0
  118. package/dist/esm/bcm-popconfirm-box.entry.js +1 -1
  119. package/dist/esm/bcm-popconfirm.entry.js +2 -2
  120. package/dist/esm/bcm-popover-box.entry.js +1 -1
  121. package/dist/esm/bcm-popover.entry.js +2 -2
  122. package/dist/esm/bcm-pulldown-group_2.entry.js +1 -1
  123. package/dist/esm/bcm-pulldown.entry.js +1 -1
  124. package/dist/esm/bcm-radio-group.entry.js +120 -0
  125. package/dist/esm/bcm-radio.entry.js +100 -0
  126. package/dist/esm/bcm-select.entry.js +68 -8
  127. package/dist/esm/bcm-tab-pane.entry.js +47 -0
  128. package/dist/esm/bcm-tab.entry.js +68 -0
  129. package/dist/esm/bcm-tabs-content.entry.js +39 -0
  130. package/dist/esm/bcm-tabs.entry.js +357 -0
  131. package/dist/esm/bcm-text.entry.js +24 -0
  132. package/dist/esm/bcm-upload.entry.js +1 -1
  133. package/dist/esm/bromcom-ui.js +1 -1
  134. package/dist/esm/{element-dragger-03ac2a5e.js → element-dragger-97a8f373.js} +1 -1
  135. package/dist/esm/loader.js +1 -1
  136. package/dist/esm/polyfills/css-shim.js +0 -0
  137. package/dist/esm/types-4b11eac9.js +28 -0
  138. package/dist/esm/types-911a8837.js +21 -0
  139. package/dist/esm/{utils-b7fba7c4.js → utils-de9aee67.js} +25 -1
  140. package/dist/types/assets/icons/index.d.ts +0 -0
  141. package/dist/types/assets/icons/index.example.d.ts +0 -0
  142. package/dist/types/components/atoms/avatar/avatar.d.ts +0 -0
  143. package/dist/types/components/atoms/badge/badge.d.ts +0 -0
  144. package/dist/types/components/atoms/button/button.d.ts +0 -0
  145. package/dist/types/components/atoms/divider/divider.d.ts +0 -0
  146. package/dist/types/components/atoms/icon/icon.d.ts +0 -0
  147. package/dist/types/components/atoms/icon/types.d.ts +0 -0
  148. package/dist/types/components/atoms/label/label.d.ts +16 -0
  149. package/dist/types/components/atoms/tag/tag.d.ts +0 -0
  150. package/dist/types/components/atoms/text/text.d.ts +0 -0
  151. package/dist/types/components/molecules/card/card-footer.d.ts +0 -0
  152. package/dist/types/components/molecules/card/card-header.d.ts +0 -0
  153. package/dist/types/components/molecules/card/card.d.ts +0 -0
  154. package/dist/types/components/molecules/checkbox/checkbox.d.ts +0 -0
  155. package/dist/types/components/molecules/checkbox/group.d.ts +1 -0
  156. package/dist/types/components/molecules/input/input.d.ts +2 -0
  157. package/dist/types/components/molecules/list/list-select.d.ts +24 -4
  158. package/dist/types/components/molecules/list/list.d.ts +13 -3
  159. package/dist/types/components/molecules/radio/group.d.ts +1 -0
  160. package/dist/types/components/molecules/radio/radio.d.ts +0 -0
  161. package/dist/types/components/molecules/select/group.d.ts +0 -0
  162. package/dist/types/components/molecules/select/option.d.ts +0 -0
  163. package/dist/types/components/molecules/select/select.d.ts +1 -0
  164. package/dist/types/components/molecules/switch/switch.d.ts +1 -0
  165. package/dist/types/components/molecules/textarea/textarea.d.ts +3 -2
  166. package/dist/types/components/organism/colorpicker/colorpicker.d.ts +1 -0
  167. package/dist/types/components/organism/listbox/listbox.d.ts +1 -0
  168. package/dist/types/components.d.ts +95 -12
  169. package/dist/types/global/variables/colors.d.ts +0 -0
  170. package/dist/types/helper/color-helper.d.ts +9 -0
  171. package/dist/types/helper/generate.d.ts +10 -0
  172. package/dist/types/helper/number-helper.d.ts +9 -0
  173. package/dist/types/helper/string-helper.d.ts +20 -0
  174. package/dist/types/helper/validators.d.ts +8 -0
  175. package/dist/types/index.d.ts +0 -0
  176. package/dist/types/models/bcm-types.d.ts +19 -0
  177. package/dist/types/models/bcm.d.ts +447 -0
  178. package/dist/types/stencil-public-runtime.d.ts +0 -0
  179. package/dist/types/templates/caption-template.d.ts +12 -0
  180. package/dist/types/templates/label-template.d.ts +12 -0
  181. package/dist/types/templates/slot-template.d.ts +8 -0
  182. package/dist/types/utils/utils.d.ts +1 -0
  183. package/loader/cdn.js +0 -0
  184. package/loader/index.cjs.js +0 -0
  185. package/loader/index.d.ts +0 -0
  186. package/loader/index.es2017.js +0 -0
  187. package/loader/index.js +0 -0
  188. package/loader/package.json +0 -0
  189. package/package.json +1 -1
  190. package/dist/bromcom-ui/p-013b6f5d.entry.js +0 -1
  191. package/dist/bromcom-ui/p-0532e299.entry.js +0 -1
  192. package/dist/bromcom-ui/p-0aa53bdb.entry.js +0 -1
  193. package/dist/bromcom-ui/p-2c1ee381.entry.js +0 -1
  194. package/dist/bromcom-ui/p-607bc9b3.entry.js +0 -1
  195. package/dist/bromcom-ui/p-6355c903.entry.js +0 -1
  196. package/dist/bromcom-ui/p-6bd805f1.entry.js +0 -1
  197. package/dist/bromcom-ui/p-77a480ff.entry.js +0 -1
  198. package/dist/bromcom-ui/p-a88256f2.entry.js +0 -1
  199. package/dist/bromcom-ui/p-b92324e7.js +0 -1
  200. package/dist/bromcom-ui/p-ba219861.entry.js +0 -1
  201. package/dist/bromcom-ui/p-cdfd9ba0.entry.js +0 -1
  202. package/dist/bromcom-ui/p-cf6b0656.entry.js +0 -1
  203. package/dist/cjs/bcm-checkbox-group.cjs.entry.js +0 -273
  204. package/dist/cjs/bcm-checkbox.cjs.entry.js +0 -143
  205. package/dist/cjs/bcm-switch.cjs.entry.js +0 -86
  206. package/dist/cjs/bcm-textarea.cjs.entry.js +0 -136
  207. package/dist/cjs/bcm-tooltip-box.cjs.entry.js +0 -36
  208. package/dist/esm/bcm-checkbox-group.entry.js +0 -269
  209. package/dist/esm/bcm-checkbox.entry.js +0 -139
  210. package/dist/esm/bcm-switch.entry.js +0 -82
  211. package/dist/esm/bcm-textarea.entry.js +0 -132
  212. package/dist/esm/bcm-tooltip-box.entry.js +0 -32
@@ -1,6 +1,6 @@
1
1
  import { Component, h, Element, Prop, Host, Method, Listen, Event, Watch, State } from '@stencil/core';
2
2
  import cs from 'classnames';
3
- import { delay, dropInComponent, getChilds } from '../../../utils/utils';
3
+ import { delay, dropInComponent, getChilds, pluralize } from '../../../utils/utils';
4
4
  const lowercase = (str) => str.toLowerCase();
5
5
  export class BcmList {
6
6
  constructor() {
@@ -16,6 +16,7 @@ export class BcmList {
16
16
  this.checkStatus = false;
17
17
  this.resetSelected = false;
18
18
  this.indeterminateStatus = false;
19
+ this.total = 0;
19
20
  this.totalSearch = 0;
20
21
  this.empty = false;
21
22
  this.objectMapping = {
@@ -45,7 +46,7 @@ export class BcmList {
45
46
  this.size = 'medium';
46
47
  this.infoFooter = false;
47
48
  this.searchable = false;
48
- this.highlight = false;
49
+ this.highlight = true;
49
50
  this.searchPlaceholder = "Search";
50
51
  this.searchFields = ['text'];
51
52
  this.returnField = "id";
@@ -55,6 +56,7 @@ export class BcmList {
55
56
  this.value = null;
56
57
  this.multiSelect = false;
57
58
  /******/
59
+ this.variableText = 'item';
58
60
  this.clearable = false;
59
61
  this.label = null;
60
62
  this.placeholder = "Choose an option";
@@ -78,6 +80,7 @@ export class BcmList {
78
80
  if (this.type !== 'default' || this.linkedComponent !== null) {
79
81
  this.isShow = false;
80
82
  this.el.classList.add("linked");
83
+ this.el.classList.remove("show");
81
84
  this.handleLinkedComponent();
82
85
  }
83
86
  const slot = this.el.shadowRoot.querySelectorAll('bcm-list-item');
@@ -129,6 +132,7 @@ export class BcmList {
129
132
  if (this.searchable == true) {
130
133
  // var searchInput = null
131
134
  const searchInput = this.el.shadowRoot.querySelector("bcm-search");
135
+ // console.log(searchInput)
132
136
  if (searchInput) {
133
137
  searchInput.setClear();
134
138
  if (select == true) {
@@ -143,10 +147,19 @@ export class BcmList {
143
147
  async show() {
144
148
  if (this.processType == 'deselect') {
145
149
  this.firstRender = true;
146
- this.isRendered = false;
147
- this.setData(this.otherList);
150
+ if (this.items != this.otherList) {
151
+ this.isRendered = false;
152
+ this.setData(this.otherList);
153
+ }
148
154
  }
149
155
  this.isShow = true;
156
+ this.renderList();
157
+ this.clearAndSelectSearch(true);
158
+ }
159
+ /**
160
+ * @desc
161
+ */
162
+ async renderList() {
150
163
  if (this.items && this.isRendered === false) {
151
164
  this.isRendered = true;
152
165
  this.processData(this.items);
@@ -192,6 +205,19 @@ export class BcmList {
192
205
  handleChange(newValue) {
193
206
  this.change.emit(newValue);
194
207
  }
208
+ /**
209
+ * @desc
210
+ */
211
+ handleCaptionType() {
212
+ if (this.type === 'select' || this.type === 'autocomplete') {
213
+ const element = document.getElementById("bcm-list-select-" + this._id);
214
+ if (element) {
215
+ element.caption = this.caption;
216
+ element.captionError = this.captionError;
217
+ element.captionType = this.captionType;
218
+ }
219
+ }
220
+ }
195
221
  /**
196
222
  * @desc
197
223
  */
@@ -246,7 +272,10 @@ export class BcmList {
246
272
  * @desc
247
273
  */
248
274
  async setData(_data = []) {
249
- if (this.value) {
275
+ if (this.type === 'select' || this.type === 'autocomplete') {
276
+ this.selectIsInitialize();
277
+ }
278
+ if (this.value !== null) {
250
279
  this.setClear();
251
280
  }
252
281
  if (_data) {
@@ -261,7 +290,9 @@ export class BcmList {
261
290
  this.items.filter(e => String(e[this.objectMapping['selected']]) === "true").forEach(element => {
262
291
  selectedIDs.push(element[this.objectMapping['id']]);
263
292
  });
293
+ // if ( selectedIDs.length > 0 ) {
264
294
  this.checked(selectedIDs);
295
+ // }
265
296
  }
266
297
  break;
267
298
  case 'deselect':
@@ -270,7 +301,9 @@ export class BcmList {
270
301
  // element[ this.objectMapping['selected'] ] = true;
271
302
  selectedIDs.push(element[this.objectMapping['id']]);
272
303
  });
304
+ // if ( selectedIDs.length > 0 ) {
273
305
  this.checked(selectedIDs);
306
+ // }
274
307
  break;
275
308
  default:
276
309
  break;
@@ -285,6 +318,9 @@ export class BcmList {
285
318
  this.show();
286
319
  }
287
320
  }
321
+ if (this.type === 'autocomplete') {
322
+ this.renderList();
323
+ }
288
324
  return _data;
289
325
  }
290
326
  /**
@@ -306,12 +342,24 @@ export class BcmList {
306
342
  this.caption = this.captionCache;
307
343
  this.captionType = this.captionTypeCache;
308
344
  this.captionError = null;
345
+ if (this.type === 'autocomplete' || this.type === 'select') {
346
+ const elementId = "bcm-list-select-" + this._id;
347
+ const element = document.getElementById(elementId);
348
+ if (element) {
349
+ element.resetCaption();
350
+ }
351
+ }
309
352
  }
310
353
  /**
311
354
  * @desc
312
355
  */
313
356
  async toggleChecked(checkedItems = null) {
314
- if (checkedItems !== null) {
357
+ if (checkedItems !== null && checkedItems !== []) {
358
+ if (typeof checkedItems !== 'string') {
359
+ if (checkedItems.length == 1) {
360
+ checkedItems = String(checkedItems[0]);
361
+ }
362
+ }
315
363
  var checkStatus = false;
316
364
  if (typeof checkedItems == 'string') {
317
365
  checkStatus = this.items.find(e => e[this.objectMapping['id']] == checkedItems)[this.objectMapping['selected']];
@@ -386,7 +434,12 @@ export class BcmList {
386
434
  * @desc
387
435
  */
388
436
  async unChecked(checkedItems = null) {
389
- if (checkedItems !== null) {
437
+ if (checkedItems !== null && checkedItems !== []) {
438
+ if (typeof checkedItems !== 'string') {
439
+ if (checkedItems.length == 1) {
440
+ checkedItems = String(checkedItems[0]);
441
+ }
442
+ }
390
443
  var selectedIDs = [];
391
444
  this.selectedId = null;
392
445
  if (typeof checkedItems == 'string') {
@@ -412,12 +465,18 @@ export class BcmList {
412
465
  * @desc
413
466
  */
414
467
  async checked(checkedItems = null, reset = true) {
415
- if (checkedItems !== null) {
468
+ if (checkedItems !== null && checkedItems !== []) {
469
+ if (typeof checkedItems !== 'string') {
470
+ if (checkedItems.length == 1) {
471
+ checkedItems = String(checkedItems[0]);
472
+ }
473
+ }
416
474
  var selectedIDs = [];
417
475
  if (reset === true) {
418
- if (this.items && this.items.find(e => e[this.objectMapping['selected']])) {
476
+ if (this.items && this.items.find(e => String(e[this.objectMapping['selected']]) === "true")) {
419
477
  this.items.filter(e => String(e[this.objectMapping['selected']]) === "true").forEach(element => {
420
- element[this.objectMapping['selected']] = false;
478
+ this.jsonDataProcess(element[this.objectMapping['id']], false);
479
+ this.sendSelectId(String(element[this.objectMapping['id']]), false);
421
480
  });
422
481
  }
423
482
  this.setClear(false);
@@ -425,7 +484,7 @@ export class BcmList {
425
484
  if (typeof checkedItems == 'string') {
426
485
  this.sendSelectId(String(checkedItems));
427
486
  if (this.multiSelect === false) {
428
- this.selectedId = this.items.find(e => String(e[this.objectMapping['id']]) === String(checkedItems));
487
+ this.selectedId = this.items.find(e => String(e[this.objectMapping['id']]) === String(checkedItems))[this.objectMapping['id']];
429
488
  }
430
489
  }
431
490
  else {
@@ -436,11 +495,11 @@ export class BcmList {
436
495
  }
437
496
  }
438
497
  // if ( this.multiSelect === false ){
439
- // this.selectedId = this.items.find( e => String(e[ this.objectMapping['id'] ]) === String(checkedItems) )
498
+ // this.selectedId = this.items.find( e => String(e[ this.objectMapping['id'] ]) === String(checkedItems) )[ this.objectMapping['id'] ]
440
499
  // }
441
- if (this.items && this.items.find(e => e[this.objectMapping['selected']])) {
442
- this.items.filter(e => String(e[this.objectMapping['selected']]) === "true").forEach(element => {
443
- selectedIDs.push(element);
500
+ if (this.items && this.items.find(e => String(e[this.objectMapping['selected']]) === "true")) {
501
+ this.items.filter(e => String(e[this.objectMapping['selected']]) === "true").forEach(item => {
502
+ selectedIDs.push(item);
444
503
  });
445
504
  }
446
505
  this.value = selectedIDs;
@@ -453,15 +512,19 @@ export class BcmList {
453
512
  * @desc
454
513
  */
455
514
  async setClear(eventEmit = true) {
456
- if (this.items != undefined && this.items.length > 0) {
457
- this.unChecked(this.items.map(item => { return item[this.objectMapping["id"]]; }));
515
+ if (this.items != undefined && this.items.length > 0 && this.items.find(e => e[this.objectMapping['selected']])) {
516
+ var selectedIDs = [];
517
+ this.items.filter(e => String(e[this.objectMapping['selected']]) === "true").forEach(element => {
518
+ selectedIDs.push(element[this.objectMapping['id']]);
519
+ });
520
+ this.unChecked(selectedIDs);
458
521
  }
459
522
  this.selectedId = null;
460
523
  this.checklist = [];
461
524
  if (eventEmit === true) {
462
525
  this.listChecked.emit(this.checklist);
526
+ this.value = null;
463
527
  }
464
- this.value = null;
465
528
  this.handleIndeterminateStatus();
466
529
  this.calculatedTotals({ "selected": this.checklist.length });
467
530
  }
@@ -473,8 +536,8 @@ export class BcmList {
473
536
  await delay(100);
474
537
  const list = this.el.shadowRoot.querySelector('.list');
475
538
  list.innerHTML = "";
476
- this.selectedId = null;
477
- this.value = null;
539
+ // this.selectedId = null
540
+ // this.value = null
478
541
  const elementStatuses = [];
479
542
  var checkedItems = [];
480
543
  if (_data.length > 0) {
@@ -486,14 +549,14 @@ export class BcmList {
486
549
  element.setAttribute("_internal_id", this._internal_id);
487
550
  element.setAttribute("text", item[this.objectMapping['text']]);
488
551
  element.setAttribute("id", String(item[this.objectMapping['id']]));
489
- if (item[this.objectMapping['selected']]) {
552
+ if (String(item[this.objectMapping['selected']]) === "true") {
490
553
  // element.select()
491
554
  checkedItems.push(String(item[this.objectMapping['id']]));
492
555
  }
493
556
  // element.setAttribute("item-object", JSON.stringify(item))
494
557
  var object = item;
495
558
  element.itemObject = object;
496
- element.multiSelect = this.multiSelect;
559
+ element.multiSelect = this.multiSelect === true ? true : false;
497
560
  list.appendChild(element);
498
561
  elementStatuses.push(element.componentOnReady());
499
562
  });
@@ -507,12 +570,13 @@ export class BcmList {
507
570
  });
508
571
  }
509
572
  this.handleLoading(false);
573
+ this.handleIndeterminateStatus();
510
574
  this.firstRender = false;
575
+ return true;
511
576
  }
512
577
  }
513
578
  else {
514
579
  this.handleLoading(false);
515
- // console.log("no data")
516
580
  }
517
581
  }
518
582
  /**
@@ -538,6 +602,18 @@ export class BcmList {
538
602
  */
539
603
  handleClick(event) {
540
604
  var path = event.path || (event.composedPath && event.composedPath());
605
+ // const elementId = "bcm-list-select-" + this._id
606
+ // console.log (
607
+ // !!(
608
+ // path
609
+ // && path.filter((input: HTMLElement) => input['_internal_id'] == this._internal_id)[0]
610
+ // && (
611
+ // path.filter((input: HTMLElement) => input['id'] == "clear-button")[0] !== undefined
612
+ // || path.filter((input: HTMLElement) => input['id'] == "close-button")[0] !== undefined
613
+ // || path.filter((input: HTMLElement) => input['id'] == "close")[0] !== undefined
614
+ // )
615
+ // )
616
+ // )
541
617
  if (!this.el.contains(event.target)
542
618
  || (path
543
619
  && path.filter((input) => input['_internal_id'] == this._internal_id)[0]
@@ -591,7 +667,6 @@ export class BcmList {
591
667
  }
592
668
  /**
593
669
  * @descc
594
-
595
670
  */
596
671
  listenSearchResult(event) {
597
672
  var path = event.path || (event.composedPath && event.composedPath());
@@ -642,7 +717,8 @@ export class BcmList {
642
717
  element.classList.remove("hidden");
643
718
  });
644
719
  }
645
- this.calculatedTotals({ "total": this.totalSearch });
720
+ this.handleIndeterminateStatus();
721
+ this.calculatedTotals({ "searchResult": this.totalSearch });
646
722
  }
647
723
  }
648
724
  }
@@ -651,11 +727,14 @@ export class BcmList {
651
727
 
652
728
  */
653
729
  sendSelectId(id, status = true) {
654
- if (this.items && this.items.find(e => e[this.objectMapping['id']] == id)) {
730
+ id = String(id);
731
+ if (this.items && this.items.find(e => String(e[this.objectMapping['id']]) == id)) {
732
+ this.selectedId = id;
655
733
  if (this.isRendered === false) {
656
- this.items.find(e => e[this.objectMapping['id']] == id)[this.objectMapping['selected']] = status;
657
- this.handleChecklist(this.items.find(e => e[this.objectMapping['id']] == id), status);
658
- return this.items.find(e => e[this.objectMapping['id']] == id);
734
+ const findItem = this.items.find(e => String(e[this.objectMapping['id']]) == String(id));
735
+ findItem[this.objectMapping['selected']] = status;
736
+ this.handleChecklist(findItem, status);
737
+ return findItem;
659
738
  }
660
739
  else {
661
740
  var selectedItem = null;
@@ -684,7 +763,6 @@ export class BcmList {
684
763
  * @descc
685
764
  */
686
765
  jsonDataProcess(id, status) {
687
- // console.log(id)
688
766
  var item = this.items.find(e => String(e[this.objectMapping['id']]) == String(id));
689
767
  if (item) {
690
768
  item[this.objectMapping['selected']] = status;
@@ -695,7 +773,6 @@ export class BcmList {
695
773
  */
696
774
  handleListSelected(event) {
697
775
  var path = event.path || (event.composedPath && event.composedPath());
698
- // console.log(path);
699
776
  if (this.isInternal(event) || (!this.isInternal(event) && this.isInternalSlot(event))) {
700
777
  var status = false;
701
778
  var selectedItem = null;
@@ -728,7 +805,7 @@ export class BcmList {
728
805
  if (this.isInternalSlot(event)) {
729
806
  if (selectedItem = path[0]) {
730
807
  this.selectedId = path[0].id;
731
- this.value = event.detail;
808
+ this.value = [event.detail];
732
809
  return true;
733
810
  }
734
811
  }
@@ -741,7 +818,7 @@ export class BcmList {
741
818
  this.value = this.checklist;
742
819
  }
743
820
  else {
744
- this.value = event.detail;
821
+ this.value = [event.detail];
745
822
  }
746
823
  if (this.processType === 'default') {
747
824
  this.jsonDataProcess(this.selectedId, status);
@@ -796,29 +873,60 @@ export class BcmList {
796
873
  this.checkStatus = false;
797
874
  this.indeterminateStatus = false;
798
875
  if (this.items != undefined && this.checklist != undefined) {
799
- if (this.checklist.length == 0) {
800
- this.checkStatus = false;
801
- this.indeterminateStatus = false;
802
- }
803
- else if (this.checklist.length == this.items.length) {
804
- this.checkStatus = true;
805
- this.indeterminateStatus = false;
806
- }
807
- else if (this.checklist.length < this.items.length) {
808
- this.checkStatus = false;
809
- this.indeterminateStatus = true;
876
+ let state = 'uncheck';
877
+ let allChecked = true;
878
+ let allUnchecked = true;
879
+ getChilds(this.el, "bcm-list-item").map((item) => {
880
+ if (item.classList.contains("hidden") === false) {
881
+ item.classList.contains("selected") === true && (allUnchecked = false);
882
+ !item.classList.contains("selected") === true && (allChecked = false);
883
+ }
884
+ });
885
+ !allChecked && !allUnchecked
886
+ ? state = 'indeterminate'
887
+ : allChecked
888
+ ? state = 'determinate'
889
+ : state = 'uncheck';
890
+ switch (state) {
891
+ case 'indeterminate':
892
+ this.checkStatus = false;
893
+ this.indeterminateStatus = true;
894
+ break;
895
+ case 'determinate':
896
+ this.checkStatus = true;
897
+ this.indeterminateStatus = false;
898
+ break;
899
+ case 'uncheck':
900
+ this.checkStatus = false;
901
+ this.indeterminateStatus = false;
902
+ break;
903
+ default: break;
810
904
  }
811
- else {
812
- this.checkStatus = false;
813
- this.indeterminateStatus = false;
905
+ var indeterminateCheckbox;
906
+ if (indeterminateCheckbox = this.el.shadowRoot.querySelector('#check-lite-' + this._id)) {
907
+ indeterminateCheckbox["checked"] = this.checkStatus;
908
+ indeterminateCheckbox["indeterminate"] = this.indeterminateStatus;
814
909
  }
815
- if (this.multiSelect === true) {
816
- var indeterminateCheckbox;
817
- if (indeterminateCheckbox = this.el.shadowRoot.querySelector('#check-lite-' + this._id)) {
818
- indeterminateCheckbox["checked"] = this.checkStatus;
819
- indeterminateCheckbox["indeterminate"] = this.indeterminateStatus;
820
- }
910
+ // if ( this.checklist.length == 0 ) {
911
+ // this.checkStatus = false
912
+ // this.indeterminateStatus = false
913
+ // } else if ( this.checklist.length == this.items.length ){
914
+ // this.checkStatus = true
915
+ // this.indeterminateStatus = false
916
+ // } else if ( this.checklist.length < this.items.length ){
917
+ // this.checkStatus = false
918
+ // this.indeterminateStatus = true
919
+ // } else {
920
+ // this.checkStatus = false
921
+ // this.indeterminateStatus = false
922
+ // }
923
+ // if ( this.multiSelect === true ){
924
+ var indeterminateCheckbox;
925
+ if (indeterminateCheckbox = this.el.shadowRoot.querySelector('#check-lite-' + this._id)) {
926
+ indeterminateCheckbox["checked"] = this.checkStatus;
927
+ indeterminateCheckbox["indeterminate"] = this.indeterminateStatus;
821
928
  }
929
+ // }
822
930
  }
823
931
  }
824
932
  }
@@ -826,19 +934,51 @@ export class BcmList {
826
934
  * @desc
827
935
  */
828
936
  calculatedTotals(calcObject) {
937
+ var searchResult = -1;
829
938
  if (calcObject["selected"] != undefined) {
830
939
  if (this.infoFooter == true && this.el.shadowRoot.querySelector("#selected-item")) {
831
940
  if (calcObject["selected"] > 0) {
832
- this.el.shadowRoot.querySelector("#selected-item").innerHTML = "( " + calcObject["selected"] + " selected )";
941
+ this.el.shadowRoot.querySelector("#selected-item").innerHTML = "( " + calcObject["selected"] + " selected ) ";
833
942
  }
834
943
  else {
835
944
  this.el.shadowRoot.querySelector("#selected-item").innerHTML = " ";
836
945
  }
837
946
  }
838
947
  }
948
+ if (calcObject["searchResult"] != undefined) {
949
+ if (this.infoFooter == true && this.el.shadowRoot.querySelector("#search-result")) {
950
+ if (calcObject["searchResult"] == this.total) {
951
+ this.el.shadowRoot.querySelector("#search-result").innerHTML = "";
952
+ }
953
+ else {
954
+ this.el.shadowRoot.querySelector("#search-result").innerHTML = calcObject["searchResult"] + " / ";
955
+ }
956
+ searchResult = calcObject["searchResult"];
957
+ }
958
+ }
839
959
  if (calcObject["total"] != undefined) {
840
960
  if (this.infoFooter == true && this.el.shadowRoot.querySelector("#in-total")) {
841
961
  this.el.shadowRoot.querySelector("#in-total").innerHTML = calcObject["total"];
962
+ this.total = calcObject["total"];
963
+ this.el.shadowRoot.querySelector("#variable-text").innerHTML = pluralize(this.variableText, calcObject["total"]);
964
+ }
965
+ }
966
+ const empty = this.el.shadowRoot.querySelector("#empty");
967
+ const selectAll = this.el.shadowRoot.querySelector("#check-container");
968
+ if (searchResult == 0 || this.total == 0) {
969
+ if (empty) {
970
+ empty.classList.add("show");
971
+ }
972
+ if (selectAll) {
973
+ selectAll.classList.add("hidden");
974
+ }
975
+ }
976
+ else {
977
+ if (empty) {
978
+ empty.classList.remove("show");
979
+ }
980
+ if (selectAll) {
981
+ selectAll.classList.remove("hidden");
842
982
  }
843
983
  }
844
984
  }
@@ -911,6 +1051,9 @@ export class BcmList {
911
1051
  if (this.label) {
912
1052
  element.setAttribute("label", this.label);
913
1053
  }
1054
+ if (this.variableText) {
1055
+ element.setAttribute("variable-text", this.variableText);
1056
+ }
914
1057
  if (this.placeholder) {
915
1058
  element.setAttribute("placeholder", this.placeholder);
916
1059
  }
@@ -956,50 +1099,27 @@ export class BcmList {
956
1099
  */
957
1100
  async handleIndeterminateClick(e) {
958
1101
  e.preventDefault();
959
- this.indeterminateStatus = false;
960
- if (this.checkStatus === false) {
961
- this.checkStatus = true;
1102
+ let state = 'uncheck';
1103
+ let allChecked = true;
1104
+ let allUnchecked = true;
1105
+ let visibleItem = [];
1106
+ getChilds(this.el, "bcm-list-item").map((item) => {
1107
+ if (item.classList.contains("hidden") === false) {
1108
+ visibleItem.push(item.id);
1109
+ item.classList.contains("selected") === true && (allUnchecked = false);
1110
+ !item.classList.contains("selected") === true && (allChecked = false);
1111
+ }
1112
+ });
1113
+ !allChecked && !allUnchecked
1114
+ ? state = 'indeterminate'
1115
+ : allChecked
1116
+ ? state = 'determinate'
1117
+ : state = 'uncheck';
1118
+ if (state === 'determinate') {
1119
+ this.unChecked(visibleItem);
962
1120
  }
963
1121
  else {
964
- this.checkStatus = false;
965
- }
966
- if (this.items != undefined && this.items.length > 0) {
967
- // const subItems = this.el.shadowRoot.querySelectorAll("bcm-list-item")
968
- var selectedIDs = [];
969
- this.items.forEach(item => {
970
- selectedIDs.push(item[this.objectMapping['id']]);
971
- // this.jsonDataProcess( item[ this.objectMapping['id'] ], this.checkStatus === true ? true : false)
972
- // this.handleChecklist( item, this.checkStatus === true ? true : false)
973
- // var element:any = this.el.shadowRoot.getElementById( item[ this.objectMapping['id'] ] )
974
- // if ( element ) {
975
- // if ( element.shadowRoot.querySelector(".checkbox") ){
976
- // element.shadowRoot.querySelector(".checkbox").querySelector("input").checked = this.checkStatus
977
- // }
978
- // if ( this.checkStatus === true ){
979
- // element.classList.add("selected")
980
- // } else {
981
- // element.classList.remove("selected")
982
- // }
983
- // }
984
- });
985
- if (this.checkStatus === true) {
986
- this.checked(selectedIDs, false);
987
- }
988
- else {
989
- this.unChecked(selectedIDs);
990
- }
991
- if (this.processType === 'deselect') {
992
- var element = document.querySelector("#" + this._list_id);
993
- if (element) {
994
- // if ( this.firstRender === false ){
995
- element.toggleChecked(selectedIDs);
996
- // }
997
- // element.unChecked(this.selectedId)
998
- }
999
- }
1000
- // this.listChecked.emit( this.checklist )
1001
- // this.value = this.checklist
1002
- // this.sendSelectValue()
1122
+ this.checked(visibleItem, false);
1003
1123
  }
1004
1124
  this.handleIndeterminateStatus();
1005
1125
  }
@@ -1010,12 +1130,23 @@ export class BcmList {
1010
1130
  if (this.type === 'select' || this.type === 'autocomplete') {
1011
1131
  const select = document.getElementById("bcm-list-select-" + this._id);
1012
1132
  if (select) {
1013
- if (this.multiSelect === true) {
1014
- select.setValue(this.value, this.objectMapping["id"], this.objectMapping["text"]);
1015
- }
1016
- else {
1017
- select.setValue(this.value[this.objectMapping["text"]]);
1018
- }
1133
+ // if ( this.multiSelect === true ){
1134
+ select.setValue(this.value, this.objectMapping["id"], this.objectMapping["text"]);
1135
+ // } else {
1136
+ // var val = null;
1137
+ // if ( this.value ){
1138
+ // debugger;
1139
+ // if ( typeof this.value === 'object'){
1140
+ // val = this.value
1141
+ // }else{
1142
+ // if ( this.value.length > 0 ){
1143
+ // val = this.value[0]
1144
+ // }
1145
+ // }
1146
+ // }
1147
+ // // val = this.value[this.objectMapping["text"]]
1148
+ // select.setValue(val, this.objectMapping["id"], this.objectMapping["text"])
1149
+ // }
1019
1150
  }
1020
1151
  }
1021
1152
  }
@@ -1026,7 +1157,7 @@ export class BcmList {
1026
1157
  'size-3': this.size === 'large',
1027
1158
  });
1028
1159
  const hostClasses = cs(this.hidden ? 'hidden' : null, 'type-' + this.type, {
1029
- 'error': this.captionType == 'error' ? true : false,
1160
+ 'error': this.type == "default" && this.captionType == 'error' ? true : false,
1030
1161
  'show': this.isShow,
1031
1162
  'flex': this.minHeight != null || this.maxHeight != null,
1032
1163
  'full-width': this.fullWidth
@@ -1036,8 +1167,12 @@ export class BcmList {
1036
1167
  });
1037
1168
  const footer = cs('footer');
1038
1169
  const captionClasses = cs('size-1', 'input-caption', 'caption-' + this.captionType);
1170
+ var labelAreaHeight = 0;
1171
+ if (this.el.shadowRoot && this.el.shadowRoot.querySelector(".label") && this.el.shadowRoot.querySelector(".label").clientHeight) {
1172
+ labelAreaHeight = this.el.shadowRoot.querySelector(".label").clientHeight + 2;
1173
+ }
1174
+ var styleHeight = this.minHeight != null || this.maxHeight != null ? 'auto' : this.height;
1039
1175
  var customStyle = {
1040
- 'height': this.minHeight != null || this.maxHeight != null ? 'auto' : this.height,
1041
1176
  'min-height': this.minHeight != null ? this.minHeight : null,
1042
1177
  'max-height': this.maxHeight != null ? this.maxHeight : null,
1043
1178
  'width': this.minWidth != null || this.maxWidth != null ? 'max-content' :
@@ -1045,19 +1180,17 @@ export class BcmList {
1045
1180
  'min-width': this.minWidth != null ? this.minWidth == "100%" || this.minWidth == "auto" ? this.linkedElementWidth : this.minWidth : null,
1046
1181
  'max-width': this.maxWidth != null ? this.maxWidth == "100%" || this.maxWidth == "auto" ? this.linkedElementWidth : this.maxWidth : null,
1047
1182
  };
1048
- return (h(Host, { class: hostClasses, style: customStyle },
1049
- (this.type === 'default' && this.processType === 'default' && this.label) && (h("label", { class: "label size-1" },
1050
- " ",
1051
- this.label,
1052
- " ",
1053
- this.required && ('*'),
1054
- " ")),
1055
- h("main", { style: customStyle },
1183
+ var mainStyle = Object.assign({ 'height': styleHeight }, customStyle);
1184
+ var hostStyle = Object.assign({ 'height': styleHeight + labelAreaHeight }, customStyle);
1185
+ return (h(Host, { class: hostClasses, style: hostStyle },
1186
+ (this.type === 'default' && this.processType === 'default' && this.label) && (h("div", null,
1187
+ h("bcm-label", { tooltip: this.tooltip, type: this.captionType, value: this.label, required: this.required }))),
1188
+ h("main", { style: mainStyle },
1056
1189
  this.searchable === true && (h("div", { class: searchContainer },
1057
1190
  h("bcm-search", { id: "search", _internal_id: this._internal_id, searchPlaceholder: this.searchPlaceholder, data: this.searchData, returnField: this.returnField, searchFields: this.searchFields, searchValue: this.searchText, clearable: true }),
1058
1191
  h("bcm-divider", null))),
1059
1192
  h("div", { class: classes },
1060
- this.multiSelect === true && (h("div", { class: "check-container" },
1193
+ this.multiSelect === true && (h("div", { id: "check-container", class: "check-container" },
1061
1194
  h("div", { class: listItem, id: "text", onClick: (e) => this.handleIndeterminateClick(e) },
1062
1195
  h("div", { class: "check-content" },
1063
1196
  h("bcm-checkbox-lite", { id: 'check-lite-' + this._id, name: 'check-lite-' + this._id, checked: false, indeterminate: false, onClick: (e) => this.handleCheckboxClick(e) })),
@@ -1067,13 +1200,21 @@ export class BcmList {
1067
1200
  h("slot", null),
1068
1201
  h("div", { class: "list" }),
1069
1202
  h("div", { class: "spinner first-run" },
1070
- h("bcm-icon", { type: "animated", color: "prime-blue", class: "prefix", icon: "loading" }))),
1203
+ h("bcm-icon", { type: "animated", color: "prime-blue", class: "prefix", icon: "loading" })),
1204
+ h("div", { id: "empty", class: "empty" },
1205
+ h("bcm-empty", { size: "small", text: "No Data" }))),
1071
1206
  this.infoFooter == true && (h("div", { class: footer },
1072
1207
  h("bcm-text", { scale: "size-1", color: "grey-8" },
1073
- h("span", { id: "selected-item" }),
1074
- " Total ",
1208
+ this.multiSelect === true && (h("span", { id: "selected-item" })),
1209
+ "Total ",
1210
+ h("span", { id: "search-result" }),
1211
+ " ",
1075
1212
  h("span", { id: "in-total" }, "0"),
1076
- " items found.")))),
1213
+ " ",
1214
+ h("span", { id: "variable-text" },
1215
+ " ",
1216
+ pluralize(this.variableText)),
1217
+ " found.")))),
1077
1218
  (this.type === 'default' && this.processType === 'default' && !this.noCaption) && (h("div", { class: "caption-area" }, this.captionType == "error"
1078
1219
  ? h("span", { class: captionClasses },
1079
1220
  " ",
@@ -1508,6 +1649,80 @@ export class BcmList {
1508
1649
  "reflect": true,
1509
1650
  "defaultValue": "false"
1510
1651
  },
1652
+ "searchPlaceholder": {
1653
+ "type": "string",
1654
+ "mutable": false,
1655
+ "complexType": {
1656
+ "original": "string",
1657
+ "resolved": "string",
1658
+ "references": {}
1659
+ },
1660
+ "required": false,
1661
+ "optional": false,
1662
+ "docs": {
1663
+ "tags": [],
1664
+ "text": ""
1665
+ },
1666
+ "attribute": "search-placeholder",
1667
+ "reflect": false,
1668
+ "defaultValue": "\"Search\""
1669
+ },
1670
+ "searchFields": {
1671
+ "type": "unknown",
1672
+ "mutable": false,
1673
+ "complexType": {
1674
+ "original": "Array<string>",
1675
+ "resolved": "string[]",
1676
+ "references": {
1677
+ "Array": {
1678
+ "location": "global"
1679
+ }
1680
+ }
1681
+ },
1682
+ "required": false,
1683
+ "optional": false,
1684
+ "docs": {
1685
+ "tags": [],
1686
+ "text": ""
1687
+ },
1688
+ "defaultValue": "['text']"
1689
+ },
1690
+ "returnField": {
1691
+ "type": "string",
1692
+ "mutable": false,
1693
+ "complexType": {
1694
+ "original": "string",
1695
+ "resolved": "string",
1696
+ "references": {}
1697
+ },
1698
+ "required": false,
1699
+ "optional": false,
1700
+ "docs": {
1701
+ "tags": [],
1702
+ "text": ""
1703
+ },
1704
+ "attribute": "return-field",
1705
+ "reflect": false,
1706
+ "defaultValue": "\"id\""
1707
+ },
1708
+ "searchData": {
1709
+ "type": "any",
1710
+ "mutable": false,
1711
+ "complexType": {
1712
+ "original": "any",
1713
+ "resolved": "any",
1714
+ "references": {}
1715
+ },
1716
+ "required": false,
1717
+ "optional": false,
1718
+ "docs": {
1719
+ "tags": [],
1720
+ "text": ""
1721
+ },
1722
+ "attribute": "search-data",
1723
+ "reflect": false,
1724
+ "defaultValue": "null"
1725
+ },
1511
1726
  "value": {
1512
1727
  "type": "any",
1513
1728
  "mutable": false,
@@ -1544,6 +1759,24 @@ export class BcmList {
1544
1759
  "reflect": true,
1545
1760
  "defaultValue": "false"
1546
1761
  },
1762
+ "variableText": {
1763
+ "type": "string",
1764
+ "mutable": false,
1765
+ "complexType": {
1766
+ "original": "string",
1767
+ "resolved": "string",
1768
+ "references": {}
1769
+ },
1770
+ "required": false,
1771
+ "optional": false,
1772
+ "docs": {
1773
+ "tags": [],
1774
+ "text": "***"
1775
+ },
1776
+ "attribute": "variable-text",
1777
+ "reflect": false,
1778
+ "defaultValue": "'item'"
1779
+ },
1547
1780
  "clearable": {
1548
1781
  "type": "boolean",
1549
1782
  "mutable": false,
@@ -1556,7 +1789,7 @@ export class BcmList {
1556
1789
  "optional": false,
1557
1790
  "docs": {
1558
1791
  "tags": [],
1559
- "text": "***"
1792
+ "text": ""
1560
1793
  },
1561
1794
  "attribute": "clearable",
1562
1795
  "reflect": false,
@@ -1728,6 +1961,23 @@ export class BcmList {
1728
1961
  "attribute": "required",
1729
1962
  "reflect": false,
1730
1963
  "defaultValue": "false"
1964
+ },
1965
+ "tooltip": {
1966
+ "type": "string",
1967
+ "mutable": false,
1968
+ "complexType": {
1969
+ "original": "string",
1970
+ "resolved": "string",
1971
+ "references": {}
1972
+ },
1973
+ "required": false,
1974
+ "optional": false,
1975
+ "docs": {
1976
+ "tags": [],
1977
+ "text": "***"
1978
+ },
1979
+ "attribute": "tooltip",
1980
+ "reflect": false
1731
1981
  }
1732
1982
  }; }
1733
1983
  static get states() { return {
@@ -1743,7 +1993,7 @@ export class BcmList {
1743
1993
  "composed": true,
1744
1994
  "docs": {
1745
1995
  "tags": [],
1746
- "text": "***"
1996
+ "text": ""
1747
1997
  },
1748
1998
  "complexType": {
1749
1999
  "original": "any",
@@ -1858,6 +2108,25 @@ export class BcmList {
1858
2108
  }]
1859
2109
  }
1860
2110
  },
2111
+ "renderList": {
2112
+ "complexType": {
2113
+ "signature": "() => Promise<void>",
2114
+ "parameters": [],
2115
+ "references": {
2116
+ "Promise": {
2117
+ "location": "global"
2118
+ }
2119
+ },
2120
+ "return": "Promise<void>"
2121
+ },
2122
+ "docs": {
2123
+ "text": "",
2124
+ "tags": [{
2125
+ "name": "desc",
2126
+ "text": undefined
2127
+ }]
2128
+ }
2129
+ },
1861
2130
  "toggle": {
1862
2131
  "complexType": {
1863
2132
  "signature": "() => Promise<void>",
@@ -2136,6 +2405,9 @@ export class BcmList {
2136
2405
  }, {
2137
2406
  "propName": "value",
2138
2407
  "methodName": "handleChange"
2408
+ }, {
2409
+ "propName": "captionType",
2410
+ "methodName": "handleCaptionType"
2139
2411
  }]; }
2140
2412
  static get listeners() { return [{
2141
2413
  "name": "click",