Compare commits

...

13 Commits

Author SHA1 Message Date
root
af93f93028 Modern theme update to latest version 2023-10-19 07:37:10 -04:00
root
598f7000a8 Modern theme update 2023-10-19 07:37:10 -04:00
root
486f91327d fix Modern theme when split into separtate flavour 2023-10-19 07:37:10 -04:00
root
472478efe5 Migrate Modern theme to separate Flavour 2023-10-19 07:37:10 -04:00
root
6cf361f527 Migrate Modern theme to separate Flavour 2023-10-19 07:37:10 -04:00
root
feaccac18b Re-add Modern theme, with color variants 2023-10-19 07:37:10 -04:00
root
5ac5be7eba dev work 2023-10-19 07:37:10 -04:00
tarrien
8bf83a526c Delete .env.production.old 2023-10-19 07:37:10 -04:00
tarrien
b0abbfaf66 Cleanup 2023-10-19 07:37:10 -04:00
Tarrien
96fb00b589 Block gpt via robots.txt 2023-10-19 07:37:10 -04:00
Tarrien
970248129a Final save before migration 2023-10-19 07:37:10 -04:00
Tarrien
862235e0c9 Fixing some customization tweaks 2023-10-19 07:37:10 -04:00
Tarrien
e376fc57a5 Wobbl customizations on Glitch-SOC 2023-10-19 07:37:06 -04:00
57 changed files with 18242 additions and 1997 deletions

7
.gitignore vendored
View File

@ -60,3 +60,10 @@ yarn-debug.log
# Ignore Docker option files
docker-compose.override.yml
/public/packs
/public/packs-test
/node_modules
/yarn-error.log
yarn-debug.log*
.yarn-integrity

View File

@ -86,3 +86,6 @@ app/javascript/flavours/glitch/styles/reset.scss
# Ignore win95 theme
app/javascript/styles/win95.scss
# Ignore wobbl themes
app/javascript/flavors/glitch/styles/wobbl*

View File

@ -53,7 +53,7 @@ module StatusesHelper
def status_description(status)
components = [[media_summary(status), status_text_summary(status)].compact_blank.join(' · ')]
if status.spoiler_text.blank?
if status.spoiler_text.blank? || Setting.preview_sensitive_media
components << status.text
components << poll_summary(status)
end

Binary file not shown.

After

Width:  |  Height:  |  Size: 424 KiB

View 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);

View File

@ -0,0 +1,5 @@
@import 'index';
@import 'modern/modern';
@import 'modern/diff';

View 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;
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,3 @@
@import 'wobbl-light/variables';
@import 'index';
@import 'mastodon-light/diff';

View File

