@aquera/nile-elements 0.1.49-beta-1.4 → 0.1.50-beta-1.0
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/README.md +3 -0
- package/demo/index.html +106 -29
- package/dist/nile-select/nile-select.cjs.js +1 -1
- package/dist/nile-select/nile-select.cjs.js.map +1 -1
- package/dist/nile-select/nile-select.esm.js +2 -2
- package/dist/nile-select/virtual-scroll-helper.cjs.js +1 -1
- package/dist/nile-select/virtual-scroll-helper.cjs.js.map +1 -1
- package/dist/nile-select/virtual-scroll-helper.esm.js +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.cjs.js +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.cjs.js.map +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.esm.js +2 -2
- package/dist/nile-virtual-select/nile-virtual-select.test.cjs.js +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.test.cjs.js.map +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.test.esm.js +12 -12
- package/dist/nile-virtual-select/renderer.cjs.js +1 -1
- package/dist/nile-virtual-select/renderer.cjs.js.map +1 -1
- package/dist/nile-virtual-select/renderer.esm.js +8 -7
- package/dist/nile-virtual-select/search-manager.cjs.js +1 -1
- package/dist/nile-virtual-select/search-manager.cjs.js.map +1 -1
- package/dist/nile-virtual-select/search-manager.esm.js +1 -1
- package/dist/nile-virtual-select/selection-manager.cjs.js +1 -1
- package/dist/nile-virtual-select/selection-manager.cjs.js.map +1 -1
- package/dist/nile-virtual-select/selection-manager.esm.js +1 -1
- package/dist/src/nile-select/nile-select.d.ts +3 -1
- package/dist/src/nile-select/nile-select.js +1 -2
- package/dist/src/nile-select/nile-select.js.map +1 -1
- package/dist/src/nile-select/virtual-scroll-helper.js +1 -1
- package/dist/src/nile-select/virtual-scroll-helper.js.map +1 -1
- package/dist/src/nile-virtual-select/nile-virtual-select.d.ts +16 -4
- package/dist/src/nile-virtual-select/nile-virtual-select.js +35 -10
- package/dist/src/nile-virtual-select/nile-virtual-select.js.map +1 -1
- package/dist/src/nile-virtual-select/nile-virtual-select.test.js +36 -12
- package/dist/src/nile-virtual-select/nile-virtual-select.test.js.map +1 -1
- package/dist/src/nile-virtual-select/renderer.d.ts +2 -2
- package/dist/src/nile-virtual-select/renderer.js +8 -5
- package/dist/src/nile-virtual-select/renderer.js.map +1 -1
- package/dist/src/nile-virtual-select/search-manager.d.ts +1 -1
- package/dist/src/nile-virtual-select/search-manager.js +3 -2
- package/dist/src/nile-virtual-select/search-manager.js.map +1 -1
- package/dist/src/nile-virtual-select/selection-manager.d.ts +1 -1
- package/dist/src/nile-virtual-select/selection-manager.js +10 -3
- package/dist/src/nile-virtual-select/selection-manager.js.map +1 -1
- package/dist/src/nile-virtual-select/types.d.ts +6 -1
- package/dist/src/nile-virtual-select/types.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/nile-select/nile-select.ts +3 -1
- package/src/nile-select/virtual-scroll-helper.ts +1 -1
- package/src/nile-virtual-select/nile-virtual-select.test.ts +36 -12
- package/src/nile-virtual-select/nile-virtual-select.ts +44 -10
- package/src/nile-virtual-select/renderer.ts +13 -5
- package/src/nile-virtual-select/search-manager.ts +4 -2
- package/src/nile-virtual-select/selection-manager.ts +16 -5
- package/src/nile-virtual-select/types.ts +7 -1
- package/vscode-html-custom-data.json +2 -2
package/README.md
CHANGED
@@ -79,6 +79,9 @@ To run a local development server that serves the basic demo located in `demo/in
|
|
79
79
|
|
80
80
|
In this section, you can find the updates for each release of `nile-elements`. It's a good practice to maintain detailed release notes to help users and developers understand what changes have been made from one version to another and how these changes might affect their projects.
|
81
81
|
|
82
|
+
#### Version 0.1.50-beta-1.0
|
83
|
+
- Nile Virtual Select: renderconfig added.
|
84
|
+
|
82
85
|
#### Version 0.1.49-beta-1.4
|
83
86
|
- Nile Virtual Select: Update from master.
|
84
87
|
|
package/demo/index.html
CHANGED
@@ -14,47 +14,62 @@
|
|
14
14
|
|
15
15
|
<body>
|
16
16
|
<div class="component-viewer">
|
17
|
-
<div>
|
18
|
-
<nile-select
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
<nile-option value="6"> Six </nile-option>
|
25
|
-
<nile-option value="7"> Seven </nile-option>
|
26
|
-
<nile-option value="8"> Eight </nile-option>
|
27
|
-
<nile-option value="9"> Nine </nile-option>
|
28
|
-
<nile-option value="10"> Ten </nile-option>
|
29
|
-
<nile-option value="11"> Eleven </nile-option>
|
30
|
-
<nile-option value="12"> Tweleve </nile-option>
|
17
|
+
<div>Virtual Select - Basic String</div>
|
18
|
+
<nile-select
|
19
|
+
class="virtual-scroll-string"
|
20
|
+
placeholder="Please Select"
|
21
|
+
searchEnabled="true"
|
22
|
+
enableVirtualScroll="true"
|
23
|
+
>
|
31
24
|
</nile-select>
|
32
25
|
<br />
|
33
|
-
<
|
26
|
+
<div>Virtual Select - Basic Object</div>
|
27
|
+
<nile-select
|
28
|
+
class="virtual-scroll"
|
29
|
+
placeholder="Please Select"
|
30
|
+
searchEnabled="true"
|
31
|
+
enableVirtualScroll="true"
|
32
|
+
>
|
33
|
+
</nile-select>
|
34
34
|
<br />
|
35
|
-
<
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
35
|
+
<nile-select
|
36
|
+
multiple
|
37
|
+
class="virtual-scroll-multiple"
|
38
|
+
placeholder="Please Select"
|
39
|
+
searchEnabled="true"
|
40
|
+
enableVirtualScroll="true"
|
41
|
+
>
|
42
42
|
</nile-select>
|
43
|
+
|
43
44
|
<br />
|
44
45
|
<nile-divider></nile-divider>
|
45
46
|
<br />
|
46
|
-
|
47
|
+
|
48
|
+
<div>Virtual Select - Enhanced (renderItemConfig)</div>
|
47
49
|
<nile-select
|
48
|
-
class="virtual-scroll"
|
50
|
+
class="virtual-scroll-enhanced"
|
49
51
|
placeholder="Please Select"
|
50
52
|
searchEnabled="true"
|
51
53
|
enableVirtualScroll="true"
|
52
54
|
>
|
53
55
|
</nile-select>
|
54
|
-
|
56
|
+
<br />
|
55
57
|
<nile-select
|
56
58
|
multiple
|
57
|
-
class="virtual-scroll-multiple"
|
59
|
+
class="virtual-scroll-enhanced-multiple"
|
60
|
+
placeholder="Please Select"
|
61
|
+
searchEnabled="true"
|
62
|
+
enableVirtualScroll="true"
|
63
|
+
>
|
64
|
+
</nile-select>
|
65
|
+
|
66
|
+
<br />
|
67
|
+
<nile-divider></nile-divider>
|
68
|
+
<br />
|
69
|
+
|
70
|
+
<div>Virtual Select - Complex Data Structure</div>
|
71
|
+
<nile-select
|
72
|
+
class="virtual-scroll-complex"
|
58
73
|
placeholder="Please Select"
|
59
74
|
searchEnabled="true"
|
60
75
|
enableVirtualScroll="true"
|
@@ -62,18 +77,80 @@
|
|
62
77
|
</nile-select>
|
63
78
|
</div>
|
64
79
|
<script>
|
80
|
+
|
81
|
+
// Basic Array of String example
|
82
|
+
const optionsString = Array.from({ length: 1000 }, (_, i) => `Option ${i + 1}`);
|
83
|
+
const basicString = document.querySelector('nile-select.virtual-scroll-string');
|
84
|
+
basicString.data = optionsString;
|
85
|
+
|
86
|
+
|
87
|
+
// Basic data structure
|
65
88
|
const options = Array.from({ length: 1000 }, (_, i) => ({
|
66
89
|
value: `option-${i + 1}`,
|
67
90
|
label: `Option ${i + 1}`,
|
68
91
|
}));
|
92
|
+
|
93
|
+
|
94
|
+
// Enhanced data structure with more fields
|
95
|
+
const enhancedOptions = Array.from({ length: 1000 }, (_, i) => ({
|
96
|
+
id: i + 1,
|
97
|
+
firstName: `User${i + 1}`,
|
98
|
+
lastName: `Name${i + 1}`,
|
99
|
+
email: `user${i + 1}@example.com`,
|
100
|
+
department: `Dept${Math.floor(i / 100) + 1}`,
|
101
|
+
displayName: `User${i + 1} Name${i + 1}`,
|
102
|
+
value: `user-${i + 1}`
|
103
|
+
}));
|
104
|
+
|
105
|
+
// Complex data structure
|
106
|
+
const complexOptions = Array.from({ length: 1000 }, (_, i) => ({
|
107
|
+
code: `CODE-${String(i + 1).padStart(3, '0')}`,
|
108
|
+
name: `Product ${i + 1}`,
|
109
|
+
category: `Category ${Math.floor(i / 50) + 1}`,
|
110
|
+
description: `This is a detailed description for product ${i + 1}`,
|
111
|
+
price: Math.floor(Math.random() * 1000) + 100,
|
112
|
+
value: `product-${i + 1}`
|
113
|
+
}));
|
114
|
+
|
115
|
+
// Basic example
|
69
116
|
const e = document.querySelector('nile-select.virtual-scroll');
|
70
|
-
e.renderItemFunction = item => item.label;
|
71
117
|
e.data = options;
|
72
118
|
|
73
|
-
|
74
|
-
me.
|
119
|
+
const me = document.querySelector('nile-select.virtual-scroll-multiple');
|
120
|
+
me.renderItemConfig = {
|
121
|
+
getDisplayText: (item) => item.label
|
122
|
+
};
|
75
123
|
me.data = options;
|
76
124
|
me.value = ['option-2', 'option-4'];
|
125
|
+
|
126
|
+
// Enhanced examples using renderItemConfig (new way)
|
127
|
+
const enhanced = document.querySelector('nile-select.virtual-scroll-enhanced');
|
128
|
+
enhanced.renderItemConfig = {
|
129
|
+
getDisplayText: (item) => `${item.firstName} ${item.lastName}`,
|
130
|
+
getValue: (item) => item.value,
|
131
|
+
getSearchText: (item) => `${item.firstName} ${item.lastName} ${item.email} ${item.department}`
|
132
|
+
};
|
133
|
+
enhanced.data = enhancedOptions;
|
134
|
+
|
135
|
+
const enhancedMultiple = document.querySelector('nile-select.virtual-scroll-enhanced-multiple');
|
136
|
+
enhancedMultiple.renderItemConfig = {
|
137
|
+
getDisplayText: (item) => `${item.firstName} ${item.lastName}`,
|
138
|
+
getValue: (item) => item.value,
|
139
|
+
getSearchText: (item) => `${item.firstName} ${item.lastName} ${item.email} ${item.department}`
|
140
|
+
};
|
141
|
+
enhancedMultiple.data = enhancedOptions;
|
142
|
+
enhancedMultiple.value = ['user-2', 'user-4', 'user-6'];
|
143
|
+
|
144
|
+
|
145
|
+
// Complex example with different display, value, and search text
|
146
|
+
const complex = document.querySelector('nile-select.virtual-scroll-complex');
|
147
|
+
complex.renderItemConfig = {
|
148
|
+
getDisplayText: (item) => `${item.name} (${item.code}) - $${item.price}`,
|
149
|
+
getValue: (item) => item.value,
|
150
|
+
getSearchText: (item) => `${item.name} ${item.category} ${item.description}`
|
151
|
+
};
|
152
|
+
complex.data = complexOptions;
|
153
|
+
|
77
154
|
</script>
|
78
155
|
</body>
|
79
156
|
</html>
|