Add webapp/utils/url.jsx (#5285)
webapp/utils/utils.jsx got big and that caused a potential circular dependency with webapp/stores/team_store.jsx. This change solves the issue by introducing webapp/utils/url.jsx and moving URL-related functions, which is not likely to depend on actions and stores, from webapp/utils/utils.jsx.
Этот коммит содержится в:
коммит произвёл
enahum
родитель
9bdea0de80
Коммит
68a05653ea
29
webapp/utils/url.jsx
Обычный файл
29
webapp/utils/url.jsx
Обычный файл
@@ -0,0 +1,29 @@
|
||||
// Copyright (c) 2017 Mattermost, Inc. All Rights Reserved.
|
||||
// See License.txt for license information.
|
||||
|
||||
export function cleanUpUrlable(input) {
|
||||
var cleaned = input.trim().replace(/-/g, ' ').replace(/[^\w\s]/gi, '').toLowerCase().replace(/\s/g, '-');
|
||||
cleaned = cleaned.replace(/-{2,}/, '-');
|
||||
cleaned = cleaned.replace(/^-+/, '');
|
||||
cleaned = cleaned.replace(/-+$/, '');
|
||||
return cleaned;
|
||||
}
|
||||
|
||||
export function getShortenedTeamURL(teamURL = '') {
|
||||
if (teamURL.length > 35) {
|
||||
return teamURL.substring(0, 10) + '...' + teamURL.substring(teamURL.length - 12, teamURL.length) + '/';
|
||||
}
|
||||
return teamURL + '/';
|
||||
}
|
||||
|
||||
export function getSiteURL() {
|
||||
if (global.mm_config.SiteURL) {
|
||||
return global.mm_config.SiteURL;
|
||||
}
|
||||
|
||||
if (window.location.origin) {
|
||||
return window.location.origin;
|
||||
}
|
||||
|
||||
return window.location.protocol + '//' + window.location.hostname + (window.location.port ? ':' + window.location.port : '');
|
||||
}
|
||||
Ссылка в новой задаче
Block a user