Compare commits
6 Commits
glitch-lat
...
4.2.0-glit
Author | SHA1 | Date | |
---|---|---|---|
d34048ecd1 | |||
7311c41239 | |||
211a7143a7 | |||
03d55b7804 | |||
096e8248aa | |||
d486b1527d |
BIN
app/javascript/flavours/glitch/images/modern-preview.jpg
Normal file
BIN
app/javascript/flavours/glitch/images/modern-preview.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 424 KiB |
8
app/javascript/flavours/glitch/packs/common-modern.js
Normal file
8
app/javascript/flavours/glitch/packs/common-modern.js
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
import 'packs/public-path';
|
||||||
|
import { start } from '@rails/ujs';
|
||||||
|
import 'flavours/glitch/styles/modern.scss';
|
||||||
|
|
||||||
|
start();
|
||||||
|
|
||||||
|
// This ensures that webpack compiles our images.
|
||||||
|
require.context('../images', true);
|
5
app/javascript/flavours/glitch/styles/modern.scss
Normal file
5
app/javascript/flavours/glitch/styles/modern.scss
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
@import 'index';
|
||||||
|
|
||||||
|
@import 'modern/modern';
|
||||||
|
|
||||||
|
@import 'modern/diff';
|
294
app/javascript/flavours/glitch/styles/modern/diff.css
Normal file
294
app/javascript/flavours/glitch/styles/modern/diff.css
Normal file
@ -0,0 +1,294 @@
|
|||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.compose-form__autosuggest-wrapper
|
||||||
|
> :last-child {
|
||||||
|
padding-bottom: 2em !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch > #mastodon .compose-form__buttons {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.compose-form__buttons
|
||||||
|
> div:last-child {
|
||||||
|
margin-inline-start: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch > #mastodon .compose-form__buttons-wrapper {
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch > #mastodon .character-counter__wrapper {
|
||||||
|
position: absolute;
|
||||||
|
inset-inline-end: 0;
|
||||||
|
bottom: 100%;
|
||||||
|
margin: 4px;
|
||||||
|
border-radius: 6px;
|
||||||
|
padding: 0.1em 0.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.character-counter__wrapper
|
||||||
|
span {
|
||||||
|
font-size: 0.9em;
|
||||||
|
font-weight: 500;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch > #mastodon .collapsed .status__content {
|
||||||
|
height: auto !important;
|
||||||
|
overflow: visible;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.collapsed
|
||||||
|
.status__content
|
||||||
|
.status__content__text {
|
||||||
|
mask: linear-gradient(to bottom, #000 50px, transparent) !important;
|
||||||
|
-webkit-mask: linear-gradient(to bottom, #000 50px, transparent) !important;
|
||||||
|
max-height: 100px;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.collapsed
|
||||||
|
.status__content
|
||||||
|
p:not(:last-child) {
|
||||||
|
margin-bottom: 0.4em;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch > #mastodon .collapsed .status__content br {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.collapsed
|
||||||
|
.status__content::after {
|
||||||
|
content: unset;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.collapsed.muted
|
||||||
|
.status__content__text
|
||||||
|
~ * {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.status:not(.status-direct)
|
||||||
|
> .status__content {
|
||||||
|
margin-block: -90px -100px !important;
|
||||||
|
padding-block: 100px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.status:not(.status-direct)
|
||||||
|
> .status__content
|
||||||
|
.status__content__text {
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.status:not(.status-direct)
|
||||||
|
> .status__content
|
||||||
|
> :last-child:not(.status__content__text) {
|
||||||
|
margin-bottom: 5px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch > #mastodon .status .full-width {
|
||||||
|
margin-inline: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch > #mastodon .status .status__action-bar {
|
||||||
|
position: static;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.status__info
|
||||||
|
.notification__message {
|
||||||
|
padding-top: 0 !important;
|
||||||
|
padding-inline-start: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch > #mastodon .status__display-name {
|
||||||
|
line-height: 22px;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch > #mastodon .display-name__account {
|
||||||
|
font-size: 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.media-gallery__item
|
||||||
|
> .media-gallery__preview {
|
||||||
|
display: unset;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch > #mastodon .status__action-bar-spacer {
|
||||||
|
min-width: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch > #mastodon .status__relative-time {
|
||||||
|
margin-inline: auto 5px !important;
|
||||||
|
z-index: 2;
|
||||||
|
flex-grow: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch > #mastodon .reactions-bar {
|
||||||
|
width: unset;
|
||||||
|
margin-top: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch > #mastodon .reactions-bar button {
|
||||||
|
border-radius: 6px !important;
|
||||||
|
padding-block: 2px;
|
||||||
|
}
|
||||||
|
@media (pointer: coarse) {
|
||||||
|
body.app-body.flavour-modern-glitch > #mastodon .reactions-bar button {
|
||||||
|
padding: 4px 8px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.reactions-bar
|
||||||
|
button
|
||||||
|
.reactions-bar__item__emoji {
|
||||||
|
height: 18px;
|
||||||
|
width: 18px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch > #mastodon .reactions-bar:empty {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.collapsed
|
||||||
|
> .status__info
|
||||||
|
.notification__message {
|
||||||
|
padding-bottom: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.notification
|
||||||
|
> .notification__message {
|
||||||
|
padding-inline: 15px !important;
|
||||||
|
padding-top: 18px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch > #mastodon .notification .account {
|
||||||
|
padding-inline-start: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.notification__favourite-icon-wrapper {
|
||||||
|
position: static;
|
||||||
|
margin-inline-end: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.notification__favourite-icon-wrapper
|
||||||
|
i {
|
||||||
|
width: 1.28571429em !important;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch > #mastodon .status__prepend,
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.status__info
|
||||||
|
.notification__message {
|
||||||
|
padding-bottom: 15px !important;
|
||||||
|
padding-top: 0 !important;
|
||||||
|
margin-top: -5px !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.status__prepend
|
||||||
|
.status__prepend-icon-wrapper,
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.status__info
|
||||||
|
.notification__message
|
||||||
|
.status__prepend-icon-wrapper {
|
||||||
|
all: unset;
|
||||||
|
margin-inline-end: 10px;
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.status__prepend
|
||||||
|
.status__prepend-icon-wrapper
|
||||||
|
i,
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.status__info
|
||||||
|
.notification__message
|
||||||
|
.status__prepend-icon-wrapper
|
||||||
|
i {
|
||||||
|
margin: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.detailed-status__wrapper
|
||||||
|
.focusable:not(.status)::before {
|
||||||
|
content: unset !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch > #mastodon .setting-text {
|
||||||
|
border-radius: 0 !important;
|
||||||
|
margin: 4px;
|
||||||
|
width: calc(100% - 8px);
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch > #mastodon .column-settings__pillbar {
|
||||||
|
border-radius: var(--radius);
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch > #mastodon .pillbar-button {
|
||||||
|
border-radius: 0 !important;
|
||||||
|
padding: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.account-card
|
||||||
|
.media-modal__close {
|
||||||
|
left: 10px;
|
||||||
|
top: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
body.app-body.flavour-modern-glitch
|
||||||
|
> #mastodon
|
||||||
|
.account-card
|
||||||
|
.media-modal__close::before {
|
||||||
|
content: '';
|
||||||
|
position: absolute;
|
||||||
|
inset: -60px -30px;
|
||||||
|
background: linear-gradient(to right, #000, transparent);
|
||||||
|
transform: rotate(45deg);
|
||||||
|
z-index: -1;
|
||||||
|
opacity: 0.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
.layout-multiple-columns.flavour-modern-glitch .drawer__inner {
|
||||||
|
margin-top: -10px;
|
||||||
|
padding-top: 30px !important;
|
||||||
|
}
|
5585
app/javascript/flavours/glitch/styles/modern/modern.css
Normal file
5585
app/javascript/flavours/glitch/styles/modern/modern.css
Normal file
File diff suppressed because it is too large
Load Diff
8
app/javascript/flavours/modern-glitch/names.yml
Normal file
8
app/javascript/flavours/modern-glitch/names.yml
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
en:
|
||||||
|
flavours:
|
||||||
|
modern-glitch:
|
||||||
|
description: Modern Mastodon theme - with Glitch-SOC support
|
||||||
|
name: Modern - Glitch
|
||||||
|
skins:
|
||||||
|
modern-glitch:
|
||||||
|
default: Default
|
49
app/javascript/flavours/modern-glitch/theme.yml
Normal file
49
app/javascript/flavours/modern-glitch/theme.yml
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
# (REQUIRED) The location of the pack files.
|
||||||
|
pack:
|
||||||
|
admin:
|
||||||
|
- packs/admin.jsx
|
||||||
|
- packs/public.jsx
|
||||||
|
auth: packs/public.jsx
|
||||||
|
common:
|
||||||
|
filename: packs/common-modern.js
|
||||||
|
stylesheet: true
|
||||||
|
embed: packs/public.jsx
|
||||||
|
error: packs/error.js
|
||||||
|
home:
|
||||||
|
filename: packs/home.js
|
||||||
|
preload:
|
||||||
|
- flavours/glitch/async/compose
|
||||||
|
- flavours/glitch/async/getting_started
|
||||||
|
- flavours/glitch/async/home_timeline
|
||||||
|
- flavours/glitch/async/notifications
|
||||||
|
mailer:
|
||||||
|
modal:
|
||||||
|
public: packs/public.jsx
|
||||||
|
settings: packs/settings.js
|
||||||
|
sign_up: packs/sign_up.js
|
||||||
|
share: packs/share.jsx
|
||||||
|
|
||||||
|
# (OPTIONAL) The directory which contains localization files for
|
||||||
|
# the flavour, relative to this directory. The contents of this
|
||||||
|
# directory must be `.json` files whose names correspond to
|
||||||
|
# language tags and whose default exports are a messages object.
|
||||||
|
locales: locales
|
||||||
|
|
||||||
|
# (OPTIONAL) Which flavour to inherit locales from
|
||||||
|
inherit_locales: vanilla
|
||||||
|
|
||||||
|
# (OPTIONAL) A file to use as the preview screenshot for the flavour,
|
||||||
|
# or an array thereof. These are the full path from `app/javascript/`.
|
||||||
|
screenshot: flavours/glitch/images/modern-preview.jpg
|
||||||
|
|
||||||
|
# (OPTIONAL) The directory which contains the pack files.
|
||||||
|
# Defaults to the theme directory (`app/javascript/themes/[theme]`),
|
||||||
|
# which should be sufficient for like 99% of use-cases lol.
|
||||||
|
|
||||||
|
pack_directory: app/javascript/flavours/glitch
|
||||||
|
|
||||||
|
# (OPTIONAL) By default the theme will fallback to the default theme
|
||||||
|
# if a particular pack is not provided. You can specify different
|
||||||
|
# fallbacks here, or disable fallback behaviours altogether by
|
||||||
|
# specifying a `null` value.
|
||||||
|
fallback:
|
@ -0,0 +1,3 @@
|
|||||||
|
@import 'flavours/glitch/styles/mastodon-light/variables';
|
||||||
|
@import 'flavours/glitch/styles/modern';
|
||||||
|
@import 'flavours/glitch/styles/mastodon-light/diff';
|
@ -0,0 +1,4 @@
|
|||||||
|
en:
|
||||||
|
skins:
|
||||||
|
modern-glitch:
|
||||||
|
modern-light: Default (light)
|
@ -0,0 +1,3 @@
|
|||||||
|
@import 'flavours/glitch/styles/wobbl-light/variables';
|
||||||
|
@import 'flavours/glitch/styles/modern';
|
||||||
|
@import 'flavours/glitch/styles/mastodon-light/diff';
|
@ -0,0 +1,4 @@
|
|||||||
|
en:
|
||||||
|
skins:
|
||||||
|
modern-glitch:
|
||||||
|
wobbl-modern-light: Wobbl Red (light)
|
@ -0,0 +1,2 @@
|
|||||||
|
@import 'flavours/glitch/styles/wobbl/variables';
|
||||||
|
@import 'flavours/glitch/styles/modern';
|
@ -0,0 +1,4 @@
|
|||||||
|
en:
|
||||||
|
skins:
|
||||||
|
modern-glitch:
|
||||||
|
wobbl-modern: Wobbl Red
|
@ -0,0 +1,3 @@
|
|||||||
|
@import 'flavours/glitch/styles/wobbl-old-light/variables';
|
||||||
|
@import 'flavours/glitch/styles/modern';
|
||||||
|
@import 'flavours/glitch/styles/mastodon-light/diff';
|
@ -0,0 +1,4 @@
|
|||||||
|
en:
|
||||||
|
skins:
|
||||||
|
modern-glitch:
|
||||||
|
wobbl-old-modern-light: Wobbl Orange (light)
|
@ -0,0 +1,2 @@
|
|||||||
|
@import 'flavours/glitch/styles/wobbl-old/variables';
|
||||||
|
@import 'flavours/glitch/styles/modern';
|
@ -0,0 +1,4 @@
|
|||||||
|
en:
|
||||||
|
skins:
|
||||||
|
modern-glitch:
|
||||||
|
wobbl-old-modern: Wobbl Orange
|
@ -18,6 +18,7 @@ module.exports = merge(sharedConfig, {
|
|||||||
mode: 'development',
|
mode: 'development',
|
||||||
cache: true,
|
cache: true,
|
||||||
devtool: 'cheap-module-eval-source-map',
|
devtool: 'cheap-module-eval-source-map',
|
||||||
|
parallelism: 1,
|
||||||
|
|
||||||
stats: {
|
stats: {
|
||||||
errorDetails: true,
|
errorDetails: true,
|
||||||
|
@ -3,6 +3,7 @@ module.exports = {
|
|||||||
ignoreFiles: [
|
ignoreFiles: [
|
||||||
'app/javascript/styles/mastodon/reset.scss',
|
'app/javascript/styles/mastodon/reset.scss',
|
||||||
'app/javascript/flavours/glitch/styles/reset.scss',
|
'app/javascript/flavours/glitch/styles/reset.scss',
|
||||||
|
'app/javascript/flavours/glitch/styles/modern/modern.css',
|
||||||
'app/javascript/styles/win95.scss',
|
'app/javascript/styles/win95.scss',
|
||||||
'coverage/**/*',
|
'coverage/**/*',
|
||||||
'node_modules/**/*',
|
'node_modules/**/*',
|
||||||
|
10
yarn.lock
10
yarn.lock
@ -11776,17 +11776,19 @@ sass-loader@^10.2.0:
|
|||||||
schema-utils "^3.0.0"
|
schema-utils "^3.0.0"
|
||||||
semver "^7.3.2"
|
semver "^7.3.2"
|
||||||
|
|
||||||
<<<<<<< HEAD
|
sass@^1.38.0:
|
||||||
sass@^1.38.0, sass@^1.62.1:
|
|
||||||
version "1.63.6"
|
version "1.63.6"
|
||||||
resolved "https://registry.yarnpkg.com/sass/-/sass-1.63.6.tgz#481610e612902e0c31c46b46cf2dad66943283ea"
|
resolved "https://registry.yarnpkg.com/sass/-/sass-1.63.6.tgz#481610e612902e0c31c46b46cf2dad66943283ea"
|
||||||
integrity sha512-MJuxGMHzaOW7ipp+1KdELtqKbfAWbH7OLIdoSMnVe3EXPMTmxTmlaZDCTsgIpPCs3w99lLo9/zDKkOrJuT5byw==
|
integrity sha512-MJuxGMHzaOW7ipp+1KdELtqKbfAWbH7OLIdoSMnVe3EXPMTmxTmlaZDCTsgIpPCs3w99lLo9/zDKkOrJuT5byw==
|
||||||
=======
|
dependencies:
|
||||||
|
chokidar ">=3.0.0 <4.0.0"
|
||||||
|
immutable "^4.0.0"
|
||||||
|
source-map-js ">=0.6.2 <2.0.0"
|
||||||
|
|
||||||
sass@^1.62.1:
|
sass@^1.62.1:
|
||||||
version "1.64.1"
|
version "1.64.1"
|
||||||
resolved "https://registry.yarnpkg.com/sass/-/sass-1.64.1.tgz#6a46f6d68e0fa5ad90aa59ce025673ddaa8441cf"
|
resolved "https://registry.yarnpkg.com/sass/-/sass-1.64.1.tgz#6a46f6d68e0fa5ad90aa59ce025673ddaa8441cf"
|
||||||
integrity sha512-16rRACSOFEE8VN7SCgBu1MpYCyN7urj9At898tyzdXFhC+a+yOX5dXwAR7L8/IdPJ1NB8OYoXmD55DM30B2kEQ==
|
integrity sha512-16rRACSOFEE8VN7SCgBu1MpYCyN7urj9At898tyzdXFhC+a+yOX5dXwAR7L8/IdPJ1NB8OYoXmD55DM30B2kEQ==
|
||||||
>>>>>>> upstream/main
|
|
||||||
dependencies:
|
dependencies:
|
||||||
chokidar ">=3.0.0 <4.0.0"
|
chokidar ">=3.0.0 <4.0.0"
|
||||||
immutable "^4.0.0"
|
immutable "^4.0.0"
|
||||||
|
Reference in New Issue
Block a user