Compare commits

...

11 Commits

Author SHA1 Message Date
c259694084 nixbld: work around new google fonts problem 2025-02-05 18:30:51 +08:00
1b0036fb9c nixbld: use USB soundcard for mpd 2025-02-05 18:29:31 +08:00
865385f6f2 flarum: add email-filter extension 2025-01-16 09:13:07 +08:00
e226551eca mattermost: remove unsupported edition message from menu 2025-01-15 11:28:24 +08:00
a572fe236c mattermost: fix override format 2025-01-15 10:22:16 +08:00
e2c78a5064 mattermost: remove free edition banner spam 2025-01-15 10:00:21 +08:00
0e62d0a78a Fix GRE tunnels restarted before udev service started
This patch adds explicit requirements for network addresses services to run after and only when udevd service is running. Also depend on virt netdev creation service instead of device

Signed-off-by: Egor Savkin <es@m-labs.hk>
2025-01-14 16:40:35 +08:00
1b0cc6544e Do not merge PH with main website
Signed-off-by: Egor Savkin <es@m-labs.hk>

# Conflicts:
#	nixbld-etc-nixos/configuration.nix
2025-01-09 11:00:08 +08:00
18bc04b419 nixbld: attempt to work around 'PHP Error: Invalid compose ID' roundcube bug 2025-01-08 22:11:32 +08:00
3f33c1c980 Revert "Use dedicated website folder for PH region"
This reverts commit 0b3fe57a93.
2025-01-08 10:32:29 +08:00
0b3fe57a93 Use dedicated website folder for PH region
Signed-off-by: Egor Savkin <es@m-labs.hk>
2025-01-07 12:34:26 +08:00
5 changed files with 465 additions and 78 deletions

View File

