Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
c618747
:arrow_up: Upgrade tailwind (#1016)
aaronleopold Apr 1, 2026
77c7aa7
:arrow_up: Bump i18next from 23.16.8 to 26.0.1 (#1004)
dependabot[bot] Apr 1, 2026
a27583a
Merge remote-tracking branch 'origin/nightly' into experimental
aaronleopold Apr 1, 2026
49a8d14
πŸ› Fix manifest cleanup in docker build (#991)
aaronleopold Apr 1, 2026
e150227
⬆️ Bump zustand from 4.5.7 to 5.0.12 (#997)
dependabot[bot] Apr 1, 2026
4b7bb22
:globe_with_meridians: Update translations (#1010)
aaronleopold Apr 1, 2026
6ea6769
:arrow_up: Bump eslint-plugin-prettier from 5.5.4 to 5.5.5 (#1024)
dependabot[bot] Apr 1, 2026
c9e5902
:arrow_up: Bump @rn-primitives/tabs from 1.2.0 to 1.4.0 (#1027)
dependabot[bot] Apr 1, 2026
6c77226
:arrow_up: Bump @react-native-community/slider from 5.0.1 to 5.1.2 (#…
dependabot[bot] Apr 1, 2026
b08557d
:arrow_up: Bump jest and @types/jest (#1020)
dependabot[bot] Apr 1, 2026
58f170e
:globe_with_meridians: Update translations (#1030)
aaronleopold Apr 1, 2026
2751763
Merge remote-tracking branch 'origin/nightly' into experimental
aaronleopold Apr 1, 2026
4291615
:arrow_up: Bump @graphql-codegen/near-operation-file-preset (#1023)
dependabot[bot] Apr 2, 2026
957bba8
:arrow_up: Bump @typescript-eslint/parser from 8.48.1 to 8.58.0 (#1022)
dependabot[bot] Apr 2, 2026
421e71f
πŸ”¨ Use the same Rust version from the Nix flake (#1034)
Kernald Apr 2, 2026
e28f568
:sparkles: Darkreader support and new `Midnight` theme (#1038)
aaronleopold Apr 3, 2026
cdd0e65
:globe_with_meridians: (expo): Start localization support (#1037)
aaronleopold Apr 3, 2026
361b1c5
πŸ”§ rerun build script when GIT_REV or BUILD_CHANNEL changes (#1039)
aaronleopold Apr 3, 2026
b6cda00
:globe_with_meridians: Update translations (#1033)
aaronleopold Apr 3, 2026
0b7118b
:recycle: Adjust darkreader meta tag behavior (#1043)
aaronleopold Apr 3, 2026
a500ffd
✨ Tags management page (#1040)
Kernald Apr 3, 2026
6a1e36a
:twisted_rightwards_arrows: Merge remote-tracking branch 'origin/expe…
aaronleopold Apr 3, 2026
7995b61
:rotating_light: Fix prettier lints
aaronleopold Apr 3, 2026
ba9aa2e
:globe_with_meridians: Update translations (#1045)
aaronleopold Apr 4, 2026
48273d9
:globe_with_meridians: (Polish) Update translations (#1050)
aaronleopold Apr 5, 2026
8e8925e
:globe_with_meridians: (German): Update translations (#1058)
aaronleopold Apr 6, 2026
601686b
:memo: Update 0.1.0 documentation language
aaronleopold Apr 6, 2026
9ded63d
:fire: Remove Prisma-to-SeaORM backfilling
aaronleopold Apr 6, 2026
b5034ce
:memo: Update documentation, fix landing page style resolution
aaronleopold Apr 6, 2026
202e7fc
🌐 (German): Update translations (#1061)
aaronleopold Apr 6, 2026
ea7e079
:bug: Fix unique constraint violation during OIDC account migration (…
aaronleopold Apr 7, 2026
1520ee3
:adhesive_bandage: Ensure OIDC migration remaps preferences (#1067)
aaronleopold Apr 7, 2026
4191b52
:bug: Fix conversion of thumbnail config for `resizeMethod` of `null`…
aaronleopold Apr 9, 2026
851a245
:heavy_minus_sign: Replace `once_cell::Lazy` with `std::sync::LazyLoc…
DanikVitek Apr 10, 2026
d5a48ca
Merge remote-tracking branch 'origin/main' into release/v0.1.2
aaronleopold Apr 16, 2026
44bf1c7
:bookmark: Release v0.1.2
aaronleopold Apr 16, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
55 changes: 55 additions & 0 deletions .github/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,58 @@
<a name="0.1.2"></a>
## 0.1.2 (2026-04-16)

### Added

- ✨ Tags management page ([#1040](https://github.com/stumpapp/stump/issues/1040)) [[a500ffd](https://github.com/stumpapp/stump/commit/a500ffdacfe870de128e86be26889aa34c3d1b61)]
- ✨ Darkreader support and new &#x60;Midnight&#x60; theme ([#1038](https://github.com/stumpapp/stump/issues/1038)) [[e28f568](https://github.com/stumpapp/stump/commit/e28f5687ed7d8dd52fde796f74a22726399165de)]

### Changed

- 🚨 Fix prettier lints [[7995b61](https://github.com/stumpapp/stump/commit/7995b61a0b5c451fb4aa6aee789e6516b04ca0b1)]
- ♻️ Adjust darkreader meta tag behavior ([#1043](https://github.com/stumpapp/stump/issues/1043)) [[0b7118b](https://github.com/stumpapp/stump/commit/0b7118bd7f3b0cefb7120eb64f020443d571738a)]
- πŸ”§ rerun build script when GIT_REV or BUILD_CHANNEL changes ([#1039](https://github.com/stumpapp/stump/issues/1039)) [[361b1c5](https://github.com/stumpapp/stump/commit/361b1c530781c70c11f28a24b53b0ea6af8d31a6)]
- ⬆️ Bump @typescript-eslint/parser from 8.48.1 to 8.58.0 ([#1022](https://github.com/stumpapp/stump/issues/1022)) [[957bba8](https://github.com/stumpapp/stump/commit/957bba88d71d3e762879b1df3a2b248d41e963ee)]
- ⬆️ Bump @graphql-codegen/near-operation-file-preset ([#1023](https://github.com/stumpapp/stump/issues/1023)) [[4291615](https://github.com/stumpapp/stump/commit/42916153a204d8f1a469d23c70cc5645c683c8fd)]
- ⬆️ Bump jest and @types/jest ([#1020](https://github.com/stumpapp/stump/issues/1020)) [[b08557d](https://github.com/stumpapp/stump/commit/b08557d2de03b091f449851df3d477692b0b843f)]
- ⬆️ Bump @react-native-community/slider from 5.0.1 to 5.1.2 ([#1026](https://github.com/stumpapp/stump/issues/1026)) [[6c77226](https://github.com/stumpapp/stump/commit/6c77226373f0f4d24c12635825bc16e022f2464f)]
- ⬆️ Bump @rn-primitives/tabs from 1.2.0 to 1.4.0 ([#1027](https://github.com/stumpapp/stump/issues/1027)) [[c9e5902](https://github.com/stumpapp/stump/commit/c9e590284a414a95dd97a4d761bc22f8c0e17ac2)]
- ⬆️ Bump eslint-plugin-prettier from 5.5.4 to 5.5.5 ([#1024](https://github.com/stumpapp/stump/issues/1024)) [[6ea6769](https://github.com/stumpapp/stump/commit/6ea6769634fc9af53c69d67b5e1f1d93328a098e)]
- ⬆️ Bump zustand from 4.5.7 to 5.0.12 ([#997](https://github.com/stumpapp/stump/issues/997)) [[e150227](https://github.com/stumpapp/stump/commit/e1502278ad58d4f8cb8478c26dc487e5cf78964f)]
- ⬆️ Bump i18next from 23.16.8 to 26.0.1 ([#1004](https://github.com/stumpapp/stump/issues/1004)) [[77c7aa7](https://github.com/stumpapp/stump/commit/77c7aa734f844145345d5391690cfd32c1693608)]
- ⬆️ Upgrade tailwind ([#1016](https://github.com/stumpapp/stump/issues/1016)) [[c618747](https://github.com/stumpapp/stump/commit/c618747baace06b4c0eafb8b9251786ff5c234e5)]

### Removed

- βž– Replace &#x60;once_cell::Lazy&#x60; with &#x60;std::sync::LazyLock&#x60; ([#1075](https://github.com/stumpapp/stump/issues/1075)) [[851a245](https://github.com/stumpapp/stump/commit/851a2458174a1550745ae74edb2823e3088e5259)]
- πŸ”₯ Remove Prisma-to-SeaORM backfilling [[9ded63d](https://github.com/stumpapp/stump/commit/9ded63df5116b4de876298f716b05a21e5d82012)]

### Fixed

- πŸ› Fix conversion of thumbnail config for &#x60;resizeMethod&#x60; of &#x60;null&#x60; ([#1070](https://github.com/stumpapp/stump/issues/1070)) [[4191b52](https://github.com/stumpapp/stump/commit/4191b52970b34fc08d600505e88e1b4ac9846b40)]
- πŸ› Fix unique constraint violation during OIDC account migration ([#1059](https://github.com/stumpapp/stump/issues/1059)) [[ea7e079](https://github.com/stumpapp/stump/commit/ea7e079faf22f9275bd69b551c4c6f881686f10f)]
- πŸ’š Update binary CI checkout actions ([#1048](https://github.com/stumpapp/stump/issues/1048)) [[1591f91](https://github.com/stumpapp/stump/commit/1591f91b3cc453087516595127edf67185f3e775)]
- πŸ› Fix manifest cleanup in docker build ([#991](https://github.com/stumpapp/stump/issues/991)) [[49a8d14](https://github.com/stumpapp/stump/commit/49a8d141c7ecda69e95185085accb05b4e6feb5a)]

### Miscellaneous

- Merge remote-tracking branch &#x27;origin/main&#x27; into release/v0.1.2 [[d5a48ca](https://github.com/stumpapp/stump/commit/d5a48ca48694fcac5614cc704bce7894d68c6b09)]
- 🩹 Ensure OIDC migration remaps preferences ([#1067](https://github.com/stumpapp/stump/issues/1067)) [[1520ee3](https://github.com/stumpapp/stump/commit/1520ee31a4834106ceb3f64f68aed6617f54af62)]
- 🌐 (German): Update translations ([#1061](https://github.com/stumpapp/stump/issues/1061)) [[202e7fc](https://github.com/stumpapp/stump/commit/202e7fcf2990c77422dc0aff37540401e67ec803)]
- πŸ“ Update documentation, fix landing page style resolution [[b5034ce](https://github.com/stumpapp/stump/commit/b5034ceaaafb26054c8d3965357a13add9b05f51)]
- πŸ“ Update 0.1.0 documentation language [[601686b](https://github.com/stumpapp/stump/commit/601686b134f325e257e7f7835ed93a657ef978af)]
- 🌐 (German): Update translations ([#1058](https://github.com/stumpapp/stump/issues/1058)) [[8e8925e](https://github.com/stumpapp/stump/commit/8e8925ef449d8fd1d5adb948d862ed05aab2270f)]
- 🌐 (Polish) Update translations ([#1050](https://github.com/stumpapp/stump/issues/1050)) [[48273d9](https://github.com/stumpapp/stump/commit/48273d9cdb57d19dfe900da1112b5e90b325dd12)]
- 🌐 Update translations ([#1045](https://github.com/stumpapp/stump/issues/1045)) [[ba9aa2e](https://github.com/stumpapp/stump/commit/ba9aa2ebaa80cb750736e49a0744f3bce503bae8)]
- πŸ”€ Merge remote-tracking branch &#x27;origin/experimental&#x27; into nightly [[6a1e36a](https://github.com/stumpapp/stump/commit/6a1e36afee137f04efd630efd6df8f5570af071f)]
- 🌐 Update translations ([#1033](https://github.com/stumpapp/stump/issues/1033)) [[b6cda00](https://github.com/stumpapp/stump/commit/b6cda00b38c53675d9eba438907e288aad85013d)]
- 🌐 (expo): Start localization support ([#1037](https://github.com/stumpapp/stump/issues/1037)) [[cdd0e65](https://github.com/stumpapp/stump/commit/cdd0e65e417fbdc35ec2ea0fd59201c322a9563b)]
- πŸ”¨ Use the same Rust version from the Nix flake ([#1034](https://github.com/stumpapp/stump/issues/1034)) [[421e71f](https://github.com/stumpapp/stump/commit/421e71ffb3c68b899d3c436873652daf46b292ba)]
- Merge remote-tracking branch &#x27;origin/nightly&#x27; into experimental [[2751763](https://github.com/stumpapp/stump/commit/275176382257c26907ecc7b4ea1c01b08ec60460)]
- 🌐 Update translations ([#1030](https://github.com/stumpapp/stump/issues/1030)) [[58f170e](https://github.com/stumpapp/stump/commit/58f170e312f89ff20b911303edd6050f0b501014)]
- 🌐 Update translations ([#1010](https://github.com/stumpapp/stump/issues/1010)) [[4b7bb22](https://github.com/stumpapp/stump/commit/4b7bb229b7e4f83a6212164505618708151446a3)]
- Merge remote-tracking branch &#x27;origin/nightly&#x27; into experimental [[a27583a](https://github.com/stumpapp/stump/commit/a27583a536fe866ebd66d0890f30f67c47ad76a4)]


<a name="0.1.1"></a>
## 0.1.1 (2026-04-01)

Expand Down
10 changes: 8 additions & 2 deletions .github/actions/build-docker/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -81,9 +81,15 @@ runs:
sudo apt-get install -y podman buildah
shell: bash

- name: Remove existing images
- name: Remove existing images and manifests
run: |
podman rmi ${{ env.LOCAL_IMAGES }} || true
podman images --format "{{.Repository}}:{{.Tag}}" \
| grep "^localhost/stump:" \
| xargs -r podman rmi --force 2>/dev/null || true

for tag in ${{ env.FORMATTED_TAGS }}; do
buildah manifest rm "stump:$tag" 2>/dev/null || true
done
shell: bash

- name: Run buildah build
Expand Down
1 change: 1 addition & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ generated.ts
node_modules
target
dist
dev-dist
build
.next
.expo
Expand Down
18 changes: 9 additions & 9 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 1 addition & 2 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ exclude = [
]

[workspace.package]
version = "0.1.1"
version = "0.1.2"
rust-version = "1.92.0"

[workspace.dependencies]
Expand Down Expand Up @@ -49,7 +49,6 @@ lettre = { version = "0.11.18", default-features = false, features = [
] }
md5 = "0.8.0"
num-traits = "0.2.19"
once_cell = "1.21.3"
prefixed-api-key = { version = "0.3.0", features = ["sha2"] }
rand = "0.9.2"
regex = "1.11.3"
Expand Down
12 changes: 5 additions & 7 deletions apps/desktop/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@stump/desktop",
"version": "0.1.1",
"version": "0.1.2",
"description": "",
"license": "MIT",
"scripts": {
Expand All @@ -14,6 +14,7 @@
"build:mac-universal": "yarn exec vite build && tauri build --target universal-apple-darwin -- --features bundled-server",
"build:mac-arm": "yarn exec vite build && tauri build --target aarch64-apple-darwin -- --features bundled-server",
"build:windows": "tauri build --target x86_64-pc-windows-msvc -- --features bundled-server",
"format": "eslint --fix . && prettier --config ../../prettier.config.js --ignore-path ../../.prettierignore --write .",
"nuke": "yarn exec rimraf node_modules"
},
"dependencies": {
Expand All @@ -27,17 +28,14 @@
"react-dom": "^19.0.0"
},
"devDependencies": {
"@tailwindcss/typography": "^0.5.10",
"@tauri-apps/api": "^2.0.2",
"@tauri-apps/cli": "^2.0.3",
"@types/react": "^19.0.0",
"@types/react-dom": "^19.0.0",
"@vitejs/plugin-react": "^4.1.0",
"autoprefixer": "^10.4.16",
"postcss": "^8.4.31",
"tailwind": "^4.0.0",
"tailwind-scrollbar-hide": "^1.1.7",
"tailwindcss": "^3.3.3",
"@tailwindcss/vite": "^4.2.2",
"tailwindcss": "^4.2.2",
"tw-animate-css": "^1.4.0",
"typescript": "^5.3.3",
"vite": "^4.5.0",
"vite-plugin-tsconfig-paths": "^1.3.1"
Expand Down
6 changes: 0 additions & 6 deletions apps/desktop/postcss.config.js

This file was deleted.

2 changes: 1 addition & 1 deletion apps/desktop/src-tauri/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "stump_desktop"
version = "0.1.1"
version = "0.1.2"
description = ""
authors = ["Aaron Leopold <aaronleopold1221@gmail.com>"]
license = "MIT"
Expand Down
10 changes: 5 additions & 5 deletions apps/desktop/src/Home.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -104,10 +104,10 @@ export default function Home() {
/>
<div
data-tauri-drag-region
className="flex h-screen w-screen items-center bg-background py-6"
className="py-6 flex h-screen w-screen items-center bg-background"
>
<div className="mx-auto flex h-full w-full max-w-sm flex-col justify-center gap-6 sm:max-w-md md:max-w-xl">
<div className="flex flex-col gap-y-6">
<div className="max-w-sm gap-6 sm:max-w-md md:max-w-xl mx-auto flex h-full w-full flex-col justify-center">
<div className="gap-y-6 flex flex-col">
<div className="flex items-end justify-between">
<div>
<Heading size="sm">{t(getKey('label'))}</Heading>
Expand All @@ -120,7 +120,7 @@ export default function Home() {
</div>

{!savedServers.length && (
<div className="select-none rounded-lg border border-dashed border-edge-subtle p-4 text-foreground-muted">
<div className="rounded-lg p-4 border border-dashed border-edge-subtle text-foreground-muted select-none">
{t(getKey('getStarted'))}
</div>
)}
Expand All @@ -142,7 +142,7 @@ export default function Home() {
)}

<div
className={cn('flex flex-col gap-y-6', {
className={cn('gap-y-6 flex flex-col', {
'pointer-events-none opacity-50': savedServers.length === 0,
})}
>
Expand Down
13 changes: 5 additions & 8 deletions apps/desktop/src/components/ConfiguredServer.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -43,31 +43,28 @@ export default function ConfiguredServer({

return (
<div
className={cn('group flex items-center justify-between p-4', {
className={cn('group p-4 flex items-center justify-between', {
'hover:bg-background-surface-hover/10': isReachable,
})}
>
<div
className="flex grow cursor-pointer flex-col"
onClick={isReachable ? onSwitch : undefined}
>
<span className="flex items-center space-x-2">
<span className="space-x-2 flex items-center">
<Text>{server.name}</Text>
{isActive && (
<ToolTip content={t(getKey('activeServer.tooltip'))} align="center">
<BadgeCheck
data-testid="activeBadge"
className="h-4 w-4 text-fill-success text-opacity-75"
className="h-4 w-4 text-fill-success/75"
strokeWidth={0.95}
/>
</ToolTip>
)}
{isReachable === false && (
<ToolTip content={t(getKey('unreachableServer.tooltip'))} align="center">
<WifiOff
data-testid="unreachableBadge"
className="h-4 w-4 text-fill-danger text-opacity-75"
/>
<WifiOff data-testid="unreachableBadge" className="h-4 w-4 text-fill-danger/75" />
</ToolTip>
)}
</span>
Expand All @@ -76,7 +73,7 @@ export default function ConfiguredServer({
</Text>
</div>

<div className="flex items-center space-x-1.5 opacity-90 group-hover:opacity-100">
<div className="space-x-1.5 flex items-center opacity-90 group-hover:opacity-100">
{/* {!isActive && (
<ToolTip content={t(getKey('switchToServer.tooltip'))}>
<IconButton size="xs" onClick={onSwitch} data-testid="switchButton">
Expand Down
2 changes: 1 addition & 1 deletion apps/desktop/src/components/RemoveAllTokensSection.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ export default function RemoveAllTokensSection({ onConfirmClear }: Props) {
const { t } = useLocaleContext()

return (
<div className="flex flex-col space-y-4">
<div className="space-y-4 flex flex-col">
<div>
<Heading size="xs">{t(getKey('label'))}</Heading>
<Text size="sm" variant="muted" className="mt-1">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ export default function CreateOrUpdateSavedServerForm({
errorMessage={errors.url?.message}
/>

<div className="flex flex-col gap-2">
<div className="gap-2 flex flex-col">
<Label htmlFor="authMode">Auth method</Label>
<NativeSelect
options={[
Expand Down Expand Up @@ -114,7 +114,7 @@ export default function CreateOrUpdateSavedServerForm({
)}

{authMode === 'login' && (
<div className="rounded-lg border border-dashed border-edge p-2">
<div className="rounded-lg p-2 border border-dashed border-edge">
<Text variant="muted" size="sm">
You will occasionally be prompted to log in when you connect to this server
</Text>
Expand Down
5 changes: 0 additions & 5 deletions apps/desktop/src/splash-screen.html
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,6 @@
</script>

<style>
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
html.dark {
background-color: #1b1c1e;
}
Expand Down
7 changes: 0 additions & 7 deletions apps/desktop/tailwind.config.ts

This file was deleted.

2 changes: 2 additions & 0 deletions apps/desktop/vite.config.ts
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import tailwindcss from '@tailwindcss/vite'
import react from '@vitejs/plugin-react'
import { resolve } from 'path'
import { defineConfig } from 'vite'
Expand All @@ -24,6 +25,7 @@ export default defineConfig({
pkgJson: { name, version },
},
plugins: [
tailwindcss(),
react({
babel: {
plugins: [['babel-plugin-react-compiler', {}]],
Expand Down
6 changes: 3 additions & 3 deletions apps/docs/components/DownloadLinks.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ const hoverVariants = {

export default function DownloadLinks() {
return (
<div className="relative flex w-full items-start justify-center space-x-2 md:justify-start">
<div className="space-x-2 md:justify-start relative flex w-full items-start justify-center">
{links.map((link, idx) => (
<motion.div
key={idx}
Expand All @@ -61,10 +61,10 @@ export default function DownloadLinks() {
>
<a
className={clsx(
'flex items-center rounded-md border border-transparent bg-transparent p-1 text-sm font-medium text-neutral-700 transition-all duration-300 dark:bg-opacity-90 dark:text-neutral-200 dark:shadow-sm',
'rounded-md p-1 text-sm font-medium text-neutral-700 dark:bg-opacity-90 dark:text-neutral-200 dark:shadow-sm flex items-center border border-transparent bg-transparent transition-all duration-300',
{ 'cursor-not-allowed opacity-50': link.disabled },
{
'hover:border-neutral-200 hover:bg-neutral-50 hover:text-neutral-900 focus:outline-none active:border-neutral-200 active:bg-neutral-50 active:text-neutral-600 dark:hover:border-neutral-500 dark:hover:bg-neutral-700 dark:hover:bg-opacity-100 dark:hover:text-white dark:active:text-white dark:active:opacity-90':
'hover:border-neutral-200 hover:bg-neutral-50 hover:text-neutral-900 active:border-neutral-200 active:bg-neutral-50 active:text-neutral-600 dark:hover:border-neutral-500 dark:hover:bg-neutral-700 dark:hover:bg-opacity-100 dark:hover:text-white dark:active:text-white focus:outline-none dark:active:opacity-90':
!link.disabled,
},
)}
Expand Down
Loading
Loading