Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
1cc8328
add stylelint for scss with all rules disabled
nadalaba Mar 25, 2026
653516d
re-add declaration-block-no-duplicate-properties rule to its default
nadalaba Mar 25, 2026
57b9439
re-add block-no-empty rule
nadalaba Mar 25, 2026
d7a5c87
re-add font-family-no-missing-generic-family-keyword
nadalaba Mar 25, 2026
0a4118d
re-add selector-type-no-unknown
nadalaba Mar 25, 2026
f2d3b35
re-add selector-pseudo-element-colon-notation: double
nadalaba Mar 25, 2026
35f9f5f
re-add font-family-name-quotes: always-where-recommended
nadalaba Mar 25, 2026
e8f679f
re-add function-url-quotes: always
nadalaba Mar 25, 2026
03be1c9
re-add property-no-vendor-prefix
nadalaba Mar 25, 2026
2071438
re-add value-no-vendor-prefix except for box and inline-box
nadalaba Mar 25, 2026
e49a0bc
re-add no-invalid-position-at-import-rule
nadalaba Mar 25, 2026
41bde16
add stylelint for css with all rules disabled
nadalaba Mar 25, 2026
dfbf1e7
re-add no-descending-specificity
nadalaba Mar 25, 2026
7f05e70
re-add no-duplicate-selectors
nadalaba Mar 25, 2026
38200c8
re-add font-family-no-missing-generic-family-keyword
nadalaba Mar 25, 2026
13d8a8e
re-add declaration-block-no-shorthand-property-overrides
nadalaba Mar 25, 2026
fcd25fd
re-add declaration-property-value-no-unknown
nadalaba Mar 25, 2026
cd86c8b
re-add selector-type-no-unknown
nadalaba Mar 25, 2026
afa6f56
re-add property-no-vendor-prefix
nadalaba Mar 25, 2026
f8b0120
re-add selector-pseudo-element-colon-notation: double
nadalaba Mar 25, 2026
bdf4ac9
re-add font-family-name-quotes: always-where-recommended
nadalaba Mar 25, 2026
0cdb1e7
re-add function-url-quotes: always
nadalaba Mar 25, 2026
5480020
re-add at-rule-no-unknown
nadalaba Mar 25, 2026
1cb4f14
add stylelint to lint-staged
nadalaba Mar 25, 2026
84e23fe
add stylelint to turbo, full-check and CI
nadalaba Mar 25, 2026
5d41c8e
add stylelint vscode extension
nadalaba Mar 25, 2026
605608d
Revert "re-add no-invalid-position-at-import-rule"
nadalaba Mar 25, 2026
fb5648c
replace key type with kbd
nadalaba Mar 25, 2026
d5a4f40
Merge branch 'master' into stylelint
nadalaba Mar 26, 2026
4af3718
allow ci to run
nadalaba Mar 26, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 15 additions & 9 deletions .github/workflows/monkey-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
should-build-be: ${{ steps.export-changes.outputs.should-build-be }}
should-build-fe: ${{ steps.export-changes.outputs.should-build-fe }}
should-build-pkg: ${{ steps.export-changes.outputs.should-build-pkg }}
assets-json: ${{ steps.export-changes.outputs.assets-json }}
assetsAndStyles: ${{ steps.export-changes.outputs.assetsAndStyles }}

steps:
- name: Full checkout
Expand All @@ -43,8 +43,9 @@ jobs:
id: filter
with:
filters: |
json:
assetsAndStyles:
- 'frontend/static/**/*'
- '**/*.{scss,css}'
be-src:
- 'backend/**/*.{ts,js,json,lua,css,html}'
- 'backend/package.json'
Expand All @@ -62,23 +63,19 @@ jobs:
if: steps.filter.outputs.anti-cheat == 'true' && !contains(github.event.pull_request.labels.*.name, 'force-ci') && !contains(github.event.pull_request.labels.*.name, 'force-full-ci')
run: exit 1

