MCPcopy Create free account
hub / github.com/MADEVAL/Oat-Table / #sortValue

Method #sortValue

src/table.js:142–168  ·  view source on GitHub ↗
(cell, type)

Source from the content-addressed store, hash-verified

140 }
141
142 #sortValue(cell, type) {
143 const raw = (cell?.getAttribute('data-sort-value') || cell?.querySelector('time')?.getAttribute('datetime') || cell?.textContent || '').trim();
144
145 if (type === 'number') {
146 const number = Number.parseFloat(raw.replace(/[^0-9.+-]/g, ''));
147 return Number.isNaN(number) ? Number.NEGATIVE_INFINITY : number;
148 }
149
150 if (type === 'date') {
151 const time = Date.parse(raw);
152 return Number.isNaN(time) ? Number.NEGATIVE_INFINITY : time;
153 }
154
155 if (type === 'auto') {
156 const number = Number.parseFloat(raw.replace(/[^0-9.+-]/g, ''));
157 if (!Number.isNaN(number) && /\d/.test(raw)) {
158 return number;
159 }
160
161 const time = Date.parse(raw);
162 if (!Number.isNaN(time) && /\d{4}|\d{1,2}[:/-]/.test(raw)) {
163 return time;
164 }
165 }
166
167 return raw.toLocaleLowerCase();
168 }
169
170 #compare(first, second) {
171 if (typeof first === 'number' && typeof second === 'number') {

Callers 1

#sortByMethod · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected