pre-installations and preparations
This commit is contained in:
1 parent
3e5a0329cb
commit
201d621ac3
6977 files changed
+742826
No files matched your search
+1
@@ -0,0 +1 @@
|
||||
export default function composeClasses<ClassKey extends string>(slots: Record<ClassKey, ReadonlyArray<string | false | undefined | null>>, getUtilityClass: (slot: string) => string, classes?: Record<string, string> | undefined): Record<ClassKey, string>;
|
||||
+21
@@ -0,0 +1,21 @@
|
||||
export default function composeClasses(slots, getUtilityClass, classes = undefined) {
|
||||
const output = {};
|
||||
Object.keys(slots).forEach(
|
||||
// `Object.keys(slots)` can't be wider than `T` because we infer `T` from `slots`.
|
||||
// @ts-expect-error https://github.com/microsoft/TypeScript/pull/12253#issuecomment-263132208
|
||||
slot => {
|
||||
output[slot] = slots[slot].reduce((acc, key) => {
|
||||
if (key) {
|
||||
const utilityClass = getUtilityClass(key);
|
||||
if (utilityClass !== '') {
|
||||
acc.push(utilityClass);
|
||||
}
|
||||
if (classes && classes[key]) {
|
||||
acc.push(classes[key]);
|
||||
}
|
||||
}
|
||||
return acc;
|
||||
}, []).join(' ');
|
||||
});
|
||||
return output;
|
||||
}
|
||||
+1
@@ -0,0 +1 @@
|
||||
export { default } from './composeClasses';
|
||||
+1
@@ -0,0 +1 @@
|
||||
export { default } from './composeClasses';
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
{
|
||||
"sideEffects": false,
|
||||
"module": "./index.js",
|
||||
"main": "../node/composeClasses/index.js",
|
||||
"types": "./index.d.ts"
|
||||
}
|
||||
Reference in new issue
Block a user