- name: Check Workflow Changes
if: steps.filter.outputs.workflows == 'true' && !contains(github.event.pull_request.labels.*.name, 'force-ci') && !contains(github.event.pull_request.labels.*.name, 'force-full-ci')
run: exit 1

- name: Export changes
id: export-changes
run: |
echo "should-build-pkg=${{ steps.filter.outputs.pkg-src }}" >> $GITHUB_OUTPUT
echo "should-build-be=${{ steps.filter.outputs.be-src }}" >> $GITHUB_OUTPUT
echo "should-build-fe=${{ steps.filter.outputs.fe-src }}" >> $GITHUB_OUTPUT
echo "assets-json=${{ steps.filter.outputs.json }}" >> $GITHUB_OUTPUT
echo "assetsAndStyles=${{ steps.filter.outputs.assetsAndStyles }}" >> $GITHUB_OUTPUT

prime-cache:
name: prime-cache
runs-on: ubuntu-latest
needs: [pre-ci]
if: needs.pre-ci.outputs.should-build-be == 'true' || needs.pre-ci.outputs.should-build-fe == 'true' || needs.pre-ci.outputs.should-build-pkg == 'true' || needs.pre-ci.outputs.assets-json == 'true' || contains(github.event.pull_request.labels.*.name, 'force-full-ci')
if: needs.pre-ci.outputs.should-build-be == 'true' || needs.pre-ci.outputs.should-build-fe == 'true' || needs.pre-ci.outputs.should-build-pkg == 'true' || needs.pre-ci.outputs.assetsAndStyles == 'true' || contains(github.event.pull_request.labels.*.name, 'force-full-ci')
steps:
- name: Checkout pnpm-lock
uses: actions/checkout@v4
Expand Down Expand Up @@ -224,7 +221,7 @@ jobs:
name: ci-assets
needs: [pre-ci, prime-cache]
runs-on: ubuntu-latest
if: needs.pre-ci.outputs.assets-json == 'true' || contains(github.event.pull_request.labels.*.name, 'force-full-ci')
if: needs.pre-ci.outputs.assetsAndStyles == 'true' || contains(github.event.pull_request.labels.*.name, 'force-full-ci')
steps:
- uses: actions/checkout@v4
with:
Expand All @@ -236,6 +233,10 @@ jobs:
id: filter
with:
filters: |
styles:
- '**/*.{scss,css}'
json:
- 'frontend/static/**/*.json'
languages:
- 'frontend/static/languages/**'
quotes:
Expand Down Expand Up @@ -273,7 +274,12 @@ jobs:
- name: Install dependencies
run: pnpm install

- name: Lint styles
if: steps.filter.outputs.styles == 'true'
run: npm run lint-styles

- name: Lint JSON
if: steps.filter.outputs.json == 'true'
run: npm run lint-json-assets

- name: Validate language assets
Expand Down
10 changes: 5 additions & 5 deletions backend/private/style.css
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ body {
bottom: 3rem;
background-color: var(--sub-alt-color);
color: var(--text-color);
font-style: bold;
font-weight: bold;
border-radius: 3px;
padding: 1rem 2rem;
cursor: pointer;
Expand Down Expand Up @@ -189,10 +189,6 @@ input[type="checkbox"] {
}
}

.tooltip:hover .tooltip-text {
display: block;
}

