Compare commits
39 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| b24a35a560 | |||
| e21c842de4 | |||
| e22191cad9 | |||
| 2c122c63ed | |||
| af1a5f5ee4 | |||
| ec438a8b7d | |||
| 1a47d8e837 | |||
| 2b38b97964 | |||
| a4e6003c0c | |||
| a2daa573e6 | |||
| 4563123770 | |||
| 440bd2f787 | |||
| 4f2a41da98 | |||
| 055fb574f4 | |||
| 7c3b371f4c | |||
|
|
e40721d345 | ||
|
|
5f4a334a09 | ||
|
|
8457e7bddb | ||
|
|
783bd1abdd | ||
|
|
d65330b4f5 | ||
|
|
66661f9eb5 | ||
|
|
a749b47109 | ||
|
|
8093e4903d | ||
|
|
606b7fe54a | ||
|
|
cecfa246aa | ||
|
|
fe15a3ac01 | ||
|
|
ae313516b5 | ||
|
|
e92449e106 | ||
|
|
fbe4fcf3b2 | ||
|
|
11bd7b77ec | ||
|
|
c1c223fe50 | ||
|
|
7c0fe1b1f1 | ||
|
|
c5fd42c35a | ||
|
|
6bae7a8fed | ||
|
|
fdd8b85780 | ||
|
|
b00c20e7a7 | ||
|
|
09859420a8 | ||
|
|
bfb437116d | ||
|
|
10b35011c8 |
71
.forgejo/workflows/release-deploy.yml
Normal file
71
.forgejo/workflows/release-deploy.yml
Normal file
@@ -0,0 +1,71 @@
|
||||
name: Release and Deploy
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
push:
|
||||
branches: [main]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- run: apt-get update -y && apt-get install -y git unzip
|
||||
|
||||
- uses: https://code.forgejo.org/actions/checkout@v4
|
||||
|
||||
- uses: https://code.forgejo.org/actions/setup-node@v4
|
||||
with:
|
||||
deno-version: v22.x
|
||||
|
||||
- run: |
|
||||
npm ci
|
||||
npm run build
|
||||
|
||||
- name: Upload Pages Artifact
|
||||
uses: https://code.forgejo.org/forgejo/upload-artifact@v4
|
||||
with:
|
||||
path: "dist/"
|
||||
|
||||
# release:
|
||||
# needs: "build"
|
||||
#
|
||||
# runs-on: ubuntu-latest
|
||||
#
|
||||
# permissions:
|
||||
# contents: write
|
||||
# pull-requests: write
|
||||
#
|
||||
# steps:
|
||||
# - name: "Release"
|
||||
# id: "release"
|
||||
# uses: "https://github.com/googleapis/release-please-action@v4"
|
||||
#
|
||||
# - name: Create tarball
|
||||
# if: ${{ steps.release.outputs.release_created }}
|
||||
# run: tar czf catppuccin-gitea.tar.gz --directory=./dist .
|
||||
#
|
||||
# - name: Upload Release Artifacts
|
||||
# if: ${{ steps.release.outputs.release_created }}
|
||||
# env:
|
||||
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
# run: gh release upload ${{ steps.release.outputs.tag_name }} ./catppuccin-gitea.tar.gz
|
||||
#
|
||||
#
|
||||
# deploy:
|
||||
# needs: "build"
|
||||
#
|
||||
# runs-on: "ubuntu-latest"
|
||||
#
|
||||
# permissions:
|
||||
# pages: "write"
|
||||
# id-token: "write"
|
||||
#
|
||||
# environment:
|
||||
# name: "github-pages"
|
||||
# url: "${{ steps.deployment.outputs.page_url }}"
|
||||
#
|
||||
# steps:
|
||||
# - name: "Deploy to GitHub Pages"
|
||||
# id: "deployment"
|
||||
# uses: "actions/deploy-pages@v4"
|
||||
22
.github/workflows/release.yml
vendored
22
.github/workflows/release.yml
vendored
@@ -1,22 +0,0 @@
|
||||
name: Release
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- "v*"
|
||||
|
||||
jobs:
|
||||
release:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-node@v3
|
||||
with:
|
||||
node-version: 18
|
||||
- run: npm ci
|
||||
- run: npm run build
|
||||
- name: Create tarball
|
||||
run: tar czf catppuccin-gitea.tar.gz --directory=./dist .
|
||||
- name: Add zips to release
|
||||
uses: softprops/action-gh-release@v1
|
||||
with:
|
||||
files: ./catppuccin-gitea.tar.gz
|
||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1,3 +1,4 @@
|
||||
node_modules/
|
||||
/dist/
|
||||
*.tar.gz
|
||||
result
|
||||
|
||||
3
.release-please-manifest.json
Normal file
3
.release-please-manifest.json
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
".": "0.4.1"
|
||||
}
|
||||
20
CHANGELOG.md
Normal file
20
CHANGELOG.md
Normal file
@@ -0,0 +1,20 @@
|
||||
# Changelog
|
||||
|
||||
## [0.4.1](https://github.com/catppuccin/gitea/compare/v0.4.0...v0.4.1) (2023-08-24)
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* **commits:** signed commit background ([fe15a3a](https://github.com/catppuccin/gitea/commit/fe15a3ac012e0bcbfd57bcdb3e83382164c7e9f3)), closes [#13](https://github.com/catppuccin/gitea/issues/13)
|
||||
|
||||
## [0.4.0](https://github.com/catppuccin/gitea/compare/v0.3.1...v0.4.0) (2023-08-23)
|
||||
|
||||
|
||||
### Features
|
||||
|
||||
* monaco editor styling ([11bd7b7](https://github.com/catppuccin/gitea/commit/11bd7b77ece1d761828ffeb87a053e78acc050a2))
|
||||
|
||||
|
||||
### Bug Fixes
|
||||
|
||||
* tag labels style ([c1c223f](https://github.com/catppuccin/gitea/commit/c1c223fe50c7286bc023d2798761293f25cfc080))
|
||||
2
LICENSE
2
LICENSE
@@ -1,6 +1,8 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2021 Catppuccin
|
||||
Copyright (c) 2024 Capytal <contact@capytal.company>
|
||||
Copyright (c) 2024 Gustavo "Guz" L de Mello <contact@guz.one>
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
||||
22
README.md
22
README.md
@@ -37,11 +37,29 @@
|
||||
## Usage
|
||||
|
||||
1. Download the [latest release](https://github.com/catppuccin/gitea/releases/latest).
|
||||
2. Place the CSS files in your `$GITEA_CUSTOM/public/css` directory.
|
||||
3. Add the themes to your [`app.ini`](https://docs.gitea.io/en-us/customizing-gitea/#customizing-the-look-of-gitea).
|
||||
2. Place the CSS files in `$GITEA_CUSTOM/public/assets/css` if using Gitea 1.21.0 or newer and `$GITEA_CUSTOM/public/css` otherwise.
|
||||
3. Add the themes to your `app.ini`. See the [Gitea documentation](https://docs.gitea.io/en-us/customizing-gitea/#customizing-the-look-of-gitea).\
|
||||
Here's a snippet if you want to offer all Flavor-Accent combinations:
|
||||
|
||||
<details>
|
||||
<summary>app.ini</summary>
|
||||
<!-- AUTOGEN:INI START -->
|
||||
<!-- the following section is auto-generated, do not edit -->
|
||||
|
||||
```
|
||||
[ui]
|
||||
THEMES = catppuccin-latte-rosewater,catppuccin-latte-flamingo,catppuccin-latte-pink,catppuccin-latte-mauve,catppuccin-latte-red,catppuccin-latte-maroon,catppuccin-latte-peach,catppuccin-latte-yellow,catppuccin-latte-green,catppuccin-latte-teal,catppuccin-latte-sky,catppuccin-latte-sapphire,catppuccin-latte-blue,catppuccin-latte-lavender,catppuccin-frappe-rosewater,catppuccin-frappe-flamingo,catppuccin-frappe-pink,catppuccin-frappe-mauve,catppuccin-frappe-red,catppuccin-frappe-maroon,catppuccin-frappe-peach,catppuccin-frappe-yellow,catppuccin-frappe-green,catppuccin-frappe-teal,catppuccin-frappe-sky,catppuccin-frappe-sapphire,catppuccin-frappe-blue,catppuccin-frappe-lavender,catppuccin-macchiato-rosewater,catppuccin-macchiato-flamingo,catppuccin-macchiato-pink,catppuccin-macchiato-mauve,catppuccin-macchiato-red,catppuccin-macchiato-maroon,catppuccin-macchiato-peach,catppuccin-macchiato-yellow,catppuccin-macchiato-green,catppuccin-macchiato-teal,catppuccin-macchiato-sky,catppuccin-macchiato-sapphire,catppuccin-macchiato-blue,catppuccin-macchiato-lavender,catppuccin-mocha-rosewater,catppuccin-mocha-flamingo,catppuccin-mocha-pink,catppuccin-mocha-mauve,catppuccin-mocha-red,catppuccin-mocha-maroon,catppuccin-mocha-peach,catppuccin-mocha-yellow,catppuccin-mocha-green,catppuccin-mocha-teal,catppuccin-mocha-sky,catppuccin-mocha-sapphire,catppuccin-mocha-blue,catppuccin-mocha-lavender
|
||||
```
|
||||
|
||||
<!-- AUTOGEN:INI END -->
|
||||
</details>
|
||||
|
||||
4. Restart your Gitea instance.
|
||||
5. Select the theme in Gitea > Account > Settings > Appearance.
|
||||
|
||||
> **Note**\
|
||||
> Gitea >1.20 is required for this theme.
|
||||
|
||||
## 💝 Thanks to
|
||||
|
||||
- [winston](https://github.com/nekowinston)
|
||||
|
||||
73
build.js
Normal file → Executable file
73
build.js
Normal file → Executable file
@@ -1,15 +1,32 @@
|
||||
const fs = require("fs");
|
||||
const path = require("path");
|
||||
const sass = require("sass");
|
||||
const ctp = require("@catppuccin/palette");
|
||||
#!/usr/bin/env -S deno run -A
|
||||
|
||||
import path from "node:path";
|
||||
import fs from "node:fs";
|
||||
import url from "node:url";
|
||||
import * as sass from "sass";
|
||||
import * as ctp from "@catppuccin/palette";
|
||||
|
||||
/** @type (flavor: string, accent: string) => string */
|
||||
const builder = (flavor, accent) => `
|
||||
@import "@catppuccin/palette/scss/${flavor}";
|
||||
$accent: $${accent};
|
||||
$isDark: ${flavor !== "latte"};
|
||||
|
||||
$overlay2: #202020;
|
||||
$overlay1: #191919;
|
||||
$overlay0: #181818;
|
||||
$surface2: #141414;
|
||||
$surface1: #131313;
|
||||
$surface0: #121212;
|
||||
$base: #111111;
|
||||
$mantle: #101010;
|
||||
$crust: #090909;
|
||||
|
||||
@import "theme";
|
||||
`;
|
||||
|
||||
const __dirname = path.dirname(url.fileURLToPath(import.meta.url));
|
||||
|
||||
const accents = [
|
||||
"rosewater",
|
||||
"flamingo",
|
||||
@@ -27,7 +44,12 @@ const accents = [
|
||||
"lavender",
|
||||
];
|
||||
|
||||
for (const flavor of Object.keys(ctp.variants)) {
|
||||
if (!fs.existsSync(path.join(__dirname, "dist"))) {
|
||||
fs.mkdirSync(path.join(__dirname, "dist"), { recursive: true });
|
||||
}
|
||||
|
||||
const flavors = Object.keys(ctp.flavors);
|
||||
for (const flavor of flavors) {
|
||||
for (const accent of accents) {
|
||||
const input = builder(flavor, accent);
|
||||
const result = sass.compileString(input, {
|
||||
@@ -37,10 +59,45 @@ for (const flavor of Object.keys(ctp.variants)) {
|
||||
],
|
||||
});
|
||||
|
||||
fs.mkdirSync(path.join(__dirname, "dist"), { recursive: true });
|
||||
fs.writeFileSync(
|
||||
path.join(__dirname, "dist", `theme-catppuccin-${flavor}-${accent}.css`),
|
||||
result.css
|
||||
path.join(__dirname, "dist", `theme-frappurccino-${flavor}-${accent}.css`),
|
||||
result.css,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
// TODO:
|
||||
// refactor this part out to a common import, since ctp/ctp & ctp/userstyles
|
||||
// are both using the same base function
|
||||
/** @type ({readme: string, section: string, newContent: string}) => string */
|
||||
const updateReadme = ({ readme, section, newContent }) => {
|
||||
const preamble =
|
||||
"<!-- the following section is auto-generated, do not edit -->";
|
||||
const startMarker = `<!-- AUTOGEN:${section.toUpperCase()} START -->`;
|
||||
const endMarker = `<!-- AUTOGEN:${section.toUpperCase()} END -->`;
|
||||
const wrapped = `${startMarker}\n${preamble}\n${newContent}\n${endMarker}`;
|
||||
|
||||
if (!(readme.includes(startMarker) && readme.includes(endMarker))) {
|
||||
throw new Error("Markers not found in README.md");
|
||||
}
|
||||
|
||||
const pre = readme.split(startMarker)[0];
|
||||
const end = readme.split(endMarker)[1];
|
||||
return pre + wrapped + end;
|
||||
};
|
||||
|
||||
const readme = fs.readFileSync(path.join(__dirname, "README.md")).toString();
|
||||
const newcontent = updateReadme({
|
||||
readme,
|
||||
section: "ini",
|
||||
newContent: `
|
||||
\`\`\`
|
||||
[ui]
|
||||
THEMES = ${flavors
|
||||
.map((f) => accents.map((a) => `catppuccin-${f}-${a}`).join(","))
|
||||
.join(",")}
|
||||
\`\`\`
|
||||
`,
|
||||
});
|
||||
|
||||
fs.writeFileSync(path.join(__dirname, "README.md"), newcontent);
|
||||
|
||||
48
flake.lock
generated
Normal file
48
flake.lock
generated
Normal file
@@ -0,0 +1,48 @@
|
||||
{
|
||||
"nodes": {
|
||||
"gitignore": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1709087332,
|
||||
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "hercules-ci",
|
||||
"repo": "gitignore.nix",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1725983898,
|
||||
"narHash": "sha256-4b3A9zPpxAxLnkF9MawJNHDtOOl6ruL0r6Og1TEDGCE=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "1355a0cbfeac61d785b7183c0caaec1f97361b43",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-unstable",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"gitignore": "gitignore",
|
||||
"nixpkgs": "nixpkgs"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
"version": 7
|
||||
}
|
||||
69
flake.nix
Normal file
69
flake.nix
Normal file
@@ -0,0 +1,69 @@
|
||||
{
|
||||
description = "My development environment";
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
||||
gitignore = {
|
||||
url = "github:hercules-ci/gitignore.nix";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
outputs = {
|
||||
self,
|
||||
nixpkgs,
|
||||
gitignore,
|
||||
...
|
||||
}: let
|
||||
systems = [
|
||||
"x86_64-linux"
|
||||
"aarch64-linux"
|
||||
"x86_64-darwin"
|
||||
"aarch64-darwin"
|
||||
];
|
||||
forAllSystems = f:
|
||||
nixpkgs.lib.genAttrs systems (system: let
|
||||
pkgs = import nixpkgs {inherit system;};
|
||||
in
|
||||
f system pkgs);
|
||||
app = pkgs:
|
||||
pkgs.buildNpmPackage rec {
|
||||
pname = "frappurccino-forgejo";
|
||||
version = "0.1.0";
|
||||
src = gitignore.lib.gitignoreSource ./.;
|
||||
|
||||
npmDepsHash = "sha256-4wArkv3O5rhuDlrUC05K1jIz2ZLdC8M48ILz+O+O7CU=";
|
||||
npmPackFlags = ["--ignore-scripts"];
|
||||
|
||||
buildPhase = ''
|
||||
runHook preBuild
|
||||
|
||||
npm run build
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
mkdir -p $out
|
||||
cp -r dist $out/css
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
};
|
||||
in {
|
||||
packages = forAllSystems (system: pkgs: {
|
||||
default = app pkgs;
|
||||
});
|
||||
defaultPackage = forAllSystems (system: pkgs: app pkgs);
|
||||
devShells = forAllSystems (system: pkgs: {
|
||||
default = pkgs.mkShell {
|
||||
buildInputs = with pkgs; [
|
||||
alejandra
|
||||
nodejs_22
|
||||
node2nix
|
||||
nodePackages_latest.prettier
|
||||
];
|
||||
};
|
||||
});
|
||||
};
|
||||
}
|
||||
121
package-lock.json
generated
121
package-lock.json
generated
@@ -1,19 +1,21 @@
|
||||
{
|
||||
"name": "gitea",
|
||||
"name": "fappurccino-forgejo",
|
||||
"version": "0.1.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"devDependencies": {
|
||||
"@catppuccin/palette": "^0.1.7",
|
||||
"sass": "^1.60.0"
|
||||
"name": "fappurccino-forgejo",
|
||||
"version": "0.1.0",
|
||||
"dependencies": {
|
||||
"@catppuccin/palette": "^1.3.0",
|
||||
"sass": "^1.66.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@catppuccin/palette": {
|
||||
"version": "0.1.7",
|
||||
"resolved": "https://registry.npmjs.org/@catppuccin/palette/-/palette-0.1.7.tgz",
|
||||
"integrity": "sha512-tgYE1PQLEs4Nz/OA28/kD0WhJKQEvXcuL2BPVdyHYQr0zb9l03lAwRXt7ZAP5PPuczFq0BgemPPdAdG+T2FZug==",
|
||||
"dev": true,
|
||||
"version": "1.3.0",
|
||||
"resolved": "https://registry.npmjs.org/@catppuccin/palette/-/palette-1.3.0.tgz",
|
||||
"integrity": "sha512-HlgVmsTJbpGnIv7FWeypvmTUgiU8SimM3KzutZJ4x7FYk3L43H67me0hAZcBTPYp2uzaLY4Iv0CnDHt3KiGf8g==",
|
||||
"funding": [
|
||||
{
|
||||
"type": "opencollective",
|
||||
@@ -23,13 +25,14 @@
|
||||
"type": "github",
|
||||
"url": "https://github.com/sponsors/catppuccin"
|
||||
}
|
||||
]
|
||||
],
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/anymatch": {
|
||||
"version": "3.1.3",
|
||||
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
|
||||
"integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
|
||||
"dev": true,
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"normalize-path": "^3.0.0",
|
||||
"picomatch": "^2.0.4"
|
||||
@@ -39,37 +42,34 @@
|
||||
}
|
||||
},
|
||||
"node_modules/binary-extensions": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
|
||||
"integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
|
||||
"dev": true,
|
||||
"version": "2.3.0",
|
||||
"resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz",
|
||||
"integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://github.com/sponsors/sindresorhus"
|
||||
}
|
||||
},
|
||||
"node_modules/braces": {
|
||||
"version": "3.0.2",
|
||||
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
|
||||
"integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
|
||||
"dev": true,
|
||||
"version": "3.0.3",
|
||||
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
|
||||
"integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"fill-range": "^7.0.1"
|
||||
"fill-range": "^7.1.1"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/chokidar": {
|
||||
"version": "3.5.3",
|
||||
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
|
||||
"integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
|
||||
"dev": true,
|
||||
"funding": [
|
||||
{
|
||||
"type": "individual",
|
||||
"url": "https://paulmillr.com/funding/"
|
||||
}
|
||||
],
|
||||
"version": "3.6.0",
|
||||
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
|
||||
"integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"anymatch": "~3.1.2",
|
||||
"braces": "~3.0.2",
|
||||
@@ -82,15 +82,18 @@
|
||||
"engines": {
|
||||
"node": ">= 8.10.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://paulmillr.com/funding/"
|
||||
},
|
||||
"optionalDependencies": {
|
||||
"fsevents": "~2.3.2"
|
||||
}
|
||||
},
|
||||
"node_modules/fill-range": {
|
||||
"version": "7.0.1",
|
||||
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
|
||||
"integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
|
||||
"dev": true,
|
||||
"version": "7.1.1",
|
||||
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
|
||||
"integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"to-regex-range": "^5.0.1"
|
||||
},
|
||||
@@ -99,11 +102,11 @@
|
||||
}
|
||||
},
|
||||
"node_modules/fsevents": {
|
||||
"version": "2.3.2",
|
||||
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
|
||||
"integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
|
||||
"dev": true,
|
||||
"version": "2.3.3",
|
||||
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
|
||||
"integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
|
||||
"hasInstallScript": true,
|
||||
"license": "MIT",
|
||||
"optional": true,
|
||||
"os": [
|
||||
"darwin"
|
||||
@@ -116,7 +119,7 @@
|
||||
"version": "5.1.2",
|
||||
"resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
|
||||
"integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
|
||||
"dev": true,
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"is-glob": "^4.0.1"
|
||||
},
|
||||
@@ -125,16 +128,16 @@
|
||||
}
|
||||
},
|
||||
"node_modules/immutable": {
|
||||
"version": "4.3.0",
|
||||
"resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.0.tgz",
|
||||
"integrity": "sha512-0AOCmOip+xgJwEVTQj1EfiDDOkPmuyllDuTuEX+DDXUgapLAsBIfkg3sxCYyCEA8mQqZrrxPUGjcOQ2JS3WLkg==",
|
||||
"dev": true
|
||||
"version": "4.3.7",
|
||||
"resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.7.tgz",
|
||||
"integrity": "sha512-1hqclzwYwjRDFLjcFxOM5AYkkG0rpFPpr1RLPMEuGczoS7YA8gLhy8SWXYRAA/XwfEHpfo3cw5JGioS32fnMRw==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/is-binary-path": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
|
||||
"integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"binary-extensions": "^2.0.0"
|
||||
},
|
||||
@@ -146,7 +149,7 @@
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
|
||||
"integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
@@ -155,7 +158,7 @@
|
||||
"version": "4.0.3",
|
||||
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
|
||||
"integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"is-extglob": "^2.1.1"
|
||||
},
|
||||
@@ -167,7 +170,7 @@
|
||||
"version": "7.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
|
||||
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=0.12.0"
|
||||
}
|
||||
@@ -176,7 +179,7 @@
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
|
||||
"integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
@@ -185,7 +188,7 @@
|
||||
"version": "2.3.1",
|
||||
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
|
||||
"integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=8.6"
|
||||
},
|
||||
@@ -197,7 +200,7 @@
|
||||
"version": "3.6.0",
|
||||
"resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
|
||||
"integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"picomatch": "^2.2.1"
|
||||
},
|
||||
@@ -206,10 +209,10 @@
|
||||
}
|
||||
},
|
||||
"node_modules/sass": {
|
||||
"version": "1.60.0",
|
||||
"resolved": "https://registry.npmjs.org/sass/-/sass-1.60.0.tgz",
|
||||
"integrity": "sha512-updbwW6fNb5gGm8qMXzVO7V4sWf7LMXnMly/JEyfbfERbVH46Fn6q02BX7/eHTdKpE7d+oTkMMQpFWNUMfFbgQ==",
|
||||
"dev": true,
|
||||
"version": "1.66.1",
|
||||
"resolved": "https://registry.npmjs.org/sass/-/sass-1.66.1.tgz",
|
||||
"integrity": "sha512-50c+zTsZOJVgFfTgwwEzkjA3/QACgdNsKueWPyAR0mRINIvLAStVQBbPg14iuqEQ74NPDbXzJARJ/O4SI1zftA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"chokidar": ">=3.0.0 <4.0.0",
|
||||
"immutable": "^4.0.0",
|
||||
@@ -219,14 +222,14 @@
|
||||
"sass": "sass.js"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=12.0.0"
|
||||
"node": ">=14.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/source-map-js": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz",
|
||||
"integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==",
|
||||
"dev": true,
|
||||
"version": "1.2.1",
|
||||
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
|
||||
"integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
|
||||
"license": "BSD-3-Clause",
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
@@ -235,7 +238,7 @@
|
||||
"version": "5.0.1",
|
||||
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
|
||||
"integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"is-number": "^7.0.0"
|
||||
},
|
||||
|
||||
11
package.json
11
package.json
@@ -1,9 +1,12 @@
|
||||
{
|
||||
"devDependencies": {
|
||||
"@catppuccin/palette": "^0.1.7",
|
||||
"sass": "^1.60.0"
|
||||
},
|
||||
"name": "fappurccino-forgejo",
|
||||
"version": "0.1.0",
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"build": "node ./build.js"
|
||||
},
|
||||
"dependencies": {
|
||||
"@catppuccin/palette": "^1.3.0",
|
||||
"sass": "^1.66.1"
|
||||
}
|
||||
}
|
||||
|
||||
10
release-please-config.json
Normal file
10
release-please-config.json
Normal file
@@ -0,0 +1,10 @@
|
||||
{
|
||||
"$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json",
|
||||
"last-release-sha": "cecfa246aa84e74e91e8bd8eb5add82734a35211",
|
||||
"packages": {
|
||||
".": {
|
||||
"package-name": "",
|
||||
"release-type": "simple"
|
||||
}
|
||||
}
|
||||
}
|
||||
138
src/_monaco.scss
Normal file
138
src/_monaco.scss
Normal file
@@ -0,0 +1,138 @@
|
||||
.monaco-editor {
|
||||
// selected text
|
||||
.selected-text {
|
||||
background-color: $surface0 !important;
|
||||
}
|
||||
// line numbers
|
||||
.margin-view-overlays .line-numbers {
|
||||
color: $subtext0 !important;
|
||||
}
|
||||
.line-numbers.active-line-number {
|
||||
color: $accent !important;
|
||||
}
|
||||
|
||||
// current / cursor line
|
||||
.view-overlays .current-line,
|
||||
.margin-view-overlays .current-line-margin {
|
||||
background-color: #{if(
|
||||
$isDark,
|
||||
color.mix($surface0, $base, 64%),
|
||||
color.mix($mantle, $base, 70%)
|
||||
)} !important;
|
||||
}
|
||||
|
||||
// Note: all of the hotpink stuff is there so it's easily visible, since these editor scope mappings are a mess
|
||||
|
||||
// plaintext
|
||||
.mtk1 {
|
||||
color: $text !important;
|
||||
}
|
||||
.mtk2 {
|
||||
color: #ff69b4 !important;
|
||||
}
|
||||
// decorators
|
||||
.mtk3 {
|
||||
color: $peach !important;
|
||||
}
|
||||
// shell arguments
|
||||
.mtk4 {
|
||||
color: $teal !important;
|
||||
}
|
||||
// css constants & pre-defineds
|
||||
.mtk5 {
|
||||
color: $text !important;
|
||||
}
|
||||
// keywords
|
||||
.mtk6 {
|
||||
color: $mauve !important;
|
||||
}
|
||||
// numbers
|
||||
.mtk7 {
|
||||
color: $peach !important;
|
||||
}
|
||||
// comments
|
||||
.mtk8 {
|
||||
color: $overlay2 !important;
|
||||
}
|
||||
// sometimes a keyword, apparently
|
||||
.mtk9 {
|
||||
color: $mauve !important;
|
||||
}
|
||||
// braces, brackets, parentheses
|
||||
.mtk10 {
|
||||
color: $subtext0 !important;
|
||||
}
|
||||
// arrow brackets & equal signs in HTML
|
||||
.mtk11 {
|
||||
color: $teal !important;
|
||||
}
|
||||
// @ sign in javascript ¯\_(ツ)_/¯
|
||||
.mtk12 {
|
||||
color: $teal !important;
|
||||
}
|
||||
.mtk13 {
|
||||
color: #ff69b4 !important;
|
||||
}
|
||||
.mtk14 {
|
||||
color: #ff69b4 !important;
|
||||
}
|
||||
// regex, css classnames, and HTML keywords (huh)
|
||||
.mtk15 {
|
||||
color: $mauve !important;
|
||||
}
|
||||
// shebangs
|
||||
.mtk16 {
|
||||
color: $overlay2 !important;
|
||||
}
|
||||
.mtk17 {
|
||||
color: #ff69b4 !important;
|
||||
}
|
||||
.mtk18 {
|
||||
color: #ff69b4 !important;
|
||||
}
|
||||
// glob operator i guess
|
||||
.mtk19 {
|
||||
color: $teal !important;
|
||||
}
|
||||
.mtk20 {
|
||||
color: #ff69b4 !important;
|
||||
}
|
||||
// strings
|
||||
.mtk21 {
|
||||
color: $green !important;
|
||||
}
|
||||
.mtk22 {
|
||||
color: #ff69b4 !important;
|
||||
}
|
||||
// functions
|
||||
.mtk23 {
|
||||
color: $blue !important;
|
||||
}
|
||||
// shell variables
|
||||
.mtk24 {
|
||||
color: $peach !important;
|
||||
}
|
||||
// weird variables
|
||||
.mtk25 {
|
||||
color: $pink !important;
|
||||
}
|
||||
|
||||
.bracket-highlighting-0 {
|
||||
color: color.mix($text, $red, 40%) !important;
|
||||
}
|
||||
.bracket-highlighting-1 {
|
||||
color: color.mix($text, $peach, 40%) !important;
|
||||
}
|
||||
.bracket-highlighting-2 {
|
||||
color: color.mix($text, $yellow, 40%) !important;
|
||||
}
|
||||
.bracket-highlighting-3 {
|
||||
color: color.mix($text, $green, 40%) !important;
|
||||
}
|
||||
.bracket-highlighting-4 {
|
||||
color: color.mix($text, $blue, 40%) !important;
|
||||
}
|
||||
.bracket-highlighting-5 {
|
||||
color: color.mix($text, $mauve, 40%) !important;
|
||||
}
|
||||
}
|
||||
@@ -145,7 +145,7 @@ $lvl3: if($isDark, $base, $crust);
|
||||
--color-red-badge-bg: #{$lvl1};
|
||||
--color-red-badge-hover-bg: #{ctx_lighten($red, 5%)};
|
||||
--color-green-badge: #{$green};
|
||||
--color-green-badge-bg: #{$lvl1};
|
||||
--color-green-badge-bg: #{$green};
|
||||
--color-green-badge-hover-bg: #{ctx_lighten($green, 5%)};
|
||||
--color-yellow-badge: #{$yellow};
|
||||
--color-yellow-badge-bg: #{$lvl1};
|
||||
@@ -173,6 +173,8 @@ $lvl3: if($isDark, $base, $crust);
|
||||
--color-input-toggle-background: #{$surface0};
|
||||
--color-input-border: #{$surface1};
|
||||
--color-input-border-hover: #{$surface2};
|
||||
--color-nav-bg: #{$lvl2};
|
||||
--color-nav-hover-bg: #{$surface0};
|
||||
--color-navbar: #{$lvl2};
|
||||
--color-navbar-transparent: #{color.change($lvl1, $alpha: 0)};
|
||||
--color-light: #{color.change($surface2, $alpha: 0.3)};
|
||||
@@ -196,7 +198,7 @@ $lvl3: if($isDark, $base, $crust);
|
||||
--color-secondary-bg: #{$surface0};
|
||||
--color-text-focus: #{$text};
|
||||
--color-expand-button: #{$surface2};
|
||||
--color-placeholder-text: #{$surface2};
|
||||
--color-placeholder-text: #{$subtext0};
|
||||
--color-editor-line-highlight: var(--color-primary-light-5);
|
||||
--color-project-board-bg: var(--color-secondary-light-2);
|
||||
/* gitea source code: */
|
||||
@@ -204,8 +206,12 @@ $lvl3: if($isDark, $base, $crust);
|
||||
--color-caret: var(--color-text);
|
||||
--color-reaction-bg: #{color.change($text, $alpha: 0.07)};
|
||||
--color-reaction-active-bg: var(--color-primary-alpha-40);
|
||||
--color-header-bar: #{$lvl2};
|
||||
--color-label-active-bg: #{$surface2};
|
||||
--color-header-wrapper: #{$lvl2};
|
||||
--color-header-wrapper-transparent: #{color.change($lvl2, $alpha: 0)};
|
||||
--color-label-text: #{$crust};
|
||||
--color-label-bg: #{$accent};
|
||||
--color-label-hover-bg: #{ctx_lighten($accent, 6%)};
|
||||
--color-label-active-bg: #{ctx_lighten($accent, 3%)};
|
||||
--color-accent: var(--color-primary-light-1);
|
||||
--color-small-accent: var(--color-primary-light-5);
|
||||
--color-active-line: #{$surface1};
|
||||
@@ -259,9 +265,27 @@ $lvl3: if($isDark, $base, $crust);
|
||||
color: $lvl1;
|
||||
}
|
||||
|
||||
// most recent commit hover when signed
|
||||
.ui.sha.isSigned.isVerified {
|
||||
.shortsha {
|
||||
color: $lvl1;
|
||||
}
|
||||
svg.gitea-lock {
|
||||
fill: $lvl1;
|
||||
}
|
||||
}
|
||||
|
||||
// modal text color for the "Remove GPG Key" modal
|
||||
.ui.basic.modal,
|
||||
.ui.basic.modal > .header,
|
||||
.ui.inverted.button {
|
||||
color: $text !important;
|
||||
}
|
||||
|
||||
::selection {
|
||||
background: color.change($rosewater, $alpha: 0.3) !important;
|
||||
background: color.change($accent, $alpha: 0.3) !important;
|
||||
}
|
||||
|
||||
@import "chroma";
|
||||
@import "codemirror";
|
||||
@import "monaco";
|
||||
|
||||
1
version.txt
Normal file
1
version.txt
Normal file
@@ -0,0 +1 @@
|
||||
0.4.1
|
||||
Reference in New Issue
Block a user