Skip to content

Commit 08a804e

Browse files
committed
fix: text-decoration in clickables
1 parent 24a6fdc commit 08a804e

File tree

2 files changed

+21
-14
lines changed

2 files changed

+21
-14
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@solved-ac/ui-react",
3-
"version": "0.0.1-alpha.18",
3+
"version": "0.0.1-alpha.19",
44
"description": "React component library used by solved.ac",
55
"author": "shiftpsh",
66
"license": "MIT",

src/utils/styles.ts

Lines changed: 20 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,28 @@ import { SolvedTheme } from '../styles'
44
export type MakeKebabCase<S extends string, ReturnQueue extends string = ''> =
55
// Separate string into first character T and rest string U, only works if length >= 1
66
S extends `${infer T}${infer U}`
7-
// If it's the first character of whole string, just lowercase first character
8-
? ReturnQueue extends ''
9-
? MakeKebabCase<U, Lowercase<T>>
10-
// if it's uppercased character, append -${Lowercase<T>} into return queue
11-
: T extends Uppercase<T>
12-
? MakeKebabCase<U, `${ReturnQueue}-${Lowercase<T>}`>
13-
// or, just append itself
14-
: MakeKebabCase<U, `${ReturnQueue}${T}`>
15-
// It's else branch of the first length >= 1 check
16-
: `${ReturnQueue}${S}`
7+
? // If it's the first character of whole string, just lowercase first character
8+
ReturnQueue extends ''
9+
? MakeKebabCase<U, Lowercase<T>>
10+
: // if it's uppercased character, append -${Lowercase<T>} into return queue
11+
T extends Uppercase<T>
12+
? MakeKebabCase<U, `${ReturnQueue}-${Lowercase<T>}`>
13+
: // or, just append itself
14+
MakeKebabCase<U, `${ReturnQueue}${T}`>
15+
: // It's else branch of the first length >= 1 check
16+
`${ReturnQueue}${S}`
1717

1818
export const toCssName = <S extends string>(name: S): MakeKebabCase<S> =>
19-
name.replace(/[A-Z]/g, (m) => `-${m.toLowerCase()}`).replace(/^-/, '') as MakeKebabCase<S>
19+
name
20+
.replace(/[A-Z]/g, (m) => `-${m.toLowerCase()}`)
21+
.replace(/^-/, '') as MakeKebabCase<S>
2022

21-
export type VariableName<Prefix extends string, Name> =
22-
`--solvedac-${MakeKebabCase<Prefix>}-${MakeKebabCase<Name extends string ? Name : string>}`
23+
export type VariableName<
24+
Prefix extends string,
25+
Name
26+
> = `--solvedac-${MakeKebabCase<Prefix>}-${MakeKebabCase<
27+
Name extends string ? Name : string
28+
>}`
2329

2430
export const cssVariables = <
2531
T extends {
@@ -72,6 +78,7 @@ export const cssCentering = css`
7278
`
7379

7480
export const cssClickable = css`
81+
text-decoration: none;
7582
cursor: pointer;
7683
user-select: none;
7784
&:disabled {

0 commit comments

Comments
 (0)