.tooltip-text {
display: none;
color: var(--text-color);
Expand All @@ -202,3 +198,7 @@ input[type="checkbox"] {
padding: 10px;
border-radius: var(--roundness);
}

.tooltip:hover .tooltip-text {
display: block;
}
2 changes: 2 additions & 0 deletions frontend/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@
"scripts": {
"lint": "oxlint . --type-aware --type-check",
"lint-fast": "oxlint .",
"lint-styles": "stylelint \"**/*.{scss,css}\"",
"lint-styles-fix": "stylelint \"**/*.{scss,css}\" --fix",
"lint-json": "eslint static/**/*.json",
"check-assets": "tsx ./scripts/check-assets.ts",
"audit": "vite-bundle-visualizer",
Expand Down
2 changes: 0 additions & 2 deletions frontend/src/styles/account-settings.scss
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,6 @@
td {
padding: 0.5rem;
background: var(--bg-color);
position: -webkit-sticky;
position: sticky;
top: 0;
z-index: 99;
Expand All @@ -159,7 +158,6 @@
tfoot {
td {
padding: 1rem 0.5rem;
position: -webkit-sticky;
position: sticky;
bottom: -5px;
background: var(--bg-color);
Expand Down
6 changes: 2 additions & 4 deletions frontend/src/styles/account.scss
Original file line number Diff line number Diff line change
Expand Up @@ -152,7 +152,7 @@

&.history {
table td {
-webkit-appearance: unset;
appearance: unset;
}

table tr {
Expand All @@ -170,10 +170,8 @@
padding: 0.5rem;
border-radius: var(--roundness);
cursor: pointer;
-webkit-transition: 0.25s;
transition: 0.25s;
-webkit-user-select: none;
display: -ms-grid;
user-select: none;
display: grid;
-ms-flex-line-pack: center;
align-content: center;
Expand Down
5 changes: 0 additions & 5 deletions frontend/src/styles/buttons.scss
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@ button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
text-align: center;
color: var(--text-color);
cursor: pointer;
transition:
Expand All @@ -38,11 +37,9 @@ input[type="submit"] {
border-radius: var(--roundness);
background: var(--sub-alt-color);
text-align: center;
-webkit-user-select: none;
user-select: none;
align-content: center;
align-items: center;
height: -moz-min-content;
height: min-content;
line-height: 1.25;
appearance: none;
Expand Down Expand Up @@ -115,10 +112,8 @@ button.text,
border-radius: var(--roundness);
background: none;
text-align: center;
-webkit-user-select: none;
user-select: none;
align-content: center;
height: -moz-min-content;
height: min-content;
line-height: 1.25;
appearance: none;
Expand Down
1 change: 0 additions & 1 deletion frontend/src/styles/caret.scss
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,6 @@

&.block {
width: 0.5em;
border-radius: 0;
z-index: -1;
border-radius: 0.05em;
}
Expand Down
2 changes: 0 additions & 2 deletions frontend/src/styles/commandline.scss
Original file line number Diff line number Diff line change
Expand Up @@ -60,13 +60,11 @@
}

.suggestions {
display: block;
@extend .ffscroll;
overflow-y: scroll;
max-height: calc(100vh - 12rem - 3rem);
display: grid;
cursor: pointer;
-webkit-user-select: none;
user-select: none;

.command {
Expand Down
5 changes: 1 addition & 4 deletions frontend/src/styles/core.scss
Original file line number Diff line number Diff line change
Expand Up @@ -292,7 +292,6 @@ kbd {
grid-column: 1/2;
grid-row: 1/2;
place-self: center center;
display: grid;
place-content: center center;
overflow: hidden;
display: inline-block;
Expand Down Expand Up @@ -321,7 +320,6 @@ kbd {
color: var(--text-color);
border-radius: calc(var(--roundness) / 2);
// padding: 0.15em 0.5em;
-webkit-user-select: none;
user-select: none;
display: grid;
grid-template-columns: max-content auto;
Expand Down Expand Up @@ -375,7 +373,7 @@ kbd {
}

// mouseover texts
[aria-label][data-balloon-pos]:after {
[aria-label][data-balloon-pos]::after {
font-family: var(--font);
font-size: var(--balloon-font-size);
line-height: var(--balloon-font-size);
Expand All @@ -401,7 +399,6 @@ table {
z-index: 0;
td.sortable:hover {
cursor: pointer;
-webkit-user-select: none;
user-select: none;
background-color: var(--sub-alt-color);
}
Expand Down
2 changes: 1 addition & 1 deletion frontend/src/styles/fontawesome-5.scss
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
@import "@fortawesome/fontawesome-free/scss/_mixins.scss";
@import "@fortawesome/fontawesome-free/scss/_core.scss";

/** fixed-with **/
/** fixed-width **/
@import "@fortawesome/fontawesome-free/scss/_fixed-width.scss"; //fa-fw
/** animated **/
@import "@fortawesome/fontawesome-free/scss/_animated.scss"; //fa-spin
Expand Down
2 changes: 1 addition & 1 deletion frontend/src/styles/fonts.scss
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
@use "sass:map";

@font-face {
font-family: "Vazirharf";
font-family: Vazirharf;
font-style: normal;
font-weight: 400;
font-display: block;
Expand Down
29 changes: 11 additions & 18 deletions frontend/src/styles/inputs.scss
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ textarea {
top: -1.75rem;
right: 0.25rem;
color: var(--sub-color);
-webkit-user-select: none;
user-select: none;
&.error {
color: var(--error-color);
Expand All @@ -41,13 +40,13 @@ textarea {
}

input[type="range"] {
-webkit-appearance: none;
appearance: none;
padding: 0;
width: 100%;
height: 1.25em;
border-radius: var(--roundness);
&::-webkit-slider-thumb {
-webkit-appearance: none;
appearance: none;
padding: 0;
border: none;
width: 25%;
Expand All @@ -63,7 +62,7 @@ input[type="range"] {
}

&::-moz-range-thumb {
-webkit-appearance: none;
appearance: none;
padding: 0;
border: none;
width: 25%;
Expand Down Expand Up @@ -110,14 +109,13 @@ input[type="checkbox"] {
position: relative;
transition: background 0.125s;
flex-shrink: 0;
&:after {
&::after {
font-family: "Font Awesome";
content: "\f00c";
top: 0;
left: 0;
width: 100%;
height: 100%;
display: block;
border-radius: calc((var(--roundness) / 2) - 0.1em);
font-weight: 900;
position: absolute;
Expand All @@ -129,23 +127,23 @@ input[type="checkbox"] {
color: transparent;
}

&:checked:after {
&:checked::after {
color: var(--main-color);
}
&:hover:after {
&:hover::after {
color: var(--bg-color);
}
&:hover:checked:after {
&:hover:checked::after {
color: var(--text-color);
}

&[disabled] {
opacity: 0.33;
pointer-events: none;
&:hover:after {
&:hover::after {
color: var(--sub-alt-color);
}
&:hover:checked:after {
&:hover:checked::after {
color: var(--main-color);
}
}
Expand Down Expand Up @@ -176,15 +174,11 @@ textarea:disabled {

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
margin: 0;
}

input[type="number"] {
-moz-appearance: textfield;
-webkit-appearance: textfield;
appearance: textfield;
}

Expand All @@ -202,13 +196,12 @@ select:-webkit-autofill:focus {
outline: 0.15em solid var(--main-color);
font-family: inherit;
-webkit-text-fill-color: var(--text-color);
-webkit-box-shadow: 0 0 0 1000000px var(--sub-alt-color) inset;
box-shadow: 0 0 0 1000000px var(--sub-alt-color) inset;
caret-color: var(--text-color);
}

// slim-select styles
.ss-main {
border-radius: var(--roundness);
outline: none;
border: none;
border-radius: var(--roundness);
Expand Down Expand Up @@ -316,7 +309,7 @@ select:-webkit-autofill:focus {
color: var(--sub-color);
}
&::-webkit-search-cancel-button {
-webkit-appearance: none;
appearance: none;
}
}
}
Expand Down
1 change: 0 additions & 1 deletion frontend/src/styles/keymap.scss
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@
// height: 140px;
gap: 0.25rem;
margin-top: 1rem;
-webkit-user-select: none;
user-select: none;

.row {
Expand Down
2 changes: 1 addition & 1 deletion frontend/src/styles/media-queries-gray.scss
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
//this is very overkill for the modern world so dont worry too much about this width
@use "./media.scss" as *;

@include media-query(gray) {
// this is very overkill for the modern world so dont worry too much about this width
}
Loading
Loading