@ -358,6 +358,15 @@ in
};
};
systemd.services."network-addresses-${netifUSA}" = {
after = pkgs.lib.mkOverride 1 [ "network-pre.target" "${netifUSA}-netdev.service" "systemd-udevd.service" ];
requires = [ "systemd-udevd.service" ];
};
systemd.services."network-addresses-${netifAlt}" = {
after = pkgs.lib.mkOverride 1 [ "network-pre.target" "${netifAlt}-netdev.service" "systemd-udevd.service" ];
requires = [ "systemd-udevd.service" ];
};
# https://kb.isc.org/docs/dnssec-key-and-signing-policy
# chown named.named /etc/nixos/named
services.bind = {
@ -541,6 +550,8 @@ in
"/kasli/192.168.1.70"
"/kasli-customer/192.168.1.75"
"/stabilizer-customer/192.168.1.76"
"/fonts.gstatic.com/142.250.114.94"
];
dhcp-match = "set:ipxe,175"; # https://forum.ipxe.org/showthread.php?tid=6077
@ -648,7 +659,7 @@ in
audio_output {
type "alsa"
name "alsa"
device "hw:1,1"
device "hw:2,0"
}
'';
@ -752,6 +763,10 @@ in
job = web:web:web
command = [ $(jq '.buildStatus' < $HYDRA_JSON) = 0 ] && ln -sfn $(jq -r '.outputs[0].path' < $HYDRA_JSON) ${hydraWwwOutputs}/web
</runcommand>
<runcommand>
job = web:web:web-ph
command = [ $(jq '.buildStatus' < $HYDRA_JSON) = 0 ] && ln -sfn $(jq -r '.outputs[0].path' < $HYDRA_JSON) ${hydraWwwOutputs}/web-ph
</runcommand>
<runcommand>
job = web:web:web-intl
command = [ $(jq '.buildStatus' < $HYDRA_JSON) = 0 ] && ${pkgs.rsync}/bin/rsync -r -c $(jq -r '.outputs[0].path' < $HYDRA_JSON)/ zolaupd@10.47.3.0:/var/www/m-labs-intl.com/html/
@ -944,11 +959,10 @@ in
hydraPath = oa.hydraPath + ":" + super.lib.makeBinPath [ super.jq ];
doCheck = false; # FIXME: ldap tests fail on hydra rebuild, seems unrelated to patches above.
});
mattermost = super.mattermost.overrideAttrs(oa: {
postInstall = oa.postInstall +
''
sed -i.bak "s/FREE EDITION//g" $out/client/*.js $out/client/*.js.map
'';
mattermost = super.mattermost.overrideAttrs(oldAttrs: {
webapp = oldAttrs.webapp.overrideAttrs (webappAttrs: {
patches = webappAttrs.patches or [ ] ++ [ ./mattermost-remove-free-banner.patch ];
});
});
matterbridge = super.matterbridge.overrideAttrs(oa: {
patches = oa.patches or [] ++ [ ./matterbridge-disable-github.patch ];
@ -1049,7 +1063,14 @@ in
enableACME = true;
globalRedirect = "m-labs.hk";
};
"m-labs.ph" = mainWebsite;
"m-labs.ph" = {
root = "${hydraWwwOutputs}/web-ph";
forceSSL = true;
enableACME = true;
extraConfig = ''
error_page 404 /404.html;
'';
};
"www.m-labs.ph" = {
addSSL = true;
enableACME = true;
@ -1305,10 +1326,12 @@ in
services.roundcube = {
enable = true;
hostName = "mail.m-labs.hk";
# https://github.com/roundcube/roundcubemail/issues/5869
extraConfig = ''
$config['smtp_server'] = "tls://${config.mailserver.fqdn}";
$config['smtp_user'] = "%u";
$config['smtp_pass'] = "%p";
$config['session_storage'] = "php";
'';
};

View File

@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "4fabd8ac0c664ee2d779f1dec28ef2b3",
"content-hash": "4cdb60c860f81068e57be8adcf5d68e6",
"packages": [
{
"name": "axy/backtrace",
@ -1007,22 +1007,22 @@
},
{
"name": "enshrined/svg-sanitize",
"version": "0.15.4",
"version": "0.21.0",
"source": {
"type": "git",
"url": "https://github.com/darylldoyle/svg-sanitizer.git",
"reference": "e50b83a2f1f296ca61394fe88fbfe3e896a84cf4"
"reference": "5e477468fac5c5ce933dce53af3e8e4e58dcccc9"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/darylldoyle/svg-sanitizer/zipball/e50b83a2f1f296ca61394fe88fbfe3e896a84cf4",
"reference": "e50b83a2f1f296ca61394fe88fbfe3e896a84cf4",
"url": "https://api.github.com/repos/darylldoyle/svg-sanitizer/zipball/5e477468fac5c5ce933dce53af3e8e4e58dcccc9",
"reference": "5e477468fac5c5ce933dce53af3e8e4e58dcccc9",
"shasum": ""
},
"require": {
"ext-dom": "*",
"ext-libxml": "*",
"php": "^7.0 || ^8.0"
"php": "^7.1 || ^8.0"
},
"require-dev": {
"phpunit/phpunit": "^6.5 || ^8.5"
@ -1046,9 +1046,9 @@
"description": "An SVG sanitizer for PHP",
"support": {
"issues": "https://github.com/darylldoyle/svg-sanitizer/issues",
"source": "https://github.com/darylldoyle/svg-sanitizer/tree/0.15.4"
"source": "https://github.com/darylldoyle/svg-sanitizer/tree/0.21.0"
},
"time": "2022-02-21T09:13:59+00:00"
"time": "2025-01-13T09:32:25+00:00"
},
{
"name": "fig/http-message-util",
@ -2593,17 +2593,119 @@
"time": "2024-11-20T08:51:17+00:00"
},
{
"name": "fof/polls",
"version": "2.2.9",
"name": "fof/components",
"version": "1.0.0",
"source": {
"type": "git",
"url": "https://github.com/FriendsOfFlarum/polls.git",
"reference": "9d30e39a01bd420e3a37985849699f2c010e3611"
"url": "https://github.com/FriendsOfFlarum/components.git",
"reference": "1e60224260b5a284a385968c6fa99ecd4a89c026"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/FriendsOfFlarum/polls/zipball/9d30e39a01bd420e3a37985849699f2c010e3611",
"reference": "9d30e39a01bd420e3a37985849699f2c010e3611",
"url": "https://api.github.com/repos/FriendsOfFlarum/components/zipball/1e60224260b5a284a385968c6fa99ecd4a89c026",
"reference": "1e60224260b5a284a385968c6fa99ecd4a89c026",
"shasum": ""
},
"require": {
"flarum/core": "^1.0.0"
},
"type": "library",
"autoload": {
"psr-4": {
"FoF\\Components\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "David Sevilla Martín",
"email": "me+fof@datitisev.me",
"role": "Developer"
}
],
"description": "[NOT EXT] Reusable JavaScript components for your Flarum extension",
"keywords": [
"flarum",
"friendsofflarum"
],
"support": {
"issues": "https://github.com/FriendsOfFlarum/components/issues",
"source": "https://github.com/FriendsOfFlarum/components/tree/1.0.0"
},
"funding": [
{
"url": "https://opencollective.com/fof",
"type": "open_collective"
}
],
"time": "2021-05-17T13:47:34+00:00"
},
{
"name": "fof/extend",
"version": "1.3.3",
"source": {
"type": "git",
"url": "https://github.com/FriendsOfFlarum/extend.git",
"reference": "ba55c9b765911cb689592d0de787e3351625e3f0"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/FriendsOfFlarum/extend/zipball/ba55c9b765911cb689592d0de787e3351625e3f0",
"reference": "ba55c9b765911cb689592d0de787e3351625e3f0",
"shasum": ""
},
"require": {
"flarum/core": "^1.0.0"
},
"require-dev": {
"flarum/phpstan": "*",
"league/oauth2-client": "^2.7"
},
"type": "library",
"autoload": {
"psr-4": {
"FoF\\Extend\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "David Sevilla Martin",
"email": "me+fof@datitisev.me",
"role": "Developer"
}
],
"description": "Configurable PHP components for your Flarum extension",
"support": {
"issues": "https://github.com/FriendsOfFlarum/extend/issues",
"source": "https://github.com/FriendsOfFlarum/extend/tree/1.3.3"
},
"funding": [
{
"url": "https://opencollective.com/fof",
"type": "open_collective"
}
],
"time": "2023-11-30T08:13:16+00:00"
},
{
"name": "fof/polls",
"version": "2.2.11",
"source": {
"type": "git",
"url": "https://github.com/FriendsOfFlarum/polls.git",
"reference": "a788a5e8ed15ca297bdf2b8f7e168ac6773352c9"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/FriendsOfFlarum/polls/zipball/a788a5e8ed15ca297bdf2b8f7e168ac6773352c9",
"reference": "a788a5e8ed15ca297bdf2b8f7e168ac6773352c9",
"shasum": ""
},
"require": {
@ -2618,15 +2720,6 @@
},
"type": "flarum-extension",
"extra": {
"flarum-extension": {
"title": "FoF Polls",
"category": "discussion",
"icon": {
"name": "fas fa-poll",
"backgroundColor": "#e74c3c",
"color": "#fff"
}
},
"flagrow": {
"discuss": "https://discuss.flarum.org/d/20586"
},
@ -2635,6 +2728,15 @@
"githubActions": true,
"backendTesting": true
}
},
"flarum-extension": {
"icon": {
"name": "fas fa-poll",
"color": "#fff",
"backgroundColor": "#e74c3c"
},
"title": "FoF Polls",
"category": "discussion"
}
},
"autoload": {
@ -2670,7 +2772,7 @@
"type": "website"
}
],
"time": "2024-10-28T22:02:59+00:00"
"time": "2024-12-09T10:44:10+00:00"
},
{
"name": "fof/subscribed",
@ -2699,19 +2801,6 @@
},
"type": "flarum-extension",
"extra": {
"flarum-extension": {
"title": "FoF Subscribed",
"category": "feature",
"icon": {
"name": "fas fa-reply-all",
"backgroundColor": "#e74c3c",
"color": "#fff"
},
"optional-dependencies": [
"flarum/approval",
"flarum/flags"
]
},
"flagrow": {
"discuss": "https://discuss.flarum.org/d/20917"
},
@ -2719,6 +2808,19 @@
"modules": {
"githubActions": true
}
},
"flarum-extension": {
"icon": {
"name": "fas fa-reply-all",
"color": "#fff",
"backgroundColor": "#e74c3c"
},
"title": "FoF Subscribed",
"category": "feature",
"optional-dependencies": [
"flarum/approval",
"flarum/flags"
]
}
},
"autoload": {
@ -2761,26 +2863,26 @@
},
{
"name": "fof/upload",
"version": "1.6.1",
"version": "1.7.0",
"source": {
"type": "git",
"url": "https://github.com/FriendsOfFlarum/upload.git",
"reference": "039544d9a4751cebcf44d2eb079583a6d4dac274"
"reference": "bc66315ea428438a180efbf8a80f9db44454a4ac"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/FriendsOfFlarum/upload/zipball/039544d9a4751cebcf44d2eb079583a6d4dac274",
"reference": "039544d9a4751cebcf44d2eb079583a6d4dac274",
"url": "https://api.github.com/repos/FriendsOfFlarum/upload/zipball/bc66315ea428438a180efbf8a80f9db44454a4ac",
"reference": "bc66315ea428438a180efbf8a80f9db44454a4ac",
"shasum": ""
},
"require": {
"enshrined/svg-sanitize": "^0.15.4",
"enshrined/svg-sanitize": "^0",
"ext-json": "*",
"flarum/core": "^1.8.3",
"guzzlehttp/guzzle": "^6.0 || ^7.0",
"php": "^8.0",
"php": "^8.1",
"ramsey/uuid": "^3.5.2 || ^4",
"softcreatr/php-mime-detector": "^3.0"
"softcreatr/php-mime-detector": "^4.0"
},
"replace": {
"flagrow/upload": "*"
@ -2798,24 +2900,24 @@
},
"type": "flarum-extension",
"extra": {
"flarum-extension": {
"title": "FoF Upload",
"category": "feature",
"icon": {
"name": "fas fa-file-upload",
"backgroundColor": "#e74c3c",
"color": "#fff"
}
},
"flagrow": {
"discuss": "https://discuss.flarum.org/d/4154"
},
"flarum-cli": {
"modules": {
"githubActions": true,
"typescript": true,
"githubActions": true,
"backendTesting": true
}
},
"flarum-extension": {
"icon": {
"name": "fas fa-file-upload",
"color": "#fff",
"backgroundColor": "#e74c3c"
},
"title": "FoF Upload",
"category": "feature"
}
},
"autoload": {
@ -2856,7 +2958,7 @@
"type": "website"
}
],
"time": "2024-11-23T18:33:38+00:00"
"time": "2024-11-30T14:03:04+00:00"
},
{
"name": "franzl/whoops-middleware",
@ -6056,6 +6158,58 @@
},
"time": "2015-06-18T19:15:47+00:00"
},
{
"name": "nyu8/flarum-email-filter",
"version": "1.0.7",
"source": {
"type": "git",
"url": "https://github.com/nyu8/flarum-email-filter.git",
"reference": "a8e09c0d42366fe30f7c203037c8dfa0858f49cb"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/nyu8/flarum-email-filter/zipball/a8e09c0d42366fe30f7c203037c8dfa0858f49cb",
"reference": "a8e09c0d42366fe30f7c203037c8dfa0858f49cb",
"shasum": ""
},
"require": {
"flarum/core": "^1.0",
"fof/components": "^1.0",
"fof/extend": "^1.0"
},
"type": "flarum-extension",
"extra": {
"flarum-extension": {
"icon": {
"name": "fas fa-envelope",
"color": "#ffffff",
"backgroundColor": "#eb5424"
},
"title": "Email Filter"
}
},
"autoload": {
"psr-4": {
"NYU8\\FlarumEmailFilter\\": "src/"
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "NYU8",
"email": "dev@nyu8.com"
}
],
"description": "Filter emails registering your Flarum site with whitelist, blacklist and even regular expressions.",
"support": {
"issues": "https://github.com/nyu8/flarum-email-filter/issues",
"source": "https://github.com/nyu8/flarum-email-filter"
},
"time": "2022-04-26T05:45:27+00:00"
},
{
"name": "opis/closure",
"version": "3.6.3",
@ -7076,25 +7230,25 @@
},
{
"name": "softcreatr/php-mime-detector",
"version": "3.2.1",
"version": "4.0.0",
"source": {
"type": "git",
"url": "https://github.com/SoftCreatR/php-mime-detector.git",
"reference": "bd26abae1659901617ed51150063c310e089eef9"
"reference": "ae204590de58cc4655c8fbf9a2dfbcbb21dae4fe"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/SoftCreatR/php-mime-detector/zipball/bd26abae1659901617ed51150063c310e089eef9",
"reference": "bd26abae1659901617ed51150063c310e089eef9",
"url": "https://api.github.com/repos/SoftCreatR/php-mime-detector/zipball/ae204590de58cc4655c8fbf9a2dfbcbb21dae4fe",
"reference": "ae204590de58cc4655c8fbf9a2dfbcbb21dae4fe",
"shasum": ""
},
"require": {
"php": ">=7.1.0"
"php": ">=8.1.0"
},
"require-dev": {
"phpunit/phpunit": ">=7.0",
"roave/security-advisories": "dev-master",
"squizlabs/php_codesniffer": "^3.5"
"phpunit/phpunit": ">=10.0",
"roave/security-advisories": "dev-latest",
"squizlabs/php_codesniffer": "^3.7"
},
"type": "library",
"autoload": {
@ -7135,7 +7289,7 @@
"type": "github"
}
],
"time": "2021-05-30T10:34:43+00:00"
"time": "2024-09-01T17:19:47+00:00"
},
{
"name": "staudenmeir/eloquent-eager-limit",

View File

@ -17,14 +17,13 @@ php.buildComposerProject (finalAttrs: {
};
patches = [
# Add useful extensions from https://github.com/FriendsOfFlarum
# Extensions included: fof/upload, fof/polls, fof/subscribed
./fof-extensions.patch
# Add useful flarum extensions (polls, subscribed, upload, email-filter)
./flarum-extensions.patch
];
composerLock = ./composer.lock;
composerStrictValidation = false;
vendorHash = "sha256-GLE5ZtzZmQ8YbitV6LG744QHoGxlj5TfC5wP2a3eFpU=";
vendorHash = "sha256-rWvIKiQVyfvUprYfm/+Jdq+DO5qymyWp+Xh0c0nY2Cw=";
meta = with lib; {
changelog = "https://github.com/flarum/framework/blob/main/CHANGELOG.md";

View File

@ -1,8 +1,8 @@
diff --git a/composer.json b/composer.json
index c63b5f8..5ad1186 100644
index c63b5f8..4bc00c1 100644
--- a/composer.json
+++ b/composer.json
@@ -37,7 +37,10 @@
@@ -37,7 +37,11 @@
"flarum/sticky": "*",
"flarum/subscriptions": "*",
"flarum/suspend": "*",
@ -10,7 +10,8 @@ index c63b5f8..5ad1186 100644
+ "flarum/tags": "*",
+ "fof/polls": "*",
+ "fof/subscribed": "*",
+ "fof/upload": "*"
+ "fof/upload": "*",
+ "nyu8/flarum-email-filter": "^1.0"
},
"config": {
"preferred-install": "dist",

View File

@ -0,0 +1,210 @@
diff --git webapp/channels/src/components/global_header/left_controls/product_menu/product_branding_team_edition/product_branding_team_edition.tsx webapp/channels/src/components/global_header/left_controls/product_menu/product_branding_team_edition/product_branding_team_edition.tsx
index 9af4fc7354..60ae3160e8 100644
--- webapp/channels/src/components/global_header/left_controls/product_menu/product_branding_team_edition/product_branding_team_edition.tsx
+++ webapp/channels/src/components/global_header/left_controls/product_menu/product_branding_team_edition/product_branding_team_edition.tsx
@@ -9,10 +9,6 @@ import Logo from 'components/common/svg_images_components/logo_dark_blue_svg';
const ProductBrandingTeamEditionContainer = styled.div`
display: flex;
align-items: center;
-
- > * + * {
- margin-left: 8px;
- }
`;
const StyledLogo = styled(Logo)`
@@ -21,23 +17,6 @@ const StyledLogo = styled(Logo)`
}
`;
-const Badge = styled.div`
- display: flex;
- align-self: center;
- padding: 2px 6px;
- position: relative;
- top: 1px;
- border-radius: var(--radius-s);
- margin-left: 12px;
- background: rgba(var(--sidebar-text-rgb), 0.08);
- color: rgba(var(--sidebar-text-rgb), 0.75);
- font-family: 'Open Sans', sans-serif;
- font-size: 10px;
- font-weight: 600;
- letter-spacing: 0.025em;
- line-height: 16px;
-`;
-
const ProductBrandingTeamEdition = (): JSX.Element => {
return (
<ProductBrandingTeamEditionContainer tabIndex={0}>
@@ -45,7 +24,6 @@ const ProductBrandingTeamEdition = (): JSX.Element => {
width={116}
height={20}
/>
- <Badge>{'FREE EDITION'}</Badge>
</ProductBrandingTeamEditionContainer>
);
};
diff --git webapp/channels/src/components/header_footer_route/header.scss webapp/channels/src/components/header_footer_route/header.scss
index e7c76f9861..2841858f44 100644
--- webapp/channels/src/components/header_footer_route/header.scss
+++ webapp/channels/src/components/header_footer_route/header.scss
@@ -39,23 +39,6 @@
width: 170px;
fill: var(--center-channel-color);
}
-
- .freeBadge {
- position: relative;
- top: 1px;
- display: flex;
- align-self: center;
- padding: 2px 6px;
- border-radius: var(--radius-s);
- margin-left: 12px;
- background: rgba(var(--center-channel-color-rgb), 0.08);
- color: rgba(var(--center-channel-color-rgb), 0.75);
- font-family: 'Open Sans', sans-serif;
- font-size: 10px;
- font-weight: 600;
- letter-spacing: 0.025em;
- line-height: 16px;
- }
}
}
@@ -77,12 +60,6 @@
margin-top: 12px;
}
}
-
- &.has-free-banner.has-custom-site-name {
- .header-back-button {
- bottom: -20px;
- }
- }
}
@media screen and (max-width: 699px) {
diff --git webapp/channels/src/components/header_footer_route/header.tsx webapp/channels/src/components/header_footer_route/header.tsx
index 8cd1d8a624..55554fb0ad 100644
--- webapp/channels/src/components/header_footer_route/header.tsx
+++ webapp/channels/src/components/header_footer_route/header.tsx
@@ -25,33 +25,15 @@ const Header = ({alternateLink, backButtonURL, onBackButtonClick}: HeaderProps)
const ariaLabel = SiteName || 'Mattermost';
- let freeBanner = null;
- if (license.IsLicensed === 'false') {
- freeBanner = <><Logo/><span className='freeBadge'>{'FREE EDITION'}</span></>;
- }
-
let title: React.ReactNode = SiteName;
if (title === 'Mattermost') {
- if (freeBanner) {
- title = '';
- } else {
- title = <Logo/>;
- }
+ title = <Logo/>;
}
return (
- <div className={classNames('hfroute-header', {'has-free-banner': freeBanner, 'has-custom-site-name': title})}>
+ <div className={classNames('hfroute-header', {'has-custom-site-name': title})}>
<div className='header-main'>
<div>
- {freeBanner &&
- <Link
- className='header-logo-link'
- to='/'
- aria-label={ariaLabel}
- >
- {freeBanner}
- </Link>
- }
{title &&
<Link
className='header-logo-link'
diff --git webapp/channels/src/components/widgets/menu/menu_items/menu_start_trial.tsx webapp/channels/src/components/widgets/menu/menu_items/menu_start_trial.tsx
index 35646539c4..fbdbb39710 100644
--- webapp/channels/src/components/widgets/menu/menu_items/menu_start_trial.tsx
+++ webapp/channels/src/components/widgets/menu/menu_items/menu_start_trial.tsx
@@ -1,42 +1,17 @@
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
// See LICENSE.txt for license information.
-import React from 'react';
-import {useIntl} from 'react-intl';
import {useSelector} from 'react-redux';
-import styled from 'styled-components';
import {getLicense} from 'mattermost-redux/selectors/entities/general';
-import ExternalLink from 'components/external_link';
-
-import {LicenseLinks} from 'utils/constants';
-
import './menu_item.scss';
-const FreeVersionBadge = styled.div`
- position: relative;
- top: 1px;
- display: flex;
- padding: 2px 6px;
- border-radius: var(--radius-s);
- margin-bottom: 6px;
- background: rgba(var(--center-channel-color-rgb), 0.08);
- color: rgba(var(--center-channel-color-rgb), 0.75);
- font-family: 'Open Sans', sans-serif;
- font-size: 10px;
- font-weight: 600;
- letter-spacing: 0.025em;
- line-height: 16px;
-`;
-
type Props = {
id: string;
}
const MenuStartTrial = (props: Props): JSX.Element | null => {
- const {formatMessage} = useIntl();
-
const license = useSelector(getLicense);
const isCurrentLicensed = license?.IsLicensed;
@@ -44,33 +19,7 @@ const MenuStartTrial = (props: Props): JSX.Element | null => {
return null;
}
- return (
- <li
- className={'MenuStartTrial'}
- role='menuitem'
- id={props.id}
- >
- <FreeVersionBadge>{'FREE EDITION'}</FreeVersionBadge>
- <div className='editionText'>
- {formatMessage(
- {
- id: 'navbar_dropdown.versionText',
- defaultMessage: 'This is the free <link>unsupported</link> edition of Mattermost.',
- },
- {
- link: (msg: React.ReactNode) => (
- <ExternalLink
- location='menu_start_trial.unsupported-link'
- href={LicenseLinks.UNSUPPORTED}
- >
- {msg}
- </ExternalLink>
- ),
- },
- )}
- </div>
- </li>
- );
+ return null;
};
export default MenuStartTrial;