bromcom-ui 2.3.66 → 2.3.70
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.
- package/dist/bromcom-ui/{index-43956e3c.js → _commonjsHelpers-2088bffa.js} +1 -56
- package/dist/bromcom-ui/bcm-ad02f9c9.js +453 -0
- package/dist/bromcom-ui/bcm-alert.entry.js +53 -58
- package/dist/bromcom-ui/bcm-autocomplete.entry.js +4 -3
- package/dist/bromcom-ui/bcm-avatar.entry.js +27 -28
- package/dist/bromcom-ui/bcm-badge.entry.js +60 -31
- package/dist/bromcom-ui/bcm-breadcrumb.entry.js +26 -32
- package/dist/bromcom-ui/bcm-button.entry.js +92 -215
- package/dist/bromcom-ui/bcm-card-footer.entry.js +1 -1
- package/dist/bromcom-ui/bcm-card-header.entry.js +1 -1
- package/dist/bromcom-ui/bcm-card.entry.js +5 -4
- package/dist/bromcom-ui/bcm-checkbox-group.entry.js +253 -227
- package/dist/bromcom-ui/bcm-checkbox-lite.entry.js +29 -26
- package/dist/bromcom-ui/bcm-checkbox.entry.js +85 -89
- package/dist/bromcom-ui/bcm-collapse-group.entry.js +11 -16
- package/dist/bromcom-ui/bcm-collapse.entry.js +31 -18
- package/dist/bromcom-ui/bcm-colorpicker.entry.js +7 -6
- package/dist/bromcom-ui/bcm-comment-editor.entry.js +4 -3
- package/dist/bromcom-ui/bcm-comment-group.entry.js +4 -3
- package/dist/bromcom-ui/bcm-comment.entry.js +5 -4
- package/dist/bromcom-ui/bcm-date-picker.entry.js +31 -34
- package/dist/bromcom-ui/bcm-datetime-picker.entry.js +20 -46
- package/dist/bromcom-ui/bcm-divider.entry.js +11 -11
- package/dist/bromcom-ui/bcm-dropdown-button.entry.js +35 -61
- package/dist/bromcom-ui/bcm-dropdown-item.entry.js +66 -16
- package/dist/bromcom-ui/bcm-dropdown-list.entry.js +31 -49
- package/dist/bromcom-ui/bcm-dropdown.entry.js +17 -46
- package/dist/bromcom-ui/bcm-empty.entry.js +14 -45
- package/dist/bromcom-ui/bcm-error-layout.entry.js +20 -34
- package/dist/bromcom-ui/bcm-form-group.entry.js +3 -3
- package/dist/bromcom-ui/bcm-form.entry.js +31 -16
- package/dist/bromcom-ui/bcm-icon.entry.js +55 -35
- package/dist/bromcom-ui/bcm-input.entry.js +170 -276
- package/dist/bromcom-ui/bcm-label.entry.js +12 -549
- package/dist/bromcom-ui/bcm-link.entry.js +26 -5
- package/dist/bromcom-ui/bcm-list-2.entry.js +1063 -0
- package/dist/bromcom-ui/bcm-list-item.entry.js +4 -3
- package/dist/bromcom-ui/bcm-list-select.entry.js +14 -13
- package/dist/bromcom-ui/bcm-list.entry.js +10 -5
- package/dist/bromcom-ui/bcm-listbox-group.entry.js +5 -4
- package/dist/bromcom-ui/bcm-listbox-item.entry.js +5 -4
- package/dist/bromcom-ui/bcm-listbox.entry.js +17 -14
- package/dist/bromcom-ui/bcm-menu-group.entry.js +4 -3
- package/dist/bromcom-ui/bcm-menu-item.entry.js +4 -3
- package/dist/bromcom-ui/bcm-menu.entry.js +4 -3
- package/dist/bromcom-ui/bcm-message.entry.js +54 -50
- package/dist/bromcom-ui/bcm-modal.entry.js +47 -160
- package/dist/bromcom-ui/bcm-notification.entry.js +59 -47
- package/dist/bromcom-ui/bcm-popconfirm-box.entry.js +61 -21
- package/dist/bromcom-ui/bcm-popconfirm.entry.js +49 -93
- package/dist/bromcom-ui/bcm-popover-box.entry.js +44 -16
- package/dist/bromcom-ui/bcm-popover.entry.js +61 -101
- package/dist/bromcom-ui/bcm-progress.entry.js +77 -63
- package/dist/bromcom-ui/bcm-pulldown-group.entry.js +5 -4
- package/dist/bromcom-ui/bcm-pulldown-item.entry.js +4 -3
- package/dist/bromcom-ui/bcm-pulldown.entry.js +5 -4
- package/dist/bromcom-ui/bcm-radio-group.entry.js +183 -85
- package/dist/bromcom-ui/bcm-radio.entry.js +59 -79
- package/dist/bromcom-ui/bcm-range.entry.js +161 -0
- package/dist/bromcom-ui/bcm-result.entry.js +62 -38
- package/dist/bromcom-ui/bcm-search-2.entry.js +219 -0
- package/dist/bromcom-ui/bcm-search.entry.js +5 -4
- package/dist/bromcom-ui/bcm-select-box.entry.js +4 -3
- package/dist/bromcom-ui/bcm-select-group.entry.js +4 -3
- package/dist/bromcom-ui/bcm-select-option.entry.js +5 -4
- package/dist/bromcom-ui/bcm-select.entry.js +11 -12
- package/dist/bromcom-ui/bcm-selecto.entry.js +3 -2
- package/dist/bromcom-ui/bcm-slider.entry.js +4 -3
- package/dist/bromcom-ui/bcm-sub-comment.entry.js +5 -4
- package/dist/bromcom-ui/bcm-switch.entry.js +48 -37
- package/dist/bromcom-ui/bcm-tab-pane.entry.js +4 -3
- package/dist/bromcom-ui/bcm-tab.entry.js +8 -8
- package/dist/bromcom-ui/bcm-tabs-content.entry.js +5 -4
- package/dist/bromcom-ui/bcm-tabs.entry.js +6 -5
- package/dist/bromcom-ui/bcm-tag.entry.js +48 -44
- package/dist/bromcom-ui/bcm-text.entry.js +16 -10
- package/dist/bromcom-ui/bcm-textarea.entry.js +45 -68
- package/dist/bromcom-ui/bcm-time-picker.entry.js +4 -3
- package/dist/bromcom-ui/bcm-timeline-item.entry.js +10 -24
- package/dist/bromcom-ui/bcm-timeline.entry.js +11 -33
- package/dist/bromcom-ui/bcm-tooltip-box.entry.js +54 -16
- package/dist/bromcom-ui/bcm-tooltip.entry.js +48 -99
- package/dist/bromcom-ui/bcm-treeview-group.entry.js +1 -1
- package/dist/bromcom-ui/bcm-treeview-item.entry.js +5 -4
- package/dist/bromcom-ui/bcm-treeview.entry.js +6 -5
- package/dist/bromcom-ui/bcm-upload.entry.js +5 -4
- package/dist/bromcom-ui/bromcom-ui.css +40153 -35
- package/dist/bromcom-ui/bromcom-ui.esm.js +2 -2
- package/dist/bromcom-ui/caption-template-2d4ffc88.js +25 -0
- package/dist/bromcom-ui/color-helper-19448077.js +35 -0
- package/dist/bromcom-ui/{element-dragger-e40f0410.js → element-dragger-2a215f47.js} +1 -1
- package/dist/bromcom-ui/generate-8e440fc4.js +91 -0
- package/dist/bromcom-ui/index-55174f2a.js +58 -0
- package/dist/bromcom-ui/{index-9dbea026.js → index-dbc63c66.js} +2 -2
- package/dist/bromcom-ui/index-dd5c1283.js +187 -0
- package/dist/bromcom-ui/input-template-487d3243.js +83 -0
- package/dist/bromcom-ui/json-parse-decarator-223ea680.js +21 -0
- package/dist/bromcom-ui/label-template-501216fc.js +19 -0
- package/dist/bromcom-ui/number-helper-fea1966f.js +13 -0
- package/dist/bromcom-ui/{popover-placement-fb1f91e9.js → popover-placement-f7a6551c.js} +25 -17
- package/dist/bromcom-ui/property-decorators-21b15487.js +36 -0
- package/dist/bromcom-ui/slot-template-f79b82ee.js +9 -0
- package/dist/bromcom-ui/snq.es5-946822b8.js +14 -0
- package/dist/bromcom-ui/string-helper-35840f91.js +109 -0
- package/dist/bromcom-ui/types-6b2a6629.js +172 -0
- package/dist/bromcom-ui/{utils-1feb01eb.js → utils-333ded7f.js} +4 -1
- package/dist/types/components/atoms/avatar/avatar.d.ts +9 -5
- package/dist/types/components/atoms/badge/badge.d.ts +14 -9
- package/dist/types/components/atoms/button/button.d.ts +17 -10
- package/dist/types/components/atoms/button/types.d.ts +0 -22
- package/dist/types/components/atoms/divider/divider.d.ts +2 -2
- package/dist/types/components/atoms/icon/icon.d.ts +14 -9
- package/dist/types/components/atoms/label/label.d.ts +1 -2
- package/dist/types/components/atoms/link/link.d.ts +6 -1
- package/dist/types/components/atoms/states/badge.states.d.ts +7 -0
- package/dist/types/components/atoms/states/button.states.d.ts +7 -0
- package/dist/types/components/atoms/tag/tag.d.ts +14 -11
- package/dist/types/components/atoms/text/text.d.ts +4 -3
- package/dist/types/components/molecules/alert/alert.d.ts +15 -37
- package/dist/types/components/molecules/breadcrumb/breadcrumb.d.ts +9 -22
- package/dist/types/components/molecules/breadcrumb/types.d.ts +10 -0
- package/dist/types/components/molecules/checkbox/checkbox-lite.d.ts +7 -22
- package/dist/types/components/molecules/checkbox/checkbox.d.ts +26 -31
- package/dist/types/components/molecules/checkbox/group.d.ts +24 -83
- package/dist/types/components/molecules/collapse/collapse.d.ts +9 -6
- package/dist/types/components/molecules/collapse/group.d.ts +4 -2
- package/dist/types/components/molecules/dropdown/dropdown-button.d.ts +18 -31
- package/dist/types/components/molecules/dropdown/dropdown-item.d.ts +17 -16
- package/dist/types/components/molecules/dropdown/dropdown-list.d.ts +12 -35
- package/dist/types/components/molecules/dropdown/dropdown.d.ts +5 -30
- package/dist/types/components/molecules/empty/empty.d.ts +7 -24
- package/dist/types/components/molecules/empty/types.d.ts +0 -15
- package/dist/types/components/molecules/error-layout/error-layout.d.ts +6 -18
- package/dist/types/components/molecules/input/input.d.ts +39 -45
- package/dist/types/components/molecules/input/types.d.ts +13 -0
- package/dist/types/components/molecules/list/list-select.d.ts +0 -1
- package/dist/types/components/molecules/list/list.d.ts +0 -1
- package/dist/types/components/molecules/message/message.d.ts +13 -25
- package/dist/types/components/molecules/modal/modal.d.ts +12 -65
- package/dist/types/components/molecules/notification/notification.d.ts +14 -21
- package/dist/types/components/molecules/popconfirm/popconfirm-box.d.ts +14 -12
- package/dist/types/components/molecules/popconfirm/popconfirm.d.ts +10 -14
- package/dist/types/components/molecules/popover/popover-box.d.ts +10 -10
- package/dist/types/components/molecules/popover/popover.d.ts +13 -19
- package/dist/types/components/molecules/progress/progress.d.ts +8 -6
- package/dist/types/components/molecules/progress/types.d.ts +24 -0
- package/dist/types/components/molecules/radio/group.d.ts +28 -22
- package/dist/types/components/molecules/radio/radio.d.ts +13 -17
- package/dist/types/components/molecules/range/range.d.ts +36 -0
- package/dist/types/components/molecules/result/result.d.ts +14 -8
- package/dist/types/components/molecules/search-2/search-2.d.ts +30 -0
- package/dist/types/components/molecules/select/select.d.ts +4 -5
- package/dist/types/components/molecules/states/alert.states.d.ts +7 -0
- package/dist/types/components/molecules/states/checkbox-group.states.d.ts +53 -0
- package/dist/types/components/molecules/states/message.states.d.ts +7 -0
- package/dist/types/components/molecules/states/notification.states.d.ts +7 -0
- package/dist/types/components/molecules/states/radio-group.states.d.ts +47 -0
- package/dist/types/components/molecules/states/result.states.d.ts +7 -0
- package/dist/types/components/molecules/states/search.states.d.ts +13 -0
- package/dist/types/components/molecules/switch/switch.d.ts +18 -15
- package/dist/types/components/molecules/textarea/textarea.d.ts +23 -23
- package/dist/types/components/molecules/textarea/types.d.ts +9 -0
- package/dist/types/components/molecules/timeline/timeline-item.d.ts +0 -12
- package/dist/types/components/molecules/timeline/timeline.d.ts +2 -19
- package/dist/types/components/molecules/tooltip/tooltip-box.d.ts +11 -8
- package/dist/types/components/molecules/tooltip/tooltip.d.ts +13 -17
- package/dist/types/components/organism/colorpicker/colorpicker.d.ts +1 -2
- package/dist/types/components/organism/date-picker/date-picker.d.ts +7 -11
- package/dist/types/components/organism/datetime-picker/datetime-picker.d.ts +4 -5
- package/dist/types/components/organism/form/form.d.ts +2 -1
- package/dist/types/components/organism/list-2/list-2.d.ts +109 -0
- package/dist/types/components/organism/listbox/listbox.d.ts +1 -2
- package/dist/types/components/organism/states/bcm-list2.states.d.ts +24 -0
- package/dist/types/components/organism/tabs/tab.d.ts +2 -1
- package/dist/types/components/organism/time-picker/time-picker.d.ts +1 -1
- package/dist/types/components.d.ts +554 -511
- package/dist/types/decorators/json-parse-decarator.d.ts +4 -0
- package/dist/types/decorators/property-decorators.d.ts +6 -0
- package/dist/types/global/variables/colors.d.ts +0 -1
- package/dist/types/helper/generate.d.ts +4 -1
- package/dist/types/helper/number-helper.d.ts +9 -0
- package/dist/types/helper/string-helper.d.ts +3 -0
- package/dist/types/models/bcm.d.ts +1 -1
- package/dist/types/models/states/Atoms/bcm-Atoms-state.d.ts +34 -0
- package/dist/types/models/states/molecules/bcm-molecules-state.d.ts +78 -0
- package/dist/types/models/states/organisms/bcm-organisms-state.d.ts +71 -0
- package/dist/types/templates/button-template.d.ts +16 -0
- package/dist/types/templates/checkbox-group-template.d.ts +10 -0
- package/dist/types/templates/checkbox-template.d.ts +13 -0
- package/dist/types/templates/info-footer-template.d.ts +10 -0
- package/dist/types/templates/input-template.d.ts +30 -0
- package/dist/types/templates/list-item-template.d.ts +11 -0
- package/dist/types/templates/list-template.d.ts +23 -0
- package/dist/types/templates/tag-template.d.ts +17 -0
- package/dist/types/types/index.d.ts +1 -1
- package/dist/types/utils/popover-placement.d.ts +3 -3
- package/dist/types/utils/utils.d.ts +1 -0
- package/package.json +1 -1
- package/dist/bromcom-ui/bcm-content.entry.js +0 -15
- package/dist/bromcom-ui/bcm-dropdown-group.entry.js +0 -58
- package/dist/bromcom-ui/bcm-footer.entry.js +0 -15
- package/dist/bromcom-ui/bcm-header.entry.js +0 -15
- package/dist/bromcom-ui/datetime-helper-c373f888.js +0 -5
- package/dist/bromcom-ui/types-0e4b533d.js +0 -14
- package/dist/bromcom-ui/types-911a8837.js +0 -21
- package/dist/types/components/atoms/badge/types.d.ts +0 -4
- package/dist/types/components/molecules/checkbox/types.d.ts +0 -29
- package/dist/types/components/molecules/dropdown/dropdown-group.d.ts +0 -28
- package/dist/types/components/molecules/dropdown/types.d.ts +0 -20
- package/dist/types/components/molecules/error-layout/types.d.ts +0 -4
- package/dist/types/components/molecules/message/types.d.ts +0 -13
- package/dist/types/components/molecules/modal/modal-content.d.ts +0 -4
- package/dist/types/components/molecules/modal/modal-header.d.ts +0 -4
- package/dist/types/components/molecules/modal/model-footer.d.ts +0 -4
- package/dist/types/components/molecules/modal/types.d.ts +0 -41
- package/dist/types/components/molecules/notification/types.d.ts +0 -14
- package/dist/types/components/molecules/result/types.d.ts +0 -19
- package/dist/types/helper/datetime-helper.d.ts +0 -3
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
import { r as registerInstance, e as createEvent, h, f as Host, g as getElement } from './index-dbc63c66.js';
|
|
2
|
+
import { G as Generate } from './generate-8e440fc4.js';
|
|
3
|
+
import './_commonjsHelpers-2088bffa.js';
|
|
4
|
+
import './index-55174f2a.js';
|
|
5
|
+
import { c as createStore } from './index-dd5c1283.js';
|
|
6
|
+
import { s as snq } from './snq.es5-946822b8.js';
|
|
7
|
+
import './bcm-ad02f9c9.js';
|
|
8
|
+
import { S as StringHelper } from './string-helper-35840f91.js';
|
|
9
|
+
import { J as JsonParse } from './json-parse-decarator-223ea680.js';
|
|
10
|
+
import { I as InputTemplate } from './input-template-487d3243.js';
|
|
11
|
+
|
|
12
|
+
const { state } = createStore({
|
|
13
|
+
value: new Map(),
|
|
14
|
+
});
|
|
15
|
+
const setValue = (val) => {
|
|
16
|
+
const { id, dataSource } = val;
|
|
17
|
+
const data = {
|
|
18
|
+
id: snq(() => id, Generate.UID),
|
|
19
|
+
dataSource: recursive(dataSource)
|
|
20
|
+
};
|
|
21
|
+
state.value.set(data.id, data);
|
|
22
|
+
};
|
|
23
|
+
const recursive = (data, parentId) => {
|
|
24
|
+
const recData = data.map((item) => (Object.assign(Object.assign(Object.assign({}, item), { parentId: parentId || null }), (item.items && { items: snq(() => recursive(item.items, item.id), []) }))));
|
|
25
|
+
return recData;
|
|
26
|
+
};
|
|
27
|
+
const removeValue = (_id) => {
|
|
28
|
+
state.value.delete(_id);
|
|
29
|
+
};
|
|
30
|
+
const getValue = (id) => snq(() => state.value.get(id), {});
|
|
31
|
+
const getDataPagination = (id, limit = 3) => {
|
|
32
|
+
let data = [];
|
|
33
|
+
const value = getValue(id);
|
|
34
|
+
if (value) {
|
|
35
|
+
const { dataSource } = value;
|
|
36
|
+
data = dataSource.slice(0, limit);
|
|
37
|
+
}
|
|
38
|
+
return data;
|
|
39
|
+
};
|
|
40
|
+
// //search treeview data by text
|
|
41
|
+
// const searchData = (id, search, items?) => {
|
|
42
|
+
// let dataSource
|
|
43
|
+
// if (items && items.length > 0) {
|
|
44
|
+
// dataSource = items
|
|
45
|
+
// } else {
|
|
46
|
+
// const value = getValue(id);
|
|
47
|
+
// dataSource = value.dataSource;
|
|
48
|
+
// }
|
|
49
|
+
// let result = []
|
|
50
|
+
// if (dataSource) {
|
|
51
|
+
// dataSource.forEach(child => {
|
|
52
|
+
// if (child.text.toLowerCase().includes(search.toLowerCase())) {
|
|
53
|
+
// result.push(child)
|
|
54
|
+
// }
|
|
55
|
+
// result = result.concat(searchData(id, search, child.items))
|
|
56
|
+
// })
|
|
57
|
+
// };
|
|
58
|
+
// return result
|
|
59
|
+
// };
|
|
60
|
+
//nested search
|
|
61
|
+
const searchData = (id, searchText, items) => {
|
|
62
|
+
let dataSource;
|
|
63
|
+
if (items && items.length > 0) {
|
|
64
|
+
dataSource = items;
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
const value = getValue(id);
|
|
68
|
+
dataSource = value.dataSource;
|
|
69
|
+
}
|
|
70
|
+
let results = [];
|
|
71
|
+
if (dataSource) {
|
|
72
|
+
results.push(nestedSearch(dataSource, searchText));
|
|
73
|
+
//return with their parents
|
|
74
|
+
// dataSource.forEach(child => {
|
|
75
|
+
// if (child.text.toLowerCase().includes(searchText.toLowerCase())) {
|
|
76
|
+
// results.push(child)
|
|
77
|
+
// } else if (child.items && child.items.length > 0) {
|
|
78
|
+
// child.items = nestedSearch(child.items, searchText)
|
|
79
|
+
// if (child.items.length > 0) {
|
|
80
|
+
// results.push(child)
|
|
81
|
+
// }
|
|
82
|
+
// }
|
|
83
|
+
// })
|
|
84
|
+
}
|
|
85
|
+
return { result: Generate.flatArray(results[0].result), matching: results[0].matching, parentIndex: results[0].parentIndex };
|
|
86
|
+
};
|
|
87
|
+
const nestedSearch = (items, searchText) => {
|
|
88
|
+
let matching = [];
|
|
89
|
+
let parentIndex = [];
|
|
90
|
+
let result = [];
|
|
91
|
+
if (items && items.length > 0) {
|
|
92
|
+
items.forEach(child => {
|
|
93
|
+
if (StringHelper.slugify(child.text).indexOf(StringHelper.slugify(searchText)) > -1) {
|
|
94
|
+
result.push(child.id);
|
|
95
|
+
matching.push(child.id);
|
|
96
|
+
parentIndex.push(child.id);
|
|
97
|
+
// if (child.items && child.items.length > 0) {
|
|
98
|
+
// child.items.forEach(chi => {
|
|
99
|
+
// result.push(chi.id)
|
|
100
|
+
// })
|
|
101
|
+
// }
|
|
102
|
+
}
|
|
103
|
+
else if (child.items && child.items.length > 0) {
|
|
104
|
+
const found = nestedSearch(child.items, searchText);
|
|
105
|
+
if (found.result.length > 0) {
|
|
106
|
+
// found.result.forEach(chi => {
|
|
107
|
+
// })
|
|
108
|
+
result.push({ id: child.id, items: found.result });
|
|
109
|
+
// result.push(child.id)
|
|
110
|
+
parentIndex.push(child.id);
|
|
111
|
+
}
|
|
112
|
+
if (found.matching.length > 0) {
|
|
113
|
+
matching.push(child.id);
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
;
|
|
119
|
+
return { result, matching, parentIndex };
|
|
120
|
+
};
|
|
121
|
+
const searchState = {
|
|
122
|
+
setValue,
|
|
123
|
+
removeValue,
|
|
124
|
+
getValue,
|
|
125
|
+
getDataPagination,
|
|
126
|
+
searchData
|
|
127
|
+
};
|
|
128
|
+
|
|
129
|
+
var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
130
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
131
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
|
|
132
|
+
r = Reflect.decorate(decorators, target, key, desc);
|
|
133
|
+
else
|
|
134
|
+
for (var i = decorators.length - 1; i >= 0; i--)
|
|
135
|
+
if (d = decorators[i])
|
|
136
|
+
r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
137
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
138
|
+
};
|
|
139
|
+
const BcmSearch2 = class {
|
|
140
|
+
constructor(hostRef) {
|
|
141
|
+
registerInstance(this, hostRef);
|
|
142
|
+
this.bcmOnSearch = createEvent(this, "bcm-on-search", 7);
|
|
143
|
+
this._id = Generate.UID();
|
|
144
|
+
this.placeholder = "Search";
|
|
145
|
+
this.disabled = false;
|
|
146
|
+
this.readonly = false;
|
|
147
|
+
this.clearable = true;
|
|
148
|
+
this.limit = 10;
|
|
149
|
+
this.data = [];
|
|
150
|
+
this.tick = {};
|
|
151
|
+
this.isActiveClearable = false;
|
|
152
|
+
this.debounceHandler = Generate.debounceInput((event) => this.onSearchValue(event, this), 500, false, () => {
|
|
153
|
+
var _a, _b;
|
|
154
|
+
this.isActiveClearable = ((_b = (_a = this.inputElement) === null || _a === void 0 ? void 0 : _a.value) === null || _b === void 0 ? void 0 : _b.length) > 0 && this.clearable;
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
async componentDidLoad() {
|
|
158
|
+
await this.initState();
|
|
159
|
+
}
|
|
160
|
+
async dataChanged(newValue, oldValue) {
|
|
161
|
+
// console.log('data changed', newValue, oldValue)
|
|
162
|
+
if (newValue !== oldValue) {
|
|
163
|
+
console.log('data changed', newValue, oldValue);
|
|
164
|
+
await this.initState();
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
async initState() {
|
|
168
|
+
await searchState.setValue({
|
|
169
|
+
id: this._id,
|
|
170
|
+
dataSource: this.data,
|
|
171
|
+
});
|
|
172
|
+
await this.markForCheck();
|
|
173
|
+
}
|
|
174
|
+
markForCheck() {
|
|
175
|
+
this.tick = Generate.UID();
|
|
176
|
+
}
|
|
177
|
+
handleInput() {
|
|
178
|
+
// console.log("aheyya")
|
|
179
|
+
}
|
|
180
|
+
async onBcmFocus() {
|
|
181
|
+
this.inputElement.focus();
|
|
182
|
+
}
|
|
183
|
+
async onBcmBlur() {
|
|
184
|
+
this.inputElement.blur();
|
|
185
|
+
}
|
|
186
|
+
async onBcmSelect() {
|
|
187
|
+
this.inputElement.select();
|
|
188
|
+
}
|
|
189
|
+
handleFocus() { }
|
|
190
|
+
handleBlur() { }
|
|
191
|
+
handleChange() { }
|
|
192
|
+
async handleClear() {
|
|
193
|
+
this.inputElement.value = '';
|
|
194
|
+
const { value, id } = this.inputElement;
|
|
195
|
+
searchState.searchData(id, value);
|
|
196
|
+
this.isActiveClearable = false;
|
|
197
|
+
this.bcmOnSearch.emit({ result: null, value: null, matching: null, parentIndex: null });
|
|
198
|
+
return Promise.resolve();
|
|
199
|
+
}
|
|
200
|
+
onSearchValue(event, instance) {
|
|
201
|
+
const { value, id } = event.target;
|
|
202
|
+
const searchResult = value.length >= 2 ? searchState.searchData(id, value) : null;
|
|
203
|
+
const { bcmOnSearch, inputElement } = instance;
|
|
204
|
+
bcmOnSearch.emit({ result: searchResult === null || searchResult === void 0 ? void 0 : searchResult.result, value: inputElement === null || inputElement === void 0 ? void 0 : inputElement.value, matching: searchResult === null || searchResult === void 0 ? void 0 : searchResult.matching, parentIndex: searchResult === null || searchResult === void 0 ? void 0 : searchResult.parentIndex });
|
|
205
|
+
}
|
|
206
|
+
render() {
|
|
207
|
+
const { _id, placeholder, disabled, readonly } = this;
|
|
208
|
+
return h(Host, null, h(InputTemplate, { size: "medium", id: _id, type: "text", placeholder: placeholder, disabled: disabled, readonly: readonly, clearable: this.isActiveClearable, handleFocus: () => this.handleFocus(), handleBlur: () => this.handleBlur(), handleChange: () => this.handleChange(), handleClear: () => this.handleClear(), handleInput: this.debounceHandler, ref: (el) => this.inputElement = el }));
|
|
209
|
+
}
|
|
210
|
+
get el() { return getElement(this); }
|
|
211
|
+
static get watchers() { return {
|
|
212
|
+
"data": ["dataChanged"]
|
|
213
|
+
}; }
|
|
214
|
+
};
|
|
215
|
+
__decorate([
|
|
216
|
+
JsonParse('data')
|
|
217
|
+
], BcmSearch2.prototype, "data", void 0);
|
|
218
|
+
|
|
219
|
+
export { BcmSearch2 as bcm_search_2 };
|