@ -0,0 +1,60 @@
// Dependent colors
$black: #000000;
$white: #ffffff;
$classic-base-color: #191919;
$classic-primary-color: #e7e7e7;
$classic-secondary-color: #ff8680;
$classic-highlight-color: #850700;
$blurple-600: #cc3939; // Iris
$blurple-500: #850700; // Brand purple
$blurple-300: #fa8484; // Faded Blue
$grey-600: #4e4c5a; // Trout
$grey-100: #dadaf3; // Topaz
// Differences
$success-green: lighten(#3c754d, 8%);
$base-overlay-background: $white !default;
$valid-value-color: $success-green !default;
$ui-base-color: $classic-primary-color !default;
$ui-base-lighter-color: #b0c0cf;
$ui-primary-color: #9bcbed;
$ui-secondary-color: $classic-base-color !default;
$ui-highlight-color: $classic-highlight-color !default;
$ui-button-color: $white !default;
$ui-button-background-color: $blurple-500 !default;
$ui-button-focus-background-color: $blurple-600 !default;
$ui-button-secondary-color: $grey-600 !default;
$ui-button-secondary-border-color: $grey-600 !default;
$ui-button-secondary-focus-color: $white !default;
$ui-button-tertiary-color: $blurple-500 !default;
$ui-button-tertiary-border-color: $blurple-500 !default;
$primary-text-color: $black !default;
$darker-text-color: $classic-base-color !default;
$highlight-text-color: darken($ui-highlight-color, 8%) !default;
$dark-text-color: #444b5d;
$action-button-color: #606984;
$inverted-text-color: $black !default;
$lighter-text-color: $classic-base-color !default;
$light-text-color: #444b5d;
// Newly added colors
$account-background-color: $white !default;
// Invert darkened and lightened colors
@function darken($color, $amount) {
@return hsl(hue($color), saturation($color), lightness($color) + $amount);
}
@function lighten($color, $amount) {
@return hsl(hue($color), saturation($color), lightness($color) - $amount);
}
$emojis-requiring-inversion: 'chains';

View File

@ -0,0 +1,101 @@
// Commonly used web colors
$black: #000000; // Black
$white: #ffffff; // White
$red-600: #b7253d !default; // Deep Carmine
$red-500: #df405a !default; // Cerise
$blurple-600: #563acc; // Iris
$blurple-500: #6364ff; // Brand purple
$blurple-300: #858afa; // Faded Blue
$grey-600: #4e4c5a; // Trout
$grey-100: #dadaf3; // Topaz
$success-green: #79bd9a !default; // Padua
$error-red: $red-500 !default; // Cerise
$warning-red: #ff5050 !default; // Sunset Orange
$gold-star: #ca8f04 !default; // Dark Goldenrod
$red-bookmark: $warning-red;
// Values from the classic Mastodon UI
$classic-base-color: #191919;// Dark Gray
$classic-primary-color: #E7E7E7;// Platinum
$classic-secondary-color: #FF8680; // Paler red
$classic-highlight-color: #850700; // Red highlights
// Variables for defaults in UI
$base-shadow-color: $black !default;
$base-overlay-background: $black !default;
$base-border-color: $white !default;
$simple-background-color: $white !default;
$valid-value-color: $success-green !default;
$error-value-color: $error-red !default;
// Tell UI to use selected colors
$ui-base-color: $classic-base-color !default; // Darkest
$ui-base-lighter-color: lighten(
$ui-base-color,
26%
) !default; // Lighter darkest
$ui-primary-color: $classic-primary-color !default; // Lighter
$ui-secondary-color: $classic-secondary-color !default; // Lightest
$ui-highlight-color: $classic-highlight-color !default;
$ui-button-color: $white !default;
$ui-button-background-color: $blurple-500 !default;
$ui-button-focus-background-color: $blurple-600 !default;
$ui-button-secondary-color: $grey-100 !default;
$ui-button-secondary-border-color: $grey-100 !default;
$ui-button-secondary-focus-background-color: $grey-600 !default;
$ui-button-secondary-focus-color: $white !default;
$ui-button-tertiary-color: $blurple-300 !default;
$ui-button-tertiary-border-color: $blurple-300 !default;
$ui-button-tertiary-focus-background-color: $blurple-600 !default;
$ui-button-tertiary-focus-color: $white !default;
$ui-button-destructive-background-color: $red-500 !default;
$ui-button-destructive-focus-background-color: $red-600 !default;
// Variables for texts
$primary-text-color: $white !default;
$darker-text-color: $ui-primary-color !default;
$dark-text-color: $ui-base-lighter-color !default;
$secondary-text-color: $ui-secondary-color !default;
$highlight-text-color: lighten($ui-highlight-color, 8%) !default;
$action-button-color: $ui-base-lighter-color !default;
$action-button-focus-color: lighten($ui-base-lighter-color, 4%) !default;
$passive-text-color: $gold-star !default;
$active-passive-text-color: $success-green !default;
// For texts on inverted backgrounds
$inverted-text-color: $ui-base-color !default;
$lighter-text-color: $ui-base-lighter-color !default;
$light-text-color: $ui-primary-color !default;
// Language codes that uses CJK fonts
$cjk-langs: ja, ko, zh-CN, zh-HK, zh-TW;
// Variables for components
$media-modal-media-max-width: 100%;
// put margins on top and bottom of image to avoid the screen covered by image.
$media-modal-media-max-height: 80%;
$no-gap-breakpoint: 1175px;
$font-sans-serif: 'mastodon-font-sans-serif' !default;
$font-display: 'mastodon-font-display' !default;
$font-monospace: 'mastodon-font-monospace' !default;
// Avatar border size (8% default, 100% for rounded avatars)
$ui-avatar-border-size: 8%;
// More variables
$dismiss-overlay-width: 4rem;
:root {
--dropdown-border-color: #{lighten($ui-base-color, 12%)};
--dropdown-background-color: #{lighten($ui-base-color, 4%)};
--dropdown-shadow: 0 20px 25px -5px #{rgba($base-shadow-color, 0.25)},
0 8px 10px -6px #{rgba($base-shadow-color, 0.25)};
}

View File

@ -0,0 +1,3 @@
@import 'wobbl-old-light/variables';
@import 'index';
@import 'mastodon-light/diff';

View File

@ -0,0 +1,60 @@
// Dependent colors
$black: #000000;
$white: #ffffff;
$classic-base-color: #191918;
$classic-primary-color: #e7e7e7;
$classic-secondary-color: #8c562a;
$classic-highlight-color: #c45302;
$blurple-600: #c45302; // Iris
$blurple-500: #fd8128; // Brand purple
$blurple-300: #fda15f; // Faded Blue
$grey-600: #4e4c5a; // Trout
$grey-100: #dadaf3; // Topaz
// Differences
$success-green: lighten(#3c754d, 8%);
$base-overlay-background: $white !default;
$valid-value-color: $success-green !default;
$ui-base-color: $classic-primary-color !default;
$ui-base-lighter-color: #b0c0cf;
$ui-primary-color: #9bcbed;
$ui-secondary-color: $classic-base-color !default;
$ui-highlight-color: $classic-highlight-color !default;
$ui-button-color: $white !default;
$ui-button-background-color: $blurple-500 !default;
$ui-button-focus-background-color: $blurple-600 !default;
$ui-button-secondary-color: $grey-600 !default;
$ui-button-secondary-border-color: $grey-600 !default;
$ui-button-secondary-focus-color: $white !default;
$ui-button-tertiary-color: $blurple-500 !default;
$ui-button-tertiary-border-color: $blurple-500 !default;
$primary-text-color: $black !default;
$darker-text-color: $classic-base-color !default;
$highlight-text-color: darken($ui-highlight-color, 8%) !default;
$dark-text-color: #444b5d;
$action-button-color: #606984;
$inverted-text-color: $black !default;
$lighter-text-color: $classic-base-color !default;
$light-text-color: #444b5d;
// Newly added colors
$account-background-color: $white !default;
// Invert darkened and lightened colors
@function darken($color, $amount) {
@return hsl(hue($color), saturation($color), lightness($color) + $amount);
}
@function lighten($color, $amount) {
@return hsl(hue($color), saturation($color), lightness($color) - $amount);
}
$emojis-requiring-inversion: 'chains';

View File

@ -0,0 +1,101 @@
// Commonly used web colors
$black: #000000; // Black
$white: #ffffff; // White
$red-600: #b7253d !default; // Deep Carmine
$red-500: #df405a !default; // Cerise
$blurple-600: #563acc; // Iris
$blurple-500: #6364ff; // Brand purple
$blurple-300: #858afa; // Faded Blue
$grey-600: #4e4c5a; // Trout
$grey-100: #dadaf3; // Topaz
$success-green: #79bd9a !default; // Padua
$error-red: $red-500 !default; // Cerise
$warning-red: #ff5050 !default; // Sunset Orange
$gold-star: #ca8f04 !default; // Dark Goldenrod
$red-bookmark: $warning-red;
// Values from the classic Mastodon UI
$classic-base-color: #191919;// Dark Gray
$classic-primary-color: #E7E7E7;// Platinum
$classic-secondary-color: #FF8680; // Paler red
$classic-highlight-color: #850700; // Red highlights
// Variables for defaults in UI
$base-shadow-color: $black !default;
$base-overlay-background: $black !default;
$base-border-color: $white !default;
$simple-background-color: $white !default;
$valid-value-color: $success-green !default;
$error-value-color: $error-red !default;
// Tell UI to use selected colors
$ui-base-color: $classic-base-color !default; // Darkest
$ui-base-lighter-color: lighten(
$ui-base-color,
26%
) !default; // Lighter darkest
$ui-primary-color: $classic-primary-color !default; // Lighter
$ui-secondary-color: $classic-secondary-color !default; // Lightest
$ui-highlight-color: $classic-highlight-color !default;
$ui-button-color: $white !default;
$ui-button-background-color: $blurple-500 !default;
$ui-button-focus-background-color: $blurple-600 !default;
$ui-button-secondary-color: $grey-100 !default;
$ui-button-secondary-border-color: $grey-100 !default;
$ui-button-secondary-focus-background-color: $grey-600 !default;
$ui-button-secondary-focus-color: $white !default;
$ui-button-tertiary-color: $blurple-300 !default;
$ui-button-tertiary-border-color: $blurple-300 !default;
$ui-button-tertiary-focus-background-color: $blurple-600 !default;
$ui-button-tertiary-focus-color: $white !default;
$ui-button-destructive-background-color: $red-500 !default;
$ui-button-destructive-focus-background-color: $red-600 !default;
// Variables for texts
$primary-text-color: $white !default;
$darker-text-color: $ui-primary-color !default;
$dark-text-color: $ui-base-lighter-color !default;
$secondary-text-color: $ui-secondary-color !default;
$highlight-text-color: lighten($ui-highlight-color, 8%) !default;
$action-button-color: $ui-base-lighter-color !default;
$action-button-focus-color: lighten($ui-base-lighter-color, 4%) !default;
$passive-text-color: $gold-star !default;
$active-passive-text-color: $success-green !default;
// For texts on inverted backgrounds
$inverted-text-color: $ui-base-color !default;
$lighter-text-color: $ui-base-lighter-color !default;
$light-text-color: $ui-primary-color !default;
// Language codes that uses CJK fonts
$cjk-langs: ja, ko, zh-CN, zh-HK, zh-TW;
// Variables for components
$media-modal-media-max-width: 100%;
// put margins on top and bottom of image to avoid the screen covered by image.
$media-modal-media-max-height: 80%;
$no-gap-breakpoint: 1175px;
$font-sans-serif: 'mastodon-font-sans-serif' !default;
$font-display: 'mastodon-font-display' !default;
$font-monospace: 'mastodon-font-monospace' !default;
// Avatar border size (8% default, 100% for rounded avatars)
$ui-avatar-border-size: 8%;
// More variables
$dismiss-overlay-width: 4rem;
:root {
--dropdown-border-color: #{lighten($ui-base-color, 12%)};
--dropdown-background-color: #{lighten($ui-base-color, 4%)};
--dropdown-shadow: 0 20px 25px -5px #{rgba($base-shadow-color, 0.25)},
0 8px 10px -6px #{rgba($base-shadow-color, 0.25)};
}

View File

@ -0,0 +1,2 @@
@import 'wobbl-old/variables';
@import 'index';

View File

@ -0,0 +1,101 @@
// Commonly used web colors
$black: #000000; // Black
$white: #ffffff; // White
$red-600: #b7253d !default; // Deep Carmine
$red-500: #df405a !default; // Cerise
$blurple-600: #c45302; // Iris
$blurple-500: #fd8128; // Brand purple
$blurple-300: #fda15f; // Faded Blue
$grey-600: #4e4c5a; // Trout
$grey-100: #dadaf3; // Topaz
$success-green: #79bd9a !default; // Padua
$error-red: $red-500 !default; // Cerise
$warning-red: #ff5050 !default; // Sunset Orange
$gold-star: #ca8f04 !default; // Dark Goldenrod
$red-bookmark: $warning-red;
// Values from the classic Mastodon UI
$classic-base-color: #37210f; // Dark Gray
$classic-primary-color: #e7e7e7; // Platinum
$classic-secondary-color: #e7e7e7; // Paler red
$classic-highlight-color: #c45302; // Red highlights
// Variables for defaults in UI
$base-shadow-color: $black !default;
$base-overlay-background: $black !default;
$base-border-color: $white !default;
$simple-background-color: $white !default;
$valid-value-color: $success-green !default;
$error-value-color: $error-red !default;
// Tell UI to use selected colors
$ui-base-color: $classic-base-color !default; // Darkest
$ui-base-lighter-color: lighten(
$ui-base-color,
26%
) !default; // Lighter darkest
$ui-primary-color: $classic-primary-color !default; // Lighter
$ui-secondary-color: $classic-secondary-color !default; // Lightest
$ui-highlight-color: $classic-highlight-color !default;
$ui-button-color: $white !default;
$ui-button-background-color: $blurple-500 !default;
$ui-button-focus-background-color: $blurple-600 !default;
$ui-button-secondary-color: $grey-100 !default;
$ui-button-secondary-border-color: $grey-100 !default;
$ui-button-secondary-focus-background-color: $grey-600 !default;
$ui-button-secondary-focus-color: $white !default;
$ui-button-tertiary-color: $blurple-300 !default;
$ui-button-tertiary-border-color: $blurple-300 !default;
$ui-button-tertiary-focus-background-color: $blurple-600 !default;
$ui-button-tertiary-focus-color: $white !default;
$ui-button-destructive-background-color: $red-500 !default;
$ui-button-destructive-focus-background-color: $red-600 !default;
// Variables for texts
$primary-text-color: $white !default;
$darker-text-color: $ui-primary-color !default;
$dark-text-color: $ui-base-lighter-color !default;
$secondary-text-color: $ui-secondary-color !default;
$highlight-text-color: lighten($ui-highlight-color, 8%) !default;
$action-button-color: $ui-base-lighter-color !default;
$action-button-focus-color: lighten($ui-base-lighter-color, 4%) !default;
$passive-text-color: $gold-star !default;
$active-passive-text-color: $success-green !default;
// For texts on inverted backgrounds
$inverted-text-color: $ui-base-color !default;
$lighter-text-color: $ui-base-lighter-color !default;
$light-text-color: $ui-primary-color !default;
// Language codes that uses CJK fonts
$cjk-langs: ja, ko, zh-CN, zh-HK, zh-TW;
// Variables for components
$media-modal-media-max-width: 100%;
// put margins on top and bottom of image to avoid the screen covered by image.
$media-modal-media-max-height: 80%;
$no-gap-breakpoint: 1175px;
$font-sans-serif: 'mastodon-font-sans-serif' !default;
$font-display: 'mastodon-font-display' !default;
$font-monospace: 'mastodon-font-monospace' !default;
// Avatar border size (8% default, 100% for rounded avatars)
$ui-avatar-border-size: 8%;
// More variables
$dismiss-overlay-width: 4rem;
:root {
--dropdown-border-color: #{lighten($ui-base-color, 12%)};
--dropdown-background-color: #{lighten($ui-base-color, 4%)};
--dropdown-shadow: 0 20px 25px -5px #{rgba($base-shadow-color, 0.25)},
0 8px 10px -6px #{rgba($base-shadow-color, 0.25)};
}

View File

@ -0,0 +1,2 @@
@import 'wobbl/variables';
@import 'index';

View File

@ -0,0 +1,101 @@
// Commonly used web colors
$black: #000000; // Black
$white: #ffffff; // White
$red-600: #b7253d !default; // Deep Carmine
$red-500: #df405a !default; // Cerise
$blurple-600: #cc3939; // Iris
$blurple-500: #850700; // Brand purple
$blurple-300: #fa8484; // Faded Blue
$grey-600: #4e4c5a; // Trout
$grey-100: #dadaf3; // Topaz
$success-green: #79bd9a !default; // Padua
$error-red: $red-500 !default; // Cerise
$warning-red: #ff5050 !default; // Sunset Orange
$gold-star: #ca8f04 !default; // Dark Goldenrod
$red-bookmark: $warning-red;
// Values from the classic Mastodon UI
$classic-base-color: #191919; // Dark Gray
$classic-primary-color: #e7e7e7; // Platinum
$classic-secondary-color: #ff8680; // Paler red
$classic-highlight-color: #850700; // Red highlights
// Variables for defaults in UI
$base-shadow-color: $black !default;
$base-overlay-background: $black !default;
$base-border-color: $white !default;
$simple-background-color: $white !default;
$valid-value-color: $success-green !default;
$error-value-color: $error-red !default;
// Tell UI to use selected colors
$ui-base-color: $classic-base-color !default; // Darkest
$ui-base-lighter-color: lighten(
$ui-base-color,
26%
) !default; // Lighter darkest
$ui-primary-color: $classic-primary-color !default; // Lighter
$ui-secondary-color: $classic-secondary-color !default; // Lightest
$ui-highlight-color: $classic-highlight-color !default;
$ui-button-color: $white !default;
$ui-button-background-color: $blurple-500 !default;
$ui-button-focus-background-color: $blurple-600 !default;
$ui-button-secondary-color: $grey-100 !default;
$ui-button-secondary-border-color: $grey-100 !default;
$ui-button-secondary-focus-background-color: $grey-600 !default;
$ui-button-secondary-focus-color: $white !default;
$ui-button-tertiary-color: $blurple-300 !default;
$ui-button-tertiary-border-color: $blurple-300 !default;
$ui-button-tertiary-focus-background-color: $blurple-600 !default;
$ui-button-tertiary-focus-color: $white !default;
$ui-button-destructive-background-color: $red-500 !default;
$ui-button-destructive-focus-background-color: $red-600 !default;
// Variables for texts
$primary-text-color: $white !default;
$darker-text-color: $ui-primary-color !default;
$dark-text-color: $ui-base-lighter-color !default;
$secondary-text-color: $ui-secondary-color !default;
$highlight-text-color: lighten($ui-highlight-color, 8%) !default;
$action-button-color: $ui-base-lighter-color !default;
$action-button-focus-color: lighten($ui-base-lighter-color, 4%) !default;
$passive-text-color: $gold-star !default;
$active-passive-text-color: $success-green !default;
// For texts on inverted backgrounds
$inverted-text-color: $ui-base-color !default;
$lighter-text-color: $ui-base-lighter-color !default;
$light-text-color: $ui-primary-color !default;
// Language codes that uses CJK fonts
$cjk-langs: ja, ko, zh-CN, zh-HK, zh-TW;
// Variables for components
$media-modal-media-max-width: 100%;
// put margins on top and bottom of image to avoid the screen covered by image.
$media-modal-media-max-height: 80%;
$no-gap-breakpoint: 1175px;
$font-sans-serif: 'mastodon-font-sans-serif' !default;
$font-display: 'mastodon-font-display' !default;
$font-monospace: 'mastodon-font-monospace' !default;
// Avatar border size (8% default, 100% for rounded avatars)
$ui-avatar-border-size: 8%;
// More variables
$dismiss-overlay-width: 4rem;
:root {
--dropdown-border-color: #{lighten($ui-base-color, 12%)};
--dropdown-background-color: #{lighten($ui-base-color, 4%)};
--dropdown-shadow: 0 20px 25px -5px #{rgba($base-shadow-color, 0.25)},
0 8px 10px -6px #{rgba($base-shadow-color, 0.25)};
}

View File

@ -1,6 +1,6 @@
import EXIF from 'exif-js';
const MAX_IMAGE_PIXELS = 2073600; // 1920x1080px
const MAX_IMAGE_PIXELS = 8294400; // 3840x2160px
const _browser_quirks = {};

View 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

View 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:

View File

@ -0,0 +1 @@
@import 'flavours/glitch/styles/wobbl-light';

View File

@ -0,0 +1,4 @@
en:
skins:
glitch:
wobbl-light: Wobbl (light)

View File

@ -0,0 +1 @@
@import 'flavours/glitch/styles/wobbl-old-light';

View File

@ -0,0 +1,4 @@
en:
skins:
glitch:
wobbl-old-light: Wobbl Orange (light)

View File

@ -0,0 +1 @@
@import 'flavours/glitch/styles/wobbl-old';

View File

@ -0,0 +1,4 @@
en:
skins:
glitch:
wobbl-old: Wobbl Orange

View File

@ -0,0 +1 @@
@import 'flavours/glitch/styles/wobbl';

View File

@ -0,0 +1,4 @@
en:
skins:
glitch:
wobbl: Wobbl

View File

@ -0,0 +1,3 @@
@import 'flavours/glitch/styles/mastodon-light/variables';
@import 'flavours/glitch/styles/modern';
@import 'flavours/glitch/styles/mastodon-light/diff';

View File

@ -0,0 +1,4 @@
en:
skins:
modern-glitch:
modern-light: Default (light)

View File

@ -0,0 +1,3 @@
@import 'flavours/glitch/styles/wobbl-light/variables';
@import 'flavours/glitch/styles/modern';
@import 'flavours/glitch/styles/mastodon-light/diff';

View File

@ -0,0 +1,4 @@
en:
skins:
modern-glitch:
wobbl-modern-light: Wobbl Red (light)

View File

@ -0,0 +1,2 @@
@import 'flavours/glitch/styles/wobbl/variables';
@import 'flavours/glitch/styles/modern';

View File

@ -0,0 +1,4 @@
en:
skins:
modern-glitch:
wobbl-modern: Wobbl Red

View File

@ -0,0 +1,3 @@
@import 'flavours/glitch/styles/wobbl-old-light/variables';
@import 'flavours/glitch/styles/modern';
@import 'flavours/glitch/styles/mastodon-light/diff';

View File

@ -0,0 +1,4 @@
en:
skins:
modern-glitch:
wobbl-old-modern-light: Wobbl Orange (light)

View File

@ -0,0 +1,2 @@
@import 'flavours/glitch/styles/wobbl-old/variables';
@import 'flavours/glitch/styles/modern';

View File

@ -0,0 +1,4 @@
en:
skins:
modern-glitch:
wobbl-old-modern: Wobbl Orange

View File

@ -0,0 +1,101 @@
// Commonly used web colors
$black: #000000; // Black
$white: #ffffff; // White
$red-600: #b7253d !default; // Deep Carmine
$red-500: #df405a !default; // Cerise
$blurple-600: #563acc; // Iris
$blurple-500: #6364ff; // Brand purple
$blurple-300: #858afa; // Faded Blue
$grey-600: #4e4c5a; // Trout
$grey-100: #dadaf3; // Topaz
$success-green: #79bd9a !default; // Padua
$error-red: $red-500 !default; // Cerise
$warning-red: #ff5050 !default; // Sunset Orange
$gold-star: #ca8f04 !default; // Dark Goldenrod
$red-bookmark: $warning-red;
// Values from the classic Mastodon UI
$classic-base-color: #191919; // Dark Gray
$classic-primary-color: #e7e7e7; // Platinum
$classic-secondary-color: #ff8680; // Paler red
$classic-highlight-color: #850700; // Red highlights
// Variables for defaults in UI
$base-shadow-color: $black !default;
$base-overlay-background: $black !default;
$base-border-color: $white !default;
$simple-background-color: $white !default;
$valid-value-color: $success-green !default;
$error-value-color: $error-red !default;
// Tell UI to use selected colors
$ui-base-color: $classic-base-color !default; // Darkest
$ui-base-lighter-color: lighten(
$ui-base-color,
26%
) !default; // Lighter darkest
$ui-primary-color: $classic-primary-color !default; // Lighter
$ui-secondary-color: $classic-secondary-color !default; // Lightest
$ui-highlight-color: $classic-highlight-color !default;
$ui-button-color: $white !default;
$ui-button-background-color: $blurple-500 !default;
$ui-button-focus-background-color: $blurple-600 !default;
$ui-button-secondary-color: $grey-100 !default;
$ui-button-secondary-border-color: $grey-100 !default;
$ui-button-secondary-focus-background-color: $grey-600 !default;
$ui-button-secondary-focus-color: $white !default;
$ui-button-tertiary-color: $blurple-300 !default;
$ui-button-tertiary-border-color: $blurple-300 !default;
$ui-button-tertiary-focus-background-color: $blurple-600 !default;
$ui-button-tertiary-focus-color: $white !default;
$ui-button-destructive-background-color: $red-500 !default;
$ui-button-destructive-focus-background-color: $red-600 !default;
// Variables for texts
$primary-text-color: $white !default;
$darker-text-color: $ui-primary-color !default;
$dark-text-color: $ui-base-lighter-color !default;
$secondary-text-color: $ui-secondary-color !default;
$highlight-text-color: lighten($ui-highlight-color, 8%) !default;
$action-button-color: $ui-base-lighter-color !default;
$action-button-focus-color: lighten($ui-base-lighter-color, 4%) !default;
$passive-text-color: $gold-star !default;
$active-passive-text-color: $success-green !default;
// For texts on inverted backgrounds
$inverted-text-color: $ui-base-color !default;
$lighter-text-color: $ui-base-lighter-color !default;
$light-text-color: $ui-primary-color !default;
// Language codes that uses CJK fonts
$cjk-langs: ja, ko, zh-CN, zh-HK, zh-TW;
// Variables for components
$media-modal-media-max-width: 100%;
// put margins on top and bottom of image to avoid the screen covered by image.
$media-modal-media-max-height: 80%;
$no-gap-breakpoint: 1175px;
$font-sans-serif: 'mastodon-font-sans-serif' !default;
$font-display: 'mastodon-font-display' !default;
$font-monospace: 'mastodon-font-monospace' !default;
// Avatar border size (8% default, 100% for rounded avatars)
$ui-avatar-border-size: 8%;
// More variables
$dismiss-overlay-width: 4rem;
:root {
--dropdown-border-color: #{lighten($ui-base-color, 12%)};
--dropdown-background-color: #{lighten($ui-base-color, 4%)};
--dropdown-shadow: 0 20px 25px -5px #{rgba($base-shadow-color, 0.25)},
0 8px 10px -6px #{rgba($base-shadow-color, 0.25)};
}

View File

@ -0,0 +1,101 @@
// Commonly used web colors
$black: #000000; // Black
$white: #ffffff; // White
$red-600: #b7253d !default; // Deep Carmine
$red-500: #df405a !default; // Cerise
$blurple-600: #563acc; // Iris
$blurple-500: #6364ff; // Brand purple
$blurple-300: #858afa; // Faded Blue
$grey-600: #4e4c5a; // Trout
$grey-100: #dadaf3; // Topaz
$success-green: #79bd9a !default; // Padua
$error-red: $red-500 !default; // Cerise
$warning-red: #ff5050 !default; // Sunset Orange
$gold-star: #ca8f04 !default; // Dark Goldenrod
$red-bookmark: $warning-red;
// Values from the classic Mastodon UI
$classic-base-color: #191919; // Dark Gray
$classic-primary-color: #e7e7e7; // Platinum
$classic-secondary-color: #ff8680; // Paler red
$classic-highlight-color: #850700; // Red highlights
// Variables for defaults in UI
$base-shadow-color: $black !default;
$base-overlay-background: $black !default;
$base-border-color: $white !default;
$simple-background-color: $white !default;
$valid-value-color: $success-green !default;
$error-value-color: $error-red !default;
// Tell UI to use selected colors
$ui-base-color: $classic-base-color !default; // Darkest
$ui-base-lighter-color: lighten(
$ui-base-color,
26%
) !default; // Lighter darkest
$ui-primary-color: $classic-primary-color !default; // Lighter
$ui-secondary-color: $classic-secondary-color !default; // Lightest
$ui-highlight-color: $classic-highlight-color !default;
$ui-button-color: $white !default;
$ui-button-background-color: $blurple-500 !default;
$ui-button-focus-background-color: $blurple-600 !default;
$ui-button-secondary-color: $grey-100 !default;
$ui-button-secondary-border-color: $grey-100 !default;
$ui-button-secondary-focus-background-color: $grey-600 !default;
$ui-button-secondary-focus-color: $white !default;
$ui-button-tertiary-color: $blurple-300 !default;
$ui-button-tertiary-border-color: $blurple-300 !default;
$ui-button-tertiary-focus-background-color: $blurple-600 !default;
$ui-button-tertiary-focus-color: $white !default;
$ui-button-destructive-background-color: $red-500 !default;
$ui-button-destructive-focus-background-color: $red-600 !default;
// Variables for texts
$primary-text-color: $white !default;
$darker-text-color: $ui-primary-color !default;
$dark-text-color: $ui-base-lighter-color !default;
$secondary-text-color: $ui-secondary-color !default;
$highlight-text-color: lighten($ui-highlight-color, 8%) !default;
$action-button-color: $ui-base-lighter-color !default;
$action-button-focus-color: lighten($ui-base-lighter-color, 4%) !default;
$passive-text-color: $gold-star !default;
$active-passive-text-color: $success-green !default;
// For texts on inverted backgrounds
$inverted-text-color: $ui-base-color !default;
$lighter-text-color: $ui-base-lighter-color !default;
$light-text-color: $ui-primary-color !default;
// Language codes that uses CJK fonts
$cjk-langs: ja, ko, zh-CN, zh-HK, zh-TW;
// Variables for components
$media-modal-media-max-width: 100%;
// put margins on top and bottom of image to avoid the screen covered by image.
$media-modal-media-max-height: 80%;
$no-gap-breakpoint: 1175px;
$font-sans-serif: 'mastodon-font-sans-serif' !default;
$font-display: 'mastodon-font-display' !default;
$font-monospace: 'mastodon-font-monospace' !default;
// Avatar border size (8% default, 100% for rounded avatars)
$ui-avatar-border-size: 8%;
// More variables
$dismiss-overlay-width: 4rem;
:root {
--dropdown-border-color: #{lighten($ui-base-color, 12%)};
--dropdown-background-color: #{lighten($ui-base-color, 4%)};
--dropdown-shadow: 0 20px 25px -5px #{rgba($base-shadow-color, 0.25)},
0 8px 10px -6px #{rgba($base-shadow-color, 0.25)};
}

View File

@ -7,7 +7,6 @@ require "pathname"
ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
Pathname.new(__FILE__).realpath)
require "rubygems"
require "bundler/setup"
require "webpacker"

View File

@ -7,7 +7,6 @@ require "pathname"
ENV["BUNDLE_GEMFILE"] ||= File.expand_path("../../Gemfile",
Pathname.new(__FILE__).realpath)
require "rubygems"
require "bundler/setup"
require "webpacker"

129
ca-certificate.crt Normal file
View File

@ -0,0 +1,129 @@
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=11" />
<meta name="msapplication-TileImage" content="resources/images/icon_tile.png?v=4398" />
<meta name="application-name" content="GYRO-NAS" />
<meta name="msapplication-TileColor" content="#246BB3"/>
<meta name="description" content="Synology NAS provides a full-featured network attached storage (NAS) solution to help you manage, backup and share data among Windows, Mac and Linux easily." />
<meta name="keywords" content="Multitasking,Web Application,Personal Cloud" />
<meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width">
<link rel="mask-icon" href="webman/safari_pin_icon.svg" color="#0086E5" />
<link rel="shortcut icon" href="webman/favicon.ico?v=40438" />
<link rel="shortcut icon" href="webman/resources/images/icon_dsm_96.png?v=40438" sizes="96x96"/>
<link rel="shortcut icon" href="webman/resources/images/icon_dsm_64.png?v=40438" sizes="64x64"/>
<link rel="shortcut icon" href="webman/resources/images/icon_dsm_48.png?v=40438" sizes="48x48"/>
<link rel="shortcut icon" href="webman/resources/images/icon_dsm_32.png?v=40438" sizes="32x32"/>
<link rel="shortcut icon" href="webman/resources/images/icon_dsm_16.png?v=40438" sizes="16x16"/>
<title>GYRO-NAS</title>
<link rel="stylesheet" type="text/css" href="scripts/ext-3.4/resources/css/ext-all.css?v=1672898121" />
<link rel="stylesheet" type="text/css" href="scripts/scrollbar/flexcroll.css?v=1672898121" />
<link rel="stylesheet" type="text/css" href="scripts/ext-3/ux/ux-all.css?v=1672898121" />
<link rel="stylesheet" type="text/css" href="synoSDSjslib/sds.css?v=1683108982" />
<link rel="stylesheet" type="text/css" href="webman/desktop/dist/style.css?v=1683699872" />
<link rel="stylesheet" type="text/css" href="webman/sds/dist/style.css?v=1683699872" />
<link rel="stylesheet" type="text/css" href="webman/taskbar/dist/style.css?v=1683699872" />
<link rel="stylesheet" type="text/css" href="webman/resources/css/desktop.css?v=1683699872" />
<link rel="stylesheet" type="text/css" href="webman/login/dist/style.css?v=1683699872" />
<link rel="stylesheet" type="text/css" href="webman/modules/TinyMCE/style.css?v=1664290641" />
<link rel="stylesheet" type="text/css" href="webman/modules/ClipBoardJS/style.css?v=1683795523" />
<link rel="stylesheet" type="text/css" href="webman/modules/Utils/style.css?v=1683795523" />
<link rel="stylesheet" type="text/css" href="webman/modules/Widgets/style.css?v=1683699872" />
<link rel="stylesheet" type="text/css" href="webman/modules/BandwidthControl/style.css?v=1634102886" />
<link rel="stylesheet" type="text/css" href="webman/modules/DiskMessageHandler/style.css?v=1683699872" />
<link rel="stylesheet" type="text/css" href="webman/modules/UpdateMaskApp/style.css?v=1683699872" />
<link rel="stylesheet" type="text/css" href="webman/modules/HelpBrowser/style.css?v=1683795523" />
<link rel="stylesheet" type="text/css" href="webman/modules/SharingManager/style.css?v=1683795523" />
<link rel="stylesheet" type="text/css" href="webman/modules/ResourceMonitor/style.css?v=1683699872" />
<link rel="stylesheet" type="text/css" href="webman/modules/MyDSCenter/style.css?v=1683795523" />
<link rel="stylesheet" type="text/css" href="webman/modules/AudioPlayer/style.css?v=1683795523" />
<link rel="stylesheet" type="text/css" href="webman/modules/Share/style.css?v=1683795523" />
<link rel="stylesheet" type="text/css" href="webman/modules/ResetAdminApp/style.css?v=1683699872" />
<link rel="stylesheet" type="text/css" href="webman/modules/DesktopProgress/style.css?v=1683795523" />
<link rel="stylesheet" type="text/css" href="webman/modules/PersonalSettings/style.css?v=1683795523" />
<link rel="stylesheet" type="text/css" href="webman/modules/WelcomeApp/style.css?v=1683699872" />
<link rel="stylesheet" type="text/css" href="webman/modules/BackgroundTaskMonitor/style.css?v=1683795523" />
<link rel="stylesheet" type="text/css" href="webman/modules/HotkeyManager/style.css?v=1683699872" />
<link rel="stylesheet" type="text/css" href="webman/modules/LogCenter/style.css?v=1683102860" />
<link rel="stylesheet" type="text/css" href="webman/modules/AdminCenter/style.css?v=1684221484" />
<link rel="stylesheet" type="text/css" href="webman/modules/C3/style.css?v=1683699872" />
<link rel="stylesheet" type="text/css" href="webman/modules/VideoPlayer2/style.css?v=1672294400" />
<link rel="stylesheet" type="text/css" href="webman/modules/FileChooser/style.css?v=1683795523" />
<link rel="stylesheet" type="text/css" href="webman/modules/EnableNewUpdateSetting/style.css?v=1683699872" />
<link rel="stylesheet" type="text/css" href="webman/modules/ConfigBackup/style.css?v=1681465681" />
<link rel="stylesheet" type="text/css" href="webman/modules/PhotoViewer/style.css?v=1683795523" />
<link rel="stylesheet" type="text/css" href="webman/modules/DSMNotify/style.css?v=1683795523" />
<link rel="stylesheet" type="text/css" href="webman/modules/SystemInfoApp/style.css?v=1683699872" />
<link rel="stylesheet" type="text/css" href="webman/modules/SupportForm/style.css?v=1683795523" />
<link rel="stylesheet" type="text/css" href="webman/modules/TaskSchedulerUtils/style.css?v=1683795523" />
<link rel="stylesheet" type="text/css" href="webman/modules/TaskSchedulerWidget/style.css?v=1683699872" />
<link rel="stylesheet" type="text/css" href="webman/modules/StorageManager/style.css?v=1683699872" />
<link rel="stylesheet" type="text/css" href="webman/modules/PkgManApp/style.css?v=1683795523" />
<link rel="stylesheet" type="text/css" href="webman/modules/OTPWizard/style.css?v=1683795523" />
<link rel="stylesheet" type="text/css" href="webman/modules/SecurityScan/style.css?v=1673258467" />
<link rel="stylesheet" type="text/css" href="webman/modules/PollingTask/style.css?v=1683795523" />
<link rel="stylesheet" type="text/css" href="webman/modules/ExternalDevices/style.css?v=1683699872" />
<link rel="stylesheet" type="text/css" href="webman/modules/DataDrivenDocuments/style.css?v=1683699872" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/ScsiTarget/style.css?v=1682669852" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/MediaServer/style.css?v=1678790334" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/DownloadStation/style.css?v=1678963497" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/SynologyApplicationService/style.css?v=1680860414" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/SupportService/style.css?v=1684410294" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/SynoFinder/style.css?v=1679717023" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/HyperBackup/style.css?v=1681269975" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/FileTaskMonitor/style.css?v=1688118145" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/ActiveInsight/style.css?v=1686219681" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/SynologyDrive-ShareSync/style.css?v=1684478206" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/CodecPack/style.css?v=1678789109" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/AudioStation/style.css?v=1678958732" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/SynologyDrive/style.css?v=1684478211" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/VPNCenter/style.css?v=1678785883" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/AntiVirus/style.css?v=1681806841" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/VideoStation/style.css?v=1682651714" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/LogCenter/style.css?v=1684289330" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/SynologyPhotos/style.css?v=1685941114" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/CloudSync/style.css?v=1686280500" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/DhcpServer/style.css?v=1681815017" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/SynologyDrive-Drive/style.css?v=1684478206" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/FileBrowser/style.css?v=1688118153" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/SMBService/style.css?v=1688543926" />
<link rel="stylesheet" type="text/css" href="webman/3rdparty/OAuthService/style.css?v=1678783966" />
<link rel="stylesheet" type="text/css" href="sharing/style.css?v=1669770591" />
<link rel="stylesheet" type="text/css" href="../scripts/ext-3.4/resources/css/ext-all.css?v=1690892764" />
<link rel="stylesheet" type="text/css" href="../webman/3rdparty/FileBrowser/style.css?v=1690892764" />
<link rel="stylesheet" type="text/css" href="../webman/3rdparty/FileBrowser/custom_template.css?v=1690892764" />
</head>
<body role="application">
<div id="sds-wallpaper"></div>
<!-- Don't contain any text node to avoid IE insertBefore bug -->
<div id="sds-login-dialog-form" style="position: absolute; top: -10000px; left: -10000px;"><form id="login-form" class="x-plain-body" method="POST" action="webman/login.cgi" target="login_iframe"><input type="text" class="x-form-text" id="login_username" name="username" maxlength="256" /><input type="password" class="x-form-text" id="login_passwd" name="passwd" maxlength="256" autocomplete="off" /><input class="x-form-text" type="text" id="login_otp" name="OTPcode" maxlength="8" autocomplete="off" /><input type="submit" id="login_submit" style="position: absolute; top: -10000px; left: -10000px;" tabindex="-1" /></form><iframe id="login_iframe" name="login_iframe" width="0" height="0" frameborder="0" style="display: none;"></iframe></div>
<div id="sds-apply-preview-form" style="position: absolute; top: -10000px; left: -10000px;"><form id="preview-form" class="x-plain-body" method="POST" action="webman/modules/ControlPanel/modules/dsm.cgi" target="preview_iframe"><input type="submit" id="preview_submit" style="position: absolute; top: -10000px; left: -10000px;" tabindex="-1" /></form><iframe id="preview_iframe" name="preview_iframe" width="0" height="0" frameborder="0" style="display: none;"></iframe></div>
<script type="text/javascript" src="webapi/entry.cgi?api=SYNO.Core.Desktop.Defs&version=1&method=getjs&v=1685730685"></script>
<script type="text/javascript" src="webapi/entry.cgi?api=SYNO.Core.Desktop.JSUIString&version=1&method=getjs&lang=enu&v=1688388798"></script>
<script type="text/javascript" src="webapi/entry.cgi?api=SYNO.Core.Desktop.UIString&version=1&method=getjs&lang=enu&v=1688388802"></script>
<script type="text/javascript" src="scripts/babel-polyfill/polyfill.js?v=1672898121"></script>
<script type="text/javascript" src="scripts/synowebapi.js/synowebapi.min.js?v=1675322301"></script>
<script type="text/javascript" src="scripts/synocredential.js/synocredential.min.js?v=1680089528"></script>
<script type="text/javascript" src="scripts/vue/vue.min.js?v=1664290694"></script>
<script type="text/javascript" src="scripts/vuex/vuex.min.js?v=1664290698"></script>
<script type="text/javascript" src="scripts/vue-router/vue-router.min.js?v=1667901351"></script>
<script type="text/javascript" src="scripts/syno-vue-components/syno-vue-components.min.js?v=1684234437"></script>
<script type="text/javascript" src="synoSDSjslib/dist/vendor.bundle.js?v=1683108982"></script>
<script type="text/javascript" src="synoSDSjslib/dist/sds.bundle.js?v=1683108982"></script>
<script type="text/javascript" src="webman/sds/dist/dsm.common.bundle.js?v=1683699872"></script>
<script type="text/javascript" src="sharing/sharing-sds.js?v=1683699872"></script>
<script type="text/javascript" src="sharing/sharing.js?v=1669770591"></script>
<script type="text/javascript" src="../scripts/ext-3.4/adapter/ext/ext-base.js?v=1690892764"></script>
<script type="text/javascript" src="../scripts/ext-3.4/ext-all.js?v=1690892764"></script>
<script type="text/javascript" src="../scripts/ext-3.4/ux/ux-all.js?v=1690892764"></script>
<script type="text/javascript" src="../webman/sds/dist/dsm.common.bundle.js?v=1690892764"></script>
<script type="text/javascript" src="../wfmlogindialog.js?v=1690892764"></script>
<script type="text/javascript" src="webapi/entry.cgi?api=SYNO.Core.Sharing.Session&amp;version=1&amp;method=get&amp;sharing_id=&quot;2VsGPnJVW&quot;&amp;sharing_status=&quot;none&quot;&v=1683603442"></script>
<div id="main"></div>
<div class="pre-load-x-window-br"></div>
</body>
</html>

View File

@ -10,6 +10,8 @@ Rails.application.configure do
# since you don't have to restart the web server when you make code changes.
config.cache_classes = false
config.hosts << 'wobbldev.tarrien.net'
# Do not eager load code on boot.
config.eager_load = false

View File

@ -1195,9 +1195,9 @@ en:
title: Security verification failed
'429': Too many requests
'500':
content: We're sorry, but something went wrong on our end.
content: We're sorry, but something went wrong on our end. You can check the status of Wobbl and its companion systems at our status page - https://status.wobbl.xyz.
title: This page is not correct
'503': The page could not be served due to a temporary server failure.
'503': The page could not be served due to a temporary server failure. You can check the status of Wobbl and its companion systems at our status page - https://status.wobbl.xyz.
noscript_html: To use the Mastodon web application, please enable JavaScript. Alternatively, try one of the <a href="%{apps_path}">native apps</a> for Mastodon for your platform.
existing_username_validator:
not_found: could not find a local user with that username

View File

@ -9,7 +9,7 @@ threads min_threads_count, max_threads_count
if ENV['SOCKET']
bind "unix://#{ENV['SOCKET']}"
else
bind "tcp://#{ENV.fetch('BIND', '127.0.0.1')}:#{ENV.fetch('PORT', 3000)}"
bind "tcp://#{ENV.fetch('BIND', '0.0.0.0')}:#{ENV.fetch('PORT', 3000)}"
end
environment ENV.fetch('RAILS_ENV') { 'development' }

View File

@ -18,6 +18,7 @@ module.exports = merge(sharedConfig, {
mode: 'development',
cache: true,
devtool: 'cheap-module-eval-source-map',
parallelism: 1,
stats: {
errorDetails: true,

View File

@ -0,0 +1,3 @@
const { environment } = require('@rails/webpacker')
module.exports = environment

5
config/webpack/test.js Normal file
View File

@ -0,0 +1,5 @@
process.env.NODE_ENV = process.env.NODE_ENV || 'development'
const environment = require('./environment')
module.exports = environment.toWebpackConfig()

View File

@ -3,10 +3,6 @@
class CopyAccountStats < ActiveRecord::Migration[5.2]
disable_ddl_transaction!
class MigrationAccount < ApplicationRecord
self.table_name = :accounts
end
def up
safety_assured do
if supports_upsert?
@ -31,7 +27,7 @@ class CopyAccountStats < ActiveRecord::Migration[5.2]
def up_fast
say 'Upsert is available, importing counters using the fast method'
MigrationAccount.unscoped.select('id').find_in_batches(batch_size: 5_000) do |accounts|
Account.unscoped.select('id').find_in_batches(batch_size: 5_000) do |accounts|
execute <<-SQL.squish
INSERT INTO account_stats (account_id, statuses_count, following_count, followers_count, created_at, updated_at)
SELECT id, statuses_count, following_count, followers_count, created_at, updated_at
@ -48,7 +44,7 @@ class CopyAccountStats < ActiveRecord::Migration[5.2]
# We cannot use bulk INSERT or overarching transactions here because of possible
# uniqueness violations that we need to skip over
MigrationAccount.unscoped.select('id, statuses_count, following_count, followers_count, created_at, updated_at').find_each do |account|
Account.unscoped.select('id, statuses_count, following_count, followers_count, created_at, updated_at').find_each do |account|
params = [account.id, account[:statuses_count], account[:following_count], account[:followers_count], account.created_at, account.updated_at]
exec_insert('INSERT INTO account_stats (account_id, statuses_count, following_count, followers_count, created_at, updated_at) VALUES ($1, $2, $3, $4, $5, $6)', nil, params)
rescue ActiveRecord::RecordNotUnique

View File

@ -46,13 +46,14 @@
"@github/webauthn-json": "^2.1.1",
"@material-design-icons/svg": "^0.14.10",
"@rails/ujs": "^7.0.6",
"@rails/webpacker": "5.4.4",
"@reduxjs/toolkit": "^1.9.5",
"@renchap/compression-webpack-plugin": "^6.1.4",
"@svgr/webpack": "^5.5.0",
"abortcontroller-polyfill": "^1.7.5",
"atrament": "0.2.4",
"arrow-key-navigation": "^1.2.0",
"async-mutex": "^0.4.0",
"atrament": "0.2.4",
"autoprefixer": "^10.4.14",
"axios": "^1.4.0",
"babel-loader": "^8.3.0",
@ -212,7 +213,7 @@
"stylelint": "^15.10.1",
"stylelint-config-standard-scss": "^11.0.0",
"typescript": "^5.0.4",
"webpack-dev-server": "^3.11.3",
"webpack-dev-server": "^3",
"yargs": "^17.7.2"
},
"resolutions": {

View File

@ -6,3 +6,6 @@ Disallow: /
User-agent: *
Disallow: /media_proxy/
Disallow: /interact/
User-agent: GPTBot
Disallow:/

8247
stderr.log Normal file

File diff suppressed because it is too large Load Diff

View File

@ -88,6 +88,11 @@ const pgConfigFromEnv = (env) => {
},
};
if (!!process.env.DB_SSLMODE && process.env.DB_SSLMODE !== 'disable') {
pgConfigs.development.ssl = true;
pgConfigs.production.ssl = {ca: fs.readFileSync("ca-certificate.crt") };
}
let baseConfig;
if (env.DATABASE_URL) {
@ -110,7 +115,7 @@ const pgConfigFromEnv = (env) => {
baseConfig.ssl = { rejectUnauthorized: false };
break;
default:
baseConfig.ssl = {};
baseConfig.ssl = { rejectUnauthorized: false };
break;
}
}

View File

@ -3,6 +3,7 @@ module.exports = {
ignoreFiles: [
'app/javascript/styles/mastodon/reset.scss',
'app/javascript/flavours/glitch/styles/reset.scss',
'app/javascript/flavours/glitch/styles/modern/modern.css',
'app/javascript/styles/win95.scss',
'coverage/**/*',
'node_modules/**/*',

5068
yarn.lock

File diff suppressed because it is too large Load Diff