MM-52915 - Remove boards product config setting and system console (#23526)
* Remove boards product config setting and system console * create config setting to enable/disable playbooks product * fix to config name * fix typo * remove lingering ProductSettings references * remove lingering ProductSettings references * revert changes to package-lock.json * Revert "revert changes to package-lock.json" This reverts commit 1a7d98ace33a2f639f41ba7a7697689641684fca. * revert changes to package-lock.json * fix build issues * another fix * update webap test * i18n-extract * Revert "i18n-extract" This reverts commit c0a98c74ea1800341b273301d3cdb990bc629bc5. * fix bad i18n-extract * fix bad i18n-extract * fix tests from bad merge * more translation fixes * more translation fixes * updates from self-review --------- Co-authored-by: Mattermost Build <build@mattermost.com>
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
1215584665
Коммит
d0ad46b496
@@ -607,7 +607,6 @@ const defaultServerConfig: AdminConfig = {
|
|||||||
CleanupConfigThresholdDays: -1,
|
CleanupConfigThresholdDays: -1,
|
||||||
},
|
},
|
||||||
ProductSettings: {
|
ProductSettings: {
|
||||||
EnablePublicSharedBoards: false,
|
|
||||||
EnablePlaybooks: true,
|
EnablePlaybooks: true,
|
||||||
},
|
},
|
||||||
PluginSettings: {
|
PluginSettings: {
|
||||||
|
|||||||
@@ -76,18 +76,6 @@ func TestSetConfiguration(t *testing.T) {
|
|||||||
assert.Equal(t, "testId", config.TelemetryID)
|
assert.Equal(t, "testId", config.TelemetryID)
|
||||||
})
|
})
|
||||||
|
|
||||||
t.Run("test enable shared boards", func(t *testing.T) {
|
|
||||||
baseProductSettings := &model.ProductSettings{
|
|
||||||
EnablePublicSharedBoards: &falseRef,
|
|
||||||
}
|
|
||||||
|
|
||||||
mmConfig := baseConfig
|
|
||||||
mmConfig.ProductSettings = *baseProductSettings
|
|
||||||
mmConfig.ProductSettings.EnablePublicSharedBoards = &boolTrue
|
|
||||||
config := server.CreateBoardsConfig(*mmConfig, "", "")
|
|
||||||
assert.Equal(t, true, config.EnablePublicSharedBoards)
|
|
||||||
})
|
|
||||||
|
|
||||||
t.Run("test boards feature flags", func(t *testing.T) {
|
t.Run("test boards feature flags", func(t *testing.T) {
|
||||||
featureFlags := &model.FeatureFlags{
|
featureFlags := &model.FeatureFlags{
|
||||||
TestFeature: "test",
|
TestFeature: "test",
|
||||||
|
|||||||
@@ -58,11 +58,6 @@ func CreateBoardsConfig(mmconfig mm_model.Config, baseURL string, serverID strin
|
|||||||
enableTelemetry = *mmconfig.LogSettings.EnableDiagnostics
|
enableTelemetry = *mmconfig.LogSettings.EnableDiagnostics
|
||||||
}
|
}
|
||||||
|
|
||||||
enablePublicSharedBoards := false
|
|
||||||
if mmconfig.ProductSettings.EnablePublicSharedBoards != nil {
|
|
||||||
enablePublicSharedBoards = *mmconfig.ProductSettings.EnablePublicSharedBoards
|
|
||||||
}
|
|
||||||
|
|
||||||
enableBoardsDeletion := false
|
enableBoardsDeletion := false
|
||||||
if mmconfig.DataRetentionSettings.EnableBoardsDeletion != nil {
|
if mmconfig.DataRetentionSettings.EnableBoardsDeletion != nil {
|
||||||
enableBoardsDeletion = true
|
enableBoardsDeletion = true
|
||||||
@@ -81,36 +76,35 @@ func CreateBoardsConfig(mmconfig mm_model.Config, baseURL string, serverID strin
|
|||||||
}
|
}
|
||||||
|
|
||||||
return &config.Configuration{
|
return &config.Configuration{
|
||||||
ServerRoot: baseURL + "/boards",
|
ServerRoot: baseURL + "/boards",
|
||||||
Port: -1,
|
Port: -1,
|
||||||
DBType: *mmconfig.SqlSettings.DriverName,
|
DBType: *mmconfig.SqlSettings.DriverName,
|
||||||
DBConfigString: *mmconfig.SqlSettings.DataSource,
|
DBConfigString: *mmconfig.SqlSettings.DataSource,
|
||||||
DBTablePrefix: "focalboard_",
|
DBTablePrefix: "focalboard_",
|
||||||
UseSSL: false,
|
UseSSL: false,
|
||||||
SecureCookie: true,
|
SecureCookie: true,
|
||||||
WebPath: path.Join(*mmconfig.PluginSettings.Directory, "focalboard", "pack"),
|
WebPath: path.Join(*mmconfig.PluginSettings.Directory, "focalboard", "pack"),
|
||||||
FilesDriver: *mmconfig.FileSettings.DriverName,
|
FilesDriver: *mmconfig.FileSettings.DriverName,
|
||||||
FilesPath: *mmconfig.FileSettings.Directory,
|
FilesPath: *mmconfig.FileSettings.Directory,
|
||||||
FilesS3Config: filesS3Config,
|
FilesS3Config: filesS3Config,
|
||||||
MaxFileSize: *mmconfig.FileSettings.MaxFileSize,
|
MaxFileSize: *mmconfig.FileSettings.MaxFileSize,
|
||||||
Telemetry: enableTelemetry,
|
Telemetry: enableTelemetry,
|
||||||
TelemetryID: serverID,
|
TelemetryID: serverID,
|
||||||
WebhookUpdate: []string{},
|
WebhookUpdate: []string{},
|
||||||
SessionExpireTime: 2592000,
|
SessionExpireTime: 2592000,
|
||||||
SessionRefreshTime: 18000,
|
SessionRefreshTime: 18000,
|
||||||
LocalOnly: false,
|
LocalOnly: false,
|
||||||
EnableLocalMode: false,
|
EnableLocalMode: false,
|
||||||
LocalModeSocketLocation: "",
|
LocalModeSocketLocation: "",
|
||||||
AuthMode: "mattermost",
|
AuthMode: "mattermost",
|
||||||
EnablePublicSharedBoards: enablePublicSharedBoards,
|
FeatureFlags: featureFlags,
|
||||||
FeatureFlags: featureFlags,
|
NotifyFreqCardSeconds: getPluginSettingInt(mmconfig, notifyFreqCardSecondsKey, 120),
|
||||||
NotifyFreqCardSeconds: getPluginSettingInt(mmconfig, notifyFreqCardSecondsKey, 120),
|
NotifyFreqBoardSeconds: getPluginSettingInt(mmconfig, notifyFreqBoardSecondsKey, 86400),
|
||||||
NotifyFreqBoardSeconds: getPluginSettingInt(mmconfig, notifyFreqBoardSecondsKey, 86400),
|
EnableDataRetention: enableBoardsDeletion,
|
||||||
EnableDataRetention: enableBoardsDeletion,
|
DataRetentionDays: *mmconfig.DataRetentionSettings.BoardsRetentionDays,
|
||||||
DataRetentionDays: *mmconfig.DataRetentionSettings.BoardsRetentionDays,
|
TeammateNameDisplay: *mmconfig.TeamSettings.TeammateNameDisplay,
|
||||||
TeammateNameDisplay: *mmconfig.TeamSettings.TeammateNameDisplay,
|
ShowEmailAddress: showEmailAddress,
|
||||||
ShowEmailAddress: showEmailAddress,
|
ShowFullName: showFullName,
|
||||||
ShowFullName: showFullName,
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -85,9 +85,6 @@ func (b *BoardsService) OnConfigurationChange() error {
|
|||||||
if mmconfig.PluginSettings.Plugins[PluginName][SharedBoardsName] == true {
|
if mmconfig.PluginSettings.Plugins[PluginName][SharedBoardsName] == true {
|
||||||
enableShareBoards = true
|
enableShareBoards = true
|
||||||
}
|
}
|
||||||
if mmconfig.ProductSettings.EnablePublicSharedBoards != nil {
|
|
||||||
enableShareBoards = *mmconfig.ProductSettings.EnablePublicSharedBoards
|
|
||||||
}
|
|
||||||
configuration := &configuration{
|
configuration := &configuration{
|
||||||
EnablePublicSharedBoards: enableShareBoards,
|
EnablePublicSharedBoards: enableShareBoards,
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -882,10 +882,6 @@ func (ts *TelemetryService) trackConfig() {
|
|||||||
"retention_days": *cfg.ExportSettings.RetentionDays,
|
"retention_days": *cfg.ExportSettings.RetentionDays,
|
||||||
})
|
})
|
||||||
|
|
||||||
ts.SendTelemetry(TrackConfigProducts, map[string]any{
|
|
||||||
"enable_public_shared_boards": *cfg.ProductSettings.EnablePublicSharedBoards,
|
|
||||||
})
|
|
||||||
|
|
||||||
// Convert feature flags to map[string]any for sending
|
// Convert feature flags to map[string]any for sending
|
||||||
flags := cfg.FeatureFlags.ToMap()
|
flags := cfg.FeatureFlags.ToMap()
|
||||||
interfaceFlags := make(map[string]any)
|
interfaceFlags := make(map[string]any)
|
||||||
|
|||||||
@@ -2864,18 +2864,10 @@ func (s *CloudSettings) SetDefaults() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
type ProductSettings struct {
|
type ProductSettings struct {
|
||||||
EnablePublicSharedBoards *bool
|
EnablePlaybooks *bool
|
||||||
EnablePlaybooks *bool
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *ProductSettings) SetDefaults(plugins map[string]map[string]any) {
|
func (s *ProductSettings) SetDefaults() {
|
||||||
if s.EnablePublicSharedBoards == nil {
|
|
||||||
if p, ok := plugins[PluginIdFocalboard]; ok {
|
|
||||||
s.EnablePublicSharedBoards = NewBool(p["enablepublicsharedboards"].(bool))
|
|
||||||
} else {
|
|
||||||
s.EnablePublicSharedBoards = NewBool(false)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if s.EnablePlaybooks == nil {
|
if s.EnablePlaybooks == nil {
|
||||||
s.EnablePlaybooks = NewBool(true)
|
s.EnablePlaybooks = NewBool(true)
|
||||||
}
|
}
|
||||||
@@ -3360,7 +3352,7 @@ func (o *Config) SetDefaults() {
|
|||||||
o.ThemeSettings.SetDefaults()
|
o.ThemeSettings.SetDefaults()
|
||||||
o.ClusterSettings.SetDefaults()
|
o.ClusterSettings.SetDefaults()
|
||||||
o.PluginSettings.SetDefaults(o.LogSettings)
|
o.PluginSettings.SetDefaults(o.LogSettings)
|
||||||
o.ProductSettings.SetDefaults(o.PluginSettings.Plugins)
|
o.ProductSettings.SetDefaults()
|
||||||
o.AnalyticsSettings.SetDefaults()
|
o.AnalyticsSettings.SetDefaults()
|
||||||
o.ComplianceSettings.SetDefaults()
|
o.ComplianceSettings.SetDefaults()
|
||||||
o.LocalizationSettings.SetDefaults()
|
o.LocalizationSettings.SetDefaults()
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
import React from 'react';
|
import React from 'react';
|
||||||
import {FormattedMessage} from 'react-intl';
|
import {FormattedMessage} from 'react-intl';
|
||||||
|
|
||||||
import {AccountMultipleOutlineIcon, ChartBarIcon, CogOutlineIcon, CreditCardOutlineIcon, FlaskOutlineIcon, FormatListBulletedIcon, InformationOutlineIcon, PowerPlugOutlineIcon, ServerVariantIcon, ShieldOutlineIcon, SitemapIcon, ProductsIcon} from '@mattermost/compass-icons/components';
|
import {AccountMultipleOutlineIcon, ChartBarIcon, CogOutlineIcon, CreditCardOutlineIcon, FlaskOutlineIcon, FormatListBulletedIcon, InformationOutlineIcon, PowerPlugOutlineIcon, ServerVariantIcon, ShieldOutlineIcon, SitemapIcon} from '@mattermost/compass-icons/components';
|
||||||
|
|
||||||
import {RESOURCE_KEYS} from 'mattermost-redux/constants/permissions_sysconsole';
|
import {RESOURCE_KEYS} from 'mattermost-redux/constants/permissions_sysconsole';
|
||||||
|
|
||||||
@@ -5862,42 +5862,6 @@ const AdminDefinition = {
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
products: {
|
|
||||||
icon: (
|
|
||||||
<ProductsIcon
|
|
||||||
size={16}
|
|
||||||
className={'category-icon fa'}
|
|
||||||
color={'currentColor'}
|
|
||||||
/>
|
|
||||||
),
|
|
||||||
sectionTitle: t('admin.sidebar.products'),
|
|
||||||
sectionTitleDefault: 'Products',
|
|
||||||
isHidden: it.any(
|
|
||||||
it.not(it.userHasReadPermissionOnSomeResources(RESOURCE_KEYS.PRODUCTS)),
|
|
||||||
),
|
|
||||||
boards: {
|
|
||||||
url: 'products/boards',
|
|
||||||
title: t('admin.sidebar.boards'),
|
|
||||||
title_default: 'Boards',
|
|
||||||
isHidden: it.not(it.userHasReadPermissionOnResource(RESOURCE_KEYS.PRODUCTS.BOARDS)),
|
|
||||||
schema: {
|
|
||||||
id: 'BoardsSettings',
|
|
||||||
name: t('admin.site.boards'),
|
|
||||||
name_default: 'Boards',
|
|
||||||
settings: [
|
|
||||||
{
|
|
||||||
type: Constants.SettingsTypes.TYPE_BOOL,
|
|
||||||
key: 'ProductSettings.EnablePublicSharedBoards',
|
|
||||||
label: t('admin.customization.enablePublicSharedBoardsTitle'),
|
|
||||||
label_default: 'Enable Public Shared Boards:',
|
|
||||||
help_text: t('admin.customization.enablePublicSharedBoardsDesc'),
|
|
||||||
help_text_default: 'This allows board editors to share boards that can be accessed by anyone with the link.',
|
|
||||||
isDisabled: it.not(it.userHasWritePermissionOnResource(RESOURCE_KEYS.PRODUCTS.BOARDS)),
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
|
||||||
},
|
|
||||||
},
|
|
||||||
integrations: {
|
integrations: {
|
||||||
icon: (
|
icon: (
|
||||||
<SitemapIcon
|
<SitemapIcon
|
||||||
|
|||||||
@@ -1072,37 +1072,6 @@ exports[`components/AdminSidebar should match snapshot 1`] = `
|
|||||||
title="Plugin 0"
|
title="Plugin 0"
|
||||||
/>
|
/>
|
||||||
</AdminSidebarCategory>
|
</AdminSidebarCategory>
|
||||||
<AdminSidebarCategory
|
|
||||||
definitionKey="products"
|
|
||||||
icon={
|
|
||||||
<ProductsIcon
|
|
||||||
className="category-icon fa"
|
|
||||||
color="currentColor"
|
|
||||||
size={16}
|
|
||||||
/>
|
|
||||||
}
|
|
||||||
key="products"
|
|
||||||
parentLink="/admin_console"
|
|
||||||
sectionClass=""
|
|
||||||
title={
|
|
||||||
<Memo(MemoizedFormattedMessage)
|
|
||||||
defaultMessage="Products"
|
|
||||||
id="admin.sidebar.products"
|
|
||||||
/>
|
|
||||||
}
|
|
||||||
>
|
|
||||||
<AdminSidebarSection
|
|
||||||
definitionKey="products.boards"
|
|
||||||
key="products.boards"
|
|
||||||
name="products/boards"
|
|
||||||
title={
|
|
||||||
<Memo(MemoizedFormattedMessage)
|
|
||||||
defaultMessage="Boards"
|
|
||||||
id="admin.sidebar.boards"
|
|
||||||
/>
|
|
||||||
}
|
|
||||||
/>
|
|
||||||
</AdminSidebarCategory>
|
|
||||||
<AdminSidebarCategory
|
<AdminSidebarCategory
|
||||||
definitionKey="integrations"
|
definitionKey="integrations"
|
||||||
icon={
|
icon={
|
||||||
@@ -1806,37 +1775,6 @@ exports[`components/AdminSidebar should match snapshot with workspace optimizati
|
|||||||
title="Plugin 0"
|
title="Plugin 0"
|
||||||
/>
|
/>
|
||||||
</AdminSidebarCategory>
|
</AdminSidebarCategory>
|
||||||
<AdminSidebarCategory
|
|
||||||
definitionKey="products"
|
|
||||||
icon={
|
|
||||||
<ProductsIcon
|
|
||||||
className="category-icon fa"
|
|
||||||
color="currentColor"
|
|
||||||
size={16}
|
|
||||||
/>
|
|
||||||
}
|
|
||||||
key="products"
|
|
||||||
parentLink="/admin_console"
|
|
||||||
sectionClass=""
|
|
||||||
title={
|
|
||||||
<Memo(MemoizedFormattedMessage)
|
|
||||||
defaultMessage="Products"
|
|
||||||
id="admin.sidebar.products"
|
|
||||||
/>
|
|
||||||
}
|
|
||||||
>
|
|
||||||
<AdminSidebarSection
|
|
||||||
definitionKey="products.boards"
|
|
||||||
key="products.boards"
|
|
||||||
name="products/boards"
|
|
||||||
title={
|
|
||||||
<Memo(MemoizedFormattedMessage)
|
|
||||||
defaultMessage="Boards"
|
|
||||||
id="admin.sidebar.boards"
|
|
||||||
/>
|
|
||||||
}
|
|
||||||
/>
|
|
||||||
</AdminSidebarCategory>
|
|
||||||
<AdminSidebarCategory
|
<AdminSidebarCategory
|
||||||
definitionKey="integrations"
|
definitionKey="integrations"
|
||||||
icon={
|
icon={
|
||||||
@@ -2595,37 +2533,6 @@ exports[`components/AdminSidebar should match snapshot, not prevent the console
|
|||||||
title="Plugin 0"
|
title="Plugin 0"
|
||||||
/>
|
/>
|
||||||
</AdminSidebarCategory>
|
</AdminSidebarCategory>
|
||||||
<AdminSidebarCategory
|
|
||||||
definitionKey="products"
|
|
||||||
icon={
|
|
||||||
<ProductsIcon
|
|
||||||
className="category-icon fa"
|
|
||||||
color="currentColor"
|
|
||||||
size={16}
|
|
||||||
/>
|
|
||||||
}
|
|
||||||
key="products"
|
|
||||||
parentLink="/admin_console"
|
|
||||||
sectionClass=""
|
|
||||||
title={
|
|
||||||
<Memo(MemoizedFormattedMessage)
|
|
||||||
defaultMessage="Products"
|
|
||||||
id="admin.sidebar.products"
|
|
||||||
/>
|
|
||||||
}
|
|
||||||
>
|
|
||||||
<AdminSidebarSection
|
|
||||||
definitionKey="products.boards"
|
|
||||||
key="products.boards"
|
|
||||||
name="products/boards"
|
|
||||||
title={
|
|
||||||
<Memo(MemoizedFormattedMessage)
|
|
||||||
defaultMessage="Boards"
|
|
||||||
id="admin.sidebar.boards"
|
|
||||||
/>
|
|
||||||
}
|
|
||||||
/>
|
|
||||||
</AdminSidebarCategory>
|
|
||||||
<AdminSidebarCategory
|
<AdminSidebarCategory
|
||||||
definitionKey="integrations"
|
definitionKey="integrations"
|
||||||
icon={
|
icon={
|
||||||
@@ -3329,37 +3236,6 @@ exports[`components/AdminSidebar should match snapshot, render plugins without a
|
|||||||
title="Plugin 0"
|
title="Plugin 0"
|
||||||
/>
|
/>
|
||||||
</AdminSidebarCategory>
|
</AdminSidebarCategory>
|
||||||
<AdminSidebarCategory
|
|
||||||
definitionKey="products"
|
|
||||||
icon={
|
|
||||||
<ProductsIcon
|
|
||||||
className="category-icon fa"
|
|
||||||
color="currentColor"
|
|
||||||
size={16}
|
|
||||||
/>
|
|
||||||
}
|
|
||||||
key="products"
|
|
||||||
parentLink="/admin_console"
|
|
||||||
sectionClass=""
|
|
||||||
title={
|
|
||||||
<Memo(MemoizedFormattedMessage)
|
|
||||||
defaultMessage="Products"
|
|
||||||
id="admin.sidebar.products"
|
|
||||||
/>
|
|
||||||
}
|
|
||||||
>
|
|
||||||
<AdminSidebarSection
|
|
||||||
definitionKey="products.boards"
|
|
||||||
key="products.boards"
|
|
||||||
name="products/boards"
|
|
||||||
title={
|
|
||||||
<Memo(MemoizedFormattedMessage)
|
|
||||||
defaultMessage="Boards"
|
|
||||||
id="admin.sidebar.boards"
|
|
||||||
/>
|
|
||||||
}
|
|
||||||
/>
|
|
||||||
</AdminSidebarCategory>
|
|
||||||
<AdminSidebarCategory
|
<AdminSidebarCategory
|
||||||
definitionKey="integrations"
|
definitionKey="integrations"
|
||||||
icon={
|
icon={
|
||||||
@@ -4162,37 +4038,6 @@ exports[`components/AdminSidebar should match snapshot, with license (with all f
|
|||||||
title="Plugin 0"
|
title="Plugin 0"
|
||||||
/>
|
/>
|
||||||
</AdminSidebarCategory>
|
</AdminSidebarCategory>
|
||||||
<AdminSidebarCategory
|
|
||||||
definitionKey="products"
|
|
||||||
icon={
|
|
||||||
<ProductsIcon
|
|
||||||
className="category-icon fa"
|
|
||||||
color="currentColor"
|
|
||||||
size={16}
|
|
||||||
/>
|
|
||||||
}
|
|
||||||
key="products"
|
|
||||||
parentLink="/admin_console"
|
|
||||||
sectionClass=""
|
|
||||||
title={
|
|
||||||
<Memo(MemoizedFormattedMessage)
|
|
||||||
defaultMessage="Products"
|
|
||||||
id="admin.sidebar.products"
|
|
||||||
/>
|
|
||||||
}
|
|
||||||
>
|
|
||||||
<AdminSidebarSection
|
|
||||||
definitionKey="products.boards"
|
|
||||||
key="products.boards"
|
|
||||||
name="products/boards"
|
|
||||||
title={
|
|
||||||
<Memo(MemoizedFormattedMessage)
|
|
||||||
defaultMessage="Boards"
|
|
||||||
id="admin.sidebar.boards"
|
|
||||||
/>
|
|
||||||
}
|
|
||||||
/>
|
|
||||||
</AdminSidebarCategory>
|
|
||||||
<AdminSidebarCategory
|
<AdminSidebarCategory
|
||||||
definitionKey="integrations"
|
definitionKey="integrations"
|
||||||
icon={
|
icon={
|
||||||
@@ -5128,37 +4973,6 @@ exports[`components/AdminSidebar should match snapshot, with license (without an
|
|||||||
title="Plugin 0"
|
title="Plugin 0"
|
||||||
/>
|
/>
|
||||||
</AdminSidebarCategory>
|
</AdminSidebarCategory>
|
||||||
<AdminSidebarCategory
|
|
||||||
definitionKey="products"
|
|
||||||
icon={
|
|
||||||
<ProductsIcon
|
|
||||||
className="category-icon fa"
|
|
||||||
color="currentColor"
|
|
||||||
size={16}
|
|
||||||
/>
|
|
||||||
}
|
|
||||||
key="products"
|
|
||||||
parentLink="/admin_console"
|
|
||||||
sectionClass=""
|
|
||||||
title={
|
|
||||||
<Memo(MemoizedFormattedMessage)
|
|
||||||
defaultMessage="Products"
|
|
||||||
id="admin.sidebar.products"
|
|
||||||
/>
|
|
||||||
}
|
|
||||||
>
|
|
||||||
<AdminSidebarSection
|
|
||||||
definitionKey="products.boards"
|
|
||||||
key="products.boards"
|
|
||||||
name="products/boards"
|
|
||||||
title={
|
|
||||||
<Memo(MemoizedFormattedMessage)
|
|
||||||
defaultMessage="Boards"
|
|
||||||
id="admin.sidebar.boards"
|
|
||||||
/>
|
|
||||||
}
|
|
||||||
/>
|
|
||||||
</AdminSidebarCategory>
|
|
||||||
<AdminSidebarCategory
|
<AdminSidebarCategory
|
||||||
definitionKey="integrations"
|
definitionKey="integrations"
|
||||||
icon={
|
icon={
|
||||||
|
|||||||
@@ -670,8 +670,6 @@
|
|||||||
"admin.customization.enableLinkPreviewsTitle": "Enable website link previews:",
|
"admin.customization.enableLinkPreviewsTitle": "Enable website link previews:",
|
||||||
"admin.customization.enablePermalinkPreviewsDesc": "When enabled, links to Mattermost messages will generate a preview for any users that have access to the original message. Please review our <link>documentation</link> for details.",
|
"admin.customization.enablePermalinkPreviewsDesc": "When enabled, links to Mattermost messages will generate a preview for any users that have access to the original message. Please review our <link>documentation</link> for details.",
|
||||||
"admin.customization.enablePermalinkPreviewsTitle": "Enable message link previews:",
|
"admin.customization.enablePermalinkPreviewsTitle": "Enable message link previews:",
|
||||||
"admin.customization.enablePublicSharedBoardsDesc": "This allows board editors to share boards that can be accessed by anyone with the link.",
|
|
||||||
"admin.customization.enablePublicSharedBoardsTitle": "Enable Publicly-Shared Boards:",
|
|
||||||
"admin.customization.enableSVGsDesc": "Enable previews for SVG file attachments and allow them to appear in messages.\n\nEnabling SVGs is not recommended in environments where not all users are trusted.",
|
"admin.customization.enableSVGsDesc": "Enable previews for SVG file attachments and allow them to appear in messages.\n\nEnabling SVGs is not recommended in environments where not all users are trusted.",
|
||||||
"admin.customization.enableSVGsTitle": "Enable SVGs:",
|
"admin.customization.enableSVGsTitle": "Enable SVGs:",
|
||||||
"admin.customization.gfycatApiKey": "Gfycat API Key:",
|
"admin.customization.gfycatApiKey": "Gfycat API Key:",
|
||||||
@@ -2250,7 +2248,6 @@
|
|||||||
"admin.sidebar.billing": "Billing & Account",
|
"admin.sidebar.billing": "Billing & Account",
|
||||||
"admin.sidebar.billing_history": "Billing History",
|
"admin.sidebar.billing_history": "Billing History",
|
||||||
"admin.sidebar.blevesearch": "Bleve",
|
"admin.sidebar.blevesearch": "Bleve",
|
||||||
"admin.sidebar.boards": "Boards",
|
|
||||||
"admin.sidebar.channels": "Channels",
|
"admin.sidebar.channels": "Channels",
|
||||||
"admin.sidebar.company_info": "Company Information",
|
"admin.sidebar.company_info": "Company Information",
|
||||||
"admin.sidebar.compliance": "Compliance",
|
"admin.sidebar.compliance": "Compliance",
|
||||||
@@ -2295,7 +2292,6 @@
|
|||||||
"admin.sidebar.permissions": "Permissions",
|
"admin.sidebar.permissions": "Permissions",
|
||||||
"admin.sidebar.plugins": "Plugins",
|
"admin.sidebar.plugins": "Plugins",
|
||||||
"admin.sidebar.posts": "Posts",
|
"admin.sidebar.posts": "Posts",
|
||||||
"admin.sidebar.products": "Products",
|
|
||||||
"admin.sidebar.publicLinks": "Public Links",
|
"admin.sidebar.publicLinks": "Public Links",
|
||||||
"admin.sidebar.pushNotificationServer": "Push Notification Server",
|
"admin.sidebar.pushNotificationServer": "Push Notification Server",
|
||||||
"admin.sidebar.rateLimiting": "Rate Limiting",
|
"admin.sidebar.rateLimiting": "Rate Limiting",
|
||||||
@@ -2318,7 +2314,6 @@
|
|||||||
"admin.sidebar.workspaceOptimization": "Workspace Optimization",
|
"admin.sidebar.workspaceOptimization": "Workspace Optimization",
|
||||||
"admin.sidebarHeader.systemConsole": "System Console",
|
"admin.sidebarHeader.systemConsole": "System Console",
|
||||||
"admin.site.announcementBanner": "Announcement Banner",
|
"admin.site.announcementBanner": "Announcement Banner",
|
||||||
"admin.site.boards": "Boards",
|
|
||||||
"admin.site.customization": "Customization",
|
"admin.site.customization": "Customization",
|
||||||
"admin.site.emoji": "Emoji",
|
"admin.site.emoji": "Emoji",
|
||||||
"admin.site.fileSharingDownloads": "File Sharing and Downloads",
|
"admin.site.fileSharingDownloads": "File Sharing and Downloads",
|
||||||
|
|||||||
@@ -93,7 +93,6 @@ export function adminDefinitionsToUrlsAndTexts(adminDefinition: typeof AdminDefi
|
|||||||
adminDefinition.integrations,
|
adminDefinition.integrations,
|
||||||
adminDefinition.compliance,
|
adminDefinition.compliance,
|
||||||
adminDefinition.experimental,
|
adminDefinition.experimental,
|
||||||
adminDefinition.products,
|
|
||||||
adminDefinition.billing,
|
adminDefinition.billing,
|
||||||
];
|
];
|
||||||
for (const section of sections) {
|
for (const section of sections) {
|
||||||
|
|||||||
@@ -820,7 +820,6 @@ export type JobSettings = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export type ProductSettings = {
|
export type ProductSettings = {
|
||||||
EnablePublicSharedBoards: boolean;
|
|
||||||
EnablePlaybooks: boolean;
|
EnablePlaybooks: boolean;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user