@meith/theme-raidframe 0.30.0 → 0.31.0
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/package.json +4 -4
- package/src/slots/footer.tsx +35 -22
- package/src/slots/forum-jump.tsx +25 -31
- package/src/theme.ts +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@meith/theme-raidframe",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.31.0",
|
|
4
4
|
"description": "A gaming theme for Meith — guild, raid and match boards — built on the default theme's slots.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -20,9 +20,9 @@
|
|
|
20
20
|
"access": "public"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"@meith/theme-default": "^0.
|
|
24
|
-
"@meith/theme-kit": "^0.
|
|
25
|
-
"@meith/ui": "^0.
|
|
23
|
+
"@meith/theme-default": "^0.31.0",
|
|
24
|
+
"@meith/theme-kit": "^0.31.0",
|
|
25
|
+
"@meith/ui": "^0.31.0"
|
|
26
26
|
},
|
|
27
27
|
"peerDependencies": {
|
|
28
28
|
"react": "^19.2.0"
|
package/src/slots/footer.tsx
CHANGED
|
@@ -8,6 +8,7 @@ export function Footer({
|
|
|
8
8
|
links,
|
|
9
9
|
timezoneLabel,
|
|
10
10
|
poweredBy,
|
|
11
|
+
regions,
|
|
11
12
|
copy,
|
|
12
13
|
}: FooterModel & { copy: SlotCopy }) {
|
|
13
14
|
const c = (key: string) => fromSlotCopy(copy, `raidframe.footer.${key}`)
|
|
@@ -15,31 +16,43 @@ export function Footer({
|
|
|
15
16
|
return (
|
|
16
17
|
<footer className="mt-auto">
|
|
17
18
|
<div className={RULE} aria-hidden="true" />
|
|
18
|
-
<div className="
|
|
19
|
-
|
|
20
|
-
<
|
|
21
|
-
|
|
22
|
-
|
|
19
|
+
<div className="border-t border-border bg-surface">
|
|
20
|
+
{regions?.controls && (
|
|
21
|
+
<div className="flex flex-wrap items-center justify-end gap-x-6 gap-y-2 border-b border-border px-4 py-3">
|
|
22
|
+
{regions.controls}
|
|
23
|
+
</div>
|
|
24
|
+
)}
|
|
25
|
+
<div className="flex flex-wrap items-center justify-between gap-x-6 gap-y-2 px-4 py-3 font-mono text-[0.6875rem] tracking-[0.12em] text-muted-foreground uppercase">
|
|
26
|
+
<span className="inline-flex items-center gap-2 text-foreground">
|
|
27
|
+
<span aria-hidden="true" className="size-2 rotate-45 border border-primary" />
|
|
28
|
+
{boardTitle}
|
|
29
|
+
</span>
|
|
23
30
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
+
<nav aria-label={c('linksAriaLabel')} className="flex flex-wrap gap-x-4 gap-y-1">
|
|
32
|
+
{links.map((link) => (
|
|
33
|
+
<a key={link.href} href={link.href} className="hover:text-primary">
|
|
34
|
+
{link.label}
|
|
35
|
+
</a>
|
|
36
|
+
))}
|
|
37
|
+
</nav>
|
|
31
38
|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
39
|
+
<span className="flex flex-wrap gap-x-4 gap-y-1">
|
|
40
|
+
<span>
|
|
41
|
+
{c('allTimesPrefix')}
|
|
42
|
+
{timezoneLabel}
|
|
43
|
+
</span>
|
|
44
|
+
{poweredBy && (
|
|
45
|
+
<a
|
|
46
|
+
href={poweredBy.href}
|
|
47
|
+
target="_blank"
|
|
48
|
+
rel="noreferrer"
|
|
49
|
+
className="hover:text-primary"
|
|
50
|
+
>
|
|
51
|
+
{poweredBy.label}
|
|
52
|
+
</a>
|
|
53
|
+
)}
|
|
36
54
|
</span>
|
|
37
|
-
|
|
38
|
-
<a href={poweredBy.href} className="hover:text-primary">
|
|
39
|
-
{poweredBy.label}
|
|
40
|
-
</a>
|
|
41
|
-
)}
|
|
42
|
-
</span>
|
|
55
|
+
</div>
|
|
43
56
|
</div>
|
|
44
57
|
</footer>
|
|
45
58
|
)
|
package/src/slots/forum-jump.tsx
CHANGED
|
@@ -8,38 +8,32 @@ export function ForumJump({ action, field, forums, submitLabel, label }: ForumJu
|
|
|
8
8
|
const id = `forum-jump-${field}`
|
|
9
9
|
|
|
10
10
|
return (
|
|
11
|
-
<
|
|
12
|
-
<
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
className="mx-auto flex w-full max-w-6xl flex-wrap items-center gap-2 px-4 py-3 sm:justify-end"
|
|
16
|
-
>
|
|
17
|
-
<label htmlFor={id} className={MICRO}>
|
|
18
|
-
{label}
|
|
19
|
-
</label>
|
|
11
|
+
<form method="get" action={action} className="flex flex-wrap items-center gap-2">
|
|
12
|
+
<label htmlFor={id} className={MICRO}>
|
|
13
|
+
{label}
|
|
14
|
+
</label>
|
|
20
15
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
16
|
+
<select
|
|
17
|
+
id={id}
|
|
18
|
+
name={field}
|
|
19
|
+
defaultValue={forums.find((forum) => forum.isSelected)?.value ?? ''}
|
|
20
|
+
className="h-8 w-auto min-w-48 flex-1 border border-input bg-surface px-2 font-mono text-xs text-foreground sm:flex-none"
|
|
21
|
+
>
|
|
22
|
+
{forums.map((forum) => (
|
|
23
|
+
<option
|
|
24
|
+
key={forum.value}
|
|
25
|
+
value={forum.value}
|
|
26
|
+
disabled={forum.isCategory}
|
|
27
|
+
label={`${' '.repeat(forum.depth)}${forum.label}`}
|
|
28
|
+
>
|
|
29
|
+
{`${' '.repeat(forum.depth)}${forum.label}`}
|
|
30
|
+
</option>
|
|
31
|
+
))}
|
|
32
|
+
</select>
|
|
38
33
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
</div>
|
|
34
|
+
<button type="submit" className={BUTTON}>
|
|
35
|
+
{submitLabel}
|
|
36
|
+
</button>
|
|
37
|
+
</form>
|
|
44
38
|
)
|
|
45
39
|
}
|
package/src/theme.ts
CHANGED