mirror of
https://github.com/crater-invoice/crater.git
synced 2025-10-28 12:11:08 -04:00
v5.0.0 update
This commit is contained in:
30
resources/scripts/components/base/base-table/helpers.js
Normal file
30
resources/scripts/components/base/base-table/helpers.js
Normal file
@ -0,0 +1,30 @@
|
||||
export function classList(...classes) {
|
||||
return classes
|
||||
.map(c => Array.isArray(c) ? c : [c])
|
||||
.reduce((classes, c) => classes.concat(c), []);
|
||||
}
|
||||
|
||||
export function get(object, path) {
|
||||
if (!path) {
|
||||
return object;
|
||||
}
|
||||
|
||||
if (object === null || typeof object !== 'object') {
|
||||
return object;
|
||||
}
|
||||
|
||||
const [pathHead, pathTail] = path.split(/\.(.+)/);
|
||||
|
||||
return get(object[pathHead], pathTail);
|
||||
}
|
||||
|
||||
export function pick(object, properties) {
|
||||
return properties.reduce((pickedObject, property) => {
|
||||
pickedObject[property] = object[property];
|
||||
return pickedObject;
|
||||
}, {});
|
||||
}
|
||||
|
||||
export function range(from, to) {
|
||||
return [...Array(to - from)].map((_, i) => i + from);
|
||||
}
|
||||
Reference in New Issue
Block a user