Add new links card and feature flag system for incremental dev. (#1714)

* Add new links card and feature flag system for incremental dev.

* Switch to env variable for dev flags

* Add members card

* fix order of creators card

* Fix owner icon color and bring org owner to top of list

* lint + other fixes

* Revamp feature flag system, add flag config page

* Add button to flags page in dev mode

* fix env overrides

* make typescript happy with the refs
This commit is contained in:
Prospector
2024-06-11 19:46:07 -07:00
committed by GitHub
parent 5b2d36e976
commit 1d9fe0c03d
32 changed files with 1325 additions and 310 deletions
+131 -20
View File
@@ -5,8 +5,130 @@ html {
--color-text-secondary: var(--color-icon);
}
// TO BE MOVED TO OMORPHIA
:root {
--gap-2: 0.125rem;
--gap-4: calc(2 * var(--gap-2));
--gap-6: calc(3 * var(--gap-2));
--gap-8: calc(2 * var(--gap-4));
--gap-12: calc(3 * var(--gap-4));
--gap-16: calc(2 * var(--gap-8));
--gap-24: calc(3 * var(--gap-8));
--radius-card: 1rem;
--radius-max: 999999999px;
--radius-btn: 0.75rem;
--radius-btn-large: 1rem;
--radius-btn-circle: var(--radius-max);
--text-14: 0.875rem;
--text-16: 1rem;
--text-18: 1.125rem;
--text-24: 1.5rem;
--text-32: 2rem;
--weight-normal: 500; // used for general body text
--weight-bold: 600; // used for text needing extra emphasis
--weight-extrabold: 800; // used for main titles and headings
--icon-14: 0.875rem; // used for icons inside a small container alongside a label
--icon-16: 1rem; // used for normal-sized icons alongside a label
--icon-20: 1.25rem; // used for icons in normal sized buttons
--icon-24: 1.5rem; // used for icons that are used as a primary label or in large buttons
--icon-32: 2rem;
}
.experimental-styles-within {
// Reset deprecated properties
--color-icon: initial !important;
--color-text: initial !important;
--color-text-inactive: initial !important;
--color-text-dark: initial !important;
--color-heading: initial !important;
--color-divider: initial !important;
--color-divider-dark: initial !important;
--color-text-inverted: initial !important;
--color-bg-inverted: initial !important;
--color-brand-green: initial !important;
--color-brand: var(--color-green) !important;
--color-brand-inverted: initial !important;
--tab-underline-hovered: initial !important;
--color-button-text: initial !important;
--color-button-bg-hover: initial !important;
--color-button-text-hover: initial !important;
--color-button-bg-active: initial !important;
--color-button-text-active: initial !important;
--color-grey-link: inherit !important;
--color-grey-link-hover: inherit !important; // DEPRECATED, use filters in future
--color-grey-link-active: inherit !important; // DEPRECATED, use filters in future
--color-link: var(--color-blue) !important;
--color-link-hover: var(--color-blue) !important; // DEPRECATED, use filters in future
--color-link-active: var(--color-blue) !important; // DEPRECATED, use filters in future
}
.light-mode,
.light {
.experimental-styles-within,
&.experimental-styles-within {
--color-bg: #ebebeb;
--color-raised-bg: #ffffff;
--color-button-bg: #f5f5f5;
--color-base: #2c2e31;
--color-secondary: #484d54;
--color-accent-contrast: #ffffff;
--color-platform-fabric: #8a7b71;
--color-platform-quilt: #8b61b4;
--color-platform-forge: #5b6197;
--color-platform-neoforge: #dc895c;
--color-platform-liteloader: #4c90de;
--color-platform-bukkit: #e78362;
--color-platform-bungeecord: #c69e39;
--color-platform-folia: #6aa54f;
--color-platform-paper: #e67e7e;
--color-platform-purpur: #7763a3;
--color-platform-spigot: #cd7a21;
--color-platform-velocity: #4b98b0;
--color-platform-waterfall: #5f83cb;
--color-platform-sponge: #c49528;
--color-button-border: rgba(161, 161, 161, 0.35);
}
}
.dark-mode,
.dark {
.experimental-styles-within,
&.experimental-styles-within {
--color-button-bg: #33363d;
--color-platform-fabric: #dbb69b;
--color-platform-quilt: #c796f9;
--color-platform-forge: #959eef;
--color-platform-neoforge: #f99e6b;
--color-platform-liteloader: #7ab0ee;
--color-platform-bukkit: #f6af7b;
--color-platform-bungeecord: #d2c080;
--color-platform-folia: #a5e388;
--color-platform-paper: #eeaaaa;
--color-platform-purpur: #c3abf7;
--color-platform-spigot: #f1cc84;
--color-platform-velocity: #83d5ef;
--color-platform-waterfall: #78a4fb;
--color-platform-sponge: #f9e580;
--color-button-border: rgba(193, 190, 209, 0.12);
}
}
.light-mode {
--color-icon: #6b7280;
--color-secondary: #6b7280;
--color-icon: var(--color-secondary);
--color-text: hsl(221, 39%, 11%);
--color-text-inactive: hsl(215, 14%, 34%);
--color-text-dark: #1a202c;
@@ -59,13 +181,6 @@ html {
--color-link-hover: #1a76e7;
--color-link-active: #146fd7;
--color-special-red: #cb2245;
--color-special-orange: #e08325;
--color-special-green: var(--color-brand-green);
--color-special-blue: #1f68c0;
--color-special-purple: #8e32f3;
--color-special-gray: #595b61;
--color-red-bg: rgba(204, 35, 69, 0.1);
--color-warning-bg: hsl(355, 70%, 88%);
@@ -77,7 +192,7 @@ html {
--color-info-banner-text: var(--color-text);
--color-info-banner-bg: var(--color-ad);
--color-info-banner-side: var(--color-special-blue);
--color-info-banner-side: var(--color-blue);
--color-block-quote: var(--color-tooltip-bg);
--color-header-underline: var(--color-divider-dark);
@@ -140,8 +255,12 @@ html {
--landing-raw-bg: #fff;
}
.dark-mode {
--color-icon: #96a2b0;
.dark,
.dark-mode,
.oled-mode,
.retro-mode {
--color-secondary: #96a2b0;
--color-icon: var(--color-secondary);
--color-text: var(--dark-color-text);
--color-text-inactive: #929aa3;
--color-text-dark: var(--dark-color-text-dark);
@@ -154,13 +273,6 @@ html {
--color-text-inverted: var(--color-bg);
--color-bg-inverted: var(--color-text);
--color-special-red: #ff496e;
--color-special-orange: #ffa347;
--color-special-green: var(--color-brand-green);
--color-special-blue: #4f9cff;
--color-special-purple: #c78aff;
--color-special-gray: #9fa4b3;
--color-red-bg: rgba(255, 74, 110, 0.2);
--color-brand-green: #1bd96a;
@@ -209,7 +321,7 @@ html {
--color-info-banner-text: var(--color-text);
--color-info-banner-bg: var(--color-ad);
--color-info-banner-side: var(--color-special-blue);
--color-info-banner-side: var(--color-blue);
--color-block-quote: var(--color-code-bg);
--color-header-underline: var(--color-divider-dark);
@@ -274,7 +386,6 @@ html {
}
.oled-mode {
@extend .dark-mode;
--color-bg: #000000;
--color-raised-bg: #101013;