@aquera/nile-elements 0.1.74-beta-1.0 → 0.1.75-beta-1.2
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 +117 -22
- package/dist/{fixture-3bfb4490.cjs.js → fixture-5b79f853.cjs.js} +2 -2
- package/dist/{fixture-3bfb4490.cjs.js.map → fixture-5b79f853.cjs.js.map} +1 -1
- package/dist/{fixture-e7023246.esm.js → fixture-90b199c4.esm.js} +1 -1
- package/dist/{fixture-8edec91c.esm.js → fixture-cf7bfcf5.esm.js} +1 -1
- package/dist/{fixture-7bfb866e.cjs.js → fixture-dbd66009.cjs.js} +2 -2
- package/dist/{fixture-fe6c932e.cjs.js.map → fixture-dbd66009.cjs.js.map} +1 -1
- package/dist/index.js +10 -5
- package/dist/nile-accordion/nile-accordian.test.cjs.js +1 -1
- package/dist/nile-accordion/nile-accordian.test.esm.js +1 -1
- package/dist/nile-auto-complete/nile-auto-complete.test.cjs.js +1 -1
- package/dist/nile-auto-complete/nile-auto-complete.test.esm.js +1 -1
- package/dist/nile-avatar/nile-avatar.test.cjs.js +1 -1
- package/dist/nile-avatar/nile-avatar.test.esm.js +1 -1
- package/dist/nile-badge/nile-badge.test.cjs.js +1 -1
- package/dist/nile-badge/nile-badge.test.esm.js +1 -1
- package/dist/nile-button/nile-button.test.cjs.js +1 -1
- package/dist/nile-button/nile-button.test.esm.js +1 -1
- package/dist/nile-button-toggle-group/nile-button-toggle-group.test.cjs.js +1 -1
- package/dist/nile-button-toggle-group/nile-button-toggle-group.test.esm.js +1 -1
- package/dist/nile-calendar/nile-calendar.test.cjs.js +1 -1
- package/dist/nile-calendar/nile-calendar.test.esm.js +1 -1
- package/dist/nile-card/nile-card.test.cjs.js +1 -1
- package/dist/nile-card/nile-card.test.esm.js +1 -1
- package/dist/nile-checkbox/nile-checkbox.test.cjs.js +1 -1
- package/dist/nile-checkbox/nile-checkbox.test.esm.js +1 -1
- package/dist/nile-chip/nile-chip.test.cjs.js +1 -1
- package/dist/nile-chip/nile-chip.test.esm.js +1 -1
- package/dist/nile-dialog/nile-dialog.test.cjs.js +1 -1
- package/dist/nile-dialog/nile-dialog.test.esm.js +1 -1
- package/dist/nile-drawer/nile-drawer.test.cjs.js +1 -1
- package/dist/nile-drawer/nile-drawer.test.esm.js +1 -1
- package/dist/nile-dropdown/nile-dropdown.test.cjs.js +1 -1
- package/dist/nile-dropdown/nile-dropdown.test.esm.js +1 -1
- package/dist/nile-empty-state/nile-empty-state.test.cjs.js +1 -1
- package/dist/nile-empty-state/nile-empty-state.test.esm.js +1 -1
- package/dist/nile-error-message/nile-error-message.test.cjs.js +1 -1
- package/dist/nile-error-message/nile-error-message.test.esm.js +1 -1
- package/dist/nile-file-preview/nile-file-preview.test.cjs.js +1 -1
- package/dist/nile-file-preview/nile-file-preview.test.esm.js +1 -1
- package/dist/nile-file-upload/nile-file-upload.test.cjs.js +1 -1
- package/dist/nile-file-upload/nile-file-upload.test.esm.js +1 -1
- package/dist/nile-filter-chip/nile-filter-chip.test.cjs.js +1 -1
- package/dist/nile-filter-chip/nile-filter-chip.test.esm.js +1 -1
- package/dist/nile-form-group/nile-form-group.test.cjs.js +1 -1
- package/dist/nile-form-group/nile-form-group.test.esm.js +1 -1
- package/dist/nile-form-help-text/nile-form-help-text.test.cjs.js +1 -1
- package/dist/nile-form-help-text/nile-form-help-text.test.esm.js +1 -1
- package/dist/nile-hero/nile-hero.test.cjs.js +1 -1
- package/dist/nile-hero/nile-hero.test.esm.js +1 -1
- package/dist/nile-icon/nile-icon.test.cjs.js +1 -1
- package/dist/nile-icon/nile-icon.test.esm.js +1 -1
- package/dist/nile-input/nile-input.test.cjs.js +1 -1
- package/dist/nile-input/nile-input.test.esm.js +1 -1
- package/dist/nile-link/nile-link.test.cjs.js +1 -1
- package/dist/nile-link/nile-link.test.esm.js +1 -1
- package/dist/nile-loader/nile-loader.test.cjs.js +1 -1
- package/dist/nile-loader/nile-loader.test.esm.js +1 -1
- package/dist/nile-popover/nile-popover.test.cjs.js +1 -1
- package/dist/nile-popover/nile-popover.test.esm.js +1 -1
- package/dist/nile-popup/nile-popup.test.cjs.js +1 -1
- package/dist/nile-popup/nile-popup.test.esm.js +1 -1
- package/dist/nile-progress-bar/nile-progress-bar.test.cjs.js +1 -1
- package/dist/nile-progress-bar/nile-progress-bar.test.esm.js +1 -1
- package/dist/nile-radio/nile-radio.test.cjs.js +1 -1
- package/dist/nile-radio/nile-radio.test.esm.js +1 -1
- package/dist/nile-radio-group/nile-radio-group.test.cjs.js +1 -1
- package/dist/nile-radio-group/nile-radio-group.test.esm.js +1 -1
- 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 +1 -1
- package/dist/nile-select/nile-select.test.cjs.js +1 -1
- package/dist/nile-select/nile-select.test.esm.js +1 -1
- package/dist/nile-slide-toggle/nile-slide-toggle.test.cjs.js +1 -1
- package/dist/nile-slide-toggle/nile-slide-toggle.test.esm.js +1 -1
- package/dist/nile-tab-group/nile-tab-group.test.cjs.js +1 -1
- package/dist/nile-tab-group/nile-tab-group.test.esm.js +1 -1
- package/dist/nile-textarea/nile-textarea.test.cjs.js +1 -1
- package/dist/nile-textarea/nile-textarea.test.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.css.cjs.js +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.css.cjs.js.map +1 -1
- package/dist/nile-virtual-select/nile-virtual-select.css.esm.js +4 -0
- 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.esm.js +1 -1
- 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 +4 -3
- package/dist/nile-virtual-select/temp_nile-virtual-select copy.cjs.js +2 -0
- package/dist/nile-virtual-select/temp_nile-virtual-select copy.cjs.js.map +1 -0
- package/dist/nile-virtual-select/temp_nile-virtual-select copy.esm.js +231 -0
- package/dist/src/internal/resizable-helper.d.ts +59 -0
- package/dist/src/internal/resizable-helper.js +115 -0
- package/dist/src/internal/resizable-helper.js.map +1 -0
- package/dist/src/internal/resizable-styles.d.ts +16 -0
- package/dist/src/internal/resizable-styles.js +144 -0
- package/dist/src/internal/resizable-styles.js.map +1 -0
- package/dist/src/internal/virtualizer-error-handler.d.ts +30 -0
- package/dist/src/internal/virtualizer-error-handler.js +82 -0
- package/dist/src/internal/virtualizer-error-handler.js.map +1 -0
- package/dist/src/lib/index.d.ts +7 -0
- package/dist/src/lib/index.js +8 -0
- package/dist/src/lib/index.js.map +1 -0
- package/dist/src/lib/virtualize.d.ts +32 -0
- package/dist/src/lib/virtualize.js +105 -0
- package/dist/src/lib/virtualize.js.map +1 -0
- package/dist/src/lib/virtualize.test.d.ts +7 -0
- package/dist/src/lib/virtualize.test.js +57 -0
- package/dist/src/lib/virtualize.test.js.map +1 -0
- package/dist/src/nile-badge/__snapshots__/nile-badge.test.snap.js +17 -0
- package/dist/src/nile-calendar/__snapshots__/nile-calendar.test.snap.js +310 -0
- package/dist/src/nile-card/__snapshots__/nile-card.test.snap.js +34 -0
- package/dist/src/nile-checkbox/__snapshots__/nile-checkbox.test.snap.js +31 -0
- package/dist/src/nile-grid/data-processor.d.ts +37 -0
- package/dist/src/nile-grid/data-processor.js +122 -0
- package/dist/src/nile-grid/data-processor.js.map +1 -0
- package/dist/src/nile-grid/event-handlers.d.ts +35 -0
- package/dist/src/nile-grid/event-handlers.js +158 -0
- package/dist/src/nile-grid/event-handlers.js.map +1 -0
- package/dist/src/nile-grid/index.d.ts +5 -0
- package/dist/src/nile-grid/index.js +6 -0
- package/dist/src/nile-grid/index.js.map +1 -0
- package/dist/src/nile-grid/nile-grid.css.d.ts +1 -0
- package/dist/src/nile-grid/nile-grid.css.js +120 -0
- package/dist/src/nile-grid/nile-grid.css.js.map +1 -0
- package/dist/src/nile-grid/nile-grid.d.ts +39 -0
- package/dist/src/nile-grid/nile-grid.js +182 -0
- package/dist/src/nile-grid/nile-grid.js.map +1 -0
- package/dist/src/nile-grid/renderer.d.ts +8 -0
- package/dist/src/nile-grid/renderer.js +78 -0
- package/dist/src/nile-grid/renderer.js.map +1 -0
- package/dist/src/nile-grid/resize-handler.d.ts +4 -0
- package/dist/src/nile-grid/resize-handler.js +36 -0
- package/dist/src/nile-grid/resize-handler.js.map +1 -0
- package/dist/src/nile-grid/types.d.ts +32 -0
- package/dist/src/nile-grid/types.js +2 -0
- package/dist/src/nile-grid/types.js.map +1 -0
- package/dist/src/nile-grid/utils.d.ts +4 -0
- package/dist/src/nile-grid/utils.js +32 -0
- package/dist/src/nile-grid/utils.js.map +1 -0
- package/dist/src/nile-hero/__snapshots__/nile-hero.test.snap.js +47 -0
- package/dist/src/nile-icon/__snapshots__/nile-icon.test.snap.js +16 -0
- package/dist/src/nile-input/__snapshots__/nile-input.test.snap.js +75 -0
- package/dist/src/nile-popover/__snapshots__/nile-popover.test.snap.js +22 -0
- package/dist/src/nile-select/nile-select.js +3 -2
- package/dist/src/nile-select/nile-select.js.map +1 -1
- package/dist/src/nile-table-body/virtual-scroll-helper.d.ts +9 -0
- package/dist/src/nile-table-body/virtual-scroll-helper.js +24 -0
- package/dist/src/nile-table-body/virtual-scroll-helper.js.map +1 -0
- package/dist/src/nile-virtual-select/nile-virtual-select.css.js +4 -0
- package/dist/src/nile-virtual-select/nile-virtual-select.css.js.map +1 -1
- package/dist/src/nile-virtual-select/nile-virtual-select.d.ts +10 -1
- package/dist/src/nile-virtual-select/nile-virtual-select.js +71 -9
- package/dist/src/nile-virtual-select/nile-virtual-select.js.map +1 -1
- package/dist/src/nile-virtual-select/renderer.d.ts +2 -2
- package/dist/src/nile-virtual-select/renderer.js +6 -5
- package/dist/src/nile-virtual-select/renderer.js.map +1 -1
- package/dist/src/nile-virtual-select/temp_nile-virtual-select copy.d.ts +273 -0
- package/dist/src/nile-virtual-select/temp_nile-virtual-select copy.js +1305 -0
- package/dist/src/nile-virtual-select/temp_nile-virtual-select copy.js.map +1 -0
- package/dist/src/nile-virtual-select/virtualizer-error-handler.d.ts +21 -0
- package/dist/src/nile-virtual-select/virtualizer-error-handler.js +56 -0
- package/dist/src/nile-virtual-select/virtualizer-error-handler.js.map +1 -0
- package/dist/src/nile-virtual-table-body/index.d.ts +2 -0
- package/dist/src/nile-virtual-table-body/index.js +3 -0
- package/dist/src/nile-virtual-table-body/index.js.map +1 -0
- package/dist/src/nile-virtual-table-body/nile-virtual-table-body.css.d.ts +1 -0
- package/dist/src/nile-virtual-table-body/nile-virtual-table-body.css.js +44 -0
- package/dist/src/nile-virtual-table-body/nile-virtual-table-body.css.js.map +1 -0
- package/dist/src/nile-virtual-table-body/nile-virtual-table-body.d.ts +50 -0
- package/dist/src/nile-virtual-table-body/nile-virtual-table-body.js +135 -0
- package/dist/src/nile-virtual-table-body/nile-virtual-table-body.js.map +1 -0
- package/dist/src/nile-virtual-table-body/renderer.d.ts +16 -0
- package/dist/src/nile-virtual-table-body/renderer.js +49 -0
- package/dist/src/nile-virtual-table-body/renderer.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
- package/src/nile-select/nile-select.ts +3 -2
- package/src/nile-virtual-select/nile-virtual-select.css.ts +4 -0
- package/src/nile-virtual-select/nile-virtual-select.ts +86 -11
- package/src/nile-virtual-select/renderer.ts +7 -5
- package/src/nile-virtual-select/temp_nile-virtual-select copy.ts +1398 -0
- package/vscode-html-custom-data.json +246 -1
- package/dist/axe.min-2b379f29.cjs.js +0 -12
- package/dist/axe.min-2b379f29.cjs.js.map +0 -1
- package/dist/axe.min-c2cd8733.esm.js +0 -12
- package/dist/fixture-2b5b3aba.esm.js +0 -569
- package/dist/fixture-7bfb866e.cjs.js.map +0 -1
- package/dist/fixture-fe6c932e.cjs.js +0 -395
@@ -0,0 +1,310 @@
|
|
1
|
+
/* @web/test-runner snapshot v1 */
|
2
|
+
export const snapshots = {};
|
3
|
+
|
4
|
+
snapshots["NileCalendar renders correctly with default properties"] =
|
5
|
+
`<div class="base">
|
6
|
+
<div class="calendar-config hidden">
|
7
|
+
<div class="calendar-switcher">
|
8
|
+
<nile-tab-group
|
9
|
+
centered=""
|
10
|
+
value="absolute"
|
11
|
+
>
|
12
|
+
<nile-tab
|
13
|
+
active=""
|
14
|
+
aria-disabled="false"
|
15
|
+
aria-selected="true"
|
16
|
+
centered=""
|
17
|
+
id="nile-tab-1"
|
18
|
+
panel="absolute"
|
19
|
+
role="tab"
|
20
|
+
slot="nav"
|
21
|
+
>
|
22
|
+
Absolute
|
23
|
+
</nile-tab>
|
24
|
+
<nile-tab
|
25
|
+
aria-disabled="false"
|
26
|
+
aria-selected="false"
|
27
|
+
centered=""
|
28
|
+
id="nile-tab-2"
|
29
|
+
panel="relative"
|
30
|
+
role="tab"
|
31
|
+
slot="nav"
|
32
|
+
>
|
33
|
+
Relative
|
34
|
+
</nile-tab>
|
35
|
+
</nile-tab-group>
|
36
|
+
</div>
|
37
|
+
</div>
|
38
|
+
<div class="calendar-wrapper">
|
39
|
+
<div class="calendar-container">
|
40
|
+
<div class="calendar">
|
41
|
+
<div class="calendar-header">
|
42
|
+
<nile-icon
|
43
|
+
class="calendar-header__month-navigation"
|
44
|
+
color="black"
|
45
|
+
description=""
|
46
|
+
method="fill"
|
47
|
+
name="arrowleft"
|
48
|
+
set="local"
|
49
|
+
size="16"
|
50
|
+
style="--nile-svg-fill: black; --nile-svg-height: 16px; --nile-svg-width: 16px;"
|
51
|
+
>
|
52
|
+
</nile-icon>
|
53
|
+
<span>
|
54
|
+
August
|
55
|
+
2025
|
56
|
+
</span>
|
57
|
+
<nile-icon
|
58
|
+
class="calendar-header__month-navigation"
|
59
|
+
color="black"
|
60
|
+
description=""
|
61
|
+
method="fill"
|
62
|
+
name="arrowright"
|
63
|
+
set="local"
|
64
|
+
size="16"
|
65
|
+
style="--nile-svg-fill: black; --nile-svg-height: 16px; --nile-svg-width: 16px;"
|
66
|
+
>
|
67
|
+
</nile-icon>
|
68
|
+
</div>
|
69
|
+
<div class="days_container">
|
70
|
+
<div class="day_name">
|
71
|
+
Su
|
72
|
+
</div>
|
73
|
+
<div class="day_name">
|
74
|
+
Mo
|
75
|
+
</div>
|
76
|
+
<div class="day_name">
|
77
|
+
Tu
|
78
|
+
</div>
|
79
|
+
<div class="day_name">
|
80
|
+
We
|
81
|
+
</div>
|
82
|
+
<div class="day_name">
|
83
|
+
Th
|
84
|
+
</div>
|
85
|
+
<div class="day_name">
|
86
|
+
Fr
|
87
|
+
</div>
|
88
|
+
<div class="day_name">
|
89
|
+
Sa
|
90
|
+
</div>
|
91
|
+
<div class="day_date filler">
|
92
|
+
<span style="position:relative;">
|
93
|
+
27
|
94
|
+
</span>
|
95
|
+
</div>
|
96
|
+
<div class="day_date filler">
|
97
|
+
<span style="position:relative;">
|
98
|
+
28
|
99
|
+
</span>
|
100
|
+
</div>
|
101
|
+
<div class="day_date filler">
|
102
|
+
<span style="position:relative;">
|
103
|
+
29
|
104
|
+
</span>
|
105
|
+
</div>
|
106
|
+
<div class="day_date filler">
|
107
|
+
<span style="position:relative;">
|
108
|
+
30
|
109
|
+
</span>
|
110
|
+
</div>
|
111
|
+
<div class="day_date filler">
|
112
|
+
<span style="position:relative;">
|
113
|
+
31
|
114
|
+
</span>
|
115
|
+
</div>
|
116
|
+
<div class="day_date">
|
117
|
+
<span style="position:relative;">
|
118
|
+
1
|
119
|
+
</span>
|
120
|
+
</div>
|
121
|
+
<div class="day_date">
|
122
|
+
<span style="position:relative;">
|
123
|
+
2
|
124
|
+
</span>
|
125
|
+
</div>
|
126
|
+
<div class="day_date">
|
127
|
+
<span style="position:relative;">
|
128
|
+
3
|
129
|
+
</span>
|
130
|
+
</div>
|
131
|
+
<div class="day_date">
|
132
|
+
<span style="position:relative;">
|
133
|
+
4
|
134
|
+
<div class="current__date__dot">
|
135
|
+
</div>
|
136
|
+
</span>
|
137
|
+
</div>
|
138
|
+
<div class="day_date">
|
139
|
+
<span style="position:relative;">
|
140
|
+
5
|
141
|
+
</span>
|
142
|
+
</div>
|
143
|
+
<div class="day_date">
|
144
|
+
<span style="position:relative;">
|
145
|
+
6
|
146
|
+
</span>
|
147
|
+
</div>
|
148
|
+
<div class="day_date">
|
149
|
+
<span style="position:relative;">
|
150
|
+
7
|
151
|
+
</span>
|
152
|
+
</div>
|
153
|
+
<div class="day_date">
|
154
|
+
<span style="position:relative;">
|
155
|
+
8
|
156
|
+
</span>
|
157
|
+
</div>
|
158
|
+
<div class="day_date">
|
159
|
+
<span style="position:relative;">
|
160
|
+
9
|
161
|
+
</span>
|
162
|
+
</div>
|
163
|
+
<div class="day_date">
|
164
|
+
<span style="position:relative;">
|
165
|
+
10
|
166
|
+
</span>
|
167
|
+
</div>
|
168
|
+
<div class="day_date">
|
169
|
+
<span style="position:relative;">
|
170
|
+
11
|
171
|
+
</span>
|
172
|
+
</div>
|
173
|
+
<div class="day_date">
|
174
|
+
<span style="position:relative;">
|
175
|
+
12
|
176
|
+
</span>
|
177
|
+
</div>
|
178
|
+
<div class="day_date">
|
179
|
+
<span style="position:relative;">
|
180
|
+
13
|
181
|
+
</span>
|
182
|
+
</div>
|
183
|
+
<div class="day_date">
|
184
|
+
<span style="position:relative;">
|
185
|
+
14
|
186
|
+
</span>
|
187
|
+
</div>
|
188
|
+
<div class="day_date">
|
189
|
+
<span style="position:relative;">
|
190
|
+
15
|
191
|
+
</span>
|
192
|
+
</div>
|
193
|
+
<div class="day_date">
|
194
|
+
<span style="position:relative;">
|
195
|
+
16
|
196
|
+
</span>
|
197
|
+
</div>
|
198
|
+
<div class="day_date">
|
199
|
+
<span style="position:relative;">
|
200
|
+
17
|
201
|
+
</span>
|
202
|
+
</div>
|
203
|
+
<div class="day_date">
|
204
|
+
<span style="position:relative;">
|
205
|
+
18
|
206
|
+
</span>
|
207
|
+
</div>
|
208
|
+
<div class="day_date">
|
209
|
+
<span style="position:relative;">
|
210
|
+
19
|
211
|
+
</span>
|
212
|
+
</div>
|
213
|
+
<div class="day_date">
|
214
|
+
<span style="position:relative;">
|
215
|
+
20
|
216
|
+
</span>
|
217
|
+
</div>
|
218
|
+
<div class="day_date">
|
219
|
+
<span style="position:relative;">
|
220
|
+
21
|
221
|
+
</span>
|
222
|
+
</div>
|
223
|
+
<div class="day_date">
|
224
|
+
<span style="position:relative;">
|
225
|
+
22
|
226
|
+
</span>
|
227
|
+
</div>
|
228
|
+
<div class="day_date">
|
229
|
+
<span style="position:relative;">
|
230
|
+
23
|
231
|
+
</span>
|
232
|
+
</div>
|
233
|
+
<div class="day_date">
|
234
|
+
<span style="position:relative;">
|
235
|
+
24
|
236
|
+
</span>
|
237
|
+
</div>
|
238
|
+
<div class="day_date">
|
239
|
+
<span style="position:relative;">
|
240
|
+
25
|
241
|
+
</span>
|
242
|
+
</div>
|
243
|
+
<div class="day_date">
|
244
|
+
<span style="position:relative;">
|
245
|
+
26
|
246
|
+
</span>
|
247
|
+
</div>
|
248
|
+
<div class="day_date">
|
249
|
+
<span style="position:relative;">
|
250
|
+
27
|
251
|
+
</span>
|
252
|
+
</div>
|
253
|
+
<div class="day_date">
|
254
|
+
<span style="position:relative;">
|
255
|
+
28
|
256
|
+
</span>
|
257
|
+
</div>
|
258
|
+
<div class="day_date">
|
259
|
+
<span style="position:relative;">
|
260
|
+
29
|
261
|
+
</span>
|
262
|
+
</div>
|
263
|
+
<div class="day_date">
|
264
|
+
<span style="position:relative;">
|
265
|
+
30
|
266
|
+
</span>
|
267
|
+
</div>
|
268
|
+
<div class="day_date">
|
269
|
+
<span style="position:relative;">
|
270
|
+
31
|
271
|
+
</span>
|
272
|
+
</div>
|
273
|
+
<div class="day_date filler">
|
274
|
+
<span style="position:relative;">
|
275
|
+
1
|
276
|
+
</span>
|
277
|
+
</div>
|
278
|
+
<div class="day_date filler">
|
279
|
+
<span style="position:relative;">
|
280
|
+
2
|
281
|
+
</span>
|
282
|
+
</div>
|
283
|
+
<div class="day_date filler">
|
284
|
+
<span style="position:relative;">
|
285
|
+
3
|
286
|
+
</span>
|
287
|
+
</div>
|
288
|
+
<div class="day_date filler">
|
289
|
+
<span style="position:relative;">
|
290
|
+
4
|
291
|
+
</span>
|
292
|
+
</div>
|
293
|
+
<div class="day_date filler">
|
294
|
+
<span style="position:relative;">
|
295
|
+
5
|
296
|
+
</span>
|
297
|
+
</div>
|
298
|
+
<div class="day_date filler">
|
299
|
+
<span style="position:relative;">
|
300
|
+
6
|
301
|
+
</span>
|
302
|
+
</div>
|
303
|
+
</div>
|
304
|
+
</div>
|
305
|
+
</div>
|
306
|
+
</div>
|
307
|
+
</div>
|
308
|
+
`;
|
309
|
+
/* end snapshot NileCalendar renders correctly with default properties */
|
310
|
+
|
@@ -0,0 +1,34 @@
|
|
1
|
+
/* @web/test-runner snapshot v1 */
|
2
|
+
export const snapshots = {};
|
3
|
+
|
4
|
+
snapshots["Nile Card should render the card properly"] =
|
5
|
+
`<div
|
6
|
+
class="card card--has-footer"
|
7
|
+
part="base"
|
8
|
+
>
|
9
|
+
<div
|
10
|
+
class="body__wrapper"
|
11
|
+
part="body__wrapper"
|
12
|
+
>
|
13
|
+
<slot
|
14
|
+
class="card__header"
|
15
|
+
name="header"
|
16
|
+
part="header"
|
17
|
+
>
|
18
|
+
</slot>
|
19
|
+
<slot
|
20
|
+
class="card__body"
|
21
|
+
part="body"
|
22
|
+
>
|
23
|
+
</slot>
|
24
|
+
</div>
|
25
|
+
<slot
|
26
|
+
class="card__footer"
|
27
|
+
name="footer"
|
28
|
+
part="footer"
|
29
|
+
>
|
30
|
+
</slot>
|
31
|
+
</div>
|
32
|
+
`;
|
33
|
+
/* end snapshot Nile Card should render the card properly */
|
34
|
+
|
@@ -0,0 +1,31 @@
|
|
1
|
+
/* @web/test-runner snapshot v1 */
|
2
|
+
export const snapshots = {};
|
3
|
+
|
4
|
+
snapshots["NileCheckbox renders correctly with default properties"] =
|
5
|
+
`<label
|
6
|
+
class="checkbox checkbox--medium"
|
7
|
+
part="base"
|
8
|
+
>
|
9
|
+
<input
|
10
|
+
aria-checked="false"
|
11
|
+
class="checkbox__input"
|
12
|
+
name=""
|
13
|
+
title=""
|
14
|
+
type="checkbox"
|
15
|
+
>
|
16
|
+
<span
|
17
|
+
class="checkbox__control"
|
18
|
+
part="control"
|
19
|
+
>
|
20
|
+
</span>
|
21
|
+
<div
|
22
|
+
class="checkbox__label"
|
23
|
+
part="label"
|
24
|
+
>
|
25
|
+
<slot>
|
26
|
+
</slot>
|
27
|
+
</div>
|
28
|
+
</label>
|
29
|
+
`;
|
30
|
+
/* end snapshot NileCheckbox renders correctly with default properties */
|
31
|
+
|
@@ -0,0 +1,37 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright Aquera Inc 2023
|
3
|
+
*
|
4
|
+
* This source code is licensed under the BSD-3-Clause license found in the
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
6
|
+
*/
|
7
|
+
import type { GridColumnDef, GridRowData, GridOptions } from './types.js';
|
8
|
+
export declare class GridDataProcessor {
|
9
|
+
private options;
|
10
|
+
private pageSize;
|
11
|
+
private currentPage;
|
12
|
+
private sortField;
|
13
|
+
private sortDirection;
|
14
|
+
private filterText;
|
15
|
+
constructor(options: GridOptions, pageSize?: number);
|
16
|
+
setOptions(options: GridOptions): void;
|
17
|
+
setPageSize(pageSize: number): void;
|
18
|
+
setCurrentPage(page: number): void;
|
19
|
+
setSortField(field: string): void;
|
20
|
+
setSortDirection(direction: 'asc' | 'desc'): void;
|
21
|
+
setFilterText(text: string): void;
|
22
|
+
processData(data: GridRowData[], columns: GridColumnDef[]): {
|
23
|
+
filteredData: GridRowData[];
|
24
|
+
sortedData: GridRowData[];
|
25
|
+
paginatedData: GridRowData[];
|
26
|
+
totalPages: number;
|
27
|
+
};
|
28
|
+
private applyFilters;
|
29
|
+
private applySorting;
|
30
|
+
private applyPagination;
|
31
|
+
getSortClass(column: GridColumnDef): string;
|
32
|
+
getSortIcon(column: GridColumnDef): string;
|
33
|
+
isAllSelected(paginatedData: GridRowData[]): boolean;
|
34
|
+
isPartiallySelected(paginatedData: GridRowData[]): boolean;
|
35
|
+
getSortField(): string;
|
36
|
+
getSortDirection(): 'asc' | 'desc';
|
37
|
+
}
|
@@ -0,0 +1,122 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright Aquera Inc 2023
|
3
|
+
*
|
4
|
+
* This source code is licensed under the BSD-3-Clause license found in the
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
6
|
+
*/
|
7
|
+
export class GridDataProcessor {
|
8
|
+
constructor(options, pageSize = 20) {
|
9
|
+
this.options = options;
|
10
|
+
this.pageSize = pageSize;
|
11
|
+
this.currentPage = 1;
|
12
|
+
this.sortField = '';
|
13
|
+
this.sortDirection = 'asc';
|
14
|
+
this.filterText = '';
|
15
|
+
}
|
16
|
+
setOptions(options) {
|
17
|
+
this.options = options;
|
18
|
+
}
|
19
|
+
setPageSize(pageSize) {
|
20
|
+
this.pageSize = pageSize;
|
21
|
+
}
|
22
|
+
setCurrentPage(page) {
|
23
|
+
this.currentPage = page;
|
24
|
+
}
|
25
|
+
setSortField(field) {
|
26
|
+
this.sortField = field;
|
27
|
+
}
|
28
|
+
setSortDirection(direction) {
|
29
|
+
this.sortDirection = direction;
|
30
|
+
}
|
31
|
+
setFilterText(text) {
|
32
|
+
this.filterText = text;
|
33
|
+
}
|
34
|
+
processData(data, columns) {
|
35
|
+
// Apply filtering
|
36
|
+
const filteredData = this.applyFilters(data, columns);
|
37
|
+
// Apply sorting
|
38
|
+
const sortedData = this.applySorting(filteredData, columns);
|
39
|
+
// Apply pagination
|
40
|
+
const totalPages = Math.ceil(sortedData.length / this.pageSize);
|
41
|
+
const paginatedData = this.applyPagination(sortedData);
|
42
|
+
return {
|
43
|
+
filteredData,
|
44
|
+
sortedData,
|
45
|
+
paginatedData,
|
46
|
+
totalPages
|
47
|
+
};
|
48
|
+
}
|
49
|
+
applyFilters(data, columns) {
|
50
|
+
if (!this.filterText || !this.options.enableFiltering) {
|
51
|
+
return data;
|
52
|
+
}
|
53
|
+
return data.filter(row => {
|
54
|
+
return columns.some(column => {
|
55
|
+
const value = row[column.field];
|
56
|
+
if (value == null)
|
57
|
+
return false;
|
58
|
+
return String(value).toLowerCase().includes(this.filterText.toLowerCase());
|
59
|
+
});
|
60
|
+
});
|
61
|
+
}
|
62
|
+
applySorting(data, columns) {
|
63
|
+
if (!this.sortField || !this.options.enableSorting) {
|
64
|
+
return data;
|
65
|
+
}
|
66
|
+
const column = columns.find(col => col.field === this.sortField);
|
67
|
+
if (!column)
|
68
|
+
return data;
|
69
|
+
return [...data].sort((a, b) => {
|
70
|
+
const aVal = a[column.field];
|
71
|
+
const bVal = b[column.field];
|
72
|
+
if (aVal == null && bVal == null)
|
73
|
+
return 0;
|
74
|
+
if (aVal == null)
|
75
|
+
return 1;
|
76
|
+
if (bVal == null)
|
77
|
+
return -1;
|
78
|
+
if (typeof aVal === 'string' && typeof bVal === 'string') {
|
79
|
+
return this.sortDirection === 'asc'
|
80
|
+
? aVal.localeCompare(bVal)
|
81
|
+
: bVal.localeCompare(aVal);
|
82
|
+
}
|
83
|
+
if (typeof aVal === 'number' && typeof bVal === 'number') {
|
84
|
+
return this.sortDirection === 'asc' ? aVal - bVal : bVal - aVal;
|
85
|
+
}
|
86
|
+
return 0;
|
87
|
+
});
|
88
|
+
}
|
89
|
+
applyPagination(data) {
|
90
|
+
if (!this.options.enablePagination) {
|
91
|
+
return data;
|
92
|
+
}
|
93
|
+
const startIndex = (this.currentPage - 1) * this.pageSize;
|
94
|
+
const endIndex = startIndex + this.pageSize;
|
95
|
+
return data.slice(startIndex, endIndex);
|
96
|
+
}
|
97
|
+
getSortClass(column) {
|
98
|
+
if (this.sortField !== column.field)
|
99
|
+
return '';
|
100
|
+
return this.sortDirection === 'asc' ? 'sort-asc' : 'sort-desc';
|
101
|
+
}
|
102
|
+
getSortIcon(column) {
|
103
|
+
if (this.sortField !== column.field)
|
104
|
+
return '↕';
|
105
|
+
return this.sortDirection === 'asc' ? '↑' : '↓';
|
106
|
+
}
|
107
|
+
isAllSelected(paginatedData) {
|
108
|
+
return paginatedData.length > 0 && paginatedData.every(row => row.selected);
|
109
|
+
}
|
110
|
+
isPartiallySelected(paginatedData) {
|
111
|
+
const selectedCount = paginatedData.filter(row => row.selected).length;
|
112
|
+
return selectedCount > 0 && selectedCount < paginatedData.length;
|
113
|
+
}
|
114
|
+
// Getters for event handlers
|
115
|
+
getSortField() {
|
116
|
+
return this.sortField;
|
117
|
+
}
|
118
|
+
getSortDirection() {
|
119
|
+
return this.sortDirection;
|
120
|
+
}
|
121
|
+
}
|
122
|
+
//# sourceMappingURL=data-processor.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"data-processor.js","sourceRoot":"","sources":["../../../src/nile-grid/data-processor.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Copyright Aquera Inc 2023\n *\n * This source code is licensed under the BSD-3-Clause license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport type { GridColumnDef, GridRowData, GridOptions } from './types.js';\n\nexport class GridDataProcessor {\n private options: GridOptions;\n private pageSize: number;\n private currentPage: number;\n private sortField: string;\n private sortDirection: 'asc' | 'desc';\n private filterText: string;\n\n constructor(options: GridOptions, pageSize: number = 20) {\n this.options = options;\n this.pageSize = pageSize;\n this.currentPage = 1;\n this.sortField = '';\n this.sortDirection = 'asc';\n this.filterText = '';\n }\n\n setOptions(options: GridOptions): void {\n this.options = options;\n }\n\n setPageSize(pageSize: number): void {\n this.pageSize = pageSize;\n }\n\n setCurrentPage(page: number): void {\n this.currentPage = page;\n }\n\n setSortField(field: string): void {\n this.sortField = field;\n }\n\n setSortDirection(direction: 'asc' | 'desc'): void {\n this.sortDirection = direction;\n }\n\n setFilterText(text: string): void {\n this.filterText = text;\n }\n\n processData(data: GridRowData[], columns: GridColumnDef[]): {\n filteredData: GridRowData[];\n sortedData: GridRowData[];\n paginatedData: GridRowData[];\n totalPages: number;\n } {\n // Apply filtering\n const filteredData = this.applyFilters(data, columns);\n \n // Apply sorting\n const sortedData = this.applySorting(filteredData, columns);\n \n // Apply pagination\n const totalPages = Math.ceil(sortedData.length / this.pageSize);\n const paginatedData = this.applyPagination(sortedData);\n\n return {\n filteredData,\n sortedData,\n paginatedData,\n totalPages\n };\n }\n\n private applyFilters(data: GridRowData[], columns: GridColumnDef[]): GridRowData[] {\n if (!this.filterText || !this.options.enableFiltering) {\n return data;\n }\n\n return data.filter(row => {\n return columns.some(column => {\n const value = row[column.field];\n if (value == null) return false;\n return String(value).toLowerCase().includes(this.filterText.toLowerCase());\n });\n });\n }\n\n private applySorting(data: GridRowData[], columns: GridColumnDef[]): GridRowData[] {\n if (!this.sortField || !this.options.enableSorting) {\n return data;\n }\n\n const column = columns.find(col => col.field === this.sortField);\n if (!column) return data;\n\n return [...data].sort((a, b) => {\n const aVal = a[column.field];\n const bVal = b[column.field];\n \n if (aVal == null && bVal == null) return 0;\n if (aVal == null) return 1;\n if (bVal == null) return -1;\n\n if (typeof aVal === 'string' && typeof bVal === 'string') {\n return this.sortDirection === 'asc' \n ? aVal.localeCompare(bVal)\n : bVal.localeCompare(aVal);\n }\n\n if (typeof aVal === 'number' && typeof bVal === 'number') {\n return this.sortDirection === 'asc' ? aVal - bVal : bVal - aVal;\n }\n\n return 0;\n });\n }\n\n private applyPagination(data: GridRowData[]): GridRowData[] {\n if (!this.options.enablePagination) {\n return data;\n }\n\n const startIndex = (this.currentPage - 1) * this.pageSize;\n const endIndex = startIndex + this.pageSize;\n return data.slice(startIndex, endIndex);\n }\n\n getSortClass(column: GridColumnDef): string {\n if (this.sortField !== column.field) return '';\n return this.sortDirection === 'asc' ? 'sort-asc' : 'sort-desc';\n }\n\n getSortIcon(column: GridColumnDef): string {\n if (this.sortField !== column.field) return '↕';\n return this.sortDirection === 'asc' ? '↑' : '↓';\n }\n\n isAllSelected(paginatedData: GridRowData[]): boolean {\n return paginatedData.length > 0 && paginatedData.every(row => row.selected);\n }\n\n isPartiallySelected(paginatedData: GridRowData[]): boolean {\n const selectedCount = paginatedData.filter(row => row.selected).length;\n return selectedCount > 0 && selectedCount < paginatedData.length;\n }\n\n // Getters for event handlers\n getSortField(): string {\n return this.sortField;\n }\n\n getSortDirection(): 'asc' | 'desc' {\n return this.sortDirection;\n }\n}\n"]}
|
@@ -0,0 +1,35 @@
|
|
1
|
+
/**
|
2
|
+
* Copyright Aquera Inc 2023
|
3
|
+
*
|
4
|
+
* This source code is licensed under the BSD-3-Clause license found in the
|
5
|
+
* LICENSE file in the root directory of this source tree.
|
6
|
+
*/
|
7
|
+
import type { GridColumnDef, GridRowData, GridOptions } from './types.js';
|
8
|
+
import type { GridDataProcessor } from './data-processor.js';
|
9
|
+
export declare class GridEventHandlers {
|
10
|
+
private options;
|
11
|
+
private dataProcessor;
|
12
|
+
private selectedRows;
|
13
|
+
private isResizing;
|
14
|
+
private resizingColumn;
|
15
|
+
private dragStartX;
|
16
|
+
private dragStartWidth;
|
17
|
+
constructor(options: GridOptions, dataProcessor: GridDataProcessor);
|
18
|
+
setOptions(options: GridOptions): void;
|
19
|
+
handleKeyDown(event: KeyboardEvent): void;
|
20
|
+
handleWheel(event: WheelEvent, updateVirtualScrolling: () => void): void;
|
21
|
+
handleColumnSort(column: GridColumnDef, onSort: (field: string, direction: 'asc' | 'desc') => void): void;
|
22
|
+
handleColumnFilter(column: GridColumnDef, value: string, onFilter: () => void): void;
|
23
|
+
handleRowSelection(row: GridRowData, event: Event, currentData: GridRowData[], onSelectionChange: () => void): void;
|
24
|
+
handleHeaderSelectionChange(event: Event, currentData: GridRowData[], onSelectionChange: () => void): void;
|
25
|
+
handleRowClick(row: GridRowData, event: Event): void;
|
26
|
+
handleCellEdit(row: GridRowData, column: GridColumnDef, value: any, onCellEdit: (row: GridRowData, column: GridColumnDef, oldValue: any, newValue: any) => void): void;
|
27
|
+
handleColumnResizeStart(column: GridColumnDef, event: MouseEvent): void;
|
28
|
+
private handleColumnResizeMove;
|
29
|
+
private handleColumnResizeEnd;
|
30
|
+
private handleArrowKeyNavigation;
|
31
|
+
private emit;
|
32
|
+
getSelectedRows(): GridRowData[];
|
33
|
+
isResizingColumn(): boolean;
|
34
|
+
getResizingColumn(): GridColumnDef | null;
|
35
|
+
}
|